Algorithms for Authentication and Key Derivation

Quintessence of the authentication is the algorithm A3 processed by the mobile station as well as in the network. In the network a random number RAND is generated and sent to the MS. This RAND is constantly changed to protect it against interception and to enhance the security, because the RAND is only valid for a short time. The algorithm A3 calculates the 32 bits signature SRES (Signed RESult) from the secret key Ki and the 128 bits RAND. The calculation of SRES is done independently in AuC and MS. The SRES calculated in the MS is sent to the network where it is compared to that SRES calculated in the network. The authentication is successful if both SRES are identical.
Because SRES could be intercepted on the air interface, the random number RAND is part of the algorithm, so that SRES changes with each new calculation. One can see that keeping Ki secret is the key issue for security. In general, even the user does not explicitly know the Ki.

The general authentication procedure with A3 is shown in Figure 8-1. The algorithm A3 is operator dependent but has a general structure:
A3 is a one-way function, i.e. SRES is easy to derive from Ki and RAND, but Ki cannot be derived from SRES and RAND without unaffordable effort even if more than one SRES and RAND pair is known. The length of Ki can be set individually; the 128 bits is only necessary for transfer inside the network. The choice of a shorter Ki weakens the system’s security. If Ki would be transferred the calculation has to be made in the VLR, which therefore would need to have all A3 implementations of all different operators. Also every transfer of Ki brings a risk of interception from attackers. This is why in most networks only the AuC calculates the algorithms and delivers the results to the VLR. To fasten authentication RAND and SRES can be derived in advance in the network. The AuC calculates a set of n (RAND; SRES) pairs for each user and stores it in the HLR.
If needed they are transferred to the VLR. The VLR stores them. For each authentication only one pair is used and thrown away afterwards. The VLR asks the HLR for new pairs if it runs out of pairs. All pairs from the HLR come from the AuC thus Ki never is transferred. The VLR can give unused pairs to the next VLR if the MS changes its location area.

Besides RAND and SRES the AuC also calculates a 64 bits ciphering key Kc with algorithm the A8. The calculations are made in one step together with A3 as both have Ki and RAND as input parameter. Kc is also stored in the HLR.
The key Kc is used for data encryption. The calculation of Kc is also shown in Figure 8-1. It follows the scheme of authentication, but the result is named Kc instead of SRES and is taken for encryption instead of comparison.
A3 and A8 can be derived with one combined algorithm, giving 96 bit that are divided into 32 bit SRES and 64 bit Kc. The combined algorithm usually produces 128 bit from which SRES is the first 32 bit and Kc the last 64 bit.
The figure shows a block diagram of parameters and algorithms, on the left belonging to the MS, on the right belonging to the BS. On top for both is the IMSI, from there an arrow goes down to the secret key Ki. In the network there is also RAND. By arrows Ki and RAND are feed into the box of the algorithms A3 and A8. RAND is also transmitted to the MS, indicated by another arrow. Then the MS can also run box A3 and A8 with arrows putting in Ki and RAND. Independently of each other, the algorithms in MS and network produce SERS as a result of A3 and KC as a result of A8. SRES from the MS is fed with an arrow into a comparer as well as SRES from the network. There is checked it they are the same.
Figure 8-1: Principles of algorithm A3 and A8.

Before a communication link is established, the user has to be authenticated by the network. The authentication process uses the identity data described above. These data are transferred to the MSC to be used for a challenge-response procedure. The MSC challenges the MS by sending the RAND. The MS calculates the signed response SRES and sends it back to the MSC. If both RES are identical, the authentication is completed and ciphering and user data transfer may begin. This procedure is shown in Figure 8-2.
There are MS, BTS, MSC/SGSN, and AuC on top. MS and AuC have Ki attached.  1. The MSC/SGSN sends Request Authentication Vector to the AuC. There is a block indicating that the AuC produces RANDG, RESG, and KC. 2. Thereafter the AuC sends Authentication Vector to MSC/SGSN. The block is now shown at the MSC/SGSN. 3. The MSC/SGSN sends RANDG to the MS. A block indicates that the MS calculates RESG and Kc. 4. The MS sends RESG to the MSC/SGSN, which checks it. If the check is successful  5. The MSC/SGSN sends Kc to the BS.
Figure 8-2: Authentication till start of encryption in GSM.

Ha alcanzado el 0% de esta lección
0%