Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Cosigner capabilities to the multisig #13

Open
tiero opened this issue Sep 17, 2018 · 2 comments
Open

Add Cosigner capabilities to the multisig #13

tiero opened this issue Sep 17, 2018 · 2 comments
Assignees

Comments

@tiero
Copy link
Member

tiero commented Sep 17, 2018

This change will need to modify the creation of multisig. At this stage, we need to provision spending limits and 2FA. It can be blocking.

This should refactor also the signing implementation to better separate domains.

When signing we need to decode the raw transaction and detect if m signatures provided (eg. 3 if it's a 3-of-5). If m-1 sigs provided we should check if also matching 2FA provided and satoshis to spent are less than the spending limit.

@lorenzodisidoro
Copy link

lorenzodisidoro commented Sep 19, 2018

Supposition
I should save for each wallets to identify them and save more information (eg spending limits). So I can authenticate/authorize wallet and generate an otp for 2fa when it to do operations

Solution could be
Save wallet in a boltDB's bucket, identified with the wallet name used into Vault.
Save spending limit and other info into wallet bucket

@tiero
Copy link
Member Author

tiero commented Sep 19, 2018

The spending limits and other infos are per-multisig. What you point is the creation of the wallet of the Vault instance used to get a key pair to be used in a multisig, so not correct to save that.

If we call each multisig p2sh address the wallet it's more useful to save the scriptSigHash or the set of public keys provided in order to accept and authorize a future request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants