阅读23 返回首页    go 比特币


从“下载 btc1”到“重放保护争端”,SegWit2x 扩容大战已经打响

自上周 SegWit2x 团队宣布将于高度为 494784 的区块(约为今年 11 月)启动 2MB 硬分叉以来,比特币社区的扩容争论再次被点燃。

上周五,支付服务提供商 BitPay 发布了一篇争议颇大的博文,里面提醒用户做好 SegWit2x 硬分叉准备,并直接引导用户下载 btc1 节点(也就是 SegWit2x 部署的节点)。为此,社区里不少“纽约共识”的反对者指责 BitPay——闪电网络作者 Tadge Dryja 称这是“恶意软件”;Bitcoin Core 团队则发文表示,btc1 与 Core 没有任何联系,请各位用户不要下载含有“升级”字眼的比特币全节点软件。

同日,区块链技术公司 Bloq 兼 SegWit2x 主笔 Jeff Garzik 被 Bitcoin Core 在 Github 上的代码库除名。Jeff 认为这是“报复行为”;Core 开发者 Peter Todd 则指出,Jeff 从 2014 年开始就未对代码库做出贡献,被除名实属正常。

………

截图自:Jeff Garzik 的 Twitter

随着事件的发酵,比特币社区“内战”逐渐升级,而近日关于“重放攻击保护”这一问题让双方的矛盾变得更为激化。

重放攻击保护是什么

作为这次 Bitcoin Core 和 SegWit2x 两方就安全性理念展开争论的关注点,重放保护在去年以太坊硬分叉的时候就引起了热议。

重放攻击又称重播攻击,指的是黑客利用目的主机已接收过的数据进行多次验证,从而欺骗系统的攻击方式。简单来说就是,使用同一付款信息多次购买商品的过程。为了避免这种情况,接收者(收银员)可以有效识别和拒绝重放信息(同一则付款信息)变得尤为重要;而这就是重放保护所起到的作用。

在区块链和数字货币中,重放保护的部署可以确保两种历史数据共享的区块链和数字货币保持独立运行,防止两条链间数据出现相互多次识别的情况。去年七月以太坊分裂时,由于没有预测到 ETC(以太坊经典)会保留下来以及两条历史数据共享链(ETC 和 ETH)之间的重放问题,不少人利用该漏洞不断充币、提币(ETH),从而骗取额外的 ETC。

有了前车之鉴,比特币“分叉币”Bitcoin Cash(BCC)还未上线前就已经有部分用户、交易平台等呼吁项目执行开发组部署重放保护方案了。而 BCC 分裂后能够以新竞争币的“身份”成功独立运行,有一部分原因归功于重放保护的部署。

SegWit2x 不部署重放保护 = 危险?

随着“纽约共识”第二阶段 2MB 大区块扩容计划的到来,“重放攻击保护”这一概念也被搬到了 SegWit2x 和 Bitcoin Core 两者争论的“舞台”上。

希望保持小区块并施行“隔离验证+闪电网络”扩容方案的 Bitcoin Core 团队质疑 SegWit2x 的安全性,认为该方案没有部署重放保护的做法,将会像以太坊硬分叉事件一样让用户和企业蒙受损失。而另一方面,欲在隔离验证激活后将区块大小扩大至 2MB 的 SegWit2x 团队则反驳说,这是 Bitcoin Core 攻击他们的策略。“我们要做的是升级比特币网络,而不是创造像 BCC 一样的新竞争币或者说‘分叉币’,所以没有部署重放保护的必要。”

事实上,“是否要在 SegWit2x 扩容方案中部署重放保护?”或者说“SegWit2x 是否安全?”都不是他们争论的真正焦点,这些只是双方一再强调“我才是真正的比特币”的做法而已。简单来说,如果 SegWit2x 部署了重放保护,在某种程度上等于默认未来 SegWit2x 链上的 BTC 是竞争币,而不是比特币“本身”——这种“自我否认”的做法,SegWit2x 团队又怎么会同意。

不过,除非 Bitcoin Core 愿意接受 SegWit2x 方案并将其写入比特币底层协议,或者说 SegWit2x 做出让步;不然比特币区块链依旧会有再次分裂的可能,届时将出现三条链——比特币原链、Bitcoin Cash 和 SegWit2x,比特币内部的局面变得更为混乱。

最后更新:2017-08-27 22:45:42

  上一篇:go 比特币和ICO实在太火,高盛也来给投资者“科普”了
  下一篇:go 比特币网络尝试处理超过1MB的区块数据