根据Nervos第四季度开发路线,将会在第四季度发布toCKB的第一个版本。
那什么是toCKB呢?
简单来说,toCKB就是Nervos开发的一种资产跨链系统,是 CKB 和其他区块链之间资产跨链的桥梁。
对于我们普通用户来说,到时只需要通过抵押一定数量的CKB,便可以将其他区块链上的资产迁移到CKB上来。
具体细节我们可以继续往下看:
toCKB是由一堆协议、CKB合约和链下模块组成,从而支持与任何区块链上的任何资产挂钩的CKB上的去中心化,并且可以随时赎回Token。
只要你可以在区块链上转移资产并构建SPV证明来验证交易,就可以在toCKB合约中实现SPV验证逻辑。
[SPV] 简单支付验证(Simplified Payment Verification),以比特币为例,目前节点如果存储完整的区块链数据有近几百G,一般的个人终端上无法满足这个量级的存储空间,SPV简单支付验证,在SPV节点不保存全部的区块链数据,只保存区块头的数据,这样的话大小应该是全部数据的千分之一,对整个存储的容量要求就小多了,这种节点一般也称为SPV客户端或者轻量级客户端。存储区块头信息理解区块链结构,这种模式无法验证全部交易,但是能验证支付,所谓验证支付就是通过区块头的HASH信息去验证这笔支付是否被确认,根据区块的深度,获知这个支付是否被支付确认。
然后,任何人都可以使用toCKB合约通过锁定资产在与同等资产的CKB上铸造Token。他们还可以转移Token并将其销毁以在原始区块链上赎回资产。
使用结合了绑定和SPV证明验证的方法来实现价格对等,这涉及到被称为签名者的新角色。
签名者充当原始区块链的警卫,以确保在铸造Token时资产被锁定,并在赎回时将资产发送回用户。
任何人都可以通过绑定一定数量的CKB来签名,以确保其在系统中的行为保持诚实,如果不诚实或抵押不足,则可能失去其抵押CKB的风险。
CKB合约调解了跨链的生命周期,包括请求,绑定,赎回和失败处理。链下模块可帮助用户轻松使用整个系统,包括构建交易,监控CKB以及其他自动执行操作的区块链,生成SPV证明等。
整个跨链过程大概是这样的:
命名规则:区块链称为“ XChain”,资产称为“ XAsset”。CKB上与XAsset关联的令牌称为“ XToken”
用户在CKB上提出抵押请求,并做出一些保证。如果某人以签约人的身份进行担保,但用户没有跟进,则用户将失去保证,以补偿签约人的CKB流动性损失。
有人绑定CKB成为签名者,为用户提供XChain地址以存放XAsset。
用户将其XAsset转移到XChain上的签名者。
用户生成交易证明并将其中继到CKB,铸造一对一的CKB令牌– XToken。签名者获得XToken的一定百分比的费用,例如0.1%。
用户可以根据需要处理XToken。
当用户想在XChain上兑换XAsset时,他可以在CKB上提出兑换请求,并通过toCKB合约在CKB上销毁他的XToken。
签名者将XAsset发送回XChain上的用户。
签名人生成交易证明,在CKB上中继交易证明,并撤回抵押物。
toCKB为何可以如此跨链?
这不得不归功于CKB Layer1对于各种密码学原语的灵活支持,让 CKB 在跨链方面有着很大的优势。因为跨链的核心就是对其他区块链上的交易进行验证,而负责验证的智能合约需要支持各种密码学原语,从而验证交易。
举个例子,如果一个区块链想要验证在以太坊上的交易,它必须支持 Keccak 哈希算法,如果想要验证在 Zcash 的交易,则需要支持 blake2b 哈希算法。所以,如果想要连接更多的区块链项目,那就必须得支持更多的密码学原语,因为各个项目之间使用的哈希算法并不相同。
而对密码学原语的灵活支持,是 CKB 相比其他区块链更有优势的地方,所以在 CKB 上建立一个通用的跨链框架是完全可能的。
在第四季度发布toCKB的第一个版本时,toCKB将首先支持BTC、ETH和CKB的跨链,后期将会支持更多其他资产。
以上内容整理自:
https://talk.nervos.org/t/tockb-an-asset-cross-chain-system/4945
https://mp.weixin.qq.com/s/BBPB1_py5R5kKt9I1yRzag