linux内核md5,浅谈MD5及简单使用

原理简介:

MD5即Message-Digest Algorithm 5(信息-摘要算法 第5版),用于确保信息传输完整一致。是计算机广泛使用的杂凑算法之一(又名:摘要算法、哈希算法),主流编程语言普遍已由MD5实现。将数据运算为另一固定长度值(十六进制的话:32位),是杂凑算法的基础原理,MD5的前身有MD2、MD3和MD4。

MD5的作用是让大容量信息在用数字签名软件签署私人密钥前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的十六进制数字串)。除了MD5以外,其中比较有名的还有sha-1、RIPEMD以及Haval等。

对MD5算法简要的叙述可以为:MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。

算法示意图:

8e3dc00b9df8d32041ef09ca669b1b3e.png

使用简介

# touch test1.txt test2.txt    //-->建测试用空文件

# ls -lart

total 8

drwxr-xr-x 5 root root 4096 Aug  5 14:46 ..

-rw-r--r-- 1 root root    0 Aug  5 14:48 test2.txt

-rw-r--r-- 1 root root    0 Aug  5 14:48 test1.txt

drwxr-xr-x 2 root root 4096 Aug  5 14:48 .

# md5sum test*.txt > test.md5  //-->将文件系列生成的md5文件,放到test.md5

# cat test.md5

d41d8cd98f00b204e9800998ecf8427e  test1.txt

d41d8cd98f00b204e9800998ecf8427e  test2.txt

# echo 'hello' >> test1.txt    //-->修改其中一个文件

# md5sum -c test.md5          //-->用md5sum命令加-c参数校验

test1.txt: FAILED

test2.txt: OK

md5sum: WARNING: 1 of 2 computed checksums did NOT match

NOTE:

尽管sha1sum算法及原理跟md5sum不一样,命令使用几乎一样。man sha1sum; man md5sum

由其原理可知,生成的校验码相同的概率,微乎其微。

0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值