雜湊競猜遊戲的傳遞方式

hashgame777發表於2022-06-01

雜湊競猜遊戲產生的雜湊區塊通過廣播傳遞的方式

由於並不是所有的節點隨時都線上,在廣播新區塊時就必然有離線節點收不到訊息,最終會導致每個節點上的區塊鏈參差不齊,也就失去了分散式賬本的意義。因此,必須要有一種規則將所有節點的資料同步。

因此,當離線節點再次上線時,首先要向其他節點同步資料以獲得自離線至上線這段時間內錯過的區塊。離線節點會與其他節點傳送並交換版本訊息及 getblocks訊息,其中版本訊息記載了本地區塊鏈高度,getblocks訊息記載了本地區塊鏈頂端區塊的雜湊值。通過這兩條資訊,相關節點可以判斷本地區塊鏈是長鏈還是短鏈(理論上離線節點的區塊鏈都是短鏈,因為區塊鏈同步流程是自離線節點上線時自動啟動的)。此時,長鏈會繼續通過inv(inventory)訊息將本地區塊鏈中比短鏈多出的區塊的雜湊值傳播出去,缺少這些區塊的節點便可以通過各自傳送getdata訊息來得到缺失區塊的全部資訊。之後,通過驗證收到的區塊,判斷是否將區塊新增到本地的區塊鏈上。

以上流程也是新區塊的廣播流程。當正在挖礦的節點收到新區塊後,會發現新區塊記錄的父區塊(即前一個區塊)雜湊值與自己現在正在挖的區塊基於的父區塊雜湊值一致,從而確認新區塊已經被挖出。然後正在挖礦的節點會放棄目前的工作,重新開始基於新區塊的雜湊值進行新一輪的運作。

雜湊競猜遊戲的所以資訊都會被打包成一個區塊,也就是在這個區塊裡記錄著遊戲的每一個細節,然後同步到每一位玩家,既快捷又公平


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70018148/viewspace-2898437/,如需轉載,請註明出處,否則將追究法律責任。

相關文章