RFC 9180 - Hybrid Public Key Encryption (Crittografia a chiave pubblica ibrida)
- Stato: Informational
- Pubblicato: February 2022
- Stream: IRTF
- Errata: Nessun errata
Abstract (Sommario)
Questo documento descrive uno schema per la crittografia a chiave pubblica ibrida (HPKE). Questo schema fornisce una variante della crittografia a chiave pubblica di testi in chiaro di dimensioni arbitrarie per una chiave pubblica del destinatario. Include anche tre varianti autenticate, tra cui una che autentica il possesso di una chiave pre-condivisa e due opzionali che autenticano il possesso di una chiave privata del meccanismo di incapsulamento della chiave (KEM). HPKE funziona per qualsiasi combinazione di un KEM asimmetrico, una funzione di derivazione della chiave (KDF) e una funzione di crittografia autenticata con dati associati (AEAD). Alcune varianti autenticate potrebbero non essere supportate da tutti i KEM. Forniamo istanziazioni dello schema utilizzando primitive ampiamente utilizzate ed efficienti, come l'accordo di chiavi Diffie-Hellman su curva ellittica (ECDH), la funzione di derivazione della chiave basata su HMAC (HKDF) e SHA2.
Questo documento è un prodotto del Crypto Forum Research Group (CFRG) nell'IRTF.
Status of This Memo (Stato di questo memo)
Questo documento non è una specifica della traccia degli standard Internet; è pubblicato a scopo informativo.
Questo documento è un prodotto dell'Internet Research Task Force (IRTF). L'IRTF pubblica i risultati delle attività di ricerca e sviluppo relative a Internet. Questi risultati potrebbero non essere adatti per la distribuzione. Questo RFC rappresenta il consenso del Crypto Forum Research Group dell'Internet Research Task Force (IRTF). I documenti approvati per la pubblicazione dall'IRSG non sono candidati per alcun livello di standard Internet; vedere la sezione 2 della RFC 7841.
Le informazioni sullo stato attuale di questo documento, eventuali errata e come fornire feedback possono essere ottenute all'indirizzo https://www.rfc-editor.org/info/rfc9180.
Copyright Notice (Avviso di copyright)
Copyright (c) 2022 IETF Trust e le persone identificate come autori del documento. Tutti i diritti riservati.
Questo documento è soggetto a BCP 78 e alle disposizioni legali dell'IETF Trust relative ai documenti IETF (https://trustee.ietf.org/license-info) in vigore alla data di pubblicazione di questo documento. Si prega di esaminare attentamente questi documenti, poiché descrivono i vostri diritti e le restrizioni relative a questo documento.
Contents
- 1. Introduction (Introduzione)
- 2. Requirements Notation (Notazione dei requisiti)
- 3. Notation (Notazione)
- 4. Cryptographic Dependencies (Dipendenze crittografiche)
- 5. Hybrid Public Key Encryption (Crittografia a chiave pubblica ibrida)
- 5.1 Creating the Encryption Context (Creazione del contesto di crittografia)
- 5.1.1 Encryption to a Public Key (Crittografia verso una chiave pubblica)
- 5.1.2 Authentication Using a Pre-Shared Key (Autenticazione usando una chiave pre-condivisa)
- 5.1.3 Authentication Using an Asymmetric Key (Autenticazione usando una chiave asimmetrica)
- 5.1.4 Authentication Using Both a PSK and an Asymmetric Key (Autenticazione usando sia PSK che chiave asimmetrica)
- 5.2 Encryption and Decryption (Crittografia e decrittografia)
- 5.3 Secret Export (Esportazione del segreto)
- 5.1 Creating the Encryption Context (Creazione del contesto di crittografia)
- 6. Single-Shot APIs
- 7. Algorithm Identifiers (Identificatori degli algoritmi)
- 8. API Considerations (Considerazioni sulle API)
- 9. Security Considerations (Considerazioni sulla sicurezza)
- 9.1 Security Properties (Proprietà di sicurezza)
- 9.2 Security Requirements on a KEM Used within HPKE
- 9.3 Security Requirements on a KDF
- 9.4 Security Requirements on an AEAD
- 9.5 Pre-Shared Key Recommendations
- 9.6 Domain Separation
- 9.7 Application Embedding and Non-Goals
- 9.8 Bidirectional Encryption
- 9.9 Metadata Protection
- 10. Message Encoding (Codifica dei messaggi)
- 11. IANA Considerations (Considerazioni IANA)
- 12. References (Riferimenti)
- Appendix A. Test Vectors (Vettori di test)
- A.1 DHKEM(X25519, HKDF-SHA256), HKDF-SHA256, AES-128-GCM
- A.2 DHKEM(X25519, HKDF-SHA256), HKDF-SHA256, ChaCha20Poly1305
- A.3 DHKEM(P-256, HKDF-SHA256), HKDF-SHA256, AES-128-GCM
- A.4 DHKEM(P-256, HKDF-SHA256), HKDF-SHA512, AES-128-GCM
- A.5 DHKEM(P-256, HKDF-SHA256), HKDF-SHA256, ChaCha20Poly1305
- A.6 DHKEM(P-521, HKDF-SHA512), HKDF-SHA512, AES-256-GCM
- A.7 DHKEM(X25519, HKDF-SHA256), HKDF-SHA256, Export-Only AEAD
- Acknowledgements (Ringraziamenti)
- Authors' Addresses (Indirizzi degli autori)