3 Introductory information (normative)
3GPP55.205Release 17Specification of the GSM-MILENAGE algorithms: An example algorithm set for the GSM Authentication and Key Generation Functions A3 and A8TS
3.1 Introduction
Within the security architecture of the GSM system there are security functions A3 and A8. The operation of these functions falls completely within the domain of an individual operator, and the functions are therefore to be specified by each operator rather than being fully standardised. The algorithms specified in this document are examples that may be used by an operator who does not wish to design his own.
The inputs and outputs of the two functions are defined in section 3.2.
3.2 Algorithm Inputs and Outputs
The inputs to the algorithms are given in table 1, the outputs in tables 2 and 3 below.
Table 1: Inputs to A3 and A8
Parameter |
Size (bits) |
Comment |
Ki |
128 |
Subscriber key Ki[0]…Ki[127] |
RAND |
128 |
Random challenge RAND[0]…RAND[127] |
Table 2: A3 output
Parameter |
Size (bits) |
Comment |
SRES |
32 |
Signed response SRES[0]…SRES[31] |
Table 3: A8 output
Parameter |
Size (bits) |
Comment |
KC |
64 |
Cipher key KC[0]…KC[63] |
3.3 Notation
3.3.1 Bit/Byte ordering
All data variables in this specification are presented with the most significant bit (or byte) on the left hand side and the least significant bit (or byte) on the right hand side. Where a variable is broken down into a number of substrings, the leftmost (most significant) substring is numbered 0, the next most significant is numbered 1, and so on through to the least significant. When a variable, with bit length L, is shown in hexadecimal format, bit 0 is the most significant bit of the leftmost hexadecimal digit, and bit L-1 is the least significant bit of the rightmost hexadecimal digit.
3.3.2 List of Symbols
= The assignment operator.
|| The concatenation of the two operands.
The bitwise exclusive-OR operation.
X[i] The ith bit of the variable X. (X = X[0] || X[1] || X[2] || ….. ).