以备受关注的 tBTC 为例,全面探讨跨链锚定的设计。

原文标题:《如何设计一个比特币跨链锚定代币?》(A New Sidechain Design for Bitcoin)
作者:Hasu、Su Zhu
译者:Moni

tBTC 是最近备受关注的跨链代币,它在以太坊区块链上与比特币锚定,这种跨链锚定的目的是在一个区块链上复制另一个区块链上的资产,同时保持尽可能多的自身属性。换句话说,跨链锚定可以将任何区块链变成比特币侧链。

侧链概念最早于 2010 年提出的,这个概念承诺可以贷款更大的可扩展性、更高的确定性、以及更好的隐私性和更丰富的状态,同时还允许比特币主网缓慢而保守的发展。此外,侧链如果失败了,也不会对主链造成任何后果。

当以太坊区块链上有了可靠比特币代币,那么比特币用户就能更轻松地进入资本市场(比如 MakerDAO 与 Compound)、预测平台(比如 Augur)、去中心化交易所(比如 Uniswap)、以及未来可能的应用(比如混合器、隐私转换器、创新托管解决方案和 DAO)。与此同时,在侧链的支持下,这些应用程序也可以利用比特币的货币属性和卓越的流动性。

那么,该如何设计跨链锚定代币呢?

在本文中,我们将以 tBTC 为例,全面探讨跨链锚定的设计,这种跨链锚定的理想属性可能包括:

1、抵制审查:任何人都可以创建、兑换和使用代币,无论他们的身份是什么,或是身处在哪个司法管辖区;

2、抵制扣押:托管方和其他第三方都不能扣押存款中的代币;

3、对比特币保持价格稳定性:代理代币会密切追踪比特币价格,从而集成了其货币属性;

4、可接受的运营成本:侧链系统可以用合理的价格吸引用户和托管方,并为他们提供服务。

如果有人可以在另一条链(侧链)上复制所有这些属性,就意味着这条链的「信任模型」几乎与主链上使用的比特币属性相似(尽管不是完全相同)。实际上,所有跨链锚定都需要优先考虑是否牺牲一些代价——比如牺牲自身某些功能来换取与比特币之间的权衡。问题是,这种折衷方案是否能被接受(甚至在某些情况下更为可取),取决于用户一开始对代理代币的具体要求。

可赎回 vs. 不可赎回

每个跨链锚定的目标是要让代理代币(比如 WBTC 或 LBTC)具有比特币的真实属性,唯一不同的是,这些代理代币是在另一条链上。为了保留比特币的货币属性,代理代币在进行交易的时候必须尽可能地接近原生比特币属性,实际上,这可以通过两种方式来实现:

1、包装方法

第一种方法是包装方法,也是 WBTC、Liquid 和 tBTC 追求的解决方案。托管方需要接受客户的比特币存款,然后在侧链上为每个托管的比特币发行一个代理代币,这其实就算是对原链上的比特币进行「包装」。然后,比特币存款人就可以在侧链上使用代理代币,例如通过溢价出售或在 DeFi 市场上借出代理代币。而对于任何购买代理代币的人来说,也可以将其抵押的代理代币兑换成相应的比特币。

只要系统可以确保一个比特币始终与一个创建的代理代币」锚定」, 而且始终允许一个比特币兑换一个代理代币 , 那么就能依靠理性的市场参与者来维持比特币和代理代币之间的价格均等。通常来说,市场参与者会通过以下两种方式来实现这一目标:

  • 第一种方式,如果代理代币的交易价格低于比特币价格,市场参与者可以通过购买打折代理代币并赎回这些代币来获得相应的比特币存款。这么做的目的是减少市场上的流通代币供应,一直到达到新的平衡且价格恢复到平价为止。
  • 第二种方式,如果代理代币的交易价格高于比特币价格,则会激励套利者创建更多代理代币,并在市场上出售代币来增加供应量,最终再达到新的平衡。

(星球君注:无论是赎回代币还是抛售代币,市场参与者都能从中获得一些即时利润。)

