对驱动程序包的目录文件进行发布签名

创建或更新驱动程序包目录文件后,可以通过 SignTool 对目录文件进行签名。 签名后,如果修改了驱动程序包的任何组件,则存储在目录文件中的数字签名将失效。

对目录文件进行数字签名时,SignTool 会将数字签名保存在目录文件中。 SignTool 不会更改驱动程序包的组件。 但是,由于目录文件包含驱动程序包组件经过哈希处理的值,因此只要组件哈希值相同,目录文件中的数字签名就一直保留。

SignTool 还可以向数字签名添加时间戳。 使用时间戳可以确定签名的创建时间,并支持更灵活的证书吊销选项(如有必要)。

以下命令行演示如何运行 SignTool 执行以下操作:

若要对 tstamd64.cat 目录文件进行发布签名,请运行以下命令行:

Signtool sign /v /fd sha256 /ac MSCV-VSClass3.cer /s MyPersonalStore /n contoso.com /t http://timestamp.digicert.com tstamd64.cat

其中:

  • sign 命令将 SignTool 配置为对指定的目录文件进行签名,tstamd64.cat

  • /v 选项启用详细操作,其中 SignTool 显示成功执行和警告消息。

  • /fd 选项指定用于创建文件签名的文件摘要算法。 默认值为 SHA1。

  • /ac 选项指定包含从 CA 获取的跨证书 (MSCV-VSClass3.cer) 的文件的名称。 如果交叉证书不在当前目录中,请使用完整路径名称。

  • /s 选项指定包含 SPC 的个人证书存储 (MyPersonalStore) 的名称。

  • /n 选项指定安装在指定证书存储中的 SPC (Contoso.com) 的名称。

  • /t 选项指定将标记数字签名的 TSA (http://timestamp.digicert.com) 的 URL。

重要

如果签名者的代码签名私钥泄露,包括时间戳可为吊销密钥提供必要的信息。

  • tstamd64.cat 指定将进行数字签名的目录文件的名称。

有关 SignTool 及其命令行参数的详细信息,请参阅 SignTool

有关发布签名驱动程序包的详细信息,请参阅 发布签名驱动程序包