标签:md5sum
MD5算法一般用于检查文件完整性,尤其常用于检测在(网络)文件传输、拷贝、磁盘错误或其他无恶意涉入的情况下文件的正确性。MD5 全称报文摘要算法(Message-DigestAlgorithm 5)[RFC 1321],该算法对任意长度的信息进行逐位计算,产生一个二进制长度128位(十六进制长度32位)的校验和(或称“指纹”,“报文摘要”),不同的文件内容生成相同的报文摘要的概率是极其小的。
在Linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序。一般来说,安装了Linux后,就会有md5sum工具,可以在命令行终端直接执行。
md5sum [OPTION]... [FILE]...
命令选项
-b 或 --binary: 以二进制模式读入文件;
-t 或 --text: 以文本文件模式读入文件(默认);
-c 或 --check: 用来从文件中读取md5信息检查文件的一致性;
--status: 该选项与check一起使用,在check时不输出,根据返回值表示检查结果;
-w 或 --warn: 在check时,检查输入的md5信息有没有非法行,若有则输出相应信息。
举例:一般检查文件内容是否被修改
[root@localhost shell]# ls -l
总用量 12
-rw-r--r--. 1 root root 7 10月 12 20:43 aa
-rw-r--r--. 1 root root 4 10月 12 20:42 bb
drwxr-xr-x. 2 root root 4096 10月 12 20:41 ding
把aa 中的文件用md5sum加密,放在ding 的目录中
[root@localhost shell]# md5sum aa >ding/aa.md5
[root@localhost shell]# cat ./ding/aa.md5
f447b20a7fcbf53a5d5be013ea0b15af aa #发现aa中的内容被加密
改变 aa 中的内容,用md5sum 命令检查文件是否被修改
[root@localhost shell]# md5sum -c ./ding/aa.md5
aa: 失败
md5sum: 警告:1/1 生成的校验和不匹配
**同时可以追加多个文件进行加密
例如:
[root@localhost shell]# cat all.md5
ba1f2511fc30423bdbb183fe33f3dd0f aa
ba1f2511fc30423bdbb183fe33f3dd0f bb
特殊说明
1)md5sum是校验文件内容,与文件名是否相同无关;
2)md5sum是逐位校验,所以文件越大,校验时间越长。
md5校验,可能极小概率出现不同的文件生成相同的校验和,比md5更安全的校验算法还有SHA*系列,如sha1sum/sha224sum/sha256sum/sha384sum/sha512sum等等,基本用法与md5sum命令类似,详情可通过man sha1sum查询。
本文出自 “IT生活” 博客,请务必保留此出处http://dingxue.blog.51cto.com/12290895/1971856
标签:md5sum
原文地址:http://dingxue.blog.51cto.com/12290895/1971856