Jak zautomatyzować podpisywanie kodu EV za pomocą SignTool.exe lub Certutil.exe przy użyciu eSigner CKA (Cloud Key Adapter)

eSigner CKA (adapter klucza w chmurze) jest aplikacją opartą na systemie Windows, która używa interfejsu CNG (KSP Key Service Provider), aby umożliwić narzędziom takim jak certutil.exe i signtool.exe korzystanie z interfejsu API eSigner CSC do operacji podpisywania. Działa jak wirtualny token USB i ładuje certyfikaty podpisywania kodu do magazynu certyfikatów. Funkcja ta pomaga zwiększyć elastyczność certyfikatu eSigner dzięki opcjom automatyzacji podpisywania w procesach CI/CD, które nie są dostępne w przypadku fizycznego tokena USB.

W tym przewodniku pokazano, jak ręcznie i automatycznie podpisywać kod w narzędziu Windows SignTool, korzystając z certyfikatu produkcyjnego lub testowego. 

Uwaga: eSigner CKA umożliwia elastyczne opcje automatyzacji podpisów w procesach CI/CD, które nie istnieją z fizycznym tokenem USB. Aby uzyskać wskazówki dotyczące korzystania z eSigner CKA do automatycznego podpisywania kodu w narzędziach CI/CD, w tym CircleCI, GitHub Actions, Gitlab CI i Travis CI, odwiedź tę stronę: Jak zintegrować eSigner CKA z narzędziami CI/CD do automatycznego podpisywania kodu.

wymagania

  1. Certyfikat Code Signing wydany przez SSLcom. 
  2. Certyfikat Code Signing musi być aktualnie zarejestrowany w eSigner. Zapoznaj się z tym przewodnikiem: Zarejestruj się w eSigner w celu zdalnego podpisywania dokumentów i kodów
  3. Zainstaluj eSigner CKA na swoim komputerze i skonfiguruj tryb podpisywania (ręczny lub automatyczny) oraz rodzaj podpisywania (produkcyjny lub testowy). Instrukcje instalacji znajdziesz w tym artykule: Jak zainstalować SSL.com eSigner Cloud Key Adapter (CKA).

Użytkownicy mogą podpisywać kod za pomocą funkcji eSigner Extended Validation Code Signing. Kliknij poniżej, aby uzyskać więcej informacji.

DOWIEDZ SIĘ WIĘCEJ

Opcjonalna procedura: Użyj skanowania w poszukiwaniu złośliwego oprogramowania przed podpisaniem

Malware Scan to kluczowa usługa SSL.com, która zapewnia, że ​​oprogramowanie jest wolne od złośliwego oprogramowania, zanim zostanie podpisane certyfikatem podpisywania kodu. Integrując Malware Scan, deweloperzy dodają solidną warstwę zabezpieczeń, automatycznie zatrzymując proces podpisywania, jeśli zostanie wykryte złośliwe oprogramowanie i powiadamiając dewelopera o konieczności podjęcia niezbędnych działań.

Instrukcje:

  1. Zaloguj się do swojego konta SSL.com. Kliknij kartę zamówienia, a następnie przycisk pobieranie link do certyfikatu, aby wyświetlić jego szczegóły. Przewiń w dół do PODPISYWANIE OŚWIADCZEŃ sekcję i znajdź część zawierającą poświadczenia certyfikatu eSigner. Upewnij się, że przyciski opcji, które mówią poświadczenia podpisywania włączone włączone blokowanie złośliwego oprogramowania są wybrane.
  2. Zainstaluj adapter klucza chmury eSigner.
  3. Zainstaluj eSigner CodeSignTool. Kliknij tutaj aby pobrać eSigner CodeSignTool.
  4. Zeskanuj kod w CodeSignTool za pomocą następującego polecenia: scan_code [-hV] -input_file_path=<inputFilePath> -password=<PASSWORD> [-program_name=<programName>] -username=<USERNAME>
  5. Użyj SignTool, aby podpisać kod za pomocą eSigner CKA za pomocą następującego polecenia: scan_code -username=<USERNAME> -password=<PASSWORD> -credential_id=<eSigner Credential ID> -input_file_path=<inputFilePath>

