Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La crittografia a chiave pubblica (PKI) è una forma di segretezza dei messaggi in cui un utente crea una chiave pubblica e una chiave privata . La chiave privata viene mantenuta segreta, mentre la chiave pubblica può essere distribuita ad altri utenti. Anche se le chiavi sono matematicamente correlate, la chiave privata non può essere facilmente derivata usando la chiave pubblica. La chiave pubblica viene usata per crittografare i dati e la chiave privata viene usata per decrittografare i dati. Un messaggio crittografato tramite la chiave pubblica può essere decrittografato solo usando la chiave privata corretta. Poiché sono presenti due chiavi diverse, queste chiavi sono asimmetriche.
I certificati e le chiavi asimmetriche sono entrambi modi per usare la crittografia asimmetrica. I certificati vengono spesso usati come contenitori per chiavi asimmetriche perché possono contenere altre informazioni, ad esempio le date di scadenza e le autorità emittenti. Non esiste alcuna differenza tra i due meccanismi per l'algoritmo di crittografia e nessuna differenza di forza in base alla stessa lunghezza della chiave. In genere, si usa un certificato per crittografare altri tipi di chiavi di crittografia in un database o per firmare i moduli di codice.
I certificati e le chiavi asimmetriche possono decrittografare i dati crittografati dall'altro. In genere, si usa la crittografia asimmetrica per crittografare una chiave simmetrica per l'archiviazione in un database.
Una chiave pubblica non ha un formato specifico come un certificato e non è possibile esportarlo in un file.
Annotazioni
SQL Server contiene funzionalità che consentono di creare e gestire certificati e chiavi da usare con il server e il database. Non è possibile usare SQL Server per creare e gestire certificati e chiavi con altre applicazioni o nel sistema operativo.
Certificati
Un certificato è un oggetto di sicurezza firmato digitalmente che contiene una chiave pubblica (e facoltativamente privata) per SQL Server. È possibile usare certificati generati esternamente o SQL Server può generare certificati.
Annotazioni
I certificati di SQL Server sono conformi allo standard di certificato IETF X.509v3.
I certificati sono utili a causa dell'opzione di esportazione e importazione delle chiavi nei file di certificato X.509. La sintassi per la creazione di certificati consente di creare opzioni per i certificati, ad esempio una data di scadenza.
Uso di un certificato in SQL Server
I certificati possono essere usati per proteggere le connessioni, nel mirroring del database, per firmare pacchetti e altri oggetti o per crittografare dati o connessioni. Nella tabella seguente sono elencate le risorse aggiuntive per i certificati in SQL Server.
| Argomento | Descrizione |
|---|---|
| CREA CERTIFICATO (Transact-SQL) | Illustra il comando per la creazione di certificati. |
| Identificare l'origine dei pacchetti con firme digitali | Mostra informazioni su come usare i certificati per firmare i pacchetti software. |
| Utilizzare i certificati per l'endpoint di mirroring del database (Transact-SQL) | Vengono fornite informazioni su come usare i certificati con il mirroring del database. |
Chiavi asimmetriche
Le chiavi asimmetriche vengono usate per proteggere le chiavi simmetriche. Possono essere usati anche per la crittografia dei dati limitata e per firmare digitalmente gli oggetti di database. Una chiave asimmetrica è costituita da una chiave privata e da una chiave pubblica corrispondente. Per altre informazioni sulle chiavi asimmetriche, vedere CREATE ASYMMETRIC KEY (Transact-SQL).
Le chiavi asimmetriche possono essere importate da file di chiave con nome sicuro, ma non possono essere esportate. Non hanno anche opzioni di scadenza. Le chiavi asimmetriche non possono crittografare le connessioni.
Uso di una chiave asimmetrica in SQL Server
Le chiavi asimmetriche possono essere usate per proteggere i dati o firmare testo non crittografato. Nella tabella seguente sono elencate le risorse aggiuntive per le chiavi asimmetriche in SQL Server.
| Argomento | Descrizione |
|---|---|
| CREATE ASYMMETRIC KEY (Transact-SQL) | Illustra il comando per la creazione di chiavi asimmetriche. |
| SIGNBYASYMKEY (Transact-SQL) | Visualizza le opzioni per la firma degli oggetti. |
Attrezzi
Microsoft fornisce strumenti e utilità che genereranno certificati e file di chiave con nome sicuro. Questi strumenti offrono una maggiore flessibilità nel processo di generazione delle chiavi rispetto alla sintassi di SQL Server. È possibile usare questi strumenti per creare chiavi RSA con lunghezze di chiave più complesse e quindi importarle in SQL Server. La tabella seguente illustra dove trovare questi strumenti.
| Strumento | Scopo |
| makecert | Crea certificati. |
| sn | Crea nomi sicuri per le chiavi simmetriche. |
Attività correlate
Scelta di un algoritmo di crittografia
CREATE SYMMETRIC KEY (Transact-SQL)
CREA CERTIFICATO (Transact-SQL)
Vedere anche
sys.certificates (Transact-SQL)
Transparent Data Encryption (TDE)