Как да автоматизирате подписването на EV код със Signtool.exe или Certutil.exe с помощта на eSigner CKA (адаптер за облачен ключ)

Тази статия с ръководство показва как да инсталирате eSigner CKA и да го използвате за автоматизирано и ръчно подписване на код в Signtool. 

eSigner CKA (адаптер за облачен ключ) е базирано на Windows приложение, което използва CNG интерфейса (KSP Key Service Provider), за да позволи на инструменти като certutil.exe и signtool.exe да използват API, съвместим с eSigner Cloud Signature Consortium (CSC) за операции по подписване на корпоративни кодове. Той действа като виртуален USB токен и зарежда сертификатите за подписване на код в хранилището на сертификати.

eSigner CKA позволява гъвкави опции за автоматизиране на подписи в CI/CD процеси, които не съществуват с физически USB токен. За насоки как да използвате eSigner CKA за автоматизирано подписване на код в CI/CD инструменти, включително CircleCI, GitHub Actions, Gitlab CI и Travis CI, моля, посетете тази страница: Как да интегрирате eSigner CKA с CI/CD инструменти за автоматизирано подписване на код.

ЗАБЕЛЕЖКА 

Този учебен материал изисква следното: 

  1. Издаден сертификат за подписване на EV код. 
  2. Сертификат за подписване на EV код трябва в момента да е регистриран в eSigner. Ако това не е така, моля, обърнете се към това статия от ръководството
  3. Инсталирано приложение за удостоверяване на вашия мобилен телефон, като приложение за удостоверяване на Google.

 

Потребителите могат да подписват код с възможността за подписване на код за разширена валидация на eSigner. Щракнете по-долу за повече информация.

НАУЧЕТЕ ПОВЕЧЕ

Формулирайте командния ред

Компоненти на командния ред

Както за ръчно, така и за автоматично подписване на код, ще трябва да въведете командния ред на вашия текстов редактор, напр Command Prompt. Командният ред съдържа:

  1. Местоположението на SignTool (инструмент от командния ред, който отговаря за цифровото подписване на файл и проверява подписа), затворено в скоби: „C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe”
  2. - /fd sha256 опция, която определя хеш алгоритъма
  3. - /тр http://ts.ssl.com опция, която посочва адреса на сървъра за времеви печат
  4. /td sha256 опция, която определя алгоритъма за обобщаване на времевата марка
  5. - /sha1 опция, която определя отпечатъка, който SignTool използва, за да намери подходящия сертификат за подписване на код от хранилището за ключове
  6. Действителният отпечатък на сертификата
  7. Пътят на файла, който ще бъде подписан, затворен в скоби: „ПЪТ НА SIGNABLE FILE PATH“

Като цяло командният ред трябва да изглежда по следния начин: 

“C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” знак /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 отпечатък на сертификат “ ПОДПИСВАЕМ ПЪТ НА ФАЙЛА”

Забележка: По подразбиране SSL.com поддържа времеви отпечатъци от ECDSA ключове.

Ако срещнете тази грешка: The timestamp certificate does not meet a minimum public key length requirement, трябва да се свържете с вашия доставчик на софтуер, за да разрешите времеви отпечатъци от ECDSA ключове.

Ако няма начин вашият доставчик на софтуер да позволи използването на нормалната крайна точка, можете да използвате тази наследена крайна точка http://ts.ssl.com/legacy за да получите времево клеймо от RSA Timestamping Unit.

Намиране на отпечатъка на вашия сертификат

По-късно, при инсталиране на eSigner CKA и добавяне на вашия сертификат за подписване на EV код към Магазин за потребителски сертификати, ще можете да проверите отпечатъка на вашия сертификат за подписване на EV код, като натиснете Windows клавиша + R и след това въведете certmgr.msc за достъп до магазина за потребителски сертификати. Когато се появи прозорецът на мениджъра на сертификати, щракнете върху Персонален папка в левия панел и след това изберете Сертификати подпапка вдясно, за да намерите вашия EV сертификат за подписване на код.

Щракнете двукратно върху сертификата. Изберете Подробности раздел и след това превъртете надолу, за да разкриете Thumbprint. Копирайте Thumbprint и го включете в командния ред, когато подписвате код.

Ръчно подписване на код

Инсталирайте eSigner CKA

Когато избирате режим на инсталиране, изберете Ръчно подписване на код и след това щракнете върху бутона OK.

Влезте в програмата eSigner CKA

След инсталиране на eSigner CKA, отворете програмата и влезте с потребителско име и парола за вашия акаунт в SSL.com.

При успешно влизане ще можете да видите името на субекта, на който е издаден сертификатът за подписване на EV код, серийния номер, датата на изтичане и EVCS (Подписване на код за разширено валидиране) акроним.

