Acala 和 Phala 联合发布首个隐私跨链用例

Acala Network 閱讀 20780 2020-12-23 15:36
分享至
微信掃一掃,打開網頁後點擊屏幕右上角分享按鈕

Acala 和 Phala 联合发布首个隐私跨链用例

01

为什么我们需要跨链?

Why We Need Cross Chain ?

在可预见的未来,平行链将颠覆所有现有的区块链技术。平行链不仅具有 Layer 1 区块链和智能合约的优势,如自主性、内生安全性和专业性,平行链还具备以太坊 Layer 2目前不具备的互操作性

什么是互操作性?Parity 核心开发者 Tomasz Drwięga 在Polkadot首届社区会Polkadot Decoded上的分享可以帮助我们更好理解:

假如你提交了一份航班延误保险的赔付申请,在正式赔付前,保险公司会从航空公司获取航班是否延误的数据,并从机场获取数据验证你是否准时去了机场。若符合以上两个条件,保险公司才会将赔付资金打入你的银行账户。该场景中,保险公司对数据的调用充分展示了互操作性的特点。

目前的平行链已经有很多种类了,比如有资产的平行链、无资产的平行链、专业于某一领域的平行链、服务于某一社区的枢纽链。

Acala 和 Phala 联合发布首个隐私跨链用例

以平行链为例,使用 Polkadot/Kusama 跨链技术,我们可以实现什么样的用例?

现在我们假设有两个区块链最常使用的业务:

Acala Network 是一个去中心化开放式金融协议。Acala 具备跨链多资产抵押的稳定币 Honzon 协议释放 Staking 资产流动性 Homa 协议以及去中心化交易所 DeX 等 DeFi 模块

Phala Network 是一个区块链隐私协议。Phala通过可信计算技术+区块链,实现了图灵完备的隐私合约,既保证智能合约可靠执行,又不必泄露敏感数据。

在此条件下,我们想:

让 Acala 上的资产、DeFi 合约使用 Phala 的隐私能力

让 Phala 上的隐私资产从 Acala 获取

显然,在任何非 Polkadot/Kusama 协议下,不管是 Acala 还是 Phala ,都要耗费巨大的开发者资源和精力,但是,若我们采用 Polkadot/Kusama 的跨链协议,不用改动一行代码,就能实现这样的用例!

02

如何实现跨链交互?

How to realize the interoperability?

跨链原理由中继链、平行链、连接链之间的协议 XCMP 组成。跨链交易通过基于 Merkle 树的简单排队机制来解决,以确保准确性。中继链验证人的任务是将一个平行链的输出队列上的交易移动到目标平行链的输入队列中。但是,只有关联的元数据作为哈希存储在中继链存储器中。

XCMP 队列必须首先通过打开两个平行链之间的通道来启动。通道由发送方和接收方的平行链辨识,这意味着它是一个单向通道。一对平行链之间最多可以有两个通道,一个用于向另一个链发送消息,另一个用于接收消息。

XCMP 协议可以细分为:

VMP:平行链-中继链通信

HRMP:平行链-中继链-平行链中转通信

XCMP:平行链-平行链直接通信

目前 Rococo v0 上实现了 VMP 与 HRMP,但 Rococo v1 还在开发中,因此我们在 v0 上实现了 Phala-Acala 之间的跨链用例。

03

架构

Architecture

Acala 和 Phala 联合发布首个隐私跨链用例

如上图所述,基于 Polkadot XCM 的 Acala-Phala 跨链实现由三部分组成:

链:Rococo 中继链、两个平行链:Acala、Phala

跨链操作:Acala -中继链和 Phala -中继链的消息传递,实现了 Acala 转账到暗钱包内部,以及暗钱包内部到 Acala

隐私黑箱:Phala 上的隐私交易一切发生在 TEE 内运行的保密合约,所有加密数据状态对外不可见,从而实现了隐私效果

04

从 Acala 向 Phala 发起一笔转帐

Transfer ACA(testnet) from Acala to Phala

在 Polkadot 世界中,除了个人控制的账号以外,还有“主权账号”的概念。例如,一个 Substrate 上的 Pallet 模块(或一个智能合约)就可以持有一定的资产。而当一个平行链接入了 Polkadot 之后,它也可以在其他平行链上获得自己的账号。主权账号由对应的平行链控制。每个平行链都有唯一的 ID ,会被映射成它对应的主权帐号。

Acala 和 Phala 联合发布首个隐私跨链用例

*https://apps.acala.network/

当 Alice 在 Acala 向 Phala 发起一笔转帐交易时,例如从转出 1000 ACA 到 Phala 的 Bob 账户,背后发生了这些事件:

