JP2020522767A - ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイス - Google Patents

ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイス Download PDF

Info

Publication number
JP2020522767A
JP2020522767A JP2019534808A JP2019534808A JP2020522767A JP 2020522767 A JP2020522767 A JP 2020522767A JP 2019534808 A JP2019534808 A JP 2019534808A JP 2019534808 A JP2019534808 A JP 2019534808A JP 2020522767 A JP2020522767 A JP 2020522767A
Authority
JP
Japan
Prior art keywords
node
communication session
identifier
connection
communication
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.)
Granted
Application number
JP2019534808A
Other languages
English (en)
Other versions
JP6920442B2 (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 JP2020522767A publication Critical patent/JP2020522767A/ja
Application granted granted Critical
Publication of JP6920442B2 publication Critical patent/JP6920442B2/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • 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
    • 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)
  • Computer And Data Communications (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本明細書では、コンピュータ可読媒体上に格納されたコンピュータプログラムを含む、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法、デバイス及び装置が開示される。方法の1つは、第1のノードと第2のノードとの間に第1の通信セッションを確立するために、第1のノードが、第2のノードに第1のノードのノード識別子を提供し、第2のノードから第2のノードのノード識別子を受信することと、第1のノードが、第1のノードと第2のノードとの間に第2の通信セッションが存在するかどうかを判断することと、第1のノードと第2のノードとの間に第2の通信セッションが存在するという判断に応答して、第1のノードのノード識別子及び第2のノードのノード識別子に基づいて、第1の通信セッション及び第2の通信セッションのうちの1つを終了することとを含む。

Description

技術分野
[0001] 本明細書は、概して、コンピュータ技術に関し、より具体的には、ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイスに関する。
背景
[0002] 分散型台帳システム(DLS)又は合意システムとしても知られているブロックチェーンシステムは、参加エンティティが、安全に且つ不変にデータを格納できるようにすることができる。ブロックチェーンシステムは、特定の使用事例を参照することなく、いかなるDLSも含み得、パブリック、プライベート及びコンソーシアムブロックチェーンネットワークに対して使用することができる。パブリックブロックチェーンネットワークは、システムの使用及び合意プロセスへの参加を行うためにすべてのエンティティに対して開かれている。プライベートブロックチェーンネットワークは、特定のエンティティに対して提供され、読み取り及び書き込み許可を中央制御する。コンソーシアムブロックチェーンネットワークは、選択されたエンティティグループに対して提供され、合意プロセスを制御し、アクセス制御層を含む。
[0003] ブロックチェーンシステムは、1つ又は複数のブロックチェーンを維持する。ブロックチェーンは、データ(取引など)を格納するためのデータ構造であり、悪意のある関係者によるデータの改ざん及び操作を防ぐことができる。
[0004] ブロックチェーンシステムは、ピアツーピア(P2P)ネットワークを使用して実施され、ノードは、例えば、固定されたセントラルサーバを必要とすることなく、互いに直接通信する。P2Pネットワークの各ノードは、P2Pネットワークの別のノードとの通信を開始することができる。
[0005] そのようなシステムの1つでは、P2Pネットワークの2つのノード(ノードA及びノードB)は両方とも、通信を開始するために、接続要求を互いに送信することができる。両方の接続要求が処理された場合は、結果として生じたネットワークは、ノードAとノードBとの間で確立された2つの冗長接続を含むことになる。別のそのようなシステムでは、2つのノードの間でより大きなノード識別子を有するノードのみが、接続要求の送信を認められる。より小さなノード識別子を有するノードが、いかなる接続要求を受信することも認められない場合は(例えば、セキュリティ上の理由で)、2つのノード間での通信を確立することはできない。
概要
[0006] 一態様では、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するためのコンピュータ実施方法は、第1のノードと第2のノードとの間に第1の通信セッションを確立するために、第1のノードによって、第2のノードに第1のノードのノード識別子を提供し、第1のノードによって、第2のノードから第2のノードのノード識別子を受信することと、第1のノードによって、第1のノードと第2のノードとの間に第2の通信セッションが存在するかどうかを判断することと、第1のノードと第2のノードとの間に第2の通信セッションが存在するという判断に応答して、第1のノードによって、第1のノードのノード識別子及び第2のノードのノード識別子に基づいて、第1の通信セッション及び第2の通信セッションのうちの1つを終了することとを含む。
[0007] 別の態様では、ブロックチェーンシステムの第1のノードを実施するためのコンピューティングデバイスは、1つ又は複数のプロセッサと、1つ又は複数のプロセッサに結合され、命令が格納された1つ又は複数のコンピュータ可読メモリとを含む。命令は、1つ又は複数のプロセッサによって実行可能であり、第1のノードと第2のノードとの間に第1の通信セッションを確立するために、ブロックチェーンシステムの第2のノードに第1のノードのノード識別子を提供し、第2のノードから第2のノードのノード識別子を受信することと、第1のノードと第2のノードとの間に第2の通信セッションが存在するかどうかを判断することと、第1のノードと第2のノードとの間に第2の通信セッションが存在するという判断に応答して、第1のノードのノード識別子及び第2のノードのノード識別子に基づいて、第1の通信セッション及び第2の通信セッションのうちの1つを終了することとが行われる。
[0008] さらなる別の態様では、非一時的コンピュータ可読媒体は、コンピューティングデバイスのプロセッサによって実行されると、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法をコンピューティングデバイスに実行させる命令を格納する。方法は、第1のノードと第2のノードとの間に第1の通信セッションを確立するために、第1のノードによって、第2のノードに第1のノードのノード識別子を提供し、第1のノードによって、第2のノードから第2のノードのノード識別子を受信することと、第1のノードによって、第1のノードと第2のノードとの間に第2の通信セッションが存在するかどうかを判断することと、第1のノードと第2のノードとの間に第2の通信セッションが存在するという判断に応答して、第1のノードによって、第1のノードのノード識別子及び第2のノードのノード識別子に基づいて、第1の通信セッション及び第2の通信セッションのうちの1つを終了することとを含む。
図面の簡単な説明
[0009] この明細書に組み込まれ、この明細書の一部を構成する添付の図面は、実施形態を示す。図面を参照する以下の説明では、別段の表現がない限り、異なる図面における同じ番号は、同じ又は同様の要素を表す。
[0010]実施形態による、ブロックチェーンシステムの概略図である。 [0011]実施形態による、ブロックチェーンシステムのノードを実施するためのコンピューティングデバイスの概略図である。 [0012]実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法のフローチャートである。 [0013]実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法のフローチャートである。 [0014]実施形態による、ブロックチェーンシステムの概略図である。 [0015]実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための装置のブロック図である。
詳細な説明
[0016] 本明細書の実施形態は、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法及びデバイスを提供する。方法及びデバイスは、第1のノード及び第2のノードの各々が、第1のノードと第2のノードとの間に通信セッションを確立するために接続要求を送信できるようにする。次いで、方法及びデバイスは、第1のノードと第2のノードとの間に複数の通信セッションが確立されているかどうかをチェックし、確立されている場合は、第1及び第2のノードのノード識別子に基づいて、余分な通信セッション及び余分な通信セッションが確立された接続を終了することができる。
[0017] 本明細書で開示される実施形態は、1つ又は複数の技術的効果を有する。いくつかの実施形態では、方法及びデバイスは、ブロックチェーンシステムのすべてのノードに接続を要求する能力を提供する。これにより、さらなる柔軟性が可能になり、ある条件下(例えば、ノードが、事前に確立されたあるルールを満たすことができず、従って、別のノードとの接続を要求することができない場合)で起こり得る欠乏を防ぐ。他の実施形態では、方法及びデバイスは、ブロックチェーンシステムの所定の1対のノード間に複数の通信セッションが確立されているかどうかをチェックする能力を提供する。これにより、ブロックチェーンシステムは、ノード間の冗長接続の確立を回避できるようになり、それにより、演算資源が節約され、同時に、安全な環境におけるノード間の通信が促進される。さらなる他の実施形態では、そのような安全な環境は、ある要件(例えば、あるノードは、セキュリティ上の理由で、接続を要求することのみが認められており、受信したすべての接続要求を拒否する必要がある場合)を満たす。さらなる他の実施形態では、方法及びデバイスは、ブロックチェーンシステムのノードを、それらのノードのIPアドレスを使用することなく、識別する能力を提供する。これにより、1つのIPアドレスを複数のノードをサポートするために使用することができ、それにより、システム柔軟性が向上する。実用的には、1つのIPアドレスが複数のノードをサポートできるようにすることで、1つのコンピューティングデバイスが複数のノードをホストすることが可能になり、それにより、ブロックチェーンシステムを実施するためのハードウェアコストが低減される。
[0018] 以下の説明は、実施形態の詳細を提供する。実施形態では、ブロックチェーンは、データ(例えば、取引)を格納するデータ構造であり、取引が不変であり且つ後に検証することができるように格納される。ブロックチェーンは、1つ又は複数のブロックを含む。各ブロックは、前のブロックの暗号学的ハッシュを含むことによって、ブロックチェーンにおいてそのブロックの直前にある前のブロックにリンクされる。また、各ブロックは、タイムスタンプ、それ自体の暗号学的ハッシュ及び1つ又は複数の取引も含み得る。一般にブロックチェーンシステムのノードによって既に検証されている取引は、ハッシュ化し、符号化してデータ構造(マークル木など)に埋め込むことができる。マークル木では、木の葉ノードにおけるデータがハッシュ化され、木の各枝におけるすべてのハッシュは、枝の根において連結することができる。このプロセスは、木の上から木全体の根まで続き、木のすべてのデータを表すハッシュを格納する。木に格納された取引を意味するハッシュは、木の構造と一致するかどうかを判断することによって、迅速に検証することができる。
[0019] ブロックチェーンシステムは、1つ又は複数のブロックチェーンを管理、更新及び維持する演算ノードのネットワークを含む。ネットワークは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、又はコンソーシアムブロックチェーンネットワークであり得る。例えば、多くのエンティティ(数百、数千又は数百万のエンティティなど)がパブリックブロックチェーンネットワークで動作することができ、エンティティの各々は、パブリックブロックチェーンネットワークの少なくとも1つのノードにおいて動作する。それに従って、パブリックブロックチェーンネットワークは、参加エンティティに対するパブリックネットワークと見なすことができる。場合により、大多数のエンティティ(ノード)は、ブロックを有効にし、ブロックチェーンネットワークのブロックチェーンに追加するために、すべてのブロックにサインしなければならない。パブリックブロックチェーンネットワークの例は、ブロックチェーンと呼ばれる分散型台帳を活用する特定のピアツーピアペイメントネットワークを含む。
[0020] 一般に、パブリックブロックチェーンネットワークは、公的取引をサポートすることができる。公的取引は、パブリックブロックチェーンネットワークのノードのすべてと共有され、グローバルブロックチェーンに格納される。グローバルブロックチェーンは、すべてのノードにわたって複製されたブロックチェーンであり、すべてのノードは、グローバルブロックチェーンに対して完全な状態の合意にある。合意(例えば、ブロックチェーンへのブロックの追加への同意)に達するようにするため、パブリックブロックチェーンネットワークにおいて合意プロトコルが実施される。合意プロトコルの例は、プルーフ・オブ・ワーク(POW)(例えば、いくつかの暗号通貨ネットワークにおいて実施される)、プルーフ・オブ・ステーク(POS)及びプルーフ・オブ・オーソリティ(POA)を含む。
[0021] 一般に、プライベートブロックチェーンネットワークは、特定のエンティティに対して提供することができ、読み取り及び書き込み許可を中央制御する。エンティティは、どのノードがブロックチェーンネットワークに参加することができるかを制御する。結果的に、プライベートブロックチェーンネットワークは、一般に、誰がネットワークへの参加を認められているか及びその参加レベル(例えば、ある取引のみ)に対する制限が課されるパーミッション型ネットワークと呼ばれる。様々なタイプのアクセス制御メカニズム(例えば、既存の参加者が新しいエンティティの追加に投票する、規制機構がアドミッションを制御できる)を使用することができる。
[0022] 一般に、コンソーシアムブロックチェーンネットワークは、参加エンティティの間で私的なものであり得る。コンソーシアムブロックチェーンネットワークでは、合意プロセスは、許可されたノードセットによって制御され、1つ又は複数のノードは、それぞれのエンティティ(例えば、金融機関、保険会社)によって操作される。例えば、10のエンティティ(例えば、金融機関、保険会社)のコンソーシアムは、コンソーシアムブロックチェーンネットワークを操作することができ、その各々は、コンソーシアムブロックチェーンネットワークの少なくとも1つのノードを操作する。それに従って、コンソーシアムブロックチェーンネットワークは、参加エンティティに対するプライベートネットワークと見なすことができる。いくつかの例では、各エンティティ(ノード)は、ブロックを有効にし、ブロックチェーンに追加するために、すべてのブロックにサインしなければならない。いくつかの例では、エンティティ(ノード)の少なくともサブセット(例えば、少なくとも7つのエンティティ)は、ブロックを有効にし、ブロックチェーンに追加するために、すべてのブロックにサインしなければならない。
[0023] 図1は、実施形態による、ブロックチェーンシステム100の概略図を示す。図1を参照すると、ブロックチェーンシステム100は、ブロックチェーン120で動作するように構成された多数のノード(例えば、ノード102〜110)を含み得る。ノード102〜110は、ピアツーピア(P2P)ネットワークなどのネットワーク112を形成することができる。ノード102〜110の各々は、ブロックチェーン120のコピーを格納するように構成されたコンピューティングデバイス(コンピュータ又はコンピュータシステムなど)でも、コンピューティングデバイス上で実行しているソフトウェア(プロセス又はアプリケーションなど)でもよい。ノード102〜110の各々は、一意識別子を有し得る。
[0024] ブロックチェーン120は、図1のブロックB1〜B5などのデータブロックの形態の増大する記録リストを含み得る。ブロックB1〜B5の各々は、タイムスタンプ、前のブロックの暗号学的ハッシュ及び現在のブロックのデータ(金融取引などの取引であり得る)を含み得る。例えば、図1に示されるように、ブロックB5は、タイムスタンプ、ブロックB4の暗号学的ハッシュ及びブロックB5の取引データを含み得る。また、例えば、前のブロックの暗号学的ハッシュを生成するために、前のブロックに対してハッシュ操作を実行することができる。ハッシュ操作は、SHA−256などのハッシュアルゴリズムを通じて、様々な長さの入力を固定長の暗号出力に変換することができる。
[0025] ノード102〜110は、ブロックチェーン120の動作を実行するように構成することができる。例えば、ノード(例えば、ノード102)がブロックチェーン120への新しいデータの格納を希望する際、そのノードは、ブロックチェーン120に追加される新しいブロックを生成し、ネットワーク112の他のノード(例えば、ノード104〜110)に新しいブロックをブロードキャストすることができる。新しいブロックの正当性(例えば、その署名及び取引の有効性)に基づいて、他のノードは、新しいブロックを受け入れることを決定することができ、その結果、ノード102及び他のノードは、新しいブロックを、ブロックチェーン120の個々のコピーに追加することができる。このプロセスを繰り返すにつれて、ますます多くのデータブロックをブロックチェーン120に追加することができる。
[0026] 図2は、実施形態による、ブロックチェーンシステムのノード(例えば、ノード102(図1))を実施するためのコンピューティングデバイス200の概略図を示す。図2を参照すると、コンピューティングデバイス200は、通信インタフェース202、プロセッサ204、及びメモリ206を含み得る。
[0027] 通信インタフェース202は、ネットワークのコンピューティングデバイス200と他のノード(例えば、ノード104〜110(図1))を実施するデバイスとの間の通信を機能させることができる。いくつかの実施形態では、通信インタフェース202は、インターネット規格又はプロトコルなどの1つ又は複数の通信規格、サービス総合デジタル網(ISDN)規格などをサポートするように構成される。いくつかの実施形態では、通信インタフェース202は、ローカルエリアネットワーク(LAN)カード、ケーブルモデム、衛星モデム、データバス、ケーブル、無線通信チャネル、電波ベース通信チャネル、セルラ通信チャネル、インターネットプロトコル(IP)ベース通信デバイス、或いは、有線及び/又は無線通信用の他の通信デバイスのうちの1つ又は複数を含み得る。いくつかの実施形態では、通信インタフェース202は、パブリッククラウドインフラ、プライベートクラウドインフラ、ハイブリッドパブリック/プライベートクラウドインフラに基づき得る。
[0028] プロセッサ204は、1つ又は複数の専用処理ユニット、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)又は様々な他のタイプのプロセッサ若しくは処理ユニットを含み得る。プロセッサ204は、メモリ206と結合され、メモリ206に格納された命令を実行するように構成される。
[0029] メモリ206は、プロセッサ実行可能命令及びデータ(ブロックチェーン120(図1)のコピーなど)を格納するように構成することができる。メモリ206は、スタティックランダムアクセスメモリ(SRAM)、電気的消去型プログラム可能読み取り専用メモリ(EEPROM)、消去型プログラム可能読み取り専用メモリ(EPROM)、プログラム可能読み取り専用メモリ(PROM)、読み取り専用メモリ(ROM)、磁気メモリ、フラッシュメモリ又は磁気若しくは光ディスクなど、任意のタイプの揮発性若しくは不揮発性メモリデバイス又はその組合せを含み得る。メモリ206の命令がプロセッサ204によって実行されると、コンピューティングデバイス200は、ブロックチェーン120上の動作を実行することができる。
[0030] ブロックチェーンシステム100(図1)の動作を機能させるため、ネットワーク112のノード102〜110は、ノード間通信方法に従って動作することができる。このノード間通信方法は、ネットワークの第1のノードと第2のノードとの間の通信を確立するためのプロセスを指定することができ、その結果、2つのノード間の冗長接続を回避することができる。
[0031] 例えば、ノード102及び104は、接続要求を送信する前に、例えば、それらのノードの対応するIPアドレスに基づいて、接続が既に確立されているかどうかを検証することができる。それに加えて、接続要求が受信され次第、受信ノードは、接続が既に確立されているかどうかを検証することができる。受信ノードは、接続が既に確立されていると判断した場合は、接続要求を拒否し、冗長接続を効果的に回避することができる。
[0032] 図3は、実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法300のフローチャートを示す。例えば、ブロックチェーンシステムは、複数のノードを含むP2Pネットワークとして実施することができる。また、例えば、方法300は、第2のノードとしてのノード104(図1)との通信を開始するために、第1のノードとしてのノード102(図1)によって実行することができる。
[0033] 図1及び3を参照すると、ステップ302では、ノード102は、ノード102とノード104との間に前の通信セッションが既に存在しているか又は確立されているかどうかを検証することができる。例えば、通信セッションは、ノード102とノード104との間の一時的な対話型の情報交換であり得る。具体的な実施形態に応じて、通信セッションは、アプリケーション層又はセッション層に確立することができる。いくつかの実施形態では、ノード102は、ノード104のノード識別子を使用して、ノード102とノード104との間に通信セッションが既に存在しているかどうかを検証することができる。
[0034] ステップ304では、ノード102とノード104との間に前の通信セッションが既に存在しているとノード102が判断した場合は、ノード102は、方法300の実行を終了することができる。他方では、ノード102とノード104との間に前の通信セッションが存在しないとノード102が判断した場合は、ステップ306において、ノード102は、ノード104と関連付けられたIPアドレスに接続要求を送信することができる。例えば、接続要求は、ノード102とノード104との間の物理的な通信チャネルを確立するように構成される。いくつかの実施形態では、ノード102は、トランスポート層レベルでのノード104との接続を要求することができる(例えば、ノード104との伝送制御プロトコル(TCP)接続の確立を要求する)。いくつかの実施形態では、ノード102は、ノード104との通信セッションを作成することなくTCP接続を確立することによって、ステップ306を実行することができる。
[0035] ステップ308では、ノード102は、ノード104との接続が成功したかどうかを判断することができる。成功しなかった場合(例えば、ノード104によって接続要求が拒否されたため)は、ノード102は、方法300の実行を終了することができる。他方では、接続が成功したとノード102が判断した場合は、ステップ310において、ノード102は、ノード102とノード104との間に通信セッションが存在するかどうかをさらに判断することができる。例えば、ノード102がノード104との接続を要求する際、ノード104もまた、ノード102と接続してノード102との通信セッションを確立することを要求する可能性がある。ステップ310においてノード102とノード104との間に通信セッションが存在するとノード102が判断した場合は、ノード102は、方法300の実行を終了することができる。そうでなければ、ノード102は、ステップ312に進むことができる。
[0036] ステップ312では、ノード102は、ノード104にノード102のノード識別子を提供し、且つ、ノード104からノード104のノード識別子を受信することによって、ノード104とノード識別子を交換することができる。いくつかの実施形態では、ノード102及びノード104の各々は、セキュリティ上の理由で、それらのノードのプライベートキーを使用して交換にサインすることができる。例えば、ノード102は、ノード102のプライベートキーを使用してそのノード識別子を暗号化することができ、ノード104は、ノード104のプライベートキーを使用してそのノード識別子を暗号化することができる。しかし、いくつかの実施形態では、ノード102及び104が安全な環境(例えば、隔離されたテスト環境)で動作している場合など、プライベートキーを使用して交換にサインすることは必要ではない場合がある。具体的な実施形態は変化し得るが、この交換の目的は、ステップ314においてノード102とノード104との間の接続上に通信セッションを確立するためにノード識別子の交換を機能させることである点を理解されたい。
[0037] ステップ316では、ノード102は、ノード102とノード104との間に別の通信セッション(例えば、たった今ステップ314において確立された通信セッションとは異なる前の通信セッション)が既に存在しているかどうかを判断することができる。例えば、ノード102がノード104とノード識別子を交換する際、ノード104もまた、ノード102との通信セッションを確立する可能性がある。ノード102とノード104との間に他の通信セッションが存在しないとノード102が判断した場合は、ノード102は、方法300の実行を終了することができる。他方では、ノード102とノード104との間に別の通信セッションが既に存在しているとノード102が判断した場合は、ノード102は、事前に確立されたルールに基づいて、通信セッションのうちの1つを終了するために、ステップ318に進むことができる。また、ノード102は、終了した通信セッションが確立されていたノード102とノード104との間の接続を終了することもできる。
[0038] 事前に確立されたルールは、ノード識別子に基づき得る。例えば、ノード102は、より大きな(又はより小さな)ノード識別子を有するノードによって開始された通信セッションの終了を選択することができる。また、事前に確立されたルールは、使用される因子が通信セッションを系統的に区別できる限り、他の因子にも基づき得、その結果、ある通信セッションの存続を認め、且つ、他のすべての通信セッションを識別して終了することができる。例えば、事前に確立されたルールは、ノード102が、以前に確立されたすべての通信セッションを終了し、ごく最近確立された通信セッションを維持することを要請し得る。
[0039] 図4は、実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための方法400のフローチャートである。例えば、ブロックチェーンシステムは、複数のノードを含むP2Pネットワークで実施される。また、例えば、方法400は、第1のノードとしてのノード102(図1)によって送信された接続要求を処理するために、第2のノードとしてのノード104(図1)によって実行することができる。
[0040] 図1及び4を参照すると、ステップ402では、ノード104は、ノード102によって送信された接続要求を受信することができる。いくつかの実施形態では、ノード102は、トランスポート層レベルでのノード104との接続を要求することができる(例えば、ノード104との伝送制御プロトコル(TCP)接続の確立を要求する)。ノード104は、要求を処理し、ノード102との接続を相応に確立することができる。
[0041] ステップ404では、ノード104は、ノード102にノード104のノード識別子を提供し、且つ、ノード102からノード102のノード識別子を受信することによって、ノード102とノード識別子を交換することができる。いくつかの実施形態では、ノード102及びノード104の各々は、セキュリティ上の理由で、それらのノードのプライベートキーを使用して交換にサインすることができる。しかし、いくつかの実施形態では、ノード102及び104が安全な環境(例えば、隔離されたテスト環境)で動作している場合など、プライベートキーを使用して交換にサインすることは必要ではない場合がある。具体的な実施形態は変化し得るが、この交換の目的は、ステップ406においてノード102とノード104との間の接続上に通信セッションを確立するためにノード識別子の交換を機能させることである点を理解されたい。
[0042] ステップ408では、ノード104は、ノード102とノード104との間に別の通信セッション(例えば、たった今ステップ406において確立された通信セッションとは異なる前の通信セッション)が既に存在しているかどうかを判断することができる。例えば、ノード104がノード102とノード識別子を交換する際、ノード102もまた、ノード104との通信セッションを確立する可能性がある。ノード102とノード104との間に前の通信セッションが存在しないとノード104が判断した場合は、ノード104は、方法400の実行を終了することができる。他方では、ノード102とノード104との間に前の通信セッションが既に存在しているとノード104が判断した場合は、ノード104は、事前に確立されたルールに基づいて、通信セッションのうちの1つを終了するために、ステップ410に進むことができる。また、ノード104は、終了した通信セッションが確立されていたノード102とノード104との間の接続を終了することもできる。
[0043] いくつかの実施形態では、ノード104は、どの通信セッションを終了するかを選択するために、ノード102によって使用されたものと同じ事前に確立されたルールを使用するように構成される。例えば、終了するセッションとして、より大きなノード識別子を有するノードによって開始された通信セッションを選択するようにノード102が構成される場合は、ノード104は、同じルールを使用するように構成され、それにより、ノード102とノード104とが同じ通信セッションを終了させるようにすることができる。
[0044] 理解されるように、上記で説明される第1のノードと第2のノードとの間の通信を確立するための方法は、第1及び第2のノードのノード識別子に基づく。従って、示される実施形態において複数のノードをサポートするために1つのIPアドレスを使用することができる。その結果、示される実施形態において1つのコンピューティングデバイスを使用して複数のノードを実施することができる。
[0045] 図5は、実施形態による、ブロックチェーンシステム500の概略図を示す。図5を参照すると、ブロックチェーンシステム500は、ブロックチェーン120で動作するように構成されたノード102〜110(図1)と同様に、ブロックチェーン520で動作するように構成された複数のノード502〜510を含み得る。その上、コンピューティングデバイス530が、ノード502〜506をホストするように構成される。コンピューティングデバイス530は、コンピューティングデバイス200(図2)と同様の方法で実施することができる。すなわち、コンピューティングデバイス530は、通信インタフェース、プロセッサ及びメモリを含み得る。いくつかの実施形態では、コンピューティングデバイス530は、ノード502〜506をホストするために、ハイパーバイザ及び/又は仮想マシンを実施することができる。いくつかの実施形態では、コンピューティングデバイス530は、並列実行されるプロセス又はアプリケーションとしてノード502〜506をホストすることができる。また、コンピューティングデバイス530は、ノード502〜506をホストするために他のコンピューティング技法を使用することもできる。
[0046] 1つのコンピューティングデバイスを使用して複数のノードをホストする能力を有することで、ブロックチェーンシステムに対するハードウェアコストを低減することができる。しかし、これらのコンピューティングデバイスは、複数のノードをホストする必要はない。図5に示されるように、例えば、コンピューティングデバイス540及び550を使用して、単に1つのノード508及び510をそれぞれホストすることができ、すべてのノード502〜510は、上記で説明されるように、ブロックチェーン520で動作するために集合的に動作することができる。その上、本明細書の実施形態に従って構成された方法は、ノードが接続要求を開始できることに対して、いかなる制限も課さないということに留意されたい。
[0047] 上記で提示される様々な実施形態は、単なる例示であり、制限するものではない。例えば、ノード102及び104(図1)は、方法300(図3)及び400(図4)の実行を示すために使用されているが、ブロックチェーンシステム100のいかなるノードも、別のノードとの通信を要求するために方法300を使用することができる。同様に、ブロックチェーンシステム100のいかなるノードも、受信した接続要求を処理するために方法400を使用することができる。
[0048] 方法300及び400は、上記で説明されるパブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、又はコンソーシアムブロックチェーンネットワークなど、様々なタイプのブロックチェーンネットワークにおいて使用することができる。また、方法300及び400は、本明細書の精神及び範囲から逸脱することなく、例えば、記録管理、暗号通貨、ブロックチェーンベースの分散型台帳又は同様のものなど、様々なタイプのアプリケーションにおいても使用することができる。
[0049] 図6は、実施形態による、ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための装置600のブロック図である。例えば、装置600は、第1のノード及び第2のノードの各々を実施することができる。また、例えば、装置600は、ソフトウェアプロセスの実施形態であり得、方法300(図3)又は方法400(図4)に相当し得る。図6を参照すると、装置600は、交換モジュール602、判断モジュール604、及び終了モジュール606を含み得る。
[0050] 交換モジュール602は、第1のノードと第2のノードとの間に第1の通信セッションを確立するために、第2のノードに第1のノードのノード識別子を提供し、第2のノードから第2のノードのノード識別子を受信することができる。判断モジュール604は、第1のノードと第2のノードとの間に第2の通信セッションが存在するかどうかを判断することができる。終了モジュール606は、第1のノードと第2のノードとの間に第2の通信セッションが存在するという判断に応答して、第1のノードのノード識別子及び第2のノードのノード識別子に基づいて、第1の通信セッション及び第2の通信セッションのうちの1つを終了することができる。
[0051] また、装置600は、通信モジュール608も含み得る。通信モジュール608は、第1のノードと第2のノードとの間の接続を確立するために、第2のノードに接続要求を送信すること、又は、第2のノードから接続要求を受信することができる。通信モジュール608は、第1のノードと第2のノードとの間の接続上に通信セッションもさらに確立することができる。
[0052] 上記で説明されるモジュールの各々は、ソフトウェア、ハードウェア、又はソフトウェアとハードウェアの組合せとして実施することができる。例えば、上記で説明されるモジュールの各々は、メモリに格納されたプロセッサ実行命令を使用して実施することができる。また、例えば、上記で説明されるモジュールの各々は、説明される方法を実行するための、1つ又は複数の特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、コントローラ、マイクロコントローラ、マイクロプロセッサ又は他の電子コンポーネントと共に実施することができる。さらに、例えば、上記で説明されるモジュールの各々は、コンピュータチップ又はエンティティを使用することによって実施することも、ある機能を有する製品を使用することによって実施することもできる。一実施形態では、装置600は、コンピュータであり得、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、携帯電話、カメラ電話、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、Eメール受信及び送信デバイス、ゲームコンソール、タブレットコンピュータ、着用可能デバイス、又は、これらのデバイスの任意の組合せであり得る。
[0053] 装置600の各モジュールの機能及び役割の実施プロセスに対し、上記で説明される方法の対応するステップを参照することができる。簡単にするため、ここでは、詳細を省略する。
[0054] いくつかの実施形態では、コンピュータプログラム製品は、上記で説明される方法をプロセッサに実行させるためのコンピュータ可読プログラム命令を有する非一時的コンピュータ可読記憶媒体を含み得る。
[0055] コンピュータ可読記憶媒体は、命令実行デバイスによる使用のために命令を格納することができる非一時的なデバイスであり得る。コンピュータ可読記憶媒体は、例えば、これらに限定されないが、電子記憶装置、磁気記憶装置、光学記憶装置、電磁記憶装置、半導体記憶装置又は前述の任意の適切な組合せであり得る。コンピュータ可読記憶媒体のより具体的な例の非包括的なリストは、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去型プログラム可能読み取り専用メモリ(EPROM)、スタティックランダムアクセスメモリ(SRAM)、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、デジタル多用途ディスク(DVD)、メモリスティック、フロッピーディスク、命令が記録されたパンチカード又は溝状の隆起構造などの機械的符号化デバイス、及び、前述の任意の適切な組合せを含む。
[0056] 上記で説明される方法を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、機械命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、又は、オブジェクト指向プログラミング言語及び従来の手続き型プログラミング言語を含む1つ若しくは複数のプログラミング言語の任意の組合せで記載されたソースコード若しくはオブジェクトコードであり得る。コンピュータ可読プログラム命令は、スタンドアロンソフトウェアパッケージとしてコンピューティングデバイス上で完全に実行することも、第1のコンピューティングデバイス上で部分的に実行し、第1のコンピューティングデバイスからリモート設置された第2のコンピューティングデバイス上で部分的に実行することもできる。後者のシナリオでは、第2のリモートコンピューティングデバイスは、ローカルエリアネットワーク(LAN)又は広域ネットワーク(WAN)を含む任意のタイプのネットワークを通じて、第1のコンピューティングデバイスに接続することができる。
[0057] コンピュータ可読プログラム命令は、機械を生成するために汎用若しくは専用コンピュータ又は他のプログラム可能データ処理装置のプロセッサに提供することができ、その結果、コンピュータ又は他のプログラム可能データ処理装置のプロセッサを介して実行される命令は、上記で説明される方法を実施するための手段を作成することができる。
[0058] 図のフローチャート及び図面は、アーキテクチャ、機能性、並びに、本明細書の様々な実施形態によるデバイス、方法及びコンピュータプログラム製品の可能な実施形態の動作を示す。この関連で、フローチャート又は図面のブロックは、特定の機能を実施するための1つ又は複数の実行可能命令を含むソフトウェアプログラム、セグメント又はコードの一部分を表し得る。また、いくつかの代替の実施形態では、ブロックに記述される機能は、図に記述される順番以外で起こり得ることにも留意すべきである。例えば、関与する機能性に応じて、連続して示される2つのブロックを、実際には、実質的に同時に実行することも、場合により、ブロックを逆の順番で実行することもできる。また、図面及び/又はフローチャートの各ブロック、並びに図面及びフローチャートのブロックの組合せは、指定された機能若しくは動作を実行する専用ハードウェアベースシステムによって又は専用ハードウェアとコンピュータ命令の組合せによって実施できることにも留意されたい。
[0059] 明確にするために別個の実施形態の文脈において説明されている本明細書のある特徴は、単一の実施形態において組み合わせて提供することもできることが理解されている。逆に、簡単にするために単一の実施形態の文脈において説明されている本明細書の様々な特徴は、別々に、任意の適切な下位組合せで又は本明細書の他の任意の説明される実施形態に適するように提供することもできる。様々な実施形態の文脈において説明されているある特徴は、そのように記述されない限り、それらの実施形態の絶対不可欠な特徴ではない。
[0060] 本明細書では、様々な要素を説明するために「第1の」及び「第2の」などの用語が使用されているが、要素はこれらの用語によって制限されるべきではなく、これらの用語は要素を区別するためだけに使用されることが理解されている。例えば、本明細書の精神及び範囲から逸脱することなく、第1の要素(例えば、第1のノード)は、第2の要素(例えば、第2のノード)と呼ぶこともでき、同様に、第2の要素は、第1の要素と呼ぶこともできる。
[0061] 本明細書は、特定の実施形態と併せて説明してきたが、多くの代替の形態、変更形態及び変形形態が当業者にとって明らかであろう。それに従って、以下の請求項は、請求項の条件内に収まるそのようなすべての代替の形態、変更形態及び変形形態を取り入れる。

