DUCK

Discovery User Confidentiality Key

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

DUCK is a cryptographic key used in ProSe to ensure the confidentiality of messages and protect user identity during device-to-device discovery in LTE and 5G networks.

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

Description

The Discovery User Confidentiality Key (DUCK) is a security key defined within the 3GPP architecture for Proximity-based Services (ProSe). It is derived as part of a key hierarchy specifically for the protection of discovery-related communication between User Equipments (UEs) operating in direct device-to-device (D2D) mode or via a network. The primary purpose of the DUCK is to provide confidentiality protection for discovery messages, which are signals or announcements broadcast by a UE to make its presence or services known to other nearby UEs. Without such protection, these messages could reveal sensitive information about the user's identity, location, or intent.

The DUCK is generated through a key derivation function (KDF) specified in 3GPP TS 33.220. Its derivation typically uses a root key shared between the UE and the network (such as the K_ProSe key) along with other input parameters like the ProSe Application Code and the key purpose identifier. Once derived, the DUCK is used within the UE's ProSe protocol stack. When a UE wishes to send a secured discovery message, it uses the DUCK to encrypt the payload of the discovery announcement or solicitation. The corresponding receiving UEs, which have derived the same DUCK (based on shared network-provided parameters or direct establishment), can decrypt the message to process the discovery information. This process ensures that only authorized UEs participating in the same discovery session can understand the content.

Architecturally, the DUCK is managed by the ProSe function in the network and securely provisioned to authorized UEs. It operates alongside the Discovery User Integrity Key (DUIK), which provides integrity protection. The combination of DUCK and DUIK forms a complete security suite for discovery signaling. The key's lifecycle is tied to the discovery session or the validity of the higher-layer root key. Its use is detailed in specifications governing the ProSe protocol layers (24.334) and the security architecture (33.503). The DUCK is a critical enabler for secure commercial find-and-connect services and, more importantly, for public safety communications where discovery between first responders must be both reliable and confidential.

Purpose & Motivation

The DUCK was introduced in 3GPP Release 13 to address the security requirements of the newly standardized Proximity Services (ProSe). ProSe enables direct device-to-device communication, a paradigm shift from traditional cellular networks where all traffic routes through a base station. One of the foundational operations in ProSe is discovery—the process by which devices find each other. Early ProSe work identified that discovery messages, if sent in plaintext, would pose significant privacy and security risks, potentially exposing user identities and enabling tracking or spoofing attacks.

The creation of the DUCK was motivated by the need to provide confidentiality for these discovery procedures, particularly for applications like public safety where communication must be secure from eavesdropping. Prior to ProSe, cellular security focused on the UE-to-network link. D2D discovery required a new security model for the direct UE-to-UE link. The DUCK, as part of a dedicated ProSe key hierarchy, solved the problem of how to efficiently and securely encrypt discovery payloads without requiring a prior direct secure connection between the discovering devices. It allowed the network to delegate cryptographic capability to devices for off-network operation, a crucial feature for public safety scenarios where network infrastructure might be unavailable. The DUCK thus filled a critical gap in the security architecture, enabling trustworthy discovery as a precursor to secure D2D communication.

Evolution Across Releases

Rel-13 Initial

Introduced as part of the foundational Proximity Services (ProSe) security architecture. The initial specification defined the DUCK's derivation method, its role in encrypting discovery message payloads, and its integration with the ProSe protocol stack for both public safety and commercial use cases.

Explore further

Broader topics and technologies where DUCK plays a role.

Defining Specifications

3GPP specifications that define or reference DUCK, 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.