COI:BCH分叉史:内乱始末与重放保护之谜

进入到11月,BCH即将迎来又一次升级。这本来对大家已经习以为常,但是由于此次升级很有可能引起再次分叉,因此BCH近期备受瞩目。

对于分叉,不同的人持有的态度是不同的。一些人赞同分叉,认为分叉是新事物替代旧事物的良性发展,一些人反对分叉,认为分叉是伤害共识的不利行为。有人因为分叉而名利双收,也有人因为分叉争得面红耳赤。分叉究竟是好是坏,我们不做评价,这里只做科普并带大家了解区块链世界的几次著名的分叉事件。

何为硬分叉?

所谓硬分叉指的是区块链发生永久性分歧,在新的共识规则发布之后,一些没有及时升级的节点没有办法验证已经升级的节点所产生的区块,这个时候硬分叉就会发生。

硬分叉有三个特点:一是没有向前兼容性,之前的版本将不可再用,需要强制升级;二是在区块链的层面会有分叉的两条链,一条旧链,一条分叉的新链;三是需要在某个时间点全部同意分叉升级,不同意的将会进入旧链。

事件一:BTC分叉事故

在2013年3月12日,当时是bitcoinqt0.8.0版本软件发布了,0.8版本采用了一种新的数据库leveldb。有的矿工节点升级了bitcoinqt0.8版本,有的矿工还继续使用bitcoinqt0.7版本的软件。双方各自生产区块,但bitcoinqt0.8采用的新数据库生产出的区块被被qt0.7版本节点拒绝掉。具体的原因是旧的数据库对超过800Kb的区块有时不接受。因此在区块高度225430比特币区块链分成了两条链,结果导致了比特币区块链产生两条链,一条是包含大于800kb区块的链,另一条是拒绝承认这些包含更大区块的链,这就发生了硬分叉。当时是采用bitcoinqt0.8版本的矿工放弃了他们挖的链,退回到bitcoinqt0.7版本上继续挖矿。

美俄勒冈州拟议法案要求加密矿工到2027年将排放量减少60%:金色财经报道,美国俄勒冈州议员已提交一份法案,旨在遏制加密货币挖矿等高能耗设施的碳排放,目标是到2027年将排放量减少60%,其中拟议的新基线设定为每MW排放0.428公吨二氧化碳当量,并要求加密公司根据以下时间表减少排放量:到2030年减少80%,到2035年达到90%,2040年后零排放。如果不遵守将导致1.2万美元 / MW的民事罚款。目前该法案刚刚提交立法机关,尚未分配委员会和举行听证会,该过程可能需要两到三周的时间。(Blockworks)[2023/1/12 11:07:48]

这次硬分叉是一次意外,是bitcoinqt0.8版本的软件出了bug,导致采用旧软件的节点拒绝验证新软件节点生产的区块。但硬分叉的成因就是采用旧软件版本的节点拒绝验证采用新软件版本的节点生产的区块,然后双方各自挖矿。

事件二:TheDAO事件

以太坊曾出现过大规模的硬分叉事件,“末日战车”ETC就是因此诞生。

2016年的6月17日,以太坊上著名的项目TheDAO由于其自身漏洞,导致黑客窃取了当时价值约6000万美元的以太币。这个错误并非来自以太坊本身,而是建立在以太坊上的应用。

为了挽回损失,以太坊开发团队通过修改以太坊软件的代码,在第1920000个区块强行把TheDAO及其子DAO的所有资金全部转到一个特定的退款合约地址,从而“夺回”黑客所控制的DAO合约币。这条被回滚的链就是ETH。

比特币矿企Iris Energy面临1.03亿美元设备贷款的违约索赔:11月8日消息,比特币矿企Iris Energy(IREN)周一表示,该公司正面临其贷款人的索赔,称其拖欠了两家特殊目的载体(SPV)持有的1.03亿美元设备贷款。根据周一提交给美国证券交易委员会的文件,债权人于11月4日向该矿企发出违约通知。文件称,由于Iris未能参与此类讨论,债权人声称其拖欠了原定于10月25日的付款。鉴于此,债权人希望触发一项加速条款,即要求立即支付全部本金和应计利息。

Iris Energy表示,截至9月30日,两笔有问题的贷款的本金金额分别为3200万美元和7100万美元,分别以1.6 EH/s和2.0 EH/s的矿机为担保。该债务由两家全资拥有的无追索权SPV持有,这意味着在违约情况下,出借方将无法扣除Iris Energy抵押品以外的任何资产。(CoinDesk)[2022/11/8 12:32:24]

虽然这个过程得到了大多数人的同意,但是以太坊团队中有少数成员是不赞成的。他们认为区块链的基本特征之一就是交易不可逆,回滚交易的做法违背了区块链的不可篡改精神。于是,以太坊硬分叉成了两条链:回滚交易的ETH和拒绝回滚交易的ETC。

