在日常的應(yīng)用中我們通常會(huì)采用MD5璧函、SHA1、SHA256值來校驗(yàn)文件的完整性蘸吓。
MD5是什么?
MD5即Message-Digest Algorithm 5(信息-摘要算法5)箩艺,用于確保信息傳輸完整一致。MD5的作用是讓大容量信息在用數(shù)字簽名軟件簽署私人密鑰前被"壓縮"成一種保密的格式(就是把一個(gè)任意長度的字節(jié)串變換成一定長的十六進(jìn)制數(shù)字串)舅桩。
在互聯(lián)網(wǎng)上分發(fā)軟件安裝包時(shí)雨膨,出于安全性考慮,為了防止軟件被篡改聊记,比如在軟件安裝程序中添加木馬程序。軟件開發(fā)者通常會(huì)使用消息摘要算法狰右,比如 MD5 算法產(chǎn)生一個(gè)與文件匹配的數(shù)字指紋舆床,這樣接收者在接收到文件后嫁佳,就可以利用一些現(xiàn)成的工具來檢查文件完整性谷暮。
當(dāng)從網(wǎng)上下載軟件安裝包之后,可以利用一些 MD5 校驗(yàn)工具對(duì)已下載的文件進(jìn)行校驗(yàn)瓤漏,然后比對(duì)最終的 MD5 數(shù)字指紋,若結(jié)果與官網(wǎng)公布的數(shù)字指紋一致蔬充,則表示該安裝包未經(jīng)過任何修改是安全的班利,基本可以放心安裝。
網(wǎng)絡(luò)上你需要發(fā)送電子文檔給你的朋友罗标,在文件發(fā)送前,先對(duì)文檔的內(nèi)容進(jìn)行 MD5 運(yùn)算皿哨,得出該電子文檔的 “數(shù)字指紋”纽谒,并把該 “數(shù)字指紋” 隨電子文檔一同發(fā)送給對(duì)方。當(dāng)對(duì)方接收到電子文檔之后鼓黔,也使用 MD5 算法對(duì)文檔的內(nèi)容進(jìn)行哈希運(yùn)算,在運(yùn)算完成后也會(huì)得到一個(gè)對(duì)應(yīng) “數(shù)字指紋”崔步,當(dāng)該指紋與你所發(fā)送文檔的 “數(shù)字指紋” 一致時(shí)缎谷,表示文檔在傳輸過程中未被篡改。
windows查看MD5值方法
win鍵+r鍵輸入cmd調(diào)出命令行
輸入:
查看MD5值:
certutil -hashfile 文件名? MD5
查看 SHA1
certutil -hashfile 文件名? SHA1
查看SHA256
certutil -hashfile 文件名? SHA256
例子:
查看MD5值
D:\soft\vmware>certutil -hashfile VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso md5
MD5 的 VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso 哈希:
e10c4c3fcc017faab9659f49b0baee97
CertUtil: -hashfile 命令成功完成瑞你。
查看 SHA1值
D:\soft\vmware>certutil -hashfile VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso sha1
SHA1 的 VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso 哈希:
4635ecdb818330f42603aa91616463d9a70f5c8b
CertUtil: -hashfile 命令成功完成希痴。
查看SHA256值
D:\soft\vmware>certutil -hashfile VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso sha256
SHA256 的 VMware-VMvisor-Installer-6.7.0.update01-10302608.x86_64.iso 哈希:
3b5f2914ce16210f9bd79ac499237f0506a28ceeecdbd9ba96942c667ad058df
CertUtil: -hashfile 命令成功完成。
LINUX查看MD5值方法
輸入:md5sum 文件名
例子:
查看MD5值
[root@node1 opt]# ls
apache-zookeeper-3.5.6? kafka_2.13-2.4.0? kafka_2.13-2.4.0.tgz
[root@node1 opt]# md5sum kafka_2.13-2.4.0.tgz
cd9cf5713ad5bc0c8dacfb1959ca4d6e? kafka_2.13-2.4.0.tgz
[root@node1 opt]#
查看 SHA1值
[root@node1 opt]# sha1sum kafka_2.13-2.4.0.tgz
2e6f92410387f227fa306ebbc2638b8536263cc8? kafka_2.13-2.4.0.tgz
[root@node1 opt]#
查看SHA256值
[root@node1 opt]# sha256sum kafka_2.13-2.4.0.tgz
c1c5246c7075459687b3160b713a001f5cd1cc563b9a3db189868d2f22aa9110? kafka_2.13-2.4.0.tgz
[root@node1 opt]#
md5sum版本信息:
[root@node1 opt]# md5sum --version
md5sum (GNU coreutils) 8.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Ulrich Drepper, Scott Miller, and David Madore.