当前位置:首页区块链比特币首战

比特币首战

比特币的创始人本聪退休后不久,比特币的开发社区爆发了一场内部战争。虽然当时的p2sh方案由于加文·安德烈森的影响,成功地击败了卢克·达什尔提出的CHV方案,但这场艰难的政治斗争预示着后来的扩张战争。作者是皮特·里佐和亚伦·范·维尔杜姆。

“把日期往后推两个月, OP_EVAL还没有准备好。”

这正是加文·安德烈森试图避免的。在罗素·奥康纳在键盘上发表批评言论后,历时数月的比特币升级工作(比特币创始人本聪退出后),在实施前突然陷入停顿。

正如O’Connor所揭示的,这个提议的命令(Andresen称之为通向更安全的比特币钱包的“最快路径”)可用于创建恶意交易,将软件发送到无限计算循环中进行验证。简言之,操作评估可能被滥用来破坏比特币节点,然后破坏比特币网络。

奥康纳写道:

“我花了整整70分钟,才找到这个漏洞。你们需要停止现在的行为,并真正理解 比特币 。”

这是比特币项目的新领导人安德烈森(Andresen)第一次遭遇严重挫折,他很快提出了请求。在他看来,放弃操作评估不仅浪费了数月的编码和审查,还让用户没有防范木马和病毒的工具,从而掠夺了他们的数字钱包

这是Eval吸引力的核心——一个简单的多重签名钱包可以让用户在备份丢失的情况下恢复比特币;可以构建服务,发送类似银行的警报,以防止欺诈和**,甚至更好,所有这些都可以通过用户知道和理解的交易行为来实现。

但对于那些看到升级潜在负面影响的人来说,奥康纳的警告就足够了。

开发者Alan Reiner写道:

“我想提醒大家,我们正在搞乱一个价值2000万美元以上的项目,这不仅仅是一个软件问题,任何进展都需要像钻石一样坚硬。”

操作失败将产生更大的影响。事实上,中本银行推出了世界上第一个去中心化的数字货币,但它的前景远未实现。在2011年底,几乎没有人理解它的代码,也很少有人有能力保护它。

这些开发者应该如何组织?他们对用户的责任是什么?当不清楚谁(如果有的话)拥有最终决定权时,他们将如何做出改变?

在比特币软件的第一次战争中,这些问题很快被推到了前台。

比特币首战

非正统遗传

自由和开源项目通常由创始人领导,他们必须使他们的工作与贡献者保持一致。即便如此,当存在方向性争议时,创始人仍有天然的权力作为创作的决策者。

早期,比特币也不例外。在比特币问世的前两年,中本扮演了首席开发者和仁慈的独裁者的角色。至于第601号协议,本协议中没有更多争议性的变更。后来,中本逐渐退出比特币项目的维修。

到2010年底,中本删除了他的比特币.orggavinandresen,一位**3D图形开发人员,声称自己是比特币项目的“实际***”。

围绕这一转变的环境是不寻常的,包括短公共信息、私人递送责任和密钥交换。

然而,在当时,对于规模较小但正在成长的比特币编码器来说,这并不难。大多数人担心关键问题,而终身教授的配偶安德烈森有时间和热情来领导这项工作[3]。

事实上,有很多迫切的需求(更快的同步,更好的测试等等),但是“钱包被盗报告”的增加和**的不利影响迅速成为优先考虑的问题。

曾几何时,比特币的所有新贡献者似乎都同意这个目标[4]。

最基本的多重签名

幸运的是,中本已经为解决方案提供了蓝图。正如Andresen所了解到的,比特币的代码允许用户创建安全事务,这些事务只能在使用多个私钥进行签名时使用[5]。

通过多重签名,私钥可以存储在世界另一端的多个设备上,或者在用户和钱包服务之间共享,这意味着黑客必须攻击多个目标才能窃取比特币。

安德烈森被这个想法迷住了,成为这个想法的第一个倡导者,在开发者的邮件列表上,他写了一封慷慨激昂的呼吁书,鼓励投稿人采取行动。

他写道:

“我最担心的是,我们会说,‘当然,我们只需要几天时间就可以就如何做好这件事达成共识’,六个月后共识仍然没有达成,人们的钱包(将)继续丢失或被盗。”

忧虑并非没有负担。由于Nakamoto的实现,多重签名有明显的缺点。最紧急的是事务与比特币的标准地址格式不兼容,后者需要更长的地址。

因此,多重签名交易规模更大,成本也更高。更重要的是,这些费用不是由使用多签名钱包的比特币用户支付的,而是由发送比特币的人支付的。

