一文了解Thorchain是如何运作的?

Defi之道 view 65030 2021-5-21 10:05
share to
Scan QR code with WeChat

简介

Thorchain是什么,它是如何让不同区块链上的原始资产可以进行交换?本文将回答这些问题。

DEX交易量已达数十亿美元的规模,正获得了越来越多的关注,Uniswap上超过10亿美元的日交易量已经很常见了。

虽然像在以太坊生态系统内(如Uniswap、Sushiswap或Curve等协议)的资产交易已经做得非常好了,但它们不支持不同区块链之间的交换。

为了解决这个问题,常见的方法是在以太坊上以封装(wrapped)或合成代币的形式引入外部资产。以太坊以外最受欢迎的区块链资产当然是比特币。在以太坊上有多种代表比特币的方式,可以让它在DEX进行交易,比如renBTC,sBTC等。

尽管这些方法运行良好,但在涉及到资产的保管或安全时,它们通常会做作出一定的取舍。

是否有一种方法可以实现原生资产的直接交换呢?例如,比特币区块链的BTC和以太坊区块链的ETH之间直接进行交易。

这正是Thorchain发挥作用的地方。

一文了解Thorchain是如何运作的?

Thorchain是一个去中心化的流动性协议,允许在不同的区块链(如比特币、以太坊或BSC)之间交换原生资产。

在管理流动性方面,Thorchain使用了Uniswap或Bancor等协议的流动性池模型。

在这种模式下,流动性提供者在流动性池中锁定2种资产,为这2种资产的交易者提供流动性。交易者支付少量的费用给到流动性提供者。

Thorchain通常被解释为跨链的Uniswap。这个类比让我们易于理解Thorchain是做什么的,但其实二者之间有很大的区别,下文将会解释。

在深入了解Thorchain的机制之前,让我们先来看看这个项目是如何诞生的。

Thorchain历史

Thorchain是2018年Binance黑客马拉松上的一个小项目。

在黑客马拉松结束后,Thorchain背后的团队继续他们的研究,但决定暂停手上的一些工作,因为他们要等待创建跨链DEX所需的技术,这些技术在彼时是缺失的,主要是Tendermint & Cosmos SDK和TSS——阈值签名方案。

当看到产品的可行性,团队决定筹集一小笔种子资金,并在Thorchain协议的基础上建立了一个DEX的概念验证,名为Instaswap,后来在柏林的Cosmos黑客马拉松上进行了演示。

之后,他们在2019年7月宣布了其第一个进入市场的产品——BEPSwap。BEPSwap的主要目标是实现BEP2资产互换,仅限于在Binance Chain上。

一文了解Thorchain是如何运作的?

同样在2019年7月,该团队决定通过在Binance Dex上的IDO(初次去中心化交易所发行)筹集更多资金。IDO的结果是筹集了150万美元,足以使项目进一步发展。

该团队继续他们在协议上的工作,在2021年4月发布了限制性主网,称为多链混沌网络(multi-chain chaos network,简称MCCN)。

有趣的是,Thorchain团队大部分都是匿名的,到今天为止还是这样。

现在,让我们看看Thorchain在引擎盖(hood)下是如何工作的。

它是如何工作的

Thorchain协议的核心是:用Tendermint和Cosmos SDK构建的节点网络。

这种方法让Thorchain可以创建一个独立的区块链,有自己的共识和网络层,而不必从头开始建立所有的元素。

Thorchain利用Tendermint BFT模型,即使多达1/3的节点失效,也能让网络达成共识。

共识机制很重要,因为Thorchain的节点必须一起工作,如记录来自其他区块链的交易。

让我们通过一个快速的例子看看实际是如何运作的:

假设一个用户想把他们在比特币网络上的BTC换成以太坊网络上的ETH。

该用户向比特币金库发送了一个标准的比特币交易——一个由Thorchain网络控制的比特币地址。

Thorchain节点不断监控金库地址,以确认新的交易。

为了做到这一点,每个Thorchain节点(又称THORNode)都由几个主要部分组成,其中最重要的是:运行Thorchain区块链本身的服务;每个连接区块链的完整节点,例如比特币或以太坊节点;以及Bifrost。

一文了解Thorchain是如何运作的?

Bifrost协议作为Thorchain网络和其他网络(如比特币或以太坊)之间的连接层。它的主要职责之一是观察金库地址,以便找到入站(inbound)交易,随后将其转化为THORChain的见证交易。

见证交易最初被记录为“待定”——这是Thorchain状态机中的一种状态。在大多数节点同意入站交易的状态后,该交易被移至 "最终确定 "状态。

此时,用户的比特币存款被记录在Thorchain区块链上。

