JP2020516108A - グローバル加速ノードを用いたブロックチェーントランザクション速度の改善 - Google Patents

グローバル加速ノードを用いたブロックチェーントランザクション速度の改善 Download PDF

Info

Publication number
JP2020516108A
JP2020516108A JP2019542583A JP2019542583A JP2020516108A JP 2020516108 A JP2020516108 A JP 2020516108A JP 2019542583 A JP2019542583 A JP 2019542583A JP 2019542583 A JP2019542583 A JP 2019542583A JP 2020516108 A JP2020516108 A JP 2020516108A
Authority
JP
Japan
Prior art keywords
blockchain
node
acceleration
transaction
networks
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.)
Pending
Application number
JP2019542583A
Other languages
English (en)
Inventor
ニン・シャ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of JP2020516108A publication Critical patent/JP2020516108A/ja
Pending legal-status Critical Current

Links

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
    • 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
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスが与えられ、複数のブロックチェーン加速ネットワークは、複数の加速ノードを含み、各加速ノードは、複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能である。転送すべきトランザクションは、第1の加速ノードにおいて、複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから受信される。トランザクションは、第1の加速ノードによって第2のノードに転送される。

Description

本発明は、ブロックチェーン技術に関する。
分散型台帳システム(DLS:Distributed Ledger System)は、コンセンサスネットワークおよび/またはブロックチェーンネットワークとも呼ばれ、参加エンティティがデータをセキュアかつ不変に記憶することを可能にする。DLSは、いかなる特定の使用ケースも参照することなく、一般にブロックチェーンネットワークと呼ばれる。例示的なタイプのブロックチェーンネットワークには、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、およびコンソーシアムブロックチェーンネットワークが含まれ得る。パブリックブロックチェーンネットワークは、あらゆるエンティティがDLSを使用し、コンセンサスプロセスに参加するように開かれている。プライベートブロックチェーンネットワークは、読取り許可および書込み許可を中央制御する特定のエンティティのために提供される。コンソーシアムブロックチェーンネットワークは、コンセンサスプロセスを制御するエンティティの選択グループのために提供され、アクセス制御層を含む。
従来型ブロックチェーンシステムでは、トランザクション送信プロセスが、トランザクションを生成し、トランザクションをブロックチェーンノードに送るクライアントを含む。ブロックチェーンノードは、トランザクションのバッチに対するコンセンサスを取得し、その後、トランザクションが1つずつ実行される。実行結果は、新しいブロックチェーンノードに書き込まれる。このプロセスは、クライアントがブロックチェーンノードにトランザクションを通信することによって主に達成されるトランザクションネットワーク伝送を含む。既存のブロックチェーン環境では、直接ネットワーク接続が通信のために使用される。
しかしながら、クライアントとブロックチェーンノードとの間の直接ネットワーク接続は、最適未満であり得る。その単純さに起因して、直接ネットワーク接続は非効率であり得る。ネットワークは、ネットワークの複雑さに対処することに適応できないことがあり得る。たとえば、ネットワークは、ネットワーク問題がノード間の通信を遅くする状況に対処できないことがある。この非効率さが理由で、1つのネットワーク内の2つのネットワークノードがデータを送信する必要があるとき、確立された直接接続が最速の可能な接続ではないことがある。たとえば、2つのノードがクロスボーダネットワーク内に存在するとき、または2つのノードが異なるネットワークオペレータに属するとき、直接ネットワーク接続は非効率となり、または低速となり得る。一般に、ブロックチェーン内のトランザクションの伝送時間はランダムであり、または未知である。これらの問題に対処するために直接ネットワーク接続が使用され得るが、直接ネットワーク接続に対処するためのより効率的な解決策が有利となるはずである。
本明細書の実装例は、ブロックチェーンネットワークトランザクションを改善するためのコンピュータ実装方法を含む。より具体的には、本明細書の実装例は、グローバル加速ノードを使用してブロックチェーントランザクション速度を改善することを対象とする。
いくつかの実装例では、アクションが、ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを与えることであって、複数のブロックチェーン加速ネットワークが、複数の加速ノードを含み、各加速ノードが、複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能である、与えること、第1の加速ノードにおいて、複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信すること、および第1の加速ノードによって、第2のノードにトランザクションを転送することを含む。
他の実装例には、コンピュータ記憶デバイス上に符号化された、方法のアクションを実行するように構成された、対応するシステム、装置、およびコンピュータプログラムが含まれる。
任意選択で、これらおよび他の実装例は、以下の特徴のうちの1つまたは複数を含み得る。
第2のノードが、のブロックチェーンの第2のブロックチェーン内のノードである、以下の特徴のうちのいずれかと組合せ可能な第1の特徴。
第2のノードが、複数のブロックチェーン加速ネットワーク内の第2の加速ノードである、前述の特徴または以下の特徴のうちのいずれかと組合せ可能な第2の特徴。
第1のブロックチェーン内の第1のノードと、第2のブロックチェーン内の第2のノードとが、異なるネットワーク内に存在する、前述の特徴または以下の特徴のうちのいずれかと組合せ可能な第3の特徴。
配信されたトランザクションに関する統計を収集して、より高速なトランザクション配信時間を実現する複数のブロックチェーン加速ネットワーク内の加速ノードを決定すること、およびブロックチェーントランザクション加速システムによる使用のために、より高速なトランザクション配信時間を有する加速ノードを選択することをさらに含む、前述の特徴または以下の特徴のうちのいずれかと組合せ可能な第4の特徴。
ブロックチェーントランザクション加速システムが、複数のブロックチェーンおよび複数のブロックチェーン加速ネットワーク内で実装される、前述の特徴または以下の特徴のうちのいずれかと組合せ可能な第5の特徴。
複数のブロックチェーン加速ネットワークに加入するための要求を第3のブロックチェーンから受信すること、および複数のブロックチェーン加速ネットワークへのアクセスを第3のブロックチェーンに与えることをさらに含む、前述の特徴または以下の特徴のうちのいずれかと組合せ可能な第6の特徴。
本明細書はまた、1つまたは複数のプロセッサに結合され、命令が記憶された、1つまたは複数の非一時的コンピュータ可読記憶媒体であって、命令は、1つまたは複数のプロセッサによって実行されるとき、1つまたは複数のプロセッサに、本明細書において提供される方法の実装例に従って動作を実行させる、1つまたは複数の非一時的コンピュータ可読記憶媒体を提供する。
本明細書は、本明細書において提供される方法を実装するためのシステムをさらに提供する。システムは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサに結合され、命令が記憶されたコンピュータ可読記憶媒体とを含み、命令は、1つまたは複数のプロセッサによって実行されるとき、1つまたは複数のプロセッサに、本明細書において提供される方法の実装例に従って動作を実行させる。
本明細書による方法が、本明細書において説明される態様および特徴の任意の組合せを含み得ることを理解されたい。すなわち、本明細書による方法は、本明細書において具体的に説明される態様および特徴の組合せに限定されず、提供される態様および特徴の任意の組合せをも含む。
本明細書の1つまたは複数の実装例の詳細は、添付の図面および以下の説明において説明される。説明および図面、ならびに特許請求の範囲から、本明細書の他の特徴および利点が明らかとなるであろう。
本明細書の実装例を実行するために使用され得る環境の一例を示す図である。 本明細書の実装例による概念アーキテクチャの一例を示す図である。 本明細書の実装例による、ブロックチェーン内の2つのノード間で直接的に送られるトランザクションについての経路の一例を示すブロック図である。 本明細書の実装例による、ブロックチェーントランザクション加速システム内の複数の転送されるトランザクションを送る際に使用される経路の一例を示すブロック図である。 本明細書の実装例による、ブロックチェーンネットワーク内で重複トランザクションを使用するための例示的プロセスを示す図である。 本明細書の実装例による、ブロックチェーン内のネットワーク加速ノードを使用して送られるトランザクションのためのブロックチェーントランザクション加速システム内で使用される経路の一例を示すブロック図である。 本明細書の実装例による、ブロックチェーンネットワーク内のトランザクションを送るための加速ノードを使用するためのプロセスの一例を示す図である。 本明細書の実装例による、ブロックチェーントランザクション加速システムの複数のブロックチェーン加速ネットワークの一例のブロック図である。 本明細書の実装例による、複数のブロックチェーン加速ネットワークを使用するためのプロセスの一例を示す図である。 本明細書の実装例による、装置のモジュールの一例を示す図である。 本明細書の実装例による、装置のモジュールの一例を示す図である。 本明細書の実装例による、装置のモジュールの一例を示す図である。
様々な図面内の同様の参照符号は、同様の要素を示す。
本明細書の実装例は、ブロックチェーンネットワークトランザクションを改善するためのコンピュータ実装方法を含む。より具体的には、本明細書の実装例は、グローバル加速ノードを使用してブロックチェーントランザクション速度を改善することを対象とする。
いくつかの実装例では、アクションが、ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを与えることであって、複数のブロックチェーン加速ネットワークが複数の加速ノードを含み、各加速ノードが複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能であること、第1の加速ノードにおいて、複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信すること、および第1の加速ノードによって第2のノードにトランザクションを転送することを含む。
本明細書の実装例についてのより詳しい状況を与えるために、上記で紹介したように、(たとえば、ピアツーピアノードから構成される)コンセンサスネットワークとも呼ばれることのある分散型台帳システム(DLS)と、ブロックチェーンネットワークとが、参加エンティティが安全かつ不変にトランザクションを実行し、データを記憶することを可能にする。ブロックチェーンという用語は一般に通貨ネットワークに関連付けられるが、本明細書では、ブロックチェーンは、何らかの特定の使用ケースを参照することなく、一般にはDLSを指すために使用される。
ブロックチェーンは、トランザクションが不変である方式でトランザクションを記憶するデータ構造である。したがって、ブロックチェーン上に記録されたトランザクションは信頼性が高く、信頼できる。ブロックチェーンは1つまたは複数のブロックを含む。チェーン内の各ブロックは、以前のブロックの暗号ハッシュを含めることによって、チェーン内の各ブロックの直前の以前のブロックにリンクされる。各ブロックはまた、タイムスタンプ、それ自体の暗号ハッシュ、および1つまたは複数のトランザクションをも含む。トランザクションは、ブロックチェーンネットワークのノードによって既に検証されており、マークルツリー内にハッシュおよび符号化される。マークルツリーは、ツリーのリーフノードでのデータがハッシュされ、ツリーの各ブランチ内のすべてのハッシュがブランチのルートにおいて連結されるデータ構造である。このプロセスは、ツリー全体のルートまでツリーの上方に続行し、ツリー全体のルートは、ツリー内のすべてのデータを表すハッシュを記憶する。ツリー内に記憶されたトランザクションであると称されるハッシュが、ツリーの構造と一致するかどうかを判定することによって迅速に検証され得る。
ブロックチェーンは、トランザクションを記憶するための非集中データ構造または少なくとも部分的に非集中化されたデータ構造であるが、ブロックチェーンネットワークは、トランザクションをブロードキャスト、検証、および確認することなどによって1つまたは複数のブロックチェーンを管理、更新、および維持するコンピューティングノードのネットワークである。上記で紹介したように、ブロックチェーンネットワークは、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、またはコンソーシアムブロックチェーンネットワークとして提供され得る。
パブリックブロックチェーンネットワークでは、コンセンサスプロセスは、コンセンサスネットワークのノードによって制御される。たとえば、数百、数千、さらには数百万のエンティティがパブリックブロックチェーンネットワークを共に操作し得、そのそれぞれが、パブリックブロックチェーンネットワーク内の少なくとも1つのノードを操作する。したがって、パブリックブロックチェーンネットワークは、参加エンティティに関連して公衆ネットワークと見なされ得る。いくつかの例では、大部分のエンティティ(ノード)は、ブロックを有効にし、ブロックチェーンネットワークのブロックチェーン(分散型台帳)に追加するために、ブロックごとに署名しなければならない。例示的パブリックブロックチェーンネットワークには、ブロックチェーンと呼ばれる分散型台帳を活用する特定のピアツーピア支払いネットワークが含まれる。しかしながら、前述のように、ブロックチェーンという用語は、何らかの特定のブロックチェーンを具体的に参照することなく、一般には分散型台帳を指すために使用される。
一般には、パブリックブロックチェーンネットワークはパブリックトランザクションをサポートする。パブリックトランザクションは、パブリックブロックチェーンネットワーク内のノードのすべてと共有され、グローバルブロックチェーン内に記憶される。グローバルブロックチェーンは、すべてのノードにわたって複製されるブロックチェーンである。すなわち、すべてのノードは、グローバルブロックチェーンに関して完璧状態コンセンサスにある。コンセンサス(たとえば、ブロックチェーンへのブロックの追加に対する合意)を達成するために、コンセンサスプロトコルがパブリックブロックチェーンネットワーク内で実装される。例示的コンセンサスプロトコルには、限定はしないが、(たとえば、何らかの通貨ネットワーク内で実装される)proof-of-work(POW)、proof-of-stake(POS)、およびproof-of-authority(POA)が含まれる。POWは、本明細書において非限定的な例としてさらに参照される。
一般には、プライベートブロックチェーンネットワークは、読取り許可および書込み許可を中央制御する特定のエンティティのために提供される。エンティティは、どのノードがブロックチェーンネットワークに参加することができるかを制御する。したがって、プライベートブロックチェーンネットワークは一般に、誰がネットワークに参加することが許可されるか、およびその参加のレベル(たとえば、一定のトランザクションのみ)に関して制限を課す、許可されたネットワークと呼ばれる。様々なタイプのアクセス制御機構が使用され得る(たとえば、既存の参加者が、新しいエンティティを追加することに関して採決し、規制機関が許可を制御し得る)。
一般には、コンソーシアムブロックチェーンネットワークは参加エンティティ間で私用である。コンソーシアムブロックチェーンネットワークでは、コンセンサスプロセスが、許可されたノードのセットによって制御され、1つまたは複数のノードが、それぞれのエンティティ(たとえば、金融機関、保険会社)によって操作される。たとえば、10個のエンティティ(たとえば、金融機関、保険会社)のコンソーシアムがコンソーシアムブロックチェーンネットワークを操作し得、そのそれぞれがコンソーシアムブロックチェーンネットワーク内の少なくとも1つのノードを操作する。したがって、コンソーシアムブロックチェーンネットワークは、参加エンティティに関してプライベートネットワークと見なされ得る。いくつかの例では、各エンティティ(ノード)は、ブロックを有効にし、ブロックチェーンに追加するために、ブロックごとに署名しなければならない。いくつかの例では、エンティティ(ノード)の少なくともサブセット(たとえば、少なくとも7つのエンティティ)が、ブロックを有効にし、ブロックチェーンに追加するために、ブロックごとに署名しなければならない。
参加エンティティ間で私用であるパブリックブロックチェーンネットワークを参照しながら、本明細書の実装例が本明細書においてさらに詳細に説明される。しかしながら、本明細書の実装例は任意の適切なタイプのブロックチェーンネットワークにおいて実現され得ることが企図される。
上記の状況に鑑みて、本明細書の実装例が本明細書においてさらに詳細に説明される。より具体的には、上記で紹介したように、本明細書の実装例は、ブロックチェーンネットワーク内のトランザクションの配信を加速するための技法を対象とする。第1の例(図3A〜図4を参照しながら説明される)では、トランザクション到着の速度を低減するためにトランザクションが反復され得る。あるトランザクション経路はより高速であり得、それによってトランザクションの全実行効率が改善され得るからである。第2の例(図5〜図6を参照しながら説明される)では、ネットワーク加速ノードが、ノード転送トランザクションを加速するためにブロックチェーンネットワーク内で使用され得、それによってトランザクション伝播率が改善され得る。第3の例(図7〜図8を参照しながら説明される)では、異なるブロックチェーンシステムについて統一されたネットワーク加速サービスを提供し得るパブリックノード加速ネットワークが確立され得る。パブリックノード加速ネットワークの確立は、たとえば、各ブロックチェーンシステムについて専用加速ネットワークを実装することに関連するコストを回避することによってコストを低減し得る。
図1は、本明細書の実装例を実行するために使用され得る環境100の一例を示す。いくつかの例では、例示的環境100は、エンティティがブロックチェーンネットワーク102に参加することを可能にする。ブロックチェーンネットワーク102は、パブリックブロックチェーンネットワーク、プライベートブロックチェーンネットワーク、またはコンソーシアムブロックチェーンネットワークであり得る。例示的環境100は、コンピューティングデバイス106、108、およびネットワーク110を含む。いくつかの例では、ネットワーク110は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、インターネット、またはそれらの組合せを含み、ウェブサイト、ユーザデバイス(たとえば、コンピューティングデバイス)、およびバックエンドシステムを接続する。いくつかの例では、ネットワーク110は、ワイヤードおよび/またはワイヤレス通信リンクを介してアクセスされ得る。いくつかの例では、ネットワーク110は、ブロックチェーンネットワーク102との通信、およびブロックチェーンネットワーク102内の通信を可能にする。一般には、ネットワーク110は1つまたは複数の通信ネットワークを表す。
図示される例では、コンピューティングシステム106、108はそれぞれ、ブロックチェーンネットワーク102内のノードとしての参加を可能にする任意の適切なコンピューティングシステムを含み得る。例示的コンピューティングデバイスには、限定はしないが、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピューティングデバイス、およびスマートフォンが含まれる。いくつかの例では、コンピューティングシステム106、108は、ブロックチェーンネットワーク102と対話するための1つまたは複数のコンピュータ実装サービスをホストする。たとえば、コンピューティングシステム106は、第1のエンティティが1つまたは複数の他のエンティティ(たとえば、他の参加者)との間の第1のエンティティのトランザクションを管理するために使用するトランザクション管理システムなどの第1のエンティティ(たとえば、参加者A)のコンピュータ実装サービスをホストし得る。コンピューティングシステム108は、第2のエンティティが1つまたは複数の他のエンティティ(たとえば、他の参加者)との間の第2のエンティティのトランザクションを管理するために使用するトランザクション管理システムなどの第2のエンティティ(たとえば、参加者B)のコンピュータ実装サービスをホストし得る。図1の例では、ブロックチェーンネットワーク102はノードのピアツーピアネットワークとして表され、コンピューティングシステム106、108は、それぞれ、ブロックチェーンネットワーク102に参加する第1のエンティティおよび第2のエンティティのノードを提供する。
図2は、本明細書の実装例による概念アーキテクチャ200の一例を示す。例示的概念アーキテクチャ200は、参加者A、参加者B、および参加者Cにそれぞれ対応する参加者システム202、204、206を含む。各参加者(たとえば、ユーザ、企業)は、複数のノード214を含むピアツーピアネットワークとして提供されるブロックチェーンネットワーク212に参加し、複数のノード214のうちの少なくとも一部が、ブロックチェーン216内に情報を不変に記録する。単一のブロックチェーン216がブロックチェーンネットワーク212内に概略的に示されているが、本明細書においてさらに詳細に説明されるように、ブロックチェーン216の複数のコピーが提供され、ブロックチェーンネットワーク212にわたって維持される。
図示される例では、各参加者システム202、204、206が、それぞれ参加者A、参加者B、および参加者Cによって提供され、またはそれぞれ参加者A、参加者B、および参加者Bの代わりに提供され、ブロックチェーンネットワーク内のそれぞれのノード214として機能する。本明細書では、ノードとは、一般に、ブロックチェーンネットワーク212に接続され、それぞれの参加者がブロックチェーンネットワークに参加することを可能にする個々のシステム(たとえば、コンピュータ、サーバ)を指す。図2の例では、参加者は各ノード214に対応する。しかしながら、参加者がブロックチェーンネットワーク212内の複数のノード214を操作し得、かつ/または複数の参加者がノード214を共有し得ることが企図される。いくつかの例では、参加者システム202、204、206は、プロトコル(たとえば、HyperText Transfer Protocol Secure (HTTPS))を使用して、かつ/またはリモート手続き呼出し(RPC)を使用してブロックチェーンネットワーク212と通信し、またはブロックチェーンネットワーク212を通じて通信する。
ノード214は、ブロックチェーンネットワーク212内で様々な参加の度合いを有し得る。たとえば、あるノード214は、(たとえば、ブロックチェーン216にブロックを追加するマインダノードとして)コンセンサスプロセスに参加し得、別のノード214はコンセンサスプロセスに参加しない。別の例として、あるノード214はブロックチェーン216の完璧なコピーを記憶し、別のノード214はブロックチェーン216の部分のコピーを記憶するだけである。たとえば、データアクセス特権が、それぞれの参加者がそれぞれのシステム内に記憶するブロックチェーンデータを制限し得る。図2の例では、参加者システム202、204、206は、ブロックチェーン216のそれぞれの完璧なコピー216'、216''、216'''を記憶する。
ブロックチェーン(たとえば、図2のブロックチェーン216)はブロックのチェーンから構成され、各ブロックはデータを記憶する。例示的データには、2人以上の参加者の間のトランザクションを表すトランザクションデータが含まれる。本明細書ではトランザクションが非限定的な例として使用されるが、任意の適切なデータがブロックチェーン内に記憶され得る(たとえば、文書、イメージ、ビデオ、オーディオ)ことが企図される。例示的トランザクションには、限定はしないが、価値のある何か(たとえば、資産、製品、サービス、通貨)の交換が含まれ得る。トランザクションデータはブロックチェーン内に不変に記憶される。すなわち、トランザクションデータは変更され得ない。
ブロック内に記憶する前に、トランザクションデータがハッシュされる。ハッシングは、(文字列データとして与えられる)トランザクションデータを(やはり文字列データとして与えられる)固定長ハッシュ値に変換するプロセスである。ハッシュ値を非ハッシュ化してトランザクションデータを得ることは不可能である。ハッシングは、トランザクションデータのわずかな変化でさえも、完全に異なるハッシュ値が得られることを保証する。さらに、前述のように、ハッシュ値は固定長である。すなわち、トランザクションデータのサイズに関わらず、ハッシュ値の長さは固定される。ハッシングは、ハッシュ関数を通じてトランザクションデータを処理し、ハッシュ値を生成することを含む。例示的ハッシュ関数には、限定はしないが、256ビットハッシュ値を出力するセキュアハッシュアルゴリズム(SHA)-256が含まれる。
複数のトランザクションのトランザクションデータがハッシングされ、ブロック内に記憶される。たとえば、2つのトランザクションのハッシュ値が与えられ、それ自体がハッシングされて別のハッシュが与えられる。ブロック内に記憶すべきすべてのトランザクションについて単一のハッシュ値が与えられるまで、このプロセスが反復される。このハッシュ値はマークルルートハッシュと呼ばれ、ブロックのヘッダ内に記憶される。トランザクションのいずれかの変化の結果、そのハッシュ値が変化し、最後にはマークルルートハッシュが変化する。
コンセンサスプロトコルを通じてブロックがブロックチェーンに追加される。ブロックチェーンネットワーク内の複数のノードがコンセンサスプロトコルに参加し、ブロックチェーンに追加されるブロックを得るために競合する。そのようなノードはマイナー(またはマインダノード)と呼ばれる。上記で紹介したPOWが非限定的な例として使用される。
マイナーノードは、コンセンサスプロセスを実行して、ブロックチェーンにトランザクションを追加する。複数のマイナーノードがコンセンサスプロセスに参加するが、ただ1つのマイナーノードがブロックチェーンにブロックを書き込み得る。すなわち、マイナーノードは、ブロックチェーンに追加されるマイナーノードのブロックを得るためにコンセンサスプロセスにおいて競合する。さらに詳細には、マイナーノードは、トランザクションプールから保留のトランザクションを周期的に収集する(たとえば、ブロック内に含まれ得るトランザクション数に関する事前定義された限度がある場合、その限度まで)。トランザクションプールは、ブロックチェーンネットワーク内の参加者からのトランザクションメッセージを含む。マイナーノードはブロックを構築し、トランザクションをブロックに追加する。ブロックにトランザクションを追加する前に、マイナーノードは、トランザクションのいずれかがブロックチェーンのブロック内に既に含まれているかどうかをチェックする。トランザクションが別のブロック内に既に含まれている場合、トランザクションは廃棄される。
マイナーノードはブロックヘッダを生成し、ブロック内のトランザクションのすべてをハッシングし、ブロック内のすべてのトランザクションについて単一のハッシュ値が与えられるまで、ハッシュ値を対に組み合わせ、別のハッシュ値を生成する(マークルルートハッシュ)。このハッシュがブロックヘッダに追加される。マイナはまた、ブロックチェーン内の最も最近のブロック(すなわち、ブロックチェーンに追加された最後のブロック)のハッシュ値を決定する。マイナーノードはまた、ナンス値、およびタイムスタンプをブロックヘッダに追加する。マイニングプロセスにおいて、マイナーノードは、必要とされるパラメータを満たすハッシュ値を見つけようと試みる。マイナーノードは、必要とされるパラメータを満たすハッシュ値を見つけるまで、ナンス値を変更し続ける。
ブロックチェーンネットワーク内のあらゆるマイナは、必要とされるパラメータを満たすハッシュ値を見つけようと試み、このようにして互いに競合する。最終的に、マイナーノードのうちの1つが、必要とされるパラメータを満たすハッシュ値を見つけ、これをブロックチェーンネットワーク内のすべての他のマイナーノードに公示する。他のマイナーノードはハッシュ値を検証し、正しいと判定された場合、ブロック内の各トランザクションを検証し、ブロックを受け入れ、ブロックチェーンのそのコピーにブロックを付加する。このようにして、ブロックチェーンのグローバル状態が、ブロックチェーンネットワーク内のすべてのマイナーノードにわたって一致する。前述のプロセスはPOWコンセンサスプロトコルである。
図2を参照しながら非限定的な例が与えられる。この例では、参加者Aは、ある量の通貨を参加者Bに送ることを望む。参加者Aは、トランザクションメッセージ(たとえば、From、To、およびValue値フィールドを含む)を生成し、トランザクションメッセージをブロックチェーンネットワークに送り、ブロックチェーンネットワークは、トランザクションプールにトランザクションメッセージを追加する。ブロックチェーンネットワーク内の各マイナーノードはブロックを生成し、トランザクションプールからすべてのトランザクションを取り(たとえば、ブロックに追加され得るトランザクション数に関する事前定義された限度がある場合、その限度まで)、ブロックにトランザクションを追加する。このようにして、参加者Aによって発行されたトランザクションが、マイナーノードのブロックに追加される。
いくつかのブロックチェーンネットワークでは、トランザクションのプライバシーを維持するために暗号が実装される。たとえば、2つのノードが、ブロックチェーンネットワークの他のノードがトランザクションの詳細を認識し得ないようにトランザクションをプライベートに保ちたい場合、ノードはトランザクションデータを暗号化し得る。例示的暗号には、限定はしないが、対称暗号化、および非対称暗号化が含まれる。対称暗号化とは、暗号化(プレーンテキストから暗号テキストを生成すること)と、暗号化解除(暗号テキストからプレーンテキストを生成すること)の両方について単一の鍵を使用する暗号化プロセスを指す。対称暗号化では、複数のノードに対して同一の鍵が利用可能であり、したがって各ノードはトランザクションデータを暗号化/暗号化解除し得る。
非対称暗号化は、秘密鍵および公開鍵をそれぞれ含む鍵の対を使用し、秘密鍵はそれぞれのノードだけに知られており、公開鍵はブロックチェーンネットワーク内の任意またはすべての他のノードに知られている。ノードは、別のノードの公開鍵を使用してデータを暗号化し得、暗号化データが、他のノードの秘密鍵を使用して暗号化解除され得る。たとえば、再び図2を参照すると、参加者Aは参加者Bの公開鍵を使用してデータを暗号化し、暗号化データを参加者Bに送り得る。参加者Bは、参加者Bの秘密鍵を使用して暗号化データ(暗号テキスト)を暗号化解除し、元のデータ(プレーンテキスト)を抽出し得る。ノードの公開鍵で暗号化されたメッセージは、ノードの秘密鍵を使用して暗号化解除され得るだけである。
非対称暗号化はデジタル署名を提供するために使用され、デジタル署名により、トランザクションの参加者が、トランザクションの他の参加者、ならびにトランザクションの有効性を確認することが可能となる。たとえば、ノードがメッセージにデジタルに署名し得、別のノードが、参加者Aのデジタル署名に基づいて、メッセージがノードによって送られたことを確認し得る。デジタル署名はまた、メッセージが転送中に改ざんされていないことを補償するためにも使用され得る。たとえば、再び図2を参照すると、参加者Aが参加者Bにメッセージを送ることになっている。参加者Aは、メッセージのハッシュを生成し、次いで参加者Aの秘密鍵を使用して、ハッシュを暗号化し、デジタル署名を暗号化ハッシュとして提供する。参加者Aはメッセージにデジタル署名を付加し、デジタル署名付きのメッセージを参加者Bに送る。参加者Bは、参加者Aの公開鍵を使用してデジタル署名を暗号化解除し、ハッシュを抽出する。参加者Bはメッセージをハッシングし、ハッシュを比較する。ハッシュが同一である場合、参加者Bは、メッセージが実際に参加者Aからのものであり、改ざんされなかったことを確認し得る。
いくつかの実装例では、たとえばNode_Aが同一のトランザクションの複数のコピーを送信する場合、ブロックチェーン内のノード間のより高速な通信が実現され得る。たとえば、Node_AがNode_B(たとえば、宛先ノード)にトランザクションを送ることに加えて、Node_Aはまた、トランザクションの複製を少なくとも1つの他のノードに送り得る。たとえば、第3のノードが、より高速なネットワーク伝送を実現する(または第3のノードがより高速なネットワーク伝送となる)ことができ得る。たとえば、Node_Aから直接来る伝送の前に第3のノードがネットワークNode_Bへの伝送の配信の最終的な完了を開始し得る場合、より高速なネットワーク伝送が行われ得る。一般に、第3のノードに送られるトランザクションがNode_Bに配信され得るが、追加の中間ノードが可能である。このようなトランザクションの複製は、ブロックチェーンネットワークの再生特徴および転送特徴を利用し得る。トランザクションの複製はまた、同一のトランザクションの複製を伝播することによる、ブロックチェーンネットワークに対する繰り返されるアタック(たとえば、マルウェアまたは無許可アクセス)を防止する助けになり得る。ブロックチェーンネットワークのこれらの特徴の結果として、トランザクションは、可能な限り高速に宛先ノードに配信され得る。トランザクションのより高速な配信の得られる利点は、宛先ノードでのトランザクションのより高速な実行である。
図3Aは、ブロックチェーン内の2つのノード間で直接的に送られる(または配信される)トランザクションについての経路300の一例を示すブロック図である。たとえば、経路300は、Node_B304による実行のためにNode_A302によってNode_B304に送られるトランザクションのために使用され得る。いくつかのケースでは、トランザクションは、Node_A302とNode_B304との間の直接的通信306を使用して送られ得る。したがって、図3Aは、ブロックチェーン内のあるノードから別のノードにトランザクションを送るための従来の技法を表し得る。しかしながら、ブロックチェーンによって使用されるネットワーク内の不確実性のために、ブロックチェーン内のノード間の接続性は欠点を有し得る。たとえば、ノードが同一のネットワーク上にない場合、またはブロックチェーンノードが異なる国に配置される場合、ネットワークの直接的接続(たとえば、直接的通信306)は、トランザクションの可能な最速の経路ではないことがある。
図3Bは、ブロックチェーントランザクション加速システム320内の複数の転送されるトランザクションを送る際に使用される経路の一例を示すブロック図である。ブロックチェーントランザクション加速システム320は、たとえば本明細書において他の図(図1〜図2など)を参照しながら説明される構成要素を使用して実装され得る。
ブロックチェーントランザクション加速システム320は、(たとえば、図3Aを参照しながら説明した、複数のトランザクション転送のない)単一の通信経路を使用するシステムに勝る改良を実現し得る。たとえば、図3Bに示されるように、Node_A302とNode_B304との間の直接的通信306は、トランザクションのために依然として使用され得る。しかしながら、直接的通信306を使用することに加えて、トランザクションが複製され、追加のノード308〜312に送られ得る。たとえば、Node_B304へのトランザクションの配信を加速するために、Node_A302は、通信経路314を介してNode_X308、Node_Y310、およびNode_Z312にもトランザクションを送り得る。次いでトランザクションは、Node_X308、Node_Y310、およびNode_Z312によって通信経路316を介して転送され得る。Node_A302がこのようにして同一のトランザクションの複数のコピー(この例では、合計で4つのトランザクションインスタンス)を送るとき、Node_A302は、どのトランザクションがNode_B304に達する最初のトランザクションとなるかを知らない。Node_B304は、受信される最初のトランザクションを処理した後、重複トランザクションを無視するように構成され得るので、トランザクション到着順序は問題ではない。
レシーバノード(および、この例ではトランザクションの宛先ノード)として働くNode_B304は、複数の同一のトランザクションを受信し得る。最初のトランザクションだけが実行される。重複トランザクションと判定される他のトランザクションは、ブロックチェーンシステムによって自動的に無効トランザクションと識別され得る。したがって、重複トランザクションは実行されない。
重複トランザクションは様々な方式で判定され得る。たとえば、トランザクションが同一のデジタル署名を有する場合、トランザクションは重複トランザクションと判定され得る。トランザクションが受信されたとき、たとえば、トランザクションのデジタル署名が、最近実行された(または最初に到着する)トランザクションと比較され得る。重複トランザクションを判定する他の方式(たとえば、一般のブロックチェーン技術を使用する)も使用され得る。
経時的に、ノードごとに行われる伝送速度を記録および追跡するために、統計が収集され、維持され得る。たとえば、多くのノードが、Node_X308、Node_Y310、およびNode_Z312を通じてトランザクションをルーティングし得る。たとえばNode_Y310がNode_X308およびNode_Z312よりも経時的に高速であると判定される場合、Node_Y310が好ましいノードとなり得る。いくつかの実装例では、好ましいノードのリストが維持され得、トランザクションが複数のノードを通じて送られるとき、最速のノードが最初に選択され得る。経時的に、低速のノードがブロックチェーンシステムによって回避され得る。
いくつかの実装例では、選択されるノードは、速度に加えて様々な要素に基づいて選ばれ得る。たとえば、あるノードは、1日の異なる時刻、または週の異なる曜日でより高速であり得る。別の例では、あるノードが、その地理的位置に基づいて回避され得、その地理的位置が、追跡される伝送速度に加えて、所与のトランザクションについての予測される伝送速度の指標となり得る。
いくつかの実装例では、どれほどの重複トランザクションを送るべきか、重複トランザクションを送るためにどのノードを使用すべきかを判断するために様々な技法が使用され得る。たとえば、ブロックチェーンシステムは、送信側ノードにとってアクセス可能な各ハブに別々の重複トランザクションを送り得る。たとえば、各ハブは、異なるサービスプロバイダ(Provider)に対応し得る。経時的に、ブロックチェーンシステムは、最良かつ最速のプロバイダを識別するデータベースを構築し得る。いくつかの実装例では、サービスプロバイダにスコアが割り当てられ得、最高のスコアが、重複トランザクションをルーティングする際に最速のサービスプロバイダであるという履歴を有するサービスプロバイダに割り当てられる。いくつかの実装例では、過剰なトラフィックで単一のサービスプロバイダを飽和させないように、トランザクションが、いくつかのより高いスコアのサービスプロバイダにわたって拡散され得る。
図4は、ブロックチェーンネットワーク内で重複トランザクションを使用するための例示的プロセス400を示す。プロセス400は、本明細書の実装例に従って実行され得る。いくつかの実装例では、例示的プロセス400は、1つまたは複数のコンピューティングデバイスを使用して実行される1つまたは複数のコンピュータ実行可能プログラムを使用して実行され得る。
プロセス400は、ブロックチェーン内の1つまたは複数のノード内、またはブロックチェーンによってアクセス可能なサーバ内で実装されるブロックチェーントランザクション加速システムの部分であり(かつブロックチェーントランザクション加速システム内で実装され)得る。たとえば、図3Bを参照しながら説明したブロックチェーントランザクション加速システム320がプロセス400を実装し得る。
402において、ブロックチェーン内の第1のノードを通じて送られた第1のトランザクションが、ブロックチェーントランザクション加速システム内で受信される。一例として、ブロックチェーントランザクション加速システム320内で、Node_A302とNode_B304との間でトランザクションを送るために直接的通信306が使用され得る。402から、方法400は404に進む。
404において、第1のトランザクションの複製である少なくとも1つの第2のトランザクションがブロックチェーントランザクション加速システム内で受信され、少なくとも1つの第2のトランザクションが、第1のノードによって、第1のノードとは異なるブロックチェーン内の少なくとも1つの第2のノードに送られる。一例として、ブロックチェーントランザクション加速システム320は、(既にNode_B304に送られた)トランザクションの複製を、追加のノード308〜312のうちの1つまたは複数に送り得る。トランザクションの複製は、通信経路314を使用して送られ得る。
いくつかの実装例では、ブロックチェーン内の第1のノードおよびブロックチェーン内の少なくとも1つの第2のノードは、異なるネットワークサービスプロバイダによって提供される異なるネットワークハブ内にあり得る。たとえば、Node_A302およびNode_B304は、異なる領域や国などの中の、または異なるネットワークサービスプロバイダを使用する、別々の異なるネットワークハブ内にあり得る。
いくつかの実装例では、方法400は、少なくとも1つの第2のトランザクションを送るために使用する複数の第2のノードを決定することをさらに含み得る。たとえば、ブロックチェーントランザクション加速システム320は、トランザクションの複製が送られる、追加のノード308〜312のうちの特定のノードを選択し得る。404から、方法400は406に進む。
406において、第1のトランザクションおよび少なくとも1つの第2のトランザクションを含む、受信されたトランザクションの中の最初に受信されたトランザクションが、ブロックチェーントランザクション加速システムによって実行される。たとえば、Node_B304は、通信経路306および通信経路316を介して到着する第1のトランザクションを実行し得る。最初に到着するトランザクションは、どの通信経路が最速であるかに依存し得る。406から、方法400は408に進む。
408において、受信されたトランザクションのうちの残りのトランザクションが最初に受信されたトランザクションと同一であるとブロックチェーントランザクション加速システムによって判定したとき、残りのトランザクションが廃棄される。たとえば、Node_B304は、最初に受信されたトランザクションの1つまたは複数の複製を受信し得る。Node_B304は、残りの(最初に受信されたのではない)トランザクションが重複トランザクションであると判定し得る。次いで、Node_B304は重複トランザクションを廃棄し得る。
いくつかの実装例では、受信されたトランザクションのうちの残りのトランザクションが最初に受信されたトランザクションと同一であると判定することは、最初に受信されたトランザクションのデジタル署名に合致する残りのトランザクションのそれぞれのデジタル署名を識別することを含む。たとえば、Node_B304は、トランザクションのデジタル署名を比較し、合致するデジタル署名が存在すると判定することによって、残りの(最初に受信されたのではない)トランザクションが重複トランザクションであると判定し得る。408の後、方法400は停止し得る。
いくつかの実装例では、方法400は、受信されたトランザクションに関する伝送速度統計を収集し、より高速なトランザクション伝送速度を実現するブロックチェーン内のノードを決定することをさらに含み得る。たとえば、経時的に、ブロックチェーントランザクション加速システム320は、追加のノード308〜312のうちの1つまたは複数が、他のノードよりも高速なトランザクション配信速度を実現していると判定し得る。トランザクション配信速度情報は、ブロックチェーントランザクション加速システム320によって経時的に記憶および追跡され得る。
いくつかの実装例では、方法400は、所与の送信側ノードについて、伝送速度統計に基づいて、トランザクションを送るべき好ましいノードのセットを決定することをさらに含み得る。たとえば、ブロックチェーントランザクション加速システム320は、重複トランザクションを送るために追加のノード308〜312のうちのどれを使用するかを選択する際に、最速のトランザクション配信ノードを識別する統計を使用し得る。
いくつかのケースでは、ブロックチェーンネットワークノード間の直接的接続は、常にブロックチェーンネットワークノード間の最速のトランザクション経路ではないことがある。たとえば、ノードAがある国に位置し得、ノードBが異なる国に位置し得る。ノードの位置は、異なる国(または他のエリア)の中に位置することによって、ネットワーク不安定性を生み出し、またはネットワーク不安定性に寄与し得る。Node_AからNode_Bに送られるトランザクションは、たとえば異なるネットワークプロバイダに関連する要素を含む、複雑な要素を含み得る。その結果、Node_AとNode_Bとの間の直接的接続が低速になり、または不安定となり得る。トランザクション配信の速度および信頼性は、たとえばネットワークプロバイダによって処理される大量のトラフィックによって影響を受け得る。たとえばNode_AとNode_Bとの間の直接的接続として同一のネットワークを使用する大量のデータが送信される場合、ブロックチェーンネットワークのトランザクション実行効率が悪影響を受け得る。図3A〜図4を参照しながら先に説明したように、トランザクション実行効率に伴ういくつかの問題が、複数のトランザクションを送ることによって改善され得る。いくつかの実装例では、トランザクション実行効率が、ブロックチェーン内のネットワーク加速ノードを使用することによって改善され得る。
図5は、ブロックチェーン内のネットワーク加速ノードを使用して送られるトランザクションのためのブロックチェーントランザクション加速システム500内で使用される経路の一例を示すブロック図である。経路中の矢印で示されるように、Node_A502はトランザクションのセンダ(Sender)であり、Node_B504はトランザクションの所期の受信側である。Node_A502およびNode_B504は、たとえばそれぞれLocal_Network_1 506およびLocal_Network_2 508などの異なるネットワークエリア内にあり得る。Node_A502およびNode_B504は、たとえばブロックチェーンネットワークの部分である通信チャネル510を使用して、直接的に通信することができ得る。しかしながら、トランザクションのより高速な伝送が可能であり得、高速通信を実現する通信経路512を使用して行われ得る。その結果、Node_A502からNode_B504へのトランザクションの伝送が、少なくともTransfer_Node_A'514およびTransfer_Node_B'516を含む転送ノードを使用し得る。いくつかの実装例では、Transfer_Node_A'514は、Transfer_Node_B'516を通じてトランザクションを転送することなく、Node_B504にトランザクションを直接的に転送し得る。
転送ノードは、ネットワークエリア内の複数のノードにサービスし得る。たとえば、Node_A502やNode_C518などの1つまたは複数の正規ノードが、Transfer_Node_A'514に割り当てられ得る。各正規ノードは、同一のネットワークエリアまたは異なるネットワークエリア内の複数の転送ノードへのアクセスを有し得る。しかしながら、この例では、ノードA/A'およびノードB/B'はそれぞれ、それ自体のネットワークエリアに属し得る。このケースでは、伝送速度が転送ノードの使用に基づいてより高速になり得、A'とB'との間の高速ネットワーク通信が実現される。
加速ノードの使用は、ネットワーク加速ノード間の高速リンクを効果的に生み出すことによってトランザクションのネットワーク伝送速度を加速し得る。ネットワーク加速ノード間の高速リンクは、ブロックチェーンシステムの全体のトランザクション実行効率を改善し得る。
加速ノードは、たとえば、トランザクションの内容または処理との関係を持たない(またはほぼ持たない)ように設計され得る。したがって、加速ノードのグループは転送ネットワークとして働き得、転送ネットワークは国際ブロックチェーンネットワークでは特に有用であり得る。いくつかの実装例では、加速ノードが、パブリックエンティティに提供されるサードパーティ加速ネットワークなどのサービスとして提供され得る。送られ、加速ノードの転送ネットワークを使用する任意の所与のトランザクションが、ネットワークを使用し得る。たとえば、所与のトランザクションは、所与のトランザクションの配信のための最短または最速の経路を提供する加速ノードを含む、いくつかの加速ノードだけを使用し得る。
いくつかの実装例では、最短経路アルゴリズムが、所与のトランザクションのために使用すべき加速ノードを選ぶように使用され得る。最短経路アルゴリズムは、各加速ノードについての情報と、伝送速度を含むトランザクションを送ることに関連する各加速ノードの統計とを使用し得る。最短経路アルゴリズムによって使用される情報の一部は、時刻情報および地理情報を含み、またはそれらに基づき得る。たとえば、国C内の加速ノードは、ブロックチェーンネットワーク内の日中のトラフィックが存在しない夜間の時間の間、より高速であり得る。
図6は、ブロックチェーンネットワーク内のトランザクションを送るための加速ノードを使用するためのプロセス600の一例を示す図である。プロセス600は、本明細書の実装例に従って実行され得る。いくつかの実装例では、例示的プロセス600は、1つまたは複数のコンピューティングデバイスを使用して実行される1つまたは複数のコンピュータ実行可能プログラムを使用して実行され得る。
プロセス600は、ブロックチェーン内の1つまたは複数のノード内、またはブロックチェーンによってアクセス可能なサーバ内で実装されるブロックチェーントランザクション加速システムの部分であり(かつブロックチェーントランザクション加速システム内で実装され)得る。たとえば、図5を参照しながら説明したブロックチェーントランザクション加速システム500がプロセス600を実装し得る。
602において、第1のノードによって生成された第1のトランザクションが、ブロックチェーントランザクション加速システムを使用して、ブロックチェーン内の加速ノードに送られ、第1のトランザクションが、第1のトランザクションの所期の受信側である第2のノードに直接的に送られる代わりに加速ノードに送られ、第1のノード、第2のノード、および加速ノードが異なるノードである。たとえば、ブロックチェーントランザクション加速システム500を使用して、トランザクションが、Node_A502からTransfer_Node_A'514に送られ得、Transfer_Node_A'514は加速ノードである。ブロックチェーントランザクション加速システム500は、トランザクションをNode_B504に直接的に送る代わりに、たとえばTransfer_Node_A'514を選択し得る。選択決定は、たとえば通信チャネル512が通信チャネル510よりも高速である(または高速である可能性が高い)という知識に基づき得る。
いくつかの実装例では、ブロックチェーン内の第1のノードと、ブロックチェーン内の第2のノードとは異なるネットワーク内に存在する。たとえば、Node_A502およびNode_B504は、それぞれ、異なるネットワークエリアであるLocal_Network_1 506およびLocal_Network_2 508内にあり得る。
いくつかの実装例では、加速ノードは、異なるネットワーク内の1つまたは複数の特定の加速ノードにトランザクションを転送するように構成され得る。一例として、Transfer_Node_A'514は、指定された加速ノードとしてブロックチェーントランザクション加速システム500内で構成され得る。
いくつかの実装例では、方法600は、加速ノードを使用するトランザクション配信時間が、第2のノードに直接的にトランザクションを送ることによって予想されるトランザクション配信時間よりも高速であると予想されると判定することに基づいて、加速ノードを選択することをさらに含み得る。たとえば、ブロックチェーントランザクション加速システム500は、Transfer_Node_A'514を加速ノードとして使用することが、Node_B504に直接的にトランザクションを送ることよりも高速である(または高速である可能性がある高い)という知識に基づいて、Transfer_Node_A'514を選択し得る。602から、方法600は604に進む。
604において、トランザクションが、ブロックチェーントランザクション加速システムによって加速ノードから第2のノードに転送される。たとえば、Transfer_Node_A'514が、通信経路512を介してNode_B504にトランザクションを転送し得る。
いくつかの実装例では、加速ノードから第2のノードにトランザクションを転送することは、受信側加速ノードの使用を含み得る。たとえば、Transfer_Node_A'514は、通信経路512を介して、Local_Network_2 508内の加速ノードであるTransfer_Node_B'516などの受信側加速ノードにトランザクションを転送し得る。受信側加速ノード(たとえば、Transfer_Node_B'516)は、第2のノード(たとえば、Node_B504)にトランザクションを転送し得る。604から、方法600は606に進む。
606において、トランザクションが第2のノードによって実行される。一例として、Node_B504が、受信したトランザクションを実行し得る。606の後、方法600は停止し得る。
いくつかの実装例では、方法600は、トランザクション配信時間統計の使用と、トランザクション配信時間統計に基づく加速ノードの選択とをさらに含み得る。たとえば、ブロックチェーントランザクション加速システム500は、(たとえば、通信チャネル512を使用して)配信されたトランザクションに関する統計を収集し、より高速なトランザクション配信時間を実現するブロックチェーン内の加速ノードを決定し得る。次いで、ブロックチェーントランザクション加速システム500は、より高速なトランザクション配信時間を有する加速ノード、たとえばTransfer_Node_A'514を選択し得る。
いくつかの実装例では、同一のトランザクションの複数のコピーを送ること、および加速ノードを使用することを含む前述の技法の組合せを使用してトランザクションが送られ得る。たとえば、送信側ノードは、トランザクションのコピーを所期の受信側ノードに送り得る。トランザクションの配信時間を削減するために、送信側ノードはまた、通常のノード(非加速ノード)および加速ノードを含む、1つまたは複数の他のノードに、トランザクションのコピーを送り得る。いくつかの実装例では、提供される加速ノードのネットワークは、トランザクションの伝送時間を改善するためにも使用され得る。
図7は、ブロックチェーントランザクション加速システム700の複数のブロックチェーン加速ネットワーク702の一例のブロック図である。たとえば、複数のブロックチェーン加速ネットワーク702は、ブロックチェーン704を含む異なるブロックチェーンシステムについて統一されたネットワーク加速サービスを提供するパブリックノード加速ネットワークとして働き得る。複数のブロックチェーン加速ネットワーク702は、各ブロックチェーンシステムについて専用加速ネットワークを確立するコストを削減し、またはなくし得る。
ブロックチェーン704の所与のブロックチェーン内のノード708が、複数のブロックチェーン加速ネットワーク702内の加速ノード706と通信し得る。ネットワークの不確実性のために、加速ネットワーク内のトランジットノードとして働く加速ノード706の使用は、ノード間の直接的通信よりも効率的であり得る。したがって、ブロックチェーンシステムは、複数のブロックチェーン加速ネットワーク702によって提供される情報転送の高速ネットワークに依拠し得る。
様々なブロックチェーンシステムについて、ノード間の通信のための要件は同一であり得、したがって複数のブロックチェーンシステムが同一の複数のブロックチェーン加速ネットワーク702を再利用し得る。これは、複数のブロックチェーン加速ネットワーク702の再利用可能性を改善し、ブロックチェーンシステム内のネットワークについての構築コストを削減し、またはなくし得る。ブロックチェーンシステムが多数の通信要件を有し得るので、節約が行われ得る。ネットワーク不確実性のために、ノード間の直接的通信効率は、ネットワーク加速ノードを使用する間接的通信よりも低くなり得る。
図8は、複数のブロックチェーン加速ネットワークを使用するためのプロセス800の一例を示す。プロセス800は、本明細書の実装例に従って実行され得る。いくつかの実装例では、例示的プロセス800は、1つまたは複数のコンピューティングデバイスを使用して実行される1つまたは複数のコンピュータ実行可能プログラムを使用して実行され得る。
プロセス800は、ブロックチェーン内の1つまたは複数のノード内、またはブロックチェーンによってアクセス可能なサーバ内で実装されるブロックチェーントランザクション加速システムの部分であり(かつブロックチェーントランザクション加速システム内で実装され)得る。たとえば、図7を参照しながら説明したブロックチェーントランザクション加速システム700がプロセス800を実装し得る。
802において、ブロックチェーントランザクション加速システム内で、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスが提供される。ブロックチェーンは、たとえば、第1のブロックチェーン704aおよび第2のブロックチェーン704bを含み得る。複数のブロックチェーン加速ネットワークは複数の加速ノードを含む。各加速ノードは、複数のブロックチェーンの少なくとも1つのブロックチェーン内の少なくとも1つのノードにとってアクセス可能である。たとえば、ブロックチェーントランザクション加速システム700内で、ブロックチェーン704にとってアクセス可能な複数のブロックチェーン加速ネットワーク702へのアクセスが提供される。複数のブロックチェーン加速ネットワーク702は加速ノード706を含み、それぞれは、ブロックチェーン704内の少なくとも1つのノード708にとってアクセス可能である。802から、方法800は804に進む。
804において、転送すべきトランザクションが、複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから第1の加速ノードにおいて受信される。一例として、転送すべきトランザクション710が、第1のブロックチェーン704a内の第1のノード708aから第1の加速ノード706aにおいて受信される。804から、方法800は806に進む。
806において、転送すべきトランザクションが、第1の加速ノードによって第2のノードに転送される。たとえば、トランザクション710が、第1の加速ノード706aによって第2のノードに転送され得る。第2のノードは、たとえば第2のブロックチェーン704b内のノード708bであり得る。別の例では、第2のノードは第2の加速ノード706bであり得る。第1のブロックチェーン704a内の第1のノード708aと、第2のブロックチェーン704b内の第2のノード708bとは異なるネットワーク内にあり得る。806の後、方法800は停止し得る。
いくつかの実装例では、方法800は、加速ノードを選択するために、配信されるトランザクションに関する統計の使用をさらに含み得る。たとえば、ブロックチェーンシステムは、ブロックチェーン704によって送られ、受信され、複数のブロックチェーン加速ネットワーク702を使用する、配信されるトランザクションに関する統計を収集し得る。統計は、より高速なトランザクション配信時間を実現する複数のブロックチェーン加速ネットワーク702内の加速ノード706を決定するために使用され得る。たとえば、加速ノード706が最速のトランザクション配信時間を有すると識別された後、ブロックチェーントランザクション加速システム700は、トランザクションを転送するために加速ノード706を選択し得る。
いくつかの実装例では、方法800は、ブロックチェーンが複数のブロックチェーン加速ネットワークに加入することを可能にするためのステップをさらに含み得る。たとえば、複数のブロックチェーン加速ネットワーク702に加入するための要求が、第3のブロックチェーン704cから受信され得る。次いで、複数のブロックチェーン加速ネットワーク702へのアクセスが第3のブロックチェーン704cに与えられ得る。
いくつかの実装例では、方法400、600、および800の部分が組み合わせて使用され得る。たとえば、ブロックチェーントランザクション加速システム420、500、および700が、ブロックチェーン内のトランザクションの配信を加速させるために重複トランザクションと加速ノードの組合せを使用する1つの集合的ブロックチェーントランザクション加速システムであり、または1つの集合的ブロックチェーントランザクション加速システムとして働き得る。集合的ブロックチェーントランザクション加速システムによってどの技法を使用するかという判断は、他の要素の中でもとりわけ、ネットワークヘルスおよびトラフィックの知識などのリアルタイム情報に基づき得る。
図9は、本明細書の実装例による、装置900のモジュールの一例を示す図である。装置900は、(コンソーシアムまたは他のブロックチェーン型ネットワーク内などで)トランザクション再送信を使用してブロックチェーンネットワーク内のトランザクション配信を加速することを可能にするように構成された装置の例示的実装であり得る。装置900は前述の実装に対応し得、装置900は、ブロックチェーントランザクション加速システム内で、ブロックチェーン内の第1のノードを通じて送られた第1のトランザクションを受信するための第1のレシーバまたは第1の受信ユニット902と、ブロックチェーントランザクション加速システム内で、第1のトランザクションの複製である少なくとも1つの第2のトランザクションを受信するための第2のレシーバまたは第2の受信ユニット904であって、第1のノードによってブロックチェーン内の少なくとも1つの第2のノードに送られた少なくとも1つの第2のトランザクションが第1のノードとは異なる、第2のレシーバまたは第2の受信ユニット904と、ブロックチェーントランザクション加速システムによって、第1のトランザクションおよび少なくとも1つの第2のトランザクションを含む受信されたトランザクションの中の最初に受信されたトランザクションを実行するためのエクセキュータ(Executor)または実行ユニット906と、受信されたトランザクションの残りのトランザクションが最初に受信されたトランザクションと同一であるとブロックチェーントランザクション加速システムによって判定したとき、残りのトランザクションを廃棄するためのディスカーダ(Discarder)または廃棄ユニット908とを含む。
前の実装において示したシステム、装置、モジュール、またはユニットは、コンピュータチップまたはエンティティを使用することによって実装され得、または一定の機能を有する製品を使用することによって実装され得る。典型的な実装デバイスはコンピュータであり、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、セルラーフォン、カメラフォン、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、Eメール受信および送信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
装置内の各ユニットの機能および役割の実装プロセスについて、前の方法での対応するステップの実装プロセスへの参照が行われ得る。簡単のためにここでは詳細は省略する。
装置実装は、基本的には方法実装に対応するので、関連する部分について、方法実装での関連する説明への参照が行われ得る。前述の装置実装は一例に過ぎない。別々の部分として説明したユニットは、物理的に別々であり、もしくは別々ではないことがあり、ユニットとして表示される部分は、物理単位であり、もしくは物理単位ではないことがあり、ある位置に位置し得、またはいくつかのネットワークユニット上に分散し得る。モジュールの一部またはすべてが、本明細書の解決策の目的を達成するために実際の必要に基づいて選択され得る。当業者は創造的労力なしに本願の実装を理解し、実装し得る。
再び図9を参照すると、トランザクション再送信を使用してブロックチェーンネットワーク内のトランザクション配信を加速することを可能にする装置の内部機能モジュールおよび構造を示すと解釈し得る。実行装置は、トランザクション再送信を使用してブロックチェーンネットワーク内のトランザクション配信を加速することを可能にするように構成された装置の一例であり得る。
図10は、本明細書の実装例による、装置1000のモジュールの一例を示す。装置1000は、(コンソーシアムまたは他のブロックチェーン型ネットワーク内などで)加速ノードを使用してブロックチェーンネットワーク内のトランザクションの配信を加速することを可能にするように構成された装置の例示的実装であり得る。装置1000は前述の実装に対応し得、装置1000は、ブロックチェーントランザクション加速システムを使用して、第1のノードによって生成された第1のトランザクションをブロックチェーン内の加速ノードに送るためのセンダまたは送信ユニット1002であって、第1のトランザクションが第1のトランザクションの所期の受信側である第2のノードに直接送られる代わりに加速ノードに送られ、第1のノード、第2のノード、および加速ノードが異なるノードである、センダ(Sender)または送信ユニット1002と、ブロックチェーントランザクション加速システムによって加速ノードから第2のノードにトランザクションを転送するためのフォワーダ(Forwarder)または転送ユニット1004と、第2のノードによるトランザクションをブロックチェーントランザクション加速システムによって実行するためのエクセキュータまたは実行ユニット1006とを含む。
前の実装において示されたシステム、装置、モジュール、またはユニットは、コンピュータチップまたはエンティティを使用することによって実装され得、または一定の機能を有する製品を使用することによって実装され得る。典型的な実装デバイスはコンピュータであり、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、セルラーフォン、カメラフォン、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、Eメール受信および送信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
装置内の各ユニットの機能および役割の実装プロセスについて、前の方法での対応するステップの実装プロセスへの参照が行われ得る。簡単のためにここでは詳細は省略する。
装置実装は、基本的には方法実装に対応するので、関連する部分について、方法実装での関連する説明への参照が行われ得る。前述の装置実装は一例に過ぎない。別々の部分として説明したユニットは、物理的に別々であり、もしくは別々ではないことがあり、ユニットとして表示される部分は、物理単位であり、もしくは物理単位ではないことがあり、ある位置に位置し得、またはいくつかのネットワークユニット上に分散し得る。モジュールの一部またはすべてが、本明細書の解決策の目的を達成するために実際の必要に基づいて選択され得る。当業者は創造的労力なしに本願の実装を理解し、実装し得る。
再び図10を参照すると、加速ノードを使用してブロックチェーンネットワーク内のトランザクションの配信を加速することを可能にする装置の内部機能モジュールおよび構造を示すと解釈し得る。実行装置は、加速ノードを使用してブロックチェーンネットワーク内のトランザクションの配信を加速することを可能にするように構成された装置の一例であり得る。
図11は、本明細書の実装例による、装置1100のモジュールの一例を示す。装置1100は、(コンソーシアムまたは他のブロックチェーン型ネットワーク内などで)グローバル加速ノードを使用してブロックチェーントランザクション速度を改善するように構成された装置の例示的実装であり得る。装置1100は前述の実装に対応し得、装置1100は、ブロックチェーントランザクション加速システム内で、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを提供するためのプロバイダまたは提供ユニット1102であって、複数のブロックチェーン加速ネットワークが複数の加速ノードを含み、各加速ノードが複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能である、プロバイダまたは提供ユニット1102と、第1の加速ノードにおいて、複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信するためのレシーバまたはレシーバユニット1104と、第1の加速ノードによって第2のノードにトランザクションを転送するためのフォワーダまたは転送ユニット1106とを含む。
前の実装において示されたシステム、装置、モジュール、またはユニットは、コンピュータチップもしくはエンティティを使用することによって実装され得、または一定の機能を有する製品を使用することによって実装され得る。典型的な実装デバイスはコンピュータであり、コンピュータは、パーソナルコンピュータ、ラップトップコンピュータ、セルラーフォン、カメラフォン、スマートフォン、携帯情報端末、メディアプレーヤ、ナビゲーションデバイス、Eメール受信および送信デバイス、ゲームコンソール、タブレットコンピュータ、ウェアラブルデバイス、またはこれらのデバイスの任意の組合せであり得る。
装置内の各ユニットの機能および役割の実装プロセスについて、前の方法での対応するステップの実装プロセスへの参照が行われ得る。簡単のためにここでは詳細は省略する。
装置実装は、基本的には方法実装に対応するので、関連する部分について、方法実装での関連する説明への参照が行われ得る。前述の装置実装は一例に過ぎない。別々の部分として説明したユニットは、物理的に別々であり、もしくは別々ではないことがあり、ユニットとして表示される部分は、物理単位であり、もしくは物理単位ではないことがあり、ある位置に位置し得、またはいくつかのネットワークユニット上に分散し得る。モジュールの一部またはすべてが、本明細書の解決策の目的を達成するために実際の必要に基づいて選択され得る。当業者は創造的労力なしに本願の実装を理解し、実装し得る。
再び図11を参照すると、グローバル加速ノードを使用してブロックチェーントランザクション速度を改善するための装置の内部機能モジュールおよび構造を示すと解釈し得る。実行装置は、グローバル加速ノードを使用してブロックチェーントランザクション速度を改善するように構成された装置の一例であり得る。
本明細書において説明される主題およびアクションおよび動作の実装は、デジタル電子回路、有形に具現化されたコンピュータソフトウェアもしくはファームウェア、本明細書において開示される構造およびその構造的均等物を含むコンピュータハードウェア、またはそれらのうちの1つまたは複数の組合せとして実装され得る。本明細書において説明される主題の実装は、データ処理装置による実行のための、またはデータ処理装置の動作を制御するための、コンピュータプログラムキャリア上に符号化された1つまたは複数のコンピュータプログラム、たとえばコンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。キャリアは有形の非一時的コンピュータ記憶媒体であり得る。代替または追加として、キャリアは、データ処理装置による実行のために適切なレシーバ装置への伝送のために情報を符号化するように生成される人工的に生成された伝播信号、たとえば機械で生成された電気的、光学的、または電磁的信号であり得る。コンピュータ記憶媒体は、機械可読記憶装置、機械可読記憶基板、ランダムもしくは逐次アクセスメモリデバイス、またはそれらのうちの1つまたは複数の組合せであり得、またはそれらの一部であり得る。コンピュータ記憶媒体は伝播信号ではない。
「データ処理装置」という用語は、例としてプログラム可能プロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。データ処理装置は、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)、ASIC(特定用途向け集積回路)、またはGPU(グラフィックス処理装置)を含み得る。装置はまた、ハードウェアに加えて、コンピュータプログラムのための実行環境を作成するコード、たとえばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、あるいはそれらのうちの1つまたは複数の組合せを構成するコードをも含み得る。
コンピュータプログラムは、プログラム、ソフトウェア、ソフトウェアアプリケーション、app、モジュール、ソフトウェアモジュール、エンジン、スクリプト、またはコードとも呼ばれ、またはそのように記述され得、コンパイル型言語もしくはインタプリタ型言語、または宣言型言語もしくは手続型言語を含む任意の形態のプログラミング言語で書かれ得、スタンドアロンプログラムとして、またはモジュール、コンポーネント、エンジン、サブルーチン、もしくはコンピューティング環境内での実行に適した他のユニットとしての形態を含む任意の形態として配置され得、コンピューティング環境は、1つまたは複数の場所の、データ通信ネットワークによって相互接続された1つまたは複数のコンピュータを含み得る。
コンピュータプログラムは、必須ではないがファイルシステム内のファイルに対応し得る。コンピュータプログラムは、他のプログラムまたはデータを保持するファイルの一部、たとえばマークアップ言語文書内に記憶された1つまたは複数のスクリプト内に、当該のプログラム専用の単一のファイル内に、または複数の協調ファイル、たとえば1つまたは複数のモジュール、サブプログラム、もしくはコードの部分を記憶するファイル内に記憶され得る。
本明細書で説明されるプロセスおよび論理フローは、入力データに対して演算し、出力を生成することによって動作を実行するように1つまたは複数のコンピュータプログラムを実行する1つまたは複数のコンピュータによって実行され得る。プロセスおよび論理フローはまた、専用論理回路、たとえばFPGA、ASIC、またはGPUによって、あるいは専用論理回路と1つまたは複数のプログラムされたコンピュータの組合せによって実行され得る。
コンピュータプログラムの実行に適したコンピュータは、汎用もしくは専用マイクロプロセッサまたはその両方、あるいは任意の他の種類の中央演算処理装置に基づき得る。一般には、中央演算処理装置は、読取り専用メモリもしくはランダムアクセスメモリまたはその両方から命令およびデータを受け取る。コンピュータの要素は、命令を実行するための中央演算処理装置と、命令およびデータを記憶するための1つまたは複数のメモリデバイスを含み得る。中央演算処理装置およびメモリは、専用論理回路によって補足され、または専用論理回路内に組み込まれ得る。
一般には、コンピュータはまた、1つまたは複数の大容量記憶デバイスをも含み、あるいはそれらからデータを受け取り、またはそれらにデータを転送するように動作可能に結合される。大容量記憶デバイスは、たとえば磁気ディスク、光磁気ディスク、または光ディスク、あるいはソリッドステートドライブであり得る。しかしながら、コンピュータはそのようなデバイスを有する必要はない。さらに、コンピュータは、ほんのいくつかの例を挙げれば、別のデバイス、たとえば携帯電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)レシーバ、またはポータブル記憶デバイス、たとえばユニバーサルシリアルバス(USB)フラッシュドライブ内に組み込まれ得る。
ユーザとの対話を実現するために、本明細書において説明される主題の実施形態は、ユーザに情報を表示するためのディスプレイデバイス、たとえばLCD(液晶ディスプレイ)モニタと、ユーザがそれによってコンピュータに入力を与え得る入力デバイス、たとえばキーボードおよびポインティングデバイス、たとえばマウス、トラックボール、もしくはタッチパッドとを有するコンピュータ上に実装され、またはコンピュータと通信するように構成され得る。他の種類のデバイスもユーザとの対話を実現するために使用され得、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、音声フィードバック、または触覚フィードバックであり得、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態として受け取られ得る。さらに、コンピュータは、ユーザによって使用されるデバイスに文書を送り、デバイスから文書を受け取ることによって、たとえば、ユーザのデバイス上のウェブブラウザから受け取った要求に応答して、ウェブブラウザにウェブページを送ることによって、またはユーザデバイス、たとえばスマートフォンもしくは電子タブレット上で実行中のappと対話することによってユーザと対話し得る。さらに、コンピュータは、テキストメッセージまたは他の形態のメッセージを、メッセージングアプリケーションを実行中のパーソナルデバイス、たとえばスマートフォンに送り、それに対してユーザから応答メッセージを受け取ることによってユーザと対話し得る。
本明細書は、システム、装置、およびコンピュータプログラム構成要素に関連して「構成された」という用語を使用する。1つまたは複数のコンピュータのシステムについて、特定の動作またはアクションを実行するように構成されることは、システムが、動作の際にシステムに動作またはアクションを実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組合せをシステム上にインストールしていることを意味する。1つまたは複数のコンピュータプログラムについて、特定の動作またはアクションを実行するように構成されることは、1つまたは複数のプログラムが、データ処理装置によって実行されるとき、装置に動作またはアクションを実行させる命令を含むことを意味する。専用論理回路について、特定の動作またはアクションを実行するように構成されることは、回路が動作またはアクションを実行する電子論理機構を有することを意味する。
本明細書は多くの特定の実装詳細を含むが、これらは、特許請求の範囲自体によって定義される、特許請求されているものの範囲に関する限定と解釈されるべきではなく、むしろ特定の実装に特有のものであり得る特徴の説明と解釈されるべきである。本明細書の別々の実装の状況において説明されるいくつかの特徴はまた、単一の実装において組み合わせて実現され得る。逆に、単一の実装の状況で説明される様々な特徴はまた、複数の実装として別々に、または任意の適切な部分組合せとして実現され得る。さらに、特徴が、いくつかの組合せとして働くものとして上記で説明され、さらにはそのように最初に特許請求され得るが、特許請求される組合せの1つまたは複数の特徴が、いくつかのケースでは、組合せから削除され得、特許請求の範囲は、部分組合せまたは部分組合せの変形を対象とし得る。
同様に、動作が特定の順序で図面に示され、特許請求の範囲に記載されるが、このことは、望ましい結果を達成するために、そのような動作が図示される特定の順序で、または順次的順序で実行されること、またはすべての図示される動作が実行されることを必要とすると理解されるべきではない。いくつかの環境では、マルチタスキングおよび並列処理が有利であり得る。さらに、前述の実施形態での様々なシステムモジュールおよび構成要素の分離は、すべての実施形態においてそのような分離を必要とすると理解されるべきではなく、記載のプログラム構成要素およびシステムは一般に、単一のソフトウェア製品内に共に一体化され、または複数のソフトウェア製品内にパッケージ化され得ることを理解されたい。
主題の特定の実施形態が説明された。他の実施形態は以下の特許請求の範囲内にある。たとえば、請求項に記載のアクションが、異なる順序で実行され、それでもなお望ましい結果を達成し得る。一例として、添付の図に示されるプロセスは、望ましい結果を達成するために、図示される特定の順序、または順次的順序を必ずしも必要とするわけではない。いくつかの実装例では、マルチタスキングおよび並列処理が有利であり得る。
100 環境
102 ブロックチェーンネットワーク
106 コンピューティングデバイス
108 コンピューティングデバイス
110 ネットワーク
200 概念アーキテクチャ
202 参加者システム
204 参加者システム
206 参加者システム
212 ブロックチェーンネットワーク
214 ノード
216 ブロックチェーン
302 Node_A
304 Node_B
306 直接的通信
308 Node_X
310 Node_Y
312 Node_Z
314 通信経路
316 通信経路
500 ブロックチェーントランザクション加速システム
502 Node_A
504 Node_B
506 Local_Network_1
508 Local_Network_2
510 通信チャネル
512 通信経路
514 Transfer_Node_A'
516 Transfer_Node_B'
518 Node_C
700 ブロックチェーントランザクション加速システム
702 ブロックチェーン加速ネットワーク
704 ブロックチェーン
706 加速ノード
708 ノード
710 トランザクション
900 装置
902 第1のレシーバ
904 第2のレシーバ
906 エクセキュータ
908 ディスカーダ
1000 装置
1002 センダ
1004 フォワーダ
1006 エクセキュータ
1100 装置
1102 プロバイダ
1104 レシーバ
1106 フォワーダ

