Centro di firma di codice - supporto alla firma delle applicazioni
Centro di supporto clienti per i certificati di firma di codice (certificati per la firma di codice e applicazioni). Qui troverete tutte le informazioni rilevanti sulla firma del codice e sull'uso dei certificati di firma di codice.
Certificati di firma di codice
Certificati per la firma di codice (Code signing) servono per firmare applicazioni create su diverse piattaforme di sviluppo. Lo scopo della firma del codice non è solo l'autenticazione dell'emittente, ma soprattutto la protezione dell'autenticità dell'applicazione e della sua immutabilità. Se qualcuno dovesse modificare l'applicazione (ad esempio aggiungere malware), la firma cesserebbe di essere valida. Per questo motivo la maggior parte dei sistemi moderni o richiede la firma dell'applicazione (MacOS), o avvisa fortemente prima di eseguire un'applicazione non firmata (Windows).
Certificato di firma di codice EV
Anche per i certificati di firma del codice offriamo un certificato con verifica estesa. I suoi vantaggi e le istruzioni per la sua attivazione li potrete trovare nei paragrafi seguenti.
Importanza del certificato di firma di codice EV
La sua importanza sta nell'aumentare la sicurezza del certificato e della chiave privata. Il certificato è memorizzato su un token insieme alla chiave privata e non è possibile esportarlo. L'uso del certificato è protetto da password e dopo diversi tentativi errati il token viene cancellato. È una protezione eccellente del vostro certificato di firma di codice contro l'abuso. Un altro importante vantaggio del certificato di firma di codice EV è la totale affidabilità nel filtro Smartscreen che è parte di Windows. Grazie alla firma EV siete sicuri che il sistema Windows non bloccherà la vostra applicazione per gli utenti.
Ulteriori informazioni sul certificato di firma di codice che offriamo si possono trovare sulla pagina del prodotto DigiCert Code Signing EV.Come ottenere e attivare un certificato di firma di codice EV
L'intero processo di ottenimento e attivazione di un certificato di firma di codice EV è descritto nell'articolo Attivazione e installazione del certificato di firma di codice EV sul token.
Come firmare software con un certificato digitale
Per firmare le applicazioni con la firma di codice sono necessarie due cose:
- Un certificato di firma di codice
- Un'applicazione per firmare
Il certificato di firma di codice lo si ottiene da SSLmarket ed è facile. L'applicazione per la firma la si sceglie in base alla piattaforma di sviluppo. Gli strumenti di firma più diffusi, che abbiamo descritti nel nostro supporto e di cui possiamo fornirvi consulenza, sono:
- Signtool da Windows SDK (supporto)
- Jarsigner (vedi articolo sul blog).
- Utilità smctl di DigiCert - consigliamo per KeyLocker (supporto). Può utilizzare, ad esempio, signtool e semplificare la firma.
La maggior parte dei nostri clienti sviluppa in ambiente MS Windows e utilizza Windows SDK. La firma avviene quindi con l'uso dello strumento signtool.exe. La documentazione per signtool è disponibile sulla pagina SignTool.exe (Sign Tool) sul sito web di Microsoft.
Firma con HSM cloud
Gli HSM cloud servono per il deposito sicuro del certificato di firma di codice e per l'accesso remoto a esso. A differenza del certificato su token, permette l'automazione e la firma è molto veloce, poiché nel cloud viene inviato solo l'hash del file (detta hash signing).
La firma tramite hash-signing e il cloud è vivamente consigliata rispetto al token. È sicura, rapida ed economica.
HSM cloud consigliati
- DigiCert KeyLocker
- DigiCert Software Trust Manager
- Azure Key Vault
- GCP Cloud KMS (Google)
- AWS CloudHSM
Nei paragrafi seguenti troverete i vantaggi e gli svantaggi delle soluzioni individuali.
DigiCert KeyLocker
La alternativa più economica al token è KeyLocker. È un servizio semplice per un singolo utente che permette una facile firma di codice. DigiCert fornisce proprie librerie KSP e PKCS#11 che potete installare nel sistema e firmare il codice esattamente come siete abituati. Con l'utilità SMCTL la firma è ancora più facile e diretta che con signtool. SMCTL è compatibile con i più usati strumenti per firma di codice e può richiamarli. KeyLocker dispone di un limite di 1000 firme, pertanto è adatto per firme meno frequenti. Comunque il numero di firme può essere esteso a pagamento.
DigiCert Software Trust Manager
Si tratta di una soluzione cloud di punta della piattaforma DigiCert ONE, destinata all'uso enterprise. Offre la gestione di un numero illimitato di certificati, utenti ed è scalabile infinite. Collegamenti con la vostra piattaforma CI/CD assicurati da script e librerie preparate. L'accesso a STM e il numero di firme sono su licenza. Per ulteriori informazioni su prezzi e modalità di licenza, non esitate a contattarci contattarci. La documentazione la trovate sul sito web di DigiCert.
Cloud HSM di Azure e Google
Entrambi i grandi operatori cloud forniscono un servizio HSM con accesso remoto sicuro tramite proprie librerie che funzionano come KSP su Windows. Il loro uso non è complicato e il costo di entrambi è molto conveniente (si paga solo per le operazioni crittografiche). Consigliamo Azure e GCP per grandi quantità di firme all'anno, poiché i costi sono bassi.
La guida alla firma del codice tramite Azure Key Vault la potete trovare nell'articolo Firma del codice tramite Azure Key Vault. Per GCP Cloud KMS, invece, nell'articolo Firma del codice tramite Google Cloud KMS.
AWS CloudHSM
Su AWS è possibile firmare con il cloud utilizzando Signtool da Windows SDK; tuttavia l'HSM stabilito è addebitato all'ora di operazione. Oltre ai costi fissi, sono addebitate anche le operazioni (firme). Se non usate AWS, in primo luogo consigliamo HSM di Azure o GCP. Maggiori informazioni sull'uso con Signtool le trovate nell'articolo Usare Microsoft SignTool con Client SDK 3 per firmare file.
Confronto tra Azure Key Vault, Google Cloud KMS e AWS CloudHSM/KMS+HSM
Un confronto tra i tre cloud HSM lo trovate nella seguente tabella. È focalizzato sui costi delle operazioni di firma (hash signing), sulle spese fisse, sulla scalabilità, sul basso utilizzo, sulla complessità di esercizio e sulla latenza/ampiezza di banda.
| Fattore | Azure Key Vault | Google Cloud KMS | AWS CloudHSM / KMS + HSM |
|---|---|---|---|
| Costo delle operazioni (sign/verify) | Molto basso (≈ $/10.000 operazioni). | Molto basso (≈ $/10.000 operazioni). | Non è il costo principale; i principali sono i costi fissi per HSM. |
| Costi fissi | Potrebbe esserci un canone mensile per la chiave HSM; altrimenti bassi. | Senza costi fissi significativi nel regime di base. | Elevati — canone orario per HSM (24/7) o Custom Key Store. |
| Scalabilità e capacità | Lineare secondo le transazioni; limitato dal throttling. | Lineare; attenzione ai limiti (QPS/QPM). | Scalabilità aggiungendo HSM; anche il costo fisso aumenta. |
| Costo con basso utilizzo | Conveniente — si paga principalmente per le operazioni. | Conveniente — si paga principalmente per le operazioni. | Svantaggioso — si paga anche per HSM senza carico. |
| Complessità operativa | Bassa — servizio gestito. | Bassa — servizio gestito. | Alta — gestione del cluster HSM e HA/DR. |
Contattaci
Se aveste domande o dubbi su qualsiasi fase dell'ordinazione del certificato, l'emissione del certificato, l'installazione del certificato o su qualsiasi argomento, vi invitiamo a contattare il nostro supporto clienti, che vi consiglierà e assisterà. I nostri esperti certificati DigiCert Security Sales Expert Plus sono disponibili ogni giorno lavorativo durante gli orari di lavoro.
Puoi anche contattarci direttamente dal tuo account cliente inviando una richiesta dal menu Richiesta autorizzata.
FAQ - domande frequenti
Il certificato Code Signing è vincolato al nome del mio dominio?
No. Code Signing non è rilasciato per un dominio ma per una specifica organizzazione. Il nome di questa organizzazione è nel nome comune.
Cosa posso firmare?
Il certificato DigiCert Code Signing può essere usato per firmare diversi tipi di software e script, per garantire che provengano da una fonte affidabile e non siano stati alterati dopo la distribuzione.
✅ Cosa è possibile firmare:
- File eseguibili: .exe, .dll, .ocx, .msi, .cab
- Driver per Windows (WHLK/HLK)
- Applicazioni Java: .jar
- Macro e script VBA in Microsoft Office
- Script PowerShell: .ps1
- Applicazioni e pacchetti macOS (tramite Apple Developer ID)
- Applicazioni Adobe AIR
- Applicazioni e librerie .NET
- Script e installatori in vari ambienti
⚠️ Cosa non si può firmare:
- Codice che richiede una firma elettronica qualificata ai sensi di eIDAS
- File che non sono destinati alla distribuzione
- Formati e piattaforme che non supportano firma digitale
Il codice timbrato è valido anche dopo la scadenza del certificato Code Signing?
Sì, il codice timbrato rimane valido anche dopo la scadenza del certificato. Se si usa un timestamp durante la firma, il sistema verifica che il codice sia stato firmato durante il periodo di validità del certificato. In tal modo, la firma rimane affidabile. Senza l'uso del timestamp, il codice deve essere rifirmato con un nuovo certificato.
Come posso timbrare temporaneamente i progetti VBA?
Vedi l'articolo Istruzioni per timbrare il codice VBA sul sito web DigiCert.com
Esiste un limite al numero di applicazioni che posso firmare con un certificato Code Signing?
No, potete firmare un numero infinito di applicazioni con il certificato. Se avete un certificato Code Signing su token, potete firmare illimitatamente. Il numero di firme è considerato solo nei servizi cloud:
- DigiCert KeyLocker - durante la validità del certificato, avete 1000 firme, altre possono essere acquistate.
- Software Trust Manager - le firme sono concesse su licenza per la durata del contratto.
Come si firma usando un certificato nel cloud?
La firma con il certificato Code Signing è semplice e veloce. Usa il cosiddetto hash-based signing, dove dall'archivio viene prima calcolato l'hash, che viene poi inviato al cloud per essere firmato. Il file stesso non viene trasferito altrove – solo l'hash firmato torna nella firma. Per questo motivo l'intero processo è sicuro ed efficiente.
L'hash signing con il cloud può essere utilizzato con questi prodotti:
Ci dispiace che non ci hai trovato il necessario.
Ci aiuterai a migliorare l'articolo? Facci sapere cosa qui aspettavi e non hai scoperto.