IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッドの特許一覧

特表2022-533882ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置
<>
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図1
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図2
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図3
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図4
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図5
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図6
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図7
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図8
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図9
  • 特表-ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-07-27
(54)【発明の名称】ブロックチェーンネットワークにおけるデータ処理方法、装置、プログラム及びコンピュータ装置
(51)【国際特許分類】
   H04L 67/1004 20220101AFI20220720BHJP
   H04L 47/125 20220101ALI20220720BHJP
   G06F 16/182 20190101ALI20220720BHJP
【FI】
H04L67/1004
H04L47/125
G06F16/182
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2021555432
(86)(22)【出願日】2020-09-04
(85)【翻訳文提出日】2021-09-29
(86)【国際出願番号】 CN2020113355
(87)【国際公開番号】W WO2021047445
(87)【国際公開日】2021-03-18
(31)【優先権主張番号】201910866452.0
(32)【優先日】2019-09-12
(33)【優先権主張国・地域又は機関】CN
(81)【指定国・地域】
(71)【出願人】
【識別番号】514187420
【氏名又は名称】テンセント・テクノロジー・(シェンジェン)・カンパニー・リミテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】リ,マオツァイ
(72)【発明者】
【氏名】ジュ,ゴンリアン
(72)【発明者】
【氏名】ワン,ゾォンイオウ
(72)【発明者】
【氏名】コォン,リ
(72)【発明者】
【氏名】ラン,フゥ
(72)【発明者】
【氏名】ジョウ,カイバン
(72)【発明者】
【氏名】ヤン,チャンチン
(72)【発明者】
【氏名】シ,イファン
(72)【発明者】
【氏名】チェン,チィウピン
(72)【発明者】
【氏名】リィウ,チュイチョン
(72)【発明者】
【氏名】ジャン,ジンソォン
(72)【発明者】
【氏名】リィウ,パン
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030LB05
5K030LE02
5K030LE03
5K030MA12
5K030MB02
(57)【要約】
サービスサブネットワーク、コンセンサスサブネットワーク、及び、サービスサブネットワークとコンセンサスサブネットワークとを離隔するルーティング層を含むブロックチェーンネットワークにおけるデータ処理方法は、サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信するステップと、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行うステップと、検証が成功すると、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得するステップと、動作負荷に基づいて、コンセンサスサブネットワークから、データ処理要求を処理するターゲットコンセンサスノードを決定するステップと、データ処理要求をターゲットコンセンサスノードに転送し、ターゲットコンセンサスノードによりデータ処理要求に対して対応するデータ処理を行うステップと、を含む。
【選択図】図4
【特許請求の範囲】
【請求項1】
コンピュータ装置が実行するブロックチェーンネットワークにおけるデータ処理方法であって、
前記ブロックチェーンネットワークは、サービスサブネットワーク、コンセンサスサブネットワーク、及び、前記サービスサブネットワークと前記コンセンサスサブネットワークとを離隔するルーティング層を含み、
前記データ処理方法は、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信するステップと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行うステップと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得するステップと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定するステップと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行うステップと、を含む方法。
【請求項2】
前記データ処理要求は、前記サービスノードの秘密鍵で署名して得られるものであり、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行う前記ステップは、
前記サービスノードの秘密鍵に対応する公開鍵を取得するステップと、
署名された前記データ処理要求に対して、前記公開鍵により署名検証を行うステップと、
検証が成功すると、前記サービスノードに対するアイデンティティ検証が成功したと判定するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項3】
前記データ処理要求は、データのブロックチェーンへの記録要求であり、
前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行う前記ステップは、
前記コンセンサスサブネットワークにおけるコンセンサスノードにより、前記データのブロックチェーンへの記録要求における取引情報に対応するハッシュ値を生成し、前記ハッシュ値を前記コンセンサスノードの秘密鍵で署名するステップと、
前記コンセンサスノードにより、生成された前記ハッシュ値、前記署名されたハッシュ値をブロックヘッダに記録し、前記取引情報をブロックボディーに記録するステップであって、前記ブロックヘッダ及び前記ブロックボディーでデータブロックが構成されるステップと、
前記コンセンサスサブネットワークにより前記データブロックについて合意し、合意が成立した後、前記データブロックを前記コンセンサスサブネットワークにおけるブロックチェーンに記録するステップと、を含むことを特徴とする、請求項1に記載の方法。
【請求項4】
前記方法は、
前記コンセンサスノードから戻されたブロックヘッダを受信し、前記ブロックヘッダを前記サービスノードに転送するステップと、
前記サービスノードにより、前記コンセンサスノードの秘密鍵に対応する公開鍵を取得し、前記署名されたハッシュ値に対して、前記コンセンサスノードの公開鍵により署名検証を行い、検証が成功し、かつ署名検証により得られたハッシュ値が前記ブロックヘッダに記録された前記取引情報のハッシュ値と一致する場合、前記データブロックの検証が成功したと判定するステップと、をさらに含むことを特徴とする、請求項3に記載の方法。
【請求項5】
前記データ処理要求は、取引情報照会要求であり、
前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行う前記ステップは、
前記コンセンサスサブネットワークにおけるコンセンサスノードにより前記サービスノードのデータ権限を取得するステップと、
前記コンセンサスノードにより、前記データ権限に基づいて、前記サービスノードがデータブロックにおける取引情報に関連するサービスノードであるか否かを決定するステップと、を含み、
前記方法は、
前記サービスノードが前記データブロックにおける取引情報に関連するサービスノードであると前記コンセンサスノードにより決定した場合に戻された取引情報を受信し、前記取引情報を前記サービスノードに転送するステップをさらに含むことを特徴とする、請求項1に記載の方法。
【請求項6】
前記方法は、前記ルーティング層におけるルーティングノードによって実行され、
前記方法は、
前記ルーティングノードの持続的接続制限条件を取得するステップであって、前記持続的接続制限条件は、前記サービスノードから前記ルーティングノードへの持続的接続の数を制限するためのものである、ステップと、
サービスノードから前記ルーティングノードへの持続的接続の総数が前記持続的接続制限条件に設定される第1の閾値を超える場合、或いは、
同一のサービスノードから前記ルーティングノードへの持続的接続の数が前記持続的接続制限条件に設定される第2の閾値を超える場合、或いは、
同じアイデンティティ証明書を持つサービスノードから前記ルーティングノードへの持続的接続の数が前記持続的接続制限条件に設定される第3の閾値を超える場合、
前記サービスノードからの持続的接続の動作を制限するステップと、をさらに含むことを特徴とする、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記方法は、前記ルーティング層におけるルーティングノードによって実行され、
前記方法は、
前記ルーティングノードの速度率制限条件を取得するステップであって、前記速度率制限条件は、前記データ処理要求を処理する処理速度率を制限するためのものである、ステップと、
前記ルーティングノードが現在処理するデータ処理要求の数が前記速度率制限条件に設定される第4の閾値を超える場合、或いは、
同一のルーティングノードが現在処理するデータ処理要求の数が前記速度率制限条件に設定される第5の閾値を超える場合、或いは、
前記ルーティングノードが現在処理する、同一のアイデンティティ証明書からのデータ処理要求の数が前記速度率制限条件に設定される第6の閾値を超える場合、
前記コンセンサスサブネットワークに転送される前記データ処理要求を制限するステップと、をさらに含むことを特徴とする、請求項1~5のいずれか一項に記載の方法。
【請求項8】
前記方法は、
前記データ処理要求が特定の要求のうちのいずれか1つに該当する場合、前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行う前記ステップを実行するステップと、
前記データ処理要求が特定の要求のうちのいずれにも該当しない場合、前記データ処理要求を前記コンセンサスサブネットワークに転送することを制限するステップと、をさらに含み、
前記特定の要求は、少なくともデータのブロックチェーンへの記録要求、ブロックヘッダ取得要求、取引情報照会要求、及びコンセンサスノード基礎情報取得要求を含むことを特徴とする、請求項1に記載の方法。
【請求項9】
前記サービスサブネットワークと前記コンセンサスサブネットワークとを離隔する前記ルーティング層は、ベキ等性を有する複数のルーティングノードを含むことを特徴とする、請求項1~8のいずれか1項に記載の方法。
【請求項10】
ブロックチェーンネットワークにおけるデータ処理装置であって、
前記ブロックチェーンネットワークは、サービスサブネットワーク、コンセンサスサブネットワーク、及び、前記サービスサブネットワークと前記コンセンサスサブネットワークとを離隔するルーティング層を含み、
前記データ処理装置は、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信する受信モジュールと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行う検証モジュールと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得する取得モジュールと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定する決定モジュールと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行う転送モジュールと、を備える、装置。
【請求項11】
コンピュータに、請求項1~9のいずれか一項に記載の方法のステップを実行させるためのプログラム。
【請求項12】
コンピュータ可読命令が記憶されているメモリと、
1つまたは複数のプロセッサと、を含むコンピュータ装置であって、
前記コンピュータ可読命令は、前記1つまたは複数のプロセッサによって実行されると、前記コンピュータ装置に請求項1~9のいずれか1項に記載の方法を実行させる、コンピュータ装置。
【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本願は、2019年09月12日に中国国家知識産権局に提出された、出願番号が201910866452.0で、発明の名称が「ブロックチェーンネットワークにおけるデータ処理方法、装置、記憶媒体及び装置」である中国特許出願の優先権を主張するものであり、その全ての内容は、参照により本願に組み込まれるものとする。
【0002】
[技術分野]
本願は、コンピュータの技術分野に関し、特にブロックチェーンネットワークにおけるデータ処理方法、装置、コンピュータ可読記憶媒体及びコンピュータ装置に関する。
【背景技術】
【0003】
パブリックチェーンの大衆の参加とは異なり、ブロックチェーンネットワークにおける情報は、一般的に「フェデレーションへの公開、対外秘」という特徴を有するが、従来のブロックチェーンネットワークは通常、コンピューティング能力の証明によって保護されていないため、ブロックチェーンネットワークにアクセス可能な外部ノードによる攻撃を受けやすく、特にブロックチェーンネットワークが極秘データの処理シーンに適用される場合、安全上でブロックチェーンネットワーク及びその処理性能を保護し、ブロックチェーンネットワークがネットワークレベルでネットワーク攻撃を受けることによる潜在的な危険を回避する必要がある。
【発明の概要】
【0004】
コンピュータ装置が実行するデータ処理方法は、
サービスサブネットワーク、コンセンサスサブネットワーク、及び、前記サービスサブネットワークと前記コンセンサスサブネットワークとを離隔するルーティング層を含むブロックチェーンネットワークにおけるデータ処理方法であって、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信するステップと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行うステップと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得するステップと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定するステップと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行うステップと、を含む。
【0005】
データ処理装置は、
サービスサブネットワーク、コンセンサスサブネットワーク、及び、前記サービスサブネットワークと前記コンセンサスサブネットワークとを離隔するルーティングノードを含むブロックチェーンネットワークにおけるデータ処理装置であって、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信する受信モジュールと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行う検証モジュールと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得する取得モジュールと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定する決定モジュールと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行う転送モジュールと、を備える。
【0006】
1つまたは複数の不揮発性コンピュータ可読記憶媒体には、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信するステップと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行うステップと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得するステップと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定するステップと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行うステップと、を実行させる、コンピュータ可読命令が記憶されている。
【0007】
コンピュータ装置は、1つまたは複数のプロセッサと、プロセッサによって実行されると、1つまたは複数のプロセッサに、
前記サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信するステップと、
前記データ処理要求に応じて、前記サービスノードに対してアイデンティティ検証を行うステップと、
検証が成功すると、前記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得するステップと、
前記動作負荷に基づいて、前記コンセンサスサブネットワークから、前記データ処理要求を処理するターゲットコンセンサスノードを決定するステップと、
前記データ処理要求を前記ターゲットコンセンサスノードに転送し、前記ターゲットコンセンサスノードにより前記データ処理要求に対して対応するデータ処理を行うステップと、を実行させるコンピュータ可読命令が記憶されているメモリと、を含む。
【図面の簡単な説明】
【0008】
本願の実施形態における技術手段をより明確に説明するために、以下、実施形態の説明に必要な図面を簡単に説明するが、明らかに、以下の説明における図面は、本願のいくつかの実施形態に過ぎず、当業者であれば、創造的な労働をせずにこれらの図面に基づいて他の図面を得ることができる。
図1】一実施形態に係るブロックチェーンネットワークにおけるデータ処理方法の応用環境図である。
図2】一実施形態におけるブロックチェーンネットワークの概略模式図である。
図3】具体的な一実施例におけるブロックチェーンネットワークが電子領収書シーンに適用される概略模式図である。
図4】一実施形態に係るブロックチェーンネットワークにおけるデータ処理方法のフローチャートである。
図5】一実施形態における、サービスノードからの持続的接続動作を制限するフローチャートである。
図6】一実施形態における、ルーティングノードが処理したデータトラフィックを制限するフローチャートである。
図7】具体的な一実施例に係るブロックチェーンネットワークにおけるデータ処理方法のフローチャートである。
図8】一実施形態におけるブロックチェーンネットワークの機能モジュールの概略図である。
図9】一実施形態におけるブロックチェーンネットワークのデータ処理装置の構成ブロック図である。
図10】一実施形態におけるコンピュータ装置の構成ブロック図である。
【発明を実施するための形態】
【0009】
本願の目的、技術手段及び利点をより明確にするために、以下、図面及び実施形態を参照しながら、本願をさらに詳細に説明する。理解すべきこととして、本明細書に説明された具体的な実施形態は、本願を説明するものに過ぎず、本願を限定するものではない。
【0010】
図1は、一実施形態に係るブロックチェーンネットワークにおけるデータ処理方法の応用環境図である。図1を参照して、ブロックチェーンネットワークにおけるデータ処理方法は、ブロックチェーンネットワーク100に適用される。ブロックチェーンネットワークは、ブロックチェーン上のデータブロックを記録し照会する関連ノードで構成されたネットワークを含み、ブロックチェーンネットワークにおける各ノードは、ブロックチェーンノードであり、データブロックを照会又は記録することができるコンピュータ装置である。図1に示すように、該ブロックチェーンネットワーク100は、サービスサブネットワーク110、ルーティング層120及びコンセンサスサブネットワーク130を含む。サービスサブネットワーク110におけるサービスノード112とルーティング層120におけるルーティングノード122とは、ネットワークを介して接続される。ルーティングノード122とコンセンサスサブネットワーク130におけるコンセンサスノード132とは、ネットワークを介して接続される。したがって、サービスサブネットワーク110とコンセンサスサブネットワーク130との間は、ルーティングノード122により通信する必要がある。
【0011】
サービスノード112は、具体的には、取引情報を生成するサービス側に使用される据置型端末又は携帯端末であってよく、携帯端末は、具体的には、携帯電話、タブレットコンピュータ、ノートパソコンなどのうちの少なくとも1種であってよい。ルーティングノード122は、独立したサーバ又は複数のサーバで構成されるサーバクラスタで実現されてよい。コンセンサスサブネットワーク130におけるコンセンサスノード132は、サービスノードにより生成された取引情報をブロックチェーンに記録することができ、コンセンサスノード132は、独立したサーバ又は複数のサーバで構成されるサーバクラスタで実現されてよく、ブロックチェーンネットワークが電子領収書データを処理する適用シーンに適用される場合、コンセンサスサブネットワークにおけるコンセンサスノードは、一般的に監督管理機構により許可されて設定される。
【0012】
図2に示されるように、一実施形態におけるブロックチェーンネットワークの概略模式図である。図2を参照して、ブロックチェーンネットワーク200は、サービスサブネットワーク210、ルーティング層220及びコンセンサスサブネットワーク230を含む。サービスサブネットワーク210は、コンセンサスノードによりブロックチェーンに記録されたデータブロックを検証するサービスノード211を含み、コンセンサスサブネットワーク230は、データブロックをブロックチェーンに記録するコンセンサスノード231を含む。サービスサブネットワーク210とコンセンサスサブネットワーク230との間は、ルーティング層220を介して接続され、ルーティング層220におけるルーティングノード221は、サービスノード211により送信されたデータ処理要求をコンセンサスノード231へ伝送することができ、さらにコンセンサスノード231から取得されたブロックチェーン上の取引情報をサービスノード211に転送することができる。サービスノード211は、パブリックネットワークにあるサービスサブネットワークに配置され、ブロックチェーンのコンセンサスプロトコルを実行するコンセンサスノード231は、プライベートコンセンサスサブネットワークに配置され、両者は、ルーティングノードにより対話を行い、ルーティングノード221は、サービスサブネットワーク210とコアのコンセンサスサブネットワーク230との間を離隔する作用を果たす。サービスサブネットワーク210において、各サービスノードの間は、ピアツーピアであり、サービスノード211は、ルーティングノード221から受信されたメッセージを周囲のサービスノードに伝送することにより、該メッセージをサービスサブネットワークにおける各サービスノードの間に伝播することができる。
【0013】
図3に示されるように、具体的な一実施例におけるブロックチェーンネットワークが電子領収書シーンに適用される概略模式図である。上記ブロックチェーンネットワークが電子領収書のシーンに応用される場合、ブロックチェーンネットワークは、電子領収書の流通過程全体に生成された取引情報を記録することができる。図3を参照して、該ブロックチェーンネットワークは、サービスサブネットワーク32、ルーティング層34及びコンセンサスサブネットワーク36を含む。
【0014】
電子領収書の流通過程は、電子領収書の申込、電子領収書の発行、電子領収書の精算、電子領収書の税金申告等の過程を含み、電子領収書の発行は、電子領収書の生成とも呼ばれ、電子領収書の流通過程全体に係る役割が監督管理機構、領収書発行側、精算側及び税金申告側を含むため、サービスサブネットワーク32には、監督管理機構に関連サービスを提供する監督機構専用ネットワーク321が含まれ、さらに、領収書発行側、精算側及び税金申告側に関連サービスを提供するパブリッククラウド322が含まれ、さらに、消費者に電子領収書保存サービスを提供するプライベートクラウド323が含まれる。監督管理機構専用ネットワーク321には、電子領収書に係る監督管理機構に使用されるコンピュータ装置が含まれ、管理機構端末3211が含まれる。パブリッククラウド322には、電子領収書に係る領収書発行側、精算側、税金申告側に使用されるコンピュータ装置が含まれ、領収書発行側端末3221、精算側端末3222及び税金申告側端末3223が含まれ、領収書発行側は領収書発行サービス事業者であってよく、精算側は精算サービス事業者であってよく、企業端末はパブリッククラウドにアクセスすることができる。プライベートクラウド323には、電子領収書に係るユーザに使用されるコンピュータ装置が含まれ、支払うための支払端末3231が含まれ、さらに、ユーザの電子領収書を一時的に保存する電子領収書流通端末3232が含まれ、さらに、企業の専用端末3233が含まれ、消費者端末はプライベートクラウドにアクセスすることができる。監督機構専用ネットワーク321、パブリッククラウド322及びプライベートクラウド323におけるコンピュータ装置は、いずれもサービスノードとして、電子領収書についてデータのブロックチェーンへの記録要求又はデータ照会要求を、ルーティングノードを介してコンセンサスサブネットワークに送信することができる。
【0015】
ルーティングノード34のいずれか1つは、認証サービス341、証明書キャッシュ342、ルーティングサービス343及びP2Pサービス344を提供する機能モジュールを含む。認証サービス341は、サービスサブネットワークにおけるサービスノードに対してアイデンティティ検証を行い、証明書キャッシュ342は、各ノードのアイデンティティ証明書をキャッシュし、ルーティングサービス343は、サービスサブネットワークとコンセンサスサブネットワークとの間のネットワーク離隔を実現し、P2Pサービスは、ベキ等性を有するルーティングノードの間にタスクを割り当てる。
【0016】
コンセンサスサブネットワーク36は、複数のサブコンセンサスサブネットワーク360を含み、各サブコンセンサスサブネットワーク360は、該サブコンセンサスサブネットワーク360に対応するサブブロックチェーンをメンテナンスする複数のコンセンサスノード361を含む。例えば、あるサブブロックチェーンは、ある領収書番号区間に属する電子領収書に関連する取引情報を記録し、あるサブブロックチェーンは、ライトバックした電子領収書に関連する取引情報を記録する。電子領収書に関連するデータを記録する必要がある場合、記録を受け付けるサブブロックチェーンは、該取引情報の属性に基づいて決定され、その後、該サブブロックチェーンをメンテナンスするサブコンセンサスサブネットワークにより記録することができる。コンセンサスノード361は、一般的に各地域の監督管理機構に使用されるコンピュータ装置であってよい。各サブコンセンサスサブネットワーク360におけるコンセンサスノード361は、権限契約を含み、権限契約には、例えば電子領収書の領収書状態、流通フロー、データのアクセス権限、電子領収書の申込条件、電子領収書の発行条件などの電子領収書のライフサイクル全体に関する流通ロジックが記憶されている。コンセンサスノード361は、キャッシュ及びデータブロックをさらに含み、これらの機能は、取引情報のブロックチェーンへの記録及び照会にサポートを提供することができる。
【0017】
図4に示すように、一実施形態において、ブロックチェーンネットワークにおけるデータ処理方法を提供する。図1を参照して、本実施形態は、例として、当該方法を上記図1中のブロックチェーンネットワークにおけるルーティングノード122に適用して説明する。該ブロックチェーンネットワークは、サービスサブネットワーク110、ルーティングノード122及びコンセンサスサブネットワーク130を含み、サービスサブネットワーク110は取引情報を生成するサービスノードを含み、コンセンサスサブネットワーク130は取引情報をブロックチェーンへ記録するコンセンサスノードを含み、サービスサブネットワークはさらに、コンセンサスノードによりブロックチェーンに記録されたデータブロックを検証する。任意選択で、該方法は、図3におけるルーティングノードのルーティングサービスによって提供される。図4を参照して、ブロックチェーンネットワークにおけるデータ処理方法は、具体的には、以下のステップS402~S410を含む。
【0018】
S402では、サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信する。
【0019】
本実施形態において、サービスサブネットワークにおけるサービスノードは、ルーティングノードによりコンセンサスサブネットワークにおけるコンセンサスノードにデータ処理要求を転送する必要があり、データ処理要求には、データのブロックチェーンへの記録要求、データ照会要求などが含まれる。電子領収書の適用シーンにおいて、データ処理要求に、領収書申込要求、領収書発行要求、領収書精算要求、領収書税金申告要求、及び領収書情報照会要求などが含まれる。
【0020】
ブロックチェーンネットワークの安全を確保するために、ブロックチェーンネットワークにおいて、取引情報をブロックチェーンへ記録するコンセンサスノードと、データブロックを検証し、取引情報を照会するサービスノードとは、いずれも対話過程における要求又はデータを署名する必要があり、署名に使用された公開鍵及び秘密鍵は、登録時に監督管理機構により発行される。
【0021】
一実施形態において、サービスノードは、空白の電子領収書を申込む企業端末であり、データ処理要求は、領収書申込要求である。領収書申込要求には、申込側識別子が含まれ、電子領収書を申込む場合、企業端末は、秘密鍵により申込要求を署名し、署名した申込要求をルーティングノードに送信することができ、ルーティングノードは、署名された領収書申込要求に対して署名を検証し、検証が成功した申込要求をコンセンサスサブネットワークに転送することができる。
【0022】
一実施形態において、サービスノードは、電子領収書を発行する領収書発行端末であり、データ処理要求は、領収書発行要求である。領収書発行端末は、領収書発行側識別子、電子領収書識別子、領収書金額及び税金申告側識別子が含まれる領収書発行情報を取得し、そして、領収書発行情報を署名して得られた領収書発行要求をルーティングノードに送信することができ、ルーティングノードは、署名された領収書発行要求に対してアイデンティティ検証を行い、検証が成功した後に領収書発行要求をコンセンサスサブネットワークに転送し、コンセンサスサブネットワークは、該領収書発行要求に応じて、発行された電子領収書に関連する情報をブロックチェーンに記録する。
【0023】
一実施形態において、サービスノードは、電子領収書を精算する精算端末であり、データ処理要求は、領収書精算要求である。領収書精算端末は、精算側識別子、領収書識別子及び領収書情報が含まれる領収書精算情報を取得し、登録時に発行された秘密鍵を用いて領収書精算情報を署名して領収書精算要求を得、領収書精算要求をルーティングノードに転送することができる。
【0024】
一実施形態において、サービスノードは、電子領収書に対して税金申告を行う税金申告端末である。データ処理要求は電子領収書税金申告要求であり、税金申告端末は、税金申告側識別子に対応する電子領収書と税金申告パラメータとを照会し、税金申告が行われる必要がある今回の電子領収書識別子を決定し、これにより領収書税金申告情報を生成することができる。税金申告端末は、登録時に発行された秘密鍵を用いて領収書税金申告情報を署名して領収書税金申告要求を得、領収書税金申告要求をルーティングノードに転送する。
【0025】
コンセンサスサブネットワークは、領収書申込要求、領収書発行要求、領収書精算要求及び領収書税金申告要求に対する応答を完了した後に、申込、発行、精算及び税金申告を完了した関連取引情報をブロックチェーンに記録し、対応するブロックヘッダを、要求を開始するサービスノードに戻し、サービスノードは、ブロックヘッダにおける要約情報を検証することにより、コンセンサスサブネットワークによりブロックチェーンネットワークに記録した取引情報を監督することができる。さらに、サービスノードは、該ブロックヘッダに対応するブロックボディーにおける取引情報に対するデータ照会要求を開始することができ、データ照会要求は、サービスノードの秘密鍵を用いて署名されてよく、サービスノードは、署名されたデータ照会要求をルーティングノードに送信し、ルーティングノードは、該サービスノードとの公開鍵を取得し、データ照会要求を検証し、検証が成功すると、サービスノードに対するアイデンティティ検証が成功したと判定し、ルーティングノードは、データ照会要求をコンセンサスサブネットワークにおける対応するコンセンサスノードに送信することができ、それにより、コンセンサスノードは、データ照会要求を開始するサービスノードの権限データに基づいて、対応する取引情報をルーティングノードに戻し、それにより、ルーティングノードは、該取引情報をサービスノードに転送する。
【0026】
S404では、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行う。
【0027】
前述したように、各サービスノードは、いずれも登録時にその正当なアイデンティティを識別できる公開鍵/秘密鍵ペア又はアイデンティティ証明書を取得して、ネットワークインタラクション過程においてデータを署名することにより、データの正当性及び安全性を確保する必要がある。公的機関は、サービスノード又はコンセンサスノードに公開鍵/秘密鍵ペアを発行する際に、対応する公開鍵又は公開鍵を含むアイデンティティ証明書をルーティングノードに送信し、ルーティングノードに記憶させる。具体的には、サービスノードは、公開鍵/秘密鍵ペアにおける秘密鍵を用いてデータ処理要求を署名した後にルーティングノードに送信し、ルーティングノードは、署名されたデータ処理要求を受信した後、サービスノードの公開鍵又はアイデンティティ証明書における公開鍵を取得し、取得した公開鍵を利用してデータ処理要求に対して署名検証を行うことにより、サービスノードに対するアイデンティティ検証を実現し、データ処理要求の正当性を検証することも実現する。つまり、サービスノードに対するアイデンティティ検証は、コンセンサスサブネットワークにより実行される必要がなく、ルーティングノードにより行われ、このように、サービスノードの数が大きい場合であっても、コンセンサスサブネットワークの安全性を確保することができる。
【0028】
一実施形態において、データ処理要求は、サービスノードの秘密鍵で署名して得られるものであり、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行うステップは、サービスノードの秘密鍵に対応する公開鍵を取得するステップと、署名されたデータ処理要求に対して、公開鍵により署名検証を行うステップと、検証が成功すると、サービスノードに対するアイデンティティ検証が成功したと判定するステップと、を含む。
【0029】
具体的には、ルーティングノードは、サービスノードの公開鍵を用いて、署名されたデータ処理要求を復号し、データ処理要求に対応するハッシュ値を取得するとともに、サービスノードにより署名される時に用いた同じアルゴリズムに応じて、データ処理要求に対応するハッシュ値を計算し、復号して得られたハッシュ値が計算して得られたハッシュ値と一致すると、検証が成功し、サービスノードに対するアイデンティティ検証が成功したと判定し、ルーティングノードは、データ処理要求をコンセンサスサブネットワークにおけるコンセンサスノードに転送することができ、それにより、コンセンサスノードは、該データ処理要求に応じて、対応するデータ処理を行う。
【0030】
S406では、検証が成功すると、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得する。
【0031】
先に説明されたコンセンサスサブネットワークから分かるように、コンセンサスサブネットワークは、複数のコンセンサスノードを含み、これらのコンセンサスノードは、ベキ等性を有し、いずれか1つのデータ処理要求のコンセンサスサブネットワークのいずれか1つのコンセンサスノードへの送信に差がない。しかしながら、ネットワークトラフィックの変動及びアンバランスによりコンセンサスサブネットワークのデータ処理要求に対する処理性能が不足することを引き起こす可能性があることにより、全体的なブロックチェーンネットワークのサービス性能を低下させてしまう。このため、ルーティングノードに要求配信ポリシーを設定することにより、各コンセンサスノードの負荷能力に基づいて、異なるコンセンサスノードにデータ処理要求をバランスよく転送する。
【0032】
動作負荷は、現在のコンセンサスサブネットワークにおける各コンセンサスノードの処理タスク量を表し、コンセンサスノードの現在の処理待ちのデータ処理要求の数で表すことができる。具体的には、各コンセンサスノードは定期的に現在の動作負荷を自発的に報告してもよいし、ルーティングノードは各コンセンサスノードから動作負荷を取得してもよい。
【0033】
S408では、動作負荷に基づいて、コンセンサスサブネットワークから、データ処理要求を処理するターゲットコンセンサスノードを決定する。
【0034】
具体的には、ルーティングノードは、各コンセンサスノードの動作負荷に基づいて、各コンセンサスノードから、動作負荷が相対的に少ない1つのターゲットコンセンサスノードを決定し、決定したターゲットコンセンサスノードにデータ処理要求を転送し、ターゲットコンセンサスノードに対応するデータ処理を行わせ、このようにして、サービスノードが開始したデータ処理要求の数が多くても、コンセンサスサブネットワークにおける各コンセンサスノードにバランスよく割り当て、ブロックチェーンネットワークのサービス性能を保障することができる。
【0035】
S410では、データ処理要求をターゲットコンセンサスノードに転送し、ターゲットコンセンサスノードによりデータ処理要求に対して対応するデータ処理を行う。
【0036】
コンセンサスサブネットワークには、秘密データ及び極秘データを含むフルデータが含まれるため、外部のサービスノードは、いずれもルーティングノードによりコンセンサスサブネットワークにアクセスする必要がある。それにより、ネットワークレベル上で外部ノードとコンセンサスサブネットワークとを離隔して、外部ノードからの悪意のある攻撃を回避する。
【0037】
ルーティングノードは、サービスノードに対するアイデンティティ検証が成功した後、データ処理要求をコンセンサスサブネットワークに転送し、コンセンサスサブネットワークは、データ処理要求に対して対応するデータ処理を行うことができる。ルーティングノードは、データ処理要求のタイプに基づいて、データ処理要求を該タイプに対応するサブコンセンサスサブネットワークに送信することができる。ルーティングノードはさらに、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷をリアルタイムに取得し、データ処理要求をコンセンサスサブネットワークにおけるコンセンサスノードにバランスよく配信することができる。
【0038】
一実施形態において、データ処理要求は、データのブロックチェーンへの記録要求であり、ターゲットコンセンサスノードによりデータ処理要求に対して対応するデータ処理を行うステップは、コンセンサスサブネットワークにおけるコンセンサスノードにより、データのブロックチェーンへの記録要求における取引情報に対応するハッシュ値を生成し、ハッシュ値をコンセンサスノードの秘密鍵で署名するステップと、コンセンサスノードにより、生成されたハッシュ値、署名されたハッシュ値をブロックヘッダに記録し、取引情報をブロックボディーに記録するステップであって、ブロックヘッダ及びブロックボディーでデータブロックが構成されるステップと、コンセンサスサブネットワークによりデータブロックについて合意し、合意が成立した後、データブロックをコンセンサスサブネットワークにおけるブロックチェーンに記録するステップと、を含む。
【0039】
具体的には、データブロックは、ブロックヘッダ及びブロックボディーで構成され、データ処理要求がデータのブロックチェーンへの記録要求である場合、コンセンサスノードは、まずデータのブロックチェーンへの記録要求における取引情報に基づいて対応するハッシュ値を生成し、次にハッシュ値を発行された秘密鍵で署名し、生成されたハッシュ値、署名されたハッシュ値をブロックヘッダに記録し、当然のことながら、ブロックチェーン上の各データブロックに記録されたデータの耐改ざん性を確保するために、さらに直前の最新のデータブロックのハッシュ値を現在のブロックヘッダに格納することができる。コンセンサスノードは、取引情報をデータブロックのブロックボディーに記録する。最後に、コンセンサスノードは、取得されたデータブロックについて今回の取引情報に関連するコンセンサスサブネットワーク(あるサブコンセンサスサブネットワークであってよい)との間で合意し、合意が成立した後に、データブロックをコンセンサスサブネットワークにおけるブロックチェーンに記録する。
【0040】
一実施形態において、方法は、コンセンサスノードから戻されたブロックヘッダを受信し、ブロックヘッダをサービスノードに転送するステップと、サービスノードによりコンセンサスノードの秘密鍵に対応する公開鍵を取得し、コンセンサスノードの公開鍵により、署名されたハッシュ値を署名検証し、検証が成功し、かつ署名検証により得られたハッシュ値がブロックヘッダに記録された取引情報のハッシュ値と一致する場合、データブロックの検証が成功したと判定するステップと、をさらに含む。
【0041】
具体的には、コンセンサスサブネットワークがデータのブロックチェーンへの記録要求における取引情報をブロックチェーンへ記録した後、さらに該データブロックのブロックヘッダをルーティングノードによりサービスノードに戻す。サービスノードは、ブロックヘッダへの検証が成功した後、該ブロックヘッダを保存し、コンセンサスサブネットワークの集合的不正又はデータ改竄を防止することにより、コンセンサスサブネットワークへの監督を実現する。コンセンサスノードの登録時に、公的機関も同様にコンセンサスノードに公開鍵/秘密鍵ペアを発行し、該公開鍵/秘密鍵ペアにおける公開鍵又は該公開鍵を含むアイデンティティ証明書をサービスノードに送信する。したがって、サービスノードは、コンセンサスノードの公開鍵を取得し、コンセンサスノードの公開鍵を利用して、戻されたブロックヘッダにおける署名を検証し、検証が成功すると、復号された取引情報のハッシュ値を取得し、復号されたハッシュ値がブロックヘッダに記録された取引情報のハッシュ値と一致すると、該ブロックヘッダに対応するデータブロックの検証が成功したことを示す。
【0042】
一実施形態において、データ処理要求は取引情報照会要求であり、ターゲットコンセンサスノードによりデータ処理要求に対して対応するデータ処理を行うステップは、コンセンサスサブネットワークにおけるコンセンサスノードによりサービスノードのデータ権限を取得するステップと、コンセンサスノードにより、データ権限に基づいて、サービスノードがデータブロックにおける取引情報に関連するサービスノードであるか否かを決定するステップと、を含み、方法は、サービスノードがデータブロックにおける取引情報に関連するサービスノードであるとコンセンサスノードにより決定した場合に戻された取引情報を受信し、取引情報をサービスノードに転送するステップ、をさらに含む。
【0043】
具体的には、サービスノードは、ルーティングノードから転送されたブロックヘッダを受信した後、さらにコンセンサスサブネットワークから対応するブロックボディーを取得して、ブロックボディーに記録された取引情報を照会することができる。コンセンサスノードに権限契約が記憶されており、コンセンサスノードは、ルーティングノードから転送された取引情報照会要求を受信した場合、権限契約に基づいてサービスノードのデータ権限を決定し、該データ権限に基づいて、取引情報照会要求を開始したサービスノードがブロックボディーに記録された取引情報に関連するサービスノードであるか否かを決定し、そうであれば、ブロックボディーに記録された取引情報を、ルーティングノードを介してサービスノードに送信することができる。
【0044】
上記ブロックチェーンネットワークにおけるデータ処理方法では、ルーティングノードによりサービスサブネットワークとコンセンサスサブネットワークとを離隔し、ルーティングノードのみがコンセンサスサブネットワークに直接的にアクセスする能力を備え、このように、外部のサービスノードがコンセンサスノードにアクセスする必要がある場合、データ処理要求を送信したサービスノードのアイデンティティをルーティングノードにより検証し、各データ処理要求の安全性を検査し、アイデンティティ検証が成功する場合のみに、ルーティングノードは、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得し、動作負荷に基づいてコンセンサスサブネットワークからデータ処理要求を処理するためのターゲットコンセンサスノードを決定した後に、外部のサービスノードから送信されたデータ処理要求をコンセンサスサブネットワークに転送し、そして、コンセンサスサブネットワークは、データ処理要求に対して対応するデータ処理を行い、それにより、コンセンサスサブネットワークがネットワークレベルで外部ノードのネットワーク攻撃を受けることによる潜在的な危険を回避し、コンセンサスサブネットワーク内部のネットワークセキュリティを確保し、さらにデータ処理要求をバランスよく転送し、コンセンサスサブネットワークの処理性能を向上させることができる。
【0045】
一実施形態において、図5に示すように、上記方法は、サービスノードからの持続的接続動作を制限するステップをさらに含み、該ステップは、具体的には、以下のステップS502~S510を含む。
【0046】
ステップS502では、ルーティングノードの持続的接続制限条件を取得し、持続的接続制限条件は、サービスノードからルーティングノードへの持続的接続の数を制限する。
【0047】
ステップS504では、サービスノードからルーティングノードへの持続的接続の総数が持続的接続制限条件に設定される第1の閾値を超える場合、或いは、
ステップS506では、同一のサービスノードからルーティングノードへの持続的接続の数が持続的接続制限条件に設定される第2の閾値を超える場合、或いは、
ステップS508では、同じアイデンティティ証明書を持つサービスノードからルーティングノードへの持続的接続の数が持続的接続制限条件に設定される第3の閾値を超える場合、ステップS510を実行する。
【0048】
ステップS510では、サービスノードからの持続的接続の動作を制限する。
【0049】
本実施形態において、ルーティングノードはさらに、サービスノードがコンセンサスサブネットワークにアクセスするトラフィックを制限して、ブロックチェーンネットワークのトラフィックバランス及び性能安全を確保し、コンセンサスサブネットワークが外部サービスノードからの悪意のある攻撃を受けることを回避する。ルーティングノードは、ルーティング層に属し、ルーティング層には、ベキ等性を有する複数のルーティングノードが含まれ、外部のサービスノードは、その中のいずれか1つのルーティングノードにデータ処理要求を無差別に送信することができる。ルーティングノードに持続的接続制限条件が記憶されていることにより、ルーティングノードが持続的接続を受信する回数を制限し、外部ノードからコンセンサスサブネットワークへの並行度の上限を確保する。
【0050】
持続的接続制限条件は、予め設定された持続的接続設定パラメータであり、現在の複数のサービスノードからルーティングノードへの持続的接続の総数に対応する第1の閾値を含み、さらに、同一のサービスノードからルーティングノードへの持続的接続の数に対応する第2の閾値を含み、さらに、同じアイデンティティ証明書を持つサービスノードからルーティングノードへの持続的接続の数に対応する第3の閾値を含む。第1の閾値は、ルーティング層全体が持続的接続を受け付ける回数を制限し、ルーティング層からコンセンサスサブネットワークに転送されるデータ並行上限が大きすぎないことを確保し、過度の並行度によりコンセンサスサブネットワークのリソースの枯渇又はネットワークダウンをもたらし、ブロックチェーンネットワーク全体の動作に影響を与えることを回避することができるものである。第2の閾値は、単一のサービスノードからルーティング層への並行度の上限が大きすぎないことを確保し、単一のサービスノードが故障するか又は不良になり、かつ大量の持続的接続を確立することによりルーティング層のサービスリソースを使い切って、他のサービスノードがアクセスできないことを回避することができるものである。第3の閾値は、具体的なアイデンティティの持続的接続動作の上限を確保し、悪意のある機構又は団体が自分のアイデンティティ証明書を利用して大量のサービスノードを設定して並行度を提供し、最終的に多すぎるルーティング層のサービスリソースを占有することを防止することができるものであり、また、第3の閾値はさらに、ルーティングノードが、接続数が高すぎるアイデンティティに対応する機構又は団体を記録することにより、対応するペナルティを課すことができるものである。
【0051】
したがって、ルーティングノードは、カウントし、全てのサービスノードからの持続的接続の総数が第1の閾値を超えるか、或いは同一のサービスノードからの持続的接続の数が第2の閾値を超えるか、或いは、同じアイデンティティ証明書を持つサービスノードからの持続的接続の数が第3の閾値を超えると、サービスノードからの持続的接続の動作を制限する。サービスノードからの持続的接続動作を制限することは、主に、対応するデータ処理要求への応答を拒否するか、又はデータ処理要求をバッファキューに入れ、未完了のデータ処理要求を優先的に処理することである。
【0052】
一実施形態において、図6に示すように、上記方法は、ルーティングノードにより処理されるデータトラフィックを制限するステップをさらに含み、該ステップは、具体的には、以下のステップS602~S610を含む。
【0053】
ステップS602では、ルーティングノードの速度率制限条件を取得し、速度率制限条件はデータ処理要求を処理する処理速度率を制限する。
【0054】
ステップS604では、ルーティングノードが現在処理するデータ処理要求の数が速度率制限条件に設定される第4の閾値を超える場合、或いは、
ステップS606では、同一のルーティングノードが現在処理するデータ処理要求の数が速度率制限条件に設定される第5の閾値を超える場合、或いは、
ステップS608では、ルーティングノードが現在処理する、同一のアイデンティティ証明書からのデータ処理要求の数が速度率制限条件に設定される第6の閾値を超える場合、ステップS610を実行する。
【0055】
ステップS610では、コンセンサスサブネットワークに転送されるデータ処理要求を制限する。
【0056】
本実施形態において、ルーティングノードはさらに、データ処理要求を送信する速度率を制御することにより、コンセンサスサブネットワークの安全を確保し、ルーティング層全体におけるネットワークトラフィックが大きすぎるか、又はコンセンサスノードが多すぎるリソースを費やして、ルーティングノードにより送信されたデータ処理要求を処理するか又はデータを送信することを防止する。ルーティングノードに速度率制限条件がさらに記憶され、ルーティングノードによりデータ処理要求が処理される速度率を制限することにより、ブロックチェーンネットワーク全体におけるデータトラフィックの上限を確保する。
【0057】
速度率制限条件は、予め設定されたパラメータであり、ルーティング層全体が現在処理するデータ処理要求の数に対応する第4の閾値を含み、さらに、同一のルーティングノードが現在処理するデータ処理要求の数に対応する第5の閾値を含み、さらに、ルーティングノードが現在処理する、同一のアイデンティティ証明書からのデータ処理要求の数に対応する第6の閾値を含む。第4の閾値は、ルーティング層全体が1秒当たりに最大処理できるデータ処理要求の上限値を制限し、第5の閾値は、同一のルーティングノードが1秒当たりに最大処理できるデータ処理要求の上限値を制限し、第6の閾値は、ルーティングノードが1秒当たりに最大処理できる同一のアイデンティティ証明書からのデータ処理要求の上限値を制限する。速度率制限条件は、ブロックチェーンネットワーク上のデータパケットの総数を効果的に抑制することができる。異なる機能又はタイプのデータ処理要求に対して異なる速度率制限を設定することができ、例えば、重要でデータ量が小さいデータのブロックチェーンへの記録要求に対して、より大きな制限速度率を設定して、よりよいブロックチェーンネットワークの性能を実現するのに対して、取引情報照会要求のような、データ量が大きくてリアルタイム性への要求が特に高くない要求に対して、速度率制限を適切に低減し、ブロックチェーン全体のネットワークトラフィックが大きすぎることを防止することができる。また、第5の閾値及び第6の閾値は、単一のルーティングノードのデータトラフィックを制御することにより、ルーティング層が各データ処理要求を公平に取り扱うことを確保し、あるルーティングノードが大量のリソースを占有することによりブロックチェーンネットワークの性能が低下するか又は要求にタイムリーに応答できないという問題を回避することができる。
【0058】
したがって、ルーティング層全体が現在処理するデータ処理要求の数が第4の閾値を超える場合、或いは、同一のルーティングノードが現在処理するデータ処理要求の数が第5の閾値を超える場合、或いは、ルーティングノードが現在処理する、同一のアイデンティティ証明書からのデータ処理要求の数が第6の閾値を超える場合、ルーティング層全体又は単一のルーティングノードのデータ処理速度率を制限することができる。
【0059】
一実施形態において,上記方法は、データ処理要求が特定の要求のうちのいずれか1つに該当する場合、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行うステップを実行し、データ処理要求が特定の要求のうちのいずれにも該当しない場合、データ処理要求をコンセンサスサブネットワークに転送することを制限するステップ、をさらに含み、特定の要求は、少なくともデータのブロックチェーンへの記録要求、ブロックヘッダ取得要求、取引情報照会要求、及びコンセンサスノード基礎情報取得要求を含む。
【0060】
本実施形態において、サービスノードがコンセンサスサブネットワークにアクセスする機能を制限する。コンセンサスサブネットワークにおける各コンセンサスノードは、ブロックチェーンノードとして、完全なブロックチェーン機能を備えるが、秘匿化及び安全上の理由のために、これらのブロックチェーン機能は、サービスノードにより完全にアクセスすることができない。したがって、ルーティングノードは、データ処理要求のタイプを検証することにより、一部の機能のみを開放することを確保する必要がある。データ処理要求がデータのブロックチェーンへの記録要求、ブロックヘッダ取得要求、取引情報照会要求、及び探索用のコンセンサスノード基礎情報取得要求に該当する場合、ルーティングノードによりコンセンサスサブネットワークに転送されるが、特定のデータ処理要求に該当しない要求がルーティングノードにより遮断されて、コンセンサスサブネットワークへのアクセスが禁止される。
【0061】
一実施形態において、サービスサブネットワークとコンセンサスサブネットワークとを離隔するルーティングノードは、ルーティング層に属し、ルーティング層には、ベキ等性を有する複数のルーティングノードが含まれる。ベキ等性とは、外部サービスノードがルーティング層におけるいずれか1つのルーティングノードに要求を複数回開始することができ、各ルーティングノードの処理ロジックが同様であることを指す。本実施形態において、ルーティング層にベキ等性を有する複数のルーティングノードが含まれ、各サービスノードが1つまたは複数のルーティングノードとは選択的に接続されて通信することができるため、ルーティング層の性能は需要に応じて拡張することができる。
【0062】
図7に示すように、具体的な一実施例において、ブロックチェーンネットワークにおけるデータ処理方法は、以下のステップS702~S726を含む。
【0063】
ステップS702では、ルーティング層におけるルーティングノードは、サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信し、データ処理要求は、サービスノードの秘密鍵で署名して得られるものである。
【0064】
ステップS704では、ルーティングノードは、サービスノードの秘密鍵に対応する公開鍵を取得する。
【0065】
ステップS706では、ルーティングノードは、署名されたデータ処理要求に対して、公開鍵により署名検証を行い、検証が成功すると、サービスノードに対するアイデンティティ検証が成功したと判定する。
【0066】
ステップS708では、検証が成功すると、ルーティングノードは、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得する。
【0067】
ステップS710では、ルーティングノードは、動作負荷に基づいて、データ処理要求を処理するターゲットコンセンサスノードを決定する。
【0068】
ステップS712では、持続的接続制限条件及び速度率制限条件を満たす前提で、ルーティングノードは、データ処理要求をターゲットコンセンサスノードに転送する。
【0069】
ステップS714では、データ処理要求がデータのブロックチェーンへの記録要求である場合、ターゲットコンセンサスノードは、データのブロックチェーンへの記録要求における取引情報に対応するハッシュ値を生成し、ハッシュ値をターゲットコンセンサスノードの秘密鍵で署名する。
【0070】
ステップS716では、ターゲットコンセンサスノードは、生成されたハッシュ値、署名されたハッシュ値をブロックヘッダに記録し、取引情報をブロックボディーに記録し、ブロックヘッダ及びブロックボディーでデータブロックが構成される。
【0071】
ステップS718では、コンセンサスサブネットワークにおける各コンセンサスノードによりデータブロックについて合意し、合意が成立した後、ターゲットコンセンサスノードは、データブロックをコンセンサスサブネットワークにおけるブロックチェーンに記録する。
【0072】
ステップS720では、ルーティングノードは、ターゲットコンセンサスノードから戻されたブロックヘッダを受信し、ブロックヘッダをサービスノードに転送する。
【0073】
ステップS722では、サービスノードは、ターゲットコンセンサスノードの秘密鍵に対応する公開鍵を取得し、ターゲットコンセンサスノードの公開鍵により、署名されたハッシュ値を署名検証し、検証が成功し、かつ署名検証により得られたハッシュ値がブロックヘッダに記録された取引情報のハッシュ値と一致すると、データブロックの検証が成功したと判定する。
【0074】
ステップS724では、データ処理要求が取引情報照会要求である場合、コンセンサスサブネットワークにおけるターゲットコンセンサスノードによりサービスノードのデータ権限を取得する。
【0075】
ステップS726では、ターゲットコンセンサスノードは、データ権限に基づいて、サービスノードがデータブロックにおける取引情報に関連するサービスノードであると決定すると、ルーティングノードにデータブロックにおける取引情報を戻し、ルーティングノードを介して取引情報をサービスノードに転送する。
【0076】
上記ブロックチェーンネットワークにおけるデータ処理方法では、ルーティングノードによりサービスサブネットワークとコンセンサスサブネットワークとを離隔し、ルーティングノードのみがコンセンサスサブネットワークに直接的にアクセスする能力を備え、このように、外部のサービスノードがコンセンサスノードにアクセスする必要がある場合、データ処理要求を送信するサービスノードのアイデンティティをルーティングノードにより検証し、各データ処理要求の安全性を検査し、アイデンティティ検証が成功する場合のみに、ルーティングノードは、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得し、動作負荷に基づいてコンセンサスサブネットワークからデータ処理要求を処理するためのターゲットコンセンサスノードを決定した後に、外部のサービスノードから送信されたデータ処理要求をコンセンサスサブネットワークに転送し、そして、コンセンサスサブネットワークは、データ処理要求に対して対応するデータ処理を行い、それにより、コンセンサスサブネットワークがネットワークレベルで外部ノードのネットワーク攻撃を受けることによる潜在的な危険を回避し、コンセンサスサブネットワーク内部のネットワークセキュリティを確保し、さらにデータ処理要求をバランスよく転送し、コンセンサスサブネットワークの処理性能を向上させることができる。
【0077】
図7は、一実施形態に係るブロックチェーンネットワークにおけるデータ処理方法のフローチャートである。理解すべきこととして、図7のフローチャートにおける各ステップは、矢印に示される向きで順次表示されているが、これらのステップは、必ずしも矢印に示される向きで順次実行するとはない。本明細書で明確に説明しない限り、これらのステップの実行は、厳密な順序に限定されず、これらのステップは、他の順序で実行されてもよい。さらに、図7における少なくとも一部のステップは、複数のサブステップ又は複数の段階を含んでよく、これらのサブステップ又は段階は、必ずしも同じ時刻で実行されるものではなく、異なる時刻で実行されてもよく、これらのサブステップ又は段階の実行も、必ずしも順次行われるものではなく、その他のステップ或いはその他のステップのサブステップ又は段階の少なくとも一部と順に又は交互に実行されてもよい。
【0078】
図8に示すように、具体的な一実施例におけるブロックチェーンネットワークの機能モジュールの概略図である。図8を参照して、サービスサブネットワークにおける各サービスノードは、ルーティングノードによりコンセンサスサブネットワークにおける各コンセンサスノードにアクセスし、各ルーティングノードに含まれる機能モジュールは、ブロックチェーンネットワーク全体におけるネットワークトラフィック及びデータパケット数を制御するネットワークトラフィック/速度率制限モジュールを含み、外部サービスノードのコンセンサスサブネットワークの一部の機能へのアクセスを制限するブロックチェーン機能制限モジュールをさらに含み、要求を開始する各外部サービスノードに対してアイデンティティ検証を行うアイデンティティ検証モジュールをさらに含み、異なるタイプのサービス要求を配信するサービス機能配信モジュールをさらに含み、取引挿入要求を転送する取引挿入モジュール、要求データブロックを転送する要求ブロックモジュール、アドレス登録要求を転送するアドレス登録モジュールをさらに含み、各コンセンサスノードが要求をバランスよく処理できるように制御する負荷バランス配信モジュールをさらに含み、コンセンサスノードが現在利用可能であるか否かをメンテナンスするコンセンサスノード状態メンテナンスモジュールをさらに含み、コンセンサスノードから戻されたログデータを受信してから分析する戻りパケット検査モジュールとログ及びエラー警告モジュールをさらに含む。
【0079】
一実施形態において、図9に示すブロックチェーンネットワークにおけるデータ処理装置900は、ブロックチェーンネットワークにおけるルーティングノードに適用され、ブロックチェーンネットワークは、サービスサブネットワーク、コンセンサスサブネットワーク、及びサービスサブネットワークとコンセンサスサブネットワークとを離隔するルーティングノードを含み、装置は、受信モジュール902、検証モジュール904、取得モジュール906、決定モジュール908、及び転送モジュール910を備え、ここで、
受信モジュール902は、サービスサブネットワークにおけるサービスノードから送信されたデータ処理要求を受信し、
検証モジュール904は、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行い、
取得モジュール906は、検証が成功すると、上記コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得し、
決定モジュール908は、上記動作負荷に基づいて、上記コンセンサスサブネットワークから、上記データ処理要求を処理するターゲットコンセンサスノードを決定し、
転送モジュール910は、上記データ処理要求を上記ターゲットコンセンサスノードに転送し、上記ターゲットコンセンサスノードにより上記データ処理要求に対して対応するデータ処理を行う。
【0080】
一実施形態において、データ処理要求は、サービスノードの秘密鍵で署名して得られるものであり、検証モジュール904はさらに、サービスノードの秘密鍵に対応する公開鍵を取得し、署名されたデータ処理要求に対して、公開鍵により署名検証を行い、検証が成功すると、サービスノードに対するアイデンティティ検証が成功したと判定する。
【0081】
一実施形態において、データ処理要求は、データのブロックチェーンへの記録要求であり、転送モジュール910により転送されるデータのブロックチェーンへの記録要求は、コンセンサスサブネットワークにおけるターゲットコンセンサスノードに、データのブロックチェーンへの記録要求における取引情報に対応するハッシュ値を生成し、ハッシュ値をコンセンサスノードの秘密鍵で署名し、生成されたハッシュ値、署名されたハッシュ値をブロックヘッダに記録し、取引情報をブロックボディーに記録し、コンセンサスサブネットワークにより、ブロックヘッダ及びブロックボディーで構成されるデータブロックについて合意し、合意が成立した後、データブロックをコンセンサスサブネットワークにおけるブロックチェーンに記録するように指示する。
【0082】
一実施形態において、上記装置は、サービスノードが、コンセンサスノードの秘密鍵に対応する公開鍵を取得し、コンセンサスノードの公開鍵に基づいて、署名されたハッシュ値を署名検証し、検証が成功し、かつ署名検証により得られたハッシュ値がブロックヘッダに記録された取引情報のハッシュ値と一致する場合、データブロックの検証が成功したと判定するように、コンセンサスノードから戻されたブロックヘッダを受信し、ブロックヘッダをサービスノードに転送するブロックヘッダ転送モジュールをさらに備える。
【0083】
一実施形態において、データ処理要求は、取引情報照会要求であり、転送モジュール910により転送される取引情報照会要求は、コンセンサスサブネットワークにおけるターゲットコンセンサスノードに、サービスノードのデータ権限を取得し、コンセンサスノードによりデータ権限に基づいてサービスノードがデータブロックにおける取引情報に関連するサービスノードであるか否かを決定するように指示し、転送モジュール910はさらに、サービスノードがデータブロックにおける取引情報に関連するサービスノードであるとコンセンサスノードにより決定した場合に戻された取引情報を受信し、取引情報をサービスノードに転送する。
【0084】
一実施形態において、転送モジュール910はさらに、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得し、動作負荷に基づいて、データ処理要求を処理するターゲットコンセンサスノードを決定し、データ処理要求をターゲットコンセンサスノードに転送する。
【0085】
一実施形態において、上記装置は、ルーティング層におけるルーティングノードに適用され、上記装置は、ルーティングノードの持続的接続制限条件を取得する持続的接続制限モジュールをさらに備え、持続的接続制限条件は、サービスノードからルーティングノードへの持続的接続の数を制限するためのものであり、サービスノードからルーティングノードへの持続的接続の総数が持続的接続制限条件に設定される第1の閾値を超える場合、或いは、同一のサービスノードからルーティングノードへの持続的接続の数が持続的接続制限条件に設定される第2の閾値を超える場合、或いは、同じアイデンティティ証明書を持つサービスノードからルーティングノードへの持続的接続の数が持続的接続制限条件に設定される第3の閾値を超える場合、サービスノードからの持続的接続の動作が制限される。
【0086】
一実施形態において、上記装置は、ルーティング層におけるルーティングノードに適用され、上記装置は、ルーティングノードの速度率制限条件を取得する速度率制限モジュールをさらに備え、速度率制限条件は、データ処理要求を処理する処理速度率を制限するためのものであり、ルーティングノードが現在処理するデータ処理要求の数が速度率制限条件に設定される第4の閾値を超える場合、或いは、同一のルーティングノードが現在処理するデータ処理要求の数が速度率制限条件に設定される第5の閾値を超える場合、或いは、ルーティングノードが現在処理する、同一のアイデンティティ証明書からのデータ処理要求の数が速度率制限条件に設定される第6の閾値を超える場合、コンセンサスサブネットワークに転送されるデータ処理要求を制限する。
【0087】
一実施形態において、上記装置は、ブロックチェーン機能制限モジュールをさらに備え、該ブロックチェーン機能制限モジュールは、データ処理要求がデータのブロックチェーンへの記録要求、ブロックヘッダ取得要求、取引情報照会要求、及びコンセンサスノード基礎情報取得要求のうちのいずれか1つに該当する場合、検証モジュールが、データ処理要求に応じて、サービスノードに対してアイデンティティ検証を行うステップを実行するようにトリガし、データ処理要求が特定の要求のうちのいずれにも該当しない場合、データ処理要求をコンセンサスサブネットワークに転送することを制限する。
【0088】
一実施形態において、サービスサブネットワークとコンセンサスサブネットワークとを離隔するルーティングノードは、ルーティング層に属し、ルーティング層には、ベキ等性を有する複数のルーティングノードが含まれる。
【0089】
上記ブロックチェーンネットワークにおけるデータ処理装置では、ルーティングノードによりサービスサブネットワークとコンセンサスサブネットワークとを離隔し、ルーティングノードのみがコンセンサスサブネットワークに直接的にアクセスする能力を備え、このように、外部のサービスノードがコンセンサスノードにアクセスする必要がある場合、データ処理要求を送信したサービスノードのアイデンティティをルーティングノードにより検証し、各データ処理要求の安全性を検査し、アイデンティティ検証が成功する場合のみに、ルーティングノードは、コンセンサスサブネットワークにおける各コンセンサスノードの動作負荷を取得し、動作負荷に基づいてコンセンサスサブネットワークからデータ処理要求を処理するためのターゲットコンセンサスノードを決定した後に、外部のサービスノードから送信されたデータ処理要求をコンセンサスサブネットワークに転送し、そして、コンセンサスサブネットワークは、データ処理要求に対して対応するデータ処理を行い、それにより、コンセンサスサブネットワークがネットワークレベルで外部ノードのネットワーク攻撃を受けることによる潜在的な危険を回避し、コンセンサスサブネットワーク内部のネットワークセキュリティを確保し、さらにデータ処理要求をバランスよく転送し、コンセンサスサブネットワークの処理性能を向上させることができる。
【0090】
図10は、一実施形態におけるコンピュータ装置の内部構成図を示す。該コンピュータ装置は、具体的に図1のルーティングノード122であってよい。図10に示すように、該コンピュータ装置は、システムバスにより接続されるプロセッサ、メモリ、ネットワークインタフェースを含む。メモリは、不揮発性記憶媒体及び内部メモリを含む。該コンピュータ装置の不揮発性記憶媒体には、オペレーティングシステムが記憶されており、プロセッサによって実行されると、プロセッサにブロックチェーンネットワークにおけるデータ処理方法を実現させることができるコンピュータ可読命令がさらに記憶されてもよい。該内部メモリには、プロセッサによって実行されると、プロセッサにブロックチェーンネットワークにおけるデータ処理方法を実行させることができるコンピュータ可読命令が記憶されてもよい。
【0091】
当業者が理解できるように、図10に示した構造は、本願の手段に関連する一部の構造のブロック図に過ぎず、本願の手段を採用するコンピュータ装置を限定するものではなく、具体的なコンピュータ装置は、図示したものよりも多いか又は少ない部材を含んでもよく、いくつかの部材を組み合わせてもよく、異なる部材配置を有してもよい。
【0092】
一実施形態において、本願に係るブロックチェーンネットワークにおけるデータ処理装置は、図10に示されるコンピュータ装置上で実行可能なコンピュータ可読命令の形態で実現されてよい。コンピュータ装置のメモリには、該ブロックチェーンネットワークにおけるデータ処理装置を構成する各プログラムモジュール、例えば、図9に示す受信モジュール902、検証モジュール904、取得モジュール906、決定モジュール908及び転送モジュール910が記憶されてよい。各プログラムモジュールで構成されるコンピュータ可読命令は、プロセッサに、本明細書に記載された本願の各実施形態に係るブロックチェーンネットワークにおけるデータ処理方法のステップを実行させる。
【0093】
例えば、図10に示すコンピュータ装置は、図9に示すブロックチェーンネットワークにおけるデータ処理装置中の受信モジュール902によりステップS402を実行することができる。コンピュータ装置は、検証モジュール904によりステップS404を実行することができる。コンピュータ装置は、取得モジュール906によりステップS406を実行することができる。コンピュータ装置は、決定モジュール908によりステップS408を実行することができる。コンピュータ装置は、転送モジュール910によりステップS410を実行することができる。
【0094】
一実施形態において、プロセッサと、プロセッサによって実行されると、プロセッサに上記ブロックチェーンネットワークにおけるデータ処理方法のステップを実行させるコンピュータ可読命令が記憶されているメモリと、を含むコンピュータ装置を提供する。ここでブロックチェーンネットワークにおけるデータ処理方法のステップは、上記各実施形態のブロックチェーンネットワークにおけるデータ処理方法におけるステップであってよい。
【0095】
一実施形態において、プロセッサによって実行されると、プロセッサに上記ブロックチェーンネットワークにおけるデータ処理方法のステップを実行させるコンピュータ可読命令が記憶されているコンピュータ可読記憶媒体を提供する。ここで、ブロックチェーンネットワークにおけるデータ処理方法のステップは、上記各実施形態のブロックチェーンネットワークにおけるデータ処理方法におけるステップであってよい。
【0096】
一実施形態において、コンピュータ可読記憶媒体に記憶されているコンピュータ可読命令を含むコンピュータプログラム製品又はコンピュータ可読命令を提供する。コンピュータ装置のプロセッサは、コンピュータ可読記憶媒体から該コンピュータ可読命令を読み取り、該コンピュータ可読命令を実行することにより、該コンピュータ装置に上記各方法実施形態におけるステップを実行させる。
【0097】
当業者が理解できるように、上記方法実施形態の全部又は一部のフローは、コンピュータ可読命令が関連ハードウェアを命令することにより完了してもよく、上記プログラムは、不揮発性コンピュータ可読記憶媒体に記憶することができるものであり、実行されるとき、上記各方法実施形態のフローを含んでよい。本願に係る各実施形態に用いられる、メモリ、ストレージ、データベース又は他の媒体への任意の参照は、いずれも不揮発性及び/又は揮発性メモリを含んでよい。不揮発性メモリは、読み取り専用メモリ(ROM)、プログラマブルROM(PROM)、電気的プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)又はフラッシュメモリを含んでよい。揮発性メモリは、ランダムアクセスメモリ(RAM)又は外部キャッシュメモリを含んでよい。限定ではなく例示として、RAMは、スタティックRAM(SRAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、ダブルデータレートSDRAM(DDRSDRAM)、エンハンスドSDRAM(ESDRAM)、シンクロナスリンク(Synchlink)DRAM(SLDRAM)、メモリバス(Rambus)ダイレクトRAM(RDRAM)、ダイレクトメモリバスダイナミックRAM(DRDRAM)及びメモリバスダイナミックRAM(RDRAM)などの様々な形態で得られる。
【0098】
以上の実施形態の各技術的特徴を任意に組み合わせることができ、説明の便宜上、上記実施形態における各技術的特徴の全ての可能な組み合わせを説明していないが、これらの技術的特徴の組み合わせに矛盾がない限り、本明細書に記載される範囲に属するべきであると考えられる。
【0099】
上述した実施形態は、本願のいくつかの実施形態を説明したものに過ぎず、その説明が具体的かつ詳細であるが、これにより本願の特許請求の範囲を限定するものと理解されるものではない。なお、当業者であれば、本願の構想から逸脱しない前提で、いくつかの変形及び改善を行うことができ、これらも本発明の保護範囲に属する。したがって、本願特許の保護範囲は、添付される特許請求の範囲を基準とすべきである。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
【国際調査報告】