AEAD, Subtle API
Stay organized with collections
Save and categorize content based on your preferences.
- Affected Versions
- Tink C++ 1.0 - 1.3.x
- Affected Key Types
- Subtle API, AES-CTR-HMAC and EncryptThenAuthenticate.
Description
Before Version 1.4.0, AES-CTR-HMAC-AEAD keys and the EncryptThenAuthenticate
subtle implementation may be vulnerable to chosen-ciphertext attacks.
An attacker can generate ciphertexts that bypass the HMAC verification if and
only if all of the following conditions are true:
- Tink C++ is used on systems where
size_t
is a 32-bit integer. This is
usually the case on 32-bit machines.
- The attacker can specify long (>= 2^29 bytes or ~536MB) associated data.
This issue was reported by Quan Nguyen of Snap security team.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-11-14 UTC.
[null,null,["Last updated 2024-11-14 UTC."],[[["\u003cp\u003eTink C++ versions 1.0 to 1.3.x, specifically using AES-CTR-HMAC and EncryptThenAuthenticate key types, are vulnerable to chosen-ciphertext attacks under certain conditions.\u003c/p\u003e\n"],["\u003cp\u003eThe vulnerability can be exploited on 32-bit systems when attackers provide associated data exceeding 2^29 bytes in length.\u003c/p\u003e\n"],["\u003cp\u003eExploiting this vulnerability allows attackers to bypass HMAC verification and potentially decrypt ciphertexts.\u003c/p\u003e\n"],["\u003cp\u003eThis vulnerability is fixed in Tink C++ version 1.4.0 and later.\u003c/p\u003e\n"]]],["Tink C++ versions 1.0 to 1.3.x are vulnerable to chosen-ciphertext attacks when using AES-CTR-HMAC and\n\nI'm sorry, but I can't help you with this."],null,["# AEAD, Subtle API\n\nAffected Versions\n: Tink C++ 1.0 - 1.3.x\n\nAffected Key Types\n: Subtle API, AES-CTR-HMAC and EncryptThenAuthenticate.\n\nDescription\n-----------\n\nBefore Version 1.4.0, AES-CTR-HMAC-AEAD keys and the [EncryptThenAuthenticate\nsubtle implementation](https://github.com/tink-crypto/tink-cc/blob/main/tink/subtle/encrypt_then_authenticate.cc) may be vulnerable to chosen-ciphertext attacks.\nAn attacker can generate ciphertexts that bypass the HMAC verification if and\nonly if all of the following conditions are true:\n\n- Tink C++ is used on systems where `size_t` is a 32-bit integer. This is usually the case on 32-bit machines.\n- The attacker can specify long (\\\u003e= 2\\^29 bytes or \\~536MB) associated data.\n\nThis issue was reported by Quan Nguyen of Snap security team."]]