是时候进行交换的另一部分了,将以太币送回给用户。

一旦一个新的入站交易被确定,Thorchain协议就会启动swap。swap交易被记录在Thorchain区块链上,Bifrost协议再次被使用,这次是从以太坊出站金库中提取ETH。

使用相应的链客户端(在这个例子里是以太坊客户端),将这个出站交易从Thorchain内部转换为目标链的有效交易,并广播到相应的网络。 

这时,交换已经完成,用户最终在他们的以太坊钱包里得到了以太。

虽然这听起来很简单,但要使这一切成为可能,却有相当多的细节。

TSS

为了签名交易,网络必须能够控制每个集成区块链上的金库地址。

当然,在每个节点上存储私钥有着巨大的安全风险,这也是为什么Thorchain要使用前面提到的阈值签名方案或TSS。

一文了解Thorchain是如何运作的?

TSS是一种用于分布式密钥生成和签名的加密原语。你可以把它看成是多签(multisig)的更好版本。两者都专注于实现相同的目标——只有达到某个先前设定的阈值时,才允许多方聚集在一起并签名交易。主要区别在于,multisig通常是在区块链的应用层实现的,例如,作为以太坊上的智能合约,而TSS所支持的与区块链无关,因为它依赖于基本的密码学元素。

这使得签名交易的整个过程更便宜、更安全。

虽然TSS有很多好处,但它还没有像其他流行的加密元素(如ECDSA或某些哈希函数)那样经过实战考验。

金库(Vault)

Thorchain架构的另一个有趣的细节是Vault的运作方式。

有两种类型的vault——"入库 "和 "出库"。

一文了解Thorchain是如何运作的?

入站金库在系统中存储大部分资金。它们的速度较慢,可能需要长达20秒,但更安全,因为它们需要所有TSS签名者2/3来签名一项交易。

这对整个系统造成很大的限制,因此Thorchain引入了由每个THORNode运行的较小的、安全性较低的出站金库。这些金库速度更快,因为它们只需要在其运行的节点上进行一次签名。这些金库中的资金限于其资产债券价值的25%。后文有更多关于担保过程的内容,这创造了激励机制,防止节点运作者从出库中窃取资金。这些金库还不断被系统充值,因为资金被用于出库交易。 

PoS & Churning

如前所述,Thorchain使用Tendermint和Cosmos SDK。在这种模式下,Thorchain网络作为一个Proof-Of-Stake(PoS)系统运行,签名和验证交易的节点必须质押一定数量的RUNE代币。

在Thorchain生态系统中,质押RUNE代币的过程也被称为bonding。

2021年5月17日,运行一个功能齐全的Thorchain节点,需要1,000,000个(价值约1800万美元)的RUNE代币。

与大多数PoS系统的变化相比,这里不允许代币的委托。因为要确保网络中的所有节点都被平等对待,不让某一节点运营方长时间内捕获大部分的代币。

事实上,Thorchain网络中的所有节点都是匿名的,只能通过其IP地址和公钥来识别。他们无法像其他允许委托的系统那样,对节点进行品牌宣传或营销。

为了避免总是由拥有最高数量RUNE代币的相同节点签署交易,Thorchain引入了搅动(Churning)的概念。

一文了解Thorchain是如何运作的?

该网络保持着一组活跃的、能够签名交易的节点和另一组待命的节点。

每50,000个区块,也就是每3天左右,搅动过程就会启动,活跃区的最老或最不可靠的节点就会被待机区的节点所取代。

搅动过程确保了符合质押标准的新节点可以轮流签名交易。另外,每次验证者集发生变化时,Thorchain网络会将资金转移到新的金库,确保活跃的节点仍然可以获得资金。

目前,在支持BEPSwap的单链混沌网络上有28个活跃节点和45个处于待机状态的节点,在最近发布的多链混沌网络上有11个活跃节点和9个处于待机状态的节点。

目前,多链混沌网络处于扩展模式,这意味着每从网络中挤出一个节点,就会有2个节点进入。

在遇到Tendermint和TSS限制之前,多链网络可以增长到99个节点。

即使网络增长到99个活跃节点,它仍然可以通过拥有分片金库的能力进一步扩展。

同样重要的是要注意到,即使运行一个功能齐全的节点需要大量的RUNE,人们仍然可以运行没有绑定RUNE的节点。这些节点能够验证交易,而没有签名交易的能力。

RUNE代币

Thorchain架构的最后一个关键元素——RUNE代币。

RUNE为Thorchain生态系统提供动力,并提供保护网络所需的经济激励。

一文了解Thorchain是如何运作的?

