6 Integrity algorithm GIA5

3GPP55.251GEA5 and GIA5 algorithm specificationSpecification of the GEA5 and GIA5 encryption algorithms for General Packet Radio Service (GPRS)TS

6.1 Introduction

The integrity algorithm GIA5 computes a Message Authentication Code (MAC) on an input message under an integrity key KI128. The message may be between 1 and 65536 octets long.

For ease of implementation the algorithm is based on the same stream cipher (SNOW 3G) [2] as is used by the confidentiality algorithm GEA5.

6.2 Inputs and outputs

The inputs to the algorithm are given in table 6.2.1, the output in table 6.2.2:

Table 6.2.1: GIA5 inputs

Parameter

Size (bits)

Comment

INPUT-I

32

Frame dependent input INPUT-I[0]…INPUT-I[31]

M

The length of MESSAGE in octets (1-65536)

MESSAGE

8M

Input octet stream MESSAGE{0}….MESSAGE{M-1}

DIRECTION

1

Direction of transmission DIRECTION[0]

FRAMETYPE

8

Input value signifying the type of frame to be protected

KI128

128

Integrity key KI128[0]…KI128[127]

Table 6.2.2: GIA5 output

Parameter

Size (bits)

Comment

MAC

32

Message authentication code MAC[0]…MAC[31]

6.3 Components and architecture

6.3.1 SNOW 3G

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

6.3.2 MULx

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

6.3.3 MULxPOW

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

6.3.4 MUL

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

6.4 Initialization

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

6.5 Calculation

This clause only available under licence.
See http://www.etsi.org/about/what-we-do/security-algorithms-and-codes/cellular-algorithm-licences.

Annex A (informative):
Mathematical background of some operations of the GIA5 Algorithm