MAC-I (Message Authentication Code - Integrity)


It is a special field added by the Packet Data Convergence Protocol (PDCP) layer to each RRC message for the purpose of integrity protection. The location of MAC-I field (4 bytes) in PDCP Data PDU is shown as follows.



When a UE transmit a message, the UE computes the value of the MAC-I field and fill in the MAC-I field of PDPCH PDU. When  a UE receives a message, it verifies the integrity of the PDCP PDU by calculating the X-MAC based on the input parameters (Bearer ID, Direction, AS Key, Message itself etc) . If the calculated X-MAC corresponds to the received MAC-I, integrity protection is verified successfully.


For control plane data that are not integrity protected, the MAC-I field is still present and should be padded with padding bits set to 0.


Refer to the following specification for further details :

i) 36.323 - 5.7 Integrity Protection and Verification

ii) 36.323 - 6.3.4 MAC-I

iii) 33.401 - 3GPP System Architecture Evolution (SAE); Security architecture