可扩展支付引擎StarksPay:当闪电网络遇上 STARKs_STARK:ETH

作者:?TomBrand,UriKolodny&?AvihuLevy

翻译&校对:?stormpang?&阿剑

来源:以太坊爱好者

编者注:原标题为《引介|StarksPay:当闪电网络遇上STARKs》

长话短说:StarkPay是一种基于STARK技术的可扩展支付引擎,它可以解决第二层支付解决方案闪电网络的许多缺点。

-图片来源:

Unsplash

,作者:

CadeRoberts

-

StarkWare的第一个STARK技术应用是一个Layer-2可扩展引擎。我们最近发布了StarkDEX,一个去中心化交易所可扩展引擎。

我们将该可扩展引擎应用于加密货币支付场景,构建了StarkPay。稳定币的出现满足了密码学货币作为交换媒介的必要条件。然而,该生态系统依旧缺少一个可扩展支付系统。我们相信StarkPay能够满足这一需要。

本文将对比分析StarkPay与闪电网络。我们将首先回顾闪电网络的优缺点。然后,阐述StarkPay基础架构,并举例说明其执行流程。最后,分析StarkPay的优缺点,以及缺点的改进方案。

本文将不探讨两种方案隐私保护方面的内容。

Cardano的Layer 2可扩展性解决方案Hydra已发布新版本:金色财经报道,Cardano的Layer 2可扩展性解决方案Hydra已在新的预发布版本“Hydra 0.8.0”中获得最新更新。根据 Hydra 首席开发人员?Sebastian Nagel共享的 GitHub 版本,新版本对 API 进行了几处更改,修复了 Hydra 节点中的错误并改进了 Hydra 用户体验。它还将交易成本计算为“最低费用”,并在 tx-cost 基准中报告它们,并进行了多项改进。[2022/10/28 11:53:27]

闪电网络

自Poon与Dryja2016年发布白皮书以来,闪电网络引起了公众的广泛关注。闪电网络目前拥有超过3000个节点,全网锁定资产价值超过200万美元。闪电火炬接力赛的金额也已超过100美元,高科技巨头JackDorsey与ReidHoffman、金融巨头Fidelity等也都参与其中。

Lightning是为了扩展比特币网络而提出的。作为最早一批出现的Layer-2解决方案之一,它天才地提议将交易转移到链下处理,而不改变区块链的安全模型。它希望不仅能够提升交易规模,还能够保证低延迟与最低交易费。

闪电网络也有几个缺点:

活性需求:付款方必须在线才能完成付款——这一点没什么奇怪的。但是,与比特币不同,在闪电网络中,收款方也必须在线,以便使用双方的私钥对链下交易签名。更糟糕的是,从交易双方建立链下通道开始,收款人就必须一直监测区块链状态,以确保付款人不会将他们余额的旧状态提交上链并关闭通道。路由节点也必须在上下游通道超时之前在线,以便在上游HTLC超时之前参与协议、履行职责。

Plasm创始人:计划构建可扩展DEX,并让其成为波卡上的IDO平台:Plasm创始人Sota Watanabe发推称,我们计划在Plasm Network上构建一个可扩展DEX,继而让其成为波卡(Polkadot)上的IDO平台。我们乐于与一些项目合作。[2021/3/19 19:00:04]

闪电网络试图引入瞭望塔节点来解决用户需要持续监测区块链的问题。瞭望塔节点通过向用户收取费用来提供区块链网络状态监测服务。

资金利用率低:一般来说,为了方便使用,付款方愿意锁定一些资产。但是在闪电网络中,每个用户需要在每个通道都锁定一笔资金,从而将一个用户的资金打散。

更糟糕的是,如果链下交易不是直接从付款方发送给收款方,而是通过其他路由节点转发,那么所涉及的路由节点也需要锁定数量至少为X的资金。

在理想情况下,单一中心节点的星型网络流动性上限为中心节点愿意锁定的资金量。付款方的锁定资金对于网络流动性毫无贡献。换句话说,需要路由节点来给网络带来流动性,这是一个令人有点惊讶又不合需要的特性。

要是我们再想避免形成这样的中心化网络,又会遇到什么样的问题呢?降低网络中心化水平需要增强路由路径选择的多样性。但是在一笔转账中,参与路由的节点越多,交易资金成本就会越高。具体而言,如果Alice想通过5个路由节点向Bob发送1个比特币,那么总共就需要在闪电网络中锁定5个比特币。这种成本必须转化为交易方所承担的费用。现在闪电网络中并向付款方未收取这部分费用,而是基于网络早期用户的利他行为来维持网络正常运转。

