首页 > 解决方案 > 客户端代码签名技术讲解

问题描述

问题:是否有技术解释如何在企业环境中使用开源工具(如 signtool 或 openssl)使用客户端代码签名?

在我的用例中,我想创建代码文件的哈希并将哈希发送到单独的服务器上。该服务器仅用于签名。在此服务器上还存储了证书和私钥。哈希签名后,我想将签名的哈希传输回客户端并将签名的哈希与代码文件(例如 .exe 文件)一起封装。

在“Mircosoft 代码签名最佳实践”中,还建议先创建数据的哈希值,然后使用私钥对哈希值进行签名。

不幸的是,我找不到任何进一步的信息,如何通过单独的步骤来实现这一点,如 abow 所述。

http://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/best_practices.doc

“在实践中,使用公钥算法直接对文件进行签名是低效的。相反,典型的代码签名程序首先创建文件中数据的加密散列(也称为摘要),然后使用私有密钥对散列值进行签名密钥。然后在数字签名中使用签名的哈希值。数字签名可以与数据打包或单独传输。单独传输的数字签名称为分离签名。

标签: hashcode-signingsigningpkipkcs#11

解决方案


推荐阅读