1

I'm running BitcoinUnlimited's giga_perf branch of bitcoin in regest mode, and I'm noticing a different format than P2PKH in the scriptPubKey when running listunspent over rpc.

Typically I see scriptPubKey's in the P2PKH format:

'76a914' + b58check_to_hex(address) + '88ac'

But with this implementation I'm seeing:

'2103' + ??? + 'ac'

Some examples below, what format are these scriptPubKey's in?

{
  "txid": "07ad742b0bab1c5e65fe720459747aa687d293fef0d0f168297bcaafbe73f17b",
  "vout": 0,
  "address": "mrjTCJGC7aYdZsy3gUJMpBesgtH1ymybsN",
  "scriptPubKey": "21031f5ce0854d50e632bd7002ae5aff977396376082e45329fcdf1af52ab68f766bac",
  "amount": 50.00000500,
  "confirmations": 101,
  "spendable": true
}, 
{
  "txid": "d7f623f59d8fa37eea5fafeb3819ecd76750bea9bb48d453e0eb13426c7e707e",
  "vout": 0,
  "address": "n2Faf95smgYu6e9aBVAwwzp6oULnL7SSSs",
  "scriptPubKey": "21039ff795e5433e67b418e100938ac72e2713a1661c15f48a5c198a5086d96285beac",
  "amount": 50.00000000,
  "confirmations": 108,
  "spendable": true
}
3

Those are Pay to Pubkey scriptPubKeys. P2PK is in the format <pubkey len> <pubkey> OP_CHECKSIG. The 21 is the pubkey length and the 03 is the first byte of the pubkey. The ac is OP_CHECKSIG.

  • Perfect, can't believe I overlooked that. – y3sh Apr 23 '18 at 18:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.