Claims (12)

  1. ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するためのコンピュータ実施方法であって、
    前記第1のノードと前記第2のノードとの間に第1の通信セッションを確立するために、前記第1のノードによって、前記第2のノードに前記第1のノードのノード識別子を提供し、前記第1のノードによって、前記第2のノードから前記第2のノードのノード識別子を受信することと、
    前記第1のノードによって、前記第1のノードと前記第2のノードとの間に第2の通信セッションが存在するかどうかを判断することと、
    前記第1のノードと前記第2のノードとの間に前記第2の通信セッションが存在するという判断に応答して、前記第1のノードによって、前記第1のノードの前記ノード識別子及び前記第2のノードの前記ノード識別子に基づいて、前記第1の通信セッション及び前記第2の通信セッションのうちの1つを終了することと
    を含む、方法。
  2. 前記第1のノードによって、前記第1のノードと前記第2のノードとの間の接続を終了することであって、前記第1の通信セッション及び前記第2の通信セッションのうちの1つが、前記接続上に確立される、終了すること
    をさらに含む、請求項1に記載の方法。
  3. 前記第1のノードによって、前記第2のノードに前記第1のノードのノード識別子を提供し、前記第1のノードによって、前記第2のノードから前記第2のノードのノード識別子を受信する前に、
    前記第1のノードと前記第2のノードとの間の接続を確立するために、前記第1のノードによって、前記第2のノードに第1の接続要求を送信すること、又は、
    前記第1のノードと前記第2のノードとの間の前記接続を確立するために、前記第1のノードによって、前記第2のノードから第2の接続要求を受信すること
    のうちの1つをさらに含む、請求項1又は2に記載の方法。
  4. 前記第1のノードと前記第2のノードとの間の前記接続が確立される前に、
    前記第1のノードによって、前記第1のノードと前記第2のノードとの間に、前の通信セッションが存在するかどうかを判断することと、
    前記第1のノードと前記第2のノードとの間に、前の通信セッションが存在しないという判断に応答して、前記第1のノードと前記第2のノードとの間の前記接続を確立するために、前記第1のノードによって、前記第2のノードと関連付けられたインターネットプロトコル(IP)アドレスに前記第1の接続要求を送信することと
    をさらに含む、請求項3に記載の方法。
  5. 前記第1のノードと前記第2のノードとの間の前記接続が確立された後に、
    前記第1のノードによって、前記第1のノードと前記第2のノードとの間に、前の通信セッションが存在するかどうかを判断することと、
    前記第1のノードと前記第2のノードとの間に、前の通信セッションが存在しないという判断に応答して、前記第1のノードによって、前記第2のノードに前記第1のノードの前記ノード識別子を前記提供すること、及び前記第2のノードから前記第2のノードの前記ノード識別子を前記受信することを実行することと
    をさらに含む、請求項3に記載の方法。
  6. 伝送制御プロトコル(TCP)接続が、前記第1のノードと前記第2のノードとの間の前記接続として確立され、前記方法が、
    前記TCP接続に基づいて前記第1の通信セッションを確立すること
    をさらに含む、請求項3に記載の方法。
  7. 前記第2のノードに前記第1のノードの前記ノード識別子を提供する前に、前記第1のノードによって、前記第1のノードのプライベートキーを使用して前記第1のノードの前記ノード識別子を暗号化すること
    をさらに含む、請求項1〜6のいずれか一項に記載の方法。
  8. 前記第1のノードによって、前記第1の通信セッション及び前記第2の通信セッションのうちの1つを終了することが、
    前記第1のノード及び前記第2のノードのうち、より大きなノード識別子を有するノードを決定することと、
    前記第1の通信セッション及び前記第2の通信セッションのうち、前記決定されたノードから送信された接続要求に基づいて確立された通信セッションを決定することと、
    終了のために、前記第1の通信セッション及び前記第2の通信セッションのうちの前記決定された通信セッションを選択することと
    を含む、請求項1〜7のいずれか一項に記載の方法。
  9. 前記第1のノードによって、前記第1の通信セッション及び前記第2の通信セッションのうちの1つを前記終了することが、
    前記第1のノード及び前記第2のノードのうち、より小さなノード識別子を有するノードを決定することと、
    前記第1の通信セッション及び前記第2の通信セッションのうち、前記決定されたノードから送信された接続要求に基づいて確立された通信セッションを決定することと、
    終了のために、前記第1の通信セッション及び前記第2の通信セッションのうちの前記決定された通信セッションを選択することと
    を含む、請求項1〜8のいずれか一項に記載の方法。
  10. ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するためのコンピューティングデバイスであって、
    1つ又は複数のプロセッサと、
    前記1つ又は複数のプロセッサに結合され、請求項1〜9のいずれか一項に記載の方法を実行するために、前記1つ又は複数のプロセッサによって実行可能である命令が格納された1つ又は複数のコンピュータ可読メモリと
    を含む、コンピューティングデバイス。
  11. ブロックチェーンシステムの第1のノードと第2のノードとの間の通信を確立するための装置であって、請求項1〜9のいずれか一項に記載の方法を実行するための複数のモジュールを含む、装置。
  12. コンピューティングデバイスのプロセッサによって実行されると、請求項1〜9のいずれか一項に記載の方法を前記コンピューティングデバイスに実行させる命令が格納された非一時的コンピュータ可読媒体。
