黑科技DFINITY与以太坊的深度集成 如何实现合约的直接互操作?_SOL:PAR

在 ICP League 之前的文章《为什么说是下一代区块链,DFINITY的8大核心优势!》中提到过 DFINITY 的核心密码学技术 ChainKey,在描述其特性时,我预测了 DFINITY 能通过 ChainKey 签名的方式调用以太坊等其他公链。

而在最近 DFINITY 的创始人 Dominic 发布的推特与文章中,详细介绍了从 DFINITY 到以太坊,再从以太坊到 DFINITY,无需中介的合约互操设计,这给我们展示了两者集成的巨大潜力。

总结如下:

ChainKey 技术让 DFINITY 的区块链具备大小为 48KB 的唯一公钥;

基于 ECDSA 的改进,DFINITY 智能合约可以签名发出比特币与以太坊类型的交易;

在以太坊的智能合约中保存 48KB 的唯一公钥能去验证链发来的消息,来保证交易与和状态的有效性;

在 DFINITY 智能合约(4GB运行内存)中实现以太坊的轻节点,检验区块获得调用返回值;

无需中间件、跨链桥、Hub、预言机,DFINITY 与以太坊合约直接通过点到点方式互操作;

可以使用 DFINITY 为以太坊 DeFi 等应用扩容,比如由 DFINITY 运行某个以太坊游戏的数据操作的指令,再通过以太坊直接结算;

两者的无缝集成将打来巨大的商业潜力,DFINITY 能为以太坊无限扩容,并实现中间件、前端资源、业务逻辑等全栈的去中心化。

ChainKey 是互联网计算机的核心技术,是实现上述合约互操作魔法的原理。

在以太坊中,由于使用 PoW 机制竞争出块,节点使用自己的私钥签名区块链并广播,当你去验证这个区块时,就需要获取节点的公钥。因为每次出块节点可能不同,因此你需要保存大量的签名信息,并同步区块。因此用户想去验证以太坊的交易,需要同步 400GB 的区块。普通用户只用通过运行在 AWS 上钱包中间件 Infura 的全节点来访问。

而在 DFINITY 中,基于可验证随机数 VRF + 门限签名 BLS + 非交互式分布式密钥分发 Noninteractive DKG,保证了区块链只具备唯一不可变的公钥,所有的区块的签名都能使用这个 48KB 的唯一公钥验证,来保证交互与区块的可信。

DFINITY 链具备唯一的公钥,但并不具备对应的唯一私钥,组成链的节点保存了私钥的碎片,他们使用这个碎片签名区块,只有在收集到足够多的私钥碎片后,才能聚合出完整的签名,从而能被唯一公钥验证。这也是 DFINITY 实现一致性共识的方式。

非交互式分布式密钥分发 Noninteractive DKG 向节点分配的了私钥碎片,因为其非交互式的特点,分配私钥碎片时基本对带宽占用很低,节点可以随意的加入与退出网络,这保障了整体的去中心化。

因此任何的设备,即使是另一条区块链上的智能合约,只要保存了这个公钥也能亲自去验证 DFINITY 链的消息、事件与状态。ChainKey 技术就是能实现合约互操作的基础。

ChainKey 能支持 ECDSA,这是比特币和以太坊都在使用的密码学原语,因此可以通过 ChainKey 代理 DFINITY 上的智能合约签名,不需要生成对应的密钥(使用 BLS 阀值签名技术)。在使用一条链唯一的 ChainKey 进行签名后,通过 P2P 发送一个满足比特币与以太坊格式的交易。最终调用以太坊的智能合约。

Splattercat项目Discord服务器和推特账户遭到攻击:金色财经报道,据CertiK监测,Splattercat项目Discord服务器和推特账户遭到攻击。请社区用户在频道修复之前不要点击其发布的任何链接。[2022/12/20 21:55:23]

同时 DFINITY 的智能合约都是使用 actor 的异步消息处理模型,因此可以对以太坊的调用的返回设置等待。

(0) 在 DFINITY 上部署一个代理签名合约,运行着 ChainKey 的模拟签名代码。

(1) DFINITY 上的合约调用代理签名合约。

(2) DFINITY 的合约需要调用以太坊,向签名合约发送合约地址、调用方法、参数。

美股三大指数集体收涨,标普500指数涨1.42%:金色财经报道,行情显示,美股三大指数集体收涨,道指涨0.98%,标普500指数涨1.42%,纳指涨1.67%[2022/8/26 12:49:00]

