Come automatizzare la firma del codice EV con Signtool.exe o Certutil.exe utilizzando eSigner CKA (Cloud Key Adapter)

Questo articolo della guida mostra come installare eSigner CKA e utilizzarlo per la firma automatica e manuale del codice su Signtool. 

eSigner CKA (adattatore chiave cloud) è un'applicazione basata su Windows che utilizza l'interfaccia CNG (KSP Key Service Provider) per consentire a strumenti come certutil.exe e signtool.exe di utilizzare l'API conforme a eSigner Cloud Signature Consortium (CSC) per le operazioni di firma del codice aziendale. Funziona come un token USB virtuale e carica i certificati di firma del codice nell'archivio dei certificati.

eSigner CKA offre opzioni flessibili per automatizzare le firme nei processi CI/CD che non esistono con un token USB fisico. Per indicazioni su come utilizzare eSigner CKA per la firma automatica del codice negli strumenti CI/CD tra cui CircleCI, GitHub Actions, Gitlab CI e Travis CI, visitare questa pagina: Come integrare eSigner CKA con gli strumenti CI/CD per la firma automatica del codice.

NOTA 

Questo materiale didattico richiede quanto segue: 

  1. Certificato di firma del codice EV rilasciato. 
  2. Certificato di firma del codice EV deve essere attualmente registrato su eSigner. In caso contrario, fare riferimento a questo articolo guida
  3. Un'app di autenticazione installata sul tuo cellulare come l'app di autenticazione di Google.

 

Gli utenti possono firmare il codice con la funzionalità Extended Validation Code Signing di eSigner. Clicca sotto per maggiori informazioni.

SCOPRI DI PIÙ

Formulare la riga di comando

Componenti della riga di comando

