User Tools

Site Tools


dido:public:ra:xapend:xapend.b_stds:defact:bitcoin:bips:bip_0147

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
dido:public:ra:xapend:xapend.b_stds:defact:bitcoin:bips:bip_0147 [2020/05/19 22:56]
char
dido:public:ra:xapend:xapend.b_stds:defact:bitcoin:bips:bip_0147 [2021/08/18 11:05] (current)
murphy
Line 1: Line 1:
 ==== BIP 0147 - Dealing with dummy stack element malleability (soft fork)  ==== ==== BIP 0147 - Dealing with dummy stack element malleability (soft fork)  ====
-[[dido:​public:​ra:​xapend.stds:​defact:​bitcoin:​bips| return to the Bitcoin Improvement Proposals ]]+[[dido:​public:​ra:xapend:xapend.b_stds:​defact:​bitcoin:​bips| return to the Bitcoin Improvement Proposals ]]
  
 <​table>​ <​table>​
Line 17: Line 17:
 </​table>​ </​table>​
  
-  : **Note**: The following is an excerpt from the official Bitcoin site. It is provided here as a convenience and is not authoritative. Refer to the original document(s) as the authoritative reference.+  : **Note**: The following is an excerpt from the official ​[[dido:​public:​ra:​xapend:​xapend.a_glossary:​b:​bitcoin|Bitcoin]] site. It is provided here as a convenience and is not authoritative. Refer to the original document(s) as the authoritative reference.
  
 === Abstract === === Abstract ===
Line 23: Line 23:
  
 === Motivation === === Motivation ===
-  : //Signature malleability refers to the ability of any relay node on the network to transform the signature in transactions,​ with no access to the relevant private keys required. For non-segregated witness transactions,​ signature malleability will change the ''​txid''​ and invalidate any unconfirmed child transactions. Although the ''​txid''​ of segregated witness ([[dido:​public:​ra:​xapend.stds:​defact:​bitcoin:​bips:​bip_0141 | BIP141]]) transactions is not third party malleable, this malleability vector will change the ''​wtxid''​ and may reduce the efficiency of compact block relay ([[https://​github.com/​bitcoin/​bips/​blob/​master/​bip-0152.mediawiki | BIP152]]).//​+  : //Signature malleability refers to the ability of any relay [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​node|node]] on the network to transform the signature in transactions,​ with no access to the relevant private keys required. For non-segregated witness transactions,​ signature malleability will change the ''​txid''​ and invalidate any unconfirmed child transactions. Although the ''​txid''​ of segregated witness ([[dido:​public:​ra:xapend:xapend.b_stds:​defact:​bitcoin:​bips:​bip_0141| BIP141]]) transactions is not third party malleable, this malleability vector will change the ''​wtxid''​ and may reduce the efficiency of compact block relay ([[https://​github.com/​bitcoin/​bips/​blob/​master/​bip-0152.mediawiki | BIP152]]).//​
  
-  : //A design flaw in ''​OP_CHECKMULTISIG''​ and ''​OP_CHECKMULTISIGVERIFY''​ causes them to consume an extra stack element ("​dummy element"​) after signature validation. The dummy element is not inspected in any manner, and could be replaced by any value without invalidating the script. This document specifies a new rule to fix this signature malleability.//​+  : //A design flaw in ''​OP_CHECKMULTISIG''​ and ''​OP_CHECKMULTISIGVERIFY''​ causes them to consume an extra stack element ("​dummy element"​) after signature ​[[dido:​public:​ra:​xapend:​xapend.a_glossary:​v:​validation|validation]]. The dummy element is not inspected in any manner, and could be replaced by any value without invalidating the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​script|script]]. This document specifies a new rule to fix this signature malleability.//​
dido/public/ra/xapend/xapend.b_stds/defact/bitcoin/bips/bip_0147.1589943405.txt.gz · Last modified: 2020/05/19 22:56 by char