Живые и Твёрдые Издательский Дом Коммерсантъ

Как подписать приложение (программу)?

Для этого надо выполнить три действия:
  1. Создать сертификат
  2. Зарегистрировать сертификат
  3. Подписать приложение ( зарегистрированным сертификатом )
Если у вас уже имеется зарегистрированный сертификат - переходите сразу к п.3.

1. Создать сертификат

Средством для создания сертификатов является Makecert.exe, которое распространяется с SDK.
Вот пример создания простейшего сертификата:
C:\>makecert -r -n "CN=Rabus Online SoftWare" -ss RabusCertStore -sr LocalMachine c:\www\rabus.crt

-r  - Корневой сертификат
-n  - "CN=Rabus Online SoftWare", CN=CompanyName
-ss - Наименование хранилища сертификатов (RabusCertStore - оно потребуется при подписании программы)
-sr - LocalMachine (место раположения хранилища сертификатов)
c:\www\rabus.crt - имя файла с сертификатом (на ваш вкус)

2. Зарегистрировать сертификат

Чтобы начать регистрацию сертификата - надо запустить получившийся файл с сертификатом. В появившемся окне, на вкладку "Общее", нажать кнопку "Установить сертификат..."
становить сертификат Мастер импорта сертификатов Выбор хранилища сертификата Завершение работы импорта сертификата

3. Подписать приложение ( зарегистрированным сертификатом )

Для подписи программ ( приложений, драйверов, динамических библиотек) используется SignTool.exe, которое распространяется с SDK. Это утилита запускается из командной строки. Она устанавливает цифровую подпись, проверяет подписи и/или время проштампованные в файлах.
Пример: Подписываем программу c:\projects\FileReplace\bin\release\FileReplace.exe сертификатом, находящемся в хранилище RabusCertStore
c:\>signtool.exe sign /uw /s RabusCertStore c:\projects\FileReplace\bin\release\FileReplace.exe
Почему так важно подписывать файлы читайте здесь (Introduction to Code Signing)
Утилиты MakeCert.exe и SignTool.exe утанавливаются в папке \Bin в месте установки Microsoft Windows Software Development Kit (SDK).
Рейтинг@Mail.ru Photo & Фото