Per la firma del codice sia manuale che automatizzata, dovrai digitare la riga di comando sul tuo editor di testo, ad esempio Prompt dei comandi. La riga di comando contiene:

  1. Il percorso di SignTool (strumento a riga di comando che è responsabile della firma digitale di un file e verifica la firma), racchiuso tra parentesi: “C:\Programmi (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe"
  2. Il /fdsha256 opzione che specifica l'algoritmo hash
  3. Il / tr http://ts.ssl.com opzione che specifica l'indirizzo del server timestamp
  4. /td sha256 opzione che specifica l'algoritmo di digest del timestamp
  5. Il /sha1 opzione che specifica l'identificazione personale che SignTool utilizza per trovare il certificato di firma del codice appropriato dall'archivio chiavi
  6. L'identificazione personale del certificato effettivo
  7. Il percorso del file che verrà firmato, racchiuso tra parentesi: “PERCORSO FILE SIGNABLE”

Nel complesso la riga di comando dovrebbe essere simile alla seguente: 

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" sign /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 identificazione personale del certificato " PERCORSO FILE FIRMABILE”

Nota: Per impostazione predefinita, SSL.com supporta i timestamp delle chiavi ECDSA.

Se riscontri questo errore: The timestamp certificate does not meet a minimum public key length requirement, è necessario contattare il fornitore del software per consentire i timestamp dalle chiavi ECDSA.

Se non è possibile per il tuo fornitore di software consentire l'utilizzo dell'endpoint normale, puoi utilizzare questo endpoint legacy http://ts.ssl.com/legacy per ottenere un timestamp da un'unità di timestamp RSA.

Individuazione dell'impronta digitale del tuo certificato

Successivamente, dopo aver installato eSigner CKA e aver aggiunto il certificato di firma del codice EV al file Archivio certificati utente, sarai in grado di controllare l'identificazione personale del certificato di firma del codice EV premendo Tasto Windows + R e poi digita certmgr.msc per accedere all'archivio certificati utente. Quando viene visualizzata la finestra di gestione dei certificati, fare clic su MONITOR PERSONALI cartella nel pannello di sinistra e quindi selezionare il Certificati sottocartella a destra per individuare il certificato di firma del codice EV.

Fare doppio clic sul certificato. Seleziona i Dettagli scheda e quindi scorrere verso il basso per visualizzare l'impronta digitale. Copia l'identificazione personale e includila nella riga di comando quando firmi il codice.

Firma manuale del codice

Installa eSigner CKA

Quando si sceglie la modalità di installazione, selezionare Firma manuale del codice e quindi fare clic sul pulsante OK.

Accedi al programma eSigner CKA

Dopo l'installazione di eSigner CKA, apri il programma e accedi utilizzando il nome utente e la password del tuo account SSL.com.

Dopo aver effettuato correttamente l'accesso, potrai vedere il nome dell'entità a cui è stato rilasciato il certificato di firma del codice EV, il numero di serie, la data di scadenza e il EVC Acronimo (Extended Validation Code Signing).

Scrivi la riga di comando nell'editor di testo

Per ricordare, la riga di comando per la firma del codice è simile alla seguente: 

"C:\Program Files (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe" sign /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 identificazione personale del certificato " PERCORSO FILE FIRMABILE”

Dopo aver scritto la riga di comando sul tuo editor di testo e aver premuto entrare, vedrai il messaggio Aggiunta di un negozio aggiuntivo completata. Verrà quindi visualizzata una finestra che richiede di inserire il nome utente e la password dell'account SSL.com.

Inserisci la password monouso (OTP) 

Una password monouso (OTP) per il certificato di firma del codice EV registrato con eSigner verrà inviata all'app Authenticator. Dopo aver immesso correttamente, il prompt dei comandi indicherà che il file è stato firmato correttamente.

Controllare la firma digitale sul file

Dopo aver eseguito correttamente la firma del codice, ora puoi controllare i dettagli della firma digitale sul file. Fare clic con il pulsante destro del mouse sul file firmato, fare clic su Properties, seguito dal Firme digitali Tab. Qui vedrai il nome del firmatario, l'algoritmo digest utilizzato e il timestamp della firma. Clicca il Dettagli pulsante per ottenere maggiori informazioni sul codice firmato.

Al clic Dettagli, sarai in grado di leggere le informazioni affermando Questa firma digitale è OK. Procedi a fare clic su Visualizza certificato pulsante.

Dopo aver cliccato il Visualizza certificato leggerai le informazioni che indicano che il Certificato Digitale emesso per il file firmato garantisce che provenga dall'editore e lo protegge da alterazioni dopo la pubblicazione.

Firma del codice automatizzata

Installa eSigner CKA

Quando si sceglie la modalità di installazione, selezionare Firma del codice automatizzata e quindi fare clic sul pulsante OK.

Salva il file della chiave maestra

Verrà visualizzata una nota che spiega l'importanza di proteggere il file della chiave master. Si prega di leggerlo e quindi fare clic sul pulsante OK.

Verrà quindi visualizzata una finestra che ti consentirà di scegliere dove salvare il file della chiave master.

Digita il nome utente e la password del tuo account SSL.com

Inserisci il nome utente e la password del tuo account SSL.com.

Digita il tuo eSigner Password monouso basata sul tempo (TOTP)

Quindi inserisci la tua password monouso basata sul tempo (TOTP). Puoi trovare il tuo TOTP incluso nei dettagli dell'ordine del certificato EV Code Signing sul tuo account SSL.com. Digita il PIN a 4 cifre che hai impostato in precedenza al momento della registrazione dell'ordine per eSigner e quindi fai clic su Mostra codice QR pulsante per visualizzare il TOTP.

Il tuo TOTP verrà mostrato su una casella etichettata codice segreto. Copia il TOTP, incollalo sul file Segreto TOTP campo della finestra eSigner CKA e quindi fare clic su OK pulsante per salvarlo. 

Dopo aver inserito le credenziali del tuo account SSL.com e il TOTP, sarai in grado di visualizzare i dettagli del tuo certificato di firma del codice EV. Nel caso tu decida di aggiornare il tuo TOTP, incolla il nuovo TOTP nel campo assegnato e poi clicca Risparmi.

Scrivi la riga di comando nell'editor di testo

Per ricordare, la riga di comando per la firma del codice è simile alla seguente: 

C:\Programmi (x86)\Windows Kits\10\bin\10.0.22000.0\x86\signtool.exe” segno /fd sha256 /tr http://ts.ssl.com /td sha256 /sha1 certificato identificazione personale “SIGNABLE PERCORSO DEL FILE"

Apri Prompt dei comandi ed posizionare la riga di comando. Dopo aver premuto Invio, vedrai l'avviso che dice Aggiunta di un negozio aggiuntivo completata.

Dopo alcuni secondi, vedrai l'avviso Firmato con successo. Ciò indica che il tuo file è stato firmato in modo automatico, senza la necessità aggiuntiva di OTP. 

Verifica la presenza della firma digitale sul tuo file

Apri la posizione della cartella del file firmato. Fare clic con il pulsante destro del mouse e quindi fare clic Properties. Fare clic sulla scheda Firme digitali e qui vedrai l'algoritmo di hash sicuro utilizzato ha 256 bit. Fare clic sullo spazio immediato che mostra il nome del firmatario, l'algoritmo digest e il timestamp. Dopo che è stato evidenziato, procedi a fare clic su Dettagli pulsante.

Verrà quindi visualizzata una finestra pop-up che indica che la firma digitale sul file è valida e indica l'ora specifica in cui è stata firmata. Clicca il Visualizza certificato per visualizzare ulteriori informazioni sul certificato digitale EV Code Signing che è stato emesso. 

Vedrai le informazioni sul certificato di firma del codice EV che afferma che ti convalida come creatore dell'eseguibile e protegge il tuo file da manomissioni. 

Come testare eSigner CKA con il tuo account sandbox

Installa eSigner CKA

Scegli se installarlo in Manuale or Automatizzata modo

**** Tieni presente che se hai scelto una modalità, devi reinstallare il programma prima di poterlo testare nell'altra modalità.*****

Apri la sottodirectory Roaming di Appdata

 Per testare eSigner CKA utilizzando il tuo account sandbox SSL.com, devi modificare le impostazioni dell'applicazione nella sottodirectory Roaming della cartella AppData. accedere % Appdata% sulla barra di ricerca di Windows per portarti direttamente alla sottodirectory roaming di AppData.

Apri firma elettronica File di dati con il tuo editor di testo

Aprire il eSignerCKA cartella, individuare il file esignerapp.data, fai clic con il pulsante destro del mouse e scegli l'opzione per modificare il file utilizzando il tuo editor di testo, in questo caso Notepad + +

All'apertura dell'editor di testo, vedrai i set di valori di seguito.

È possibile separare i set di valori in righe successive in modo che possano essere modificati più facilmente. 

Firma del test in modalità manuale

Per la firma del test in modalità Manuale, devono essere presenti i seguenti valori:

  1. L'ID cliente dovrebbe essere: qOUeZCCzSqgA93acB3LYq6lBNjgZdiOxQc-KayC3UMw
  2. Aggiungi -Tentativo su api_url
    Prima: “api_url”:”https://cs.ssl.com/csc/v0/
    Dopo: “api_url”:”https://cs-prova.ssl.com/csc/v0/"
  3. sostituire accesso con oauth sandbox su auth_url
    Prima: “auth_url”:”https://accesso.ssl.com/oauth2/token"
    Dopo: “auth_url”:”https://oauth sandbox.ssl.com/oauth2/token"
  4. “modalità_cred”: 0
  5. “master_key”: nullo

Firma del test in modalità automatizzata

Per la firma di prova in modalità automatizzata, devono essere presenti i seguenti valori:

  1. L'ID cliente dovrebbe essere: qOUeZCCzSqgA93acB3LYq6lBNjgZdiOxQc-KayC3UMw
  2. Aggiungi -Tentativo su api_url
    Prima: “api_url”:”https://cs.ssl.com/csc/v0/
    Dopo: “api_url”:”https://cs-prova.ssl.com/csc/v0/"
  3. sostituire accesso con oauth sandbox su auth_url
    Prima: “auth_url”:”https://accesso.ssl.com/oauth2/token"
    Dopo: “auth_url”:”https://oauth sandbox.ssl.com/oauth2/token"
  4. “modalità_cred”: 1
  5. sostituire nullo su master_key con il percorso esatto del file del tuo chiave principale file.
    Quando si installa eSigner CKA in modalità automatizzata a scopo di test, è necessario fornire le credenziali di accesso all'account sandbox. Il motivo è perché nella firma automatica del codice, le credenziali di accesso vengono crittografate utilizzando la chiave principale. Se inserisci le credenziali di accesso alla produzione al momento dell'installazione e successivamente modifichi i valori nel file esignerapp.data seguendo un formato di test automatizzato, non sarai in grado di condurre i test perché il nome utente e la password che hai fornito non sono presenti nell'ambiente di test sandbox.

Accedi a eSigner CKA utilizzando le credenziali dell'account sandbox SSL.com

Dopo aver modificato i valori su esignerapp.data, ora puoi testare il tuo certificato di firma del codice EV dalla tua sandbox seguendo gli stessi passaggi descritti in precedenza per un certificato live.

Come firmare un file HLK (Hardware Lab Kit) utilizzando eSigner CKA e HLKSigntool

Hardware Lab Kit è uno strumento per testare e preparare un driver in modalità kernel per l'invio a Microsoft. Attualmente eSigner CKA richiede anche l'installazione di HLKSigntool per poter essere utilizzato all'interno del software HLK di Microsoft 

eSigner CKA deve essere prima installato e configurato (utente che ha effettuato l'accesso e set di segreti TOTP) prima di eseguire HLKSignTool.exe. 

Passo 1 . Installa e configura eSigner CKA

Passo 2 . Usa HLKSignTool con la riga di comando qui sotto

Riga di comando
HLKSignTool.exe certificato_seriale "percorso_del_file"

Esempio:

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

Come firmare macro VBA utilizzando eSigner CKA

Scarica e installa utilizzando questo collegamento Pacchetti di interfaccia oggetto Microsoft Office per progetti VBA con firma digitale utilizzando questo collegamento: https://www.microsoft.com/en-us/download/details.aspx?id=56617

Una volta installato, eseguire i seguenti passaggi:

  1. Apri un prompt dei comandi dell'amministratore e digita quanto segue, il percorso sarà dove hai appena installato i file:

    regsvr32.exe

    regsvr32.exe

    Per ulteriori informazioni su come registrare i controlli OLE, visitare Il sito Web di Microsoft.

    In caso di successo, verrà visualizzato il messaggio: "DIIRegister Server in successo."

  2. Installa quanto segue: download.microsoft.com/download/C/6/D/C6D0FD4E-9E53-4897-9B91-836EBA2AACD3/vcredist_x86.exe
  3. Installa eSigner CKA
  4. Esegui il comando SignTool per firmare le macro: https://www.ssl.com/how-to/automate-ev-code-signing-with-signtool-or-certutil-esigner/#components-of-the-command-line

Come firmare file .app utilizzando eSigner CKA

  1. Scaricare Dynamics.365.BC.55195.US.DVD.zip at https://www.microsoft.com/en-US/download/details.aspx?id=105113 
    Nota: se provi a firmare un file .app file utilizzando eSigner CKA senza prima installare Microsoft Nell'applicazione Dynamics 365 Business Central, verrà visualizzato questo errore SignTool: Questo formato file non può essere firmato perché non è riconosciuto.
  2. Aprire il Dynamics.365.BC.55195.US.DVD.zip ed estrai i contenuti nella tua posizione preferita.
  3. Apri setup.exe per Microsoft Dynamics 365 Business Central e fare clic su Succ.> pulsante.
  4. Leggere le Condizioni di licenza software Microsoft, quindi fare clic su Accetto > pulsante.
  5. Scegli Opzioni di installazione avanzate
  6. Clicchi Scegli un'opzione di installazione.
  7. Scegliere il server opzione di installazione.
  8. Clicca su APPLICA pulsante.
  9. Attendi il completamento dell'installazione. Una volta completata l'installazione, fare clic su Chiudi pulsante.
  10. Firma il tuo file .app su SignTool: https://www.ssl.com/how-to/automate-ev-code-signing-with-signtool-or-certutil-esigner/#components-of-the-command-line

Come firmare file vsix utilizzando eSigner CKA

  1. Scarica Dotnet Core SDK: https://dotnet.microsoft.com/en-us/download/dotnet/7.0
  2. Installa OpenVsixSignTool
    dotnet tool install -g OpenVsixSignTool
  3. Usa questo comando di segno:
    OpenVsixSignTool sign --sha1 CERTIFICATE THUMBPRINT --timestamp http://ts.ssl.com -ta sha256 -fd sha256 "SIGNABLE FILE PATH"

Come utilizzare la scansione malware su eSigner CKA

istruzioni:

  1. Accedi al tuo account SSL.com. Fare clic sulla scheda degli ordini seguita da scaricare link del tuo certificato per visualizzarne i dettagli. Scorri verso il basso fino a CREDENZIALI DI FIRMA sezione e individuare la parte che mostra le credenziali del certificato eSigner. Assicurati che i pulsanti di opzione che dicono credenziale di firma abilitata ed blocco malware abilitato sono scelti.
  2. Installa l'adattatore per chiave cloud eSigner.
  3. Installare eSigner CodeSignTool. Clic qui per scaricare eSigner CodeSignTool.
  4. Scansiona il codice su CodeSignTool usando il seguente comando: scan_code [-hV] -input_file_path=<inputFilePath> -password=<PASSWORD> [-program_name=<programName>] -username=<USERNAME>
  5. Usa Sign Tool per firmare il codice con eSigner CKA utilizzando il seguente comando: scan_code -username=<USERNAME> -password=<PASSWORD> -credential_id=<eSigner Credential ID> -input_file_path=<inputFilePath>

parametri:

  • -input_file_path=<PATH>: Percorso dell'oggetto codice da firmare.
  • -username=<USERNAME>SSL.com nome utente dell'account
  • -password=<PASSWORD>SSL.com password dell'account.
  • -program_name=<PROGRAM_NAME>: Nome del programma
  • -credential_id=<CREDENTIAL_ID>: ID credenziale per la firma del certificato. Il tuo ID credenziale eSigner si trova nel tuo SSL.com pagina dell'ordine del certificato.

Iscriviti alla newsletter di SSL.com

Non perdere nuovi articoli e aggiornamenti da SSL.com

Rimani informato e sicuro

SSL.com è un leader globale nella sicurezza informatica, PKI e certificati digitali. Iscriviti per ricevere le ultime notizie del settore, suggerimenti e annunci di prodotti da SSL.com.

Ci piacerebbe il tuo feedback

Partecipa al nostro sondaggio e facci sapere cosa ne pensi del tuo recente acquisto.