来自 | flare.xyz
原文作者:雨果·菲利昂(Hugo Philion),Flare联合创始人
今天,我们很高兴可以公开有关Flare Networks的详细计划。这项计划包括了对白皮书草案的深入探索,该草案包括了对有关网络部署、平台原生代币(Spark)、瑞波币在Flare上免信任地整合工作等内容。
目前,该计划还只是一个草案,直到Flare Networks上线那天,都有可能会进行不断地优化,但不会有重大的偏离。我们接下来会重点介绍Flare Network一些最重要的方面。
Flare Networks 的成立是为了理解当前的共识协议、PoW 和 PoS 存在一些限制,如能源消耗和可扩展性,两者都无法使区块链行业充分发挥其潜力。 Flare 引入了第一个图灵完备的、去信任的、联合拜占庭协议共识来解决 PoW 和 PoS 问题。 Flare 系统在启动时将为四种代币提供效用:LTC、Doge、XLM 和 XRP。 由于 XRP 社区是第一个采用 Flare 网络的社区,因此以下所有示例都将使用 XRP,但均可以替换为 LTC、Doge 和 XLM。
(文末会有一个简短的总结。)
什么是Flare ? 我们为什么要搭建它?
搭建Flare网络是为了解决两个关键问题:
首先,一个重要的现状是,加密世界中约65%总市值的代币无法以免信任的方式在智能合约中使用,而这对我们行业的构建是至关重要的。
其次,从短期和长期的影响来看,目前智能合约网络如何实现扩展性是一个潜在的问题。大多数新兴网络都使用权益证明共识机制(Proof-of-Stake)或是类似的方式来实现,这些协议通过它们的原生代币来获取网络的安全性。
但权益证明中一个无法避免的直接问题就是:共识机制设计无法安全地保证原生代币的替代性使用。如果代币持有者通过提供抵押品来创建稳定币就能获得比Staking代币更高的收益(且没有大幅削减的可能性),那么作为经济理性主义者,他们很可能就会这么做。而这样做的结果将会减少锁定的代币,并损害网络的安全性。所以我们怀疑,这可能是以太坊在交易成本相对较高且交易吞吐量不高的情况下,仍然可以在去中心化金融领域保持领先地位并一直是使用率最高的区块链的主要原因。
然而一个更长期的问题在于,随着权益证明网络使用的增加,以及在这基础上构建价值的增加,平台代币的价值必须增加,否则网络将会变得不安全。这对代币投资者来说可能是件好事,但对那些希望看到去中心化成为主流方式一部分的人来说却并非如此。这是为什么呢?为了确保平台代币的价值增加,就必须将资金从其他用途转移到购买代币上。从逻辑上来看,如果使用权益证明的智能合约网络成为普遍的方式,那么仅仅为了确保在这些网络上建立价值,就需要从其他方面转移资金,那将会使商业成本高得离谱。因此,这种情况几乎不可能发生。由于权益证明仅仅可以扩展交易量,却无法扩展价值,因此在我们看来,权益证明充其量只能算是权宜之计,而不是最终解决方案。
Flare会如何解决这些问题?
Flare的核心其实是推出一种全新的可扩展智能合约平台,此类平台不再将网络安全与代币的价值联系起来。不过Flare仍然需要一种代币来运营网络,目的是为了阻止危害网络安全的交易。Flare的原生代币被称为Spark,由于Spark没有网络安全隐患,因此非常适合通过智能合约实现非图灵完备的代币的免信任使用。
Flare是世界上第一个图灵完备的联邦拜占庭协议(FBA)网络。节点在运行Avalanche共识协议的时候,会对FBA共识拓扑进行密钥适配。FBA作为一种共识拓扑是独一无二的,因为它不依赖于影响高价值和高风险用例的经济激励,同时还实现了安全性。不过,FBA有一个问题就是,它会使组成节点的结构变得脆弱,由于其拓扑结构允许单个节点故障,所以有可能会导致整个网络故障。出于这个原因,FBA有一个被称为是唯一节点列表(UNL)拓扑的特定设置,该设置强调清晰性和易用性,同时保持FBA的开放成员属性。其中,UNL的重叠率代表了一个治理定义的参数,较低的重叠率可以提高网络开放成员的所有权。Flare Network利用以太坊虚拟机(EVM),使网络能够运行图灵完备的智能合约。
基于Flare上的协议,用户在网络发布时可以安全地在Flare上发行、使用和赎回瑞波币(XRP)。这个协议被称为FXRP,而瑞波币在Flare上可以安全免信任地转换为FXRP,这则由Flare原生代币Spark提供安全担保。
瑞波币现在在图灵完备的网络中是有效存在的,它可以通过Cosmos和波卡(Polkadot)等互操作性协议或是通过定义良好的桥接协议与以太坊进行可信任的互操作。简而言之:Flare可以当作是瑞波币的智能合约平台,同时也可以当作是瑞波币转移到其他平台的可靠渠道。
此外,FXRP协议的通用规则适用于任何一种非图灵完备代币,并且可以将其支持的代币运用到网络系统和治理中。
可以说,Flare将非图灵完备代币的价值与网络智能合约的转型能力结合在了一起,并可以按照代币价值和交易量进行扩展。
FXRP概况
目前,将瑞波币引入到Flare的复杂性在于,公链上的智能合约无法控制XRP ledger(分布式账本数据库)上的地址,原因就是智能合约目前没有可靠的方法以真正保密的方式来存储密钥。如果仅使用代码将瑞波币引入Flare,那么就需要参与者带着他们共同控制的多个签名地址聚集在一起,因此如果只要有众多参与者中的部分人签署了一项交易,那么该交易就被授权了。由于由这个多重签名地址发布的资产的任何用户都必须信任这些参与者,因此该资产既不是免信任的,也不是去中心化的。
FXRP允许瑞波币持有者(一个发起者)安全地将他们的瑞波币发送到瑞波币分类账上的一组地址(称为代理),然后Flare上的FXRP智能合约将在Flare上发行FXRP,该FXRP与瑞波币是1:1进行兑换的,并由Spark进行担保。当FXRP持有者希望将其赎回为瑞波币时,他们将其发送回Flare上的FXRP智能合约,然后代理商将瑞波币发送到瑞波币账本上的收件人地址。如果代理人没有足够快地完成赎回,那么赎回者将会获得与瑞波币等值的补偿,以及购买瑞波币产生的交易成本补偿。
有了FXRP,不再需要中心化媒介。
FXRP的工作原理如下:
Flare原生代币Spark的所有者可能会将他们的代币发送到Flare上的一组智能合约,这些合约被称为FXRP系统。这样做之后,用户就为FXRP系统提供了抵押品,他们也被称为代理人(agents),而FXRP系统中会有很多类似的代理人。
我们假设其中一个代理人名为Bob,Bob向FXRP系统发送了5000个Spark代币,在这个例子中,1个瑞波币可以购买10个Spark代币。而FXRP系统要求2.5的抵押率,这就意味着代理认在任何时候都必须向系统提供分配给他们的价值2.5倍的FXRP。在这里FXRP与瑞波币的比值为1:1,因此Bob的5000个Spark代币允许系统发行200个FXRP。
这时候,有一个名为Alice的人想要创建FXRP,她会向FXRP系统发起一笔交易,并收取固定费用(希望铸成FXRP的瑞波币价值的0.1%)。Alice被称为是发起者(originator)。该交易会告诉FXRP系统,FXRP在铸币完成后要在Flare上将其发送到哪个地址,以及瑞波币在瑞波币账本上产生的地址是什么。如果FXRP系统中的容量可用,那么用于确保获得FXRP的抵押品将会针对Alice即将进行的交易锁定一段时间,这样一来,Alice就不必信任Bob了。作为回应,一组指令将会生成,告诉Alice要将瑞波币发送到瑞波币总账上的某个地址(Bob的地址),以及要使用的最后一个总账索引。假如系统中没有足够的容量来发行所需的FXRP数量,将向Alice退还费用。
然后,Alice会将正确数量的瑞波币加上瑞波币创建费发送到瑞波币账本上Bob的地址。创建费是Bob通过锁定他的Spark抵押品而获得的主要收入来源,请注意他的收益是以瑞波币为主的。
值得一提的是,Flare会使用一个名为State Connector的系统来观察这笔交易,该系统在Flare白皮书中的第2节中有相关的定义(这也将会是未来博客文章的主题)。随后,FXRP由系统生成,并发送到Alice在Flare上的指定地址。
记住,2.5倍的抵押率必须一直保持。如果瑞波币的价格相对Spark有所增加,那么Bob的抵押品价值将以低于2.5倍的FXRP发行,接着Bob就必须在有限的时间内增加更多的Spark代币作为抵押品或是购买和赎回FXRP代币来平衡他的抵押率。例如,假设Bob的5000个Spark代币对应铸造200个FXRP代币,而XRP/Spark的比率现在增加到12,那么Bob现在需要将1000个Spark代币添加到系统中,或者购买并赎回33.34 FXRP,以将发行的FXRP分摊减少到166.66。
在以上的假设中,如果Bob没有添加额外的Spark代币,那么减少他的地址所支持的FXRP的平衡对他来说并不会带来经济上的负担。Bob的抵押品使FXRP系统能够发行200个FXRP代币,在此过程中Bob在瑞波币账本上收到了200个瑞波币。因此,如果鲍勃没有额外的资金购买Spark代币,那么他可以通过卖瑞波币来换取FXRP,这样他至少可以赎回33.34 个FXRP,或是在一个纯粹的去中心化环境中,假如拥有足够抵押品的FXRP系统中还有其他代理人,那么他可以铸造充足的FXRP并且立即赎回。在第二种情况下,责任基本上转移到了系统的其他部分。如果Bob什么也不做,并且对担保比率保持违约状态,那么Bob的抵押品将会被自动拍卖,拍卖金额为为其发行的FXRP,在本案例中为200,而Bob则可以保留所有剩余的抵押品。
假设Bob选择添加额外的 Spark 代币作为抵押品,那么在一段时间后,拥有全部 200 个已发行 FXRP 的Alice想要将全部金额赎回到瑞波币区块链的分类账上。此时,Alice只需与 FXRP 系统进行交易,将 FXRP 发送到系统并告诉它自己想要记入哪个瑞波币区块链的分类账地址。然后系统就向Bob发出一组指令,告诉他要发送多少枚瑞波币 、发送到哪里、以及必须完成交易的两个瑞波币区块链分类账编号的截止日期。如果Bob在第一个截止日期前完成交易,他的抵押品将完全解锁。如果Bob在第一个截止日期前失败但在第二个截止日期前成功,他将会被收取少量罚款,其余抵押品将被解锁,罚金费用会被销毁。
如果Bob未能在第二个截止日期前完成交易,那么这意味着赎回失败。然后,Alice会用等值的Spark 代币补偿她此前赎回的瑞波币,另外她还将获得 1% 的增额以支付回购瑞波币所耗费的交易成本,这笔增额资金将从Bob的抵押品中提取的,此时Bob剩余抵押品中的 50% 作为惩罚被销毁,另外的 50% 抵押品会返还给他。然后Alice就可以在交易所购买替代瑞波币。或者,假设 Flare 上还有其他已发行 FXRP 的代理方或是其他希望出售代币的人,Alice也可以在 Flare 上购买更多的 FXRP 并将其从那些代理手中赎回代币。
本文目的是详解世界首个图灵完备的联邦拜占庭协议 (FBA) 网络 Flare Network,将分拆解为两篇进行阐释: