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.

Firma del codice Microsoft Authenticode in Linux con Jsign

Jsign è uno strumento Java open source e indipendente dalla piattaforma per la firma del codice Microsoft Authenticode. Jsign è facile da integrare con sistemi di compilazione come Maven, Gradle e Ant, oppure può essere utilizzato direttamente dalla riga di comando.

In questa guida illustreremo l'utilizzo di Jsign dalla riga di comando di Linux per Firma del codice OV / IV e Firma del codice EV. Poiché Jsign è basato su Java, puoi utilizzarlo anche su sistemi Windows e MacOS.

Installa Jsign

Per prima cosa, dovrai scaricare e installare Jsign. Il Sito Web di Jsign include collegamenti a pacchetti Debian e RPM per una facile installazione sui sistemi Linux più diffusi, nonché un file .jar file.

Firma del codice OV / IV

Per la firma del codice OV / IV standard è possibile utilizzare un certificato memorizzato in un keystore Java o in un file PKCS # 12 (PFX). SSL.com offre certificati di firma del codice in formato PKCS # 12, quindi lo useremo per il nostro esempio. In tutti gli esempi di codice seguenti, sostituire i valori mostrati in MAIUSCOLO con i valori effettivi.

  1. Innanzitutto, usa il file keytool comando per ottenere il alias valore da utilizzare durante la firma:
    keytool -list -v -keystore PKCS12-FILE.p12 -storetype PKCS12 -storepass PKCS12-PASSWORD
  2. Controlla l'output del tuo file keytool comando per una riga che inizia con Alias name:.
    Tipo di archivio chiavi: PKCS12 Fornitore dell'archivio chiavi: SUN Il tuo archivio chiavi contiene 1 voce Nome alias: 1 Data di creazione: 18 gennaio 2021 Tipo di voce: PrivateKeyEntry Lunghezza catena certificato: 4 ...

    Nell'esempio sopra, Alias name is 1.

  3. Utilizzare un comando come il seguente per firmare e contrassegnare un file con data e ora:
    • jsign comando installato a livello di sistema:
      jsign --keystore KEYSTORE.p12 --alias ALIAS-NAME --storetype PKCS12 --storepass PKCS12-PASSWORD --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO-SIGN
    • Con 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- CARTELLO
  4. Se il tuo comando ha successo, dovresti vedere un output come il seguente:
    Aggiunta della firma Authenticode a example.exe

Firma del codice EV

Puoi anche utilizzare Jsign con un certificato di firma del codice EV. L'esempio qui utilizza un SSL.com Certificato di firma codice EV installato su un Token USB della chiave di sicurezza convalidato FIPS 140-2.

  1. Innanzitutto, assicurati che OpenSC è installato sul tuo sistema in modo che possa comunicare con il tuo token tramite l'API PKCS # 11. Su distribuzioni basate su Debian come Ubuntu puoi installare OpenSC con apt:
    sudo apt install opensc
  2. Successivamente, crea un file di configurazione. Il nome del file è arbitrario, ma per i comandi di esempio che seguono useremo eToken.cfg. Nota che il percorso per opensc-pkcs11.so può variare nell'installazione di OpenSC, quindi controlla prima di creare il file di configurazione.
    nome = OpenSC-PKCS11 descrizione = SunPKCS11 tramite libreria OpenSC = /usr/lib/x86_64-linux-gnu/opensc-pkcs11.so slotListIndex = 0
  3. Usa il keytool comando per ottenere il alias valore da utilizzare durante la firma:
    keytool -list -v -keystore NONE -storetype PKCS11 -storepass TOKEN-PIN -providerClass sun.security.pkcs11.SunPKCS11 -providerArg eToken.cfg
  4. Controlla l'output del tuo file keytool comando per una riga che inizia con Alias name:. Se il tuo token contiene più certificati, controlla le date di validità e l'emittente nell'output rispetto al tuo certificato. Tieni presente che i certificati di firma del codice EV emessi su YubiKey da SSL.com dovrebbero avere un nome alias di Certificate for PIV Authentication.
    Nome alias: Certificato per autenticazione PIV Tipo di voce: PrivateKeyEntry Lunghezza catena certificato: 1 Certificato [1]: Proprietario: OID.1.3.6.1.4.1.311.60.2.1.3 = US, OID.1.3.6.1.4.1.311.60.2.1.2 .2.5.4.15 = Nevada, OID.20081614243 = Organizzazione privata, CN = SSL Corp, SERIALNUMBER = NV2, O = SSL Corp, L = Houston, ST = TX, C = US Emittente: CN = SSL.com EV Code Signing Intermediate CA RSA R7299, O = SSL Corp, L = Houston, ST = Texas, C = US Numero di serie: 93f57a3bac6570c781580f63172e17 Valido da: ven 12 aprile 46:04:2020 EDT 17 fino a: sab 12 aprile 46:04:2021 EDT XNUMX
  5. Utilizzare un comando come il seguente per firmare e contrassegnare un file con data e ora:
    • jsign comando installato a livello di sistema:
      jsign --keystore eToken.cfg --alias "Certificate for PIV Authentication" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE-TO-SIGN
    • Con Jsigner .jar file:
      java -jar jsign-3.1.jar --keystore eToken.cfg --alias "Certificate for PIV Authentication" --storetype PKCS11 --storepass TOKEN-PIN --tsaurl http://ts.ssl.com --tsmode RFC3161 FILE -FIRMARE
  6. Se il tuo comando ha successo, dovresti vedere un output come il seguente:
    Aggiunta della firma Authenticode a example.exe

Verifica firma digitale

  1. Puoi verificare che la tua firma digitale sia valida visualizzando i dettagli della firma in Windows.
    La firma digitale va bene
  2. È inoltre possibile utilizzare SignTool in Windows per verificare la firma digitale.
    signtool.exe verifica / pa 'C: \ Users \ Aaron Russell \ Desktop \ example.exe' File: C: \ Users \ Aaron Russell \ Desktop \ example.exe Index Algorithm Timestamp =========== ============================= 0 sha256 RFC3161 Verificato con successo: C: \ Users \ Aaron Russell \ Desktop \ example.exe

Dimensioni file massime supportate per la firma del codice su eSigner

eSigner Express 

50 MB per la firma del codice

Correlato Come Tos

Iscriviti alla Newsletter di SSL.com

Cos'è SSL /TLS?

Riproduci video

Iscriviti alla newsletter di SSL.com

Non perdere nuovi articoli e aggiornamenti da SSL.com