ssvlabs / ssv-dkg

GNU General Public License v3.0
13 stars 10 forks source link

Add Support for Multisig Wallets #120

Closed alan-ssvlabs closed 1 month ago

alan-ssvlabs commented 2 months ago

Solves issue #118

To support Gnosis multisig wallet, this PR modifies the workflow of reshare and resign. Before this PR, an initiator starts a reshare/resign by sending a signedReshare/signedResign message. This PR breaks this process into two stages:

  1. Initiator sends a unsigned Reshare/Resign message. The original message and its hash are stored by the operators in a map.
  2. Initiator send signature(s) of the message hash. Operators starts Reshare/Resign upon successful signature(s) verification.

In the case of multisig users, this allows the users collect signatures for the Reshare/Resign message from external processes and submit to the operators later.

We support signature verification for multisig wallets that follows standard EIP-1271 signature verification process (Gnosis Safe is tested to work successfully)