ed by UE and MME from KASME when the UE goes to connected state or by UE and target eNode-B during eNode-B handover. Kenb* is a key derived by UE and source eNB from either KeNB or from a fresh NH. It is used by UE and target eNB as a new KeNB for RRC and UP traffic. KNASint is a key used to protect NAS traffic with a particular integrity algorithm. It is derived by the UE and MME from KASME and an identifier for the integrity algorithm, using the KDF. KNASenc is a key used to protect NAS traffic with a particular encryption algorithm. It is derived by UE and MME from KASME and an identifier for the encryption algorithm, using the KDF. KUPenc is a key used to protect UP traffic with a particular encryption algorithm. It is derived by UE and eNode-B from KeNB, and an identifier for the encryption algorithm, using the KDF. KRRCint is a key to protect RRC traffic with a particular integrity algorithm. It is derived by UE and eNode-B from KeNB and an identifier for the integrity algorithm, using the KDF. 20 KDF is a function which derives one or more secret keys from a secret value and/or other known information such as a password or passphrase. 3GPP Evolved Packet System (EPS) USIM / AuC CK, IK UE / HSS KASME UE/MME KNAS enc KNAS int UE/eNB K UP enc KRRC enc KRRC int Figure 3.32 EPS key hierarchy and key derivation. Reproduced with permission from C 2009 3GPP [14] KRRCenc is a key used to protect RRC traffic with a particular encryption algorithm. It is derived by UE and eNB from KeNB and an identifier for the encryption algorithm, using the KDF. Next Hop (NH) is derived by UE and MME from KASME and KeNB when the security context is established, or from KASM and previous NH, otherwise. It is used by UE and eNB in the derivation of KenB* for the provision of forward security. Next Hop Chaining Count (NCC) is a counter related to NH (i.e., the amount of Key chaining that has been performed) which allow the UE to be synchronized with the eNB and to determine whether the next KenB* needs to be based on the current KeNB 