获取文件 SHA-256 值

Posted 明明如月学长

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取文件 SHA-256 值相关的知识,希望对你有一定的参考价值。

一、背景

最近下载 IDEA ,看到可以校验文件 的 SHA-256 Hash 值。

https://www.jetbrains.com/idea/download/download-thanks.html?platform=mac


查看值为:

e54a026da11d05d9bb0172f4ef936ba2366f985b5424e7eecf9e9341804d65bf *ideaIU-2022.2.1.dmg

那么 SHA-256 是什么,怎么获取文件的 SHA-256 的值呢?

二、SHA-256 介绍

2.1 SHA-256 是什么?

简而言之,对于任意长度的消息,SHA256都会产生一个256位的哈希值,称作消息摘要。
这个摘要相当于是个长度为32个字节的数组,通常有一个长度为64的十六进制字符串来表示,其中1个字节=8位,一个十六进制的字符的长度为4位。

来看一个具体的例子:

BlockChain

这句话经过哈希函数SHA256后得到的哈希值为:

3a6fed5fc11392b3ee9f81caf017b48640d7458766a8eb0382899a605b41f2b9

具体原理大家可以看此文:《一文读懂SHA256算法原理及其实现》

或者维基百科:《SHA-2》

大家也可以结合 sha256algorithm.com “可视化地”查看其具体步骤

2.2 SHA-256 的目的是什么?

通过对内容计算摘要,可以检测内容是否被篡改(篡改后摘要的值会发生变化)。

2.3 SHA-256 获取

2.3.1 文本类型

直接在网上找一些加密网站都支持这个功能。
https://md5.cn/#/tools/hash?id=Hash

2.3.2 命令行

shasum 指令 (mac)

shasum -a 256 /path/to/file


openssl 指令 (mac)

openssl sha256 filename

CertUtil (window)

CertUtil -hashfile C:\\file.img SHA256

2.2.3 软件

iHash

以上是关于获取文件 SHA-256 值的主要内容,如果未能解决你的问题,请参考以下文章

获取文件 SHA-256 值

Python计算文件的MD5SHA1SHA256值(校验文件完整性)

windows 下,获取文件的md5值sha1sha256值

获取APK证书MD5、SHA1、SHA256等秘钥

crypto-js计算文件的sha256值

如何通过 .NET 使用 RSA 和 SHA256 对文件进行签名?