博客园  :: 首页  :: 管理

powershell中使用Get-FileHash计算文件的hash值

Posted on 2020-09-07 23:53  520_1351  阅读(1296)  评论(0编辑  收藏  举报

今天在公司一台windows服务器上、需要对两个文件进行比对,笔者首先就想到了可以使用md5校验

但是公司服务器上又不可以随意安装软件,于是笔者想到了可以试试windows自带的powershell中的Get-FileHash

 

使用方法如下:

Get-FileHash -Algorithm md5  "C:\QQ5201351.txt"
Algorithm       Hash                                                   Path
---------       ----                                                   ----
MD5             9EEED07B6F0D9CD616905EF45BC27BEE                       C:\QQ5201351.txt

说明:关于Get-FileHash支持的算法有 MACTripleDES 、MD5、RIPEMD160、SHA1、SHA256、SHA384、SHA512 七种,

注:对于SHA384、SHA512 的结果太长,可能显示不全,可以在后面加上管道 | Format-list

 

需要特别说明的一点,也是笔者此前没有接触过的【MACTripleDES】算法,

使用这种算法每次计算的结果都不一样,但是却都可以反向计算出原始值的!先记录于此,以后有时间或用到了再研究

 

关于SHA家族的说明(其中powershell中的-Algorithm只是不支持它们家族中的SHA-224):

SHA家族的五个算法,分别是SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512,
由美国国家安全局(NSA)所设计,并由美国国家标准与技术研究院(NIST)发布;
是美国的政府标准。后四者有时并称为SHA-2。SHA-1在许多安全协议中广为使用,
包括TLS和SSL、PGP、SSH、S/MIME和IPsec,曾被视为是MD5(更早之前被广为使用的散列函数)的后继者。
但SHA-1的安全性如今被密码学家严重质疑;虽然至今尚未出现对SHA-2有效的攻击,它的算法跟SHA-1基本上仍然相似;因此有些人开始发展其他替代的散列算法。

 

 

尊重别人的劳动成果 转载请务必注明出处:https://www.cnblogs.com/5201351/p/13630014.html