工作量证明
专业工具是比特币生态系统中一个被低估但却至关重要的组成部分。作为生态系统技术堆栈的基础层,比特币的核心协议不包括任何类的用户轻松参与网络所需的所有功能。为此,出现了各种各样的工具来促进某些形式的参与,包括简化支付的轻客户端,像JoinMarket这样的混合工具来帮助匿名币,以及一些服务和协议来简化挖矿操作。
Stratumprotocol可以说是后一种类中最重要的工具。它为矿池和矿工通信提供了一种标准化的方式,并且已经被网络上的每个主要矿池所采用。Stratum的设计选择深刻地影响了比特币的发展,并促进了联合挖矿的扩散。
在其当前的形式中,矿池式挖矿将挖矿任务分为两组:矿池操作员,他们订购交易并将区块模板分配给矿工;还有矿工,他们通过创建实际的工作证明来证明自己。
换句话说,当前的矿池挖矿模依赖于事务排序器,该事务协调器协调一组工作人员。这种劳动分工给比特币挖矿引入了委托**问题,挖矿者承担着主要的操作风险,而矿池运营商在游戏中则缺乏竞争优势。
协议的体系架构也做出了其他的权衡,其中一些不利于网络的去中心化、透明度和安全性。
然而,Stratum开发人员正在构建名为Stratum V2的协议的第二个版本。其修改后的架构将把事务顺序的责任转移给矿工,以避免协议第一版中隐含的利益冲突。因此,Stratum V2将保护矿工免受不诚实的攻击,并增强网络抵御其他攻击的能力。
在本文中,我们将讨论Stratum V1的缺陷以及Stratum V2如何解决这些缺陷。我们还将评估成功迁移的挑战和影响,以及Stratum V2和带外支付之间的关系。
挖矿简史
在比特币的工作量共识证明模中,矿工通过解决计算难题,竞相向区块链添加新区块。在每个区块中,第一个解决这个谜题的矿工将获得新发行的代币和包含在该区块中的交易的交易费用。因此,挖矿也用于最初公平地分配新代币,是铸造新代币的唯一方法。
虽然比特币挖矿在网络的早期由单个矿工主导,但联合挖矿很快成为了一种替代选择。第一个矿池,Slush Pool于2010年12月开始挖矿,比Genesis Block晚了不到两年。
为了向区块链添加一个新的区块,矿工必须找到并呈现一个低于网络当前目标的区块投头哈希值,这是由其难度决定的。他们通过使用不同的kicker(称为nonce)反复对所述块标题进行哈希处理来实现此目的。难度参数大约每两周调整一次,具体取决于发现区块的频率。
对于单个矿工来说,寻找矿块已经变得越来越困难,更不用说持续寻找矿块了,联合挖矿已经成为矿工与网络互动的主要方式。通过与矿池中的其他矿工协调和分享收益,单个矿工可以显著降低其收益的波动性。作为减少差异的交换,矿工要向矿池运营商支付较低的个位数百分比收入费用。
如今,大多数矿池还提供金融服务,以消除矿工寻找区块的差异并改善他们的运营。在短期内,这些服务还通过将运营商暴露在链级风险中,使他们在网络的成功中获得既得利益,从而在一定程度上激励他们。
事实上,所有的矿池都是通过Stratum与矿工沟通的,这一协议最初是由Slush Pool的创始人Marek“Slush”Palatinus在2012年开发的。与Slush Pool一样,该协议的参考实现目前由Braiins维护。现在使用的Stratum版本StratumV1,依赖于双方之间的通信:由矿池运行的服务器和矿工运行的**。
服务器通过选择并将事务排序到一个区块模板中,并分配挖矿者来为这个模板创建工作量证明,从而协调挖矿者。服务器也有责任按矿工提交的工作量按比例支付矿工费用。
同时,试图解决分配模板的工作量证明问题的矿工可以提交部分工作量证明以换取股份。部分工作量证明是对比网络指定的更高目标的解决方案,实质上是对一个更简单的难题的答案,该难题证明了某些工作是在未实际解决障碍的情况下进行的,并且共享使接收者有权从矿池。这使矿工可以根据他们的实际工作获得报酬,而不仅仅是他们在哈希彩票中的运气。
生活模仿架构
大多数矿池依赖于Stratum协议来协调任务和与矿工通信,但Stratum V1存在一些结构问题,需要升级。协议架构中的这些缺陷源于与比特币挖矿的经济学不兼容。
矿池行业是寡头垄断的,具有实质性哈希率的矿池的数量不是特别大,而需要对网络进行51%攻击的共谋池的数量甚至更少。
就其本身而言,这一事实并不令人惊讶,也不令人担忧,因为有几个因素确保了矿业中心化的趋势。
第一个因素是行业特有的特征:寻找区块的内在差异有利于大玩家。资本成本低的公司更有能力克服干旱期,这使得他们能够避免将挖矿差异风险转嫁给矿工而不收取高额费用。运营一个矿池在运营上也是资本密集的,需要大量的基础设施成本。这些因素有利于容易获得资金的邻近行业中的稳固参与者和老牌企业。
矿池行业是高度横向整合的,来自邻近行业的几家公司出于财务和战略原因经营矿池。这些资金充足的参与者包括比特大陆等硬件Maker,以及币安和火币等交易所。垂直于多个行业中的矿池垂直市场使得运营一家新贵企业变得困难。
经营矿池是一个大宗商品行业,除了降低费用,几乎没有什么差异化的机会。虽然有可能存在一些差异——资源池可以通过在多条链上挖矿来**化收益,或者通过设计创造性的支付机制来吸收挖矿的差异——但资源池最终会陷入**谷。
比特币将继续在少量矿池的情况下发挥作用:区块将继续产生,网络的激励机制在很大程度上仍是一致的。也就是说,相对于去中心化的网络,中心化的网络对于技术和社会层面的攻击都没有那么强大。在其他条件相同的情况下,拥有更多的竞争事务排序器比拥有更少的事务排序器对网络更好。而且,由于矿业的基本经济状况,任何去中心化矿业的尝试都必须接受这样一个事实:竞争池的数量可能仍然很少。
在Stratum V1,矿池负责订购交易。这很危险,因为它授予矿池操作符足够的哈希能力来执行双花或审查交易,而不需要拥有必要的硬件。在以数量众多的矿工为代价来加强资源池的过程中,这种架构最终会损害去中心化。
Stratum V2解决了人们对去中心化的担忧,它允许矿工(而不是矿池操作员)通过一个可选的功能——工作协商——来订购交易。通过授予矿工这种能力,Stratum V2可以帮助比特币在面对矿池之间的寡头竞争时保持去中心化。
带外支付
除了增加网络中心化,目前的矿池式挖矿模式也降低了挖矿的透明度。
权力中心化在比特币矿池的手中导致了带外支付的出现,在这种情况下,比特币矿池因在比特币协议指定的费用之外的区块中包含交易而获得补偿。
举个简单的例子,用户可以用像PayPal或信用卡这样的链外支付方法“贿赂”一个矿池,以便在一个区块中包含单个交易。这个特性俗称为交易加速,已经由几个矿池实现,包括BTC.com、Poolin和ViaBTC,如果原始网络费用设置得过低,该功能将非常有用。
但是,带外协议也可以采用矿池和频繁交易处理者(如交易所)之间的长期合同的形式。双方都将减少不稳定费率的风险:交易所将能够保证其用户迅速提款,而不会产生不可预见的成本,而矿池将确保稳定的收入来源。
带外支付很难审计,这为矿池提供了一个避免与矿工共享费用的潜在途径。由于费用的波动性,对于矿工来说,将矿池中挖矿区块的系统性低费用归因于非偶然因素并非易事。为了捕获恶意池,矿机需要将自己的内存池中的交易与区块模板中的交易进行比较。这个进程需要实时执行,因为没有任何规范的历史内存池。更重要的是,任何差异都不能归咎于贿赂,而不是节点位置的差异。
这一有争议的做法暴露了矿池和矿工之间的激励机制错位。矿池能够获得未分享的协议外报酬,而矿工则实际执行链上交易所必需的工作。
StratumV2限制了带外支付带来的威胁,就像它反对中心化一样:通过支持工作谈判和允许矿工自己订购交易。在赋予矿工这个责任的过程中,Stratum V2使得在只有少量竞争池的情况下,在网络层面上实现了更大的分权,并且使得矿池更难以短缺矿工。
实现缺陷
目前的Stratum架构还有其他几个对矿工不利的功能。这些缺点为矿工要求矿池支持V2提供了理由。
Stratum V1消息是未加密的,开启了哈希率劫持攻击的可能性,在这种攻击中,窃听者窃取了矿工的工作提交,并将其归功于自己。虽然哈希率劫持没有在一个显著的规模上被证实观察到,它代表了一个实质性的理论攻击向量。在Stratum V2中,通过服务器和**之间的通信加密解决了这个问题。
Stratum V1会无意间鼓励矿工在挖出新区块后的短时间内在空模板上挖矿。通过将一个区块中的交易从前一个区块的哈希值中分离出来,Stratum V2允许矿池提前选择哪些交易将包含在一个区块中,从而减少了空区块挖矿。如果采用这种优化方法,最终将减少浪费的区块空间,并增加费用收入。
Stratum V2还实现了一些次要的效率改进的更新。这些改进包括添加了仅头部挖矿,这减少了矿工处理模板所需的工作量,从on编码的消息传递迁移到更轻量级的二进制编码格式,以及采用零时间后端交换,这允许矿工更有效地在矿池和网络之间切换。
混乱的迁移
成功采用Stratum V2将对比特币的去中心化产生巨大影响。还有一些有利因素促进了它的采用,包括矿池的选项,可以逐个添加对协议的支持。
也就是说,成功的迁移也有几个障碍。Stratum V2需要矿工运行兼容的固件,虽然Stratum V2由Braiins 操作系统支持,但为了进入大部分市场,可能需要厂商采用固件。
对于矿池来说,尽管转换**可以促进迁移,但效率的提高可能不足以证明转换的成本是合理的。哈希率劫持并不影响矿池的底线,只影响矿工的底线,而且无意间的空块挖矿造成的收益损失很小。像Poolin的BUMP这样的竞争协议也会威胁到挖矿软件的版图,增加矿池转换成本,削弱比特币的安全模。
然而,对矿池采用Stratum V2的最有力的一阶抑制因素来自矿池和矿工之间的动态变化,这是工作谈判所需要的。通过将费用优化的责任转移给矿工,矿工侧的交易选择从根本上改变了双方的关系。
以前,矿池是带外支付的主要接受者,Stratum V2使大矿场能够从这些协议中提取盈余,减少了这些矿工处理的链上费用。
StratumV2根据矿工所处理的区块奖励向他们发行股票,从而解决了不同模板之间的费用变化问题。该对策消除了该行为对矿池中其他矿工的负面影响。虽然运营商提供的减少差异的支付方案可能需要相应地吸收一些额外的风险,但与现有的找到区块所涉及的运气相比,这种风险可能是微不足道的。
然而,即使有了这个功能,在一个广泛采用工作协商的世界里,资金池也会发现自己无法协商带外支付合同。与我们的直觉相反,消除这一收入流可能对某些资金池有好处,即那些不接受带外支付的资金池,无论是基于原则还是由于实际限制。
换句话说,采用矿工方交易排序可以作为一种对矿池的诚实性证明,这与交易所执行储备验证没有什么不同。矿工可能会有这样的需求,而不依赖于带外支付的矿池可以通过采用带工作谈判的Stratum V2来满足这种需求。再加上矿工对StratumV2的需求,认为它可以提高运营效率,这足以说服矿池采用该协议。
在矿池行业竞相收取**费用的背景下,可证明的诚实性是矿池竞争的另一个方面:采用StratumV2可能是矿池在竞争日益激烈的行业中吸引和留住矿工的一种方式。虽然Stratum V2在应用上面临着巨大的障碍,但它的成功对比特币来说是件好事。
文章标题:Stratum V2:迁移和去中心化
文章链接:https://www.btchangqing.cn/187019.html
更新时间:2021年01月29日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。
空起来
手握比特币,心里不慌
带我问候长鹏
#无语比特币
有价值的项目还是值得投资的
好困啊区块链
圣人大盗
:都涨okb跌。都跌okb大跌。都反弹,okb横盘[爱你][爱你][爱你] 太爱你了 坤坤。 下次你喊单我做空