Gerarchia di crittografia
In SQL Server 2005 i dati vengono crittografati in base ad una particolare gerarchia di crittografia e infrastruttura di gestione delle chiavi. Ciascun livello crittografa il livello sottostante utilizzando una combinazione di certificati, chiavi asimmetriche e chiavi simmetriche. Come illustrato nella figura seguente, la gerarchia di crittografia riflette la gerarchia degli oggetti a protezione diretta descritti nella gerarchia delle autorizzazioni.
Nella figura seguente viene illustrato come nella gerarchia di crittografia ogni livello crittografa il livello sottostante. Il livello superiore, vale a dire la chiave master del servizio, viene crittografato con Windows DP API.
Meccanismi di crittografia
SQL Server 2005 comprende i meccanismi di crittografia seguenti:
- Certificati
- Chiavi asimmetriche
- Chiavi simmetriche
Certificati
Un certificato a chiave pubblica, normalmente chiamato semplicemente un certificato, è un'istruzione firmata digitalmente che associa il valore di una chiave pubblica all'identità di una persona, un dispositivo o un servizio che detiene la corrispondente chiave privata. I certificati vengono rilasciati e firmati da un'autorità di certificazione (CA). L'entità che riceve un certificato da un'autorità di certificazione è il soggetto del certificato. Normalmente, i certificati contengono le informazioni seguenti.
- Chiave pubblica del soggetto.
- Informazioni di identificazione del soggetto, come ad esempio il nome e l'indirizzo di posta elettronica.
- Periodo di validità. È il periodo di tempo durante il quale il certificato è considerato valido.
Un certificato è valido solo per il periodo di tempo specificato nel certificato; e ogni certificato contiene le date Valido dal e Valido fino al. Queste date definiscono i limiti del periodo di validità. Quando il periodo di validità di un certificato viene superato, il soggetto del certificato scaduto deve richiedere un nuovo certificato. - Informazioni di identificazione dell'emittente
- Firma digitale dell'emittente.
Questa firma attesta la validità dell'associazione tra la chiave pubblica e le informazioni di identificazione del soggetto. (L'apposizione di una firma digitale a informazioni comporta la trasformazione delle informazioni, e di alcune informazioni segrete detenute dal mittente, in un tag chiamato firma.)
Il vantaggio principale dei certificati è quello di evitare che gli host debbano mantenere un gruppo di password per singoli soggetti. L'host non deve fare altro che stabilire una relazione di trust con l'emittente di un certificato, che successivamente può firmare un numero illimitato di certificati.
Quando un host, come ad esempio un server Web protetto, designa un emittente come autorità principale affidabile, l'host implicitamente considera affidabili i criteri che l'emittente ha utilizzato per stabilire le associazioni relative ai certificati emessi. In effetti, l'host fa affidamento all'emittente per la verifica dell'identità del soggetto del certificato. L'host designa un emittente come autorità principale affidabile collocando il certificato autofirmato dell'emittente, contenente la chiave pubblica dell'emittente, nell'archivio certificati delle autorità di certificazione affidabili del computer host. Le autorità di certificazione intermedie o subordinate vengono considerate affidabili solo se dispongono di un percorso di certificazione valido ottenuto da un'autorità di certificazione principale affidabile.
L'emittente può revocare un certificato prima che scada. La revoca di un certificato annulla l'associazione tra la chiave pubblica e l'identità dichiarata nel certificato. Ciascun emittente mantiene un elenco di revoche di certificati che può essere utilizzato da programmi per la verifica della validità di un particolare certificato.
I certificati autofirmati creati da SQL Server sono conformi allo standard X.509 e supportano i campi X.509 v1.
Chiavi asimmetriche
Una chiave asimmetrica è costituita da una chiave privata e dalla corrispondente chiave pubblica. Ogni chiave può decrittografare dati crittografati dall'altra chiave. La crittografia e la decrittografia asimmetrica richiedono un uso intensivo delle risorse ma offrono un livello di protezione superiore a quello della crittografia simmetrica. Una chiave asimmetrica può essere utilizzata per crittografare una chiave simmetrica da memorizzare in un database.
Chiavi simmetriche
Una chiave simmetrica è una chiave che viene utilizzata sia per la crittografia che per decrittografia. La crittografia e la decrittografia tramite una chiave simmetrica sono veloci e sono quindi adatte per essere utilizzate in modo ricorrente per informazioni riservate contenute in database.
Vedere anche
Concetti
Gerarchia di autorizzazioni
Entità a protezione diretta
Altre risorse
Funzioni di protezione (Transact-SQL)
Procedure per la crittografia