md5用途简介
程序员文章站
2024-03-19 11:47:16
...
1. 什么是md5?
md5计算,是对原始消息做有损的压缩算法,无论消息(输入值)的长度是多少字节,都会生成一个固定长度(128位/16字节)的消息摘要(输出值)
md5有以下特性:
- 不可逆(不能从消息摘要恢复出原始输入)
- 恒定性(同样的输入,经过md5算法经过同样的迭代次数,产生的输出一定是相同的)
- 不可预测(输入内容做轻微改变,输出大相径庭)
- 等等
2. md5有什么作用
-
数据完整性校验
-
文件完整性校验
文件经过网络传输、拷贝或其他操作后,可以通过文件的md5值判断文件内容是否发生了改变。文件名改变、但文件内容不变时,文件的md5值会保持不变。md5是校验文件内容,与文件名是否相同无关;md5是逐位校验,所以文件越大,校验时间越长。
md5校验,可能极小概率出现不同的文件生成相同的校验和,比md5更安全的校验算法还有SHA*系列,如sha1sum/sha224sum/sha256sum/sha384sum/sha512sum等等,基本用法与md5sum命令类似,详情可通过man sha1sum查询。 -
密码保存
服务器不能明文保存密码,万一数据库被攻破损失很惨重,通常是保存经过md5之后的128位字节。当用户输入密码后,直接把用户的输入值经过md5加密,对比加密后的输出和服务器保存的128字节是否相同,以此来判断用户密码是否输入正确
3. linux md5sum命令
用法很简答,具体见参考链接
md5sum