en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

en English
X

Select Language

Powered by Google TranslateTranslate

We hope you will find the Google translation service helpful, but we don’t promise that Google’s translation will be accurate or complete. You should not rely on Google’s translation. English is the official language of our site.

Podpisywanie kodu Microsoft Authenticode w systemie Linux za pomocą Jsign

Jsign to otwarte, niezależne od platformy narzędzie Java do podpisywania kodu Microsoft Authenticode. Jsign można łatwo zintegrować z systemami kompilacji, takimi jak Maven, Gradle i Ant, lub można go używać bezpośrednio z wiersza poleceń.

W tym poradniku omówimy używanie Jsign z wiersza poleceń systemu Linux dla Podpisywanie kodu OV / IV i Podpisywanie kodu EV. Ponieważ Jsign jest oparty na Javie, można go również używać w systemach Windows i MacOS.

Zainstaluj Jsign

Najpierw musisz pobrać i zainstalować Jsign. Plik Witryna Jsign zawiera łącza do pakietów Debiana i RPM ułatwiających instalację w większości popularnych systemów Linux, a także plik .jar plik.

Podpisywanie kodu OV / IV

Do standardowego podpisywania kodu OV / IV można użyć certyfikatu przechowywanego w magazynie kluczy Java lub pliku PKCS # 12 (PFX). SSL.com dostarcza certyfikaty do podpisywania kodu w formacie PKCS # 12, więc użyjemy tego w naszym przykładzie. We wszystkich poniższych przykładach kodu zamień wartości wyświetlane WIELKIMI LITERAMI na wartości rzeczywiste.

  1. Najpierw użyj keytool polecenie, aby pobrać plik alias wartość do użycia podczas podpisywania:
    keytool -list -v -keystore PKCS12-PLIK.p12 -typ sklepu PKCS12 -storepass PKCS12-HASŁO
  2. Sprawdź wyjście swojego keytool polecenie dla wiersza zaczynającego się od Alias name:.
    Typ magazynu kluczy: PKCS12 Dostawca magazynu kluczy: SUN Twój magazyn kluczy zawiera 1 wpis Nazwa aliasu: 1 Data utworzenia: 18 stycznia 2021 r. Typ wpisu: PrivateKeyEntry Długość łańcucha certyfikatów: 4 ...

    W powyższym przykładzie Alias name is 1.

  3. Użyj polecenia podobnego do poniższego, aby podpisać plik i oznaczyć go datą:
    • jsign polecenie zainstalowane w całym systemie:
      jsign --keystore KEYSTORE.p12 --alias ALIAS-NAME --storetype PKCS12 --storepass PKCS12-PASSWORD --tsaurl http://ts.ssl.com --tsmode RFC3161 PLIK DO PODPISU
    • Dzięki Jsigner .jar file:
      java -jar jsign-3.1.jar --keystore KEYSTORE.p12 --alias ALIAS-NAME --storetype PKCS12 --storepass PKCS12-PASSWORD --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO- ZNAK
  4. Jeśli polecenie się powiedzie, powinieneś zobaczyć następujące dane wyjściowe:
    Dodanie podpisu Authenticode do example.exe

Podpisywanie kodu EV

Możesz również użyć Jsign z certyfikatem do podpisywania kodu EV. W tym przykładzie użyto SSL.com Certyfikat podpisywania kodu EV zainstalowany na Klucz bezpieczeństwa z certyfikatem FIPS 140-2 Token USB.

  1. Po pierwsze, upewnij się, że OpenSC jest zainstalowany w Twoim systemie, aby mógł komunikować się z Twoim tokenem za pośrednictwem interfejsu API PKCS # 11. W dystrybucjach opartych na Debianie, takich jak Ubuntu, możesz zainstalować OpenSC z apt:
    sudo apt install opensc
  2. Następnie utwórz plik konfiguracyjny. Nazwa pliku jest dowolna, ale w przykładowych poleceniach poniżej użyjemy eToken.cfg. Zwróć uwagę, że ścieżka do opensc-pkcs11.so może się różnić w Twojej instalacji OpenSC, więc sprawdź przed utworzeniem pliku konfiguracyjnego.
    name = OpenSC-PKCS11 description = SunPKCS11 przez bibliotekę OpenSC = /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so slotListIndex = 0
  3. Użyj keytool polecenie, aby pobrać plik alias wartość do użycia podczas podpisywania:
    keytool -list -v -keystore BRAK -storetype PKCS11 -storepass TOKEN-PIN -providerClass sun.security.pkcs11.SunPKCS11 -providerArg eToken.cfg
  4. Sprawdź wyjście swojego keytool polecenie dla wiersza zaczynającego się od Alias name:. Jeśli Twój token zawiera wiele certyfikatów, sprawdź daty ważności i wystawcę w danych wyjściowych z certyfikatem. Zwróć uwagę, że certyfikaty do podpisywania kodu EV wydane na YubiKey z SSL.com powinny mieć alias Certificate for PIV Authentication.
    Nazwa aliasu: Certyfikat dla uwierzytelniania PIV Typ wpisu: PrivateKeyEntry Długość łańcucha certyfikatu: 1 Certyfikat [1]: Właściciel: OID.1.3.6.1.4.1.311.60.2.1.3 = USA, OID.1.3.6.1.4.1.311.60.2.1.2 .2.5.4.15 = Nevada, OID 20081614243 = Organizacja prywatna, CN = SSL Corp, SERIALNUMBER = NV2, O = SSL Corp, L = Houston, ST = TX, C = US Wystawca: CN = SSL.com EV Code Signing Intermediate CA RSA R7299, O = SSL Corp, L = Houston, ST = Texas, C = US Numer seryjny: 93f57a3bac6570c781580f63172e17 Ważne od: piątek 12 kwietnia 46:04:2020 EDT 17 do: sob. 12 kwietnia 46:04:2021 EDT XNUMX
  5. Użyj polecenia podobnego do poniższego, aby podpisać plik i oznaczyć go datą:
    • jsign polecenie zainstalowane w całym systemie:
      jsign --keystore eToken.cfg --alias "Certyfikat uwierzytelniania PIV" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 PLIK DO PODPISU
    • Dzięki Jsigner .jar file:
      java -jar jsign-3.1.jar --keystore eToken.cfg --alias "Certyfikat uwierzytelniania PIV" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 PLIK -PODPISAĆ
  6. Jeśli polecenie się powiedzie, powinieneś zobaczyć następujące dane wyjściowe:
    Dodanie podpisu Authenticode do example.exe

Zweryfikuj podpis cyfrowy

  1. Możesz sprawdzić, czy Twój podpis cyfrowy jest ważny, przeglądając szczegóły podpisu w systemie Windows.
    Podpis cyfrowy jest w porządku
  2. Można również użyć ZnakNarzędzie w systemie Windows, aby zweryfikować podpis cyfrowy.
    signtool.exe weryfikacja / pa 'C: \ Users \ Aaron Russell \ Desktop \ example.exe' Plik: C: \ Users \ Aaron Russell \ Desktop \ example.exe Indeks algorytmu Sygnatura czasowa =========== ============================= 0 sha256 RFC3161 Pomyślnie zweryfikowano: C: \ Users \ Aaron Russell \ Desktop \ example.exe

Powiązane How Tos

Subskrybuj biuletyn SSL.com

Co to jest SSL /TLS?

Odtwórz wideo

Zapisz się do newslettera SSL.com

Nie przegap nowych artykułów i aktualizacji z SSL.com