作者:0xmiddle;来源:PermaDAO
索引是铭文语境下的高频词。那什么是索引呢?为什么铭文需要依赖索引?索引上链对铭文又有什么重要意义?
1、 玩铭文的朋友,肯定经常听到「索引」这个词。无论是项目方,还是技术大佬,在铭文语境中,都经常用到这个词。它到底是什么呢?为什么铭文的存在,除了依赖区块链,还会依赖索引?
2、我们要理解的是,铭文的本质是把区块链当硬盘,在原有的交易数据的「备注」字段去存储一个新的账本,从而实现代币的发行。这个账本并不会被区块链本身验证和计算。
3、如果有人 transfer 一笔自己本不拥有的资产,或者 mint 已经被铸造完的代币,这道铭文依旧会上链,但它是无效的。也就是说,铭文在区块链上存储的是一个「脏账本」,里面同时存在有效数据和无效数据。
4、那么谁来负责甄别有效数据,并计算每个人的余额呢?这就是「索引」干的事情。当然,索引必须根据一套已形成社会共识的规则来做这件事。对于铭文而言,区块链只是 DA 层,索引才是真正的共识层。
5、如果索引分叉,那么共识就会分叉,铭文就会分叉。如果各钱包、浏览器、交易市场等索引服务者在索引升级时没有很好的协调,或者对索引规则存在分歧,这种情况会出现。
6、比特币 BRC20 铭文已多次出现这种情况。去年10月份,有用户发现,各大交易所运行着不同版本的 Ordinals 索引器,有的铭文在较新的 v0.9.0中会被索引,在更早的版本中则不会,导致了同一账户的余额在不同客户端显示不一致。后经协调,各方决定以 v0.9.0 为准,且冻结后续升级。
7、然而今年 1月份,风波再起,最大的 BRC20 钱包服务商 Unisat 宣布单方面更新索引器,市场上再度出现两种索引规则。对此事件,社区分化出不同派别,有反对升级的冻结派,有支持稳健升级的升级派,也有支持分叉的共存派。后续会如何,犹未可知。
8、现在我们理解了,索引是铭文的共识层。而且这种共识更多是一种社会共识。社会共识不一定不牢固,但在升级过程中,往往会经历较长时间的拉扯和混乱,才能形成某种程度的“最终确定性”。而这种混乱可能会给用户带来资产的损失。
9、我们有没有办法,把社会共识转化为链上共识呢?直觉上似乎没有,因为任何铭文都没有办法要求其依托的公链去验证铭文的有效性。但我们似乎可以另辟蹊径:如果把索引规则也放到链上呢?例如我们把 Ordinals 协议当前的共识版本放到比特币链上?
10、如果这么做,链上就会存在一份唯一有效的索引规则,任何人都可以基于链上数据和链上规则,运行出有效的、一致的最终状态。当然,这样也不能完全杜绝分叉,不同利益方还是可以上传不同版本的索引。但这种形式最起码会成为一种更有效的协调和确认机制,避免社会共识形成过程中的混乱。
11、这种形式的最早提出者是永久存储服务商 Arweave,该模式被称为存储共识范式,即 Storage-Based Consense Paradim (SCP),据称,Arweave 链上首个铭文项目 $ARIS,将采用该机制,将索引上传到 Arweave,成为首个「纯链上共识」的铭文。
12、笔者认为, SCP 范式的潜力,绝不止于铭文。它事实上创建了一种区别于 Rollup 的全新的 L2 模型。
13、这种模型比 L2 更加灵活,它不需要一定是链的形态,它可以是任何形态,对于 Web2 服务而言,可以通过 SCP 的方式,直接的切换成 Web3 服务,获得抗审查、不可篡改等特性。另外,相比 Rollup 模型,SCP 在扩容上的效果更佳显著,可以达到 Web2 级别的资源效率。
14、目前看来,SCP 范式在理论上是 Web2 应用向 Web3 大规模迁移的最佳路径。笔者看好 $ARIS 正在实践的「纯链上共识铭文」,它代表着铭文范式的转换。同时,笔者看好 SCP 的前景,期待 SCP 范式能被更多开发者落地实践,将更多形式的应用带到 Web3 生态中来。