由于这些特性,多签名事务在软件中被指定为“非标准”事务,这意味着它们不必广播到网络上的节点。如果一个节点接收到一个多重签名事务,它将直接忽略它。同样,也不能保证矿工会将这些交易纳入区块。

如果包含它们,节点将接受它们(multisignature事务最终有效)。但实际上,这些交易几乎无法确认。

输入操作评估

为了释放他所看到的多重签名的潜力,andersen继续提倡一种新的“操作码操作码”,节点可以使用这个命令来确定新事务是否有效以及何时有效。

OP_u-Eval旨在适应更**的事务,如多重签名。它主要依赖于散列,这是一种加密技术,可以明确但不可逆地将数据压缩成一个唯一的数字字符串。

这个想法最初是由匿名开发者bytecoin提出的。其基本思想是用户可以通过在事务中包含哈希来指定比特币未来开销条件的指令。

多签名用户在花钱时将为增加的交易规模买单,所需的额外数据将减轻网络负担。

由于这项提议得到了积极的反馈,安德烈森没有浪费任何时间,他希望尽快部署行动计划

他写道:

“安全性在优先级列表上确实很高,我希望在一年之内在论坛签名中看到安全的 比特币 地址。” [ 7]。

但并不是所有人都同意安德森的紧迫感。对于一个价值数千万美元的项目,运营评估意味着重大升级。在大洋彼岸,年轻的阿米尔塔基(Amir taaki)建议开发者花些时间来审查这项提案。

Taaki写道:

“乍一看,这个提案似乎不错,但快速将其纳入区块链可能不是一个明智的想法…… 比特币 不会在明天爆炸式增长,因此推迟此类重大更改不会造成重大损失。”

使问题进一步复杂化的是,开发人员假设在协议中添加Eval的操作将带来巨大的协调挑战。从本质上讲,实施它是要冒风险的,这可能会分裂成不兼容的网络。

这意味着,一旦Eval上线,每个用户都必须切换到新版本的软件和新的区块链,这就是所谓的“硬叉”升级。

如果没有统一升级,矿工可能会不自觉地产生“无效”区块。更糟糕的是,用户可能在不知不觉中接受“无效”事务。

一种新的软分岔

但很快安德烈森意识到他可以安抚批评者。

他最初的一些操作不是通过巧妙的操作,而是通过重新定义它们来发现的

出乎所有人的意料(包括安德烈森本人),这也将兼容那些没有升级到接受eval操作节点的人。这些节点将检查哈希值是否与新指令匹配,但不会强制执行它们,而是默认接受事务。

只要大多数矿工实施新规则,这意味着新区块链将被升级节点和未升级节点视为有效。升级的节点将接受区块链,因为它们正在执行新规则;而无法升级的节点将接受新的区块链,因为它们不关心新规则。

中本已经部署了这种向后兼容的升级或“软分叉”,但随着网络的扩展,开发者开始有一些顾虑。

正如预期的那样,Andresen意识到这是可以避免的,这受到了其他**代码贡献者的欢迎,他们很快与他们分享了这个消息。对此,格雷戈里·麦克斯韦评论道:

“哇,Gavin认为 [ OP_EVAL] 不需要分裂网络就可以完成的观点,让我大吃一惊,拿出香槟庆祝吧。”

有了它,开发人员继续设计一种更安全的方法来激活软叉。他们的理论是,他们可以进行类似的民意调查,以确定一个职能部门何时能得到矿工们足够广泛的支持,然后他们可以利用这种支持来确保安全升级。

新的挖矿规则将添加到挖矿规则中,以显示它们将在块中执行。大多数人准备好了就随时准备改变。

致命的缺点

但所有这些作品都被奥康纳的发现推翻了[13]。

因此,开发人员分成了不同的派别,一些人认为不必要地延迟了Op_ual,而另一些人则认为建议的快速修复将损害比特币基本脚本语言的一些必需属性[14]。

开发人员,包括Luke dashjr、Pieter wuille和Maxwell,已经提出了与Op_ual一起工作的替代方案,类似于将货币发送到散列的概念。但挑战仍然是如何将这种逻辑(他们最初称之为“pay-to-script hash”或简称“p2sh”)转换成比特币软分叉,以避免区块链碎片化。

现有的操作码只能做到这一点:没有升级的节点将需要接受在不知道新规则的情况下从散列中获取金钱的事务。

安德烈森找到了前进的道路,他的p2sh解决方案根本不需要新的操作码。相反,Andresen的想法是,您可以编程比特币来识别事务格式,然后以非常规的方式解释它,从而用新的指令验证它。

