Где вы можете скачать signcode.exe и другие инструменты

Если вы решите подписать свой код, вам понадобится:

  • Signcode.exe
  • makecert.exe
  • cert2spc.exe
  • pvk2pfx.exe

Какое лучшее место для загрузки этих инструментов?

Есть ли способ сделать это, не загружая большое количество SDK Microsoft Windows?

Ответы

Ответ 1

Начните с Windows SDK. Это должно иметь большую часть того, что вы ищете.

Кроме того, SignCode.exe устарел после .NET 1.1. SignTool.exe является заменой.


Без загрузки SDK?

В общем, есть только несколько инструментов SDK, которые распространяются вне официального пакета от Microsoft. Они перечислены в файле redist.txt. В моей системе я нашел файл .NET SDK redist.txt в %ProgramFiles%\Microsoft.NET\SDK\v2.0 64bit (я предполагаю, что папка называется "v2.0" в системах x86). Вот что он сказал:

.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

Итак, похоже, что большинство этих файлов не будут распространяться. Так что, опять-таки, мой ответ загружает SDK Windows. Имейте в виду, что вы можете установить только подмножество инструментов, если хотите; программа установки позволяет вам выбрать/отменить выбор любого из компонентов (например, только инструменты разработки .NET).

Ответ 2

Я только что установил Windows SDK для Windows 8. И я все еще не мог найти ни SignTool.exe, ни SignCode.exe.

Пока я не понял, что Microsoft изменила свой путь установки. Теперь он устанавливается в одно из следующих мест:

  • 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
  • и др.

Ответ 3

Я считаю, что первые три являются частью .NET Framework SDK, в то время как последний находится на Windows Driver Kit.

Я не смог найти документ, перечисляющий pvk2pfx.exe как часть SDK платформы (теперь, по-видимому, Windows SDK), но именно там я и думал, что это было.

Ответ 4

Я попробовал метод ниже, и он работал, хотя он не дает вам SignCode.exe(который устарел и заменен на SignTool.exe)

Вы можете получить SignTool.exe, установив только инструменты разработки Windows С++ из установки Visual Studio (моя древняя: 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, что ТОЛЬКО ваш сертификат существует, иначе код не будет работать!

Преобразование примеров

ПВК    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.