Internet-Draft SD-CWT PKSP March 2025
Wang, et al. Expires 3 September 2025 [Page]
Workgroup:
Secure Patterns for Internet CrEdentials
Internet-Draft:
draft-wang-spice-public-key-service-provider-00
Published:
Intended Status:
Standards Track
Expires:
Authors:
D. Wang
Huawei
F. Liu
Huawei
L. Li
Huawei

A Public Key Service Provider for Verification in Multiple Issuers and Verifiers

Abstract

SPICE provides a selective disclosure mechanism of credentials from issuer. However, future network services may be built on the trust between multiple entities. Obtaining the public key of multiple issuers for a verifer from potential multiple sources can be complex. In this contribution, an optional public key service is proposed in SPICE architecture for the issue of obtaining the public keys of the issuers from multiple trusted entities. The basic function of public key service is proposed including public key registration, token verification, and a potential implementation such as the distributed ledger. We hope that the proposed contribution can be used as infomative for SPICE regarding to the token validation procedure.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 3 September 2025.

Table of Contents

1. Introduction

With the development of Web3.0, the future society and network will become more people-oriented and facilitate more cross-field collaboration. In this context, there will be a greater need for the establishment of cross-field trust, which means a credential issued by one issuer may be verified by multiple verifiers. Or a verifier may need to verify credentials issued by multiple issuers. As a result, it requires trust be established between each pair of issuers and verifiers before the verification. For example, in the express-telecom integration scenario, a courier with an express company-issued staff credential makes calls via the telecom operator's network. To help the recipient confirm the caller's identity and avoid rejecting it as a nuisance call, the courier submits the credential to the telecom operator, which then verifies it. Only after successful verification will the call display show it's a legitimate courier call. In this scenario, for telecom operators, they need to be able to verify the credentials of multiple express delivery companies. Conversely, for express delivery companies, their credentials need to be verifiable by multiple operators. Furthermore, as more participants join, such as express goods manufacturers, the verification relationships will become more complex. Express delivery companies then need to build equally complex trust relationships with them, and so on.

Therefore, the future trust establishing is no longer a simple one-to-one or one-to-many relationship. Instead, it forms a complex network of trust relationships. During the verification, the verifiers need to obtain the isser's public key to verify the token such as RFC 9207[RFC9207] and RFC 9449 [RFC9449] , or the selective disclosed token such as SD-CWT([draft-ietf-spice-sd-cwt-02]) . But future complex verification relationship makes the obtaining of issuer public keys more difficult than ever before. Different issuers may adopt different public key disclosure mechanisms. This requires verifiers to have the ability to get the public key one by one, also deal with the security risks during the transmission and storage. Otherwise, it may lead to errors in credential verification and trigger business risks.

Based on the above requirements, this document presents a new entity called Public-Key-Service-Provider(PSKP) for public key issues in SD-CWT verification to provide public key registration, and querying. To ensure its efficient, stable, and secure operation, the PSKP has these features: distributed deployment to prevent single-point failure, non-tamperability for data integrity, and consensus-based data writing for consistency.

2. Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119].

3. Architecture Overview

As shown in Figure 1, PKSP plays a crucial role in the public key registration and verification process. As a public public key service platform, PKSP accepts public key registration from issuers, stores the registered public keys securely and in a non-tamperable manner. When a verifier queries for a key, it provides the corresponding public key. Besides, with the transformation of participants' roles, for example, participant A holds a credential issued by Participant B and also acts as an issuer to issue a credential to Participant C. In this case, A can also register its public key on the platform as an issuer.

  +--------+                            +---------+
  |        |  (2)Token issuance         |         |
  | Holder |<-------------------------- | Issuer  |
  |        |                            |         |
  +--------+                            +---------+
       |                                     |
       |                                     |
       |(3)Token display                     | (1)Public Key Registration
       |                                     |
       |   +-----------------------------+   |
       |   | Public-Key-Service-Provider |<--+
       |   +-----------------------------+
       |                ^
       |                |(4)Public key query and token verification
       |                |
       |           +----------+
       |           |          |
       +---------->| Verifier |
                   |          |
                   +----------+


               Figure 1 System architecture of a Public-Key-Service-Provider

As for the implementation technology of PKSP, distributed ledger technology strongly enables PKSP to meet these features. Decentralized storage spreads data across multiple nodes to prevent single-point failures. The tamper-proof data structure, formed by complex encryption, makes data modification extremely hard. Besides, the consistency maintenance based on multi - party consensus, such as the Practical Byzantine Fault Tolerance (PBFT) algorithm, ensures that multiple nodes conduct verification for public key operations in the PKSP. Only when most nodes approve are operations recorded, reducing the impact of malicious or wrong actions by individual nodes.

4. Functions of Public Key Service

4.1. Public Key Registration

It enables legitimate issuers to register their public key information into the public key service. During the registration process, identity verification is usually carried out to ensure that only legitimate entities can add public keys. The service conducts preliminary checks on the format and validity of the public key to ensure it meets the system requirements. In a distributed ledger, the function of public key registration can be implemented through smart contracts. The registration process between the issuer and the PKSP is as follows:

4.2. Token verification

When a verifier is performing SD-CWT verification, it can query the public key information of relevant issuers through the PKSP. It supports various query methods, such as precise queries based on the identity identifier of the entity, certificate number, etc., to quickly obtain the required public key.

The following steps shall be performed between verifiers and PKSP:

4.3. permissioned distributed ledger

As a distributed ledger-based service, the PKSP is well-served by choosing a permissioned ledger when considering efficiency and security. The permissioned ledger aligns with PKSP requirements in multiple ways:

4.4. distributed ledger infrastructure

In the context of modern digital infrastructure development, the establishment of a reliable PKSP ledger infrastructure is of utmost importance. As we delve into the options for constructing this critical infrastructure, operators stand out as highly suitable candidates. The distributed ledger of PKSP can be built either by Issuers with network infrastructure capabilities or based on the existing 5G communication network infrastructure, mainly due to the following key factors:

5. IANA Considerations

This document has no IANA considerations.

6. Security Consideration

TODO

7. References

7.1. Normative Reference

[GS_PDL_024]
PDL, E., "Architecture enhancements for PDL service provisioning in telecom networks", , <https://portal.etsi.org/webapp/WorkProgram/Report_WorkItem.asp?WKI_ID=68066>.
[RFC2119]
Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, , <https://www.rfc-editor.org/rfc/rfc2119>.
[RFC9207]
Meyer zu Selhausen, K. and D. Fett, "OAuth 2.0 Demonstrating Proof of Possession (DPoP)", RFC 9207, DOI 10.17487/9207, , <https://www.rfc-editor.org/info/rfc9207>.
[RFC9449]
Fett, D., Campbell, B., Bradley, J., Lodderstedt, T., Jones, M., and D. Waite, "OAuth 2.0 Demonstrating Proof of Possession (DPoP)", RFC 9449, DOI 10.17487/9449, , <https://www.rfc-editor.org/info/rfc9449>.

7.2. Informative References

[draft-ietf-spice-sd-cwt-02]
Prorock, M., Campbell, O., Steele, H., and R. Mahy, "SPICE SD-CWT", , <https://datatracker.ietf.org/doc/draft-ietf-spice-sd-cwt/>.
[draft-ietf-spice-use-cases-00]
Prorock, M. and B. Zundel, "Use Cases for SPICE", , <https://datatracker.ietf.org/doc/draft-ietf-spice-use-cases/>.

Acknowledgments

TODO

Authors' Addresses

Donghui Wang
Huawei
Faye Liu
Huawei
Lun Li
Huawei