Напишете командния ред в текстовия редактор

За да си припомним, командният ред за подписване на код изглежда така: 

“C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” знак /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 отпечатък на сертификат “ ПОДПИСВАЕМ ПЪТ НА ФАЙЛА”

След като напишете командния ред на вашия текстов редактор и натиснете Въведете, ще видите съобщението Готово за добавяне на допълнителен магазин. След това ще се появи прозорец, който изисква от вас да поставите потребителско име и парола за акаунт в SSL.com.

Въведете еднократна парола (OTP) 

Еднократна парола (OTP) за вашия регистриран в eSigner сертификат за подписване на EV код ще бъде изпратена до вашето приложение Authenticator. При успешно въвеждане, командният ред ще покаже, че вашият файл е успешно подписан.

Проверете цифровия подпис във файла

След успешното подписване на кода, вече можете да проверите подробностите за цифровия подпис във файла. Щракнете с десния бутон върху подписания файл, щракнете Имоти, последвано от Цифрови подписи Раздел. Тук ще видите името на подписващия, използвания алгоритъм за обобщаване и времевата марка на подписа. Щракнете върху Детайли бутон, за да получите повече информация за подписания код.

При щракване Детайли, ще можете да прочетете информацията, посочваща Този цифров подпис е ОК. Продължете да щракнете върху Вижте сертификат бутон.

След като кликнете върху Вижте сертификат бутон, ще прочетете информация, показваща, че цифровият сертификат, издаден за подписания файл, гарантира, че е дошъл от издателя и го предпазва от промяна след публикуване.

Автоматично подписване на код

Инсталирайте eSigner CKA

Когато избирате режим на инсталиране, изберете Автоматично подписване на код и след това щракнете върху бутона OK.

Запазете файла с главния ключ

Ще се покаже бележка, обясняваща важността на защитата на файла с главния ключ. Моля, прочетете го и след това щракнете върху бутона OK.

След това ще се появи прозорец, който ви позволява да изберете къде да запазите файла с главния ключ.

Въведете потребителското име и паролата на вашия SSL.com акаунт

Въведете потребителско име и парола за вашия акаунт в SSL.com.

Въведете своя eSigner Базирана на времето еднократна парола (TOTP)

След това поставете своята базирана на време еднократна парола (TOTP). Можете да намерите вашия TOTP, включен в подробностите за поръчка на сертификат за подписване на EV код във вашия акаунт в SSL.com. Въведете 4-цифрения ПИН, който сте задали преди, когато сте регистрирали поръчката си за eSigner и след това щракнете върху Показване на QR код бутон, за да разкриете TOTP.

Вашият TOTP ще бъде показан в поле с етикет таен код. Копирайте TOTP, поставете го върху TOTP Secret поле на прозореца на eSigner CKA и след това щракнете върху OK за да го запазите. 

След като въведете идентификационните данни на акаунта си в SSL.com и TOTP, ще можете да видите подробностите за вашия сертификат за подписване на EV код. В случай, че решите да актуализирате своя TOTP, поставете новия TOTP в определеното поле и след това щракнете Save.

Напишете командния ред в текстовия редактор

За да си припомним, командният ред за подписване на код изглежда така: 

C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” знак /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 сертификат thumbprint „SIGNABLE ФАЙЛОВА ПЪТЕКА"

отворено Command Prompt намлява поставете командния ред. След като натиснете enter, ще видите съобщението, което казва Готово за добавяне на допълнителен магазин.

След няколко секунди ще видите известието Успешно подписано. Това показва, че вашият файл е подписан по автоматизиран начин, без допълнителна нужда от еднократни пароли. 

Проверете наличието на цифров подпис във вашия файл

Отворете местоположението на папката на вашия подписан файл. Щракнете с десния бутон върху него и след това щракнете Имоти. Щракнете върху раздела Цифрови подписи и тук ще видите използвания защитен хеш алгоритъм има 256 бита. Щракнете върху непосредственото пространство, показващо името на подписващия, алгоритъм за обобщаване и времеви печат. След като бъде маркирана, продължете да щракнете върху Детайли бутон.

След това ще се покаже изскачащ прозорец, в който се посочва, че цифровият подпис на файла е валиден, както и посочва конкретното време, когато е подписан. Щракнете върху Вижте сертификат бутон, за да видите повече информация относно цифровия сертификат за подписване на EV код, който е издаден. 

Ще видите информация за сертификата за подписване на EV код, в който се посочва, че ви валидира като създател на изпълнимия файл и защитава вашия файл от манипулиране. 

Как да тествате eSigner CKA с вашия акаунт в пясъчна среда

Инсталирайте eSigner CKA

Изберете дали да го инсталирате наръчник or Автоматизирана вид

****Обърнете внимание, че ако сте избрали един режим, трябва да инсталирате отново програмата, преди да можете да я тествате в другия режим.*****