IOST X Aegis DeFi:构建法币和DeFi生态之间的可扩展流动性桥梁:8月25日消息,位于新加坡的DeFi项目Aegis DeFi正式宣布与IOST达成合作伙伴关系。作为战略合作伙伴,双方将在社区增长、产品开发、技术支持以及国际市场上的营销推广方面积极合作,共同建立DeFi生态资源。未来,双方旨在通过可持续的DeFi网络共同创建顶级的开放式金融平台,从而使DeFi服务多样化,为更多人提供优质DeFi服务。

据悉,作为DeFi 2.0协议,Aegis DeFi能够基于用户的信用情况为其提供小额抵押代款甚至是无抵押代款。Aegis能够根据用户提供的信用数据,利用区块链以及AI技术的评分算法,对每一个用户的信用进行评分。Aegis评分决定了每个用户可以从流动性资金池中获得的信贷额度。除借代业务外,Aegis同样支持资产以及衍生品,如CDS产品的发行。[2020/8/25]

闪电网络生态系统的中心化趋势能够缓解资金利用率低下的问题。闪电网络中心化程度显然是一个有趣的话题。

运营安全挑战:中心化交易所最具争议的点是,它们创造了一种蜜罐,会引来攻击者的攻击。但是,随着网络的扩大,闪电网络路由节点会创建更多临时蜜罐。设想一下热钱包中有一个私钥需要暴露的情况:中心化交易所只需要在它们选择的时间段内短暂暴露私钥。但在闪电网络中,路由节点为了提供几乎实时的服务,必须一直暴露私钥。与此同时,为了提供稳定的路由服务,它们需要保证每个通道都有足够的资金。这就构成了一个理想的蜜罐:充足的资金与在热钱包中暴露的私钥。为了弥补保护这个蜜罐所需投入的资本,路由节点很可能将这部分投入增加到交易费当中。

声音 | V神:发链很难发币更难,公链在保护隐私上的最大阻碍是可扩展性:在万向区块链实验室主办的第五届区块链全球峰会上,在被问及如何看待诸如Facebook等大型公司,而非初创项目建立区块链基础设施之时,V神表示:“发行新的区块链很难,发行新的货币更难,两者加上来是难上加难,哪个更成功,我不知道。”V神表示用私链来保护隐私是不靠谱的;联盟链的数据只是跟附近公司分享,虽然也有一定的保密性;但公链是最好的方式,不过公链现在最大的阻碍是可扩展性。长期来看,随着公链的扩展性提升,公链的价值也就越高。[2019/9/18]

交易完成率随支付金额增加而降低:考虑到多跳支付中的每个通道都需要锁定超过支付金额的资金,这些支付在网络中可选择的路由更少,因此更高金额的交易支付完成可能性更低。由于通道路由限制了容量大小,支付金额增加可能导致交易费用也会水涨船高。理想情况下,用户当然希望交易完成率独立于交易金额。

交易完成率随方向性增强而降低:与增加支付金额的负面影响类似,当许多付款方同时向一个收款方支付费用时,他们会争夺有限的路由节点资金容量。请注意,闪电火炬接力赛并没有证明闪电网络能应付这种场景。

总的来说,闪电网络总资源消耗似乎不仅仅与参与者的数量或支付金额相关,还与支付笔数成比例。这对于支付扩容方案来说显然是一种硬伤。

StarkPay

StarkPay的目标是提供一种无活性需求的、可扩展、资金高效、非托管的支付解决方案。

V神:Casper就要来了,解决可扩展性问题是第一要事:V神在新加坡的一场演讲中表示,目前在两个以太坊客户测试网络中测试实施Casper Proof of Stake(PoS),Python和Harmony’s Java已经实现,希望不久之后,Go Geth和Parity也会实施Casper,预计或许在夏季。同时他还提到与Plasma比起来,分片技术非常确定不会发生一个块失效导致整个链失效的事情,实施可扩展性甚至比POS机制还重要,只有实现了可扩展性,才能让人们使用区块链应用。ETH现全球均价828.28美元,24小时跌幅4.16%。[2018/3/6]

组件

StarkPay由链下组件与链上组件两个部分组成。

链下

支付处理者:与付款方与收款方交互。

付款方余额树:由Prover更新,并且保证可用性。

证人节点:产生STARK证据,从而证明支付处理者传来的几批支付的有效性,以及付款方余额更新的有效性。

链上

支付合约:StarkPay的资金入/出站,同时存储更新付款者余额的承诺。

验证者合约:验证由证人节点产生的STARK证据,并将验证结果反馈给支付合约。

让我们将以上模型带入一些基本场景:

存款

付款者向支付合约存入密码学货币。通过STARK证据将存入资金转移到链下余额树。此操作类似于闪电网络通道建立过程,但有一个很重要的区别在于,StarkPay中“入站”操作可以指定多个资产接收方地址。

取款

同样通过使用STARK证明证据,将链下余额树中资金转移至支付合约,之后付款方便可从支付合约中取出余额。此操作类似于闪电网络的通道关闭过程。

Alice通过StarkPay向Bob转账

Alice签名向Bob发送一笔交易,并将该交易发送给支付处理者。

