Java中常见哈希算法总结、对称式加密与非对称式加密的对比

文章正文
发布时间:2025-01-10 01:08

哈希碰撞是不能避免的,因为输出的字节长度是固定的,String的hashCode()输出是4字节整数,最多只有4294967296种输出,但输入的数据长度是不固定的,有无数种输入。在用户输入原始口令后,系统计算用户输入的原始口令的MD5并与数据库存储的MD5对比,如果一致,说明口令正确,否则,口令错误。因为相同的输入永远会得到相同的输出,因此,如果输入被修改了,得到的输出就会不同。然后我们只需要自己计算一下本地文件的哈希值,再与官网公开的哈希值对比,如果相同,说明文件下载正确,否则,说明文件已被篡改。