summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntoine Poinsot <darosior@protonmail.com>2021-01-10 12:41:05 +0100
committerAntoine Poinsot <darosior@protonmail.com>2021-01-11 10:53:59 +0100
commit644610f7b87e3e5f4757fb9e80d24f8e6e75d93e (patch)
tree5e717838c34a7823fd052d51e77929041a371bf9
parentcf0b529e78860fa2d4fe77944091aa98c5e04624 (diff)
downloadbips-644610f7b87e3e5f4757fb9e80d24f8e6e75d93e.tar.xz
bip-0141: clarify the sigop count calculation for CHECKMULTISIG
Since the sigOpCount calculation was copied from P2SH, and P2SH restricts the use of CHECKMULTISIG with pushed integers the reference implementation would not take into account the number of public keys for 17 to 20 keys (not representable with an OP_N) even for P2WSH. Therefore it fallbacks to accounting for 20 sigops in this case, which this sentence seemed to mismatch with. Btcd and Libbitcoin use the same calculation as in Bitcoin Core. Signed-off-by: Antoine Poinsot <darosior@protonmail.com>
-rw-r--r--bip-0141.mediawiki2
1 files changed, 1 insertions, 1 deletions
diff --git a/bip-0141.mediawiki b/bip-0141.mediawiki
index 82f6abd..8528729 100644
--- a/bip-0141.mediawiki
+++ b/bip-0141.mediawiki
@@ -127,7 +127,7 @@ Sigops per block is currently limited to 20,000. We change this restriction as f
Sigops in the current pubkey script, signature script, and P2SH check script are counted at 4 times their previous value.
The sigop limit is likewise quadrupled to ≤ 80,000.
-Each P2WPKH input is counted as 1 sigop. In addition, opcodes within a P2WSH <code>witnessScript</code> are counted identically as previously within the P2SH <code>redeemScript</code>. That is, CHECKSIG is counted as only 1 sigop, and CHECKMULTISIG is counted as 1 to 20 sigops according to the arguments. This rule applies to both native witness program and P2SH witness program.
+Each P2WPKH input is counted as 1 sigop. In addition, opcodes within a P2WSH <code>witnessScript</code> are counted identically as previously within the P2SH <code>redeemScript</code>. That is, CHECKSIG is counted as only 1 sigop. When preceded by OP_1 to OP_16 CHECKMULTISIG is counted as 1 to 16 sigops respectively, otherwise it is counted as 20 sigops. This rule applies to both native witness program and P2SH witness program.
=== Additional definitions ===