- From: Andrea D'Intino <andrea@dyne.org>
- Date: Wed, 27 Mar 2024 19:39:30 +0100
- To: public-credentials@w3.org
- Cc: Jaromil <jaromil@dyne.org>, Puria 💣 Nafisi Azizi <puria@dyne.org>, Manu Sporny <msporny@digitalbazaar.com>
- Message-ID: <5a33fbca-9df3-4227-a18b-fee5deb52e21@dyne.org>
Hi everyone,
we are seeking feedback on a new CCG Work Item proposal regarding the
quantum-prooof signatures for Verifiable Credentials across devices and
websites. Please leave your support or concerns here:
https://github.com/w3c-ccg/community/issues/247
# New Work Item Proposal
The proposal is about defining a new specification to define the
associated Data Integrity cryptosuite that can be used to construct
digital signatures and proofs using quantum-proof (QP) signing
algorithms, starting with
[Dilithium](https://pq-crystals.org/dilithium/index.shtml).
The notable feature of this family of signature schemes is the
quantum-resistance, according to the [NIST competition
results](https://csrc.nist.gov/Projects/post-quantum-cryptography/selected-algorithms-2022).
Currently no QP signature offers zero-knowledge proof or unlinkability
features, so part of the task of the WG might involve combining QP
signatures with more privacy-enhancing signining algorithms (such as BBS
or ECDSA-SD).
We aim to initially focus on Dilithium2 (as apparently there is the only
signature scheme readily available) and progressively extend the specs
to accomodate more signature schemes.
## Include Link to Abstract or Draft
https://msporny.github.io/di-quantum-safe/#abstract
* Dilithium signature implementations (C language):
[pq-crystals](https://github.com/pq-crystals/dilithium.git),
[pq-clean](https://github.com/PQClean/PQClean)
* Zenroom implementation of the [Dilithium
signatures](https://dev.zenroom.org/#/pages/zencode-scenarios-qp?id=dilithium)
* Specification of _did:dyne_ W3C-DID method supporting [Dilithium
pubkey](https://dyne.org/W3C-DID/#dilithium2verificationkey)
* Curl POST to test W3C-VC-QP signing [API](https://pastebin.com/h1vWd8eP)
* Preliminary W3C-VC-QP proof structure:
```
"proof": {
"created":
"1710861739438", //epoch
"cryptosuite":
"experimental-dilithium2-2024", //proposed
cryptosuite name
"id": "H+4899Oefjch3wmRTfczR08jSNdJ+Jr67kadQO7/7uc=", //hash of
the W3C-VC
"proofPurpose": "assertionMethod",
"proofValue": "...Dilithium2signature...",
"type": "DataIntegrityProof",
"verificationMethod":
"did:dyne:..#dilithium_public_key" // Dilithium2 pubkey of the
issuer
}
```
## List Owners
> Identify 1 lead (person responsible for advancing the work item) and
at least 1 other owner. Ideally, include their github usernames
@andrea-dintino @msporny, @jaromil, @wip-abramson
## Work Item Questions
1. Explain what you are trying to do using no jargon or acronyms.
Draft a standard for a W3C-VC proof format, that supports Dilithium (and
potentially further QP algorithms) signatures
2. How is it done today, and what are the limits of the current practice?
First experiment of Dilithium signed W3C-VC formats.
4. What is new in your approach and why do you think it will be successful?
Building on top of extending w3C-VC cryptosuite standards, aiming to be
as little invasive and disruptive as possible.
5. How are you involving participants from multiple skill sets and
global locations in this work item? (Skill sets: technical, design,
product, marketing, anthropological, and UX. Global locations: the
Americas, APAC, Europe, Middle East.)
Initial participant group includes cryptographers and developers from
Dyne.org (Netherlands), DigitalBazaar (US) and Will Abramson (US)
6. What actions are you taking to make this work item accessible to a
non-technical audience?
While the topic is deeply technical, the specification should attempt to
provide a gentle introduction to the topic via a non-technical
introduction as well as non-technical use cases with imagery that is
accessible to the general population.
Cheers,
| Andrea D'Intino | +45 21 62 79 18 | Project Manager
|https://Dyne.org think &do tank | software to empower communities
| ⚷ crypto κρυπτο крипто गुप्त् 加密הצפנה المشفره
Received on Wednesday, 27 March 2024 18:39:40 UTC