JP6945742B2 - ブロックチェーンのデータ処理方法、装置、機器及び媒体 - Google Patents

ブロックチェーンのデータ処理方法、装置、機器及び媒体 Download PDF

Info

Publication number
JP6945742B2
JP6945742B2 JP2020531688A JP2020531688A JP6945742B2 JP 6945742 B2 JP6945742 B2 JP 6945742B2 JP 2020531688 A JP2020531688 A JP 2020531688A JP 2020531688 A JP2020531688 A JP 2020531688A JP 6945742 B2 JP6945742 B2 JP 6945742B2
Authority
JP
Japan
Prior art keywords
synchronization
block
group
signature
synchronous
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020531688A
Other languages
English (en)
Other versions
JP2021506185A (ja
Inventor
シャオ,ウェイ
Original Assignee
バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド
バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド, バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド filed Critical バイドゥ オンライン ネットワーク テクノロジー (ベイジン) カンパニー リミテッド
Publication of JP2021506185A publication Critical patent/JP2021506185A/ja
Application granted granted Critical
Publication of JP6945742B2 publication Critical patent/JP6945742B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本出願は、ブロックチェーン技術に関し、例えば、ブロックチェーンのデータ処理方法、装置、機器及び媒体に関する。
ブロックチェーンは、分散データストレージ、ポイントツーポイント伝送、コンセンサスメカニズム、暗号化アルゴリズムなどのコンピュータ技術の新しいアプリケーションモデルである。
既存のブロックチェーン技術では、あるノードが他のノードからブロックチェーンデータを同期的に取得する必要がある場合、受信されたデータを多重検証して、ブロックの有効性、正当性、及びデータの正しさなどを決定する必要があるため、検証プロセスは、大量のプロセッサの処理リソースを占有し、時間がかかる。
以下は、本明細書で詳細に説明される主題の概要である。本概要は、請求項の保護範囲を制限するためのものではない。
本出願の実施例は、ブロックデータの検証方式を最適化するためにブロックチェーンのデータ処理方法、装置、機器及び媒体を提供する。
本出願の実施例は、ブロックチェーンノードに適用されるブロックチェーンのデータ処理方法を提供し、同期グループ作成トランザクション要求を取得するステップと、前記同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを前記同期グループの同期ブロックとして決定するステップと、前記同期ブロックに基づいて、前記同期グループの同期署名を決定するステップと、前記同期署名をトランザクションデータとしてブロックに記録するステップと、を含む。
本出願の実施例は、ブロックチェーンノードに配置されるブロックチェーンのデータ処理装置をさらに提供し、同期グループ作成トランザクション要求を取得するように構成されるトランザクション要求取得モジュールと、前記同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを前記同期グループの同期ブロックとして決定するように構成される同期ブロック決定モジュールと、前記同期ブロックに基づいて、前記同期グループの同期署名を決定するように構成される同期署名決定モジュールと、前記同期署名をトランザクションデータとしてブロックに記録するように構成される記録モジュールと、を含む。
本出願の実施例は、機器をさらに提供し、一つ又は複数のプロセッサと、一つ又は複数のプログラムを記憶するように構成される記憶装置と、を含み、前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサによって実行される場合に、前記一つ又は複数のプロセッサが、第1の態様のいずれかに記載のブロックチェーンのデータ処理方法を実現する。
本出願の実施例は、コンピュータプログラムが記憶されている媒体をさらに提供し、当該プログラムがプロセッサによって実行される場合に、第1の態様のいずれかに記載のブロックチェーンのデータ処理方法が実現される。
図面と詳細の説明を読んで理解した後に、他の態様を理解することができる。
本出願の実施例における技術案を更に明確に説明するため、以下に、実施例に用いられる図面を簡単に説明する。以下の説明に関わる図面は、本出願の幾つかの実施例に過ぎなく、当業者にとって、創造性な労働をしないことを前提として、これらの図面に基づいて他の図面を取得できることは、明らかである。
本出願の実施例1により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例2により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例3により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例4により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例5により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例6により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例7により提供されるブロックチェーンのデータ処理方法のフローチャートである。 本出願の実施例8により提供されるブロックチェーンのデータ検証方法のフローチャートである。 本出願の実施例9により提供されるブロックチェーンのデータ処理装置の概略構成図である。 本出願の実施例10により提供される機器の概略構成図である。
以下、図面と実施例とを組み合わせて、本出願についてさらに詳しく説明する。なお、ここで説明される具体的な実施例は、単に本出願を解釈するためのものであり、本出願を限定するものではない。また、説明の便宜上、図面には、すべての構成ではなく、本出願に係る部分だけが示されている。
実施例1
図1は、本出願の実施例1により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、ブロックチェーンネットワーク内のデータ処理の場合に適用することができ、例えば、ブロックチェーンネットワークにおいて、あるノードが、他のノードからブロックチェーンデータを同期的に取得するシーンに適用することができる。適用されるブロックチェーンは、パブリックブロックチェーン、プライベートブロックチェーン、又はコンソーシアムブロックチェーンであってもよい。本出願の実施例の技術案は、ブロックチェーンノードに適用され、当該方法は、ブロックチェーンのデータ処理装置によって実行されることができ、当該装置は、ソフトウェア及び/又はハードウェアの方式を採用して実現することができ、ブロックチェーンノードが搭載されるコンピューティング機器に集積されることができる。図1を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S110:同期グループ作成トランザクション要求を取得する。
同期グループは、一つ又は複数のブロックで構成され、同期グループ作成トランザクション要求は、同期グループを作成するためのトランザクション要求を指す。選択可能には、同期グループ作成トランザクション要求には、同期グループに必要なブロックのブロック識別子、同期グループに必要な設置された同期ポイント位置、同期グループの署名方式、又は同期グループの識別子などの情報が含まれることができる。本実施例では、同期グループ作成トランザクション要求が、同期グループを作成するための作成命令であってもよく、ノードが現在のブロック位置に同期ポイントを設置して同期グループを作成するように指示するためのものである。
同期ポイントは、一般に同期グループの終了位置を指すことができ、同期グループの開始位置は、例えば、各同期グループがいずれも前の同期ポイントから開始するか、又はいずれも0番目のブロックから開始するかをデフォルトで設置することができる。ローカルノードは、ブロックチェーンネットワーク内の他のノードによって開始された同期グループ作成トランザクション要求を受信してもよいし、ローカルで同期グループ作成トランザクション要求を開始してもよい。
なお、ローカルノードは、現在のブロック生成ノードであってもよいし、他のブロックチェーンノードであってもよく、ローカルノードが現在のブロックによって生成されるか否かによって、同期グループ作成トランザクション要求を取得する方式が異なる。具体的には、ローカルノードが現在のブロック生成ノードである場合、以下のような方式によって同期グループ作成トランザクション要求を取得することができる。1)ブロックチェーンネットワーク内の任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する。2)ローカルノードは、ブロックチェーンの現在の状態がローカル配置データ又は履歴ブロックに記憶されている同期グループ作成ルールを満たしていることが検出された場合、ローカルで同期グループ作成トランザクション要求を開始する。3)ローカルノードは、同期グループがブロックデータ同期を行う必要がある場合、ローカルで同期グループ作成トランザクション要求を開始する。
これに応じて、ローカルノードが他のブロックチェーンノードである場合、以下のような方式によって同期グループ作成トランザクション要求を取得することができる。1)ブロックチェーンネットワーク内の任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する。2)現在のブロック生成ノードによって開始された同期グループ作成トランザクション要求を受信する。3)ローカルノードは、同期グループがブロックデータ同期を行う必要がある場合、ローカルで同期グループ作成トランザクション要求を開始する。
ブロックデータのセキュリティと信頼性を確保するために、例示的には、同期グループ作成トランザクション要求を取得した後に、制御権限用の公開鍵を使用して同期グループ作成トランザクション要求の作成者の身元を検証するステップを含むこともできる。
なお、同期グループの作成を開始する権限をさらに制御するために、権限が設定されたノードによって同期グループの作成を開始するように制御することができ、例えば、中心ノードによって開始することができる。ブロックチェーン内の中心ノードは、制御権限を持ち、制御権限用の秘密鍵を使用して同期グループ作成トランザクション要求の一部の内容を暗号化して、身元を示すため、ローカルノードは、同期グループ作成トランザクション要求を取得した後に、制御権限用の公開鍵を使用して同期グループ作成トランザクション要求中の少なくとも作成者の身元識別子を含む一部の内容を復号化することができる。その後、復号化された作成者の身元識別子を設定された検証ノードに送信して検証するか、又は復号化された作成者の身元識別子を予め記憶された身元識別子とマッチングして検証することができる。その中、ブロックチェーン内の各ノードは、各ノード身元識別子を記憶するテーブルをローカルでメンテナンスすることができる。身元識別子は、ノード識別子又はネットワークIPアドレスなどであってもよい。
S120:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
その中、同期ブロックは、同期グループを構成するブロックである。最初のブロックは、ブロックチェーンにおける0番目のブロック、すなわち基礎ブロックであってもよい。現在のブロックは、ブロックチェーンネットワークで現在に生成されているブロック、すなわちブロックチェーンネットワークで最新に生成されたブロックを指す。同期グループの同期ブロック数は、最初のブロックと現在のブロックが同一のブロックであるように、一つであってもよいし、複数であってもよい。
なお、現在のブロックは、ブロックチェーンネットワークの実行とともに、絶えず更新されるため、異なる同期グループ間の同期ブロックが重なる。例えば、現在のブロックが10番目のブロックである場合、ブロックチェーンにおける0番目のブロックから10番目のブロックは一つの同期グループであり、現在のブロックが20番目のブロックである時に同期グループの作成を開始した場合、0番目のブロックから20番目のブロックは、一つの同期グループである。本実施例では、同期ポイントは、現在のブロック位置にデフォルトで設置され、且つ同期グループの最後のブロックとし、最初のブロックデフォルトは0番目のブロックである。
具体的には、ローカルノードは、同期グループ作成トランザクション要求に含まれる同期ポイント位置に基づいて、現在のブロックが同期グループの最後のブロックであることを決定し、ブロックチェーンの0から現在のブロックまでの連続ブロックを同期グループの同期ブロックとすることができる。ローカルノードは、同期グループ作成トランザクション要求に含まれるブロック識別子に基づいて、現在のブロックに特定し、ブロックチェーンの0から現在のブロックまでの連続ブロックを同期グループの同期ブロックとすることもできる。同期グループ作成トランザクション要求が作成命令である場合、ローカルノードが同期グループ作成トランザクション要求を取得した後に、現在のブロック位置に一つの同期ポイントを直接に設置し、且つ0から同期ポイント位置までの連続ブロックを同期グループの同期ブロックとして決定することができる。
S130:同期ブロックに基づいて、同期グループの同期署名を決定する。
その中、同期署名は、ある同期グループを一意に識別又は決定するための識別子を指し、同期グループ内に含まれる同期ブロックの情報などを代表するものである。選択可能には、同期グループの同期署名方式は、同期グループ作成トランザクション要求に指定された署名方式であってもよいし、ブロックチェーンネットワークに規定された署名方式であってもよいし、ローカルノードが自身の公開鍵、秘密鍵、又はSHA256などの署名アルゴリズムを使用して決定された署名方式などであってもよい。
具体的には、異なる署名方式によってブロックデータの検証度合いが决定され、後続の実施例は、異なる署名方式によって同期グループの同期署名を決定する実現方式を詳細に説明する。例えば、同期グループ内の各同期ブロックのブロック識別子に基づいて、ハッシュ署名を行って当該同期グループの同期署名を取得することができる。
なお、本実施例が、同期ブロックに基づいて、同期グループの同期署名を決定することは、同期ブロック、同期グループ、及び同期署名の三者間の関連関係を間接的に示しており、後続の同期グループ照会に便利になる。
S140:同期署名をトランザクションデータとしてブロックに記録する。
ローカルノードが同期グループの同期署名を改ざんする確率を低下するために、同期ブロックに基づいて、同期グループの同期署名を決定した後に、同期署名をトランザクションデータとしてブロックに記憶することができる。
選択可能には、同期署名をトランザクションデータとしてブロックに記録するステップは、現在のブロック生成ノードによって、同期署名をトランザクションデータとして現在のブロックに記録するステップと、現在のブロックを他のノードに送信して検証するステップと、を含むことができる。
具体的には、ローカルノードが現在のブロック生成ノードである場合、ローカルノードは、同期ブロックに基づいて、同期グループの同期署名を決定した後に、直接に当該同期グループの同期署名をトランザクションデータとして、現在のブロックに記録する。そして、現在のブロックをブロックチェーン内の他のノードに送信して検証し、他のノードがローカルノードによって送信された現在のブロックを受信した後に、同期グループ作成トランザクション要求を処理し、ローカルノードと同じ方式を採用して当該同期グループの同期署名を計算し、同期署名が現在のブロックにおける同期署名と一致する場合、現在のブロックが有効であることを確認し、現在のブロックをブロックチェーンに記憶する。同期署名が現在のブロックにおける同期署名と一致していない場合、ブロックチェーン内の他のノードに現在のブロック識別子を含むブロック無効情報を送信する。
同期署名をトランザクションデータとしてブロックに記録した後に、ブロックチェーンのいずれかのノードがブロックチェーンを同期しようとする場合、同期署名を検証し、同期署名の検証に合格した後に、同期グループを単位として同期を行い、データ同期レートを加速することができる。
なお、本実施例は、0番目のブロックから現在のブロックまで同期グループを構築するため、毎回最新に構築される同期グループの同期ブロックは、以前に既に構築されたすべて同期グループの同期ブロックをカバーするため、ブロックに最新の同期グループの同期署名を記憶する場合、ブロックチェーンに以前に記憶された同期グループの同期署名が、デフォルトで無効になる。同期ブロックチェーンをダウンロードする必要がある場合、ブロックチェーンでの後ろから前へのトラバーサルによって、最新の同期グループに対応する同期署名を迅速に見つけることができ、すべてのブロックを認識することなく、同期グループの同期署名を取得するのにかかる時間を減らすことができる。また、本実施例では、最初のブロックから構築された同期グループは、ブロックチェーンネットワークに新しく追加したノード同期ブロックチェーンをダウンロードするのにより適しており、一回だけ同期グループの同期署名を検証すればよく、同期グループ内の各ブロックをすべて検証する必要がなく、検証フローを簡略化した。同期にダウンロードする必要があるのがブロックチェーン内の0からある位置までのブロックセグメントである場合、当該ブロックセグメントが属する最も近い一つの同期署名を見つけて使用することができる。
本出願の実施例により提供される技術案によれば、同期グループ作成トランザクション要求を取得した後に、同期グループ作成トランザクション要求に基づいて最初のブロックから現在のブロックまでの同期グループを構築し、ブロックチェーンネットワークに新しく追加したノード同期ブロックチェーンをダウンロードするのにより適する。そして、同期グループを構成する同期ブロックに基づいて、同期グループの同期署名を決定し、その後、同期署名をトランザクションデータとしてブロックに記憶するため、同期署名によって改ざんされた確率を低下する。ブロックチェーンのいずれかのノードがブロックデータを取得しようとする場合、同期グループを単位として検証することができ、ブロックチェーン内のノードがブロックチェーンデータを検証するために新しいアイデアを提供し、ブロックデータの検証方式を最適化することができる。ブロックデータを同期するためのシーンに使用された場合、複数の同期ブロックを一度に検証し、データ同期を加速させることができる。
実施例2
図2は、本出願の実施例2により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、同期グループ作成トランザクション要求を取得する方式を提供し、本実施例は、ブロックチェーンノードの配置データに基づいて同期グループを作成する。図2を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S210:現在の状態がローカル配置データにおける同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する。
その中、現在の状態は、ブロックチェーンネットワークが現在にある状態を指し、現在の時間及び現在のブロック高さなどのうちの少なくとも一つを含むことができる。現在の時間は、ローカルノードの現在のローカル時間を指し、ブロック高さは、ブロックチェーンの現在のブロックのシーケンス番号であり、現在のブロック高さは、ブロックチェーンネットワークの現在のブロック数などを指し、ローカル配置データは、ローカルノードがブロックチェーンネットワークに追加される際に、ローカルに配置されたブロックチェーンネットワークの実行ルールを指し、ローカル配置データは、同期グループ作成ルール、発行メカニズム、賞罰メカニズムなどを含むことができる。なお、ローカル配置データは、ローカルノードのローカルに記憶されることができ、基礎ブロック、すなわちブロックチェーンの0番目のブロックに記憶されることもできる。また、配置データは、スマートコントラクトの形式でブロックチェーンネットワークに提出し、あるブロックに記憶され、配置データにおける同期グループ作成ルールを定期的に実行することができる。
同期グループ作成ルールは、同期グループを作成するために満たす必要な条件を指す。選択可能には、同期グループ作成ルールは、
1)現在の時間が予め設定された時間値を満たすことと、2)現在のブロック高さが予め設定されたブロック高さの間隔などを満たすことと、の少なくとも一つを含むことができる。その中、予め設定された時間値は、10分毎に同期グループを作成するか、又は各正時点毎に同期グループを作成するなどのように、予め設定された同期グループを作成する固定時点又は時間周期を指す。予め設定されたブロック高さの間隔は、予め設定された同期グループを作成するブロック高さ周期を指し、例えば100個ブロック毎に一つの新しい同期グループを作成する。
具体的には、ローカルノードが、現在の時間がローカル配置データにおける同期グループによって作成された予め設定された時間値を満たしていることを認識した場合、同期グループ作成トランザクション要求を開始する。例えば、予め設定された時間値は10分毎であり、ローカルノードが現在の時間から前の同期グループ作成時間を減算した差分値が10分に等しいことを認識した場合、同期グループ作成トランザクション要求を開始する。ローカルノードが、現在のブロック高さがローカル配置データにおける同期グループによって作成された予め設定されたブロック高さの間隔を満たしていることを認識した場合、同期グループ作成トランザクション要求を開始することができる。例えば、予め設定されたブロック高さの間隔は、前の同期グループの最後のブロックが現在のブロックと100個ブロックを離れており、ローカルノードが、現在のブロック高さが予め設定されたブロック高さの間隔を満たすことを認識した場合、同期グループ作成トランザクション要求を開始する。現在の時間及び現在のブロック高さが、ローカル配置データにおける同期に作成された予め設定された時間及び予め設定されたブロック高さの間隔をそれぞれ満たしている場合、同期グループ作成トランザクション要求を開始することができる。
なお、本実施例におけるローカルノードは、現在のブロック生成ノード又は同期グループ作成を監督するための専用のノードである。
S220:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S230:同期ブロックに基づいて、同期グループの同期署名を決定する。
S240:同期署名をトランザクションデータとしてブロックに記録する。
本出願の実施例により提供される技術案によれば、ブロックチェーンノードがブロックチェーンネットワークに追加する時に、ローカル配置データに同期グループ作成ルールを追加することによって、同期グループ作成の順序性及びブロックチェーンネットワーク実行の妥当性を確保し、ブロックチェーンの現在の状態が同期グループ作成ルールを満たしていることが認識された場合、同期グループの作成要求を自動的に開始し、同期グループ作成トランザクション要求を取得するために新しいアイデアを提供することができる。
実施例3
図3は、本出願の実施例3により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、同期グループ作成トランザクション要求を取得する方式をさらに提供し、本実施例の技術案は、スマートコントラクトの方式によって同期グループ作成ルールを決定することに適用される。図3を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S310:現在の状態が履歴ブロックに記憶されている同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する。
本実施例では、同期グループ作成ルールは、スマートコントラクト、又は他の当該ブロックチェーンネットワークが承認する形式で、トランザクションデータとしてブロックに書き込まれることができる。選択可能には、同期グループ作成ルールには、現在の時間が予め設定された時間値を満たすことと、現在のブロック高さが予め設定されたブロック高さの間隔などを満たすことと、のうちの少なくとも一つを含むことができる。
具体的には、ローカルノードは、履歴ブロックをトラバーサルして同期グループ作成ルールを取得してもよい。又は、履歴ブロックが同期グループ作成ルールを記憶する場合、トリガ通知メカニズムを合わせて設置し、現在のブロック生成ノードが同期グループ作成ルールを照会して取得するように通知してもよい。ローカルノードがブロックチェーンの現在の状態が履歴ブロックに記憶されている同期グループ作成ルールを満たしていることを認識した場合、同期グループ作成トランザクション要求を開始する。
S320:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S330:同期ブロックに基づいて、同期グループの同期署名を決定する。
S340:同期署名をトランザクションデータとしてブロックに記録する。
本出願の実施例により提供される技術案によれば、同期グループ作成ルールをブロックに記憶することによって、同期グループ作成ルールの改ざん不可能性と透明度を確保し、ブロックチェーンノードがブロックチェーンの現在の状態が同期グループ作成ルールを満たしていることを認識した場合、同期グループの作成要求を自動的に開始し、同期グループ作成トランザクション要求を取得するために新しいアイデアを提供することができる。
例示的には、同期グループ作成トランザクション要求を取得するステップは、以下のような方式によって実行されることもできる。
1)同期グループの使用需要が発生した場合、同期グループ作成トランザクション要求を開始する。
その中、同期グループの使用需要は、同期グループを使用する必要がある時に発生した要求を指し、同期グループの使用需要には、必要な同期グループに含まれるブロックなどが含まれることができる。選択可能には、同期グループの使用需要を発生することは、ローカルがブロックチェーンを同期する必要がある場合、同期グループの使用需要を発生することを含むことができ、ローカルがブロックチェーン内のデータを修正する必要がある場合、同期グループの使用需要を発生することなどを含むこともできる。
具体的には、ローカルノードがブロックチェーンに新たに追加されたノードであり、又はローカルノードが通信品質又は悪意の攻撃を受けるなどのような他の要因によってローカルノードのブロックチェーンの一部又は全部のブロックなどが欠落した場合、ローカルノードがブロックチェーンを同期する必要があり、ローカルが同期グループの使用需要を発生する。ローカルノードは、同期グループの使用需要に基づいて、同期グループ作成トランザクション要求を開始することができる。ローカルノードは、現在のブロック生成ノードに同期グループの使用需要を送信するか、又は現在のブロック生成ノードが、ローカルノードが同期グループの使用需要を発生したことを検出した場合、現在のブロック生成ノードが同期グループ作成トランザクション要求を開始することができる。
2)任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する。その中、任意のノードは、ブロックチェーン内の同期を必要とする任意のノードであってもよいし、スーパー権限を持つ任意のノードであってもよいし、現在のブロック生成ノードなどであってもよい。具体的には、ローカルノードは、ブロックチェーンのいずれかのノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信することによって、同期グループ作成トランザクション要求を取得することができる。
3)ブロックチェーン内の任意のノードは、ローカルが同期グループを使用する必要があり、且つブロックチェーンをトラバーサルした後にそれにマッチングする同期グループが照会されていない場合、同期グループ作成トランザクション要求を開始する。
上記のノードによって開始された同期グループ作成トランザクション要求には、同期グループ作成ルールを持つことができ、当該作成ルールは、現在の時刻に同期グループを作成するルールを規定してもよく、後続の同期グループを継続的に作成するルールを規定してもよく、すなわち、ブロックに記憶されて、後続の履歴ブロックにおける同期グループ作成ルールとする。
実施例4
図4は、本出願の実施例4により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、さらに最適化され、本実施例は、同期グループのインデックス方式を提供する。図4を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S410:同期グループ作成トランザクション要求を取得する。
S420:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S430:同期ブロックに基づいて、同期グループの同期署名を決定する。
S440:同期署名をトランザクションデータとしてブロックに記録する。
S450:同期グループのインデックスデータをローカルの同期グループインデックステーブルに保存する。
その中、インデックスデータは、ノードが同期グループ情報を迅速に見つけるのを支援するためのデータを指し、同期グループ識別子、同期グループを構成する各同期ブロック識別子、同期グループの同期署名、及び同期署名があるブロック識別子などを含むことができる。同期グループ識別子は、同期グループの番号又は名称などであってもよい。ブロック識別子は、あるブロックを一意に識別又は決定するためのフラグを指し、ブロックのID又は番号などであってもよい。
同期グループインデックステーブルは、一定の順序又はルールに従って異なる同期グループインデックスデータを記憶するテーブルを指し、例えば、同期グループ識別子に従って異なる同期グループのインデックスデータを記憶することができ、一つの同期グループは、同期グループインデックステーブルにおける1行又は1列などに一意に対応することができる。選択可能には、同期グループインデックステーブルは、ブロックチェーンに構築された同期グループに基づいて、追加、削除、又は置換などの動的に更新することができる。
具体的には、ローカルノードは、同期グループ作成トランザクション要求を受信し、署名処理を行ってトランザクションデータを検証した後に、同期グループ、同期署名、及び同期ブロックなどのマッピング関係をローカルの同期グループインデックステーブルに保存する。
例示的には、ローカルノードがある同期グループを照会する必要がある場合、以下のいずれか又はいくつかの方式によって必要な同期グループを照会することができる。
1)ローカルの同期グループインデックステーブルで同期グループのインデックスデータを照会する。
2)同期グループ照会トランザクション要求を開始し、現在のブロック生成ノードが後ろから前へブロックチェーンをトラバーサルして同期グループを照会するように要求し、その中、同期グループ照会要求は、同期グループを照会するための要求を指し、必要な同期グループ識別子又は同期グループ署名などを含むことができる。
3)ローカルノードが信頼する各ノードに同期グループ照会要求を送信し、各ノードがローカルの同期グループインデックステーブルで同期グループのインデックスデータなどを照会するように要求する。
具体的には、ローカルノードが同期グループの同期ブロックチェーンを使用する必要がある際に、同期グループインデックステーブルがローカルに記憶されている場合、先にローカルの同期グループインデックステーブルで照会することができ、必要な同期グループにマッチングする同期グループがある場合、当該同期グループのインデックスデータを直接に取得して同期操作を行うことができる。マッチングする同期グループがない場合、ローカルノードは、信頼する各ノードに同期グループ照会トランザクション要求を開始して、信頼する各ノードが当該同期グループ照会トランザクション要求を受信した後に、ローカルの同期グループインデックステーブルで同期グループのインデックスデータを照会するようにすることができる。ローカルノードが信頼する各ノードによってフィードバックされた照会されていない情報を受信した場合、現在のブロック生成ノードに同期グループ照会トランザクション要求を送信して、現在のブロック生成ノードが現在のブロックから前にブロックチェーンをトラバーサルして同期グループを照会するように要求する。現在のブロック生成ノードもマッチングする同期グループを照会していない場合、必要な同期グループを含む同期グループ作成トランザクション要求を開始することができる。
なお、上記で与えられた必要な同期グループを照会する方式間には、独立に行われてもよく、先にローカル照会である第1の方式を行い、その後に同期グループ照会トランザクション要求を送信する方式である第2又は第3の方式で照会してもよい。
本出願の実施例により提供される技術案によれば、同期グループを構築し、同期グループの同期署名をブロックに記憶した後に、ブロックチェーン内のノードは、一つの同期グループインデックステーブルをローカルでメンテナンスし、同期グループのインデックスデータをローカルの同期グループインデックステーブルに保存して、後続の照会、検証、及び同期データなどに便利を提供することができる。
実施例5
図5は、本出願の実施例5により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、ローカルノードが任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信することによって、同期グループ作成トランザクション要求を取得する方式をさらに最適化した。図5を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S510:任意のノードによって開始された同期グループ作成提案要求を受信する。
その中、提案要求は、ブロックチェーン内の任意のノードが、スマートコントラクトなどのようなあるトランザクションを実行する必要がある場合、提案トランザクション要求を開始し、現在のブロック生成ノードが他のノードに投票結果のフィードバックを要求することを指し、提案要求には、構築する同期グループの同期ブロックと署名方式などのうちの少なくとも一つを含むことができる。又は、提案要求は、デフォルト方式に基づいて同期グループの作成内容を表すことができ、例えば、現在開始された同期グループ作成提案要求は、現在のブロックに同期ポイントを作成することを示すことができる。
S520:提案要求に従って、提案投票通知を開始し、他のノードが当該同期グループの作成に対して投票するように要求する。
S530:投票結果に基づいて、提案要求における同期グループ作成トランザクション要求の実行可能性を決定する。
現在のブロック生成ノードは、投票割合に基づいて投票結果を決定することができ、投票割合は、デフォルトで設置してもよいし、又は同期グループ作成提案要求で規定してもよい。
S540:任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する。
具体的には、提案要求における同期グループ作成トランザクション要求が承認されたと決定された後、関連する同期グループ作成トランザクション要求を受け入れることができ、当該同期グループ作成トランザクション要求は、一般に同期グループ作成提案要求に含まれることができる。
S550:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S560:同期ブロックに基づいて、同期グループの同期署名を決定する。
S570:同期署名をトランザクションデータとしてブロックに記録する。
本出願の実施例により提供される技術案によれば、同期グループ作成トランザクション要求を取得する前に、先にブロックチェーンネットワークのコンセンサスメカニズムに基づいて同期グループ作成提案要求を投票し、提案要求における同期グループ作成トランザクション要求が承認されたと決定された後、後続の同期グループ作成フローを実行する。
実施例6
図6は、本出願の実施例6により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、同期ブロックに基づいて、同期グループの同期署名を決定する方式を提供する。図6を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S610:同期グループ作成トランザクション要求を取得する。
S620:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S630:各同期ブロックのブロック識別子を順次接続して、署名計算を行って、現在作成された同期グループの同期署名を形成する。
具体的には、ローカルノードは、同期グループ作成トランザクション要求に基づいて同期グループの同期ブロックを決定した後に、各同期ブロックのブロックヘッダから当該同期ブロックのブロック識別子を取得し、各同期ブロックのブロック識別子を各同期ブロックの番号順に従って連結して一つの全体識別子とし、同期グループ作成トランザクション要求に指定された署名方式、ローカルノードの公開鍵、秘密鍵、又はSHA256などのような署名アルゴリズムを使用して全体識別子に対して署名を行い、現在作成された同期グループの同期署名を形成する。
同期署名の安全性をさらに向上させ、且つ同期署名の複雑さを増加させるために、例示的には、同期ブロックに基づいて、同期グループの同期署名を決定することは、各同期ブロックのブロック識別子でマークルツリーを構築し、マークルツリーのルートを同期署名とするステップを含むこともできる。具体的には、ローカルノードは、同期グループ作成トランザクション要求に基づいて同期グループの同期ブロックを決定した後に、各同期ブロックのブロックヘッダから当該同期ブロックのブロック識別子を取得し、各同期ブロックのブロック識別子に基づいて、マークルツリーアルゴリズムを使用してマークルツリーを生成し、マークルツリーのルートを同期グループの同期署名とする。
また、同期署名の安全性をさらに向上させ、且つ同期署名の信頼性を増加させ、ローカルノードが詐欺の確率を減らすために、例示的には、同期ブロックに基づいて、同期グループの同期署名を決定することは、同期ブロックと関連情報とに基づいて、同期グループの同期署名を決定するステップを含むこともでき、関連情報は、作成者情報と作成時間情報と、の少なくとも一つを含む。
作成者情報は、ノード識別子などのように、同期グループを作成するノード情報を指し、作成時間情報は、ローカルノード同期グループを作成するローカルタイムスタンプを指す。
具体的には、ローカルノードは、各同期ブロックの識別子を順次接続して一つの全体識別子とし、作成者情報と作成時間情報を全体識別子に追加して新たな全体識別子を形成し、新たな全体識別子に対して署名を行って、現在作成された同期グループの同期署名を形成することができる。ローカルノードは、各同期ブロックのブロック識別子に基づいて、マークルツリーアルゴリズムを使用してマークルツリーを生成した後に、マークルツリーのルートを、作成者情報及び作成時間情報とともに同期グループの同期署名とすることもできる。
S640:同期署名をトランザクションデータとしてブロックに記録する。
具体的には、現在のブロック生成ノードによって同期署名をトランザクションデータとして、現在のブロックに記録し、現在のブロックを他のノードに送信して検証する。他のノードがローカルノードによって送信された現在のブロックを受信した後に、まず、同期署名から作成時間情報を取得し、作成時間情報をローカルノードの現在のローカル時間と比較して、時間差分値が予め設定された時間閾値内でなければ、ローカルノードに詐欺の現象が存在する可能性があることを説明し、後続の同期署名の検証フローを行わず、検証失敗情報を直接フィードバックする。時間差分値が予め設定された時間閾値内にある場合、他のノードは、ローカルノードと同じ方式を採用して当該同期グループの同期署名を計算することができ、同期署名が現在のブロックにおける同期署名と一致する場合、現在のブロックが有効であることを確認し、現在のブロックをブロックチェーンに記憶し、一致していない場合、ブロックチェーン内の他のノードに現在のブロック識別子を含むブロック無効情報を送信する。
本出願の実施例により提供される技術案によれば、同期ブロック及び実際の状況に応じて、異なる同期署名アルゴリズムを使用して同期グループの同期署名を決定することにより、同期署名の使用をより柔軟にした。当時に、同期ブロックに基づいて同期署名を決定して、同期署名が、一定のルールにしたがっていることを間接的に示し、同期ブロック、同期グループ、及び同期署名の三者間の関連関係を間接的に示すため、後続の同期グループの照会を容易にする。
実施例7
図7は、本出願の実施例7により提供されるブロックチェーンのデータ処理方法のフローチャートである。本実施例は、上記の実施例の上に、同期ブロックに基づいて、同期グループの同期署名を決定する方式をさらに提供する。図7を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S710:同期グループ作成トランザクション要求を取得する。
S720:同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定する。
S730:各同期ブロックのブロックヘッダデータを署名してサブ署名を形成し、各サブ署名を使用してマークルツリーを構築し、マークルツリーのルートを同期署名とする。
その中、ブロックヘッダデータは、前のブロック識別子、ブロック作成のタイムスタンプ、乱数、ターゲットハッシュ、及び当該ブロック内のトランザクションデータによって構築されたマークルツリールートなどを含むことができる。サブ署名は、ハッシュ署名などであってもよい。
具体的には、ローカルノードは、同期グループ作成トランザクション要求に基づいて同期グループの同期ブロックを決定した後に、各同期ブロックから当該同期ブロックのブロックヘッダデータを取得し、各同期ブロックのブロックヘッダデータに対してハッシュ署名などのような署名方式を使用してサブ署名を行い、各サブ署名に基づいて、マークルツリーアルゴリズムを使用してマークルツリーを生成し、マークルツリーのルートを同期グループの同期署名とすることができる。
同期署名の安全性をさらに向上させ、且つ同期署名の信頼性を増加させ、ローカルノードが詐欺する確率を減らすために、例示的には、同期ブロックに基づいて、同期グループの同期署名を決定することは、同期ブロックと関連情報とに基づいて、同期グループの同期署名を決定するステップを含むこともでき、関連情報は、作成者情報と作成時間情報と、のうちの少なくとも一つを含む。作成者情報は、ノード識別子などのように同期グループを作成するノード情報を指し、作成時間情報は、ローカルノード同期グループを作成するローカルタイムスタンプを指す。
具体的には、ローカルノードは、各同期ブロックのブロックヘッダデータに署名してサブ署名を形成し、各サブ署名に基づいて、マークルツリーアルゴリズムを使用してマークルツリーを生成した後に、マークルツリーのルートを、作成者情報及び作成時間情報とともに同期グループの同期署名とする。
S740:同期署名をトランザクションデータとしてブロックに記録する。
本出願の実施例により提供される技術案によれば、先に、各同期ブロックのブロックヘッダデータを使用して署名することによってサブ署名を形成し、次に、マークルツリーアルゴリズムを使用してサブ署名を計算することによってマークルツリーを生成し、マークルツリーのルートを同期署名とする。同期署名の複雑さを増加することによって、同期署名の安全性をさらに向上させ、且つ同期署名の信頼性を増加させる。
例示的には、同期ブロックに基づいて、同期グループの同期署名を決定することは、現在作成された同期グループの同期ブロックと、少なくとも一つの既存の同期グループの同期署名とに基づいて、署名計算を行って、現在作成された同期グループの同期署名を形成するステップとを含むこともできる。
具体的には、ローカルノードは、現在作成された同期グループの同期ブロックを決定した後に、先に、ローカルの同期グループインデックステーブルから照会して、現在作成された同期グループに含まれる既存の同期グループの同期署名を取得することができる。例えば、現在作成された同期グループに含まれる同期ブロックが0番目のブロックから300番目のブロックであり、既存の同期グループ1は、0番目のブロックから100番目のブロックで構成され、同期グループ2は、0番目のブロックから200番目のブロックで構成され、ローカルノードは、同期グループ1の同期署名と同期グループ2の同期署名、及び現在の同期グループの同期ブロックを組み合わせて署名することによって、現在作成された同期グループの同期署名を形成することができる。本実施例で使用される署名方法は、各同期グループ間に関連があり、孤立していないようにする。
実施例8
図8は、本出願の実施例8により提供されるブロックチェーンのデータ検証方法のフローチャートである。本実施例は、ブロックチェーンに同期グループが存在する時のデータ検証方法を提供し、当該方法は、ブロックチェーンネットワークにおいて、任意のノードが他のノードからデータ同期を行うシーンの解決策に適用される。その中、当該同期グループは、上記の実施例を使用した方式で作成することができる。当該実施例の技術案は、ブロックチェーンのデータ検証装置によって実行されることができ、当該装置は、ソフトウェア及び/又はハードウェアの方式を採用して実現することができ、一般に、ブロックチェーンノードの電子機器に構成されてもよい。図8を参照すると、当該方法は、具体的には、以下のようなステップを含む。
S810、他のノードにブロック同期要求を開始し、他のノードによってフィードバックされたブロックを受信する。
本実施例では、ブロック同期要求が発生された場合、他のノードにブロック同期要求を開始して、同期ブロックデータをダウンロードすることができる。他のノードは、ブロックチェーンが記憶されている任意のノードであってもよく、好ましくは、ローカルノードの信頼ノードであってもよい。ブロック同期要求は、ブロックチェーン内のノードがブロックデータ同期を行う必要がある時に発生した要求を指し、ブロック同期要求は、必要な同期ブロックのブロック識別子を含むことができる。
選択可能には、ブロック同期要求を発生することは、以下のような少なくとも一つを含むことができる。1)ローカルノードがブロックチェーンネットワークに新たに追加されるノードであると決定された場合、完全なブロックチェーンを取得するブロック同期要求を生成する。2)ローカルノードが通信品質又は悪意の攻撃を受けるなどのような他の要因によってローカルノードのブロックチェーンの一部又は全部のブロックなどが欠落した場合、ローカルがブロックチェーンを同期にダウンロードする必要があり、ブロック同期要求を発生する。3)ブロックデータ照会要求に基づいて、照会対象ブロックのブロック同期要求を発生する。4)ブロックデータ検証要求に基づいて、検証対象ブロックのブロック同期要求などを発生する。
ローカルノードは、ブロックチェーンネットワーク内の他のノードにブロック同期要求を送信し、他のノードがローカルノードによって送信されたブロック同期要求を受信した後に、対応する同期グループのブロックデータを取得し、ブロックデータをローカルノードにフィードバックする。ローカルノードは、他のノードによってフィードバックされた同期グループのブロックデータを受信し、ローカルに保存する。
S820:同期対象ブロックにマッチングする同期グループを決定し、ブロックから同期グループの同期署名を照会し、同期グループは、少なくとも一つの同期ブロックを含む。
具体的には、ローカルノードは、ブロック同期要求に含まれる、同期が必要なブロック識別子に基づいてローカルにメンテナンスされているインデックステーブル又はブロックチェーンなどで同期グループを検索し、マッチングする同期グループが見つけられた場合、マッチングする同期グループを同期が必要なブロックが存在する同期グループとして決定する。マッチングする同期グループが見つけられていない場合、ブロックチェーンネットワークに同期グループ作成トランザクション要求を送信して、ブロックチェーンネットワークに当該同期グループの作成を要求することによって、同期グループを取得することができる。ローカルにメンテナンスされているインデックステーブルは、同期グループ作成の時に、照会するために同期グループ情報を追加したものである。
選択可能には、当該方法は、マッチングする必要な同期グループがないと決定された場合、同期グループ作成トランザクション要求を開始するステップを含むこともできる。
ローカルノードは、同期が必要なブロックが存在する同期グループを決定した後に、同期グループに基づいてブロックから同期グループの同期署名を取得することができる。
上記のステップS810及びS820が実行する前後順序は限定されず、まずブロックデータ同期要求を開始し、他のノードから同期のブロックデータを受信してから、対応する同期グループをマッチングして、同期署名を取得してもよい。
S830:同期ブロックに基づいて同期署名を計算し、取得された同期署名と比較して検証する。
その中、同期ブロックは、同期グループを構成するブロックを指し、各同期グループは、少なくとも一つの同期ブロックを含む。選択可能には、取得された同期グループの同期署名方式が異なることによって、ローカルノードが同期ブロックに基づいて同期署名を計算する方式も異なる。
具体的には、ローカルノードは、同期ブロックに基づいて同期グループの同期署名を計算して取得し、計算された同期署名とブロックから取得された同期署名とを比較し、両者が同じである場合、同期署名の検証に合格したと決定され、そうでない場合、同期グループの同期署名の検証に合格していないと決定される。
S840:検証に合格した場合、同期グループの同期ブロックが検証に合格したと決定される。
具体的には、同期グループの同期署名が検証に合格した場合、同期グループの同期ブロックが検証に合格したと決定され、同期署名が検証に合格していない場合、同期グループの同期ブロックが検証に合格していないと決定される。
なお、本実施例では、同期署名の検証を採用して同期ブロックのブロック識別検証機能を直接に代替し、又は同期署名の検証優先度を同期ブロックの検証優先度よりも高く設置することもできる。ブロックデータを使用して同期する場合、同期グループを単位として一回検証することで、各同期ブロックのブロック識別子を一つずつ検証する必要がないため、検証フローを簡略化する。また、同期署名はブロックに記録されているため、他のノードの承認及び有効な監視を得るとともに、ブロックデータの改ざんを防止する役割も果たすことができる。
上記の技術案では、同期対象ブロック中の少なくとも一つのブロックにマッチングする同期グループがないと決定された場合、マッチングしていないブロックのブロック識別子に基づいて検証するステップを含むこともできる。例えば、同期対象ブロックが920ブロックである場合、第900番目のブロックに同期ポイントが形成され、0〜900番目のブロックが一つの同期グループであり、最後の20ブロックは、任意の同期グループにも属されない場合、同期グループに属する同期ブロックは、同期署名に基づいて検証することができ、同期グループに属していないブロックは、依然としてブロック自身の識別子に基づいて検証することができる。
本出願の実施例により提供される技術案によれば、ローカルノードがブロックデータを使用して同期を行う必要がある場合、同期ブロックに基づいて計算された同期署名とブロックから取得された同期署名とを比較して検証すればよいため、各同期ブロックのブロック識別子を一つずつ検証する必要がなく、既存のブロックデータ検証方法と比較して、ブロックデータの検証方式を最適化することができ、検証フローを簡略化し、データ同期を加速する。
実施例9
図9は、本出願の実施例9により提供されるブロックチェーンのデータ処理装置の概略構成図である。当該装置は、ブロックチェーンノードに構成されることができ、本出願の任意の実施例により提供されるブロックチェーンのデータ処理方法を実行することができ、方法の実行に対応される機能モジュール及び有益な効果を備える。図9に示すように、当該装置は、
同期グループ作成トランザクション要求を取得するように構成されるトランザクション要求取得モジュール910と、
同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを同期グループの同期ブロックとして決定するように構成される同期ブロック決定モジュール920と、
同期ブロックに基づいて、同期グループの同期署名を決定するように構成される同期署名決定モジュール930と、
同期署名をトランザクションデータとしてブロックに記録するように構成される記録モジュール940と、を含む。
本出願の実施例により提供される技術案によれば、同期グループ作成トランザクション要求を取得した後に、同期グループ作成トランザクション要求に基づいて同期グループを構築し、同期グループを構成する同期ブロックに基づいて、同期グループの同期署名を決定し、その後、同期署名をトランザクションデータとしてブロックに記憶するため、同期署名によって改ざんされた確率を低下する。ブロックチェーンのいずれかのノードがブロックデータを取得しようとする場合、同期グループを単位として検証することができ、ブロックチェーン内のノードがブロックチェーンデータを検証するために新しいアイデアを提供し、ブロックデータの検証方式を最適化することができる。ブロックデータを同期するためのシーンに使用された場合、複数の同期ブロックを一度に検証し、データ同期を加速させることができる。
例示的には、トランザクション要求取得モジュール910は、
現在の状態がローカル配置データにおける同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する操作と、
現在の状態が履歴ブロックに記憶されている同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する操作と、
任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する操作と、
同期グループの使用需要が発生した場合、同期グループ作成トランザクション要求を開始する操作と、のうち少なくとも一つを実行するように構成される。
なお、上記の同期グループ作成ルールは、現在の時間が予め設定された時間値を満たすことと、現在のブロック高さが予め設定されたブロック高さの間隔を満たすことと、のうちの少なくとも一つを含むことができる。
例示的には、上記装置は、
同期署名をトランザクションデータとしてブロックに記録した後に、同期グループのインデックスデータをローカルの同期グループインデックステーブルに保存するように構成される保存モジュールを含むこともできる。
例示的には、上記装置は、
ローカルの同期グループインデックステーブルで同期グループのインデックスデータを照会し、又は、同期グループ照会トランザクション要求を開始し、現在のブロック生成ノードが後ろから前へブロックチェーンをトラバーサルして同期グループを照会するように要求するように構成される照会モジュールを含むこともできる。
例示的には、同期署名決定モジュール930は、
各同期ブロックのブロック識別子を順次接続して、署名計算を行って、現在作成された同期グループの同期署名を形成する操作と、
各同期ブロックのブロック識別子でマークルツリーを構築し、マークルツリーのルートを同期署名とする操作と、
各同期ブロックのブロックヘッダデータを署名してサブ署名を形成し、各サブ署名を使用してマークルツリーを構築し、マークルツリーのルートを同期署名とする操作と、
現在作成された同期グループの同期ブロックと、少なくとも一つの既存の同期グループの同期署名とに基づいて、署名計算を行って、現在作成された同期グループの同期署名を形成する操作と、のうちの少なくとも一つを実行するように構成される。
例示的には、同期署名決定モジュール930は、さらに、
同期ブロックと関連情報とに基づいて、同期グループの同期署名を決定するように構成され、関連情報は、作成者情報と作成時間情報と、のうちの少なくとも一つを含む。
例示的には、記録モジュール940は、
現在のブロック生成ノードによって、同期署名をトランザクションデータとして現在のブロックに記録し、現在のブロックを他のノードに送信して検証するように構成される。
実施例10
図10は、本出願の実施例10により提供される機器の概略構成図である。図10は、本出願の実施形態を実現するのに適する例示的な機器12のブロック図を示す。図10に示される機器12は、単なる一つの例であり、本出願の実施例の機能及び使用範囲を一切制限しない。機器12は、典型的には、ブロックチェーンネットワークノード機能を担うコンピューティング機器である。
図10に示すように、機器12は、汎用コンピューティング機器の形態で示される。機器12のコンポーネントは、一つ又は複数のプロセッサ又は処理ユニット16と、システムメモリ28と、異なるシステムコンポーネント(システムメモリ28と処理ユニット16とを含む)を接続するバス18と、を含むことができるが、これらに限定されない。
バス18は、メモリバス又はメモリコントローラ、周辺バス、アクセラレーテッドグラフィックスポート、プロセッサ又は多様なバス構造のうち任意のバス構造を使用するローカルバスを含む、複数種のバス構造のうち一つ又は複数のものを表す。例を挙げると、これらのアーキテクチャは、インダストリスタンダードアーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MAC)バス、拡張ISAバス、ビデオエレクトロニクススタンダーズアソシエーション(VESA)ローカルバス、及びペリフェラルコンポーネントインターコネクト(PCI)バスを含むが、これらに限定されない。
機器12は、典型的には、多種類のコンピュータシステム読み取り可能な媒体を含む。これらの媒体は、機器12がアクセスすることができる任意の使用可能な媒体であってもよく、揮発性媒体及び不揮発性媒体、リムーバブル媒体及びノンリムーバブル媒体を含む。
システムメモリ28は、ランダムアクセスメモリ(RAM)30及び/又はキャッシュメモリ32などの揮発性メモリの形態のコンピュータシステム読み取り可能な媒体を含んでもよい。機器12は、他のリムーバブル/ノンリムーバブル、揮発性/不揮発性コンピュータシステム記憶媒体をさらに含んでもよい。単なる一例として、ストレージシステム34は、ノンリムーバブル、不揮発性磁気媒体(図10に示されていないが、通常「ハードドライブ」と呼ぶ)に対して読み出し及び書き込みをするために用いることができる。図10に示されていないが、リムーバブル、不揮発性磁気ディスク(例えば、「フロッピーディスク」)に対して読み出し及び書き込みをするための磁気ディスクドライブ、及びリムーバブル、不揮発性光学ディスク(例えば、CD−ROM、DVD−ROM又は他の光学媒体)に対して読み出し及び書き込みをするための光学ディスクドライブを提供することができる。この場合、各ドライブは、一つ又は複数のデータメディアインターフェイスを介してバス18に接続することがきる。システムメモリ28は、本出願の各実施例に記載の機能を実行するように構成されるワンセットのプログラムモジュール(例えば、少なくとも一つ)を有する少なくとも一つのプログラム製品を含んでもよい。
ワンセットのプログラムモジュール42(少なくとも一つ)を有するプログラム/ユーティリティ40は、例えば、メモリ28に記憶されてもよく、このようなプログラムモジュール42は、オペレーティングシステム、一つ又は複数のアプリケーションプログラム、他のプログラムモジュール、及びプログラムデータを含むことができるがこれらに限定されない。これらの例のそれぞれ又は何らかの組み合わせには、ネットワーく環境の実装が含まれる可能性がある。プログラムモジュール42は、通常本出願に記載の実施例における機能及び/又は方法を実行する。
機器12は、一つ又は複数の外部機器14(例えば、キーボード、ポインティング機器、ディスプレイ24など)と通信することができるし、ユーザが機器12とインタラクションすることを可能にする一つ又は複数の機器と通信することもでき、及び/又は機器12が一つ又は複数の他のコンピューティングデバイスと通信することを可能にする任意の機器(例えば、ネットワークカード、モデムなど)と通信することができる。そのような通信は、入力/出力(I/O)インターフェイス22を介して行うことができる。また、機器12は、ネットワークアダプタ20を介して、一つ又は複数のネットワーク(例えば、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、及び/又はパブリックネットワーク、例えば、インターネット)と通信することができる。図4に示すように、ネットワークアダプタ20は、バス18を介して、機器12の他のモジュールと通信する。なお、図示されていないが、マイクロコードやデバイスドライバ、冗長処理ユニット、外部ディスクドライブアレイ、RAIDシステム、テープドライバ、及びデータバックアップトレージシステムなどを含むがこれらに限定されない他のハードウェア及び/又はソフトウェアモジュールを、機器12と組み合わせて使用することができる。
処理ユニット16は、システムメモリ28に記憶されるプログラムを実行することにより、多様な機能アプリケーション及びデータ処理を実行し、例えば、本出願の実施例により提供されるブロックチェーンのデータ処理方法を実現する。
実施例11
本出願の実施例11は、コンピュータプログラムが記憶されているコンピュータ読み取り可能な記憶媒体をさらに提供し、当該プログラムがプロセッサによって実行される場合に、上記の実施例に記載のブロックチェーンのデータ処理方法が実現される。当該コンピュータ読み取り可能な記憶媒体は、ブロックチェーンノードに配置することができる。
本出願の実施例に係るコンピュータ記憶媒体は、一つ又は複数のコンピュータ読み取り可能な媒体の任意の組み合わせを採用することができる。コンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な信号媒体、或いはコンピュータ読み取り可能な記憶媒体であってもよい。コンピュータ読み取り可能な媒体は、例えば、電子、磁気、光、電磁気、赤外線、又は半導体のシステム、装置又はデバイス、或いは上記の任意の組み合わせであってもよいがこれらに限定されない。コンピュータ読み取り可能な記憶媒体のより具体的な例(非網羅的なリスト)は、一つ又は複数の配線を備える電気接続部、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能なプログラマブル読み出し専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み出し専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又は上記の任意の適切な組み合わせを含む。この文書において、コンピュータ読み取り可能な記憶媒体は、命令実行システム、装置又はデバイスにより使用され、或いはそれらと組み合わせて使用されることが可能であるプログラムを含む又は記憶する任意の有形の媒体であってもよい。
コンピュータ読み取り可能なの信号媒体は、ベースバンドにおける、又は搬送波の一部として伝播するデータ信号を含むことができ、その中のにはコンピュータ読み取り可能なのプログラムコードが搭載される。この伝播するデータ信号は様々な形式を採用することができ、電磁信号、光信号又は上記の任意の適切な組み合わせを含むがこれらに限定されない。コンピュータ読み取り可能なの信号媒体は、さらに、コンピュータ読み取り可能な記憶媒体以外の任意のコンピュータ読み取り可能な媒体であってもよく、当該コンピュータ読み取り可能な媒体は、命令実行システム、装置又はデバイスにより使用され、或いはそれらと組み合わせて使用されるプログラムを送信、伝播又は伝送することができる。
コンピュータ読み取り可能な媒体に含まれるプログラムコードは、無線、有線、光ケーブル、RFなど、又は上記の任意の適切な組み合わせを含むがこれらに限定されない任意の適切な媒体によって伝送することができる。
一つ又は複数のプログラミング言語又はそれらの組み合わせで本出願の動作を実行するためのコンピュータプログラムコードを作成することができ、前記プログラミング言語は、Java、Smalltalk、C++などのようなプロジェクト指向のプログラミング言語を含み、さらに、「C」言語又は同様のプログラミング言語といった従来の手続き型プログラミング言語をも含む。プログラムコードは、完全にユーザーコンピュータで実行されてもよいし、部分的にユーザーコンピュータに実行されてもよいし、スタンドアロンソフトウェアパッケージとして実行されてもよいし、部分的にユーザーコンピュータで、部分的にリモートコンピュータで実行されてもよい、又は完全にリモートコンピュータ又はサーバーで実行してもよい。リモートコンピュータに係る場合、リモートコンピュータは、ローカルネットワーク(LAN)又は広域ネットワーク(WAN)を含む任意種類のインターネットを介して、ユーザーコンピュータに接続することができ、或いは、外部コンピュータ(例えば、インターネットサービスプロバイダを利用してインターネットを介して接続する)に接続することもできる。
上記実施例により本出願について比較的詳細に説明したが、本出願は、上記実施例のみに限定されず、本出願の構想を逸脱しない場合、より多くの他の効果同等な実施例をさらに含むことができ、本出願の範囲は、特許請求の範囲によって决定される。
本願は、2018年9月18日付に中国特許庁に提出した、中国特許出願番号が「201811089389.6」である中国特許出願の優先権を主張するものであり、当該出願のすべての内容は、引用により本願に組み込まれる。

