diff options
author | Douglas Roark <doug@bitcoinarmory.com> | 2015-07-28 21:40:50 -0400 |
---|---|---|
committer | Douglas Roark <doug@bitcoinarmory.com> | 2015-07-28 21:40:50 -0400 |
commit | ec575baa55d1102492cb257020629e8eb619660f (patch) | |
tree | a100bd5f4c2a42dcb90b50a484331e018e559b63 /bip-0062.mediawiki | |
parent | 21c2ad6dbdd627aa0bcf864e1150a92e10990872 (diff) |
Minor grammatical change
The sentence regarding allowing empty byte arrays to indicate an invalid ECDSA signature is confusing. I attempted to make it clearer. If I screwed it up or can make it even clearer, please let me know.
Thank you.
Diffstat (limited to 'bip-0062.mediawiki')
-rw-r--r-- | bip-0062.mediawiki | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bip-0062.mediawiki b/bip-0062.mediawiki index 7bd88a6..feb4d58 100644 --- a/bip-0062.mediawiki +++ b/bip-0062.mediawiki @@ -38,7 +38,7 @@ The first six and part of the seventh can be fixed by extra consensus rules, but ===New rules=== Seven extra rules are introduced, to combat exactly the seven first sources of malleability listed above: -# '''Canonically encoded ECDSA signatures''' An ECDSA signature passed to OP_CHECKSIG, OP_CHECKSIGVERIFY, OP_CHECKMULTISIG or OP_CHECKMULTISIGVERIFY must be encoded using strict DER encoding. To provide a compact way to deliberately create an invalid signature for with OP_CHECKSIG and OP_CHECKMULTISIG the empty byte array (the result of OP_0) is also allowed. Doing a verification with a non-DER signature makes the entire script evaluate to False (not just the signature verification). See reference: [[#der-encoding|DER encoding]]. +# '''Canonically encoded ECDSA signatures''' An ECDSA signature passed to OP_CHECKSIG, OP_CHECKSIGVERIFY, OP_CHECKMULTISIG or OP_CHECKMULTISIGVERIFY must be encoded using strict DER encoding. To provide a compact way to deliberately create an invalid signature for OP_CHECKSIG and OP_CHECKMULTISIG, an empty byte array (i.e., the result of OP_0) is also allowed. Doing a verification with a non-DER signature makes the entire script evaluate to False (not just the signature verification). See reference: [[#der-encoding|DER encoding]]. # '''Non-push operations in scriptSig''' Only data pushes are allowed in scriptSig. Evaluating any other operation makes the script evaluate to false. See reference: [[#push-operators|Push operators]]. # '''Push operations in scriptSig of non-standard size type''' The smallest possible push operation must be used when possible. Pushing data using an operation that could be encoded in a shorter way makes the script evaluate to false. See reference: [[#push-operators|Push operators]]. # '''Zero-padded number pushes''' Any time a script opcode consumes a stack value that is interpreted as a number, it must be encoded in its shortest possible form. 'Negative zero' is not allowed. See reference: [[#numbers|Numbers]]. |