Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Selective Disclosure Test Vectors #38

Merged
merged 8 commits into from
Sep 28, 2023
Merged

Conversation

Wind4Greg
Copy link
Collaborator

@Wind4Greg Wind4Greg commented Sep 7, 2023

This non-normative PR provides an initial set of selective disclosure test vectors along with commentary on the procedures used to generate them. These vectors demonstrate the following key features of ECDSA-SD:

  1. Mandatory Disclosure
  2. Selective Disclosure combined with mandatory disclosure
  3. Overlap between mandatory disclosure and selective disclosure within an object
  4. Selective/Mandatory disclosure of multiple elements in an array

Note that there are different procedures (sets of test vectors) for the issuer (creating a base proof) and the holder (creating a derived proof). Some of the procedures/descriptions are in different orders or presented in different way than the algorithms in the specification for clarity purposes.


Preview | Diff

@Wind4Greg
Copy link
Collaborator Author

Note that the code used to generate the test vectors can be found at: https://github.com/Wind4Greg/ECDSA-SD-TestVectors

@Wind4Greg
Copy link
Collaborator Author

Note: Preview doesn't properly pull in separate test vector files into HTML document.

Copy link
Contributor

@dlongley dlongley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! These test vectors will be very helpful.

TestVectors/ecdsa-sd-2023/SDKeyMaterial.json Outdated Show resolved Hide resolved
Non-normative re-grouping and renaming of key parameters used in test vector.

Co-authored-by: Dave Longley <dlongley@digitalbazaar.com>
},
"proofKeyPair": {
"publicKeyMultibase": "zDnaeTHfhmSaQKBc7CmdL3K7oYg3D6SC7yowe2eBeVd2DH32r",
"privateKeyMultibase": "z42tqvNGyzyXRzotAYn43UhcFtzDUVdxJ7461fwrfhBPLmfY"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, and "secretKeyMultibase" is the terminology here, not private key.

Non-normative change to rename privateKeyMultibase to secretKeyMultibase in line with recent agreements.

Co-authored-by: Dave Longley <dlongley@digitalbazaar.com>
@msporny
Copy link
Member

msporny commented Sep 28, 2023

Editorial, multiple reviews, changes requested and made, no objections, merging.

@msporny msporny merged commit 2095117 into w3c:main Sep 28, 2023
2 checks passed
@Wind4Greg Wind4Greg deleted the sd-test-vectors branch October 2, 2023 13:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants