使用MD5-Hash哈希值计算工具来检验文件纯洁度

一些网站在提供软件下载时候常常会同时提供MD5值,并建议下载后将文件与提供的MD5值对比。还有就是操作系统的镜像文件(如微软的MSDN镜像文件)往往也提供除了MD5外的,叫做SHA1及CRC的东西。简单来说,MD5、SHA1及CRC这些都是文件的“身份信息”,只是不同叫法罢了,就像指纹、耳纹、角纹一样。使用这些身份信息,对文件的安全很有帮助。在详细说明之前,我推荐大家以后用这个MD5-Hash哈希值计算工具来检验文件纯洁度(点击下载)。

SHA1

SHA1的规范名称是SHAI-1,SHA1的全称是Secure Hash Algorithm(安全散列算法),由美国“国家安全局(NSA)”和“国家标准与技术研究院(NIST)”联合研发,用来保护敏感的未保密资料。在联邦政府使用的同时,鼓励商业、企业和其它组织使用,从而实现“数位”版权管理(SHA1具有全球唯一特性)。通俗的说,既一个软件发生任何轻微的变化(如文件丢失,文件改写)都会引起SHA1值发生变化!

MD5

全称是Message-Digest Algorithm 5(信息 – 摘要算法)。MD5使用的是哈希函数:不可逆加密算法。大家熟悉的典型应用,就是将“光盘镜像或大型软件”当作一个大文本信息,通过不可逆的字符串变换算法产生“字符”信息摘要,以此检查、验证信息传输的完整一致(MD5具有全球唯一特性)。通俗的说,既一个软件发生任何轻微的变化(如文件丢失,文件改写)都会引起MD5值发生变化!

CRC

全称是Cyclical Redundancy Check(循环冗余校验)。在各类下载的实际应用时:发送装置首先要计算出CRC值并随数据一同发送给接收装置;接收装置对下载数据进行计算并与收到的CRC相比较,从而确保数据传输的完整准确。CRC-32是CRC“分支”:一般用于Point-to-Point的同步传输。

每一个文件都有且仅有一个对应的MD5、SHA1及CRC,因此如果下载“同一个文件”,如果被改动一点点或者下载不完整,这些值都会改变。因此,使用MD5-Hash哈希值计算工具来检验文件纯洁度是保证你的系统免受“不安全文件”的木马、病毒的必要环节。