2、合成方法

如果不选择上述提到的「包装」方法,存款人也可以用非比特币抵押品生成合成比特币(「sBTC」)。为了研究此类系统如何工作,我们来分析一下 MakerDAO,其代币 DAI 是一种美元合成代币。实际上,这种系统也可以发行其他任何合成资产,甚至包括比特币。

当用户将抵押品存入抵押债务头寸(CDP),DAI 就创建了。虽然任何人都可以拥有并交易 DAI,但只有抵押债务头寸所有者才能将 DAI 赎回并兑换成相应的抵押品。由于套利周期更长,合成资产通常需要其他机制来维持价格均等。就 MakerDAO 而言,他们采用了稳定费和 DAI 储蓄率两者相结合的方式,稳定费用来调节抵押债务头寸成本,而 DAI 储蓄率则用于调节 DAI 的成本。这种「双管齐下」的方式有助于稳定 DAI 的市场供应量,使其价格始终平衡在 1 美元。

担保 vs. 信任

现在,我们已经有了两种建立代理代币的方式,也知道对于另一条链上每个代理代币都必须要控制等量的抵押品,这样才能持续保证其价格均等。不过,如果另一条链上使用的是非原生抵押品,比如在以太坊区块链上使用比特币作为抵押品,那么就会带来另一个问题:必须要有人来控制比特币私钥,而在智能合约可以持有私钥之前(目前尚不清楚这种方式是否可行),这意味着只要你能控制私钥,就能控制系统。

所以,为了让系统可以持久运转,就必须给抵押品托管方提供激励,否则他们很容易利用自己的「职务之便」做坏事。当然,我们相信托管方不会出现被窃等恶意事件,因为这样会破坏托管方的声誉,但如果恶意事件真的发生了,我们希望托管方必须有能力提供补救措施。无论在任何情况下,想要让侧链系统长期生存下去,为托管方提供激励是非常重要的,而且这些激励必须足够有吸引力,让托管方明白「不窃取存款」比「窃取存款」更划算。

以 WBTC 和 Blockstream 的 Liquid 为例,WBTC 采用了独立托管方,而 Liquid 选择的是多个托管方联合体,他们都持有代币抵押品,用户也相信他们不会窃取这些抵押品。在大多数情况下,这是一个合理的假设,因为托管方与用户是「间接担保的」。由于这些托管方存储的都是与比特币锚定代币相关的业务,他们基本上都会把自己的(身份)信息公开,而且也能通过传统法律法规对其进行追索。不过需要注意的是,现行任何受法律法规约束的系统都对免授权(permissionless)或抵制审查的系统实施完全约束。

这里有一个替代解决方案:如果其他系统参与者想要访问你的侧链,那么必须进行担保,否则就不能让外部参与者进行访问。从这个角度来说,你会发现比特币和以太坊这样的公链是一种多么重要的发明了。得益于免授权代币,我们可以构建一个系统,其中每一个步骤都需要抵押(「保险」),在托管系统里,你可以为用户提供保证,托管方必须要遵守规则,否则他们都会失去所有抵押品。

然而,这种替代解决方案也有缺点,会导致生产变得更加资本密集。不仅如此,由此产生的额外费用也不得不会转嫁给用户,继而导致总体服务成本更加昂贵。因此,这种权衡非常适合那些需要大量信任、而且用户对价格不敏感的服务。在某些情况下,被窃的数字资产很难货币化,但比特币并非如此,这就好像托管方锁定了用户资金,此时窃贼即便在流动性很高的市场也无计可施。

tBTC 的解决方案:担保和「可赎回」

在解释 tBTC 解决方案之前,让我们先比较一下 MakerDAO 采用的「合成方法」——需要注意的是,这种方法具有一定约束力和不可兑换性,而 WBTC 和 Liquid 采用的方法对于合规用户而言则是可信任和可赎回的,对不合规用户则采取了可信任且不可赎回的策略。相比之下,tBTC 采用的是一种可能没那么成熟的可赎回和担保设计方法。