Parametry:

  • -input_file_path=<PATH>: Ścieżka obiektu kodu do podpisania.
  • -username=<USERNAME>SSL.com Nazwa użytkownika konta
  • -password=<PASSWORD>SSL.com hasło do konta.
  • -program_name=<PROGRAM_NAME>: Nazwa programu
  • -credential_id=<CREDENTIAL_ID>: Identyfikator poświadczeń do podpisania certyfikatu. Twój identyfikator uwierzytelniający eSigner znajduje się w Twoim SSL.com strona zamówienia certyfikatu.

Sformułuj polecenie podpisywania kodu

Składniki polecenia

W przypadku ręcznego i automatycznego podpisywania kodu polecenie zawiera:

  1. Lokalizacja SignTool (narzędzie wiersza poleceń, które odpowiada za cyfrowe podpisywanie pliku i weryfikuje podpis), ujęta w podwójne cudzysłowy. Przykład: „C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe”
    Uwaga: Lokalizacja SignTool będzie zależeć od wersji pobranego zestawu SDK i używanej architektury.
  2. Kurs / fd sha256 opcja określająca algorytm skrótu
  3. Kurs /tr http://ts.ssl.com opcja określająca adres serwera znacznika czasu
  4. /td sha256 opcja określająca algorytm skrótu sygnatury czasowej
  5. Kurs /sha1 opcja, która określa odcisk palca, którego SignTool używa do znalezienia odpowiedniego certyfikatu podpisywania kodu z magazynu kluczy
  6. Aktualny certyfikat odcisk palca
  7. Ścieżka pliku, który będzie podpisywany, ujęta w podwójny cudzysłów: „SIGNABLE FILE PATH”

Ogólnie rzecz biorąc polecenie powinno wyglądać następująco: 

„C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” znak /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 odcisk palca certyfikatu „ PODPISOWANA ŚCIEŻKA PLIKU”

Uwaga: Domyślnie SSL.com obsługuje znaczniki czasu z kluczy ECDSA.

Jeśli napotkasz ten błąd: The timestamp certificate does not meet a minimum public key length requirement, należy skontaktować się z dostawcą oprogramowania, aby zezwolił na sygnatury czasowe z kluczy ECDSA.

Jeśli nie ma możliwości, aby dostawca oprogramowania zezwolił na użycie normalnego punktu końcowego, możesz użyć tego starszego punktu końcowego http://ts.ssl.com/legacy aby uzyskać znacznik czasu z jednostki znacznika czasu RSA.

Lokalizowanie odcisku palca certyfikatu

Później, po zainstalowaniu eSigner CKA i dodaniu certyfikatu EV Code Signing do Magazyn certyfikatów użytkownika, będziesz mógł sprawdzić odcisk palca certyfikatu EV Code Signing, naciskając Klawisz Windows + R a następnie wpisz certmgr.msc aby uzyskać dostęp do magazynu certyfikatów użytkownika. Gdy pojawi się okno menedżera certyfikatów, kliknij personel folder na lewym panelu, a następnie wybierz Certyfikaty podfolder po prawej stronie, aby zlokalizować certyfikat EV Code Signing.

Kliknij dwukrotnie certyfikat. Wybierz szczegóły tab, a następnie przewiń w dół, aby odsłonić odcisk palca. Skopiuj odcisk palca i dołącz go do polecenia, gdy podpisujesz kod.

Ręczne podpisywanie kodu

Zainstaluj eSigner CKA

Dostęp do SignTool za pomocą wiersza poleceń

Dla przypomnienia, polecenie podpisywania kodu wygląda następująco: 

„C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” znak /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 odcisk palca certyfikatu „ PODPISOWANA ŚCIEŻKA PLIKU”

