Axelar白皮书中文版

Axelar网络

​ 将应用程序与区块链生态系统连接起来

​ ···················································草案 1.0

​ ·················································一月 2021

摘要

多个区块链生态系统正在出现,它们提供了对用户和应用开发者有吸引力的独特和鲜明的 特征。然而,各生态系统之间的通信非常稀少和零散。为了使应用程序能够无摩擦地跨区块链生态系统进行通信,我们提出了Axelar。Axelar栈提供了一个去中心化的网络、协议、工具和API,允许简单的跨链通信。Axelar协议套件由跨境路由和传输协议组成。一个由验证者组成的去中心化的开放网络为该网络提供动力;任何人都可以加入、使用和参与。拜占庭式的共识、密码学和激励机制被设计用来实现跨链请求所特有的高安全性和灵活性要求。

简介

区块链系统正在迅速普及,并吸引了资产代币化、去中心化金融和其他分布式应用的新用例。几个主要的平台,如Ethereum、Monero、EOS、Cardano、Terra、Cosmos、Avalanche、Algorand、Near、Celo和 Polkadot,提供了独特的功能和开发环境,使它们对不同的应用、用例和终端用户具有吸引力。5,11, 4, 21, 20,23, 24, 19, 6,[14,25](.然而,每个新平台的有用功能目前只提供给生态系统中不到1%的用户,即该平台上原生代币的持有人。我们能否让平台开发者轻松地将他们的区块链插入到其他生态系统中?我们能否让应用构建者在满足其需求的最佳平台上构建,同时还能在多个区块链生态系统之间进行交流?我们能否让用户直接从他们的钱包与任何区块链上的任何应用程序进行互动?

为了架起区块链生态系统的桥梁,使应用程序能够在它们之间无摩擦地进行通信,我们提出了Axelar网络。 验证者集体运行一个混沌的共识协议,并运行促进跨链请求的协议。任何人都可以加入该网络,参与并使用它。底层网络针对跨链请求所特有的高安全性和灵活性要求进行了优化。Axelar网络还包括一个协议套件和API。其核心协议有

  • 跨链网关协议(CGP)。该协议类似于互联网上的边界网关协议。该协议用于连接多个自治区块链生 态系统,并负责在它们之间进行路由。区块链不需要 "讲任何自定义语言",其平台开发者不需要在其链上做任何自定义修改,其链可以轻松插入全球网络。
    • 跨链传输协议(CTP)。该协议类似于互联网上的应用级协议文件传输、超文本传输协议。它是一个应用级协议栈,位于路由协议(如CGP和其他路由技术)之上。应用开发者可以在任何链上连接他们 的dapp,执行跨链请求。用户可以使用CTP协议与任何链上的应用程序互动,使用类似于HTTP GET/POST请求的简单API调用。开发者可以在任何区块链平台上的任何两个地址之间锁定、解锁和 转移资产,执行跨链应用程序的触发器(例如,A链上的应用程序,可以更新其状态,如果B链上的一些其他应用程序满足一些搜索条件(利率*>X*)),并在跨链的应用程序之间执行一般的跨链请求(A链上的智能合约可以调用更新B链上的智能合约的状态)。该协议实现了跨区 块链生态系统的程序的可组合性。

Axelar网络具有以下优势。

  • 对于区块链平台建设者。能够轻松地将他们的区块链插入到所有其他区块链生态系统。只需要在链上

    设置一个门槛账户就可以插入网络。

    • 对于dapps构建者。应用程序创建者可以在任何地方托管他们的dapp,锁定、解锁、转移资产,并通过CTP API与任何其他链上的应用程序进行通信。

    • 对于用户。用户可以直接从他们的钱包与整个生态系统的所有应用进行互动。

      **一个建设者的平台。**最后,Axelar网络是一个为开发者提供的平台,是一个全球社区。它的治理模式对任 何人都是开放的。开发者可以提出新的集成点、路由和应用级协议,而用户可以通过投票决定是否采用这些建议,如果获得批准,验证者将采用这些变化。

1.1 现有的互操作性解决方案

以前解决跨区块链互操作性的尝试分为四类:集中式交易所、可互操作的生态系统、包装资产和代币桥。 我们在下面简要地总结一下这些方法。

集中式系统。 今天,集中式系统是唯一真正可扩展的解决方案,以满足生态系统的互操作性需求。他们可以相对容易地列出任何资产或登上任何平台。然而,众所周知,集中式系统有各种安全问题,不足以为新兴的去中心化金融系统提供动力,该系统需要强大的安全性、透明度和开放的治理。就其本身而言,它们无法为 去中心化应用的发展提供动力。

互操作性中心。 诸如Cosmos、Polkadot、Ava labs等项目使用定制的链间通信协议解决其生态系统中原有的侧链之间的互操作性问题[23,25, 24].例如,人们可以旋转一个侧链(CosmosZone),可以与Cosmos Hub进行通信。该侧链必须以Tendermint共识为基础,并使用CosmosHub所理解的本地协议。与其他使用不同语言的区块链和生态系统的连接则留给外部技术。

**成对的网桥。**被包裹的资产(例如,被包裹的比特币)试图填补生态系统中缺失的跨链可操作性缺口。一个例子是tBTC[9],它是一个定制的协议,其中智能合约和抵押品的巧妙组合被用来保证转账。这些解决方案需要次要的工程努力来建立--对于每个链对,开发者必须在目的地链上建立一个新的智能合约,解析来自起源链的状态证明(类似于每个侧链如何在原则上解析其他链的状态)。只有少数网桥使用这种方法被部 署。当其中一个底层区块链想要升级其共识规则或交易格式时,这些方法不能扩展。这是因为所有依赖这些链的状态的智能合约都需要升级。人们还必须设置验证人,并要求他们锁定不同的资产,以便对任何资 产转让进行过度抵押,这限制了这种转让的经济效率。我们也看到了其他一些由平台开发商开发的单一用途的桥接,他们在智能合约中重写状态转换逻辑,以桥接其他生态系统[1,7].它们存在多种可扩展性问题,不允许生态系统统一扩展,并为应用程序引入额外的依赖性。例如,如果一个平台改变了,那么所有网桥上的所有智能合约都需要升级。最终会使生态系统陷入僵局,没有人能够升级。最后,如果一个单用途桥连接平台A和B,另一个单用途桥连接B和C,这并不意味着A上的应用能够与C上的应用对话,人们可能需要创建另一个单用途桥或重新连接应用逻辑。

解决互操作性的其他尝试包括联合神谕(例如,Ren[8]),以及特定应用的可互操作区块链[...10].

总而言之,现有的互操作性解决方案需要平台开发者和应用程序构建者进行繁重的工程工作,他们必须了解不同的通信协议,以便在每一对生态系统中进行通信。就这样,互操作性在今天的区块链领域几乎不存在。在一天结束时,平台开发者希望专注于建立平台,并为他们的使用情况进行优化,并能够轻松插入其他区块链。而应用开发者希望在最适合他们需求的平台上建立dapp,同时还能利用用户、流动性并与其他链上的dapp进行交流。我们也看到了其他一些由平台开发商开发的单一用途的桥接,他们在智能合约中重写状态转换逻辑,以桥接其他生态系统[1,7].它们存在多种可扩展性问题,不允许生态系统统一扩展,并为应用程序引入额外的依赖性。例如,如果一个平台改变了,那么所有网桥上的所有智能合约都需要升级。最终会使生态系统陷入僵局,没有人能够升级。最后,如果一个单用途桥连接平台A和B,另一个单用途桥连接B和C,这并不意味着A上的应用能够与C上的应用对话,人们可能需要创建另一个单用途桥或重新连接应用逻辑。

解决互操作性的其他尝试包括联合神谕(例如,Ren[8]),以及特定应用的可互操作区块链[...10].

总而言之,现有的互操作性解决方案需要平台开发者和应用程序构建者进行繁重的工程工作,他们必须了解不同的通信协议,以便在每一对生态系统中进行通信。就这样,互操作性在今天的区块链领域几乎不存在。在一天结束时,平台开发者希望专注于建立平台,并为他们的使用情况进行优化,并能够轻松插入其他区块链。而应用开发者希望在最适合他们需求的平台上建立dapp,同时还能利用用户、流动性并与其他链上的dapp进行交流。

对可扩展跨链通信的追求

在核心方面,跨链通信要求异构网络找到使用相同语言进行通信的能力。为了解决这个问题,我们解释了Axelar

协议套件,描述了它的高级属性,并解释了这些属性如何解决可扩展的跨链通信的核心问题。

  1. "即插即用 "的整合。*区块链平台建设者不应该被要求进行繁重的工程或整合工作,以讲一些 "自定义语言 "来支持跨链。跨链协议应该能够无摩擦地插入任何现有或新的区块链中。新的资产应该以最小的努力被添加。

  2. 跨链路由。发现网络地址、路由路径和网络等功能是互联网的核心,由BGP和其他路由协议促进。同样,为了促进跨区块链生态系统的通信,我们需要支持跨地址的发现、应用和路由。

  3. **可升级性支持。**如果其中一个区块链生态系统发生变化,它不应该影响其他区块链的互操作性。系统需要识别更新,支持更新所需的努力应该是最小的(即,不应该重写 "状态转换逻辑",应用程序不应该中断)。

  4. 统一的应用语言。应用程序需要一个简单的协议来锁定、解锁、传输和与其他应用程序通信,无论它们 位于哪个链上。这个协议必须是与链无关的,并支持简单的调用,类似于HTTP/HTTPS协议,允许用户和浏览器与任何网络服务器通信。随着更多的网络和资产加入低级别的路由协议,应用程序应该能够使用它们进行通信,而无需重写他们的软件栈。接下来,我们总结一下这些协议必须满足的安全要求。

  5. **去中心化的信任。**网络和协议必须是去中心化的、开放的,并允许每个人公平参与。

  6. **高安全性。**系统必须满足高安全保障。在跨链网络的处理过程中,系统需要维护资产和状态的安全。

  7. **高度的灵活性。**该系统必须满足高可用性保证,以支持利用其跨链功能的应用。

    满足这些属性的一个子集是很容易的。例如,人们可以和他们的朋友一起创建一个联合的多义词账户,并在相应的链上锁定/解锁资产。这样的系统在本质上容易受到串通和审查攻击,并且缺乏适当的激励机制 让验证者保护它们。创建一个任何人都可以参与的去中心化网络和协议套件,同时得到正确的激励,可以 实现无摩擦的跨链通信,但解决这个问题是一个难点,需要仔细结合共识、加密和机制设计协议。

Axelar网络

Axelar网络为跨链通信提供了一个统一的解决方案,满足了平台开发者的需求--不需要他们进行整合工作,也满足了应用程序构建者的需求--用一个简单的协议和API来访问全球流动性并与整个生态系统沟通。

Axelar网络由一个去中心化的网络组成,它连接了使用不同语言的区块链生态系统和一个带有API的协议套件,使应用程序能够轻松地执行跨链请求。该网络连接了现有的独立区块链,如比特币、Stellar、Terra、Algorand,以及互操作性中心,如Cosmos、Avalanche、Ethereum和Polkadot等解决方案。我们的任务是使应用开发者能够使用通用协议和API更容易地建立这样的应用程序,而不需要在下面推出他们专有的跨链协议,或在开发新的网桥时重写应用程序。为此,我们设计了一个协议套件,包括跨链网关协议(见第6节) 和跨链传输协议(见第7节).

网络的一个核心组成部分是底层的去中心化协议。验证者集体维护Axelar网络,并运行保护Axelar区块链的节点。他们是通过用户的授权过程选出来的。验证者根据委托给他们的股权按比例获得投票权。验证者就平台所连接的多个区块链的状态达成共识。区块链负责维护和运行跨链路由和传输协议。治理规则允许 网络参与者颁布协议决定,如哪些区块链需要桥接,哪些资产需要支持。

Axelar区块链遵循与Cosmos Hub类似的委托持股证明(DPoS)模式。用户选出验证者,他们必须将自己的股权绑定,以参与共识并维持高质量的服务。DPoS模型允许维护大型去中心化的验证者集合和强大的 激励机制,以保证验证者负责维护加密门槛计划的网桥和股份。作为共识的一部分,验证者运行其他区块 链的轻客户端软件,允许他们验证其他区块链的状态。验证者向Axelar区块链报告这些状态,一旦有足够的验证者报告,比特币、以太坊和其他链的状态就会被记录在Axelar上。

随后,Axelar基础层在任何时间点都能知道外部区块链的状态,创建来自其他区块链的"传入网桥"。验证者集体在其他区块链上保持门槛性的sig-nature账户(例如,80%的验证者必须批准并共同签署任何交易出来),这使得他们可以跨链锁定和解锁资产和状态,并在其他区块链上发布状态,即"出站桥"。总的来说,人们可以把Axelar网络看作是一个去中心化的跨链读/写orcale

文件的其余部分描述了网络背后的预备工作和构件(第4节),网络的一些技术细节(第5节),跨链网关协议(第6节),以及跨链传输协议(第7节).

预备工作

符号和假设

每个验证人都有一个权重,一个在(0,1)的数字,表示该验证人的投票权。所有验证人的权重加起来都是1。如果一个验证人运行的节点符合Axelar协议的规则,那么她就是正确的。为了最终确定区块,或签署跨链请求,Axelar需要总权重大于F的正确验证人。我们把这个参数称为F∈[0.51]的协议阈值*。

Axelar可以基于一个即时终结性的Delegated-Proof-of-Stake区块链。验证者在每轮i运行拜占庭容错(BFT)共识以最终确定i区块。一旦ith区块被最终确定,新的BFT共识被运行以最终确定i+1th块,以此类推。

验证人是通过股权委托选出的。拥有一些股权的用户可以选择运行一个验证者节点,或者将他们的投票权(股权)委托给现有的验证者,然后由其代表投票。验证人集合可以被更新,验证人可以加入/离开这个集合,用户可以委托/取消他们的投票权。

不同的区块链在不同的网络假设下工作。同步通信意味着信息传递的时间有一个固定的上限∆,其中∆是已知的,可以建立在协议中。异步通信意味着消息可能需要任意长的时间来传递,众所周知,即使在只有一个恶意验证者的情况下,也不能为异步网络建立BFT协议。同步性和异步性之间的一个现实的折衷办法是假设部分同步通信。在某个未知的全局稳定时间(GST)之前,网络可能是完全异步的,但在GST之后,通信变得同步,有一个已知的上限∆[17].

典型的区块链是在*> F正确验证者的假设下工作的。对于同步网络来说,F =1/2是典型的设定,但对于部分同步网络的较弱假设来说,F =2 / 3.比特币它的分叉、以及目前以太坊的工作证明版本只在假设同步的情况下工作。其他如Algorand和Cosmos只要求部分同步。当通过Axelar连接区块链时,连接是假设这些区块链中最强的网络假设,例如,在连接比特币和Cosmos的情况下,这就是同步。Axelar区块链本身在部分同步的情况下工作,因此需要F*=2/3,但通过假设其他现有区块链是安全的并利用其安全性,有可能提高阈值要求。

加密学的初步研究

**数字签名。**一个数字签名方案是一个算法(Keygen, Sign, Verify)。Keygen输出一对钥匙(PK,SK)。只有SK的所有者可以签署信息,但任何人都可以根据公钥PK验证签名。今天,大多数区块链系统使用标准的签名方案之一,如ECDSA、Ed25519或它们的一些变体[2,3].

**阈值签名。阈值签名方案使一组n个当事方以这样的方式分割签名方案的秘密钥匙,即t+1或更多当事方的任何子集可以合作产生一个签名,但t或更少当事方的子集不能产生一个签名,甚至不能了解关于秘密钥匙的任何信息。ECDSA和EdDSA的阈值协议产生的签名看起来与独立算法产生的签名相同。

阈值签名方案用分布式n方协议T.Keygen,T.Sign取代了普通签名方案的KeygenSign算法。这些协议通常需要公共广播信道和各方之间的私人成对信道,而且它们通常涉及几轮通信。在成功完成T.Keygen之后,每个用户都持有一个秘密密钥SK和相应的公钥PK的份额siT.Sign协议允许这些当事方为一个在公钥PK下有效的给定信息。这个签名可以由任何人使用Verify 原有签名方案的算法。

阈值签名的属性

阈值方案可能有几个特性,对去中心化网络来说是特别理想的。

**针对不诚实的多数的安全性。**一些阈值方案有这样的限制:只有当n个当事方中的大多数是诚实的,它们才是安全的。因此,阈值参数t必须小于n/2[...15].这个限制通常伴随着这样一个事实,即需要2t+1个诚实方来签名,尽管只有t+1个腐败方可以串通起来恢复秘钥。不受这种限制的方案被称为对不诚实的多数人安全的

正如后面的章节所讨论的5.2的内容,跨链平台必须最大限度地提高其网络的安全性,并能够容忍尽可能多的腐败方。因此,能够容忍不诚实的多数人的方案是必要的。

**预先签名,非交互式在线签名。**为了减少签署信息的各方的通信负担,最近的一些协议已经确定了签名的很大一部分工作可以"离线 "完成,在已知要签署的信息之前[18,13].这个离线阶段的输出被称为预签名。预签名的产生被视为一个独立的协议T.Presign,不同于T.Keygen和T.Sign。预签名协议的输出必须被各方保密,直到他们在签名阶段使用它们。之后,当要签署的信息被知道时,只有少量的额外 "在线 "工作需要在T.Sign中完成,以完成签名。

在线T.Sign阶段不需要各方之间的任何通信。每一方只需对消息和预签名做一个本地计算,然后宣布 她的签名份额si。(一旦公开,这些签名份额s1*, . .一旦公开,这些签名份额s, ..., st*+1很容易被任何人结合起来,以揭示实际的签名s)。这一属性被称为非交互式在线签名

稳健性。阈值方案只保证一个子集的恶意方不能签署信息或学习秘钥。然而,这种保证并不排除不良行为者可 以阻止其他人产生密钥或签名的可能性。在一些方案中,即使是单方的恶意行为也会导致T.KeygenT.Sign中止,没有有用的输出。唯一的办法是重新启动协议,可能是用不同的一方。相反,对于去中心化的网络,我们希望T.KeygenT.Sign在至少有t +1个当事方是诚实的情况下能够成功,即使一些恶意的当事方在协议中发送畸形的信息或丢弃信息。这一特性被称为鲁棒性

**故障归因。**在T.KeygenT.Sign中识别不良行为者的能力被称为过失归属。如果没有过错归属,就很难可靠地排除或惩罚不良行为者,在这种情况下,不良行为者所带来的成本必须由所有人承担。这一属性对于去中心化的网络也很重要,在这种网络中,恶意行为应该是可以被识别的,并通过削价规则在经济上被抑制住。

**并发环境中的安全性。**签名方案需要在并发环境下是安全的,在这种情况下,密钥源和签名算法的多个实例可以并行参与。(Drijvers等人[16]例如,Drijvers等人展示了在这些环境中对Schnorr多签名方案的攻击)。 ECDSA和Schnorr方案都有满足这些特性的版本。[13,22].ECDSA和EdDSA是迄今为止在区块链领域最广泛部署的签名方案。因此,这两种方案的阈值版本一直是最近研究和发展的重点。对最先进的技术感兴趣的读者可以参考[22,13,18]和最近的一份调查报告[12].

Axlear拉网络

设计一个开放的跨链网络

Axelar网络维护的网桥是由门槛账户支持的,这样(几乎)所有的验证者必须集体授权任何跨链请求。设计一个任何人都可以参与的网络来确保这些桥梁的安全,需要满足以下技术要求。

  • *开放的成员资格。*任何用户都应该能够成为验证者(遵循网络的规则)。
    • *对成员资格的更新。*当一个验证者诚实地离开系统时,他们的密钥需要被适当地撤销。
      • *奖励和砍价。*恶意验证者应该是可识别的,他们的行为必须由协议来识别和处理。

      • *共识。*阈值方案本身被定义为独立的协议。为了在节点之间传播信息,我们需要广播和点对点的私人通道。此外,验证者需要就阈值方案的每次调用的最新状态达成一致,因为它们经常有多轮互动。

      • *密钥管理。*就像任何PoS系统中的普通验证者必须仔细保护他们的钥匙一样,Axelar验证者也必须保

        护他们的门槛份额。钥匙需要轮换,在在线和离线部分之间分割,等等。

        Axelar从Delegated Proof-of-Stake模型开始,社区选出一组验证者来运行共识。请注意,标准的阈值方案对每个参与者都是相同的,在共识中没有"权重 "的概念。因此,网络必须对其进行调整,以考虑到验证人的权重。一个简单的方法是给较大的验证者分配多个门槛份额。下面概述了验证人集体执行的三个基本功能。

  • 阈值密钥生成。现有的标准区块链签名方案(ECDSA,Ed25519)的阈值密钥生成算法是多个参与者之间的互动协议(见第4节).Axelar网络上的一个特殊交易指示验证者开始执行这个有状态的协议。每个验证者都运行一个阈值守护进程,负责安全保存秘密状态。对于该协议的每个阶段。
  1. 验证器在其本地内存中保存协议的状态。

  2. 它调用秘密守护程序,按照协议描述为其他验证者生成信息。

  3. 它通过广播或私人通道将信息传播给其他验证者。

  4. 每个验证器执行状态转换功能,以更新其状态,进入协议的下一个阶段,并重复上述步骤。

    在协议结束时,在Axelar链上产生一个门槛公钥,它可以显示回给用户(例如,用于存款)或产生初始请求的应用程序。

    • *阈值签名。*Axelar网络上的签名请求与密钥生成请求的处理方式类似。例如,当用户想从某个链上提取 资产时,就会调用这些请求。这些都是交互式协议,各轮之间的状态转换是作为通过Axelar区块链视图和每个验证者的本地内存传播的消息的功能来触发的。
      • 处理验证人成员的变化。验证器组需要定期轮换,以允许新的利益相关者加入该组。在验证器集合更新时,我们需要更新阈值密钥,以便在新的集合中共享。因此,如果我们允许任何人在任何时候加入,我们将不得不非常频繁地更新阈值密钥。为了防止这种情况,我们每隔T个区块就轮换验证人。在T轮的间隔内,集合VR阈值密钥是固定的。在每一轮是参数T 的整数倍时,我们按以下方式更新验证人集合。
  5. 在任何一轮R,Axelar状态都会跟踪当前验证器集VR . V R+1 = VR ,除非R +1是T 的倍数。

  6. 在((i - 1)*T, iT)*回合中,用户发布绑定/解绑信息。

  7. 在第iT轮结束时,这些信息被应用于ViT−1 得到ViT

    • 在轮值验证人存在的情况下,阈值密钥生成和签名。Axelar区块链可以在R轮发出新钥匙或阈值签名的请求。签名过程需要的时间超过一轮,我们不想拖累共识,所以我们要求在R+10轮开始前产生签名。特别是,验证者只有在看到R+10轮的证书和R轮发出的每个密钥/签名请求的签名后,才开始R+ 10轮。所有R轮请求的结果必须包含在R+11块中。换句话说,不包含R轮结果的R− 11 认为是无效的,验证者不对其进行投票。为了确保所有的门槛信息在验证人-集合更新之前被签署,Axelar不在一个回合内发出任何门槛请求,等于−1, −2, .. . , −9 T的模数。

网络安全

区块链系统的安全性依赖于各种密码学和博弈论协议,以及网络的去中心化。例如,在股权证明区块链中,如果没有适当的激励措施,验证者可能会串通起来,改写历史,在这个过程中窃取其他用户的资金。在工作证明网络中,如果没有足够的去中心化,就很容易产生长分叉和双重消费,正如对比特币黄金和以太坊经典的多次攻击所证明的那样。

大多数关于区块链安全的研究都集中在主权链上。但是,一旦链的互操作,就必须考虑新的攻击载体。例如,假设以太坊通过两个智能合约(一个在以太坊上,一个在X上)控制的直接桥梁与一个小区块链X对话。 在1.1节我们还必须决定当X的信任假设被违反时会发生什么。在这种情况下,如果ETH已经转移到X,X的验证者可能会串通起来伪造X的历史,在那里他们持有所有的ETH,在Ethereum上发布伪造的共识证明并窃取ETH。当X通过直接桥接与其他多个链相连时,情况就更糟糕了,如果X分叉,其影响会通过每个桥接传播。对于任何一个单独的项目来说,为每一个成对的桥设置恢复治理准则是一项艰巨的任务。

Axelar网络通过以下机制解决安全问题。

  • **最大的安全性。**Axelar将安全阈值设置为90%,这意味着几乎所有的验证者都需要串通起来提取任何被其网络锁定的资金,或者伪造状态证明1.在实践中,已经观察到PoS验证者有非常高的运行时间(接近100%),假设他们得到适当的激励。因此,Axelar网络将产生区块,即使有这个高门槛。然而,在极少数情况下,如果出了问题,网络停滞不前,网络需要强大的回退机制来重新启动接下来描述的统。
  • **最大限度地分散。**由于网络使用阈值签名方案,验证人的数量可以越多越好。网络不受我们可以支持的 验证人数量、交易限制或费用的限制,例如,在不同的链上使用多重签名,其复杂性(和费用)会随着验证人的数量线性增加。2
    • **健全的回退机制。**在上述具有高安全阈值的网络中,必须解决的第一个问题是当网络本身失速时,会发生什么。假设Axelar网络本身停滞。我们能不能有一个后退机制,让用户恢复他们的资金?为了解决Axelar网络本身的任何潜在停滞,Axelar验证者集体控制的区块链X上的每个阈值桥账户都有一个 "紧急解锁钥匙"。这把钥匙可以被共享

      1最终将选择的网络部署参数可以调整。

      2对于一些区块链来说,多签名提供了一个合理的替代方案,其中气体费用较小,支持的消息格式也很合适。

但对于像比特币和以太坊这样的两个最大的平台来说,它们并没有规模。

跨越数千方,甚至可能是区块链X的自定义密钥,在该链的社区内共享。因此,如果Axelar网络停滞不前,这个密钥将作为后备手段,使资产得以恢复(详见下文)。

  • 最大限度地分散后退机制。这种回退机制包括一个二级恢复的用户,任何人都可以不计成本地参与其中。这些用户不需要在线,不需要运行节点,也不需要相互协调。他们只有在Axelar网络停滞不前, 无法恢复时才会被 "召唤"。网络的安全性通过对主验证器集的非常高的门槛和最大限度的分散的二级恢复集得到加强。
    • *共同治理。*一个共同的协议管理着Axelar网络。用户可以集体投票决定哪条链应该通过其网络得到支持

      。网络还将分配一个资金池,在发生意外紧急情况时,可用于偿还用户,也通过治理协议控制。

    • 下面将讨论各种安全机制。

回退机制。当Axelar由于高阈值而停滞不前时,一个 "紧急解锁钥匙 "将控制网络。有多种方法来实例化这个解锁钥匙,某些链/应用可能选择利用不同的变体作为 "恢复集 "或完全选择退出。3

  • 选项a.在区块链项目的基础上与社区内有声望的人分享关键。
    • 选项b.通过委托的PoS机制,分享跨党派选举。
      • 选项c. 对于管理链/应用X的资产和信息的账户,在X的利益相关者/验证者之间共享一个自定义密钥

        。假设X有治理机制,如果Axelar停滞不前,可以应用同样的治理机制来确定行动方案。

        现在,给定恢复用户的身份和他们的公钥,一个简单的协议就能生成无人知晓的恢复密钥的份额。此外,恢复集的用户不需要在线,直到通过治理机制调用恢复。按照标准的分布式密钥生成协议,每个Axelar验证者都会分享一个随机值。恢复秘钥是通过对这些值进行求和而产生的。与其在明处进行求和,不如在 恢复用户的公钥下对所有份额进行加密,然后以同态方式相加(这假设了加法同态加密和一个额外的零知识层,这两者都很容易获得)。这个协议的结果是一个恢复的公钥RPK和可能是成千上万的加密(在恢复用户的公钥下)的相应的秘密密钥Encisi)的份额,并分配给他们的所有者(例如,张贴在链上)。Axelar桥梁合约包括在某些条件下使用RPK恢复资金的选项。最后,也可以更新这个恢复密钥,甚至改变持有其股 份的用户组,而不需要参与的股东做任何工作。

