Commit 353bbe61 authored by esou's avatar esou
Browse files

Updated clause 4.0 to 4.5 to matches Scott's proposal

parent e62fd64f
Loading
Loading
Loading
Loading
+82 −142
Original line number Diff line number Diff line
@@ -393,190 +393,130 @@ The reasonably foreseeable use of the product is to support certification servic

A single box PKI solution wherein one or more of the examples above are deployed in a single device and interfacing to other client devices within a closed environment.

## 4.2 Product Functions
## 4.1 Product Functions

Products with digital elements used as part of a public key cryptography scheme to manage asymmetric cryptographic keys and digital certificates, including their creation, issuance, distribution, validation, renewal, storage or revocation, support the functions outlined in this clause.

- **F.PublicPrivateKeyPair_generation**: generates the public-private key pair;
>   - NOTE 1:	This function may be specialised to address use cases for generation using a Secure Cryptographic Device (SCD) or without use of an SCD.

- **F.SubjectCertificate_signatureCreation**: creates and signs subject certificates using the product's private key
>   - NOTE 2:	The policy frameworks of eIDAS and C-ITS identify the use of protection profiles in support of signature creation. In particular the European commission's eIDAS Dashboard [https://eidas.ec.europa.eu/efda/home ] identifies a list of Qualified Signature/Seal Creation Devices and Secure Signature Creation Devices [https://eidas.ec.europa.eu/efda/browse/notification/qscd-sscd]. For C-ITS the Security and Certificate policy documents [[i.11](#_ref_i_11)],[[i.12](#_ref_i_12)] identify specific Protection Profiles as identified in references [**TBD**] and [**TBD**].
Products with digital elements used as part of a public key cryptography scheme to manage asymmetric cryptographic keys and digital certificates, including their creation, issuance, distribution, validation, renewal, storage or revocation, support the functions outlined in this clause.

 - **F.CertificateDissemination**: distributes signed certificates to subscribers;
 - **F.PKC storage management**: Stores received PKCs and makes them available to relying parties.
 - **F.SignedArtefactDissemination**: distributes signed artefacts to subscribers
 - **F.Revocation management**: processes revocation reports (e.g. CRLs) to determine the status of PKCs; and may provide updates to the certificate status service (e.g. if the private key is withdrawn and the product invalidates its public key).
 - **F.Certificate status**: maintains certificate status information (e.g. active, expired, revoked).
 - **F.Logging of security events**: Logging of events as per the configuration enabled by F.Log management
 - **F.Log management**: Configuration of audit events to be stored and their associated format. Search or erasure capabilities associated to stored audit events.

## 4.3 Product Architecture
- **F.PublicPrivateKeyPair_generation**: Generates a public-private key pair.
>   - **NOTE 1**: This function may be specialized to address use cases for generation using a Secure Cryptographic Device (SCD) or without using an SCD.
- **F.SCD_Based_KeyPair_generation**: Request the generation of a public-private key pair from an external SCD.
- **F.None_SCD_Based_KeyPair_generation**: Generate a public-private key pair.
- **F.SCD_Based_KeyManagement**: Request key suppression, export, or renewal from the SCD.
- **F.None_SCD_Based_KeyManagement**: Suppress, export, or renew software keys.
- **F.UserAccountManagement**: Create, modify, assign rights to, and modify the different user accounts.
- **F.PrivateKeyExport**: Private keys, secret keys, or critical data can be encrypted and then exported in the form of an encrypted file.
- **F.OfficerCertificateGenerationApproval**: Privileged users can approve and execute this issuance when certificates are issued.
- **F.CertificateProfileManagement**: Administration functions to define the format and default values of certificates to be signed.
- **F.PseudonymCertificateIssuance**: Issue pseudonym certificates derived from long-term certificates. These certificates shall not include user identification data.
- **F.SubjectCertificate_signatureCreation**: Creates and signs subject certificates using the product's private key.
>   - **NOTE 2**: The policy frameworks of eIDAS and C-ITS identify the use of protection profiles in support of signature creation. In particular, the European Commission's eIDAS Dashboard [https://eidas.ec.europa.eu/efda/home] identifies a list of Qualified Signature/Seal Creation Devices and Secure Signature Creation Devices [https://eidas.ec.europa.eu/efda/browse/notification/qscd-sscd]. For C-ITS, the Security and Certificate policy documents [[i.11](#_ref_i_11)], [[i.12](#_ref_i_12)] identify specific Protection Profiles as identified in references [**TBD**] and [**TBD**].
- **F.CertificateDissemination**: Distributes signed certificates to subscribers.
- **F.Certificate_status**: Maintains certificate status information (e.g., active, expired, revoked).
- **F.PKC_storage_management**: Stores received PKCs and makes them available to relying parties.
- **F.SignedArtefactDissemination**: Distributes signed artefacts to subscribers.
- **F.Revocation_management**: Processes revocation reports (e.g., CRLs) to determine the status of PKCs and may provide updates to the certificate status service (e.g., if the private key is withdrawn and the product invalidates its public key).
- **F.AuditEventManagement**: Configuration of audit events to be stored and their associated format. Includes search or erasure capabilities for stored audit events.
- **F.Logging_of_security_events**: Logs events as per the configuration enabled by F.Log_management.
- **F.Log_management**: Configuration of audit events to be stored and their associated format. Includes search or erasure capabilities for stored audit events.
- **F.Network_Configuration**: Set up network addresses and protocols for the different product network interfaces (management, certificate generation/revocation/status requests, etc.).

