Meccanismi di incapsulamento chiave

Un meccanismo di incapsulamento delle chiavi (KEM) è un processo crittografico utilizzato per stabilire un secret condiviso tra due parti su un canale non attendibile. Un meccanismo di incapsulamento chiave prevede tre algoritmi principali:

  • Generazione delle chiavi: viene generata una coppia di chiavi composta da una chiave pubblica e una chiave privata.
  • Incapsulamento: la chiave pubblica viene utilizzata per produrre un segreto condiviso e un testo cifrato corrispondente.
  • Decapsulamento: la chiave privata viene utilizzata per recuperare il secret condiviso dal testo cifrato.

I meccanismi di incapsulamento delle chiavi sono un elemento fondamentale per i protocolli di scambio di chiavi e la crittografia a chiave pubblica ibrida (HPKE).

Workflow di incapsulamento e decapsulamento

Di seguito viene descritto il processo di utilizzo di una coppia di chiavi KEM per l'incapsulamento e il decapsulamento dei dati. I due partecipanti a questo flusso di lavoro sono un mittente e un destinatario. Il mittente crea un testo cifrato e un segreto condiviso utilizzando la chiave pubblica del destinatario, mentre il destinatario decripta il testo cifrato utilizzando la propria chiave privata per recuperare il segreto condiviso. Solo chi conosce la chiave privata può decapsulare il testo cifrato per recuperare il secret condiviso originale.

  1. Il mittente recupera la chiave pubblica del destinatario.

  2. Il mittente utilizza la chiave pubblica per eseguire il passaggio di incapsulamento, che genera un secret condiviso e un testo cifrato corrispondente.

  3. Il mittente invia il testo cifrato al destinatario.

  4. Il destinatario utilizza la propria chiave privata per decapsulare il testo cifrato. Il destinatario e il mittente ora hanno lo stesso secret condiviso.

Meccanismi di incapsulamento delle chiavi post-quantistici (PQ-KEM)

I computer quantistici hanno il potenziale per decriptare materiale crittografato da algoritmi crittografici classici come gli algoritmi RSA ed ECDSA ampiamente utilizzati, il che può rendere questo materiale crittografato vulnerabile agli attacchi "store now, decrypt later" (SNDL). In questi attacchi, gli avversari raccolgono i dati crittografati di oggi che utilizzano algoritmi crittografici classici e li archiviano, con l'intenzione di decriptarli in un secondo momento, quando saranno disponibili potenti computer quantistici. I PQ-KEM sono progettati per resistere agli attacchi quantistici, garantendo che i dati crittografati con questi algoritmi oggi rimarranno sicuri anche nell'era quantistica, impedendo la decrittografia futura delle informazioni archiviate oggi.

Cloud Key Management Service supporta ML-KEM-768 e ML-KEM-1024, standardizzati dal NIST in FIPS-203, e X-Wing, un KEM ibrido che combina ML-KEM-768 con X25519. Questi algoritmi hanno i seguenti valori di dimensione (in byte):

Algoritmo Chiave pubblica Testo crittografato Secret condiviso
ML_KEM_768 1184 1088 32
ML_KEM_1024 1568 1568 32
KEM_XWING 1216 1120 32

Funzionalità dei KEM di Cloud KMS

Cloud KMS offre le seguenti funzionalità relative ai meccanismi di encapsulamento delle chiavi:

Per l'incapsulamento con le chiavi Cloud KMS, devi utilizzare SDK e strumenti disponibili pubblicamente con la chiave pubblica. Cloud KMS non fornisce funzionalità di incapsulamento.