在这次分叉中,由于没有重放保护,导致分叉后在ETH上进行的交易,也会在ETC上也进行,反之亦然,因此造成了交易所与用户的资产损失。之所以会发生这一现象,是因为在分叉发生时,这两条链在数据结构上完全一致,这个弱点直接导致同一笔交易在两条链上完全合法。有人利用这个漏洞,不断在交易所进行ETH的充币、提币操作,从而导致交易所莫名其妙流失大量ETC。

DODO因vDODO合约漏洞暂时禁用vDODO合约转账功能:10月21日消息,去中心化交易平台DODO称,近期一位白帽黑客向DODO团队报告了vDODO合约中的一个漏洞,此漏洞可能被用来降低vDODO持有者的推荐质押权益,影响用户的潜在质押收入,不过用户拥有的vDODO资产不受影响。当前,DODO团队暂时禁用了vDODO合约的转账功能,以规避攻击活动,目前正在寻找解决方案。[2022/10/21 16:33:49]

事件三:BCH的诞生

BCH的诞生是币圈里程碑式的分叉事件。众所周知,BCH是由比特币通过硬分叉产生的。这是因为BTC在发展的过程中,仅有1M的区块大小的限制导致交易延迟、交易费高,无法满足日益增长的交易需求。为了解决这一问题,社区出现了分歧。一派是大区块的支持者,认为直接更改共识进行扩容,一派则是小区块链支持者,寄希望于闪电网络等第二层应用。经过长期的讨论,这一问题始终未能达成共识。最终,比特币于2017年8月1日在区块高度478558后被分叉为BTC和BCH,BCH将区块扩容至8M。在BCH诞生后不久,BCH获得了大量交易所和钱包以及应用设施的支持。

在这个过程中,BCH主动添加重放保护,将收币交易的锁,修改为与比特币的锁不一样的锁,而且将交易签名修改为与BTC完全不一样的规则SIGHASH_FORKID,使得这次分叉是一次安全的分叉。如果没有重放保护,对于刚刚分开的两条链来说,虽然名义是两条链,但是由于共同使用一套私钥、公钥、和地址,用户在一条链上转账时,也会将另一条链上的币转移出去。加了重放保护之后,一条链的矿工在接收到另外一条链的交易或区块的时候,就会拒绝另外一条链的交易或区块,从而两条链将彻底分开,互不影响。

加密货币市场在过去 24 小时内清算了超过 3.5 亿美元:金色财经报道,在过去的 10 天里,比特币鲸鱼移动了大约15000比特币。这些代币于2014年购买BTC。根据 CoinGlass 的数据,加密货币市场在过去 24 小时内清算了超过 3.5 亿美元。尽管数量可能看起来很大,但市场上逐渐抛售 15000 BTC 并不会导致清算量出现如此大的飙升。 据报道,鲸鱼将大部分古老的资金转移到Kraken交易所,并且很可能在价格大幅下跌之前将其出售。同时,多数专家认为,回调的主要原因与即将到来的加息和货币政策的持续加强有关。[2022/9/7 13:14:02]

在BCH的诞生过程中,交易所根据比特币的持有量空投BCH,投资者受益良多。这一过程引发了硬分叉热潮,仅仅基于BTC的分叉链就层出不穷。BTG、BCD、SBTC等都是在这一时间出现。不过,后期由于缺乏价值支撑而逐渐没落。

事件四:BCH算力战

BCH诞生之初由BitcoinABC、BitcoinUnlimited,Bitprim,Nchain,Bitcrust,ElectrumX,Parity和BitcoinXT等多个团队开发维护。在BCH的发展中,随着社区理念的不统一与技术的摸索与前进,BCH开发团队在发展方向很快出现了分歧。

BitcoinABC支持者希望在区块大小维持在32MB的情况下,应让BCH往基础建设公链方向发展,这样一来,BCH便能像以太坊一样,开拓出更多应用场景。

NFT项目FRENCY BEAR的Discord服务器遭黑客入侵,官方称正在修复:6月28日,据官方消息,NFT项目FRENCY BEAR的Discord服务器遭黑客入侵,官方团队正在修复,并提醒用户不要点击任何链接。[2022/6/28 1:35:25]

BitcoinSV支持者希望回归比特币最原始的版本,坚信CraigS.Wright即中本聪,为吸引沃尔玛级别的企业使用BSV,提前将区块扩容为128MB。

社区的分歧来源于是从扩容还是添加或重新激活几个比特币脚本操作码(op代码)来实现BCH未来的发展方向。更深层次的冲突是比特币原教主义与演进派之间的意识形态分歧,以及CSW是真假中本聪。

各执不同意见的两方也造成BCH的共识协议不再兼容,必须通过分叉来解决,并约定硬分叉后最长的链才能为主链,获得BCH的冠名权。

