Certificati di chiave pubblica X.509
La crittografia a chiave pubblica si basa su una coppia di chiavi pubblica e privata per crittografare e decrittografare il contenuto. Le chiavi sono matematicamente correlate e il contenuto crittografato usando una delle chiavi può essere decrittografato solo usando l'altro. La chiave privata viene mantenuta segreta. La chiave pubblica viene in genere incorporata in un certificato binario e il certificato viene pubblicato in un database che può essere raggiunto da tutti gli utenti autorizzati.
Lo standard X.509 public key infrastructure (PKI) identifica i requisiti per i certificati di chiave pubblica affidabili. Un certificato è una struttura di dati firmata che associa una chiave pubblica a una persona, un computer o un'organizzazione. I certificati vengono rilasciati da autorità di certificazione (CA). Tutti coloro che sono parti per proteggere le comunicazioni che usano una chiave pubblica si basano sulla CA per verificare adeguatamente le identità dei singoli utenti, sistemi o entità a cui rilascia certificati. Il livello di verifica dipende in genere dal livello di sicurezza necessario per la transazione. Se la CA può verificare in modo adeguato l'identità del richiedente, firma (crittografa), codifica ed emette il certificato.
Un certificato è una struttura di dati firmata che associa una chiave pubblica a un'entità. L'sintassi astratta Notation One (ASN.1) per la versione 3 certificato X.509 certificato è illustrato nell'esempio seguente.
-- X.509 signed certificate
SignedContent ::= SEQUENCE
{
certificate CertificateToBeSigned,
algorithm Object Identifier,
signature BITSTRING
}
-- X.509 certificate to be signed
CertificateToBeSigned ::= SEQUENCE
{
version [0] CertificateVersion DEFAULT v1,
serialNumber CertificateSerialNumber,
signature AlgorithmIdentifier,
issuer Name
validity Validity,
subject Name
subjectPublicKeyInfo SubjectPublicKeyInfo,
issuerUniqueIdentifier [1] IMPLICIT UniqueIdentifier OPTIONAL,
subjectUniqueIdentifier [2] IMPLICIT UniqueIdentifier OPTIONAL,
extensions [3] Extensions OPTIONAL
}
Sin dalla sua nascita nel 1998, sono state sviluppate tre versioni dello standard di certificato di chiave pubblica X.509. Come illustrato nella figura seguente, ogni versione successiva della struttura di dati ha conservato i campi esistenti nelle versioni precedenti e aggiunto altro.
Gli argomenti seguenti illustrano in modo più dettagliato i campi disponibili:
- campi di base
- campi versione 2
- estensioni versione 3
Argomenti correlati