Claims (20)

  1. ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを与えるステップであって、前記複数のブロックチェーン加速ネットワークが、複数の加速ノードを含み、各加速ノードが、前記複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能である、ステップと、
    第1の加速ノードにおいて、前記複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信するステップと、
    前記第1の加速ノードによって、第2のノードに前記トランザクションを転送するステップと
    を含む、コンピュータ実装方法。
  2. 前記第2のノードが、前記複数のブロックチェーンの第2のブロックチェーン内のノードである、請求項1に記載のコンピュータ実装方法。
  3. 前記第2のノードが、前記複数のブロックチェーン加速ネットワーク内の第2の加速ノードである、請求項1に記載のコンピュータ実装方法。
  4. 前記第1のブロックチェーン内の前記第1のノードと、第2のブロックチェーン内の前記第2のノードとが、異なるネットワーク内に存在する、請求項1に記載のコンピュータ実装方法。
  5. 配信されたトランザクションに関する統計を収集して、より高速なトランザクション配信時間を実現する前記複数のブロックチェーン加速ネットワーク内の加速ノードを決定するステップと、
    前記ブロックチェーントランザクション加速システムによる使用のために、より高速なトランザクション配信時間を有する加速ノードを選択するステップと
    をさらに含む、請求項1に記載のコンピュータ実装方法。
  6. 前記ブロックチェーントランザクション加速システムが、前記複数のブロックチェーンおよび前記複数のブロックチェーン加速ネットワーク内で実装される、請求項1に記載のコンピュータ実装方法。
  7. 前記複数のブロックチェーン加速ネットワークに加入するための要求を第3のブロックチェーンから受信するステップと、
    前記複数のブロックチェーン加速ネットワークへのアクセスを前記第3のブロックチェーンに与えるステップと
    をさらに含む、請求項2に記載のコンピュータ実装方法。
  8. 命令で符号化された、1つまたは複数のコンピュータ可読記憶媒体であって、前記命令は、1つまたは複数のプロセッサによって実行されるとき、前記1つまたは複数のプロセッサに、
    ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを与えることであって、前記複数のブロックチェーン加速ネットワークが、複数の加速ノードを含み、各加速ノードが、前記複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能であること、
    第1の加速ノードにおいて、前記複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信すること、および
    前記第1の加速ノードによって、第2のノードに前記トランザクションを転送すること
    を行わせる、1つまたは複数のコンピュータ可読記憶媒体。
  9. 前記第2のノードが、前記複数のブロックチェーンの第2のブロックチェーン内のノードである、請求項8に記載の1つまたは複数のコンピュータ可読記憶媒体。
  10. 前記第2のノードが、前記複数のブロックチェーン加速ネットワーク内の第2の加速ノードである、請求項8に記載の1つまたは複数のコンピュータ可読記憶媒体。
  11. 前記第1のブロックチェーン内の前記第1のノードと、第2のブロックチェーン内の前記第2のノードとが、異なるネットワーク内に存在する、請求項8に記載の1つまたは複数のコンピュータ可読記憶媒体。
  12. 配信されたトランザクションに関する統計を収集して、より高速なトランザクション配信時間を実現する前記複数のブロックチェーン加速ネットワーク内の加速ノードを決定し、
    前記ブロックチェーントランザクション加速システムによる使用のために、より高速なトランザクション配信時間を有する加速ノードを選択する
    ように、前記1つまたは複数のコンピュータによって実行可能な命令をさらに有する、請求項8に記載の1つまたは複数のコンピュータ可読記憶媒体。
  13. 前記ブロックチェーントランザクション加速システムが、前記複数のブロックチェーンおよび前記複数のブロックチェーン加速ネットワーク内で実装される、請求項8に記載の1つまたは複数のコンピュータ可読記憶媒体。
  14. 前記複数のブロックチェーン加速ネットワークに加入するための要求を第3のブロックチェーンから受信し、
    前記複数のブロックチェーン加速ネットワークへのアクセスを前記第3のブロックチェーンに与える
    ように、前記1つまたは複数のコンピュータによって実行可能な命令をさらに有する、請求項9に記載の1つまたは複数のコンピュータ可読記憶媒体。
  15. 1つまたは複数のプロセッサと、
    命令で符号化された、1つまたは複数のコンピュータ可読記憶媒体であって、前記命令は、前記1つまたは複数のプロセッサによって実行されるときに、前記1つまたは複数のプロセッサに、
    ブロックチェーントランザクション加速システムにおいて、複数のブロックチェーンにとってアクセス可能な複数のブロックチェーン加速ネットワークへのアクセスを与えることであって、前記複数のブロックチェーン加速ネットワークが、複数の加速ノードを含み、各加速ノードが、前記複数のブロックチェーンのうちの少なくとも1つのブロックチェーン内の少なくとも1つのノードにアクセス可能であること、
    第1の加速ノードにおいて、前記複数のブロックチェーンのうちの第1のブロックチェーン内の第1のノードから、転送すべきトランザクションを受信すること、および
    前記第1の加速ノードによって、第2のノードに前記トランザクションを転送すること
    を行わせる、1つまたは複数のコンピュータ可読記憶媒体と
    を備える、システム。
  16. 前記第2のノードが、前記複数のブロックチェーンの第2のブロックチェーン内のノードであり、
    前記複数のブロックチェーン加速ネットワークに加入するための要求を第3のブロックチェーンから受信し、
    前記複数のブロックチェーン加速ネットワークへのアクセスを前記第3のブロックチェーンに与える
    ように、前記1つまたは複数のコンピュータによって実行可能な命令をさらに有する、請求項15に記載のシステム。
  17. 前記第2のノードが、前記複数のブロックチェーン加速ネットワーク内の第2の加速ノードである、請求項15に記載のシステム。
  18. 前記第1のブロックチェーン内の前記第1のノードと、第2のブロックチェーン内の前記第2のノードとが、異なるネットワーク内に存在する、請求項15に記載のシステム。
  19. 配信されたトランザクションに関する統計を収集して、より高速なトランザクション配信時間を実現する前記複数のブロックチェーン加速ネットワーク内の加速ノードを決定し、
    前記ブロックチェーントランザクション加速システムによる使用のために、より高速なトランザクション配信時間を有する加速ノードを選択する
    ように、前記1つまたは複数のコンピュータによって実行可能な命令をさらに有する、請求項15に記載のシステム。
  20. 前記ブロックチェーントランザクション加速システムが、前記複数のブロックチェーンおよび前記複数のブロックチェーン加速ネットワーク内で実装される、請求項15に記載のシステム。
