2019年5月15日,比特幣現金硬分叉似乎遭遇到三個相互關聯的重大問題。「攻擊交易」利用一個漏洞,導致礦工產生空塊。圍繞空區塊的不確定性可能引起了一些礦工的擔憂,他們可能試圖在最初的非硬分叉區塊鏈上挖礦,繼而引發了共識區塊鏈分裂。
開發人員和礦工似乎已經制定了一項計劃,以復原意外發送到隔離見證地址的資金,上述漏洞可能破壞了這一計劃。這種失敗可能導致了進行有意識和協調的兩個區塊鏈重組。根據我們的計算,大約有3392比特幣現金可能已經在一個精心策劃的交易逆轉中成功地被雙重花費了。不過,這次雙重花費的唯一受害者可能是原來竊取這筆錢的「小偷」。
原文標題:《比特幣現金硬分叉——三個相互關聯的事件》作者:BitMEX研究團隊
比特幣現金網絡在2019年5月15日分裂的圖解,資料來源:BitMEX研究
三個比特幣現金的問題
比特幣現金在2019年5月的硬分叉升級受到三個重大問題的困擾,其中兩個可能是間接由一個導致空塊的漏洞引起的。下圖顯示了這三起事件之間的潛在關系。
比特幣現金在硬分叉升級期間面對的三個問題之間的關系,資料來源:BitMEX研究
OKEx礦池計劃于11月13日12時將BCH結算用戶切換至BTC結算:據官方公告,Bitcoin Cash(BCH)網絡預計將于2020年11月15日進行一次硬分叉。受此次升級影響,OKEx礦池計劃于2020年11月13日12:00將所有BCH結算用戶切換至BTC結算,視BCH硬分叉情況另行通知恢復形式和恢復時間。[2020/10/30 11:14:41]
空塊問題
BitcoinABC是比特幣現金的一個重要實現軟件,但它有一個漏洞,進入內存池的交易的有效性條件可能沒有共識有效性條件那么繁瑣。這與比特幣預期運作的方式相反,共識有效性規則本應比內存池有效性更寬松。這實際上是一個非常重要的特性,因為它可以防止惡意花費者創建滿足通過網絡中繼并進入商家內存池的條件,但是無法滿足進入有效區塊所需條件的交易。這會使0確認雙重花費攻擊相對容易阻止,而無需擔心初始付款進入區塊鏈。在這種情況下,攻擊者可以有理由確定,惡意構造的交易永遠不會進入區塊鏈。
攻擊者似乎已經在比特幣現金ABC中發現了這個漏洞,然后在硬分叉之后加以利用,從而引起混亂和迷惑。這個攻擊可以隨時執行。攻擊者只需要廣播滿足內存池有效性條件但未通過共識檢查的交易。當礦工試圖產生這些交易的區塊時,他們失敗了。作為故障保護,礦工似乎已經制造空塊,而不是顆粒無收,至少在大多數情況下是這樣。
BCH持續上漲 再度突破300美元:據火幣全球站數據顯示,BCH持續上漲,再度突破300美元,當前報價為301.72美元,火幣日內漲幅為2.77%,行情波動較大,請注意風險控制。[2020/8/15]
比特幣現金—每個區塊的交易數量—橙色線是硬分叉,資料來源:BitMEX研究
不對稱的鏈分裂
在空塊不確定性達到最高峰時,我們的預硬分叉BitcoinABC0.18.2節點收到了一個新的區塊,582,680。當時,許多人都擔心空塊,一些礦工可能已經恢復到一個硬分叉前客戶端,認為較長的區塊鏈遇到了麻煩,并可能會恢復到硬分叉之前。不過,這僅僅是我們的猜測,而空塊漏洞可能與鏈分裂無關,這可能只是由一個太慢而無法升級的礦工造成的。
比特幣現金共識鏈分裂,資料來源:BitMEX研究
對于硬分叉的結構,鏈分裂確實向我們強調了一個問題。我們測試了我們的硬分叉后客戶端ABC0.19.0是否會將分裂的非硬分叉側視為有效。為了使分裂「干凈」,分裂的每一側都應該認為另一側是無效的。
為了測試較短的硬分叉前區塊鏈的有效性,從BitcoinABC0.19.0節點的角度來看,我們不得不使自分裂以來的第一個硬分叉區塊無效。然后,我們觀察該節點是否會跟隨鏈分裂或仍然卡在硬分叉點。出乎我們意料的是,如下面的屏幕截圖所示,該節點跟隨分裂的另一側。因此,分裂并不完全,這種不對稱,可能為攻擊者提供更多機會。
金色財經挖礦數據播報 | BCH今日全網算力下降2.71%:金色財經報道,據蜘蛛礦池數據顯示:
BTC全網算力125.582EH/s,挖礦難度15.78T,目前區塊高度638536,理論收益0.00000838/T/天。
ETH全網算力191.058TH/s,挖礦難度2391.14T,目前區塊高度10428595,理論收益0.00870818/100MH/天。
BSV全網算力2.271EH/s,挖礦難度0.31T,目前區塊高度643015,理論收益0.00039636/T/天。
BCH全網算力2.658EH/s,挖礦難度0.37T,目前區塊高度643234,理論收益0.00033856/T/天。[2020/7/10]
我們的BitcoinABC0.19.0節點的命令行截圖,資料來源:BitMEX研究
協調的兩個區塊重組
在硬分叉之后的幾個區塊,在分裂的硬分叉側,有一個長度為2的區塊鏈重組。當時,我們認為這是由正常的區塊傳播問題引起的,并沒有考慮太多。例如,BitcoinSV在此之前幾周經歷了該長度的6個區塊的重組,根據我們的分析,當BitcoinSV重組時,孤鏈中的所有交易最終都進入主要的獲勝鏈。不過,在這種比特幣現金重組中,我們發現事實并非如此。
聲音 | Amber Group研究總監熊璐:對BCH發動51%攻擊有很大道德風險:2020年2月7日,知密大學發起人劉昌用博士、BCH生態基金負責人王鵬以及Amber行業研究總監熊璐圍繞即將減半的BCH進行分享。熊璐表示,BSV和BCH會比BTC先完成減半,在前者已減半,后者還未減半這個短暫的時間窗,很可能挖礦收益不如BTC,會有部分算力切去挖BTC,51%攻擊會更容易,但并不見得真的會發生。一方面,這兩個幣種都有大量自有算力在挖,并不會掉非常多下去;另一方面,即便是現在,BTC算力相對于BCH,BSV也占有壓倒性優勢(目前約為112:4.6:2.8),但一直以來并沒有發生51%攻擊,說明這么做是不經濟的,或者是有很大道德風險的。[2020/2/7]
孤立區塊,582,698,包含137筆交易,其中只有111筆交易進入獲勝鏈。因此,就25筆交易而言,似乎發生了一次成功的2個區塊雙重花費。如下表所示,這25筆交易的輸出值總計超過3,300個BCH。孤立區塊中沒有進入主鏈的交易列表,資料來源:BitMEX研究
如上表所示,這25筆雙重花費交易的總輸出值為3,391.7BCH,從經濟角度來看,這是一筆重大數額。因此,可以得出結論,重組是一個精心策劃的事件,而不是偶然發生的。如果這是偶然發生的事件,則分裂的每一側的交易可能不會出現不匹配。不過,假設協調和故意重組是我們的猜測。
行情丨BCH在2分鐘內漲幅超過1.00%:據火幣全球站數據顯示,BCH/USDT在2分鐘內出現劇烈波動,漲超1.00%,達到1.05%。當前報價為 325.15 美元,行情波動較大,請注意風險控制。[2020/1/16]
我們提供了以下兩個雙重花費的輸出示例:其中一個雙重花費UTXO示例——「0014」,資料來源:BitMEX研究
上表說明了重組期間5個BCH輸出發生的情況。這5個BCH首先被發送到區塊582,698中的地址qzyj4lzdjjq0unuka59776tv4e6up23uhyk4tr2anm。該鏈是孤立鏈,而相同的輸出最終被發送到不同的地址,qq4whmrz4xm6ey6sgsj4umvptrpfkmd2rvk36dw97y,在7個區塊之后。
第二個雙重花費UTXO示例——「0020」,資料來源:BitMEX研究
上述輸出的情況與25筆雙重花費交易中的幾乎所有資金有共同的特征。大多數輸出似乎已經在主鏈上的區塊582,705附近進行雙重花費,在孤立區塊后大約7個區塊。
用于贖回交易輸入的SigScript以「0020」或「0014」開頭,在上面的示例中突出顯示。這些可能與SegregatedWitness有關。根據SegregatedWitness中的規范,「0014」被推送到P2WPKH,和「0020」被推送到P2WSH。因此,這些輸入的贖回可能與比特幣升級的隔離見證有關,其中只有一部分是在比特幣現金上采用的。
實際上,基于我們的分析,孤立區塊582,698中的25筆交易中的每個單個輸入都用「0014」或「0020」開頭的Sigscript來贖回。因此,除了贖回這些SegWit輸出的「攻擊者」或「小偷」之外,有可能沒有人丟失與此鏈重組相關的資金,而這些資金可能首先被偶然地發送到這些輸出。
作為比特幣現金2019年5月硬分叉一部分,有一個變化,就是允許復原被意外發送到SegWit地址的比特幣。因此,這可能發生在這次事件中。
允許隔離見證復原
在上次升級中,意外發送到SegwitP2SH地址的比特幣因CLEANSTACK規則而變為不可花費。這次升級將對這些比特幣進行豁免,并將它們恢復到之前可以花費的情況。這意味著一旦P2SH贖回腳本預映射被透露,任何礦工都可以拿走硬幣,資料來源。
這個2個區塊重組可能與空塊漏洞無關。不過,分裂似乎就在在解決漏洞之后一個區塊發生,因此它可能是相關的。也許「誠實」的礦工們試圖在分裂后直接協調這些輸出的花費,又或許要將它們歸還到原來的所有者那里,而空塊漏洞搞砸了他們的時間,讓攻擊者得益并卷走資金。
另一方面,該攻擊非常復雜,因此攻擊者可能非常老練,并需要進行廣泛的規劃。因此,即使沒有空塊漏洞,這種攻擊也可能是有效的。
結論
我們從有關比特幣現金硬分叉升級的事件中吸取到許多教訓。硬分叉似乎為惡意行為者提供了攻擊和制造不確定性的機會,因此對硬分叉的精心規劃和協調非常重要。另一方面,這個空塊漏洞可能是其他兩個事件的根本原因,其可能在任何時候發生,而無論是否正在試圖硬分叉,嘗試防止這樣的漏洞才是重中之重。
這些事件的另一個重要教訓是需要透明度。在事件發生期間,很難知道開發人員的計劃、漏洞的性質或礦工支持的鏈。在公共渠道中就這些問題進行公開交流可能會更有幫助。特別是,很多人都不能清晰知道開發人員和礦工的計劃,以協調和復原發送給SegWit地址的資金。如果這個計劃事先在社區中,以及在明顯的經過深思熟慮和協調的重組期間進行辯論和討論,可能會有所幫助。當然,假設有時間披露后者。如果參與者在事后披露有關這些事件的詳細信息,也可能會有所幫助。
我們認為,所有這一切中令人最擔憂的是經過深思熟慮和協調的重組。從論證的一方來看,資金被盜,因此將資金歸還給其「合法所有者」的行為是合理的,即使這造成了一些短期中斷。不過,許多人或者某些人認為交易最終確認等現金是這些區塊鏈系統的唯一獨特特征。如果能夠逆轉交易,和在本情況下的經濟上重大交易,這將否定這個系統的整個前提條件。這種行為可能消除適當保障資金的動機,開創先例或改變預期,更有可能產生進一步逆轉。
對于比特幣社區中所有不喜歡比特幣現金的人來說,這可能成為嘲笑這種幣的機會。不過,雖然比特幣現金的哈希值比比特幣低得多,使得這種逆轉更容易,但我們認為,成功對比特幣現金進行經濟上重大的精心策劃交易逆轉對比特幣而言并不是好消息。從某些方面來看,這些事件有助于樹立一個危險的先例。這表明這些事件可能會發生在比特幣身上。或者,這可以說明比特幣現金在成為少數鏈的同時所面臨的風險。
本文由BitMEX研究團隊提供
據HOLD行情顯示,6月27日,BTC突破14000美元,達到近期最高點之后便開始震蕩下跌。7月2日上午,火幣BTC/USDT價格跌破10000USDT關口,現報9870USDT,24小時跌幅4.
1900/1/1 0:00:00親愛的用戶: Binance將于2019年07月05日20:00上線Dogecoin,并開通DOGE/BNB、DOGE/BTC、DOGE/USDT、DOGE/PAX、DOGE/USDC交易市場.
1900/1/1 0:00:00社交網絡巨頭Facebook以大膽的舉動,通過其「Libra幣」,或者我們稱之為「LibraETF」向傳統金融和ETF行業發起挑戰.
1900/1/1 0:00:00在未來人工智能、物聯網和區塊鏈三駕馬車驅動的世界中,也許會發展出一個目前人類的想象無法觸及的世界:一個遠超歷史任何時期的價值的世界.
1900/1/1 0:00:00QbaoNetwork是一款有百萬級用戶的多功能跨鏈數字貨幣錢包。經過18個月的發展,QbaoNetwork已經發展成為一款以錢包為核心的加密貨幣金融服務平臺商,提供包括數字資產管理、數字資產交.
1900/1/1 0:00:00文章系金色財經專欄作者供稿,發表言論僅代表其個人觀點,僅供學習交流!金色盤面不會主動提供任何交易指導,亦不會收取任何費用指導交易,請讀者仔細甄別,謹防上當.
1900/1/1 0:00:00