wanBTC和tBTC的对比分析

Christmas Nanjing
Wanchain
Published in
7 min readDec 1, 2020

随着Wanchain5.0的发布,一个全新的去中心化代币跨链的方案呼之欲出。我在上篇文章中分析了一下市场上比较热的renBTC的跨链方案,其中也提到了wanBTC在去中心化和安全机制上会比ren的方案有大幅的提高,同时很多读者朋友向我们咨询关于另外一个同样是在以太坊上发行映射BTC的项目tBTC的技术情况,正好本文借分析tBTC和wanBTC的相同和异同的一些思路和实现方案,给读者不同的视角来评判这些映射BTC的解决方案。

先看看tBTC和wanBTC比较相同的一些设计机制。首先是两个项目都尝试用更加去中心化的思路来实现跨链,客观来说,都没有能够达到100%的去中心化理想状态,这也是现有技术的发展瓶颈决定的,所以在用密码学技术保证跨链锁定账户安全这个核心点之外,都采用了‘额外’的经济手段来保证一旦技术手段还是出现‘黑天鹅’情况下用户原生BTC资产的安全性,也就是通常意义上所说的‘抵押物’机制。在tBTC设计中,管理原生BTC资产的节点被称为‘Signer’可以翻译成‘签字人’而在wanBTC中,同样管理资产的节点被称为‘Storeman Group’,可以翻译成‘看门人’。tBTC对‘签字人’和wanBTC对‘看门人’都要求其抵押保证金才能工作,不同的是tBTC的‘签字人‘用的是以太Ether按照150%做‘超额抵押‘和wanBTC的’看门人‘用的是WAN代币做200%或者更高的’超额抵押‘。这样有超额抵押的机制是对锁定原生资产除了技术手段外一个非常好的保护,可以看作是’Double Security双重安全机制‘。多说一句,既然是超额抵押,抵押物对BTC的价格计算和清算设置上,tBTC用的是MakerDAO的喂价而wanBTC用的是BIO多重预言机来进行喂价。

说完相同点,说一些两个跨链机制不同的地方。首先是跨链密码学上核心的‘TSS门限签名‘的不同设计。看过我们上篇文章的朋友应该都还记得,市面上绝大多数跨链密码学是基于’Threshold门限‘的基础,而wanBTC和tBTC则是基于最新的TSS方案研究成果“Fast Multiparty Threshold ECDSA with Fast Trustless Setup”。参数设置方面,tBTC采用的门限是3–3的设置,翻译过来意思就是每笔跨链交易有3个’签字人‘来管理锁定原生BTC资产的账户,并且这3个签字人都需要参与构造一个合法签名。如果有任何一个签字人掉线或者拒绝签字的话,一笔跨链交易的两步:’铸造‘和’赎回‘都无法完成,可以看作是一种’No Fault Tolerable不允许容错’。wanBTC采用的门限是15–21的设计,也就是每笔跨链交易有21个‘看门人’来管理,而每次交易需要其中的15个人参与就能完成跨链的铸造和赎回,换句话说每次跨链交易发生的时候,允许这21个看门人中有不超过6个节点有掉线或拒绝签名的情况发生,可以看作是一种’Fault Tolerable可允许容错’。当大量跨链交易发生的情况下,’可允许容错‘比’不允许容错‘更加实用。