Claims (11)

  1. ブロックチェーンノードに適用されるブロックチェーンのデータ処理方法であって、
    前記方法は、
    同期グループ作成トランザクション要求を取得するステップと、
    前記同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを前記同期グループの同期ブロックとして決定するステップと、
    前記同期ブロックに基づいて、前記同期グループの同期署名を決定するステップと、
    前記同期署名をトランザクションデータとしてブロックに記録するステップと、を含む、
    ことを特徴とするブロックチェーンのデータ処理方法。
  2. 同期グループ作成トランザクション要求を取得する操作は、
    現在の状態がローカル配置データにおける同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する操作と、
    現在の状態が履歴ブロックに記憶されている同期グループ作成ルールを満たしていることが認識された場合、同期グループ作成トランザクション要求を開始する操作と、
    任意のノードによってリアルタイムに開始された同期グループ作成トランザクション要求を受信する操作と、
    同期グループの使用需要が発生した場合、同期グループ作成トランザクション要求を開始する操作と、のうちの少なくとも一つを含む、
    ことを特徴とする請求項1に記載のブロックチェーンのデータ処理方法。
  3. 前記同期グループ作成ルールは、
    現在の時間が予め設定された時間値を満たすことと、
    現在のブロックの高さが予め設定されたブロック高さの間隔を満たすことと、のうちの少なくとも一つを含む、
    ことを特徴とする請求項2に記載のブロックチェーンのデータ処理方法。
  4. 前記同期署名をトランザクションデータとしてブロックに記録した後に、
    同期グループのインデックスデータをローカルの同期グループインデックステーブルに保存するステップをさらに含む、
    ことを特徴とする請求項1に記載のブロックチェーンのデータ処理方法。
  5. 前記方法は、
    ローカルの同期グループインデックステーブルで同期グループのインデックスデータを照会するステップ、又は、
    同期グループ照会トランザクション要求を開始し、現在のブロック生成ノードが後ろから前へブロックチェーンをトラバーサルして同期グループを照会するように要求するステップ、をさらに含む、
    ことを特徴とする請求項4に記載のブロックチェーンのデータ処理方法。
  6. 前記同期ブロックに基づいて、前記同期グループの同期署名を決定するステップは、
    各同期ブロックのブロック識別子を順次接続して、署名計算を行って、現在作成された同期グループの同期署名を形成するステップと、
    各同期ブロックのブロック識別子でマークルツリーを構築し、マークルツリーのルートを同期署名とするステップと、
    各同期ブロックのブロックヘッダデータを署名してサブ署名を形成し、各サブ署名を使用してマークルツリーを構築し、マークルツリーのルートを同期署名とするステップと、
    現在作成された同期グループの同期ブロックと、少なくとも一つの既存の同期グループの同期署名とに基づいて、署名計算を行って、現在作成された同期グループの同期署名を形成するステップと、のうちの少なくとも一つを含む、
    ことを特徴とする請求項1に記載のブロックチェーンのデータ処理方法。
  7. 前記同期ブロックに基づいて、前記同期グループの同期署名を決定するステップは、
    前記同期ブロックと関連情報とに基づいて、前記同期グループの同期署名を決定するステップを含み、
    前記関連情報は、作成者情報と作成時間情報と、のうちの少なくとも一つを含む、
    ことを特徴とする請求項6に記載のブロックチェーンのデータ処理方法。
  8. 前記同期署名をトランザクションデータとしてブロックに記録するステップは、
    現在のブロック生成ノードによって、前記同期署名をトランザクションデータとして現在のブロックに記録するステップと、
    前記現在のブロックを他のノードに送信して検証するステップと、を含む、
    ことを特徴とする請求項1に記載のブロックチェーンのデータ処理方法。
  9. ブロックチェーンノードに配置されるブロックチェーンのデータ処理装置であって、前記装置は、
    同期グループ作成トランザクション要求を取得するように構成されるトランザクション要求取得モジュールと、
    前記同期グループ作成トランザクション要求に基づいて、最初のブロックから現在のブロックまでの連続ブロックを前記同期グループの同期ブロックとして決定するように構成される同期ブロック決定モジュールと、
    前記同期ブロックに基づいて、前記同期グループの同期署名を決定するように構成される同期署名決定モジュールと、
    前記同期署名をトランザクションデータとしてブロックに記録するように構成される記録モジュールと、を含む、
    ことを特徴とするブロックチェーンのデータ処理装置。
  10. 機器であって、
    一つ又は複数のプロセッサと、
    一つ又は複数のプログラムを記憶するように構成される記憶装置と、を含み、
    前記一つ又は複数のプログラムが前記一つ又は複数のプロセッサによって実行される場合に、前記一つ又は複数のプロセッサが、請求項1〜8のいずれかに記載のブロックチェーンのデータ処理方法を実現する、
    ことを特徴とする機器。
  11. コンピュータプログラムが記憶されている媒体であって、
    当該プログラムがプロセッサによって実行される場合に、請求項1〜8のいずれかに記載のブロックチェーンのデータ処理方法が実現される、
    ことを特徴とする媒体。
