杜撰

閱讀時間: 2 minuti

Un nonce 指只能使用一次的數字或值。

隨機數通常用於身份驗證協議和 加密哈希函數。 在技​​術背景下 blockchain,隨機數是指在提取過程中用作計數器的偽隨機數。

例如,比特幣礦工在嘗試多次計算滿足特定要求的塊哈希(即以一定數量的零開始)時必須嘗試猜測有效的隨機數。 當競爭開採一個新區塊時,第一個發現隨機數導致有效區塊哈希的礦工有權在區塊鏈中添加下一個區塊-並因此獲得獎勵。

換句話說, 挖礦過程 由礦工執行的哈希函數具有許多不同的nonce值,直到產生有效的輸出為止。 如果礦工的哈希輸出低於預定閾值,則該塊被視為有效並添加到區塊鏈中。 如果輸出無效,礦工會繼續嘗試不同的 nonce 值。 成功提取並驗證新塊後,過程將重新開始。

在比特幣(以及大多數工作量證明系統)中,隨機數只是礦工用來迭代其哈希計算輸出的隨機數。 礦工採用的方法 通過反複試驗,其中每次計算都採用新的 nonce 值。 之所以這樣做,是因為準確猜測有效隨機數的可能性接近於零。

散列嘗試的平均次數由協議自動調整,以確保每個新塊平均每 10 分鐘生成一次。 此過程稱為 難度調整 這是確定提取閾值的原因(即,必須將塊哈希值視為多少個零才被視為有效)。 提取新塊的難度與散列能力的大小有關(哈希率或 hashrate)從事區塊鏈系統。 專用於網絡的哈希能力越多,門檻就越高,這意味著需要更多的計算能力才能成為有競爭力和成功的礦工。 反之,如果礦工決定停止挖礦,難度會調整,閾值會下降,所以挖礦所需的算力會減少,但協議會按照 10 分鐘的時間表生成區塊,無論如何。