## 4.2 Product Architecture

The product contains the following elements:
 - Private key store
 - Public Key Certificate store
 - Access Control layer
 - Access Control policy element
 - Signature creation entity
 - Signature verification entity

In addition the elements can be configured in multiple ways:

 - **ARC.Monolithic**: All components are integrated and run on a single machine or platform.
 - **ARC.Distributed**:  Functions are split across multiple machines or services, often communicating over a network.

![Figure 4.3-1: Indicative product architecture](media/indicative_architecture.png)

<!-- ## 4.1 Intended purpose of use

The present clause describes product contexts for products with digital elements used as part of a public key infrastructure (PKI) that manage the validation, creation, issuance, distribution, status publication, renewal or revocation of digital certificates, or the generation, storage, escrow, exchange, destruction or rotation of cryptographic keys associated with such digital certificates.
<!-- Add definition of below elements -->

### 4.2 Main functionalities

Products with digital elements used as part of a public key cryptography scheme to manage asymmetric cryptographic keys and digital certificates, including their creation, issuance, distribution, validation, renewal, storage or revocation. This category includes but is not limited to key management systems, digital certificate management systems and online certificate status protocol responders
Here are the definitions for the requested PKI-related terms:

- **Private Key Store**:
   - A secure storage location where private keys are kept. It ensures that private keys are protected from unauthorized access and tampering. Private keys are used for decryption and digital signature creation.
   - Source: RFC 7519 (JSON Web Token), RFC 5208 (Public-Key Infrastructure Using X.509 (PKIX) Certificates)

- **Public Key Certificate Store**:
   - A repository that holds public key certificates. These certificates bind public keys to entities (such as users, devices, or services) and are used for verifying digital signatures and encrypting data.
   - Source: RFC 5280 (Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile)