JP2020531688A 2018-09-18 2019-05-20 ブロックチェーンのデータ処理方法、装置、機器及び媒体 Active JP6945742B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201811089389.6A CN109361734B (zh) 2018-09-18 2018-09-18 一种区块链的数据处理方法、装置、设备及介质
CN201811089389.6 2018-09-18
PCT/CN2019/087577 WO2020057158A1 (zh) 2018-09-18 2019-05-20 一种区块链的数据处理方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
JP2021506185A JP2021506185A (ja) 2021-02-18
JP6945742B2 true JP6945742B2 (ja) 2021-10-06

Family

ID=65351110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020531688A Active JP6945742B2 (ja) 2018-09-18 2019-05-20 ブロックチェーンのデータ処理方法、装置、機器及び媒体

Country Status (4)

Country Link
US (1) US11381385B2 (ja)
JP (1) JP6945742B2 (ja)
CN (1) CN109361734B (ja)
WO (1) WO2020057158A1 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109271446B (zh) * 2018-08-30 2020-10-23 杭州复杂美科技有限公司 一种平行链数据同步方法、设备和存储介质
CN109361734B (zh) 2018-09-18 2021-04-20 百度在线网络技术(北京)有限公司 一种区块链的数据处理方法、装置、设备及介质
US10949548B2 (en) * 2018-10-18 2021-03-16 Verizon Patent And Licensing Inc. Systems and methods for providing multi-node resiliency for blockchain peers
US11550928B2 (en) * 2019-01-11 2023-01-10 Combined Conditional Access Development And Support, Llc Distributed ledger-based digital content tracing
CN110187831B (zh) * 2019-05-13 2022-04-19 北京华宇九品科技有限公司 区块链联盟链的区块数据存储系统及方法
CN110222052A (zh) * 2019-05-20 2019-09-10 重庆金融资产交易所有限责任公司 区块链数据处理方法、装置、计算机设备和存储介质
CN110543446B (zh) * 2019-08-21 2020-11-24 杭州趣链科技有限公司 一种基于快照的区块链直接归档方法
CN111339188B (zh) * 2020-02-20 2023-10-31 百度在线网络技术(北京)有限公司 基于区块链的媒介内容处理方法、装置、设备和介质
CN111371557B (zh) * 2020-02-26 2024-01-23 百度在线网络技术(北京)有限公司 区块链数据处理方法、装置、电子设备及介质
CN111444203B (zh) * 2020-03-24 2021-09-28 腾讯科技(深圳)有限公司 一种同步处理方法、装置、设备及介质
CN111526217B (zh) * 2020-07-03 2020-10-09 支付宝(杭州)信息技术有限公司 一种区块链中的共识方法和系统
US11416449B2 (en) * 2020-07-23 2022-08-16 National Applied Research Laboratories Method of synchronous deletion for distributed storage system
CN111935315B (zh) * 2020-09-25 2021-01-12 支付宝(杭州)信息技术有限公司 区块同步方法及装置
WO2022102531A1 (ja) * 2020-11-12 2022-05-19 株式会社Nttドコモ 管理装置
CN112487476A (zh) * 2020-11-30 2021-03-12 山东浪潮通软信息科技有限公司 一种防止会计凭证数据篡改方法、装置、设备及介质
US20220173889A1 (en) * 2020-11-30 2022-06-02 Motional Ad Llc Secure Safety-Critical System Log
CN114157435B (zh) * 2021-12-02 2024-05-17 贵州黔驰信息股份有限公司 一种基于区块链技术的文档处理方法、装置和客户端
US11954074B2 (en) * 2022-04-28 2024-04-09 Micro Focus Llc Method and apparatus for efficient file/folder synchronization

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2583099A (en) * 1998-02-04 1999-08-23 Sun Microsystems, Inc. Method and apparatus for efficient authentication and integrity checking using hierarchical hashing
JP4938409B2 (ja) * 2006-10-13 2012-05-23 Kddi株式会社 デジタル放送用コンテンツ配信装置、デジタル放送用コンテンツ認証システム、デジタル放送用コンテンツ認証方法およびプログラム
US9208836B1 (en) * 2011-01-11 2015-12-08 Rambus Inc. Chip-to-chip signaling with improved bandwidth utilization
US10963881B2 (en) * 2015-05-21 2021-03-30 Mastercard International Incorporated Method and system for fraud control of blockchain-based transactions
CN106296196A (zh) * 2015-06-05 2017-01-04 地气股份有限公司 数字货币交易签章方法与系统及其数字货币交易装置
JP6452156B2 (ja) * 2015-09-03 2019-01-16 日本電信電話株式会社 許諾情報管理システム、利用者端末、権利者端末、許諾情報管理方法、および、許諾情報管理プログラム
JP6355168B2 (ja) * 2015-11-09 2018-07-11 日本電信電話株式会社 ブロックチェーン生成装置、ブロックチェーン生成方法、ブロックチェーン検証装置、ブロックチェーン検証方法およびプログラム
US9948467B2 (en) 2015-12-21 2018-04-17 Mastercard International Incorporated Method and system for blockchain variant using digital signatures
US10097344B2 (en) * 2016-07-15 2018-10-09 Mastercard International Incorporated Method and system for partitioned blockchains and enhanced privacy for permissioned blockchains
JP6571609B2 (ja) * 2016-07-28 2019-09-04 Kddi株式会社 ブロックチェーンを作成するシステム及びプログラム
US10878522B2 (en) * 2016-08-18 2020-12-29 First American Financial Corporation Systems and methods for using blockchains to record, manage, and transfer ownership rights to land titles
US10339014B2 (en) * 2016-09-28 2019-07-02 Mcafee, Llc Query optimized distributed ledger system
KR101908712B1 (ko) * 2016-10-05 2018-10-16 한전케이디엔주식회사 블록체인을 이용한 스마트 그리드 시스템의 보안 방법
US10348484B2 (en) * 2016-10-24 2019-07-09 Mastercard International Incorporated Method and system for fast tracking navigation of blockchains via data manipulation
US10586210B2 (en) * 2016-11-30 2020-03-10 International Business Machines Corporation Blockchain checkpoints and certified checkpoints
US11978045B2 (en) * 2016-12-22 2024-05-07 Mastercard International Incorporated Method and system for anonymous directed blockchain transaction
CN106844477B (zh) * 2016-12-23 2018-05-01 北京众享比特科技有限公司 区块链系统、区块查找方法和区块链后向同步方法
KR101930825B1 (ko) * 2017-01-23 2018-12-19 주식회사 데일리인텔리전스 블록체인 네트워크를 이용해서 사용자를 인증하고 블록을 동기화하는 시스템 및 방법
CN107018125B (zh) * 2017-02-17 2019-08-09 阿里巴巴集团控股有限公司 一种区块链系统、数据存储方法及装置
US11316868B2 (en) * 2017-02-24 2022-04-26 Nec Corporation Information verification system, information verification device, method and program
CN117579281A (zh) * 2017-06-02 2024-02-20 维萨国际服务协会 用于使用区块链的所有权验证的方法和系统
CN107423426B (zh) * 2017-08-02 2020-06-02 众安信息技术服务有限公司 一种区块链块数据的数据归档方法及电子设备
US11196552B2 (en) * 2017-08-04 2021-12-07 Truss Financial, LLC Secure data distribution protocol using blockchains
US11502828B2 (en) * 2017-11-15 2022-11-15 International Business Machines Corporation Authenticating chaincode to chaincode invocations of a blockchain
CN108234134B (zh) * 2017-12-28 2020-09-29 江苏通付盾科技有限公司 区块同步方法及系统
CN108023896B (zh) * 2017-12-28 2020-09-08 江苏通付盾科技有限公司 区块同步方法及系统
CN108241743B (zh) * 2018-01-04 2020-05-12 杭州复杂美科技有限公司 一种区块链快照方法
CN109361734B (zh) 2018-09-18 2021-04-20 百度在线网络技术(北京)有限公司 一种区块链的数据处理方法、装置、设备及介质

