2

I am currently reviewing a computer science conference paper. The authors in the paper mention that the following is a non-standard script.

OP_DUP OP_HASH160 OP_0 OP_EQUALVERIFY OP_CHECKSIG

But when I checked the transaction on the explorer, its output script has NULL_DATA https://btc.com/btc/transaction/03acfae47d1e0b7674f1193237099d1553d3d8a93ecc85c18c4bec37544fe386

Which is the above two is true? Thank you

1 Answer 1

3

This script is almost exactly the same as the standard Pay-To-Public-Key-Hash (P2PKH) script, except instead of pushing the hash onto the stack it pushes an empty vector.

As a reminder, a P2PKH script locks an output with the hash of a public key. To spend this output one must provide both the public key and a signature generated from its corresponding private key. Since the hash function always produces a 20-byte hash and never an empty vector, there is no public key to satisfy this script, making the output forever unspendable.

Why this output exists I can't tell you, but a bitcointalk.org message mentions there are 23 of these. Most likely it's the result of a software bug.

NULL_DATA is probably just that specific blockchain explorer's label used for non-standard outputs. mempool.space marks this as UNKNOWN.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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