支付处理者将一批支付交易发送给证人节点。

证人节点生成这批支付的STARK证据,以证明这批支付以及账户余额更新的有效性,具体过程如下:

检验支付的数字签名;

验证付款方有充足的资金;

更新余额承诺。

证人节点向链上的验证合约发送STARK证明证据以及余额承诺。如果验证通过,验证者就向支付合约发送新的余额承诺,并将其存储在链上。

对于证人不需要引入信任假设,恶意或粗心大意的证人无法让验证合约相信无效证明是有效的。

优势

我们相信StarkPay体系架构能够提供预期的优势:

可扩展性:StarkPay所消耗的计算资源随着付款者以及支付的数量增加而增大。更重要的是,计算资源的变化不再与流通总金额挂钩。我们已经达到了一个比较理想的结果:StarkPay在单个区块内能够支持超过10000笔交易。

值得注意的是,STARK适度地消耗了极为稀缺的链上计算资源:它所消耗的资源随着链下计算规模的增加以对数方式增长。具体而言:为使StarkPay吞吐量提升10倍,链上计算资源消耗仅需增加不到50%。

插播:如果将扩容的标准设置为金额/秒而不是交易量/秒,那么StarkPay其实是没有上限的。

资金利用率高:就像借记卡那个比喻一样,在StarkPay中,除了每个付款方希望在链下用于支付的资金外,不需要锁定额外的资金。尤为重要的是,对支付处理者与证人没有流动性要求。

无活性需求:收款方余额更新时无需其保持在线。在所有场景中,交易都可以离线构造并在之后发送给区块链或支付处理者。

非托管:付款方无需将加密货币托管给StarkPay。所有操作都需要付款方签名,即便在证人作恶或者不合作的情况下,他们也可以随时直接从支付合约中取出锁定资金。

在这方面,StarkPay与闪电网络的效果相同,用户仍然保留对资金的控制权。

劣势

StarkPay有一些明显的缺点:

数据可用性:为了充分利用STARK的链上对数扩展性,数据最好存储在链下,但这就会带来交易数据不可用的问题。为了去信任,并且打破可扩展性上限,数据有效性是每个基于Plasma的扩容方案必须解决的挑战。

改进方案:

链上分批记录交易:我们认为在这种模式下StarkPay能够轻松达到每秒处理几百笔交易。

未来链下数据一个可能的方向:构建数据可用性见证联盟,联盟对提交给链上验证者合约的证明签名就表示数据在链下是可用的。链上验证者合约将不接受缺少此证明的证据。值得注意的是,该联盟没有被委托保证系统状态的有效性——他们不能盗窃资金,也不能将让系统状态失效。

为了支持更加去中心化的解决方案,这个联盟之后将逐步被淘汰。

中心化:证人节点最初将由StarkWare运营。这带来的中心化与审查的风险。

改进方案:

中心化:其他市场参与者,自然会提供自己的证人节点。从长远来看,证人节点可以通过共识算法在网络中竞争证据生成业务。注意,由于状态仅通过有效证明来改变,证人节点不能通过切换到无效状态来攻击网络,在这个意义上,StarkPay的方法很像第一层共识的解决方案。

审查:在StarkPay上,STARK也可以用来保护隐私。具体而言,付款方可以隐藏他们的交易内容,即便是证人节点也无法获取。由证人节点生成的计算声明是它验证了从付款者收到的一批独立交易后生成的,因此他人无法从中追溯单笔交易。

延迟:与点对点闪电通道保证的即时结算不同,目前为大批量交易生成证明所需的时间大约是几分钟。

改进方案:

证人节点可以在验证收到的一批交易之后,立即向链上的支付合约提交承诺,并同时生成证明证据。收款人有几分钟的时间需要承担证人节点会无限期扣留证据的风险。该风险可以通过持有证人节点基金来补偿。值得注意的是:StarkPay的延迟是主链对于证据提交交易的共识延迟,而不是闪电网络中近乎即时的链下节点交易处理延迟。

同时,延迟不应该等同于吞吐量:StarkPay能够通过提升证人节点计算资源的方式,来达到更高的吞吐量水平。

没有适用于比特币的解决方案:以目前的形式,比特币尚不能支持高效链上STARK验证。

缓解措施:如果你有解决方案的话,一定要告诉我们。在此之前,我们将集中精力适配支持高效链上STARK验证的区块链。

本文我们介绍了一种适用于加密货币支付场景的基于STARK算法的可扩展引擎。我们首先分析了当前最热门的比特币扩容方案——闪电网络,并将其与StarkPay进行了比较。我们的结论是,StarkPay提供了一种引人注目的替代方案,能够在几个值得注意的维度对闪电网络进行改进。

感谢VitalikButerin,PatrickMcCorry,JimPosen与DanRobinson对本文草稿提出的意见。

?

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-7:536ms