Also Published As

Publication number Publication date
US11381385B2 (en) 2022-07-05
JP2021506185A (ja) 2021-02-18
US20200389291A1 (en) 2020-12-10
CN109361734B (zh) 2021-04-20
WO2020057158A1 (zh) 2020-03-26
CN109361734A (zh) 2019-02-19

Similar Documents

Publication Publication Date Title
JP6945742B2 (ja) ブロックチェーンのデータ処理方法、装置、機器及び媒体
CN109241192B (zh) 区块链的数据修改及区块验证方法、装置、设备和介质
AU2022200535B2 (en) Method and system for blockchain variant using digital signatures
US20200344073A1 (en) Method and system for efficient distribution of configuration data utilizing permissioned blockchain technology
EP3639465B1 (en) Improved hardware security module management
CN110083610B (zh) 数据处理方法、装置、系统、可信计算装置、设备和介质
US11469891B2 (en) Expendable cryptographic key access
CN109587238B (zh) 区块链的数据处理和同步方法、装置、设备及存储介质
US20200125661A1 (en) Block quantity reduction in distributed ledgers
CN109213901B (zh) 一种区块链的数据同步方法、装置、设备及介质
CN109344631B (zh) 区块链的数据修改及区块验证方法、装置、设备和介质
US11729175B2 (en) Blockchain folding
US20200218815A1 (en) Systems and methods for distributed ledger management
CN109347803B (zh) 一种区块链的数据处理方法、装置、设备及介质
CN108881261B (zh) 一种容器环境下基于区块链技术的服务认证方法及系统
CN109254999B (zh) 一种区块链的数据处理方法、装置、设备及介质
CN109345243B (zh) 一种区块链的数据处理和验证方法、装置、设备及介质
CN110677388B (zh) 一种基于TrustZone的物联网终端进程完整性度量方法
CN111401889B (zh) 基于区块链的信用数据处理方法、装置、设备和介质
CN114066461A (zh) 基于区块链的身份信息管理方法、节点及区块链系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200610

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210728

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210831

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210914

R150 Certificate of patent or registration of utility model

Ref document number: 6945742

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150