你在哪里下载signcode.exe和其他工具

时间:2009-09-20 20:42:31

标签: code-signing makecert

如果您决定签署代码,则需要:

  • signcode.exe
  • makecert.exe
  • cert2spc.exe
  • pvk2pfx.exe

下载这些工具的最佳位置是什么?

有没有办法在不下载大量Microsoft Windows SDK的情况下执行此操作?

5 个答案:

答案 0 :(得分:15)

Windows SDK开始。这应该是您正在寻找的大部分内容。

此外,在.NET 1.1之后,SignCode.exe已被弃用。 SignTool.exe是替代品。


无需下载SDK?

通常,只有少数SDK工具可以在Microsoft官方软件包之外进行重新分发。它们列在redist.txt文件中。在我的系统上,我在redist.txt中找到了一个.NET SDK %ProgramFiles%\Microsoft.NET\SDK\v2.0 64bit文件(我假设该文件夹在x86系统上被称为“v2.0”)。这就是它所说的:

.NET Framework SDK files

Subject to the license terms for the software,
the following .EXE files may be distributed unmodified:

MageUI.exe
Mage.exe
Makecert.exe

因此看起来这些文件中的大部分都不会是可再发行的。所以,我的答案是下载Windows SDK。请记住,如果您愿意,您可以只安装一部分工具;安装程序允许您选择/取消选择任何组件(例如,仅.NET开发工具)。

答案 1 :(得分:6)

我刚刚安装了适用于Windows 8的Windows SDK。我仍然找不到SignTool.exeSignCode.exe

直到我意识到微软已经改变了它的安装路径。现在它已安装到以下位置之一:

  • 64位,版本8.1:C:\Program Files (x86)\Windows Kits\8.1\bin\x64
  • 32位,版本8.1:C:\Program Files (x86)\Windows Kits\8.1\bin\x86
  • 64位,版本8.0:C:\Program Files (x86)\Windows Kits\8.0\bin\x64
  • 32位,版本8.0:C:\Program Files (x86)\Windows Kits\8.0\bin\x86
在Windows 10上

编辑,可以在以下位置找到二进制文件:

  • C:\Program Files (x86)\Windows Kits\10\bin\x86

答案 2 :(得分:1)

我相信前三个是.NET Framework SDK的一部分,而最后一个是Windows Driver Kit

我找不到列出pvk2pfx.exe作为Platform SDK(现在显然是Windows SDK)的一部分的文档,但这是我最初认为它来自的地方。

答案 3 :(得分:1)

我尝试了下面的方法并且它有效,虽然它没有得到SignCode.exe(已被弃用并被SignTool.exe取代)

您可以通过从Visual Studio安装中安装 C ++ Windows开发工具来获取 SignTool.exe (我很古老:2005)。关于@ Lindersoft.com的详细信息。

如何将PFX / P12文件转换为SPC / PVK格式

使用私钥导出证书。

使用带有以下选项的导出向导:

Export Private Key (Yes)

DO NOT TICK include all certificates in the certification path if possible

TICK enable strong protection

DO NOT TICK delete private key

先决条件:OpenSSL 0.9.8或更高版本。 OpenSSL 1.x首选。

注意:如果您运行的是Windows,可以在此处下载OpenSSL。否则,您可以直接从OpenSSL网站查找已编译的二进制文件,或查阅操作系统的软件包管理功能。

私钥(PVK)

Extract your Private Key from the PFX/P12 file to PEM format.
     openssl pkcs12 -in PFX_FILE -nocerts -nodes -out PEM_KEY_FILE

Note: The PFX/P12 password will be asked. This is the password you gave the file upon exporting it.

Convert PEM Private Key to PVK format.

OpenSSL 0.9.8 series:
     pvk -in PEM_KEY_FILE -topvk -out PVK_FILE

OpenSSL 1.x series:
     openssl rsa -in PEM_KEY_FILE -outform PVK -pvk-strong -out PVK_FILE

Note #1: In order to use pvk for OpenSSL 0.9.8 series, you must download PVK Transform.

Note #2: A PEM passphrase may be asked. This will be the password/passphrase that you will use to sign your code.

软件发行商证书(SPC)

Extract Certificate from P12/PFX file.
     openssl pkcs12 -in PFX_FILE -nokeys -out CERT_PEM_FILE

Convert Certificate to SPC format.
     openssl crl2pkcs7 -nocrl -certfile CERT_PEM_FILE -outform DER -out SPC_FILE

注意:如果您已从IE以外的其他浏览器导出证书,请在CERT_PEM_FILE中确保您的证书仅存在,否则代码签名将无效!

转换示例

PVK      openssl pkcs12 -in my_pfx_file.pfx -nocerts -nodes -out rsa.pem      openssl rsa -in rsa.pem -outform PVK -pvk-strong -out mykey.pvk

SPC      openssl pkcs12 -in my_pfx_file.pfx -nokeys -nodes -out cert.pem      openssl crl2pkcs7 -nocrl -certfile cert.pem -outform DER -out cert.spc

此信息由Komodo提供。

答案 4 :(得分:0)

第1步:下载:

http://download.microsoft.com/download/A/6/A/A6AC035D-DA3F-4F0C-ADA4-37C8E5D34E3D/winsdk_web.exe

http://www.microsoft.com/en-us/download/details.aspx?id=8279

第2步:

C:\Users\user1>"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\signto
ol.exe"