[發明專利]塊鏈式賬本中全局狀態的哈希的生成方法、裝置及設備有效
| 申請號: | 202010538203.1 | 申請日: | 2020-06-12 |
| 公開(公告)號: | CN111444196B | 公開(公告)日: | 2020-10-16 |
| 發明(設計)人: | 張淵;李億澤;楊新穎;俞本權;閆文遠 | 申請(專利權)人: | 支付寶(杭州)信息技術有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/23;G06F16/27;G06Q40/04;H04L9/32 |
| 代理公司: | 北京博思佳知識產權代理有限公司 11415 | 代理人: | 陳沖 |
| 地址: | 310000 浙江省杭州市*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 鏈式 賬本 全局 狀態 生成 方法 裝置 設備 | ||
公開了塊鏈式賬本中全局狀態的哈希的生成方法、裝置及設備。在更新塊鏈式賬本中的全局狀態樹時,對新寫入賬本的交易實行批量計算,得到對應于該批次交易的臨時默克爾樹,然后拼接臨時默克爾樹和當前的全局狀態樹,并更新計算所述全局狀態樹的根哈希。
技術領域
本說明書實施例涉及信息技術領域,尤其涉及塊鏈式賬本中全局狀態的哈希的生成方法、裝置及設備。
背景技術
在塊鏈式賬本中,通常都會存在一顆記錄全局狀態的全局狀態樹。當前對于全局狀態的更新方式中每新產生一個交易就會計算一次全局狀態所對應的哈希值。在交易頻率較高的場景下,對系統的計算負擔太大。
發明內容
本申請實施例的目的是提供一種在塊鏈式賬本中計算全局狀態的哈希時可以降低系統負載的方案。
為解決上述技術問題,本申請實施例是這樣實現的:
塊鏈式賬本中全局狀態的哈希的生成方法,應用于以塊鏈式賬本存儲數據記錄的中心化的數據庫服務端中,包括:
獲取已經確定需要寫入賬本的多個新交易,其中,所述多個新交易的哈希還沒有寫入全局狀態樹;
根據所述多個新交易的哈希生成對應所述多個新交易的臨時默克爾樹;
合并所述臨時默克爾樹和當前的全局狀態樹,生成以所述多個新交易的哈希為葉子節點的新的全局狀態樹;
獲取所述新的全局狀態樹的根哈希,將所述新的全局狀態樹的根哈希寫入所述賬本中的數據塊的塊頭中。
對應的,本說明書實施例還提供塊鏈式賬本中全局狀態的哈希的生成裝置,應用于以塊鏈式賬本存儲數據記錄的中心化的數據庫服務端中,包括:
獲取模塊,獲取已經確定需要寫入賬本的多個新交易,其中,所述多個新交易的哈希還沒有寫入全局狀態樹;
生成模塊,根據所述多個新交易的哈希生成對應所述多個新交易的臨時默克爾樹;
合并模塊,合并所述臨時默克爾樹和當前的全局狀態樹,生成以所述多個新交易的哈希為葉子節點的新的全局狀態樹;
寫入模塊,獲取所述新的全局狀態樹的根哈希,將所述新的全局狀態樹的根哈希寫入所述賬本中的數據塊的塊頭中。
通過本說明書實施例中所提供的方案,在更新塊鏈式賬本中的全局狀態樹時,對新寫入賬本的交易實行批量計算,得到對應于該批次交易的臨時默克爾樹,然后拼接臨時默克爾樹和當前的全局狀態樹,并更新計算所述全局狀態樹的根哈希,從而降低了全局狀態的更新頻率,降低了系統的計算負載。
應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本說明書實施例。
此外,本說明書實施例中的任一實施例并不需要達到上述的全部效果。
附圖說明
為了更清楚地說明本說明書實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本說明書實施例中記載的一些實施例,對于本領域普通技術人員來講,還可以根據這些附圖獲得其他的附圖。
圖1為本當前技術中更新全局狀態樹的示意圖;
圖2是本說明書實施例提供的一種塊鏈式賬本中全局狀態的哈希的生成方法的流程示意圖;
圖3為本說明書實施例所提供的一種多線程方式生成臨時默克爾樹的示意圖;
圖4為本說明書實施例所提供的一種臨時默克爾樹和當前的全局狀態樹進行拼接的示意圖;
圖5為本說明書實施例所提供的一種塊鏈式賬本中生成數據塊的流程示意圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于支付寶(杭州)信息技術有限公司,未經支付寶(杭州)信息技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010538203.1/2.html,轉載請聲明來源鉆瓜專利網。