如果连接到Axelar的X链断裂,有几个选择。

  • 对任何一天可以移入/移出X的资产的美元价值施加限制。因此,在Axelar验证器发现之前,恶意链X

    只能窃取所有桥接的资产中的一小部分,而下面的治理机制就会启动。

    • Axelar治理模块可以用来投票决定在这些情况下发生什么。例如,如果有一个良性的错误,社区重新 启动X,Axelar治理可以决定从原地重新启动连接。
      • 如果ETH已经转移到X,一个自定义的以太坊恢复密钥可以决定ETH资产的情况

跨链网关协议(CGP)

在本节中,我们就许多应用需求之间常见的两个核心例子解释跨链网关协议和路由机制。

状态同步(第*6.2***).**将源区块链S的状态信息发布到目的区块链D*的状态中。

(例如,将比特币区块头发布到以太坊区块链上)。

资产转让(第6.3**).**将数字资产从S处转移到D处,然后再转回来。

(例如,将比特币从比特币区块链转移到以太坊区块链,然后再转回比特币区块链)。

为了简单起见,我们假设链D至少对智能合约有最小的支持,但S可以是任何区块链。

其他产业链上的账户

为了连接不同的链,在每个链上都创建了门槛账户,控制价值和信息在它们之间的流动。对于链条Chain, 用ChainAxelar表示该账户。