tBTC 是一种为比特币设计的去中心化、受保险的托管系统,发行了一种名为「TBTC」的代币(星球君注:这里的 T 是大写,是一种在 tBTC 系统里的抵押代币),用户不必信任托管方——在 tBTC 系统里,托管方被称为签名人(signer),这些签名人存入的保证金必须要高于他们所托管的比特币价值。如果签名人要转移未经授权的资金,此时如果他们托管的 TBTC 价值比抵押的比特币价值要高,那么系统会「没收」这部分 TBTC 代币——要么从市场上购买,要么销毁等价的 TBTC,确保 TBTC 代币和抵押的比特币数量达到平衡。

不仅如此,tBTC 还有另一道防线,每个比特币都不允许被单个签名人持有,而是按照一定比例(「n-of-n」)的阈值签名和不同随机选择的签名人联盟共同托管的。

与 WBTC 不同,TBTC 创建和赎回过程并不受「了解你的客户」(KYC)/ 反洗钱、以及司法管辖区法律法规的约束,任何人都可以在比特币主链上存入比特币然后获得 TBTC 代币,或者赎回 TBTC 代币,再到比特币主链上兑换相应的比特币。

tBTC 系统的主要工作,就是确保流通中的每个 TBTC 代币都对应一个托管的比特币,签名人的主要任务就是维持这种平衡,因此签名人需要实时监控托管资产,如果比特币价格上涨就需要补充相应的 TBTC 代币,如果价格下跌则需要销毁相应的 TBTC 代币。tBTC 系统最初要求签名人必须存入相当于存款价值 150% 的抵押品,当其存款价值跌至 140% 以下的时候,tBTC 系统就会发出通知,如果其存款价值跌至 110% 的时候,系统就会启动自动清算。需要注意的是,如果签名人做出一些不当行为的时候会受到严厉惩罚,在这种时候他们的存款也可能会被强制清算。

对于每个需要参与者进行抵押的系统而言,存在两个主要挑战:首先,如果锁定资金的成本非常高,就会增加系统的整体成本;其次,由于必须监控存款价值,这就要求系统必须时刻关注区块链的外部因素,尤其是托管抵押品的资产价格变化情况。

挑战一:导入比特币价格

让我们继续以 tBTC 为例,tBTC 系统必须要时刻了解与 TBTC 代币挂钩的抵押品价格,所以就不得不关注两个关键要素:

  • 第一,tBTC 系统必须要知道新增存款所需要的抵押品数量;
  • 第二,tBTC 系统必须要知道现有存款价值在什么时候不足,这样才能让你及时发出通知、或是直接进行清算。

在上述这两种情况下,最重要的就是要及时知道实际抵押物价值是否高于与其锚定的比特币价值。只有当实际抵押物价值低于锚定比特币价值、并且没有及时做好价值平衡而导致进入自动清算程序时,系统才会有风险。如果抵押物价值低于托管的比特币价值,那么此时就只能看签名人了,期望他们放弃一部分托管比特币(但似乎不太可能)。

tBTC 一直在寻找一种全新的、基于市场的解决方案,而不是采用这种「价格预言机」的模式,他们希望从跨链交易委托账本(order book)中导入实际比特币价格。如果 ETH/BTC 市场具有足够的流动性,那么我们可以预期到市场参与者不会比实际比特币现货价格低的价格来结算比特币(这也是签名人不太可能放弃一部分托管比特币来保证价值平衡的一个原因)。因此在这种情况下,我们只能查看一段时间(比如 24 小时)内未清算比特币的最高出价,才能较为有把握地对比特币现货价格下界(lower bound)给出一个报价。

