比特幣交易為什么需要經(jīng)過6個區(qū)塊的確認
我們常常說,一筆比特幣交易需要經(jīng)過6個區(qū)塊的確認。
一個問題:為什么比特幣交易要經(jīng)過6個區(qū)塊確認?
一個案例:
如下圖所示,綠色和黃色是兩名礦工,他們挖到了的新區(qū)塊,同時向比特幣網(wǎng)絡廣播公布。
地理位置靠接綠色礦工的節(jié)點,首先收集綠色礦工公布的區(qū)塊。
地理位置靠接黃色礦工的節(jié)點,首先收集黃色礦工公布的區(qū)塊。
所以,不同的節(jié)點,可能同時會有不同版本的區(qū)塊鏈。而這兩個版本的區(qū)塊鏈,都被礦工繼續(xù)開采。
這個時候,比特幣交易的順序不清不楚。
比特幣網(wǎng)絡,必須圍繞“哪個版本的區(qū)塊鏈,才是‘正確’的區(qū)塊鏈?”,尋求共識。
一個規(guī)則:
共識規(guī)則是:如果出現(xiàn)分支,那么比特幣網(wǎng)絡上的節(jié)點繼續(xù)保持兩個分支,任何情況下,最長的鏈被確認為——“正確的”鏈。
一些節(jié)點收到黃色區(qū)塊。另一些節(jié)點先收到綠色區(qū)塊。
收到黃色區(qū)塊的礦工,繼續(xù)沿著他們的分支挖礦,就叫分支A。
收到綠色區(qū)塊的礦工,繼續(xù)沿著他們的分支挖礦,就叫分支B。
如果,分支B的礦工,先挖到下一個區(qū)塊——紫色區(qū)塊,向網(wǎng)絡公布了這個消息。
分支A的礦工,注意到分支B最長,會立刻停止分支A的工作,轉(zhuǎn)換到B分支。
這樣,所有的礦工,又都在同一個分支上挖礦了。比特幣交易的順序統(tǒng)一。
這樣,所有的交易,最終都會被驗證。
而黃色區(qū)塊里記錄的交易,會繼續(xù)保持待定狀態(tài),隨后被放到分支B的新區(qū)塊里。
過時塊:
黃色區(qū)塊,就被稱為——過時塊 (Stale block)。
是被礦工成功挖掘的塊,因為不包含在最長鏈中,而被丟棄,等待被重新寫入。
補充:
一筆比特幣交易,需要經(jīng)過6個區(qū)塊的確認。換句話說,其后至少要有5個區(qū)塊被驗證。即:該交易一共有“6個確認”。6這個數(shù)字,是估算得來的。
如果作惡者想進行雙重支付,那么他必須控制非常巨大的算力,才能保證他作假的信息,能寫到最長的分支上??刂七@么巨大的算力,幾乎不可能。
6個區(qū)塊的確認,給予比特幣網(wǎng)絡充分的時間,去統(tǒng)一所有區(qū)塊的順序。
結(jié)論:
所以,6個區(qū)塊的確認,用來——確認該交易在最長分支的區(qū)塊里。
來源: 區(qū)塊鏈研習社?