如果前方數百個街區的私人分叉試圖合併回來會發生什麼?
假設礦池已經離開主網很長時間了,他們落後了100個左右的塊,但在此期間設法挖了200個塊(比如說,之前有33%的一些組合,故意選擇容易擴展的塊,和 …)。
顯然,這可以通過降低難度來實現,但我認為有針對這種明顯攻擊的保護措施。更新:假設已驗證;降低難度在這裡不起作用。
我發現了兩個大致相似的問題,但似乎都不對:
顯而易見的答案,如果它只包含探勘的交易,將是手動丟棄它,但我認為這個假設不會被證明是有效的。
我認為這是最長鏈與最高難度的重複,這讓我感到困擾。將其標記為重複的前提是不存在針對雜湊的一整類加密攻擊,以及許多其他事情。
正如 Murch 所暗示的,一種可能性是預先建構一個長鏈,然後使用對雜湊的攻擊需要幾個小時來建構一個具有完全給定雜湊的塊。這可能需要等到出現異常脆弱的塊,但這並不重要。
我終於猜到了無惡意版本可能是什麼樣子,我發現了這一點:場景:災難將 Internet 分裂成幾十個未連接的片段基本上,如果最大的連接網路 << 50%,就會發生壞事。
我終於找到了答案(很老):https ://bitcointalk.org/index.php?topic=823.msg9668#msg9668
knightmb:“老客戶應該一直接受它,直到發布的最後一個快照”
如果它仍然是真的,這實際上回答了我的問題。
正如 Murch 所暗示的,一種可能性是預先建構一個長鏈,然後使用對雜湊的攻擊需要幾個小時來建構一個具有完全給定雜湊的塊。這可能需要等到出現異常脆弱的塊,但這並不重要。
我看不出我在哪裡暗示過,但這絕對行不通。
幾個小時來構造一個具有給定雜湊值的塊。
塊雜湊是 SHA-256d 雜湊。在可預見的未來,2^256 的空間太大而無法暴力破解。絕對不可能在“幾個小時”內完成。
異常脆弱的塊
那應該是什麼?塊不會或多或少容易受到攻擊。
預建長鏈
如果您更改了第一個元素,整個鏈將變為無效。每個區塊都建立在其前身的區塊雜湊之上。因此,兩條區塊鏈不能任意相互附加。
正如上面評論中已經描述的那樣:
大量低難度塊
重要的不是塊數,而是以總難度衡量的總“權重”。