JP2019534808A 2019-02-01 2019-02-01 ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイス Active JP6920442B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/074436 WO2019072318A2 (en) 2019-02-01 2019-02-01 METHODS AND DEVICES FOR ESTABLISHING COMMUNICATION BETWEEN NODES IN A BLOCK CHAIN SYSTEM

Publications (2)

Publication Number Publication Date
JP2020522767A true JP2020522767A (ja) 2020-07-30
JP6920442B2 JP6920442B2 (ja) 2021-08-18

Family

ID=66100023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019534808A Active JP6920442B2 (ja) 2019-02-01 2019-02-01 ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイス

Country Status (7)

Country Link
US (2) US11310321B2 (ja)
EP (1) EP3607727B1 (ja)
JP (1) JP6920442B2 (ja)
KR (1) KR102284422B1 (ja)
CN (1) CN110731073B (ja)
PH (1) PH12019501487A1 (ja)
WO (1) WO2019072318A2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11386217B2 (en) * 2019-02-20 2022-07-12 Sap Se Hybrid centralized and decentralized enterprise system
US11327946B2 (en) 2019-02-20 2022-05-10 Sap Se Hybrid centralized and decentralized enterprise system
CN111404897A (zh) * 2020-03-06 2020-07-10 深圳前海达闼云端智能科技有限公司 消息分发方法、装置、存储介质及电子设备
US20220237594A1 (en) * 2021-01-26 2022-07-28 Akamai Technologies, Inc. High performance distributed system of record with wallet services resiliency

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2453315A (en) 2007-08-15 2009-04-08 Nec Corp Connection Identifier in a telecommunications network
EP2071809A1 (en) 2007-12-13 2009-06-17 Alcatel Lucent Method of establishing a connection in a peer-to-peer network with network address translation (NAT)
ES2371378T3 (es) 2008-04-04 2011-12-30 Canon Kabushiki Kaisha Sistema de gestión de sesiones y método para controlar las mismas.
CN101753592B (zh) 2008-11-28 2013-04-17 国际商业机器公司 用于数据处理的方法和系统
US20110078312A1 (en) * 2009-09-30 2011-03-31 Alcatel-Lucent Method and system for monitoring incoming connection requests in a Peer-to-Peer network
US20110213897A1 (en) * 2010-02-26 2011-09-01 Qualcomm Incorporated Systems and methods for releasing stale connection contexts
US9413758B2 (en) 2012-05-24 2016-08-09 Fmr Llc Communication session transfer between devices
GB201321148D0 (en) * 2013-11-29 2014-01-15 Bridgeworks Ltd Data transfer
SE538279C2 (sv) 2014-09-23 2016-04-19 Kelisec Ab Förfarande och system för att fastställa förekomst av
US10791031B2 (en) * 2015-05-28 2020-09-29 Cisco Technology, Inc. Methods and systems for managing connected data transfer sessions
JP6482406B2 (ja) 2015-06-23 2019-03-13 キヤノン株式会社 通信装置、通信装置の制御方法、およびプログラム
WO2018122184A1 (en) 2016-12-29 2018-07-05 Koninklijke Philips N.V. Wireless communication system
US11296873B2 (en) 2017-06-07 2022-04-05 Nchain Licensing Ag Methods and systems to establish trusted peer-to-peer communications between nodes in a blockchain network
CN107592292B (zh) * 2017-07-26 2019-08-09 阿里巴巴集团控股有限公司 一种区块链节点间通信方法及装置
US20200028775A1 (en) * 2018-07-19 2020-01-23 Moac Blockchain Tech Inc Apparatus and Method for Decentralized Anonymous Communication

