(57)【要約】【課題】  プロトコル・ベースの信頼範囲内で動作する分散認証モデルを提供すること。【解決手段】  信頼範囲内のコンピューティング・システムのうちの任意の１式と通信を行うことができるようにする代わりに、その外部コンピューティング・システムに特定のエッジ内部コンピューティング・システムと最初に通信を行わせることによって認証の量を低減する。次いで、必ずしも全部ではないが内部コンピューティング・システムの多くが、認証タスクをエッジ・コンピューティング・システムに委任し、エッジ・コンピューティング・システムが実施するどのような認証にも頼ることになる。これによって、大規模なプロトコル・ベースの信頼範囲に対して認証タスクをうまくスケーリングすることが可能になる。【選択図】  図３
2004355619.tif 000002
【特許請求の範囲】
【請求項１】
通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、前記通信が前記特定のプロトコルに従っていない場合には、必ずしも互いの間の前記通信を信頼しない、複数の内部コンピューティング・システムを含む、プロトコル・ベースの信頼範囲を含み、前記プロトコル・ベースの信頼範囲の外部にある複数の外部コンピューティング・システムをさらに含み、前記複数の外部コンピューティング・システムの少なくとも一部が１つの接続上で第１の内部コンピューティング・システムと通信を行う、ネットワーク環境において、第２の内部コンピューティング・システムが、前記１つの接続を介して前記第１の内部コンピューティング・システムを経由して前記第２の内部コンピューティング・システムが受信する通信を始めた発信元の外部コンピューティング・システムの識別情報を妥当性検査する方法であって、
発信元の外部コンピューティング・システムから始められた前記通信を、前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから前記通信を受信するステップであって、前記第１の内部コンピューティング・システムから直接に、あるいは前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから１つまたは複数の中間的な内部コンピューティング・システムを介して信頼されたチェーン誘導を移動した後に間接的に、受信する前記第２の内部コンピューティング・システムのステップと、
前記第２の内部コンピューティング・システムが前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが、外部コンピューティング・システムを認証するのを信頼して任せている内部コンピューティング・システム内のリストにアクセスするステップと、
前記第１の内部コンピューティング・システムが前記リスト上にあるか、または前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあるかを決定するステップと、
前記決定するステップだけに基づいて、前記発信元の外部コンピューティング・システムを別々に認証せずに、前記発信元の外部コンピューティング・システムの前記識別情報を妥当性検査するステップ
を備えることを特徴とする方法。
【請求項２】
前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムからの前記通信を受信する前記第２の内部コンピューティング・システムの前記ステップは、前記第１の内部コンピューティング・システムから直接に前記通信を受信するステップを備え、
前記決定するステップは、前記第１の内部コンピューティング・システムが前記リスト上にあることを決定するステップを備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから前記通信を受信する前記第２の内部コンピューティング・システムの前記ステップは、前記第１の内部コンピューティング・システムから１つまたは複数の中間的な内部コンピューティング・システムを介して信頼されたチェーン誘導を移動した後に間接的に、前記通信を受信するステップを備え、
前記決定するステップは、前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあることを決定するステップを備えることを特徴とする請求項１に記載の方法。
【請求項４】
前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあることを決定する前記ステップは、前記第１の内部コンピューティング・システムが前記リスト上にあることを決定するステップを備えることを特徴とする請求項１に記載の方法。
【請求項５】
前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあることを決定する前記ステップは、前記信頼されたチェーン中の直前の内部コンピューティング・システムが前記リスト上にあることを決定するステップを備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記特定のプロトコルは、セッション開始プロトコル（ＳＩＰ）であることを特徴とする請求項１に記載の方法。
【請求項７】
前記プロトコル・ベースの信頼範囲内の前記複数の内部コンピューティング・システムのすべては、共通の企業内にあることを特徴とする請求項１に記載の方法。
【請求項８】
前記リストにコンピューティング・システムを追加するステップをさらに備えることを特徴とする請求項７に記載の方法。
【請求項９】
前記リストにコンピューティング・システムを追加する前記ステップは、前記企業のシステム管理者からの命令に応答するステップであることを特徴とする請求項８に記載の方法。
【請求項１０】
前記複数の内部コンピューティング・システムは、共通の企業内にないことを特徴とする請求項１に記載の方法。
【請求項１１】
前記リストにコンピューティング・システムを追加するステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項１２】
通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、前記通信が前記特定のプロトコルに従っていない場合には、必ずしも互いの間の前記通信を信頼しない、複数の内部コンピューティング・システムを含む、プロトコル・ベースの信頼範囲を含み、前記プロトコル・ベースの信頼範囲の外部にあり、１つの接続上で第１の内部コンピューティング・システムと通信を行う、複数の外部コンピューティング・システムをさらに含むネットワーク環境中で使用するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、第２の内部コンピューティング・システムが、前記１つの接続を介して前記第１の内部コンピューティング・システムを経由して前記第２の内部コンピューティング・システムが受信する通信を始めた発信元の外部コンピューティング・システムの識別情報を妥当性検査する方法を実装しており、前記コンピュータ・プログラム製品は、前記方法を実施するコンピュータ実行可能な命令をその上に有する１つまたは複数のコンピュータ読取り可能媒体を備え、前記方法は、
発信元の外部コンピューティング・システムから始められた前記通信を、前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから前記通信を受信するステップであって、前記第１の内部コンピューティング・システムから直接に、あるいは前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから１つまたは複数の中間的な内部コンピューティング・システムを介してリードする信頼されたチェーン誘導を移動した後に間接的に、受信する前記第２の内部コンピューティング・システムのステップと、
前記第２の内部コンピューティング・システムが前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが、外部コンピューティング・システムを認証するのを信頼して任せている内部コンピューティング・システム内のリストにアクセスするステップと、
前記第１の内部コンピューティング・システムが前記リスト上にあるか、または前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあるかを決定するステップと、
前記決定するステップだけに基づいて、前記発信元の外部コンピューティング・システムを別々に認証せずに、前記発信元の外部コンピューティング・システムの前記識別情報を妥当性検査するステップと
を備えることを特徴とするコンピュータ・プログラム製品。
【請求項１３】
前記１つまたは複数のコンピュータ読取り可能媒体は、物理媒体であることを特徴とする請求項１２に記載のコンピュータ・プログラム製品。
【請求項１４】
前記１つまたは複数のコンピュータ読取り可能媒体は、システム・メモリであることを特徴とする請求項１３に記載のコンピュータ・プログラム製品。
【請求項１５】
前記１つまたは複数のコンピュータ読取り可能媒体は、永続的（persistent）メモリであることを特徴とする請求項１３に記載のコンピュータ・プログラム製品。
【請求項１６】
通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、前記通信が前記特定のプロトコルに従っていない場合には、必ずしも互いの間の前記通信を信頼しない、複数の内部コンピューティング・システムを含む、プロトコル・ベースの信頼範囲を含み、前記プロトコル・ベースの信頼範囲の外部にあり、１つの接続上で第１の内部コンピューティング・システムと通信を行う、複数の外部コンピューティング・システムをさらに含むネットワーク環境において、第２の内部コンピューティング・システムが、前記１つの接続を介して前記第１の内部コンピューティング・システムを経由して前記第２の内部コンピューティング・システムが受信する通信を始めた発信元の外部コンピューティング・システムの識別情報を妥当性検査する方法であって、
発信元の外部コンピューティング・システムから始められた前記通信を、前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから前記通信を受信するステップであって、前記第１の内部コンピューティング・システムから直接に、あるいは前記特定のプロトコルを使用して前記第１の内部コンピューティング・システムから１つまたは複数の中間的な内部コンピューティング・システムを介してリードする信頼されたチェーン誘導を移動した後に間接的に、受信する前記第２の内部コンピューティング・システムのステップと、
前記発信元の外部コンピューティング・システムを別々に認証せずに、前記通信を信頼すべきかどうかを決定する上位ステップと
を備えることを特徴とする方法。
【請求項１７】
前記発信元の外部コンピューティング・システムを別々に認証せずに、前記通信を信頼すべきかどうかを決定する前記上位ステップは、
前記第２の内部コンピューティング・システムで前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが、外部コンピューティング・システムを認証するのを信頼して任せている内部コンピューティング・システム内のリストにアクセスするステップと、
前記第１の内部コンピューティング・システムが前記リスト上にあるか、または前記信頼されたチェーン中の前記内部コンピューティング・システムのうちの少なくとも１式が前記リスト上にあるかを決定するステップと、
前記決定する上位ステップだけに基づいて、前記発信元の外部コンピューティング・システムを別々に認証せずに、前記発信元の外部コンピューティング・システムの前記識別情報を妥当性検査するステップと
を備えることを特徴とする請求項１６に記載の方法。
【請求項１８】
通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、前記通信が前記特定のプロトコルに従っていない場合には、必ずしも互いの間の前記通信を信頼しない、複数の内部コンピューティング・システムを含む、プロトコル・ベースの信頼範囲を含み、前記プロトコル・ベースの信頼範囲の外部にあり、１つの接続上で第１の内部コンピューティング・システムと通信を行う複数の外部コンピューティング・システムをさらに含むネットワーク環境において、前記第１の内部コンピューティング・システムが、前記複数の内部コンピューティング・システムのうちの少なくとも一部に代わって、通信を行う前記複数の外部コンピューティング・システムのうちの少なくとも一部を認証する方法であって、
第１の外部コンピューティング・システムとの接続を確立する前記第１の内部コンピューティング・システムのステップと、
前記特定のプロトコルを使用して、前記接続を介して前記第１の外部コンピューティング・システムから通信を受信するステップであって、前記通信のうちの第１の通信は、前記第１の外部コンピューティング・システムと同一または異なることもある第２の外部コンピューティング・システムから始められ、第２の内部コンピューティング・システムに向けられるか、または少なくとも第２の内部コンピューティング・システムを通過するようになっている、前記通信を受信するステップと、
前記第２の外部コンピューティング・システムを認証するステップと、
前記特定のプロトコルを使用して、前記第１の通信またはその派生通信を前記第２の内部コンピューティング・システムに転送するステップと、
を備え、
前記第２の内部コンピューティング・システムは、前記第２の内部コンピューティング・システムで前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが外部コンピューティング・システムを認証するのを信頼して任せている、前記第１の内部コンピューティング・システムを含む内部コンピューティング・システム内の、リストにアクセスすることを特徴とする方法。
【請求項１９】
前記通信は、第１の通信であり、前記方法はさらに、
前記第２の外部コンピューティング・システムとは異なる第３の外部コンピューティング・システムから始められ、前記第２の内部コンピューティング・システムと同一または異なることもある第３の内部コンピューティング・システムに向けられるか、または少なくとも第３の内部コンピューティング・システムを通過するようになっている第２の通信を、前記接続を介して前記第１の外部コンピューティング・システムから受信するステップと、
前記第３の外部コンピューティング・システムを認証するステップと、
前記第２の通信またはその派生通信を前記第３の内部コンピューティング・システムに転送するステップと
を備え、
前記第２の内部コンピューティング・システムは、前記第２の内部コンピューティング・システムで前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが、外部コンピューティング・システムを認証するのを信頼して任せている、前記第１の内部コンピューティング・システムを含む内部コンピューティング・システム内の、リストにアクセスすることを特徴とする請求項１８に記載の方法。
【請求項２０】
前記第２の内部コンピューティング・システムと前記第３の内部コンピューティング・システムは、同一であることを特徴とする請求項１９に記載の方法。
【請求項２１】
前記第２の内部コンピューティング・システムと前記第３の内部コンピューティング・システムは、異なることを特徴とする請求項１９に記載の方法。
【請求項２２】
前記第２の内部コンピューティング・システムによってアクセス可能な前記リストと前記第３の内部コンピューティング・システムによってアクセス可能な前記リストは、同一リストであることを特徴とする請求項２１に記載の方法。
【請求項２３】
前記第２の内部コンピューティング・システムによってアクセス可能な前記リストと前記第３の内部コンピューティング・システムによってアクセス可能な前記リストは、互いに同一のコピーであるが異なるリストであることを特徴とする請求項２１に記載の方法。
【請求項２４】
前記第２の内部コンピューティング・システムによってアクセス可能な前記リストと前記第３の内部コンピューティング・システムによってアクセス可能な前記リストは、異なるリストであり、互いに同一のコピーではないことを特徴とする請求項２１に記載の方法。
【請求項２５】
前記第２の外部コンピューティング・システムと前記第１の外部コンピューティング・システムは、同一であることを特徴とする請求項１８に記載の方法。
【請求項２６】
前記第２の外部コンピューティング・システムは、前記第１の外部コンピューティング・システムと異なることを特徴とする請求項１８に記載の方法。
【請求項２７】
前記第３の外部コンピューティング・システムは、前記第１の外部コンピューティング・システムと同一であることを特徴とする請求項２６に記載の方法。
【請求項２８】
前記第３の外部コンピューティング・システムは、前記第１の外部コンピューティング・システムと異なることを特徴とする請求項２６に記載の方法。
【請求項２９】
前記特定のプロトコルは、セッション開始プロトコル（ＳＩＰ）であることを特徴とする請求項１８に記載の方法。
【請求項３０】
前記第２の外部コンピューティング・システムを認証する前記ステップは、トランスポート・レイヤ・セキュリティ（ＴＬＳ）を使用して実施されることを特徴とする請求項２９に記載の方法。
【請求項３１】
前記通信は、前記第２の内部コンピューティング・システムに向けられていることを特徴とする請求項１８に記載の方法。
【請求項３２】
前記通信は、前記第２の内部コンピューティング・システムを通過するようになっていることを特徴とする請求項１８に記載の方法。
【請求項３３】
前記通信は、第３の内部コンピューティング・システムに向けられていることを特徴とする請求項３２に記載の方法。
【請求項３４】
前記通信は、第４の外部コンピューティング・システムに向けられていることを特徴とする請求項３２に記載の方法。
【請求項３５】
通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、前記通信が前記特定のプロトコルに従っていない場合には、必ずしも互いの間の前記通信を信頼しない、複数の内部コンピューティング・システムを含む、プロトコル・ベースの信頼範囲を含み、前記プロトコル・ベースの信頼範囲の外部にあり１つの接続上で第１の内部コンピューティング・システムと通信を行う複数の外部コンピューティング・システムをさらに含むネットワーク環境中で使用するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、前記第１の内部コンピューティング・システムが、前記複数の内部コンピューティング・システムの少なくとも一部に代わって、通信を行う前記複数の外部コンピューティング・システムの少なくとも一部を認証する方法を実装しており、前記コンピュータ・プログラム製品は、前記方法を実施する前記コンピュータ実行可能な命令をその上に有する１つまたは複数のコンピュータ読取り可能媒体を含み、前記方法は、
第１の外部コンピューティング・システムとの接続を確立する前記第１の内部コンピューティング・システムのステップと、
前記特定のプロトコルを使用して、前記接続を介して前記第１の外部コンピューティング・システムから通信を受信するステップであって、前記通信のうちの第１の通信は、前記第１の外部コンピューティング・システムと同一または異なることもある第２の外部コンピューティング・システムから始められ、第２の内部コンピューティング・システムに向けられるか、または少なくとも第２の内部コンピューティング・システムを通過するようになっている、前記通信を受信するステップと、
前記第２の外部コンピューティング・システムを認証するステップと、
前記特定のプロトコルを使用して、前記第１の通信またはその派生通信を前記第２の内部コンピューティング・システムに転送するステップと、
を備え、
前記第２の内部コンピューティング・システムは、前記第２の内部コンピューティング・システムで前記外部コンピューティング・システムを別々に認証せずに、前記第２の内部コンピューティング・システムが、外部コンピューティング・システムを認証するのを信頼して任せている、前記第１の内部コンピューティング・システムを含む内部コンピューティング・システム内の、リストにアクセスすることを特徴とするコンピュータ・プログラム製品。
【請求項３６】
前記１つまたは複数のコンピュータ読取り可能媒体は、物理媒体であることを特徴とする請求項３５に記載のコンピュータ・プログラム製品。
【請求項３７】
前記１つまたは複数のコンピュータ読取り可能媒体は、システム・メモリであることを特徴とする請求項３６に記載のコンピュータ・プログラム製品。
【請求項３８】
前記１つまたは複数のコンピュータ読取り可能媒体は、永続的（persistent）メモリであることを特徴とする請求項３６に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク認証技術に関する。より詳細には、本発明は、プロトコル・ベースの信頼範囲（sphere of trust）内の認証責任が、信頼範囲全体にわたって分散され委任される機構に関する。
【背景技術】
【０００２】
以前には現在ほど、多くの人々が多くの情報にアクセスできたことはなく、また以前には現在ほど、多くの人々が容易に通信することもできなかった。高度に進歩した通信および情報アクセスが可能になったこの新しい時代は、全世界にわたるコンピュータ・ネットワークの発展および急増によるところが大きい。インターネットが可能なコンピュータ・システムにアクセスできる個人は誰でも、数百万台の他の同様なインターネット可能なコンピューティング・システムのうち任意の１つと（またおそらくはその関連するユーザと）通信する（またはその資源にアクセスする）ことができる。これは、動作が適切なときには、確かに有利であるが、害を引き起こす不運な機会も存在する。
【０００３】
かかるネットワーク環境中で引き起こされる害を軽減するために、より高度な機密を扱うネットワーク資源に対するアクセスは、ある種のコンピューティング・システムまたはユーザだけがそのネットワーク資源にアクセスすることができるように制御される。コンピューティング・システムを識別して、その結果、アクセスを認可すべきか否かを知的に判断するためには、アクセスを要求するコンピューティング・システムの真のアイデンティティ（identity：識別情報、身元）を確定することが必要である。適切な識別は、「認証」と呼ばれる共通のネットワーク・プロセス中で遂行される。
【０００４】
認証が実装される一環境は、共通の信頼範囲の外部にあるコンピューティング・システムが、共通の信頼範囲の内部にあるコンピューティング・システムと通信を行うことが存在する場合である。１タイプの信頼範囲には、信頼範囲内の内部コンピューティング・システムが、特定のプロトコルに従っている通信に関して互いに通信を行うが、他のタイプの通信に関しては必ずしも通信するとは限らないというプロトコル・ベースの信頼範囲がある。
【０００５】
信頼範囲内に多数のコンピューティング・システムがあり、内部コンピューティング・システムのどれか１式と通信をしたいと望む多数の外部コンピューティング・システムがある場合、各内部コンピューティング・システムには、多数の外部コンピューティング・システムを認証する準備が整っている必要があることになる。資格証明書（credential）が繰り返し要求されるのを防止するために、サーバでは、状態が保持される。サーバに対して要求を送信するユーザの総数が増大するにつれ、サーバ上に保持される状態の量が非常に増大する可能性がある。証明書ベースの認証（certificate-based authentication）が使用されない場合でも、各内部コンピューティング・システムが認証する必要のある外部コンピューティング・システムの絶対数は、内部コンピューティング・システムの記憶資源および処理資源を圧倒してしまう可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、プロトコル・ベースの信頼範囲に適用可能な認証機構が存在し、そこで、内部および外部のコンピューティング・システムの記憶資源および処理資源を保存しながら、信頼性のある認証が存在することが可能であれば、好都合である。
【課題を解決するための手段】
【０００７】
従来の最新技術に伴う前述の問題は、プロトコル・ベースの信頼範囲内で動作する分散認証モデルを対象とする本発明の原理によって克服される。プロトコル・ベースの信頼範囲には、通信が特定のプロトコルに従っている限り互いの間の通信を信頼するが、通信が特定のプロトコルに従っていない場合には、必ずしも互いの間の通信を信頼しないといういくつかの内部コンピューティング・システムが含まれる。また、内部コンピューティング・システムとの通信かつ／または内部コンピューティング・システムを介しての通信をしようとする可能性のあるプロトコル・ベースの信頼範囲外のいくつかの外部コンピューティング・システムもある。
【０００８】
内部コンピューティング・システムのうちのどれか１式と通信を行うことができるようにするのではなくて、以降で「エッジ（edge）」コンピューティング・システムと称する特定の内部コンピューティング・システムとの間で外部コンピューティング・システムに最初に通信を行わせることによって認証の量を低減することができる。さらに、本明細書中で説明するように、外部コンピューティング・システムでは、任意の内部コンピューティング・システムと通信を行うときに一度認証するだけであり、パス中の各内部コンピューティング・システムに対して別々に認証を行う必要がない。したがって、外部のコンピューティング・システムは、たった一度の認証に関する状態および処理しか必要とされないので、記憶資源および処理資源を保持することも可能となる。
【０００９】
エッジ・コンピューティング・システムは、第１の外部コンピューティング・システムとの接続を確立する。この接続を介して、エッジ・コンピューティング・システムは、この第１の外部コンピューティング・システムを介して経路指定されるいくつかのソースからの通信を受信する。エッジ・コンピューティング・システムは、各通信のソースから適切な資格証明書を獲得することによって、認証の作業集約的タスクを実施する。認証は、コンピューティング・システムのパス中で認証を行う際には、２段階のプロセスとなる。通信を受信すると、エッジ・コンピューティング・システムが、まず第１の外部コンピューティング・システム（すなわち、パス中の直前のコンピューティング・システム）の認証を行う。それがこの通信のソースではない（すなわち、このパス中にある直前のコンピューティング・システムのさらに先にこのパスが延びている）場合には、この所与のコンピューティング・システムはまた、通信のソースも認証する。そのソースが、一度適切に認証されると、エッジ・コンピューティング・システムは、通信の宛先となる別の内部コンピューティング・システムに向けて、あるいは信頼範囲の内部または外部の宛先へとさらに通信が経路指定される途上にある、別の内部コンピューティング・システムに向けて通信を送り出す。
【００１０】
次の内部コンピューティング・システムは、特定のプロトコルを使用してエッジ・コンピューティング・システムからの通信を受信する。次の内部コンピューティング・システムにはまた、２段階の認証プロセスがある。上述の２段階の認証プロセスと同様に、第１段階は、通信パス中の直前のコンピューティング・システムを認証するものである。しかし、第２段階は、プロトコル・ベースの信頼範囲のコンテキストに全く固有のものとなる。特に、次の内部コンピューティング・システムは、記憶集約的およびプロセッサ集約的な資格証明書の交換を通した通信のソースの認証、をすぐには行わない。その代わりに、次の内部コンピューティング・システムが外部コンピューティング・システムを別々に認証することなしに、次の内部コンピューティング・システムが外部コンピューティング・システムについての認証を信頼して任せている、内部コンピューティング・システム内の、リストに次の内部コンピューティング・システムはアクセスする。エッジ・コンピューティング・システムが、そのリスト上にある場合には、次の内部コンピューティング・システムは、資格証明書の交換を通したソースの別々の認証をすることなく、通信のソースの識別情報（identity）の妥当性を確認する。
【００１１】
次の内部コンピューティング・システムがこの通信の宛先である場合には、次の内部コンピューティング・システムは、エッジ・コンピューティング・システムが実施する認証に依存する適切な措置を講ずることができる。例えば、次の内部コンピューティング・システムでは、アクセスすることを許容されている要求された資源へのアクセスを認可することができ、あるいはそうでなくて、そのソースが許容されていない場合には、アクセス拒否メッセージを返すことができる。次の内部コンピューティング・システムが通信の宛先でない場合には、次の内部コンピューティング・システムは、通信を後続の内部コンピューティング・システムに沿って転送し、またリストの検査を後続の内部コンピューティング・システムに委任することさえできる。
【００１２】
本発明のさらなる特徴および利点は、以下に続く説明に記載してあり、また部分的には説明から明らかであり、あるいは発明を実施することによって知ることができる。本発明の特徴および利点は、特許請求の範囲に特に指摘される手段およびその組合せを用いて実現し、得ることができる。本発明の以上のおよびその他の特徴は、以下の説明および添付特許請求の範囲からさらに十分に明らかなものとなり、また以下に記載の本発明の実施によって知ることができよう。
【００１３】
以上に列挙の、また他の本発明の利点および特徴を得ることができる方法について説明するために、添付図面に示すその特定の実施形態を参照することにより、以上に簡単に説明した本発明のより詳細な説明を行っている。これら図面が本発明の典型的な実施形態だけを示したものにすぎず、したがってその範囲を限定するものとは見なされないとの理解を得ながら、添付図面を使用して、本発明をさらに特定的に詳細に記述し説明することにする。
【発明を実施するための最良の形態】
【００１４】
本発明の原理は、プロトコル・ベースの信頼範囲内で動作する分散認証モデルに関する。信頼範囲内部のコンピューティング・システムのうちのどれか１式と通信を行うことができるようにする代わりに、外部コンピューティング・システムに、以降で「エッジ」コンピューティング・システムと称する特定の内部コンピューティング・システムと最初に通信を行わせることによって認証の量が低下する。次いで、必ずしも全部ではないが、内部コンピューティング・システムの多くが、認証タスクをエッジ・コンピューティング・システムに委任し、エッジ・コンピューティング・システムが実施するどのような認証にも頼ることになる。これによって、大規模なプロトコル・ベースの信頼範囲に対する認証のタスクをうまくスケーリングする（scale）ことが可能になる。
【００１５】
本発明の範囲内の実施形態には、その上に記憶されるコンピュータ実行可能な命令またはデータ構造を担持しあるいは有するコンピュータ読取り可能媒体が含まれる。かかるコンピュータ読取り可能媒体は、汎用または専用のコンピュータによってアクセスすることができる任意の利用可能媒体とすることができる。例としては、それだけには限定されないが、かかるコンピュータ読取り可能媒体は、コンピュータ実行可能な命令またはデータ構造の形式で所望のプログラム・コード手段を運びまたは記憶するために使用でき、汎用または専用のコンピュータによってアクセスすることができる、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶装置、またはその他任意の媒体など、物理的なコンピュータ読取り可能媒体を含むことができる。
【００１６】
情報がネットワーク上または別の（有線、無線、または有線または無線の組合せによる）通信接続上でコンピュータに転送されまたは提供されるとき、コンピュータは、この接続をコンピュータ読取り可能媒体であると適切に見なす。したがって、かかる接続はどれも、コンピュータ読取り可能媒体であると適切に称される。以上の組合せもまた、コンピュータ読取り可能媒体の範囲内に含められる。コンピュータ実行可能な命令には、例えば、汎用コンピュータ、専用コンピュータ、または特殊目的処理装置にある種の機能または機能群を実施させるどのような命令およびデータも含まれる。コンピュータ実行可能な命令は、例えば、バイナリ命令、アセンブリ言語などの中間形式命令でもよく、またはソースコードでさえあってもよい。必ずしも必要ではないが、本発明では、ネットワーク環境内のコンピュータによって実行される、プログラム・モジュールなどのコンピュータ実行可能な命令の一般的なコンテキストで記述されることになる。一般に、プログラム・モジュールには、特定のタスクを実施し、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。
【００１７】
本発明を、パーソナル・コンピュータ、ハンドヘルド装置、マルチ・プロセッサ・システム、マイクロ・プロセッサ・ベースまたはプログラム可能な家電、ネットワークＰＣ、ミニ・コンピュータ、メインフレーム・コンピュータなどを含めて、多くのタイプのコンピュータ・システム構成をもつネットワーク・コンピューティング環境中で実行することができることを当業者なら理解されよう。本発明はまた、タスクが、通信ネットワークを介して（有線リンク、無線リンクによって、あるいは有線リンクまたは無線リンクの組合せによって）リンクされるローカルおよびリモートの処理装置によって実施される分散コンピューティング環境においても実行される。分散コンピューティング環境中には、ローカル・メモリ記憶装置にもリモート・メモリ記憶装置にもプログラム・モジュールを配置することができる。
【００１８】
図１に本発明の原理をコンピュータ１２０の形式で使用することができる適切なコンピューティング・環境を示す。コンピュータ１２０は、処理装置１２１、システム・メモリ１２２、およびシステム・メモリ１２２を含めて様々なシステム構成要素を処理装置１２１に結合するシステム・バス１２３を含む。
【００１９】
システム・バス１２３は、メモリ・バスまたはメモリ制御装置、周辺機器バス、および様々なバス・アーキテクチャのどれかを使用したローカル・バスを含めていくつかのタイプのバス構造のうちのどれであってもよい。システム・メモリは、ＲＯＭ（read only memory：読出し専用メモリ）１２４およびＲＡＭ（random access memory：ランダム・アクセス・メモリ）１２５を含む。起動中などに、コンピュータ１２０内の要素間で情報を転送する助けをする基本ルーチンを含むＢＩＯＳ（basic input/output system：基本入出力システム）１２６は、ＲＯＭ１２４中に記憶することができる。
【００２０】
コンピュータ１２０はまた、磁気ハードディスク１３９から情報を読み取りそれに書き込む磁気ハードディスク・ドライブ１２７、着脱可能磁気ディスク１２９から情報を読み取りそれに書き込む磁気ディスク・ドライブ１２８、およびＣＤ−ＲＯＭや他の光媒体など着脱可能な光ディスク１３１から情報を読み取りそれに書き込む光ディスク・ドライブ１３０を含むこともできる。磁気ハードディスク・ドライブ１２７、磁気ディスク・ドライブ１２８、および光ディスク・ドライブ１３０は、それぞれハードディスク・ドライブ・インターフェース１３２、磁気ディスク・ドライブ・インターフェース１３３、および光ドライブ・インターフェース１３４によってシステム・バス１２３に接続される。これらドライブおよびこれらに関連するコンピュータ読取り可能媒体は、コンピュータ１２０に対するコンピュータ実行命令、データ構造、プログラム・モジュール、および他のデータの不揮発性記憶域を提供する。本明細書中に記載の例示の環境では、磁気ハードディスク１３９、着脱可能磁気ディスク１２９、および着脱可能光ディスク１３１が使用されているが、磁気カセット、フラッシュ・メモリ・カード、ディジタル・ビデオ・ディスク、ベルヌーイ（Bernoulli）カートリッジ、ＲＡＭ、ＲＯＭなどを含めてデータを記憶する他のタイプのコンピュータ読取り可能媒体も使用することができる。
【００２１】
オペレーティング・システム１３５、１つまたは複数のアプリケーション・プログラム１３６、他のプログラム・モジュール１３７、およびプログラム・データ１３８を含めて１つまたは複数のプログラム・モジュールを含むプログラム・コード手段は、ハードディスク１３９、磁気ディスク１２９、光ディスク１３１、ＲＯＭ１２４、またはＲＡＭ１２５上に記憶することができる。ユーザは、キーボード１４０、ポインティング装置１４２、またはマイクロフォン、ジョイスティック、ゲーム・パッド、衛星パラボラ・アンテナ、スキャナーなど他の入力装置（図示せず）を介してコンピュータ１２０にコマンドおよび情報を入力することができる。これらおよび他の入力装置はしばしば、システム・バス１２３に結合されたシリアル・ポート・インターフェース１４６を介して処理装置１２１に接続される。あるいは、これらの入力装置は、パラレル・ポート、ゲーム・ポート、またはユニバーサル・シリアル・バス（ＵＳＢ）などの他のインターフェースによって接続することもできる。モニタ１４７または別のディスプレイ装置もまた、ビデオ・アダプタ１４８などのインターフェースを介してシステム・バス１２３に接続される。パーソナル・コンピュータは一般に、モニタに加えて、スピーカやプリンタなど他の周辺出力装置（図示せず）を含む。
【００２２】
コンピュータ１２０は、リモート・コンピュータ１４９ａおよび１４９ｂなど、１台または複数台のリモート・コンピュータへの論理接続を使用してネットワーク化環境中で動作することができる。リモート・コンピュータ１４９ａおよび１４９ｂはそれぞれ、別のパーソナル・コンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置または他の共通ネットワーク・ノードでもよく、一般にコンピュータ１２０に関連する前述の要素の多くまたはすべてを含むが、図１にはメモリ記憶装置１５０ａおよび１５０ｂ、ならびにこれらの関連するアプリケーション・プログラム１３６ａおよび１３６ｂだけしか示していない。図１に示す論理接続には、ローカル・エリア・ネットワーク（ＬＡＮ）１５１およびワイド・エリア・ネットワーク（ＷＡＮ）１５２が含まれ、これらはここに例として提示しており、限定をするものではない。かかるネットワーキング環境は、オフィス全体または企業全体のコンピュータ・ネットワーク、イントラネット、およびインターネットにおいては普通である。
【００２３】
ＬＡＮネットワーキング環境中で使用するとき、コンピュータ１２０は、ネットワーク・インターフェースまたはアダプタ１５３を介してローカル・ネットワーク１５１に接続される。ＷＡＮネットワーキング環境中で使用するときには、コンピュータ１２０には、モデム１５４、無線リンク、またはインターネットなどワイド・エリア・ネットワーク１５２上で通信を確立する他の手段を含むことができる。内部または外部にあってもよいモデム１５４は、システム・バス１２３にシリアル・ポート・インターフェース１４６を介して接続される。ネットワーク化された環境中では、コンピュータ１２０に関連して示したプログラム・モジュールまたはそれらの部分をリモート・メモリ記憶装置に記憶することができる。図に示したネットワーク接続は、例示的なものであり、ワイド・エリア・ネットワーク１５２上で通信を確立する他の手段も使用することができることが理解されよう。
【００２４】
図１には、本発明の原理を実装することができるコンピューティング・システムの一例を示しているが、どのようなコンピュータにも本発明の特徴を実装することができる。この説明中および特許請求の範囲中では、「コンピューティング・システム」は、任意のハードウェア構成要素または１つまたは複数の機能を実施するソフトウェアを使用することができるコンポーネントとして広く定義される。コンピューティング・システムの例には、デスクトップ・コンピュータ、ラップトップ・コンピュータ、携帯情報端末（ＰＤＡ）、電話、または処理機能を有する他の任意のシステムまたは装置が含まれる。
【００２５】
図２に、本発明の原理を実装することができるネットワーク環境２００を示す。ネットワーク環境２００は、プロトコル・ベースの信頼範囲２１０を含み、この信頼範囲には、通信が、信頼範囲が基づいている特定のプロトコルに従っている限りは、互いの間の通信を信頼するいくつかのコンピューティング・システムが含まれる。以降では、このプロトコル・ベースの信頼範囲２１０内にあるコンピューティング・システムをまた「内部」コンピューティング・システムと呼ぶことにし、一方、プロトコル・ベースの信頼範囲２１０外にあるコンピューティング・システムをまた「外部」コンピューティング・システムと呼ぶことにする。信頼範囲２１０は、特定のプロトコルに基づいているので、特定のプロトコルに従わない内部コンピューティング・システム間の通信は必ずしも信頼されるとは限らない。
【００２６】
プロトコル・ベースの信頼範囲２１０内のコンピューティング・システムの数および相互接続は、数え上げることができる。例示の目的だけのために、プロトコル・ベースの信頼範囲２１０が、コンピューティング・システム２１１ないし２１４、ならびにコンピューティング・システム２２１ないし２２６を含むものとして示す。内部コンピューティング・システム２１１ないし２１４は、これらが外部コンピューティング・システムとインターフェースすることが可能になっており、資格証明書の交換を介して認証を実施するので、プロトコル・ベースの信頼範囲２１０のエッジに示されている。したがって、内部コンピューティング・システム２１１ないし２１４はまた、しばしば本明細書中で「エッジ」コンピューティング・システムまたは「エッジ」内部コンピューティング・システムと呼ぶことにする。プロトコル・ベースの信頼範囲２１０は、共通の企業またはドメイン内にあってもよく、また複数の企業および／またはインターネットの一部分に及んでいてもよい。
【００２７】
このネットワーク環境はまた、所与の内部コンピューティング・システムとの通信または所与の内部コンピューティング・システムを介しての通信を行う可能性のある外部コンピューティング・システム２４０ないし２４６を含む。コンピューティング・システム２１１ないし２１４、コンピューティング・システム２２１ないし２２６、およびコンピューティング・システム２４０ないし２４６のうちのどれも、コンピュータ１２０について前述したような構造とすることができる。しかし、かかるコンピューティング・システムでは、本明細書中に記載のコンピューティング・システムの定義内に含まれる他の任意の形態を取ることもできる。
【００２８】
外部コンピューティング・システム２４１ないし２４６の一部は、エッジ・コンピューティング・システム２１１を介して内部コンピューティング・システムとの通信を行うことができる。例えば、外部コンピューティング・システム２４１は、外部コンピューティング・システム２４１とエッジ・コンピューティング・システム２１１の間の接続２５０を使用して、エッジ・コンピューティング・システム２１１を介して内部コンピューティング・システムと通信を行うことができる。外部コンピューティング・システム２４２ないし２４６もまた、外部コンピューティング・システム２４１を介して、接続２５０を介して、エッジ・コンピューティング・システム２１１を介して、内部コンピューティング・システムに至る通信を行うことができる。複数のソースと複数の宛先について単一の接続を共通に共用することを可能にする１つのプロトコルには、ＳＩＰ（Session Initiation Protocol：セッション開始プロトコル）がある。一実施形態では、プロトコル・ベースの信頼範囲２１０は、信頼されたプロトコルとしてのＳＩＰに基づいている。
【００２９】
図３に、プロトコル・ベースの信頼範囲２１０を介して認証を分散する方法３００を示す。ネットワーク環境２００のコンテキストでこの方法３００を実施することができる。したがって、図３の方法３００については、図２のネットワーク環境２００をしばしば参照しながら説明することにする。方法３００の動作の一部は、見出し「エッジ（ＥＤＧＥ）」の下の図３の右カラムに示すように、エッジ・コンピューティング・システムによって実施される。他のステップおよび上位ステップは、見出し「ネクスト（ＮＥＸＴ）」の下に図３の左カラムに示すように別の内部コンピューティング・システムによって実施される。
【００３０】
エッジ・コンピューティング・システムは、まず外部コンピューティング・システムとの接続を確立する（Ａｃｔ３０１）。例えば、図２を参照すると、エッジ・コンピューティング・システム２１１は、外部コンピューティング・システム２４１との接続２５０を確立する。この段階で、エッジ・コンピューティング・システム２１１では、外部コンピューティング・システム２４１ないし２４６のうちのどれか１つから接続２５０上を通した通信を受信することができる。次いで、エッジ・コンピューティング・システム２１１は、外部コンピューティング・システム２４１ないし２４６のうちのどれかを起源とする通信を第１のコンピューティング・システム２４１から受信する（Ａｃｔ３０２）。
【００３１】
次いで、エッジ・コンピューティング・システム２１１は、ソースの外部コンピューティング・システムを認証し（Ａｃｔ３０３）、次いでこの通信またはその派生通信を次の内部コンピューティング・システムに転送する（Ａｃｔ３０４）。この認証は、ＮＴＬＭ、Ｋｅｒｂｅｒｏｓ、Ｂａｓｉｃ、Ｄｉｇｅｓｔ、ＭＴＬＳ上のＩＰＳｅｃなどを含めて任意の認証機構を使用して実施することができる。次の内部コンピューティング・システムは、このコンピューティング・システムの宛先であってよい。例えば、内部コンピューティング・システム２２１は、この通信に対して可能性のある次のコンピューティング・システム２２１を表する。
【００３２】
他方、次のコンピューティング・システムは、この通信の宛先ではなくて、この通信が単にそれを通るように経路指定されているだけのコンピューティング・システムとすることもできる。例えば、内部コンピューティング・システム２２２を使用してこの通信を別の内部コンピューティング・システムまたは外部コンピューティング・システムへと経路指定することもできる。例えば、内部コンピューティング・システム２２３、２２４および２２５のうちのどれかと通信を行うとき、または外部コンピューティング・システム２４０への通信を行うときに、次のコンピューティング・システム２２２を中間コンピューティング・システムとして使用することもできる。この通信は、信頼範囲２１０が基づいている特定のプロトコルを使用してコンピューティング・システムからコンピューティング・システムへと伝えられる。
【００３３】
次いで、次の内部コンピューティング・システムは、特定のプロトコルを使用してエッジ・コンピューティング・システムからの通信を受信する（Ａｃｔ３１１）。次いで、次の内部コンピューティング・システムは、例えばＭＴＬＳ（Mutually authenticated Transport Layer Protocol：相互認証トランスポート・レイヤ・プロトコル）を使用してエッジ・コンピューティング・システムを認証することによって２段階の認証プロセスのうちの第１段階の認証プロセスを実施するが、この通信を始めた外部コンピューティング・システムについては認証しない。ＭＴＬＳが認証に使用される場合、様々な内部コンピューティング・システム間の接続は、インターネットなどのような、公共のまたは信頼できないネットワークを介している可能性さえある。
【００３４】
次いで、次の内部コンピューティング・システムは、発信元の外部コンピューティング・システム（originating external computing system）を別々に認証せずに、この通信を信頼するか否かを決定する機能的な結果指向の上位ステップを実施する（ステップ３１２）。この機能的な結果指向の上位ステップには、この結果を達成する対応する複数の動作（Ａｃｔ）を含めることができる。図示の実施形態では、ステップ３１２には、対応するＡｃｔ３１３、３１４および３１５が含まれる。
【００３５】
次の内部コンピューティング・システムでは、発信元の外部コンピューティング・システムの識別情報（identity）の妥当性を検査することによって第２段階の認証プロセスが実施される。詳細には、次の内部コンピューティング・システムは、内部コンピューティング・システムが別々に外部コンピューティング・システムを認証することなく、次の内部コンピューティング・システムが外部コンピューティング・システムを認証することを信頼して任せている、内部コンピューティング・システム内の、リストにアクセスする。このリストは、図２にリスト２３０として示されている。このリスト２３０は、すべての内部コンピューティング・システム間で共用され、ここで、各内部コンピューティング・システムは、同じ内部コンピューティング・システムが外部コンピューティング・システムについての認証を実施するのを信頼して任せている。このリストは、共用され、またはコピーがプロトコル・ベースの信頼範囲２１０全体にわたって配布される。このコピーは、同じこともあり、異なることもある。この違いは、何らかの複写遅延の結果であることもあり、またおそらく意図的にばらつきとすることも可能である。
【００３６】
例えば、一実施形態では、エッジ・コンピューティング・システム２１１ないし２１４は、外部コンピューティング・システムの認証を実施するのを、他の内部コンピューティング・システム２２１ないし２２６から信頼して任されている。他の実施形態では、エッジ・コンピューティング・システムのうちの１つまたはいくつかからなるグループが、内部コンピューティング・システムの一部分のために外部コンピューティング・システムを認証するのを信頼して任される一方、他のエッジ・コンピューティング・システムが、さらに他の内部コンピューティング・システムのために外部コンピューティング・システムの認証を実施することが可能である。
【００３７】
次いで、次の内部コンピューティング・システムは、そのエッジ・コンピューティング・システムがリスト上にあることを決定し（Ａｃｔ３１４）、それに応じて、そのエッジ・コンピューティング・システムがリスト上にあるという理由に単に基づいて、発信元の外部コンピューティング・システムを別々に認証することをせずに、この発信元の外部コンピューティング・システムの識別情報の妥当性を検査する（Ａｃｔ３１５）。本説明および特許請求の範囲では、「認証」とは、１式のコンピューティング・システムが、それを提供しているパーティが本当に主張している当の本人または当のものであるという資格証明書の受信を介して保証を得るプロセスのことを意味する。本説明および特許請求の範囲では、「妥当性検査」とは、１式のコンピューティング・システムが、パーティの資格証明書を受信することによって、あるいは何らかの他の手段によって、そのパーティが、主張している当のパーティである、という保証を得るプロセスを意味する。
【００３８】
次のコンピューティング・システムがこの通信の宛先でない場合には、この通信を後続の内部コンピューティング・システムに転送し、この通信が信頼範囲２１０内の宛先に到達するまで、あるいはこの通信が信頼範囲２１０の外部に配信するために別のエッジ・コンピューティング・システムに到達するまで、同様な転送をすることが可能である。後続の内部コンピューティング・システムのそれぞれでは、次の内部コンピューティング・システムに対しても前述と同じプロセスを実施することができる。例えば、発信元の外部コンピューティング・システム２４２から宛先の外部コンピューティング・システム２４０へこの通信を配信することになっている場合、内部コンピューティング・システム２２２、２２３、２２４および２１２のそれぞれでは、次の内部コンピューティング・システムに対して以上で挙げたＡｃｔおよび上位ステップを実施することができる。
【００３９】
例えば、内部コンピューティング・システム２２２、２２３、２２４および２１２では、この通信を受信し、パス中の以前の内部コンピューティング・システムを認証し（ただし、発信元の外部コンピューティング・システムを認証しないで）、このリストを使用して配信チェーン（delivery chain）中の以前の内部コンピューティング・システムには、起源となる外部コンピューティング・システムを認証する権限または妥当性を検査する権限があることを決定し、次いで資格証明書の交換を介して発信元の外部コンピューティング・システムの認証を別々に実施せずに、それらのシステム自体で発信元の外部コンピューティング・システムを妥当性検査することができる。
【００４０】
したがって、本発明の原理では、比較的少ないエッジ・コンピューティング・システムでしばしばメモリ集約的およびプロセッサ集約的な認証タスクを実施できるようにし、一方、他の内部コンピューティング・システムはそれらの認証を信頼（して任せる）することによって認証をかなり簡単にすることが可能である。これによって、これら他の内部コンピューティング・システムでは認証プロセスから解放される。したがって、本発明の原理は、より大規模なプロトコル・ベースの信頼範囲に対して、うまくスケーリングされる。
【００４１】
本発明の原理は、より少ない接続数を使用して複数の外部コンピューティング・システムがエッジ・コンピューティング・システム経由で内部コンピューティング・システムへの通信、または内部コンピューティング・システムを介する通信を行うことができるようにするときに、特にうまく機能する。換言すれば、所与の任意の接続を使用して（例え複数の接続がある場合でさえ）、複数の外部コンピューティング・システムがエッジ・コンピューティング・システム経由で内部コンピューティング・システムへと通信を行い、または内部コンピューティング・システムを介して通信を行うことを可能にすることができる。他の内部コンピューティング・システムのために認証すべき、それぞれおよびあらゆる外部コンピューティング・システムのための、１つの接続を確立するのに関連する複雑なタスクを、これらのエッジ・コンピューティング・システムが実施する必要はない。したがって、所与の数の外部コンピューティング・システムを認証するために必要となるエッジ内部コンピューティング・システムの数は少なくて済む。これによって、より大規模なネットワーク化されたプロトコル・ベースの信頼範囲に対しても、さらに本発明をうまくスケーリングすることが可能となる。
【００４２】
特定の一実装形態では、コンピューティング・システム間の通信は、ＳＩＰを使用する。図４に、ＳＩＰレイヤ４０５が動作することができるプロトコル・スタック４００を示す。プロトコル・スタック４００を保持するコンピューティング・システムがコンピュータ１２０だとした場合には、プロトコル・スタック４００のレイヤのそれぞれは、図１の他のプログラム・モジュール１３７によって表すことができる。このＳＩＰレイヤ４０５は、伝送制御プロトコル（ＴＣＰ）レイヤ４０２の上で動作し、この伝送制御プロトコル・レイヤはインターネット・プロトコル・レイヤ４０１の上で動作する。オプションとして、ＴＬＳレイヤ４０３が、ＳＩＰレイヤ４０５とＴＣＰレイヤ４０２の間に存在することもある。このＴＬＳレイヤ４０３により、ＭＴＬＳ機能がオプションとして組み込まれて相互認証が可能になる。
【００４３】
図５に、本発明の一実施形態による、互いに通信を行い、エッジ内部コンピューティング・システムと通信を行う外部コンピューティング・システムの方法を示す。この通信は、認証側と要求側の間で行われる。例えば、外部コンピューティング・システム２４１ないし２４６のどれかがエッジ・コンピューティング・システム２１１と通信を行う場合、要求者側は外部コンピューティング・システム２４１によって示され、認証側はエッジ・コンピューティング・システム２１１によって示される。
【００４４】
図５を参照すると、要求側と認証側には、双方向の矢印５０１で示されるようにＴＣＰレイヤ４０２を使用したＴＣＰ接続が確立される。接続５０１は、例えばＴＣＰ接続でもよい。次いで、処理がＴＬＳレイヤ４０３に渡される。次いで要求側は矢印５０２で示されるように認証側に対してＴＬＳ証明書要求（TLS certificate request）を発行する。次いで認証側は、矢印５０３で示されるように証明書（certificate）を戻す。要求側は、この証明書の妥当性を検査し、次いで認証側への矢印５０４によって示されるようにＴＬＳ要求を発行する。次いで認証側は、処理をＳＩＰレイヤ４０５に渡し、このＳＩＰレイヤは、矢印５０５で示されるようにＳＩＰアクセス拒否メッセージを要求側に発行する。次いで要求側は、矢印５０６で示されるように認証側へ戻る通信の発信元となったソースについての証明書（certificate）の形式で適切な資格証明書（credentials）を提供する。次いで、認証側では、資格証明書を使用して要求側を認証することができる。次いで、両パーティは双方向の矢印５０７で示されるように対称キー（symmetric key）を導き出すことができる。次いで矢印５０８で示されるように上位レイヤ要求（上位階層要求）を認証側に提供することができる。
【００４５】
一実施形態では、内部コンピューティング・システムは、ＭＴＬＳ上でＳＩＰを使用して通信を行う。この通信プロセスは、図６のデータ・フローによって表され、このデータ・フローは若干の例外はあるものの図５のデータ・フローと同じである。詳細には、ＭＴＬＳがＴＬＳの代わりに使用され、ＭＴＬＳ要求６０４には、要求者の証明書、および認証側が妥当性を検査する資格証明書が提供される。
【００４６】
信頼範囲が共通の企業内にある場合には、企業内の各コンピューティング・システムの、システム管理者が提供する識別情報を使用することによってリストを設定することができる。新しい内部コンピューティング・システムをシステム管理者が追加することもできるし、他の内部コンピューティング・システムを取り除くこともできる。狭義企業環境の外側においては、他の内部コンピューティング・システムの共通のコンセンサスによってコンピューティング・システムを追加することができる。
【００４７】
本発明は、本発明の趣旨または本質的な特徴を逸脱することなく、他の特定の形式でも実施することができる。以上に説明した実施形態は、あらゆる点で、例示的なものにすぎず限定的ではないと考えるべきである。したがって、本発明の範囲は、前述の説明によってではなくて、特許請求の範囲によって指し示される。特許請求の範囲と等価な意味をもち、また等価な範囲内に含まれるすべての変形形態が、その範囲内に包含されるものとする。
【図面の簡単な説明】
【００４８】
【図１】本発明の特徴を実装することができる適切なコンピューティング・システムを示す図である。
【図２】プロトコル・ベースの信頼範囲を含む、本発明の原理を使用することができるネットワーク環境を示す図である。
【図３】本発明の原理による、プロトコル・ベースの信頼範囲中で分散認証を実施する方法を示す図である。
【図４】トランスポート・レイヤ・セキュリティ（ＴＬＳ）または相互認証ＴＬＳ（ＭＴＬＳ）を使用し、さらに伝送制御プロトコル（ＴＣＰ）およびインターネット・プロトコル（ＩＰ）を使用してセッション開始プロトコルを実装することができるプロトコル・スタックを示す図である。
【図５】ＳＩＰおよびＴＬＳを使用した、認証に関連するデータ・フローを示す図である。
【図６】ＳＩＰおよびＭＴＬＳを使用した、認証に関連するデータ・フローを示す図である。
【符号の説明】
【００４９】
１２０  コンピュータ
１２１  処理装置
１２２  システム・メモリ
１２３  システム・バス
１２４  読出し専用メモリ（ＲＯＭ）
１２５  ランダム・アクセス・メモリ（ＲＡＭ）
１２６  基本入出力システム（ＢＩＯＳ）
１２７  磁気ハードディスク・ドライブ
１２８  磁気ディスク・ドライブ
１２９  着脱可能磁気ディスク
１３０  光ディスク・ドライブ
１３１  着脱可能光ディスク
１３２  ハードディスク・ドライブ・インターフェース
１３３  磁気ディスク・ドライブ・インターフェース
１３４  光ドライブ・インターフェース
１３５  オペレーティング・システム
１３６  アプリケーション・プログラム
１３７  他のプログラム・モジュール
１３８  プログラム・データ
１３９  磁気ハードディスク
１４０  キーボード
１４２  ポインティング装置
１４６  シリアル・ポート・インターフェース
１４７  モニタ
１４８  ビデオ・アダプタ
１４９ａ  リモート・コンピュータ
１４９ｂ  リモート・コンピュータ
１５０ａ  メモリ記憶装置
１５０ｂ  メモリ記憶装置
１３６ａ  アプリケーション・プログラム
１３６ｂ  アプリケーション・プログラム
１５１  ローカル・エリア・ネットワーク（ＬＡＮ）
１５２  ワイド・エリア・ネットワーク（ＷＡＮ）
１５３  ネットワーク・インターフェース、アダプタ
１５４  モデム
２００  ネットワーク環境
２１０  プロトコル・ベースの信頼範囲
２１１  内部コンピューティング・システム、エッジ・コンピューティング・システム
２１２  内部コンピューティング・システム、エッジ・コンピューティング・システム
２１３  内部コンピューティング・システム、エッジ・コンピューティング・システム
２１４  内部コンピューティング・システム、エッジ・コンピューティング・システム
２２１  内部コンピューティング・システム
２２２  内部コンピューティング・システム
２２３  内部コンピューティング・システム
２２４  内部コンピューティング・システム
２２５  内部コンピューティング・システム
２２６  内部コンピューティング・システム
２３０  リスト
２４０  外部コンピューティング・システム
２４１  外部コンピューティング・システム
２４２  外部コンピューティング・システム
２４３  外部コンピューティング・システム
２４４  外部コンピューティング・システム
２４５  外部コンピューティング・システム
２４６  外部コンピューティング・システム
２５０  接続
３００  分散認証の方法
４００  プロトコル・スタック
４０１  インターネット・プロトコル・レイヤ
４０２  伝送制御プロトコル（ＴＣＰ）・レイヤ
４０３  ＴＬＳレイヤ
４０５  ＳＩＰレイヤ
【図１】
2004355619.tif 000003
【図２】
2004355619.tif 000004
【図３】
2004355619.tif 000005
【図４】
2004355619.tif 000006
【図５】
2004355619.tif 000007
【図６】
2004355619.tif 000008