Pay-to-script-hash (OP_EVAL replacement) #748

pull gavinandresen wants to merge 5 commits into bitcoin:master from gavinandresen:pay_to_script_hash changing 22 files +1047 −604
  1. gavinandresen commented at 0:53 am on January 7, 2012: contributor

    This implements BIP 16, the replacement for pay-to-script hash. https://en.bitcoin.it/wiki/BIP_0016

    Tested mostly on testnet-in-a-box, but I did spend time today generating transactions on the testnet as a final sanity test:

    Testnet block 43561 has 3 Pay-to-script-hash transactions and the /P2SH/ string in it’s coinbase: http://blockexplorer.com/testnet/block/000000000182cc0764d6c6b2b43a009fc9dc0cb03e9002249e7e865b7189acf8

    The next block has a transaction that spends one of them: http://blockexplorer.com/testnet/tx/cff697a07fa21780b2553c6e86bf956cb42838b0e9b226da2c6b3cd7754da736

    I’ll be producing/testing backports for miners running old software in the next few days.

  2. gavinandresen commented at 4:01 pm on January 9, 2012: contributor

    genjix makes a good suggestion: refactor ConnectInputs so fee payment is computed, and transaction possibly rejected, before ECDSA signature checking.

    Also sipa’s base58 encoding for public keys (compressed or full) aught to be used in the validateaddress/addmultisig RPC calls.

  3. Remove not-used-anywhere scriptPrereq from SignSignature() d11a58a2d3
  4. Replace OP_EVAL (BIP 12) with Pay-to-script-hash (BIP 16). 922e8e2929
  5. Refactored ConnectInputs, so valid-transaction-checks are done before ECDSA-verifying signatures. 8d7849b6db
  6. Refactor: needing to call ConnectInputs to process coinbase transactions was counter-intuitive 4063460534
  7. Remove base58 encoding from validateaddress/addmultisigaddress
    base58-encoding of full/compressed public keys needs more thought; it probably makes sense to define a base58 encoding that includes a version byte and a checksum. So just support hex and bitcoin-address encodings for now.
    9e8818ec9d
  8. gavinandresen merged this on Jan 13, 2012
  9. gavinandresen closed this on Jan 13, 2012

  10. Losangelosgenetics referenced this in commit 85f4fec1da on Mar 12, 2020
  11. MarcoFalke referenced this in commit 74a1152f25 on May 4, 2020
  12. ComputerCraftr referenced this in commit 04dcc6ec3e on Jun 10, 2020
  13. ComputerCraftr referenced this in commit 514b330e83 on Jun 10, 2020
  14. rajarshimaitra referenced this in commit 231ae4459f on Aug 5, 2021
  15. DrahtBot locked this on Sep 8, 2021


gavinandresen


github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-11-23 09:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me