Description
A Certificate Signing Request (CSR) is a critical component of the Public Key Infrastructure (PKI) framework within 3GPP networks, defined across multiple security specifications. It is a structured data object, typically encoded in PKCS#10 format, that an entity (such as a network function, user equipment, or application server) generates and submits to a trusted Certificate Authority (CA) to obtain a digital certificate. The CSR contains several essential fields: the subject's distinguished name (DN) identifying the entity (e.g., Common Name, Organization, Country), the entity's public key (usually RSA or ECC), and optional attributes or extensions specifying key usage, extended key usage, or subject alternative names. The entity also signs the CSR with its corresponding private key, providing proof of possession of that private key to the CA.
The CSR generation process begins when an entity creates a public-private key pair. The entity then assembles the CSR data structure, including its identity information and public key, and computes a cryptographic hash (e.g., SHA-256) over this data. This hash is encrypted with the entity's private key to create a digital signature, which is appended to the CSR. This signature allows the CA to verify that the requester indeed controls the private key corresponding to the submitted public key, preventing impersonation attacks. The CSR is transmitted to the CA via a secure enrollment protocol, such as the Certificate Management Protocol (CMP) or Simple Certificate Enrollment Protocol (SCEP), often over TLS-protected connections.
Upon receiving the CSR, the CA performs validation checks, including verifying the CSR's signature, authenticating the requester's identity through out-of-band means or existing credentials, and ensuring the request complies with the CA's certificate policy. If validation succeeds, the CA issues a digital certificate by signing a new data structure containing the requester's public key and identity information with the CA's private key. This certificate binds the public key to the identity, creating a trusted credential that other entities can verify using the CA's public key. In 3GPP architectures, CSRs are used for provisioning certificates to network functions in Service-Based Architectures (SBA), enabling mutual TLS authentication between NF instances, as well as for device certificates in IoT scenarios and user equipment authentication.
The role of CSR in 3GPP security is multifaceted. It enables automated certificate lifecycle management, supporting scalable deployment of certificates across massive numbers of network elements and devices. In 5G core networks, CSRs are integral to the security credential management system for network function authentication, ensuring secure service-based interfaces. The specifications detail CSR formats, processing requirements, and integration with certificate enrollment protocols to maintain interoperability across vendors and operators. Proper CSR handling is essential for maintaining the chain of trust, preventing unauthorized certificate issuance, and ensuring the overall integrity of the network's authentication framework.
Purpose & Motivation
The Certificate Signing Request exists to provide a standardized, secure mechanism for entities to request digital certificates from trusted authorities within 3GPP networks. It solves the fundamental problem of securely binding public keys to identities in a scalable, automated manner, which is essential for authentication, confidentiality, and integrity in modern telecommunications systems. Without CSRs, certificate provisioning would require manual processes prone to errors, inconsistencies, and security vulnerabilities, making large-scale deployment impractical.
Historically, earlier mobile network generations relied on simpler, pre-shared key systems or proprietary authentication methods that lacked the flexibility and scalability required for 5G's dynamic, service-based architecture. The shift to cloud-native, software-defined networks with numerous interconnected network functions created a need for automated, certificate-based mutual authentication. CSR provides the foundational request mechanism that enables this automation, allowing network functions, devices, and applications to obtain credentials without manual intervention. This addresses limitations of previous approaches that couldn't support the rapid scaling, zero-touch provisioning, and dynamic trust relationships required in 5G and beyond.
The creation of CSR specifications within 3GPP was motivated by the need for interoperable security across multi-vendor deployments and the requirement to integrate with existing PKI ecosystems. By standardizing CSR formats and processing, 3GPP ensures that different network elements from various manufacturers can securely obtain certificates from operator or third-party CAs, maintaining consistent security policies across the network. This enables features like secure service-based interfaces, IoT device authentication, and network slicing security, where different slices may require distinct certificate authorities and trust models.
Key Features
- Standardized PKCS#10 format for interoperability across vendors and systems
- Includes subject identity information and public key for certificate binding
- Digitally signed by requester to prove private key possession
- Supports extensions for key usage policies and subject alternative names
- Enables automated certificate enrollment via protocols like CMP and SCEP
- Integrates with 3GPP security architecture for network function authentication
Evolution Across Releases
Introduced CSR as a fundamental component for certificate management in 5G Service-Based Architecture. Defined CSR requirements for Network Function authentication, enabling mutual TLS between NF instances. Established integration with certificate enrollment protocols for automated credential provisioning in cloud-native deployments.
Defining Specifications
| Specification | Title |
|---|---|
| TS 33.107 | 3GPP TR 33.107 |
| TS 33.127 | 3GPP TR 33.127 |
| TS 33.794 | 3GPP TR 33.794 |
| TS 33.876 | 3GPP TR 33.876 |