Bootstrap project, add protocol

This commit is contained in:
Jon Staab
2026-06-08 09:30:44 -07:00
parent 0bd28e16ac
commit f3945c2ea2
13 changed files with 2775 additions and 20 deletions
+2 -20
View File
@@ -16,29 +16,11 @@ Rotating membership is a special case of signing an event; this option opens a f
The sign event button opens a modal/drawer which asks the user to choose which event kind: public note (kind 1), relay selections (kind 10002), profile (kind 0).
Use solidjs/tailwind/preline and applesauce for nostr functionality. Use toast for error messages, not inline errors.
Use solidjs/tailwind/preline and applesauce for nostr functionality. Use `@noble/curves` for FROST cryptographic primitives (DKG, Feldman VSS, threshold signing) and `@noble/hashes` for hash functions. Use toast for error messages, not inline errors.
# Protocol
A quorum is a standard FROST multisig over a nostr key.
## Creating a quorum
When creating a quorum, the initiating user creates a `kind 7050` payload with the following fields:
- members: a list of quorum member hex nostr pubkeys
- threshold: proposed threshold for signing
- message: a message for all invitees
- events: a list of events to sign
- [key material]
This is wrapped and sent to all members using kind 1059 (NIP 59) with t=encrypt(quorum pubkey, recipient).
## Rotating keys
## Collaborative signing
When signing collaboratively, a round-robin-style FROST multisig signing round takes place in which the initiator sends a .
See [PROTOCOL.md](PROTOCOL.md) for the full protocol specification.
# Other details