Nxt

鍛造是如何工作的?

  • July 29, 2014

我正在尋找解釋如何驗證偽造塊的技術答案。

我已經查看了 NXT wiki 和他們的白皮書,但沒有找到詳細的解釋。

下面是目前鍛造的工作原理的解釋,將來會稍微改變。

每個塊都有兩個欄位 - BlockSignature 和 GenerationSignature。

前者是用生成區塊的賬戶的私鑰對區塊數據進行簽名填充,與鍛造過程幾乎沒有關係。

後者通過計算 SHA256(GenerationSignatureOfPreviousBlock+PublicKeyOfAccount) 填充。

雜湊的前 8 個字節給出了一個小端格式的無符號 64 位數字,這個數字稱為“命中”。

每個賬戶都有一個所謂的 EffectiveBalance,如果賬戶持有更多的硬幣,它通常(但不總是)更高。EffectiveBalance 乘以對所有帳戶都相同的某個值 - BaseTarget(它會調整每個塊,試圖將塊生成速率保持在 1 分鐘) - 並乘以自上一個塊以來經過的秒數。結果值稱為“目標”。

如果“命中”小於“目標”,則對等方接受一個塊並將其附加到區塊鏈。

這是鍛造的重要組成部分。我省略了諸如驗證交易簽名、檢查雙重支出等顯而易見的事情。

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