9.1.1. Key-Compromise Impersonation (Impersonificazione per compromissione della chiave)
9.1.1. Impersonificazione per compromissione della chiave
Le varianti DHKEM definite in questo documento sono vulnerabili agli attacchi di impersonificazione per compromissione della chiave [BJM97], il che significa che l'autenticazione del mittente non può essere attesa nella modalità Auth se la chiave privata del destinatario skR è compromessa, e nella modalità AuthPSK se la chiave pre-condivisa e la chiave privata del destinatario skR sono entrambe compromesse. L'interfaccia box di NaCl [NaCl] ha lo stesso problema. Allo stesso tempo, questo abilita la ripudiabilità.
Come mostrato da [ABHKLR20], gli attacchi di impersonificazione per compromissione della chiave sono generalmente possibili su HPKE perché i testi cifrati KEM non sono legati ai messaggi HPKE. Un avversario che conosce la chiave privata di un destinatario può decapsulare un testo cifrato KEM osservato, calcolare la pianificazione delle chiavi e cifrare un messaggio arbitrario che il destinatario accetterà come proveniente dal mittente originale. Importante, questo è possibile anche con un KEM resistente agli attacchi di impersonificazione per compromissione della chiave. Di conseguenza, mitigare questo problema richiede cambiamenti fondamentali che sono fuori dall'ambito di questa specifica.
Le applicazioni che richiedono resistenza contro l'impersonificazione per compromissione della chiave DOVREBBERO prendere misure aggiuntive per prevenire questo attacco. Una possibilità è produrre una firma digitale sulle tuple (enc, ct) utilizzando la chiave privata di un mittente -- dove ct è un testo cifrato AEAD prodotto dall'API a singola esecuzione o a esecuzioni multiple ed enc è la chiave incapsulata KEM corrispondente.
Date queste proprietà, le chiavi pre-condivise rafforzano sia le proprietà di autenticazione che di segretezza in certi modelli di avversario. Un esempio particolare in cui questo può essere utile è un contesto quantistico ibrido: se un KEM non resistente ai quanti utilizzato con HPKE viene violato da un computer quantistico, le proprietà di sicurezza sono preservate attraverso l'uso di una chiave pre-condivisa. Come descritto nella Sezione 7 di [RFC8696], questo assume che la chiave pre-condivisa non sia stata compromessa.