我要不偷偷告诉你,黑客咋猜出我的hash算法加的盐是password呢? 字典攻击?
比如txt文件内容为: data=1 hash=bf068ad93313b4688371dc3e32b1c854 你把 data=1 改成 data=2 文件内容变成 data=2 hash=bf068ad93313b4688371dc3e32b1c854 我用只有我知道的hash算法计算data=2对应的 hash=031edfa805e27814bfb8470f16b2a3d5 和从txt文件中读出的hash不一样,就知道data被篡改了。 偷偷告诉你,我的hash算法是MD5("data=1password")
当然有这种可能,数字签名就是防范这个而来的,确保发送的报文是原本发送者发的 [quote=引用 4 楼 bandaoyu 的回复:] [quote=引用 1 楼 636f6c696e 的回复:]哈希函数的特性,只要原数据有一丁点的修改,那么算出来的哈希值必然会大不相同。 CRC也是类似的道理,但是CRC的安全性如抗碰撞性远没有哈希来得高。 第二个问题你实际说的是中间人攻击,哈希算法本身无法防止中间人攻击,而且实际过程中数据和哈希值的位置攻击者并不知道
那得看具体什么应用场景。 哈希算法有很多种,截获数据后你还得知道是什么哈希算法不是? 在加密要求很高的通信过程中,参考TLS协议,还会在hash基础上再加一层RSA非对称加密。
[quote=引用 1 楼 636f6c696e 的回复:]哈希函数的特性,只要原数据有一丁点的修改,那么算出来的哈希值必然会大不相同。 CRC也是类似的道理,但是CRC的安全性如抗碰撞性远没有哈希来得高。 第二个问题你实际说的是中间人攻击,哈希算法本身无法防止中间人攻击,而且实际过程中数据和哈希值的位置攻击者并不知道
哈希函数的特性,只要原数据有一丁点的修改,那么算出来的哈希值必然会大不相同。 CRC也是类似的道理,但是CRC的安全性如抗碰撞性远没有哈希来得高。 第二个问题你实际说的是中间人攻击,哈希算法本身无法防止中间人攻击,而且实际过程中数据和哈希值的位置攻击者并不知道
64,639
社区成员
250,561
社区内容
加载中
试试用AI创作助手写篇文章吧