DUIK

Discovery User Integrity Key

Security →
Introduced in Rel-13 Also in: User Equipment, Security

DUIK is a cryptographic key used in ProSe to ensure the integrity and origin authentication of messages during device-to-device discovery, protecting them from tampering and forgery.

Category
Security
Introduced
Rel-13
Where
Services
Also touches
2 segments
Specifications
8 specs
DUIK Description Purpose Specifications

Description

The Discovery User Integrity Key (DUIK) is a security key defined within the 3GPP Proximity Services (ProSe) framework. It is derived alongside the Discovery User Confidentiality Key (DUCK) and forms the second half of the security pair for protecting direct discovery signaling between User Equipments (UEs). The DUIK's specific role is to provide integrity protection and data origin authentication for discovery messages. This means it allows a receiving UE to verify that a received discovery announcement or solicitation has not been altered in transit and that it indeed originated from the claimed sender.

Technically, the DUIK is derived using a Key Derivation Function (KDF) as specified in 3GPP TS 33.220. The derivation inputs include the root ProSe key (e.g., K_ProSe) and specific parameters tied to the discovery session. When a UE generates a discovery message, it uses the DUIK to compute a Message Authentication Code (MAC), often using an algorithm like HMAC-SHA-256. This MAC is appended to the discovery message (which may itself be encrypted using the DUCK). The receiving UE, possessing the same DUIK, recalculates the MAC on the received message and compares it to the transmitted MAC. A match confirms integrity and authenticates the source.

Architecturally, the DUIK is provisioned and managed in tandem with the DUCK. The network's ProSe Function is responsible for authorizing discovery and ensuring participating UEs can derive the correct keys. The DUIK operates at the ProSe protocol layer, interfacing with the discovery protocol specified in TS 24.334. Its use is critical in preventing discovery-based attacks such as message injection, where a malicious device could send false discovery information to disrupt services or create confusion. In public safety scenarios, the integrity of a "first responder nearby" discovery message is as important as its confidentiality. The DUIK ensures that the discovery framework is resilient against such attacks, forming a trustworthy basis for subsequent device-to-device communication setup.

Purpose & Motivation

The DUIK was introduced in 3GPP Release 13 alongside the DUCK to meet the comprehensive security requirements of Proximity Services (ProSe). While confidentiality (provided by DUCK) protects the content of discovery messages, integrity protection was identified as an equally critical requirement. Without it, an attacker could modify discovery messages or forge them entirely, leading to spoofed identities, service disruption, or malicious redirection of communication—particularly dangerous in public safety and critical communication scenarios.

The purpose of the DUIK is to provide this essential guarantee of message authenticity and integrity for the discovery process. The motivation stems from the adversarial environment of open radio communication; any device within radio range can potentially transmit or interfere with signals. Previous cellular security models assumed a trusted base station as the counterparty. In direct D2D discovery, devices communicate without that intermediary, necessitating a peer-to-peer security mechanism. The DUIK solves the problem of how a UE can trust that a discovery broadcast is genuine and unaltered. By enabling source authentication, it prevents impersonation and ensures that the discovery process, which is the first step in establishing a direct link, is secure and reliable. This was a fundamental innovation that made ProSe viable for security-sensitive applications beyond simple commercial find-and-connect services.

Evolution Across Releases

Rel-13 Initial

Introduced concurrently with the ProSe feature set. The initial specification defined the DUIK's derivation, its application for integrity protection of discovery messages via MAC calculation, and its mandatory use alongside the DUCK to secure the new direct device-to-device discovery procedures.

Explore further

Broader topics and technologies where DUIK plays a role.

Defining Specifications

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

SpecificationTitleRelease
TS 24.334 vj00 ProSe Protocols and Procedures Rel-19
TS 24.514 vj30 Ranging & Sidelink Positioning in 5GS Rel-19
TS 24.554 vj40 5G Proximity Services (ProSe) Protocols Rel-19
TS 24.555 vj30 5G ProSe UE Policies Specification Rel-19
TS 29.345 vj00 Diameter-based PC6/PC7 interfaces for ProSe Rel-19
TS 31.102 vj40 USIM Application Specification Rel-19
TS 33.503 vj20 Security for Proximity Services (ProSe) in 5G Rel-19
TS 33.843 vf10 Security Study for ProSe UE-to-Network Relay Rel-15
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.