Description
RAND, short for RANDom number, is a fundamental 128-bit parameter within the 3GPP security architecture, specifically for the Authentication and Key Agreement (AKA) mechanism. It is a cryptographically strong random or pseudo-random number generated by the network's authentication center, typically residing in the Home Subscriber Server (HSS) for LTE/5G or the Home Location Register/Authentication Centre (HLR/AuC) for 2G/3G. The primary role of the RAND is to serve as a random challenge in a challenge-response protocol. During an authentication procedure, the network sends the RAND to the User Equipment (UE) via the serving network (e.g., MME, SGSN).
Upon receipt, the UE passes the RAND to its Universal Subscriber Identity Module (USIM) application. The USIM, which shares a long-term secret key (K) with the HSS/AuC, uses this RAND along with the key K and other parameters as inputs to a set of cryptographic functions. These functions, standardized in 3GPP (like the MILENAGE algorithm suite), produce two crucial outputs: a Signed Response (SRES for 2G, RES for 3G/4G/5G) and a Cipher Key (CK) and Integrity Key (IK). The UE sends the computed RES back to the network. The network, having generated the same RAND and possessing the same secret key K, performs the identical computation. It then compares the RES received from the UE with the one it computed locally. A match proves that the UE possesses the correct secret key and is therefore authentic.
Beyond authentication, the RAND is equally vital for key derivation. The same computation that produces the RES also generates the ciphering key (CK) and integrity key (IK). These keys form the basis for all subsequent secure communication between the UE and the network for that session. They are used to derive the actual encryption and integrity protection keys for the Access Stratum (AS) and Non-Access Stratum (NAS). Thus, the randomness and unpredictability of the RAND are paramount. A weak or predictable RAND could compromise the entire authentication process, allowing for replay attacks or making it easier for an attacker to deduce the long-term secret key. The RAND ensures that each authentication instance is unique, providing freshness and preventing the reuse of previously exchanged authentication vectors.
Purpose & Motivation
The RAND exists to provide a robust challenge in a challenge-response authentication mechanism, which is central to securing cellular networks. Before standardized authentication protocols, simpler systems were vulnerable to replay attacks where an attacker could intercept and re-send a valid user response to gain access. The use of a random challenge for each authentication attempt directly addresses this vulnerability. By ensuring the challenge is different every time, a previously recorded response becomes useless to an attacker.
In the evolution from GSM to UMTS and beyond, the role of the RAND expanded. In GSM, the RAND was used with the COMP128 algorithm to generate the SRES and the Kc key. However, GSM authentication was one-way (network authenticates the UE) and had cryptographic weaknesses. The introduction of UMTS AKA, starting in Release 99, retained the RAND but integrated it into a more secure, mutual authentication framework. The RAND, combined with a sequence number (SQN) for freshness, became the input to stronger algorithms, producing separate keys for encryption and integrity. This solved the limitations of GSM's weaker cryptography and lack of integrity protection.
The motivation for its creation and continued use is the fundamental need for a non-repeating, unpredictable variable to seed the cryptographic functions that secure the network. It is the element that introduces entropy and session-specific variability into the key generation process. Without a fresh RAND for each authentication, the derived session keys could be predictable, leading to a catastrophic failure of confidentiality and integrity for user data and signaling. Its standardization ensures interoperability between equipment from different vendors and networks worldwide.
Classification
Evolution Across Releases
Introduced as part of the GSM security architecture. The RAND was generated by the AuC and used with the COMP128 algorithm to produce the Signed Response (SRES) and the ciphering key (Kc) for GSM encryption, establishing the challenge-response framework for cellular authentication.
Explore further
Broader topics and technologies where RAND plays a role.
Defining Specifications
3GPP specifications that define or reference RAND, with the latest known release. Sourced from the 3GPP document catalog — see methodology.
| Specification | Title | Release |
|---|---|---|
| TR 21.905 vj00 | 3GPP Technical Terms and Definitions | Rel-19 |
| TS 24.109 vj00 | HTTP Digest AKA & GAA Stage 3 | Rel-19 |
| TS 24.229 vj50 | IMS call control protocol based on SIP and SDP | Rel-19 |
| TS 29.109 vj00 | GAA Bootstrapping Interfaces (Zh, Dz, Zn, Zpn) | Rel-19 |
| TS 31.102 vj40 | USIM Application Specification | Rel-19 |
| TS 31.103 vj00 | ISIM Application Specification | Rel-19 |
| TR 31.900 vj00 | 3GPP TS 31.900: Security Interworking Guidance | Rel-19 |
| TS 33.102 vj10 | 3G Security Architecture Specification | Rel-19 |
| TS 33.105 vj00 | 3G Security: Cryptographic Algorithm Requirements | Rel-19 |
| TS 33.401 vj10 | EPS Security Architecture | Rel-19 |
| TS 35.205 vj00 | MILENAGE Algorithm Set: General Overview | Rel-19 |
| TR 35.934 vj00 | Tuak algorithm set for 3GPP auth & key gen | Rel-19 |