> For the complete documentation index, see [llms.txt](https://rs0-5.gitbook.io/righttech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://rs0-5.gitbook.io/righttech/common/op_return.md).

# OP\_Return

{% embed url="<https://www.youtube.com/watch?v=BrYa8HuM-1o>" %}
เนิื้อหาในคลิปมีการใช้ AI ในการสร้างเสียง และเนื้อหาไม่ครบถ้วนเท่าบทความด้านล่าง จัดทำเพื่อใครที่ต้องการทำความเข้าใจแบบพื้นฐานก่อนจะลงลึก
{% endembed %}

**OP\_RETURN** เป็น opcode ในภาษา script ของ บิตคอยน์ที่เมื่อพบใน lock script จะทำให้สคริปต์สิ้นสุดทันทีและผลลัพธ์ของ output นั้นถือว่าไม่สามารถใช้จ่ายได้ (unspendable) [\[1\]](https://developer.bitcoin.org/reference/transactions.html) เนื่องจาก output ที่ใช้ OP\_RETURN จะไม่ถูกเพิ่มเข้าไปใน UTXO set จึงใช้สำหรับ “เผา” เหรียญหรือฝังข้อมูลเล็ก ๆ ลงบนบล็อกเชนได้โดยไม่สร้างภาระให้กลับ UTXO อื่น ๆ [\[2\]](https://en.bitcoin.it/wiki/OP_RETURN) แต่อย่างไรก็ดี เหล่านักพัฒนาได้ทำการระบุไว้ว่า การเก็บข้อมูลบนบล็อกเชนนั้นยังคงไม่ใช่จุดประสงค์หลักของ Bitcoin และเป็น “**ความคิดที่ไม่ดี**” ในทางปฏิบัติ [\[3\]](https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain)

### จุดเริ่มต้นของการนำ OP\_RETURN มาใช้

ฟีเจอร์ OP\_RETURN ถูกเพิ่มใน **Bitcoin Core v0.9.0** ซึ่งออกเมื่อเดือนมีนาคม 2014 การเปลี่ยนแปลงนี้ทำให้สามารถสร้าง output ที่ใช้ OP\_RETURN (unspendable) ได้โดยตรง และทำให้ node ต่าง ๆ ทราบว่าข้อมูลใน OP\_RETURN ไม่จำเป็นต้องเก็บไว้ใน UTXO set [\[3\]](https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain) ในตอนแรก Bitcoin Core จำกัดขนาดข้อมูลใน OP\_RETURN ที่สูงสุด 80 ไบต์ แต่ภายหลังลดเหลือ 40 ไบต์เพื่อป้องกันการบิดเบือนระบบ และต่อมาใน **Bitcoin Core v0.11.0 (ก.ค. 2015)**[ \[4\]](https://bitcoin.org/en/release/v0.11.0) ขยายขนาดกลับเป็น 80 ไบต์โดยค่าเริ่มต้น [\[5\] ](https://github.com/bitcoin/bitcoin/pull/5286)การเปลี่ยนแปลงเหล่านี้เป็นเพียงนโยบายของ relay (standardness rule) ไม่ใช่ consensus rule จึงมีผลต่อลักษณะการกระจายข้อมูลในเครือข่ายเท่านั้น [\[6\]](https://cryptoslate.com/bitcoin-cores-op_return-limit-removal-divides-crypto-community/)

### การใช้งานทั่วไปของ OP\_RETURN

* *แนบเมตาดาต้า (Metadata)* เช่น การฝัง [hash ](/righttech/common/hash.md)ของเอกสารหรือข้อมูลภายนอกลงบนบล็อกเชน เพื่อใช้พิสูจน์การมีอยู่ของข้อมูล ณ เวลาใดเวลาหนึ่ง (proof of existence)  OP\_RETURN จึงถูกนำไปใช้ในระบบ timestamping หรือระบบจัดเก็บบันทึกดิจิทัลหลายโครงการ (เช่น OpenTimestamps) เพื่อให้มีหลักฐานยืนยันเวลาของข้อมูล [\[7\]](https://arxiv.org/abs/1702.01024)
  * Hash คืออะไร หากไม่เข้าใจสามารถอ่านได้จากบทความนี้ครับ --> <a href="/pages/C060KKrC6zbl5ir9DKtX" class="button primary">บทความเรื่อง hash</a>
* *สร้างโทเค็นหรือ NFT บนบิตคอยน์* ระบบนิเวศบางแห่งใช้ OP\_RETURN เพื่อฝังข้อมูลสร้างสินทรัพย์ดิจิทัล (token/NFT) ตัวอย่างเช่น โปรโตคอล Counterparty (เปิดตัว 2014), หรืออย่าง odinal ที่ใช้ OP\_RETURN เพื่อบันทึกการทำธุรกรรมของโทเค็นต่าง ๆ บนบล็อกเชนของบิตคอยน์  โครงการอย่าง Rare Pepe, Magic Cards และโทเค็นอื่น ๆ บน Bitcoin ก็ล้วนใช้ OP\_RETURN ในลักษณะนี้เป็นส่วนใหญ่ [\[7\]](https://arxiv.org/abs/1702.01024)
* *การพิสูจน์เวลา (Timestamping)*: สามารถนำ OP\_RETURN ไปแนบข้อมูลวันที่/เวลา หรือ hash ของข้อมูล เพื่อใช้สร้างลายเซ็นยืนยันเวลาของข้อมูลนั้น ๆ โดยไม่ต้องเชื่อใจหน่วยงานกลาง ตัวอย่างเช่น โครงการ OpenTimestamps มาตรฐานการพิสูจน์เวลาโดยใช้บล็อกเชน ใช้ OP\_RETURN เป็นกลไกส่งข้อมูลบันทึกลงในบล็อกเชนของบิตอคยน์ [\[6\]](https://cryptoslate.com/bitcoin-cores-op_return-limit-removal-divides-crypto-community/)
* *การเชื่อมโยงกับระบบภายนอก (Data anchoring)*: ใช้ OP\_RETURN เป็นสะพานบันทึกข้อมูลจากระบบอื่นเข้าสู่ Bitcoin เช่น ใช้ฝัง hash ของบล็อกเชนภายนอก หรือสถานะของฐานข้อมูลภายนอกลงบนบล็อกเชนของบิตคอยน์ ตัวอย่างเช่น โครงการ Exonum blockchain ใช้ OP\_RETURN ในธุรกรรมบิตคอยน์เพื่อบันทึก hash ของบล็อก Exonum ทำให้สามารถตรวจสอบความถูกต้องของข้อมูลภายนอกโดยอ้างอิงจากบล็อกเชนบิตคอยน์ได้ [\[8\]](https://exonum.com/doc/version/latest/advanced/bitcoin-anchoring/)

### ข้อจำกัดและข้อโต้แย้งด้านความปลอดภัยและประสิทธิภาพ

* *ขนาดข้อมูลจำกัด:* ข้อมูลที่แนบใน OP\_RETURN ถูกจำกัดตามนโยบายการ relay ของ Bitcoin Core (เดิม 40 ไบต์ใน v0.9–0.10 และ 80 ไบต์ใน v0.11 ขึ้นไป) นโยบายเหล่านี้ทำให้แน่ใจได้ว่าแต่ละ output จะไม่รับภาระข้อมูลเกินควร โดยเฉพาะไม่สร้าง UTXO ที่ขนาดใหญ่ [\[1\]](https://developer.bitcoin.org/reference/transactions.html)[\[2\]](https://en.bitcoin.it/wiki/OP_RETURN)
* *ประเด็นความปลอดภัย:* OP\_RETURN ทำให้ออปพุตนั้นกลายเป็น unspendable จึงไม่มีความเสี่ยงเรื่องการถูกโจรกรรม แต่มักถูกวิจารณ์ว่าเป็นช่องทางสำหรับฝังข้อมูลที่ไม่เกี่ยวกับการเงิน ซึ่งบางคนมองว่าเป็นการสแปมหรือก่อกวนเครือข่าย Bitcoin Core ได้ชี้แจงตั้งแต่ต้นว่า การเก็บข้อมูลบนบล็อกเชนด้วย OP\_RETURN มีความเสี่ยงและนโยบายนี้ไม่ได้สนับสนุนการใช้เครือข่ายเก็บข้อมูลนอกเหนือจากการทำธุรกรรมทางการเงิน [\[1\]](https://developer.bitcoin.org/reference/transactions.html)[\[6\]](https://cryptoslate.com/bitcoin-cores-op_return-limit-removal-divides-crypto-community/)
* *ประเด็นประสิทธิภาพ:* แม้ว่าการใช้ OP\_RETURN จะไม่เพิ่มภาระต่อ UTXO set แต่ก็ยังเพิ่มขนาดของบล็อกเชนที่ต้องดาวน์โหลดและตรวจสอบ ผู้วิจัยบางกลุ่มเคยตั้งคำถามว่าการฝากข้อมูลบน OP\_RETURN เป็นจำนวนมากอาจทำให้เครือข่ายช้าลงหรือบล็อกเชนบวมขึ้น อย่างไรก็ตาม ฝ่ายสนับสนุนชี้ว่า Bitcoin Core ยังมีข้อจำกัดเรื่องขนาดบล็อก (4 ล้าน weight units) เงื่อนไข dust และนโยบายอื่น ๆ อยู่แล้ว จึงควบคุมปริมาณข้อมูลได้ระดับหนึ่ง [\[6\]](https://cryptoslate.com/bitcoin-cores-op_return-limit-removal-divides-crypto-community/) [\[7\]](https://arxiv.org/abs/1702.01024)
* *ข้อโต้แย้งล่าสุด:* ในปี 2025 มีการถกเถียงในชุมชนของบิตคอยน์ เกี่ยวกับการผ่อนคลายข้อจำกัด OP\_RETURN โดยมีกลุ่มผู้พัฒนาเสนอให้ยกเลิกขนาด 80 ไบต์ ขณะที่ฝ่ายวิจารณ์มองว่าสิ่งนี้อาจกระทบกับธรรมชาติของบิตคอยน์  ฝ่ายสนับสนุน (อย่างเช่น Greg Sanders) ระบุว่าการยกเลิกนโยบายดังกล่าวจะช่วยให้นโยบายของ node สอดคล้องกับการใช้งานจริงและป้องกันการใช้วิธีการที่ซับซ้อนเกินไป ในขณะที่ผู้คัดค้าน (เช่น Luke Dashjr) ระบุว่าการปลดล็อกนั้นเป็น “ความบ้าคลั่ง” ที่เพิ่มความเสี่ยงต่อการสแปมข้อมูลลงในบล๊อกเชนของบิตคอยน์&#x20;

## อ้างอิง

\[1] <https://developer.bitcoin.org/reference/transactions.html>

\[2] <https://en.bitcoin.it/wiki/OP_RETURN>

\[3] <https://bitcoin.org/en/release/v0.9.0#opreturn-and-data-in-the-block-chain>

\[4] <https://bitcoin.org/en/release/v0.11.0>

\[5] <https://github.com/bitcoin/bitcoin/pull/5286>

\[6]<https://cryptoslate.com/bitcoin-cores-op_return-limit-removal-divides-crypto-community/>

\[7] <https://arxiv.org/abs/1702.01024>

\[8] <https://exonum.com/doc/version/latest/advanced/bitcoin-anchoring/>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://rs0-5.gitbook.io/righttech/common/op_return.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
