Linux 和 Windows 下查看文件哈希值

哈希值介绍

哈希值是文件内容经过哈希函数的计算,返回的一个独一无二的字符串。哪怕原始内容只改动一个字节,哈希码也会完全不同。用户下载软件后,只要计算一下哈希码,再跟作者给出的哈希码比较一下,就会知道软件有没有被改动。

目前,常用的三种哈希函数是 MD5、SHA1 和 SHA256。安全性:SHA256 > SHA1 > MD5。

Linux

  • md5sum 文件名
  • sha1sum 文件名
  • sha256sum 文件名
1
2
3
4
5
6
7
8
$ md5sum a.txt 
905138a85e85e74344e90d25dba7299e a.txt

$ sha1sum a.txt
b1fda0e52e8099d2aeb80f57bb91548cace3093f a.txt

$ sha256sum a.txt
a4bf1f6be616bf6a0de2ff6264de43a64bb768d38c783ec2bc74b5d4dcf5f889 a.txt

Windows

  • certutil -hashfile 文件名  MD5
  • certutil -hashfile 文件名  SHA1
  • certutil -hashfile 文件名  SHA256

【certutil 用法】
CertUtil [选项] -hashfile InFile [HashAlgorithm] 通过文件生成并显示加密哈希
哈希算法(大小写都可以): MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512

1
2
3
4
5
6
7
8
9
10
11
12
13
14
> certutil -hashfile a.txt md5
MD5 的 a.txt 哈希:
905138a85e85e74344e90d25dba7299e
CertUtil: -hashfile 命令成功完成。

> certutil -hashfile a.txt sha1
SHA1 的 a.txt 哈希:
b1fda0e52e8099d2aeb80f57bb91548cace3093f
CertUtil: -hashfile 命令成功完成。

> certutil -hashfile a.txt sha256
SHA256 的 a.txt 哈希:
a4bf1f6be616bf6a0de2ff6264de43a64bb768d38c783ec2bc74b5d4dcf5f889
CertUtil: -hashfile 命令成功完成。