Mining-Theory

誰從前一個區塊中選擇隨機數和散列?

  • August 3, 2022

當探勘一個塊時,誰可以從前一個塊中選擇散列、隨機數及其調整。是所有選擇的礦工還是成功找到區塊的礦工?

對於任何一個答案,如果他們是曾經設置過隨機數的人,他們怎麼不知道隨機數的正確答案?

上一個區塊雜湊

當探勘一個塊時,誰可以從前一個塊中選擇雜湊,

沒有人。

它沒有被選中。鏈中的目前頂部塊是已知的,其內容是固定的。雜湊值僅取決於內容。因此目前頂塊的雜湊也是一個固定值。

一個好的加密散列算法,例如 SHA256,會產生一個無法從被散列的數據中預測的值。除了做所有實際計算雜湊的工作。更改數據中的一位會使雜湊結果以完全不可預測的方式大不相同。雜湊看起來完全隨機。


隨機數

如果他們是曾經設置過隨機數的人,他們怎麼不知道隨機數的正確答案?

隨機數不是有答案的東西。

nonce 只是一個數值數據項,其值沒有意義。它是供礦工使用的,如下所述。


挖礦中的雜湊和隨機數

讓我們看看區塊雜湊和隨機數在挖礦中的作用:

一個新塊的頭包含對前一個塊的引用。在創建他們的塊模板時,礦工必須將前一個塊引用設置為塊鏈中目前頂部塊的塊 ID(雜湊)。這對於他們的新區塊成為鏈的下一個頂級區塊是必要的。每個塊連結到前一個塊。

然後礦工計算他們新區塊的雜湊值,如果結果雜湊值高於網路目標,則數據排列失敗,他們必須更改區塊模板中的某些內容並重試。他們可以更改的一件事是為此目的提供的塊頭中的數字。該數字稱為隨機數。

如果礦工發現一組雜湊值小於目標的數據,他們就會發布它。在找到一組具有低雜湊值的數據之前,需要進行多次嘗試。

所有節點(錢包等)檢查新塊的每個部分,要麼丟棄它,要麼將其添加到他們的區塊鏈副本中。

每個節點所做的檢查之一是計算塊的雜湊值,看它是否小於網路目標。節點不需要檢查所有礦工失敗的數據安排,他們只看到成功的數據。


看看到底什麼是挖礦?

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