混淆、散列和加密有什么区别?

37

混淆、哈希和加密的区别是什么?

这是我的理解:

  • 哈希是一种单向算法;不能被逆转
  • 混淆类似于加密,但不需要任何“秘密”来理解(ROT13是一个例子)
  • 加密是可逆的,但需要“秘密”才能实现
11个回答

0

混淆仅是通过引入混淆技术使某些东西更难理解。代码混淆器通常通过重命名变量或方法名称中的任何有意义的内容来实现这一点。与加密不同的是,使用它不需要解密任何内容。

通常,哈希和加密之间的区别在于哈希通常只使用公式将数据转换为另一种形式,而加密使用需要密钥的公式进行加密/解密。例如,base64编码是一种哈希算法,而md5是一种加密算法。任何人都可以取消哈希base64编码的数据,但没有密钥就无法解密md5加密的数据。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接