5

Assume that the transaction which adds signer and weight operations are successful.

The next transaction which needs to be signed by multiple parties is created and built (this will increase the sequence number) and then signed by source account.

Convert the transaction to XDR string and float to the users for them to sign. User A will unpack xdr string to transaction and then sign it. Convert back to XDR string and then pass it to the next user and so on. Finally submit the transaction. Is this the right way ?

1 Answer 1

4

You can do it the way you mentioned (sequential collection), and it is probably the most straightforward way, but one cool thing about multisig is that the only thing that's signed is the hash of the transaction (which does not include the signatures part).

That enables 2 possible optimizations:

1) You can broadcast the transaction to all signers at the same time and then collect their signatures (they can send back just the signature XDR or you can send back the full signed transaction XDR and pull the signatures from it). Then once you have enough signers you add all of the signatures to the transaction and submit it.

2) You can even broadcast just the transaction hash and have people sign it and send back the signatures. They obviously don't get to see the transaction details with just the hash, but if you're building an automated system for this then maybe that's not necessary.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

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