为什么我们需要跨链?
在可预见的未来,平行链将颠覆所有现有的区块链技术。
平行链不仅具有Layer1区块链和智能合约的自主性、内生安全性和专业性等优势,它还具备以太坊Layer2目前不具备的互操作性。
什么是互操作性?Parity核心开发者TomaszDrwi?ga在Polkadot首届社区会PolkadotDecoded上的分享可以帮助我们更好理解:
假如你提交了一份航班延误保险的赔付申请,在正式赔付前,保险公司会从航空公司获取航班是否延误的数据,并从机场获取数据验证你是否准时去了机场。若符合以上两个条件,保险公司才会将赔付资金打入你的银行账户。
该场景中,保险公司对数据的调用充分展示了互操作性的特点。
目前,平行链已自行发展出多种类别,比如:有币平行链、无币平行链、垂直于某一领域的平行链、服务于某一社区的枢纽链……
新加坡私募股权基金ACA Group放弃收购BitFlyer Holdings:金色财经报道,据日经新闻:新加坡私募股权基金ACA Group已决定放弃收购日本加密货币交易商BitFlyer Holdings。[2022/10/1 18:36:57]
以平行链为例,使用Polkadot/Kusama的跨链技术,我们可以实现什么样的用例?
首先,我们不妨假设目前有两个最常使用的区块链协议及业务:
AcalaNetwork是一个去中心化开放式金融协议。Acala具备跨链多资产抵押的稳定币Honzon协议、释放Staking资产流动性的Homa协议以及去中心化交易所等DeFi模块PhalaNetwork是一个区块链隐私协议。Phala通过可信计算技术+区块链,实现了图灵完备的隐私合约,既保证智能合约可靠执行,又不必泄露敏感数据。在此条件下,我们想:
让Acala上的资产、DeFi合约使用Phala的隐私能力让Phala上的隐私资产从Acala获取显然,在任何非Polkadot/Kusama协议下,不管是Acala还是Phala,都要耗费巨大的开发者资源和精力,但是,若我们采用Polkadot/Kusama的跨链协议,不用改动一行代码,就能实现这样的用例!
Acala已通过并执行恢复运营的第二阶段社区投票:9月29日消息,Acala已通过并执行恢复运营的第二阶段社区投票,金库所有者可以管理债务头寸,以确保在第三阶段启用清算之前头寸是安全的,DEX交易、转账、LDOT即时赎回、XCM、EVM+等服务也已恢复,此外因预言机被禁用,用户需以当前市场价值评估金库价值。而预言机、清算和CDP借贷将在第三阶段启用。[2022/9/29 22:39:22]
跨链用例展示
DemoVideo:https://www.odaily.com/video/3151
Github:https://github.com/Phala-Network/phala-blockchain/tree/rococo
Rococo中继链:https://rococo-demo.phala.network/#/settingsAcala:https://rococo-demo-acala.phala.network/#/explorerPhala:https://rococo-demo-phala.phala.network/legacy.html#/explorerAcala钱包:https://acala-dapp-4higttopf.vercel.app/#/walletPhala暗钱包:https://rococo-demo-phala.phala.network如何实现跨链交互?
Acala波卡平行链众贷活动筹集DOT数量突破600万枚:11 月 7 日消息,据官方数据显示,Acala 社区参与众贷人数达 40,272 人,共锁定 6,277,366.9 枚 DOT,在波卡首轮平行链插槽竞拍中暂时占据榜首位置。[2021/11/7 6:36:47]
跨链原理由中继链、平行链、连接链之间的协议XCMP组成。跨链交易通过基于Merkle树的简单排队机制来解决,以确保准确性。中继链验证人的任务是将一个平行链的输出队列上的交易移动到目标平行链的输入队列中。但是,只有关联的元数据作为哈希存储在中继链存储器中。XCMP队列必须首先通过打开两个平行链之间的通道来启动。通道由发送方和接收方的平行链辨识,这意味着它是一个单向通道。一对平行链之间最多可以有两个通道,一个用于向另一个链发送消息,另一个用于接收消息。
XCMP协议可以细分为:
VMP:平行链-中继链通信HRMP:平行链-中继链-平行链中转通信XCMP:平行链-平行链直接通信目前Rococov0上实现了VMP与HRMP,但Rococov1还在开发中,因此我们在v0上实现了Phala-Acala之间的跨链用例。
Architecture
Acala基金会将在9月29日启动流动性激励计划:9月18日消息,Acala基金会将在9月29日启动流动性激励计划,分发35万枚KAR代币。从北京时间9月29日开始,所有将LKSM抵押至稳定币系统的用户,或为LKSM/KSM提供流性的用户,可以分享350,000 KAR奖励。
据悉,KSM Liquid Staking (LKSM) 是Karura网络的核心产品功能,能帮助用户进一步优化DeFi盈利策略。(Acala Land)[2021/9/18 23:34:51]
如上图所述,基于PolkadotXCM的Acala-Phala跨链实现由三部分组成:链:Rococo中继链、两个平行链:Acala、Phala跨链操作:Acala-中继链和Phala-中继链的消息传递,实现了Acala转账到暗钱包内部,以及暗钱包(PrivateWallet)内部到Acala隐私黑箱:Phala上的隐私交易一切发生在TEE内运行的保密合约,所有加密数据状态对外不可见,从而实现了隐私效果从Acala向Phala发起一笔转账
Gauntlet为Acala先行网Karura抵押资产KSM设置初始参数:官方消息,链上风险管理模拟平台Gauntlet与Acala团队合作,为Acala和Karura提供自动化的金融风险管理。鉴于当前的市场状况,Gauntlet在Karura推出时为KSM抵押资产得出了以下保守参数建议:清算比率为2.25、最低抵押率为2.75、清算罚款为17%、稳定费为3%、债务上限为2500万美元。[2021/7/1 0:19:33]
在Polkadot的世界中,除了个人控制的账号以外,还有“主权账号”的概念。例如,一个Substrate上的Pallet模块就可以持有一定的资产。而当一个平行链接入了Polkadot之后,它也可以在其他平行链上获得自己的账号。主权账号由对应的平行链控制。每个平行链都有唯一的ID,会被映射成它对应的主权账号。
当Alice在Acala向Phala发起一笔转账交易时,例如从转出1000ACA到Phala的Bob账户,背后发生了这些事件:
首先在Acala链上,会从Alice账户里取出(Withdraw)1000ACA,存入(Deposit)Phala的主权账号Acala链会发起一个XCMP转账消息,表示在Acala上已经发起了到Phala下Bob账号的跨链转账,并把消息发送给中继链,这是一个VMPUpwardMessage中继链收到消息后,会根据平行链ID解析出消息的接收方是Phala,它就会把消息向Phala转发,这是一个VMPDownwardMessageHRMP是Rococov0已经支持的一种简单跨链消息传递方式,它的原理是A链发起UpwardMessage给中继链,再由中继链发起DownwardMessage,把消息中转给B链。因此,HRMP是由两个VMP组合实现的。
Phala暗钱包接受转账并转换为隐私币
Phala与其他链有一个很大的不同。通常一个平行链会采用波卡提供的标准实现来接受外部转账,并为用户结算。但Phala作为一个通用的隐私保护层,主链对应用保持中立是十分重要的,因此Phala主链不对跨链转账做任何处理与结算,而直接中转到保密合约之中。
在Phala端,跨链转帐消息由主链接受后,直接路由至TEE中的暗钱包(PrivateWallet)合约。当保密合约接收到消息后,就会为账户Bob增加1000ACA。
保密合约中的转账都是端到端加密的。虽然在外部可以看到Bob收到了1000ACA,但他可以发起隐私转账,再次转账给Charlie,作为暗资产,Bob所有的后续交易在链上都不可见,也无法追踪,从而保证了隐私性。
因此在Demo中,我们演示了两个暗钱包之间的隐私交易(ShieldedTransction)。该隐私交易是端到端加密的,在链上只能看到密文,因此该交易的细节(如发送地址、接受地址、金额数量)在链上不可见。
从Phala向Acala发起一笔转账
最后,通过Phala的暗钱包可以向Acala发起一笔跨链转帐,以实现出金。
例如,收到Bob通过隐私转账转过来的1000ACA后,Charlie可以在Phala端发起请求,向Acala的Alice账户发送500ACA,则背后发生了这些事情:
TEE收到转帐命令,将Charlie账户中减少500ACA,并向Phala链上发起一笔跨链转账交易Phala主链收到跨链转账请求后,会直接把这笔转账消息发给中继链,这是一个VMPUpwardMessage同样,中继链会把它转发给Acala,这是一个VMPDownwardMessageAcala收到消息后,从Phala主权账户中取出500ACA存入Alice的账户,这笔跨链转帐交易完成。结语
在现有的区块链例如以太坊中,Defi和隐私Layer2的结合需要通过以太坊来互相确认,而一个Layer2协议无法与另一个Layer2协议互操作。这就导致了用户无法用Loopring协议直接调用TonadoCash,或者用Aragon直接调用Aztec。
但是在Polkadot上,XCMP协议可以让具有强自定义能力的平行链在极少的工作量下,就能实现便捷的跨链的互操作。通过XCMP实现的可组合性,可以让开发者像搭建乐高积木一样搭建出丰富的应用案例。
在这篇文章里,我们就展示了XCMP强大的能力,我们可以直接让Acala和Phala实现互操作,通过Defi平行链和隐私平行链的组合,让DeFi得到了隐私能力。在以太坊Defi生态下,我们已经看到了可组合性的优势,因此我们相信XCMP会成为强大的DappBuildingBlock,并期待在Polkadot上看到由平行链组合出的更多全新的应用。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。