如何计算Windows Driver Store中使用的64位哈希值?
生成DriverStore文件夹中64位哈希值的方法
DriverStore目录下形如vsmraid.inf_amd64_3d2bbc45931b8232的文件夹名称,其中的16位十六进制哈希(对应64位数据)确实和目标.inf文件直接相关,以下是具体计算逻辑和步骤:
核心逻辑
该哈希是对.inf文件的**SHA-1哈希值取前8字节(64位)**转换为小写十六进制得到的:
- 若
.inf文件带有合法数字签名,Windows会使用签名关联的哈希(确保文件未被篡改); - 若
.inf未签名,则直接计算整个文件内容的SHA-1哈希。
具体计算步骤
1. 计算目标.inf的SHA-1哈希
使用Windows自带的certutil命令即可完成,打开命令提示符执行:
certutil -hashfile "D:\path\to\your\vsmraid.inf" SHA1
执行后会输出类似结果:
SHA1 hash of D:\path\to\your\vsmraid.inf: 3d2bbc45931b8232aabbccddeeff001122334455 CertUtil: -hashfile command completed successfully.
2. 提取64位哈希部分
忽略输出中的空格,取SHA-1哈希值的前16个字符,即上面例子中的3d2bbc45931b8232,这就是文件夹名称里的哈希段。
3. 拼接完整文件夹名
按照[inf文件名]_[系统架构]_[提取的哈希]的格式组合,比如对应vsmraid.inf、64位架构(amd64),就得到vsmraid.inf_amd64_3d2bbc45931b8232。
验证方式
找到DriverStore中已存在的驱动文件夹,取出对应的.inf文件重复上述计算步骤,对比哈希值即可验证逻辑的正确性。
内容的提问来源于stack exchange,提问作者user3161924
相关产品推荐
相关产品推荐

