关于Windows signtool支持文件类型及签名范围的技术咨询
Windows Signtool 文件支持范围及通用签名疑问解答
支持的原生文件类型
signtool原生支持以下几类文件的标准数字签名:
- PE格式相关文件:
.exe、.dll、.sys、.msi、.msm、.cab、.ocx(这类是Windows系统原生认可签名有效性的核心文件类型) - 驱动签名相关:
.cat(目录签名文件,用于驱动程序的批量签名验证) - 脚本与现代应用包:
.ps1(PowerShell脚本)、.appx、.msix
能否对任意文件类型签名?
signtool无法直接对所有文件类型进行系统认可的标准签名,但可以通过两种方式处理非标准文件:
- 将目标文件封装进支持签名的容器(比如
.cab压缩包),然后对容器进行签名,间接实现文件的签名验证 - 使用带
/ph(页面哈希)参数的签名命令,给任意文件添加数字签名属性,示例命令:
这种方式的签名不会被Windows系统默认验证逻辑识别,仅适用于自定义的验证场景(比如自己开发的程序读取文件签名进行校验)signtool sign /fd SHA256 /f your-cert.pfx /p your-password /t http://timestamp.digicert.com /ph "non-standard-file.ext"
内容的提问来源于stack exchange,提问作者Jack
相关产品推荐
相关产品推荐

