摘要密码验证是很常见的需求,如何在实现功能之余,防止用户密码泄露,已经有了很成熟的方案。这篇文章把自己的思考和结论做一下记录。结论对用户密码进行加密时需要做到:防止用户密码明文被窃听
1.交给https,明文传输。
2.客户端将密码加盐(盐随机生成、具有强度)并哈希。服务端再次加盐哈希并对比。假设https被窃听,攻击者破解密码明文也具有相当难度。防止数据库被攻破时,用户密码明文被窃取。
1.增加
转载
2023-07-18 23:22:54
59阅读
一、hash算法 著名
的hash算法,MD5和SHA1可以说是目前应用最广泛的Hash算法,而它们都是以MD4为基础设计的。
那么他们都有什么用途呢?
哈希算法有如下特性: 1)不可以从消息摘要中复原信息; 2)两个不同的消息不会产生同样的消息摘要;
1.1 MD5算法 MD5是RSA数据安全公司开发的一种单向散列算法。MD5 全称是报文摘要算法(Messa
转载
2023-08-04 14:33:43
16阅读
概述: 密码学技术是整个信息技术的基石。区块链中大量使用了信息安全和密码学技术,包括:哈希算法、非对称加密、数字签名、零知识证明等。1. 哈希算法哈希即 Hash,也称为散列算法。区块链采用密码学哈希算法,保证区块链账本的完整性(不被破坏)。常见的哈希函数包括庞杂的SHA家族等,比特币使用的是 SH
转载
2024-04-25 23:40:52
49阅读
RSA、16进制、Base64 都属于可逆加密方式,可以通过相应的解密方法将密文还原为明文。 而哈希算法是不可逆加密方式,只能将明文进行哈希后得到一段固定长度的密文,但无法通过密文还原出明文。其中,SHA 算法、MD5 算法都是常用的哈希算法。一、16进制加密 加密和解密示例:def hex_encode(s):
return s.encode('utf-8').hex()
#
转载
2023-07-18 15:10:41
18阅读
密码学技术是区块链技术的核心,现本文将介绍区块链技术涉及到的部分密码学技术知识。包括:hash算法、对称加密与非对称加密以及数字签名等简要地介绍。一、hash算法 Hash,就是把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压缩映射,其中散
转载
2024-01-03 09:32:20
50阅读
1、DES加密解密DES一共就有4个参数参与运作:明文、密文、密钥、向量。其中这4者的关系可以理解为: 密文=明文+密钥+向量; 明文=密文-密钥-向量; 为什么要向量这个参数呢?因为如果有一篇文章,有几个词重复,那么这个词加上密钥形成的密文,仍然会重复,这给有心者有机可乘,他们可以根据重复的内容,猜出是什么词,然而一旦猜对这个词,那么,他就能算出密钥,整篇文章就被xx了!加上向量这个参数以
原创
2023-12-26 08:30:41
701阅读
哈希(Hash)算法,即散列函数。它是一种单向密码体制,即它是一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时,哈希函数可以将任意长度的输入经过变化以后得到固定长度的输出。哈希函数的这种单向特征和输出数据长度固定的特征使得它可以生成消息或者数据。哈希的基本作用就是提供一个数据的摘要或者指纹,通常的使用场景就是完整性校验。哈希算法有很多种,一般来讲哈希越长的算法,安全性也就越高,安全
转载
2023-11-07 09:29:46
43阅读
参考: 哈希加密详解和md5、sha1、sha256、Java 工具类前言在所有的加密算法中使用最多的就是哈希加密了,很多人第一次接触的加密算法如MD5、SHA1都是典型的哈希加密算法,而哈希加密除了用在密码加密上,它还有很多的用途,如提取内容摘要、生成签名、文件对比、区块链等等。这篇文章就是想详细的讲解一下哈希加密,并分享一个哈希加密的工
转载
2023-07-21 18:36:32
150阅读
# 哈希加密Java实现指南
## 简介
在现代计算机科学中,哈希加密是一种常用的加密算法。它将数据转换为一个固定长度的字符串,这个字符串通常是不可逆的。在Java中,我们可以使用一些库来实现哈希加密算法。本文将教会你如何在Java中实现哈希加密。
## 流程图
```mermaid
flowchart TD
A[输入明文数据] --> B[选择哈希算法]
B --> C[将
原创
2023-11-18 07:49:40
91阅读
Hash(哈希)本意是混杂、拼凑、重新表述。Hash算法又叫散列算法、散列函数。它是一种单向密码体制,即一个从明文到密文的不可逆的映射,只有加密过程,没有解密过程。同时Hash函数可以将任意长度的输入得到固定长度的输出。Hash函数这种单向特征和固定输出数据长度的特征使它可以生成消息或者数据。HASH主要用于信息安全领域中加密算法,他把一些不同长度的信息转化成杂乱的128位的编码里,叫做HASH值
转载
2023-10-21 08:31:22
17阅读
# 如何实现 jQuery 哈希
## 介绍
在本文中,我将教你如何使用 jQuery 实现哈希(hash)功能。哈希是一种常用的技术,可以在网页中保存一些数据,例如页面状态、用户输入等。通过使用哈希,我们可以在网页中保存和获取数据,而不需要使用服务器端存储。
为了帮助你更好地理解整个过程,我将首先给出一个步骤表格,然后逐步解释每个步骤所需的代码,并注释代码的作用。
## 步骤
| 步骤
原创
2023-08-15 05:23:24
96阅读
摘要我们很难想象用户在什么样的网络环境使用我们开发的应用,如果用户所处的网络环境不是一个可信任的环境,那么用户的账户安全就可能有威胁,比如用户登陆时提交的账号密码被网络嗅探器窃取;客户端加密数据能有效的防御网络嗅探器窃取数据,通过在客户端Javascript加密数据后再提交至服务端进行验证有效提高了系统的安全系数,这符合纵深防御原则和数据安全要素机密性;本文整理了两种常用的加密算法:md5和sha
转载
精选
2015-03-22 21:01:17
1171阅读
.哈希算法1.1. 简介计算机行业从业者对哈希这个词应该非常熟悉,哈希能够实现数据从一个维度向另一个维度的映射,通常使用哈希函数实现这种映射。通常业界使用y = hash(x)的方式进行表示,该哈希函数实现对x进行运算计算出一个哈希值y。 区块链中哈希函数特性:函数参数为string类型;固定大小输出;计算高效;优点:collision-free 即冲突概率小:x != y => hash(
转载
2023-12-19 17:48:50
32阅读
感知哈希算法(以下简称PHA)是哈希算法的一类,主要用来做相似图片的搜索工作。图片所包含的特征被用来生成一组指纹(不过它不是唯一的),而这些指纹是可以进行比较的。【原理】下面是简单的步骤,来说明对图像进行PHA的运算过程 :第一步,缩小尺寸。 最快速的去除高频和细节,只保留结构明暗的方法就是缩小尺寸。将图片缩小到8x8的尺寸,总共64个像素
转载
2024-01-08 12:23:28
67阅读
一、哈希算法(hash)加密解密介绍哈希,英文叫做 hash。
哈希函数(hash function)可以把 任意长度的数据(字节串)计算出一个为固定长度的结果数据。
我们习惯把 要计算 的数据称之为 源数据, 计算后的结果数据称之为 哈希值(hash value)或者 摘要(digests)。
有好几种哈希函数,对应不同的算法, 常见有的 MD5, SHA1, SHA224, SHA256, S
转载
2023-07-18 15:10:20
1403阅读
文章目录1、哈希表简单的原理理解2、哈希冲突3、哈希冲突解决办法3.1 Java 里面怎么解决哈希冲突?3.2 Java 为什么使用单链表?链表 + 红黑树?为什么使用?4、 哈希函数的作用5、哈希函数实现的大致步骤6、相关运算符号(哈希函数中会遇到)6.1、关于 & 运算6.2 关于 ^ 运算(异或运算,相同的为 0 ,不同的 1 )6.3 >>> 表示的是无符号右移
转载
2023-08-10 11:52:47
63阅读
一、单向散列算法也称为Hash(哈希)算法。是一种将任意长度的消息压缩到某一固定长度(消息摘要)的函数(该过程不可逆)。Hash函数可用于数字签名、消息的完整性检测、消息起源的认证检测等。常见的散列算法有MD5、SHA、HMAC、RIPE-MD、HAVAL、N-Hash、Tiger等。1. MD5算法MD5消息摘要算法(Message Digest Algorithm 5)。 对MD5算法简要的叙
一、哈希HASH哈希(散列)函数 MD5 SHA1/256/512 HMACHash的特点: 1.算法是公开的 2.对相同数据运算,得到的结果是一样的 3.对不同数据运算,如MD5得到的结果是128位,32个字符的十六进制表示,没法逆运算1.MD5加密MD5加密的特点:&nb
转载
2024-09-29 08:44:38
115阅读
对称密钥体系 DES 、AES、 3DES ,通信双方用相同的密钥进行加密与解密,需要防止密钥泄露公钥加密体系 RSA,数字签名签名用的就是这个加密算法。只要密码长度够长,RSA加密的信息实际上是无法破解的。
前面的《区块链100讲》介绍了区块链、算力、挖矿等,几乎每一讲都会提到一个词哈希(Hashing)。聊到区块链的时候也少不了会听到“哈希”、“哈希函数”、“哈希算法”,是不是听得一头雾水?别急,这一讲我们来讲讲什么是哈希算法。1哈希是一种加密算法哈希函数(Hash Function),也称为散列函数或杂凑函数。哈希函数是一个公开函数,可以将任意长度的消息M映射成为一个长度较短且长度固定的值H(
转载
2023-12-19 17:50:15
35阅读