系统中的所有流动资金池都由原生代币和RUNE组成。例如,要从比特币交换到以太币,交易必须通过BTC-RUNE和ETH-RUNE池。在这种模式下,每种资产都必须与RUNE配对。这里,池子的数量会少于像Uniswap那样可以用任何两种资产创建池子的系统。

除此之外,Thorchain节点必须通过绑定特定数量的RUNE来满足质押标准。这个保证金通过对资产池中的资产进行包销来保证系统的安全。如果节点试图从协议中窃取资金,其债券将以其所窃取的资产数量(1.5倍)扣除,从而使资产池变得完整。另外,如果节点不提供可靠的服务,它们将面临被削减债券的风险。

Thorchain协议还鼓励节点运营商始终保持RUNE的最佳数量。这是通过一种叫做 "激励钟摆 "的机制实现的。

一文了解Thorchain是如何运作的?

激励钟摆的目的是使系统处于最理想的状态,即系统中所有RUNE的67%被绑定,且33%被汇集到池子里。

如果流动性池子里有太多的资本,网络就会增加对节点运营商的奖励,减少对流动性提供者的奖励。如果节点绑定的资本太多,系统会提高对流动性提供者的奖励,减少对节点经营者的奖励。

在最佳状态下,资金池中每有100万美元的资产,节点将绑定价值200万美元的RUNE。

除此之外,RUNE被用来支付网络上的交易费用,补贴向不同网络发送出站交易所需的gas;并可用于参与Thorchain治理,用户可以发出信号指示网络接下来应该添加哪些链和资产。

Uniswap

如上所示,Thorchain和Uniswap或者以太坊上其他的DEX之间有很大的区别。

首先,Uniswap只允许交换ERC-20代币,所以如果我们想交易其他区块链的资产,它们必须以封装或合成代币的形式进行。Thorchain允许交换本地资产,而不需要对其进行封装。

Thorchain上的互换既要收取固定的网络费用,也要收取动态的基于滑点的费用。这意味着产生更多滑点的交易会被收取更多的交易费用。这使得机器人更难从掉期中提取价值,比如在三明治攻击的情况下——影响流动性池中价格的常见方式,导致用户在交易中获得更差的价格。

一文了解Thorchain是如何运作的?

关于swap的速度,以太坊上的资产可以在1个以太坊区块内进行swap,平均每13秒发生一次。在Thorchain上,这就有点复杂了。交换时间取决于我们在哪个网络之间进行交换。如果是比特币到以太坊,在比特币网络上至少需要1个区块——平均10分钟,加上在Thorchain区块链上执行互换的内部时间,再加上出站的以太坊交易——约13秒。

有趣的是,从以太币到比特币的swap会更快,因为Thorchain网络只需等待以太坊交易,然后再向外发送比特币交易,这将导致接收钱包在交易广播后可直接花费比特币UTXO。

另外,Thorchain作为一个独立的区块链,失去了以太坊DApp的一些好处,其中之一是可组合性。例如,Uniswap可以作为一个交易的一部分被纳入到更复杂的合约中。这在Thorchain中是不可能的。

当然,Thorchain网络也不像比特币或以太坊网络那样去中心化,该系统反而依赖于强大的经济激励。

这并不一定是坏事,考虑到Thorchain的应用场景与比特币网络完全不同,比特币网络保证了价值超过1T的资产的安全,而以太坊网络则保证了锁定在智能合约中的数十亿美元资产的安全。

对于它的主要用例,在不同的区块链之间交换资产,大多数用户不会在很长时间内将他们的资产存储在Thorchain区块链上。

总结

在期待已久的多链混沌网络发布后,Thorchain团队正专注于发展Thorchain生态系统,同时确保系统按预期运行。

一文了解Thorchain是如何运作的?

当涉及到与Thorchain协议的互交互时,用户有多种选择。他们可以使用像Thorswap或Asgardex这样的去中心化交易所,或者像ShapeShift这样与Thorchain集成的钱包。

我们应该在未来看到更多的DApp和钱包与Thorchain整合。

此外,我们还可能看到更多的链和资产,更多的Thorchain节点加入网络,而且越来越多的交易量和总价值被锁定在流动资金池中。

最终,多余的保护措施将被取消,混沌网络将成为主网。

Thorchain显然是一个有趣的协议,也是defi生态系统中缺失的一块,它让人们在不使用CEX的情况下实现本地资产的直接交易。

btcfans公众号

Scan QR code with WeChat

Link
Disclaimer:

Tags: DEX THORChain
Previous: DeFi之道丨扩展以太坊的多形态方法:详解风头正盛的扩容网络Polygon Next: 被称为“将颠覆现有金融”的DeFi究竟有什么典型案例?(中)

Related