mirror of
https://github.com/seigler/dash-docs
synced 2025-07-27 17:56:16 +00:00
Standard Tx Modifications
* Remove contentious sentence about mining non-standard txes possibly creating orphaned blocks and loss of block reward. Suggested by @luke-jr (thanks!) * Remove unnecessary value judgement ("unfortunately") against non-standard redeemScripts. Mention that they can be used deliberately by someone who wants to easily receive payment to a non-standard output script. Suggested by @luke-jr (thanks!)
This commit is contained in:
parent
f33ea7196a
commit
b55fae9451
1 changed files with 6 additions and 6 deletions
|
@ -280,10 +280,7 @@ standard transactions.
|
||||||
Non-standard transactions---those that fail the test---may be accepted
|
Non-standard transactions---those that fail the test---may be accepted
|
||||||
by nodes not using the default Bitcoin Core settings. If they are
|
by nodes not using the default Bitcoin Core settings. If they are
|
||||||
included in blocks, they will also avoid the isStandard test and be
|
included in blocks, they will also avoid the isStandard test and be
|
||||||
processed. However, miners who produce blocks with non-standard
|
processed.
|
||||||
transactions put their block reward at risk---if a transaction
|
|
||||||
produces a bug, the block which includes it will likely be orphaned by
|
|
||||||
other miners.
|
|
||||||
|
|
||||||
Besides making it more difficult for someone to attack Bitcoin for
|
Besides making it more difficult for someone to attack Bitcoin for
|
||||||
free by broadcasting harmful transactions, the standard transaction
|
free by broadcasting harmful transactions, the standard transaction
|
||||||
|
@ -403,9 +400,12 @@ accept, broadcast, nor mine your transaction. When you try to broadcast
|
||||||
your transaction to a peer running the default settings, you will
|
your transaction to a peer running the default settings, you will
|
||||||
receive an error.
|
receive an error.
|
||||||
|
|
||||||
Unfortunately, if you create a redeemScript, hash it, and use the hash
|
If you create a redeemScript, hash it, and use the hash
|
||||||
in a P2SH output, the network sees only the hash, so it will accept the
|
in a P2SH output, the network sees only the hash, so it will accept the
|
||||||
output as valid no matter what the redeemScript says. When you go to
|
output as valid no matter what the redeemScript says.
|
||||||
|
This allows
|
||||||
|
payment to non-standard output scripts almost as easily as payment to
|
||||||
|
standard output scripts. However, when you go to
|
||||||
spend that output, peers and miners using the default settings will
|
spend that output, peers and miners using the default settings will
|
||||||
check the redeemScript to see whether or not it's a standard output
|
check the redeemScript to see whether or not it's a standard output
|
||||||
script. If it isn't, they won't process it further---so it will be
|
script. If it isn't, they won't process it further---so it will be
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue