JP2020512708A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2020512708A5 JP2020512708A5 JP2019531777A JP2019531777A JP2020512708A5 JP 2020512708 A5 JP2020512708 A5 JP 2020512708A5 JP 2019531777 A JP2019531777 A JP 2019531777A JP 2019531777 A JP2019531777 A JP 2019531777A JP 2020512708 A5 JP2020512708 A5 JP 2020512708A5
- Authority
- JP
- Japan
- Prior art keywords
- node
- message
- client
- distributed system
- slave
- 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
Links
- 238000003672 processing method Methods 0.000 claims description 27
- 230000002159 abnormal effect Effects 0.000 claims description 9
- 230000000875 corresponding Effects 0.000 claims 9
- 230000002547 anomalous Effects 0.000 claims 3
- 230000004044 response Effects 0.000 claims 3
- 238000001514 detection method Methods 0.000 claims 1
- 230000001360 synchronised Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 15
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005755 formation reaction Methods 0.000 description 2
- 230000003044 adaptive Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable Effects 0.000 description 1
- 230000004301 light adaptation Effects 0.000 description 1
- 230000003287 optical Effects 0.000 description 1
Description
本発明の実施態様は、以下のような有益な効果を有する。
1)電子署名の方式を用いることで分散システムにおける通信の信頼性を保証し、任意の通信を行う双方はそれぞれ電子署名の方式を利用し、即ち、メッセージを送信する際にメッセージの電子署名を携帯させ、電子署名を検証することでメッセージの信頼性を保証する。
2)スレーブノードは、マスターノードから送信されたメッセージを受信するとき、結果を直接クライアントへ返信し、結果に、例えば、一意のフィールド、メッセージの配列番号及び電子署名等の必要な情報が携帯され、これにより、クライアントは、直接スレーブノードから返信された結果に基づいてスレーブノードの合意達成状況を判定でき、異常ノードを高効率に検出する。
1)電子署名の方式を用いることで分散システムにおける通信の信頼性を保証し、任意の通信を行う双方はそれぞれ電子署名の方式を利用し、即ち、メッセージを送信する際にメッセージの電子署名を携帯させ、電子署名を検証することでメッセージの信頼性を保証する。
2)スレーブノードは、マスターノードから送信されたメッセージを受信するとき、結果を直接クライアントへ返信し、結果に、例えば、一意のフィールド、メッセージの配列番号及び電子署名等の必要な情報が携帯され、これにより、クライアントは、直接スレーブノードから返信された結果に基づいてスレーブノードの合意達成状況を判定でき、異常ノードを高効率に検出する。
第2のコンセンサスモード:ビザンチン問題を解決するためのコンセンサスモードであり、第2のコンセンサスモードを実現するアルゴリズムは、ビザンチンフォールトトレランス(BFT、Byzantine Fault Tolerance)アルゴリズム、実用的ビザンチンフォールトトレランス(PBFT、Practical Byzantine Fault Tolerance)アルゴリズム、再帰のフォールトトレランスアルゴリズム−ビザンチンフォールトトレランス(BFT−RAFT、Byzantine Fault Tolerance Recursive Algorithm for Fault Tolerance)、ビザンチンフォールトトレランス(BFT−Paxos)アルゴリズム等を含む。
4)コンセンサスモードの切替:コンセンサスモードの適応とも呼ばれ、分散ネットワークに使用されるコンセンサスアルゴリズムは、ネットワーク環境が良好である場合に、合意形成効率が高くて異常ノード(例えば、ビザンチン問題のあるノード)を検出できるアルゴリズムを自動的に利用して、第1のコンセンサスモードを実現するが、悪意のあるノード又はノードが誤っていることが判明した場合に、ビザンチンフォールトトレランスの問題を解決できるアルゴリズムに自動的に切り替えて第2のコンセンサスモードを実現する。
アプリケーション層に関して例を挙げれば、図3Aを参照すると、図3Aに提供されるノード200のアプリケーション層のコンセンサスメカニズム270は、以下を備える。
投票ユニット2701:第1のコンセンサスモードにおいて新しいコンセンサス周期が到来した場合に、ノード200及び分散システムにおける他のノードが投票操作を実行することで、マスターノードの状態又はスレーブノードの状態にされるように構成される。
入出力インターフェース340は、例えば表示画面、タッチパネル、スピーカ等の入出力デバイスを用いて実現されることができる。
記憶媒体330は、フラッシュメモリ、ハードディスク、光ディスク等の不揮発性記憶媒体を用いて実現されることができれば、DDRを用いて実現されることもでき、上述したメッセージ処理方法を実行するための実行可能な命令を記憶している。
分散システムにおいて、任意のノードは任意の時刻でマスターノード、スレーブノード及び競合ノードという3つの状態のうちのいずれかの状態にある。分散システムが通常に運転するほとんどの時間内に、分散システムに1つのマスターノードが存在し、他のノードはいずれもスレーブノードであり、マスターノードがクライアントのメッセージを受信する。
分散システムの動作時間は、連続するコンセンサス周期に分けられ、ここで、任期(Term)とも呼ばれ、各任期は、任意の時間長であってもよく、任期は、連続する整数で番号を付けられる。各任期で、まず最初にマスターノード投票を行い、投票段階において、複数の競合ノードがマスターノードとなるように競合し、あるノードがマスターノードになれば、他の競合ノードがスレーブノードに変換し、マスターノードとなったノードは、この任期内にずっとマスターノードを担い、このマスターノードに障害が生じたら、他のノードは新しい任期内に投票を行う。
上述したステップから分かるように、第1のコンセンサスモードにおいて、
1)電子署名の方式を用いることで通信の信頼性を保証する。
1)電子署名の方式を用いることで通信の信頼性を保証する。
任意の通信を行う双方はそれぞれ電子署名の方式を利用し、即ち、送信側はメッセージを送信する際にメッセージの電子署名を携帯させ、例えば、送信側の非対称暗号化アルゴリズムの秘密鍵を用いてメッセージのダイジェストを暗号化し、送信側の電子署名を形成し、受信側は、電子署名を検証することでメッセージの信頼性を保証し、即ち、メッセージの署名について、非対称暗号化アルゴリズムの公開鍵(受信側及び送信側が同じ非対称暗号化アルゴリズムを用いることを保証すれば、受信側は公開鍵を予め取得する)を用いて復号し、復号して得たダイジェストとメッセージから抽出されたダイジェストとを照合し、一致していれば、電子署名の検証が通過し、送信側から送信されたメッセージが信頼できることが分かる。
同様に、上述の合意したノード割合閾値は、分散システムにおける全てのスレーブノードの数に対応し、例えば100%であるか、或いは、分散システムにおいて第1のコンセンサスモードで合意形成することを求められるスレーブノードの数の最小値、例えば、51%(即ち、第1のコンセンサスモードのフォールトトレランス性能に求められる合意したノード数の最小値であり、この最小値よりも低ければ、第1のコンセンサスモードで達成した合意の信頼性は保証されることができない)であることができる。
例えば、分散システムが第2のコンセンサスメカニズムにあり、仮にノード1をマスターノードとし、ノード2〜ノードNをスレーブノードとすると、各ノードがクライアントからのメッセージに関して合意形成することをカウントし、ノード1にとって、ノード1とノード2〜ノードNは、最近クライアントから送られたM個(マスターノードの合意形成回数の閾値)のメッセージのそれぞれに関して合意を達成していれば、各ノード間でよく合意を達成したことが示され、ノード1は第1のコンセンサスモードに切り替える旨の通知をノード2〜ノードNへ送信し、ノード2〜ノードNはノード1へ切替確認を送信し、ノード1が第1のコンセンサスモードにおいてもマスターノードであることを承認して、ノード2〜ノードNが継続してスレーブノードであり、ノード2〜ノードNにおいて悪意のあるノードが生じても、クライアントからのメッセージを偽造できず、ノードの合意形成効率を確保する。
方式2):マスターノードは、合意形成回数がマスターノードの合意形成回数の閾値を超えたと統計した場合に、マスターノードは、スレーブノードが第1のコンセンサスモードに戻ることをトリガーし、スレーブノードは、合意形成回数の閾値がスレーブノードの合意形成回数の閾値を超えたと統計した場合に、スレーブノードは、第1のコンセンサスモードに戻ることを確認し、マスターノード及びスレーブノードは、第1のコンセンサスモードに切り替えるときに第2のコンセンサスモードにおけるノード状態を継承する(即ち、ノードがマスターノード又はスレーブノードである状態は変わらないままである)。
分散システムが第2のコンセンサスモードにあるときに、スレーブノードは、第2のコンセンサスモードにおいてクライアントからのメッセージに関して他のノード(マスターノード及び他のスレーブノードを含む)と合意形成する回数を統計し、合意形成回数がスレーブノードの合意形成回数の閾値を超えていれば(マスターノードの合意形成回数の閾値以下であってもよく、例えば、M/2であることができる)、マスターノードが第1のコンセンサスモードにおいて継続してマスターノードであることに同意する旨の通知をマスターノードへ送信し、第2のコンセンサスモードにおけるスレーブノードは、第1のコンセンサスモードに切り替えるときに継続してスレーブノードであり、これにより、第1のコンセンサスモードに切り替える投票操作を完成し、継続して第1のコンセンサスモードにおいてクライアントからのメッセージに関して合意形成する。このように、第1のコンセンサスモードにおいて悪意のあるノードがマスターノードになることを回避することができ、合意形成効率を確保する。
関連技術に提供されるRAFTは、複数のノードの一致性問題を解決し、効率が比較に高いが、しかし、ノード間でのビザンチンフォールトトレランス問題を解決しておらず、一方、PBFTアルゴリズムは、複数のノードの一致性を保証できるとともに、各ノード間でのビザンチンフォールトトレランスを解決している。このため、本発明の実施形態では、ノードにエラーが生じた場合に、或いはビザンチン問題が生じた場合に、PBFTアルゴリズムを自動的に用いて各ノード間で合意形成でき、全てのノードがそれぞれ合意を達成し、即ち、ビザンチンノードがない場合に、再び合意形成効率の高いRAFTアルゴリズムに自動的に切り替えて、各ノード間で合意形成する。
図8を参照すると、図8は、発明の実施形態に提供されるブロックチェーンシステムがRAFTアルゴリズムを利用して合意形成する1つの任意的なフロー模式図であり、クライアントがメッセージをマスターノード(leaderノード)へ送信した後、マスターノードは、受信されたメッセージを並び替え、並び替える順に従ってスレーブノード(followerノード)に配布し、他のfollowerは、leaderノードが並び替えた順に従ってメッセージをログに記憶し、leaderノードへRPC結果(result)を返信し、その後、leaderノードは、ログにおけるメッセージをローカルの磁気ディスクに記憶してから、各スレーブノードへコミット(Commit)を送信し、各スレーブノードは、ログにおけるメッセージをスレーブノードのローカル磁気ディスクに記憶すれば、メッセージの一致性を同期させることを完成し、効率が高いが、ビザンチンノード問題を解決できない。
3)異常ノードを検出した場合に、デフォルトに利用される合意形成効率の高い第1のコンセンサスモードからフォールトトレランス性能のより優れた第2のコンセンサスモードに切り替えることができ、分散システムは異常が発生した時でも順調に合意形成できることを確保する。
4)第2のコンセンサスモードにおいてよく合意を達成していれば(例えば、合意形成回数に基づいて判断する)、再び第1のコンセンサスモードに切り替え、このような適応型コンセンサスモードの切替は、合意形成効率とフォールトトレランス性能をうまく両立させている。分散システムの運転するネットワーク状態が良好であるほとんどの時間内に、合意形成効率が高いという技術効果を実現し、ノードに障害が発生し、或いはビザンチンノードがある場合に、分散システムの業務機能を正常に処理できることを保証する。
Claims (35)
- 分散システムであって、
クライアントと複数のノードとを備え、
前記ノードは、第1のコンセンサスモードにおいて新しいコンセンサス周期が到来した場合に、投票操作を実行することで、マスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されるように構成され、
前記ノードは、マスターノードの状態にある場合に、前記クライアントから送信されたメッセージの電子署名を検証し、前記メッセージを前記スレーブノードへ送信するように構成され、
前記ノードは、マスターノードの状態にある場合に、所定数を超えた前記スレーブノードの受信確認通知を受信し、前記受信確認通知の電子署名を検証した後に前記メッセージを永続的に記憶して、前記スレーブノードへメッセージ記憶通知を送信するように構成され、
前記ノードは、さらに、スレーブノードの状態にある場合に、前記マスターノードから送信された前記メッセージを受信したときに前記クライアントへ結果を返信し、前記マスターノードから受信したメッセージの電子署名を検証して、前記マスターノードへ受信確認通知を送信するように構成され、
前記ノードは、スレーブノードの状態にある場合に、前記マスターノードから受信したメッセージ記憶通知の電子署名を検証して、前記マスターノードから受信したメッセージを永続的に記憶するように構成され、
前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果に基づいて、前記分散システムにおける異常ノードを決定するように構成される、
分散システム。 - 前記クライアントは、さらに、受信された結果の電子署名を検証した後、受信された結果に含まれる一意のフィールドと送信されたメッセージにおける一意のフィールドとを比較し、一致しない一意のフィールドが対応するスレーブノードをエラーノードとして決定し、結果を返信していないスレーブノードを障害ノードとして決定するように構成される、
請求項1に記載の分散システム。 - 前記クライアントは、さらに、受信された結果に含まれた配列番号と送信されたメッセージの配列番号との比較により、一致しない配列番号を送信したスレーブノードの数が一致しない数の閾値を超えた場合に、前記マスターノードが悪意のあるノードであると判定するように構成される、
請求項1に記載の分散システム。 - 前記クライアントは、さらに、前記マスターノードが悪意のあるノードであると決定し、或いは、前記スレーブノードに障害ノードが存在すると決定した場合に、前記分散システムにおけるノードが第2のコンセンサスモードに切り替えるようにトリガーする、
請求項1に記載の分散システム。 - 前記ノードは、さらに、前記第2のコンセンサスモードに切り替える準備段階にある場合に、前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおけるノードに永続的に記憶されたメッセージのハッシュ値とを比較し、一致すると確認した場合に、対応するノードの電子署名が含まれている一致性確認を前記クライアントへ送信するように構成され、
前記クライアントは、さらに、所定の時間内に全ての前記ノードの一致性確認を受信した場合に、前記分散システムにおけるノードが前記第1のコンセンサスモードに戻るように通知し、前記所定の時間内には全ての前記ノードの一致性確認を受信していない場合に、前記分散システムにおけるノードが継続して前記第2のコンセンサスモードに切り替えるように通知する、
請求項4に記載の分散システム。 - 前記ノードは、さらに、前記第2のコンセンサスモードに切り替える準備段階にある場合に、前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおけるノードに永続的に記憶されたメッセージのハッシュ値とを比較し、一致すると確認した場合に、メッセージの送信ノードへ、対応するノードの電子署名が含まれているデータ確認を送信するように構成され、
前記クライアントは、さらに、所定の時間内には合意したノードが合意していないノードのデータ確認を受信していない場合に、或いは、所定の時間内に分散システムにおけるノードがデータ確認を受信していない場合に、前記分散システムにおけるノードが継続して前記第2のコンセンサスモードに切り替えるようにトリガーする、
請求項4に記載の分散システム。 - 前記ノードは、さらに、マスターノードの状態にあるとともに、前記第2のコンセンサスモードにおいてカウントした回数であって、受信したメッセージに関して前記スレーブノードと合意形成したカウント数である回数がマスターノードの合意形成回数の閾値を超えた場合に、前記スレーブノードとともに前記第1のコンセンサスモードに切り替えに関して合意形成するように構成される、
請求項4に記載の分散システム。 - 前記ノードは、さらに、マスターノードの状態にあるとともに、カウントした回数がマスターノードの合意形成回数の閾値を超えた場合に、前記第1のコンセンサスモードに切り替える旨の通知を前記スレーブノードへ送信し、全ての前記スレーブノードから送信された切替確認を受信した場合に、前記スレーブノードと同期して前記第1のコンセンサスモードに切り替えるように構成される、
請求項7に記載の分散システム。 - 前記ノードは、さらに、スレーブノードの状態にあり、前記第1のコンセンサスモードに切り替える旨の通知を受信し、かつ、受信したメッセージに関して合意形成した回数がスレーブノードの合意形成回数の閾値を超えたとカウントした場合に、前記マスターノードへ切替確認を送信するように構成される、
請求項8に記載の分散システム。 - 前記ノードは、さらに、前記マスターノードのハートビートを受信していない場合に、或いは、前記マスターノードが悪意のあるノードである場合に、投票操作を再実行することで、マスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されるように構成される、
請求項1に記載の分散システム。 - 前記ノードは、さらに、新しいコンセンサス周期が到来し、かついずれのノードから送信されたハートビートも受信していない場合に、前記分散システムにおけるノードへ投票要求を送信し、所定数のノードから返信された投票確認を受信した場合に、マスターノードの状態に変換して前記分散システムにおけるノードへハートビートを定期的に送信するように構成され、
投票確認は、前記分散システムにおけるノードが送信され、かつ送信される前には前記投票要求に含まれた電子署名は検証され、
前記ノードは、さらに、新しいコンセンサス周期が到来し、かつ前記分散システムにおけるノードから送信されたハートビートを受信した場合に、スレーブノードの状態に変換するように構成される、
請求項1に記載の分散システム。 - メッセージ処理方法であって、
第1のコンセンサスモードにおいて新しいコンセンサス周期が到来した場合に、分散システムにおけるノードが投票操作を実行し、投票操作によりマスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されることと、
前記ノードがマスターノードの状態にある場合に、前記ノードは、
クライアントのメッセージを受信し、前記メッセージの電子署名を検証して、前記メッセージを前記スレーブノードへ送信する操作と、
所定数を超えた前記スレーブノードの受信確認通知を受信し、前記受信確認通知の電子署名を検証した後に前記メッセージを永続的に記憶して、前記スレーブノードへメッセージ記憶通知を送信する操作とを実行することと、を含み、
前記スレーブノードが前記メッセージを受信したときに前記クライアントへ返信した結果は、前記クライアントが前記分散システムにおける異常ノードを決定するために用いられる、
メッセージ処理方法。 - 前記ノードがスレーブノードの状態にある場合に、前記ノードは、
前記マスターノードから送信されたメッセージを受信し、前記クライアントへ結果を返信して、受信されたメッセージの電子署名を検証した後に前記マスターノードへ受信確認通知を送信する操作と、
受信されたメッセージ記憶通知の電子署名を検証した後、受信されたメッセージを永続的に記憶する操作とを実行すること、をさらに含む、
請求項12に記載のメッセージ処理方法。 - 前記ノードがスレーブノードの状態にある場合に、前記スレーブノードが前記クライアントへ返信した結果に、前記メッセージの一意のフィールド、前記スレーブノードの電子署名の情報が含まれ、
前記結果は、前記クライアントが含まれた電子署名を検証し、前記結果に含まれる一意のフィールドと送信されたメッセージの一意のフィールドとを比較し、一致しない一意のフィールドが対応するスレーブノードをエラーノードとして決定するとともに、対応する結果を返信していないスレーブノードを障害ノードとして決定するために用いられる、
請求項12に記載のメッセージ処理方法。 - 前記ノードがスレーブノードの状態にある場合に、前記スレーブノードの返信した結果に、前記スレーブノードの受信したメッセージの配列番号が含まれ、
前記結果は、前記クライアントが含まれた配列番号と送信されたメッセージの配列番号とを比較し、一致しない配列番号を送信したスレーブノードの数が一致しない数の閾値を超えた場合に、前記マスターノードが悪意のあるノードであると決定するために用いられる、
請求項12に記載のメッセージ処理方法。 - 前記クライアントは、前記マスターノードが悪意のあるノードであると決定し、或いは、前記スレーブノードに障害ノードが存在すると決定した場合に、前記ノードは、前記クライアントのトリガーに応えて第2のコンセンサスモードに切り替えること、をさらに含む、
請求項12に記載のメッセージ処理方法。 - 前記ノードが前記第2のコンセンサスモードに切り替える準備段階にある場合に、前記ノードは、
前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおけるノードに永続的に記憶されたメッセージのハッシュ値とを比較し、一致すると確認した場合に、前記クライアントへ、対応するノードの電子署名が含まれている一致性確認を送信する操作と、
前記クライアントが所定の時間内に全ての前記ノードの一致性確認を受信した場合に、前記ノードは、前記クライアントの通知に応えて、継続して前記第1のコンセンサスモードに切り替える操作と、
前記クライアントが所定の時間内には全ての前記ノードの一致性確認を受信していない場合に、前記ノードは、前記クライアントの通知に応えて、継続して前記第2のコンセンサスモードに切り替える操作とを実行すること、をさらに含む、
請求項16に記載のメッセージ処理方法。 - 前記ノードが前記第2のコンセンサスモードに切り替える準備段階にある場合に、前記ノードは、
前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおけるノードに永続的に記憶されたメッセージのハッシュ値とを比較し、一致すると確認した場合に、メッセージの送信ノードへ、対応するノードの電子署名が含まれているデータ確認を送信する操作と、
所定の時間内に合意したノードが合意していないノードのデータ確認を受信していない場合に、或いは、前記所定の時間内に分散システムにおけるノードがデータ確認を受信していない場合に、前記ノードは、前記クライアントのトリガーに応えて、継続して前記第2のコンセンサスモードに切り替える操作とを実行すること、をさらに含む、
請求項16に記載のメッセージ処理方法。 - 前記ノードがマスターノードの状態にあり、かつ前記第2のコンセンサスモードにおいてカウントした回数であって、受信したメッセージに関して前記スレーブノードと合意形成したカウント数である回数がマスターノードの合意形成回数の閾値を超えた場合に、前記スレーブノードとともに前記第1のコンセンサスモードに切り替えること、をさらに含む、
請求項16に記載のメッセージ処理方法。 - 前記スレーブノードとともに前記第1のコンセンサスモードに切り替えることは、
前記マスターノードが前記第1のコンセンサスモードに切り替える旨の通知を前記スレーブノードへ送信し、全ての前記スレーブノードから送信された切替確認を受信した場合に、前記スレーブノードと同期して前記第1のコンセンサスモードに切り替えることを含む、
請求項19に記載のメッセージ処理方法。 - 前記ノードがスレーブノードの状態にある場合に、
前記第1のコンセンサスモードに切り替える旨の通知を受信したときに、受信したメッセージに関して合意形成した回数をカウントし、カウントした回数がスレーブノードの合意形成回数の閾値を超えた場合に、前記マスターノードへ切替確認を送信する操作を実行すること、をさらに含む、
請求項20に記載のメッセージ処理方法。 - 前記スレーブノードが前記マスターノードのハートビートを受信していない場合に、或いは、前記マスターノードが悪意のあるノードである場合に、前記分散システムにおけるノードが投票操作を再実行することで、マスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されること、をさらに含む、
請求項12に記載のメッセージ処理方法。 - 新しいコンセンサス周期が到来し、かつハートビートを受信していない場合に、前記ノードは、前記分散システムにおけるノードへ、前記ノードの電子署名が含まれている投票要求を送信し、
所定数のノードから返信された投票確認を受信した場合に、マスターノードの状態に変換し、前記ノードは前記分散システムにおけるノードへハートビートを定期的に送信し、
前記投票確認は、前記分散システムにおけるノードが前記投票要求に含まれた電子署名を検証する後に送信され、
新しいコンセンサス周期が到来し、かつ前記分散システムにおけるノードから送信されたハートビートを受信した場合に、スレーブノードの状態に変換する、
請求項12に記載のメッセージ処理方法。 - メッセージ処理方法であって、
クライアントは、分散システムのノードのうちのマスターノードへ、前記クライアントの電子署名が含まれているメッセージを送信することと、
前記電子署名は、前記マスターノードが検証するのに用いられ、受信されたメッセージは、前記マスターノードの電子署名を含んで、前記分散システムにおけるスレーブノードへ送信されることと、
前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果を受信することと、
前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果に基づいて、前記分散システムにおける異常ノードを決定することと、を含む、
メッセージ処理方法。 - 前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果に基づいて、前記分散システムにおける異常ノードを決定することは、
前記クライアントは、受信された結果の電子署名を検証した後、受信された結果に含まれる一意のフィールドと送信されたメッセージにおける一意のフィールドとを比較し、一致しない一意のフィールドが対応するスレーブノードをエラーノードとして決定するとともに、対応する結果を返信していないスレーブノードを障害ノードとして決定することを含む、
請求項24に記載のメッセージ処理方法。 - 前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果に基づいて、前記分散システムにおける異常ノードを決定することは、
前記クライアントは、受信された結果に含まれた配列番号と送信されたメッセージの配列番号との比較により、一致しない配列番号を送信したスレーブノードの数が一致しない数の閾値を超えた場合に、前記マスターノードが悪意のあるノードであると判定することを含む、
請求項24に記載のメッセージ処理方法。 - 前記クライアントは、前記マスターノードが悪意のあるノードであると決定した場合に、或いは、前記クライアントは、前記スレーブノードに障害ノードが存在すると決定した場合に、前記分散システムのノードが第2のコンセンサスモードに切り替えるようにトリガーすること、をさらに含む、
請求項24に記載のメッセージ処理方法。 - 前記クライアントは、所定の時間内に全ての前記ノードの一致性確認を受信した場合に、全ての前記ノードが第1のコンセンサスモードに戻るように通知することと、
前記クライアントは、所定の時間内には全ての前記ノードの一致性確認を受信していない場合に、全ての前記ノードが継続して前記第2のコンセンサスモードに切り替えるように通知することと、をさらに含み、
前記一致性確認は、前記ノードの電子署名を含んでおり、前記ノードが前記第2のコンセンサスモードに切り替える準備段階にあるときに送信され、かつ、送信される前に、前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおけるノードに永続的に記憶されたメッセージのハッシュ値とが一致すると確認する、
請求項27に記載のメッセージ処理方法。 - 所定の時間内に合意したノードが合意していないノードのデータ確認を受信していない場合に、或いは、所定の時間内に分散システムにおけるノードがデータ確認を受信していない場合に、前記クライアントは、前記分散システムにおけるノードが継続して前記第2のコンセンサスモードに切り替えるようにトリガーすること、をさらに含み、
前記データ確認は、対応するノードの電子署名を含んでおり、前記ノードが前記第2のコンセンサスモードに切り替える準備段階にあるときに送信され、かつ、送信される前に、前記ノードに永続的に記憶されたメッセージのハッシュ値と、前記分散システムにおいて永続的に記憶されたメッセージのハッシュ値とが一致すると確認する、
請求項27に記載のメッセージ処理方法。 - 分散システムにおけるノードであって、
第1のコンセンサスモードにおいて新しいコンセンサス周期が到来した場合に、投票操作を実行することで、投票操作によりマスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されるように構成される投票ユニットと、
前記ノードがマスターノードの状態にある場合に、クライアントのメッセージを受信し、前記メッセージの電子署名を検証して、前記メッセージを前記スレーブノードへ送信し、そして、
所定数を超えた前記スレーブノードの受信確認通知を受信し、前記受信確認通知の電子署名を検証した後に前記メッセージを永続的に記憶して、前記スレーブノードへメッセージ記憶通知を送信するように構成されるマスターノードユニットと、を備え、
前記スレーブノードが前記メッセージを受信したときに前記クライアントへ返信した結果は、前記クライアントが前記分散システムにおける異常ノードを決定するために用いられる、
ノード。 - 分散システムにおけるノードであって、1つ又は複数のプロセッサと、メモリと、1つ以上のプログラムとを備え、前記1つ以上のプログラムがメモリに記憶され、前記プログラムは、それぞれ一群の命令に対応する1つ以上のユニットを含むことができ、前記1つ又は複数のプロセッサは、命令を実行する際にメッセージ処理方法を実現するように構成され、前記メッセージ処理方法は、
第1のコンセンサスモードにおいて新しいコンセンサス周期が到来した場合に、分散システムにおけるノードが投票操作を実行し、投票操作によりマスターノードの状態にあるかそれともスレーブノードの状態にあるかが決定されることと、
前記ノードがマスターノードの状態にある場合に、前記ノードは、
クライアントのメッセージを受信し、前記メッセージの電子署名を検証して、前記メッセージを前記スレーブノードへ送信する操作と、
所定数を超えた前記スレーブノードの受信確認通知を受信し、前記受信確認通知の電子署名を検証した後に前記メッセージを永続的に記憶して、前記スレーブノードへメッセージ記憶通知を送信する操作とを実行することと、を含み、
前記スレーブノードが前記メッセージを受信したときに前記クライアントへ返信した結果は、前記クライアントが前記分散システムにおける異常ノードを決定するために用いられる、
ノード。 - 分散システムにおけるクライアントであって、
分散システムのノードのうちのマスターノードへ、前記クライアントの電子署名が含まれているメッセージを送信し、
前記電子署名は、前記マスターノードが検証するのに用いられ、受信されたメッセージは、前記マスターノードの電子署名を含んで、前記分散システムにおけるスレーブノードへ送信され、
前記スレーブノードは、前記メッセージを受信したときに返信した結果を受信する
ように構成される通信ユニットと、
前記スレーブノードが前記メッセージを受信したときに前記クライアントへ返信した結果に基づいて、前記分散システムにおける異常ノードを決定するように構成される検出ユニットと、を備える、
クライアント。 - 分散システムにおけるクライアントであって、1つ又は複数のプロセッサと、メモリと、1つ以上のプログラムとを備え、前記1つ以上のプログラムがメモリに記憶され、前記プログラムは、それぞれが一群の命令に対応する1つ以上のユニットを含むことができ、前記1つ又は複数のプロセッサは、命令を実行する際にメッセージ処理方法を実現するように構成され、前記メッセージ処理方法は、
クライアントは、分散システムのノードのうちのマスターノードへ、前記クライアントの電子署名が含まれているメッセージを送信することと、
前記電子署名は、前記マスターノードが検証するのに用いられ、受信されたメッセージは、前記マスターノードの電子署名を含んで、前記分散システムにおけるスレーブノードへ送信されることと、
前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果を受信することと、
前記クライアントは、前記スレーブノードが前記メッセージを受信したときに返信した結果に基づいて、前記分散システムにおける異常ノードを決定することと、を含む、
クライアント。 - プロセッサに、実行可能なプログラムを実行する際に、請求項12乃至23のいずれか一項に記載のメッセージ処理方法を実現させるための前記実行可能なプログラムが記憶されている記憶媒体。
- プロセッサに、実行可能なプログラムを実行する際に、請求項24乃至29のいずれか一項に記載のメッセージ処理方法を実現させるための前記実行可能なプログラムが記憶されている記憶媒体。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710203499.X | 2017-03-30 | ||
CN201710203499.XA CN106789095B (zh) | 2017-03-30 | 2017-03-30 | 分布式系统及消息处理方法 |
PCT/CN2018/080574 WO2018177264A1 (zh) | 2017-03-30 | 2018-03-26 | 分布式系统、消息处理方法、节点、客户端及存储介质 |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2020512708A JP2020512708A (ja) | 2020-04-23 |
JP2020512708A5 true JP2020512708A5 (ja) | 2021-01-14 |
JP6883106B2 JP6883106B2 (ja) | 2021-06-09 |
Family
ID=58965529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019531777A Active JP6883106B2 (ja) | 2017-03-30 | 2018-03-26 | 分散システム、メッセージ処理方法、ノード、クライアント及び記憶媒体 |
Country Status (7)
Country | Link |
---|---|
US (2) | US11237896B2 (ja) |
EP (1) | EP3605947B1 (ja) |
JP (1) | JP6883106B2 (ja) |
KR (1) | KR102248454B1 (ja) |
CN (3) | CN110445619B (ja) |
TW (1) | TWI662435B (ja) |
WO (1) | WO2018177264A1 (ja) |
Families Citing this family (150)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9529923B1 (en) | 2015-08-28 | 2016-12-27 | Swirlds, Inc. | Methods and apparatus for a distributed database within a network |
US9390154B1 (en) | 2015-08-28 | 2016-07-12 | Swirlds, Inc. | Methods and apparatus for a distributed database within a network |
US10747753B2 (en) | 2015-08-28 | 2020-08-18 | Swirlds, Inc. | Methods and apparatus for a distributed database within a network |
LT3539026T (lt) | 2016-11-10 | 2022-03-25 | Swirlds, Inc. | Būdai ir aparatas paskirstytajai duomenų bazei, apimančiai anonimines įvestis |
CN116820695A (zh) | 2016-12-19 | 2023-09-29 | 海德拉哈希图有限责任公司 | 用于启用事件删除的分布式数据库的方法和设备 |
CN110445619B (zh) | 2017-03-30 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 区块链系统、消息处理方法及存储介质 |
CN108063787A (zh) * | 2017-06-26 | 2018-05-22 | 杭州沃趣科技股份有限公司 | 基于分布式一致性状态机实现双活架构的方法 |
KR102415097B1 (ko) * | 2017-07-11 | 2022-06-29 | 스월즈, 인크. | 네트워크 내의 분산 데이터베이스를 효율적으로 구현하기 위한 방법들 및 장치 |
CN109427012B (zh) * | 2017-08-22 | 2021-06-01 | 汇链丰(北京)科技有限公司 | 一种基于区块链的交易和验证方法 |
US10943680B1 (en) * | 2017-09-07 | 2021-03-09 | Massachusetts Mutual Life Insurance Company | Intelligent health-based blockchain |
CN108023729B (zh) * | 2017-10-13 | 2020-06-23 | 中国银联股份有限公司 | 区块链网络及其交易方法 |
CN107819749A (zh) | 2017-10-26 | 2018-03-20 | 平安科技(深圳)有限公司 | 基于以太坊的区块链系统和交易数据处理方法 |
CN113377836B (zh) | 2017-11-01 | 2024-04-30 | 海德拉哈希图有限责任公司 | 用于高效地实现可快速复制的数据库的方法和装置 |
CN109819003A (zh) * | 2017-11-22 | 2019-05-28 | 南京理工大学 | 一种区块链的分层共识方法和系统 |
CN108009445B (zh) * | 2017-11-30 | 2021-05-11 | 成都蓝海贝信息技术有限公司 | 一种半中心化的可信数据管理系统 |
CN108182581B (zh) * | 2017-12-29 | 2020-08-11 | 北京欧链科技有限公司 | 一种区块链的记账方法及装置 |
CN108876359A (zh) * | 2018-01-03 | 2018-11-23 | 上海指旺信息科技有限公司 | 基于区块链的电子钱包平台 |
EP3741081B1 (en) * | 2018-01-16 | 2021-10-13 | Nchain Holdings Limited | Computer implemented method and system for obtaining digitally signed data |
CN108269190A (zh) * | 2018-01-17 | 2018-07-10 | 深圳四方精创资讯股份有限公司 | 基于跨链中继平台的跨链方法及其系统 |
CN108347350B (zh) * | 2018-01-25 | 2022-04-15 | 中国银联股份有限公司 | 一种通信方法及装置 |
CN109842606B (zh) * | 2018-02-24 | 2020-08-18 | 中国科学院计算技术研究所 | 基于一致性哈希算法的区块链共识算法和系统 |
CN110489485B (zh) * | 2018-04-28 | 2023-05-30 | 腾讯科技(深圳)有限公司 | 联盟区块链网络及在其中存储产品数据的方法和存储介质 |
US11095714B2 (en) | 2018-05-01 | 2021-08-17 | YugaByte Inc | Orchestration of data services in multiple cloud infrastructures |
CN108848056B (zh) * | 2018-05-03 | 2021-05-04 | 南京理工大学 | 基于验证的区块链共识方法 |
CN108737175B (zh) * | 2018-05-19 | 2021-04-23 | 上海分布信息科技有限公司 | 一种节点管理方法及其实现系统 |
WO2019226099A1 (en) * | 2018-05-23 | 2019-11-28 | Haj Enterprise Ab | A system and a method for achieving consensus between multiple parties on an event |
CN108768787B (zh) * | 2018-06-25 | 2020-10-02 | 中国联合网络通信集团有限公司 | 一种区块链节点激励方法及装置 |
CN109003175B (zh) * | 2018-07-06 | 2021-08-10 | 国网汇通金财(北京)信息科技有限公司 | 一种基于区块链的对账方法及系统 |
CN110740113B (zh) * | 2018-07-20 | 2021-10-29 | 富士通株式会社 | 通过多个主体协作进行信息处理的方法和装置 |
CN109126098A (zh) * | 2018-07-26 | 2019-01-04 | 深圳市梵高夫科技有限公司 | 基于区块链的竞赛仲裁方法、系统、核心节点及存储介质 |
CN110784331B (zh) * | 2018-07-30 | 2022-05-13 | 华为技术有限公司 | 一种共识流程恢复方法及相关节点 |
CN108881488B (zh) * | 2018-08-01 | 2020-12-22 | 夸克链科技(深圳)有限公司 | 一种基于分域的区块链交易处理方法及网络 |
WO2020033048A1 (en) * | 2018-08-09 | 2020-02-13 | Hrl Laboratories, Llc | System and method for consensus ordering of broadcast messages |
US10848375B2 (en) | 2018-08-13 | 2020-11-24 | At&T Intellectual Property I, L.P. | Network-assisted raft consensus protocol |
CN109218079B (zh) * | 2018-08-16 | 2021-09-10 | 北京京东尚科信息技术有限公司 | 一种区块链网络、部署方法及存储介质 |
CN109257334B (zh) * | 2018-08-21 | 2021-04-09 | 广州杰赛科技股份有限公司 | 一种基于区块链的数据上链系统、方法及存储介质 |
CN108989465B (zh) * | 2018-08-30 | 2021-03-12 | 交叉信息核心技术研究院(西安)有限公司 | 共识方法、服务器、存储介质及分布式系统 |
CN109347906B (zh) * | 2018-08-30 | 2021-04-20 | 腾讯科技(深圳)有限公司 | 一种数据传输方法、装置、与服务器 |
CN109194646B (zh) * | 2018-08-30 | 2021-05-25 | 东北大学 | 一种基于区块链的安全认证数据存取方法 |
CN109241362B (zh) * | 2018-09-18 | 2020-12-01 | 百度在线网络技术(北京)有限公司 | 区块生成方法、装置、设备及存储介质 |
CN109344630B (zh) * | 2018-09-18 | 2021-07-02 | 百度在线网络技术(北京)有限公司 | 区块生成方法、装置、设备和存储介质 |
CN109213828B (zh) * | 2018-09-18 | 2021-08-20 | 百度在线网络技术(北京)有限公司 | 区块生成方法、装置、设备及存储介质 |
CN109284630B (zh) * | 2018-09-21 | 2020-12-08 | 深圳市九洲电器有限公司 | 文件编辑方法、装置、系统及可读存储介质 |
CN109544334B (zh) * | 2018-10-22 | 2020-09-29 | 深圳市哈希树科技有限公司 | 一种网络可扩展性区块链实现方法 |
CN109408203B (zh) * | 2018-11-01 | 2019-10-18 | 无锡华云数据技术服务有限公司 | 一种队列消息一致性的实现方法、装置、计算系统 |
CN109614405A (zh) * | 2018-11-30 | 2019-04-12 | 无锡井通网络科技有限公司 | 用于区块链的网络实况系统 |
CN109451039B (zh) * | 2018-12-07 | 2021-06-04 | 上海分布信息科技有限公司 | 一种网络信息传输处理方法 |
US20200394183A1 (en) * | 2019-06-12 | 2020-12-17 | Subramanya R. Jois | System and method of executing, confirming and storing a transaction in a serverless decentralized node network |
CN109727029A (zh) * | 2018-12-18 | 2019-05-07 | 杭州茂财网络技术有限公司 | 一种联盟链共识方法和系统 |
CN109785131A (zh) * | 2018-12-21 | 2019-05-21 | 昆明理工大学 | 一种基于区块链的电力交易方法 |
CN111352943A (zh) * | 2018-12-24 | 2020-06-30 | 华为技术有限公司 | 实现数据一致性的方法和装置、服务器和终端 |
CN110022345B (zh) * | 2018-12-28 | 2020-03-24 | 阿里巴巴集团控股有限公司 | 联盟链中的请求处理方法、系统、装置及设备 |
CN109587271B (zh) * | 2018-12-29 | 2020-06-09 | 杭州复杂美科技有限公司 | 主链平行链架构系统及区块同步方法、设备和存储介质 |
CN109495516A (zh) * | 2019-01-07 | 2019-03-19 | 国网江苏省电力有限公司无锡供电分公司 | 基于区块链的电力物联网终端接入方法 |
CN109857751A (zh) * | 2019-01-23 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于区块链的跨平台数据更新方法、装置和计算机设备 |
CN109831425B (zh) * | 2019-01-25 | 2022-02-15 | 中国联合网络通信集团有限公司 | 区块链共识方法、装置、设备及计算机可读存储介质 |
CN109816021B (zh) * | 2019-01-28 | 2021-07-13 | 网易(杭州)网络有限公司 | 智能合约处理方法及装置、系统、存储介质和电子设备 |
CN109828979A (zh) * | 2019-01-31 | 2019-05-31 | 浙江小泰科技有限公司 | 一种数据一致性检测方法及系统 |
US11226910B2 (en) * | 2019-03-04 | 2022-01-18 | Qualcomm Incorporated | Ticket based request flow control |
CN110061856A (zh) * | 2019-03-07 | 2019-07-26 | 阿里巴巴集团控股有限公司 | 一种基于区块链的通信方法、装置及电子设备 |
KR102230829B1 (ko) | 2019-03-18 | 2021-03-23 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 합의 시스템 다운타임 복구 |
AU2019203865B2 (en) | 2019-03-18 | 2021-01-21 | Advanced New Technologies Co., Ltd. | Consensus system downtime recovery |
US10938750B2 (en) | 2019-03-18 | 2021-03-02 | Advanced New Technologies Co., Ltd. | Consensus system downtime recovery |
KR102170345B1 (ko) | 2019-03-18 | 2020-10-28 | 알리바바 그룹 홀딩 리미티드 | 뷰 변경 프로토콜을 종료하기 위한 시스템 및 방법 |
KR102170347B1 (ko) * | 2019-03-18 | 2020-10-28 | 알리바바 그룹 홀딩 리미티드 | 뷰 변경 프로토콜을 종료하기 위한 시스템 및 방법 |
CN109902074B (zh) * | 2019-04-17 | 2021-02-09 | 江苏全链通信息科技有限公司 | 基于数据中心的日志存储方法和系统 |
CN114073023B (zh) * | 2019-04-26 | 2024-05-31 | 株式会社赛斯 | 电子设备和信息处理系统 |
JP6991427B2 (ja) * | 2019-04-26 | 2022-01-12 | 株式会社シーズ | 電子機器、情報処理システム |
CN110096381B (zh) * | 2019-05-10 | 2021-05-07 | 百度在线网络技术(北京)有限公司 | 远程过程调用的实现方法、装置、设备和介质 |
CN110263582A (zh) * | 2019-05-10 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 一种基于联盟链的对账方法、装置及电子设备 |
US11228446B2 (en) | 2019-05-10 | 2022-01-18 | Advanced New Technologies Co., Ltd. | Blockchain-based reconciliation method and apparatus and electronic device |
EP3973407A4 (en) | 2019-05-22 | 2023-06-28 | Swirlds, Inc. | Methods and apparatus for implementing state proofs and ledger identifiers in a distributed database |
US11611439B2 (en) * | 2019-06-11 | 2023-03-21 | Celo Foundation | Tree structure for byzantine fault tolerance |
CN112150141A (zh) * | 2019-06-26 | 2020-12-29 | 京东数字科技控股有限公司 | 一种区块链共识方法、装置和系统 |
CN110380934B (zh) * | 2019-07-23 | 2021-11-02 | 南京航空航天大学 | 一种分布式余度系统心跳检测方法 |
CN110445570B (zh) * | 2019-07-25 | 2021-07-20 | 腾讯科技(深圳)有限公司 | 一种时间校准方法、装置及计算机存储介质 |
CN110417889B (zh) * | 2019-07-30 | 2022-02-01 | 中国联合网络通信集团有限公司 | 一种基于ipfs的数据传输方法及装置 |
CN115244526A (zh) * | 2019-08-16 | 2022-10-25 | 泽乌科技公司 | 用于去中心化事务通信协议的方法和系统 |
CN110460536B (zh) * | 2019-08-26 | 2022-11-29 | 中国工商银行股份有限公司 | 用于区块链的数据处理方法和装置、介质和电子设备 |
CN110730204B (zh) * | 2019-09-05 | 2022-09-02 | 创新先进技术有限公司 | 区块链网络中删除节点的方法和区块链系统 |
CN110769028B (zh) * | 2019-09-10 | 2022-04-15 | 陕西优米数据技术股份有限公司 | 基于区块链技术的图案授权共识系统及方法 |
CN110830260B (zh) * | 2019-09-27 | 2021-09-24 | 电子科技大学 | 一种基于区块链的数字签名的时间戳生成方法 |
CN110766552B (zh) * | 2019-09-28 | 2023-10-20 | 北京瑞卓喜投科技发展有限公司 | 基于区块链的业务处理方法及装置 |
CN110784461B (zh) * | 2019-10-23 | 2020-05-12 | 北方工业大学 | 一种基于区块链的安全6LoWPAN通信方法及系统 |
CN110798308A (zh) * | 2019-10-31 | 2020-02-14 | 支付宝(杭州)信息技术有限公司 | 一种区块链的签名方法和系统 |
EP3769216B1 (en) * | 2019-11-06 | 2022-03-16 | Alipay (Hangzhou) Information Technology Co., Ltd. | Data security of shared blockchain data storage based on error correction code |
KR102285882B1 (ko) * | 2019-11-19 | 2021-08-05 | 한양대학교 산학협력단 | 가변 정족수 기반의 블록체인 합의 방법, 이를 이용하는 블록체인 노드 및 프로그램 |
CN111611316A (zh) * | 2019-11-27 | 2020-09-01 | 朱培培 | 基于区块链的数据传输装置 |
CN110958253A (zh) * | 2019-12-05 | 2020-04-03 | 全链通有限公司 | 基于区块链的电子投票方法、设备及存储介质 |
CN111147494B (zh) * | 2019-12-27 | 2022-11-18 | 杭州趣链科技有限公司 | 一种面向区块链轻节点的多中心接入的管理方法和装置 |
CN111179063B (zh) * | 2019-12-31 | 2023-06-23 | 中国银行股份有限公司 | 基于区块链的信用卡业务数据处理方法、系统及相关节点 |
CN111107103B (zh) * | 2019-12-31 | 2022-04-15 | 南京可信区块链与算法经济研究院有限公司 | 一种联盟链的性能维持方法、系统及存储介质 |
CN111274317A (zh) * | 2020-01-07 | 2020-06-12 | 书生星际(北京)科技有限公司 | 多节点数据同步的方法和装置,以及计算机设备 |
CN111277645B (zh) * | 2020-01-16 | 2023-02-10 | 深圳市迅雷网络技术有限公司 | 主备节点热切换方法、区块链系统、区块链节点及介质 |
CN113291355B (zh) * | 2020-02-24 | 2023-05-23 | 中国航天科工飞航技术研究院(中国航天海鹰机电技术研究院) | 超高速列车牵引驱动设备通信方法及系统 |
CN111311414B (zh) * | 2020-02-27 | 2023-12-08 | 杭州云象网络技术有限公司 | 一种基于一致性哈希算法的区块链多方共识方法 |
CN111416703A (zh) * | 2020-03-16 | 2020-07-14 | 北京有链科技有限公司 | 一种区块链跨越式和跳跃式快速同步方法及系统 |
CN111431999B (zh) * | 2020-03-23 | 2022-11-25 | 杭州小影创新科技股份有限公司 | 一种基于Paxos算法的云函数分布式系统 |
CN111464349A (zh) * | 2020-03-30 | 2020-07-28 | 南京中诚区块链研究院有限公司 | 区块链Raft+PBFT的混合共识网络算法及系统 |
CN111464356B (zh) * | 2020-04-01 | 2021-11-05 | 腾讯科技(深圳)有限公司 | 一种区块共识周期切换方法、装置及计算机设备 |
CN111510347B (zh) * | 2020-04-08 | 2021-10-26 | 北京链化未来科技有限公司 | 一种提高区块链共识效率的方法 |
CN111431931A (zh) * | 2020-04-12 | 2020-07-17 | 中信银行股份有限公司 | 节点共识方法及装置 |
CN111586110B (zh) * | 2020-04-22 | 2021-03-19 | 广州锦行网络科技有限公司 | 一种raft在出现点对点故障时的优化处理方法 |
CN113301002B (zh) * | 2020-04-24 | 2023-05-09 | 阿里巴巴集团控股有限公司 | 一种信息处理方法、装置、电子设备以及存储介质 |
CN111695994B (zh) * | 2020-05-12 | 2023-12-26 | 成都芯域矩阵科技有限公司 | 一种基于信用评分的区块链共识方法及系统 |
CN111682942B (zh) * | 2020-05-18 | 2022-06-10 | 哈尔滨工业大学 | 一种应用于许可链的二元加权拜占庭容错共识方法 |
CN111343208B (zh) * | 2020-05-21 | 2020-08-14 | 腾讯科技(深圳)有限公司 | 基于区块链的数据检测方法、装置及计算机可读存储介质 |
CN111654415B (zh) * | 2020-05-28 | 2021-09-10 | 腾讯科技(深圳)有限公司 | 基于区块链的信息处理方法、装置、设备及可读存储介质 |
CN111756823A (zh) * | 2020-06-12 | 2020-10-09 | 山西警察学院 | 基于简化拜占庭容错算法的应用于公安系统的开放许可链 |
CN111523899B (zh) * | 2020-07-03 | 2021-09-07 | 支付宝(杭州)信息技术有限公司 | 联盟链的共识方法、数据校验方法、装置及系统 |
CA3094539A1 (en) * | 2020-07-23 | 2022-01-23 | The Toronto-Dominion Bank | Multidirectional synchronization of confidential data using distributed ledgers |
CN111988321B (zh) * | 2020-08-24 | 2022-02-11 | 桂林电子科技大学 | 一种基于机器学习的联盟链异常检测系统及其检测方法 |
CN112068978B (zh) * | 2020-08-27 | 2022-06-10 | 恒宝股份有限公司 | View-change二次启动定时器的定时期限延长方法及装置 |
CN111813795B (zh) * | 2020-08-28 | 2020-12-04 | 支付宝(杭州)信息技术有限公司 | 在区块链网络中确认交易的方法及装置 |
CN111988203B (zh) * | 2020-09-03 | 2022-08-23 | 深圳壹账通智能科技有限公司 | 节点选举方法、装置及存储介质 |
CN111930847B (zh) * | 2020-09-16 | 2021-01-08 | 深圳壹账通智能科技有限公司 | 基于区块链的数据处理方法、装置及存储介质 |
CN112153136B (zh) * | 2020-09-21 | 2022-04-22 | 中国电子科技网络信息安全有限公司 | 一种新型区块链共识算法rbft的实现方法 |
CN112422341B (zh) * | 2020-11-18 | 2021-09-28 | 腾讯科技(深圳)有限公司 | 区块链网络的故障检测方法及相关设备 |
CN112532436B (zh) * | 2020-11-23 | 2024-05-28 | 京东科技控股股份有限公司 | 一种区块链节点状态转换方法及区块链系统 |
CN112636905B (zh) * | 2020-12-11 | 2022-02-15 | 北京航空航天大学 | 基于多角色的可扩展共识机制的系统及方法 |
CN112671761B (zh) * | 2020-12-22 | 2022-08-05 | 网易(杭州)网络有限公司 | 区块链的节点处理方法、装置、节点设备及存储介质 |
CN112804091B (zh) * | 2020-12-31 | 2023-07-25 | 北京百度网讯科技有限公司 | 联盟网络的运行实现方法、装置、设备及存储介质 |
KR102603880B1 (ko) * | 2021-01-08 | 2023-11-20 | 한국전자통신연구원 | 블록 합의 방법 및 트랜잭션 상태 관리 방법 |
CN113010337B (zh) * | 2021-01-21 | 2023-05-16 | 腾讯科技(深圳)有限公司 | 故障检测方法、总控节点、工作节点及分布式系统 |
CN113364874B (zh) * | 2021-06-09 | 2022-06-10 | 网易(杭州)网络有限公司 | 基于区块链的节点同步方法、装置、存储介质及服务器 |
US11651110B2 (en) * | 2021-07-08 | 2023-05-16 | Dell Products, L.P. | Hardware device mutual authentication system and method for a baseboard management controller (BMC) |
US11915014B2 (en) | 2021-08-18 | 2024-02-27 | Microsoft Technology Licensing | Consensus based determination of stable configuration |
CN113761062B (zh) * | 2021-08-26 | 2024-08-02 | 浙商银行股份有限公司 | 一种自适应共识算法切换方法、设备及存储介质 |
CN113779145B (zh) * | 2021-08-27 | 2024-07-16 | 浙商银行股份有限公司 | 一种区块链吞吐量提升系统及方法 |
CN113810497B (zh) * | 2021-09-17 | 2022-07-26 | 北京邮电大学 | 基于区块链的医疗数据共享方法和装置 |
CN113570357B (zh) * | 2021-09-26 | 2021-12-17 | 青岛理工大学 | 一种动态分层的高效pbft算法 |
CN113837758A (zh) * | 2021-09-27 | 2021-12-24 | 深圳前海微众银行股份有限公司 | 一种区块链系统的共识方法及装置 |
US11601326B1 (en) * | 2021-09-28 | 2023-03-07 | Sap Se | Problem detection and categorization for integration flows |
CN114089744B (zh) * | 2021-11-01 | 2023-11-21 | 南京邮电大学 | 一种基于改进Raft算法选择车辆队列领航车的方法 |
KR102620994B1 (ko) * | 2021-11-04 | 2024-01-05 | 모비두 주식회사 | 라이브 커머스에서의 데이터 처리 시스템 |
CN114448995A (zh) * | 2021-12-24 | 2022-05-06 | 苏州纳智天地智能科技有限公司 | 基于raft选主策略的分布式计算方法 |
CN114225381B (zh) * | 2022-01-07 | 2022-07-19 | 广州炫动信息科技有限公司 | 基于区块链分布式共识算法的战斗数据处理方法及系统 |
CN114553508B (zh) * | 2022-02-12 | 2023-06-30 | 中国银联股份有限公司 | 一种数据访问方法及装置 |
CN114185997B (zh) * | 2022-02-17 | 2022-05-13 | 天津眧合数字科技有限公司 | 一种基于区块链的宠物信息可信存储系统 |
CN114760135B (zh) * | 2022-04-19 | 2023-03-28 | 浙江大学 | 一种区块链容错共识方案的优化方法 |
CN115119230A (zh) * | 2022-05-09 | 2022-09-27 | 成都市联洲国际技术有限公司 | 确定主设备和从设备的方法、装置、设备及存储介质 |
CN117221337A (zh) * | 2022-06-02 | 2023-12-12 | 腾讯科技(深圳)有限公司 | 区块链共识方法、装置、介质及电子设备 |
CN115276999B (zh) * | 2022-06-10 | 2024-03-22 | 大连理工大学 | 一种基于信任模型的自适应切换高效容错共识方法 |
CN115174447B (zh) * | 2022-06-27 | 2023-09-29 | 京东科技信息技术有限公司 | 一种网络通信方法、装置、系统、设备及存储介质 |
CN115134320B (zh) * | 2022-08-25 | 2023-01-03 | 四川汉唐云分布式存储技术有限公司 | 一种基于消息分发确定时序的交易系统 |
CN116192692B (zh) * | 2022-12-30 | 2024-06-14 | 蚂蚁区块链科技(上海)有限公司 | 一种区块链网络中的数据传输延迟探测方法和区块链系统 |
CN116074328B (zh) * | 2023-03-01 | 2023-06-27 | 中国信息通信研究院 | 区块链网络中的区块传输方法、装置、设备和介质 |
CN116488946B (zh) * | 2023-06-21 | 2023-09-15 | 积至网络(北京)有限公司 | 基于持续多模表决的恶意节点检测方法 |
CN117220884A (zh) * | 2023-09-05 | 2023-12-12 | 上海雷龙信息科技有限公司 | 一种数字签名交互验证方法、系统、设备和介质 |
CN117811746A (zh) * | 2023-12-27 | 2024-04-02 | 国网安徽省电力有限公司营销服务中心 | 一种基于量子拜占庭共识的电力数据传输方法及系统 |
Family Cites Families (38)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002512736A (ja) * | 1997-03-18 | 2002-04-23 | テレフオンアクチーボラゲツト エル エム エリクソン(パブル) | トレンチで分離されたバイポーラデバイス |
AU2003258902A1 (en) * | 2002-03-27 | 2003-10-13 | International Business Machines Corporation | Dynamic addressing in transient networks |
US7451321B2 (en) * | 2003-10-07 | 2008-11-11 | Joseph Ernest Dryer | Electronic signature management method |
CN1937840B (zh) * | 2005-09-19 | 2011-04-13 | 华为技术有限公司 | 一种移动终端切换过程中获得安全联盟信息的方法及装置 |
CN101022647B (zh) * | 2006-02-15 | 2010-09-08 | 华为技术有限公司 | 切换处理过程中确定安全协商参数的实现方法及装置 |
US7630944B2 (en) * | 2006-03-17 | 2009-12-08 | Novell, Inc. | Method for consensus decision making in a distributed system |
CN101083658A (zh) * | 2007-07-13 | 2007-12-05 | 浙江大学 | 一种角度随机中继协议实现方法 |
CN101110762A (zh) * | 2007-08-22 | 2008-01-23 | 华中科技大学 | 一种Ad hoc网络安全路由方法 |
CN101483516A (zh) * | 2008-01-07 | 2009-07-15 | 华为技术有限公司 | 安全控制的方法及其系统 |
US7937482B1 (en) * | 2008-03-27 | 2011-05-03 | Amazon Technologies, Inc. | Scalable consensus protocol |
US8156333B2 (en) * | 2008-05-29 | 2012-04-10 | Red Hat, Inc. | Username based authentication security |
US20150006895A1 (en) * | 2009-06-01 | 2015-01-01 | Maidsafe Foundation | Distributed network system |
US8856593B2 (en) * | 2010-04-12 | 2014-10-07 | Sandisk Enterprise Ip Llc | Failure recovery using consensus replication in a distributed flash memory system |
US10614098B2 (en) * | 2010-12-23 | 2020-04-07 | Mongodb, Inc. | System and method for determining consensus within a distributed database |
US8918392B1 (en) | 2012-03-29 | 2014-12-23 | Amazon Technologies, Inc. | Data storage mapping and management |
CN102739656A (zh) * | 2012-06-12 | 2012-10-17 | 北京英华高科科技有限公司 | 一种控制非主节点类型和规模的方法和系统 |
JP6097880B2 (ja) | 2013-03-20 | 2017-03-15 | エヌイーシー ヨーロッパ リミテッドNec Europe Ltd. | ビザンチン故障耐性データ複製を行う方法およびシステム |
US9686161B2 (en) | 2013-09-16 | 2017-06-20 | Axis Ab | Consensus loss in distributed control systems |
US9690675B2 (en) * | 2014-07-17 | 2017-06-27 | Cohesity, Inc. | Dynamically changing members of a consensus group in a distributed self-healing coordination service |
CL2015003766A1 (es) * | 2015-12-30 | 2016-08-05 | Univ Chile | Sistema y método para comunicaciones electrónicas seguras mediante hardware de seguridad basado en criptografía umbral |
US10282457B1 (en) * | 2016-02-04 | 2019-05-07 | Amazon Technologies, Inc. | Distributed transactions across multiple consensus groups |
CN105975868A (zh) * | 2016-04-29 | 2016-09-28 | 杭州云象网络技术有限公司 | 一种基于区块链的证据保全方法及装置 |
CN106060036B (zh) * | 2016-05-26 | 2019-07-16 | 布比(北京)网络技术有限公司 | 去中心化共识方法及装置 |
CN106445711B (zh) | 2016-08-28 | 2019-04-30 | 杭州云象网络技术有限公司 | 一种应用于区块链的拜占庭容错共识方法 |
CN106503589A (zh) * | 2016-10-26 | 2017-03-15 | 北京瑞卓喜投科技发展有限公司 | 区块链交易信息正确性的校验方法、装置及系统 |
CN106534273B (zh) * | 2016-10-31 | 2022-04-15 | 中金云金融(北京)大数据科技股份有限公司 | 区块链元数据存储系统及其存储方法与检索方法 |
CN106487801B (zh) * | 2016-11-03 | 2019-10-11 | 江苏通付盾科技有限公司 | 基于区块链的信息验证方法及装置 |
CN107391320B (zh) * | 2017-03-10 | 2020-07-10 | 创新先进技术有限公司 | 一种共识方法及装置 |
CN107368507B (zh) * | 2017-03-28 | 2020-03-27 | 创新先进技术有限公司 | 一种基于区块链的共识方法及装置 |
CN110445619B (zh) * | 2017-03-30 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 区块链系统、消息处理方法及存储介质 |
US10768085B2 (en) * | 2017-07-18 | 2020-09-08 | Cornell University | Resonantly-driven drop contact-line mobility measurement |
US20190306173A1 (en) * | 2018-04-02 | 2019-10-03 | Ca, Inc. | Alert smart contracts configured to manage and respond to alerts related to code |
WO2019072263A2 (en) * | 2018-11-07 | 2019-04-18 | Alibaba Group Holding Limited | FACILITATION OF BLOCK CHAIN CONSENSUS AND NODE SYNCHRONIZATION FOR PRACTICAL TOLERANCE TO ARBITRARY FAILURES |
KR102230829B1 (ko) * | 2019-03-18 | 2021-03-23 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 합의 시스템 다운타임 복구 |
EP3610606B1 (en) * | 2019-03-29 | 2022-09-21 | Advanced New Technologies Co., Ltd. | Managing sensitive data elements in a blockchain network |
US11611439B2 (en) * | 2019-06-11 | 2023-03-21 | Celo Foundation | Tree structure for byzantine fault tolerance |
US11343073B2 (en) * | 2019-06-18 | 2022-05-24 | Electronics And Telecommunications Research Institute | Apparatus and method for achieving distributed consensus based on decentralized byzantine fault tolerance |
US20210099312A1 (en) * | 2019-09-27 | 2021-04-01 | Cypherium Blockchain Inc. | Systems and methods for selecting and utilizing a committee of validator nodes in a distributed system |
-
2017
- 2017-03-30 CN CN201910713934.2A patent/CN110445619B/zh active Active
- 2017-03-30 CN CN201710203499.XA patent/CN106789095B/zh active Active
- 2017-03-30 CN CN201910713935.7A patent/CN110430064B/zh active Active
-
2018
- 2018-03-20 TW TW107109510A patent/TWI662435B/zh active
- 2018-03-26 KR KR1020197027223A patent/KR102248454B1/ko active IP Right Grant
- 2018-03-26 JP JP2019531777A patent/JP6883106B2/ja active Active
- 2018-03-26 EP EP18777404.7A patent/EP3605947B1/en active Active
- 2018-03-26 WO PCT/CN2018/080574 patent/WO2018177264A1/zh unknown
-
2019
- 2019-04-12 US US16/383,162 patent/US11237896B2/en active Active
-
2021
- 2021-12-06 US US17/542,971 patent/US11775377B2/en active Active
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020512708A5 (ja) | ||
JP6883106B2 (ja) | 分散システム、メッセージ処理方法、ノード、クライアント及び記憶媒体 | |
US11907174B2 (en) | Systems and methods for managing data generation, storage, and verification in a distributed system having a committee of validator nodes | |
Civit et al. | Polygraph: Accountable byzantine agreement | |
US11522698B2 (en) | Method and system for byzantine fault-tolerance replicating of data | |
Jalalzai et al. | Proteus: A scalable BFT consensus protocol for blockchains | |
Zhou et al. | COCA: A secure distributed online certification authority | |
US6823456B1 (en) | System and method for providing trusted services via trusted server agents | |
MacBrough | Cobalt: BFT governance in open networks | |
Norman et al. | Analysis of probabilistic contract signing | |
CN111052091A (zh) | 网络中的共识形成方法以及构成该网络的节点 | |
Tsai et al. | Design issues in permissioned blockchains for trusted computing | |
CN111786812A (zh) | 节点管理方法、装置、计算机设备和存储介质 | |
Malkhi et al. | Secure reliable multicast protocols in a WAN | |
Abraham et al. | Information theoretic hotstuff | |
Chai et al. | Byzantine fault tolerant event stream processing for autonomic computing | |
Bazzi et al. | Clairvoyant state machine replication | |
KR102175949B1 (ko) | 블록체인 시스템의 블록 생성 방법 및 장치 | |
US20180295131A1 (en) | Method and device for verifying validity of identity of entity | |
Meling et al. | When you don't trust clients: Byzantine proposer fast paxos | |
US11943287B2 (en) | Method and system for enhanced performance of DLT networks | |
CN111314393B (zh) | 基于区块链的数据处理方法、装置及设备 | |
Chai et al. | Towards trustworthy complex event processing | |
WO2021115554A1 (en) | A service based interface for establishing distributed consensus | |
Inayat et al. | A performance study on the signal-on-fail approach to imposing total order in the streets of byzantium |