任何未升级的节点都将使用通用逻辑来解释非常规格式。与Eval一样,未升级的节点总是将事务视为有效的。这意味着p2sh可以作为一个软分叉进行部署:只要大多数算力都执行新规则,新旧节点就会在同一个区块链上达成共识。

安德烈森的建议似乎令大多数人满意。奥康纳评论说[15]:

““看起来,这似乎是可以接受的。”

谈到对《守则》的非常规做法,taaki说:

“这个想法是一种黑客行为……但我喜欢它。”

在随后的开发人员会议上,与会者同意实施andersen的p2sh提案。矿工们将在2月1日前一周进行民意调查,如果大多数算力(超过55%)支持,那么两周后,将释放一个客户端来激活软叉。

但和平只持续了几天。

为什么不用美元呢?

达什尔打破了共识。他因故提前离开了会议。后来,他得知安德烈森的p2sh版本被认为是一种妥协。

安德烈森计划的非常规性质激怒了达什尔,他认为这将使协议复杂化,并带来不确定的后果。Dashjr问了Andresen这个问题,但后者认为Dashjr的担心不值得改变计划[16]。

在遭到拒绝后,dashjr于1月中旬在公开的比特币对话论坛上爆发,谴责p2sh的提议,并指责andersen“独自一人”支持改革。

达什尔写道:

“Gavin强迫所有使用** 比特币 代码的人投票支持[P2SH],如果你想反对这种疯狂的协议更改,那么你将需要修改你的BitcoinD源代码,或者在默认情况下投票赞成它。”

因为达什尔的反对意见并不是很有说服力,而他对安德烈森的谴责,人们并没有正面回应帖子。有人认为,dashjr并没有将技术辩论局限于开发者,而是试图煽动公众。

Dashjr是一个代码贡献者,与比特币项目中的堂吉诃德类似。一位论坛用户说,dashjr的言论让他看起来“精神不稳定”,而另一位用户则表示,他根本不想担心细节问题,他只是信任安德烈森[19]。

对此,dashjr从哲学的角度对p2sh提案提出了持续的反对意见,不仅质疑p2sh的技术价值,还质疑其对治理的影响。

“如果你想要一种**货币,为什么不直接使用美联储的美元呢?”Dashjr用这样的话来回应那些攻击他的人,但是很自然他被其他人包围了,他们认为Dashjr是在为权力而战[20]。

但达什尔没有退缩。相反,dashjr编写了p2sh的另一个版本,称为checkhashverify(CHV)。本质上,CHV是p2sh的另一个实现,但是不需要对事务输出进行非常规的解释。相反,CHV添加了一个新的操作码,就像Eval一样,它可以“伪装”为占位符操作码。

但对安德烈森来说,一切都太晚了,他不认为会有更多的争论。对于公众的愤怒,他以自己的方式回应:

“Luke,你在挑战我的耐心,在我做一些愚蠢的事情之前,我将离开代码几天,以冷静下来。”

辩论的延长

由于andersen的p2sh设计在很大程度上被视为项目主要开发人员的一个足够好的解决方案,dashjr发现自己处于一个无助的境地。

只有taaki有些担心,但他没有说他反对Andresen的解决方案,也没有同意dashjr的解决方案。

这也让taaki不信任项目的加速开发过程,如果决策过程需要时间,并且涉及更广泛的用户群,他更喜欢这样。

在他看来,由一小群开发者来决定比特币的道路并不合适。Taaki坚信,任何对项目感兴趣的人都应该意识到这一点,并尽可能多地参与决策。

他告诉其他开发者:

“我希望人们对此事有发言权,即使这会使开发人员很难解释他们的决定。”

尽管taaki同意Andresen的p2sh和dashjr的CHV提案之间的差异很小,但他坚持认为让用户参与开发过程是很重要的

“我担心的是,有一天 比特币 会损坏,这种额外的审查可被视为建立开放文化的机会。”

为此,taaki写了一篇博客,列出了p2sh和CHV的升级以及它们之间的区别[23]。

Taaki的信息是用户可以选择,投票是基于挖矿权。

混乱的局面

Taaki的评论产生了巨大的影响。事实上,中本已经开发出了一个软分叉,但到2011年底,该网络已经不再像早期那样运行。

当中本在2008年发表白皮书时,他认为工作证明(POW)将由用户通过个人计算机的计算贡献来提供。”工作负载认证实际上是一个CPU一票否决,”他写道

在这个设计中,任何用户都可以成为一个矿工,通过提出块、验证对等方发送的事务以及强制执行开发人员编写的代码来保护网络。