首先在 Acala 链上,会从 Alice 账户里取出(Withdraw) 1000 ACA,存入 (Deposit) Phala 的主权帐号

Acala 链会发起一个 XCMP 转账消息,表示在 Acala 上已经发起了到 Phala 下 Bob 账号的跨链转账,并把消息发送给中继链,这是一个 VMP UpwardMessage

中继链收到消息后,会根据平行链 ID 解析出消息的接收方是 Phala,它就会把消息向 Phala 转发,这是一个 VMP DownwardMessage

HRMP 是 Rococo v0 已经支持的一种简单跨链消息传递方式,它的原理是 A 链发起 UpwardMessage 给中继链,再由中继链发起 DownwardMessage,把消息中转给 B 链。因此,HRMP 是由两个 VMP 组合实现的。

05

Phala 暗钱包接受转账并转换为隐私币

Receive and convert assets to the private coin

Phala 与其他链有一个很大的不同。通常一个平行链会采用波卡提供的标准实现来接受外部转账,并为用户结算。但 Phala 作为一个通用的隐私保护层,主链对应用保持中立是十分重要的,因此 Phala 主链不对跨链转账做任何处理与结算,而直接中转到保密合约之中。

Acala 和 Phala 联合发布首个隐私跨链用例

在 Phala 端,跨链转帐消息由主链接受后,直接路由至TEE中的暗钱包合约。当保密合约接收到消息后,就会为账户 Bob 增加 1000 ACA。

保密合约中的转账都是端到端加密的。虽然在外部可以看到 Bob 收到了 1000 ACA,但他可以发起隐私转账,再次转账给 Charlie,作为暗资产,Bob 所有的后续交易在链上都不可见,也无法追踪,从而保证了隐私性。

因此在 Demo 中,我们演示了两个暗钱包之间的隐私交易。该隐私交易是端到端加密的,在链上只能看到密文,因此该交易的细节(如发送地址、接受地址、金额数量)在链上不可见。

06

从 Phala 向 Acala 发起一笔转账

Transfer the ACA back from Phala to Acala

最后,通过 Phala 的暗钱包可以向 Acala 发起一笔跨链转帐,以实现出金。

例如 收到 Bob 通过隐私转账转过来的 1000 ACA 后,Charlie 可以在 Phala 端发起请求,向 Acala 的 Alice 账户发送 500 ACA,则背后发生了这些事情:

TEE 收到转帐命令,将 Charlie 账户中减少 500 ACA,并向 Phala 链上发起一笔跨链转帐交易

Phala 主链收到跨链转账请求后,会直接把这笔转账消息发给中继链,这是一个 VMP UpwardMessage

同样,中继链会把它转发给 Acala,这是一个 VMP DownwardMessage

Acala 收到消息后,从 Phala 主权账户中取出 500 ACA 存入 Alice 的账户,这笔跨链转帐交易完成

07

结语

What's Next?

在现有的区块链例如以太坊中,DeFi 和隐私 Layer 2 的结合需要通过以太坊来互相确认,而一个 Layer 2 协议无法与另一个 Layer 2 协议互操作。这就导致了用户无法用 Loopring 协议直接调用 Tonado Cash,或者用 Aragon 直接调用 Aztec。

但是在 Polkadot 上,XCMP 协议可以让具有强自定义能力的平行链在极少的工作量下,就能实现便捷的跨链的互操作。通过 XCMP 实现的可组合性,可以让开发者像搭建乐高积木一样搭建出丰富的应用案例。

在这篇文章里,我们就展示了 XCMP 强大的能力,我们可以直接让 Acala 和 Phala 实现互操作,通过 DeFi 平行链和隐私平行链的组合,让 DeFi 得到了隐私能力。在以太坊 DeFi 生态下,我们已经看到了可组合性的优势,因此我们相信 XCMP 会成为强大的 Dapp Building Block,并期待在 Polkadot 上看到由平行链组合出的更多全新的应用。

Acala 和 Phala 联合发布首个隐私跨链用例

近期市场上有诈骗团伙出售 Acala 相关 token 资产,并在市场上混淆视听大肆行骗,目前已发现有骗子在 Uniswap 等平台上发行了 ACA ,骗取用户 ETH

btcfans公众号

微信掃描關注公眾號,及時掌握新動向

來源鏈接:https://acala.network/
免責聲明:
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場
2.本文版權歸屬原作所有,僅代表作者本人觀點,不代表比特範的觀點或立場
標籤: 跨链 Acala Phala
上一篇:BTC突破2万美金,下一步星辰大海 下一篇:数字人民币“碰一碰”体验演示,“碰一碰”不等于“双离线”!

相關資訊