Tính dễ uốn của phong bì AEAD
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
- Phiên bản bị ảnh hưởng
- Tất cả phiên bản Tink
- Loại khoá bị ảnh hưởng
- Tất cả các loại khoá AEAD trên phong bì
Nội dung mô tả
Mã hoá phong bì sử dụng một nhà cung cấp bên thứ ba (chẳng hạn như GCP hoặc AWS) để mã hoá khoá mã hoá dữ liệu (DEK).
Bạn có thể sửa đổi một số phần của DEK đã mã hoá mà không cần phát hiện khi sử dụng KmsEnvelopeAead
với AwsKmsAead
hoặc GcpKmsAead
làm nhà cung cấp từ xa. Nguyên nhân là do việc thêm siêu dữ liệu chưa được xác thực (ví dụ: số phiên bản). Trình cung cấp sẽ không phát hiện được các nội dung sửa đổi đối với dữ liệu chưa được xác thực này.
Xin lưu ý rằng điều này vi phạm thuộc tính thích ứng về tấn công văn bản mật mã đã chọn (IND-CCA-2) cho giao diện này, mặc dù bản mật mã vẫn có thể giải mã thành DEK chính xác. Khi sử dụng giao diện này, đừng cho rằng mỗi DEK chỉ tương ứng với một DEK đã mã hoá.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-25 UTC.
[null,null,["Cập nhật lần gần đây nhất: 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*."]]