JP2019542583A 2018-12-28 2018-12-28 グローバル加速ノードを用いたブロックチェーントランザクション速度の改善 Pending JP2020516108A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/124975 WO2019072308A2 (en) 2018-12-28 2018-12-28 ENHANCED BLOCK CHAIN TRANSACTION SPEEDS USING GLOBAL ACCELERATION NODES

Publications (1)

Publication Number Publication Date
JP2020516108A true JP2020516108A (ja) 2020-05-28

Family

ID=66100141

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019542583A Pending JP2020516108A (ja) 2018-12-28 2018-12-28 グローバル加速ノードを用いたブロックチェーントランザクション速度の改善

Country Status (9)

Country Link
US (2) US10505708B2 (ja)
EP (1) EP3571808A4 (ja)
JP (1) JP2020516108A (ja)
KR (1) KR20200083937A (ja)
CN (1) CN109792382B (ja)
PH (1) PH12019501832A1 (ja)
SG (1) SG11201907248QA (ja)
TW (1) TWI697218B (ja)
WO (1) WO2019072308A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024013904A1 (ja) * 2022-07-13 2024-01-18 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3566393B1 (en) 2018-12-28 2021-09-01 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using transaction resending
CN110392898A (zh) 2018-12-28 2019-10-29 阿里巴巴集团控股有限公司 使用加速节点加速区块链网络中的交易交付
EP3571808A4 (en) 2018-12-28 2020-03-04 Alibaba Group Holding Limited IMPROVE THE SPEED OF BLOCKCHAIN TRANSACTIONS USING GLOBAL ACCELERATION NODES
WO2019137563A2 (en) * 2019-04-26 2019-07-18 Alibaba Group Holding Limited Anti-replay attack authentication protocol
SG11202002027TA (en) * 2019-09-12 2020-04-29 Alibaba Group Holding Ltd Log-structured storage systems
US11082207B2 (en) * 2019-11-13 2021-08-03 First Genesis, Inc. Blockchain platform as a service (BPaaS)
CN110933166B (zh) * 2019-11-27 2022-08-12 中国联合网络通信集团有限公司 一种共识平台、终端、节点和路径选择方法
KR102329140B1 (ko) * 2020-07-29 2021-11-19 숭실대학교 산학협력단 지리적 거리를 고려한 트랜잭션 보증 시간 단축 장치 및 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007019852A (ja) * 2005-07-07 2007-01-25 Nippon Telegr & Teleph Corp <Ntt> 階層分散型ルーティング方法とその管理装置
WO2008126210A1 (ja) * 2007-03-27 2008-10-23 Fujitsu Limited 通信経路選択プログラム、通信経路選択方法および通信経路選択装置
WO2018223995A1 (zh) * 2017-06-07 2018-12-13 众安信息技术服务有限公司 实现区块链跨链通信的方法、装置及系统

