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:
Initiator sends a unsigned Reshare/Resign message. The original message and its hash are stored by the operators in a map.
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)
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:
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)