摘不下来的证书:TON 的 TEP-85 把灵魂绑定代币做成可撤销凭证 图 1
摘不下来的证书:TON 的 TEP-85 把灵魂绑定代币做成可撤销凭证 · 图 1

灵魂绑定代币(SBT)这个词大家听得多了,但多数讨论停在一句话上:不能转。TON 生态的 TEP-85 把’不能转的代币’往下做了一层工程化:它不只规定不能转,还回答了三个现实问题——怎么向第三方证明你持有它、你自己想丢掉怎么办、发行方发现发错了怎么办。这三个问题的答案合在一起,才构成一枚链上凭证的完整生命周期。

先看定义。TEP-85 明确写道:SBT 是一种特殊的 NFT,不能被转账;它在 TON 的 NFT 标准(TEP-62)接口之上扩展,其中 transfer 消息必须始终被拒绝。也就是说,SBT 的存储结构、查询方式和 NFT 完全一致,市场与浏览器可以像读普通藏品一样读它,唯一被焊死的是转让这条路。规范接着给了三种可选机制。第一种是持有人的退出权:任何人都可以在任何时候销毁(burn)自己持有的 SBT。这条很容易被忽视,却非常重要——不能卖不等于被强制持有,证书体系必须允许本人’不再参与’,否则它就从凭证变成了枷锁。第二种是发行方的撤销权:TEP-85 的措辞很克制,撤销是由权威方(authority)执行的可选项,用在凭证过期、资格被吊销这类场景。第三种也是最有工程味道的一种:链上所有权证明。

把这三条放在一起看,会发现规范作者对’证书’的理解比’代币’更深。一份合格的证书天然包含三种生命事件:本人放弃、到期吊销、随时可验。ERC 世界直到较晚才用多个提案分别补齐这些碎片,而 TEP-85 在一份标准里一次写完,选择这种设计的直接好处是发行者不必组合拼装,代价则是所有实现被约束在同一套消息格式里。对读代码的人来说,这意味着审一枚 TON SBT 时只需要对照固定清单:transfer 是否无条件拒绝、burn 是否留了持有人入口、revoke 的授权密钥在谁手里、prove_ownership 的回包是否会把 with_content 带上敏感数据——四个问题问完,实现成色就有八成判断。

所有权证明解决的是一个老问题:合约怎么确认’你确实持有某枚不能转账的代币’?如果 SBT 只能静态地躺在账户里,任何依赖它授权的服务都得自己去查链上状态,跨合约、跨场景都很笨重。TEP-85 定义了 prove_ownership 入站消息:持有人向 SBT 合约发一个带 query_id、目标地址和转发载荷的请求,SBT 合约确认持有关系后,把一份带有持有信息的回包转发给目标合约——包括是否附带内容(with_content 参数)。这套’证明-回包’的模式和 TON 钱包的钱包发现机制同一血统,用消息流替代查询接口,让市场、DAO、活动平台可以在一笔交易内完成’验证你是某某’并触发相应动作。规范文档举的例子很务实:市场给 SBT 持有者打折、大学发放学历认证,都是同一接口的两种用法。

对使用者,这套规范的读法有三层。第一层,认清 SBT 不是资产:它不可转让、市值概念模糊,真正值钱的是它挂钩的服务。买’能转的荣誉徽章’和领’不能转的资格证书’是两种完全不同的交易,前者可以在二级市场定价,后者只能评估它背靠的权益。第二层,搞清楚消失路径:你的 SBT 会怎样离开你?TEP-85 的标准实现里只有两条路——你主动销毁,或者权威方撤销。如果某个项目声称’SBT 不可转让’,却又留着发行方随时改内容的后门,那要区分清楚:TEP-85 管的是归属不可变,内容可变性由 NFT 内容层(可升级内容 cell)另行决定,两者要分开查。第三层,验证方式:当某个服务要求’证明你持有’时,它发起的是标准 prove_ownership 流程还是索要你的助记词/签名授权?标准的证明流程只产生一笔正常的链上消息交换,不需要交出任何密钥,这是辨别钓鱼的最快分界线。

TEP-85 的野心不在发明新概念,而在给’SBT 即凭证’这个定位补全接口:可退出、可撤销、可证明。一个不能退出的凭证是负资产,一个不能撤销的凭证迟早砸发行方的脚,一个无法高效验证的凭证则没人愿意接入。看任何链上的灵魂绑定项目,拿这三问去问,标准答案就摆在这份 TEP 里。

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

摘不下来的证书:TON 的 TEP-85 把灵魂绑定代币做成可撤销凭证 图 2
摘不下来的证书:TON 的 TEP-85 把灵魂绑定代币做成可撤销凭证 · 图 2