(58)【調査した分野】(Int.Cl.,DB名)
ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムであって、
前記参加者ノードは、取組みすべきデータと、参加プロジェクト識別子と、参加段階識別子を含む第1取組み要求を受信したことに応答して、前記第1取組み要求及び該参加者ノードの参加者認証情報を第2取組み要求として前記管理サーバに送信するように、構成され、
前記管理サーバは、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、前記取組みすべきデータを前記分散型ストレージクラスタに記憶し、前記分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索し、検索された各参加者情報における参加者ノード識別子を目標参加者ノード識別子集合として決定し、前記取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子及び参加段階識別子と、前記目標参加者ノード識別子集合とを第3取組み要求として前記コンセンサスノードに送信し、且つ前記分散型ストレージクラスタに記憶された前記取組みすべきデータと前記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように、構成され、
前記コンセンサスノードは、前記管理サーバが送信した第3取組み要求を受信したことに応答して、受信した第3取組み要求をローカル取組み要求バッファプールに記憶し、予め設定されたコンセンサスアルゴリズムに従って、前記ローカル取組み要求バッファプールから取組み要求を選択し、選択された取組み要求に対して、選択された取組み要求における目標参加者ノード識別子集合を除くデータを第4取組み要求として、選択された取組み要求における目標参加者ノード識別子集合の各参加者ノード識別子によって指示される参加者ノードに送信するように、構成され、
前記参加者ノードは、前記コンセンサスノードが送信した第4取組み要求を受信したことに応答して、受信した第4取組み要求をローカルブロックチェーンに繋げるように、構成されるビジネスプロセスシステム。
前記管理サーバは、確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、前記確立すべきプロジェクト情報を分散型ストレージクラスタに記憶し、且つ前記確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定し、前記確立すべきプロジェクト情報のダイジェスト情報及び前記目標参加者ノード識別子集合を第3取組み要求として前記コンセンサスノードに送信し、且つ前記分散型ストレージクラスタに記憶された前記確立すべきプロジェクト情報と前記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように、構成される請求項2に記載のシステム。
前記参加者ノードは、端末が送信したアクセスすべきオンチェーンデータ識別子を含むオンチェーンアクセス要求を受信したに応答して、ローカルブロックチェーンにおいて前記アクセスすべきオンチェーンデータ識別子に対応するデータを検索し、且つ検索されたデータを前記端末に送信するように、構成される請求項3に記載のシステム。
前記管理サーバは、端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、前記分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定し、肯定に判定したことに応答して、前記分散型ストレージクラスタで前記アクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを前記端末に送信するように、構成される請求項1〜4のいずれか1項に記載のシステム。
ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムの管理サーバに適用されるビジネスデータ処理方法であって、
参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを前記分散型ストレージクラスタに記憶することと、
前記分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索することと、
検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定することと、
前記取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、前記目標参加者ノード識別子集合とを第3取組み要求として前記コンセンサスノードに送信することと、
前記分散型ストレージクラスタに記憶された前記取組みすべきデータと前記コンセンサスノードに送信された第3取組み要求との対応関係を記録することを含むビジネスデータ処理方法。
確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、前記確立すべきプロジェクト情報を前記分散型ストレージクラスタに記憶することと、
前記確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定することと、
前記確立すべきプロジェクト情報のダイジェスト情報及び前記目標参加者ノード識別子集合を第3取組み要求として前記コンセンサスノードに送信することと、
前記分散型ストレージクラスタに記憶された前記確立すべきプロジェクト情報と前記コンセンサスノードに送信された第3取組み要求との対応関係を記録することをさらに含む請求項7に記載の方法。
端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、前記分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定することと、
肯定に判定したことに応答して、前記分散型ストレージクラスタで前記アクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを前記端末に送信することと、をさらに含む請求項6〜8のいずれか1項に記載の方法。
ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムの管理サーバに適用されるビジネスデータ処理装置であって、
参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを前記分散型ストレージクラスタに記憶するように構成される第1記憶手段と、
前記分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索するように構成される検索手段と、
検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される第1目標参加者決定手段と、
前記取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、前記目標参加者ノード識別子集合とを第3取組み要求として前記コンセンサスノードに送信するように構成される第1送信手段と、
前記分散型ストレージクラスタに記憶された前記取組みすべきデータと前記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される第1記録手段とを備えるビジネスデータ処理装置。
確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、前記確立すべきプロジェクト情報を前記分散型ストレージクラスタに記憶するように構成される第2記憶手段と、
前記確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される第2目標参加者決定手段と、
前記確立すべきプロジェクト情報のダイジェスト情報及び前記目標参加者ノード識別子集合を第3取組み要求として前記コンセンサスノードに送信するように構成される第2送信手段と、
前記分散型ストレージクラスタに記憶された前記確立すべきプロジェクト情報と前記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される第2記録手段をさらに備える請求項11に記載の装置。
端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、前記分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定するように構成される要求参加者決定手段と、
肯定に判定したことに応答して、前記分散型ストレージクラスタで前記アクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを前記端末に送信するように構成される第3送信手段と、をさらに備える請求項10〜12のいずれか1項に記載の装置。
コンピュータプログラムが記憶されているコンピュータ可読媒体であって、前記コンピュータプログラムが1つまたは複数のプロセッサにより実行されると、請求項6〜9のいずれか1項に記載の方法を実現させる、コンピュータ可読媒体。
コンピュータプログラムであって、前記コンピュータプログラムが1つまたは複数のプロセッサにより実行されると、請求項6〜9のいずれか1項に記載の方法を実現させる、コンピュータプログラム。
【発明の概要】
【発明が解決しようとする課題】
【0004】
本願の実施例はビジネスプロセスシステム、サービスデータ処理方法及び装置を提案する。
【課題を解決するための手段】
【0005】
第1態様では、本願の実施例は、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムであって、参加者ノードは、取組みすべきデータと、参加プロジェクト識別子と、参加段階識別子を含む第1取組み要求を受信したことに応答して、第1取組み要求及び該参加者ノードの参加者認証情報を第2取組み要求として管理サーバに送信するように、構成され、管理サーバは、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶し、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索し、検索された各参加者情報における参加者ノード識別子を目標参加者ノード識別子集合として決定し、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子及び参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信し、且つ分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録するように、構成され、コンセンサスノードは、管理サーバが送信した第3取組み要求を受信したことに応答して、受信した第3取組み要求をローカル取組み要求バッファプールに記憶し、予め設定されたコンセンサスアルゴリズムに従って、ローカル取組み要求バッファプールから取組み要求を選択し、選択された取組み要求に対して、選択された取組み要求における目標参加者ノード識別子集合を除くデータを第3取組み要求として、選択された取組み要求における目標参加者ノード識別子集合の各参加者ノード識別子によって指示される参加者ノードに送信するように、構成され、参加者ノードは、コンセンサスノードが送信した第4取組み要求を受信したことに応答して、受信した第4取組み要求をローカルブロックチェーンに繋げるがるように、構成されるビジネスプロセスシステムを提供する。
【0006】
いくつかの実施例では、管理サーバは、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答するように構成されることは、管理サーバは、参加者ノードから受信した第2取組み要求における参加者認証情報を検証チェックして合格させたことに応答して、分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定し、肯定に判定したことに応答して、参加者ノードから受信した第2取組み要求を検証チェックして合格させると決定するように、構成されることを含む。
【0007】
いくつかの実施例では、管理サーバは、確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、確立すべきプロジェクト情報を分散型ストレージサーバに記憶し、且つ確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定し、確立すべきプロジェクト情報のダイジェスト情報及び目標参加者ノード識別子集合を第3取組み要求としてコンセンサスノードに送信し、且つ分散型ストレージクラスタに記憶された確立すべきプロジェクト情報とコンセンサスノードに送信された第3取組み要求との対応関係を記録するように、構成される。
【0008】
いくつかの実施形態では、参加者ノードは、端末が送信したアクセスすべきオンチェーンデータ識別子を含むオンチェーンアクセス要求を受信したに応答して、ローカルブロックチェーンにおいてアクセスすべきオンチェーンデータ識別子に対応するデータを検索し、且つ検索されたデータを端末に送信するように、構成される。
【0009】
いくつかの実施形態では、管理サーバは、端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定し、肯定に判定したことに応答して、分散型ストレージクラスタでアクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを端末に送信するように、構成される。
【0010】
第2態様では、本出願の実施例は、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムの管理サーバに適用されるビジネスデータ処理方法であって、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶することと、分散型ストレージクラスタで受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索することと、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定することと、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信することと、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録することを含むビジネスデータ処理方法を提供する。
【0011】
いくつかの実施例では、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答することは、参加者ノードから受信した第2取組み要求における参加者認証情報を検証チェックして合格させたことに応答して、分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定することと、肯定に判定したことに応答して、参加者ノードから受信した第2取組み要求を検証チェックして合格させたと判定することとを含む。
【0012】
いくつかの実施例において、該方法は、確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、確立すべきプロジェクト情報を分散型ストレージサーバに記憶することと、確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定することと、確立すべきプロジェクト情報のダイジェスト情報及び目標参加者ノード識別子集合を第3取組み要求としてコンセンサスノードに送信することと、分散型ストレージクラスタに記憶された確立すべきプロジェクト情報とコンセンサスノードに送信された第3取組み要求との対応関係を記録することをさらに含む。
【0013】
いくつかの実施例において、該方法は、端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定することと、肯定に判定したことに応答して、分散型ストレージクラスタでアクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを端末に送信することとをさらに含む。
【0014】
第3態様では、本出願の実施例は、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えるビジネスプロセスシステムの管理サーバに適用されるビジネスデータ処理装置であって、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶するように構成される第1記憶手段と、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索するように構成される検索手段と、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される第1目標参加者決定手段と、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信するように構成される第1送信手段と、分散型ストレージクラスタに記憶された取組みすべきデータと前記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される第1記録手段とを備えるビジネスデータ処理装置を提供する。
【0015】
いくつかの実施例では、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答することは、参加者ノードから受信した第2取組み要求における参加者認証情報を検証チェックして合格させたことに応答して、分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定することと、肯定に判定したことに応答して、参加者ノードから受信した第2取組み要求を検証チェックして合格させると決定することとを含む。
【0016】
いくつかの実施例では、該装置は確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、確立すべきプロジェクト情報を分散型ストレージサーバに記憶するように構成される第2記憶手段と、確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される第2目標参加者決定手段と、確立すべきプロジェクト情報のダイジェスト情報及び目標参加者ノード識別子集合を第3取組み要求としてコンセンサスノードに送信するように構成される第2送信手段と、分散型ストレージクラスタに記憶された確立すべきプロジェクト情報とコンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される第2記録手段をさらに備える。
【0017】
いくつかの実施例では、該装置は端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定するように構成される要求参加者決定手段と、肯定に判定したことに応答して、分散型ストレージクラスタでアクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを端末に送信するように構成される第3送信手段とをさらに備える。
【0018】
第4態様では、本出願の実施例は、1つ又は複数のプロセッサと、1つ又は複数のプログラムが記憶されている記憶装置と、1つまたは複数のプログラムを1つまたは複数のプロセッサに実行させると、第2態様のいずれか1つの実施例に記載の方法を1つまたは複数のプロセッサに実現させる、サーバを提供する。
【0019】
第5態様では、本願の実施例は、コンピュータプログラムが記憶されているコンピュータ可読記憶媒体であって、このコンピュータプログラムが1つまたは複数のプロセッサにより実行されると、上記第1態様のいずれか1つの実施例に記載の方法を実現させるコンピュータ可読記憶媒体を提供する。
【発明の効果】
【0020】
現在、ブロックチェーンは、ビジネスプロセスデータ管理において、ビジネスプロセスにおける異なるプロジェクトの異なる段階の異なる参加者が提供するビジネスデータの全てを取り組むことが多く、このように、ビジネスプロセスにおける異なるプロジェクトの異なる段階の参加者がいずれも同じデータを共有し、具体的なプロジェクト、プロジェクトにおける異なる段階の参加者を区別せず、技術的解決手段の移行性及び拡張性が強くなくなってしまう。また、ビジネスプロセスデータのオンチェーンデータとオフチェーンデータを関連付けて記憶することも実現されていない。
【0021】
本願の実施例は、管理サーバを利用して管理を集約して行うことにより、オフチェーンデータを分散型ストレージクラスタに記憶し、そして、異なるプロジェクトに対して各段階での参加者を定義して、同一プロジェクトの同一段階での参加者が同じオンチェーンデータ及びオフチェーンデータを共有するビジネスプロセスシステム、サービスデータ処理方法及び装置を提供する。これにより、ブロックチェーンデータに対する参加者のトラステッドアクセスを解決し、ビジネスプロセスにおけるプロジェクトの動的カスタマイズ可能な段階管理をサポートし、各階段のオンチェーンデータと参加者とを厳密に分割して管理するとともに、オンチェーン及びオフチェーンのビジネスデータの連動管理をサポートする。
【発明を実施するための形態】
【0023】
以下、図面及び実施例を参照しながら本願をさらに詳細に説明する。本明細書に記載された具体的な実施例は、単に本発明を説明するためのものであり、本発明を限定するものではないことが理解されるべきである。なお、説明の便宜上、図面には、かかる発明に関連する部分のみが示されている。
【0024】
なお、矛盾しない場合に、本願における実施例及び実施例における特徴は互いに組み合わせることができる。以下、図面及び実施例を参照しながら本願を詳細に説明する。
【0025】
図1は、本願にかかるビジネスプロセスシステムを適用可能な実施例のシステム構成100の一例を示す。
【0026】
図1に示すように、システム構成100は、参加者端末101、102、103と、管理サーバ104と、分散型ストレージクラスタ105と、参加者端末101に対応する参加者ノード106と、参加者端末102に対応する参加者ノード107と、参加者端末103に対応する参加者ノード108と、コンセンサスノード109と、ネットワーク110とを含むことができる。ネットワーク110は、参加者端末101、102、103と、管理サーバ104と、分散型ストレージクラスタ105と、参加者ノード106、107、108と、コンセンサスノード109との間で通信リンクの媒体を提供するために使用される。ネットワーク110は、例えば、有線や無線通信リンク、または光ファイバケーブルなどの様々な接続タイプを含むことができる。ここで、参加者ノード106、107、108及びコンセンサスノード109からブロックチェーンネットワークを構成しており、同盟チェーンとも呼ばれる。
【0027】
ユーザは、参加者101、102、103を使用して、ネットワーク110を介して管理サーバ104と対話して、メッセージなどを送受信することができる。参加者端末101、102、103には、例えばソーシャルネットワーキングウェブサイト管理アプリケーション、ショッピングウェブサイト管理アプリケーション、ウェブページブラウザアプリケーション、ショッピングアプリケーション、検索アプリケーション、インスタントメッセージングツール、メールボックスクライアント、ソーシャルプラットフォームソフトウェアなどの各種のクライアントアプリケーションがインストールされることができる。
【0028】
ユーザは、参加者端末101を使用してネットワーク110を介して参加者ノード106と対話したり、参加者端末102を使用してネットワーク110を介して参加者ノード107と対話したり、参加者端末103を使用してネットワーク110を介して参加者ノード108と対話したりすることができる。
【0029】
参加者端末101、102、103は、ハードウェアであってもよいし、ソフトウェアであってもよい。参加者端末101、102、103がハードウェアである場合、表示パネルを有する様々な電子デバイスであってもよく、スマートフォン、タブレット型コンピュータ、ラップトップコンピュータ及びデスクトップコンピュータなどを含むが、これらに限定されない。参加者端末101、102、103がソフトウェアである場合、上記例示された電子デバイスにインストールされることができる。また、複数のソフトウェアまたはソフトウェアモジュール(例えばビジネスプロセスサービスを提供するために使用される複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは具体的に限定されるものではない。
【0030】
管理サーバ104は、例えば、参加者端末101、102、103が送信したデータ処理要求に対してサポートを提供する管理サーバのような様々のサービスを提供するサーバであってもよい。管理サーバは、受信したデータ取組み要求やデータアクセス要求などのデータへの分析などの処理を行い、処理結果(例えばデータの取組み結果やアクセスされたデータ)を参加者端末にフィードバックすることができる。
【0031】
なお、管理サーバ104は、ハードウェアであってもよいし、ソフトウェアであってもよい。管理サーバ104はハードウェアである場合、複数のサーバから構成される分散型サーバクラスタとして実現されてもよく、単一のサーバとして実現されてもよい。管理サーバ104がソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えばデータ管理サービスを提供するために使用される複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは具体的に限定されるものではない。
【0032】
分散型ストレージクラスタ105は、例えば、管理サーバ104が送信したデータ操作要求に対してサポートを提供する分散型データベースサーバクラスタのようなデータの分散型ストレージ、削除、修正、検索などのサービスを提供するサーバクラスタであってもよい。分散型ストレージクラスタ105は、受信したデータ操作要求などのデータへの分析などの処理を行い、処理結果(例えばデータ操作結果)を管理サーバ104にフィードバックすることができる。
【0033】
なお、分散型ストレージクラスタ105は、ハードウェアであってもよいし、ソフトウェアであってもよい。分散型ストレージクラスタ105はハードウェアである場合、複数のサーバから構成される分散型サーバクラスタとして実現されてもよく、単一のサーバとして実現されてもよい。分散型ストレージクラスタ105がソフトウェアである場合、複数のソフトウェアまたはソフトウェアモジュール(例えば分散型データサービスを提供するために使用される複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは具体的に限定されるものではない。
【0034】
参加者ノード106、107、108は、ブロックチェーンにおけるデータブロックの生成及び記憶を提供するとともに、ブロックチェーンデータ検索サービスを提供する電子デバイスとすることができる。例えば、コンセンサスノード109から送信された取組みすべきデータのダイジェスト情報及び上記取組みすべきデータを送信する対応の参加者ノードの参加者ノード識別子に対してブロックを生成し、生成されたブロックをローカルブロックチェーンに繋げる。
【0035】
参加者ノード106、107、108は、ハードウェアであってもよいし、ソフトウェアであってもよい。参加者ノード106、107、108はハードウェアである場合、複数のサーバから構成される分散型サーバクラスタとして実現されてもよく、単一のサーバとして実現されてもよい。参加者ノード106、107、108がソフトウェアである場合には、複数のソフトウェアまたはソフトウェアモジュール(例えばブロックチェーンサービスを提供するために使用される複数のソフトウェアまたはソフトウェアモジュール)として実現されてもよく、単一のソフトウェアまたはソフトウェアモジュールとして実現されてもよい。ここでは具体的に限定されるものではない。
【0036】
コンセンサスノード109は、ブロックチェーンでのコンセンサスサービスを提供することができる。例えば、管理サーバから受信したデータ取組み要求をバッファリングし、予め設定されたコンセンサスアルゴリズムに従ってデータ取組み要求を選択して対応の参加者ノードに送信することにより、データの取組み操作を実行する。
【0037】
なお、本願の実施例が提供するデータ処理方法は、一般的に管理サーバ104によって実行され、それに応じて、ブロックチェーンに基づくデータ処理装置は、一般的に管理サーバ104に設置される。
【0038】
図1の参加者端末、管理サーバ、分散型ストレージクラスタ、参加者ノード、コンセンサスノードおよびネットワークの数は単なる例示であることが理解されるべきである。実施のニーズに応じて、任意の数の参加者端末、管理サーバ、分散型ストレージクラスタ、参加者ノード、コンセンサスノード及びネットワークを有することができる。
【0039】
次に、
図2を参照すると、本願のビジネスプロセスシステムにかかる一実施形態のタイミング200が示される。
【0040】
本願の実施例におけるビジネスプロセスシステムは、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えることができる。
【0041】
図2に示すように、本願のビジネスプロセスシステムにかかる一実施例のタイミング200は、ステップ201〜ステップ210を含むことができる。
【0042】
ステップ201において、参加者ノードは、第1取組み要求を受信したことに応答して、第1取組み要求及び該参加者ノードの参加者認証情報を第2取組み要求として管理サーバに送信する。
【0043】
本実施例では、参加者ノードは、取組みすべきデータと、参加プロジェクト識別子と、参加段階識別子を含む第1取組み要求を受信した場合に、受信した第1取組み要求及び該参加者ノードの参加者認証情報を第2取組み要求として管理サーバに送信することができる。
【0044】
ここで、取組みすべきデータは、該ビジネスプロセスシステムが適用される各種のビジネスプロセスに関連する各種のデータであってもよい。例えば、該ビジネスプロセスシステムが資産証券化プロセスシステムに適用される場合に、取組みすべきデータは、資産証券化プロジェクトのプロジェクト情報、資産保有者の資産情報(例えば、不動産情報や車両情報など)、法律事務所の弁護士公文書、監査機関の監査結果、公証人機関の公正結果、資産取引機関の取引記録などであってもよい。
【0045】
ここで、第1取組み要求における参加プロジェクト識別子は、参加者ノードに対応する参加者が参加するプロジェクトのプロジェクト識別子であってもよい。第1取組み要求における参加階段識別子は、参加者ノードに対応する参加者が参加するプロジェクトの階段の階段識別子であってもよい。
【0046】
本実施例では、各参加者は、特定のプロジェクトの複数の段階のうちの少なくとも1つに参加することができる。言い換えれば、本実施例では、ユーザは、ビジネスプロセスのプロジェクトをカスタマイズすることができ、各プロジェクトは、少なくとも1つの段階を含むことができ、各段階は、その段階に参加する少なくとも1つの参加者をカスタマイズすることができる。
【0047】
ここで、第1取組み要求は、参加者端末がユーザの入力を受信して上記参加者ノードに送信するものであってもよい。もちろん、第1取組み要求は、参加者ノードがユーザの入力を直接受信するものであってもよい。
【0048】
ステップ202において、管理サーバは、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶する。
【0049】
本実施例では、管理サーバは、参加者ノードから送信した第2取組み要求を受信した場合に、受信した第2取組み要求を検証チェックすることができる。検証チェックに合格すると、受信した第2取組み要求における取組みすべきデータを分散型ストレージクラスタに記憶する。
【0050】
本実施例のいくつかの選択可能な実施形態では、管理サーバは、受信した第2取組み要求における参加者認証情報を検証チェックして合格させた場合に、参加者ノードから受信した第2取組み要求を検証チェックして合格させると決定することができる。
【0051】
本実施例のいくつかの選択可能な実施形態では、管理サーバは、参加者ノードから受信した第2取組み要求における参加者認証情報を検証チェックして合格させた場合に、分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定し、肯定に判定すると、参加者ノードから受信した第2取組み要求を検証チェックして合格させると決定することができる。すなわち、分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあると、受信した参加者認証情報に対応する参加者が、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階に参加したことを示し、つまり、受信した参加者認証情報を送信する参加者が、参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階に参加することにより、受信した第2取組み要求を検証チェックして合格させると決定することができる。
【0052】
ここで、参加者ノードの参加者認証情報は、様々な態様の参加者ノードを示す識別情報及び対応の認証情報であってもよい。例えば、参加者ノードの参加者認証情報は、参加者識別子と参加者パスワードとを含むことができる。また、例えば、参加者の参加者認証情報は、管理サーバが発行した参加者の与信デジタル証明書を含んでもよい。なお、管理サーバは、ローカル又は分散型ストレージクラスタから各参加者の認証後の参加者認証情報を取得し、取得された認証後の参加者認証情報に基づいて参加者ノードの認証情報を検証チェックすることができる。
【0053】
ステップ203において、管理サーバは、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索する。
【0054】
本実施例では、分散型ストレージクラスタには、プロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する各プロジェクトのプロジェクト情報が予めに記憶されていることができる。このように、管理サーバは、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索することができる。
【0055】
ステップ204において、管理サーバは、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定する。
【0056】
本実施例では、管理サーバは、ステップ203で検索された各参加者情報における参加者ノード識別子を目標参加者ノード識別子集合として決定することができる。
【0057】
ステップ205において、管理サーバは、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信する。
【0058】
本実施例では、管理サーバは、まず様々なダイジェスト生成方法を利用して、ステップ202で参加者ノードから受信した第2取組み要求における取組みすべきデータのダイジェスト情報を生成することができる。例えば、ダイジェスト生成方法は、MD5メッセージダイジェストアルゴリズム(MD5Message−Digest Algorithm)やSHA256アルゴリズムなどを含むが、これらに限定されない。次に、管理サーバは、生成されたダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、ステップ204で決定された目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信することができる。
【0059】
ステップ206において、管理サーバは、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録する。
【0060】
本実施例では、管理サーバには、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係が記録されることにより、管理サーバは、オンチェーンデータとオフチェーンデータとの関連インタラクションを実現することができる。
【0061】
オンチェーンの各参加者ノードの空間が限られ、オンチェーンの記憶空間を節約するために、取組みすべきデータの生データがオフチェーンの分散型ストレージクラスタに記憶され、取組みすべきデータのダイジェスト情報が生データに対して記憶空間のニーズを大幅に減少させるので、取組みすべきデータのダイジェスト情報をオンチェーンの各参加者ノードに記憶することにより、オンチェーンの記憶空間を節約することができる。しかし、参加者が取り込まれたダイジェスト情報に対応する取組みすべきデータの生データにアクセスすることを希望することがあり、前記生データにアクセスすることを可能にするために、管理サーバに記録された前記対応関係により、オンチェーンデータ及びオフチェーンデータの関連インタラクションを実現できる。
【0062】
ステップ207において、コンセンサスノードは、管理サーバが送信した第3取組み要求を受信したことに応答して、受信した第3取組み要求をローカル取組み要求バッファプールに記憶する。
【0063】
ステップ208において、コンセンサスノードは、予め設定されたコンセンサスアルゴリズムに従って、ローカル取組み要求バッファプールから取組み要求を選択する。
【0064】
本実施例では、予め設定されたコンセンサスアルゴリズムは、コンセンサスノードのローカルに記憶された取組み要求バッファプールにおける取組み要求をソートして条件に合致する取組み要求を選択するために用いられる。例えば、取組み要求が取組み要求バッファプールに記憶されるタイミングに応じてソートして、記憶タイミングが最も早い第1所定数の取組み要求を選択することができる。また、例えば、取組み要求バッファプールにおける取組み要求に必要な占有記憶空間の大きさに応じてソートして、その後に必要な記憶空間の大きさ全体が予め設定された記憶空間の範囲内にある複数の取組み要求を選択してもよい。
【0065】
ステップ209において、コンセンサスノードは、選択された取組み要求に対して、選択された取組み要求における目標参加者ノード識別子集合を除くデータを第4取組み要求として、選択された取組み要求における目標参加者ノード識別子集合の各参加者ノード識別子によって指示される参加者ノードに送信する。
【0066】
本実施例では、コンセンサスノードは、選択された各取組み要求に対して、まず該取組み要求における目標参加者ノード識別子集合を除くデータを第4取組み要求として取得し、次に上記第4取組み要求を該取組み要求における目標参加者ノード識別子集合の各参加者ノード識別子によって指示される参加者ノードに送信することができる。
【0067】
ステップ210、参加者ノードは、コンセンサスノードが送信した第4取組み要求を受信したことに応答して、受信した第4取組み要求をローカルブロックチェーンに繋げる。
【0068】
本実施例では、参加者ノードは、コンセンサスノードが送信した第4取組み要求を受信した場合に、受信した第4取組み要求に対してブロックを生成し、生成されたブロックをローカルブロックチェーンに繋げることができる。
【0069】
ここで、どのようにブロックを生成するかは現在で広く研究され応用されている従来技術であり、ここでは詳細な説明を省略する。例えば、まずマークルツリー(Merkle Tree)という技術を利用して、受信された第4取組み要求のマークルツリーをブロックデータとして生成し、次に前のブロックのハッシュ値、ランダムに生成された乱数、受信された第4取組み要求及び生成されたマークルツリーのルートを用いて、ブロックヘッダデータを生成し、最後にブロックヘッダデータ及びブロックデータを組み合わせてブロックを得ることができる。当然のことながら、上記ブロックヘッドには、ブロックを生成するタイミングのタイムスタンプ値がさらに含まれてもよい。
【0070】
ステップ209で決定された目標参加者ノード識別子集合の各目標参加者ノード識別子によって指示される目標参加者ノードは、いずれも上記第4取組み要求を受信して、受信した第4取組み要求をローカルブロックチェーンに繋げると、目標参加者ノード識別子集合の各目標参加者ノード識別子によって指示される参加者ノードは、いずれも同じ第4取組み要求のブロックコンテンツを記憶することが理解されるべきである。言い換えれば、同一プロジェクトの同一段階に参加する参加者の参加者ノードは、いずれも該プロジェクトの該階段に関連する取組みデータのすべてを格納する。
【0071】
本実施例のいくつかの選択可能な実施形態では、上記タイミング200は、さらに以下のステップ211〜ステップ214を含むことができる。
【0072】
ステップ211において、管理サーバは、確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、確立すべきプロジェクト情報を分散型ストレージクラスタに記憶する。
【0073】
ここで、管理サーバは、確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信した場合に、確立すべきプロジェクト情報を分散型ストレージクラスタに記憶することができる。ここで、確立すべきプロジェクト情報は、確立すべきプロジェクトのプロジェクト識別子及びプロジェクトに含まれるプロジェクト段階数の段階情報を含むことができ、段階情報は、段階識別子及びプロジェクト段階に参加する参加者数の参加者情報を含むことができ、参加者情報は、参加者ノード識別子を含むことができる。
【0074】
ここで、プロジェクト識別子はプロジェクトを一意的に指示すために用いられ、例えば、プロジェクト識別子、番号がインクリメントする態様を採用してもよく、プロジェクト名の態様を採用しよもよい。段階識別子は、プロジェクト内の段階を一意的に指示するために用いられ、例えば、段階識別子は、番号がインクリメントする態様を採用してもよく、段階名の態様を採用しよもよい。
【0075】
実際には、参加者情報は、参加者ノード識別子だけではなく、参加者名、参加者タイプなどを含むことができる。
【0076】
ステップ212において、管理サーバは、確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定する。
【0077】
ステップ213において、管理サーバは、確立すべきプロジェクト情報のダイジェスト情報及び目標参加者ノード識別子集合を第3取組み要求としてコンセンサスノードに送信する。
【0078】
このように、コンセンサスノードは、ステップ207〜ステップ209を実行するとともに、参加者ノードは、ステップ210を実行することができ、それにより、確立すべきプロジェクト情報のダイジェスト情報を確立すべきプロジェクト情報によって指示されるプロジェクトの各段階に参加する参加者の参加者ノードに取り組む。
【0079】
ステップ214において、管理サーバは、分散型ストレージクラスタに記憶された確立すべきプロジェクト情報とコンセンサスノードに送信された第3取組み要求との対応関係を記録する。
【0080】
本願の上記実施例が提供するシステムは、管理サーバを利用して管理を集約して行うことにより、オフチェーンデータを分散型ストレージクラスタに記憶し、そして、異なるプロジェクトに対して各段階での参加者を定義して、同一プロジェクトの同一段階での参加者が同じオンチェーンデータ及びオフチェーンデータを共有する。これにより、ブロックチェーンデータに対する参加者のトラステッドアクセスを解決し、ビジネスプロセスにおけるプロジェクトの動的カスタマイズ可能な段階管理をサポートし、各階段のオンチェーンデータと参加者とを厳密に分割して管理するとともに、オンチェーン及びオフチェーンのビジネスデータの連動管理をサポートする。
【0081】
さらに
図3を参照すると、ビジネスプロセスシステムの別の実施例のタイミング300が示されている。
【0082】
本願の実施例におけるビジネスプロセスシステムは、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えることができる。
【0083】
図3に示すように、本願のビジネスプロセスシステムにかかる一実施例のタイミング300は、ステップ301〜ステップ313を含むことができる。
【0084】
ステップ301において、参加者ノードは、第1取組み要求を受信したことに応答して、第1取組み要求及び該参加者ノードの参加者認証情報を第2取組み要求として管理サーバに送信する。
【0085】
ステップ302において、管理サーバは、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶する。
【0086】
ステップ303において、管理サーバは、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索する。
【0087】
ステップ304において、管理サーバは、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定する。
【0088】
ステップ305において、管理サーバは、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信する。
【0089】
ステップ306において、管理サーバは、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録する。
【0090】
ステップ307において、コンセンサスノードは、管理サーバが送信した第3取組み要求を受信したことに応答して、受信した第3取組み要求をローカル取組み要求バッファプールに記憶する。
【0091】
ステップ308において、コンセンサスノードは、予め設定されたコンセンサスアルゴリズムに従って、ローカル取組み要求バッファプールから取組み要求を選択する。
【0092】
ステップ309において、コンセンサスノードは、選択された取組み要求に対して、選択された取組み要求における目標参加者ノード識別子集合を除くデータを第4取組み要求として、選択された取組み要求における目標参加者ノード識別子集合の各参加者ノード識別子によって指示される参加者ノードに送信する。
【0093】
ステップ310、参加者ノードは、コンセンサスノードが送信した第4取組み要求を受信したことに応答して、受信した第4取組み要求をローカルブロックチェーンに繋げる。
【0094】
本実施例において、ステップ301〜ステップ310の具体的な操作は、
図2に示す実施例におけるステップ201〜ステップ210の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0095】
ステップ311において、参加者ノードは、端末からアクセスすべきオンチェーンデータ識別子を含むオンチェーンアクセス要求を受信したことに応答して、検証チェックして合格させ、ローカルブロックチェーンでアクセスすべきオンチェーンデータ識別子に対応するデータを検索し、検索されたデータを端末に送信する。
【0096】
本実施形態では、参加者ノードは、端末が送信したアクセスすべきオンチェーンデータ識別子を含むオンチェーンアクセス要求を受信した場合に、ローカルブロックチェーンにおいてアクセスすべきオンチェーンデータ識別子に対応するデータを検索し、検索されたデータを端末に送信することができる。ここで、参加者ノードが同盟チェーンにおけるノードであるため、参加者ノードは該参加者ノードに対応する参加者の端末のみに対してオープンする。参加者ノードが受信した、端末から送信されたオンチェーンアクセス要求は、参加者ノードに対応する参加者が端末を利用して送信したオンチェーンアクセス要求であり、該参加者ノードのローカルブロックチェーンノードに記憶されたオンチェーンデータは、いずれも該参加者ノードに対応する参加者が参加する各プロジェクトの参加段階のデータであるので、参加者ノードは、ローカルブロックチェーンでアクセスすべきオンチェーンデータ識別子に対応するデータを直接検索し、検索されたデータを端末に送信することができる。
【0097】
すなわち、参加者は、端末より参加者ノードに接続して、オンチェーンデータへのアクセスを実現することができる。
【0098】
ステップ312において、管理サーバは、端末が送信したオフチェーンアクセス要求を受信したことに応答して、分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定する。
【0099】
本実施例では、管理サーバは、端末が送信した、アクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信した場合に、まず、分散型ストレージクラスタで受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における各参加者ノード識別子を検索することができる。次に、受信した要求される参加者認証情報に対応する参加者ノード識別子が上記決定された各参加者ノード識別子にあるかを判定する。肯定に判定した場合には、ステップ313に移行する。即ち、肯定に判定すると、アクセスが要求される参加者認証情報に対応する参加者がアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階に参加していることを示し、それにより、アクセスが要求される参加者認証情報に対応する参加者は、アクセスすべきオフチェーンデータ識別子によって指示されるデータにアクセスする権利を持つ。
【0100】
ステップ313において、管理サーバは、分散型ストレージクラスタでアクセスすべきオフチェーンデータ識別子に対応するデータを検索して、検索されたデータを端末に送信する。
【0101】
本実施例では、管理サーバは、ステップ312でアクセスが要求される参加者認証情報に対応する参加者がアクセスすべきオフチェーンデータ識別子によって指示されるデータにアクセス権利を持つと判定した場合に、分散型ストレージクラスタでアクセスすべきオフチェーンデータ識別子に対応するデータを検索して、検索されたデータを端末に送信することができる。
【0102】
本実施例のいくつかの選択可能な実施形態では、
図3に示されないが、上記タイミング300は、
図2に示すステップ211〜ステップ214を含んでもよい。
【0103】
図3から分かるように、
図2に対応する実施例に比べて、本実施例におけるビジネスプロセスシステムのフロー300は、オフチェーンデータにアクセスするステップ及びオンチェーンデータにアクセスするステップをさらに含む。これにより、本実施例に記載の手段によれば、ビジネスプロセスシステムが、オフチェーン生データ及びオンチェーンダイジェスト情報へのアクセス操作を実現することができる。
【0104】
次に
図4を参照すると、ビジネスプロセスシステム内の管理サーバに適用されるビジネスデータ処理方法の一実施例のフロー400が示されている。ここで、ビジネスプロセスシステムは、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備えることができる。該ビジネスデータ処理方法に基づくフロー400は、以下のステップ401〜ステップ405を含む。
【0105】
ステップ401において、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶する。
【0106】
本実施例において、ステップ401の具体的な操作は、
図2に示す実施例におけるステップ201の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0107】
ステップ402において、分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索する。
【0108】
本実施例において、ステップ402の具体的な操作は、
図2に示す実施例におけるステップ203の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0109】
ステップ403において、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定する。
【0110】
本実施例において、ステップ403の具体的な操作は、
図2に示す実施例におけるステップ204の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0111】
ステップ404において、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信する。
【0112】
本実施例において、ステップ404の具体的な操作は、
図2に示す実施例におけるステップ205の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0113】
ステップ405において、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録する。
【0114】
本実施例において、ステップ405の具体的な操作は、
図2に示す実施例におけるステップ206の操作と基本的に同じであり、ここでは詳細な説明を省略する。
【0115】
本願の実施例が提供するビジネスデータ処理方法は、管理サーバを利用して管理を集約して行うことにより、オフチェーンデータを分散型ストレージクラスタに記憶し、そして、異なるプロジェクトに対して各段階での参加者を定義して、同一プロジェクトの同一段階での参加者が同じオンチェーンデータ及びオフチェーンデータを共有する。これにより、ブロックチェーンデータに対する参加者のトラステッドアクセスを解決し、ビジネスプロセスにおけるプロジェクトの動的カスタマイズ可能な段階管理をサポートし、各階段のオンチェーンデータと参加者とを厳密に分割して管理するとともに、オンチェーン及びオフチェーンのビジネスデータの連動管理をサポートする。
【0116】
さらに
図5を参照すると、上記各図に示される方法の実施として、本願は、ビジネスプロセスシステム内の管理サーバに適用されるビジネスデータ処理装置の一実施例を提供し、上記ビジネスプロセスシステムは、ネットワーク接続の管理サーバと、分散型ストレージクラスタと、コンセンサスノード及び少なくとも1つの参加者ノードを含むブロックチェーンネットワークとを備え、該装置は
図4に示す方法の実施例に対応して、具体的に各種の電子デバイスに適用されることができる。
【0117】
図5に示すように、本実施例のビジネスデータ処理装置500は、第1記憶手段501、検索手段502、第1目標参加者決定手段503、第1送信手段504及び第1記録手段505を備える。ここで、第1記憶手段501は、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、上記取組みすべきデータを分散型ストレージクラスタに記憶するように構成される。検索手段502は、上記分散型ストレージクラスタで、受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索するように構成される。第1目標参加者決定手段503は、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される。第1送信手段504は、上記取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、上記目標参加者ノード識別子集合とを第3取組み要求として上記コンセンサスノードに送信するように構成される。第1記録手段505は、上記分散型ストレージクラスタに記憶された上記取組みすべきデータと上記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される。
【0118】
本実施例では、ビジネスデータ処理装置500の第1記憶手段501、検索手段502、第1目標参加者決定手段503、第1送信手段504及び第1記録手段505による具体的な処理及びそれによる技術的効果は、
図2の対応の実施例におけるステップ201、ステップ202、ステップ203、ステップ204及びステップ205の関連説明を参照することができ、ここでは詳細な説明を省略する。
【0119】
本実施形態のいくつかの選択可能な実施形態では、上記参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答することは、参加者ノードから受信した第2取組み要求における参加者認証情報を検証チェックして合格させたことに応答して、上記分散型ストレージクラスタで受信した参加者認証情報に対応する参加者ノード識別子を検索して、受信した参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定することと、肯定に判定したことに応答して、参加者ノードから受信した第2取組み要求を検証チェックして合格させると決定することとを含むことができる。
【0120】
本実施例のいくつかの選択可能な実施形態では、上記装置500は、確立すべきプロジェクトのプロジェクト識別子と、プロジェクトに含まれるプロジェクト段階数の階段情報であって、段階識別子及びプロジェクト段階に参加する参加者数の、参加者ノード識別子を含む参加者情報を含む階段情報と、を有する確立すべきプロジェクト情報を含むプロジェクト新規確立要求を受信したことに応答して、上記確立すべきプロジェクト情報を上記分散型ストレージサーバに記憶するように構成される第2記憶手段506と、上記確立すべきプロジェクト情報における各階段情報に含まれる各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定するように構成される第2目標参加者決定手段507と、上記確立すべきプロジェクト情報のダイジェスト情報及び上記目標参加者ノード識別子集合を第3取組み要求として上記コンセンサスノードに送信するように構成される第2送信手段508と、上記分散型ストレージクラスタに記憶された上記確立すべきプロジェクト情報と上記コンセンサスノードに送信された第3取組み要求との対応関係を記録するように構成される第2記録手段509をさらに備えることができる。
【0121】
本実施例のいくつかの選択可能な実施形態では、上記装置500は、端末が送信したアクセスすべきオフチェーンデータ識別子、アクセスすべきプロジェクト識別子、アクセスすべき段階識別子及び参加者認証情報へのアクセスを要求するオフチェーンアクセス要求を受信したことに応答して、上記分散型ストレージクラスタで受信した要求される参加者認証情報に対応する参加者ノード識別子を検索して、受信したアクセスすべきプロジェクト識別子によって指示されるプロジェクトの、アクセスすべき段階識別子によって指示される段階の各参加者情報における参加者ノード識別子にあるかを判定するように構成される要求参加者決定手段510と、肯定に判定したことに応答して、上記分散型ストレージクラスタで上記アクセスすべきオフチェーンデータ識別子に対応するデータを検索し、検索されたデータを前記端末に送信するように構成される第3送信手段511とをさらに備えることができる。
【0122】
なお、本願の実施例が提供するビジネスデータ処理装置における各手段の実施詳細及び技術的効果は、本願における他の実施例の説明を参照することができ、ここでは詳細な説明を省略する。
【0123】
以下、
図6を参照すると、本願の実施例のサーバを実現するのに適したコンピュータシステム600の構成概略図が示されている。
図6に示すサーバは一例であり、本願の実施例の機能及び使用範囲を限定するものではない。
【0124】
図6に示すように、コンピュータシステム600は、ROM(Read Only Memory)602に格納されたプログラムや記憶部608からRAM(Random Access Memory)603にロードされたプログラムに従って各種の適切な動作や処理を実行することができるCPU(Central Processing Unit)601を備える。RAM603には、システム600が操作するために必要な各種プログラムやデータも格納されている。CPU601、ROM602及びRAM603は、バス604を介して互いに接続されている。また、バス604には、入出力(I/O、Input/Output)インタフェース605も接続されている。
【0125】
I/Oインタフェース605には、キーボードやマウスなどを含む入力部606と、CRT(Cathode Ray Tube)やLCD(Liquid Crystal Display)、スピーカなどを含む出力部607と、ハードディスクなどを含む記憶部608と、LAN(Local Area Network)カード、モデムなどのネットワークインタフェースカードを含む通信部609とが接続されている。通信部609は、インターネットのようなネットワークを介して通信処理を行う。ドライバ610は、必要に応じてI/Oインタフェース605に接続されてもよい。磁気ディスクや光ディスク、光磁気ディスク、半導体メモリなどのリムーバブルメディア611は、必要に応じてドライブ610にインストールされることにより、リムーバブルメディア711から読み出されたコンピュータプログラムが必要に応じて記憶部608にインストールされる。
【0126】
特に、本開示の実施形態によれば、上記したフローチャートを参照して説明された手順がコンピュータソフトウェアプログラムとして実施されることができる。例えば、本開示の実施例は、フローチャートに示される方法を実行するためのプログラムコードを含むコンピュータ可読媒体に担持されたコンピュータプログラムを含むコンピュータプログラム製品を含む。そのような実施例では、コンピュータプログラムは、通信部609を介してネットワークからダウンロードしてインストールされ、および/またはリムーバブルメディア611からインストールされることができる。このコンピュータプログラムが中央処理手段(CPU)601によって実行されると、本願の方法で限定された上記機能が実行される。なお、本願に記載のコンピュータ可読媒体は、コンピュータ可読信号媒体やコンピュータ可読記憶媒体、又は上記両方の任意の組み合わせであってもよい。コンピュータ可読記憶媒体は、特に限定されないが、例えば、電気や磁気、光、電磁気、赤外線または半導体のシステム、装置またはデバイスであってもよく、またはこれらの任意の組み合わせであってもよい。コンピュータ可読記憶媒体のより具体的な例には、1つまたは複数のリードを有する電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、消去可能プログラマブルリードオンリーメモリ(EPROMまたはフラッシュメモリ)、光ファイバ、ポータブルコンパクトディスク読み取り専用メモリ(CD−ROM)、光記憶デバイス、磁気記憶デバイス、または上述の任意の適切な組合せが含まれるが、これらに限定されない。本願において、コンピュータ可読記憶媒体は、プログラムを含むかまたは格納する任意の有形媒体であってもよく、そのプログラムは、命令を実行するシステム、装置またはデバイスによって使用されてもよく、またはそれらとともに使用されてもよい。本願において、コンピュータ可読信号媒体は、ベースバンドでまたはキャリアの一部として伝搬される、コンピュータ読み取り可能なプログラムコードを担持するデータ信号を含むことができる。このように伝搬されるデータ信号は、電磁信号、光信号、または上述の任意の適切な組み合わせを含む様々な形態とことができるが、これらに限定されない。コンピュータ可読信号媒体は、さらに、命令を実行するシステム、装置またはデバイスによって使用され、またはそれらとともに使用されるプログラムを送信、伝播または伝搬することが可能なコンピュータ可読記憶媒体以外の任意のコンピュータ可読媒体とすることができる。コンピュータ可読媒体に含まれるプログラムコードは、無線や電線、光ケーブル、RFなど、またはそれらの任意の適切な組合せを含む任意の適切な媒体を介して伝送されることができるが、これらに限定されない。
【0127】
本願の操作を実行するためのコンピュータプログラムコードは、Java、Smalltalk、C++などのオブジェクト指向のプログラミング言語、並びに「C」言語または同様のプログラミング言語などの一般的な手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語またはそれらの組合せにより記述されることができる。プログラムコードは、全部がパーソナルコンピュータ上で実行されてもよく、一部がパーソナルコンピュータ上で実行されてもよく、別個のソフトウェアパッケージとして実行されてもよく、一部がパーソナルコンピュータ上で実行され残りの一部がリモートコンピュータ上で実行されてもよく、または全部がリモートコンピュータまたはサーバ上で実行されてもよい。リモートコンピュータに関連する場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意の種類のネットワークを介してパーソナルコンピュータに接続されてもよく、または外部のコンピュータに接続されてもよい(例えば、インターネットサービスプロバイダによりインターネットを介して接続される)。
【0128】
図面におけるフローチャートおよびブロック図は、本願の様々な実施例によるシステム、方法およびコンピュータプログラム製品の実施可能な構成、機能および操作を示す。この点に関して、フローチャートまたはブロック図の各ブロックは、所定の論理機能を実施するための1つまたは複数の実行可能な命令を含むモジュール、ブロックまたはコードの一部を示すことができる。なお、いくつかの置換例としての実施例では、ブロックに示す機能は、図面に示す順序とは異なる順序で実行されてもよい。例えば、接続して示される2つのブロックは、実際に、実質的に並行して実行されてもよく、かかる機能によっては、相互に逆の順序で実行されてもよい。なお、ブロック図および/またはフローチャートにおける各ブロック、ならびにブロック図および/またはフローチャートにおけるブロックの組合せは、所定の機能または操作を実行する専用のハードウェアによるシステムによって実施されてもよく、または専用ハードウェアとコンピュータ命令との組合せによって実施されてもよい。
【0129】
本願の実施例にかかる手段は、ソフトウェアによって実現されてもよく、ハードウェアによって実現されてもよい。説明された手段は、プロセッサに配置されてもよく、例えば、プロセッサは、第1記憶手段と、検索手段と、第1目標参加者決定手段と、第1送信手段と、第1記録手段とを含むようにして説明されてもよい。ここで、これらの手段の名称は、この手段自体を限定するように構成されない場合があり、例えば、第1記憶手段は、「取組みすべきデータを分散型ストレージクラスタに記憶する手段」として説明されてもよい。
【0130】
別の態様として、本願は、上述の実施例で説明された装置に含まれてよく、または、この装置に組み込まれなく、別個に存在してもよいコンピュータ可読媒体をさらに提供する。上記コンピュータ可読媒体は、1つ又は複数のプログラムを担持し、上記1つ又は複数のプログラムが該装置によって実行されると、参加者ノードから受信した第2取組み要求を検証チェックして合格させたことに応答して、取組みすべきデータを分散型ストレージクラスタに記憶することと、分散型ストレージクラスタで受信した第2取組み要求における参加プロジェクト識別子によって指示されるプロジェクトの、参加段階識別子によって指示される段階の各参加者情報を検索することと、検索された各参加者情報の参加者ノード識別子を目標参加者ノード識別子集合として決定することと、取組みすべきデータのダイジェスト情報と、受信した第2取組み要求を送信した参加者ノードの参加者ノード識別子と、受信した第2取組み要求における参加プロジェクト識別子、参加段階識別子と、目標参加者ノード識別子集合とを第3取組み要求としてコンセンサスノードに送信することと、分散型ストレージクラスタに記憶された取組みすべきデータとコンセンサスノードに送信された第3取組み要求との対応関係を記録することを該装置に実行させる。
【0131】
以上の説明は、本願の好適な実施例及び適用される技術原理の説明に過ぎない。当業者であれば、本願に係る発明の範囲は、上記技術的特徴の特定の組み合わせからなる技術的手段に限定されるものではなく、同時に上記発明の主旨から逸脱しない範囲で上記技術的特徴又はその等価な特徴によって任意に組み合わせて形成される他の技術的手段を含むことが理解されるべきである。例えば、上記特徴が本願に開示された(これに限定されない)同様な機能を有する技術的特徴と相互に置換されて形成される技術的手段である。