.net - 是否可以通过 .NET 代码签署二进制文件? (没有 signtool.exe)

标签 .net certificate

我有以下要求,用证书签署一个二进制文件,但没有 signtool.exe;这个想法是通过代码来完成。

你知道这是否可能吗?

最佳答案

您将需要使用 SignerSignSignerSignEx从 mssign32.dll 导出的函数。

要使用这些,您需要定义 SIGNER_SUBJECT_INFOSIGNER_FILE_INFOSIGNER_CERTSIGNER_SIGNATURE_INFO 的托管版本code> 等结构,然后正确指定本地方法的 P/Invoke 签名。

中途this blog post , 有一个调用 SignerSignEx 的 C++ 例子; Mark已在此 StackOverflow answer 中将其移植到 C# .

关于.net - 是否可以通过 .NET 代码签署二进制文件? (没有 signtool.exe),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9922686/

相关文章:

c# - 当我可以在派生类中隐藏它时,为什么我需要声明一个虚拟方法

c# - 重写文本时不保留非英文字符

ssl - 握手 TLS 和客户端

c# - 建模 NHibernate 查询

c# - VS 2010 Beta 1 无法识别 System.Printing.PrintTicket 类

.net - 使用 Rijndael 算法为文件加密嵌入 IV 信息的正确位置在哪里?

powershell - 如何使用powershell向用户授予证书私钥的权限?

c# - 无法从 Web 应用程序访问 Azure 公共(public)和私有(private)证书

android - 以编程方式安装自签名证书

asp.net - IIS 上单个应用程序的 SSL