(57)【特許請求の範囲】
【請求項１】
分析エンジンが実行する方法であって、
分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別することであって、前記要求が、前記ブロックチェーンに関連付けられたスマート・コントラクトで特定され、前記データ・パラメータのいずれを前記ブロックチェーンから抽出するかを識別するために用いられる分析要件を指定する、前記複数のデータ・パラメータを識別することと、
前記データ・パラメータに基づいて１つまたは複数のクエリを作成することと、
前記１つまたは複数のクエリを実行し、前記ブロックチェーンから前記データ・パラメータを取得することと、
前記分析データの要求に関連付けられた１のユーザ・アカウントの前記ブロックチェーン内の１つまたは複数のデータへのアクセスの許可を識別することと、
前記スマート・コントラクトを介して、前記ブロックチェーンから該スマート・コントラクトにより取得されたデータと識別された前記許可に基づいて分析データを生成することと、
前記ブロックチェーンから取得された前記データ・パラメータに基づいて、分析図とのインタフェースをポピュレートすることと、
を含む、方法。
【請求項２】
前記データ・パラメータは、前記データ・パラメータにアクセスするためにブロックチェーン・コンソーシアム・メンバに提供される制限されたアクセス権を含む、請求項１に記載の方法。
【請求項３】
前記制限されたアクセス権は、取得され前記分析図に含まれることが可能な前記データ・パラメータの部分を限定する、請求項２に記載の方法。
【請求項４】
前記分析要件は、前記ブロックチェーンにおけるトランザクション・タイプ、前記ブロックチェーンにおけるトランザクション当事者、および前記ブロックチェーンによって用いられるセキュリティ機能のうちの１つまたは複数に基づく、請求項１に記載の方法。
【請求項５】
既存のブロックチェーン分析ライブラリにアクセスすることと、
前記分析要件に基づき、トランザクション数、資産価値の和、トランザクションの時系列分析、および前記トランザクションの異常検出のうちの１つまたは複数を決定することと、
を更に含む、請求項１に記載の方法。
【請求項６】
円グラフ、線グラフおよび地図グラフのうちの１つまたは複数として前記分析図を表示することを更に含む、請求項５に記載の方法。
【請求項７】
複数のブロックチェーン・データ所有者に自身のブロックチェーン・データにアクセスしてソフトウェア分析モジュールを介して共有ブロックチェーン・パターンを提供することを要求することを更に含む、請求項３に記載の方法。
【請求項８】
装置であって、
分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別するように構成され、前記要求が、前記ブロックチェーンに関連付けられたスマート・コントラクトで特定され、前記データ・パラメータのいずれを前記ブロックチェーンから抽出するかを識別するために用いられる分析要件を指定するものであり、
前記データ・パラメータに基づいて１つまたは複数のクエリを作成し、
前記１つまたは複数のクエリを実行し、前記ブロックチェーンから前記データ・パラメータを取得し、
前記分析データの要求に関連付けられた１のユーザ・アカウントの前記ブロックチェーン内の１つまたは複数のデータへのアクセスの許可を識別し、
前記スマート・コントラクトを介して、前記ブロックチェーンから該スマート・コントラクトにより取得されたデータと識別された前記１つまたは複数の許可に基づいて分析データを生成する
ように構成されたプロセッサと、
前記ブロックチェーンから取得された前記データ・パラメータに基づいてインタフェースをポピュレートするための分析図を送信するように構成された送信機と、
を備える、装置。
【請求項９】
前記データ・パラメータは、前記データ・パラメータにアクセスするためにブロックチェーン・コンソーシアム・メンバに提供される制限されたアクセス権を含む、請求項８に記載の装置。
【請求項１０】
前記制限されたアクセス権は、取得され前記分析図に含まれることが可能な前記データ・パラメータの部分を限定する、請求項９に記載の装置。
【請求項１１】
前記分析要件は、前記ブロックチェーンにおけるトランザクション・タイプ、前記ブロックチェーンにおけるトランザクション当事者、および前記ブロックチェーンによって用いられるセキュリティ機能のうちの１つまたは複数に基づく、請求項８に記載の装置。
【請求項１２】
前記プロセッサは、
既存のブロックチェーン分析ライブラリにアクセスし、
前記分析要件に基づき、トランザクション数、資産価値の和、トランザクションの時系列分析、および前記トランザクションの異常検出のうちの１つまたは複数を決定する、
ように更に構成される、請求項８に記載の装置。
【請求項１３】
前記プロセッサは、
円グラフ、線グラフおよび地図グラフのうちの１つまたは複数として前記分析図を表示するように更に構成される、請求項１２に記載の装置。
【請求項１４】
前記プロセッサは、
複数のブロックチェーン・データ所有者に自身のブロックチェーン・データにアクセスしてソフトウェア分析モジュールを介して共有ブロックチェーン・パターンを提供することを要求するように更に構成される、請求項８に記載の装置。
【請求項１５】
コンピュータ・プログラムであって、請求項１ないし７のいずれか１項に記載の方法の各ステップをコンピュータに実行させるための、コンピュータ・プログラム。
【請求項１６】
請求項１５に記載のコンピュータ・プログラムを記録した、コンピュータ可読ストレージ媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロックチェーン内のデータを監査およびマイニングすることに関し、より詳細には、カスタマイズされた要件に従って特定の情報を識別し分析結果を生成することに関する。
【背景技術】
【０００２】
任意の種類の情報を記憶するためのパブリック台帳（ledger）として、ブロックチェーンを使用することができる。ブロックチェーンは主として金融トランザクションに使用されるが、資産（すなわち、製品、パッケージ、サービス、ステータス等）を含む、任意のタイプの情報を記憶することができる。ブロックチェーンを使用して、任意のタイプの情報をブロックチェーンの不変台帳にセキュアに記憶することができる。分散型コンセンサス（consensus）は、１つの中央データベースを使用してトランザクション妥当性を規定する場合等の従来の集中型コンセンサスとは異なる。分散方式は、権限および信用を分散型ネットワークに委譲し、そのネットワークのノードがそれぞれのトランザクションをパブリック「ブロック」に連続的かつ順次に記録することができるようにし、ブロックチェーンと呼ばれる固有の「チェーン」を作成する。ハッシュ・コードによる暗号技術を使用して、トランザクション・ソースの認証をセキュアにするとともに、中央の介在の必要をなくす。
【０００３】
ブロックチェーンは、厳しいプライバシおよびセキュリティ制御を用いて設計された、許可型分散データシステムであるため、複数の当事者に洞察をもたらす分析結果を作成することは容易でない。例えば、例として、当事者のビジネス・トランザクションおよび挙動が他の当事者と比較してどうであるか等の、利害関係者によって提起される問題は、ブロックチェーン内のデータを調べ、当事者の、他の当事者と比較した外れ値／異常値パターンを決定することによって回答することができる。
【０００４】
ほとんどの従来の構成は、データが比較的集中型であり、完全な許可またはより制約的でない許可を有すると仮定するように設計されている。分析結果は、制限なしでデータから計算することができる。ほとんどの分析手法は、データに起因する懸念事項に焦点を当て、ブロックチェーンは、データを、特定の特性、スマート・コントラクト、参加者および他の特徴と結合する。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ブロックチェーン・データからの分析結果の自動生成のための方法、装置を提供する。
【課題を解決するための手段】
【０００６】
本発明を具現化する１つの方法は、分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別することと、データ・パラメータに基づいて１つまたは複数のクエリを作成することと、１つまたは複数のクエリを実行し、ブロックチェーンからデータ・パラメータを取得することと、分析データの要求に関連付けられたユーザ・アカウントの１つまたは複数の許可を識別することと、ブロックチェーンから取得されたデータ・パラメータに基づいて、分析図とのインタフェースをポピュレートする（populate）こととを含む。
【０００７】
本発明の別の実施形態では、分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別し、データ・パラメータに基づいて１つまたは複数のクエリを作成し、１つまたは複数のクエリを実行し、ブロックチェーンからデータ・パラメータを取得し、分析データの要求に関連付けられたユーザ・アカウントの１つまたは複数の許可を識別するように構成されたプロセッサと、ブロックチェーンから取得されたデータ・パラメータに基づいてインタフェースをポピュレートするための分析図を送信するように構成された送信機とを提供する装置が提供される。
【０００８】
本発明の更に別の実施形態は、命令を記憶するように構成された非一過性コンピュータ可読ストレージ媒体を含み、この命令は、実行されると、プロセッサに、分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別することと、データ・パラメータに基づいて１つまたは複数のクエリを作成することと、１つまたは複数のクエリを実行し、ブロックチェーンからデータ・パラメータを取得することと、分析データの要求に関連付けられたユーザ・アカウントの１つまたは複数の許可を識別することと、ブロックチェーンから取得されたデータ・パラメータに基づいて、分析図とのインタフェースをポピュレートすることとを実行させる。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施形態による、ブロックチェーン分析データ・モデルの論理図を示す。
【図２】本発明の実施形態による、ブロックチェーン分析データ・モデルのための組込み分析モデル（built-in analytic model）およびカスタム分析モデル（customanalytic model）の論理図を示す。
【図３】本発明の実施形態による、ユーザ・デバイスとブロックチェーン分析構成との間のインタラクションのシステムシグナリング図を示す。
【図４】本発明の実施形態による、ブロックチェーンにおけるトランザクション発注を管理する例示的な方法のフロー図を示す。
【図５】本発明の実施形態のうちの１つまたは複数をサポートするように構成された例示的なネットワーク・エンティティを示す。
【発明を実施するための形態】
【００１０】
本明細書で一般的に説明し、図面に示す本発明の構成要素は、多様な異なる構成で配置構成および設計することができることが容易に理解されるであろう。したがって、添付図面に示されている本発明の実施形態の以下の詳細な説明は、特許請求の範囲に記載されている本出願の範囲を限定することを意図したものではなく、本発明の選択された実施形態を代表しているに過ぎない。
【００１１】
本明細書全体を通して記載されている本発明の特徴、構造または特性は、本発明の１つまたは複数の実施形態において任意の適切な方式で組み合わせてもよい。例えば、本明細書全体を通じて、「例示の実施形態」、「実施形態によっては」という語句またはその他の同様の表現の使用は、本発明の実施形態に関連して記載されている特定の特徴、構造または特性が、本発明の少なくとも１つの実施形態に含まれ得ることを指す。したがって、本明細書全体を通じて「例示の実施形態」、「実施形態によっては」、「他の実施形態では」という語句またはその他の同様の表現は、必ずしも全てが本発明の実施形態の同じグループを指すとは限らず、記載されている特徴、構造または特性を本発明の１つまたは複数の実施形態において任意の適切な方式で組み合わせてもよい。
【００１２】
更に、本発明の実施形態の説明で「メッセージ」という用語を使用していることがあるが、本出願は、パケット、フレーム、データグラム等の多くのタイプのネットワーク・データに適用することができる。「メッセージ」という用語は、パケット、フレーム、データグラムおよびこれらのあらゆる均等物も含む。また、本発明の実施形態において特定のタイプのメッセージおよびシグナリングを示すことがあるが、それらは特定のタイプのメッセージには限定されず、本出願は特定のタイプのシグナリングには限定されない。
【００１３】
本発明の実施形態は、プライベート「コンソーシアム」の一部とすることができるピア・デバイスまたは登録された（registered）アカウントのブロックチェーンおよび対応するブロックチェーン・ネットワークを提供する。ブロックチェーン・コンソーシアムの名簿登録された（enrolled）／登録されたメンバは、コンソーシアムの全ての名簿登録されたメンバに対し様々な方法で分析を提供／共有／変更／アップロード／ダウンロードすることができる。例えば、集約されたメトリックス等の所定の組込み分析を、特定の当事者に関する情報を開示することなく、全てのメンバに共有することができる。例えば、特定の商品またはよく知られた一般的な製品もしくはサービスについて、全ての対応可能な当事者からの平均価格を得ることができる。そのような情報は、統合性マッピングのために政府機関が容易に入手可能であり得る。例えば、連邦取引委員会（ＦＴＣ）は、反トラスト問題のために、製品の不公正な取引方法または価格決定に関心を有する場合がある。製品販売の日付、時間、量等を迅速に確認およびマッピングして、そのような構成における疑わしい候補につながる異常を識別することができる。ある当事者の独自の製品価格を、他の当事者の製品価格と比較して、全てのそのような関連データのグラフまたは視覚化をもたらす等の、ブロックチェーンに対する様々な当事者にわたるカスタム分析は、明確な許可制御構成概念（permission control construct）を通じて得ることができる。
【００１４】
この構成において、ブロックチェーン・メンバまたはピアのブロックチェーンおよびネットワークは、全てのそのようなメンバを、メンバの特権ステータスに従って、そのメンバのデータおよび他のメンバのデータにアクセスすることができる特権を有する当事者として具現化する、割り当てられた「コンソーシアム」すなわちメンバシップ・グループの一部とすることができる。そのような構成は、明確な許可制御を用いて複数の当事者にわたる分析を提供することができる。ユーザの分析要件は、様々なタイプのデータ要件からのメトリックスを含むことができる。取得されると、分析結果を作成し、ダッシュボードに表示することができる。ダッシュボードもまた、所定の基準、ユーザ・アカウント・プロフィール・プリファレンス、またはそのようなダッシュボード・データを表示するのに参照および利用される他のプリファレンスに従ってカスタマイズすることができる。
【００１５】
本発明の実施形態は、明確な「分析レベル」許可制御（例えば、プライバシ保護アクセス）を用いた内在のまたはカスタム構成タイプの組込み分析を有する、ブロックチェーン等の信用された台帳も提供することができる。特定の集約された挙動に関する分析結果を、分析目的で用い、ブロックチェーンに対し名簿登録された当事者と共有することができる。分析結果は、「トランザクション」のタイプとして設計することができ、当事者が許可制御を用いて要求することができる。通常、ブロックチェーンは、タイムスタンプを付されたデータ、現在の状態および履歴状態データならびに台帳データ、パートナー間／組織間データ、プロセスのログ、強力なアイデンティティのプールを提供することができ、データは検証が必要ない、既に合意され信用されたデータである。本発明を具現化する分析データ手法は、ブロックチェーン仕様を利用し、エンド・ツー・エンドのカスタマイズ可能な分析結果を作成する、ソリューション固有の分析ソリューションを生成するための自動化メカニズムを提供する。
【００１６】
図１は、本発明の実施形態によるブロックチェーン分析データ・モデルの論理図を示す。図１を参照すると、構成１００は、ブロックチェーン・ソリューション仕様１１２がユーザ分析要件１１４と結合されて分析データが作成されるプロセスを含む。この手法において、分析データの要求は、データをマイニングし、理解できる結果を作成する前に、分析許可を付与する（１１６）許可確認を必要とする場合がある。次に、メトリックスが定義され（１１８）、メトリックス仕様が作成され（１２２）、これを用いて、トピック、カテゴリ、パラメータ等によって取得されたデータが処理される。次に、クエリおよび集約データならびに他のメトリックス１３４が、インデックス・データ１３２および様々なデータソース１４２〜１４６に基づいて作成される。ブロックチェーン・データまたは外部データ１４２は、クエリ動作のために利用可能なデータのデータバンクである。組込み分析１４４およびカスタム分析ライブラリ１４６は、ブロックチェーン・システム構成に記憶し、受信されるデータ要求ごとに取得および処理することができる。結果は、ユーザダッシュボード１３６に転送することができる通知、表示データ／視覚化データおよび他の分析データを含む。
【００１７】
図１において、システム構成はブロックチェーン・ランタイム（blockchain runtime）と統合され、自動作成されたデータ・コネクタ、クエリおよびデータ取得メカニズム、自動生成された分析モジュールおよび自動生成されたカスタマイズ可能なダッシュボードを含む。特権アクセス付与は、特定の分析結果を作成する目的で制限されたアクセスを提供することができ、これは、参加している当事者のプライバシの懸念事項／プリファレンスに従って望ましい場合がある。１つの例では、ブロックチェーン参加者は、指定された時間フレーム（例えば、最近２４時間、７日、３０日等）にわたる、集約レベルの時系列分析結果（例えば、時間、製品タイプ等によって集約される）のみについてデータを供給することを望む場合があり、データの集約以外のいかなる個々のトランザクションレベルの情報も開示することを望まない場合がある。トランザクションデータは、セキュリティ要件ごとにパースすることができ、このため、未加工データがトランザクションから抽出され、管理データおよびビジネス関連データは、セキュリティ違反を回避するために除外することができる。ブロックチェーン・コンソーシアムの参加者は、自身のデータを、いかなるクラスタリングおよび予測モデリングの目的でも提供することを望まない場合がある。ユーザは、コンソーシアムの規則およびユーザ独自のユーザ・アカウント・プリファレンスに基づいて自身のデータへのアクセスを制限することができる。
【００１８】
ユーザ分析結果要件は、資産データ構造、スマート・コントラクト／トランザクション・タイプ、当事者、および分析レベル許可を完全に順守するセキュリティモデルを含むブロックチェーン仕様に基づいてメトリックスとして定義される。メトリックス計算のために必要とされる属性は、ブロックチェーン／外部データソース１４２においてインデックス付けされる。インデックス付けされたデータ１３２は、他のメンバおよび認証された第三者によって所望された特定のタイプの分析結果を提供することを全ての参加者が合意したデータとすることができる。インデックス付けされたデータのパラメータ化されたクエリは、表示目的でメトリックスを計算するように作成される。一般的に用いられるブロックチェーン分析のためのいくつかの組込み機能は、トランザクションのカウント、資産価値の合算、トランザクションの時系列分析、トランザクションの異常検出等を含むことができる。
【００１９】
図２は、例示的な実施形態による、ブロックチェーン分析データ・モデルのための組込み分析モデルまたはカスタム分析モデルの論理図を示す。図２を参照すると、構成１５０は、２つのシナリオを含む。分析レベル許可の付与１５２は、組込み分析シナリオを提供することができ、組込み分析シナリオは、単純な命令を用いて、スマート・コントラクトを介して組込みデータ分析結果をクエリする汎用インタフェース「ｑｕｅｒｙ＿ａｎａｌｙｔｉｃｓ」を起動することを含み、組込みデータ分析結果はデータ・インデックスとして記憶される（１５３）。更に、データ・インデックスが作成される必要があるとき（１６２）、特殊な計算「ｃｏｍｐｕｔｅ＿ｒａｎｋ＿ｏｆ＿ａｖｇ＿ｃｏｓｔ」を含むスマート・コントラクトが生成され（１６４）、次に、スマート・コントラクトを展開することができ（１６６）、スマート・コントラクトを起動する命令を生成することができる（１６８）。
【００２０】
インデックス・データは、特定のメトリックスのために用いられるが、厳しい許可制御を有する事前登録されたデータまたはキャッシュされたデータである。動作時に、メトリックスをリアルタイムで計算するために全てのトランザクションまたは台帳データを走査することは時間がかかる。ブロックチェーンは、分析要件に基づいて属性を「インデックス付け」することができる。例えば、ブロックチェーンが、登録された当事者への組込み分析のうちの１つとして「各国への出荷ごとの平均貨物コスト」を提供するために用いられる場合、分析エンジンは、コミット時に各出荷トランザクションから「貨物コスト」、「出荷ＩＤ」、「ｓｈｉｐＴｏＣｏｕｎｔｒｙ」、およびタイムスタンプ属性を抽出し、そのデータを、データ・タプル＜ｆｒｅｉｇｈｔｃｏｓｔ，ｓｈｉｐｍｅｎｔ＿ｉｄ，ｃｏｕｎｔｒｙ，ｄａｔａｔｉｍｅ＞としてデータベース・テーブルに記憶することができる。当事者が、クエリ・パラメータ（例えば、時間窓、国等）を有するメトリックスを要求するとき、分析エンジンは、この要求をこのテーブルへのクエリに変換する。許可構成概念が「組込み分析」である場合、クエリには、メトリックスを取得するための適切なパラメータが提供される。このメトリックスは、周期的に計算し、名簿登録された当事者がクエリするためにブロックチェーン内に記憶することができる。当事者は、提供されたパラメータを用いて一般的な「ｑｕｅｒｙ＿ａｎａｌｙｔｉｃｓ」のスマート・コントラクトを起動して、分析結果を取得する。許可構成概念が「カスタム分析」である場合、分析エンジンは、まず、マッチするデータ・インデックスが見つからないとき、キー／値／フィルタ・データ仕様に基づいてデータをインデックス付けする。データ・インデックス、メトリックス計算仕様に基づいてスマート・コントラクトが生成される。スマート・コントラクトが展開され、クエリ仕様に基づいて、スマート・コントラクトを起動するための命令が提供される。例として、クエリに特定の当事者および他の当事者が関与することが挙げられる。このメトリックスを正しいアイデンティティのために生成することができることを確実にするために、スマート・コントラクトを生成することができる。
【００２１】
メトリックスを計算するための「組込み」分析およびプログラムコードまたは機能／ライブラリ（例えば、ｒｅｄｕｃｅ＿ａｖｇ）を作成し、インストールすることができる。メトリックスを記憶するための様々なオプションが存在する。例えば、分析エンジン構成要素は、全てのインデックス付けされたデータおよび機能を記憶する、ブロックチェーン内の「仮想」当事者とみなすことができる。あるいは、そのようなデータは、個々の当事者で記憶してもよい。スマート・コントラクトは、当事者のための何らかのロジックを実施するプログラムである。スマート・コントラクトは、当事者がブロックチェーン内のデータにアクセスするためのインタフェース／ＡＰＩである。ブロックチェーンは、スマート・コントラクトを実行するための独自の手順を有する。分析のために、スマート・コントラクトにアクセスして、ブロックチェーン・データにアクセスし、計算を実行することができる。分析を実行するために、当事者に必要とされるのは、命令されるとおりに適切なパラメータを用いてスマート・コントラクトを起動することのみである。
【００２２】
構成可能なダッシュボードを用いて、限定ではないが、円、線、マップ等を含む様々なスタイルでメトリックスを表示することができる。ブロックチェーン構成は、以下のデータ要素、すなわち、スマート・コントラクト、トランザクション・タイプ、資産データ・モデル、強力なアイデンティティおよびセキュリティ／許可モデルを有する当事者、記録およびプロセスに関するタイムスタンプを付されたデータを含むことができる。分析は、タイムスタンプを有するデータ（例えば、トランザクション、資産更新等）のための時系列／傾向分析等の仕様に基づいて定義することができる。１つの例は、資産／トランザクションパターン、異常、トランザクションを通じて資産がどのように使用／更新されるかに関するパターンを識別しようとすることである場合があり、これには、インターバル、頻度、当事者等が含まれる。また、他の分析検討事項は、確立されたパターンと比較した異常、当事者間の共通挙動、または何らかの資産価値（例えば、最も安価な製品）、トランザクション量等による当事者のランクを含む、他の当事者と比較した個々の挙動を含む。
【００２３】
特定の当事者、ブロックチェーン・ネットワーク構成に関する情報を開示しない組込みメトリックスは、これらのメトリックスを計算し、データベースに記憶することができる。許可された当事者は、クエリ・トランザクションを通じてメトリックスをクエリすることができる。特定の当事者に関与するメトリックスについて、スマート・コントラクトが作成され、次に、全ての当事者から承認が得られる。スマート・コントラクト作成およびブロックチェーン・データへのアクセスの承認は、ブロックチェーン・アプリケーション作成ツール、例えばｆａｂｒｉｃ  ｃｏｍｐｏｓｅｒを用いて生成することができる。タイムスタンプを有するデータは、季節性パターン等の時系列分析、異常検出、予報等を許可することができる。また、全ての履歴データ（すなわち、「台帳」）は、一旦ブロックチェーンにコミットされると変更することができないため、そのようなデータから計算された分析結果は、権威があり、信用することができる。例えば、ユーザの目的の組は、識別されるメトリックスの組とすることができる。エクセル表に示すように、各メトリックスは、必要とされる属性に更に分解される。メトリックスを組込み分析から供給することができる場合、データ属性は、ブロックチェーン構成要素（例えば、分析エンジン）によって取得される。メトリックスがスマート・コントラクトを通じてのみ得ることができる場合、データを得るためのスマート・コントラクト起動手順が続く。クエリは、何らかの計算を実行するように命令されるＡＰＩまたはプログラムとすることができる。このＡＰＩまたはプログラムは、例えば、当事者が所与の地域ごとの平均貨物コストをクエリする場合、以下等のパラメータを用いてクエリを発行することができる。
｛
ｄａｔａｉｎｄｅｘ：  ”ｓｈｉｐｍｅｎｔ＿ｆｒｅｉｇｈｔｃｏｓｔ＿ｒｅｇｉｏｎ”（このメトリックスに必要な属性がインデックス付けされるかまたは収集された），
ｓｔａｒｔｄａｔｅ：  ［２０１７，２，１］，
ｅｎｄｄａｔｅ：  ［２０１７，３，１］
ｒｅｄｕｃｅ＿ｆｕｎ：  ｒｅｄｕｃｅ＿ａｖｇ
｝．
【００２４】
この例において、ＡＰＩは、上記で示したクエリ・ステートメントを受信すると、「ｄａｔａｉｎｄｅｘ」からデータを取得し、データ範囲フィルタを適用し、次に、所定であるかまたはユーザにより定義されることが可能な「ｒｅｄｕｃｅ＿ｆｕｎ」関数を適用する。日付、変数および他のパラメータは、全ての入手可能な平均貨物コスト情報の平均を特定するように定義される。生成された分析結果は、偏差量を容易に特定し、利害関係者と共有することができるように、グラフ上の業界標準値（industry standard）の隣に数値インジケータを配置することができる。１つの手法は、通知をオートコンプリートすることである。例えば、動作のバイス・プレジデントが、企業の任意のコストが１０パーセントを超えて業界標準値を超過するときを知ることに興味がある場合、分析結果を生成し、閾値パーセンテージ（０．１０）と比較することができ、閾値を（０．１０を超えて）超過している場合、自動化データに基づいてサプライ・チェーンへの手動変更により数を低減することができるように、全ての利害関係者に通知を送信して警告することができる。
【００２５】
例示的なメトリックス構成は、３０日の期間における各国に対する出荷ごとの平均貨物コストとして定義することができる。別の懸念事項は、３０日の期間における、同じ地理内の全ての輸送業者間の出荷ごとの平均貨物コストの一部としてのビジネスのランクであり得る。各メトリックスは、｛キー、値｝対として定義することができ、ここで、キーおよび値は、属性に対するマップ・メトリックス（キー、値）対との複合体であり、これは、キー／値／フィルタ・データ仕様を定義することができる。キー／値／フィルタは、データがブロックチェーン・データからどのように取得されることになるかを指定する。また、ブロックチェーンに対する、組込み分析モデルまたはスマート・コントラクトあるいはその両方等の許可構成概念を決定するための決定を行うこともできる。許可構成概念が「組込み分析」である例では、クエリには、メトリックスを取得するための適切なパラメータが提供される。例えば、クエリ（Ｑ１）は、いかなる特定の当事者情報（すなわち、商号）も開示しない。このメトリックスは、名簿登録された当事者がクエリするために、周期的に計算され、ブロックチェーン内に記憶されることが可能である。当事者は、提供されたパラメータを用いて汎用「クエリ」スマート・コントラクトを起動し、分析結果を取得することができる。メトリックス計算関数は、キーごとの「ｒｅｄｕｃｅ＿ａｖｇ」、値における第１の成分のカウント、値における第２の成分の合算、そして和をカウントで除算して平均を得ることであり得る。
【００２６】
許可構成概念が「スマート・コントラクト」である場合、キー／値／フィルタ・データ仕様、メトリックス計算仕様およびクエリ仕様に基づいてスマート・コントラクトが生成される。また、スマート・コントラクトを展開／実行するために、必要な許可が付与される必要がある。例えば、クエリ（Ｑ２）には、特定の当事者および他の当事者が関与する場合がある。スマート・コントラクトは、妥当性確認された当事者がそのようなアクセスを有し、妥当性確認なしの当事者がその権限を有しないことを確実にすることによって、このメトリックスを適切なアイデンティティのために生成することができることを確実にするために生成することができる。
【００２７】
例示的なスマート・コントラクトは、組込み分析に対するクエリを含むことができる。例は以下とすることができる。
【００２８】
ｐｕｂｌｉｃ  Ｓｔｒｉｎｇ  ｑｕｅｒｙ（ＣｈａｉｎｃｏｄｅＳｔｕｂ  ｓｔｕｂ，Ｓｔｒｉｎｇ  ｆｕｎｃｔｉｏｎ，Ｓｔｒｉｎｇ［］ａｒｇｓ）｛
擬似コード：
Ｓｔｒｉｎｇ［］アレイが組込み分析結果を取得するのに必要なパラメータを指定する、例えば、
｛
ｄａｔａｉｎｄｅｘ：”ｓｈｉｐｍｅｎｔ＿ｆｒｅｉｇｈｔｃｏｓｔ＿ｒｅｇｉｏｎ”（このメトリックスに必要な属性がインデックス付けされた），
ｓｔａｒｔｄａｔｅ：［２０１７，２，１］，
ｅｎｄｄａｔｅ：［２０１７，３，１］
ｒｅｄｕｃｅ＿ｆｕｎ：ｒｅｄｕｃｅ＿ａｖｇ
｝
ユーザ許可が検証される。検証後、指定された日付範囲内の組込みメトリックスが返される｝．
【００２９】
カスタム分析手法の場合、例は以下であり得る：
ｐｕｂｌｉｃ  Ｓｔｒｉｎｇ  ｃｏｍｐｕｔｅ＿ｍｅｔｒｉｃｓ（ＣｈａｉｎｃｏｄｅＳｔｕｂ  ｓｔｕｂ，Ｓｔｒｉｎｇ  ｆｕｎｃｔｉｏｎ，Ｓｔｒｉｎｇ［］ａｒｇｓ）｛
擬似コード：
Ｓｔｒｉｎｇ［］アレイがメトリックス指定パラメータ、例えば、キー／値／フィルタを指定する
キー／値／フィルタ属性データにアクセスするための承認を得る
メトリックス仕様において定義されたロジックに基づいてメトリックスを計算する
メトリックスを返す
｝．
【００３０】
図３は、例示的な実施形態による、ユーザ・デバイスとブロックチェーン分析構成との間のインタラクションのシステムシグナリング図を示す。図３を参照すると、システム構成２００は、ユーザ・デバイスまたは他のコンピューティング・デバイス等の分析要件デバイス２１０を含む。システムは、ブロックチェーン・データ・ソース２３０から取得したデータに基づいて分析実現を実行するソフトウェアまたはハードウェア・モジュールあるいはその両方である分析エンジン２００も含むことができる。動作時に、データ要求２１２は、自動的に、または特定のユーザ要求単位で開始することができる。分析エンジン２２０は、要求を受信し、要求の要件２１４、必要とされる許可および利用可能な権限２１６を特定し、次にメトリックス２１８を、データ処理を管理し実現可能なデータを提供するために用いられる一連のコマンド、関数またはサブプログラムとして定義することができる。次に、クエリを策定し、ブロックチェーン管理エンティティに送信することができ（２２２）、ブロックチェーン管理エンティティは、次に、必要とされるデータ（すなわち、インデックス・データ、集約データ等）２２４を取得し、そのようなデータを処理のためにエンジン２２０に転送する（２２６）。次に、メトリックスプロセッサモジュールにデータを挿入することによってメトリックスを計算することができ（２２８）、次に、実現可能なデータを用いてダッシュボードをポピュレートして（２３２）、サマリ、グラフ、平均等を提供することができる。
【００３１】
図４は、例示的な実施形態による、ブロックチェーンにおけるトランザクション発注を管理する例示的な方法の流れ図３００を示す。図４を参照すると、本方法は、分析データの要求に基づいてブロックチェーンから抽出する複数のデータ・パラメータを識別すること（３１２）と、データ・パラメータに基づいて１つまたは複数のクエリを作成すること（３１４）と、１つまたは複数のクエリを実行し、ブロックチェーンからデータ・パラメータを取得すること（３１６）と、分析データの要求に関連付けられたユーザ・アカウントの１つまたは複数の許可を識別すること（３１８）と、ブロックチェーンから取得されたデータ・パラメータに基づいて、分析図とのインタフェースをポピュレートすること（３２２）と、を含むことができる。データ・パラメータは、このデータ・パラメータにアクセスするためにブロックチェーン・コンソーシアム・メンバに提供される制限されたアクセス権を含むことができる。制限されたアクセス権は、取得され分析図に含まれることが可能なデータ・パラメータの部分を限定する。本方法は、データ・パラメータのいずれをブロックチェーンから抽出するかを識別するのに用いられる分析要件を識別することも含むことができる。分析要件は、ブロックチェーンにおいて用いられるスマート・コントラクト、ブロックチェーンにおけるトランザクション・タイプ、ブロックチェーンにおけるトランザクションに対する当事者、およびブロックチェーンによって用いられるセキュリティ機能のうちの１つまたは複数に基づく。本方法は、既存のブロックチェーン分析ライブラリにアクセスし、トランザクション数、資産価値の和、トランザクションの時系列分析、およびトランザクションの異常検出のうちの１つまたは複数を特定することも含むことができる。本方法は、円グラフ、線グラフおよび地図グラフのうちの１つまたは複数として分析図を表示することも提供することができる。本方法は、複数のブロックチェーン・データ所有者に自身のブロックチェーン・データにアクセスしてソフトウェア分析モジュールを介して共有ブロックチェーン・パターンを提供することを要求することを更に提供することができる。
【００３２】
本発明の上記の実施形態は、ハードウェアで、プロセッサにより実行されるコンピュータプログラムで、ファームウェアで、または上記の組み合わせで実施することができる。コンピュータプログラムは、ストレージ媒体等のコンピュータ可読媒体上で具現化することができる。例えば、コンピュータプログラムは、ランダム・アクセス・メモリ（「ＲＡＭ」）、フラッシュメモリ、読み取り専用メモリ（「ＲＯＭ」）、消去可能プログラマブル読み取り専用メモリ（「ＥＰＲＯＭ」）、電気的消去可能プログラマブル読み取り専用メモリ（「ＥＥＰＲＯＭ」）、レジスタ、ハードディスク、リムーバブルディスク、コンパクトディスク読み取り専用メモリ（「ＣＤ−ＲＯＭ」）、または、当該技術分野において既知のストレージ媒体の他の任意の形態で存在してもよい。
【００３３】
例示的なストレージ媒体は、プロセッサがストレージ媒体から情報を読み取り、ストレージ媒体に情報を書き込むことができるように、プロセッサに結合することができる。代替として、ストレージ媒体は、プロセッサと一体であってもよい。プロセッサおよびストレージ媒体は、特定用途向け集積回路（「ＡＳＩＣ」）中に存在することができる。代替として、プロセッサおよびストレージ媒体は、ディスクリートな構成要素として存在してもよい。例えば、図５は、上記の構成要素のいずれかを表すかまたはこれに統合すること等ができる例示的なネットワーク要素４００を示す。
【００３４】
図５に示すように、メモリ４１０およびプロセッサ４２０は、本明細書に記載のアプリケーションまたは動作の組を実行するのに使用される、ネットワーク・エンティティ４００の個別の構成要素とすることができる。アプリケーションは、ソフトウェアにおいてプロセッサ４２０が理解するコンピュータ言語でコーディングすることができ、メモリ４１０等のコンピュータ可読媒体に記憶することができる。コンピュータ可読媒体は、ソフトウェアを記憶することができるメモリ等の有形ハードウェア構成要素を含む、非一過性コンピュータ可読媒体であってもよい。更に、ソフトウェア・モジュール４３０は、ネットワーク・エンティティ４００の一部であり、本明細書に記載の機能のうちの１つまたは複数を達成するようにプロセッサ４２０によって実行することができるソフトウェア命令を含む、別の個別のエンティティであってもよい。上記のネットワーク・エンティティ４００の構成要素に加えて、ネットワーク・エンティティ４００は、通信信号（図示せず）を受信し送信するように構成された、送信機と受信機との対も有することができる。
【００３５】
本発明の実施形態は、添付図面に示し、上記の詳細な説明で説明したが、本出願は開示した実施形態には限定されず、以下の特許請求の範囲に記載され、定義される多くの再構成、変更および代替が可能であることが理解されるであろう。例えば、様々な図面のシステムの機能は本明細書に記載のモジュールもしくは構成要素のうちの１つもしくは複数によって、または分散アーキテクチャで実行することができ、送信機、受信機または両者の対を含むことができる。例えば、個々のモジュールによって実行される機能の全部または一部がこれらのモジュールのうちの１つまたは複数のモジュールによって実行されてもよい。更に、本明細書に記載の機能は、様々な時点に、モジュールまたは構成要素の内部または外部の様々な事象に関連して実行することができる。また、様々なモジュール間で送信される情報は、データ・ネットワーク、インターネット、音声ネットワーク、インターネット・プロトコル・ネットワーク、無線デバイス、有線デバイスのうちの少なくとも１つを介して、または複数のプロトコルを介して、あるいはこれらの両方によってモジュール間で送信することができる。また、モジュールのうちのいずれかによって送信または受信されるメッセージは、直接、または他のモジュールのうちの１つまたは複数を介して、あるいはその両方によって送信または受信することができる。
【００３６】
当業者は、「システム」がパーソナル・コンピュータ、サーバ、コンソール、携帯情報端末（ＰＤＡ）、携帯電話、タブレット・コンピューティング・デバイス、スマートフォン、もしくはその他の任意の適切なコンピューティング・デバイス、またはデバイスの組み合わせとして具現化することができることを理解するであろう。上述の機能を「システム」によって実行されるものとして提示したことは、本出願の範囲をいかなる意味でも限定することを意図したものではなく、多くの実施形態の一例を示すことを意図したものである。実際に、本明細書で開示されている方法、システムおよび装置は、コンピューティング技術と整合する局所化形態または分散形態で実装することができる。
【００３７】
実装の独立性をよりはっきりと強調するために、本明細書に記載のシステムの特徴の一部をモジュールとして示したことに留意されたい。例えば、モジュールは、カスタム超大規模集積（ＶＬＳＩ）回路またはゲート・アレイを含むハードウェア回路、ロジック・チップ等のオフ・ザ・シェルフ半導体、トランジスタ、またはその他の個別構成要素として実装可能である。モジュールは、フィールド・プログラマブル・ゲート・アレイ、プログラマブル・アレイ・ロジック、プログラマブル・ロジック・デバイス、グラフィクス処理ユニット等のプログラマブル・ハードウェア・デバイスで実装することもできる。
【００３８】
モジュールは、様々な種類のプロセッサによる実行のために少なくとも一部をソフトウェアで実装することもできる。例えば、実行可能コードの識別されるユニットは、例えばオブジェクト、プロシージャまたは関数として編成可能なコンピュータ命令の１つまたは複数の物理ブロックまたは論理ブロックを含むことができる。しかし、識別されるモジュールの実行可能コードは物理的に一緒に配置される必要はなく、論理的に一緒に結合されるとモジュールを構成し、モジュールの言及された目的を実現する、異なる場所に記憶された別々の命令を含んでもよい。また、モジュールは、例えばハード・ディスク・ドライブ、フラッシュ・デバイス、ランダム・アクセス・メモリ（ＲＡＭ）、テープ、またはデータを記憶するために使用されるその他の任意の媒体とすることができるコンピュータ可読媒体に記憶してもよい。
【００３９】
実際に、実行可能コードのモジュールは、単一の命令または多くの命令とすることができ、異なるプログラムにわたり、いくつかのメモリ・デバイスにわたっていくつかの異なるコード区分に均等に分散されてもよい。同様に、本明細書ではモジュール内でオペレーショナル・データを識別し、示している場合があり、これは、任意の適合する形態で具現化可能であり、任意の適切なタイプのデータ構造内で編成可能である。オペレーショナル・データは、単一のデータ・セットとしてまとめてもよく、または、異なる記憶デバイスを含む異なる場所に分散してもよく、少なくとも一部が、単にシステムまたはネットワーク上の電子信号として存在してもよい。
【００４０】
本明細書で一般的に説明し、図面に示されている本出願の構成要素は、多様な異なる構成で構成し、設計することができることが容易にわかるであろう。したがって、本発明の実施形態の詳細な説明は、特許請求の範囲に記載されている本発明の範囲を限定することを意図したものではなく、単に本出願の選択された実施形態を代表しているに過ぎない。
【００４１】
当業者は、上記が、異なる順序のステップを使用して、または開示されているものとは異なる構成におけるハードウェア要素を使用して、あるいはその両方により実践してもよいことを容易に理解するであろう。したがって、本発明について上記の好ましい実施形態に基づいて説明したが、特定の変更、変形および代替構成が明らかとなることが、当業者には明らかであろう。
【００４２】
本発明の好ましい実施形態について説明したが、記載されている本発明の実施形態は例示に過ぎず、本発明の範囲は、（例えばプロトコル、ハードウェア・デバイス、ソフトウェア・プラットフォーム等）その全ての均等物および変更を含めて考慮した場合の添付の特許請求の範囲によってのみ定義されるべきであることを理解すべきである。
【図１】
0006899065.tif 000002
【図２】
0006899065.tif 000003
【図３】
0006899065.tif 000004
【図４】
0006899065.tif 000005
【図５】
0006899065.tif 000006