Blockchain
改變比特幣區塊鏈只需要 20,000 台電腦?
Google說
截至目前,比特幣網路上執行著大約 12,130 個公共節點。
所以在附近的一個小城市,有七萬人。如果假設 1 戶平均有 3 人,則有 23,333 戶。
這是否意味著,如果每個家庭使用價值 5000 美元的 PC 執行一個比特幣節點並提供一些“假數據”,那麼現在這 23,333 個節點將成為大多數節點,並且可以隨心所欲地改變比特幣區塊鏈?
PS也許“假數據”太模糊了。怎麼樣:不是所有的假數據,而是一個假條目,上面寫著“將 10 BTC 從地址 1 轉移到地址 2?”
區塊鏈不是由多數票決定的,如果大部分節點聲稱替代鍊是主鏈,則不一定會改變。相反,主鍊是由每個節點獨立確定的,所有節點都獨立得出相同的結論,因為它們都遵循相同的規則集。
因此,即使攻擊者能夠擁有比誠實節點更多的節點,並且這些節點正在廣播一條備用鏈,該鏈中的所有塊仍然必須通過誠實節點的驗證,然後這些誠實節點才會接受這些塊。這意味著所有交易必須有效,每個區塊的工作證明必須有效等。該替代鏈必須有效才能被其他節點接受,無論有多少惡意節點聲稱它是主鏈.
如果替代鏈包含無效的“假數據”,則整個鏈將被視為無效而被拒絕,並且沒有誠實節點會接受它。如果替代鍊是完全有效的,並且如果它的累積工作量比誠實節點目前認為的主鏈多,那麼誠實節點將切換到該替代鏈。
你所描述的是一次日食攻擊——如果城市執行足夠多的帶有“故障”區塊鏈的節點,他們可以使連接到網路的節點相信該區塊鍊是現實。然而,這個鏈在它包含的雜湊值上會有所不同,因此客戶端會拒絕它。
其中有檢查點雜湊被硬編碼到客戶端中: 哪些塊成為檢查點?
您描述的“假數據”很容易從更高的工作量證明鏈中消除歧義(無論您擁有多少台電腦都無法偽造,因為它需要所有礦工多年來積累的大量雜湊值) .