Отворете поддиректорията Roaming на Appdata

 За да тествате eSigner CKA с помощта на вашия SSL.com акаунт в пясъчна среда, трябва да промените настройките на приложението в поддиректорията Roaming на папката AppData. Въведете %Appdata% в лентата за търсене на Windows, за да ви отведе директно до роуминг поддиректорията на AppData.

Отворете eSigner Файл с данни с вашия текстов редактор

Отворете eSignerCKA папка, намерете файла esignerapp.data, щракнете с десния бутон върху него и изберете опцията за редактиране на файла с вашия текстов редактор, в този случай Notepad + +

След като отворите текстовия редактор, ще видите наборите от стойности по-долу.

Можете да разделите наборите от стойности в следващите редове, така че да могат да бъдат по-лесни за редактиране. 

Тестово подписване в ръчен режим

За тестово подписване в ръчен режим трябва да присъстват следните стойности:

  1. Идентификационният номер на клиента трябва да бъде: qOUeZCCzSqgA93acB3LYq6lBNjgZdiOxQc-KayC3UMw
  2. Добави -опитвам на api_url
    Преди: “api_url”:”https://cs.ssl.com/csc/v0/
    След: “api_url”:”https://cs-опитайте.ssl.com/csc/v0/"
  3. Сменете Влизане с oauth-пясъчник на auth_url
    Преди: “auth_url”:”https://Влизане.ssl.com/oauth2/token“
    След: “auth_url”:”https://oauth-пясъчник.ssl.com/oauth2/token“
  4. „cred_mode“: 0
  5. “master_key”: нула

Автоматичен режим на тестово подписване

За тестово подписване в автоматизиран режим трябва да присъстват следните стойности:

  1. Идентификационният номер на клиента трябва да бъде: qOUeZCCzSqgA93acB3LYq6lBNjgZdiOxQc-KayC3UMw
  2. Добави -опитвам на api_url
    Преди: “api_url”:”https://cs.ssl.com/csc/v0/
    След: “api_url”:”https://cs-опитайте.ssl.com/csc/v0/"
  3. Сменете Влизане с oauth-пясъчник на auth_url
    Преди: “auth_url”:”https://Влизане.ssl.com/oauth2/token“
    След: “auth_url”:”https://oauth-пясъчник.ssl.com/oauth2/token“
  4. „cred_mode“: 1
  5. Сменете нула на master_key с точния път на вашия файл главен ключ файл.
    Когато инсталирате eSigner CKA в автоматизиран режим с цел тестване, трябва да предоставите идентификационни данни за вход в акаунта си в пясъчна среда. Причината е, че при автоматичното подписване на код идентификационните данни за влизане се криптират с помощта на главния ключ. Ако въведете производствени идентификационни данни за вход при инсталиране и по-късно промените стойностите във файла esignerapp.data, следвайки формат за автоматизирано тестване, няма да можете да провеждате тестове, тъй като потребителското име и паролата, които сте дали, не присъстват в тестовата среда на пясъчника.

Влезте в eSigner CKA, като използвате идентификационните данни на вашия акаунт в SSL.com sandbox

След промяна на стойностите на esignerapp.data, вече можете да тествате своя сертификат за подписване на EV код от вашата пясъчна среда, като следвате същите стъпки, описани по-рано за сертификат на живо.

Как да подпишете файл с хардуерен лабораторен комплект (HLK) с помощта на eSigner CKA и HLKSigntool

Hardware Lab Kit е инструмент за тестване и подготовка на драйвер за режим на ядрото за изпращане на Microsoft. Понастоящем eSigner CKA също изисква HLKSigntool да бъде инсталиран, за да се използва в рамките на HLK софтуера на Microsoft 

eSigner CKA трябва първо да бъде инсталиран и конфигуриран (потребител е влязъл и е зададен TOTP секрет), преди да стартира HLKSignTool.exe. 

Стъпка . Инсталирайте и конфигурирайте eSigner CKA

Стъпка . Използвайте HLKSignTool с командния ред по-долу

Командна линия
HLKSignTool.exe сертификат_сериален "път_към_файл"

Пример:

HLKSignTool.exe 3364de1e9ed1882e963a89ff7a958e9d "A:\teet.hlkx"

Как да подписвате VBA макроси с помощта на eSigner CKA

Изтеглете и инсталирайте, като използвате тази връзка Пакети с предметен интерфейс на Microsoft Office за цифрово подписване на VBA проекти, като използвате тази връзка: https://www.microsoft.com/en-us/download/details.aspx?id=56617