除了TSS门限设置外,两个机制的第二个异同点是对跨链BTC额度的‘拆分’设置。因为上面第一点讲到了tBTC采用的是3个‘签字人’组成的小组方式来签名,的确这三个人合谋作恶的可能性比较大,所以实际跨链操作中,tBTC会采用‘离散数值’的方式来处理一笔BTC的跨链交易金额,翻译过来说,举个例子,一个用户做一笔1.63个BTC的跨链操作,tBTC可能把1.63这个数字离散为1个1BTC,1个0.5BTC,1个0.1BTC,3个0.01BTC,这样交给(1+1+1+3)6个‘三人签字人’小组来处理。这样做虽然安全性得到一定的提升,不过从实用性上来看,这也同时意味着用户的这‘一笔’1.63BTC的交易需要等待‘6’次比特币网络确认时间,而且需要支付‘6’次的比特币网络Gas费用和‘6’次以太坊上合约‘铸币’的Gas费。联想到现在以太坊被DeFi把Gas费已经助推到人神共怒的情况下,我很怀疑tBTC这样离散的设置能否实行下去,换句话说,如果坚持离散数值设置,基本可以‘劝退’大部分BTC跨链转账在1个BTC一下的用户了吧!而wanBTC因为采用的21个‘看门人’节点组的设计,所以只要在抵押物大于跨链交易金额的条件下,上面举例的1.63个BTC的交易会一次性完成,只需要1次BTC网络等待时间和1次以太坊上‘铸造’的费用。当然在‘看门人’组的抵押物不够该笔BTC跨链交易的情况下,机制设置就不会允许该笔交易完成以保证原生BTC资产的安全。

另外一个两个机制的不同是合约交互的设置。因为不同的合约交互逻辑决定了跨链操作用户的等待时间和Gas费用支付。从用户角度来剖析:当转1个BTC到以太坊上的1个tBTC,用户需要发送的交易是1次BTC链的交易‘锁定’和2次以太坊上的合约交互:‘Request(请求铸币)’和‘Proof(锁定原生BTC后提交证明给合约)’;除此之外tBTC要为这笔交易‘选举‘不同‘签字人’组;等到‘签字人’组选举完成后他们再把BTC锁定地址发给用户。这样的用户等待时间会很长同时体验上欠佳。在Wanchain跨链机制中,当用户操作BTC到以太坊的wanBTC的情况下,由于Wanchain的‘看门人’组选举不是根据每次交易选择的,而是提前选举完成的,所以被选中的‘看门人’组会把锁定BTC的地址直接发给用户,就不需要用户去发送任何交易去以太坊。根据这些合约交互逻辑的设置,预测转tBTC会比wanBTC时间上多1–3倍(tBTC:离散的设置加两次以太坊交易),同时Gas费用支付多3–10倍(tBTC: Ethereum transaction fee *2 + Bitcoin transaction fee *1 + 0.005 BTC / Wanchain: Bitcoin transaction fee *1)。

最后一点两个机制上的迥然之处在tBTC要求用户在6个月后必须‘赎回’其tBTC,而wanBTC没有这样的期限要求,用户可以在任意时间内持有wanBTC。这样‘奇怪‘的要求是因为在tBTC机制中,用户跨链完的tBTC是有单独选举出来的’签字人‘组来为其服务的,只要用户不把tBTC’赎回‘到BTC,这些’签字人‘节点就只能陪着用户等在那里,想退出也没法退出;所以tBTC强制用户最多6个月时间就要’赎回‘去;而wanBTC的’看门人‘组不是单独为某一笔交易服务的,同时’看门人‘节点组每次选举有节点退出,有节点加入,重新选举完成后,旧的‘看门人’组都会把‘账务’交接给新的‘看门人’组去:包括债务,责任和收益都转给了新的节点,故不需要强制用户在一定时间内’赎回‘映射的BTC资产。

总体上评估,tBTC和Wanchain的wanBTC看出来都是认真思考‘去中心化’和‘安全’这两个跨链的核心维度上做突破,并做了大量研究工作和代码工程实现的务实工作。双方都采用了TSS最新的门限密码学研究成果,只不过因为取得门限值不同而带来其他一系列不同的设置从而引发了一些异同点。回到本文一开始所说的,现阶段没有一个跨链机制是‘100%技术‘上安全的,所以当引入了跨链节点的抵押品,经济惩罚和激励规则后,会是跨链这个区块链核心技术强有力的一个补充!这也是上篇分析文章中笔者提到的:更希望的是看到推动这个行业技术和应用往前更进一步的努力,而非只是靠’白皮书的理想‘来推动技术实实在在的发展!

--

--