由于此次硬分叉没有添加无重放保护,导致交易所处理困难。不管是命名还是空投糖果方面都给交易所出了难题。硬分叉结束之时,BCH、BCHABC、BCHSV、BSV等都曾出现。最终两条链经过算力战,BCHABC获得大量支持,取得BCH的名称。最后,这两条链都有稳定的算力支持,且都可以正常出块,难度调整波动处于正常范围,BCH和BSV就此分开两条链开始各自发展。交易所也按照用户的BCH持有量空投BSV糖果。

回归当前:BCHN篡权?

2020年11月15日,按照惯例,BCH网络即将迎来又一次硬分叉升级。但是与过去的硬分叉升级有所不同的是,因为IFP的争议,开发团队ABC与BCHN似乎将在协议升级后执行截然不同的规则,这可能会导致两条链分裂。

BCHN与ABC关于IFP的理念之争可以追溯到1月22日《BCH的基础设施融资计划》提出向开发者捐赠区块奖励。这一提议引发了社区激烈的讨论。最终,开发团队间并未对此事达成共识。ABC将IFP写入这次升级,规则包含将8%区块奖励给开发者。BitcoinCashNode作为反对IFP的一方,复制了ABC代码的同时删除了IFP。由于理念的不同,导致两个客户端版本不互相兼容,BCH很有可能再次分叉为两条链。

关于此次分叉,开发者表示将会添加重放保护,不会影响BCH主链的正常使用。但对于用户而言,假如BCH一分为二,用户可以获得新币的糖果。因此,各交易所、钱包宣布为保护投资者,暂停BCH相关业务。

Matrixport作为数字资产金融服务平台表示支持BCH分叉,也将于新加坡时间2020年11月15日12:00暂停BCH充值、提现业务。Matrixport还将为用户处理硬分叉中的任何技术问题,待区块网络运行稳定后,Matrixport会尽快恢复充值、提现业务。

目前Matrixport已经为BCH分叉做了充分的准备。如果BCH分叉成为两条链,Matrixport将使用染色UTXO做混淆防止重放。原理是找分叉之前的UTXO,分两次签名在不同的分叉链上,花掉作为染色UTXO的种子,待安全确认后,后续交易中如果生成交易的UTXO都是分叉之前的,则自动带上种子UTXO。如此以来,一旦BCH分叉,ABC和BCHN两条链新产生的区块数据独立。ABC链上新发行的币,即产生的coinbase交易,在本链上被认为是合法的,但是在BCHN链上是非法的,反之亦然。

举个例子:一笔交易广播到了ABC链中,引用了非法交易的UTXO作为输入,那么这笔交易相当于被污染了,不会被BCHN链承认,那么这笔交易就被重放免疫了;对应的,一笔交易广播到了BCHN链中,引用了非法交易的UTXO作为输入,那么这笔交易相当于被污染了,不会被ABC链承认,那么这笔交易就被重放免疫了。

通过这种方法,不仅能够有效防止重放,Matrixport也可以有效的保护用户的资产。由于技术复杂,用户可以将自己的资产保存在Matrixport平台,不仅保护自己的资产安全,而且如果BCH分叉可以轻松获得新币糖果。

谁是最后的BCH?

针对BCH的此次分叉,由于涉及到“BCH”的冠名权,不同的交易平台也表现出不同的态度。

第一种是价高者得到BCH的名称。

这类交易平台包括:CoinEx、OKEX。

它们表示分叉完成后,会参考各主流交易所分叉币对交易价格,选择其中价格较高链继承BCH的命名,另外一条链的代币将按1:1空投到用户资金账户。

第二种是待社区形成共识后确定BCH名称。

这类交易平台包括:火币、币安、BithumbGlobal。

它们表示若硬分叉后生成新的分叉币,将尊重社区和用户的意见与共识,将获得社区较多支持的方案命名为BCH,另外一条链上的代币,将持仓快照,按照1:1的比例空投到用户账户中。

第三种是支持BCHN,反对BitcoinABC。

这类交易平台包括:Coinbase、Kraken。

Coinbase直接官宣站队BCHN,声明称一旦硬分叉完成,Coinbase.com和CoinbasePro将不支持ABC分叉币的发送和接收。

Kraken表示无论分叉结果如何都将支持BCHN,在其平台上,BCHN将被称作BCH,只有当ABC的算力占到BCH网络的10%及以上,平台才会支持ABC服务,代币代号会使用“BAB”。

头部矿池BTC.com表示,已充分测试和验证了BitcoinABC和BitcoinCashNode两种客户端,也一直保持和两边技术团队交流。BTC.com矿池会选择BCHN作为分叉后的节点方案,若有后续变化将及时另行通知。

同时,BTC.com上线BCH硬分叉倒计时,实时更新双方的价格、算力、节点占有率、出块数量、节点信息等数据,帮助关注此次分叉的用户更直观的了解BCH硬分叉的动态。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金星链

SOLETH:为什么我们这么关注ETH2.0?

作者|大文来源|链得得上周,以太坊官方博客发布文章称,Eth2.0?规范v1.0?正式发布。作为其中最重要的一环,Eth2.0?主网存款合约也随之发布.

[0:453ms0-0:746ms