Blockchain

目前雜湊的可持續性

  • August 23, 2017

我是比特幣/區塊鏈外行。我只是想了解區塊的散列以及隨著更多礦工參與而增加的難度(零的數量)。我知道這是為了保持 10 分鐘的雜湊率。

我知道生成更困難的雜湊值很有吸引力,因為它使鏈更難以重寫,因此更安全。

在我繼續閱讀時,所需計算能力的升級使用是我心中的一個衝突點。我們不能繼續增加難度,因為雜湊是固定長度的,需要唯一的嗎?不能一直加零。我錯過了什麼嗎?

計劃是什麼,使用不同算法的更長雜湊摘要?

我可以閱讀有關雜湊算法開發的研究嗎?

除非在計算方面取得巨大進步(在這種情況下,我們還有其他問題需要擔心),否則我們不會在中短期內用完唯一的雜湊值。

當比特幣在目標前面添加一個零時,它不是十六進制的零(散列通常是如何視覺化的),它是以二進制添加它。差別很大:

0FFF -> 00FF

二進製表示:

0000111111111111 -> 0000000011111111

真正發生的是這樣的:

0000111111111111 -> 0000011111111111

或十六進制:

0FFF -> 07FF

這意味著到達您的關注點所需的時間是您想像的 4 倍。另外,讓我們看看您發布的塊雜湊:

000000000000000000bbfa2afceac352a16db934867103aa85e6a83dc0fb6dfb

目前有 18 個前導十六進制零,這轉換為 72 個前導二進制零。這留下 184 位 (256 - 72) 用於唯一雜湊值,或 2^184 個唯一雜湊。所以現在,如果難度從未增加並假設有 10 分鐘的出塊時間,那仍然留給我們 4.6610^50 年的雜湊值(大約是宇宙年齡的 5 倍)。當難度翻倍時,我們現在只有 183 位的雜湊空間。這意味著它大約是 4.6610^25 年,或者大約是剩餘雜湊空間宇宙年齡的 2.5 倍。正如您所看到的,要達到雜湊空間是合理問題的難度需要一些時間。

然而,真正的問題不在於總散列空間,而在於可能的衝突。假設我們已經到了只有 56 位可用於散列空間的地步。首先,這將需要比特幣網路中真正大規模的散列增加(難度必須翻倍 128 倍),但我們將在此範例中忽略這一點。雖然 2^56 在現代密碼學中可能看起來像一個小雜湊,但對於這個案例,它不是。我們仍然有足夠的雜湊值來覆蓋整個宇宙的年齡,但是我們再次擔心有人會找到一個雜湊值與現有區塊(或競爭區塊)匹配的區塊。

那麼我們會怎麼做呢?我敢肯定,如果出現這種情況會引起一些爭論,但我認為簡單的解決方案是拒絕該雜湊,就好像它高於目標難度一樣。礦工將被迫繼續散列,直到找到另一個區塊。畢竟,雜湊空間仍然有足夠的空間,即使減少到 56 位(目前這是荒謬的)。對協議的這種更改只會是軟分叉。

總而言之,即使我們對未來計算技術做出了最好的估計,比特幣雜湊的剩餘時間也最好以宇宙年齡的倍數來衡量。即使這成為一個問題,一個簡單的軟分叉也可以解決它。這裡真的沒什麼好擔心的。

引用自:https://bitcoin.stackexchange.com/questions/58535