1
0
mirror of https://github.com/bitcoinbook/bitcoinbook synced 2024-11-17 21:59:23 +00:00

corrected standard multisignature tx limit to N=3

see BIP11:
    "A new standard transaction type (scriptPubKey) that is relayed by clients
    and included in mined blocks:
        m {pubkey}...{pubkey} n OP_CHECKMULTISIG
    But only for n less than or equal to 3."
also see the code in function IsStandard() in Bitcoin Core since v0.6.0:
    "// Support up to x-of-3 multisig txns as standard
     if (n < 1 || n > 3)
         return false;"
This commit is contained in:
theStack 2018-01-30 17:40:59 -05:00
parent 2d01be5381
commit 1b2eb07bf1

View File

@ -12,7 +12,7 @@ First, we will look at _multisignature_ scripts. Next, we will examine the secon
[[multisig]]
=== Multisignature
((("transactions", "advanced", "multisignature scripts")))((("transactions", "advanced", id="Tadv07")))((("scripting", "multisignature scripts", id="Smulti07")))((("multisignature scripts")))Multisignature scripts set a condition where N public keys are recorded in the script and at least M of those must provide signatures to unlock the funds. This is also known as an M-of-N scheme, where N is the total number of keys and M is the threshold of signatures required for validation. For example, a 2-of-3 multisignature is one where three public keys are listed as potential signers and at least two of those must be used to create signatures for a valid transaction to spend the funds. At this time, standard multisignature scripts are limited to at most 15 listed public keys, meaning you can do anything from a 1-of-1 to a 15-of-15 multisignature or any combination within that range. The limitation to 15 listed keys might be lifted by the time this book is published, so check the +isStandard()+ function to see what is currently accepted by the network.
((("transactions", "advanced", "multisignature scripts")))((("transactions", "advanced", id="Tadv07")))((("scripting", "multisignature scripts", id="Smulti07")))((("multisignature scripts")))Multisignature scripts set a condition where N public keys are recorded in the script and at least M of those must provide signatures to unlock the funds. This is also known as an M-of-N scheme, where N is the total number of keys and M is the threshold of signatures required for validation. For example, a 2-of-3 multisignature is one where three public keys are listed as potential signers and at least two of those must be used to create signatures for a valid transaction to spend the funds. At this time, standard multisignature scripts are limited to at most 3 listed public keys, meaning you can do anything from a 1-of-1 to a 3-of-3 multisignature or any combination within that range. The limitation to 3 listed keys might be lifted by the time this book is published, so check the +isStandard()+ function to see what is currently accepted by the network.
The general form of a locking script setting an M-of-N multisignature condition is: