From 47b255e888fcb578fe078d399e36e9ab1a958856 Mon Sep 17 00:00:00 2001 From: "David A. Harding" Date: Mon, 7 Sep 2015 10:12:47 -0400 Subject: [PATCH] Dev Docs: Update description of P2SH standardness Closes #1052 --- _includes/devdoc/guide_transactions.md | 13 +++++-------- _includes/references.md | 1 + 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/_includes/devdoc/guide_transactions.md b/_includes/devdoc/guide_transactions.md index 74b08ac7..e028abdd 100644 --- a/_includes/devdoc/guide_transactions.md +++ b/_includes/devdoc/guide_transactions.md @@ -452,14 +452,11 @@ receive an error. If you create a redeem script, hash it, and use the hash in a P2SH output, the network sees only the hash, so it will accept the output as valid no matter what the redeem script says. -This allows -payment to non-standard pubkey script almost as easily as payment to -standard pubkey scripts. However, when you go to -spend that output, peers and miners using the default settings will -check the redeem script to see whether or not it's a standard pubkey script. -If it isn't, they won't process it further---so it will be -impossible to spend that output until you find a miner who disables the -default settings. +This allows payment to non-standard scripts, and as of Bitcoin Core +0.11, almost all valid redeem scripts can be spent. The exception is +scripts that use unassigned [NOP op codes][]; these op codes are +reserved for future soft forks and can only be relayed or mined by nodes +that don't follow the standard mempool policy. Note: standard transactions are designed to protect and help the network, not prevent you from making mistakes. It's easy to create diff --git a/_includes/references.md b/_includes/references.md index 6f6ca89a..0b80aed2 100644 --- a/_includes/references.md +++ b/_includes/references.md @@ -309,6 +309,7 @@ http://opensource.org/licenses/MIT. [MIME]: https://en.wikipedia.org/wiki/Internet_media_type [mozrootstore]: https://www.mozilla.org/en-US/about/governance/policies/security-group/certs/ [netcat]: https://en.wikipedia.org/wiki/Netcat +[nop op codes]: https://en.bitcoin.it/wiki/Script#Reserved_words [Payment Request Generator]: http://bitcoincore.org/~gavin/createpaymentrequest.php [Piotr Piasecki's testnet faucet]: https://tpfaucet.appspot.com/ [prime symbol]: https://en.wikipedia.org/wiki/Prime_%28symbol%29