KAF

AKMA Application Key

Security →
Introduced in Rel-16

KAF is a cryptographic key derived in the AKMA framework to secure application-level communication between a user equipment and an application function, enabling efficient and secure service access.

Category
Security
Introduced
Rel-16
Where
Services
Specifications
3 specs
KAF Description Purpose Related Classification Detected Changes Specifications

Description

The KAF (AKMA Application Key) is a crucial security element within the Authentication and Key Management for Applications (AKMA) framework standardized by 3GPP. It is a symmetric cryptographic key uniquely generated for a specific user equipment (UE) and a specific Application Function (AF). The KAF is not directly provisioned but is dynamically derived from a root key known as the KAKMA (AKMA Anchor Key), which itself is established during the primary 5G AKA or EAP-AKA' authentication procedure between the UE and the network. The derivation process involves input parameters such as the AF's identity (e.g., its FQDN), ensuring key separation so that each UE-AF pair has a distinct KAF.

The generation of the KAF is a distributed process. The UE and the AKMA Anchor Function (AAnF) in the home network independently compute the same KAF using the shared KAKMA and the agreed-upon derivation inputs. The AAnF then securely provides this KAF to the requesting AF over the Naf interface. This architecture ensures the AF never learns the root KAKMA, and the UE never exposes the KAF externally, maintaining a strong security chain. The KAF's primary role is to enable the establishment of a secure channel, typically using TLS-PSK (Pre-Shared Key) or similar mechanisms, between the UE and the AF.

Once established, the KAF is used to secure application-layer communications. It can directly serve as a pre-shared key for TLS or be used to derive further session keys for encryption and integrity protection of application data. This model offloads authentication and key management from the application server to the 3GPP security infrastructure, leveraging the robust, subscription-based network authentication. The KAF's lifecycle is tied to the underlying KAKMA; it remains valid as long as the KAKMA is valid, which is typically aligned with the UE's registration state, providing a balance between security and service continuity.

Purpose & Motivation

The KAF was introduced to solve the problem of repetitive and inefficient authentication for over-the-top (OTT) and operator-hosted applications accessing 3GPP networks. Before AKMA, applications often required their own authentication mechanisms (like usernames/passwords or API tokens), which were separate from the robust cellular network authentication. This created a poor user experience, increased credential management overhead, and could introduce security weaknesses if application-level credentials were weak or poorly managed.

AKMA, and specifically the KAF, was created to leverage the strong, primary authentication performed by the 3GPP core network (5GC) for securing application access. Its purpose is to enable seamless and secure bootstrapping of application security. By deriving the KAF from the already-established network authentication, it eliminates the need for the user to perform a separate log-in for trusted applications. This is particularly valuable for services that require a verified mobile subscriber identity and for IoT scenarios where manual intervention is impossible.

The motivation stems from the need for a standardized, network-centric authentication framework for applications, moving beyond basic network access security. It addresses the limitation of previous approaches where application security was siloed. KAF provides a standardized way for Application Functions to obtain cryptographically strong keys tied to a proven subscriber identity, enabling new business models like identity-as-a-service and secure IoT service enablement directly from the 3GPP network trust anchor.

Classification

Part ofAKMA
Related approachesKAKMA

Release Timeline

Detected Changes Across Releases

from 3GPP Change Requests

Specific changes extracted from the „Change history“ tables of 3GPP specifications (11 CRs across 3 releases). Complements the general historical overview above with the evidence-based evolution of this function.

Rel-16 1 change

In Release 16, the specification for the AKMA Application Key (KAF) function was enhanced to define a lifetime for the KAF, after which it expires. This introduces a specific expiration mechanism for this key, ensuring it is not used indefinitely.

Rel-17 6 changes

In Release 17, the specification introduced new details and clarifications for the AKMA Application Key (KAF) function. The enhancements specifically focused on defining the KAF generation procedure within the UE and providing clearer guidance on KAF lifetime management. This included new recommendations for handling KAF expiration and refresh mechanisms, particularly in relation to the Ua protocol.

  • Clarification on indication to UE when KAF is expired TS 33.535CR0122
  • Adding details of AKMA application key generation in the UE TS 33.535CR0047
  • KAF lifetime expiration in clause 5.2 TS 33.535CR0060
  • Clarification on Kaf lifetime in Clause 5.2 TS 33.535CR0101
  • Add a Note about the Kaf refresh TS 33.535CR0115
  • KAF lifetime and Ua protocol recommendations TS 33.535CR0151
Rel-18 4 changes

In Release 18, the enhancements to the AKMA Application Key (KAF) function introduced mechanisms for its lifecycle management and clarified its usage. Specifically, the release linked KAF refresh to KAKMA refresh, defined a procedure for KAF re-keying triggered by the AAnF after expiration, and added clarifying text on the derivation and limitations of session keys based on Kaf. These changes are documented in a new clause 6.3 for Kaf derivation descriptions.

  • Link KAF refresh to KAKMA refresh TS 33.535CR0165
  • Clarification on limitation of session key based on Kaf using Ua TS 33.535CR0176
  • KAF re-keying after expiration triggered by AAnF TS 33.535CR0201
  • Add clause 6.3 in the Kaf derivation descriptions - R18Mirror TS 33.535CR0232

Explore further

Broader topics and technologies where KAF plays a role.

Defining Specifications

3GPP specifications that define or reference KAF, with the latest known release. Sourced from the 3GPP document catalog — see methodology.

SpecificationTitleRelease
TS 29.522 vj40 5G NEF Northbound APIs Stage 3 Rel-19
TS 33.127 vj50 Lawful Interception Architecture and Functions Rel-19
TS 33.535 vj00 5G AKMA: Authentication and Key Management for Apps Rel-19
Patrick Zandl

About the author: Patrick Zandl (b. 1974)

Telecommunications specialist, technology journalist (founder of the Mobil server), and developer who has been running since 2025 — the largest Czech-language resource on AI-assisted programming. Formerly Chief Wizard Architect at Prusa3D and head of development for Turris at CZ.NIC; currently a consultant and instructor on AI implementation in companies.