openid / openid/OpenID4VCI

Introduce Proven Key term

Open
#645 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
No language data
Stars
125
Forks
41
PR merge metrics
No merged PRs in 30d

Description

I propose introducing a new term, Proven Key, and using it throughout the text. It would be defined as follows:

Cryptographic public key referenced to or contained within a proof (see (#proof-types)) in the Credential Request. A Proven Key is bound to a Credential.

The current text refers to the public keys within proof(s) in quite ambiguous and sometimes in incorrect ways. Having a defined term would clarify which key or cryptographic key material is specifically meant in each case.

One example of an incorrect statement, I believe, is the following definition of the batch_size parameter:

Integer value specifying the maximum array size for the proofs parameter in a Credential Request.

This definition seems to presume that one proof = one key bound to one credential. I think this presumption is invalid because one attestation-type proof and one jwt-type proof with an embedded key attestation can contain many keys and thus the presumption one proof can equal multiple keys bound to multiple credentials seems to be more correct. As a credential issuer, I want to communicate to the wallet the maximum number of credentials I am willing to issue in one go. To issue multiple credentials I need a certain number of distinct public keys; I am not interested in the number of proofs, per se, but the number of distinct public keys I get within or referenced by those proofs. To fix the problem in the definition of batch_size I propose the following Proven Key-based reformulation:

Integer value specifying the maximum number of Proven Keys in the proofs parameter in a Credential Request.

The pull request https://github.com/openid/OpenID4VCI/pull/640 is a proposal that contains the above two definitions as well as other reformulations to the text in order to fix the aforementioned ambiguity regarding the public keys within proof(s).

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the proposed Proven Key definition and the batch_size wording in this issue, then review pull request #640 for the related reformulations. Done means the term is defined and the relevant references to public keys and proof contents consistently use the agreed terminology.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.