[發明專利]一種區塊鏈數據裁剪的方法、系統及存儲介質有效
| 申請號: | 201910936657.1 | 申請日: | 2019-09-29 |
| 公開(公告)號: | CN110727644B | 公開(公告)日: | 2022-06-24 |
| 發明(設計)人: | 石寧;甘子榮;李達;王晨旭 | 申請(專利權)人: | 南京金寧匯科技有限公司 |
| 主分類號: | G06F16/16 | 分類號: | G06F16/16;G06F16/22;G06Q20/38 |
| 代理公司: | 北京弘權知識產權代理有限公司 11363 | 代理人: | 李少丹;許偉群 |
| 地址: | 211800 江蘇省南京市江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 區塊 數據 裁剪 方法 系統 存儲 介質 | ||
1.一種區塊鏈數據裁剪的方法,其特征在于:包括以下步驟:
根據區塊鏈中各個節點的投票結果,確定檢查點;
生成檢查點的狀態數據庫及該狀態數據庫的哈希值;
將所述哈希值加入交易信息,并將該交易信息打包進預指定的區塊;
通過區塊鏈節點對所述預指定的區塊形成共識后,將檢查點之前的區塊刪除;
所述方法還包括初始化新加入節點數據的步驟;
所述初始化新加入節點數據這一步驟,包括以下步驟:
基于確定的檢查點,同步處于檢查點之后且包括檢查點所在位置的所有區塊數據;
同步得到檢查點的狀態數據庫文件;
計算狀態數據庫文件的哈希值;
根據計算得到的哈希值確定狀態數據庫文件的合法性;
根據合法的狀態數據庫文件初始化狀態數據庫;
根據確定的檢查點遍歷處于檢查點之后的所有區塊的交易數據,得到最新的狀態數據庫;
所述根據計算得到的哈希值確定狀態數據庫文件的合法性這一步驟,在新加入的節點的初始化過程中,包括以下步驟:
節點首先從其他節點同步處于最新的檢查點及最新的檢查點后的所有區塊;
節點從其他節點中同步得到針對最新的檢查點的狀態數據庫文件;
節點檢查最新的檢查點區塊中的裁剪請求交易中的字段和該交易中指定的區塊高度中的狀態數據庫文件共識交易中的字段是否一致;
節點計算狀態數據庫文件的哈希值,并和最新的檢查點對應的狀態數據庫文件共識交易中的狀態數據庫文件哈希值比較,如果比較結果一致則表示合法,否則不合法。
2.根據權利要求1所述的一種區塊鏈數據裁剪的方法,其特征在于:
具體的,所述節點檢查最新的檢查點區塊中的裁剪請求交易中的字段和該交易中指定的區塊高度中的狀態數據庫文件共識交易中的字段是否一致這一步驟,具體包括如下步驟:
確定裁剪請求交易與狀態數據庫文件共識交易中的檢查點區塊高度相等;
確定裁剪請求交易與狀態數據庫文件共識交易中的狀態數據庫文件共識區塊高度相等;
確定裁剪請求交易的哈希值與狀態數據庫文件共識交易中的裁剪請求交易哈希值相同。
3.根據權利要求2所述的一種區塊鏈數據裁剪的方法,其特征在于:所述通過區塊鏈節點對所述預指定的區塊形成共識這一步驟,包括以下步驟;
檢查對裁剪請求交易與相應的狀態數據庫文件共識交易中的字段是否相對一致;
檢查節點本地的針對同一個檢查點的狀態數據庫文件的哈希值是否和狀態數據庫文件共識交易中指定的狀態數據庫文件哈希值相同。
4.根據權利要求1所述的一種區塊鏈數據裁剪的方法,其特征在于:所述生成檢查點的狀態數據庫及該狀態數據庫的哈希值這一步驟,包括以下步驟:
執行檢查點及檢查點之前的區塊,得到狀態數據庫;
生成該狀態數據庫的標準格式數據庫文件;
計算標準格式數據庫文件的哈希值。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京金寧匯科技有限公司,未經南京金寧匯科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910936657.1/1.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





