隔离见证(SegWit)已在比特币上激活。截至今天,比特币网络上所有支持SegWit的节点都在执行新规则,标志着比特币迄今为止最大的协议升级.
但是激活并非易事,而且进展也不快.
这是回顾通往SegWit的漫长道路.
问题
比特币交易包括两个主要部分。其中一部分是“基础交易数据”。涵盖了哪些比特币将被移动以及它们将被移动到何处,以及其他一些数据。第二部分称为“证人”。其中包含带有加密签名数据的一些代码,这证明比特币的所有者确实确实想花费比特币.
正是这种签名数据给它带来了一些麻烦。在所谓的“恶意漏洞”中,即使在创建了这些签名之后,任何人都可以稍微更改比特币签名,而不会使签名失效。反过来,这意味着整个交易的外观,更具体地说是交易标识符,可以通过在比特币网络上中继交易的人或由在区块中包含交易的矿工来改变。.
来自2015年针对比特币的可延展性攻击的统计数据。红线粗略地表示网络上的恶意交易
本身并不一定是大问题。交易仍然有效,并且将在所有相同条件下将比特币从同一地点移至同一地点。但是,这会使根据未确认的交易创建更新的交易变得复杂:新交易需要知道他们所依赖的交易标识符。反过来,这使得在比特币之上构建某些第二层协议变得更加困难,例如双向支付渠道.
想法
通过将签名数据与其他交易数据“分离”来解决可延展性错误的总体思路可以追溯到几年前.
早在2012年,Bitcoin Core之类的公司 投稿人Russell O’Connor,Matt Corallo,Luke Dashjr和Gregory Maxwell,以及Bitcointalk主持人“ Themoss”, 讨论过的 IRC比特币开发渠道上的问题-但当时他们还没有找到在比特币网络上实现这一目标的可行方法.
罗素·奥康纳(Russell O’Connor),格雷戈里·麦克斯韦(Gregory Maxwell),卢克·达什希尔(Luke Dashjr)和特莫斯(Theremos)早在2012年就讨论了IRC的可延展性漏洞
一年后的2013年8月, 重现, 比特币核心贡献者Peter Todd和Gregory Maxwell在IRC上进行了类似的讨论。但是现在,两个人在对抗可延展性的想法上取得了进步。麦克斯韦写道:“我是在说要使[脚本]的[整体]在很大程度上[分开]。” “我什至建议不使用脚本签名的交易作为[交易ID]。”
其他 一个月后, 麦克斯韦(Maxwell)和这次的著名密码学家亚当·贝克(Adam Back)博士再次讨论了IRC的延展性问题。现在,Back建议通过省略签名来计算交易ID。不过,麦克斯韦(Maxwell)评论说:“将sig从txid中剔除可能会有所帮助,但这将是非常深刻的分叉变革……而且确保安全实际上是棘手的。”
侧链
Blockstream关于比特币区块链侧链扩展的初步建议
2014年8月,区块链技术公司 区块流 由同一位亚当·巴克(Adam Back)和格雷戈里·麦克斯韦(Gregory Maxwell)以及企业家和投资者奥斯汀·希尔(Austin Hill)以及比特币核心开发商(包括Pieter Wuille博士)共同创立。该公司将专注于侧链:可以有效地与比特币挂钩的替代区块链.
到2015年初,Blockstream工程师决定在公司的原型侧链中实现一项新功能 元素, 于当年6月公开宣布。通过将基本交易数据与见证数据分离为不同的数据结构,此功能将最终解决侧链的可延展性问题.
当然,此新功能的名称是, 隔离证人.
块大小争议
从技术上讲,它已经隐约出现了一段时间 2010年10月, 更具体地讲, 2013年2月 最后 公开地, 突入 场景 到2015年春季:区块大小限制争议.
前比特币核心首席开发人员Gavin Andresen和 比特币 首席开发人员Mike Hearn特别认为,应该通过硬分叉来增加比特币的1兆字节块大小限制,这是一种不兼容的协议更改,几乎需要整个比特币生态系统进行升级。绝非易事-之所以如此,是因为没有社区范围的共识来应对这一变化.
无论如何, 2015年夏天, 安德森(Andresen)和赫恩(Hearn)宣布,他们将使用替代方案推进其计划 比特币XT 软件客户端。这项工作的争议性质使比特币开发社区和行业处于某种紧急状态.
为了解决分歧并有可能帮助解决区块规模纠纷,在2015年下半年迅速组织了两次会议(或研讨会): 扩展比特币蒙特利尔 和 扩展比特币香港.
最有希望的扩展建议之一 提出了 蒙特利尔是闪电网络,这是一个复杂的第二层缩放解决方案,在 白皮书 仅在几个月前由Joseph Poon和Thaddeus Dryja出版。唯一的问题:此解决方案将需要延展性修复.
在YouTube上观看此视频
软叉
埃里克·隆布罗佐(CodeShark),弗拉基米尔·范德兰(Wumpus),卢克·达什希尔(luke-jr)和彼得·乌耶尔博士(sipa)讨论了隔离见证作为IRC上的软分叉
此时,开发人员仍然不确定是否以及如何修复可延展性错误。多数人仍然认为,如果没有硬分叉,就不能在比特币的主链上实施隔离证人.
但不是比特币核心贡献者(和 比特币结 维护者)卢克·达什希尔.
2015年10月,在两次扩展比特币会议之间,比特币核心贡献者Eric Lombrozo,Pieter Wuille,Wladimir van der Laan和Luke Dashjr 讨论过的 IRC上潜在的软分叉新模型。在这次聊天中,Dashjr指出,建议的机制不适用于所有潜在的软叉,例如SegWit软叉.
有趣的是,Dashjr认为显而易见的东西-将SegWit部署为软分叉的选择-甚至根本没有被其他人考虑。甚至达什希尔(Dashjr)起初似乎也没有意识到这种可能性的含义。.
要将SegWit部署为软分叉,见证人数据必须放置在比特币区块的新部分。所有这些见证数据的“锚点”(“默克尔根”)必须移至比特币区块的某种非常规部分:奖励矿工新硬币的coinbase交易.
尽管这是非常规的,但在随后的几天和几周内,比特币核心贡献者也会意识到这种方法带来了一个有趣的“红利”。通过为见证人数据创建比特币区块的新部分,可以增加比特币的区块大小,以使未升级的节点不会注意到。实际上,这可能会增加比特币的区块大小,而不会增加比特币现有的区块大小限制.
在第二次扩展比特币研讨会之前的几周,几位比特币核心贡献者认为他们可能最终找到了至少一个临时的解决方案,以解决区块大小限制争议。见证人隔离将以向后兼容的方式有效地增加限制,同时修复长期存在的延展性错误,从而实现更高级的缩放解决方案,例如闪电网络.
双赢的解决方案-或如此,他们认为.
简报
Pieter Wuille在2000年首次提出隔离见证人(作为软叉子) 2015年12月, 在香港扩展比特币研讨会第二版上。许多人首先听说了那里的提议,最初似乎很热情地受到欢迎。.
在YouTube上观看此视频
在第二版可扩展比特币结束后不久,格雷戈里·麦克斯韦(Gregory Maxwell)提出了被称为 扩展路线图, 其中以隔离见证(SegWit)为中心。该路线图很快 认可 由比特币核心开发团队以及更广泛的比特币生态系统中的其他开发人员和用户.
批判
但是,尽管最初有些激动,但《隔离见证》也受到了批评。.
对提议的协议升级的关注有所不同。杰夫·加兹克(Jeff Garzik),前比特币核心贡献者-不久后将成立自己的开发公司 布洛克 – 没有考虑 隔离一个足够的短期扩展解决方案。同时,Bitcoin XT首席开发人员Mike Hearn完全不相信该建议:他认为该解决方案是“会计技巧”并完全 辞职 不久之后比特币发展.
Jonathan Toomim,替代软件客户端Bitcoin Classic的开发人员, 争论 该建议“丑陋且笨拙”,表明最好将其作为硬分叉实施。甚至比特币核心贡献者彼得·托德(Peter Todd)也有 他的 顾虑, 特别是与采矿有关.
但是,总体上,这些问题中的大多数都被认为是可以解决,令人信服或值得权衡的。开始开发软叉升级.
发展历程
尽管Elements上已经实现了隔离见证的版本,但主要还是需要编写比特币主链版本的代码,这不仅是因为它需要作为软分叉实现,而且因为SegWit for Bitcoin会喜欢Elements中不存在的一系列新功能:例如,增加块大小所需的“见证折扣”,对等网络的新兼容性等等.
针对SegWit的具体比特币改进提案, BIP141, 由Pieter Wuille撰写, 西弗雷克斯 首席执行官Eric Lombrozo和独立的比特币核心贡献者Johnson Johnson Lau博士。到2016年1月上旬,在激烈的扩展辩论中,这些和其他Bitcoin Core贡献者启动了最初的专用测试网络以进行协议升级,该网络被称为SegNet。又过了两周,这个测试网被公开,供更广泛的比特币开发社区进行试验。到三月份,SegNet已升级为支持闪电网络的测试版本.
在接下来的几个月中,开发持续进行,从比特币开发社区获得反馈,修复了错误,相应地改进了代码库,并启动了SegNet的多个迭代.
SegWit GitHub页面,开发和其他问题公开可见,任何人都可以跟踪并做出贡献
同时,比特币核心贡献者也接触了更广泛的比特币行业,随着时间的流逝, 一种 一贯地 生长 列表 致力于支持隔离见证的公司和项目.
到6月,“隔离见证人”代码已计数了4,743行代码(包括测试代码),并建议删除或修改554条现有的比特币核心代码行。经过几位撰稿人的进一步审查后,比特币核心首席维护者弗拉基米尔·范德兰(Wladimir van der Laan)于当月底将其合并为比特币核心的“主分支”.
会议
在开发SegWit的同时,比特币社区中的区块大小紧张局势再次升温。这次由Bitcoin Classic率先,许多比特币公司和矿工出现了 决定 硬分叉以将块大小限制增加到2 MB.
在一次最好的形容为紧急会议上,再一次在香港,几位比特币核心贡献者,矿池运营商和其他比特币行业成员开会讨论了扩展问题.
会议导致达成了一项协议,该协议被称为“比特币圆桌会议共识”(或“香港协议”)。出席会议的比特币核心贡献者同意致力于增加区块大小限制硬分叉,该提议将提交给比特币核心开发团队和更广泛的比特币社区。反过来,矿工们同意在这样的硬分叉版本将在比特币核心版本中发布时,在生产中运行SegWit版本。这场危机似乎已经避免了-尽管很快就清楚地知道 不是每个人 对协议感到高兴.
几个月后,更多的比特币核心贡献者和矿池运营商在加利福尼亚举行了会议。出席本次会议的比特币核心贡献者坚信,矿工将激活“隔离证人”.
发布
最初的时间表比原定计划晚了大约六个月-该版本最初定于4月-隔离见证于2016年10月正式推出,比特币核心版本为0.13.1。协议升级还通过其他几种比特币实现方式进行了实现,例如比特币结和 币.
使用称为“ VersionBits”的激活方法(BIP9)的目的是最大程度地减少网络中断,因此95%的矿工(通过哈希功能)必须表示支持SegWit,以便在比特币网络上激活。该矿工信号将于11月15日开始。同时,鼓励用户升级其客户端,随着时间的流逝,似乎, 许多 做过.
截至2017年8月,比特币网络的绝大多数由支持SegWit的节点组成(来源: luke.dashjr.org)
基于与矿池运营商的会晤,以及人们普遍认为SegWit将为比特币带来福音,许多人期望软分叉能够很快启动。.
政治
但这不是发生的事情。事实证明,《香港圆桌会议共识》的几位与会者不同意他们实际签署的内容.
尤其是,Bitmain联合首席执行官Wu Jihan Wu表示,只有当Bitcoin Core开发团队也实施硬分叉以增加其代码库中的块大小限制时,他才会愿意激活SegWit。其他挖矿池(包括F2Pool,HaoBTC和bitcoin.com)也未表示支持软叉.
比特大陆(和子公司AntPool)要求增加硬叉块大小限制以换取SegWit激活.
此外,一个新的中国矿池出现了:ViaBTC。与Bitmain紧密联系,ViaBTC本身就获得了足够的散列能力来单手阻止SegWit激活。它的运营商Yang Haipo将自己定位为对协议升级提议的坚定批评者.
SegWit激活似乎还很遥远.
UASF
匿名比特币和莱特币开发者Shaolinfry的化身
在SegWit正式发布三个月后的2017年2月,一个新的机遇出现了.
曾为莱特币(Litecoin)捐款的假名开发商“ Shaolinfry”在该提案中放弃了一项新提案。 比特币发展邮件列表 和流行 bitcointalk.org 论坛:“用户激活的软叉”或“ UASF”。
Shaolinfry在他的电子邮件中指出,已经成为软分叉标准的哈希力量激活机制从来没有打算成为“投票”。他写道:“信号方法学被广泛误解,意味着散列力量正在对一项提案进行投票,而且似乎难以纠正更广泛社区中的这种误解。”.
Shaolinfry提出了一种替代方案:用户激活的软叉(UASF)。用户激活的软叉将具有“’标志日激活’,而不是散列功率激活,在这种情况下,节点将在将来的预定时间开始执行”。只要此类UASF由经济多数实施,这将迫使大多数矿工遵循(或激活)软分叉.
这个想法立即在整个比特币论坛和社交媒体上引起了轰动。而当前 BTCC 首席运营官和直言不讳的SegWit支持者Samson Mow 设置 一项用于开发UASF软件实施的赏金基金,该提案似乎可以成为现实.
专利技术
在2017年4月的第一周,格雷戈里·麦克斯韦(Gregory Maxwell) 掉落 比特币开发邮件列表上被广泛认为是重磅炸弹的启示.
Maxwell声称已经对专用的ASIC采矿芯片进行了逆向工程,并发现它包括获得专利的AsicBoost技术。此外,麦克斯韦(Maxwell)透露,秘密使用该技术与SegWit的软叉版本不兼容。他指出:“不兼容将大大解释采矿生态系统中某些方面的一些更莫名其妙的行为,”.
虽然Maxwell的电子邮件中没有提及特定的ASIC制造商,但Bitmain 公认的 它已在其采矿芯片中实施了专利技术,尽管它否认曾在比特币的主网上使用过该技术.
无论哪种方式,对于某些用户而言,启示都增加了在比特币网络上激活“隔离见证”软分叉的愿望。而且,由于现在似乎不太可能激活散列功能,因此用户激活的软叉看起来越来越像解决该问题的解决方案.
BIP148提案
在提出了UASF的总体构想后不久,Shaolinfry和其他十多个比特币社区成员在网上开设了UASF频道。 比特币核心社区松弛.
该渠道成为该计划讨论和组织的中心点。选择了标志日期,最初是 10月1日, 然后后来移至8月1日,以更好地说明潜在的低哈希功率支持。 Shaolinfry撰写了一个具体的比特币改进提案: BIP148. 开放角钱 创始人Rodolfo Novak也建立了 信息网站 推广这个想法.
最初的计划是与UASF交流和开展其他业务。如果这些公司支持该提案并实施软分叉,那么在实现期望的经济多数方面将有很长的路要走.
但是UASF并没有达到其某些支持者所希望的牵引力水平。虽然一些 的公司 还有一些 开发商 似乎已加入BIP148,没有大型交易所或其他企业宣布支持,甚至 反对 主动.
并且,到4月中旬,格雷戈里·麦克斯韦(Gregory Maxwell)进入了比特币开发邮件列表 陈述 他认为BIP148也是一个坏主意。来自最受尊敬和最具影响力的比特币核心贡献者之一,他对这项倡议的拒绝产生了影响:此版本的UASF似乎正在失去所有动力。.
相反,有些人开始研究替代UASF: BIP149.
山寨币
许多山寨币都基于比特币的代码库。这意味着,虽然SegWit代码是为比特币开发的,但在很大程度上与这些替代加密货币兼容。因此,毫不奇怪,几个山寨币决定实施SegWit。最早激活隔离证人的最早是Groestlcoin 2017年1月.
但是其他硬币在挣扎。 Litecoin,Vertcoin和Viacoin似乎都被比特币的政治游戏所吸引。这些硬币在很大程度上依赖于与比特币相同的矿工,并且大多数并不表示支持升级.
据称,这是由于技术问题或其他陈述的原因,但是,正如Viacoin首席开发人员Romano指出的那样,“他们似乎更有可能希望避免对山寨币激活“隔离见证”,因为这将使他们更少的理由推迟对比特币的激活。”
到2017年4月,这种态度导致Litecoin创造者Charlie Lee 提倡 用户在“他”的硬币上激活的软叉。他的倡议很热心 已接 在莱特币用户中; Litecoin矿工,Lee和Litecoin生态系统的其他成员很快就安排了一次在线会议,结果是 莱特币全球圆桌会议决议. 为了交换Lee的一些承诺,矿工同意激活SegWit。少林·弗莱(ShaolinFry)和其他人认为UASF的努力 成功.
如果您在Litecoin上支持SegWit,请与您的钱包交谈并交流有关支持UASF的信息。看 https://t.co/DfkvXw9QYA 欲了解更多信息. https://t.co/xmwagBNbKt
查理·李
如果您在Litecoin上支持SegWit,请与您的钱包交谈并交流有关支持UASF的信息。看 https://t.co/DfkvXw9QYA 欲了解更多信息. https://t.co/xmwagBNbKt
-查理·李[LTC⚡](@SatoshiLite) 2017年4月9日
在SegWit在Litecoin上激活后的一周内,一个不知名的人大胆地采取了行动。他(或她)将价值100万美元的加密货币发送给了 受隔离见证保护的地址, 挑战任何人都可以窃取资金。迄今为止, 赏金 保持不变,进一步增强了对该技术的信心.
纽约协定
同时,关于区块大小的争论也越来越激烈。另一个软件客户端增加了每个硬分叉的比特币的块大小限制,比特币无限在比特币的采矿社区中引起了人们的注意。特别是受到比特大陆的吴的认可,该项目似乎正朝着潜在的(且有争议的)硬分叉迈进.
这种迫在眉睫的威胁以及比特币区块链中“分裂”的可能性是导致 DCG 创始人兼首席执行官Barry Silbert会在 共识2017 纽约会议。会议最初是在针对比特币企业家和其他杰出行业成员的私人电子邮件列表上宣布的,该会议将聚集包括矿工在内的比特币行业的很大一部分,尽管值得注意的是,没有比特币核心贡献者.
该会议的结果通常称为“纽约协定.”参与者一致认为,他们希望通过硬分叉来增加比特币的区块大小的人与偏爱SegWit的人之间达成妥协。基于最初由…提出的想法 RSK 创始人Sergio Demian Lerner认为,SegWit将在特定条件下被激活,同时还将有一个硬分叉使比特币的“基本块大小限制”增加一倍。
《纽约协定》及其两个具体行动要点
但是尽管足够说 不是 每个人 在支持该协议的比特币生态系统中,一个特别的问题特别突出。启用SegWit的条件与比特币核心开发团队提出的条件大不相同,为此,该代码已被比特币用户广泛采用.
宽容的少数民族
Samson Mow为支持BIP148 UASF而制作的图像
虽然BIP148 UASF似乎已经失去了很多精力来支持BIP149,但并不是每个人都完全放弃了UASF的第一个建议.
少林夫里提出这个概念的前提是,该概念应得到经济多数的支持,并认为否则应在卖旗日之前中止。但是UASF Slack频道上的一组用户有不同的想法。其中一些人-包括Bitcoin Core和Bitcoin Knots开发人员 卢克(Luke Dashjr) —正在考虑激活软分叉,而不管其余的比特币生态系统将做什么。即使他们是少数,即使他们有效地将自己剥离为新的山寨币,他们也将继续升级.
5月中旬左右,阿方斯·佩斯(Alphonse Pace)将这一决心与统计学家和作家纳西姆·尼古拉斯·塔勒布(Nassim Nicholas Taleb)描述的博弈论概念联系在一起:“无礼的少数族裔”。简而言之,该想法以即使经济上少数群体也应能够迫使矿工激活“隔离证人”软叉为前提。否则,他们将不必要地失去一部分“客户群”(比特币用户).
在AsicBoost丑闻的推动下,莱特币上的SegWit激活以及对《纽约协定》的不满-这次又得到了博弈论的支持-BIP148的支持再次开始在社交媒体和留言板上膨胀成某种病毒.
一些 更多的 文章 讨论了UASF的增长潜力,并在社交媒体上进行了许多辩论,随后YouTube频道发布了其他讨论平台。同时,埃里克·隆布罗佐(Eric Lombrozo) 举起他的体重 努力的背后,以及 UASF帽子 由Samson Mow发行的发行风靡一时。受代号的启发 Electrum电子钱包即将发布, 8月1日被称为“比特币独立日.”
唯一的问题:BIP148和《纽约协议》的激活方法与《纽约协议》与比特币核心开发团队提出的激活方法不兼容.
克拉奇
它是 比特大陆保修 救援人员詹姆斯·希利亚德(James Hilliard)工程师。 Hilliard提出了一个稍微复杂但巧妙的解决方案,该解决方案将使所有事物兼容:Bitcoin Core开发团队,BIP148 UASF和New York Agreement激活机制所提出的隔离见证激活。他的BIP91可以保持比特币的完整状态-至少在整个SegWit激活期间.
只要大多数矿工在8月1日之前激活BIP91,所有比特币节点都应保留在同一网络中。这是一个相对较小的时间范围,因为该解决方案仅在5月下旬才提出,但是《纽约协定》的主要开发商Jeff Garzik采纳了该提议,并计划在8月1日之前的几周内发布该协议产生的软件客户端这是可行的.
激活
信息网站 XBT.eu 在BIP91锁定时
到7月中旬,比特币矿工已经错过了通过比特币核心开发团队提出的与BIP148兼容的方法激活SegWit的窗口。结果,市场似乎对BIP148链与非BIP148链之间的潜在“分裂”感到不安。在仅仅一周的时间里,比特币的汇率从2500美元左右跌至1900美元:是一个多月以来的最低水平.
可能被这些市场动向吓了一跳,比特币的采矿社区甚至开始提前表示对BIP91的支持,甚至早于《纽约协定》规定的时间表。在7月20日,即BIP148的8月1日卖旗日激活的前十天,BIP91锁定了。两天后,它激活了。.
在BIP91锁定的情况下,隔离见证人本身将锁定只是时间问题。这最终发生在8月9日-8月8日达到无可挽回的地步.
比特币将在另外两周的宽限期后“正式”获得隔离见证.
领养
阿尔伯特·德罗斯(Albert Dros)设计的隔离见证标志
当然,“隔离见证”的最后一步是实际采用用户。由于SegWit在本文发布时才刚刚激活,因此无法知道升级将实际使用的速度和速度。一些评论家,也许最著名的是Garzik,预测广泛采用可能会 长达一年 甚至更长。其他人,包括许多钱包和库开发人员,认为他们可以在几周内使用该功能,或者他们是 已经准备好了. 还有其他依赖升级的技术,例如闪电网络,默克尔化抽象语法树(MAST),原子交换,硬件钱包的更快交易签名,更有效的Schnorr签名算法和付款处理器模式下的TumbleBit,也处于不同的发展阶段.
这是一条漫长的道路,但从今天开始,任何想要使用隔离见证的人现在都应该能够这样做.