但在软件推出后的几年里,这种模式已经被企业家们淘汰了。自从lazlo hanyesz发现了如何使用更强大的图形处理单元(GPU)挖矿比特币以来,专家们一直忙于将挖矿从业余爱好转变为企业爱好。

大约在同一时间,Marek“slush”palatinus提出了一种方法,允许矿工汇集拟议区块所需的算力,并分享利润。事实上,挖矿不再是彩票,而是稳定的收入来源。

截至2011年底,全球仅有deepbit、slush pool和BTC guild三个矿池,它们控制了比特币网络一半以上的算力。当时,“选票”大多中心化在少数矿池经营者手中,不再是“一机一票”制度,矿池成为网络选民的代表。

对某些人来说,这证明比特币网络有问题。”早期矿工midlightmagic[24]认为,矿池决定网络变化是一场闹剧。

对其他人来说,挖矿中心化是一种不幸的依赖,这使得“软叉”升级更容易管理,从而降低了风险。(毕竟,现在只需要少数矿池运营商参与安全启动。)

例如,麦克斯韦更愿意接受目前不令人满意的现实[25],他回答说:

“如果面对较重大的更改,那么开发人员和矿池都将退缩,但现在似乎没有人反对它。这是一个很好的未来机制… 希望我们不会遭遇 比特币 不再去中心化的混乱局面。”

投票还是不投票?

安德烈森和达什尔的敌意提议反映了对比特币治理的对立观点,这只会使问题复杂化。

到目前为止,开发人员一直称即将到来的soft fork升级是一次投票:矿工们可以用其大部分的算力执行p2sh(或OP),因此投票旨在衡量这种结果的可能性。

虽然这个词开始被人知道,但它忽略了一些技术上的细微差别。在一项民意调查中,开发者没有问矿工对他们的新提议有何看法。矿工们认为这是一种安全升级的方式。

从用户的角度来看,只有一条规则会添加到软件开发人员中。

Maxwell对taaki的投票定义感到恼火[26],他认为:

“ 比特币 系统不适合多数选举,这不是由多数算力决定,也不是由多数人决定,也不是由多数钱决定。”

麦克斯韦坚信,矿工的“投票”应该像软件本身一样,限制在交易的执行顺序上,而不是整个网络的规则。

“如果现在的矿工中的绝大多数(甚至*)决定区块补贴永远为50 BTC的话,会发生什么?什么都没有了,从 比特币 网络的角度来看,在软件中改变这一规则的矿工们就不再存在了。”

Dashjr并不反对Maxwell,但实际上,他很难想象,如果开发者在没有矿工支持的情况下推动变革,比特币将如何保持安全。

“矿工可以简单地拒绝P2SH交易,以免受‘开发团队变化’的影响,”他回应道[27],“如果开发者封锁了所有的矿工,猜猜会发生什么?网络很容易遭受50%攻击,它会变得不安全。”

Andresh Jr认为从开发人员的角度来看,为什么他更容易理解这个角色。如果矿工使用标准软件挖矿区块,它将自动投票支持p2sh[28]。

对此,dashjr编写了一个补丁,引入了矿工投票支持和反对p2sh和CHV的选项。

尽管很少有矿工使用这一准则,但达什尔的反对意见产生了效果。迪普比特矿的运营商第谷(Tycho)开始对自己在评估竞争代码方面所扮演的角色感到不安。

显然,开发者之间并没有达成共识,他写道:

“我不想成为对此做出决定的单一实体。” [29]

陷入僵局

在提出拒绝利用矿池影响升级决定的想法后,第谷为当时的争论增添了一个转折点。没有他的支持,很难激活p2。

到1月底,第一轮p2sh投票即将结束,支持p2sh的算力没有达到激活阈值。升级显然要推迟的事实不仅让andersen感到沮丧,也让其他开发者感到沮丧。

在IRC上,马克斯韦尔公开表示,僵局似乎没有结束。他写道:

“认为这是急着上线的说法是胡说八道,Gavin在去年10月份就开始了P2SH路线,据我所知,除非有人确定**期限,否则这就没有结果,因为总会有一些人的好主意会在下一刻蹦出来。”

安德烈森没有责怪游泳池造成的延误,而是指责深钻头运营商第谷(Tycho),他写道:

“目前来看,似乎有人拥有足够的算力来否决任何变化。” [31]。

这让安德烈森对第谷的立场不道德感到不安,安德烈森写道:

“我认为,利用自己**矿池运营商的权力违背普遍的共识是不对的。”[32]

