decentralized-identity / decentralized-identity/did-dht

Explore the potential for using threshold signatures with the Identity Key

Open
#101 0 comments 0 reactions 0 assignees View on GitHub
did-dht-2.0 discuss hacktoberfest large specification
Dominant language
Go
Stars
42
Forks
16
PR merge metrics
No merged PRs in 30d

Description

I was considering recovery options, particularly for organizations with stringent requirements. One experimental idea to explore is the use of Schnorr threshold signatures for the identity key.

This approach is not as commonly adopted for Ed25519/Ed448 compared to NIST and SECG elliptic curve algorithms. However, there is some research and development in this area. For instance, [this IETF draft](https://www.ietf.org/archive/id/draft-hallambaker-threshold-sigs-00.html) & [reference implementation](https://datatracker.ietf.org/doc/html/draft-hallambaker-mesh-developer-09) by Hallam-Baker on threshold signatures and a [detailed explanation of threshold Ed25519](https://medium.com/asecuritysite-when-bob-met-alice/threshold-ed25519-its-just-magical-and-fit-for-a-more-resilient-and-trusted-world-5431e124942) in the context of resilience and trust offer valuable insights.

A quick and non-exhaustive search revealed several implementations of Schnorr signatures on the Ed25519 curve for both single and threshold numbers of signers (FROST):
- [Go](https://github.com/taurusgroup/frost-ed25519)
- [Rust](https://docs.rs/frost-ed25519/latest/frost_ed25519/)
- [Rust](https://github.com/ZcashFoundation/frost)

Implementing Schnorr threshold signatures could enhance the security and recovery capabilities of DID DHT identities, aligning with the needs of organizations requiring higher levels of identity assurance and recovery options. In theory, it shouldn't require any spec changes since AFAIK, Schnorr threshold signatures can compatible with [RFC8032](https://datatracker.ietf.org/doc/html/rfc8032) signature verification.

Time permitting, we should explore the potential more thoroughly.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.