След инсталиране изпълнете следните стъпки:

  1. Отворете командния ред на администратора и въведете следното, пътят ще бъде там, където току-що сте инсталирали файловете:

    regsvr32.exe

    regsvr32.exe

    За повече информация как да регистрирате OLE контроли, посетете Уебсайта на Microsoft.

    Ако успеете, ще видите съобщение: „DIIRegister Server in успели."

  2. Инсталирайте следното: download.microsoft.com/download/C/6/D/C6D0FD4E-9E53-4897-9B91-836EBA2AACD3/vcredist_x86.exe
  3. Инсталирайте eSigner CKA
  4. Изпълнете командата SignTool, за да подпишете макроси: https://www.ssl.com/how-to/automate-ev-code-signing-with-signtool-or-certutil-esigner/#components-of-the-command-line

Как да подписвате .app файлове с помощта на eSigner CKA

  1. Изтегли Dynamics.365.BC.55195.US.DVD.zip at https://www.microsoft.com/en-US/download/details.aspx?id=105113 
    Забележка: Ако се опитате да подпишете a .приложение файл с помощта на eSigner CKA, без първо да инсталирате Microsoft Приложение Dynamics 365 Business Central, ще получите тази грешка на SignTool: Този файлов формат не може да бъде подписан, защото не е разпознат.
  2. Отворете Dynamics.365.BC.55195.US.DVD.zip и извлечете съдържанието на предпочитаното от вас място.
  3. отворено setup.exe за Microsoft Dynamics 365 Business Central и щракнете върху Следваща> бутон.
  4. Прочетете лицензионните условия за софтуер на Microsoft и след това щракнете върху Приемам > бутон.
  5. Изберете Разширени опции за инсталиране
  6. Кликнете Изберете опция за инсталиране.
  7. Избери Сървър опция за инсталиране.
  8. Щракнете върху Добавете Обява бутон.
  9. Изчакайте инсталацията да приключи. При успешна инсталация щракнете върху Близо бутон.
  10. Подпишете своя .app файл в SignTool: https://www.ssl.com/how-to/automate-ev-code-signing-with-signtool-or-certutil-esigner/#components-of-the-command-line

Как да подписвате vsix файлове с помощта на eSigner CKA

  1. Изтеглете Dotnet Core SDK: https://dotnet.microsoft.com/en-us/download/dotnet/7.0
  2. Инсталирайте OpenVsixSignTool
    dotnet tool install -g OpenVsixSignTool
  3. Използвайте тази команда за знак:
    OpenVsixSignTool sign --sha1 CERTIFICATE THUMBPRINT --timestamp http://ts.ssl.com -ta sha256 -fd sha256 "SIGNABLE FILE PATH"

Как да използвате сканиране за зловреден софтуер на eSigner CKA

Инструкции:

  1. Влезте във вашия акаунт в SSL.com. Щракнете върху раздела за поръчки, последван от Изтегли връзка на вашия сертификат, за да се покажат неговите подробности. Превъртете надолу до ПОДПИСВАНЕ НА ПЪЛНОМОЩНИЯ раздел и намерете частта, показваща вашите идентификационни данни за сертификат за eSigner. Уверете се, че радио бутоните, които казват подписването на идентификационни данни е активирано намлява активиран блокер за зловреден софтуер са избрани.
  2. Инсталирайте eSigner Cloud Key Adapter.
  3. Инсталирайте eSigner CodeSignTool. Кликнете тук за да изтеглите eSigner CodeSignTool.
  4. Сканирайте кода на CodeSignTool, като използвате следната команда: scan_code [-hV] -input_file_path=<inputFilePath> -password=<PASSWORD> [-program_name=<programName>] -username=<USERNAME>
  5. Използвайте Sign Tool, за да подпишете кода с eSigner CKA, като използвате следната команда: scan_code -username=<USERNAME> -password=<PASSWORD> -credential_id=<eSigner Credential ID> -input_file_path=<inputFilePath>

Параметри:

  • -input_file_path=<PATH>: Път на кодов обект, който трябва да бъде подписан.
  • -username=<USERNAME>SSL.com потребителско име на акаунта
  • -password=<PASSWORD>SSL.com парола за акаунта.
  • -program_name=<PROGRAM_NAME>: Име на програмата
  • -credential_id=<CREDENTIAL_ID>: Идентификационен номер на удостоверение за подписване на сертификат. Вашият идентификационен номер за eSigner се намира във вашия SSL.com страница за поръчка на сертификат.

Абонирайте се за бюлетина на SSL.com

Не пропускайте нови статии и актуализации от SSL.com

Бъдете информирани и защитени

SSL.com е глобален лидер в киберсигурността, PKI и цифрови сертификати. Регистрирайте се, за да получавате най-новите новини от индустрията, съвети и съобщения за продукти от SSL.com.

Ще се радваме на вашите отзиви

Попълнете нашата анкета и ни кажете какво мислите за скорошната си покупка.