Browse Source

frost-wallet-dev.md: add diagrams on DKG/FROST commands

add_frost
zebra-lucky 1 week ago
parent
commit
b0c3f5c1fd
  1. 22
      docs/frost-wallet-dev.md

22
docs/frost-wallet-dev.md

@ -83,7 +83,7 @@ https://github.com/BlockstreamResearch/bip-frost-dkg/, placed in the
`jmfrost/chilldkg_ref` package.
Uses channel level commands `dkginit`, `dkgpmsg1`, `dkgcmsg1`, `dkgpmsg2`,
`dkgcmsg2`, `dkgfinalized` added to `jmdaemon/protocol.py`.
`dkgcmsg2`, `dkgfinalized`, added to `jmdaemon/protocol.py`.
NOTE: `dkgfinalized` is used to ensure all DKG party saw `dkgcmsg2` and
saved DKG data to wallet/recovery data.
@ -103,7 +103,7 @@ https://github.com/siv2r/bip-frost-signing/, placed in the
`jmfrost/frost_ref` package.
Uses channel level commands `frostreq`, `frostack`, `frostinit`, `frostround1`,
`frostagg1`, `frostround2` added to `jmdaemon/protocol.py`.
`frostagg1`, `frostround2`, added to `jmdaemon/protocol.py`.
Commands in the `jmbase/commands.py`: `JMFROSTReq`, `JMFROSTAck`,
`JMFROSTInit`, `JMFROSTRound1`, `JMFROSTAgg1`, `JMFROSTRound2`,
@ -117,6 +117,15 @@ In the FROST sessions the party which need new signature is named Coordinator.
## Details on DKG message channel commands
| Coordinator | | Party |
| :---------:|:----:|:-------:|
|!dkginit (public)|>>>||
||<<<|!dkgpmsg1 (private unencrypted)|
|!dkgcmsg1 (private unencrypted)|>>>||
||<<<|!dkgpmsg2 (private unencrypted)|
|!dkgcmsg2 (private unencrypted)|>>>||
||<<<|!dkgfinalied (private unencrypted)|
**dkginit**: public broadcast command from coordinator to request DKG
exchange
@ -194,6 +203,15 @@ self.mcc.prepare_privmsg(nick, "dkgfinalized", msg)
## Details on FROST message channel commands
| Coordinator | | Party |
| :---------:|:----:|:-------:|
|!frostreq (public)|>>>||
||<<<|!frostack (private unencrypted)|
|!frostinit (private encrypted)|>>>||
||<<<|!frostround1 (private encrypted)|
|!frostagg1 (private encrypted)|>>>||
||<<<|!frostround2 (private encrypted)|
**frostreq**: public broadcast command from coordinator to request encrypted
FROST exchange

Loading…
Cancel
Save