<p>I've learned SegWit, Taproot, Schnoor and Ordinals recently. I can understand all these terms. But I don't understand why people say Taproot makes Ordinals possible.</p>
<p>Taproot is actually the version 1 of SegWit. Before Taproot, we can only set version 0 when using SetWit. But I think the version 0 SegWit is already sufficient to implement Ordinals protocol? In the same way, we need 2 phases/transactions to inscribe some data:</p>
<ol>
<li>Create a P2WSH transaction to commit a script. Just like what Ordinals does now (i.e., create a P2TR transaction to commit a script).</li>
<li>Create a transaction to reveal the script in the <code>witness</code> field. Just like what Ordinals does now.</li>
</ol>
<p>In the script, I can still use the <code>OP_FALSE OP_IF ... OP_ENDIF</code> pattern to embed the inscription data into the script.</p>
<p>So we can still implement Ordinals protocol without Taproot. Why do people say Taproot makes Ordinals possible?</p>

CC BY-SA 4.0
2024-05-26T16:30:41.247Z
Related: [How can taproot transactions manage to store so much data?](https://bitcoin.stackexchange.com/questions/122537/how-can-taproot-transactions-manage-to-store-so-much-data)
Vojtěch Strnad
CC BY-SA 4.0
2024-05-27T02:18:08.747Z
Thanks! Now I know that before Taproot, the P2WSH has a script size limit of 10000 bytes. Taproot eliminates this script size limit.
Yan
<segregated-witness><taproot><p2tr><ordinals>
Why is Taproot important to Ordinals?
Yan
# Why is Taproot important to Ordinals?

(Asked by: username_0 on 2024-05-26)

I've learned SegWit, Taproot, Schnoor and Ordinals recently. I can understand all these terms. But I don't understand why people say Taproot makes Ordinals possible.

Taproot is actually the version 1 of SegWit. Before Taproot, we can only set version 0 when using SetWit. But I think the version 0 SegWit is already sufficient to implement Ordinals protocol? In the same way, we need 2 phases/transactions to inscribe some data:

1. Create a P2WSH transaction to commit a script. Just like what Ordinals does now (i.e., create a P2TR transaction to commit a script).
2. Create a transaction to reveal the script in the `witness` field. Just like what Ordinals does now.

In the script, I can still use the `OP_FALSE OP_IF ... OP_ENDIF` pattern to embed the inscription data into the script.

So we can still implement Ordinals protocol without Taproot. Why do people say Taproot makes Ordinals possible?

**Tags:** segregated-witness, taproot, p2tr, ordinals

> **Comments:**
> **username_1**: Related: [How can taproot transactions manage to store so much data?](https://bitcoin.stackexchange.com/questions/122537/how-can-taproot-transactions-manage-to-store-so-much-data)  
> **username_0**: Thanks! Now I know that before Taproot, the P2WSH has a script size limit of 10000 bytes. Taproot eliminates this script size limit.  

---

## 0 answers

