• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    區塊同步方法、裝置、計算機以及存儲介質制造方法及圖紙

    技術編號:24331163 閱讀:33 留言:0更新日期:2020-05-29 19:39
    本申請實施例公開了一種區塊同步方法,包括:第一節點設備獲取第二節點設備發送的交易區塊,所述交易區塊的區塊頭中包括多個核心節點的投票信息及區塊頭屬性參數;檢測所述區塊頭屬性參數的合法性;根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果;若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則將所述交易區塊加入所述第一節點設備對應的交易賬本中。采用本申請,可以保障同步的區塊的真實有效性,以提高業務數據的準確性。

    【技術實現步驟摘要】
    區塊同步方法、裝置、計算機以及存儲介質
    本申請涉及區塊鏈
    ,尤其涉及一種區塊同步方法、裝置、計算機以及存儲介質。
    技術介紹
    由于區塊鏈的去中心及防篡改的特性,使得區塊鏈的應用越來越廣泛,在區塊鏈中節點間進行區塊同步時,確保區塊數據的準確性也就極為重要。當前,在區塊鏈中的節點間進行區塊同步時,正在同步區塊的節點一般通過先同步區塊的區塊頭,校驗區塊頭中所包含的前繼區塊哈希和該區塊對應的前繼區塊的哈希值是否一致,在兩者一致的情況下,將該區塊寫入該節點的賬本中,這種基于哈希值對比的簡單校驗,使得該節點同步的區塊中可能存在部分數據的真實性無法得到驗證,也就可能導致存在該節點所同步的區塊與合法的核心節點中的區塊不一致的情況,從而降低同步的區塊的真實有效性。
    技術實現思路
    本申請實施例提供了一種區塊同步方法和裝置,可以提高同步的區塊的準確性。本申請實施例一方面提供了一種區塊同步方法,包括:第一節點設備獲取第二節點設備發送的交易區塊,所述交易區塊的區塊頭中包括多個核心節點的投票信息及區塊頭屬性參數;檢測所述區塊頭屬性參數的合法性;根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果;若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則將所述交易區塊加入所述第一節點設備對應的交易賬本中。本申請實施例一方面提供了一種區塊同步裝置,所述裝置包括:第一獲取模塊,用于第一節點設備獲取第二節點設備發送的交易區塊,所述交易區塊的區塊頭中包括多個核心節點的投票信息及區塊頭屬性參數;檢測模塊,用于檢測所述區塊頭屬性參數的合法性;第一確定模塊,用于根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果;添加模塊,用于若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則將所述交易區塊加入所述第一節點設備對應的交易賬本中。其中,所述投票信息包括投票區塊哈希;所述裝置還包括:第二確定模塊,用于根據所述區塊頭屬性參數確定所述交易區塊的區塊頭哈希;所述第一確定模塊,包括:對比單元,用于對比所述區塊頭哈希與多個所述投票信息對應的投票區塊哈希;第一確定單元,用于若多個所述投票信息中存在非法投票信息,則確定所述交易區塊的所述共識結果為共識失敗結果;所述非法投票信息對應的投票區塊哈希與所述區塊頭哈希不同;所述第一確定單元,還用于若所述多個投票信息均為合法投票信息,則確定所述交易區塊的所述共識結果為所述共識成功結果。其中,所述交易區塊的區塊頭中的所述投票信息還包括對應核心節點的標識及投票簽名;所述第一確定模塊,包括:第一獲取單元,用于獲取合法核心節點列表;所述合法核心節點列表包括所述多個核心節點的標識及每個標識對應的公鑰;第二確定單元,用于若所述多個核心節點中存在不屬于所述合法核心節點列表的核心節點,則確定所述交易區塊的所述共識結果為共識失敗結果;投票驗簽單元,用于若所述多個核心節點均屬于所述合法核心節點列表,則根據所述核心節點的標識獲取所述核心節點的公鑰,采用所述核心節點的公鑰對對應核心節點的投票簽名進行驗簽;所述第二確定單元,還用于若所述多個核心節點中存在投票簽名驗簽失敗的核心節點,則確定所述交易區塊的所述共識結果為共識失敗結果;所述第二確定單元,還用于若所述多個核心節點的投票簽名均驗簽成功,則確定所述交易區塊的所述共識結果為所述共識成功結果。其中,所述第一確定模塊,包括:統計單元,用于將所述多個核心節點的投票信息中投票成功的投票信息確定為目標投票信息,統計所述目標投票信息的投票數量;第三確定單元,用于若所述投票數量小于投票閾值,則確定所述交易區塊的所述共識結果為共識失敗結果;所述第三確定單元,還用于若所述投票數量大于或等于所述投票閾值,則確定所述交易區塊的所述共識結果為所述共識成功結果。其中,所述區塊頭屬性參數包括所述交易區塊的前繼哈希值及所述交易區塊的區塊高度;所述檢測模塊,包括:第二獲取單元,用于獲取所述交易區塊的所述前繼哈希值及所述區塊高度;第一查找單元,用于根據所述區塊高度確定所述交易區塊的前繼區塊高度,基于所述前繼區塊高度從所述交易賬本中查找所述交易區塊的前繼區塊;第四確定單元,用于若未查找到所述前繼區塊,則確定所述區塊頭屬性參數為非法參數;所述第四確定單元,還用于若查找到所述前繼區塊,則獲取所述前繼區塊的區塊頭哈希值,若所述前繼區塊的區塊頭哈希值與所述前繼哈希值不同,則確定所述區塊頭屬性參數為非法參數;所述第四確定單元,還用于若所述前繼區塊的區塊頭哈希值與所述前繼哈希值相同,則確定所述區塊頭屬性參數為所述合法參數。其中,所述檢測模塊,包括:第三獲取單元,用于獲取區塊頭屬性集合,所述區塊頭屬性集合包括多個區塊頭屬性;第二查找單元,用于從所述交易區塊的區塊頭中查找每個區塊頭屬性對應的區塊頭屬性參數;第五確定單元,用于若所述多個區塊頭屬性中存在缺失區塊頭屬性,則確定所述區塊頭屬性參數為非法參數;所述缺失區塊頭屬性在所述區塊頭中無對應的所述區塊頭屬性參數。其中,所述裝置還包括:第二獲取模塊,用于獲取所述交易區塊的區塊體中的交易數據,根據所述交易數據獲取所述交易區塊的查驗默克爾根;所述檢測模塊,包括:第五獲取單元,用于獲取所述交易區塊的區塊頭屬性參數中的默認默克爾根;第六確定單元,用于若所述默認默克爾根與所述查驗默克爾根不相同,則確定所述區塊頭屬性參數為非法參數;所述第六確定單元,還用于若所述默認默克爾根與所述查驗默克爾根相同,則確定所述區塊頭屬性參數為所述合法參數。其中,所述交易區塊還包括區塊生成簽名;所述檢測模塊,包括:第六獲取單元,用于獲取所述交易區塊的所述區塊生成簽名及所述交易區塊的生成核心節點的公鑰;生成驗簽單元,用于采用所述生成核心節點的公鑰對所述區塊生成簽名進行驗簽;第七確定單元,用于若驗簽不通過,則確定所述區塊頭屬性參數為非法參數;所述第七確定單元,還用于若驗簽通過,則確定所述區塊頭屬性參數為合法參數。其中,所述裝置還包括:第三確定模塊,用于若所述共識結果為共識失敗結果,則在所述多個核心節點中確定異常核心節點,所述異常核心節點為具有異常的投票信息的核心節點;刪除模塊,用于刪除所述交易區塊;廣播模塊,用于廣播投票信息異常消息,所述投票信息異常消息包括所述異常核心節點,以使所述多個核心節點對所述異常核心節點進行核驗。其中,所述裝置還包括:解析模塊,用于若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則獲取所述交易區塊的區塊體中的交易數據,解析所述交易數據得到交易過程;執行模塊,用于執行所述交易過程,得到所述交易過程的執行結果;存儲模塊,用于本文檔來自技高網...

    【技術保護點】
    1.一種區塊同步方法,其特征在于,所述方法包括:/n第一節點設備獲取第二節點設備發送的交易區塊,所述交易區塊的區塊頭中包括多個核心節點的投票信息及區塊頭屬性參數;/n檢測所述區塊頭屬性參數的合法性;/n根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果;/n若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則將所述交易區塊加入所述第一節點設備對應的交易賬本中。/n

    【技術特征摘要】
    1.一種區塊同步方法,其特征在于,所述方法包括:
    第一節點設備獲取第二節點設備發送的交易區塊,所述交易區塊的區塊頭中包括多個核心節點的投票信息及區塊頭屬性參數;
    檢測所述區塊頭屬性參數的合法性;
    根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果;
    若所述區塊頭屬性參數為合法參數,且所述共識結果為共識成功結果,則將所述交易區塊加入所述第一節點設備對應的交易賬本中。


    2.如權利要求1所述的方法,其特征在于,所述投票信息包括投票區塊哈希;所述方法還包括:
    根據所述區塊頭屬性參數確定所述交易區塊的區塊頭哈希;
    所述根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果,包括:
    對比所述區塊頭哈希與多個所述投票信息對應的投票區塊哈希;
    若多個所述投票信息中存在非法投票信息,則確定所述交易區塊的所述共識結果為共識失敗結果;所述非法投票信息對應的投票區塊哈希與所述區塊頭哈希不同;
    若所述多個投票信息均為合法投票信息,則確定所述交易區塊的所述共識結果為所述共識成功結果。


    3.如權利要求1所述的方法,其特征在于,所述交易區塊的區塊頭中的所述投票信息還包括對應核心節點的標識及投票簽名;
    所述根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果,包括:
    獲取合法核心節點列表;所述合法核心節點列表包括所述多個核心節點的標識及每個標識對應的公鑰;
    若所述多個核心節點中存在不屬于所述合法核心節點列表的核心節點,則確定所述交易區塊的所述共識結果為共識失敗結果;
    若所述多個核心節點均屬于所述合法核心節點列表,則根據所述核心節點的標識獲取所述核心節點的公鑰,采用所述核心節點的公鑰對對應核心節點的投票簽名進行驗簽;
    若所述多個核心節點中存在投票簽名驗簽失敗的核心節點,則確定所述交易區塊的所述共識結果為共識失敗結果;
    若所述多個核心節點的投票簽名均驗簽成功,則確定所述交易區塊的所述共識結果為所述共識成功結果。


    4.如權利要求1所述的方法,其特征在于,所述根據所述交易區塊的區塊頭中的所述投票信息確定所述交易區塊的共識結果,包括:
    將所述多個核心節點的投票信息中投票成功的投票信息確定為目標投票信息,統計所述目標投票信息的投票數量;
    若所述投票數量小于投票閾值,則確定所述交易區塊的所述共識結果為共識失敗結果;
    若所述投票數量大于或等于所述投票閾值,則確定所述交易區塊的所述共識結果為所述共識成功結果。


    5.如權利要求1所述的方法,其特征在于,所述區塊頭屬性參數包括所述交易區塊的前繼哈希值及所述交易區塊的區塊高度;
    所述檢測所述區塊頭屬性參數的合法性,包括:
    獲取所述交易區塊的所述前繼哈希值及所述區塊高度;
    根據所述區塊高度確定所述交易區塊的前繼區塊高度,基于所述前繼區塊高度從所述交易賬本中查找所述交易區塊的前繼區塊;
    若未查找到所述前繼區塊,則確定所述區塊頭屬性參數為非法參數;
    若查找到所述前繼區塊,則獲取所述前繼區塊的區塊頭哈希值,若所述前繼區塊的區塊頭哈希值與所述前繼哈希值不同,則確定所述區塊頭屬性參數為非法參數;
    若所述前繼區塊的區塊頭哈希值與所述前繼哈希值相同,則確定所述區塊頭屬性參數為所述合法參數。


    6.如權利要求1所述的方法,其特征在于,所述檢測所述區塊頭屬性參數的合法性,包括:
    獲取區塊頭屬性集合,所述區塊頭屬性集合包括多個區塊頭屬性;
    從所述交易區塊的區塊頭中查找每個區塊頭屬性對應的區塊頭屬性參數;
    若所述多個區塊頭屬性中存在缺失區塊頭屬性,則確定所述區塊頭屬性參數為非法參數;所述缺失區塊頭屬性在所述區塊頭中無對應的所述區塊頭屬性參數。


    7.如權利要求1所述的方法,其特征在于,所述方法還包括:
    獲取所述交易區塊的區塊體中的交易數據,根據所述交易數據...

    【專利技術屬性】
    技術研發人員:劉攀
    申請(專利權)人:騰訊科技深圳有限公司
    類型:發明
    國別省市:廣東;44

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 久久天堂av综合色无码专区| 红桃AV一区二区三区在线无码AV| 亚洲成a人在线看天堂无码| 午夜麻豆国产精品无码| 无码天堂亚洲国产AV| 潮喷无码正在播放| 久久久久亚洲AV成人无码| 亚洲av无码专区在线电影天堂 | 无码精品人妻一区二区三区AV| 久久久久无码精品| 无码乱肉视频免费大全合集| 亚洲男人在线无码视频| 亚洲综合无码一区二区痴汉| 亚洲精品97久久中文字幕无码 | 亚洲AV无码精品色午夜果冻不卡| 亚洲人成无码网站在线观看| 国产在线无码视频一区二区三区| 免费看国产成年无码AV片| 无码乱人伦一区二区亚洲| 亚洲男人在线无码视频| 永久免费无码网站在线观看 | 免费A级毛片无码A∨中文字幕下载 | 亚洲日韩精品无码一区二区三区| 性生交片免费无码看人| 无码精品一区二区三区免费视频| 亚洲国产精品无码久久久久久曰 | yy111111少妇影院无码| 亚洲一本到无码av中文字幕| 亚洲AV无码成人精品区蜜桃| 自拍偷在线精品自拍偷无码专区| 亚洲AV无码一区二区三区牲色 | 午夜无码中文字幕在线播放| 亚洲精品无码专区在线| 免费A级毛片无码视频| 日韩精品人妻系列无码专区免费 | 午夜不卡久久精品无码免费| 亚洲V无码一区二区三区四区观看 亚洲爆乳精品无码一区二区三区 亚洲爆乳无码一区二区三区 | 成人av片无码免费天天看| 国产精品va无码二区| 国产成人无码免费视频97| 无码人妻一区二区三区免费视频 |