Strumenti di crittografia

Gli strumenti di crittografia forniscono strumenti da riga di comando per la firma del codice, la verifica della firma e altre attività di crittografia.

Introduzione alla firma del codice

Il settore del software deve fornire agli utenti i mezzi per considerare attendibile il codice, incluso il codice pubblicato su Internet. Molte pagine Web contengono solo informazioni statiche che possono essere scaricate con un rischio minimo. Alcune pagine, tuttavia, contengono controlli e applicazioni da scaricare ed eseguire nel computer di un utente. Questi file eseguibili possono essere rischiosi da scaricare ed eseguire.

Il software in pacchetto usa informazioni di personalizzazione e punti vendita attendibili per garantire agli utenti l'integrità, ma queste garanzie non sono disponibili quando il codice viene trasmesso su Internet. Inoltre, Internet stesso non può fornire alcuna garanzia sull'identità dell'autore del software. Né può garantire che il software scaricato non sia stato modificato dopo la sua creazione. I browser possono visualizzare un messaggio di avviso che spiega i possibili rischi di download dei dati di qualsiasi tipo, ma i browser non possono verificare che il codice sia quello che dichiara di essere. È necessario un approccio più attivo per rendere Internet un supporto affidabile per la distribuzione del software.

Un approccio per garantire l'autenticità e l'integrità dei file consiste nell'allegare firme digitali a tali file. Una firma digitale allegata a un file identifica in modo positivo il server di distribuzione del file e garantisce che il contenuto del file non sia stato modificato dopo la creazione della firma.

Le firme digitali possono essere create e verificate usando le API di crittografia di Microsoft. Per informazioni di base sulla crittografia e sulle funzioni CryptoAPI, vedere Cryptography Essentials.

Per informazioni dettagliate su firme digitali, certificatie archivi certificati,vedere gli argomenti seguenti:

Gli strumenti CryptoAPI supportano attualmente la tecnologia Microsoft Authenticode consentendo ai fornitori di software di firmare i tipi di file seguenti per la verifica Authenticode.

Estensione del file Contenuto
appx
File del programma di installazione per un Windows app per dispositivi dello Store.
.cab
File autonomi usati per l'installazione e l'installazione dell'applicazione. In un file CAB più file vengono compressi in un unico file. Si trovano comunemente nei dischi di distribuzione software Microsoft.
CAT
File che contengono identificazioni digitali di più file. È possibile usare un file cat per garantire l'integrità dei file di cui include le identificazioni personale.
DLL
File che contengono funzioni eseguibili.
EXE
File che contengono programmi eseguibili.
.js
.vbs
.wsf
Windows file della shell per JScript o Microsoft Visual Basic Scripting Edition (VBScript).
msi
msp
mst
Windows file del programma di installazione.
ocx
File che contengono i controlli ActiveX Microsoft.
PS1
File che contengono script di PowerShell.
.stl
File che contengono un elenco di certificati attendibili (CTL).
.sys
File che contengono file binari del driver.

Per informazioni sulla firma digitale, vedere i documenti seguenti:

  • CCITT, Recommendation X.509, The Directory-Authentication Framework, Recommendation Committee, International Telephone and Telegraph, International Telecommunications Union, Geneva, 1989.
  • RSA Laboratories, PKCS # 7: Cryptographic Message Syntax Standard. Versione 1.5, novembre 1993.
  • Schneier, Cryptography Applied, 2d ed. New York: John Wiley & ALy, 1996.
  • https://www.rsa.com

Nota

Queste risorse potrebbero non essere disponibili in alcune lingue e paesi o aree geografiche.

Strumenti di crittografia Microsoft

Gli strumenti di pubblicazione e la DLL di firma vengono installati nella \ directory Bin dell'installazione di Microsoft SDK. Includono i file seguenti.

Nome file Commenti
Cert2SPC.exe Crea un certificato Publisher software (SPC) solo a scopo di test.
CertMgr.exe Gestisce certificati, elenchi di revoche di certificati (CRL) ed elenchi di revoche di certificati (CRL).
MakeCat.exe Crea un file di catalogo non firmato che contiene gli hash di un set di file insieme agli attributi associati di ogni file.
MakeCert.exe Crea un certificato X.509 solo a scopo di test.
Pvk2pfx.exe Converte un file di certificato dell'editore software (con estensione spc) o un file di chiave privata (con estensione pvk) nel formato di file PFX (Personal Information Exchange).
SetReg.exe Imposta le chiavi del Registro di sistema che controllano la verifica del certificato.
SignTool.exe Firma e contrassegna un file. Controlla inoltre la firma di un file.