(3) 使用链唯一的公钥签名产出以太坊格式交易,通过 P2P 手段在以太坊网络广播交易,等待交易确认。

(4) 获取以太坊的调用返回的方式有两种可选:早期可以在以太坊上专门部署一个查询合约,专门用于向 DFINITY 返回以太坊调用结果,但这个成本依然很高;后续可以直接在 DFINITY 的容器中建立一个同步以太坊状态的轻节点,直接验证并返回结果。

Axie Infinity:跨链桥问题导致以太坊链上一些存款被卡,暂无法发送到Ronin链上钱包:7月2日消息,Axie Infinity官方在社交媒体上发文表示,由于跨链桥问题导致以太坊区块链上的一些存款被卡,因此资金不会被发送到Ronin链上钱包,但这些资金不会丢失。

Axie Infinity已经确定了问题并正在研究解决方案,预计将会对网桥进行更新,而且已经在验证者的支持下启动流程,预计更新将在下周末进行。目前很难说这个问题多久会发生一次,仅知道跨链桥开通以来出现过两次,一旦解决方案到位,当前被卡的存款会被发送到指定Ronin钱包。[2022/7/2 1:46:36]

但在获取以太坊的调用返回时,还是存在问题,使用第一种方式在以太坊上部署查询合约的成本很高,因为每一次的返回都需要发送额外的合约调用;而在 DFINITY 上建立轻验证节点可能受到当前容器运行内存 4GB 上限的制约,以太坊的状态可能要在很多个容器中分开存储。因此我们可能需要开发者实现更有效率的创新方案。

DFINITY 底层密码学的创新的确来带了一些使用体验上的突破,用户无需中间件就可以享受端到端的区块链级别安全性。这同时也有机会帮助以太坊实现可直接互操作的扩容。

这种跨链合约间的互操作性被大范围使用后,chainlink、TheGraph、Infura 等中间件存在的意义会被逐渐替代,或者被直接部署在 DFINITY 上而获得无限扩宽与去中心化优势。在 DFINITY 上编写数据库容器替代中间件,是一个不错的方向,也是我们重点关注的领域之一。从这个角度看,DFINITY 像一个具备通用计算能力的中间件与前端服务,能结合两者的特点的商业尝试会更加亮眼,比如能快速验证以太坊上 NFT 视频、图片等资源,并通过运算能力扩展玩法的专用 NFT 平台。

同时 DFINITY 也可以帮助以太坊实现扩容,在链上快速地、低成本地维护与处理大量数据。并且这种扩容能力是一劳永逸的,因为作为一个异步消息处理机器,DFINITY 具备无限划分子网实现扩容的能力。在以太坊上 1GB 的智能合约需要花费上千万美元,而在 DFINITY 上每年只需要花费5美元。

因为可以实现合约级别的互操作,而 DFINITY 链本身具备高安全性,且不依赖与 AWS 等云服务,也不需要只运行在几个节点上的跨链桥、Layer2 状态链等,因此也避免了传统二层扩容方案的流动性、中心化与安全性问题。

在以太坊上的运行结算层,把 DFINITY 当作指令层使用,这种架构具备很多的可能性。同时基于 DFINITY 的身份系统与反向 gas 模型,极大的降低了使用门槛,用户甚至可以不需要为使用以太坊的合约支付 gas,我可以预见这样一种业务:在 DFINITY 上实现以太坊上 Compound、AAVE、DYDX 等聚合形态的第三方前端,然后免除用户使用的 gas,第三方前端的创建者可以通过推荐策略并收取一定比例收益,来支付以太坊的 gas ,同时赚到钱。

比如可以在 DFINITY 实现完整的中心化交易的逻辑,包括订单簿的撮合与做市,用 DFINITY 区块链不可篡改的记录价值与资产的流动,最终在以太坊上进行结算,这能保证去中心化的安全性、无准入与公共所有权,也能获得中心化传统交易所的体验。

同时如 AXIE Infinity 这类的游戏,也可以通过 DFINITY 的扩展能力升级玩法,目前的 AXIE Infinity 并不是可交互的,在小精灵对战之前胜负就已经决定,但是使用 DFINITY 集成指令层后,可以实现即使的策略对抗。

甚至可以在 DFINITY 上托管 ETH 的 FlashBot 套利机器人,而不用再去部署一个中心化服务器,并把自己的私钥托管在中心化服务器上。因为容器并不共享状态,你的策略可以设置为 “Private”,也可以通过分享策略获取收益(DFINITY 生态项目 ENSO)。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:0ms0-7:450ms