In this case, instead of generating a private key, calculating the public key, and producing its hash, someone just put 000…000 for <pubkeyhash>. Because it is extremely unlikely that someone would find the private key whose public key hashes to 000…000, funds sent to the resulting address are likely lost forever.
This holds true even if CRQC make an appearance, because CRQC can only calculate the private key from a public key, but they cannot reverse hashes. The public key corresponding to this P2PKH is still unknown, the 000…000 took the place of the public key hash, not the public key.
Usually when you generate a key pair, you would first randomly produce the private key and then calculate the public key from the private key.
To make a Pay to Public Key Hash (P2PKH) output script from the public key, you would hash the public key and insert it into the following script:
OP_DUP OP_HASH160 OP_PUSHBYTES_20 <pubkeyhash> OP_EQUALVERIFY OP_CHECKSIGIn this case, instead of generating a private key, calculating the public key, and producing its hash, someone just put 000…000 for
<pubkeyhash>. Because it is extremely unlikely that someone would find the private key whose public key hashes to 000…000, funds sent to the resulting address are likely lost forever.This holds true even if CRQC make an appearance, because CRQC can only calculate the private key from a public key, but they cannot reverse hashes. The public key corresponding to this P2PKH is still unknown, the 000…000 took the place of the public key hash, not the public key.