PKI products support one or more of the following component services (see ETSI EN 319 411-1  [\[7\]](#_ref_7):
- **Access Control Layer**:
   - A component of a system that enforces access control policies, determining who or what can view or use resources in a computing environment. It acts as a gatekeeper, verifying credentials and permissions before granting access.
   - Source: NIST SP 800-162 (Guide to Attribute Based Access Control (ABAC))

-	**F.Registration service:** registers and receives certificate requests from subscribers; verifies the identity and, if applicable, attributes of a subject; and passes verified certificate requests to the certificate generation service.
- **Access Control Policy Element**:
   - A rule or set of rules that define the conditions under which access to a resource is granted or denied. These policies specify who can access what, under what conditions, and with what permissions.
   - Source: NIST SP 800-162 (Guide to Attribute Based Access Control (ABAC))

> NOTE 1: This service includes proof of possession of, or control over, subject private keys when these are not generated by the certificate generation service.
- **Signature Creation Entity**:
   - An entity (such as a person or software) that creates digital signatures using a private key. This entity signs data to ensure its authenticity and integrity.
   - Source: ETSI TS 119 495 (C-ITS Security; Trusted Security Entities)

> NOTE 2: If subject private keys are generated and stored by the certificate generation service to allow key recovery, this service receives and verifies key recovery requests from subscribers.
- **Signature Verification Entity**:
   - An entity (such as a person or software) that verifies digital signatures using the corresponding public key. This entity checks the signature to confirm that the data has not been altered and that the signer is authentic.
   - Source: ETSI TS 119 495 (C-ITS Security; Trusted Security Entities)

- **F.Certificate generation service:** generates and manages the CA keys; creates and signs subject certificates based on the identity and other attributes verified by the registration service; and passes the signed subject certificates to the dissemination service.

> NOTE 3: This service can use a secure cryptographic device to generate, store and use the CA keys.

> NOTE 4: This service can include generation of subject keys and, if used for decryption, storage of subject private keys to allow key recovery.

-	**F.Dissemination service:** distributes signed certificates to subscribers; and, if applicable, stores and makes them available to relying parties.

> NOTE 5: This service can also distribute subject private keys to subscribers if the subject keys are generated by the certificate generation service.

-	**F.Revocation management service:** processes revocation requests and reports to determine the necessary action to be taken; and provides updates to the certificate status service.

-	**F.Certificate status service:** provides certificate validity and revocation status information to relying parties.

Each component service should ensure that configuration and maintenance is only performed by system administrators.

PKI products also usually support:
- **F.Logging of security events:** for example, account access attempts, product  configuration changes, and system warnings or errors.

They should typically support some logging of events relevant to each of the component service it provides. For example:

- Registration service events such as certificate requests and approvals.

- Certificate generation service events such as subject key generation and certificate signing operations.

PKI products also support:
- **F.User accounts management:**

  - **System administrator account:** authorised to install, configure and update the product.

  - **System operator account:** authorised to operate the PKI services.

## 4.3 Architecture
In addition the elements can be configured in multiple ways:

 - **ARC.Monolithic**: All components are integrated and run on a single machine or platform.
 - **ARC.Distributed**:  Functions are split across multiple machines or services, often communicating over a network.

Figure 4.3 gives a high-level overview of a generic and illustrative PKI architecture.
![Figure 4.3-1: Indicative product architecture](media/indicative_architecture.png)

![Figure 4.3-1: PKI diagram](media/PKI-diagram.png)

**Figure 4.3-1: PKI diagram** -->
## 4.3 Operational Environment

### 4.3.1	General description

## 4.4 Operational Environment
The physical environment of the product may include ...

<mark>Editor's note == Add in any abstracted constraints from ESI (eIDAS) and ITS and refer to the policy establishing the operational environment.</mark>

The enterprise should have a production system for issuing certificates and should have a separate test system for checking configuration changes and software updates before they are deployed.
For the physical operational environment, the following environments are addressed for the Main Products.
- fully controlled physical operational environment - **POE.FullyControlled**
- partially controlled physical operational environment - **POE.PartiallyControlled**
- mobile operational environment - **POE.Mobile**
- controlled mobile operational environment - **POE.MobileControlled**

The PKI software should be deployed on servers within the enterprise's server rooms or data centre, or on a platform hosted by the enterprise's cloud service provider.
For the physical operational environment, the following environments are addressed for the mobile application RDPS:
- fully controlled physical operational environment - **POE.FullyControlled**
- partially controlled physical operational environment - **POE.PartiallyControlled**
- mobile operational environment - **POE.Mobile**

> NOTE 1:	PKI-as-a-service and software-as-a-service are out of scope of the present document. #(GDC) This has already been said in the Scope section; no need to repeat.
For the physical operation environment, the following environments are addressed for cloud service (RDPSs):
- fully controlled physical operational environment - **POE.FullyControlled.**

If the certificate generation service in the production system uses a secure cryptographic device to manage the CA keys, this can be a physical device located in the enterprise's data centre or a virtual device hosted by the enterprise's cloud service provider.
Logical environments include the connected systems around the main product that shape how it operates in its environment. The trusted boundary is affected by potential third party software that runs on the product, data links to the outside world using radio interfaces, and user permissions and access control.
For the logical operation environment, the following digital communication types are addressed for any architectural component of the product.
- public communication - **COM.Public**
- adjacent communication - **COM.Adjacent**
- local communication - **COM.Local**
- strict local communication - **COM.StrictLocal**

> NOTE 2:	Security requirements for secure cryptographic devices are out of scope of the present document.

### 4.4.1	Physical security
### 4.3.2 Physical/Hardware environment

An enterprise server room or data centre should have some physical access controls.

A cloud service provider should have strong physical security measures in place, but the servers hosting the PKI software should not be physically separated from other infrastructure.

### 4.4.2	Network security

The enterprise should implement security controls such as firewalls on the edge of their network.

The enterprise should implement internal network access controls that limit access to systems hosting the PKI software to authorised users.

The enterprise should deploy malware detection and removal software on their systems.

### 4.4.3 Users competences

The enterprise should employ competent system administrators to install, configure and manage the software.

However, system operators might have limited experience running critical component services and might have only received basic training in cybersecurity or data protection.


## 4.5 Distribution of security functions


## 4.6 Users

### 4.3.3 Logical/Software environment

PKI products users' roles and responsibilities can be:
### 4.3.4 Connectivity aspects

**PKI Administrator**
- **Role:** Authorized to **install, configure, and maintain the PKI produt**, ensuring its proper operation and security.
- **Responsibilities:**
  - Establish and manage **user accounts and access controls**.
  - Set up and maintain **audit and logging configurations**.
  - Generate and manage **cryptographic keys and components** (e.g., CA keys, HSM keys).
  - Ensure compliance with **organizational policies and regulatory requirements**.
  - Troubleshoot and resolve **technical issues** related to the PKI infrastructure.
## 4.4 Distribution of Security Functions

**PKI Operator**
- **Role:** Authorized to **perform operational tasks** to ensure the availability and integrity of the PKI system.
- **Responsibilities:**
  - Execute **system backups and recovery procedures** to prevent data loss.
  - Monitor **PKI system health and performance**.
  - Manage **routine operational tasks**, such as certificate issuance workflows.
  - Ensure **high availability** of PKI services.
  - Assist in **disaster recovery and contingency planning**.
## 4.5 Users

**PKI Officer (or Registration Authority Officer)**
- **Role:** Authorized to **manage certificate lifecycle operations**, including approvals and revocations.
- **Responsibilities:**
  - Configure **PKI profiles, policies, and security parameters**.
  - Review and **approve or reject certificate requests** based on policy compliance.
  - Initiate and manage **certificate revocation** (e.g., due to compromise, expiration, or policy violations).
  - Verify the **identity and authenticity** of certificate applicants.
  - Ensure that **certificate issuance and revocation processes** align with organizational policies.
  - Collaborate with the **PKI Administrator** to maintain the integrity of the PKI system.

**PKI Auditor**
- **Role:** Authorized to **monitor and review PKI operations** to ensure compliance and security.
- **Responsibilities:**
  - Access and **review audit logs** to detect anomalies or policy violations.
  - Verify that **PKI operations** comply with organizational policies and regulatory standards.
  - Generate **audit reports** for internal or external review.
  - Identify and report **potential security risks or non-compliance issues**.
  - Ensure **transparency and accountability** in PKI operations.
The product contains a number of assets that need privileged access to use. The following user classes are identified from consideration of the least privilege paradigm to the product assets as identified in the product architecture of clause [4.2](#42-product-architecture).

**PKI End User**
- **Role:** Individuals or systems that **request certificates** or **check certificate status** for authentication, encryption, or digital signing purposes.
- **Responsibilities:**
  - Submit **certificate signing requests (CSRs)** to the PKI system.
  - Provide **accurate identification information** as required by the PKI policy.
  - Verify the **status of certificates** (e.g., validity, revocation status) using protocols like OCSP (Online Certificate Status Protocol) or CRLs (Certificate Revocation Lists).
  - Use **issued certificates** in compliance with organizational policies and security best practices.
  - Report **lost, compromised, or suspicious certificates** to the PKI Officer or Administrator.
  - Follow **certificate renewal procedures** to maintain uninterrupted access to secure services.
- **U.ProductAdministrator**: Install, configure, and maintain the product, ensuring its proper operation and security.
- **U.ProductOperator**: Performs operational tasks to ensure the availability and integrity of the product and data, e.g. execute system backups and recovery procedures to prevent data loss, monitor product health and performance, manage routine operational tasks, such as certificate issuance workflows.

- **U.Officer (or Registration Authority Officer)**: Manage certificate life-cycle operations, including approvals and revocations e.g. Configure profiles, policies, and security parameters, review and approve or reject certificate requests based on policy compliance, initiate and manage certificate revocation (e.g., due to compromise, expiration, or policy violations), verify the identity and authenticity of certificate applicants, ensure that certificate issuance and revocation processes align with organizational policies.
- **U.Auditor**: Authorized to monitor and review product operations logs to ensure compliance and security.
- **U.End_User**: Individuals or systems that request certificates or check certificate status for authentication, encryption, or digital signing purposes.

## 4.7 Use cases