Description
The Authentication Framework (AF) is the cornerstone of security in 3GPP networks, encompassing the protocols, algorithms, and procedures for authenticating users and network entities. At its core is the Authentication and Key Agreement (AKA) protocol, which performs mutual authentication between the User Equipment (UE) and the network's core, specifically the Home Subscriber Server (HSS) or Authentication Server Function (AUSF) in 5G. The process is based on a shared secret key (K) stored securely in the UE's Universal Subscriber Identity Module (USIM) and the network's authentication center (AuC). The framework generates session keys for ciphering and integrity protection of user data and signaling messages over the air interface.
Architecturally, the AF integrates several functional entities. The UE and its USIM are the client-side components. In the network, the HSS/AuC generates authentication vectors (AVs), each containing a random challenge (RAND), an expected response (XRES), a cipher key (CK), an integrity key (IK), and an authentication token (AUTN). These vectors are sent to the serving network's Mobility Management Entity (MME) in 4G or the Access and Mobility Management Function (AMF) in 5G. The serving network then challenges the UE with the RAND and AUTN. The UE's USIM verifies the AUTN to authenticate the network, computes its response (RES), and derives the same CK and IK. The serving network compares the RES with the XRES to authenticate the UE.
The framework's operation involves a precise sequence. First, the serving network requests authentication vectors from the home network. Upon receiving a vector, it sends the RAND and AUTN to the UE. The USIM checks the AUTN's freshness and authenticity using sequence numbers (SQN) and message authentication codes (MAC). If valid, the USIM computes the RES and the keys. The UE sends the RES back, and if it matches the XRES, mutual authentication is successful, and the derived keys (CK, IK) are installed for securing the subsequent communication session. In 5G, this evolved into the 5G AKA and EAP-AKA' protocols, introducing key separation and enhanced home network control.
The role of the AF extends beyond initial access. It supports security context management, enabling re-authentication and key refresh without full AKA runs for handovers. It also provides the foundation for securing network slices and enabling authentication for non-3GPP access (like Wi-Fi) via trusted or untrusted interfaces. The framework's robustness lies in its use of strong cryptographic algorithms (MILENAGE, TUAK), protection against replay attacks via sequence numbers, and the clear separation of the long-term secret from the operational session keys.
Purpose & Motivation
The Authentication Framework was created to solve the fundamental security problem in cellular networks: establishing a trusted relationship between a mobile device and a vast, distributed network operated by multiple entities. Prior to standardized authentication in digital cellular systems (like GSM), analog systems had virtually no security, making them vulnerable to cloning and eavesdropping. The initial framework in GSM introduced one-way authentication (network authenticating the subscriber) but was later found vulnerable to false base station attacks. The creation of the 3GPP AF with UMTS (Release 99/4) was motivated by the need for mutual authentication and stronger cryptographic algorithms to enable secure mobile data services, e-commerce, and corporate access.
The framework addresses critical limitations of previous approaches. GSM's A3/A8 algorithms were weak and provided only one-way authentication. The 3GPP AF introduced mutual authentication via the AUTN token, allowing the UE to verify the network's legitimacy, thus mitigating man-in-the-middle attacks. It also strengthened key derivation, increased key lengths, and introduced integrity protection (IK) alongside encryption (CK). This was essential as networks evolved from primarily voice to carrying sensitive data. The framework's design also solves the problem of secure roaming by defining how the serving (visited) network can authenticate a user using credentials and procedures controlled by the home network, establishing a global trust model.
Furthermore, its evolution is driven by new threats and service requirements. The move to all-IP networks (EPS in 4G) and cloud-native architectures (5GC in 5G) introduced new threat vectors. The AF adapted by enhancing key hierarchy (e.g., introducing the K_ASME in 4G and KAUSF in 5G for key separation between network layers), supporting new authentication protocols like EAP, and integrating with identity management frameworks. It provides the essential trust anchor for network slicing, IoT massive connectivity, and edge computing, ensuring that security scales and adapts with the network architecture.
Key Features
- Mutual Authentication between UE and Network via the AKA protocol
- Generation of Cipher Key (CK) and Integrity Key (IK) for session security
- Use of a shared long-term secret (K) stored in USIM and HSS/AuC
- Protection against replay attacks through sequence number (SQN) management
- Support for algorithm agility (e.g., MILENAGE, TUAK) and key freshness
- Foundation for secure roaming and authentication in serving networks
Evolution Across Releases
Introduced the UMTS Authentication and Key Agreement (AKA) protocol as a core component of the 3GPP Authentication Framework. This established mutual authentication, a significant security upgrade from GSM. It defined the use of Authentication Vectors (AV) containing RAND, AUTN, XRES, CK, and IK, and specified the MILENAGE algorithm set as the standard example for cryptographic functions.
Defining Specifications
| Specification | Title |
|---|---|
| TS 23.125 | 3GPP TS 23.125 |
| TS 23.139 | 3GPP TS 23.139 |
| TS 23.203 | 3GPP TS 23.203 |
| TS 23.207 | 3GPP TS 23.207 |
| TS 23.222 | 3GPP TS 23.222 |
| TS 23.287 | 3GPP TS 23.287 |
| TS 23.401 | 3GPP TS 23.401 |
| TS 23.417 | 3GPP TS 23.417 |
| TS 23.433 | 3GPP TS 23.433 |
| TS 23.501 | 3GPP TS 23.501 |
| TS 23.517 | 3GPP TS 23.517 |
| TS 23.558 | 3GPP TS 23.558 |
| TS 23.700 | 3GPP TS 23.700 |
| TS 23.701 | 3GPP TS 23.701 |
| TS 23.722 | 3GPP TS 23.722 |
| TS 23.745 | 3GPP TS 23.745 |
| TS 23.758 | 3GPP TS 23.758 |
| TS 23.799 | 3GPP TS 23.799 |
| TS 23.802 | 3GPP TS 23.802 |
| TS 23.803 | 3GPP TS 23.803 |
| TS 23.923 | 3GPP TS 23.923 |
| TS 23.958 | 3GPP TS 23.958 |
| TS 24.519 | 3GPP TS 24.519 |
| TS 24.538 | 3GPP TS 24.538 |
| TS 24.539 | 3GPP TS 24.539 |
| TS 24.549 | 3GPP TS 24.549 |
| TS 26.501 | 3GPP TS 26.501 |
| TS 26.510 | 3GPP TS 26.510 |
| TS 26.512 | 3GPP TS 26.512 |
| TS 26.531 | 3GPP TS 26.531 |
| TS 26.532 | 3GPP TS 26.532 |
| TS 26.565 | 3GPP TS 26.565 |
| TS 26.803 | 3GPP TS 26.803 |
| TS 26.919 | 3GPP TS 26.919 |
| TS 26.924 | 3GPP TS 26.924 |
| TS 26.927 | 3GPP TS 26.927 |
| TS 26.942 | 3GPP TS 26.942 |
| TS 26.998 | 3GPP TS 26.998 |
| TS 28.802 | 3GPP TS 28.802 |
| TS 28.816 | 3GPP TS 28.816 |
| TS 28.833 | 3GPP TS 28.833 |
| TS 29.122 | 3GPP TS 29.122 |
| TS 29.201 | 3GPP TS 29.201 |
| TS 29.212 | 3GPP TS 29.212 |
| TS 29.213 | 3GPP TS 29.213 |
| TS 29.214 | 3GPP TS 29.214 |
| TS 29.215 | 3GPP TS 29.215 |
| TS 29.217 | 3GPP TS 29.217 |
| TS 29.255 | 3GPP TS 29.255 |
| TS 29.508 | 3GPP TS 29.508 |
| TS 29.512 | 3GPP TS 29.512 |
| TS 29.513 | 3GPP TS 29.513 |
| TS 29.514 | 3GPP TS 29.514 |
| TS 29.517 | 3GPP TS 29.517 |
| TS 29.520 | 3GPP TS 29.520 |
| TS 29.521 | 3GPP TS 29.521 |
| TS 29.522 | 3GPP TS 29.522 |
| TS 29.523 | 3GPP TS 29.523 |
| TS 29.530 | 3GPP TS 29.530 |
| TS 29.534 | 3GPP TS 29.534 |
| TS 29.535 | 3GPP TS 29.535 |
| TS 29.536 | 3GPP TS 29.536 |
| TS 29.543 | 3GPP TS 29.543 |
| TS 29.552 | 3GPP TS 29.552 |
| TS 29.554 | 3GPP TS 29.554 |
| TS 29.558 | 3GPP TS 29.558 |
| TS 29.564 | 3GPP TS 29.564 |
| TS 29.574 | 3GPP TS 29.574 |
| TS 29.575 | 3GPP TS 29.575 |
| TS 29.576 | 3GPP TS 29.576 |
| TS 29.581 | 3GPP TS 29.581 |
| TS 29.591 | 3GPP TS 29.591 |
| TS 29.675 | 3GPP TS 29.675 |
| TS 29.816 | 3GPP TS 29.816 |
| TS 29.817 | 3GPP TS 29.817 |
| TS 29.889 | 3GPP TS 29.889 |
| TS 29.890 | 3GPP TS 29.890 |
| TS 32.240 | 3GPP TR 32.240 |
| TS 32.255 | 3GPP TR 32.255 |
| TS 32.272 | 3GPP TR 32.272 |
| TS 32.273 | 3GPP TR 32.273 |
| TS 32.279 | 3GPP TR 32.279 |
| TS 32.291 | 3GPP TR 32.291 |
| TS 32.820 | 3GPP TR 32.820 |
| TS 32.899 | 3GPP TR 32.899 |
| TS 33.127 | 3GPP TR 33.127 |
| TS 33.310 | 3GPP TR 33.310 |
| TS 33.503 | 3GPP TR 33.503 |
| TS 33.535 | 3GPP TR 33.535 |
| TS 33.739 | 3GPP TR 33.739 |
| TS 33.741 | 3GPP TR 33.741 |
| TS 33.749 | 3GPP TR 33.749 |
| TS 33.836 | 3GPP TR 33.836 |
| TS 33.847 | 3GPP TR 33.847 |
| TS 33.866 | 3GPP TR 33.866 |
| TS 33.882 | 3GPP TR 33.882 |