(57)【要約】  個別の物理的なＳＩＭ装置の必要性なしでオープン・プラットフォームにおいて加入者識別モジュール（ＳＩＭ）機能を備える手法。一局面の場合、コンピューティング・システムは、ＳＩＭデータ及びアルゴリズムのセキュアなプロビジョニング、例えば、ＳＩＭ秘密データ・オブジェクトの保護された記憶、並びに、個別のハードウェアＳＩＭ装置に現在関連している認証、認可及びアカウンティング（ＡＡＡ）機能を行うようにするＳＩＭアルゴリズムの保護された実行を行うようにする。
2007516670.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティング・システムであって、
コードの保護された実行を行うようにするプロセッサ及びチップセットと、
信用情報データ記憶装置を含むハードウェア・トークンと、
加入者識別モジュール（ＳＩＭ）アルゴリズムを実施するコードを記憶する記憶装置とを備え、前記ＳＩＭアルゴリズムを、前記プロセッサによって、保護された区画において実行することとすることを特徴とするコンピューティング・システム。
【請求項２】
請求項１記載のコンピューティング・システムであって、
前記ハードウェア・トークンが、信頼されたプラットフォーム・モジュール（ＴＰＭ）であることを特徴とするコンピューティング・システム。
【請求項３】
請求項１記載のコンピューティング・システムであって、
前記プロセッサがマイクロプロセッサであり、
前記コンピュータ・システムはノートブック型コンピュータ・システムであることを特徴とするコンピューティング・システム。
【請求項４】
請求項３記載のコンピューティング・システムであって、
前記記憶装置が、ハード・ディスクとコンパクト・ディスクとの一方であることを特徴とするコンピューティング・システム。
【請求項５】
請求項３記載のコンピューティング・システムであって、
前記記憶装置が、ＳＩＭ秘密データ・オブジェクトをプロビジョニングするようにするプロビジョニング・アルゴリズムを更に記憶することを特徴とするコンピューティング・システム。
【請求項６】
請求項１記載のコンピューティング・システムであって、
該コンピューティング・システムが、保護されたソフトウェア実行を行うようにするオペレーティング・システムを実行することを特徴とするコンピューティング・システム。
【請求項７】
請求項１のコンピューティング・システムであって、
前記ＳＩＭアルゴリズムは、認証アルゴリズムと、暗号鍵生成器アルゴリズムと、暗号化アルゴリズムと、復号アルゴリズムとを含むアルゴリズム群のうちの１つ又は複数を実行するコードを含むことを特徴とするコンピューティング・システム。
【請求項８】
請求項７記載のコンピューティング・システムであって、
前記アルゴリズム群は、Ａ３アルゴリズム、Ａ８アルゴリズム、及びＡ５アルゴリズムを含むことを特徴とするコンピューティング・システム。
【請求項９】
コンピューティング・システムであって、
該コンピューティング・システムの交流電源を供給するバッテリを収容するバッテリ・コネクタと、
無線通信を行うようにする無線モジュールと、
コードの保護された実行を行うようにするプロセッサと、
個別のハードウェアＳＩＭ装置なしでＳＩＭ機能を備えるよう、保護された態様で前記プロセッサによって実行される対象のＳＩＭコードを記憶するデータ記憶装置とを備え、前記ＳＩＭ機能は、前記無線通信を動作可能にするのに用いることとすることを特徴とするコンピューティング・システム。
【請求項１０】
請求項９記載のコンピューティング・システムであって、前記無線通信は、グローバル移動通信システム／一般パケット無線サービス（ＧＳＭ／ＧＰＲＳ）プロトコルと、３Ｇプロトコルと、ＣＤＭＡプロトコルと、パーソナル・ハンディホン・システム（ＰＨＳ）プロトコルとのうちの１つ又は複数によるものであることを特徴とするコンピューティング・システム。
【請求項１１】
請求項９記載のコンピューティング・システムであって、ハードウェア・トークンを更に備えることを特徴とするコンピューティング・システム。
【請求項１２】
請求項１１記載のコンピューティング・システムであって、前記ハードウェア・トークンが、信頼されたプラットフォーム・モジュールであることを特徴とするコンピューティング・システム。
【請求項１３】
請求項９記載のコンピューティング・システムであって、前記ＳＩＭコードがプロビジョニング・モジュールを含み、該プロビジョニング・モジュールは、実行されると、信頼されたチャネルを介してプロビジョニング・サーバと通信して、ＳＩＭ秘密のプロビジョニングを行うようにすることとすることを特徴とするコンピューティング・システム。
【請求項１４】
請求項１３記載のコンピューティング・システムであって、前記プロビジョニング・モジュールは、ＳＩＭ秘密の保護された記憶を暗号化形式で前記コンピューティング・システム上に行うようにすることとすることを特徴とするコンピューティング・システム。
【請求項１５】
請求項９記載のコンピューティング・システムであって、前記データ記憶装置は、暗号化コードを更に記憶してＳＩＭ秘密を暗号化し、該暗号化ＳＩＭ秘密は、前記データ記憶装置において記憶することとすることを特徴とするコンピューティング・システム。
【請求項１６】
請求項９記載のコンピューティング・システムであって、信頼されたプラットフォーム・モジュールを更に含み、該信頼されたプラットフォームは、ＳＩＭ秘密のうちの１つ又は複数を暗号化するよう暗号化コードによって用いる対象の第１の鍵と、前記ＳＩＭ秘密を暗号化するのに用いる第２のバルク暗号化鍵とを記憶することとすることを特徴とするコンピューティング・システム。
【請求項１７】
請求項１６記載のコンピューティング・システムであって、前記暗号化コードは、前記第１の信頼されたプラットフォーム鍵を用いて前記第２のバルク暗号化鍵を暗号化し、該暗号化された第２の鍵を前記データ記憶装置に記憶することとすることを特徴とするコンピューティング・システム。
【請求項１８】
請求項９記載のコンピューティング・システムであって、前記データ記憶装置は、ＳＩＭアプリケーション・プログラミング・インタフェース（ＡＰＩ）を更に記憶することとすることを特徴とするコンピューティング・システム。
【請求項１９】
請求項１８のコンピューティング・システムであって、前記ＳＩＭ  ＡＰＩは、
認証、認可及びアカウンティング（ＡＡＡ）手順において用いる認証鍵の生成と、データ通信の暗号化用の暗号化鍵の生成と、ユーザ秘密へのアクセスと、セキュリティ・ポリシーへのアクセスと、ＳＩＭファイル構造階層の下で備えられる保護された記憶装置へのアクセスと、予め構成された、ＳＩＭベースのアプリケーション又はユーティリティへのアクセスと、プロビジョニング機能へのアクセスと、
を含む機能群のうちの少なくとも１つへのアクセスを備えることを特徴とするコンピューティング・システム。
【請求項２０】
請求項９記載のコンピューティング・システムであって、前記ＳＩＭ機能は、ユニバーサルＳＩＭ（ＵＳＩＭ）に関連した機能を含み、前記無線通信は、３Ｇネットワーク・プロトコルによることを特徴とするコンピューティング・システム。
【請求項２１】
方法であって、
無線ネットワークを介して無線通信を行うようにする工程と、
個別のＳＩＭハードウェア装置を用いることなく前記無線通信にＡＡＡ機能を備える工程とを備えることを特徴とする方法。
【請求項２２】
請求項２１記載の方法であって、無線ネットワークを介して無線通信を行うようにする工程が、ＧＳＭ／ＧＰＲＳプロトコルと、３Ｇネットワーク・プロトコルと、ＣＤＭＡプロトコルと、ＰＨＳプロトコルとのうちの１つ又は複数によって無線通信を備える工程を含むことを特徴とする方法。
【請求項２３】
請求項２１記載の方法であって、
ＡＡＡ機能を備える工程が、ＳＩＭコードを、プロセッサの保護された区画において実行する工程を含むことを特徴とする方法。
【請求項２４】
請求項２３記載の方法であって、
ＡＡＡ機能を備える工程が、コードの保護された実行を行うようにするオペレーティング・システムの制御の下でＳＩＭコードを実行する工程を含むことを特徴とする方法。
【請求項２５】
請求項２４記載の方法であって、
ＳＩＭコードを実行する工程が、コンピューティング・システムによってアクセス可能なＡ３アルゴリズム、Ａ８アルゴリズム、及びＡ５アルゴリズムのうちの１つ又は複数を選択的に実行する工程を含むことを特徴とする方法。
【請求項２６】
請求項２１記載の方法であって、
ＳＩＭ秘密データを暗号化する工程と、
コンピューティング・システムの大容量記憶装置上に前記暗号化秘密データを記憶する工程とを更に備えることを特徴とする方法。
【請求項２７】
請求項２６記載の方法であって、
ＳＩＭ秘密データを暗号化する工程が、バルク暗号化鍵を用いる工程を含むことを特徴とする方法。
【請求項２８】
請求項２７記載の方法であって、
ＳＩＭ秘密データを暗号化する工程が、信頼されたプラットフォーム・モジュールによって備えられる第２の鍵を用いて前記バルク暗号化鍵を暗号化する工程と、
前記大容量記憶装置上に前記暗号化バルク暗号化鍵を記憶する工程とを更に含むことを特徴とする方法。
【請求項２９】
請求項２１記載の方法であって、
個別のハードウェアＳＩＭ装置を用いることなく、セキュアに、ＳＩＭ秘密データとＳＩＭアルゴリズムとの一方をプロビジョニングする工程を更に備えることを特徴とする方法。
【請求項３０】
請求項２９記載の方法であって、
プロビジョニングする工程は、
プロビジョニング・モジュールを実行する工程と、
プロビジョニング・サーバとの、保護された通信リンクを設定する工程と、
該保護された通信リンクを介して前記プロビジョニング・サーバから前記ＳＩＭ秘密データと前記ＳＩＭアルゴリズムとの一方を受信する工程とを含むことを特徴とする方法。
【請求項３１】
方法であって、
個別のハードウェアＳＩＭ装置を用いることなく、プロビジョニング・サーバとの第１の保護された通信チャネルを設定する工程と、
コンピューティング・システムから前記プロビジョニング・サ―バに送る対象のデータを暗号化する工程と、
前記コンピューティング・システムによって前記プロビジョニング・サーバから受信されたＳＩＭ秘密データを復号する工程とを備えることを特徴とする方法。
【請求項３２】
請求項３１記載の方法であって、
ネットワーク・インタフェースへの第２の保護された通信チャネルを設定する工程を更に含むことを特徴とする方法。
【請求項３３】
請求項３１記載の方法であって、前記第１の保護された通信チャネルを設定する工程が、
ハードウェア・トークンを用いて前記コンピューティング・システム上のクライアント鍵を生成する工程と、
前記クライアント鍵を前記プロビジョニング・サーバに備える工程と、
該プロビジョニング・サーバとの双方向認証ルーチンに参加する工程とを含むことを特徴とする方法。
【請求項３４】
請求項３１記載の方法であって、
前記秘密データの完全性を検査する工程を更に備えることを特徴とする方法。
【請求項３５】
請求項３４記載の方法であって、ＳＩＭ秘密データを復号する工程が、一意のクライアント識別子と、初期化用データ・オブジェクトと、暗号アルゴリズムと、パラメータ更新と、アルゴリズム更新と、コード更新とのうちの１つを復号する工程を含むことを特徴とする方法。
【請求項３６】
方法であって、
ＳＩＭ秘密データ・オブジェクトを受信する工程と、
バルク暗号化鍵を用いた個別のハードウェアＳＩＭ装置を含まないコンピューティング・システムによって備えられる保護された実行環境において前記ＳＩＭ秘密データ・オブジェクトを暗号化する工程と、
ハードウェア・トークンによって備えられる第２の鍵を用いて前記バルク暗号化鍵を暗号化する工程と、
前記コンピューティング・システムにおける記憶装置上に前記暗号化ＳＩＭ秘密データ・オブジェクトを記憶する工程とを備えることを特徴とする方法。
【請求項３７】
請求項３６記載の方法であって、
前記暗号化バルク暗号化鍵を前記記憶装置上に記憶する工程を更に備えることを特徴とする方法。
【請求項３８】
請求項３６記載の方法であって、ＳＩＭ秘密データ・オブジェクトを受信する工程は、前記ＳＩＭ秘密データ・オブジェクトを保護されたチャネルを介して受信する工程を含むことを特徴とする方法。
【請求項３９】
方法であって、
個別のハードウェアＳＩＭ装置を含まないコンピューティング・システム上にセキュアな動作環境を設定する工程と、
暗号化されたＳＩＭデータ・オブジェクトと、関連した暗号化された第１のバルク暗号化鍵とを保護されたメモリにロードする工程と、
認可データの供給に応じてハードウェア・トークンから第２の鍵を受信する工程と、
前記第１のバルク暗号化鍵と、前記ＳＩＭデータ・オブジェクトとを復号する工程とを備えることを特徴とする方法。
【請求項４０】
請求項３９記載の方法であって、前記セキュアな環境を設定する工程は、保護された実行のための保護された区画を設定する工程を含むことを特徴とする方法。
【請求項４１】
請求項３９記載の方法であって、前記暗号化されたＳＩＭデータ・オブジェクト、及び関連した暗号化された第１のバルク暗号化鍵をロードする工程が、前記暗号化されたＳＩＭデータ・オブジェクト、及び関連した暗号化された第１のバルク暗号化鍵をハード・ディスクからロードする工程を含むことを特徴とする方法。
【請求項４２】
請求項４１記載の方法であって、
前記ＳＩＭ秘密データに対する処理を終えた後に前記第１のバルク暗号化鍵によって前記ＳＩＭ秘密データを暗号化する工程と、
前記第１のバルク暗号化鍵を前記第２の鍵によって暗号化する工程と、
前記第２の鍵を、前記ハードウェア・トークンを用いてバインドする工程と、
前記暗号化されたＳＩＭ秘密データ、及び暗号化された第１のバルク暗号化鍵を前記ハード・ディスク上に記憶する工程とを備えることを特徴とする方法。
【請求項４３】
情報を記憶する、コンピュータによってアクセス可能な媒体であって、
コンピュータ・システムによってアクセスされると、
認証鍵の生成と、暗号化鍵の生成と、ユーザ秘密データへのアクセスと、セキュリティ・ポリシーへのアクセスと、ＳＩＭファイル構造階層下で備えられる保護された記憶装置へのアクセスと、ＳＩＭユーティリティへのアクセスと、プロビジョニング機能へのアクセスと、ＳＩＭアルゴリズムへのアクセスとを含むＳＩＭ機能群からの少なくとも１つのＳＩＭ機能をアクセスするアプリケーション・プログラミング・インタフェースを該コンピュータ・システムに備えさせることを特徴とする、情報を記憶する、コンピュータによってアクセス可能な媒体。
【請求項４４】
請求項４３記載の、コンピュータによってアクセス可能な媒体であって、前記ＳＩＭアルゴリズムが、認証アルゴリズムと、暗号化アルゴリズムと、鍵生成アルゴリズムとのうちの少なくとも１つを含むことを特徴とする、コンピュータによってアクセス可能な媒体。
【請求項４５】
請求項４３記載の、コンピュータによってアクセス可能な媒体であって、前記ＳＩＭアルゴリズムが、Ａ３アルゴリズムと、Ａ８アルゴリズムと、Ａ５アルゴリズムとのうちの少なくとも１つを含むことを特徴とする、コンピュータによってアクセス可能な媒体。
【請求項４６】
情報を記憶する、コンピュータによってアクセス可能な記憶媒体であって、
コンピュータ・システムによってアクセスされると、前記コンピュータ・システムに、
アプリケーション・プログラムを実行させ、
個別のハードウェアＳＩＭ装置なしのコンピューティング・システムによって備えられるＳＩＭ機能をアクセスさせ、前記アプリケーション・プログラムは、認証機能と、認可機能と、アカウンティング機能とのうちの１つ又は複数を備える前記ＳＩＭ機能をアクセスすることとすることを特徴とする、情報を記憶する、コンピュータによってアクセス可能な記憶媒体。
【請求項４７】
請求項４６記載の、コンピュータによってアクセス可能な記憶媒体であって、前記アプリケーション・プログラムは、ネットワークへの認証を備える前記ＳＩＭ機能をアクセスすることとすることを特徴とする、コンピュータによってアクセス可能な記憶媒体。
【請求項４８】
請求項４７記載の、コンピュータによってアクセス可能な記憶媒体であって、前記ネットワークは、無線ローカル・エリア・ネットワークと、無線ワイド・エリア・ネットワークと、有線ネットワークとのうちの１つであることを特徴とすることを特徴とする、コンピュータによってアクセス可能な記憶媒体。
【請求項４９】
請求項４６記載の、コンピュータによってアクセス可能な記憶媒体であって、前記アプリケーションは、位置ベース・サービスを備える前記ＳＩＭ機能をアクセスすることとすることを特徴とする、コンピュータによってアクセス可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願への参照］
本願は、本発明の譲受人に譲渡されており、本願と同時に出願された、「ＰＲＯＶＩＤＩＮＧ  ＳＥＲＶＩＣＥＳ  ＴＯ  ＡＮ  ＯＰＥＮ  ＰＬＡＴＦＯＲＭ  ＩＭＰＬＥＭＥＮＴＩＮＧ  ＳＵＢＳＣＲＩＢＥＲ  ＩＤＥＮＴＩＴＹ  ＭＯＤＵＬＥ（ＳＩＭ）  ＣＡＰＡＢＩＬＩＴＩＥＳ」と題する同時係属の米国特許出願（代理人整理番号４２．Ｐ１７６４４）に関する。
【０００２】
本発明の実施例は、コンピューティング・システムの分野に関し、特に、加入者識別モジュール（ＳＩＭ）機能及び／又は関連機能を実施するうえでの新規の手法に関する。
【背景技術】
【０００３】
現在、ハードウェアＳＩＭ装置を用いて、認可及びアカウンティングの目的で、ＧＳＭ／ＧＰＲＳ（グローバル移動通信システム／一般パケット無線サービス）ネットワークへのユーザ認証を備え得る。上記ＳＩＭ装置の全般的な目的は、認証、認可及びアカウンティング（ＡＡＡ）として表される。
【０００４】
例えば、Ｅｕｒｏｐｅａｎ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｔａｎｄａｒｄｓ  Ｉｎｓｔｉｔｕｔｅ  （ＥＴＳＩ）  ＧＳＭ  １１．１１  ｓｐｅｃｉｆｉｃａｔｉｏｎ，  Ｖｅｒｓｉｏｎ  ５．０．０，  Ｄｅｃｅｍｂｅｒ  １９９５に記載されているハードウェアＳＩＭ装置は、信頼された環境としてみなされる、ＳＩＭハードウェア内の、１）Ａ３アルゴリズム（認証アルゴリズム）の保護された実行の機能と、２）Ａ８アルゴリズム（暗号法鍵すなわち暗号鍵Ｋｃを生成する暗号鍵生成器アルゴリズム）の保護された実行の機能と、３）ＳＩＭ秘密データ・オブジェクトの保護された記憶の機能とを備える。
【０００５】
ＳＩＭに関して用い得るプロトコルの例として、拡張可能認証プロトコル（ＥＡＰ）、並びに、認証及び鍵の一致プロトコル（ＡＫＡ）がある。ＳＩＭの物理的な記憶媒体内に入っているＳＩＭデータ・オブジェクトの保護された記憶は通常、適切な暗号化手法を用いて秘密を暗号化し、次に、信頼されたプラットフォーム・モジュール（ＴＰＭ）や他のハードウェア・トークンなどの暗号装置を用いて暗号化鍵をロックすることによって達成される。残りのＳＩＭ機能は、プログラムするよう利用可能なものとして存在するインタフェースがないように、閉じた環境においてＳＩＭが動作するので、セキュアであるとみなされる。
【０００６】
上記機能に加えて、１）加入者識別鍵Ｋｉの保護されたプロビジョニングの機能と、２）モバイル機器（ＭＥ）におけるＡ５アルゴリズム（暗号アルゴリズム）の保護されたプロビジョニングの機能と、３）セキュリティ・ポリシーの保護されたプロビジョニングの機能とを、個別のＳＩＭハードウェア装置の外部の信頼された環境内に備え得る。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
加入者識別モジュール（ＳＩＭ）を実施する方法及び装置を説明する。
【課題を解決するための手段】
【０００８】
以下の記載では、特定の構成部分、ソフトウェア・モジュール、システム等を、例証の目的で表す。しかし、他の実施例が、例えば、他のタイプの構成部分、ソフトウェア・モジュール及び／又はソフトウェア・システムに適用可能である。
【０００９】
「一実施例」、「実施例」、「例示的な実施例」、「種々の実施例」等への言及は、そうして記載された、本発明の実施例がその特定の特徴、構造、又は特性を含み得るが、全ての実施例が必ずしも特定の特徴、構造、又は特性を含む訳でないということを示す。更に、「一実施例における」の句を繰り返し用いていることは、同じ実施例を表し得るが、必ずしもそうでない。
【００１０】
ＳＩＭは現在、無線電話機において最も一般的に用いられているが、ＳＩＭ装置の認証、認可、及びアカウンティング（ＡＡＡ）の特徴は又、他の環境において、かつ／又は他のタイプのアプリケーションに有用であり得る。例えば、セキュリティは、個人向コンピューティング・プラットフォームや他のコンピューティング・プラットフォームに対する、一層重要になってきている課題である。特に、インターネット、無線通信、及びコネクテッド・モバイル・コンピューティングの伸長によって、ノートブック型コンピュータを含むパソコンは、データ・セキュリティが最重要である電子商取引や他のアプリケーションにより頻繁に用いられている。よって、コンピュータ・システムの信頼性を向上させることに対する必要性が高まりつつある。
【００１１】
一実施例の場合、１つ若しくは複数のＳＩＭ機能及び／又はユニバーサルＳＩＭ（ＵＳＩＭ）機能が、パソコン・プラットフォームなどのオープン・プラットフォームにおける信頼された環境において実施される。例えば、保護された（、若しくは信頼された）区画及び／又は経路、並びに開いた（、若しくは信頼されていない）区画及び／又は経路を含むパソコン（ＰＣ）プラットフォームを再区分して、個別のハードウェア装置を含める必要性なしで、別個のＳＩＭハードウェア装置に関連した１つ又は複数の機能を備え得る。このようにして、コンピューティング・プラットフォームとの間の、かつ／又は、アプリケーションと、リソース若しくはサービスとの間の、ＧＳＭ／ＧＰＲＳ（グローバル移動通信システム／一般パケット無線サービス）や他のタイプの無線通信及び／若しくは有線通信を、ボード上の個別のＳＩＭハードウェア装置なしでイネーブルし得る。
【００１２】
そうしたＳＩＭ機能は、例えば、暗号化アルゴリズムの保護された暗号化と、暗号化鍵の保護された伝送及び記憶とを用いた、オープン・プラットフォーム上のＳＩＭ秘密の保護された記憶を含み得る。更に、種々の実施例によれば、ＳＩＭデータを、第１の信頼されたコード・モジュールを保護された環境において実行し、プロビジョニング・サーバ上の信頼された実行環境において実行する第２のコード・モジュールと通信するオープン・プラットフォームにプロビジョニングし得る。鍵生成、秘密へのアクセス等などのＳＩＭ機能をアクセスするよう、信頼されたアプリケーションによって用いられるＳＩＭアプリケーション・プログラミング・インタフェース（ＡＰＩ）も、一部の実施例に備え得る。種々の実施例のＳＩＭ機能を、例えば、コンピューティング・システムがアクセスし得る、加入者アカウントのＡＡＡ機能の提供を含む種々のアプリケーションに用い得る。これらや他の実施例の更なる詳細は、以下に記載する。
【００１３】
本発明の実施例は、ハードウェアと、ファームウェアと、ソフトウェアとのうちの１つ、又はそれらの組み合わせにおいて実施し得る。本発明の実施例は、本明細書及び特許請求の範囲記載の動作を行うよう少なくとも１つのプロセッサが読み取り、実行し得る、マシン判読可能媒体上に記憶された命令として全体的又は部分的に実施してもよい。マシン判読可能媒体は、マシン（例えば、コンピュータ）によって判読可能な形式で情報の記憶又は伝送を行う何れかの機構を含み得る。例えば、マシン判読可能媒体は、読み取り専用メモリ（ＲＯＭ）、ランダム・アクセス・メモリ（ＲＡＭ）、磁気ディスク記憶媒体、光記憶媒体、フラッシュ・メモリ装置、電気的形式、光学的形式、音響的形式や他の形式の伝搬信号（例えば、搬送波、赤外線信号、ディジタル信号等）、及び他のものを含み得る。
【００１４】
以下に続く記載では、保護された領域若しくは経路、又は信頼された領域若しくは経路は、認可されていない装置及び／若しくはソフトウェアによるアクセスがないようにするのに、関連した保護を十分有する、装置の領域、又は装置間の経路を表し得る。更に、信頼されたソフトウェア又はコードの語は、認可されていない態様で実行前に改変されていないということを検証するよう特定の手段によって確認されたソフトウェアを表し得る。
【発明を実施するための最良の形態】
【００１５】
本発明は、限定としてではなく例として、添付図面の図に示し、同様な参照符号は同様な構成要素を示す。
【実施例】
【００１６】
図１は、個別のハードウェアＳＩＭ装置を用いることなく、一実施例による、１つ又は複数のＳＩＭ機能を効果的に実施し得るコンピューティング・システム１００の構成図である。コンピューティング・システム１００は、例えば、ノートブック型コンピュータやラップトップ型コンピュータなどのモバイル・コンピューティング・システムであり得る。あるいは、コンピューティング・システム１００は、デスクトップ型コンピュータ、ワークステーション型コンピュータ、携帯情報端末や別のタイプのコンピューティング装置などの各種のコンピューティング・システムであり得る。コンピューティング・システム１００がモバイル・コンピューティング・システムである場合、例えば、交流電源が利用可能でないか便利でない場合に、コンピューティング・システム１００の交流電源を供給するよう、通常の態様でバッテリ及び／又はバッテリ・コントローラ１００をシステム１００に含め、結合し得る。
【００１７】
コンピューティング・システム１００は、プロセッサ・バス１１５によってメモリ制御ハブ（ＭＣＨ）や他のメモリ・コントローラ１１０に結合される中央処理装置（ＣＰＵ又はプロセッサ）１０５と、メモリ・バス１２５を介してＭＣＨ１１０に結合される、例えば、ランダム・アクセス・メモリ（ＲＡＭ）や別のタイプのメモリを備え得る主メモリ１２０と、グラフィックス・バス１３５を介してＭＣＨ１１０に結合されるか、システム１００における別の構成部分と一体化される１つ又は複数の信頼されたグラフィックス構成部分１３０と、バス１４５を介してＭＣＨ１１０に結合し得る入出力制御ハブ（ＩＣＨ）や他の入出力コントローラ１４０とを含む。メモリ・コントローラ（すなわちＭＣＨ）１００及び入出力コントローラ（すなわちＩＣＨ）１４０は併せてチップセットとして表し得る。
【００１８】
チップセットは、プロセッサ１０５、メモリ１２０と、他の装置との間のインタフェースを備える論理回路であり得る。一実施例の場合、チップセットは図１に示すような１つ又は複数の個々の集積回路として実施される一方、他の実施例の場合、チップセットは、より大きな集積回路の一部分として実施してもよく、複数の他の集積回路の部分として実施してもよい。本明細書及び特許請求の範囲では個々にメモリ・コントローラ及び入出力コントローラとしてラベルを付したが、こうしたラベルは、チップセット特徴を物理的に実施し得る方法に対する制約として読み取るものでないこととする。
【００１９】
一実施例のプロセッサ１０５は、保護された実行や他のセキュリティ指向特徴を備える、（本明細書及び特許請求の範囲中にはＬＴとしても表す）インテル社のラグラン技術などの技術を実施するインテル社アーキテクチャのマイクロプロセッサであり得る。ラグラン技術の詳細の一部は、例えば、ｈｔｔｐ：／／ｗｗｗ．ｅｘｔｒｅｍｅｔｅｃｈ．ｃｏｍ／ａｒｔｉｃｌｅ２／０，３９７３，１２７４１９７，００．ａｓｐで現在見つけ得る。他の実施例の場合、ＣＰＵ１０５は、組み込みプロセッサ、ディジタル信号プロセッサ、別のアーキテクチャ若しくは別のセキュリティ技術等を有する、別のソースからのマイクロプロセッサなどの別のタイプのプロセッサであり得るものであり、かつ／又は２つ以上のプロセッサを含み得る。プロセッサ１０５は、実行装置１４６と、ページ・テーブル（ＰＴ）レジスタ１４８と、１つ若しくは複数のチップ上及び／又はチップ外のキャッシュ・メモリ１５０並びにソフトウェア・モニタ１５１とを含み得る。
【００２０】
キャッシュ・メモリ１５０の全部又は一部は、保護されたメモリ１５２を含み得るか、保護されたメモリ１５２に変換し得る。前述の保護されたメモリは、保護されたメモリとして活性化される一方で、認可されていない装置（例えば、関連したプロセッサ１０５以外の何れかの装置）によるアクセスがないようにするのに十分な保護を備えているメモリである。図示した実施例では、キャッシュ・メモリ１５０は、保護されたメモリとしての選択的な隔離を可能にする種々の特徴を有し得る。保護されたメモリ１５２は、一部の実施例の場合、あるいは、又は、更には、キャッシュ・メモリ１５０の外部にあり、それとは別個であるが、プロセッサ１０５とはなお関連している場合がある。
【００２１】
ＰＴレジスタ１４８を用いて、信頼されたコードによってのみアクセス可能である対象のメモリ・ページと、そのように保護されない対象のメモリ・ページとを識別するテーブルを実施し得る。
【００２２】
信頼されたソフトウェア（Ｓ／Ｗ）モニタ１５１は、保護された動作環境が設定されると、保護された動作環境全体を監視し、制御し得る。あるいは、ソフトウェア・モニタは、メモリ・コントローラ１１０上に備えてもよく、システム１００内の別の場所に備えてもよい。特定の実施例では、信頼されたＳ／Ｗモニタ１５１は、認可されていない改変からそれ自体が保護されるようにメモリ１５２などの保護されたメモリ内に配置し得る。
【００２３】
プロセッサ１０５は、信頼されたソフトウェアの保護された実行を行うようにする命令を実行することが更にできる場合がある。例えば、実行装置１４６は、チップ上メモリ（例えば、キャッシュ・メモリ１５０）及びチップ外メモリ（例えば、主メモリ１２０）における、開いた区画、並びに保護された区画を隔離し、保護されたメモリへのソフトウェア・アクセスを制御する命令を実行することができる場合がある。
【００２４】
一実施例のＭＣＨ１１０は、保護されたメモリ・ページへの装置アクセス（例えば、ＤＭＡアクセス）を阻止する更なるメモリ保護をおこなうようにし得る。一部の実施例の場合、この更なるメモリ保護は、チップ上の保護されたメモリとチップ外の保護されたメモリとへのソフトウェア・アクセスを制御してソフトウェア攻撃を軽減するようＣＰＵ１０５によって前述の命令が実行されることに並行して動作し得る。
【００２５】
例えば、ＭＣＨ１１０は、保護されたレジスタ１６２と、保護されたメモリ・テーブル１６４とを含み得る。一実施例では、保護されたレジスタ１６２は、プロセッサ１０５内の信頼されたマイクロコード（図示せず）によってのみ起動し得るコマンドによってしか書き込み可能でないレジスタである。保護されたマイクロコードは、認可された命令によって、かつ／又は認可されていない装置によって制御可能でないハードウェアによってのみ起動し得る。
【００２６】
保護されたレジスタ１６２は、保護されたメモリ・テーブル１６４及び信頼されたソフトウェア・モニタ１５１の位置を識別し、かつ／又はそれらへのアクセスを制御するデータを保持し得る。保護されたレジスタ１６２は、ＤＭＡ保護を、例えば、保護された動作環境に入る前に活性化し、保護された動作環境を出る前に非活性化するように、保護されたメモリ・テーブル１６４の使用のイネーブル又はディセーブルを行うレジスタを含み得る。保護されたレジスタ１６２は、保護されたメモリ・テーブル１６４の位置を識別する、書き込み可能なレジスタも含み得るので、その位置をチップセットに物理的に組み込まなくてよい。
【００２７】
一実施例の場合、保護されたレジスタ１６２は、システム１００によって備えられる保護された動作環境が初期化されると転送するよう見つけ得るように、メモリ１２０の保護された位置に配置される前に、信頼されたソフトウェア・モニタ１５１の一時的な位置を更に記憶し得る。一実施例の場合、保護されたレジスタ１６２は、保護された動作環境の初期化後に、信頼されたソフトウェア・モニタ１５１に実行を移し得るように、メモリ１２０への転送後、信頼されたソフトウェア・モニタ１５１の実行開始アドレスを含み得る。
【００２８】
保護されたメモリ・テーブル１６４は、直接メモリ・アクセス（ＤＭＡ）転送の場合に、かつ／又は、信頼されていない他のソースによってアクセスできない、メモリ１２０内の（連続してアドレス指定可能なメモリ位置の範囲である）メモリ・ブロックを規定し得る。メモリ１２０に関連したアクセスは全て、ＭＣＨ１１０によって管理されるので、ＭＣＨ１１０は、何れかのＤＭＡ転送や他の信頼されていない転送を行うことを可能にする前に、保護されたメモリ・テーブル１６４を検査し得る。
【００２９】
一実施例では、保護されたメモリ・テーブル１６４をビット・テーブルとして実施し得るものであり、各ビットは、メモリ１２０における特定のメモリ・ブロックに相当する。特定の動作では、保護されたメモリ・テーブル１６４によってＤＭＡ転送から保護されるメモリ・ブロックは、プロセッサ１０５におけるＰＴレジスタ１４８による保護された処理に制限されるものと同じメモリ・ブロックであり得る。
【００３０】
主メモリ１２０は、保護された１５４メモリ・ページ又はメモリ区画も、開いた１５６メモリ・ページ又はメモリ区画も含み得る。メモリ１２０における保護されたページ又は区画１５４へのアクセスは、ＣＰＵ１０５及び／又はＭＣＨ１１０によって、本明細書に更に詳細に説明する特定の信頼されたソフトウェア及び／又は構成部分に限定される一方、メモリ１２０における開いたページ又は区画は、通常の手法による。
【００３１】
図１に示すように、主メモリ１２０は、保護されたメモリ・テーブル１５８を更に含み得る。一実施例では、保護されたメモリ・テーブルはＭＣＨ１１０において、前述の保護されたメモリ・テーブル１６４として実施され、保護されたメモリ・テーブル１５８はなくし得る。別の実施例では、保護されたメモリ・テーブルは、メモリ１２０において、保護されたメモリ・テーブル１５８として実施され、保護されたメモリ・テーブル１６４はなくし得る。保護されたメモリ・テーブルは、図示しない他のやり方で実施してもよい。物理的な場所にかかわらず、保護されたメモリ・テーブルの目的及び基本動作は、概ね前述の通りである。
【００３２】
コンピューティング・システム１００が例えば、ラップトップ型コンピュータやノートブック型コンピュータなどのモバイル・コンピューティング・システムである図１を引き続き参照すれば、ＩＣＨ１４０は、外部キーボード１６６にも内部キーボード１６８にも結合し得る。他のタイプのシステム及び／又は特定のモバイル・システムの場合、外部キーボードと内部キーボードとの一方のみを備え得る。外部キーボード１６６及び／又は内部キーボード１６８と、信頼されたソフトウェアとの間のセキュア経路すなわち信頼された経路を備えて、信頼されていない入力や他のタイプの攻撃からシステム１００の信頼された区画を保護する。一実施例の場合、このセキュア経路は、例えば、西暦２００３年６月３０日付出願の、本発明の譲受人に譲渡されている、「Ｔｒｕｓｔｅｄ  Ｉｎｐｕｔ  ｆｏｒ  Ｍｏｂｉｌｅ  Ｐｌａｔｆｏｒｍｓ  Ｔｒａｎｓａｃｔｉｏｎｓ」と題する、同時係属の米国特許出願第１０／６０９，８２８号明細書によるものであり得る。
【００３３】
無線ローカル・エリア・ネットワーク若しくは無線ワイド・エリア・ネットワーク（ＷＬＡＮ若しくはＷＷＡＮ）、又は他の無線ネットワーキング・カードの一部であり得る無線装置１７０は、ＩＣＨ１４０に結合して、電話会社や他のサービス・プロバイダが運営／サービスを行い得る、かつ／又は、サービス・プロバイダが用いてコンピューティング・システム１００へのサービスを提供し得る無線ネットワーク１７２を介した無線接続が行えるようにもし得る。そうした例の場合、無線装置１７０は、無線ネットワーク１７２を介してサービス・プロバイダが運営するサーバなどの遠隔サーバ１７４にコンピューティング・システム１００が結合することを可能にし得る。ネットワーク１７２は、例えば、ＧＳＭ／ＧＰＲＳ（グローバル無線通信システム／一般パケット無線サービス）であり得る。例えば、ＣＤＭＡ（符号分割多元アクセス）ネットワーク、ＰＨＳ（パーソナル・ハンディホン・システム）ネットワーク、３Ｇ（第３世代サービス）ネットワーク等などの他のタイプの無線ネットワーク・プロトコルも、種々の実施例の範囲内にある。
【００３４】
Ｔｒｕｓｔｅｄ  Ｃｏｍｐｕｔｅｒ  Ｐｌａｔｆｏｒｍ  Ａｌｌｉａｎｃｅ  （ＴＣＰＡ）から入手可能なＴＰＭ  ｓｐｅｃｉｆｉｃａｔｉｏｎの現行のｖｅｒｓｉｏｎ  １．１、及びＴｒｕｓｔｅｄ  Ｃｏｍｐｕｔｉｎｇ  Ｇｒｏｕｐ  （ＴＣＧ）のＴＰＭ  ｓｐｅｃｉｆｉｃａｔｉｏｎのｖｅｒｓｉｏｎ  １．２の、現在入手可能な改訂版又は将来の改訂版によるものであり得る、信頼されたプラットフォーム・モジュール（ＴＰＭ）１７６などのハードウェア・トークンを、例えば、低ピン数のバス（ＬＰＣバス）１７８を介してＩＣＨ１４０に結合してもよい、ＴＰＭ１７６は、保護された動作環境の形成及び維持に関するデータを保護するよう備え得るものであり、コンピューティング・システム１００に直接関連付けられる。すなわち、ハードウェア・トークン１７６は、システム間で移動させられるものでない。
【００３５】
一実施例の場合、ハードウェア・トークン１７６は、例えば、集積回路を用いて実施し得る個別のハードウェア装置である。別の実施例の場合、ハードウェア・トークン１７６を、仮想化し得る、すなわち、マザーボード上の物理的に別個のハードウェア・チップによって備え得るものでない代わりに、別のチップに集積し得るか、ＴＰＭ、又は本明細書記載の他のハードウェア・トークンに関連した機能を別の態様で実施し得る。
【００３６】
一実施例のＴＰＭ１７６は、システム１００に関連したパスワード及び信用証明情報を記憶する、非揮発性メモリを備え得る信用情報記憶装置１８０を含み得る。一実施例のＴＰＭ１７６は、暗号エンジン１８２、ディジタル署名（図示せず）、ハードウェア乱数生成器（図示せず）、及び／又は単調カウンタ（図示せず）を更に含み得る。
【００３７】
ＴＰＭ１７６は、信用情報記憶装置１８０に記憶された情報がアクセスできないかそれ以外の方法で保護されているロック状態と、信用情報記憶装置１８０に記憶された情報を特定のソフトウェア又は構成部分によってアクセスできる非ロック状態とを有する。特定の実施例では、ハードウェア・トークン１７６は、特定の暗号化処理、復号処理及び／又は検証処理に用いる対象の埋め込み鍵であり得る鍵１８３を含み得る。
【００３８】
ハード・ディスク・ドライブ（ＨＤＤ）及び関連記憶媒体、並びに／又は、コンパクト・ディスク・ドライブなどの他の大容量記憶媒体１８４及び関連媒体もＩＣＨ１４０に結合し得る。１つの大容量記憶参照ブロック１８４のみを図１に示すが、各種の複数大容量記憶装置を用いて大容量記憶装置１８４を実施し得る。更に、更なる記憶装置が、ネットワーク１７２を介して、又は、例えば、ネットワーク・カード、モデムや他の有線通信装置１８８を介してアクセスし得る別のネットワーク１８６を介してコンピューティング・システム１００によってアクセス可能であり得る。
【００３９】
コンピューティング・システム１００は、ソフトウェア実行のための開いた区画及び保護された区画があるようにするオペレーティング・システム１９０を更に実行し得る。一実施例の場合、オペレーティング・システム１９０は米国ワシントン州レドモンドのマイクロソフト社が提供し得るものであり、マイクロソフト社の次世代セキュア・コンピューティング・ベース（ＮＧＳＣＢ）技術を組み入れ得る。オペレーティング・システム１９０は大容量記憶装置１８４上に記憶されるものとして示しているが、オペレーティング・システム１９０の全部又は一部を、コンピューティング・システム１００上の、又は、コンピューティング・システム１００によってアクセス可能な別の記憶装置に記憶し得る。
【００４０】
大容量記憶装置１８４は、１つか複数のＳＩＭ関連のアプリケーション１９２、並びに／又は、１つか複数のＳＩＭアルゴリズム及び／若しくはＭＥアルゴリズム１９４を更に記憶し得る。
【００４１】
図３は、信頼された実行環境が設定された場合の一実施例のコンピューティング・システム１００において備え得る種々の信頼された経路及び区画を概要レベルで示す。信頼された領域は図３に網掛けで示す。別の実施例の場合、種々の信頼された経路及び区画を備え得るものであり、かつ／又は、図３に示す信頼された経路及び区画全てを必ずしも備えなくてよいことがあり得る。
【００４２】
図２は、一実施例についてセキュアな動作環境が設定された場合の図１のオペレーティング・システム１９０によって備え得る種々の区画を示す概要レベルの概念図である。オペレーティング・システム１９０によって備えられる開いた区画２０５は、主オペレーティング・システム２０７、ドライバ（図示せず）、アプリケーション２０９、及び関連ＡＰＩ２１３を実行する。保護された区画２１０は、保護されたオペレーティング・システム・カーネル２１１と、ＳＩＭアルゴリズム１９４Ａ及びモバイル装置（ＭＥ）アルゴリズム１９４Ｂを含み得るか、それらと相互動作し得る、１つ又は複数のＳＩＭ関連アプリケーション１９２などの保護されたアプレットすなわちアプリケーションとを含む。（以下に更に詳細に説明する）関連ＡＰＩ２１５及び２１７も含み得る。本明細書及び特許請求の範囲記載のものなどのセキュリティ機能は、例えば、種々のＡＰＩを介してソフトウェア開発者がアクセス可能であり得る。
【００４３】
特定のプラットフォーム・アーキテクチャ及び特定の関連したオペレーティング・システムの一部の構成要素を前述したが、本明細書及び特許請求の範囲記載の保護された記憶、保護された実行、及び保護された入出力を行うようにする他のプラットフォーム・アーキテクチャ並びに／又はオペレーティング・システム・アーキテクチャも種々の実施例に用い得る。
【００４４】
一実施例の場合、前述のように、ＳＩＭ機能及び／又はＵＳＩＭ機能を、個別のハードウェアＳＩＭ装置を備える必要なしで図１のコンピューティング・プラットフォーム１００上などのオープン・プラットフォーム上に備える。
【００４５】
ＳＩＭ機能は、種々の目的で、オープン・コンピューティング・システム上で有用であり得る。例えば、種々の実施例が備えるＳＩＭ機能を用いて、（ＧＳＭ／ＧＰＲＳネットワーク、３Ｇネットワークや、別のタイプのネットワークであり得る）無線ネットワーク１７２、若しくは無線装置１７０を介して無線ネットワーク１７２によってアクセス可能なサービスへのアクセス、及び／又はそれらの使用を管理し得る。コンピューティング・システム１００によってアクセス可能であり得るものであり、本明細書及び特許請求の範囲記載のＳＩＭ機能及び／又はＵＳＩＭ機能を用いることが効果的であり得るサービスは、例えば、位置ベース・サービス及び／又は他の付加価値機能を含む。あるいは、又は、更に、ＳＩＭ機能を、ネットワーク１８６を介したアクセス及び利用を行い得る他のタイプのネットワーク・ベース加入者アカウントに用い得る。アプリケーション・ソフトウェア２０９や別のアプリケ−ションでも、ＳＩＭ機能を、種々のネットワークの認可、認証及び／又はアカウンティングの目的や他の目的で利用し得る。
【００４６】
例示の目的で、種々の実施例に備えるＳＩＭ機能を、ネットワーク１７２を介してアクセス可能なサーバ１７４、及び／又はネットワーク１７２を保有／運営する電話会社や他のサービス事業者によって提供される加入者アカウントとともに用いる。サービス・プロバイダは、アプリケーション・ソフトウェア１９２並びに／又はＳＩＭアルゴリズム及び／若しくはＭＥアルゴリズム１９４などのアプリケーション・ソフトウェアをコンピューティング・システム１００のユーザに備え得る。あるいは、ＳＩＭアルゴリズム及び／又はＭＥアルゴリズムを別の態様で備え得る。
【００４７】
一実施例の場合、コンピューティング・システム１００に、例えば、ローミング・パラメータ、サービス・プロファイル、性能パラメータ、加入者認証鍵Ｋｉ、国際移動加入者識別番号（ＩＭＳＩ）、及び／若しくは、新たなＳＩＭアルゴリズムかＳＩＭアプリケーションや更新されたＳＩＭアルゴリズムかＳＩＭアプリケーションなどの、ＳＩＭの秘密、データ、アルゴリズム並びに／又はアプリケーションをプロビジョニングし得る。プロビジョニング・モジュール１９６は、コンピューティング・プラットフォーム１００によってアクセス可能な大容量記憶装置１８４上や別の記憶装置上又はメモリ上に記憶し得る。プロビジョニング・モジュール１９６は、保護された区画２１０におけるコンピューティング・システム１００によって備えられる信頼された環境において実行し得る。サービス・プロバイダ・プロビジョニング・モジュール１９７は、サービス・プロバイダ・サーバ１７４によって備えられる信頼された環境において実行し得る。
【００４８】
プロビジョンニングは、ネットワーク事業者や他のサービス・プロバイダによって提供されるサービスに加入者が始めて加入する際に、又は、例えば、提供されるサービスに関するパラメータ、コード等を更新するのに必要な場合に行い得る。何れの場合も、プロビジョニングは、クライアント・コンピューティング・システム１００又はプロビジョニング・サーバ（例えば、この例ではサーバ１７４）によって開始し得る。プロビジョニングの目標は、一意の識別子をクライアントに割り当てて加入サービス及び請求を可能にする工程（例えば、ＳＩＭの場合、ユーザ識別子に関するＩＭＳＩ秘密及びＫｉ秘密をプロビジョニングする必要がある。）、サービス・プロバイダに関連した秘密情報を含んでいる場合も含んでいない場合もある種々のデータ・オブジェクトを初期化する工程、ＡＡＡ機能を行うのに用いる事業者特有暗号アルゴリズムを初期化する工程、及び／又は、例えば、事業者特有であり得るアプリケーション、パラメータ、ツール若しくはユーティリティのインストールか更新を行う工程、のうちの１つ又は複数に限定されないがそれらを含み得る。
【００４９】
一実施例によれば、プロビジョニングには、クライアント・コンピューティング・システム１００とプロビジョニング・サーバとの間の１つ又は複数の保護された通信チャネルを用いることが関係する。更なる信頼された通信チャネルを、一部の実施例のネットワーク・インタフェースに備えて、ソリューションのセキュリティを更に強化し得る。
【００５０】
図４を参照すれば、保護された通信チャネルの設定は、例えば、ＴＰＭや他のハードウェア・トークンを用いてクライアント鍵を生成し得るブロック４０５で、保護された鍵交換機構を用いる工程、ブロック４１０で端点を識別し、確認する双方向認証を用いる工程、ブロック４１５で、例えば、ハード・ドライブ上や他の記憶装置上に記憶された暗号化／復号アルゴリズムによって備え得る適切な暗号化手順を用いて、送受信されたデータをスクランブルする工程、ブロック４２０でデータをプロビジョニングする工程、ブロック４２５でデータを復号する工程、及び、ブロック４３０で、例えば、メッセージ認証コード（ＭＡＣ）などの適切な完全性検査手順を用いる工程を含み得る。
【００５１】
クライアント側では、コンピューティング・システム１００とプロビジョニング・サーバ１７４との間の通信の保護されたチャネルの設定は、例えば、インテル社のラグラン技術を実施するコンピューティング・システムによって備えられる保護された実行環境内で行われる。これは、保護された態様での、ＴＰＭ１７６などのハードウェア・トークンを用いた鍵の生成、保護された実行環境における暗号化アルゴリズムの実行、及び／又は、インストールされたＳＩＭ秘密のプラットフォーム１００上での暗号化形式における記憶を含み得る。
【００５２】
何れかの利用可能な物理的通信チャネルを、プロビジョニングの目的で用い得る。これは、例えば、ネットワーク１８６などのローカル・エリア・ネットワーク（ＬＡＮ）又はワイド・エリア・ネットワーク、ネットワーク１７２などの無線ＬＡＮ（ＷＬＡＮ）及び無線ワイド・エリア・ネットワーク（ＷＷＡＮ）を含み得る。このような保護されたチャネルは、例えば、プロセッサ、チップセット、及び／又は他の構成部分の協働を用いて備え得る。柔軟性のために、ＴＣＰ／ＩＰプロトコルを、プロビジョニング関連通信に用い得るが、何れかの他の適切なプロトコルも用い得る。
【００５３】
図４の流れ図はクライアント・コンピューティング・システムが行い得る動作とともにプロビジョニング・サーバが行い得る動作を表すが、種々の実施例の場合、図４に関して説明した動作の一部のみを行い得るものであり、かつ／又は、更なる動作を行い得る。
【００５４】
例えば、一実施例の場合、プロビジョニング・サーバによって行われる動作（例えば、交換鍵の設定への参加、双方向認証、並びにデータの暗号化及び転送）のみを行い得る。別の実施例の場合、クライアント・コンピューティング・システムに関連した動作（例えば、双方向認証における参加、暗号化データの受信、データの復号等。）のみを行い得る。
【００５５】
プロビジョンされると、使用中でない場合にＳＩＭ秘密データ・オブジェクト及び／又は他の情報に、保護された記憶装置を備え得る。一実施例の場合、ＳＩＭデータ・オブジェクト１９８は、ハード・ドライブ１８４上、又は何れかの他の記憶媒体上若しくは他の非揮発性メモリ上に暗号化形式で記憶される。バルク暗号化鍵として表し得る関連鍵１９９は、大容量記憶装置１８４上に暗号化し、記憶し得るものでもある。
【００５６】
図１、図２、及び図５を参照すれば、一実施例の場合、前述のコンピューティング・プラットフォーム１００によって備えられる保護された実行環境を用いて、ブロック５０５で、ＳＩＭデータ・オブジェクトを暗号化し、例えば、大容量記憶装置１８４上にこれを記憶する暗号化アルゴリズム１０７を実行する。図１及び図２は、例示の目的で、図４、図５及び図６に示す方法の説明に関して表すが、図１及び図２の構成要素は、全ての実施例を実施するうえで必ずしも必要でない。
【００５７】
暗号化アルゴリズム１０７とともに、ブロック５１０で、ＴＰＭ１７６を用いて、暗号化鍵の保護された伝送及び記憶を備える。暗号化アルゴリズム１０７とともに用いるバルク暗号化鍵は、ＴＰＭに備えられ、ブロック５１５で鍵が封印されるように暗号化エンジン１８２を用いて暗号化され、ブロック５２０で鍵１９９として大容量記憶装置１８４上に記憶される。
【００５８】
図１、図２、図６を参照して、保護された態様で先行して記憶されたＳＩＭデータ・オブジェクトをアクセスするうえでの一実施例の方法を説明する。
【００５９】
ブロック６０５では、ＳＩＭデータ・オブジェクトをアクセスするために、ＬＴ環境や他のセキュアな動作環境がまずロードされ、設定される。暗号化されたＳＩＭデータ・オブジェクトが、ブロック６１０で、保護された区画２１０において実行される処理スレッドの制御の下でメモリ１５４などの保護されたメモリに次にロードされる。認証データは、ブロック６１５で、信頼されたポートを介してＴＰＭ１７６に供給され、復号鍵１８３は、ブロック６２０で、保護された処理によってＴＰＭ１７６の保護された記憶機能を用いて更にロードされる。復号鍵１８３を更に用いて、暗号化されたバルク暗号化鍵１９９を復号し得る。ＴＣＰＡから入手可能なＴＰＭ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｖｅｒｓｉｏｎ  １．１及び／又はＴＣＧから入手可能なＴＰＭ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ  ｖｅｒｓｉｏｎ  １．２に更に詳細に記載されているように、更なる中間的動作が、一部の実施例の場合に関係し得る。
【００６０】
ブロック６２５では、ＳＩＭ秘密データ１９８を、保護された区画２１０において復号し、対象の目的で、信頼された態様で用いる。これは、ＳＩＭ秘密データの内容の消去又は修正を含み得る。ＳＩＭ秘密データ上の動作全てを終えると、前述のようにブロック６３０で、データが、保護された区画２１０において前述のように暗号化され、鍵がバインドされ、暗号化データ１９８及びバルク暗号化鍵１９９が記憶される。
【００６１】
ＳＩＭ秘密データを保護された態様で記憶するうえでの他の手法は、種々の実施例の範囲内にある。
【００６２】
コンピューティング・プラットフォーム１００によって備えられるＳＩＭ機能は、Ａ３（認証）アルゴリズム、Ａ８（暗号鍵（Ｋｃ）生成）アルゴリズム、及び／又はＡ５（暗号）アルゴリズムの保護された実行と、秘密及び／又はユーザ音声／データの保護された通信を行うようにする保護された経路とを更に含み得る。Ａ３アルゴリズム、Ａ８アルゴリズム、及びＡ５アルゴリズムの定義並びに更なる詳細と、こうしたアルゴリズムとともに用い得る鍵Ｋｃ、Ｋｉ、及びＩＭＳＩの定義並びに詳細は、例えば、ＥＴＳＩ  ＧＳＭ  １１．１１  ｓｐｅｃｉｆｉｃａｔｉｏｎ，  ｖｅｒｓｉｏｎ  ５．３  ０，  Ｊｕｌｙ  １９９６  （若しくは別のｖｅｒｓｉｏｎ）、  ＥＴＳＩ  ＧＳＭ  ０３．２０  ｖ／８．１．０  （ＧＳＭ暗号化アルゴリズム）、及び／又は３ＧＰＰ  （第３世代パートナーシップ・プロジェクト）  ＴＳ  ４３．０２０  Ｖ５．０．０，２００２−７  （若しくは別のｖｅｒｓｉｏｎ）で見つけ得る。
【００６３】
前述の図１及び図２を参照すれば、大容量記憶装置１８４又は別のメモリは、プロセッサ１０５によって実行し得るＳＩＭアプリケーション１９２を記憶し得る。ＳＩＭアプリケーション１９２は、信頼されたアプリケーションとしてみなし得るものであり、個別のハードウェアＳＩＭ装置によって通常備えられるＳＩＭ機能を備えるようＳＩＭアルゴリズム及び／又はＭＥアルゴリズム１９４などの種々のアルゴリズムの実行を必要に応じて制御し得る。
【００６４】
特に、ＥＴＳＩ  ＧＳＭ  １１．１１  ｓｐｅｃｉｆｉｃａｔｉｏｎに参照されたＡ３アルゴリズム、Ａ８アルゴリズム、及び／若しくはＡ５アルゴリズム、並びに／又は、ＳＩＭかＵＳＩＭに関連した他のアルゴリズム若しくは機能の全部又は一部を備えるようセキュア・モードにおいてプロセッサ１０５によって実行される対象のコードを含み得る。Ａ３アルゴリズムは、加入者の認証に用いる認証アルゴリズムである。ＥＴＳＩ  ＧＳＭ  ０３．２０  ｖ／８．１．０（「ＧＳＭ  ０３．２０」）に規定されているように、Ａ３アルゴリズムの目的は、加入者の識別子の認証を可能にすることである。この目的で、Ａ３アルゴリズムは、ネットワーク１７２やネットワーク１８６などのネットワークによって送られるランダム・チャレンジＲＡＮＤからの期待された応答ＳＲＥＳを計算しなければならない。この計算のために、Ａ３アルゴリズムは、秘密認証鍵Ｋｉを利用する。
【００６５】
Ａ８アルゴリズムは、音声通信及び／又はデータ通信を暗号化するのに用い得る暗号鍵Ｋｃを生成するのに用いる暗号鍵生成器アルゴリズムである。Ａ８アルゴリズムは、Ａ３アルゴリズムと組み合わせても組み合わせなくてもよい。ＧＳＭ０３．２０に規定されているように、Ａ８アルゴリズムは、認証鍵Ｋｉを用いて、認証手順中に送られるランダム・チャレンジＲＡＮＤから暗号鍵Ｋｃを計算しなければならない。
【００６６】
Ａ５アルゴリズムを用いて、ＩＭＳＩ及びＫｃを用いてコンピューティング・システム１００との間の通信の暗号化及び復号を行う。Ａ３アルゴリズム、Ａ８アルゴリズム及びＡ５アルゴリズムの各々は、アルゴリズムの提供者によって各種のやり方で実施し得る。
【００６７】
コンピューティング・システム１００によって備えられるセキュア動作環境が初期化されると、信頼されたアプリケーション１９２が、保護された区画２１０にロードされる。更に、ユーザ認証機能、ユーザ認可機能及びユーザ・アカウンティング機能（ユーザのＡＡＡ機能）を備えるようＡ３アルゴリズム、Ａ８アルゴリズム、及び／又はＡ５アルゴリズムのうちの１つ又は複数を実行することとする際にはいつでも、コンピューティング・システム１００は、アルゴリズムの保護された実行を行うようにする。オペレーティング・システム１９０及びプラットフォーム１００の上記セキュリティ機能を用いれば、Ａ３アルゴリズム、Ａ８アルゴリズム及びＡ５アルゴリズムの実行は、ソフトウェア攻撃から、かつ、関連したデータのアクセスの認可されていない試行からかなり保護される。
【００６８】
別の局面の場合、コンピューティング・システム１００上などのオープン・プラットフォーム上のＳＩＭ機能をアクセスするアプリケーション・プログラミング・インタフェース（ＡＰＩ）が備えられる。ＳＩＭ  ＡＰＩは、ＳＩＭ機能をアクセスするよう、信頼されたアプリケーションによって用いられる。ＳＩＭ  ＡＰＩを介してアクセスされる機能は、ＡＡＡ手順（例えば、ＥＡＰ、ＡＫＡ）において用いる認証鍵の生成と、データ通信の暗号化用の暗号化鍵の生成、加入アカウント情報、連絡先の氏名、住所、又は電話番号／電子メール・アドレスなどのユーザ秘密へのアクセスと、セキュリティ・ポリシーへのアクセス、ＳＩＭファイル構造階層下で備えられる保護された記憶装置へのアクセスと、サービス・プロバイダによってプロビジョニングされる予め構成されたＳＩＭベースのアプリケーション又はユーティリティ（例えば、位置更新、友人探索等）へのアクセスとのうちの１つ若しくは複数、又はそれ以上を含み得る。
【００６９】
種々の実施例のＡＰＩは、更なる、かつ／又は、別々のＳＩＭ機能をアクセスするようにし得る。
【００７０】
よって、コンピューティング・システム位置情報のプライバシ及び開示を管理する方法及び装置の種々の実施例を説明した。上記明細書では、その特定の例示的な実施例を参照して本発明を説明している。しかし、種々の修正及び変更をそれに対して、添付の請求項に記載した、本発明の更に広い技術思想及び範囲から逸脱することなく行い得る。例えば、前述の例示的な実施例は無線ネットワークの利用及び／又はアクセスに関連してＳＩＭ機能を用いることを表しているが、本特許請求の範囲記載のＳＩＭ機能は、例えば、有線ネットワーク・アクセス、アプリケーション用ＡＡＡ機能等を含む他のタイプのアプリケーションとともに用い得る。上記明細書と添付図面は、よって、限定的な意味合いではなく例証的な意味合いで解釈されることとする。
【図面の簡単な説明】
【００７１】
【図１】種々の実施例のＳＩＭ機能を実施し得るコンピューティング・システムの概要レベルの構成図である。
【図２】種々の実施例に用い得るコンピューティング・システム及び関連したソフトウェアの概要レベルの構成図である。
【図３】一実施例に備え得る保護された区間及び経路、並びに開いた区画及び経路を示す概要レベルの構成図である。
【図４】ＳＩＭデータ、アルゴリズム等をプロビジョニングする、一実施例の方法を示す流れ図である。
【図５】オープン・プラットフォーム上にＳＩＭ秘密データを、保護された態様で記憶する、一実施例の方法を示す流れ図である。
【図６】ＳＩＭ秘密データをアクセスする、一実施例の方法を示す流れ図である。
【図１】
2007516670.tif 000003
【図２】
2007516670.tif 000004
【図３】
2007516670.tif 000005
【図４】
2007516670.tif 000006
【図５】
2007516670.tif 000007
【図６】
2007516670.tif 000008
【国際調査報告】
2007516670.tif 000009
2007516670.tif 000010
2007516670.tif 000011