<p>In a coinbase transaction like the one you linked, the input scripts are mostly just not validated because nothing is being spent as is a special type of transaction only used by miners. It keeps the format of the transaction the same as all the others in the chain, though the <code>scriptSig</code> has almost no meaning and isn't expected to be parsable as a real script.</p>

CC BY-SA 4.0
2022-01-01T20:12:09.140Z
2022-01-01T20:33:07.340Z
2022-01-01T20:33:07.340Z
Claris
<p>Transaction <a href="https://www.blockchain.com/btc/tx/88025f2bfa2435a7036a865ea0b4748491d21f9b8cfd72788e9d1c9aa8977e7d" rel="nofollow noreferrer">88025f2bfa2435a7036a865ea0b4748491d21f9b8cfd72788e9d1c9aa8977e7d</a> is valid, but its one and only input has an invalid script. (There are many transactions like this, but this one will suffice as an example.)</p>
<p>The previous transaction for the input is all zeroes, and the output index is <code>0xffffffff</code> which is technically not possible as far as I understand. Is one or both of these values used to determine the (in)validity of the script, or is there some other indicator that the script is not valid? How do the block explorers determine whether an input script is valid or not?</p>
<p>Also, if the input script is invalid, then why is it included at all? This transaction has a 49-byte input script. The hex bytes are: <code>0315ef0a04a656cf612f466f756e6472792055534120506f6f6c202364726f70676f6c642f0e9d8b480000000000000000</code>. What is all this data if it is not a script, and why would it be sent as part of the transaction?</p>

CC BY-SA 4.0
2022-01-01T20:12:56.153Z
Possible duplicate of [What is the coinbase?](https://bitcoin.stackexchange.com/q/4571/5406)
Murch
<script><transaction-input>
Invalid input scripts? Why are they included? Is there a correct way to identify them?
Zephyrus
# Invalid input scripts? Why are they included? Is there a correct way to identify them?

(Asked by: username_0 on 2022-01-01)

Transaction [88025f2bfa2435a7036a865ea0b4748491d21f9b8cfd72788e9d1c9aa8977e7d](https://www.blockchain.com/btc/tx/88025f2bfa2435a7036a865ea0b4748491d21f9b8cfd72788e9d1c9aa8977e7d) is valid, but its one and only input has an invalid script. (There are many transactions like this, but this one will suffice as an example.)

The previous transaction for the input is all zeroes, and the output index is `0xffffffff` which is technically not possible as far as I understand. Is one or both of these values used to determine the (in)validity of the script, or is there some other indicator that the script is not valid? How do the block explorers determine whether an input script is valid or not?

Also, if the input script is invalid, then why is it included at all? This transaction has a 49-byte input script. The hex bytes are: `0315ef0a04a656cf612f466f756e6472792055534120506f6f6c202364726f70676f6c642f0e9d8b480000000000000000`. What is all this data if it is not a script, and why would it be sent as part of the transaction?

**Tags:** script, transaction-input

> **Comments:**
> **username_1**: Possible duplicate of [What is the coinbase?](https://bitcoin.stackexchange.com/q/4571/5406)  

---

## 1 answers

### Answer by username_2 on 2022-01-01. Score: 1

In a coinbase transaction like the one you linked, the input scripts are mostly just not validated because nothing is being spent as is a special type of transaction only used by miners. It keeps the format of the transaction the same as all the others in the chain, though the `scriptSig` has almost no meaning and isn't expected to be parsable as a real script.


---

