If I understand correctly, there are two methods to perform a multi-signature transactions in Bitcoin. One is "pay to pub key hash", which is a method commonly used to send standard single signature transactions. The other is "pay to script hash", as specified in BIP 16.

If you use "Pay to pub key hash" , any senders to the multisig address need to specify all the public keys involved in the multisig address, which can be cumbersome. If you use "pay to script hash" , the sender only needs to know the hash of the script , which is equivalent to the length of a single bitcoin address. Obviously, "pay to script hash" fits better with the various infrastructure already setup around the standard transaction.

Are there any other advantages or disadvantages between the two methods?

1 Answer 1


Sorry, my English is poor, I'll try to explain. Feel free to comment and ask.

First, terminology. There are no "pay to pub key hash msig txs". There are

  • bare multisig outputs
  • p2sh outputs

In bare multisig output i create a list on [N] pubkeys and choose [M]. The output script will look like [push M] [push key1] [push key2]... [push keyN] [push N] [checkmultisig]

Every person can check this set. If he has [M] keys he will be able to redeem this output. If he has less than [M] keys he will be able to partially sign the redeem transaction and pass it to another person (this passing step can not be done within bitcoin network, because nodes do not relay partially signed transactions). When the transaction gains at least [M] signatures it can be mined. Have a look to https://gist.github.com/gavinandresen/3966071

p2sh gives more functionality. I can write my own redeem script and calculate its checksum. To redeem p2sh output you should know the script itself (blockchain contains only the hash of it) and you should create scriptSig for it. Usually p2sh outputs used for multisig transactions, but there are exceptions. https://bitcointalk.org/index.php?topic=293382.0

Update: One more useful link: What are multi-signature transactions?

Your Answer

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

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