事实上,即使安德烈森向公众施加压力,迫使用户升级矿井,并在p2sh造成任何财务损失的情况下偿还deepbit的所有资金,第谷也不愿意“投票”通过该提案。

面对延迟,Andresen试图引起公众的注意,并坚持p2sh和CHV之间的选择对用户影响不大。

他写道:

“ [P2SH/CHV]这两个提案,相当于工程师们在争论把两块木头拼在一起,是用钉子、螺丝钉还是胶水。任何解决方案都会奏效,普通用户不会注意到任何区别。”

从回复来看,比特币用户接受了安德烈森的说法,指责泰科阻碍了升级,并向他施压,要求他激活方案。

反过来,第谷强烈反对安德烈森的说法。他说,即使他有30%的权力,其他矿工也可以否决他,他不想成为决定因素。

第二轮投票

由于p2sh无法获得足够的算力,Andresen被迫公开讨论他提出的策略,他开始接受CHV作为打破僵局的一种潜在替代方案。

然而,社区成员之间的反应形成了一个边界。

bitcointalk用户dooglus说:“最终,矿工是唯一对此类问题有发言权的人。”。他们是唯一决定哪些交易进入该区块的人。”

矿工们也会完全拒绝矿工的想法,如果他们的客户没有足够的钱,他们也会拒绝

他们建议进行为期两周的内部讨论和**表决[37]。不管是出于建议还是偶然,dashjr很快创建了一个wiki页面,让受人尊敬的开发人员可以表达他们的偏好。

在接下来的几天里,麦克斯韦、托马斯和伍尔都表示,他们很乐意接受p2sh或CHV,尽管他们明确表示他们更喜欢p2sh。O’Connor和dashjr同意p2sh可以接受,但他们更喜欢CHV[38]。

毫不奇怪,安德烈森仍然投票支持p2sh,并强烈反对CHV的提案。

更重要的是,只有少数矿工支持CHV的提议。到2月中旬,p2sh获得了30%的算力支持,而dashjr的替代方案仅占算力的2%。

在IRC会议上,dashjr说他正在考虑是否完全退出CHV,并且不情愿地接受p2sh的主导地位[39]。在同一次会议上,与会者同意将第二次投票的截止日期定为3月1日。

随着新的截止日期的临近,更多的矿工支持p2sh,算力支持率接近55%的阈值。很快,第谷和达什尔别无选择,只能接受大多数人的偏好[40]。

因此,Andresen宣布在10天内部署并激活soft fork,并于2012年4月1日实施新规则[41]。

自中本退出后,p2sh成为**需要升级的比特币方案。

茶壶风暴

p2sh艰难的政治进程将继续对提案产生持久影响。

最终,andersen能够部署他设计并喜欢的解决方案。如果可以说,安德烈森的领导能力在危机中受到质疑,那么,他的领导地位最终得到了很好的巩固。

在那之后,安德烈森甚至要求达什尔彻底停止对比特币的贡献,尽管看起来他要么放弃了威胁,要么干脆置之不理。

与此同时,麦克斯韦成为比特币的“核心开发者”之一。他与Andresen、Wladimir van der Laan和Jeff garzik分享比特币项目的承诺维护权。

基调已经确定:当谈到比特币的开发时,实用主义是有回报的,而相反的贡献者被解雇了。

随着越来越多的用户涌向比特币,p2sh很快就被采用了,尽管它将继续成为开发人员之间的分歧。

回顾一年后在应对另一场危机时所发生的一切,安德烈森会夸口说,他相信p2sh证明了他对该项目的领导能力和远见[44]。

针对开发者彼得·托德(Peter Todd)2013年初制作的一段视频,安德森写道:

“区块大小将会提高,你的视频只会让很多人对一些没有的事情感到担忧,就像去年Luke-Jr的 [CHV] 提案一样,只会在茶壶里引起一场风暴。”

如何为第一个去中心化的数字货币做出决策?如果这个问题最终被问到,那将需要一场更广泛的战争,而且需要数年的时间来解决

温馨提示:

文章标题:比特币首战

文章链接:https://www.btchangqing.cn/162432.html

更新时间:2020年12月11日

本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。

区块链行情

AAVE的雄心壮志

2020-12-11 7:51:30

区块链

比特币 挖.矿行情大好 未来将引领区块链

2020-12-11 9:27:11

4 条回复 A文章作者 M管理员
  1. BCSchool

    这个利好好吗[笑cry]

  2. 比特币行情

    数枚比特币只能换去一个披萨???当时有这么贵吗

  3. RaqutWang

    不管你认不认可,它都逐渐进入大资金的配置名单了。

  4. 山山水水

    现在已经没啥事了

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索