如果一个攻击者试图人为操作这个系统,让抵押物价值高于其真实价值,就意味着他 / 她必须要把比特币价格提高到超过全球现货价格的水平,这显然是非常难以实现的。即便真的有人尝试这么做,理性的市场参与者会看到市场呈现上涨趋势,因此也会抛售自己持有的比特币,这样又会增加攻击者的攻击成本。简而言之,这种机制将人为操纵者的购买能力与整个比特币市场关联在了一起,从而使系统更加稳固,不会轻易受到人为操纵的影响。

再退一步,就算比特币市场没有足够流动的交易委托账本,那么此时 tBTC 系统依然可以选择「价格预言机」机制作为备份。

挑战二:降低资金要求

第二个挑战是要将运营成本降低到托管方和用户都可以参与的合理水平,这个挑战不止 tBTC 系统、任何一个担保系统都需要面对。这里我们还是以 tBTC 系统为例,该系统推出之时就明确了每个 TBTC 代币都需要有 250% 的抵押,其中 100% 抵押来自于托管中的比特币,另外 150% 抵押来自于签名人的以太坊,并以此来保证原始比特币存款的安全。

到目前为止,我们可能还没有找到一个较为有效的、让市场来决定这些成本的方法,因此 tBTC 团队自己负责设定了费用。在该系统推出之时,tBTC 团队明确签名人每六个月可以获得 50 bps (或 0.5%)的托管费,每年产生 1% 的收入。鉴于必须对存款进行 150% 的超额抵押,当担保资金成本年利率小于 0.66% 的时候,可以优先确保签名人收支平衡。

即使我们忽略了冗余的成本(比如签名人必须始终在线,否则风险可能会大幅增加),你会发现签名人的投资回报率是很低的,所以很可能没有那么多人想要成为签名人。因此,你必须要提高收入,这样才能吸引更多人想去成为签名人,更少人想去做一个「普通用户」。tBTC 系统能否负担的起更高的托管费并持续吸引用户,主要取决于 TBTC 代理代币在以太坊上的借贷利率,这本身又与 TBTC 用户从访问 Compound 或 MakerDAO 之类的 DeFi 应用程序中获得多少效用和交易有着密切关系。

以更高的速率,可能需要高要求的签名者,但是低要求的用户。系统能否负担得起更高的托管费并仍然吸引用户,将主要取决于 TBTC 在以太坊上的贷款利率,这本身就是 TBTC 用户从访问 Compound 或 MakerDAO 之类的应用程序中获得多少效用的函数。

为了降低签名人的资金成本,tBTC 系统需要自动将他们在 Compound 上的担保借出去,或是完全抵押给其他资本市场。如果有人要在 Compound 上借以太坊(或 TBTC),那么他们也有可能成为 tBTC 系统里的签名人,并且在没有额外成本的条件下获得签名人费用(冗余成本除外)。但需要注意的是,增加另一个智能合约风险层可能会进一步减少 TBTC 代币的「硬通货」属性。

另一方面,tBTC 系统可以不使用以太坊之类的非原生抵押物,而是引入一种「工作代币」(work token),让这个代币通过托管费来产生现金流。然后,tBTC 系统可以将它自己的未来现金流作为抵押——如果这个「工作代币」相对于托管比特币的波动性小于以太坊,那么就可以让总担保要求再降低一些,无需把门槛设的像之前那么高。

当然,上述设计是否会降低 TBTC 成本并使用户和托管方都对系统感到满意还有待观察。

如下图所示,我们可以看到 TBTC 与其他跨链锚定代币的比较:

以热门的 tBTC 切入,全面探讨跨链锚定的设计

总结

通过探索与运营成本相关的属性,我们发现像 tBTC 这样的系统可以在每一个环境通过担保来实现更高的安全性,抵押担保可以大幅减少不当行为,甚至能让这些行为彻底消失。 不过,比特币跨链锚定代币提供的这种额外安全性是否值得用户付出更多成本,可能是加密货币行业需要进一步讨论的核心问题。

最后,非常感谢 Arjun Balaji、Charlie Noyes、Georgios Konstantopoulos、James Prestwich、Lucas Nuzzi 和 Matt L 对本文作出的贡献。

来源链接:blog.deribit.com