Also Published As

Publication number Publication date
US10880383B2 (en) 2020-12-29
EP3607727A2 (en) 2020-02-12
EP3607727B1 (en) 2023-11-22
WO2019072318A2 (en) 2019-04-18
KR102284422B1 (ko) 2021-08-04
CN110731073B (zh) 2022-05-24
PH12019501487A1 (en) 2020-02-24
US20200252465A1 (en) 2020-08-06
CN110731073A (zh) 2020-01-24
KR20200096720A (ko) 2020-08-13
JP6920442B2 (ja) 2021-08-18
US20200382603A1 (en) 2020-12-03
WO2019072318A3 (en) 2019-11-14
EP3607727A4 (en) 2020-05-27
US11310321B2 (en) 2022-04-19

Similar Documents

Publication Publication Date Title
KR102237219B1 (ko) 분산 시스템 내의 네트워크 노드들 간의 합의 달성
US11811910B2 (en) Blockchain maintenance method and apparatus, server, and computer-readable storage medium
US11265322B2 (en) Data isolation in blockchain networks
TWI705680B (zh) 用於配置局部共識的方法和裝置及電腦可讀儲存媒體
JP6920442B2 (ja) ブロックチェーンシステムのノード間の通信を確立するための方法及びデバイス
US20190149600A1 (en) Partitioning of a blockchain ledger
US10725803B1 (en) Methods and systems for automatic blockchain deployment based on cloud platform
WO2019137566A2 (en) Methods and devices for validating transaction in blockchain system
JP2021508877A (ja) 高性能分散型記録システム
EP3619668B1 (en) Performing parallel execution of transactions in a distributed ledger system
US11182403B2 (en) Systems and methods of launching new nodes in a blockchain network
JP2022509933A (ja) 鍵管理を伴う高性能分散型記録システム
CN111556120A (zh) 基于区块链的数据处理方法、装置、存储介质及设备
US20210303633A1 (en) Shard hashing
US11157897B2 (en) Methods and devices for managing access to account in blockchain system
CN110149323B (zh) 一种具有千万级tps合约处理能力的处理装置
JP2022508211A (ja) ホストされたオリジンサービスを伴う高性能分散型記録システム
US20200202349A1 (en) Multiple asset transactions
US11893577B2 (en) Cryptographic key storage system and method
US11418342B2 (en) System and methods for data exchange using a distributed ledger
US20210281417A1 (en) Methods and devices for generating and verifying passwords
WO2021088451A1 (en) Methods and devices for preventing denial-of-service attack on blockchain system
Ramesh et al. Public auditing for shared data with efficient user revocation in the cloud
CN116506227B (zh) 数据处理方法、装置、计算机设备和存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201027

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201221

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210621

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: 20210628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210726

R150 Certificate of patent or registration of utility model

Ref document number: 6920442

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150