(57)【特許請求の範囲】
【請求項１】
１セットのコマンド／応答ペアによるサーバ（３０）及びユーザ装置（２０）間の通信方法において、
前記ユーザ装置（２０）が、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームのＩＭＳＩフィールドを使用して前記ペアの１つのコマンドを前記サーバ（３０）に伝送し、前記サーバ（３０）が、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドを使用して前記コマンドに対応する応答を伝送し、前記サーバ（３０）が、前記接続要求フレームに応答して前記認証要求フレームを送信する、ことを特徴とする方法。
【請求項２】
前記ユーザ装置（２０）が前記ＩＭＳＩフィールドのＭＳＩＮ部分を使用して前記コマンドを送信する、請求項１に記載の方法。
【請求項３】
前記ユーザ装置（２０）がセッション識別子を取得するための初期コマンドを送信し、前記サーバ（３０）が前記初期コマンドに応答して前記セッション識別子を送信し、前記ユーザ装置（２０）がセッション終了コマンドまで前記サーバ（３０）に送信される後続の全てのコマンドに前記セッション識別子を含める、請求項１に記載の方法。
【請求項４】
前記ユーザ装置（２０）が前記ユーザ装置（２０）に一意に割り当てられたターゲット識別子（１４）を格納し、前記サーバ（３０）がある範囲のトランザクション識別子を含み、前記コマンドが前記ターゲット識別子（１４）から生成されたパラメータを含み、前記サーバ（３０）が前記パラメータによって前記範囲内の前記ターゲット識別子（１４）を探し出す、請求項１に記載の方法。
【請求項５】
ＵＨが前記ターゲット識別子（１４）の６４最上位ビットを示し、ＰＨＬｎが前記範囲の下限の６４最上位ビットを示し、ＰＨＨｎが前記範囲の上限の６４最上位ビットを示し、Ｈが前記パラメータに含まれるプローブ値を示し、前記ユーザ装置（２０）が前記サーバ（３０）からＰＨＨｎとＰＨＬｎの両方を受信し、Ｈが（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しく、前記サーバ（３０）が、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１を生成し、ＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成する、請求項４に記載の方法。
【請求項６】
前記ユーザ装置（２０）が耐タンパエレメント（１０）を組み込み、前記ユーザ装置（２０）が前記ユーザ装置（２０）に割り当てられたＩＭＳＩ（２６）を要求するコマンドを送信し、これに応答して前記サーバ（３０）が前記ターゲット識別子（１４）によって前記ＩＭＳＩ（２６）を選択し、前記ＩＭＳＩ（２６）を返送し、前記ユーザ装置（２０）が前記耐タンパエレメント（１０）に前記ＩＭＳＩ（２６）を転送する、請求項４に記載の方法。
【請求項７】
前記ユーザ装置（２０）が、移動体オペレータに割り当てられ、通信ネットワークへの安全なアクセスに必要なクレデンシャルを生成するのに必要な鍵（２８）を要求するためのコマンドを送信し、これに応答して前記サーバ（３０）が前記ターゲット識別子（１４）によって前記鍵（２８）を選択し、前記鍵（２８）を返送し、前記ユーザ装置（２０）が前記耐タンパエレメント（１０）に前記鍵（２８）を転送し、前記耐タンパエレメント（１０）が、前記鍵（２８）と前記耐タンパエレメント（１０）に予め格納されているシード（２４）の両方から前記クレデンシャルを計算する、請求項６に記載の方法。
【請求項８】
前記シードが前記ユーザ装置（２０）から取得され、前記移動体オペレータに送信され、前記移動体オペレータが、ＭＮＯ私有鍵とＭＮＯ公開鍵とからなるＭＮＯ鍵ペアを生成し、前記ＩＭＳＩを生成し、前記シードからＫｉを計算し、前記ＭＮＯ公開鍵が、前記移動体オペレータに割り当てられた前記鍵（２８）であり、前記移動体オペレータが、前記サーバ（３０）に前記ＭＮＯ公開鍵、前記ＩＭＳＩ及び前記ターゲット識別子（１４）を送信する、請求項７に記載の方法。
【請求項９】
前記移動体オペレータが、第三者（ＩＤＳ）に前記シード（２４）をチェックするよう要求することによって前記耐タンパエレメント（１０）が本物であることを検証する、請求項７に記載の方法。
【請求項１０】
前記ユーザ装置（２０）がベースバンドを組み込み、前記ベースバンドが、前記サーバ（３０）からＩＭＳＩ（２６）及び移動体オペレータに割り当てられた鍵（２８）を取得するために、前記耐タンパエレメント（１０）を使用することなく前記セットのコマンドを送信し、前記ベースバンドが、前記ＩＭＳＩ（２６）と前記鍵（２８）の両方を前記耐タンパエレメント（１０）に転送し、前記耐タンパエレメント（１０）が、３ＧＰＰ鍵導出メカニズムに従って導出される接続クレデンシャルを計算する、請求項７に記載の方法。
【請求項１１】
プロセッサ（７０）を備え、コマンド／応答ペアによってサーバ（３０）と通信可能なユーザ装置（２０）において、
前記ユーザ装置（２０）が、前記プロセッサ（７０）により実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを生成及び送信して、前記ペアの１つの接続要求フレームのＩＭＳＩフィールドに含まれているコマンドを前記サーバ（３０）に伝送するように適合された通信エージェント（７１）を備え、前記通信エージェント（７１）が、前記プロセッサ（７０）により実行され、前記接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された前記コマンドに対応する応答を受信するように適合される、ことを特徴とするユーザ装置（２０）。
【請求項１２】
前記ユーザ装置（２０）が、次の順序付けられた一連のコマンド、すなわちセッション識別子の要求、ターゲット識別子（１４）の送信、ＩＭＳＩの要求、移動体オペレータに割り当てられた鍵（２８）の要求、及びセッション終了を前記サーバ（３０）に送信するように構成された、請求項１１に記載のユーザ装置（２０）。
【請求項１３】
ＵＨが前記ターゲット識別子（１４）の６４最上位ビットを示し、ＰＨＬｎが前記サーバ（３０）に格納されている範囲の下限の６４最上位ビットを示し、ＰＨＨｎが前記範囲の上限の６４最上位ビットを示し、前記ユーザ装置（２０）が、プロセッサ（１７）と、前記プロセッサ（１７）により実行され、（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しいプローブ値（Ｈ）を生成するように適合されたソフトウェアプローブエージェント（３４）とを備えた耐タンパエレメント（１０）を組み込む、請求項１２に記載のユーザ装置（２０）。
【請求項１４】
プロセッサ（８０）を備え、コマンド／応答ペアによってユーザ装置（２０）と通信可能なサーバ（３０）において、
前記サーバ（３０）が、前記プロセッサ（８０）により実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを受信して、前記ペアの１つの接続要求フレームのＩＭＳＩフィールドに含まれているコマンドを前記ユーザ装置（２０）から伝送するように適合されたプロビジョニングエージェント（８１）を備え、前記プロビジョニングエージェント（８１）が、前記プロセッサ（８０）により実行され、前記接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された前記コマンドに対応する応答を生成及び送信するように適合される、ことを特徴とするサーバ（３０）。
【請求項１５】
前記ユーザ装置（２０）が、前記ユーザ装置（２０）に一意に割り当てられたターゲット識別子（１４）を格納するように意図され、前記サーバ（３０）が、ある範囲のトランザクション識別子を格納し、前記コマンドが前記ターゲット識別子（１４）から生成されたパラメータを含み、前記サーバ（３０）が前記パラメータを使用することによって前記範囲内の前記ターゲット識別子（１４）を探し出すように構成された、請求項１４に記載のサーバ（３０）。
【請求項１６】
ＵＨが前記ターゲット識別子（１４）の６４最上位ビットを示し、ＰＨＬｎが前記範囲の下限の６４最上位ビットを示し、ＰＨＨｎが前記範囲の上限の６４最上位ビットを示し、Ｈが前記パラメータに含まれたプローブ値を示し、前記サーバ（３０）が、前記ユーザ装置（２０）にＰＨＨｎとＰＨＬｎの両方を送信するように構成され、Ｈが（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しく、前記サーバ（３０）が、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１を生成し、ＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成するように構成された、請求項１５に記載のサーバ（３０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はサーバ及びユーザ装置間の通信を管理する方法に関する。本発明は特に、サーバと、完全なテレコムクレデンシャルを有していないテレコムユーザ装置との間の通信チャネルを確立する方法に関する。
【背景技術】
【０００２】
テレコム通信ネットワークを安全に接続するために、ユーザ装置には、対ＩＭＳＩ／Ｋｉとして知られている完全なテレコムクレデンシャルがプロビジョニングされる必要がある。ここでＩＭＳＩは、テレコム加入者の一意の識別子であり、Ｋｉは、移動体ネットワークオペレータにより加入者に一意に割り当てられた秘密鍵である。
【０００３】
対ＩＭＳＩ／Ｋｉは通常、ＳＩＭカード、汎用集積回路カード（ＵＩＣＣ）、埋設型セキュアエレメント（例えばｅＵＩＣＣ）、ソフトウェアセキュアエンクレーブ、又はシステムオンチップ（ＳＯＣ）内に組み込まれたセキュアエレメント（すなわちｉＵＩＣＣ）である可能性がある耐タンパ性を有するエレメントに格納される。
【０００４】
耐タンパエレメントは、含まれるデータへのアクセスを制御すること、及び他の機械又はエンティティによるそのデータの使用を許可する又は許可しないことができるため安全であると考えられる。耐タンパエレメントはまた、暗号コンポーネント（暗号プロセッサとしても知られている）をベースとする計算サービスを提供することができる。一般に、耐タンパエレメントはコンピューティング資源及びメモリ資源が限られており、電力を供給するホストマシンに接続されることが意図されている。耐タンパエレメントは、ホストマシンに対して取り外し可能であっても固定されていてもよい。
【０００５】
製造プロセスに起因して、ユーザ装置（及びその耐タンパエレメント）が対ＩＭＳＩ／Ｋｉなしに出荷される可能性がある。
【０００６】
このようなユーザ装置と、ユーザ装置が対ＩＭＳＩ／Ｋｉを入手できるようにすることが意図されたサーバとの間の通信セッションを安全に確立する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、上述の技術的問題を解決することである。
【課題を解決するための手段】
【０００８】
本発明の目的は、１セットのコマンド／応答ペアによるサーバ及びユーザ装置間の通信方法である。ユーザ装置は、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームのＩＭＳＩフィールドを使用して上記ペアの１つのコマンドをサーバに伝送する。サーバは、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドを使用して、受信したコマンドに対応する応答を伝送する。サーバは、接続要求フレームに応答して認証要求フレームを送信する。
【０００９】
有利には、ユーザ装置はＩＭＳＩフィールドのＭＳＩＮ部分を使用してコマンドを送信することができる。
【００１０】
有利には、ユーザ装置はセッション識別子を取得するための初期コマンドを送信することができ、サーバは初期コマンドに応答してセッション識別子を送信することができ、ユーザ装置は、セッション終了コマンドまでサーバに送信される後続の全てのコマンドにセッション識別子を含めることができる。
【００１１】
有利には、ユーザ装置は、上記ユーザ装置に一意に割り当てられたターゲット識別子を格納することができ、サーバはある範囲のトランザクション識別子を含むことができ、コマンドはターゲット識別子から生成されたパラメータを含むことができ、サーバは上記パラメータによって範囲内のターゲット識別子を探し出すことができる。
【００１２】
有利には、ＵＨがターゲット識別子の６４最上位ビットを示し、ＰＨＬｎが範囲の下限の６４最上位ビットを示し、ＰＨＨｎが範囲の上限の６４最上位ビットを示し、Ｈがパラメータに含まれるプローブ値を示し、ユーザ装置はサーバからＰＨＨｎとＰＨＬｎの両方を受信することができ、Ｈは（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しい。サーバは、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１を生成することができ、ＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成することができる。
【００１３】
有利には、ユーザ装置は、耐タンパエレメントを組み込むことができる。ユーザ装置は、ユーザ装置に割り当てられたＩＭＳＩを要求するコマンドを送信することができる。これに応答して、サーバはターゲット識別子によってＩＭＳＩを選択し、ＩＭＳＩを返送することができる。ユーザ装置は、耐タンパエレメントにＩＭＳＩを転送することができる。
【００１４】
有利には、ユーザ装置は、移動体オペレータに割り当てられ、通信ネットワークへの安全なアクセスに必要なクレデンシャルを生成するのに必要な鍵を要求するためのコマンドを送信することができる。これに応答して、サーバはターゲット識別子によってこの鍵を選択し、返送することができる。ユーザ装置は、耐タンパエレメントにこの鍵を転送することができ、耐タンパエレメントは、この鍵と耐タンパエレメントに予め格納されているシードの両方から上記クレデンシャルを計算することができる。
【００１５】
有利には、シードはユーザ装置から取得し、移動体オペレータに送信することができる。移動体オペレータは、ＭＮＯ私有鍵とＭＮＯ公開鍵とからなるＭＮＯ鍵ペアを生成し、ＩＭＳＩを生成し、シードからＫｉを計算することができる。ＭＮＯ公開鍵は、移動体オペレータに割り当てられた鍵であってよい。移動体オペレータは、サーバにＭＮＯ公開鍵、ＩＭＳＩ及びターゲット識別子を送信することができる。
【００１６】
有利には、移動体オペレータは、第三者にシードをチェックするよう要求することによって耐タンパエレメントが本物であることを検証することができる。
【００１７】
有利には、ユーザ装置はベースバンドを組み込むことができる。ベースバンドは、サーバからＩＭＳＩと移動体オペレータに割り当てられた鍵とを取得するために、耐タンパエレメントを使用することなく上記セットのコマンドを送信することができる。ベースバンドは、上記ＩＭＳＩと上記鍵の両方を耐タンパエレメントに転送することができる。耐タンパエレメントは、３ＧＰＰ鍵導出メカニズムに従って導出される接続クレデンシャルを計算することができる。
【００１８】
本発明の別の目的は、プロセッサを備え、１セットのコマンド／応答ペアによってサーバと通信可能なユーザ装置である。ユーザ装置は、プロセッサにより実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを生成及び送信して、上記ペアの１つの接続要求フレームのＩＭＳＩフィールドに含まれているコマンドをサーバに伝送するように適合された通信エージェントを備える。通信エージェントは、プロセッサにより実行され、接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された上記コマンドに対応する応答を受信するように適合される。
【００１９】
有利には、ユーザ装置は、次の順序付けられた一連のコマンド、すなわちセッション識別子の要求、ターゲット識別子の送信、ＩＭＳＩの要求、移動体オペレータに割り当てられた鍵の要求、及びセッション終了をサーバに送信するように構成されてよい。
【００２０】
有利には、ＵＨがターゲット識別子（１４）の６４最上位ビットを示し、ＰＨＬｎがサーバ（３０）に格納されている範囲の下限の６４最上位ビットを示し、ＰＨＨｎが範囲の上限の６４最上位ビットを示し、ユーザ装置は、プロセッサと、プロセッサにより実行され、（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しいプローブ値（Ｈ）を生成するように適合されたソフトウェアプローブエージェントとを備えた耐タンパエレメントを組み込むことができる。
【００２１】
本発明の別の目的は、プロセッサを備え、１セットのコマンド／応答ペアによってユーザ装置と通信可能なサーバである。サーバは、プロセッサにより実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを受信して、上記ペアの１つの接続要求フレームのＩＭＳＩフィールドに含まれているコマンドをユーザ装置から伝送するように適合されたプロビジョニングエージェントを備える。プロビジョニングエージェントは、プロセッサにより実行され、接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された上記コマンドに対応する応答を生成及び送信するように適合される。
【００２２】
有利には、ユーザ装置は、上記ユーザ装置に一意に割り当てられたターゲット識別子を格納するように意図されてよい。サーバはある範囲のトランザクション識別子を格納することができる。コマンドはターゲット識別子から生成されたパラメータを含むことができ、サーバは上記パラメータを使用することによって範囲内のターゲット識別子を探し出すように構成されてよい。
【００２３】
有利には、ＵＨがターゲット識別子の６４最上位ビットを示し、ＰＨＬｎが範囲の下限の６４最上位ビットを示し、ＰＨＨｎが範囲の上限の６４最上位ビットを示し、Ｈがパラメータに含まれるプローブ値を示し、サーバはユーザ装置にＰＨＨｎとＰＨＬｎの両方を送信するように構成されてよく、Ｈは（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しい。サーバは、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１を生成し、ＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成するように構成されてよい。
【図面の簡単な説明】
【００２４】
本発明の他の特徴及び利点は、対応する添付の図面を参照しながら本発明の複数の好適な実施形態の以下の説明を読めばより明らかになるだろう。
【００２５】
【図１】本発明のある実施例によるユーザ装置とサーバの間の通信管理のフロー図。
【図２】本発明のある実施例によるユーザ装置のアーキテクチャの模式図。
【図３】本発明のある実施例によるサーバのアーキテクチャの模式図。
【図４】本発明のある実施形態によるユーザ装置の耐タンパエレメントにテレコムクレデンシャルをプロビジョニングするための通信管理のフロー図。
【発明を実施するための形態】
【００２６】
本発明は、完全なテレコムクレデンシャルがプロビジョニングされることが意図されたいずれのタイプのユーザ装置にも適用可能である。
【００２７】
このようなユーザ装置は、例えばスマートフォン、タブレット、パーソナルコンピュータ、スマートウォッチ、車両、計器、スロットマシン、ＴＶ又はコンピュータであってよい。
【００２８】
本発明は、通常はテレコムデバイスに実装される通信プロトコルを全く新しい方法で使用することによって利用する。ユーザ装置及びサーバは、ユーザ装置により送信されるコマンドとサーバにより返送される応答とからなるコマンド／応答ペアのメカニズムによって通信する。
【００２９】
ユーザ装置は、ＥＴＳＩ  ＴＳ  １２４．００８（例えば２００９年７月付けのバージョン８．６．０）により定義される接続要求フレームを使用して、このフレームのＩＭＳＩフィールドを通じて１つのコマンドを伝送する。
【００３０】
サーバは、ＥＴＳＩ  ＴＳ  １２４．００８（例えば２００９年７月付けのバージョン８．６．０）により定義される認証要求フレームを使用して、このフレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドの一方（又は両方）を通じて、受信したコマンドに対応する応答を伝送する。
【００３１】
サーバはＴＳ  １２４．００８により指定される接続要求に対する従来の応答を送信しないことに留意されたい。
【００３２】
好ましくは、ユーザ装置は、接続要求フレームのＩＭＳＩフィールドのＭＳＩＮ（移動体加入者識別番号）部分を使用してデータをサーバに向けて伝送する。例えばＭＳＩＮ部分は３つの領域に分割することができる：
−セッション識別子をコード化するために確保された３桁（割り当てスロットとも呼ばれる）
−ペイロードに確保された５桁
−コマンド識別子のために確保された１桁。
【００３３】
好ましくは、ユーザ装置及びサーバは、新しいコマンドセットについて次の約束事を使用するように構成される。
−新しいセッション識別子の要求のための「０」
−ユーザ装置に割り当てられた一意の識別子の送信のための「１」
−ＩＭＳＩの要求のための「２」
−加入者／移動体オペレータに割り当てられた鍵の要求のための「３」
−コマンドをいくつかの後続フレームに分割する必要がある場合のシーケンス番号「４」〜「８」
−セッションを閉じる（すなわちセッションを終了させる）ための「９」。
【００３４】
有利には、シーケンス番号はループ式に管理することができる。すなわち「８」に達したら「４」から続く（すなわち「４」からの再番号割当が行われる循環連続／モジュロ）。したがって、後続フレームの数に制限はない。
【００３５】
図１は、本発明のある実施例による通信管理のフロー図を示している。
【００３６】
ユーザ装置２０には一時的なクレデンシャルとターゲット識別子１４とも呼ばれる一意の識別子ＵＵＩＤＵＥとがプロビジョニングされていると仮定する。この実施例では、サーバ３０はホームロケーションレジスタ（ＨＬＲ又はＤ−ＨＬＲ）である。
【００３７】
ステップＳ０１において、ユーザ装置２０は、セッション識別子を要求する第１のコマンドを送信することによってサーバ３０とのやりとりを開始する。任意選択的に、送信したペイロードは、サーバ３０がユーザ装置２０にプロビジョニングされるテレコムクレデンシャルがどの移動体ネットワークオペレータのものであるかを特定できるようにするＭＮＯコードを含むことができる。例えばＭＮＯコードは、移動体ネットワークオペレータの名前のハッシュ（５桁の長さを有する）として計算することができる。
【００３８】
ステップＳ０２において、サーバ３０は、ステップＳ０１で受信したコマンドに応答してセッション識別子を選択し、これを認証要求フレームによってユーザ装置に送信する。好ましくは、セッション識別子は認証パラメータＲＡＮＤフィールドで伝送される。
【００３９】
ステップＳ０３において、ユーザ装置２０は、ユーザ装置に割り当てられた一意の識別子（ＵＵＩＤＵＥ）の送信を開始する。ＵＵＩＤＵＥの長さが利用可能なペイロードのサイズより大きいと仮定すると、いくつかの接続要求フレームが必要である。別の接続要求フレームは、サーバが一連の接続要求フレームをまとめて考えることを可能にするシーケンス番号である「４」〜「８」に等しいコマンド識別子と共に送信することができる。
【００４０】
サーバ３０は、ある範囲のトランザクション識別子が予めプロビジョニングされていると仮定される。この範囲は、既にいくつかのトランザクション識別子がユーザ装置に割り当てられている場合に穴を含む可能性がある。
【００４１】
好ましい実施形態では、ＵＵＩＤＵＥは１６バイト長である。必要な接続要求フレームの数を減らすために、次のアルゴリズムを用いて改良を実行することができる。
【００４２】
次のように仮定する。
−Ｎは、ＵＵＩＤＵＥ（すなわちターゲット識別子１４）と一致する可能性がある、サーバ３０において利用可能なトランザクション識別子の数である。換言すれば、Ｎはサーバに格納されている範囲の自由なトランザクション識別子の数である。
−ＰＨＬｎは利用可能な範囲の下限の６４最上位ビットを示す。
−ＰＨＨｎは利用可能な範囲の上限の６４最上位ビットを示す。
−ＵＨはＵＵＩＤＵＥ（ターゲット識別子１４）の６４最上位ビットを示す。
−ＰＬＬｎは利用可能な範囲の下限の６４最下位ビットを示す。
−ＰＬＨｎは利用可能な範囲の上限の６４最下位ビットを示す。
−ＵＬはＵＵＩＤＵＥ（ターゲット識別子１４）の６４最下位ビットを示す。
−Ｈはユーザ装置によりサーバに送信されるプローブ値を示す。
【００４３】
ユーザ装置２０は、サーバ３０からＰＨＨｎとＰＨＬｎの両方を受信する。この送信は、ステップＳ０３のコマンドに応答してステップＳ０４において行うことができる。
【００４４】
ステップＳ０５において、ユーザ装置はＨを（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）に等しいものとして計算し、Ｈをサーバに送信する。
【００４５】
ステップＳ０６において、サーバ３０は、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１及びＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成する。サーバ３０は、更新されたＰＨＬｎ+１と更新されたＰＨＨｎ+１の両方をユーザ装置に送信する。
【００４６】
ステップＳ０７において、ユーザ装置はＨを上記のように計算し、これをサーバに送信する。
【００４７】
この実施例では、サーバはＵＵＩＤＵＥの６４最上位ビットの特定に成功している。したがって、ステップＳ０８において、サーバはこれに応答してＰＬＨｎとＰＬＬｎの両方を送信する。
【００４８】
同じアルゴリズムが、ステップＳ０９〜Ｓ１０において最下位ビットについて再度実行される。この実施例では、サーバはステップＳ１０においてＵＵＩＤＵＥの６４最下位ビットの特定に成功しており、ユーザ装置にＵＵＩＤＵＥの送信の終了を通知するための応答を送信する。
【００４９】
次にステップＳ１１において、ユーザ装置はＩＭＳＩを要求するコマンドを送信する。これに応答してサーバは、ステップＳ１２において認証要求フレームによってＩＭＳＩを送信する。
【００５０】
ステップＳ１３においてユーザ装置は、加入者／移動体オペレータに割り当てられた鍵を要求するコマンドを送信する。好ましくは、この鍵はユーザ装置により使用されて最終Ｋｉを生成するための一時的な鍵である。一時的な鍵の通常のサイズに起因して、図１の実施例では２つの鍵全体（ＰＫ１及びＰＫ２部分）を転送するのに２つのやりとりが必要である（ステップＳ１３〜１６）。
【００５１】
このときユーザ装置は、受信した一時的な鍵とユーザ装置に予め設定されているシードの両方を使用することによってＫｉを生成することができる。好ましくは、ユーザ装置はシードを格納した耐タンパエレメントを組み込み、Ｋｉの生成を実行する。
【００５２】
ステップＳ１７において、ユーザ装置はセッションを終了させるためのコマンドを送信する。このときセッション識別子をサーバによって解放し別のユーザ装置に再割り当てすることができる。ステップＳ１８において、ユーザ装置にセッションの終了を知らせるための応答がサーバによって返送される。サーバは割り当てられたスロットを回復し、これを別のデバイスに再割り当てすることができる。
【００５３】
セッション識別子によって、サーバは複数の受信メッセージの中から関連するユーザ装置を特定できることに留意されたい。
【００５４】
換言すれば、サーバがＵＵＩＤＵＥの値を知る前に必要な接続要求フレームの数を最小限に抑えるために次のアルゴリズムを用いることができる。
【００５５】
このアルゴリズムは、２ではなく１０００００規模の二分法の原理を用いる。
【００５６】
サーバは、その範囲の動的な下限及び動的な上限を維持することになる。サーバは、ユーザ装置により送信されたプローブ値（すなわちＨ）によって検索値の範囲を次第に制限することになる。したがって、動的な下限及び動的な上限は、求められるものに対応する１つの値に収束することになる。改良された二分法の原理は２回、すなわち１回は最上位ビットについて、そしてもう１回は最下位ビットについて実行される。
【００５７】
／／６４ＭＳＢ（最上位ビット）部分
Ｘ＝０〜５について、
ユーザ装置は
Ｈ＝（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）を計算し、Ｈをサーバに送信する。
サーバにおいて、ＩＦ  （ＰＨＨｎ−ＰＨＬｎ）＝０  ＴＨＥＮ  ＱＵＩＴ  ＬＯＯＰ
ＥＮＤ  ＩＦ
【００５８】
サーバは、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１及びＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成し、更新されたＰＨＬｎ+１と更新されたＰＨＨｎ+１の両方をユーザ装置に送信する。
【００５９】
ＮＥＸＴ  Ｘ
ＩＦ  Ｘ＜６
／／６４ＬＳＢ（最下位ビット）部分
Ｘ＝０〜５について、
ユーザ装置は
Ｈ＝（（ＵＨ−ＰＬＬｎ）*１０００００）／（ＰＬＨｎ−ＰＬＬｎ）を計算し、Ｈをサーバに送信する。
サーバにおいて、ＩＦ  （ＰＬＨｎ−ＰＬＬｎ）＝０  ＴＨＥＮ  ＱＵＩＴ  ＬＯＯＰ
ＥＮＤ  ＩＦ
【００６０】
サーバは、ＰＬＬｎ＋（Ｈ*（ＰＬＨｎ−ＰＬＬｎ）／１０００００）に等しい更新されたＰＬＬｎ+１及びＰＬＬｎ＋（（Ｈ＋１）*（ＰＬＨｎ−ＰＬＬｎ）／１０００００）に等しい更新されたＰＬＨｎ+１を生成し、更新されたＰＬＬｎ+１と更新されたＰＬＨｎ+１の両方をユーザ装置に送信する。
【００６１】
ＮＥＸＴ  Ｘ
ＥＮＤ  ＩＦ
ＩＦ  Ｘ＜６
／／ＵＵＩＤＵＥの転送が成功した
ＥＮＤ  ＩＦ
【００６２】
５つのステップの後にループが収束しない場合、ＵＵＩＤＵＥはサーバの範囲に属さないことに留意されたい。
【００６３】
最大ループ（やりとり）数は、２×Ｌｏｇ（Ｎ）／Ｌｏｇ（１０００００）である。例えばサーバの範囲にある利用可能なトランザクション識別子についてＮ＝１，０００，０００である場合、やりとりの数は４以下である。
【００６４】
サーバの範囲内に対象ＵＵＩＤＵＥに一致する（すなわち値が等しい）トランザクション識別子がない場合、サーバは、移動体オペレータに関連する事前交渉によるサブスクリプションのプール内に一時的なＩＭＳＩを窺うことができる（ステップＳ０１で送信されたコマンドのＭＮＯコードを使用して移動体オペレータを特定することができる）。この場合、サーバは動的割り当てを実行し、一時的なＩＭＳＩがユーザ装置に割り当てられたことを移動体オペレータに通知する。
【００６５】
ステップＳ０２を参照すると、サーバは、有利にはユーザ装置がステップＳ０３においてＵＵＩＤＵＥ送信のための第１の接続要求フレームを送信する前にプローブ値Ｈを計算できるように、認証要求のＲＡＮＤ及びＡＵＴＮフィールドでＰＨＨｎ及びＰＨＬｎを送信することができる。ＲＡＮＤ及びＡＵＴＮを使用することにより、演算が６４ビットではなく１２８ビット境界を使用することによって実行された後、ステップＳ０７及びＳ０８は削除することができる。
【００６６】
ステップＳ０１の前に、サーバ３０に入力するためにいくつかの事前ステップを実行することができる。
【００６７】
例えばシードは、ユーザ装置２０からＯＥＭ（相手先商標製品製造会社）によって取得し、移動体オペレータに送信することができる。次に移動体オペレータは、ＭＮＯ私有鍵とＭＮＯ公開鍵とからなるＭＮＯ非対称鍵ペアを生成することができる。移動体オペレータはＩＭＳＩを生成し、シードからＫｉを計算することができる。次に移動体オペレータはサーバ３０にトリプレット、すなわちＭＮＯ公開鍵＋ＩＭＳＩ＋トランザクション識別子を送信する。サーバ３０はこのトリプレットをサーバが格納しているトランザクション識別子の範囲に追加することができる。このようにしてサーバには、多くのユーザ装置（又は多くの耐タンパエレメント）に対応する多くのトリプレットを入力することができる。
【００６８】
図４は、本発明のある実施形態によるユーザ装置の耐タンパエレメント（ＴＲＥ）にテレコムクレデンシャルをプロビジョニングするための通信管理のフロー図を示している。
【００６９】
次の表記が以下で使用される。
ＣＥＲＴ．Ｘ．ＥＣＤＳＡ：  ＸのＥＣＤＳＡ静的証明書
ＳＫ．Ｘ．ＥＣＤＳＡ：  署名のためのＸのＥＣＤＳＡ私有鍵
ＰＫ．Ｘ．ＥＣＤＳＡ：  署名のためのＸのＥＣＤＳＡ公開鍵
ＳＫ．Ｘ．ＥＣＤＨＥ：  ＸのＥＣＤＨＥ私有鍵（一時的）
ＡＴＫ．Ｘ．ＥＣＤＨＥ：  ＥＣＤＨＥ認証トークン（鍵共有のためのＸの動的証明書）
ＣＥＲＴ．Ｘ．ＥＣＫＡ：  鍵共有のためのＸのＥＣＫＡ静的証明書
ＳＫ．Ｘ．ＥＣＫＡ：  鍵共有のためのＸのＥＣＫＡ私有鍵
ＰＫ．Ｘ．ＥＣＫＡ：  鍵共有のためのＸのＥＣＫＡ公開鍵
ＰＫ．Ｘ．ＥＣＤＨＥ：  ＸのＥＣＤＨＥ公開鍵（一時的）
ＶＥＲＩＦＹ（Ｙ）［Ｘ］：  鍵ＹでＸを検証する
ＳＩＧＮ（Ｙ）［Ｘ，...］：  鍵ＹでＸに署名する
ＤＥＲＩＶＥ（Ｘ）［Ｙ］：  私有鍵Ｘ及び証明書／認証トークンＹから共有セッション鍵を計算する
｛ＳＫ，ＰＫ｝＝ＥＣＤＨＥ（）：  一時的なＥＣＤＨ鍵ペアを生成する。
｛Ｍ，Ｉ｝＝ＥＮＣＲＹＰＴ（Ｙ）［Ｘ］：  鍵ＹでＸを暗号化する。暗号文Ｍ及び完全性チェックＩを得る。
Ｘ＝ＤＥＣＲＹＰＴ（Ｙ，Ｉ）［Ｍ］：  鍵ＹでＭを復号化し、Ｉを用いることによって完全性をチェックする。平文Ｘを得る。
【００７０】
次の文献が使用される。
［ａ］ＡＥＳ１２８：  高度暗号化標準（ＡＥＳ）の仕様書−ＦＩＰＳ  ＰＵＢ  １９７
［ｂ］ＢＳＩ技術ガイドラインＴＲ−０３１１１：  楕円曲線暗号化−バージョン２．０
［ｃ］ＳＨＡ−２５６：  セキュアハッシュ標準の仕様書−ＦＩＰＳ  ＰＵＢ  １８０−３、２００８
【００７１】
次の演算が実行可能である。
署名
ＣＥＲＴ．Ｘ．ＥＣＤＳＡ＝ＳＩＧＮ（ＳＫ．Ｙ．ＥＣＤＳＡ）［ＰＫ．Ｘ．ＥＣＤＳＡ，Ｘ０，Ｘ１，Ｘ２，Ｘ３．．．］
ＡＴＫ．Ｘ．ＥＣＤＨＥ＝ＳＩＧＮ（ＳＫ．Ｗ．ＥＣＤＳＡ）［ＰＫ．Ｘ．ＥＣＤＨＥ，Ｘ０，Ｘ１，Ｘ２，Ｘ３．．．］
ここでＸ０，Ｘ１，Ｘ２，Ｘ３，．．．は署名するための任意の値である。
【００７２】
検証
ＶＥＲＩＦＹ（ＣＥＲＴ．Ｙ．ＥＣＤＳＡ）［ＣＥＲＴ．Ｘ．ＥＣＤＳＡ］は、ＣＥＲＴ．Ｙ．ＥＣＤＳＡにＰＫ．Ｙ．ＥＣＤＳＡを使用することによってブール（成功の場合はＴＲＵＥ）を返す。
【００７３】
導出
ＫＳＸＹＮ＝ＤＥＲＩＶ（ＳＫ．Ｘ．Ａ）［Ｂ．Ｙ．Ｃ］  ここでＫＳＸＹＮは共有秘密鍵である。
ＫＳＹＸＮ＝ＤＥＲＩＶ（ＳＫ．Ｙ．Ｃ）［Ｂ．Ｘ．Ａ］  ここでＫＳＹＸＮは共有秘密鍵である。
ここで、
ＡはＥＣＫＡ又はＥＣＤＨＥであり
ＢはＣＥＲＴ又はＡＴＫであり
ＣはＥＣＫＡ又はＥＣＤＨＥである。
ＫＳＸＹＮ＝ＫＳＹＸＮ
ＫＳＸＹＮ又はＫＳＹＸＮは、Ｎ個の鍵の行列、すなわちＫＳＸＹ[１]，ＫＳＸＹ[２]，．．．，ＫＳＸＹ[Ｎ]である。
【００７４】
鍵導出関数
関数ＤＥＲＩＶＥ（Ｘ）[Ｙ]は、[ｂ]の証明書又は認証トークン内で私有鍵Ｘ及び公開鍵ＹからＮ個の共有秘密鍵ＫＳＮの行列を計算することを可能にする。手順は、[ｂ]で定義される共有秘密ＥＣＫＡ−ＥＧ又はＥＣＫＡ−ＤＨ及び鍵導出関数の計算から始まる：
ＫＤＦ−１２８は、[ｃ]のＳＨＡ−２５６を使用し、行列の要素として１セットのＮ×１２８ビット導出鍵Ｋ[１]〜Ｋ[Ｎ]を生成することによるＸ９．６３鍵導出関数である。
ＫｉＮ＝ＫＤＦ−１２８（ＳｈＳ，Ｉ，ＳＩ）
ここで
・ＳｈＳ：  [ｂ]に定義される鍵共有アルゴリズムＥＣＫＡ−ＥＧ（静的鍵及び一時的鍵を使用する）又はＥＣＫＡ−ＤＨ（２つの一時的鍵を使用する）からの共有秘密２５６ビット
・Ｉ：  １〜Ｎのカウンタ３２ビット値
・ＳＩ：  ＳＩ＝Ｎ｜｜ＫＥＹ＿ＴＹＰＥ｜｜１２８である共有情報
〇  ＫＥＹ＿ＴＹＰＥ：  ＫＳ１について‘１０’
〇  ＫＥＹ＿ＴＹＰＥ：  ＫＳ２について‘２０’
ＫＤＦ関数は［８］のＳＨＡ２５６である。
【００７５】
暗号化／復号化関数
データの暗号化及び復号化は、ｅＧＣＭ−１２８アルゴリズムに基づく対称関数である。
ＭＤＳＴ，ＨＣＨＥＣＫ＝ｅＧＣＭ−ＡＥＳ１２８（Ｋ，ＩＶ，ＥＩＶ）［ＭＳＲＣ］
ここで
・Ｋ：  １２８ビット暗号化／復号化及び完全性鍵
・ＩＶ：  １２８ビット初期値完全性チェック
・ＭＳＲＣ：  暗号化／復号化するメッセージストリーム。メッセージの長さは「ＦＦ」でパディングされた１２８ビットブロックの倍数とする。
・ＥＩＶ：  １２８ビット初期値暗号化鍵
・ＭＤＳＴ：  暗号化／復号化されたメッセージストリーム。暗号化されたメッセージの長さはＭＳＲＣメッセージと同じである。
・ＨＳＲＣ：  平文（ソース）の１２８ビット完全性チェック結果
全ての鍵及び初期値は次のような鍵導出関数から導出される：
・Ｋ＝ＫＤＦ−１２８のＫ［１］
・ＩＶ＝ＫＤＦ−１２８のＫ［２］
・ＥＩＶ＝ＫＤＦ−１２８のＫ［３］
その結果、
ＭＤＳＴ，ＨＳＲＣ＝ｅＧＣＭ−１２８（Ｋ，ＩＶ，ＥＩＶ）［ＭＳＲＣ］
をターゲットにする
ＭＤＳＴ，ＨＳＲＣ＝ＥＮＣＲＹＰＴ（ＫＳ３）［ＭＳＲＣ］
の一般表記は、
ＭＤＳＴ，ＨＳＲＣ＝ｅＧＣＭ−１２８（ＫＳ［１］，ＫＳ［２］，ＫＳ［３］）［ＭＳＲＣ］
である。
【００７６】
他の暗号化及び完全性チェックアルゴリズムも効率的に使用することができる。
【００７７】
我々は暗号化方法を有するｅＧＣＭ−１２８を提案しているが、ＦＩＰＳ−ＰＵＢ−８１のＣＢＣ−ＡＥＳ−１２８及びＦＩＰＳ  ＰＵＢ  １９８−１のＨＭＡＣ−ＳＨＡ２５６がプロトコルの受け入れを容易にするためにこれに取って代わることができる。
ＭＤＳＴ＝ＣＢＣ−ＡＥＳ−１２８（ＫＥ，ＩＶ）［ＭＳＲＣ］
ＨＳＲＣ＝ＨＭＡＣ−ＳＨＡ２５６（ＫＨ）［ＭＳＲＣ］
ここで、
ＫＥ：１２８ビット暗号化／復号化及び完全性鍵：ＫＤＦ−１２８のＫ［１］
ＩＶ：１２８ビット初期値完全性チェック：ＫＤＦ−１２８のＫ［２］
ＭＳＲＣ：暗号化／復号化するメッセージストリーム。メッセージの長さは「ＦＦ」でパディングされた１２８ビットブロックの倍数とする。
ＫＨ：１２８ビット初期鍵：ＫＤＦ−１２８のＫ［３］
ＭＤＳＴ：暗号化／復号化されたメッセージストリーム。暗号化されたメッセージの長さはＭＳＲＣメッセージと同じである。
ＨＳＲＣ：平文（ソース）の１２８ビット完全性チェック結果
【００７８】
長期鍵
ユーザ装置は、秘密を受け入れ、暗号計算を安全に実行することができる耐タンパエレメント（ＴＲＥ）を組み込むと仮定される。
ＴＲＥのための長期鍵は次のものである：
・ＣＥＲＴ．ＰＮ．ＥＣＤＳＡ：＝ＳＩＧＮ（ＳＫ．ＣＩ．ＥＣＤＳＡ）［ＰＫ．ＰＮ．ＥＣＤＳＡ］。ＣＩにより署名されたＴＲＥの部品番号証明書
・ＣＥＲＴ．ＴＲＥ．ＥＣＤＳＡ：＝ＳＩＧＮ（ＳＫ．ＰＮ．ＥＣＤＳＡ）［ＰＫ．ＴＲＥ．ＥＣＤＳＡ］。ＰＮ私有鍵ＳＫ．ＰＮ．ＥＣＤＳＡにより署名されたＴＲＥの証明書
・ＳＫ．ＴＲＥ．ＥＣＤＳＡ：＝ＴＲＥの静的私有鍵
・ＣＥＲＴ．ＣＩ．ＥＣＤＳＡ：＝発行者ルート証明書
ＩＤＳのための長期鍵は次のものである：
・ＣＥＲＴ．ＩＤＳ．ＥＣＫＡ：＝ＳＩＧＮ（ＳＫ．ＣＩ．ＥＣＤＳＡ）［ＰＫ．ＩＤＳ．ＥＣＫＡ］
・ＳＫ．ＩＤＳ．ＥＣＫＡ：＝ＨＳＭ１にホストされた鍵共有のためのＩＤＳの静的私有鍵
・ＣＥＲＴ．ＣＩ．ＥＣＤＳＡ：＝発行者ルート証明書
【００７９】
ＴＲＥクレデンシャル生成
ＶＥＲＩＦＹ（ＣＥＲＴ．ＣＩ．ＥＣＤＳＡ）［ＣＥＲＴ．ＩＤＳ．ＥＣＫＡ］
ＫＳ１３＝ＤＥＲＩＶＥ（ＳＫ．ＴＲＥ．ＥＣＤＨＥ）［ＣＥＲＴ．ＩＤＳ．ＥＣＫＡ］
Ｍ１，Ｈ１＝ＥＮＣＲＹＰＴ（ＫＳ１３）［ＣＥＲＴ．ＴＲＥ．ＥＣＤＳＡ］
｛ＳＫ．ＴＲＥ．ＥＣＤＨＥ，ＰＫ．ＴＲＥ．ＥＣＤＨＥ｝＝ＥＣＤＨＥ（）
ＡＴＫ．ＴＲＥ．ＥＣＤＨＥ＝ＳＩＧＮ（ＳＫ．ＴＲＥ．ＥＣＤＳＡ）［ＰＫ．ＴＲＥ．ＥＣＤＨＥ，ＩＳＳＮ，ＵＵＩＤＵＥ］
ＣＥＲＴ．ＰＮ．ＥＣＤＳＡ，ＡＴＫ．ＴＲＥ．ＥＣＤＨＥ，Ｍ１，Ｈ１はＴＲＥクレデンシャルであり、ＩＳＳＮはブールである。
【００８０】
ＴＲＥクレデンシャル検証
ＫＳ１３＝ＤＥＲＩＶＥ（ＳＫ．ＩＤＳ．ＥＣＫＡ）［ＡＴＫ．ＰＢＬ．ＥＣＤＨＥ］
ＣＥＲＴ．ＰＢＬ．ＥＣＤＳＡ＝ＤＥＣＲＹＰＴ（ＫＳ１３）［Ｍ１］
ＶＥＲＩＦＹ（ＣＥＲＴ．ＣＩ．ＥＣＤＳＡ）［ＣＥＲＴ．ＰＮ．ＥＣＤＳＡ］
ＶＥＲＩＦＹ（ＣＥＲＴ．ＰＮ．ＥＣＤＳＡ）［ＣＥＲＴ．ＴＲＥ．ＥＣＤＳＡ］
ＶＥＲＩＦＹ（ＣＥＲＴ．ＴＲＥ．ＥＣＤＳＡ）［ＡＴＫ．ＴＲＥ．ＥＣＤＨＥ］
【００８１】
ＭＮＯによるＫｉ計算
｛ＳＫ．ＭＮＯ．ＥＣＤＨＥ，ＰＫ．ＭＮＯ．ＥＣＤＨＥ｝＝ＥＣＤＨＥ（）
Ｋｉ＝ＤＥＲＩＶＥ（ＳＫ．ＭＮＯ．ＥＣＤＨＥ）［ＡＴＫ．ＴＲＥ．ＥＣＤＨＥ］
【００８２】
ＴＲＥによるＫｉ計算
Ｋｉ＝ＤＥＲＩＶＥ（ＳＫ．ＴＲＥ．ＥＣＤＨＥ）［ＰＫ．ＭＮＯ．ＥＣＤＨＥ］
【００８３】
図４の段階Ｇにおいて、サービスプロバイダ又はユーザ装置ＯＥＭメーカー（ＳＰ／ＯＥＭ）はＵＵＩＤＵＥを生成する、又はユーザ装置からＵＵＩＤＵＥを取得する。
【００８４】
有利には、ＵＵＩＤＵＥはいくつかの数学的性質を与える具体的な式に従ってユーザ装置によって生成することができる。例えば次の式を使用することができる：
ＵＵＩＤＵＥ＝ＡＥＳ１２８［ＫＴＲＥＳＩ］（Ｒａｎｄ｜ＣＡＴＶ｜ＳＮ）
ここで
Ｒａｎｄ：６２ビットランダム値である
ＣＡＴＶ：ＳＮの解読の成否をチェックするための１６ビット秘密定数パターンである
ＳＮ：耐タンパエレメントのシリアル番号
ＫＴＲＥＳＩ：耐タンパエレメントによって管理される秘密鍵
【００８５】
有利には、ＳＰ／ＯＥＭは証明機関／発行者（ＣＩ）の証明書をＣＥＲＴ．ＩＤＳ．ＥＣＫＡとして取得し、ＣＥＲＴ．ＩＤＳ．ＥＣＫＡとＵＵＩＤＵＥの両方を耐タンパエレメントに注入することができる。ＳＰ／ＯＥＭはユーザ装置からＴＲＥクレデンシャルを取得することができる。好ましくは、ＳＰ／ＯＥＭは移動体オペレータ（ＭＮＯ）との商業協定によりクレデンシャルを転送する。
【００８６】
図４の段階Ｖにおいて、移動体オペレータは検証のためにＴＲＥクレデンシャルをＩＤＳに転送することができる。ＩＤＳはＡＴＫ．ＴＲＥ．ＥＣＤＨＥに連署し、これをＭＮＯに返送する。ＭＮＯはＴＲＥが本物であるという証拠を入手し、
−  ＰＫ．ＴＲＥ．ＥＣＤＨＥ
−  ＵＵＩＤＵＥ
−  ＩＳＳＮ＝ＴＲＵＥ  ｉｆ  ＳＮ’＝ＳＮ及びＲａｎｄ’｜ＣＡＴＶ｜ＳＮ’＝ＡＥＳ１２８−１［ＫＴＲＥＳＩ］（ＵＵＩＤＵＥ）
ＩＳＳＮをチェックすることによって、ＭＮＯは、不正行為者がデータ交換を監視することによりＵＵＩＤＵＥを取得する可能性がある「レーシング攻撃」を防ぐために、ＵＵＩＤＵＥがＴＲＥと関連していることを評価し、これを別のＵＥの別のＴＲＥで使用する。
【００８７】
ＭＮＯは鍵ペアを
｛ＳＫ．ＭＮＯ．ＥＣＤＨＥ，ＰＫ．ＭＮＯ．ＥＣＤＨＥ｝＝ＥＣＤＨＥ（）
として生成する。
ＭＮＯはＩＭＳＩを生成し、Ｋｉを計算する。
Ｋｉ＝ＤＥＲＩＶＥ（ＳＫ．ＭＮＯ．ＥＣＤＨＥ）［ＡＴＫ．ＴＲＥ．ＥＣＤＨＥ］
ＭＮＯはＤ−ＨＬＲに
−  ＰＫ．ＭＮＯ．ＥＣＤＨＥ
−  ＩＭＳＩ
−  ＵＵＩＤＵＥ
を転送する。
【００８８】
ＭＮＯはＩＭＳＩ及びＫｉをそのＨＬＲ／ＨＳＳ（ホームロケーションレジスタ／ホーム加入者サーバとしても知られている）に転送する。
【００８９】
図４の段階Ａにおいて、ＴＲＥは、例えば図１に記載したようにそのＵＵＩＤＵＥをサーバ（Ｄ−ＨＬＲ）に伝達する。次にＴＲＥはＩＭＳＩ及びＰＫ．ＭＮＯ．ＥＣＤＨＥを入手する。ＴＲＥはＫｉを計算し、ＭＮＯのＨＬＲ／ＨＳＳに対して通常の３ＧＰＰ認証を実行する。
【００９０】
移動体オペレータは、耐タンパエレメントのシードをチェックすることによって耐タンパエレメントの真偽を検証できることに留意されたい。例えばシードは、耐タンパエレメントに予め割り当てられた非対称ペアに属する公開鍵であってよい。また、ＴＲＥの認証は、ＵＥが本物のＴＲＥにしか復号化できないＭＮＯクレデンシャルを使用することによって３ＧＰＰネットワークに接続できる場合、間接的に行うことができる。
【００９１】
図２は、本発明のある実施例によるユーザ装置２０のアーキテクチャを模式的に示している。
【００９２】
ユーザ装置２０はプロセッサ７０と不揮発性メモリ７２とを備える。ユーザ装置２０はコマンド／応答ペアによって遠隔サーバと通信するように構成される。
【００９３】
ユーザ装置２０は、プロセッサ７０により実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを生成及び送信して１つのコマンドをサーバに伝送するように適合されたソフトウェア通信エージェント７１を備える。ソフトウェア通信エージェント７１は、接続要求フレームのＩＭＳＩフィールドにコマンドを含むように適合される。ソフトウェア通信エージェント７１はまた、プロセッサ７０により実行され、接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された上記コマンドに対応する応答を受信するように適合される。
【００９４】
図２の実施例では、ユーザ装置は、独自のプロセッサ１７と、揮発性メモリ１８と、不揮発性メモリ１６とを備えた耐タンパエレメント１０を組み込む。不揮発性メモリ１６は、長期鍵Ｋｉを計算するのに必要なＵＵＩＤＵＥ１４とシード２４とを格納している。不揮発性メモリ１６は、プロセッサ１７により実行され、ＭＳＢについて（（ＵＨ−ＰＨＬｎ）*１０００００）／（ＰＨＨｎ−ＰＨＬｎ）及びＬＳＢについて（（ＵＨ−ＰＬＬｎ）*１０００００）／（ＰＬＨｎ−ＰＬＬｎ）に等しいプローブ値Ｈを生成するように適合されたソフトウェアプローブエージェント３４を備える。
【００９５】
また、ＵＥは、ベースバンドからＴＲＥを使用することなくＵＵＩＤＵＥの送信及びＭＮＯクレデンシャル（ＩＭＳＩ及びＰＫ．ＭＮＯ．ＥＣＤＨＥ）の取得を実行することができる。その結果、ＵＥベースバンドはＩＭＳＩ及びＰＫ．ＭＮＯ．ＥＣＤＨＥをＤ−ＨＬＲから取得した後、これを３ＧＰＰ鍵導出に従って導出された接続クレデンシャルを計算するＴＲＥに転送することができる。
【００９６】
図３は、本発明のある実施例によるサーバ３０のアーキテクチャを模式的に示している。
【００９７】
サーバ３０は、プロセッサ８０と、不揮発性メモリ８２と、格納領域ＤＢとを備える。不揮発性メモリ８２は、プロセッサ８０により実行され、ＥＴＳＩ  ＴＳ  １２４．００８により定義される接続要求フレームを受信して１つのコマンドをユーザ装置２０から伝送し、受信した接続要求フレームのＩＭＳＩフィールドからコマンドを抽出するように構成されたソフトウェアプロビジョニングエージェント８１を格納する。プロビジョニングエージェント８１は、プロセッサ８０により実行され、接続要求フレームに応答して、ＥＴＳＩ  ＴＳ  １２４．００８により定義される認証要求フレームの認証パラメータＲＡＮＤフィールド又は認証パラメータＡＵＴＮフィールドで伝送された受信したコマンドに対応する応答を生成及び送信するように適合される。
【００９８】
格納領域ＤＢは、トランザクション識別子２４と、ＩＭＳＩ２６と、鍵２８とを含むある範囲のトリプレットを含む。不揮発性メモリ８２は、プロセッサ８０により実行され、その範囲のトランザクション識別子と一致するターゲット識別子１４を探し出すように構成されたソフトウェア選択エージェント８３を格納する。好ましくは、格納領域ＤＢはデータベースとして実装することができる。
【００９９】
不揮発性メモリ８２は、プロセッサ８０により実行され、（図１で定義されたように）ＰＨＨｎとＰＨＬｎの両方をユーザ装置２０に送信し、ＰＨＬｎ＋（Ｈ*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＬｎ+１を生成し、ＰＨＬｎ＋（（Ｈ＋１）*（ＰＨＨｎ−ＰＨＬｎ）／１０００００）に等しい更新されたＰＨＨｎ+１を生成するように構成されたソフトウェア選択エージェント８４を格納する。
【０１００】
本発明は、一群のユーザ装置のプロビジョニングを管理するのによく適している。
【０１０１】
本発明は、ユーザ装置（又はＴＲＥ）にテレコムクレデンシャル（ＩＭＳＩ／Ｋｉ）をプロビジョニングするのによく適している。本発明は特に、参照により本明細書に含まれる出願ＷＯ２０１６／１６５９００  Ａ１に記載される一次ブートローダを備えたシステムに適用される。
【０１０２】
本発明は上記の実施形態又は実施例に限定されない。特に、例えばコマンド識別子は異なる値を有する可能性がある。
【０１０３】
本発明の利点は、３ＧＰＰネットワークを使用することにより、同じ３ＧＰＰネットワークとのレガシー接続を実行するために、必須のクレデンシャルの安全なプロビジョニングを可能にすることである。本発明は、３ＧＰＰクレデンシャルをプロビジョニングするためのデータチャネルにアクセスするために３ＧＰＰクレデンシャルを必要とし、上記データチャネルをブートストラップするための初期の３ＧＰＰクレデンシャルがない場合の無限ループから抜け出すことを可能にする。
【０１０４】
本発明の利点は、デバイスの製造時に、さらにデバイスの現場への分布後も知られていないローカル３ＧＰＰ対応オペレータの選択を可能にすることである。
【図１】
0006803481.tif 000002
【図２】
0006803481.tif 000003
【図３】
0006803481.tif 000004
【図４】
0006803481.tif 000005