[發明專利]基于責備機制的狀態驗證方法、系統、P2P網絡有效
| 申請號: | 201910972912.8 | 申請日: | 2019-10-14 |
| 公開(公告)號: | CN112738141B | 公開(公告)日: | 2023-10-24 |
| 發明(設計)人: | 伍鳴;龍凡;楊哲 | 申請(專利權)人: | 上海樹圖區塊鏈研究院 |
| 主分類號: | H04L67/104 | 分類號: | H04L67/104;G06Q40/04 |
| 代理公司: | 北京友誼嘉知識產權代理事務所(普通合伙) 16075 | 代理人: | 張會會 |
| 地址: | 200030 上海*** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 責備 機制 狀態 驗證 方法 系統 p2p 網絡 | ||
本發明涉及一種基于責備機制的區塊狀態驗證方法,包括:對于一全節點,驗證當前主鏈上的任一區塊的交易狀態,判斷該任一區塊是否為狀態正確區塊;找出該任一區塊的向前正確區塊和責備區塊;生成該任一區塊的第三狀態信息;當一輕節點驗證該當前主鏈上的待驗區塊的交易狀態時,從該全節點獲取該待驗區塊的驗證狀態信息,或確定該待驗區塊的追責區塊,從該全節點獲取該追責區塊的所有責備區塊和該追責區塊的驗證狀態信息,與該輕節點本地存儲的該追責區塊的第三狀態信息進行比較,以驗證該全節點提供的驗證狀態信息的真偽。
技術領域
本發明屬于互聯網技術領域,具體涉及一種區塊鏈系統的交易狀態驗證方法及系統。
背景技術
區塊鏈系統由于網絡延遲等多方面的原因無法完全避免賬本結構中的分叉。在許多區塊鏈的共識協議算法中,雖然主鏈上的區塊的交易執行狀態是需要驗證的,但分叉鏈上的區塊通常并不需要或無法進行驗證。因此,驗證分叉鏈上的區塊執行狀態會造成嚴重的額外開銷。然而,許多的共識算法對于主鏈的選擇需要一定的時間才能收斂。在未收斂的過程中,靠近賬本末端的主鏈會發生若干次變化。于是,某一時刻在分叉鏈上的區塊可能在下一個時刻變成主鏈區塊。因此,如果在分叉鏈上的區塊不進行狀態驗證,會使得主鏈上的區塊所存的狀態哈希值并不正確,從而無法為輕節點提供狀態證明。本發明提出了一種基于責備機制的狀態驗證方法,使得全節點無需驗證分叉鏈上的交易執行狀態,同時又能夠為輕節點提供主鏈區塊上的狀態證明,從而避免了不必要的計算開銷。
目前區塊鏈系統中,每個區塊頭部會存儲該區塊執行之后的狀態信息。當全節點接收到網絡中傳來的區塊后,它執行該區塊,并驗證執行之后的狀態信息是否與該區塊頭中存儲的狀態信息一致。
全節點維護區塊鏈賬本中的多條鏈并根據共識算法選擇一條主鏈,其他鏈為分叉鏈。全節點接收網絡中其他節點傳播出來的區塊,并將該區塊接入到相應的鏈上;全節點執行該區塊所在的鏈直到該區塊的位置,然后驗證該區塊的狀態信息;同時,全節點根據這個新收到的區塊重新選擇主鏈。
主鏈的選擇依賴于區塊狀態信息的驗證。這導致主鏈和分叉鏈上的區塊的狀態信息都需要去驗證。然而,分叉鏈上的狀態信息對于輕節點來說并沒有用。所以分叉鏈上狀態信息的驗證造成了計算的浪費。
發明內容
針對現有技術中存在的問題,本發明提出一種基于責備機制的區塊狀態驗證方法,僅對主鏈上的區塊進行交易狀態驗證,通過增加責備信息和狀態信息,使得全節點無需驗證分叉鏈上的交易執行狀態,同時又能夠為輕節點提供主鏈區塊上的狀態證明,從而避免不必要的計算開銷。。
具體來說,本方法包括:對于一全節點,驗證當前主鏈上的任一區塊的交易狀態,以該任一區塊的真實Merkle樹根哈希值為第一狀態信息,以該任一區塊區塊頭存儲的Merkle樹根哈希值為第二狀態信息;若該第一狀態信息與該第二狀態信息相等,則該任一區塊為狀態正確區塊,反之為狀態錯誤區塊;以距離該任一區塊最近的向前的狀態正確區塊為該任一區塊的向前正確區塊;以該任一區塊和其向前正確區塊之間的區塊為該任一區塊的責備區塊;當該任一區塊存在責備區塊時,以該任一區塊和其所有責備區塊的第一狀態信息,生成該任一區塊的第三狀態信息,并以該主鏈區塊為其責備區塊的追責區塊,反之,則以該任一區塊的第一狀態信息生成該任一區塊的第三狀態信息;當一輕節點驗證該當前主鏈上的待驗區塊的交易狀態時,從該全節點獲取該待驗區塊的驗證狀態信息,或確定該待驗區塊的追責區塊,從該全節點獲取該追責區塊的所有責備區塊和該追責區塊的驗證狀態信息,與該輕節點本地存儲的該追責區塊的第三狀態信息進行比較,以驗證該全節點提供的驗證狀態信息的真偽。
本發明所述的區塊狀態驗證方法,其中對于鏈入分叉鏈的區塊,該全節點不驗證其交易狀態。
本發明所述的區塊狀態驗證方法,其中該當前主鏈中,當區塊BN-M為區塊BN的向前正確區塊時,區塊BN的責備信息blameN=M-1,其中,M、N為正整數,M<N,M≥1。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海樹圖區塊鏈研究院,未經上海樹圖區塊鏈研究院許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910972912.8/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種焊接設備的全自動上料下料設備
- 下一篇:乙苯氧化脫氫生產苯乙烯的方法





