Project: Update DIDs for secp256k1 as per BIP39
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 15/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- c, javascript, rust
- Ambito
- blockchain, cryptography, security
Direzione di ricerca
Inizia restringendo il progetto a uno dei filoni di lavoro elencati, quindi leggi i materiali collegati su did:key, multibase, SchnorrSecp256k1Signature2019 e BTCR v0 resources.md. L’issue menziona codice JavaScript di riferimento, vettori di test, specifiche ed esempi, ma non identifica file o test del repository. Definisci un unico deliverable e i relativi criteri di accettazione prima di iniziare.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
This would be a good group project for interns interested in internal standards and self-sovereign identity, and with different skills (writing specs, testing, coding javascript, coding C or rust, writing documentation, etc.)
Few of the emerging W3C DID (Decentralized Identifier) methods are using secp256k1 (the curve that bitcoin uses). In addition, none of that I know are actively implementing Schnorr signatures for k1, and even those in spec-only form are not making some of the choices that BIP40 made, or leverage Schnorr in sufficiently security reviewed libsecp256k1 library. Finally, no one in implementing DIDs currently are leveraging the multisig opportunities Schnorr, including musig2, FROST, adapter signatures, blinded signatures, etc.
In particular:
- Write up use cases for what secp256k1 can offer leveraging k1 multisig to DIDs and Verifiable Credentials.
- Suggest changes and test vectors for existing
did:keymethod to support k1 and Schnorr. - Write reference code in javascript and other languages to transorm BIP340 keys into multibase & back, and register those with next update to the IETF internet-draft.
- Update DIF (Decentralized Identity Foundation) JSON-LD SchnorrSecp256k1Signature2019https://github.com/decentralized-identity/SchnorrSecp256k1Signature2019) spec for BIP340 differences, and update test vectors.
- Update reference javascript library for JSON-LD SchnorrSecp256k1Signature2019 and investigate other implementations.
- Investigate JWT support of k1 Schnorr rather than ECDSA. Possibly submit IETF internet-draft or PR to JWT group to add k1 Schnorr.
- Work toward a CBOR-LD version of SchnorrSecp256k1Signature2019
- Create example DID objects and Verifiable Credentials leveraging SchnorrSecp256k1Signature2019
- Investigate Ristretto255 versions of the above.
- Present these at W3C CCG (Credentials Community Group) and DIF.
Related to this is beginning to be able to did:btcr 2.0 someday, see:
- List of BTCR v0 resources
- Podcast: The Granddaddy of DIDs: BTCR
Potential mentors include: @kimdhamilton @csuwildcat @jandrieu @rxgrant
- Lingua principale
- Nessun dato sulla lingua
- Stelle
- 68
- Fork
- 7
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di BlockchainCommons/Community
-
deliverable: services deliverable: website
BlockchainCommons/Community#199 · 3 assegnatari ·
-
Update Esplora Apertadeliverable: services
BlockchainCommons/Community#194 · 1 assegnatario ·
-
deliverable: services
BlockchainCommons/Community#192 · 1 assegnatario ·
-
deliverable: docs
BlockchainCommons/Community#190 · 1 assegnatario ·
-
deliverable: website
BlockchainCommons/Community#181 · 1 assegnatario ·
Tutte le issue di BlockchainCommons/Community
Issue simili
-
blocklist removal
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
MetaMask/eth-phishing-detect#296544 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
stellar/js-stellar-sdk#1750 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
Uniswap/default-token-list#2589 ·
-
add-new-address Backend New Network
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
safe-global/safe-eth-py#2761 ·