文件MD5校验

1. 什么是MD5

   MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。MD5由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)设计,于1992年公开,用以取代MD4算法。

2. 算法原理

    MD5以512位分组位处理单位,每一个分组又可以划分为16个32位子分组,经过一系列算法处理,算法输出4个32位分组,即4 * 32 = 128位散列值。

3. MD5应用

 3.1 一致性校验

   用于文件传输,来确保接收的文件和传输的文件的一致性,防止在传输过程中被篡改。

 3.2 数字签名

   支付领域应用MD5,保证支付信息不会被篡改。

 3.3 安全访问认证

   设计用户登录时,用户密码如果明文存入数据库,就存在被泄露的风险。因为MD5加密是不可逆的,对用户密码进行MD5加密存入数据,就可保证密码不会被泄露。

以上来自百度百科。链接:MD5_百度百科

4. 获取文件的MD5

    获取文件的MD5,首先要读取文件内容。把文件内容做输入,MD5处理之后输出文件的MD5。这样相同的文件就会有一致的MD5。

    要注意的是读取文件的方式要选择二进制读取方式。如果涉及Window上传文件到Linux服务器,上传方式也要选择二进制方式。这样在Window和Linux对同一个文件获取的MD5才会一致。

你可能感兴趣的:(加密,算法)