# 三、铭文

铭文里可刻有任意内容，从而创造了比特币原生的数字人工制品，通常被称为 NFT。 铭文不需要侧链或单独的代币。

这些铭刻的聪，可以使用比特币交易传输发送到比特币地址，并保存在比特币 UTXO 中。 这些交易、地址和 UTXO 在所有方面都是正常的比特币交易、地址和 UTXO。除了为了发送单个聪，交易必须根据序数理论控制输入和输出的顺序和值。

铭文内容是基于万维网标准的。铭文由内容类型（也称为 MIME 类型）和内容本身（字节串）组成。 这允许从 Web 服务器返回铭文内容，并用于创建和使用HTML铭文并重新混合其他铭文内容。

铭文内容完全在链上，存储&#x5728;*`taproot script-path spend`*&#x811A;本中。 Taproot 脚本对其内容的限制很少，并且额外获得见证折扣，使得铭文内容存储相对经济。

*`taproot script-path spend`*&#x811A;本只能从现有的 taproot 输出中产生，因此使用两阶段`commit/reveal`过程进行铭文。 首先，在`commit`中，创建一个提交到包含铭文内容的脚本的taproot 输出。 其次，在`reveal`交易中，使用`commit`交易产生的输出，来显示链上的铭文内容。

铭文内容使用未执行条件中的数据推送进行序列化，称为“信封”。 信封由 OP\_FALSE OP\_IF … OP\_ENDIF 组成，包装任意数量的数据推送。 因为信封实际上是空操作，所以它们不会改变包含它们的脚本的语义，并且可以与任何其他锁定脚本结合使用。

包含字符串“Hello, world!”的文本铭文 序列化如下：

```
OP_FALSE
OP_IF
  OP_PUSH "ord"
  OP_1
  OP_PUSH "text/plain;charset=utf-8"
  OP_0
  OP_PUSH "Hello, world!"
OP_ENDIF
```

首先字符串 ord 被`push`，以消除铭文与信封其他用途的歧义。

OP\_1 表示下一次推送包含`内容类型`\
OP\_0 表示后续数据推送包含`内容本身`\
大型铭文必须使用多次数据推送，因为 taproot 的少数限制之一是单个数据推送不得大于 520 字节。

铭文内容包含在`reveal`交易的输入中，并且铭文是铭刻在其第一个输出的第一个聪（Satoshi）上。 我们可以使用熟悉的序数理论规则来跟踪这个聪 sat，允许它被转移、购买、出售、丢失和恢复。


---

# Agent Instructions: 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://www.ordinalscn.org/xu-shu-li-lun-shou-ce/san-ming-wen.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.
