Menu
Latest
12 meetings · Prague, Jeju · 12–16 Oct
Reports
RAN1#126-bis · SA2#177

Glossary term · Security

Tuak

TUAK Algorithm Set

Security →

Tuak is a 3GPP authentication and key generation algorithm set introduced in Release 12 as a secure alternative to the MILENAGE algorithm set.

Introduced
Rel-12
Where
Security
Specifications
5 specs
Tuak Description Purpose Neighbours Specifications

Description

TUAK is a set of cryptographic algorithms designed for the 3GPP Authentication and Key Generation Functions (AKA). It was introduced in Release 12 as an example algorithm set, similar to MILENAGE, but with a different design philosophy. TUAK is specified in 3GPP specifications 33.834, 35.231, 35.232, 35.233, and 35.934. The name is pronounced like 'too-ack'.

The primary function of TUAK is to provide authentication and key generation for mobile networks. It is used in the Authentication and Key Agreement (AKA) protocol, which is the foundation for secure access in 3GPP networks (including 3G, 4G, and 5G). The AKA protocol involves the mobile station (UE) and the network (more specifically, the Authentication Center (AuC) in the Home Subscriber Server (HSS) or the Unified Data Management (UDM)) authenticating each other and generating session keys. TUAK provides the algorithms for generating the authentication vectors (RAND, AUTN, XRES, CK, IK) and for verifying the response from the UE.

TUAK is based on a block cipher (the Keccak permutation) and is designed to be efficient and secure. It supports different security levels and can be configured with different key lengths. The algorithm set includes functions f1, f1*, f2, f3, f4, f5, and f5* as defined in 3GPP TS 35.231. These functions are used to generate the authentication response (RES), the network authentication token (AUTN), the cipher key (CK), and the integrity key (IK). TUAK also supports the generation of the anonymity key (AK) and the re-synchronization token (AUTS).

One of the key advantages of TUAK over MILENAGE is its flexibility and improved security properties. TUAK is designed to be resistant to known cryptanalytic attacks and can be adapted to different security requirements. It also allows for the use of different key sizes, which can be beneficial in environments where stronger security is needed. The algorithm set is provided as an example, meaning that operators can choose to implement it or design their own algorithms based on the framework.

TUAK is specified in a set of documents that cover the algorithm specification (35.231), the test data (35.232), the implementation guidance (35.233), and the security analysis (33.834). The specification 35.934 provides the report on the design and evaluation of TUAK. These documents ensure that TUAK can be implemented interoperably and securely.

In the context of 5G, TUAK continues to be relevant as an alternative authentication algorithm. It is part of the 5G security architecture and can be used in conjunction with 5G-AKA or EAP-AKA'. The introduction of TUAK in Release 12 was motivated by the need for a second example algorithm set to complement MILENAGE, providing diversity and reducing the risk of widespread vulnerabilities if one algorithm is compromised. The evolution of TUAK has been stable, with the definition remaining consistent across releases, indicating its established role in 3GPP security.

Purpose & Motivation

TUAK was created to provide an alternative to the MILENAGE algorithm set, which had been the primary example algorithm set for 3GPP authentication since Release 99. While MILENAGE is secure, relying on a single algorithm set poses a risk: if a vulnerability is discovered, it could affect a large number of networks. TUAK was designed to offer a second, independent algorithm set that could be used as an alternative or in addition to MILENAGE, enhancing the overall security and resilience of 3GPP networks.

The motivation for TUAK also included the desire for a more flexible and modern cryptographic design. TUAK is based on the Keccak permutation, which is the basis for the SHA-3 standard, and it supports variable key lengths and different security levels. This allows operators to tailor the security to their needs and to comply with local regulations. TUAK also includes a comprehensive security analysis and test data, making it easier for vendors to implement and validate.

By providing a second example algorithm set, 3GPP aimed to encourage diversity in implementations and to reduce the risk of monoculture in security algorithms. TUAK solves the problem of over-reliance on a single algorithm and provides a path for future evolution. It is particularly important in the context of 5G, where security requirements are more stringent and the threat landscape is more complex.

Release Timeline

Evolution Across Releases

An overview written from the defining specifications, not a verified change history. For the exact text, open the specifications listed below.

Rel-12 Initial

Initial introduction of TUAK as a newly designed example algorithm set for 3GPP Authentication and Key Generation Functions. It was specified in a set of new documents and provided an alternative to MILENAGE.

The definition carried over unchanged from Rel-12, indicating stability in the concept.

The definition carried over unchanged from Rel-12, indicating stability in the concept.

The definition carried over unchanged from Rel-12, indicating stability in the concept.

The definition carried over unchanged from Rel-12, indicating stability in the concept.

The definition text was revised to remove the line break, resulting in a single-line definition. This is a minor editorial change with no technical impact.

The definition carried over unchanged from Rel-17, maintaining the single-line format.

The definition reverted to the original wording with a line break, 'newly designed example algorithm set for the\n3GPP Authentication and Key Generation Functions. It should be\npronounced like "too-ack"'. This is likely a formatting inconsistency and does not represent a technical change.

Defining Specifications

3GPP specifications that define or reference Tuak, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TR 33.834 vg10 Long Term Key Update Procedures Study Rel-16 read
TS 35.231 vj00 Tuak Algorithm Set Specification Rel-19 read
TS 35.232 vj00 Tuak Algorithm Test Data Specification Rel-19 read
TS 35.233 vj00 Tuak Algorithm Set: Design Conformance Test Data Rel-19 read
TR 35.934 vj00 Tuak algorithm set for 3GPP auth & key gen Rel-19 read