Condividi tramite


Infrastruttura a chiave pubblica (PKI)

La crittografia a chiave pubblica (chiamata anche crittografia asimmetrica della chiave) usa una coppia di chiavi per crittografare e decrittografare il contenuto. La coppia di chiavi è costituita da una chiave pubblica e una chiave privata correlata matematicamente. Un individuo che intende comunicare in modo sicuro con altri utenti può distribuire la chiave pubblica , ma deve mantenere il segreto della chiave privata . Il contenuto crittografato usando una delle chiavi può essere decrittografato usando l'altro. Si supponga, ad esempio, che Bob voglia inviare un messaggio di posta elettronica sicuro a Alice. Questa operazione può essere eseguita nel modo seguente:

  1. Sia Bob che Alice hanno le proprie coppie chiave. Hanno mantenuto le chiavi private in modo sicuro a se stessi e hanno inviato le loro chiavi pubbliche direttamente l'una all'altra.
  2. Bob usa la chiave pubblica di Alice per crittografare il messaggio e lo invia a lei.
  3. Alice usa la chiave privata per decrittografare il messaggio.

Questo esempio semplificato evidenzia almeno una preoccupazione ovvia che Bob deve avere sulla chiave pubblica usata per crittografare il messaggio. Cioè, non può sapere con certezza che la chiave usata per la crittografia appartiene effettivamente ad Alice. È possibile che un'altra parte monitori il canale di comunicazione tra Bob e Alice ha sostituito una chiave diversa.

Il concetto di infrastruttura chiave pubblica si è evoluto per risolvere questo problema e altri. Un'infrastruttura chiave pubblica (PKI) è costituita da elementi software e hardware che un terzo attendibile può usare per stabilire l'integrità e la proprietà di una chiave pubblica. La parte attendibile, denominata autorità di certificazione (CA), in genere esegue questa operazione emettendo certificati binari firmati (crittografati) che confermano l'identità dell'oggetto certificato e associano tale identità alla chiave pubblica contenuta nel certificato. La CA firma il certificato usando la chiave privata. Rilascia la chiave pubblica corrispondente a tutte le parti interessate in un certificato CA autofirmato. Quando viene usata una CA, l'esempio precedente può essere modificato nel modo seguente:

  1. Si supponga che l'autorità di certificazione abbia rilasciato un certificato digitale firmato contenente la chiave pubblica. La CA firma automaticamente questo certificato usando la chiave privata corrispondente alla chiave pubblica nel certificato.
  2. Alice e Bob accettano di usare la CA per verificare le proprie identità.
  3. Alice richiede un certificato di chiave pubblica dalla CA.
  4. La CA verifica l'identità, calcola un hash del contenuto che creerà il certificato, firma l'hash usando la chiave privata che corrisponde alla chiave pubblica nel certificato CA pubblicato, crea un nuovo certificato concatenando il contenuto del certificato e l'hash firmato e rende il nuovo certificato disponibile pubblicamente.
  5. Bob recupera il certificato, decrittografa l'hash firmato usando la chiave pubblica della CA, calcola un nuovo hash del contenuto del certificato e confronta i due hash. Se gli hash corrispondono, la firma viene verificata e Bob può presupporre che la chiave pubblica nel certificato appartenga effettivamente a Alice.
  6. Bob usa la chiave pubblica verificata di Alice per crittografare un messaggio.
  7. Alice usa la chiave privata per decrittografare il messaggio da Bob.

In riepilogo, il processo di firma del certificato consente a Bob di verificare che la chiave pubblica non sia stata manomessa o danneggiata durante il transito. Prima di emettere un certificato, la CA esegue l'hash, firma (crittografa) l'hash usando la propria chiave privata e include l'hash crittografato nel certificato emesso. Bob verifica il contenuto del certificato decrittografando l'hash con la chiave pubblica della CA, eseguendo un hash separato del contenuto del certificato e confrontando i due hash. Se corrispondono, Bob può essere ragionevolmente certo che il certificato e la chiave pubblica che contiene non sono stati modificati.

Un'infrastruttura PKI tipica è costituita dagli elementi seguenti.

Elemento Descrizione
Autorità di certificazione
Funge da radice di trust in un'infrastruttura chiave pubblica e fornisce servizi che autenticano l'identità di singoli utenti, computer e altre entità in una rete.
Autorità di registrazione
Certificato da una CA radice per rilasciare certificati per usi specifici consentiti dalla radice. In un'infrastruttura PKI Microsoft, un'autorità di registrazione (RA) viene in genere chiamata CA subordinata.
Database certificati
Salva le richieste di certificato ed emesso e revocato i certificati e le richieste di certificato nella CA o nella ra.
Archivio certificati
Salva i certificati emessi e le richieste di certificato in sospeso o rifiutate nel computer locale.
Server di archiviazione delle chiavi
Salva le chiavi private crittografate nel database del certificato per il ripristino dopo la perdita.

L'API Registrazione certificati consente di inviare richieste di archiviazione dei certificati e delle chiavi alle autorità di certificazione e registrazione e installare il certificato rilasciato in un computer locale. Non consente di modificare direttamente il database certificato o l'archivio certificati.

Gli argomenti seguenti illustrano più dettagliatamente l'infrastruttura di chiave pubblica Microsoft:

Informazioni sull'API registrazione certificati