Busta AEAD Malleability
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
- Versioni interessate
- Tutte le versioni di Tink
- Tipi di chiavi interessati
- Tutti i tipi di chiavi AEAD di Envelope
Descrizione
La crittografia envelope utilizza un provider di terze parti (come GCP o AWS) per criptare una chiave di crittografia dei dati (DEK).
È possibile modificare alcune parti della DEK criptata senza rilevamento se si utilizza KmsEnvelopeAead
con AwsKmsAead
o GcpKmsAead
come provider remoto. Ciò è dovuto all'inclusione di metadati non autenticati (ad esempio, i numeri di versione). Le modifiche a questi dati non autenticati non vengono rilevate dal provider.
Tieni presente che ciò viola la proprietà dell'attacco di testo crittografato adattivo (IND-CCA-2) per questa interfaccia, anche se il testo crittografato può comunque decriptare nella DEK corretta. Quando utilizzi questa interfaccia non dare per scontato che ogni DEK corrisponda solo a una singola DEK criptata.
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2025-07-25 UTC.
[null,null,["Ultimo aggiornamento 2025-07-25 UTC."],[[["\u003cp\u003eAll versions of Tink and all Envelope AEAD key types are affected by a security vulnerability.\u003c/p\u003e\n"],["\u003cp\u003eThe vulnerability allows modification of unauthenticated metadata within encrypted data encryption keys when using KmsEnvelopeAead with AwsKmsAead or GcpKmsAead.\u003c/p\u003e\n"],["\u003cp\u003eWhile the ciphertext can still be decrypted, this vulnerability violates the adaptive chosen-ciphertext attack property (IND-CCA-2).\u003c/p\u003e\n"],["\u003cp\u003eDevelopers should be aware that a single data encryption key might correspond to multiple encrypted data encryption keys due to this issue.\u003c/p\u003e\n"]]],["Envelope encryption, using `KmsEnvelopeAead` with `AwsKmsAead` or `GcpKmsAead`, allows undetectable modifications to the encrypted data encryption key (DEK) due to unauthenticated metadata. All Tink versions and Envelope AEAD key types are affected. While decryption still yields the correct DEK, this violates the adaptive chosen-ciphertext attack property (IND-CCA-2). Each DEK may correspond to multiple encrypted DEKs; users shouldn't assume a one-to-one mapping.\n"],null,["# Envelope AEAD Malleability\n\nAffected Versions\n: All Tink versions\n\nAffected Key Types\n: All Envelope AEAD key types\n\nDescription\n-----------\n\n[Envelope encryption](/tink/client-side-encryption) uses a third-party provider\n(such as GCP or AWS) to encrypt a data encryption key (DEK).\n\nIt is possible to modify certain parts of the encrypted DEK without detection\nwhen using `KmsEnvelopeAead` with `AwsKmsAead` or `GcpKmsAead` as the remote\nprovider. This is due to the inclusion of unauthenticated metadata (for instance\nversion numbers). Modifications to this unauthenticated data are not detected by\nthe provider.\n\nNote that this violates the adaptive chosen-ciphertext attack property\n(IND-CCA-2) for this interface, although the ciphertext can still decrypt to\nthe correct DEK. When using this interface don't presume that each DEK only\ncorresponds to a single *encrypted DEK*."]]