2

If someone were to observe the exchange of MultisigV1 strings during multisig wallet creation, can they use these to discover the public address or secret view key of the multisig wallet?

If so, how?

2

I'll reference part of the scheme as detailed in the commit:

2 of 2

User A (coordinator):
Spendkey b,B
Viewkey a,A (shared)

User B:
Spendkey c,C
Viewkey a,A (shared)

Public Address: C+B, A

Both have their own watch only wallet via C+B, a

The format of the MultisigV1 string is, once base58 decoded:

private view key component (32 byte scalar)
public spend key component (32 byte EC point)
schnorr signature of a hash of the two elements above by the private spend key component
  (pair of 32 byte scalars)

Therefore to determine the overall multisig wallet private view key, add together all of the private view key components. The same calculation applies to determine the overall public spend key. Together, these can be used to recreate the wallet public address and to create a view-only wallet.

If you don't mind others being able to observe the multisig wallet address and private view key, and therefore them being able to observe incoming transactions to the wallet, these strings can be shared publicly. Otherwise, they should be kept private.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.