“将日期推迟两个月。 OP_EVAL尚未准备好。” 这是加文·安德森(Gavin Andresen)努力避免这么长时间的裁决。从罗素·奥康纳(Russell O’Connor)的键盘发出一声谴责之后,长达数月的升级比特币的努力-在创始人中本聪(Satoshi Nakamoto)退出后进行的第一次-在实施之前突然停滞不前. 正如O’Connor所揭示的那样,可以利用拟议的命令(被安德森(Andresen)称为通向更安全的比特币钱包的“最快路径”)来创建交易,该交易会将软件发送到无限的计算循环中,以对其进行验证。. 简而言之,可能会滥用OP_EVAL破坏比特币节点,从而破坏比特币网络. O’Connor写道:“花了整整70分钟时间,我才找到了这个错误。”他谴责了一个流程,该流程已将错误代码合并(几乎将其推送到了实时软件中)。 “你们需要停止所做的事情,真正了解比特币。” 这是该项目的新负责人安德烈森(Andresen)的第一次严重挫折,他很快提出抗议。他认为,放弃OP_EVAL不仅会浪费数月的代码和审查,还会使用户无法使用防止木马和病毒的工具,然后掠夺其数字钱包. 这是OP_EVAL吸引力的核心-简单的多重签名钱包即使在备份丢失的情况下,也可以使用户恢复比特币。可以构建服务来发送类似银行的警报,以阻止欺诈和盗窃;而且更好的是,所有这些都可以通过外观和行为类似于用户所了解和理解的交易来实现. 但是O’Connor的警告语足以证明那些对发展步伐不断升级表示担忧的人. “我想提醒大家,我们正在为一件价值20亿美元以上的事情搞砸,”开发商Alan Reiner写道。 “不仅有一件软件要紧,而且所要付出的一切都必须像钻石一样艰难。” OP_EVAL的失败将产生更大的影响。中本聪确实推出了世界上第一种去中心化数字货币,但其承诺远未兑现。在2011年末,很少有人会理解它的代码,而且仍然很少有人拥有保护它的技能和熟悉度. 这些开发人员应如何组织?他们对用户负有什么责任?当不清楚谁(如果有的话)应该拥有最终决定权时,他们将如何制定变更?? 这些问题很快将在有关比特币软件的第一次大战中脱颖而出。. 非正统的继承 自由和开源项目通常由创始人领导,而创始人又必须与工作所依赖的贡献者保持一致。尽管如此,在出现方向性纠纷的地方,他们仍充满着自然的权威,可以充当其创作的决策者. 早期,比特币也不例外。在其存在的头两年,中本聪扮演着首席开发者和仁慈独裁者的角色。作为比特币无可争议的领导者,他制定了多达八种协议变更,而没有涉及到更广泛的讨论[1个]。也就是说,直到他逐渐退出该项目. 到2010年年底,中本聪将从Bitcoin.org网站上删除其笔名,让资深3D图形开发人员加文·安德烈森(Gavin Andresen)宣称自己是该项目的“事实上的领导者” [2个]. 安德森(Andresen)首选的词语选择是适当的,因为围绕此过渡的情况很不正常,包括简短的公开消息,职责的私下通过和密钥的交换,从而允许用户发送系统范围的警报消息. 不过,当时,这对于比特币规模虽小但不断增长的编码人员来说却几乎没有什么困难。大多数人都在担心关键问题,终身教授的配偶安德烈森(Andresen)有时间和热情来领导这项工作[3]. 确实,有许多紧迫的需求-更快的同步,更好的测试-但是引起“盗窃钱包的报告增加”和“不良PR”盗窃迅速引起人们的高度关注. 有一时间,这是一个目标,比特币的新贡献者们似乎都同意[4]. 裸Multisig 幸运的是,中本聪提供了解决方案的蓝图。正如安德森所学的那样,比特币的代码已经使用户能够创建安全的交易,只有在使用多个私钥进行签名时才能使用该交易[5]. 使用多重签名或简称多重签名,私钥可以存储在世界两端的多个设备上,或者在用户和钱包服务之间共享,这意味着黑客将不得不折衷多个目标来窃取硬币. 受到这个想法的迷恋,安德森(Andresen)成为第一位冠军,在邮件列表上写下了慷慨激昂的恳求,以鼓励行动者做出贡献. 他写道:“我最大的担心是,我们会说,’当然,只需几天就可以正确地达成共识。’6]。 “而且人们的钱包(将会)继续丢失或被盗。” 担心并非没有重担-正如Nakamoto所实施的,multisig具有明显的缺点。其中最紧迫的是交易与比特币的标准地址格式不兼容,而是需要更长的地址. 因此,为多重签名钱包提供资金的交易规模更大,并且需要更高的费用。而且,这些费用必须不是由使用multisig钱包接收比特币的人支付,而是由向他们发送比特币的人支付. 由于这些次优属性,多重签名交易在软件中被指定为“非标准”交易,这意味着它们不一定会传播到网络上的节点。如果一个节点确实收到了多重签名交易,它将简单地忽略它。同样,不能保证矿工将这些交易包括在区块中. 如果将它们包括在内,则节点将接受它们(multisig事务最终有效)。但实际上,这种指定几乎不可能使这些交易得到确认. 输入OP_EVAL 为了释放他看到的潜力,Andresen会继续倡导一种新的“操作码”,这是一种命令,节点可以使用该命令来确定新的交易类型以及何时应该有效. 设计用于容纳诸如multisig之类的更高级交易的OP_EVAL很大程度上依赖于哈希,该加密技巧可确定性地加扰并压缩数据,但不可逆地将其转换为唯一的数字字符串. 第一的 建议的 由匿名开发者ByteCoin提出的基本思想是,用户可以通过在交易中包含该哈希值来对指令进行哈希处理,该指令详细说明了以后可以使用(包括往返于多重签名钱包的)比特币的使用条件。硬币实际上将“发送”到哈希. 以后花费比特币所需的条件只有在“从”哈希中花费了这些硬币时才会显示出来。多签名用户在使用硬币时将为增加的交易规模付费,而所需的额外数据则减轻了网络负担. 由于该提案获得了积极的反馈,因此安德森(Andresen)从未浪费任何时间,而是更愿意尽早部署OP_EVAL. “安全性在优先级列表上确实很高;我希望在一年之内在人们的论坛签名中看到安全的比特币地址,”他写道[7]. 但是,并非所有人都认同安德森的紧迫感。 OP_EVAL将是一个已经具有数百万美元价值的实时系统的重大升级。在安德烈森(Andresen)的大洋彼岸,年轻的阿米尔·塔基(Amir Taaki)建议开发商花些时间来审查该提案. “乍一看似乎不错,” Taaki写道[8]。 “但是将其快速进入区块链可能不是一个明智的主意……比特币明天不会爆炸,因此,阻止此类重大变化不会造成太大损失。” 使事情变得更加复杂的是,开发人员假设将OP_EVAL添加到协议中将带来巨大的协调挑战。从本质上讲,颁布该协议将需要冒着风险,即由其软件规则的共享共识实施的所有比特币交易的最终记录区块链可能会分裂成不兼容的网络. […]