****比特币账户。****对于比特币和其他非智能合约链,Axelar验证器按照以下章节创建一个门槛ECDSA密钥[5.1这个密钥控制着比特币上的ECDSA账户,也是用户发送存款的目标地址。个性化的阈值密钥可以根据用户的要求创建。密钥可以定期更新,最新的密钥和个性化的密钥可以通过查询Axelar节点找到。

****阈值桥账户在有智能合约的链上。****用SC来表示该链。验证者按照章节创建一个门槛ECDSA或ED25519密钥。5.1的规定,取决于该链支持哪种密钥类型。我们用PKAxelar来表示这个密钥,当我们指的是哪条链时,不会有任何歧义。这个密钥控制着SC上的一个智能合约账户,用SCAxelar表示,SC上的任何应用程序都可以查询

SCAxelar以了解该密钥的PK地址。这样一来,任何SC的应用程序都可以识别由SCAxelar签署的信息。该协议还需要考虑到PKAxelar的旋转值。这发生的情况如下。

  1. 在SC上初始化SCAxelar。它将PKAxelar作为其状态的一部分进行存储,该状态在Axelar上被初始化为其创世值。SCAxelar还包括更新PK的规则。
    1. 为了更新PKAxelar,必须提交一个格式为(update, PKnew)的交易,并有当前SKAxelar的签名。然后合同设置PKAxelar = PKnew
      1. 每次验证者将SC的门槛密钥从PK更新iPKi+1,Axelar要求验证者使用SKi来签名(更新,PKi+1)。随后,这个签名被发布到SCAxelar,它更新PKAxelar

状态同步化

qS表示一个关于链S状态的任意问题,这类问题的例子包括。

跨链资产转移

该网络通过扩展Section的状态同步工作流程来实现数字资产的跨链转移。6.2.

DAxelar在初始化时就打印了足够的挂钩S代币的供应,并由其控制。假设一个用户要求用源链S上的X量代币

换取目的链D上的X量挂钩S代币,并存入用户选择的D地址wD。我们提出了完全通用的工作流程,它支持 任意的源链S--即使是像比特币这样不支持智能合约的链。

  1. 用户(或代表用户的应用程序)向门槛桥账户发布转账请求(x,wD),随后被转到Axelar网络。
    1. Axelar验证者使用阈值密码学,共同为S创建一个新的存款地址dS,他们将d发布S到Axelar区块链上。
      1. 用户(或代表用户的应用程序)S通过监控Axelar区块链了解到d。用户通过一个普通的S交易tx,使用S她最喜欢的S链软件,向地址dS发送x量的S代币。

(由于d的阈值属性S,S除非有阈值数量的验证者协调这样做,否则不能从d中花费代币)。

  1. txS发布在Axelar上。验证者查询他们的S链节点软件的API,看是否存txS如果响应为 "真",则向Axelar链报告答案。

    1. 一旦*>F加权验证者在RS轮为tx报告"真",Axelar要求验证者签署一个交易aD*,从DAxelarw发送Dx量的挂钩S代币。
      1. 使用阈值加密法,验证者在aD上签名,签名被包含在R+块中。 11.

      2. 任何人都可以从R+区块中获取有符号的值aD并11将其发布到D

      3. 该请求已经得到了服务,一旦在D上发布了*一个D请求,*就会处理该转移。

        现在,假设一个用户要求从D链上赎回xi量的包装S代币S链上,存入用户选择的S-地址wS。工作流程如下

  2. 用户通过使用她喜欢的D链软件,通过普通的D交易向c存入Dxi量的wrapped*-S*代币,发起一个转账请求(xi,wS)。

  3. 一旦*>F加权验证者在R轮对(xi,wS)报告为"真",Axelar要求验证者签署一个交易aS*,从SAxelar发送xi量的S代币给wS

  4. 使用阈值加密法,验证者在aS上签名,签名被包含在R+11块中。

  5. 任何人都可以从R+11区块中获取有符号的值aS并11将其发布到S

  6. 该请求已经得到了服务,一旦在S上发布了*一个S请求,*就会处理该转移。

    CGP路由层支持的其他请求包括锁定、解锁或跨链转移资产。

**实现原子式跨链交易流。**根据跨链请求的类型,Axelar试图确保相应的交易在多个链上执行或不执行。为此, 每个请求在Axelar区块链中都可以处于以下状态之一。(初始化,待定,完成,超时)。如果在挂起阶段的超时被触发,请求会返回一个错误代码。一些超时事件也会开始一个退款事件:例如,如果一个链上的资 产需要转移到另一个链上的资产,如果接收链没有处理该交易,该资产就会被退回给原用户。

跨链传输协议(CTP)

CTP是一个应用层面的协议,使应用程序可以很容易地利用跨链功能。我们通过关注资产转移功能(例如,在DeFi中使用)来解释这种整合。这些应用程序通常由三个主要部分组成:前端GUI,一条链上的智能合约, 以及在前端和智能合约之间发布交易的中介节点。前端与用户的钱包互动,接受存款,处理提款等。应用程序可以利用跨链功能

通过调用类似于HTTP/HTTPSGET/POST方法的CTP查询。这些查询随后被CGP层接收执行,并将结果返回给用户。

  • CTP查询。应用程序开发人员可以在任何链上托管他们的应用程序,并将他们的智能合约与阈值桥账户集成,以执行CTP查询。
    • 阈值桥账户。假设一个应用程序开发人员在A链上建立他们的合同,那么,他们将引用阈值桥接合同 来获得跨链支持。这个合约允许应用程序进行。
      • 注册一个它想与之沟通的区块链。

      • 在该区块链上注册它想利用的资产。

      • 对资产进行操作,如接受存款、处理提款和其他功能(类似于ERC-20合约的调用)。

        假设一个突出的DeFi应用,MapleSwap,原生驻扎在A链上,注册了一个阈值桥账户。Axelar验证器集体管理相应链上的合同本身。假设一个用户想向分别驻扎在两条链上的资产X和Y之间的交易对提交一笔存款。那么,当用户提交这样的请求时,它将通过门槛桥账户被转到Axelar网络进行处理。在那里,将执行 以下步骤。

  1. Axelar网络了解到,该应用注册了跨资产的跨链支持。它利用阈值密码学和共识为用户在相应的A和B

    链上生成存款密钥。

  2. 相关的公钥被返回到应用程序,并显示给用户,用户可以使用他们喜欢的钱包来提交存款。相应的秘钥在所有Axelar验证器中共享。

  3. 当存款被确认后,Axelar更新其跨链目录,记录相应链上的用户已经存入这些资产。

  4. Axelar验证器执行多方协议,生成一个阈值签名,允许更新应用程序所在链A上的阈值桥账户。

  5. 然后CTP查询被返回到DeFi应用智能合约,它可以更新其状态,更新其收益率公式,汇率,或执行其他与应用状态相关的条件。在整个过程中,Axelar网络在高层次上充当了一个分散的跨链读写Orcale,CGP是链间的路由层,CTP是应用协议。

**额外的跨链请求。**CTP支持跨区块链的应用程序之间更普遍的跨链,如:。

  • 执行公钥名称服务(PKNS)。这是一个通用目录,用于将公钥映射到电话号码/Twitter手柄(少数项目,如Celo,在其平台内提供这些功能)。
    • 跨链应用触发器。如果B链上的另一个应用满足搜索条件(利率*<X*),A链上的用可以更新其状态。
    • 智能合约的可组合性。链A上的智能合约可以根据链B上的合约状态来更新其状态,或者触发一个动作来更新链B上的智能合约。在高层次上,这些请求可以被处理,因为CTP、CGP和Axelar网络等协议集体可以在区块链之间传递和 写入任意可验证的状态信息。

摘要

在未来几年里,重要的应用和资产将建立在多个区块链生态系统之上。Axelar网络可以用来将这些区块链插入一个统一的跨链通信层中。该层提供路由和应用级协议,满足平台建设者和应用开发者的需求。应用开发者可以根据自己的需求建立最佳平台,并利用简单的协议和API来访问全球跨链流动性、用户,并与其 他链进行沟通。

参考文献

  1. Althea peggy. https://github.com/cosmos/peggy.[引自第 2节]

  2. 数 字 签 名 算 法 (dsa) 和 椭 圆 曲 线 数 字 签 名 算 法(ecdsa) 的 确 定 性 使 用 。https://tools.ietf.org/html/rfc6979。[引用于第5.]

  3. 爱德华兹曲线数字签名算法(eddsa)。https://tools.ietf.org/html/rfc8032。[引用于第5.]

  4. Eos.io技术白皮书v2。https://github.com/EOSIO/Documentation/blob/master/TechnicalWhitePaper.md。[引用于第 1.]

  5. 以太坊。一个安全的去中心化的通用交易账本。https://ethereum.github.io/yellowpaper/paper.pdf。 [引自第 1.]

  6. 近乎白皮书。https://near.org/papers/the-official-near-white-paper/。 [引自第 1.]

  7. 彩虹桥。https://github.com/near/rainbow-bridge。 [引自第 2.]

  8. Ren: 一个保护隐私的虚拟机,为零知识的金融应用提供动力。//whitepaper.io/document/419/ren-litepaper。 [引用于第 3.]

  9. tbtc。一个去中心化的可赎回btc支持的erc-20代币https://docs.keep.network/tbtc/index.pdf。[引用于第2.]

  10. Thorchain:一个去中心化的流动资金网络。https://thorchain.org/。[引用于第3.]

  11. Kurt M. Alonso. Zero to monero. https://www.getmonero.org/library/Zero-to-Monero-1-0-0. pdf.[引用于第 1.]

  12. Jean-Philippe Aumasson, Adrian Hamelink, and Omer Shlomovits.ecdsa阈值签名的调查。Cryptology ePrint Archive, Report 2020/1390, h2020.ttps://eprint.iacr.org/2020/1390. [引用于第 6.]

  13. Ran Canetti, Nikolaos Makriyannis, and Udi Peled.Uc非交互式、主动式、阈值ecdsa。Cryptology ePrint Archive, Report 2020/492, 2020. https://eprint.iacr.org/2020/492.[引用于第 6.]

  14. cLabs白皮书。https://celo.org/papers。[引用于第 1.]

  15. Ivan Damg˚ard, Thomas Pelle Jakobsen, Jesper Buus Nielsen, Jakob Illeborg Pagter, and Michael Bæksvang Østerg˚ard. 带有诚实多数的快速阈值ECDSA。 在SCN计算机科学讲义第12238卷,第 382-400页。斯普林格,[2020.引用于第 6.]

  16. Manu Drijvers, Kasra Edalatnejad, Bryan Ford, Eike Kiltz, Julian Loss, Gregory Neven, and Igors Stepanovs.论两轮多重签名的安全性。在IEEE安全与隐私研讨会上,第1084-1101页。IEEE,[2019.引用自第 6.]

  17. Cynthia Dwork, Nancy Lynch, and LarryStockmeyer.在部分同步的情况下达成共识。https://groups.csail.mit.edu/tds/papers/Lynch/jacm88.pdf。 [引自第 5.]

  18. Rosario Gennaro 和 Steven Goldfeder.一轮阈值ecdsa与可识别的中止。Cryptology ePrint Archive, Report 2020/540, h2020.ttps://eprint.iacr.org/2020/540.[引用于第 6.]

  19. Yossi Gilad, Rotem Hemo, Silvio Micali, Georgios Vlachos, and Nickolai Zeldovich.Algorand:为加密货币 扩 展 拜 占 庭 协 议 。 第 26 届 操 作 系 统 原 理 研 讨 会 论 文 集 , h2017.ttps://dl.acm.org/doi/pdf/10.1145/3132747.3132757。[引用于第 1.]

  20. Evan Kereiakes, Do Kwon, Marco Di Maggio, and Nicholas Platias.Terra money:稳定性和采用。

    https://terra.money/Terra_White_paper.pdf。 [引自第 1.]

  21. Aggelos Kiayias, Alexander Russell, Bernardo David, and Roman Oliynykov.Ouroboros。一个可证明的安全股权证明的区块链协议。https://eprint.iacr.org/2016/889.pdf。[引用于第1.]

  22. Chelsea Komlo和Ian Goldberg。Frost:灵活的回合优化Schnorr阈值签名。Cryp- tology ePrint Archive, Report 2020/852, 2020. https://eprint.iacr.org/2020/852. [引用于第 6.]

  23. Jae Kwon和Ethan Buchman。宇宙。一个分布式账本的网络。

    https://cosmos.network/resources/whitepaper。[引自第和12.]

  24. 雪崩团队。雪崩平台。

    https://www.avalabs.org/whitepapers。 [引自第和12.]

  25. 加文-伍德Polkadot:一个异质多链框架的愿景。

    https://polkadot.network/PolkaDotPaper.pdf。[引自第和12.]

Subscribe to In_Case
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.