時(shí)間:2021-11-18|瀏覽:644
先回顧一下雙花的過程:
假設(shè)小黑給了大白發(fā) 666BTC,打包到第一 N 塊。幾分鐘后,小黑反悔了,自己控制的超過了 50% 計(jì)算能力發(fā)起了 51% 計(jì)算能力攻擊,通過剔除發(fā)送給大白 666BTC 那筆交易,重組第 N 重組的第一塊 N 塊后繼續(xù)延伸塊,使其成為最長的合法鏈。
這是雙花的過程,小黑發(fā)給大白 666BTC 被作廢。
從上面的例子可以看出,即使大白當(dāng)時(shí)收到了小黑的轉(zhuǎn)賬 666BTC交易被打包上鏈,這筆交易也可能被作廢。
為避免雙花造成的損失,一般認(rèn)為,等等, 6 區(qū)塊確認(rèn)后的比特幣交易基本不能篡改。也就是說,如果小黑發(fā)給大白的話 666BTC 這筆交易被打包在第一位 N 一個(gè)塊(第一個(gè)塊確認(rèn)),大白等到第一個(gè)塊 N 5 當(dāng)一個(gè)塊出現(xiàn)時(shí)(第6個(gè)塊確認(rèn)),交易基本不可篡改。
請注意,這里用的是基本,不是絕對的。
前不久,幣安發(fā)生了黑客盜幣事件,一共被盜 7000 多個(gè)比特幣,這個(gè)比特幣被黑客轉(zhuǎn)移,交易記錄包裝在塊的高度 575013 上面。事故發(fā)生后不久,有人建議重組塊,當(dāng)時(shí)已經(jīng)確認(rèn)了很多塊。
塊重組是指從黑客轉(zhuǎn)移比特幣的塊開始,剔除黑客的交易記錄,重新創(chuàng)建塊和所有后續(xù)塊。如下圖所示:
圖片
據(jù)說盜幣事件發(fā)生后,幣安(Binance) CZ 給比特幣大陸的吳打電話,溝通比特幣區(qū)塊鏈重組。當(dāng)時(shí)他們可以結(jié)合比特幣的大計(jì)算能力,從技術(shù)角度來說,他們有能力重組,讓重組鏈成為比特幣最長的合法鏈。如何計(jì)算重組后成為最長的合法鏈需要多長時(shí)間,可以參考白話區(qū)塊鏈學(xué)校的推文幣安7074枚比特幣被盜,如果區(qū)塊重組成功收回的概率有多大。
重組消息一出,業(yè)內(nèi)一片嘩然,各種爭議聲不斷。當(dāng)然,最后沒有重組,幣安愿意自己承擔(dān)黑客盜幣的所有損失。
一般來說,確認(rèn)的塊越多,就越安全。 51% 攻擊后篡改和重組的可能性越低。至于我們經(jīng)常看到的比特幣交易 6 確認(rèn)塊后是安全的,這個(gè)數(shù)字 6 不是硬性規(guī)定,只是說有 6 由于黑客或攻擊者目前很難掌握大量的比特幣計(jì)算能力來做惡,因此被篡改的可能性很低。
平均比特幣 10 每分鐘包裝一個(gè)塊,6 需要確認(rèn)個(gè)別塊的平均 60 分鐘。那我們是不是每一筆比特幣交易都要等 60 多分鐘呢?
其實(shí)不是。不需要等小額交易 6 由于比特幣的發(fā)生,一個(gè)塊確認(rèn) 51% 計(jì)算能力攻擊的可能性很小。一般來說,小于 1000 美元比特幣交易,1 確認(rèn)一個(gè)塊;介于 1000~10000 美元比特幣交易,一般交易平臺(tái)至少要求充值和提現(xiàn) 3 塊確認(rèn);介于 10000~100000 美元的比特幣交易,基本需要 6 塊確認(rèn);大于 100000 美元交易,確認(rèn)的塊越多越好。