(57)【特許請求の範囲】
【請求項１】
コンピュータの処理により安全なデバイスにアクセスするユーザを認証する方法であって、
コンピューティング・デバイスによって、安全なデバイスへのアクセスの要求の一部としてユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取ることと、
前記コンピューティング・デバイスによって、前記バイオメトリクス・データをスクランブルするために前記バイオメトリクス・データに不可逆関数を適用することと、
前記コンピューティング・デバイスによって、スクランブル化バイオメトリクス・データが前記スクランブル化バイオメトリクス・データの事前登録版と一致するか否かを判断することと、
前記コンピューティング・デバイスによって、前記スクランブル化バイオメトリクス・データが前記スクランブル化バイオメトリクス・データの前記事前登録版と一致するとの判断に基づいて、前記ユーザの認証を要求する前記安全なデバイスに認証メッセージを提供することと
を含み、前記認証メッセージを提供することは、前記ユーザ・デバイスのユーザに前記安全なデバイスへのアクセスを提供することを含み、さらに、
前記ユーザに関連付けられた認知状態データを判断することと、
前記認知状態データを判断することに基づいて前記認知状態データに前記不可逆関数を適用することと
を含み、前記スクランブル化バイオメトリクス・データは、前記認知状態データに前記不可逆関数が適用された後の前記認知状態データを含む、方法。
【請求項２】
前記認知状態データに基づいて複数の不可逆関数のうちの特定の不可逆関数を選択することをさらに含み、前記不可逆関数を適用することは、前記特定の不可逆関数を選択することに基づく、請求項１に記載の方法。
【請求項３】
前記スクランブル化バイオメトリクス・データが前記スクランブル化バイオメトリクス・データの前記事前登録版と一致するか否かを判断することは、前記スクランブル化バイオメトリクス・データが前記スクランブル化バイオメトリクス・データの前記事前登録版と設定可能な閾値度まで一致しているか否かを判断することを含む、請求項１に記載の方法。
【請求項４】
前記スクランブル化バイオメトリクス・データの前記事前登録版はブロックチェーンにブロックチェーン・トランザクションとして含まれる、請求項１に記載の方法。
【請求項５】
前記ブロックチェーンは複数の分散認証サーバによって維持される、請求項４に記載の方法。
【請求項６】
登録要求の一部として前記ユーザ・デバイスを介して前記ユーザの登録バイオメトリクス・データを受け取ることと、
前記登録バイオメトリクス・データをスクランブルしてスクランブル化バイオメトリクス・データの前記事前登録版を形成するために、前記登録バイオメトリクス・データに前記不可逆関数を適用することと、
前記スクランブル化バイオメトリクス・データの前記事前登録版を記憶することと
をさらに含む、請求項１に記載の方法。
【請求項７】
前記スクランブル化バイオメトリクス・データの前記事前登録版はブロックチェーンにブロックチェーン・トランザクションとして記憶される、請求項６に記載の方法。
【請求項８】
サービス・プロバイダが、前記コンピューティング・デバイスの作成と、維持と、配備と、サポートとのうちの少なくとも１つを行う、請求項１に記載の方法。
【請求項９】
前記バイオメトリクス・データを受け取ることと、前記不可逆関数を適用することと、前記スクランブル化バイオメトリクス・データが前記事前登録版と一致するか否かを判断することと、前記認証メッセージを提供することとが、サービス・プロバイダによって、加入方式、または広告料方式、または料金方式、あるいはその組合せの方式で提供される、請求項１に記載の方法。
【請求項１０】
前記コンピューティング・デバイスはクラウド環境におけるサービスとして提供されるソフトウェアを含む、請求項１に記載の方法。
【請求項１１】
前記バイオメトリクス・データを受け取ることと、前記不可逆関数を適用することと、前記スクランブル化バイオメトリクス・データが前記事前登録版と一致するか否かを判断することと、前記認証メッセージを提供することとを実行するように動作可能なコンピュータ・インフラストラクチャを提供することを含む、前記ユーザを認証するためのシステムを配備することをさらに含む、請求項１に記載の方法。
【請求項１２】
請求項１〜１１の何れか１項に記載の方法の各ステップをコンピュータに実行させる、コンピュータ・プログラム。
【請求項１３】
請求項１２に記載の前記コンピュータ・プログラムをコンピュータ可読記録媒体に記録した、記録媒体。
【請求項１４】
請求項１〜１１の何れか１項に記載の方法の各ステップをコンピュータ・ハードウェアによる手段として構成した、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般にはバイオメトリクス・データを使用した本人確認（identity verification）に関し、より詳細には、ブロックチェーンを介してバイオメトリクス・データと不可逆関数とを使用する本人確認に関する。
【背景技術】
【０００２】
（例えば、個人に資産へのアクセスを許可する目的の）本人確認は、バイオメトリクス・データ（例えば、網膜スキャン、指紋スキャン、音声スキャンなど、個人のバイオメトリクスのコンピュータ・スキャン）を使用して実現されることが多い。バイオメトリクス・データは、その個人の事前登録バイオメトリクス・データと比較が可能であり、スキャンされたバイオメトリクス・データが事前登録バイオメトリクス・データと一致する場合にアクセスを許可することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
事前登録バイオメトリクス・データの記憶は、事前登録バイオメトリクス・データを記憶している認証サーバが悪意のある者によってアクセスされた場合、悪意のある者が許可されていない資産にアクセスするために事前登録バイオメトリクス・データを使用することができる可能性があるという点で問題となり得る。したがって、バイオメトリクス・データに依存する安全でない本人確認技術に起因して、相当な金銭的損失、なりすまし、またはその他の損失あるいはこれらの組合せが生じる可能性がある。
【０００４】
機密情報、個人特定可能情報、および支払い情報を含むサイトの数と通信量が増大するにつれて、セキュリティ侵害の頻度とコストとが増大する。クライアント側認証において追加の層を実装することも可能であるが、そのような追加の層は、犠牲の大きいセキュリティ攻撃を防止するには不十分であることが多い。多層クライアント認証は、ますます多くのクレデンシャルを覚えておくことを要求されることになり、それらのクレデンシャルを定期的に（例えば数ヶ月ごとに）変更する必要があるユーザにとって煩わしい場合がある。さらに、多層クライアント認証であっても、攻撃者によって用いられる策略に歯止めを掛ける（例えば、クライムウェアおよびその他の種類の攻撃／侵害の拡散に対するクライアント側の脆弱個所を特定できないようにする）ことができない。
【課題を解決するための手段】
【０００５】
本発明の一態様では、コンピュータ実装方法が、コンピューティング・デバイスによって、安全なデバイスへのアクセスの要求の一部としてユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取ることと、コンピューティング・デバイスによって、バイオメトリクス・データをスクランブルするためにバイオメトリクス・データに不可逆関数を適用することと、コンピューティング・デバイスによって、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するか否かを判断することと、コンピューティング・デバイスによって、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するとの判断に基づいて、ユーザの認証を要求する安全なデバイスに認証メッセージを提供することとを含み、認証メッセージを提供することは、ユーザ・デバイスのユーザに安全なデバイスへのアクセスを提供することを含む。このコンピュータ実装方法は、ユーザに関連付けられた認知状態データを判断することと、認知状態データを判断することに基づいて認知状態データに不可逆関数を適用することとをさらに含むことができ、スクランブル化バイオメトリクス・データは、認知状態データに不可逆関数が適用された後の認知状態データを含む。本発明の態様は、生のバイオメトリクス・データの代わりにスクランブル化バイオメトリクス・データを記憶することによってユーザ認証および不正検出を改善することができるとともに、ユーザ認証を認知状態データと組み合わせることができるので有利である。
【０００６】
本発明の一態様では、安全なデバイスにアクセスするユーザを認証するためのコンピュータ・プログラム製品が存在する。このコンピュータ・プログラム製品は、プログラム命令が具現化されたコンピュータ可読記憶媒体を含み、プログラム命令は、登録の要求の一部としてユーザ・デバイスを介してユーザの登録バイオメトリクス・データを受け取ることと、登録バイオメトリクス・データをスクランブルしてスクランブル化バイオメトリクス・データの事前登録版を形成するために、バイオメトリクス・データに不可逆関数を適用することと、スクランブル化バイオメトリクス・データの事前登録版をブロックチェーン・トランザクションとして記憶することと、安全なデバイスへアクセスする要求の一部としてユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取ることと、バイオメトリクス・データをスクランブルするためにバイオメトリクス・データに不可逆関数を適用することと、ブロックチェーンにアクセスすることによって、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するか否かを判断することと、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するとの判断に基づいて、ユーザの認証を要求する安全なデバイスに認証メッセージを提供することであって、認証メッセージを提供することがユーザ・デバイスのユーザに安全なデバイスへのアクセスを提供する、認証メッセージを提供することとを、コンピューティング・デバイスに行わせるようにコンピューティング・デバイスによって実行可能である。実施形態では、ブロックチェーンは複数の分散認証サーバによって維持され得る。本発明の態様は、生バイオメトリクス・データの代わりにスクランブル化バイオメトリクス・データを記憶することによってユーザ認証および不正検出を改善することができるとともに、単一脆弱点を防ぐためにブロックチェーンを使用して分散方式でデータを記憶することができるので有利である。
【０００７】
本発明の一態様では、システムが、コンピューティング・デバイスに関連付けられた、ＣＰＵと、コンピュータ可読メモリと、コンピュータ可読記憶媒体と、ユーザのスクランブル化バイオメトリクス・データの事前登録版を記憶するブロックチェーンを維持するプログラム命令と、安全なデバイスへのアクセスの要求の一部としてユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取るプログラム命令と、不可逆関数を使用してバイオメトリクス・データをスクランブルするプログラム命令と、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するか否かを判断するプログラム命令と、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するとの判断に基づいて、ユーザの認証を要求する安全なデバイスに認証メッセージを提供するプログラム命令であって、認証メッセージを提供することがユーザ・デバイスのユーザに安全なデバイスへのアクセスを提供する、認証メッセージを提供するプログラム命令とを含む。プログラム命令はコンピュータ可読メモリを介したＣＰＵによる実行のためにコンピュータ可読記憶媒体に記憶される。システムは、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致しないとの判断に基づいて、安全なデバイスへのアクセスを拒否するかまたは追加の認証情報を要求するプログラム命令をさらに含み得る。本発明の態様は、生バイオメトリクス・データの代わりにスクランブル化バイオメトリクス・データを記憶することによってユーザ認証および不正検出を改善することができるとともに、必要な場合には追加の認証データを入手することができるので有利である。
【０００８】
本発明の一態様では、システムが、コンピューティング・デバイスに関連付けられた、ＣＰＵと、コンピュータ可読メモリと、コンピュータ可読記憶媒体と、ユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取るプログラム命令と、不可逆関数を使用してバイオメトリクス・データをスクランブルするプログラム命令と、スクランブル化バイオメトリクス・データがブロックチェーンに記憶されているスクランブル化バイオメトリクス・データの事前登録版と一致することに基づいて、ユーザの認証を要求する安全なデバイスに認証メッセージを提供するプログラム命令であって、認証メッセージを提供することがユーザ・デバイスのユーザに安全なデバイスへのアクセスを提供する、認証メッセージを提供するプログラム命令とを含む。プログラム命令はコンピュータ可読メモリを介したＣＰＵによる実行のためにコンピュータ可読記憶媒体に記憶されている。システムは、スクランブル化バイオメトリックス・データがスクランブル化バイオメトリクス・データの事前登録版と一致しないことに基づいて、安全なデバイスへのアクセスを拒否するプログラム命令をさらに含み得る。バイオメトリクス・データをスクランブルすることは、デカルト・スクランブル技法と、極性スクランブル技法と、表面折り畳みスクランブル技法とからなるグループから選択されたスクランブル技法を使用することを含む。
【０００９】
本発明の一態様では、安全なデバイスにアクセスするユーザを認証するためのコンピュータ・プログラム製品であって、プログラム命令が具現化されたコンピュータ可読記憶媒体を含むコンピュータ・プログラム製品が存在する。プログラム命令は、登録要求の一部としてユーザ・デバイスを介してユーザの登録バイオメトリクス・データを受け取ることと、登録バイオメトリクス・データを受け取ると、ユーザの認知状態を判断することと、ユーザの認知状態データに基づいて複数の不可逆関数から不可逆関数を選択することと、登録バイオメトリクス・データをスクランブルしてスクランブル化バイオメトリクス・データの事前登録版を形成するために、登録バイオメトリクス・データに不可逆関数を適用することと、スクランブル化バイオメトリクス・データの事前登録版をブロックチェーン・トランザクションとして記憶することと、安全なデバイスにアクセスする要求の一部としてユーザ・デバイスを介してユーザのバイオメトリクス・データを受け取ることと、バイオメトリクス・データをスクランブルするためにバイオメトリクス・データに不可逆関数を適用することと、ブロックチェーンにアクセスすることによって、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するか否かを判断することと、スクランブル化バイオメトリクス・データがスクランブル化バイオメトリクス・データの事前登録版と一致するとの判断に基づいて、ユーザの認証を要求する安全なデバイスに認証メッセージを提供することであって、認証メッセージを提供することが、ユーザ・デバイスのユーザに安全なデバイスへのアクセスを提供する、認証メッセージを提供することとを、コンピューティング・デバイスに行わせるようにコンピューティング・デバイスによって実行可能である。さらに他の態様では、バイオメトリクス・データはブロックチェーン・トランザクションとして記憶される。
【００１０】
本発明について、本発明の例示の実施形態の非限定的例として、記載されている複数の図面を参照しながら、以下の詳細な説明で説明する。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態によるクラウド・コンピューティング・ノードを示す図である。
【図２】本発明の一実施形態によるクラウド・コンピューティング環境を示す図である。
【図３】本発明の一実施形態による抽象モデル層を示す図である。
【図４】本発明の態様による例示の実装形態の概要を示す図である。
【図５】本発明の態様による例示の実装形態の概要を示す図である。
【図６】本発明の態様による例示の環境を示す図である。
【図７】本発明の態様による認証サーバの例示の構成要素を示すブロック図である。
【図８】本発明の態様による、１つまたは複数の認証サーバを介した認証のためにユーザを登録するためのプロセスの例示のフローチャートを示す図である。
【図９】本発明の態様によるクライアント・サーバにアクセスするユーザを認証するためのプロセスの例示のフローチャートを示す図である。
【図１０】本発明の態様による、バイオメトリクス・データをスクランブルする例を示す図である。
【図１１】本発明の態様による、バイオメトリクス・データをスクランブルする例を示す図である。
【図１２】本発明の態様による、バイオメトリクス・データをスクランブルする例を示す図である。
【発明を実施するための形態】
【００１２】
本発明は、一般にはバイオメトリクス・データを使用した本人確認に関し、より詳細には、ブロックチェーンを介してバイオメトリクス・データと不可逆関数とを使用する本人確認に関する。本発明の態様は、個人に関連付けられたバイオメトリクス・データを受け取ることと、不可逆関数またはスクランブル関数を使用してバイオメトリクス・データをスクランブルすることと、その個人の身元を認証するために、スクランブル化バイオメトリクス・データが事前登録スクランブル化バイオメトリクス・データと一致するか否かを判断するためにスクランブル化バイオメトリクス・データを事前登録スクランブル化バイオメトリクス・データと比較することとによって、個人の身元を確認または認証することができる。実施形態では、本発明の態様は、本人確認のために他の要素も考慮に入れることができる。例えば、個人の身元を確認するために認知状態データを使用してもよい。実施形態では、認知状態データは、個人の現在の活動および個人の過去のパターン（例えば、過去の購買パターン、サービス・アクセス・パターン、資産アクセス・パターンなど）を示す情報を含み得る。
【００１３】
実施形態では、認知状態データは、スクランブルされ、個人を識別するためのスクランブル化バイオメトリクス・データと組み合わされることができる。これに加えて、またはこれに代えて、認知状態データは、バイオメトリクス・データをスクランブルするときに使用する特定の不可逆関数を選択するために使用することができる。本明細書に記載のように、個人を認証するためにスクランブル化データを事前登録スクランブル化データと比較することができる。その個人が認証された後は、資産へのアクセス（例えば、電子資金にアクセスするための金融サーバへのアクセス、電子情報、コンピュータ・アプリケーション、金庫、貴金属またはその他の貴重品の所蔵庫などの物理資産へのアクセス）を許可することができる。
【００１４】
本発明の態様は、個人の身元を認証または確認するために分散認証サーバを使用することができるように、登録され、スクランブルされたデータを共用し、公開するためにブロックチェーン技術を使用することができる。この点で、スクランブル化データにアクセスを試みる際に単一の認証サーバが危険にさらされずに済む。また、認証サーバまたはブロックチェーンによって実際のバイオメトリクス・データが記憶されないため、悪意のある者が個人に関連付けられたバイオメトリクス・データにアクセスしたり盗んだりすることは不可能である。その結果、個人の認証におけるセキュリティが大幅に改善される。
【００１５】
本明細書に記載のように、ユーザが自分の身元の認証を試みる場合、認証サーバは、ブロックチェーンにおけるスクランブル化バイオメトリクス・データ、または認知状態データ、またはトランザクション・データあるいはその組合せを確認することができる。このようにして、ユーザ認証をより安全にすることができるとともに、ユーザは異なるクライアント・サーバにアクセスする認証のために異なるパスワードを覚えておく必要がないため、ユーザにとっての煩わしさも少ない。さらに、認証サーバは、各ブロックチェーン・トランザクションについて情動状態または認知状態を分類することができ、認知状態をクライアント・サーバによって運営されるクライアント・サイト上のユーザ経験に関連付けることができる。実施形態では、不可逆行動データおよびバイオメトリクス・データを各ブロックチェーン・トランザクションに関連付けることができる。このようにして、トランザクションごとにエンド・ツー・エンド・データ（例えば、ユーザ情報、バイオメトリックおよび行動／認知状態、クライアント・サーバ情報など）が収集される。本明細書に記載のように、ブロックチェーン技術を不可逆関数とともに使用して、バイオメトリック・データと、認知状態データと、クライアント・サイト・データとの関連を暗号化し、管理することができる。
【００１６】
本発明の態様は、不可逆関数を使用してバイオメトリクス・データをスクランブルする技術的解決策を提供することによって、本人認証の技術的問題を解決することができる。これに加えて、またはこれに代えて、本発明の態様は、バイオメトリクス・データをスクランブルするための特定の不可逆関数を選択するために認知状態データを使用し、認知状態データを個人の身元を認証するためにスクランブル化バイオメトリクス・データと組み合わせて使用して、個人の認知状態に基づいて身元を確認するための技術的解決策を提供する。これに加えて、またはこれに代えて、本発明の態様は、個人を認証するために使用される情報を安全に共用し、分散するためにブロックチェーン技術を利用し、それによって単一の認証サーバが脆弱であることを回避することにより本人認証の保全性を改善するための技術的解決策を提供する。これに加えて、またはこれに代えて、本発明の態様は、実際のバイオメトリクス・データではなくスクランブル化データのみを記憶することによって本人認証の保全性を改善するための技術的解決策を提供する。実施形態では、本発明の態様は、ユーザを認証するためにバイオメトリクス・データを認知状態データと組み合わせることによって、不正検出を改善することができる。
【００１７】
本発明は、任意の可能な統合の技術詳細度のシステム、方法またはコンピュータ・プログラム製品あるいはその組合せとすることができる。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実施させるためのコンピュータ可読プログラム命令が記憶されたコンピュータ可読記憶媒体（または複数の媒体）を含み得る。
【００１８】
コンピュータ可読記憶媒体は、命令実行デバイスによって使用される命令を保持し、記憶することができる有形デバイスとすることができる。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光学式ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適合する組合せであってよいが、これらには限定されない。コンピュータ可読記憶媒体のより具体的な例の非網羅的なリストには以下のものが含まれる。すなわち、可搬コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能プログラマブル読み取り専用メモリ（ＥＰＲＯＭまたはフラッシュ・メモリ）、スタティック・ランダム・アクセス・メモリ（ＳＲＡＭ）、可搬コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、メモリ・スティック、フロッピィ・ディスク、パンチカードまたは命令が記録された溝内の隆起構造などの機械的に符号化されたデバイス、およびこれらの任意の適合する組合せが含まれる。本明細書で使用されるコンピュータ可読記憶媒体とは、電波またはその他の自由に伝播する電磁波、導波路またはその他の伝送媒体を伝播する電磁波（例えば光ファイバ・ケーブルを通る光パルス）、または電線を介して伝送される電気信号などの、一過性の信号自体であると解釈すべきではない。
【００１９】
本明細書に記載のコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体からそれぞれのコンピューティング／処理デバイスに、または、ネットワーク、例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、または無線ネットワークあるいはこれらの組合せを介して外部コンピュータまたは外部記憶デバイスにダウンロードすることができる。ネットワークは、銅伝送ケーブル、光伝送ファイバ、無線伝送、ルータ、ファイアウォール、交換機、ゲートウェイ・コンピュータ、またはエッジ・サーバあるいはこれらの組合せを含み得る。各コンピューティング／処理デバイスにおけるネットワーク・アダプタ・カードまたはネットワーク・インターフェースが、ネットワークからコンピュータ可読プログラム命令を受信し、それらのコンピュータ可読プログラム命令を、それぞれのコンピューティング／処理デバイス内のコンピュータ可読記憶媒体への記憶のために転送する。
【００２０】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、インストラクション・セット・アーキテクチャ（ＩＳＡ）命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路の構成データ、または、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、および「Ｃ」プログラミング言語、または同様のプログラム言語などの手続き型プログラミング言語を含む、１つまたは複数のプログラミング言語の任意の組合せで書かれたソース・コードまたはオブジェクト・コードとすることができる。コンピュータ可読プログラム命令は、スタンドアロン・ソフトウェア・パッケージとして全体がユーザのコンピュータ上でまたは一部がユーザのコンピュータ上で、または一部がユーザのコンピュータ上で一部がリモート・コンピュータ上で、または全体がリモート・コンピュータまたはサーバ上で実行されてもよい。後者の場合、リモート・コンピュータは、ローカル・エリア・ネットワーク（ＬＡＮ）またはワイド・エリア・ネットワーク（ＷＡＮ）を含む、任意の種類のネットワークを介してユーザのコンピュータに接続することができ、または接続は（例えば、インターネット・サービス・プロバイダを使用してインターネットを介して）外部コンピュータに対して行ってもよい。実施形態によっては、本発明の態様を実行するために、例えばプログラマブル・ロジック回路、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）、またはプログラマブル・ロジック・アレイ（ＰＬＡ）を含む電子回路が、コンピュータ可読プログラム命令の状態情報を使用して電子回路をパーソナライズすることにより、コンピュータ可読プログラム命令を実行することができる。
【００２１】
本発明の態様について、本発明の実施形態による方法、装置（システム）、およびコンピュータ・プログラム製品を示すフローチャート図またはブロック図あるいはその両方を参照しながら説明する。フローチャート図またはブロック図あるいはその両方の図の各ブロックおよび、フローチャート図またはブロック図あるいはその両方の図のブロックの組合せは、コンピュータ可読プログラム命令によって実装可能であることはわかるであろう。
【００２２】
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラマブル・データ処理装置のプロセッサにより実行される命令が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックで規定されている機能／動作を実装するための手段を形成するように、汎用コンピュータ、特殊目的コンピュータ、またはその他のプログラマブル・データ処理装置のプロセッサに供給されて、マシンを実現するものであってよい。これらのコンピュータ可読プログラム命令は、命令が記憶されたコンピュータ可読記憶媒体が、フローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックで規定されている機能／動作の態様を実装する命令を含む製造品を含むように、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラマブル・データ処理装置、またはその他の装置あるいはこれらの組合せに対して特定の方式で機能するように指示することができるものであってもよい。
【００２３】
コンピュータ可読プログラム命令は、コンピュータ、その他のプログラマブル装置またはその他のデバイス上で実行される命令がフローチャートまたはブロック図あるいはその両方の１つまたは複数のブロックで規定されている機能／動作を実装するように、コンピュータ実装プロセスを生成するべく、コンピュータ、その他のプログラマブル・データ処理装置、またはその他のデバイスにロードされ、コンピュータ、その他のプログラマブル装置、またはその他のデバイス上で一連の動作ステップを実行させるものであってもよい。
【００２４】
図面中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能および動作を示す。なお、フローチャートまたはブロック図の各ブロックは、規定されている論理機能を実装するための１つまたは複数の実行可能命令を含む、命令のモジュール、セグメント、または部分を表すことがある。別の実装形態では、ブロックに記載されている機能は、図に記載されている順序とは異なる順序で行われてもよい。例えば、連続して示されている２つのブロックは、関与する機能に応じて、実際には実質的に並行して実行されてよく、またはそれらのブロックは場合によっては逆の順序で実行されてもよい。また、ブロック図またはフローチャート図あるいはその両方の図の各ブロック、およびブロック図またはフローチャート図あるいはその両方の図のブロックの組合せは、規定されている機能または動作を実行する特殊目的ハードウェア・ベースのシステムによって実装可能であるか、または特殊目的ハードウェアとコンピュータ命令との組合せを実施することができることもわかるであろう。
【００２５】
本開示はクラウド・コンピューティングに関する詳細な説明を含むが、本明細書に記載されている教示の実装はクラウド・コンピューティング環境には限定されないことを前もって理解されたい。むしろ、本発明の実施形態は、現在知られている、または今後開発される任意の他の種類のコンピューティング環境とともに実装することができる。
【００２６】
クラウド・コンピューティングは、最小限の管理労力またはサービス・プロバイダとの相互連絡で迅速にプロビジョニングすることができ、解放することができる、構成可能コンピューティング資源（例えば、ネットワーク、ネットワーク回線容量、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス）の共用プールへの便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス配布のモデルである。このクラウド・モデルは、少なくとも５つの特徴と、少なくとも３つのサービス・モデルと、少なくとも４つの配備モデルとを含み得る。
【００２７】
特徴は以下の通りである。
オンデマンド・セルフサービス：クラウド消費者は、サービス・プロバイダとの間で人間の介在を必要とせずに一方的に、必要に応じて自動的に、サーバ時間およびネットワーク・ストレージなどのコンピューティング機能をプロビジョニングすることができる。
広帯域ネットワーク・アクセス：ネットワークを介して機能が利用可能であり、異種のシン・クライアントまたはシック・クライアント・プラットフォーム（例えば携帯電話、ラップトップ、およびＰＤＡ）による使用を促進する標準機構を介してアクセスすることができる。
資源プール：マルチテナント・モデルを使用して複数の消費者に対応するために、プロバイダのコンピューティング資源がプールされ、需要に応じて、異なる物理資源および仮想資源が動的に割り当てられ、再割り当てされる。消費者は一般に、提供される資源の厳密な場所について管理することができないかまたは知らないが、より高い抽象レベルの場所（例えば、国、州、またはデータセンター）を指定することが可能な場合があるという点で、位置独立感がある。
迅速な伸縮性：迅速かつ伸縮性をもって、場合によっては自動的に機能をプロビジョニングして、迅速にスケールアウトすることができ、また、迅速に機能を解放して迅速にスケールインすることができる。消費者にとっては、プロビジョニングのために利用可能な機能はしばしば無限であるように見え、いつでも好きなだけ購入することができる。
従量制サービス：クラウド・システムが、サービスの種類（例えば、ストレージ、処理、帯域幅、およびアクティブ・ユーザ・アカウント）に応じて適切な何らかの抽象化レベルの計量機能を利用することによって、資源使用を自動的に制御し、最適化する。資源使用量を監視、制御および報告することができ、利用されたサービスの透明性をプロバイダと消費者の両方に与えることができる。
【００２８】
サービス・モデルは以下の通りである。
ソフトウェア・アズ・ア・サービス（Software as a Service：Ｓａａｓ）：消費者に提供される機能は、クラウド・インフラストラクチャ上で稼働するプロバイダのアプリケーションを使用することである。アプリケーションには、ウェブ・ブラウザなどのシン・クライアント・インターフェースを介して様々なクライアント・デバイスからアクセス可能である（例えばウェブ・ベースのＥメール）。消費者は、限られたユーザ固有アプリケーション構成設定の考えられる例外を除き、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個別のアプリケーション機能まで含めて、基礎にあるクラウド・インフラストラクチャを管理も制御もしない。
プラットフォーム・アズ・ア・サービス（Platform as a Service：ＰａａＳ）：消費者に提供される機能は、クラウド・インフラストラクチャ上に、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された、消費者作成または取得アプリケーションを配備することである。消費者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む、基礎にあるクラウド・インフラストラクチャを管理も制御もしないが、配備されたアプリケーションと、場合によってはアプリケーション・ホスティング環境構成とを制御することができる。
インフラストラクチャ・アズ・ア・サービス（Infrastructure as a Service：ＩａａＳ）：消費者に提供される機能は、処理、ストレージ、ネットワークおよびその他の基本的コンピューティング資源をプロビジョニングすることであり、その際、消費者は、オペレーティング・システムとアプリケーションとを含み得る任意のソフトウェアを配備し、実行することができる。消費者は、基礎にあるクラウド・インフラストラクチャを管理も制御もしないが、オペレーティング・システムと、ストレージと、配備されたアプリケーションとを制御することができ、場合によっては選択されたネットワーク・コンポーネント（例えばホスト・ファイアウォール）の限定的な制御を行うことができる。
【００２９】
配備モデルは以下の通りである。
プライベート・クラウド：このクラウド・インフラストラクチャは、組織のためにのみ運用される。組織または第三者によって管理されることができ、オンプレミスまたはオフプレミスに存在可能である。
コミュニティ・クラウド：このクラウド・インフラストラクチャは、いくつかの組織によって共用され、共通の関心事（例えば、任務、セキュリティ要件、ポリシー、およびコンプライアンス事項）を有する特定のコミュニティをサポートする。組織または第三者が管理することができ、オンプレミスまたはオフプレミスに存在可能である。
パブリック・クラウド：このクラウド・インフラストラクチャは、公衆または大規模業界団体が利用することができ、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド：このクラウド・インフラストラクチャは、独自の実体のままであるが、データおよびアプリケーション可搬性を可能にする標準化技術または専有技術（例えば、クラウド間の負荷バランシングのためのクラウド・バースティング）によって結合された、２つ以上のクラウド（プライベート、コミュニティまたはパブリック）の複合体である。
【００３０】
クラウド・コンピューティング環境は、ステートレス性、疎結合性、モジュール性、および意味的相互運用性に焦点を合わせたサービス指向型である。クラウド・コンピューティングの核心にあるのは、相互接続されたノードのネットワークを含むインフラストラクチャである。
【００３１】
次に図１を参照すると、クラウド・コンピューティング・ノードの一例の概略図が示されている。クラウド・コンピューティング・ノード１０は、適合するクラウド・コンピューティング・ノードの一例に過ぎず、本明細書に記載の本発明の実施形態の使用または機能の範囲に関するいかなる限定も示唆することを意図していない。どのような場合でも、クラウド・コンピューティング・ノード１０は、上述の機能のいずれも実装または実行あるいはその両方が可能である。
【００３２】
クラウド・コンピューティング・ノード１０には、多くの他の汎用または特殊目的コンピューティング・システム環境または構成とともに動作可能なコンピュータ・システム／サーバ１２がある。コンピュータ・システム／サーバ１２とともに使用するのに適合し得る知られているコンピュータ・システム、環境または構成あるいはその組合せの例としては、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、手持ち型デバイスまたはラップトップ・デバイス、マルチプロセッサ・システム、マイクロプロセッサ・ベースのシステム、セット・トップ・ボックス、プログラマブル消費者電子機器、ネットワークＰＣ、ミニコンピュータ・システム、メインフレーム・コンピュータ・システム、および、のシステムまたはデバイスなどのうちのいずれかを含む分散クラウド・コンピューティング環境などがあるが、これらには限定されない。
【００３３】
コンピュータ・システム／サーバ１２について、コンピュータ・システムによって実行されるプログラム・モジュールなどのコンピュータ・システム実行可能命令の一般的な文脈で説明する場合がある。一般には、プログラム・モジュールは、特定のタスクを実行するか、または特定の抽象データ・タイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、ロジック、データ構造などを含み得る。コンピュータ・システム／サーバ１２は、通信ネットワークを介して接続されたリモート処理デバイスによってタスクが実行される分散クラウド・コンピューティング環境で実施されてもよい。分散クラウド・コンピューティング環境では、プログラム・モジュールを、メモリ・ストレージ・デバイスを含むローカルとリモートの両方のコンピュータ・システム記憶媒体に格納することができる。
【００３４】
図１に示すように、クラウド・コンピューティング・ノード１０におけるコンピュータ・システム／サーバ１２が、汎用コンピュータ・デバイスの形態で示されている。コンピュータ・システム／サーバ１２の構成要素は、１つまたは複数のプロセッサまたは処理ユニット１６と、システム・メモリ２８と、システム・メモリ２８を含む様々なシステム構成要素をプロセッサ１６に接続するバス１８とを含み得るがこれらには限定されない。
【００３５】
バス１８は、様々なバス・アーキテクチャのうちのいずれかのアーキテクチャを使用する、メモリ・バスまたはメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィクス・ポート、およびプロセッサ・バスまたはローカル・バスを含む、数種類のバス構造のうちのいずれかの１つまたは複数に相当する。例として、そのようなアーキテクチャとしては、業界標準アーキテクチャ（Industry Standard Architecture：ＩＳＡ）バス、マイクロ・チャネル・アーキテクチャ（Micro Channel Architecture：ＭＣＡ）バス、拡張（Enhanced）ＩＳＡ（ＥＩＳＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション（Video Electronics Standards Association：ＶＥＳＡ）ローカル・バス、およびペリフェラル・コンポーネント・インターコネクト（Peripheral Component Interconnect：ＰＣＩ）バスがあるが、これらには限定されない。
【００３６】
コンピュータ・システム／サーバ１２は、典型的には様々なコンピュータ・システム可読記憶媒体を含む。そのような媒体は、コンピュータ・システム／サーバ１２がアクセスすることができる任意の利用可能な媒体であってよく、揮発性媒体と不揮発性媒体の両方と、取り外し可能媒体と取り外し不能媒体とを含む。
【００３７】
システム・メモリ２８は、ランダム・アクセス・メモリ（ＲＡＭ）３０またはキャッシュ・メモリ３２あるいはその両方などの、揮発性メモリの形態のコンピュータ・システム可読記憶媒体を含み得る。コンピュータ・システム／サーバ１２は、他の取り外し可能／取り外し不能、揮発性／不揮発性のコンピュータ・システム記憶媒体をさらに含み得る。一例に過ぎないが、ストレージ・システム３４を、取り外し不能な不揮発性磁気媒体（図示されておらず、一般に「ハード・ドライブ」と呼ばれる）の読み書きのために設けることができる。図示されていないが、取り外し可能な不揮発性磁気ディスク（例えば「フロッピィ・ディスク」）の読み書きのための磁気ディスク・ドライブと、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭまたはその他の光学媒体などの、取り外し可能な不揮発性光ディスクの読み書きのための光ディスク・ドライブとを備えることができる。そのような場合、それぞれを１つまたは複数のデータ・メディア・インターフェースによってバス１８に接続することができる。以下でさらに図示し、説明するように、メモリ２８は、本発明の実施形態の機能を実施するように構成された１組の（例えば少なくとも１つの）プログラム・モジュールを有する少なくとも１つのプログラム製品を含み得る。
【００３８】
一例として、これには限らないが、１組の（例えば少なくとも１つの）プログラム・モジュール４２を有するプログラム／ユーティリティ４０と、オペレーティング・システムと、１つまたは複数のアプリケーション・プログラムと、その他のプログラム・モジュールと、プログラム・データとをメモリ２８に記憶することができる。オペレーティング・システム、１つまたは複数のアプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データ、またはその何らかの組合せのそれぞれが、ネットワーキング環境の実装形態を含み得る。プログラム・モジュール４２は、一般に、本明細書に記載の本発明の実施形態の機能または方法あるいはその両方を実施する。
【００３９】
コンピュータ・システム／サーバ１２は、キーボード、ポインティング・デバイス、ディスプレイ２４など、または、ユーザがコンピュータ・システム／サーバ１２とやり取りすることができるようにする１つまたは複数のデバイス、または、コンピュータ・システム／サーバ１２が１つまたは複数の他のコンピューティング・デバイスと通信することができるようにする任意のデバイス（例えばネットワーク・カード、モデムなど）、あるいはその組合せなどの、１つまたは複数の外部デバイス１４とも通信することができる。このような通信は、入出力（Ｉ／Ｏ）インターフェース２２を介して行うことができる。さらに、コンピュータ・システム／サーバ１２は、ローカル・エリア・ネットワーク（ＬＡＮ）、または汎用ワイド・エリア・ネットワーク（ＷＡＮ）、またはパブリック・ネットワーク（例えばインターネット）、あるいはその組合せなどの１つまたは複数のネットワークと、ネットワーク・アダプタ２０を介して通信することができる。図のように、ネットワーク・アダプタ２０は、バス１８を介してコンピュータ・システム／サーバ１２の他の構成要素と通信する。なお、図示されていないが、他のハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方もコンピュータ・システム／サーバ１２とともに使用することができることを理解されたい。例としては、マイクロコード、デバイス・ドライバ、冗長処理ユニット、外部ディスク・ドライブ・アレイ、ＲＡＩＤシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システムなどが含まれるが、これらには限定されない。
【００４０】
次に図２を参照すると、例示のクラウド・コンピューティング環境５０が図示されている。図のように、クラウド・コンピューティング環境５０は、例えばパーソナル・デジタル・アシスタント（ＰＤＡ）または携帯電話５４Ａ、デスクトップ・コンピュータ５４Ｂ、ラップトップ・コンピュータ５４Ｃ、または自動車コンピュータ・システム５４Ｎあるいはその組合せなど、クラウド消費者によって使用されるローカル・コンピューティング・デバイスが通信することができる、１つまたは複数のクラウド・コンピューティング・ノード１０を含む。ノード１０は互いに通信することができる。ノードは、上述のプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウドまたはハイブリッド・クラウドまたはこれらの組合せなどの１つまたは複数のネットワークにおいて物理的または仮想的にグループ化（図示せず）されてもよい。これによって、クラウド・コンピューティング環境５０は、インフラストラクチャ、プラットフォーム、またはソフトウェアあるいはその組合せを、クラウド消費者がそのためにローカル・コンピューティング・デバイス上で資源を維持する必要がないサービスとして提供することができる。なお、図２に示すコンピューティング・デバイス５４Ａないし５４Ｎの種類は、例示を意図したものに過ぎず、コンピューティング・ノード１０およびクラウド・コンピューティング環境５０は、（例えばウェブ・ブラウザを使用して）任意の種類のネットワークまたはネットワーク・アドレス指定可能接続あるいはその組合せを介して、任意の種類のコンピュータ化デバイスと通信することができるものと理解される。
【００４１】
次に、図３を参照すると、クラウド・コンピューティング環境５０（図２）によって提供される１組の機能抽象化層が示されている。なお、図３に示す構成要素、層および機能は、例示のみを意図したものであり、本発明の実施形態はこれらには限定されないことを前もって理解されたい。図のように、以下の層および対応する機能が提供される。
【００４２】
ハードウェアおよびソフトウェア層６０は、ハードウェア・コンポーネントとソフトウェア・コンポーネントとを含む。ハードウェア・コンポーネントの例としては、メインフレーム６１、縮小命令セットコンピュータ（Reduced Instruction Set Computer：ＲＩＳＣ）アーキテクチャ・ベースのサーバ６２、サーバ６３、ブレード・サーバ６４、ストレージ・デバイス６５、およびネットワークおよびネットワーキング・コンポーネント６６がある。実施形態によっては、ソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア６７およびデータベース・ソフトウェア６８を含む。
【００４３】
仮想化層７０は、以下のような仮想実体の例を与えることができる抽象化層を提供する。すなわち、仮想サーバ７１と、仮想ストレージ７２と、仮想プライベート・ネットワークを含む仮想ネットワーク７３と、仮想アプリケーションおよびオペレーティング・システム７４と、仮想クライアント７５である。
【００４４】
一例では、管理層８０は、以下に記載の機能を提供することができる。資源プロビジョニング８１は、クラウド・コンピューティング環境内でタスクを実行するために利用されるコンピューティング資源およびその他の資源の動的調達を行う。メータリングおよびプライシング８２は、クラウド・コンピューティング環境内で資源が利用されるときのコスト追跡と、これらの資源の消費に対する対価の請求またはインボイス処理を行う。一例ではこれらの資源にはアプリケーション・ソフトウェア・ライセンスが含まれてもよい。セキュリティは、クラウド消費者およびタスクのための本人確認と、データおよびその他の資源の保護とを行う。ユーザ・ポータル８３は、消費者およびシステム管理者にクラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理８４は、必要なサービス・レベルが満たされるようにクラウド・コンピューティング資源割り当ておよび管理を行う。サービス・レベル・アグリーメント（Service Level Agreement：ＳＬＡ）計画および履行８５は、ＳＬＡに従って将来の要求が予想されるクラウド・コンピューティング資源のための事前取り決めおよび調達を行う。
【００４５】
ワークロード層９０は、クラウド・コンピューティング環境をそのために利用することができる機能の例を提供する。この層から提供することができるワークロードおよび機能の例には、マッピングおよびナビゲーション９１、ソフトウェア開発およびライフサイクル管理９２、仮想教室教育配信９３、データ分析処理９４、トランザクション処理９５、および安全なユーザ認証９６が含まれる。
【００４６】
図１に戻って参照すると、プログラム／ユーティリティ４０は、本明細書に記載の本発明の実施形態の機能または方法（例えば、安全なユーザ認証９６によって提供される機能など）あるいはその両方を全般的に実行する１つまたは複数のプログラム・モジュール４２を含み得る。具体的には、プログラム・モジュール４２は、ユーザに関連付けられたバイオメトリクス・データを受け取り、ユーザの認知状態を判断し、認知状態に関連付けられた不可逆関数をバイオメトリクス・データに適用し、そのスクランブル化データを記憶されているスクランブル化データと照合し、スクランブル化データと記憶されているスクランブル化データとが一致する場合にそのユーザを認証することができる。これに加えて、またはこれに代えて、プログラム・モジュール４２は、ブロックチェーンに認証関連トランザクションを記録し、ブロックチェーンにアクセスして記憶されているスクランブル化データを入手してもよい。プログラム・モジュール４２の他の機能についても本明細書でさらに説明し、したがってプログラム・モジュール４２は上述の機能には限定されない。また、モジュール４２の一部は図１ないし図３に示すインフラストラクチャ内で実装可能である。例えば、モジュール４２は図４に示す認証サーバを表し得る。
【００４７】
図４および図５に、本発明の態様による例示の実装形態の概要を示す。図４に示すように、認証サーバ２３０−１ないし２３０−Ｎがそれぞれ、本明細書に記載の本人認証のために使用可能なデータを有するブロックチェーンを維持することができる。例えば、ブロックチェーンは、ユーザのスクランブル化バイオメトリクス・データ、ユーザの認知状態データ、およびクライアント・サーバ（例えば許可されたユーザにそのサーバへのアクセスを許可することができるサーバ）に関連付けられたデータに関するトランザクション／レコードを記憶することができる。本明細書に記載のように、各認証サーバ２３０は、クライアント・サーバにアクセスするユーザを認証するために使用することができる。したがって、ブロックチェーンの使用は、単一の認証サーバ２３０が危険にさらされずに済むように、複数の認証サーバ２３０を認証のために使用することができるようにすることによって、セキュリティを向上させることができる。また、ブロックチェーンの使用は、悪意のある者によってデータに改ざんまたは変更が加えられることができないように、データを永続的かつ安全に記憶することを可能にし得る。
【００４８】
図５を参照すると、（ステップ１．１で）認証サーバ２３０がバイオメトリクス・データを受け取る。例えば、認証サーバ２３０はユーザから（例えば、スマートフォン、タブレット、デスクトップ／ラップトップ・コンピュータなどのユーザ・デバイス２１０を介して）バイオメトリクス・データを受け取ることができる。実施形態では、認証サーバ２３０は、クライアント・サーバ２２０またはその他の安全なデバイス（例えば安全なコンピューティング・デバイス、貸金庫などの物理デバイスなど）にアクセスするユーザからの要求の一部としてバイオメトリクス・データを受け取ってもよい。例えば、クライアント・サーバ２２０は、電子商取引の支払いの処理、安全なディレクトリへのアクセスの許可などの目的のためにユーザ認証を要求することができる。実施形態では、バイオメトリクス・データは、指紋スキャン、網膜スキャン、顔スキャンまたはその他の種類のバイオメトリクス・データあるいはその組合せを含み得る。ステップ１．２で、認証サーバ２３０は（例えばバイオメトリクス・データをスクランブルするために）バイオメトリクス・データに不可逆関数を適用することができる。実施形態では、認証サーバ２３０は、複数の異なる不可逆関数のうちの１つを使用してバイオメトリクス・データをスクランブルすることができる。本明細書に記載のように、認証サーバ２３０は、ユーザの認知状態を判断することができ、複数の異なる不可逆関数のうちのバイオメトリックス・データに適用する１つの不可逆関数を選択することができる。実施形態では、認証サーバ２３０は、ユーザの活動またはクライアント・サーバ２２０とのやり取り（例えば、クライアント・サーバ２２０が電子商取引ページを運営している場合のユーザの購買履歴、クライアント・サーバ２２０が安全ファイル・システムを運営している場合の安全なファイルへのユーザのアクセス履歴など）に基づいて認知状態を判断することができる。
【００４９】
ステップ１．３で、認証サーバ２３０は、スクランブル化バイオメトリクス・データをそのユーザに関連付けられた事前記憶スクランブル化バイオメトリクス・データと照合することができる。２つのデータ・セットが一致する場合、（ステップ１．４で）認証サーバ２３０はクライアント・サーバ２２０に認証メッセージを送信することができる。認証メッセージの受信に基づいて、クライアント・サーバ２２０はユーザ・デバイス２１０にクライアント・サーバ２２０へのアクセスを許可することができる。例えば、ステップ１．５で、クライアント・サーバ２２０は、認証メッセージの受信に基づいてユーザ・デバイス２１０との安全なセッションを確立することができる。データ・セットが一致しない場合、認証サーバ２３０は、（例えばユーザ・デバイス２１０にメッセージを送信することによって）ユーザに追加の認証情報を問い合わせることができ、またはクライアント・サーバ２２０からの認証メッセージの送信をさせないことによってクライアント・サーバ２２０へのアクセスを単に拒否してもよい。
【００５０】
実施形態では、認知状態データがバイオメトリクス・データと組み合わされてもよく、組み合わされたデータがスクランブルされてもよい。また、ユーザの認知状態を判断するためにクライアント・サーバ２２０に関するデータが使用されてもよい。これに加えて、またはこれに代えて、クライアント・サーバ２２０に関するデータがバイオメトリクス・データと組み合わされてもよく、組み合わされたデータがスクランブルされてユーザの事前記憶スクランブル化データと照合されてもよい。本明細書に記載のように、ブロックチェーンによって、実際のバイオメトリクス・データではなく、スクランブル化データのみを記憶することができる。したがって、バイオメトリクス・データが危険にさらされたり悪意のある者によって盗まれたりすることがない。
【００５１】
図６に、本発明の態様による例示の環境を示す。図６に示すように、環境５００は、ユーザ・デバイス２１０と、クライアント・サーバ２２０と、認証サーバ２３０と、ネットワーク２４０とを含むことができる。実施形態では、環境５００における１つまたは複数の構成要素が図２のクラウド・コンピューティング環境における１つまたは複数の構成要素に対応し得る。実施形態では、環境５００における１つまたは複数の構成要素が図１のコンピュータ・システム／サーバ１２の構成要素を含み得る。
【００５２】
ユーザ・デバイス２１０は、ネットワーク２４０などのネットワークを介して通信可能なコンピューティング・デバイスを含み得る。例えば、ユーザ・デバイス２１０は、移動通信デバイス（例えば、スマートフォンまたはパーソナル・デジタル・アシスタント（ＰＤＡ））、携帯型コンピュータ・デバイス（例えばラップトップまたはタブレット・コンピュータ）、デスクトップ・コンピューティング・デバイス、またはその他の種類のコンピューティング・デバイスに対応し得る。実施形態によっては、ユーザ・デバイス２１０は、クライアント・サーバ２２０へのアクセスを要求し、バイオメトリクス・データを受け取り、そのバイオメトリクス・データを認証サーバ２３０に提供してもよい。実施形態では、ユーザ・デバイス２１０は単に認証サーバ２３０にバイオメトリクス・データを提供するバイオメトリクス収集デバイスであってもよい。
【００５３】
クライアント・サーバ２２０は、それぞれが１つまたは複数の安全なアプリケーションまたは安全なデータあるいはその両方をホストする、１つまたは複数のコンピューティング・デバイス（例えば、図１のコンピュータ・システム／サーバ１２など）を含み得る。クライアント・サーバ２２０は、ユーザ・デバイス２１０からアクセス要求を受信し、認証サーバ２３０にユーザ・デバイス２１０のユーザを認証するように指示し、認証サーバ２３０が本明細書に記載のプロセスに基づいてユーザを認証すると、認証サーバ２３０から認証メッセージを受け取ることができる。
【００５４】
認証サーバ２３０は、クライアント・サーバ２２０からユーザを認証するよう求める要求を受信可能な分散コンピューティング・デバイス（例えば図１のコンピュータ・システム／サーバ１２など）を含み得る。認証サーバ２３０は、バイオメトリクス・データ、またはアクセスが要求されている対象のクライアント・サーバ２２０に関連付けられたデータ、または認知状態データ、あるいはその組合せに基づいてユーザを認証することができる。実施形態では、各認証サーバ２３０が、登録ユーザに関連付けられた事前登録（例えば予め登録され、記憶された）スクランブル化バイオメトリクス・データを記憶するブロックチェーンを維持することができる。本明細書に記載のように、認証サーバ２３０はバイオメトリクス・データをスクランブルするためにバイオメトリクス・データに不可逆関数を適用し、スクランブル化バイオメトリクス・データを事前登録スクランブル化バイオメトリクス・データと比較することができる。スクランブル化バイオメトリクス・データと事前登録スクランブル化バイオメトリクス・データとの間に（設定可能な閾値度までの）一致が特定された場合、認証サーバ２３０は、クライアント・サーバ２２０に認証メッセージを提供することができる。
【００５５】
ネットワーク２４０は、図２のネットワーク・ノード１０などのネットワーク・ノードを含み得る。これに加えて、またはこれに代えて、ネットワーク２４０は、１つまたは複数の有線または無線あるいはその両方のネットワークを含み得る。例えば、ネットワーク２４０は、セルラ・ネットワーク（例えば第２世代（２Ｇ）ネットワーク、第３世代（３Ｇ）ネットワーク、第４世代（４Ｇ）ネットワーク、第５世代（５Ｇ）ネットワーク、ロング・ターム・エボリューション（long term evolution：ＬＴＥ）ネットワーク、グローバル・システム・フォー・モバイル（global system for mobile：ＧＳＭ）ネットワーク、符号分割多元接続（code division multiple access：ＣＤＭＡ）ネットワーク、エボリューション・データ・オプティマイズド（evolution-data optimized：ＥＶＤＯ）ネットワークなど）、公衆陸上移動体ネットワーク（public land mobile network：ＰＬＭＮ）、またはその他のネットワークあるいはその組合せを含み得る。これに加えて、またはこれに代えて、ネットワーク２４０は、ローカル・エリア・ネットワーク（ＬＡＮ）、ワイド・エリア・ネットワーク（ＷＡＮ）、メトロポリタン・ネットワーク（ＭＡＮ）、公衆交換電話網（ＰＳＴＮ）、アド・ホック・ネットワーク、マネージド・インターネット・プロトコル（ＩＰ）ネットワーク、仮想プライベート・ネットワーク（ＶＰＮ）、イントラネット、インターネット、光ファイバ・ネットワーク、あるいはこれらの組合せまたは他の種類のネットワークを含み得る。
【００５６】
環境５００におけるデバイスまたはネットワークあるいはその両方の数は、図６に示すものには限定されない。実際には、環境５００は追加のデバイスまたはネットワークあるいはその両方、またはより少ないデバイスまたはネットワークあるいはその両方、異なるデバイスまたはネットワークあるいはその両方、または図６に示すものとは異なる配置のデバイスまたはネットワークあるいはその両方を含むことができる。また、実装形態によっては、環境５００のデバイスのうちの１つまたは複数のデバイスが、環境５００のデバイスのうちの別の１つまたは複数のデバイスによって実行されるものとして記載されている１つまたは複数の機能を実行してもよい。環境５００のデバイスは、有線接続、無線接続、または有線接続と無線接続の組合せを介して相互接続可能である。
【００５７】
図７に、本発明の態様による認証サーバの例示の構成要素のブロック図を示す。図７に示すように、認証サーバ２３０は、バイオメトリクス・データ受信モジュール６１０と、認知状態判断モジュール６２０と、不可逆関数適用モジュール６３０と、認証モジュール６４０と、ブロックチェーン・インターフェース・モジュール６５０とを含むことができる。実施形態では、認証サーバ２３０は、図７に示す構成要素より多いかまたは少ない構成要素を含むことができる。実施形態では、別々の構成要素が１つのコンピューティング・コンポーネントまたはモジュールに統合されてもよい。これに加えて、またはこれに代えて、単一の構成要素が複数のコンピューティング・コンポーネントまたはモジュールとして実装されてもよい。
【００５８】
バイオメトリクス・データ受信モジュール６１０は、ユーザ・デバイス２１０に関連付けられたユーザを認証することを求めるクライアント・サーバ２２０から受信した要求に応答して（例えばユーザ・デバイス２１０から）バイオメトリクス・データを受け取るプログラム・モジュール（例えば図１のプログラム・モジュール４２）を含み得る。実施形態では、バイオメトリクス・データ受信モジュール６１０は、指紋データ、掌紋データ、網膜データ、顔画像データ、脈拍数情報などのバイオメトリクス・データの任意の組合せを受け取ることができる。実施形態では、バイオメトリクス・データ受信モジュール６１０は、１つまたは複数の認証サーバ２３０によって認証されるユーザを登録する登録プロセスの一部としてバイオメトリクス・データを受け取ることができる。
【００５９】
認知状態判断モジュール６２０は、クライアント・サーバ２２０へのアクセスを要求しているユーザ・デバイス２１０に関連付けられたユーザの認知状態、またはユーザの登録の一部としての認知状態を判断するプログラム・モジュール（例えば図１のプログラム・モジュール４２）を含み得る。実施形態では、認知状態は、ユーザの気分、情動状態などを示す受信バイオメトリクス・データに基づくことができる。これに加えて、またはこれに代えて、認知状態は、ユーザ・デバイス２１０とクライアント・サーバ２２０との間のユーザのやり取り（例えば電子商取引購買活動、閲覧活動など）に基づくことができる。これに加えて、またはこれに代えて、認知状態は他の適合するデータまたは他の適合する技術に基づいてもよい。
【００６０】
不可逆関数適用モジュール６３０は、バイオメトリクス・データに不可逆関数を適用するプログラム・モジュール（例えば図１のプログラム・モジュール４２）を含み得る。実施形態では、不可逆関数適用モジュール６３０は、（例えば認知状態判断モジュール６２０によって判断された）ユーザの認知状態に基づいて、多くの不可逆関数のうち、適用する特定の１つの不可逆関数を選択することができる。実施形態では、不可逆関数適用モジュール６３０は、バイオメトリクス・データに不可逆関数を適用してバイオメトリクス・データをスクランブルすることができる。また、不可逆関数適用モジュール６３０は、認知状態データをバイオメトリクス・データと組み合わせ、組み合わされたデータをスクランブルしてもよい。
【００６１】
本明細書に記載のように、不可逆関数適用モジュール６３０は、１つまたは複数の技法を使用してデータをスクランブルすることができる。例えば、（例えば、図１０ないし図１２に関して以下で詳述するように）デカルト・スクランブル技法、極性スクランブル技法、または表面折り畳み技法あるいはその組合せを使用して指紋データをスクランブルすることができる。これに加えて、またはこれに代えて、バイオメトリクス・データは任意の他の適合する技術を使用してスクランブルされてもよい。
【００６２】
認証モジュール６４０は、（例えば不可逆関数適用モジュール６３０から）スクランブル化データを受け取り、スクランブル化データをユーザの事前登録（例えば予め登録され、記憶された）スクランブル化データと比較するプログラム・モジュール（例えば図１のプログラム・モジュール４２）を含み得る。スクランブル化データが、設定可能な閾値度まで（例えば、認証サーバ２３０の管理者によってユーザ・インターフェースを介して定義可能な、特定の一致割合以内または他の測度以内で）事前登録スクランブル化データと一致する場合、認証モジュール６４０はユーザを認証し、クライアント・サーバ２２０に認証メッセージを提供することができる。データ・セットが一致しない場合、認証モジュール６４０は、（ユーザ・デバイス２１０にメッセージを送信することによって）ユーザに追加の認証情報を問い合わせるか、またはクライアント・サーバ２２０からの認証メッセージの送信をさせないことによってクライアント・サーバ２２０へのアクセスを単に拒否してもよい。
【００６３】
ブロックチェーン・インターフェース・モジュール６５０は、ブロックチェーンの維持、アクセスまたは変更あるいはその組合せを行うことができるプログラム・モジュール（例えば図１のプログラム・モジュール４２）を含み得る。本明細書に記載のように、ブロックチェーンは、認証モジュール６４０が認証のために比較可能なユーザのスクランブル化データを識別するレコードを記憶することができる。また、本人認証を行うために使用されるデータは、認証の時点で、ユーザの行動、クライアント・サーバ２２０に関する情報、またはユーザ確認プロセスとのその他のやり取りおよびユーザ・デバイス２１０とクライアント・サーバ２２０との間のやり取りあるいはその組合せなど、ユーザを巡る任意の追加データとともに収集することもできる。このようなデータは、将来のユーザの将来の認証のため、および認証をユーザ体験と結びつけるための認識を引き出すために、安全に記憶され、一体として関連付けられてもよい。さらに、このデータは、ユーザの認知、情動および全般的な心理状態と、クライアント・サーバ２２０によってホストされるサイトまたはアプリケーションあるいはその両方とのやり取りとの関係を分類し、よりよく理解するのに役立てるために使用されることになる。
【００６４】
本明細書に記載のように、これらの関連付けの把握は、クライアント・サーバ２２０の管理者が、ユーザのその時点での認知状態および情動状態に基づいてユーザによりよい体験をもたらすのに役立ち得るとともに、より対象を絞った認識および予測をもたらすことができる。このデータおよびその関連付けは、同様の利点、把握、認識および予測の向上のためにサードパーティー・アプリケーションに提供することもできる。
【００６５】
図８に、本発明の態様による、１つまたは複数の認証サーバを介した認証のためにユーザを登録するためのプロセスの例示のフローチャートを示す。図８のステップは、例えば図６の環境で実装可能であり、図６に示す要素の参照番号を使用して説明する。上述のように、このフローチャートは、本発明の様々な実施形態によるシステム、方法およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能および動作を示す。
【００６６】
図８に示すように、プロセス７００は、バイオメトリクス・データを受け取ること（ステップ７１０）を含むことができる。例えば、バイオメトリクス・データ受信モジュール６１０に関して上述したように、認証サーバ２３０は、１つまたは複数の認証サーバ２３０によって認証されるユーザを登録する登録プロセスの一部としてユーザ・デバイス２１０からバイオメトリクス・データを受け取ることができる。実施形態では、認証サーバ２３０は、指紋データと、掌紋データと、網膜データと、顔画像データと、脈拍数情報とのうちの少なくとも１つを含むがこれらには限定されない、任意の適合するバイオメトリクス・データを受け取ることができる。
【００６７】
プロセス７００は、ユーザの認知状態を判断すること（ステップ７２０）も含むことができる。例えば、認知状態判断モジュール６２０に関して上述したように、認証サーバ２３０は、認証サービスのために認証サーバ２３０に登録するユーザ・デバイス２１０に関連付けられたユーザの認知状態を判断することができる。実施形態では、認知状態は、ユーザの気分、情動状態などを示す受信バイオメトリクス・データに基づくことができる。これに加えて、またはこれに代えて、認知状態は、ユーザ・デバイス２１０とクライアント・サーバ２２０との間でのユーザのやり取り（例えば電子商取引購買活動、閲覧活動など）に基づいてもよい。これに加えて、またはこれに代えて、認知状態は他の適合するデータまたは他の適合する技術に基づいてもよい。
【００６８】
プロセス７００は、バイオメトリクス・データに複数の異なる不可逆関数のうちの特定の不可逆関数を適用すること（ステップ７３０）をさらに含むことができる。例えば、不可逆関数適用モジュール６３０に関して上述したように、認証サーバ２３０は、（例えば認知状態判断モジュール６２０によって判断された）ユーザの認知状態に基づいて、多くの不可逆関数のうちの適用する特定の１つの不可逆関数を選択することができる。実施形態では、認証サーバ２３０は、バイオメトリクス・データに不可逆関数を適用してバイオメトリクス・データをスクランブルすることができる。また、認証サーバ２３０は、認知状態データをバイオメトリクス・データと組み合わせ、組み合わされたデータをスクランブルしてもよい。
【００６９】
プロセス７００は、バイオメトリクス・データ、ユーザ、および認知状態データに関連付けられたスクランブル化データを記憶すること（ステップ７４０）も含み得る。例えば、ブロックチェーン・インターフェース・モジュール６５０に関して上述したように、認証サーバ２３０は認証サーバ２３０が後で認証のために比較することができるユーザのスクランブル化データを識別するレコードを記憶することができる。実施形態では、認証サーバ２３０は、スクランブル化データをブロックチェーン・トランザクションとして記憶することができる。これに加えて、またはこれに代えて、認証サーバ２３０は他のデータ（例えば、認知状態データをスクランブル化バイオメトリクス・データと紐付けるための認知状態データ）をブロックチェーン・トランザクションとして記憶することができる。
【００７０】
図９に、本発明の態様によるクライアント・サーバにアクセスするユーザを認証するためのプロセスの例示のフローチャートを示す。図９のステップは、例えば図６の環境で実装可能であり、図６に示す要素の参照番号を使用して説明する。上述のように、このフローチャートは、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能および動作を示す。
【００７１】
図９に示すように、プロセス８００は、バイオメトリクス・データを受け取ること（ステップ８１０）を含み得る。例えば、認証サーバ２３０は、クライアント・サーバ２２０へのアクセスを求めるユーザ・デバイス２１０のユーザからの要求の一部として、ユーザ・デバイス２１０からバイオメトリクス・データを受け取ることができる。実施形態では、認証サーバ２３０は、指紋データと、掌紋データと、網膜データと、顔画像データと、脈拍数情報とのうちの少なくとも１つを含むがこれらには限定されない、適合するバイオメトリクス・データを受け取ることができる。
【００７２】
プロセス８００は、ユーザの認知状態を判断すること（ステップ８２０）も含むことができる。例えば、認知状態判断モジュール６２０に関して上述したように、認証サーバ２３０は、クライアント・サーバ２２０へのアクセスを要求しているユーザ・デバイス２１０に関連付けられたユーザの認知状態を判断することができる。実施形態では、認証サーバ２３０は、認知状態判断モジュール６２０および図８に示すプロセス・ステップ７２０に関連して上述したのと同様にして認知状態を判断することができる。
【００７３】
プロセス８００は、バイオメトリクス・データに複数の異なる不可逆関数のうちの特定の不可逆関数を適用すること（ステップ８３０）をさらに含むことができる。例えば、不可逆関数適用モジュール６３０および図８のステップ７３０に関して上述したように、認証サーバ２３０は（例えば、認知状態判断モジュール６２０によって判断された）ユーザの認知状態に基づいて、多くの不可逆関数のうちの適用する特定の１つの不可逆関数を選択することができる。実施形態では、認証サーバ２３０はバイオメトリクス・データに不可逆関数を適用してバイオメトリクス・データをスクランブルすることができる。また、認証サーバ２３０は、認知状態データをバイオメトリクス・データと組み合わせ、組み合わされたデータをスクランブルすることもできる。
【００７４】
プロセス８００は、スクランブル化データを記憶されているスクランブル化データと比較すること（ステップ８４０）も含むことができる。例えば、認証モジュール６４０に関して上述したように、認証サーバ２３０はスクランブル化データを、ユーザのスクランブル化データの記憶または事前登録されているスクランブル化データ（例えば、ブロックチェーン・トランザクションとして記録されているユーザのスクランブル化データ）と比較することができる。
【００７５】
スクランブル化データがスクランブル化データの事前登録版と設定可能な閾値度まで一致する場合（ステップ８５０で「はい」）、認証サーバ２３０はユーザを認証し、クライアント・サーバ２２０に認証メッセージを提供することができる（ステップ８６０）。次に、クライアント・サーバ２２０が安全なセッションを介して、クライアント・サーバ２２０にアクセスするユーザ・デバイス２１０を許可する。
【００７６】
データ・セットが一致しない場合（８５０で「いいえ」）、認証サーバ２３０は、ステップ８７０でユーザに（例えばユーザ・デバイス２１０にメッセージを送信することによって）追加の認証情報（例えば、プロセス８００がステップ８１０に戻るような追加のバイオメトリクス・データ）を問い合わせることができる。あるいは、認証サーバ２３０は、（例えば閾値回数を超えて認証が試行された場合）クライアント・サーバ２２０からの認証メッセージの送信をさせないことによってクライアント・サーバ２２０へのアクセスを単に拒否してもよい。
【００７７】
本明細書に記載のように、認証サーバ２３０は、許可されたユーザの習慣、活動歴などを示すブロックチェーンにおけるトランザクション情報にさらに基づいてユーザを認証（または無許可のユーザが認証されないと判断）することができる。ユーザが自分の身元の認証を試みると、認証サーバ２３０は、ブロックチェーン内のスクランブル化バイオメトリクス・データ、認知状態データ、またはトランザクション・データあるいはその組合せを確認することができる。このようにして、ユーザ認証がより安全になり得るとともに、ユーザが異なるクライアント・サーバ２２０に対する認証のために異なるパスワードを覚えておく必要がないため、ユーザの負担も軽減することができる。さらに、認証サーバ２３０は、各ブロックチェーン・トランザクションについて情動状態または認知状態を分類し、その認知状態をクライアント・サーバ２２０によって運営されるクライアント・サイト上でのユーザ体験に関連付けることができる。実施形態では、不可逆行動データおよびバイオメトリクス・データを各ブロック・トランザクションに関連付けることができる。このようにして、各トランザクションについてエンド・ツー・エンド・データ（例えば、ユーザ情報、バイオメトリックおよび行動／認知状態、クライアント・サーバ２２０情報など）が取り込まれる。本明細書に記載のように、バイオメトリクス・データと、認知状態データと、クライアント・サイト・データとの間の結びつきを暗号化し、管理するために、ブロックチェーン技術を不可逆関数とともに使用することができる。
【００７８】
図１０ないし図１２に、本発明の態様によるバイオメトリクス・データをスクランブルする例を示す。実施形態では、図１０ないし図１２の例は、図９に記載のプロセス・ステップ８３０に従ってバイオメトリクス・データに不可逆関数を適用することによって、バイオメトリクス・データをスクランブルするための例示の技法に対応し得る。図１０に示すように、バイオメトリクス・データ（例えば指紋）をスクランブルするためにデカルト・スクランブルを使用することができる。例えば、指紋パターンに基づいて指紋に異なる座標の値を割り当てることができる。これらの座標を任意の適合するランダム化アルゴリズムまたはスクランブル・アルゴリズムを使用してスクランブルし、そのスクランブル化データをブロックチェーン・トランザクションとしてブロックチェーン台帳に記憶し、暗号化することができる。
【００７９】
図１１を参照すると、バイオメトリクス・データ（例えば指紋データ）をスクランブルするために極性スクランブルも使用することができる。例えば、指紋パターンに基づいて指紋に異なる座標の値を割り当てることができ、それらの値を円グラフ上の位置に割り当てることができる。この位置または値あるいはその両方を、任意の適合するランダム化アルゴリズムまたはスクランブル・アルゴリズムを使用してスクランブルすることができ、スクランブル化データをブロックチェーン台帳にブロックチェーン・トランザクションとして記憶し、暗号化することができる。
【００８０】
図１２を参照すると、バイオメトリクス・データ（例えば指紋データ）をスクランブルするために表面折り畳みを使用してもよい。例えば、指紋パターンに基づいて指紋に異なる座標の値を割り当て、それらの値を表面グラフ上の位置に割り当てることができる。この位置または値あるいはその両方を、適合するランダム化アルゴリズムまたはスクランブル・アルゴリズムを使用してスクランブルすることができ、スクランブルされた位置および値に基づいて表面グラフを改変（例えば「折り畳み」）することができる。スクランブルまたは折り畳みされた表面グラフは、ブロックチェーン・トランザクションとしてブロックチェーン台帳に記憶し、暗号化することができる。
【００８１】
実施形態では、図１０ないし図１２に示すもの以外の他のスクランブル技法を使用することもできる。また、他の種類のバイオメトリクス・データ（例えば、網膜スキャン、顔画像、脈拍パターンなど）をスクランブルしてもよい。バイオメトリクス・データとともに認知状態データも組み合わせ、スクランブルしてもよい。例えば、バイオメトリクス・データをハッシュまたは一連の数字／文字に変換し、バイオメトリクス・データとともにスクランブルしてもよい。
【００８２】
実施形態では、サービス・プロバイダが本明細書に記載のプロセスの実行を提供することも可能である。この場合、サービス・プロバイダは、１件または複数件の顧客のために本発明のプロセス・ステップを行うコンピュータ・インフラストラクチャの作成、維持、配備、サポートなどを行うことができる。これらの顧客は、例えば、技術を使用する任意の企業とすることができる。その見返りとして、サービス・プロバイダは加入契約または料金契約あるいはその両方に従って顧客から支払いを受けることができるか、またはサービス・プロバイダは１件または複数件の第三者への広告コンテンツの販売から支払いを受けることができるか、あるいはその両方の支払いを受けることができる。
【００８３】
さらに他の実施形態では、本発明は、ネットワークを介したコンピュータ実装方法を提供する。この場合、コンピュータ・システム／サーバ１２（図１）などのコンピュータ・インフラストラクチャを設けることができ、本発明のプロセスを行うための１つまたは複数のシステムを入手し（例えば、作成、購入、使用、修正などを行い）、コンピュータ・インフラストラクチャに配備することができる。この範囲で、システムの配備は、（１）（図１に示すような）コンピュータ・システム／サーバ１２などのコンピューティング・デバイス上にコンピュータ可読媒体からプログラム・コードをインストールすることと、（２）コンピュータ・インフラストラクチャに１つまたは複数のコンピューティング・デバイスを追加することと、（３）コンピュータ・インフラストラクチャが本発明のプロセスを実行することができるようにするために、コンピュータ・インフラストラクチャに１つまたは複数のシステムを組み込むか、または１つまたは複数の既存のシステムを変更することとのうちの１つまたは複数を含むことができる。
【００８４】
本発明の様々な実施形態の説明を例示のために示したが、これらは網羅的であること、または開示されている実施形態に限定することを意図したものではない。記載されている実施形態の範囲および思想から逸脱することなく、多くの変更および変形が当業者には明らかであろう。本明細書で使用されている用語は、実施形態の原理、実際の適用、または市場に見られる技術に優る技術的改良を最もよく説明するために、または当業者が本明細書で開示されている実施形態を理解することができるように選定された。
【図１】
0006963678.tif 000002
【図２】
0006963678.tif 000003
【図３】
0006963678.tif 000004
【図４】
0006963678.tif 000005
【図５】
0006963678.tif 000006
【図６】
0006963678.tif 000007
【図７】
0006963678.tif 000008
【図８】
0006963678.tif 000009
【図９】
0006963678.tif 000010
【図１０】
0006963678.tif 000011
【図１１】
0006963678.tif 000012
【図１２】
0006963678.tif 000013