Po wpisaniu polecenia i naciśnięciu Wchodzę, zobaczysz wiadomość Zakończono dodawanie dodatkowego sklepu. Następnie pojawi się okno, w którym należy podać nazwę użytkownika i hasło do konta SSL.com.

Wprowadź hasło jednorazowe (OTP) 

Hasło jednorazowe (OTP) do certyfikatu podpisywania kodu EV zarejestrowanego w eSigner zostanie wysłane do Twojej aplikacji Authenticator. Po pomyślnym wprowadzeniu wiersz polecenia wskaże, że plik został pomyślnie podpisany.

Sukces! Twój kod jest teraz podpisany. 

Sprawdź podpis cyfrowy w pliku

Po udanym podpisaniu kodu możesz teraz sprawdzić szczegóły podpisu cyfrowego w pliku. Kliknij prawym przyciskiem myszy podpisany plik, kliknij Właściwości, a następnie Podpisy cyfrowe Patka. Tutaj zobaczysz nazwę osoby podpisującej, użyty algorytm skrótu oraz sygnaturę czasową podpisu. Kliknij Szczegóły przycisk, aby uzyskać więcej informacji o podpisanym kodzie.

Będziesz mógł przeczytać informacje, które zawierają: Ten podpis cyfrowy jest w porządku. Przejdź do kliknięcia Wyświetl certyfikat przycisk.

Po kliknięciu Wyświetl certyfikat przycisk, przeczytasz informację wskazującą, że Certyfikat Cyfrowy wystawiony dla podpisanego pliku zapewnia, że ​​pochodzi on od wydawcy i chroni go przed zmianą po publikacji.

Automatyczne podpisywanie kodu

Dostęp do SignTool za pomocą polecenia

Dla przypomnienia, polecenie podpisywania kodu wygląda następująco: 

C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” znak /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 odcisk palca certyfikatu „SIGNABLE ŚCIEŻKA PLIKU"

Otwarte Wiersz polecenia i umieść polecenie. Po naciśnięciu enter zobaczysz powiadomienie mówiące Zakończono dodawanie dodatkowego sklepu.

Po kilku sekundach zobaczysz powiadomienie Pomyślnie podpisano. Oznacza to, że Twój plik został podpisany w sposób zautomatyzowany, bez dodatkowej potrzeby stosowania haseł jednorazowych. 

Sprawdź obecność podpisu cyfrowego w swoim pliku

Otwórz lokalizację folderu podpisanego pliku. Kliknij prawym przyciskiem myszy, a następnie kliknij Właściwości. Kliknij na zakładkę Podpisy cyfrowe i tutaj zobaczysz, że użyty bezpieczny algorytm mieszający ma 256 bitów. Kliknij bezpośrednie miejsce z nazwą osoby podpisującej, algorytmem skrótu i ​​sygnaturą czasową. Po podświetleniu przejdź do kliknięcia Szczegóły przycisk.

Następnie pojawi się wyskakujące okienko z informacją, że podpis cyfrowy na pliku jest ważny, a także ze wskazaniem konkretnej godziny jego podpisania. Kliknij Wyświetl certyfikat , aby wyświetlić więcej informacji o wydanym certyfikacie cyfrowym EV Code Signing. 

Zobaczysz informacje o certyfikacie EV Code Signing, który potwierdza, że ​​jesteś twórcą pliku wykonywalnego i chroni Twój plik przed manipulacją. 

Powiązane przewodniki dotyczące podpisywania kodu przy użyciu eSigner CKA

Bądź na bieżąco i bezpiecznie

SSL.com jest światowym liderem w dziedzinie cyberbezpieczeństwa, PKI i certyfikaty cyfrowe. Zarejestruj się, aby otrzymywać najnowsze wiadomości branżowe, wskazówki i ogłoszenia o produktach od SSL.com.

Będziemy wdzięczni za Twoją opinię

Weź udział w naszej ankiecie i daj nam znać, co myślisz o swoim ostatnim zakupie.