链上链下协同计算( 六 )


Cash的机制与 MVP非常类似,不同之处在于资产在子链上以NFT的形式进行记录,其具体流程如下:
1、 用户在合约中锁定资产时,在上会收到一个代表所有存入资产的NFT;
2、Cash采用特定的默克尔树,每个NFT都有指定的位置,当发生转账时,相应位置记录转账信息,并将默克尔树的根哈希上传主链;
3、 在交易时需要提供该NFT之前的交易记录;
4、 当用户退出时,需要提交前两次交易的 proof;
5、 当用户取出资产时,存在一个质疑时段,任何人都可以通过交易记录进行质疑该用户操作 。
总体而言,技术路线的优点在于能够在Layer 2发生故障的情况下保证用户的资产安全,这种运用去中心化密码学的保障机制使得路线一度被社区热捧 。
但技术路线存在的问题在于以下几点:第一,在这种技术框架下限定了子链的数据结构,使得通用性拓展变得非常困难;第二,机制存在数据不可用问题,即主链没办法获取所有链下数据,只能通过根哈希进行简单验证,这也导致了退出机制比较复杂,往往需要很长的周期(数日)进行欺诈证明,同时用户需要保存自己的数据,时刻注意子链变化,非常影响使用体验 。
交易数据压缩上链,通用化平台即将落地,技术路线前景可观
机制指的是高度压缩交易并打包上传主链,并通过零知识证明或欺诈证明验证交易包的真实性,解决了的数据不可用问题 。机制实现了数据在链上,运算在链下的分层模式,从而最大程度地保证了资产的安全性 。
为了实现交易的高度压缩,子链上维护着账户资产数据,每个账户都有自己相应编号 。因此只需4个字节就能实现223个账户的索引,足以应对绝大多数情况 。与此类似,在所有能够压缩、又不影响可读性的地方都进行了压缩,压缩后的交易只有不到原来的十分之一 。通过对交易的压缩,机制能够更有效率地利用现有的Layer 1网络容量,从而实现扩容,并且在扩容的同时保证了数据的链上可用性 。
机制的核心问题就是验证压缩交易包中交易的真实性 。对于这个问题,解决方案主要分为两种类型:基于零知识证明的ZK ;基于欺诈证明的。目前两种方案都在快速发展,不同的团队选择了不同的技术机制,以太坊主链上的项目们也做出了自己Layer 2迁移的选择 。
采用零知识证明的ZK 是通过在发送交易包时,同时发送交易对应的零知识证明,智能合约通过零知识证明验证交易包的真实性 。总体流程如下:
1、用户转入并锁定资产,Layer 2状态树添加账户信息并生成对应资产;
2、在网络中,用户签名并发送交易;
3、排序者收集交易,压缩打包成交易包,并生成零知识证明,并按照交易包更新状态树;
4、排序者将交易包和零知识证明广播至主链;
5、智能合约通过零知识证明验证交易包的真实性,并且更新数值,执行相应的转账操作 。
ZK 的最大优势就是高度去中心化和验证效率高 。在侧链更新状态的同时生成零知识证明,矿工运行的智能合约能够通过零知识证明验证交易包中的新状态是否源于旧状态叠加交易产生,从而实现了Layer 2数据到Layer 1去中心化的数据验证,同时因为Layer 1能快速识别来自的数据真实性,能快速完成资产的取出 。
ZK 的劣势在生成零知识证明的过程复杂且困难,不仅需要大量运算,而且应用的定制化开发难度大,难以实现兼容现有应用的通用平台 。
(OP )技术路线选择相信操作者提交的交易包真实性,并对欺诈的行为做出处罚 。操作者需要质押了一定数量的资产,只有满足资产质押的条件智能合约才会接收其发送的交易包,任何人都可以针对交易包的真实性发布欺诈性证明,一旦欺诈行为被判定便会失去所有的质押资产 。通过对排序者和质疑者的经济学激励,使系统达到安全性的平衡 。