Family Cites Families (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5889943A (en) * 1995-09-26 1999-03-30 Trend Micro Incorporated Apparatus and method for electronic mail virus detection and elimination
US7844729B1 (en) 1999-05-03 2010-11-30 Digital Envoy, Inc. Geo-intelligent traffic manager
US8588103B2 (en) 2007-04-10 2013-11-19 Control4 Corporation System and method for distributing communications through a dense mesh network
US20090100128A1 (en) * 2007-10-15 2009-04-16 General Electric Company Accelerating peer-to-peer content distribution
US8089869B2 (en) 2008-03-09 2012-01-03 Fluke Corporation Method and apparatus of duplicate packet detection and discard
JP2012070293A (ja) 2010-09-27 2012-04-05 Hitachi Ltd 二重化高信頼通信方法および装置
US8462781B2 (en) 2011-04-06 2013-06-11 Anue Systems, Inc. Systems and methods for in-line removal of duplicate network packets
US8756217B2 (en) * 2011-07-12 2014-06-17 Facebook, Inc. Speculative switch database
US8935533B2 (en) 2011-12-20 2015-01-13 Alcatel Lucent Method and apparatus for a scalable and secure transport protocol for sensor data collection
US20150046558A1 (en) 2013-03-15 2015-02-12 Google Inc. System and method for choosing lowest latency path
US20160086175A1 (en) 2014-09-22 2016-03-24 Qualcomm Incorporated Peer-to-peer transaction system
US9967334B2 (en) * 2015-03-02 2018-05-08 Dell Products Lp Computing device configuration and management using a secure decentralized transaction ledger
US10051000B2 (en) 2015-07-28 2018-08-14 Citrix Systems, Inc. Efficient use of IPsec tunnels in multi-path environment
US20170132625A1 (en) 2015-11-05 2017-05-11 Mastercard International Incorporated Method and system for use of a blockchain in a transaction processing network
US20170132626A1 (en) * 2015-11-05 2017-05-11 Mastercard International Incorporated Method and system for processing of a blockchain transaction in a transaction processing network
WO2017109140A1 (en) 2015-12-22 2017-06-29 Bigchaindb Gmbh Decentralized, tamper-resistant, asset-oriented database system and method of recording a transaction
US20170236120A1 (en) 2016-02-11 2017-08-17 Oracle International Corporation Accountability and Trust in Distributed Ledger Systems
US10693658B2 (en) 2016-02-12 2020-06-23 Visa International Service Association Methods and systems for using digital signatures to create trusted digital asset transfers
WO2017167550A1 (en) 2016-03-30 2017-10-05 British Telecommunications Public Limited Company Blockchain state reliability determination
US20170345011A1 (en) * 2016-05-26 2017-11-30 Hitfin, Inc. System and method executed on a blockchain network
EP3285248B1 (en) 2016-08-16 2019-07-03 Alcatel Lucent Blockchain-based security threat detection method and system
CN106385319B (zh) 2016-09-29 2020-11-27 江苏通付盾科技有限公司 区块链网络中信息的验证方法及系统
US11128603B2 (en) * 2016-09-30 2021-09-21 Nec Corporation Method and system for providing a transaction forwarding service in blockchain implementations
US11146535B2 (en) * 2016-10-12 2021-10-12 Bank Of America Corporation System for managing a virtual private ledger and distributing workflow of authenticated transactions within a blockchain distributed network
US10387684B2 (en) 2016-12-09 2019-08-20 International Business Machines Corporation Interlocked blockchains to increase blockchain security
WO2018125989A2 (en) * 2016-12-30 2018-07-05 Intel Corporation The internet of things
US11574291B2 (en) 2017-01-08 2023-02-07 Bprotocol Foundation Methods for exchanging and evaluating virtual currency
US10764259B2 (en) * 2017-02-07 2020-09-01 Microsoft Technology Licensing, Llc Transaction processing for consortium blockchain network
US9998286B1 (en) * 2017-02-17 2018-06-12 Accenture Global Solutions Limited Hardware blockchain consensus operating procedure enforcement
US20180254982A1 (en) * 2017-03-01 2018-09-06 Cisco Technology, Inc. Communication Paths for Distributed Ledger Systems
US11095432B2 (en) * 2017-04-05 2021-08-17 Samsung Sds Co., Ltd. System for processing data based on blockchain and operating method thereof
US10812270B2 (en) 2017-04-07 2020-10-20 Citizen Hex Inc. Techniques for increasing the probability that a transaction will be included in a target block of a blockchain
US10102265B1 (en) * 2017-04-12 2018-10-16 Vijay K. Madisetti Method and system for tuning blockchain scalability for fast and low-cost payment and transaction processing
CN108876361A (zh) 2017-05-12 2018-11-23 李平 区块链系统、区块生成方法及计算机可读存储介质
US10740733B2 (en) 2017-05-25 2020-08-11 Oracle International Corporaton Sharded permissioned distributed ledgers
CN110741372A (zh) 2017-06-07 2020-01-31 区块链控股有限公司 用于管理区块链网络上的交易的计算机实现的系统和方法
CN107239954B (zh) * 2017-06-07 2021-01-22 北京汇通金财信息科技有限公司 一种提高区块产生速度的方法及装置
CN107358420B (zh) 2017-06-09 2020-08-11 北京博晨技术有限公司 用于实现热点账户的区块链系统以及实现热点账户的方法
GB201709219D0 (en) 2017-06-09 2017-07-26 Nchain Holdings Ltd Computer-implemented system and method
CN107332826B (zh) 2017-06-09 2019-12-03 中国联合网络通信集团有限公司 区块链代理节点的通信方法及装置
WO2018231255A1 (en) 2017-06-16 2018-12-20 Visa International Service Association Blockchain network interaction controller
GB201709848D0 (en) * 2017-06-20 2017-08-02 Nchain Holdings Ltd Computer-implemented system and method
CN107239910A (zh) 2017-06-27 2017-10-10 中国科学院城市环境研究所 耦合人口和poi点的城市内涝风险评估指标构建
JP6929725B2 (ja) 2017-07-14 2021-09-01 株式会社ジャパンディスプレイ バックライト装置、およびこれを備える液晶表示装置
US10984134B2 (en) * 2017-07-14 2021-04-20 Microsoft Technology Licensing, Llc Blockchain system for leveraging member nodes to achieve consensus
US10592979B2 (en) * 2017-07-26 2020-03-17 International Business Machines Corporation Managing blockchain transactions
US20190080402A1 (en) 2017-09-11 2019-03-14 Templum, Llc System and method for providing a regulatory-compliant token
CN107862600A (zh) * 2017-10-24 2018-03-30 深圳四方精创资讯股份有限公司 基于区块链的银行汇款方法及其系统
US20190188697A1 (en) * 2017-12-19 2019-06-20 Tbcasoft, Inc. Systems of multiple distributed ledgers using cross-ledger transfers for highly-scalable transaction throughput
CN108154367B (zh) * 2017-12-26 2021-07-02 成都质数斯达克科技有限公司 一种区块链业务校验方法及装置
US11257073B2 (en) 2018-01-31 2022-02-22 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing machine learning models for smart contracts using distributed ledger technologies in a cloud based computing environment
CN108200210B9 (zh) 2018-02-12 2021-06-18 众安信息技术服务有限公司 基于区块链的链管理的方法、装置及计算机可读介质
CN108805702B (zh) * 2018-04-19 2022-04-01 深圳市迅雷网络技术有限公司 基于区块链的交易缓冲/加速方法及区块链交易处理系统
US11194837B2 (en) * 2018-05-01 2021-12-07 International Business Machines Corporation Blockchain implementing cross-chain transactions
CN108769141A (zh) 2018-05-09 2018-11-06 深圳市深弈科技有限公司 一种多源实时交易行情数据接收与归并处理的方法
CN108764870B (zh) 2018-05-29 2020-07-07 阿里巴巴集团控股有限公司 基于区块链的交易处理方法及装置、电子设备
CN110363665B (zh) * 2018-06-11 2021-10-26 腾讯科技(深圳)有限公司 债权数据处理方法、装置、设备及介质
CN109242484A (zh) 2018-08-09 2019-01-18 玄章技术有限公司 一种区块链的共识激励方法
US11018851B2 (en) * 2018-08-23 2021-05-25 Paypal, Inc. Multi-blockchain digital transaction information segregation system
CN109064337A (zh) * 2018-10-18 2018-12-21 尚维斯 一种基于区块链的跨链记账方法
US20200143466A1 (en) 2018-11-06 2020-05-07 Jianxin Wu Blockchain-based lending systems and methods
US10325084B1 (en) 2018-12-11 2019-06-18 block.one Systems and methods for creating a secure digital identity
US11127000B2 (en) * 2018-12-17 2021-09-21 Intel Corporation Reducing blockchain transaction delay
US11474994B2 (en) 2018-12-27 2022-10-18 Intel Corporation Distributed blockchain oracle
EP3566393B1 (en) 2018-12-28 2021-09-01 Advanced New Technologies Co., Ltd. Accelerating transaction deliveries in blockchain networks using transaction resending
CN110392898A (zh) 2018-12-28 2019-10-29 阿里巴巴集团控股有限公司 使用加速节点加速区块链网络中的交易交付
EP3571808A4 (en) 2018-12-28 2020-03-04 Alibaba Group Holding Limited IMPROVE THE SPEED OF BLOCKCHAIN TRANSACTIONS USING GLOBAL ACCELERATION NODES

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007019852A (ja) * 2005-07-07 2007-01-25 Nippon Telegr & Teleph Corp <Ntt> 階層分散型ルーティング方法とその管理装置
WO2008126210A1 (ja) * 2007-03-27 2008-10-23 Fujitsu Limited 通信経路選択プログラム、通信経路選択方法および通信経路選択装置
WO2018223995A1 (zh) * 2017-06-07 2018-12-13 众安信息技术服务有限公司 实现区块链跨链通信的方法、装置及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
LUO, K. ET AL.: "A Multiple Blockchains Architecture On Inter-Blockchain Communication", 2018 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE QUALITY, RELIABILITY AND SECURITY COMPANION, JPN6020049409, July 2018 (2018-07-01), pages 139 - 145, ISSN: 0004581420 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024013904A1 (ja) * 2022-07-13 2024-01-18 富士通株式会社 情報処理プログラム、情報処理方法、および情報処理装置

Also Published As

Publication number Publication date
PH12019501832A1 (en) 2020-06-15
SG11201907248QA (en) 2019-09-27
WO2019072308A2 (en) 2019-04-18
US20200145185A1 (en) 2020-05-07
TW202027465A (zh) 2020-07-16
KR20200083937A (ko) 2020-07-09
TWI697218B (zh) 2020-06-21
US20190280852A1 (en) 2019-09-12
CN109792382A (zh) 2019-05-21
WO2019072308A3 (en) 2019-10-24
CN109792382B (zh) 2022-07-12
EP3571808A2 (en) 2019-11-27
US10505708B2 (en) 2019-12-10
EP3571808A4 (en) 2020-03-04
US11032057B2 (en) 2021-06-08

Similar Documents

Publication Publication Date Title
TWI697218B (zh) 使用全域加速節點提高區塊交易速度
TWI712303B (zh) 使用交易重發加速區塊鏈網路中的交易交付
TWI703524B (zh) 使用加速節點加速區塊鏈網路中的交易交付
CN111047324B (zh) 用于更新区块链节点处的公钥集合的方法及装置
KR20200083936A (ko) 블록체인 네트워크에서의 트랜잭션의 병렬 실행
CN111108734B (zh) 基于存储空间互换的改进的防重放设备
KR20200083939A (ko) 스마트 계약 화이트리스트
CN111183427A (zh) 管理基于区块链的中心化账本系统
CN111108526A (zh) 管理基于区块链的中心化账本系统
CN114128216A (zh) 多输入交易

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191002

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201030

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201221

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210312

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210830