作者:?TomBrand,UriKolodny&?AvihuLevy
翻译&校对:?stormpang?&阿剑
来源:以太坊爱好者
编者注:原标题为《引介|StarksPay:当闪电网络遇上STARKs》
长话短说:StarkPay是一种基于STARK技术的可扩展支付引擎,它可以解决第二层支付解决方案闪电网络的许多缺点。
-图片来源:
Unsplash
,作者:
CadeRoberts
-
StarkWare的第一个STARK技术应用是一个Layer-2可扩展引擎。我们最近发布了StarkDEX,一个去中心化交易所可扩展引擎。
我们将该可扩展引擎应用于加密货币支付场景,构建了StarkPay。稳定币的出现满足了密码学货币作为交换媒介的必要条件。然而,该生态系统依旧缺少一个可扩展支付系统。我们相信StarkPay能够满足这一需要。
本文将对比分析StarkPay与闪电网络。我们将首先回顾闪电网络的优缺点。然后,阐述StarkPay基础架构,并举例说明其执行流程。最后,分析StarkPay的优缺点,以及缺点的改进方案。
本文将不探讨两种方案隐私保护方面的内容。
美国银行:以太坊需要可扩展性改进以保持其市场地位:金色财经消息,美国银行在一份研究报告中表示,以太坊区块链从工作量证明(PoW)共识机制到权益证明(PoS)的转变似乎迫在眉睫,因为它需要可扩展性改进以保持其市场地位。该银行表示,如果没有可扩展性的改进,以太坊不太可能继续作为主要的区块链操作系统,并表示:“PoS将以太坊的能源消耗降低了99%以上,降低了投资者作为网络验证者产生收益的准入门槛,并改变了ETH的供需动态”。
分析师还指出,Binance Smart Chain(BSC)、Tron、Avalanche和Solana等较新的区块链由于其PoS共识机制、更大的可扩展性和更低的交易费用而从以太坊抢占了市场份额。该银行补充说,这些功能优势“可能会随着Web3生态系统去中心化应用程序的出现而成为关键”。(Coindesk)[2022/8/2 2:52:24]
闪电网络
自Poon与Dryja2016年发布白皮书以来,闪电网络引起了公众的广泛关注。闪电网络目前拥有超过3000个节点,全网锁定资产价值超过200万美元。闪电火炬接力赛的金额也已超过100美元,高科技巨头JackDorsey与ReidHoffman、金融巨头Fidelity等也都参与其中。
Lightning是为了扩展比特币网络而提出的。作为最早一批出现的Layer-2解决方案之一,它天才地提议将交易转移到链下处理,而不改变区块链的安全模型。它希望不仅能够提升交易规模,还能够保证低延迟与最低交易费。
闪电网络也有几个缺点:
Messari前产品负责人:只要ETH2.0尚未完全推出,高度可扩展的区块链就有机会取代以太坊:区块链初创项目Messari前产品负责人王启奥发布推特称,在尝试使用了12个不同的DeFi平台后,我改变了之前的看法,我认为只要ETH2.0尚未完全推出,高度可扩展的区块链就有很大的机会取代以太坊。支付10美元的交易费并等待15秒钟进行结算只能说是一种糟糕的用户体验。关键的第一步是发布稳定币。之后,可能会发生其他一系列创新。6月19日,王启奥曾发布推特称,每个太坊杀手都试图复制以太坊上已有的东西,DeFi、稳定币和发币,这是一个严重的问题。是什么让这些复制者认为自己可以战胜以太坊的网络效应?为什么不尝试开拓新的用例?[2020/6/29]
活性需求:付款方必须在线才能完成付款——这一点没什么奇怪的。但是,与比特币不同,在闪电网络中,收款方也必须在线,以便使用双方的私钥对链下交易签名。更糟糕的是,从交易双方建立链下通道开始,收款人就必须一直监测区块链状态,以确保付款人不会将他们余额的旧状态提交上链并关闭通道。路由节点也必须在上下游通道超时之前在线,以便在上游HTLC超时之前参与协议、履行职责。
闪电网络试图引入瞭望塔节点来解决用户需要持续监测区块链的问题。瞭望塔节点通过向用户收取费用来提供区块链网络状态监测服务。
资金利用率低:一般来说,为了方便使用,付款方愿意锁定一些资产。但是在闪电网络中,每个用户需要在每个通道都锁定一笔资金,从而将一个用户的资金打散。
更糟糕的是,如果链下交易不是直接从付款方发送给收款方,而是通过其他路由节点转发,那么所涉及的路由节点也需要锁定数量至少为X的资金。
现场 | 链极科技董事长庞引明:区块链能够切实服务实体经济:金色财经现场报道,在今日举办的2018全球媒体峰会上,“清流智库专家”、链极科技董事长庞引明发表题为《区块链服务实体经济》的演讲,他表示,传统金融存在痛点,第一是成本高,传统金融机构的成本越来越高;第二是普惠性低,考虑客户分层不服务于穷人,金融机构机构变成了大山。实体经济方面也存在痛点,一是过程、流程过于复杂,二是大数据真实性、可靠性不足。区块链技术能够解决传统金融和实体经济存在的问题,服务实体经济。[2018/7/19]
在理想情况下,单一中心节点的星型网络流动性上限为中心节点愿意锁定的资金量。付款方的锁定资金对于网络流动性毫无贡献。换句话说,需要路由节点来给网络带来流动性,这是一个令人有点惊讶又不合需要的特性。
要是我们再想避免形成这样的中心化网络,又会遇到什么样的问题呢?降低网络中心化水平需要增强路由路径选择的多样性。但是在一笔转账中,参与路由的节点越多,交易资金成本就会越高。具体而言,如果Alice想通过5个路由节点向Bob发送1个比特币,那么总共就需要在闪电网络中锁定5个比特币。这种成本必须转化为交易方所承担的费用。现在闪电网络中并向付款方未收取这部分费用,而是基于网络早期用户的利他行为来维持网络正常运转。
闪电网络生态系统的中心化趋势能够缓解资金利用率低下的问题。闪电网络中心化程度显然是一个有趣的话题。
运营安全挑战:中心化交易所最具争议的点是,它们创造了一种蜜罐,会引来攻击者的攻击。但是,随着网络的扩大,闪电网络路由节点会创建更多临时蜜罐。设想一下热钱包中有一个私钥需要暴露的情况:中心化交易所只需要在它们选择的时间段内短暂暴露私钥。但在闪电网络中,路由节点为了提供几乎实时的服务,必须一直暴露私钥。与此同时,为了提供稳定的路由服务,它们需要保证每个通道都有足够的资金。这就构成了一个理想的蜜罐:充足的资金与在热钱包中暴露的私钥。为了弥补保护这个蜜罐所需投入的资本,路由节点很可能将这部分投入增加到交易费当中。
声音 | Abra CEO:比特币曾是Facebook“首选” 但出于可扩展性考虑最终放弃并创建Libra:比特币投资平台Abra首席执行官Bill Barhydt近期参加播客节目时称,Facebook员工告诉他,公司曾希望使用比特币作为加密货币,为其支付平台提供动力。但由于比特币可扩展性有限,Facebook“别无选择”,只能开发自己的加密货币。Barhydt表示,他和Facebook团队成员进行了多次交流,他们告诉他,Facebook最初的目标不是创建一种加密货币,而是一个满足用户需求的支付平台。 Barhydt进一步表示:“在我看来,他们实际上更愿意使用比特币。我认为人们对这一体系抱有极大的信心。但如果你想建立一个汇款系统,一个跨境商业系统,而你现在有12亿用户,比特币会发生什么?费用将会飙升。用比特币做任何交易实际上都是站不住脚的此外,他还表示,Facebook已经考虑了所有的选择,包括闪电网络。但最终得出的结论是,比特币目前并不能作为支付网络,而只能作为数字现金发挥作用。(Decrypt)[2019/9/7]
交易完成率随支付金额增加而降低:考虑到多跳支付中的每个通道都需要锁定超过支付金额的资金,这些支付在网络中可选择的路由更少,因此更高金额的交易支付完成可能性更低。由于通道路由限制了容量大小,支付金额增加可能导致交易费用也会水涨船高。理想情况下,用户当然希望交易完成率独立于交易金额。
交易完成率随方向性增强而降低:与增加支付金额的负面影响类似,当许多付款方同时向一个收款方支付费用时,他们会争夺有限的路由节点资金容量。请注意,闪电火炬接力赛并没有证明闪电网络能应付这种场景。
声音 | Ripple业务发展副总裁:可扩展性限制了加密货币的发展:据ambcrypto报道,Ripple业务发展副总裁Patrick Griffin表示,在加密货币领域(包括比特币),可扩展性是一个重大的问题。并解释道,可扩展性是房间里的大象,限制了很多加密货币的发展。[2018/10/10]
总的来说,闪电网络总资源消耗似乎不仅仅与参与者的数量或支付金额相关,还与支付笔数成比例。这对于支付扩容方案来说显然是一种硬伤。
StarkPay
StarkPay的目标是提供一种无活性需求的、可扩展、资金高效、非托管的支付解决方案。
组件
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对本文草稿提出的意见。
?
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。