隨機數是指只能使用一次的數字或值。隨機數通常用於身份驗證協定和加密雜湊函數。在區塊鏈技術中,隨機數是指在挖礦過程中用作計數器的偽隨機數。
例如,比特幣礦工需要嘗試猜測一個有效的隨機數。執行多次嘗試來計算滿足某些要求的區塊哈希(即以一定數量的零開頭)。當競爭開採新區塊時,第一個找到產生有效區塊哈希值的隨機數的礦工將被授予將下一個區塊添加到區塊鏈中的權利- 並因此獲得獎勵。
換句話說,挖礦過程包括礦工使用許多不同的隨機數值來執行無數的雜湊函數,直到產生有效的產出。如果礦工的哈希輸出低於預定閾值,則該區塊被認為是有效的並被添加到區塊鏈中。如果產出無效,礦工會繼續嘗試不同的隨機數值。當成功開採和驗證新區塊時,該過程將重新開始。
比特幣內部—以及大多數工作量證明系統——隨機數只是礦工用來迭代哈希計算輸出的隨機數。礦工採用試誤方法,每次計算都採用新的隨機數值。他們這樣做是因為準確猜測有效隨機數的機率接近零。
哈希嘗試的平均次數由協議自動調整,以確保平均每 10 個生成每個新區塊分鐘。這個過程稱為難度調整,決定了挖掘閾值(即區塊哈希需要以多少個零開始才能被視為有效)。挖掘新區塊的難度與區塊鏈系統的哈希能力(哈希率)有關。專用於網路的哈希能力越多,門檻就越高,這意味著成為有競爭力和成功的礦工需要更多的運算能力。相反,如果礦工決定停止挖礦,難度將會調整,閾值將會下降,因此挖礦所需的算力會減少,但協議將確保區塊生成遵循 10 分鐘的時間表,無論.