user132754: 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

user121614: 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 a zero byte.
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. But even if someone managed to find a public key that is a preimage to the zero hash (which should be infeasible) and then managed to find the private key to that public key (also infeasible), they wouldn't be able to spend this output because a zero byte has a different length than a 160-bit hash and thus could never pass as equal.
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.

132754: <p>I am currently reviewing a computer science conference paper. The authors in the paper mention that the following is a non-standard script.</p>
<p>OP_DUP
OP_HASH160
OP_0
OP_EQUALVERIFY
OP_CHECKSIG</p>
<p>But when I checked the transaction on the explorer, its output script has NULL_DATA <a href="https://btc.com/btc/transaction/03acfae47d1e0b7674f1193237099d1553d3d8a93ecc85c18c4bec37544fe386" rel="nofollow noreferrer">https://btc.com/btc/transaction/03acfae47d1e0b7674f1193237099d1553d3d8a93ecc85c18c4bec37544fe386</a></p>
<p>Which is the above two is true? Thank you</p>
 121614: <p>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 a zero byte.</p>
<p>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. But even if someone managed to find a public key that is a preimage to the zero hash (which should be infeasible) and then managed to find the private key to that public key (also infeasible), they wouldn't be able to spend this output because a zero byte has a different length than a 160-bit hash and thus could never pass as equal.</p>
<p>Why this output exists I can't tell you, but a <a href="https://bitcointalk.org/index.php?topic=620203.msg7315697#msg7315697" rel="nofollow noreferrer">bitcointalk.org message</a> mentions there are 23 of these. Most likely it's the result of a software bug.</p>
<p>NULL_DATA is probably just that specific blockchain explorer's label used for non-standard outputs. <a href="https://mempool.space/tx/03acfae47d1e0b7674f1193237099d1553d3d8a93ecc85c18c4bec37544fe386" rel="nofollow noreferrer">mempool.space</a> marks this as UNKNOWN.</p>
