md5-sha1-哈希算法使用方法 常见的哈希算法有:MD5 和 SHA1 MD5 ,SHA1 的区别: MD5的全称是Message-Digest Algorithm 5(信息-摘要算法)。MD5 算法的哈希值大小为 128 位。是一种不可逆的算法。 SHA1的全称是Secure Hash Algorithm(安全哈希算法)。SHA1 算法的哈希值大小为 160 位。是一种不可逆的算法。 SHA1抗暴力破解能力比MD5强。 缺点:产生SHA-1 报文摘要的运行速度比MD5 慢。 哈希算法具有以下特点: 1、压缩性:任意长度的数据,算出的哈希值长度都是固定的。 2、容易计算:从原数据计算出哈希值很容易。 3、抗修改性:对原数据进行任何改动,哪怕只修改1个字节,所得到的哈希值都有很大区别。 4、弱抗碰撞:已知原数据和其哈希值,想找到一个具有相同哈希值的数据(即伪造数据)是非常困难的。 产成固定长度MD5消息摘要 md5sum /etc/passwd sha1sum /etc/passwd echo 123 | md5sum echo 1234 | md5sum echo 123 | sha1sum echo 1234 | sha1sum [root@hcss-ecs-c16f ~]# md5sum /etc/passwd 82dbffafd2582106de4b0ccee8a3545f /etc/passwd 32 [root@hcss-ecs-c16f ~]# sha1sum /etc/passwd adc647a5ad714415a9e96a5d9dc5e7e55c92f09a /etc/passwd 40 [root@hcss-ecs-c16f ~]# echo 123 | md5sum ba1f2511fc30423bdbb183fe33f3dd0f - [root@hcss-ecs-c16f ~]# echo 1234 | md5sum e7df7cd2ca07f4f1ab415d457a6e1c13 - [root@hcss-ecs-c16f ~]# echo 123 | sha1sum a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0 - [root@hcss-ecs-c16f ~]# [root@hcss-ecs-c16f ~]# echo 1234 | sha1sum 1be168ff837f043bde17c0314341c84271047b31 - 演示MD5保障数据的完整性 [root@hcss-ecs-c16f ~]# ls passwd* passwd passwd1 passwd.asc [root@hcss-ecs-c16f ~]# diff passwd passwd1 [root@hcss-ecs-c16f ~]# md5sum passwd passwd1 82dbffafd2582106de4b0ccee8a3545f passwd 82dbffafd2582106de4b0ccee8a3545f passwd1 [root@hcss-ecs-c16f ~]# echo 11 >> passwd1 [root@hcss-ecs-c16f ~]# diff passwd passwd1 32a33 > 11 [root@hcss-ecs-c16f ~]# md5sum passwd passwd1 82dbffafd2582106de4b0ccee8a3545f passwd 0fda3178e343846107ce73444cd602e6 passwd1 扩展: 弱抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的。 百度网盘中,如何实现秒传?比如rhel7.2.ios 3G的文件1秒就可以上传成功。百度网盘中存一个MD5值表, 判断两个文件的MD5是不是一样,如果一样,直接创建软链接。
菜鸟的自白