美文网首页
哈希和加密的区别

哈希和加密的区别

作者: timehorse | 来源:发表于2019-07-26 00:19 被阅读0次

https://juejin.im/entry/5a4f300f6fb9a01cb912b3c7

哈希算法

ASH 算法是一种消息摘要算法,不是一种加密算法,但由于其单向运算,具有一定的不可逆性,成为加密算法中的一个构成部分,完整的加密机制不能仅依赖 HASH 算法。

好的哈希算法需要好的哈希函数

hash函数的属性

  1. 不可逆性
    hash 函数有点像绞肉机:你把牛排放在一端,就可以从另一端得到汉堡包,你没有办法从汉堡包中把牛排放回去

  2. 可复现的
    这意味着如果我们把相同的输入 header 和载荷多次的 hash,我们总是会得到完全相同的结果。

  3. 无冲突
    如果我们多次向它提交不同的值,根据每次的输入值都会得到唯一的结果。

  4. 不可预测性
    根据已知输出是不可能用连续增量逼近的方法来猜测输入的。

哈希主要用途

  • 文件校验
  • 数字签名
  • 鉴权协议

需 要鉴权的一方,向将被鉴权的一方发送随机串(“挑战”),被鉴权方将该随机串和自己的鉴权口令字一起进行 Hash 运算后,返还鉴权方,鉴权方将收到的Hash值与在己端用该随机串和对方的鉴权口令字进行 Hash 运算的结果相比较(“认证”),如相同,则可在统计上认为对方拥有该口令字,即通过鉴权。


哈希和加密区别

最大的区别:哈希是真正不可逆的,加密是可逆的

用途不同

  • 如果被保护数据仅仅用作比较验证,在以后不需要还原成明文形式,则使用哈希;
  • 如果被保护数据在以后需要被还原成明文,则需要使用加密。

相关文章

网友评论

      本文标题:哈希和加密的区别

      本文链接:https://www.haomeiwen.com/subject/wcwkrctx.html