铭文的第二条传送带:URI 字段、ord: 协议与看不见的渲染源 图 1
铭文的第二条传送带:URI 字段、ord: 协议与看不见的渲染源 · 图 1

一枚铭文刻了什么,不止取决于正文数据,还取决于一个叫 URIs 的字段。它决定钱包和浏览器去哪里取内容、用什么方式渲染。官方文档把这件事写得非常具体:铭文的 MIME 类型由一个 tag 为 6 的字段携带,内容来源则以 URI 形式声明——三种写法对应三种完全不同的存在方式。

第一种是 data 内联:URI 形如 data: 前缀,后面直接跟着内容与编码。这种铭文的渲染源就是它自己,数据在链上,任何节点同步完区块就能渲染,不依赖外部网络。大多数图片铭文属于这类。

第二种是 ord: 协议。文档的原文是:铭文内容可以用 ord: 方案的铭文 URI 来寻址,这类 URI 由 ord: 前缀加一个铭文编号构成,编号遵循 Ordinal 编号规则。它的作用是把”我的内容”指向”另一枚铭文的内容”。被指向的那枚铭文叫委托铭文(delegate),你的铭文等于在它身上贴了一张便条:看它。渲染时 ord 会跟过去读对方的数据,但内容变更的风险也随之转移——你手里这枚铭文长什么样,从此由别人的铭文决定。把委托换成另一枚铭文,钱包里的画面就会换。社区用这个机制做升级通道和元数据迁移,也因此产生一个新问题:谁有权改你的渲染源,取决于谁拥有改写 URI 的合约或钱包权限,读委托铭文时要把这层从属关系看清楚。

第三种值得单列:文档里明确提醒,ord 使用的这一方案尚未在 IANA 注册。IANA 是互联网编号分配机构管协议名的地方,http:mailto: 都在册。一个没在 IANA 挂号的协议意味着什么?意味着任何软件遇到 ord: 都要靠事先约定才认得。这不是漏洞,而是实验性标准的常态——但也解释了为什么不同钱包对同一份 URI 的处理会分叉:有的按规范跟进,有的自行扩展。看到非标准协议的 URI,先确认你的钱包支持哪种行为,再谈渲染。

第三种里还有一类常见变体:一些第三方索引器或市场会扩展自己的协议前缀(例如指向自己系统的集合协议)。规则同样是”先约定、后渲染”:链上没有权威机构替你裁决某个前缀意味着什么,只有软件各自实现。对持有人的含义很直白——一枚铭文能不能显示、显示成什么,是它的 URIs 字段加上你打开它的那套软件共同决定的,不是字段本身单独承诺的。

日常核对可以照三步走:第一步,在 ord 兼容浏览器里打开铭文的 JSON 视图,看 URIs 字段是哪一类;data: 开头,内容在链上,最省心;ord: 开头,去查它指向的编号,把那枚委托铭文也纳入你的风险清单——它能不能改、归谁,比你自己这枚更重要;出现其他前缀,先查发起方的文档再决定信不信。第二步,看渲染参数里有没有 pointer 之类指向另一输出的字段(那是输出级指针,不是内容 URI,两套字段常被混淆,各管各的:pointer 管”载带聪落在第几聪”,URIs 管”内容去哪儿取”),别把两种”指向别的”混为一谈。第三步,如果你的钱包显示空白,先确认它支持该 URI 的协议前缀,而不是急着怀疑铭文本身有问题。

顺带一条实操提醒:铭文正文数据本身有单字段上限,元数据超过 520 字节时要拆进多个 tag 5 字段再拼接解码——这是同一份文档里的另一条细节,和 URIs 字段同属”铭文结构”的读法。把这些字段读顺,你对一枚铭文的理解就从”一张图”升级成了”一条数据供给链”:内容在内还是在外、由谁供、能不能断供。

还有一层分工要理清:内容渲染与地址指针是两套互不相干的机制。内容走 URIs 字段与委托链;地址指针走 pointer 字段,管的是载带聪在输出里的落点。看到『这枚铭文指向别处』的说法,先问一句指向的是内容还是聪,两问的答案往往一个是一个否。渲染链与载带链各查各的,才不会把两个问题当一个修。

本文为机制说明,不构成任何投资建议。

铭文的第二条传送带:URI 字段、ord: 协议与看不见的渲染源 图 2
铭文的第二条传送带:URI 字段、ord: 协议与看不见的渲染源 · 图 2