(57)【要約】ホストデバイス上のSIMを更新するための方法であって、当該ホストデバイス上のエージェントにより実行され、事前に共有された鍵を導出するステップであって、当該ホストデバイスの通信モジュールを介して当該SIMのSIM識別子を要求するステップと、当該通信モジュールを介して当該SIMから当該SIM識別子を受信して、当該SIM識別子からエージェント識別子を導出するステップと、当該エージェント識別子及び当該SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、当該ネットワークを介して、当該SIM更新サーバからランダムな値を受信するステップと、SIM認証手順を開始するために当該通信モジュールを介して当該SIMに前記ランダムな値を与えて、その応答として当該通信モジュールを介して当該SIMから認証応答を受信するステップと、当該認証応答から当該事前に共有された鍵を導出するステップとを含むステップと、当該ネットワークを介して当該SIM更新サーバに更新要求メッセージを送信するステップであって、当該更新要求メッセージは、当該エージェント識別子を含み、当該事前に共有された鍵を使用して送信前に暗号化されるステップと、当該ネットワークを介して当該SIM更新サーバから更新応答メッセージを受信するステップであって、当該更新応答メッセージは、更新データを含み、当該事前に共有された鍵で暗号化されるステップと、導き出された当該事前に共有された鍵を用いて当該更新応答メッセージを復号化した後に、当該SIMを更新するための実行のために当該SIMに中継するために当該通信モジュールに当該更新データを送信するステップとを含む。【選択図】図２
2021523651.tif 000002
【特許請求の範囲】
【請求項１】
ホストデバイス上のSIMを更新する方法であって、前記ホストデバイス上のエージェントにより実行され、
事前に共有された鍵を導出するステップであって、
前記ホストデバイスの通信モジュールを介して前記SIMのSIM識別子を要求するステップと、
前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、
前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、
前記ネットワークを介して、前記SIM更新サーバからランダムな値を受信するステップと、
SIM認証手順を開始するために前記通信モジュールを介して前記SIMに前記ランダムな値を与えて、その応答として前記通信モジュールを介して前記SIMから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと
を含むステップと、
前記ネットワークを介して前記SIM更新サーバに更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信前に暗号化されるステップと、
前記ネットワークを介して前記SIM更新サーバから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと、
導き出された前記事前に共有された鍵を用いて前記更新応答メッセージを復号化して、前記SIMを更新するための実行のために前記SIMに中継するために前記通信モジュールに前記更新データを送信するステップと
を含む。
【請求項２】
請求項１記載の方法であって、
前記認証応答は、署名済み応答及び暗号鍵を含む。
【請求項３】
請求項２記載の方法であって、
前記認証応答からの前記事前に共有された鍵の導出は、前記署名済み応答及び前記暗号鍵の少なくとも一方を使用して前記事前に共有された鍵を導出することを含む。
【請求項４】
請求項３記載の方法であって、
前記認証応答からの前記事前に共有された鍵の導出は、前記ランダムな値を使用して前記事前に共有された鍵を導出することを含む。
【請求項５】
請求項４記載の方法であって、
前記認証応答からの前記事前に共有された鍵の導出は、前記暗号鍵とそれ自身を連結して連結結果を生成し、前記連結結果と前記ランダムな値にビット単位のXOR演算を適用して前記事前に共有された鍵を導出することを含む。
【請求項６】
請求項１から５のいずれかに記載の方法であって、
前記更新データは、前記SIMによって記憶された対称暗号鍵で暗号化されている。
【請求項７】
請求項１から６のいずれかに記載の方法であって、
前記更新要求メッセージは、前記SIM識別子を含む。
【請求項８】
請求項１から７のいずれかに記載の方法であって、
前記通信モジュールに前記更新データを送信することに応答して、
前記通信モジュールを介して前記SIMから実行結果を受信するステップと、
前記ネットワークを介して前記SIM更新サーバに更なる更新要求メッセージを送信し、前記更新要求メッセージは、前記実行結果を伝え、前記事前に共有された鍵を使用して送信の前に暗号化されるステップと
をさらに含む。
【請求項９】
請求項１から８のいずれかに記載の方法であって、
ATコマンドが、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求すること、
前記通信モジュールに前記ランダムな値を与えてSIM認証手順を開始すること、及び
前記更新データを前記通信モジュールに送信すること
のうちの少なくともいずれかに用いられる。
【請求項１０】
請求項１から８のいずれかに記載の方法であって、
前記通信モジュールによって提供されるアプリケーション・プログラミング・インターフェイスが、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求すること、
前記通信モジュールに前記ランダムな値を与えてSIM認証手順を開始すること、及び
前記更新データを前記通信モジュールに送信すること
のうちの少なくともいずれかに用いられる。
【請求項１１】
請求項１から１０のいずれかに記載の方法であって、
前記SIM識別子からのエージェント識別子の導出は、前記SIM識別子に接頭辞を付加することを含む。
【請求項１２】
請求項１から１１のいずれかに記載の方法であって、
前記事前に共有された鍵の導出は、
(i)前記ホストデバイス上のユーザ入力を検出すること、
(ii)前記ネットワークを介して前記SIM更新サーバからセッション開始メッセージを受信すること、及び
(iii)所定の時間間隔の満了を検出すること
のうちの１つに基づいてトリガされる。
【請求項１３】
請求項１から１２のいずれかに記載の方法であって、
前記SIM識別子は、
(i)前記SIMに関連づけられたIMSI、
(ii)前記SIMに関連づけられたICCID、及び
(iii)前記SIMに関連づけられたMSISDN
のうちの１つである。
【請求項１４】
請求項１から１３のいずれかに記載の方法であって、
前記更新要求メッセージは、前記事前に共有された鍵から導出された第１のセッションキーにより送信前に暗号化され、
前記更新応答メッセージは、前記事前に共有された鍵から導出された第２のセッションキーにより復号化される。
【請求項１５】
プロセッサを有するデバイスであって、前記プロセッサは、前記デバイスに関連づけられたSIMに結合された通信モジュールに結合され、前記プロセッサは、
前記ホストデバイスの通信モジュールを介して前記SIMのSIM識別子を要求するステップと、
前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、
前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、
前記ネットワークを介して、前記SIM更新サーバからランダムな値を受信するステップと、
SIM認証手順を開始するために前記通信モジュールを介して前記SIMに前記ランダムな値を与えて、その応答として前記通信モジュールを介して前記SIMから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと、
前記ネットワークを介して前記SIM更新サーバに更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信前に暗号化されるステップと、
前記ネットワークを介して前記SIM更新サーバから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと、
導き出された前記事前に共有された鍵を用いて前記更新応答メッセージを復号化して、前記SIMを更新するための実行のために前記SIMに中継するために前記通信モジュールに前記更新データを送信するステップと
を含む。
【請求項１６】
ホストデバイス上のSIMを更新するためのコンピュータプログラム製品であって、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、前記コードは、プロセッサ上で実行されたときに請求項１から１４のいずれかに記載の方法を実行するように構成されている。
【請求項１７】
ホストデバイス上のSIMを更新するための方法であって、SIM更新サーバにより実行され、
事前に共有された鍵を導出するステップであって、
ホストデバイス上のエージェントから、ネットワークを介して、前記ホストデバイスから送信されたエージェント識別子及び前記SIMのSIM識別子を受信するステップと、
ランダムな値を生成するステップと、
前記ランダムな値及び前記SIMの前記SIM識別子を認証エンティティに与えて、その応答として前記認証エンティティから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと
を含むステップと、
前記エージェント識別子と関連づけて前記事前に共有された鍵をメモリに記憶するステップと、
前記ネットワークを介して、前記エージェントに前記ランダムな値を送信するステップと、
前記ネットワークを介して、前記ホストデバイス上の前記エージェントから更新要求メッセージを受信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信の前に暗号化されるステップと、
前記事前に共有された鍵を用いて前記更新要求メッセージを復号化した後に、前記ネットワークを介して、前記ホストデバイスに更新応答メッセージを送信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと
を含む。
【請求項１８】
請求項１７記載の方法であって、
前記更新要求メッセージは、前記事前に共有された鍵から導出された第１のセッションキーにより復号化され、
前記更新応答メッセージは、前記事前に共有された鍵から導出された第２のセッションキーにより暗号化される。
【請求項１９】
ホストデバイス上のSIMを更新するためのSIM更新サーバであって、SIM更新サーバにより実行され、
ホストデバイス上のエージェントから、ネットワークを介して、前記ホストデバイスから送信されたエージェント識別子を受信し、
ランダムな値を生成し、
前記ランダムな値及び前記SIMのSIM識別子を認証エンティティに与えて、その応答として前記認証エンティティから認証応答を受信し、
前記認証応答から前記事前に共有された鍵を導出し、
前記エージェント識別子と関連づけて前記事前に共有された鍵を前記SIM更新サーバに結合されたメモリに記憶し、
前記ネットワークを介して、前記エージェントに前記ランダムな値を送信し、
前記ネットワークを介して、前記ホストデバイス上の前記エージェントから更新要求メッセージを受信し、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信の前に暗号化され、
前記事前に共有された鍵を用いて前記更新要求メッセージを復号化した後に、前記ネットワークを介して、前記ホストデバイスに更新応答メッセージを送信し、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化される
ように構成された少なくとも１つのプロセッサを備える。
【請求項２０】
ホストデバイス上のSIMを更新するためのコンピュータプログラム製品であって、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、前記コードは、プロセッサ上で実行されたときに請求項１７又は１８に記載の方法を実行するように構成されている。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、ホストデバイス上の加入者識別モジュール（SIM）を更新することに関する。
【背景技術】
【０００２】
移動体通信事業者は、修正又は新たなアプリケーションをデプロイするために現場のSIMカードを更新するという難問にしばしば直面している。この問題のための現在の標準はOTA（Over-The-Air）と呼ばれ、通常、サブスクリプションプランがSMS（Short Message Service）をサポートしていることを必要とする。4G技術の登場により、HTTP OTAという、OTAの新しい形が現れた。これは、たとえば「Global Platform Card Specification Version2,2 Amendment B Version 1.1」、「Smart Cards; Secured packet structure for UICC based applications」と題するETSI TS 102 225、及び「Smart Cards; Remote APDU structure for UICC based applications」と題するETSI TS 102 226に記述されている。
【０００３】
HTTP OTAは、前身の技術であるSMS OTAを使用する代わりに、IPネットワークを介してSIMカードに遠隔管理コマンドを伝えることを可能にする。
【０００４】
4G技術の登場と並んで、loT（Internet-of-Things）と呼ばれる自律的なコネクテッドデバイスが現れてきた。最近では、数多くのモバイルloTデバイスがSIM対応の通信モジュール（例としてHSDPAモデム）を使用してネットワーク化されている。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
発明者は、SIM対応の通信モジュールの多くの製造業者が、通信モジュールにおけるBIP（Bearer Independent Protocol）の実装を通じたHTTP OTAのために必要なサポートを行わないことを選択したことを見出した。これは、通信モジュールの開発及びテストのためのコスト及び労力の増加を含むさまざまな理由によるものである。一方、BIPを通じたHTTP OTAのサポートは、新しいUICCカードにおいて、SIMベンダーによりかなり急速に行われた。
【０００６】
現在、通信モジュール内のBIPサポートは、いくつかのハイエンドの電話とMFF2フォームファクターのタイプeUICCのSIMカードをホストすることができる通信モジュールでのみ利用可能である。その結果、取り外し可能なSIM（ミニSIM、マイクロSIM及びナノSIM）と接続されるほとんどの通信モジュールは、HTTP OTAをサポートしていない。さらに、IoTプロジェクトの多くのデプロイメントでは、唯一利用可能な通信ベアラはIPネットワークである。
【０００７】
HTTP OTAサポートのこの欠如に対応するために、本開示の実施形態では、HTTP部分を引き継ぎ、セキュアな通信チャネルを確立するためのセキュアエレメントとしてホストされたSIM（UICC、eUICC、iUICCまたはSoftSIM）を使用することにより、レガシーの通信モジュール内に見出されるSIMカードに対してOTAコマンドをセキュアにチャネルするのを助けることのできるソフトウェアエージェントを実装する。
【課題を解決するための手段】
【０００８】
本開示の一態様によれば、ネットワークエンティティと通信する際に使用するための共有鍵を導出する方法が提供される。前記方法は、ホストデバイス上のエージェントによって実行され、前記ホストデバイスの通信モジュールからの前記ホストデバイス上の加入者識別モジュール（SIM）のSIM識別子を要求するステップと、前記通信モジュールから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、前記ネットワークエンティティにネットワーク上で前記エージェント識別子及び前記SIM識別子を送信するステップと、前記ネットワークを介して、前記ネットワークエンティティからランダム値を受信するステップと、前記通信モジュールに前記ランダム値を与えてSIM認証手順を開始し、その返答として、前記通信モジュールから認証応答を受信するステップと、前記認証応答から前記共有鍵を導出するステップとを含む。
【０００９】
本開示の別の態様によれば、ホストデバイス上の加入者識別モジュール（SIM）を更新する方法が提供される。前記方法は、前記ホストデバイス上のエージェントによって実行され、事前共有鍵を導出するステップであって、前記ホストデバイスの通信モジュールを介して延期SIMのSIM識別子を要求するステップと、前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、前記ネットワークを介して、前記SIM更新サーバからランダム値を受信するステップと、前記通信モジュールを介して、前記SIMに前記ランダム値を与えてSIM認証手順を開始し、その返答として、前記通信モジュールを介して、前記SIMから認証応答を受信するステップと、前記認証応答から前記事前共有鍵を導出するステップとを含むステップと、前記SIM更新サーバに前記ネットワークを介して更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、送信前に前記事前共有鍵を用いて暗号化されているステップと、前記ネットワークを介して、前記SIM更新サーバから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前共有鍵を用いて暗号化されているステップと、導出された前記事前共有鍵を用いた前記更新応答メッセージの復号化に続いて、前記SIMを更新するための実行のために前記SIMに中継するために、前記通信モジュールに前記更新データを送信するステップとを含む。
【００１０】
前記認証応答は、署名付き応答及び暗号鍵を含んでもよい。
【００１１】
前記認証応答からの前記事前共有鍵の導出は、前記署名付き応答及び前記暗号鍵の少なくとも一方を用いて前記事前共有鍵を導出することを含んでもよい。
【００１２】
前記認証応答からの前記事前共有鍵の導出は、ランダム値を用いて前記事前共有鍵を導出することを含んでもよい。
【００１３】
前記認証応答からの前記事前共有鍵の導出は、前記暗号鍵とそれ自身を連結して連結結果を生成し、前記連結結果及び前記ランダム値に対してビット単位のXOR演算を適用して前記事前共有鍵を導出することを含んでもよい。
【００１４】
前記更新データは、前記SIMに記憶された対称暗号鍵で暗号化されていてもよい。
【００１５】
前記更新要求メッセージは、前記SIM識別子を含んでよい。
【００１６】
前記方法は、前記通信モジュールに前記更新データを送信することに応答して、前記通信モジュールを介して、前記SIMから実行結果を受信するステップと、前記ネットワークを介して、前記SIM更新サーバに更なる更新要求メッセージを送信するステップとを含んでもよく、前記更新要求メッセージは、実行結果を伝え、前記事前共有鍵を用いて送信する前に暗号化される。
【００１７】
AT（Attention）コマンドを、以下のうちの少なくともいずれかのために使用することができる：前記ホストデバイスの通信モジュールから前記SIMのSIM識別子を要求すること、前記通信モジュールにランダム値を与えてSIM認証手順を開始すること、及び、前記通信モジュールに前記更新データを送信すること。
【００１８】
前記通信モジュールによって提供されるアプリケーションプログラミングインターフェイスは、以下のうちの少なくともいずれかのために使用することができる：前記ホストデバイスの通信モジュールから前記SIMのSIM識別子を要求すること、前記通信モジュールに前記ランダム値を与えてSIM認証手順を開始すること、及び、前記通信モジュールに前記更新データを送信すること。
【００１９】
前記SIM識別子からのエージェント識別子の導出は、前記SIM識別子に接頭辞を付加することを含んでもよい。
【００２０】
事前共有鍵の導出は、以下のうちのいずれかに基づいてトリガされてもよい：（i）前記ホストデバイス上のユーザ入力を検出すること、（ii）前記ネットワークを介して、前記SIM更新サーバからセッション開始メッセージを受信すること、及び（iii）所定の時間間隔の満了を検出すること。
【００２１】
前記SIM識別子は、以下のいずれかとすることができる：（i）前記SIMに関連づけられたIMSI、（ii）前記SIMに関連づけられたICCID、及び（iii）前記SIMに関連づけられたMSISDN。
【００２２】
本開示の別の態様によれば、コンピュータプログラム製品が提供され、前記コンピュータプログラム製品は、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、ホストデバイスのプロセッサ上で実行されたときに本明細書に記載された方法を実行するように構成されている。
【００２３】
本開示の別の態様によれば、プロセッサを有するデバイスが提供される。前記プロセッサは、前記デバイスに関連づけられたSIMに結合された通信モジュールに結合され、前記通信モジュールを介して前記SIMのSIM識別子を要求し、前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出し、前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信し、前記ネットワークを介して前記SIM更新サーバからランダム値を受信し、前記通信モジュールを介して前記SIMにランダム値を与えてSIM認証手順を開始し、その返答として、前記通信モジュールを介して前記SIMから認証応答を受信し、前記認証応答から事前共有鍵を導出し、前記ネットワークを介して前記SIM更新サーバに更新要求メッセージを送信し、前記ネットワークを介して前記SIM更新サーバから更新応答メッセージを受信し、導出された前記事前共有鍵を用いた前記更新応答メッセージの復号化に続いて、前記SIMを更新するために実行するために前記SIMに中継するための前記通信モジュールに前記データを送信するように構成される。前記更新要求メッセージは、前記エージェント識別子を含み、前記事前共有鍵を用いて送信する前に暗号化される。前記更新応答メッセージは、更新データを含み、前記事前共有鍵で暗号化される。
【００２４】
本開示の別の態様によれば、プロセッサを有するデバイスが提供される。前記プロセッサは、前記デバイスに関連づけられたSIM（subscriber identity module）に結合された通信モジュールに結合され、前記通信モジュールから前記SIMのSIM識別子を要求し、前記通信モジュールから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出し、ネットワークエンティティにネットワークを介して前記エージェント識別子及び前記SIM識別子を送信し、前記ネットワークを介して前記ネットワークエンティティからランダム値を受信し、前記通信モジュールにランダム値を与えてSIM認証手順を開始し、その返答として、前記通信モジュールから認証応答を受信し、前記認証応答から共有鍵を導出するように構成される。
【００２５】
本開示の別の態様によれば、ホストデバイス上のSIMを更新する方法が提供される。前記方法は、SIM更新サーバによって実行され、事前共有鍵を導出するステップであって、ホストデバイス上のエージェントから、ネットワークを介して前記ホストデバイスから送信された、エージェント識別子及び前記SIMのSIM識別子を受信するステップと、ランダム値を生成するステップと、前記ランダム値及び前記SIMの前記SIM識別子を認証エンティティに与えて、その返答として、前記認証エンティティから認証応答を受信するステップと、前記認証応答から前記事前共有鍵を導出するステップとを含むステップと、前記エージェント識別子と関連づけて前記事前共有鍵をメモリに格納するステップと、前記ネットワークを介して前記エージェントに前記ランダム値を送信するステップと、前記ネットワークを介して、前記ホストデバイス上の前記エージェントから更新要求メッセージを受信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前共有鍵を用いて送信前に暗号化されるステップと、前記事前共有鍵を用いた前記更新要求メッセージの復号化に続いて、前記ネットワークを介して、前記ホストデバイスに更新応答メッセージを送信するステップであって、前記更新応答メッセージは更新データを含み、前記事前共有鍵で暗号化されるステップとを含む。
【００２６】
本開示の別の態様によれば、ホストデバイス上のSIM（subscriber identity module）を更新するためのコンピュータプログラム製品が提供される。前記コンピュータプログラム製品は、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、ネットワークエンティティ（SIM更新サーバ）のプロセッサ上で実行されたときに本明細書に記載された方法を実行するように構成される。
【００２７】
本開示の別の開示によれば、ホストデバイス上のSIMを更新するためのSIM更新サーバが提供される。前記SIM更新サーバは、ホストデバイス上のエージェントから、ネットワークを介して、前記ホストデバイスから送信されたエージェント識別子を受信し、ランダム値を生成し、前記ランダム値及び前記SIMのSIM識別子を認証エンティティに与え、その返答として、前記認証エンティティから認証応答を受信し、前記認証応答から事前共有鍵を導出し、前記エージェント識別子に関連づけて前記事前共有鍵を前記SIM更新サーバに結合されたメモリに格納し、前記ネットワークを介して、前記ホストデバイス上の前記エージェントから更新要求メッセージを受信し、前記事前共有鍵を用いた前記更新要求メッセージの復号化に続いて、前記ネットワークを介して、前記ホストデバイスに更新応答メッセージを送信するように構成された少なくとも１つのプロセッサを備える。前記更新要求メッセージは、前記エージェント識別子を含み、前記事前共有鍵を用いて送信前に暗号化される。前記更新応答メッセージは、更新データを含み、前記事前共有鍵を用いて暗号化される。
【００２８】
前記SIM更新サーバは、前記ホストデバイス上の前記SIMを更新するための複数のプロセッサを含んでもよく、前記複数のプロセッサは、当業者に知られた方式で、（たとえばクラウドアーキテクチャにおけるように）互いに通信している複数の（たとえばサーバのような）結合要素上に分散されていてもよい。
【００２９】
前記認証応答は、署名付き応答及び暗号鍵を含んでもよい。
【００３０】
前記プロセッサは、前記署名された応答及び前記暗号鍵の少なくとも一方を用いて、前記認証応答から前記事前共有鍵を導出するように構成されていてもよい。
【００３１】
前記プロセッサは、前記ランダム値を追加的に用いて、前記事前共有鍵を導出するように構成されていてもよい。
【００３２】
前記プロセッサは、前記暗号鍵とそれ自身を連結して連結結果を生成し、前記連結結果及び前記ランダム値に対してビット単位のXOR演算を適用して前記事前共有鍵を導出することにより、前記認証応答から前記事前共有鍵を導出するように構成されていてもよい。
【００３３】
前記更新データは、前記メモリに記憶された対称暗号鍵で暗号化されていてもよい。
【００３４】
前記更新要求メッセージは、前記SIM識別子を含んでもよい。
【００３５】
当業者であれば、上述した方法、デバイス、及びネットワークエンティティを実装するためのプロセッサ制御コードは、たとえば、汎用コンピュータ、モバイルコンピューティング又は通信デバイス上で実行させたり、デジタル信号プロセッサ（DSP）上又は複数のプロセッサにまたがって実行させたりしてもよいことを理解するであろう。前記コードは、ディスク、CD-ROM若しくはDVD-ROM、不揮発性メモリ（たとえばフラッシュ）等のプログラムされたメモリ、又は読み取り専用メモリ（ファームウェア）等の非一過性の物理的データキャリア上で提供されてもよい。本発明の実施形態を実装するためのコード（及び／又はデータ）は、Ｃ言語、アセンブリコード又はハードウェア記述言語等の従来のプログラミング言語における（解釈またはコンパイルされた）ソースコード、オブジェクトコード又は実行可能なコードを含んでもよい。当業者であれば理解するであろうが、そのようなコード及び／又はデータは、互いに通信している複数の結合された構成要素の間で分配されてもよい。
【００３６】
当業者はまた、サーバへの言及がなされている場合、これは1つ又は複数のサーバである可能性があることを理解するだろう。同様に、ストレージ機能又は処理機能の一部又はすべてがクラウドで提供することができ、クラウドは、パブリッククラウド又はプライベートクラウドであることがある。本明細書で使用される「クラウド」とは、たとえば、ネットワーク上の需要に応じて、動的にプロビジョニングを実行し、CPU、メモリ、ストレージ、ネットワーク帯域幅等のコンピューティングリソースを提供可能なシステムを意味する。当業者はまた、サーバソフトウェアが、クライアントソフトウェアを同時に実行している物理的なコンピュータ又はコンピュータシステム上に実装されてもよいことを理解するであろう。
【００３７】
これら及び他の態様は、以下に記載される実施形態から明らかになるであろう。本開示の範囲は、この要約によって限定されることを意図するものではなく、また、記載された欠点のいずれか又はすべてを必ずしも解決する実装に限定されることを意図するものでもない。
【図面の簡単な説明】
【００３８】
【図１】公知のSIM更新手順の処理フローを示す図である。
【図２】本明細書に記載された実施形態に従ってSIMを更新するためのシステムのブロック図である。
【図３】図２のシステムで使用するための移動局のブロック図である。
【図４】図２のシステムで使用するためのSIMのブロック図である。
【図５】事前共有鍵を導出する手順の処理フローを示す図である
【図６】本明細書に記載された実施形態に従ったSIM更新手順の処理フローを示す図である。
【図７】SIM更新手順で送信される更新応答メッセージを説明するための図である。
【発明を実施するための形態】
【００３９】
本明細書では、以下の定義／例が使用される。
・2G  GSM等の第２世代の移動体通信技術
・3G  EDGE等の第3世代の無線移動体通信技術
・4G  第4世代は、LTE等の無線移動体通信技術の第4世代
・APDU  Application protocol data unit。ISO 7816インターフェイスを介してスマートカードと交換できる基本的なコマンド及びレスポンスの組を定義する。
・API  Application protocol data unit。当該インターフェイスに提供される特別な機能を公開する。
・BIP  TS 102 223で定義されるBearer Independent Protocolは、UICC上のカードアプリケーションツールキットアプリケーションが端末とのデータチャネルを確立することを可能にする。
・eUICC  embedded UICC（通常は回路基板にはんだ付けされている埋め込みSIM）
・EDGE  Enhanced Data GSM Environmentは、GSM（Global System for Mobile）の高速版の3G無線通信規格。
・GSM  Global System for Mobile communicationsの略である2G無線通信規格
・GPRS  General packet radio service
・HSDPA  High Speed Downlink Packet Accessは、3G移動通信網通信プロトコルであるHSPA（High Speed Packet Access）の2つのサブプロトコルのうちの1つ
・HTTP OTA  Hypertext Transfer protocol over-the-air。IPサービスを介してSIMカードに管理コマンドを転送するためのプロトコル
・IEEE  電気電子学会
・IMSI  International Mobile Subscriber Identityは、セルラーネットワークのユーザを識別するために使用され、すべてのセルラーネットワークに関連づけられた一意の識別番号であり、一例として、IMSI: xxx yy 1234567890と表される。ここで、
XXX：MCCを表す
YY：MNCを示す
・IP  より長い略語であるTCP/IPの一部
・iUICC  integrated UICC（すなわち、ソフトウェアSIM）
・LTE  Long Term Evolution。4G無線通信規格。
・MCC：Mobile Country Code
・MNC：Mobile Network Code
・MFF2  Machine-to-machine form factor 2は、SIMカードが取ることができる多くの形の1つを定義し、これは埋め込み可能なバージョンのうちで最小のものの１つ。
・OTA  Over-The-Air。これは、SIMに更新を送信する任意の方法をカバーする（たとえば、SMS OTA、HTTP OTA等）。
・SCP80  Secure Channel Protocol 80は、Global Platformによって定義されたSMSを介したOTAの標準規格。
・SCP81  Secure Channel Protocol 81は、Global Platformによって定義されたIPネットワークを介したOTAの標準規格でHTTP OTAとしても知られる。
・SIM  UICC、eUICC、iUICC、SoftSIM等、すべての形の認証トークンのすべてのバリエーションをカバーする。
・SMS  Short Message Service。一般に「テキストメッセージ」とも呼ばれる。
・SMS OTA  Short Message Service over-the-airは、SMSを介してSIMカードに管理コマンドを転送するためのプロトコル。
・TCP/IP  Transmission Control Protocol/Internet Protocolの略で、2台以上のコンピュータを通信可能にする一組のネットワーキングプロトコル。
・UICC（universal integrated circuit card）  GSM及びUMTSネットワークの携帯端末で使用されるスマートカード。
・Wi-Fi  IEEE 802.1 1xで定義された無線ネットワーク規格の商標
【００４０】
標準的なHTTP OTA（図１参照）では、SCP81がSIM及びデバイスレベルで実装されている。これは、ホストデバイス（より具体的には、ホストデバイスの通信モジュール）でのBIPのサポートを必要とする。ホストデバイスにおけるBIPのサポートとは、いくつかの特定のカードアプリケーションツールキットのコマンド及びイベント、すなわち、次のようなものに対応することを意味する：OPEN CHANNEL、CHANNEL STATUS、CLOSE CHANNEL、SEND DATA、RECEIVE DATA、EVENT DATA AVAILABLE。これは、「スマートカード；カードアプリケーションツールキット（CAT）」と題するETSI TS 102 223に記載されている。
【００４１】
図１は、先行技術のHTTP OTAメッセージプロトコルのフローチャート１００である。
【００４２】
典型的なHTTP OTAセッションでは、通信モジュールがOTAサーバからバイナリSMSメッセージを受信することに応答して(ステップ1)、ステップ２-６で、通信モジュールは、指定されたサーバーアドレス(IPアドレスはOPEN CHANNELコマンドで指定される)にTCPチャネルを開く。デバイスは、代わりにSEND DATAコマンド（ステップ７）の形でSIMから受信した上位プロトコルメッセージ(リクエスト)を、TCPチャネルを介してOTAサーバに向けて転送する(ステップ８)。これらの上位レベルのメッセージは、実際にはSIMによってHTTPSパケットに包まれる。OTAサーバはリクエストを処理し、応答メッセージを送り返す（ステップ９）。応答メッセージは、SIMによって実行されるRFM（Remote File Management）又はRAM（Remote Application Management）コマンド（ステップ１０〜１３）を潜在的に含む。代わりにSIMは、通信モジュールに実行結果を送信し、通信モジュールは、OTAサーバが空の応答を送信するまで（ステップ１６）、新しいリクエストの形でOTAサーバに実行結果をリレーする（ステップ１５）。空の応答を処理することに応答して（ステップ１７〜１９）、SIMは、TCPチャネルを閉じるように通信モジュールに指示する（ステップ２０）。その後、通信モジュールは、TCPチャネルを閉じるためにOTAサーバと通信し（ステップ２１〜２２）、TCPチャネルの閉鎖をSIMに通知する（ステップ２３）。
【００４３】
TCPチャネルを介して交換される上位レベルのメッセージは、HTTPパケットに包まれ、それ自体がTLSプロトコルパケットにカプセル化される。ここで使用される特定のTLSプロトコルのバージョンは、TLS事前共有鍵（PSK）と呼ばれるもので、OTAサーバとSIMによって知られている事前共有秘密鍵が通信パケットの暗号化／復号化に使用される。
【００４４】
次に図２を参照すると、これは、本明細書に記載された実施形態に従ってSIMを更新するためのシステム２００のブロック図を示す。システムは、従来のネットワーク要素を有するIPネットワーク１１４を備え、ホストデバイス１０２ａと通信するための（１つだけが図示の目的で示されている）複数の基地局１１４ａを含む。ホストデバイス１０２ａは、ネットワーク１１４にデータを送信し、ネットワーク１１４から情報を受信することができるコンピューティングデバイスである。ホストデバイス１０２ａは、たとえば、ラップトップコンピュータ、タブレット型コンピュータ、または携帯電話（「スマートフォン」と呼ばれることがある）の形をとることができる。図２の例では、ホストデバイス１０２ａは、モバイルデバイス（したがって、本明細書では「モバイルステーション」と呼ばれる）として示されているが、これは単なる例示に過ぎない。
【００４５】
移動局１０２ａの各々は、無線データ通信リンクを介してネットワーク１１４と通信し、関連づけられたSIM１０２ｂを有する。図示された例では、ネットワーク１１４はまた、インターネット１１６に結合されている。
【００４６】
システム２００はまた、SIMを更新するためのSIM更新サーバ１１０（あるいは本明細書で「ネットワークエンティティ」と呼ばれる）を含む。SIM更新サーバ１１０は、SIMにOTA（Over-the-Air）更新を送信するように構成されており、したがって、本明細書ではOTAサーバとも呼ばれる。図示されているように、これは別個の要素として示されているが、実際には、これは既存のネットワークデバイス又はサーバ上で実行される追加のソフトウェアコンポーネントとして実装されてもよい。後に詳述するように、SIM更新サーバ１１０は、プロセッサ１１１及びメモリ１１２を含み、メモリ１１２は、ホストデバイスから更新要求メッセージを受信し、ホストデバイスに更新データを送信するためのコードを記憶する。SIM更新サーバ１１０は、別名としてHSS（Home Subscriber Server）と呼ばれるHLR（Home Location Register）１１８に結合される。HLRの用語は、モバイルネットワーク１１４が２Ｇ又は３Ｇネットワークである場合に典型的に使用され、HSSの用語は、モバイルネットワーク１１４が４G LTEネットワークである場合に典型的に使用される。
【００４７】
HLR/HSS１１８は、ネットワーク１１４の使用を許可されたすべての加入者の情報を記憶し、管理するために使用されるデータベースである。HLRは、各加入者について、加入者のIMSI（International Mobile Subscriber Identity）、サービス加入情報、位置情報、サービス制限等を含む加入者情報を記憶する。HLR/HSS１１８は、認証センター(AuC)１１９を備えるか、またはそれに結合されている。AuC１１９は、各加入者の認証を提供する。AuC１１９は、各加入者について、加入者のSIMの認証のための共有鍵Kiを記憶するデータベースを備える。AuC１１９は、各IMSI(又は他のSIM識別子)にそれぞれ関連づけられた複数の共有鍵を格納してもよい。
【００４８】
図２は、ネットワーク１１４がモバイル（セルラー）通信ネットワークである一例のシステムを示しているが、これは単なる例示である。たとえば、本明細書に記載された方法を用いてOTA更新を実装し、それによってホストデバイスがWiFiネットワーク上のWiFiリンクを介してインターネット又はIPネットワーク１１６に結合されることも実施形態も含まれる。すなわち、本発明の実施形態では、（たとえば、ローミング試行中に）SIM１０２ｂがセルラーネットワーク上で認証できなくても、任意のデータ接続（たとえば、WiFi、LAN等）を介してOTA更新を達成することができる。
【００４９】
図３は、例示的な移動局１０２ａのブロック図である。図３に示された移動局１０２ａの様々な構成要素間の接続は、単なる例示に過ぎない。
【００５０】
図３に示すように、移動局１０２ａは、SIM１０２ｂを備える。当業者は認識するであろうが、本明細書で使用される「SIM」は、SIMカード、いわゆるｅSIM（デバイスに埋め込むことのできるモジュール）、いわゆるソフトSIM若しくはバーチャルSIM（たとえば通信モジュール２０２のようなデバイスのモジュールに記憶することができ、随意にオーバー・ザ・エアーでダウンロード可能なソフトウェアSIM）、又はいわゆるセキュアエレメントを含むことができる。また、本明細書で説明する技術は、SIMカード以外のSIMにも適用可能である。したがって、SIMは、たとえば、UICC（Universal Integrated Circuit Card）、eUICC、iUICCなどに具現化されてもよい。
【００５１】
通信モジュール２０２は、SIM１０２ｂと（以下でより詳細に説明する）エージェント２０４との間の通信のための仲介物として機能する。通信モジュール２０２は、たとえばHSPDAモデム等のモデムである。本明細書に記載される実施形態では、通信モジュール２０２は、BIP（Bearer Independent Protocol）をサポートしない場合があるが、エージェント２０４が、通信モジュールにおけるBIPサポートを必要とせずにHTTP OTAの一種を可能にし、したがって、（BIPをサポートしていない）レガシー通信モジュールの内部のSIMカードがIPネットワーク上でRFM及びRAMメッセージを安全に交換できるようにする。
【００５２】
通信モジュール２０２は、別個のケーシングに収容された別個のユニットであるという点で、移動局１０２ａの外部であってもよいが、（移動局１０２ａから取り外し可能であるかことに加えて）有線又は無線の接続によって移動局１０２ａのプロセッサ２０６に接続されているか接続可能である。たとえば、通信モジュール２０２は、移動局１０２ａに差し込むためのドングルの形をとってもよい。単なる例として、通信モジュールは、Huawei社のUSBスティックMS2131の形をとってもよい。代替として、通信モジュール２０２は、移動局１０２ａの内部、たとえば、移動局１０２ａ内の無線モジュールの形をとってもよい。たとえば、通信モジュール２０２とホストプロセッサ２０６の両方が、移動局１０２ａの同じケーシング内に収容されてもよい。
【００５３】
移動局１０２ａは、さらに、通信モジュール２０２と通信するように構成されたエージェント２０４（更新ハンドラ）を備える。エージェント２０４は、ネットワーク１４を介してOTAサーバ１０と通信するようにさらに構成されている。すなわち、TLSを介したHTTPの処理は、移動局１０２ａ上のエージェント２１４に委譲される。
【００５４】
エージェント２０４の機能は、１又は複数の記憶媒体を含むメモリ（たとえば、メモリ２０８）に記憶され、１又は複数の処理ユニットを含むプロセッサ２０６上での実行の準備がなされたコード（ソフトウェア）に実装することができる。当該コードは、メモリ２０８からフェッチされ、プロセッサ２０６上で実行されたときに、後述する実施形態に沿った動作を実行するように構成されている。ソフトウェアエージェント２０４の実装は、典型的には、移動局１０２ａのオペレーティングシステム（OS）上で実行されるコードで構成されるであろう。OS（たとえば、Windows（商標）、Mac OS（商標）及びLinux（商標））は、プロセッサ２０６上で実行される。エージェント２０４は、たとえば、通信セッションをトリガすることができるコマンドラインツールの形で提供されることができる。あるいは、エージェント２０４の機能の一部又は全部が、専用のハードウェア回路又はFPGAのような構成可能なハードウェア回路に実装されることも排除されない。
【００５５】
一実施形態では、エージェント２０４は、顧客によって彼らのコンピューティングデバイスにダウンロード可能なエージェントアプリケーションの形である。そして、エージェントアプリケーションは、SMS OTAが利用できない場所で、又はSMSのペイロードが（それによって障害のリスクを増大させる）あまりにも多くの連結されたSMSメッセージを必要とする場合に、リモート更新をトリガすることができる。一例のシナリオでは、遠隔地に住むユーザがローカルモバイルネットワークに接続されていないSIMを持っている場合、ユーザは、通信モジュール２０２をコンピューティングデバイスに接続し、エージェントアプリケーション２０４をコンピューティングデバイスにダウンロードするように指示され得る。以下でより詳細に説明する機能に従って、エージェントアプリケーション２０４は、その後、WiFiインターネットリンクを介して、OTAサーバ１１０への接続を介した更新として新しいSIMクレデンシャルを受信し、それをローカルモバイルネットワークに接続するためにSIMを再構成するために使用することができる。
【００５６】
エージェント２０４は、移動局１０２ａの通信インターフェイス２１０を使用してOTAサーバ１１０と通信するように構成されている。通信インターフェイス２１０は、エージェント２０４とネットワーク１１４との間の通信を可能にするために、無線トランシーバを備えてもよい。
【００５７】
移動局１０２ａは、スクリーン、タッチスクリーン等のディスプレイ２１２をさらに備えてもよい。移動局１０２ａは、たとえばキーパッド、マイク、カメラ、タッチスクリーン等の移動局１０２ａのユーザからのユーザ入力を受信するための少なくとも１つの入力装置２１４、及び／又は、たとえばスピーカ等の少なくとも１つの出力装置２１４を備えてもよい。
【００５８】
図４は、SIM１０２ｂの例示的なSIMカードのブロック図である。SIMカードは、ワーキングメモリ１２２に結合されたプロセッサ１２０と、EEPROMのような不揮発性データストア１２４と、ROMのような恒久的プログラムメモリ１２６とを備える。また、SIMカードは、電力を受け取り、通信モジュール２０２からのコマンドを受け入れ、応答を与えるためのインターフェイス１２８を有する。永久プログラムメモリ１２６は、ネットワーク／デバイスインターフェイスコード、たとえばJava Cardを含むオペレーティングシステム、及び、必須ではないが典型的にSTK（Sim Application Toolkit）を記憶してもよい。不揮発性データストア１２４は、典型的には、ユーザ電話のディレクトリ情報、設定データ、ソフトウェアパッチ等を記憶する。不揮発性データストア１２４は、共有鍵Ki、及び、SIM１０２ｂに関連付けられたIMSIを記憶してもよい。認証鍵Kiは、SIM１０２ｂ及びAuC１１９の両方によって記憶されるという意味で「共有」される。典型的には、共有鍵Kiは保護された形で記憶されるのに対し、IMSIは一般にアクセス可能である。
【００５９】
図５及び図６を参照して、以下に説明するSIM動作を実行するためのさらなるコードが恒久的プログラムメモリ１２６に存在してもよいが、代替的に、部分的又は全体的に不揮発性データストア１２４に記憶されてもよい。
【００６０】
前述したように、図４は、SIMカードとしてSIM 102bを示しているが、その機能はeSIM又はsoftSIMとしても同様に実装され得る。
【００６１】
次に、事前共有鍵（PSK）を導出する手順のプロセス５００を説明する図５を参照する。事前共有鍵（PSK）は暗号鍵であり、プロセス５００は、移動局１０２ａ及びOTAサーバ１１０の双方が、移動局１０２ａとOTAサーバ１１０との間の通信を暗号化する際に使用するための事前共有鍵を相互に導出するように、通信セッションの開始時に実行される。すなわち、エージェント２０４及びOTAサーバ１１０は、相互に導出した鍵（PSK）を共有する。
【００６２】
ステップ１において、エージェント２０４は、SIM１０２ｂの識別子に対する要求を通信モジュール２０２に送信する。図５に示すように、要求されたSIM識別子は、SIM１０２ｂに関連づけられたIMSIであってもよいし、ICCID、MSISDN又は当業者に知られているであろうSIM１０２ｂに関連づけられた任意の他の識別子であってもよい。
【００６３】
ステップ１は、たとえば、エージェント２０４が通信モジュール２０２のシリアルインターフェイスにATtention（AT）コマンドを送信することによって達成されてもよい。「ATコマンド」は、3GPP TS 07.007で定義されたモデムとのシリアル通信のための既知のメッセージフォーマットである。たとえば、「AT+CIMI」コマンドは、SIM１０２bの識別子を取得するためにステップ1で使用することができる。
【００６４】
ステップ１を達成することができる代替的な方法は、エージェント２０４がSIM識別子を要求するために通信モジュール２０２にAPI呼び出しを送信することができるように、通信モジュール２０２によって提供されるAPIを使用することである。
【００６５】
ステップ１は、移動局１０２ａのユーザが移動局１０２ａの入力装置２１４を介して入力を提供することによって（たとえば、ディスプレイ２１２に表示されたグラフィカルユーザインターフェイスで選択を行うことによって）トリガされてもよい。代替的に、または追加的に、MNOは、OTAサーバからネットワーク１１４を介して移動局１０２ａにセッション開始メッセージを送信することによって、通信セッションをトリガしてもよい。この実施形態では、エージェント２０４は、SMS処理または何らかの形のネットワークサービスなどの必要なトリガをサポートするようにプログラムされるべきである。代替的に、または追加的に、ステップ１は、プロセス５００が周期的に実行されるように、エージェント２０４が（たとえば、内部タイマーを監視することによって）所定の時間間隔の満了を検出したことに基づいてトリガされてもよい。
【００６６】
エージェント２０４からの要求を受信したことに応答して、通信モジュール２０２は、ステップ２において、SIM１０２ｂからのSIM識別子を要求する。これは、ADPU（application protocol data unit）コマンドを実行することによって実行されてもよい。
【００６７】
ステップ３において、SIM１０２ｂは、要求されたSIM識別子を通信モジュール２０２に提供し、通信モジュール２０２は、その後、ステップ４において、SIM識別子をエージェント２０４に返す。
【００６８】
SIM識別子の受信に応答して、エージェント２０４は、SIM識別子からエージェント識別子を生成するように構成されている。エージェント識別子は、エージェント２０４を識別する一意の文字列である。一例では、エージェント２０４は、SIM識別子に接頭辞「agent」を付加することにより、エージェント識別子を導出する。これは、概念を説明するための単なる例であり、SIM識別子を使用してエージェント識別子を導出するための代替方法が使用されてもよいことが理解されるであろう。
【００６９】
ステップ５において、エージェント２０４は、エージェント識別子及びSIM識別子をネットワーク１１４を介してOTAサーバ１１０に送信する。ステップ５において、エージェントは、エージェント識別子をパラメータとして、IPネットワーク１１４上のAPI（たとえば、Web API）をトリガしてもよい。このAPIは、セキュアチャネル、たとえばHTTPSを介して提供される。ステップ５でのOTAサーバ１１０へのエージェント識別子の送信は、以下でより詳細に説明するように、チャレンジの要求としての役割を果たす。
【００７０】
エージェント識別子を受信することに応答して、ステップ６でOTAサーバは、たとえば１２８ビットの長さの「チャレンジ」とも呼ばれるランダム値（RAND）を生成し、チャレンジ（RAND）及びSIM識別子をAuC１１９に送信する。
【００７１】
AuC１１９は、SIM識別子と関連づけて記憶された共有鍵Kiを取得し、共有鍵Ki及びチャレンジ（RAND）を入力とする第１の認証アルゴリズム（たとえばＡ３暗号化アルゴリズム）を用いて署名済み応答（SRES）を生成し、同じく共有鍵Ki及びチャレンジ（RAND）を入力とする第２の認証アルゴリズム（たとえばＡ８暗号化アルゴリズム）を用いて暗号鍵（Kc）を生成する。
【００７２】
ステップ７において、OTAサーバ１１０は、HLR/HSS１１８から署名済み応答（SRES）及び暗号鍵（Kc）を受信する。
【００７３】
ステップ８において、OTAサーバ１１０は、署名済み応答（SRES）及び暗号鍵（Kc）の少なくとも一方を使用して、１２８ビットの長さであってもよい事前共有鍵（PSK）を導出する。付加的に、事前共有鍵（PSK）を導出するために、チャレンジ（RAND）が追加的に使用されてもよい。事前共有鍵（PSK）を導出する方法の一例としては、暗号鍵（Kc）をそれ自身と連結し、その結果に以下のようにチャレンジ（RAND）とビット単位のXOR演算を適用することが挙げられる。
PSK=CONCATENATE (Kc, Kc) XOR RAND
【００７４】
これは概念を説明するための例に過ぎず、事前共有鍵（PSK）を導出するための代替方法が使用されてもよいことが理解されよう。
【００７５】
事前共有鍵（PSK）は、一時的なものとすることができ、これは、移動局１０２ａとOTAサーバ１１０との間の通信セッションがその鍵で行われた後に忘れられることを意味する。
【００７６】
一旦、OTAサーバ１１０は、事前共有鍵（PSK）を導出すると、事前共有鍵（PSK）をステップ５で受信したエージェント識別子と関連づけ、関連づけられた事前共有鍵（PSK）及びエージェント識別子をOTAサーバ１１０の内部メモリに記憶する（関連づけられた事前共有鍵（PSK）及びエージェント識別子は、代替的にOTAサーバ１１０の外部にあるメモリに記憶されてもよいことが理解されるであろう）。これにより、OTAサーバ１１０は、移動局１０２ａ上のエージェント２０４への通信の暗号化に当該事前共有鍵（PSK）を使用すべきことを知ることができる。
【００７７】
ステップ９において、OTAサーバ１１０は、チャレンジ（RAND）をネットワーク１４を介して移動局１０２ａ上のエージェント２０４に送信する。
【００７８】
ステップ１０において、エージェント２０４は、通信モジュール２０２に乱数値を与えてSIM認証手順を開始し、その応答において、以下でより詳細に説明するように、（ステップ１３で）通信モジュール２０２から認証応答を受信する。
【００７９】
ステップ１０において、エージェント２０４は、通信モジュール２０２にATコマンドを送信してもよい。特に、チャレンジ（RAND）は、エージェント２０４によってシードとして使用され、このランダム値をパラメータとしてSIMでコマンド（AUTHENTICATEコマンド）を呼び出すために使用されてもよい。SIMレベルでAUTHENTICATE APDUを呼び出す１つの方法は、AT+CSIMコマンドを使用して、ＡＴコマンドに対するAT＋CSIM応答（ステップ１３）から応答APDUを収集することである。ステップ１０が達成され得る代替的な方法は、エージェント２０４がSIM認証手順を開始するために通信モジュール２０２にAPI呼び出しを送信することができる、通信モジュール２０２によって提供されるAPIを使用することである。
【００８０】
SIM認証手順の間、通信モジュール２０２は、たとえば、ステップ１０で受信したAuthenticate APDUコマンドを実行することにより、ステップ１１で、SIM１０２ｂにチャレンジ（RAND）を与える。
【００８１】
ステップ１２において、SIM１０２ｂは、不揮発性データストア１２４から共有鍵Kiを取得し、共有鍵Ki及びチャレンジ（RAND）を入力とする第１の認証アルゴリズム（たとえばＡ３暗号化アルゴリズム）を用いた署名済み応答（SRES）と、同じく共有鍵Ki及びチャレンジ（RAND）を入力とする第２の認証アルゴリズム（たとえばＡ８暗号化アルゴリズム）を用いた暗号鍵（Kc）とを生成する。SIM１０２ｂは、署名済み応答（SRES）と暗号鍵（Kc）を通信モジュール２０２に与える。
【００８２】
ステップ１３において、通信モジュール２０２は、認証応答において、署名済み応答（SRES）及び暗号鍵（Kc）をエージェント２０４に供給する。
【００８３】
ステップ１４において、エージェント２０４は、ステップ８と同様に（OTAサーバによって実装された）事前共有鍵（PSK）を導出する。
【００８４】
したがって、プロセス５００の最後に、エージェント２０４とOTAサーバ１１０の両方がＴＬＳ暗号化鍵（PSK）を導出している。事前共有鍵（PSK）は、図６を参照して以下にさらに詳細に説明するように、エージェント２０４とOTAサーバ１１０との間で送信される通信パケットを暗号化／復号化するために使用される。
【００８５】
図６は、事前共有鍵導出手順５００が完了した後に実行されるSIM更新手順のプロセス６００を示す図である。
【００８６】
ステップ１に先立ち、エージェント２０４は、OTAサーバ１１０との間でTLSチャネルを開く。TLSチャネルの開通は、技術的には「TLSハンドシェイク」と呼ばれ、RFC 4279に記述されている。TLSハンドシェイクの間、一連のメッセージがエージェント２０４とOTAサーバ１１０の間で交換される。これらのメッセージは当技術分野で知られているため、本明細書では詳細には記述されていない。TLSハンドシェイク手順の間、エージェント２０４は、エージェント２０４とOTAサーバ１１０との間で送信される通信パケットを暗号化／復号化するために使用される鍵（事前共有鍵（PSK））をOTAサーバ１１０に通知する。具体的には、エージェント２０４は、エージェント識別子を「PSKアイデンティティ」として含むメッセージ（たとえば「クライアント鍵交換」メッセージ）をOTAサーバ１１０に送信する。これに応答して、OTAサーバ１１０は、エージェント識別子を使用してその関連メモリ１１２に問い合わせを行い、エージェント識別子に関連して記憶されている事前共有鍵（PSK）を取得する。
【００８７】
ホストデバイス１０２ａは、TLS/PSKソフトウェアモジュールを備えてもよい。エージェント２０４は、TLS/PSKソフトウェアモジュール（エージェント２０４の機能の一部）を備えてもよいし、代替的に、TLS/PSKソフトウェアモジュールは、エージェント２０４とは別個のモジュールであってもよく、プロセッサ２０６で実行されたときに所定のタスクを実行する、メモリ２０８に記憶されたプログラムコードを含んでもよい。
【００８８】
エージェント２０４は、導出されたPSKをTLS/PSKソフトウェアモジュールに供給する。TLS/PSKソフトウェアモジュールは、エージェント２０４からOTAサーバ１１０に送信されたデータの暗号化、及びOTAサーバ１１０からエージェントに送信されたデータの復号化のためにエージェント２０４のTLS/PSKソフトウェアモジュールによって使用されるセッションキーをPSKから導出するように構成されている。ホストデバイス１０２ａ上のTLS/PSKモジュールは、HTTPメッセージを復号化してエージェント２０４に引き渡す役割を担う。
【００８９】
TLS/PSKソフトウェアモジュールの動作は、当業者には知られており、RFC 4279及びRFC 2246に文書化されている。一般的に、TLS/PSKソフトウェアモジュールは、PSKから「プレマスターシークレット」を導出する（これはRFC 4279-セクション2に記述されている）。プレマスターシークレットは暗号化され、TLSハンドシェイクにおいて交換される。「プレマスターシークレット」は「マスターシークレット」を導出するために使用される(これはRFC 2246-セクション8.1に記述されている)。TLS/PSKソフトウェアモジュールは、ハンドシェイクからのマスターキー及び他のデータを疑似ランダム関数（PRF）に渡して、セッション鍵を生成する（これはRFC 2246-セクション5と6.3に記述されている）。
【００９０】
セッション鍵は、（OTAサーバ１１０のTLS/PSKソフトウェアモジュールによってデータを復号化するために使用され、）エージェント２０４からOTAサーバ１１０に送信されるデータの暗号化のためにエージェント２０４のTLS/PSKソフトウェアモジュールによって使用される「クライアント書き込み暗号化鍵」と、（エージェント２０４のTLS/PSKソフトウェアモジュールによってデータを復号化するために使用され、）OTAサーバ１１０からエージェント２０４に送信されるデータの暗号化のためにOTAサーバ１１０のTLS/PSKソフトウェアモジュールによって使用される「サーバ書き込み暗号化鍵」とを含む。これらのセッション鍵がPSKから導出されることは、上記から理解されるであろう。
【００９１】
また、OTAサーバ１１０は、上述したエージェント２０４と同様にセッションキーを導出するように構成されたTLS/PSKソフトウェアモジュールを備えてもよい。
【００９２】
ステップ１において、エージェント２０４は、更新要求メッセージをTLSチャネルを介してOTAサーバ１１０に送信する。更新要求メッセージは、（手順５００でエージェント２０４によって生成された）エージェント識別子を含み、さらにSIM１０２ｂに関連づけられたSIM識別子を含んでもよい。更新要求メッセージは、手順５００の間に導出された事前共有鍵（PSK）を用いて暗号化される。すなわち、更新要求メッセージは、エージェント２０４のTLS/PSKソフトウェアモジュールによって、PSKから導出されたセッション鍵（クライアント書き込み暗号化鍵）を用いて暗号化される。
【００９３】
図６に示すように、更新要求メッセージは、（SCP81プロトコルに準拠して）エージェント識別子をパラメータとして含む第１のHTTP要求として送信されてもよい。すなわち、TLSチャネルを介して交換されるメッセージは、それ自体がTLSプロトコルパケットにカプセル化されたHTTPパケットに包まれていてもよい。
【００９４】
更新要求メッセージの受信に応答して、OTAサーバ１１０は、事前共有鍵（PSK）を用いて更新要求メッセージを復号化する、すなわち、OTAサーバ１１０のTLS/PSKソフトウェアモジュールは、PSKから導出されたセッション鍵（クライアント書き込み暗号化鍵）を用いて更新要求メッセージを復号化する。
【００９５】
ステップ２において、OTAサーバ１１０は、更新応答メッセージをTLSチャネルを介してエージェント２０４に送信する。更新応答メッセージは、送信前に事前共有鍵（PSK）を用いて暗号化される。すなわち、更新応答メッセージは、OTAサーバ１１０のTLS/PSKソフトウェアモジュールによって、PSKから導出されたセッション鍵（サーバ書き込み暗号化鍵）を用いて暗号化される。
【００９６】
更新応答メッセージは、更新データを含む。更新データは、メモリ１１２に記憶されていてもよく、SIM１０２ｂに関連づけられていてもよく、すなわち、SIM１０２ｂへの配信のために予め指定されていてもよい。更新データは、少なくとも１つのエンベロープAPDUを含んでもよい。少なくとも１つのエンベロープAPDUは、SIM１０２ｂによって実行されるRFM及び／又はRAMコマンドを含んでもよい。少なくとも１つのエンベロープAPDUは、対称OTA鍵を使用してOTAサーバ１１０によって暗号化され、したがって、セキュアエンベロープＡＰＤＵを形成する。対称OTA鍵は、製造時にSIM１０２ｂにインストールされ、またOTAサーバ１１０にプロビジョニングされる。対称OTA鍵は、標準ETSI TS 102 225で規定されている暗号化鍵識別子（Klc）に対応していてもよい。
【００９７】
図７は、更新応答メッセージ７０２を示す図である。図７に示すように、更新応答メッセージ７０２は、PSKから導出されたセッション鍵（サーバ書き込み暗号化鍵）７０４を用いて暗号化される。更新応答メッセージ７０２は、対称OTA鍵７０８を用いてOTAサーバ１１０によって暗号化される更新データ７０６を含む。
【００９８】
図６のプロセス６００に戻って、更新応答メッセージを受信すると、更新応答メッセージは、手順５００の間に導出された事前共有鍵を使用して復号化される。すなわち、エージェント２０４のTLS/PSKソフトウェアモジュールは、PSKから導出されたセッション鍵（サーバ書き込み暗号化鍵）を用いて、更新応答メッセージを復号化する。
【００９９】
ステップ３において、エージェント２０４は、暗号化された更新データを通信モジュール２０２に供給する。ステップ３において、エージェント２０４は、暗号化された更新データを通信モジュール２０２に供給するために、ATコマンドを通信モジュール２０２に送信してもよい。特に、AT+CSIMコマンドを使用してもよい。ステップ３が達成され得る代替的な方法は、エージェント２０４が通信モジュール２０２に暗号化更新データを供給するために通信モジュール２０２にAPIコールを送信することができる、通信モジュール２０２によって提供されるAPIを使用することである。
【０１００】
ステップ４において、通信モジュール２０４は、暗号化された更新データをSIM１０２ｂに供給する。
【０１０１】
暗号化された更新データを受信したことに応答して、SIM１０２ｂは、対称OTA鍵７０８を用いて暗号化された更新データを復号化し、ステップ５において、SIM１０２ｂを更新するための更新データを実行する。受信した更新データに基づいてSIM１０２ｂ上で実行される更新は、SIM１０２ｂに新しいデータをインストールする（たとえば、Javacardアプレットのような新しいアプリケーションをインストールする）、SIM１０２ｂに以前にインストールされたデータを更新する、及び／又はSIM１０２ｂ上に記憶されたパラメータ値を修正することを含むことができる。
【０１０２】
ステップ６では、更新データの実行結果がSIM１０２ｂから通信モジュール２０２に送信される。ステップ７において、通信モジュール２０２は、実行結果をエージェント２０４に中継する。
【０１０３】
ステップ８において、エージェント２０４は、ネットワーク１１４を介して更なる更新要求メッセージをOTAサーバ１１０に送信し、更新要求メッセージは、更新データの実行結果を伝える。上述したように、更新要求メッセージは、送信前に事前共有鍵（PSK）を用いて暗号化される。すなわち、更新要求メッセージは、PSKから導出されたセッション鍵（クライアント書き込み暗号化鍵）で暗号化される。
【０１０４】
エージェント２０４からの更なる更新要求メッセージを受信することに応答して、OTAサーバ１１０は、エージェント２０４に送信されるべき更新データがあるかどうかを判定するように構成されている。
【０１０５】
エージェント２０４に送信すべき更なる更新データがある場合、プロセス６００は、更なる更新応答メッセージがTLSチャネルを介してエージェント２０４に送信されるステップ２（プロセス６００内）に戻る。
【０１０６】
データの収集（たとえば、SIMパラメータの読み取り）は、プロセス６００において実行されてもよい。特に、ステップ２でOTAサーバ１１０によって送信される第１の更新応答メッセージは、実行のためにSIM１０２ｂに中継される読み取りコマンドを含んでもよく、したがって、ステップ８でOTAサーバ１１０に返される更なる更新要求メッセージは、データ読み取り結果（たとえば、SIMパラメータ値）を含んでもよい。データ読み出し結果は、プロセス６００がステップ２にループバックするときに、OTAサーバ１１０によってエージェント２０４に送信される更なる更新応答メッセージにおいて送信される更新データを決定するために、OTAサーバ１１０によって使用されてもよい。
【０１０７】
エージェント２０４に送信すべき更なる更新データがない場合、プロセス６００は、更なる更新データがないことを示すメッセージがOTAサーバ１１０からエージェント２０４に送信されるステップ９に進む。ステップ９で送信されるメッセージは、空のHTTPレスポンス（たとえば、HTTP応答コード２００）であってもよい。
【０１０８】
これ以上の更新データがないことを示すメッセージを受信すると、通信セッションを正常に終了させることができる。
【０１０９】
上述したプロセス５００及び６００から分かるように、エージェント２０４は、レガシーSIM対応通信モジュール（さらには２Ｇモジュール）においてHTTP OTAメカニズムのサポートを提供し、ホストデバイス１０２ａにおけるSMSサポートを必要とせずにHTTP OTAを提供する。
【０１１０】
APDUは、移動局１０２ａを検査するSIM通信ロギングデバイス（トレーサ）を用いて潜在的に検査することができる。したがって、これに対処するために、上述したように、更新データAPDUは、SMS OTAプロトコル（SCP80）と同じ方法で、セキュアエンベロープAPDUにラップされている。SMS OTAキーは、OTAサーバ１１０及びSIM１０２ｂによってのみ知られており、したがって、RFM/RAMメッセージは、SIM１０２ｂへの更新データの安全な伝送を提供するようにエンドツーエンドで保護されている。さらに、HTTPSトンネルのエンドポイントは、SIM１０２ｂではなくエージェント２０４であるので、APDUは、実行のために外部に提供されると考えられ、したがって、適切な認証システムがなければ正常に実行されないであろう。セキュアなエンベロップの内側にラップされているという事実は、この必要な認証を提供する。
【０１１１】
図５及び図６を参照して上述したOTAサーバ１１０との通信プロトコルは、TLSを介したHTTPの処理をホストデバイス１０２ａ上のソフトウェアエージェント２０４に委譲し、SIM１０２ｂをセキュアエレメントとしてTLS暗号化鍵（PSK）を導出する点で（上述した）SCP81のプロトコルとは異なる。
【０１１２】
本明細書に記載された実施形態では、移動局１０２ａ上のホストハードウェア（たとえば、プロセッシング及び／又はメモリリソース）は、典型的には、SIMハードウェアと比較して、リソースがより豊富であるため、OTA更新にかかる時間を短縮することができる。たとえば、HTTPSメッセージを処理することの計算量は大きく、ホストデバイス上で利用可能なハードウェアは、これらの通信のより高速な処理を提供する。
【０１１３】
本開示の態様は、以下の箇条書きを参照して記述する。
【０１１４】
C1  ホストデバイス上のSIMを更新する方法であって、前記ホストデバイス上のエージェントにより実行され、
事前に共有された鍵を導出するステップであって、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求するステップと、
前記通信モジュールから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、
前記エージェント識別子及び前記SIM識別子をネットワークを介してネットワークエンティティに送信するステップと、
前記ネットワークを介して、前記ネットワークエンティティからランダムな値を受信するステップと、
SIM認証手順を開始するために前記通信モジュールに前記ランダムな値を与えて、その応答として前記通信モジュールから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと
を含むステップと、
前記ネットワークを介して前記ネットワークエンティティに更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信前に暗号化されるステップと、
前記ネットワークを介して前記ネットワークエンティティから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されているステップと、
導き出された前記事前に共有された鍵を用いて前記更新応答メッセージを復号化して、前記SIMを更新するための実行のために前記SIMに中継するために前記通信モジュールに前記更新データを送信するステップと
を含む。
【０１１５】
C2  項C1の方法であって、前記認証応答は、署名済み応答及び暗号鍵を含む。
【０１１６】
C3  項C2の方法であって、前記認証応答からの前記事前に共有された鍵の導出は、前記署名済み応答及び前記暗号鍵の少なくとも一方を使用して前記事前に共有された鍵を導出することを含む。
【０１１７】
C4  項C3の方法であって、前記認証応答からの前記事前に共有された鍵の導出は、前記ランダムな値を使用して前記事前に共有された鍵を導出することを含む。
【０１１８】
C5  項C4の方法であって、前記認証応答からの前記事前に共有された鍵の導出は、前記暗号鍵とそれ自身を連結して連結結果を生成し、前記連結結果と前記ランダムな値にビット単位のXOR演算を適用して前記事前に共有された鍵を導出することを含む。
【０１１９】
C6  先行するいずれかの項の方法であって、前記更新データは、前記SIMによって記憶された対称暗号鍵で暗号化されている。
【０１２０】
C7  先行するいずれかの項の方法であって、前記更新要求メッセージは、前記SIM識別子を含む。
【０１２１】
C8  先行するいずれかの項の方法であって、前記通信モジュールに前記更新データを送信することに応答して、
前記通信モジュールを介して前記SIMから実行結果を受信するステップと、
前記ネットワークを介して前記ネットワークエンティティに更なる更新要求メッセージを送信し、前記更新要求メッセージは、前記実行結果を伝え、前記事前に共有された鍵を使用して送信の前に暗号化されているステップと
をさらに含む。
【０１２２】
C9  先行するいずれかの項の方法であって、ATコマンドが、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求すること、
前記通信モジュールに前記ランダムな値を与えてSIM認証手順を開始すること、及び
前記更新データを前記通信モジュールに送信すること
のうちの少なくともいずれかに用いられる。
【０１２３】
Ｃ10  先行するいずれかの項の方法であって、前記通信モジュールによって提供されるアプリケーション・プログラミング・インターフェイスが、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求すること、
前記通信モジュールに前記ランダムな値を与えてSIM認証手順を開始すること、及び
前記更新データを前記通信モジュールに送信すること
のうちの少なくともいずれかに用いられる。
【０１２４】
Ｃ11  先行するいずれかの項の方法であって、前記SIM識別子からのエージェント識別子の導出は、前記SIM識別子に接頭辞を付加することを含む。
【０１２５】
Ｃ12  先行するいずれかの項の方法であって、前記事前に共有された鍵の導出は、(i)前記ホストデバイス上のユーザ入力を検出すること、(ii)前記ネットワークを介して前記ネットワークエンティティからセッション開始メッセージを受信すること、及び(iii)所定の時間間隔の満了を検出することのうちの1つに基づいてトリガされる。
【０１２６】
Ｃ13  先行するいずれかの項の方法であって、前記SIM識別子は、(i)前記SIMに関連づけられたIMSI、(ii)前記SIMに関連づけられたICCID、及び(iii)前記SIMに関連づけられたMSISDNのうちの１つである。
【０１２７】
Ｃ14  ホストデバイス上のSIMを更新する方法であって、ネットワークエンティティによって実行され、
事前に共有された鍵を導出するステップであって、
ホストデバイスから、ネットワークを介して前記ホストデバイスから送信されたエージェント識別子及び前記SIMのSIM識別子を受信するステップと、
ランダムな値を生成するステップと、
前記ランダムな値及び前記SIMの前記識別子を認証エンティティに与えて、その応答として前記認証エンティティから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと
を含むステップと、
前記エージェント識別子と関連づけて前記事前に共有された鍵をメモリに記憶するステップと、
前記ネットワークを介して、前記ホストデバイスから更新要求メッセージを受信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信の前に暗号化されるステップと、
前記ネットワークを介して、前記ホストデバイスに更新応答メッセージを送信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと
を含む。
【０１２８】
Ｃ15  ホストデバイス上のSIMを更新するためのコンピュータプログラム製品であって、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、前記コードは、プロセッサ上で実行されたときに先行するいずれかの項の方法を実行するように構成されている。
【０１２９】
上記の実施形態は、例示としてのみ記載されていることが理解され、他の変種又はアプリケーションは、本明細書の開示を与えられた当業者に明らかであるだろう。
【図１】
2021523651.tif 000003
【図２】
2021523651.tif 000004
【図３】
2021523651.tif 000005
【図４】
2021523651.tif 000006
【図５】
2021523651.tif 000007
【図６】
2021523651.tif 000008
【図７】
2021523651.tif 000009
【手続補正書】
【提出日】令和3年3月15日(2021.3.15)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ホストデバイス上のSIMを更新する方法であって、前記ホストデバイス上のエージェントにより実行され、
事前に共有された鍵を導出するステップであって、
前記ホストデバイスのBIPサポートを有しない通信モジュールを介して前記SIMのSIM識別子を要求するステップと、
前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、
前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、
前記ネットワークを介して、前記SIM更新サーバからランダムな値を受信するステップと、
SIM認証手順を開始するために前記通信モジュールを介して前記SIMに前記ランダムな値を与えて、その応答として前記通信モジュールを介して前記SIMから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと
を含むステップと、
前記ネットワークを介して前記SIM更新サーバに更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信前に暗号化されるステップと、
前記ネットワークを介して前記SIM更新サーバから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと、
導き出された前記事前に共有された鍵を用いて前記更新応答メッセージを復号化して、前記SIMを更新するための実行のために前記SIMに中継するために前記通信モジュールに前記更新データを送信するステップと
を含む。
【請求項２】
請求項１記載の方法であって、
前記認証応答は、署名済み応答及び暗号鍵を含む。
【請求項３】
請求項２記載の方法であって、
前記認証応答からの前記事前に共有された鍵の導出は、前記署名済み応答及び前記暗号鍵の少なくとも一方を使用して前記事前に共有された鍵を導出することを含む。
【請求項４】
請求項１から３のいずれかに記載の方法であって、
前記通信モジュールに前記更新データを送信することに応答して、
前記通信モジュールを介して前記SIMから実行結果を受信するステップと、
前記ネットワークを介して前記SIM更新サーバに更なる更新要求メッセージを送信し、前記更新要求メッセージは、前記実行結果を伝え、前記事前に共有された鍵を使用して送信の前に暗号化されるステップと
をさらに含む。
【請求項５】
請求項１から４のいずれかに記載の方法であって、
前記通信モジュールによって提供されるアプリケーション・プログラミング・インターフェイスが、
前記ホストデバイスの通信モジュールからの前記SIMのSIM識別子を要求すること、
前記通信モジュールに前記ランダムな値を与えてSIM認証手順を開始すること、及び
前記更新データを前記通信モジュールに送信すること
のうちの少なくともいずれかに用いられる。
【請求項６】
請求項１から５のいずれかに記載の方法であって、
前記SIM識別子からのエージェント識別子の導出は、前記SIM識別子に接頭辞を付加することを含む。
【請求項７】
請求項１から６のいずれかに記載の方法であって、
前記事前に共有された鍵の導出は、
(i)前記ホストデバイス上のユーザ入力を検出すること、
(ii)前記ネットワークを介して前記SIM更新サーバからセッション開始メッセージを受信すること、及び
(iii)所定の時間間隔の満了を検出すること
のうちの１つに基づいてトリガされる。
【請求項８】
請求項１から７のいずれかに記載の方法であって、
前記更新要求メッセージは、前記事前に共有された鍵から導出された第１のセッションキーにより送信前に暗号化され、
前記更新応答メッセージは、前記事前に共有された鍵から導出された第２のセッションキーにより復号化される。
【請求項９】
プロセッサを有するデバイスであって、前記プロセッサは、前記デバイスに関連づけられたSIMに結合されたBIPサポートを有しない通信モジュールに結合され、前記プロセッサは、
前記ホストデバイスの前記通信モジュールを介して前記SIMのSIM識別子を要求するステップと、
前記通信モジュールを介して前記SIMから前記SIM識別子を受信して、前記SIM識別子からエージェント識別子を導出するステップと、
前記エージェント識別子及び前記SIM識別子をネットワークを介してSIM更新サーバに送信するステップと、
前記ネットワークを介して、前記SIM更新サーバからランダムな値を受信するステップと、
SIM認証手順を開始するために前記通信モジュールを介して前記SIMに前記ランダムな値を与えて、その応答として前記通信モジュールを介して前記SIMから認証応答を受信するステップと、
前記認証応答から前記事前に共有された鍵を導出するステップと、
前記ネットワークを介して前記SIM更新サーバに更新要求メッセージを送信するステップであって、前記更新要求メッセージは、前記エージェント識別子を含み、前記事前に共有された鍵を使用して送信前に暗号化されるステップと、
前記ネットワークを介して前記SIM更新サーバから更新応答メッセージを受信するステップであって、前記更新応答メッセージは、更新データを含み、前記事前に共有された鍵で暗号化されるステップと、
導き出された前記事前に共有された鍵を用いて前記更新応答メッセージを復号化して、前記SIMを更新するための実行のために前記SIMに中継するために前記通信モジュールに前記更新データを送信するステップと
を含む。
【請求項１０】
ホストデバイス上のSIMを更新するためのコンピュータプログラム製品であって、非一過性のコンピュータ読み取り可能な媒体上に具現化されたコードを含み、前記コードは、プロセッサ上で実行されたときに請求項１から８のいずれかに記載の方法を実行するように構成されている。
【国際調査報告】
2021523651.tif 000010
2021523651.tif 000011
2021523651.tif 000012
2021523651.tif 000013
2021523651.tif 000014