(57)【要約】      （修正有）【課題】セキュアエレメントのソフトウェアの、信頼できるセキュアなアップデート方法を提供する。【解決手段】ブートプログラム３８は、マイクロプロセッサ３１によって実行されるときに、不揮発性メモリ３４がアクティブなオペレーティングシステム３５を格納しているか決定し、その決定が肯定的な場合、オペレーティングシステム３５の実行を開始する起動ステップと、セキュアエレメント３０によって決定された第１認証データ及びアップデータデバイス１０から受取った第２認証データに応じてアップデータデバイス１０を認証する認証ステップと、認証ステップを受けて、アップデータデバイス１０から受取った新規なオペレーティングシステムを不揮発性メモリ３４に格納するステップと、新規なオペレーティングシステムをアクティブにするアクティベーションステップと、を実行するための命令を備える。【選択図】図１
2014029688.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのマイクロプロセッサ（３１）、不揮発性メモリ（３４）、及び通信インターフェース（３６）を備え、前記通信インターフェース（３６）を介してアップデータデバイス（１０）と通信可能なセキュアエレメント（３０）であって、
前記不揮発性メモリ（３４）は少なくとも１つブートプログラム（３８）を格納し、
前記マイクロプロセッサ（３１）は前記セキュアエレメント（３０）を起動する間に前記ブートプログラム（３８）を実行するように構成され、
前記ブートプログラム（３８）は、命令であって、
当該命令が前記マイクロプロセッサ（３１）によって実行されるときに、
前記不揮発性メモリ（３４）がアクティブなオペレーティングシステム（３５）を格納しているか決定し、その決定が肯定的な場合、前記オペレーティングシステム（３５）の実行を開始する起動ステップ（Ｅ１、Ｅ１２）と、
前記セキュアエレメント（３０）によって決定された第１認証データ（ＡＵＴＨ30）及び前記アップデータデバイス（１０）から受取った第２認証データ（ＡＵＴＨ10）に応じて、前記アップデータデバイス（１０）を認証する認証ステップ（Ｅ４、Ｅ５、Ｅ６、Ｅ７、Ｅ１３、Ｅ１４）と、
前記認証ステップを受けて、前記アップデータデバイス（１０）から受取った新規なオペレーティングシステムを前記不揮発性メモリ（３４）に格納する格納ステップ（Ｅ９、Ｅ１０）と、
前記新規なオペレーティングシステムをアクティブにするアクティベーションステップ（Ｅ１１）と、
を実行するための命令を備えることを特徴とするセキュアエレメント（３０）。
【請求項２】
前記アップデータデバイスを認証する前記認証ステップにおいて、
変数（ＲＡＮＤ）を含むメッセージ（Ｍ５）を前記アップデータデバイス（１０）に送信するためのステップ（Ｅ４）と、
前記第２認証データ（ＡＵＴＨ10）を受取るステップ（Ｅ５）と、
前記変数（ＲＡＮＤ）及び前記不揮発性メモリ（３４）に格納されたキー（ＭＫi）に応じて前記第１認証データ（ＡＵＴＨ30）を決定する決定ステップ（Ｅ６、Ｅ１３）と、
前記第１認証データ（ＡＵＴＨ30）と前記第２認証データ（ＡＵＴＨ10）とを比較するステップ（Ｅ７、Ｅ１４）と、を備える請求項１に記載のセキュアエレメント（３０）。
【請求項３】
前記ブートブログラム（３８）は、前記キー（ＭＫi）及び前記変数（ＲＡＮＤ）に応じた暗号化データ（Ｖ１）を含むメッセージ（Ｍ７）を前記アップデータデバイス（１０）に送信するステップ（Ｅ８）を実行するための命令を備える、請求項２に記載のセキュアエレメント（３０）。
【請求項４】
前記不揮発性メモリ（３４）は、
前記変数（ＲＡＮＤ）を含むメッセージ（Ｍ５）を前記アップデータデバイス（１０）へ送信するステップ（Ｆ４）と、
前記第２認証データ（ＡＵＴＨ10）を受取るステップ（Ｆ５）と、を実行するための命令を含むオペレーティングシステム（３５）を備える、請求項２又は３に記載のセキュアエレメント（３０）。
【請求項５】
前記オペレーティングシステム（３５）は、前記キー（ＭＫi）及び前記変数（ＲＡＮＤ）に応じた暗号化データ（Ｖ１）を含むメッセージ（Ｍ７）をアップデータデバイス（１０）へ送信するステップ（Ｆ８）を実行するための命令を含む、請求項４に記載のセキュアエレメント（３０）。
【請求項６】
前記格納ステップは暗号化された前記新規なオペレーティングシステムの受取りを備える、請求項１〜５のいずれか１項に記載のセキュアエレメント（３０）。
【請求項７】
前記認証ステップは、前記キー（ＭＫi）及び前記変数に応じたセッションキー（ＳＫ）の決定を備え、前記格納ステップは、前記セッションキー（ＳＫ）で暗号化された前記新規なオペレーティングシステムの受取りを備える、請求項２及び６に記載のセキュアエレメント（３０）。
【請求項８】
前記ブートプログラム（３８）は、前記不揮発性メモリ（３４）の書換不能部（４１）に格納されている、請求項１〜７のいずれか１項に記載のセキュアエレメント（３０）。
【請求項９】
前記ブートプログラム（３８）は、前記不揮発性メモリ（３４）の書換可能部（４０）に格納され、前記不揮発性メモリ（３４）は、前記ブートプログラム（３８）に対する書込みコマンドをブロックするように構成されているオペレーティングシステム（３５）を含む、請求項１〜７のいずれか１項に記載のセキュアエレメント（３０）。
【請求項１０】
少なくとも１つのマイクロプロセッサ（２１）、不揮発性メモリ（２４）、及び請求項１〜９のいずれか１項に記載のセキュアエレメント（３０）を備えたターミナル（２０）であって、
前記ターミナル（２０）の前記不揮発性メモリ（２４）はアップデートマネジメントプログラム（Ｐ１）及び前記セキュアエレメント（３０）によって提供されるサービスを利用するためのアプリケーションを備え、
前記アップデートマネジメントプログラム（Ｐ１）は、命令であって、
当該命令が前記ターミナル（２０）のマイクロプロセッサ（２１）によって実行されるときに、
前記アップデータデバイス（１０）から前記新規なオペレーティングシステムの受取り及び受取った前記新規なオペレーティングシステムを前記セキュアエレメントへの送付を含む伝送ステップと、
少なくとも前記伝送ステップの間に前記サービスを非動作状態にするデアクティベーションステップと、
を実行するための命令を備えるターミナル（２０）。
【請求項１１】
請求項１〜９のいずれか１項に記載の少なくとも１つのセキュアエレメント（３０）と、前記オペレーティングシステムの新規バージョンを格納するアップデータデバイス（１０）と、を備えるシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、スマートカードのようなオンボードのセキュアエレメントの分野に関する。
【背景技術】
【０００２】
例えば、スマートカードであるオンボードのセキュアエレメントは、典型的にはコンピュータのアーキテクチャを有し、特に、マイクロプロセッサと、マイクロプロセッサによって実行可能なコンピュータプログラムを備える不揮発性メモリとを備えている。特に、不揮発性メモリは、ユーザに利用可能となる前に製造者によってロードされたセキュアエレメントに関するオペレーティングシステムを備える。
【０００３】
ユーザへの提供後に、セキュアエレメントに関するそのオペレーティングシステムをアップデートすることが好ましい場合がある。
【０００４】
文献ＷＯ２０１２／０６２６３２Ａ１には、オンボードのエレメントにおいてソフトウェアをアップデートするプロセスが記載されている。このプロセスは、ソフトウェアの削除工程と、そのソフトウェアの代わりに、オンボードのエレメントを起動するときにアップデートされたプライミングプログラムをロードする、アップデートマネジメントプログラムのロード工程とを備える。この解決手段のセキュリティはそのソフトウェアのインプリントのみに基づいている。このため、この解決手段は、高度なセキュリティを必要とする用途には適していない。また、このプロセスは、セキュリティエレメントを２回再起動する必要がある。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従って、セキュアエレメントのソフトウェアの、信頼できるセキュアなアップデート方法に対する需要が存在する。
【課題を解決するための手段】
【０００６】
本発明は、少なくとも１つのマイクロプロセッサ、不揮発性メモリ、及び通信インターフェースを備えるセキュアエレメントを提案する。前記セキュアエレメントは、前記通信インターフェースを介してアップデータデバイスと通信可能になっている。前記不揮発性メモリは少なくとも１つのブートブログラムを格納している。前記マイクロプロセッサは前記セキュアエレメントを起動する間に前記ブートブログラムを実行するように構成されている。このセキュアエレメントは、前記ブートプログラムは、命令であって、当該命令が前記マイクロプロセッサによって実行されるときに、前記不揮発性メモリがアクティブなオペレーティングシステムを格納しているか決定し、その決定が肯定的な場合、前記オペレーティングシステムの実行を開始する起動ステップと、前記セキュアエレメントによって決定された第１認証データ及び前記アップデータデバイスから受取った第２認証データに応じて前記アップデータデバイスを認証する認証ステップと、前記認証ステップを受けて、前記アップデータデバイスから受け取った新規なオペレーティングシステムを前記不揮発性メモリに格納する格納ステップと、前記新規なオペレーティングシステムをアクティブにするアクティベーションステップと、を実行するための命令を備えることを特徴とする。
【０００７】
これにより、前記ブートプログラムは、セキュアに、信頼性をもって、オペレーティングシステムをアップデートできる。実際、このアップデートはアップデータデバイスの認証を必要とするので、サードパーティがオペレーティングシステムのエラーを含むバージョンをセキュアエレメントに供給することは不可能である。
【０００８】
１つの実施形態によれば、前記アップデータデバイスを認証する認証ステップは、変数を含むメッセージを前記アップデータデバイスに送信するステップと、第２認証データを受け取るステップと、前記変数及び前記不揮発性メモリに格納されたキーに応じて第１認証データを決定する決定ステップと、前記第１認証データと前記第２認証データとを比較するステップとを備える。
【０００９】
このように、前記ブートプログラム自身はアップデータデバイスの認証を完了するために必要なすべての命令を備える。このオペレーティングシステムのアップデートは、不揮発性メモリが全くオペレーティングシステムを含んでいないとき、又は、例えば、以前のアップデート試行が成功していない期間のように、オペレーティングシステムがインアクティブになっているときに、開始され又は継続されることが可能である。
【００１０】
前記ブートブログラムは、前記キー及び前記変数に応じた暗号化データを含むメッセージを前記アップデータデバイスに送信するステップを実行するための命令をさらに備えることができる。
【００１１】
これにより、アップデータデバイスがセキュアエレメントを認証できる。従って、セキュアエレメントとアップデータデバイスとの相互認証が完了する。これにより、セキュアに認証されたエレメントのみがオペレーティングシステムの新規バージョンを取得できる。
【００１２】
１つの実施形態によれば、前記不揮発性メモリは、前記変数を含むメッセージを前記アップデータデバイスに送信するステップと、前記第２認証データを受け取るステップと、必要に応じ、前記キー及び前記変数に応じた暗号化データを含むメッセージを前記アップデータデバイスに送信するステップとを実行するための命令を含むオペレーティングシステムを備える。
【００１３】
この場合、不揮発性メモリがアクティブなオペレーティングシステムを備えていると、このオペレーティングシステムは、前記ブートプログラムと共同で、前記の認証に関与させる命令を備える。このため、セキュアエレメントの通常動作の期間に、その動作がオペレーティングシステムによって管理されているときに、オペレーティングシステムのアップデートが開始される。
【００１４】
前記格納ステップは、暗号化された前記新規なオペレーティングシステムの受取りを備えることができる。
【００１５】
これにより、アップデータデバイスとセキュアエレメントとの間の通信を傍受するサードパーティはオペレーションシステムの新規バージョンを取得できない。
【００１６】
この場合、前記認証ステップは、前記キー及び前記変数に応じたセッションキーの決定を備えることができ、前記格納ステップは、前記セッションキーで暗号化された新規なオペレーティングシステムの受取りを備えることができる。
【００１７】
同一のセッションキーを暗号化された認証及び通信に用いるので、セキュアエレメントに必要な暗号のリソースが限定される。
【００１８】
セキュリティ及び信頼性に関する理由から、前記ブートプログラムは好ましくは変更不能に格納されている。
【００１９】
例えば、前記ブートプログラムは前記不揮発性メモリの書換不能部に格納されている。
【００２０】
変形例として、前記ブートプログラムは前記不揮発性メモリの書換可能部に格納され、前記不揮発性メモリは前記ブートプログラムへの書き込みコマンドをブロックするように構成されたオペレーティングシステムを含む。
【００２１】
また、本発明は、少なくとも１つのマイクロプロセッサ、不揮発性メモリ、及び本発明に係るセキュアエレメントを備えるターミナルであって、前記ターミナルの前記不揮発性メモリは、アップデートマネジメントプログラム及び前記セキュアエレメントによって提供されるサービスを用いるために設計されたアプリケーションを備え、前記アップデートマネジメントプログラムは、命令であって、当該命令が前記ターミナルの前記マイクロプロセッサによって実行されているときに、アップデータデバイスの新規なオペレーティングシステムの受取り及び受け取った前記新規なオペレーティングシステムの前記セキュアエレメントへの送付を含む伝送ステップと、少なくとも前記伝送ステップの間に前記サービスを非動作状態にするデアクティベーションステップとを実行するための命令を備える、ターミナルを提案する。
【００２２】
また、本発明は、少なくとも１つの本発明に係るセキュアエレメントと、オペレーティングシステムの新規バージョンを格納しているアップデータデバイスと、を備えるシステムを提供する。
【００２３】
本発明の他の特徴及び利点は、非限定的な特徴を有する実施形態を示す添付の図を参照してなされる以下の説明から明らかになるであろう。
【図面の簡単な説明】
【００２４】
【図１】本発明の一の実施形態に係るセキュアエレメントを含むシステムを説明する図
【図２】図１のセキュアエレメントのブートプログラムの実行に係るメインステップを説明する図
【図３】セキュアエレメントのオペレーティングシステムをアップデートする間における図１のシステムのインタラクションを説明する図
【図４】図４Ａ、図４Ｂ、図４Ｃ、及び図４Ｄは、異なる時間において図１のセキュアエレメントの不揮発性メモリの状態を説明する図
【図５】図５Ａ、図５Ｂ、図５Ｃ、及び図５Ｄは、コマンド処理を説明するために図１のセキュアエレメントの不揮発性メモリを説明する図
【図６】オペレーティングシステムの暗号化された新規バージョンを含むブロックを決定するための一例を説明する図
【図７】オペレーティングシステムの暗号化された新規バージョンを含むブロックを決定するための一例を説明する図
【発明を実施するための形態】
【００２５】
図１は、アップデータデバイス１０、ターミナル２０、及びターミナル２０に組み込まれたセキュアエレメント３０を備えるシステムを示す。
【００２６】
アップデータデバイス１０は物理的なコンピュータのアーキテクチャを有し、特に、マイクロプロセッサ１１、通信インターフェース１２、揮発性メモリ１３、及び不揮発性メモリ１４を備える。マイクロプロセッサ１１は、揮発性メモリ１３を作業空間として用いることによって、不揮発性メモリ１４に格納されたコンピュータプログラムを実行することができる。通信インターフェース１０は、ターミナル２０と通信する。
【００２７】
不揮発性メモリ１４は、特に、秘密キーＫとともに、ＯＳ（Ｖ２）と示されている、セキュアエレメントのオペレーティングシステムの新規バージョンを格納している。
【００２８】
アップデータデバイス１０は、例えば、セキュアエレメントの製造者の敷地に設けられたアップデートサーバーである。この場合、通信インターフェース１２は、例えばインターネットのような通信ネットワークを通じたターミナル２０との通信をセットアップする。変形例では、アップデータデバイス１０そのものが、例えばＳＤカード、ＮＦＣカード、又はＵＳＢメモリのようなセキュアエレメントである可能性がある。この場合、通信インターフェース１２は、セキュアエレメントリーダを通じてターミナル２０との通信をセットアップする。
【００２９】
ターミナル２０は、例えば、携帯電話のようにユーザに付属して持ち運び可能なターミナルである。
【００３０】
ターミナル２０は、物理的なコンピュータのアーキテクチャを有し、特に、マイクロプロセッサ２１、通信インターフェース２２、揮発性メモリ２３、不揮発性メモリ２４、及び通信インターフェース２６を備える。マイクロプロセッサ２１は、揮発性メモリ２３を作業空間として用いることによって、不揮発性メモリ２４に格納されたコンピュータプログラムを実行する。通信インターフェース２２は、アップデータデバイス１０と通信する。通信インターフェース２６は、セキュアエレメント３０と通信する。
【００３１】
不揮発性メモリ２４は、特に、ターミナル２０のオペレーティングシステム２５、アップデートマネジメントプログラムＰ１、並びにユーザのデータ及びアプリケーションを格納している。アプリケーションＡ１が示されている。
【００３２】
プログラムＰ１の機能は、セキュアエレメント３０のオペレーティングシステムをアップデートするために、セキュアエレメント３０とアップデータデバイス１０との間の通信を管理することである。プログラムＰ１は、図１に示されているように、好ましくは、ターミナル２０のオペレーティングシステム２５に組み込まれたモジュールである。
【００３３】
セキュアエレメント３０は、例えば、ターミナル２０に取り外し可能に収容されたスマートカードである。
【００３４】
セキュアエレメント３０は、物理的なコンピュータのアーキテクチャを有し、特に、マイクロプロセッサ３１、通信インターフェース３６、揮発性メモリ３３、及び不揮発性メモリ３４を備える。マイクロプロセッサ３１は、揮発性メモリ３３を作業空間として用いることによって、不揮発性メモリ３４に格納されたコンピュータプログラムを実行する。通信インターフェース３６は、ターミナル２０と通信する。
【００３５】
不揮発性メモリ３４は、特に、ブートプログラム３８（《ブートローダ》としてＢＬと示されている）、オペレーティングシステム３５、ユーザデータ３７、ＭＫiキー、シリアルナンバーＮi、オペレーティングシステム３５のステータスインジケータ３９、認証カウンタＣの値を示す変数７０を格納している。
【００３６】
図示された状態において、オペレーティングシステム３５は、アップデータデバイス１０によって格納されたバージョンＯＳ（Ｖ２）とは異なる、ＯＳ（Ｖ１）と示された第１バージョンである。
【００３７】
オペレーティングシステム３５のステータスインジケータ３９は《アクティブ》又は《インアクティブ》の値をとる。それは、例えば、オペレーティングシステム３５に格納されたステータスビット又は不揮発性メモリ３４に格納された別のものであり得る。その役割を以下に説明する。
【００３８】
認証カウンタＣは、例えば５０である所定値に初期化される。オペレーティングシステムのアップデートプロセスの間に、カウンタＣはデクリメントされる。アップデートプロセスを完了したときに、それが成功していなければ、カウンタは再び初期化される。カウンタＣの値が例えば３である特定の閾値以下に減少する場合、このことはあまりに多くのオペレーティングシステム３５のアップデート試行が失敗したことを意味する。この場合、アップデートプロセスがブロックされる。アップデータデバイス１０との通信によってオペレーティングシステム３５をアップデートすることはもはやできない。しかしながら、特別なアクセス権限を有するサービスプロバイダーに頼んで、セキュアエレメントを再度初期化し、新しいオペレーティングシステムをそこにロードすることはできる。
【００３９】
キーＭＫi及びシリアルナンバーＮiは、アップデータデバイス１０によって格納された秘密キーに対応し、例えば、ブートプログラム３８に格納されている。より詳細に、アップデータデバイス１０は、秘密を維持する手続に従って、セキュアエレメントiのシリアルナンバーＮiに対応しているキーＭＫiを決定するための導出手段を備える。図示されていないが、変形例において、アップデータデバイス１０は、複数のセキュリティエレメントのキーＭＫi及びシリアルナンバーＮiを格納している。どちらの場合も、アップデータデバイス１０は、シリアルナンバーＮiに関連したキーＭＫiを決定できる。
【００４０】
ユーザデータ３７は、特にアプリケーションを備える。そのうちの、アプリケーションＡ２が示されている。その１セットの個人データＤ１が示されている。オペレーティングシステム３５はセキュアエレメント３０に格納されたアプリケーションを管理できる。これらのアプリケーションは、例えば、支払又は輸送サービスに対するアクセスを付与するアプリケーションであり、ＮＦＣタイプのターミナル２０の通信インターフェースを使用する。
【００４１】
ブートプログラム３８は、特に、ブートプログラム３８とオペレーティングシステム３５との間で、それらの実行中に、インタラクションを行うプログラミングインターフェースＡＰＩを含む。
【００４２】
ターミナル２０とセキュアエレメント３０と間の通信インターフェース２６、３６を介した通信は、例えば、規格ＩＳＯ／ＩＥＣ７８１６−４に準拠するＡＤＰＵユニットエクスチェンジに基づいている。
【００４３】
マイクロプロセッサ３１はセキュアエレメント３０が起動する間に、ブートプログラム３８を実行するように構成されている。通常動作において、ブートプログラム３８は、オペレーティングシステム３５の実行を開始する。オペレーティングシステム３５は、アプリケーションの実行とインターフェース３６から受取ったコマンドの解釈とを管理する。
【００４４】
ブートプログラム３８は、変更不能に格納されている。例えば、ブートプログラム３８は、ＲＯＭタイプの不揮発性メモリ３４の一部に格納されている。この場合、ブートプログラム３８は、セキュアエレメント３０を動作させる間にオペレーティングシステム３５をロードするために、セキュアエレメント３０の製造者によって使用された初期ブートプログラムの一部であり得る。変形例によれば、ブートプログラム３８は、例えばフラッシュメモリタイプである書き換え可能な不揮発性メモリ２４の一部に格納されている。この場合、オペレーティングシステム３５は、メモリのこの部分に対するいかなる書き込みコマンドもブロックするように構成されている。
【００４５】
図１のシステムの動作、特に、第１バージョンＯＳ（Ｖ１）を第２バージョンＯＳ（Ｖ２）に置き換えるためのオペレーティングシステム３５のアップデート方法を説明する。
【００４６】
図２は、ブートプログラム３８の実行に対応する、セキュアエレメント３０の動作手順の主要なステップを示す、ステップ図である。図３は、図２の動作手順の間に、アップデータデバイス１０、ターミナル２０、及びセキュアエレメント３０の間で交換されるメッセージを示す図である。
【００４７】
この動作手順は、セキュアエレメント３０の起動の間に、ステップＥ０で始まる。先に説明したとおり、マイクロプロセッサ３１はセキュアエレメント３０の起動の間にブートプログラム３８の実行を開始するように構成されている。例えば、ブートプログラム３８は、スタートアップセクターと呼ばれるマイクロプロセッサ３１が最初に参照する不揮発メモリ３４の所定位置に存在している。
【００４８】
次に、ステップＥ１にて、セキュアエレメント３０はオペレーティングシステム３５がアクティブであるか否か決定する。より詳細に、不揮発性メモリ３４がオペレーティングシステム３５を含み、かつ、ステータスインジケータ３９が《アクティブ》の値を示すときには、オペレーティングシステム３５がアクティブであると考えられる。逆に、不揮発性メモリ３４がオペレーティングシステム３５を全く含まず、又は、ステータスインジケータ３９が《インアクティブ》の値を示すときには、オペレーティングシステム３５はインアクティブであると考えられる。
【００４９】
オペレーティング３５がアクティブであるときに、ステップＥ１２において、ブートプログラム３８は、オペレーティングシステム３５の実行を開始する。これは、セキュアエレメント３０の通常動作モードに対応し、この間に、オペレーティングシステム３５が通信インターフェース３６において受け取ったアプリケーション及びコマンドを実行する。
【００５０】
逆に、オペレーティングシステム３５がインアクティブであるとき、ブートプログラム３８はオペレーティングシステム３５の実行を開始しない。言い換えれば、ブートプログラム３８は、制御を維持する。この結果、特に、通信インターフェース３６で受け取ったコマンドがブートプログラム３８によって管理される。
【００５１】
これにより、ターミナル２０のアップデートマネジメントプログラムＰ１が、オペレーティングシステム３５のアップデートプロセスを開始するためのメッセージＭ３及びメッセージＭ４を送信するときに、これらのメッセージＭ３及びＭ４は、オペレーティングシステム３５がインアクティブの場合はブートプログラム３８（ステップＥ２）によって、又は、オペレーティングシステム３５がアクティブの場合はオペレーティングシステム３５（ステップＦ２）によって、受け取られる。オペレーティングシステム３５のアップデートプロセスを、以下に、オペレーティングシステム３５がインアクティブである場合（ステップＥ２〜Ｅ１１）について最初に説明し、その後に、オペレーティングシステム３５アクティブである場合（ステップＦ２〜Ｆ５、Ｅ１３、Ｅ１４、Ｆ８、Ｅ１５、及びＥ９〜Ｅ１１）について説明する。
【００５２】
図３を参照すると、ターミナル２０がメッセージＭ１をアップデータデバイス１０に送ってオペレーティングシステムの利用可能な最新バージョンについて問い合わせる。メッセージＭ１の送信は、プログラムＰ１の実行の一部を構成し、例えば、定期的に又は所定の条件が満たされたときに行われる。
【００５３】
アップデータデバイス１０は、利用可能なバージョン：Ｖ＝Ｖ２を特定するメッセージＭ２によって、メッセージＭ１に応答する。
【００５４】
次に、ターミナル２０は、アップデートするアプリケーション、すなわち、ステップＥ２とそれに続くステップ又はステップＦ２とそれに続くステップの実行に役割を有する、ブートプログラム３８又はオペレーティングシステム３５の一部を選択するために、セキュアエレメント３０にメッセージＭ３を送信する。メッセージＭ３は、例えば、《OS loader Application Selection》と呼ばれるＡＤＰＵタイプの新しく定義されたコマンドである。
【００５５】
その後、ターミナル２０はメッセージＭ４をセキュアエレメント３０に送って新しいバージョンＶ２が利用可能であることを知らせる。メッセージＭ４は、ステップＥ２において、セキュアエレメント３０によって受け取られる。より詳細に、オペレーティングシステムがインアクティブである本例では、メッセージＭ４はブートプログラム３８によって直接管理されている。メッセージＭ４は、例えば、《PUSH AVAILABLE VERSION》と呼ばれるＡＤＰＵタイプの新しく定義されたコマンドである。
【００５６】
次に、ステップＥ３において、セキュアエレメント３０はオペレーティングシステムのバージョンを決定する。例えば、ブートプログラム３８は、ＡＰＩプログラミングインターフェースを用いてオペレーティングシステム３５に応答を促す。オペレーティングシステム３５が存在する場合、そのバージョンＶを与えて応答する。オペレーティングシステムが存在しない場合、ブートプログラム３８は、製造者によってセキュアエレメント３０に最初にロードされたオペレーティングシステム３５のバージョンに対応する、格納しているデフォルトのバージョンを考慮する。セキュアエレメント３０は、メッセージＭ４で受け取られたバージョンＶが、現在のオペレーティングシステム３５の現在のバージョン、すなわち、本例ではＶ１に優っているか確認する。
【００５７】
メッセージＭ４で受け取ったバージョンＶがオペレーティングシステム３５の現在のバージョンに優っている場合、その後のステップＥ４にて、セキュアエレメント３０は、メッセージＭ５をアップデータデバイス１０に、そのメッセージをメッセージＭ５’に拡張するターミナル２０を用いて、送信する。メッセージＭ５は、セキュアエレメント３０のシリアルナンバーＮi、乱数ＲＡＮＤ、及び認証カウンタＣ（変数７０）を含んでいる。
【００５８】
メッセージＭ５’に含まれるシリアルナンバーＮiに応じて、アップデータデバイス１０は、上述の導出手続に従ってシリアルナンバーＮi及び秘密キーＫに応じて、又は、受け取ったシリアルナンバーＮiに基づいて格納しているキーＭＫiを調べることによって、対応するキーＭＫiを決定する。次に、アップデータデバイス１０は、決定されたキーＭＫi及び受け取った乱数ＲＡＮＤに応じてセッションキーＳＫを、セッションキーＳＫで乱数ＲＡＮＤを暗号化することによって認証データＡＵＴＨ10を決定する。アップデータデバイス１０は、認証データＡＵＴＨ10を含むメッセージＭ６を、そのメッセージをメッセージＭ６’に拡張するターミナル２０を用いて、セキュアエレメント３０へ送る。メッセージＭ６’は、例えば、《MUTUAL AUTHENTICATION》と呼ばれる、ＡＤＰＵタイプの新しく定義されたコマンドである。
【００５９】
メッセージＭ６’は、ステップＥ５において、セキュアエレメント３０によって受け取られる。メッセージＭ６’の受取りに応じて、セキュアエレメント３０は、ステップＥ６において、通常はアップデータデバイス１０によって決定されたセッションキーＳＫと同一であるセッションキーＳＫを、マスターキーＭＫi及び乱数ＲＡＮＤに応じて決定し、かつ、決定されたセッションキーＳＫで乱数ＲＡＮＤを暗号化して認証データＡＵＴＨ30を決定する。また、セキュアエレメント３０は、認証カウンタＣをデクリメントする。
【００６０】
次に、ステップＥ７において、セキュアエレメント３０は、認証データＡＵＴＨ10と認証データＡＵＴＨ30とを比較する。これらが一致する場合、セッションキーＳＫが定まるとともに、セキュアエレメント３０によるアップデータデバイス１０の認証が完了する。
【００６１】
認証された場合、ステップＥ８において、セキュアエレメント３０は、メッセージＭ７を、そのメッセージをメッセージＭ７’に拡張するターミナル２０を用いて、アップデータデバイス１０へ送る。メッセージＭ７はセッションキーＳＫで暗号化され、ステップＥ３で決定されたオペレーティングシステム３５の現在のバージョンＶ１を含む。
【００６２】
メッセージＭ７’の受取りは、アップデータデバイス１０がセキュアエレメント３０を認証することを可能にする。例えば、バージョンが２オクテットにコードされ、暗号化されていないメッセージが１６オクテットで構成されている場合、アップデータデバイス１０は、暗号化されていないメッセージＭ７’最初の１４オクテットがゼロであることを確認することによってセキュアエレメント３０を認証できる。これにより、セキュアエレメント３０とアップデータデバイス１０との間の相互認証が完了する。
【００６３】
次に、アップデータデバイス１０は、Ｎブロック  ＯＳＢ１、ＯＳＢ２、…ＯＳＢＮを決定する。各ブロックは、セッションキーＳＫで暗号化されたオペレーティングシステムの一部を構成する。ナンバーＮは、ブロックのサイズがＡＤＰＵタイプの単一のコマンドで送信されるために十分に制限されるように選択されている。アップデータデバイス１０は、１以上のメッセージＭ８で、所定のブロックをターミナル２０へ送る。ターミナル２０は、全てのブロックを受け取るまで受け取ったブロックを格納する。
【００６４】
次に、ターミナル２０は、ひと続きのメッセージＭ９1、Ｍ９2、…Ｍ９Nをセキュアエレメント３０へ送る。各メッセージＭ９1、Ｍ９2、…Ｍ９Nは、ブロックＯＳＢ１、ＯＳＢ２、…ＯＳＢＮの一つを含んでいる。各ブロックは、セキュアエレメント３０によって、セッションキーＳＫを用いて復号され、オペレーティングシステム３５のバージョンＶ１の場所に格納される。
【００６５】
各メッセージＭ９j（ｊは１〜Ｎ−１）は、例えば、《LOAD BLOCK》と呼ばれる新しく定義されたＡＤＰＵタイプのコマンドであり、これに対しセキュアエレメント３０は応答メッセージＭ９j’によって応答する。メッセージＭ９Nは、例えば、《LOAD LAST BLOCK》と呼ばれる新しく定義されたＡＤＰＵタイプのコマンドである。セキュアエレメント３０によるメッセージＭ９1、Ｍ９2、…Ｍ９Nの受取りは、オペレーティングシステムの新規バージョンの受取りステップＥ９を構成する。
【００６６】
最後のメッセージＭ９Nの受取りの後、ステップＥ１０において、例えば、巡回冗長コントロールテストによって、セキュアエレメント３０は受取ったオペレーティングシステムの新規バージョンの確認を行う。
【００６７】
テストがステップＥ１１において成功する場合、セキュアエレメント３０は、カウントＣを再初期化し、オペレーティングシステム３５をアクティブにして実行を開始する。これにより、この段階で、オペレーティングシステム３５の新規バージョンがセキュアエレメント３０によって実行される。
【００６８】
ステップＥ１において、オペレーティングシステム３５がアクティブであると決定された場合、その動作は上記で説明した動作と類似しており、主な相違点をここで説明する。ステップＥ１２において、セキュアエレメント３０はオペレーティングシステム３５を実行する。これにより、上記で説明したように、受取ったメッセージＭ４は、オペレーティングシステム３５によって管理される。図２のステップＦ２〜Ｆ５は上記のステップＥ２〜Ｅ５に対応し、プログラム３８ではなく、オペレーティングシステム３５の命令の実行に対応する。
【００６９】
認証データＡＵＴＨ10の受取りの後、オペレーティングシステム３５は、ステップＥ６及びステップＥ７に類似するステップＥ１３及びステップＥ１４の間に認証データＡＵＴＨ10を確認するために、プログラミングインターフェースＡＰＩを用いてブートプログラム３８を探索する。次に、ステップＦ８において、メッセージＭ７によってオペレーティングシステム３５が応答する。その後、オペレーティングシステム３５は、ステップ１５において、ブートプログラム３８を渡す。
【００７０】
ステップＥ１５において、ブートプログラム３８はオペレーティングシステム３５をインアクティブにする。例えば、ブートプログラムは不揮発性メモリ３４のオペレーティングシステム３５を消去し、又は、ステータスインジケータ３９の値を《インアクティブ》に変更する。以降のステップＥ９〜Ｅ１１は上記で説明したものと同様である。
【００７１】
ステップＥ１〜ステップＥ１５は、マイクロプロセッサ３１による、ブートプログラム３８の命令の実行に該当する。ステップＦ２〜Ｆ５、及びＦ８は、マイクロプロセッサ３１によるオペレーティングシステム３５の命令の実行に該当する。
【００７２】
図４Ａ〜図４Ｄは、セキュアエレメント３０の製造工程及びオペレーティングシステム３５のアップデートの異なる場面における不揮発性メモリ３４の内容を示す。図４Ａ及び図４Ｂは、本例では、不揮発性メモリ３４が例えばフラッシュメモリタイプの書換可能部４０と、ＲＯＭタイプの書換不能部４１を備えることを示す。
【００７３】
図４Ａは、不揮発性メモリ３４の初期状態を示す。書換可能部４０は空であり、書換不能部４１はカードの製造者の初期のブートプログラムを備える。この初期状態で、マイクロプロセッサ３１は、矢印４２によって示されているように、セキュアエレメント３０を起動する間にこの初期のブートプログラムの実行を開始するように構成されている。初期のブートプログラムの機能は、ブートプログラム３８のロードを可能にすることであり、製造者によるセキュアエレメント３０の個別化の間に、不揮発性メモリ３４の書換可能部４０へオペレーティングシステム３５及びユーザデータ３７を組み込む。
【００７４】
図４Ｂは、製造者によってセキュアエレメント３０の個別化の後の不揮発性メモリ３４の状態を示す。書換可能部４０は、ブートプログラム３８、オペレーティングシステム３５（バージョンＯＳＬ（Ｖ１））、ユーザデータ３７、及び非使用領域４４を備える。書換不能部４１の初期のブートプログラムはインアクティブにさせられ、マイクロプロセッサ３１は、矢印４３によって示されているように、セキュアエレメント３０を起動する間にブートプログラム３８の実行を開始するように構成されている。この状態において、矢印４５によって示されるように、オペレーティングシステム３５がアクティブになり、これによりブートプログラム３８はオペレーティングシステム３５の実行を開始する。これは、上記のステップＥ０、Ｅ１、及びＥ１２に相当する。
【００７５】
図４Ｃは、オペレーティングシステム３５のアップデートプロセスにおける不揮発性メモリ３４の書換可能部４０を説明する。より詳細に、図４Ｃの状態において、ステータスインジケータ３９の削除又は変更によって、オペレーティングシステム３５はインアクティブにされる（図２のステップＥ１５）。ブートプログラム３８は、矢印４６によって示されるようにメッセージＭ９iを受取り、矢印４７によって示されるように、このメッセージを含むブロックＯＳＢiを、オペレーティングシステム３５の以前のバージョンの場所に格納する。これは、図２のステップＥ９に相当する。
【００７６】
図４Ｄは、オペレーティングシステム３５のアップデート（図２のステップＥ１１）の後の不揮発性メモリ３４の書換可能部４０を示す。書換可能部４０は、ブートプログラム３８、バージョンＯＳ（Ｖ２）のオペレーティングシステム３５、ユーザデータ３７、及び非使用領域４４を備える。バージョンＯＳ（Ｖ１）のオペレーティングシステム３５とバージョンＯＳ（Ｖ２）のオペレーティングシステム３５は必ずしも同一のサイズを有するものではないので、非使用領域４４は、図４Ｄと図４Ｂとの間で異なるサイズとなる可能性がある。説明された状態において、オペレーティングシステム３５はアクティブである。マイクロプロセッサ３１は、矢印４３によって示されているように、セキュアエレメントを起動する間にブートプログラム３８の実行を開始する。この状態において、オペレーティングシステム３５はアクティブにされ、これにより、矢印４５によって示されているようにオペレーティングシステム３５の実行が開始される。
【００７７】
図５Ａ〜図５Ｄは、セキュアエレメント３０による、メッセージＭ４（ＡＤＰＵコマンド《PUSH AVAILABLE VERSION》）の処理及びメッセージＭ６’（ＡＤＰＵコマンド《MUTUAL AUTHENTICATION》）の処理の例を説明する。
【００７８】
特に、図５Ａは、オペレーティングシステム３５がアクティブであるときの、メッセージＭ４（ＡＤＰＵコマンド《PUSH AVAILABLE VERSION》）の処理を示す。従って、メッセージＭ４の受取りは、図２のステップＦ２に相当する。メッセージＭ４に応じて、オペレーティングシステム３５は、オペレーティングシステム３５のバージョンを決めるためにブートプログラム３８を探索する（矢印５０）。ブートプログラム３８は、その後、オペレーティングシステム３５のバージョン情報を確認し（矢印５１）、オペレーティングシステムに応答する（矢印５２）。これらのやり取りは、プログラミングインターフェースＡＰＩによってなされる。次に、オペレーティングシステム３５はメッセージＭ５によって応答する。これは、図２のステップＦ４に相当する。
【００７９】
比較ために、図５Ｂは、オペレーティングシステム３５がインアクティブであるときの、メッセージＭ４（ＡＤＰＵコマンド《PUSH AVAILABLE VERSION》）の処理を示す。本例では、オペレーティングシステム３５は削除されている。メッセージＭ４の受取りは、図２のステップＥ２に相当する。メッセージＭ４に応じて、ブートプログラム３８はオペレーティングシステム３５のバージョンを決定するためにオペレーティングシステム３５の探索を試みる（矢印５３）。オペレーティングシステム３５は削除されているので、ブートプログラム３８は返答を受取れず、従って、それが格納しているデフォルトのバージョンを使用する。次に、ブートプログラム３８はメッセージＭ５によって応答する。これは、図２のステップＥ４に相当する。
【００８０】
図５Ｃは、オペレーティングシステム３５がアクティブであるときの、メッセージＭ６’（ＡＤＰＵコマンド《MUTUAL AUTHENTICATION》）の処理を示す。従って、メッセージＭ６’の受取りは図２のステップＦ５に相当する。メッセージＭ６’に応じて、オペレーティングシステム３５は、アップデータデバイス１０の認証データＡＵＴＨ10を確認するために、ブートプログラム３８を探索する（矢印５４）。ブートプログラム３８は、マスターキーＭＫiを用いることによって認証データＡＵＴＨ10を確認する（矢印５６）。これは、図２のステップＥ１３及びステップＥ１４に相当する。ブートプログラム３８はオペレーティングシステムに対する認証を行う（矢印５５）。次に、オペレーティングシステム３５はメッセージＭ７によって応答する。これは、図２のステップＦ８に相当する。
【００８１】
比較のために、図５Ｄはオペレーティングシステム３５がインアクティブであるときのメッセージＭ６’の処理（ＡＤＰＵコマンド《MUTUAL AUTHENTICATION》）を示す。従って、メッセージＭ６’の受取りは、図２のステップＥ５に相当する。メッセージＭ６’に応じて、ブートプログラム３８はマスターキーＭＫiを用いることによって認証データＡＵＴＨ10を確認する(矢印５７)。これは、図２のステップＥ６及びステップＥ７に相当する。ブートプログラム３８は、認証を確認し、メッセージＭ７によって応答する。これは、図２のステップＥ８に相当する。
【００８２】
図２及び図３を参照して、セキュアエレメント３０とアップデータデバイス１０との間の相互認証及び暗号化通信の実現について説明する。エキスパートは、これらの機能を実行するのに適したキー及び暗号アルゴリズムのためのフォーマットを選択できる。この非限定的な例を以下に説明する。
【００８３】
アップデータデバイス１０は、３２オクテットのシークレットキーＫを格納する。１６オクテットのシリアルナンバーＮiを受取るとき、アップデータデバイス１０は、シリアルナンバーがＮiのセキュアエレメント３０に対応する３２オクテットのキーＭＫiを、Ｋ及びＮiに応じて決定できる。Ｋ及びＮiに応じてＭＫiを計算するためのアルゴリズムは、システムの設計者によって選択され、セキュリティ性を向上するため機密にされる。シリアルナンバーＮiの使用は、異なるセキュアエレメントに対する認証データ及び暗号を異ならせる。セキュアエレメントは、キーＭＫiを直接格納し、このため、Ｋ及びＮiに応じてＭＫiを計算する必要はない。
【００８４】
セッションキーＳＫは、アルゴリズムＡＥＳ−２５６を用いて、キーＭＫi及び３２オクテットの乱数ＲＡＮＤに応じて決定される可能性がある。アップデータデバイス１０及びセキュアエレメント３０はＳＫ＝ＡＥＳ−２５６（ＭＫi，ＲＡＮＤ）を計算する。
【００８５】
乱数ＲＡＮＤの代わりに、別の変数（擬似乱数、日付、インクリメンタルナンバー…）が使用される可能性がある。
【００８６】
また、認証データＡＵＴＨ10及び認証データＡＵＴＨ30は、セッションキーＳＫ及び乱数ＲＡＮＤに応じて、アルゴリズムＡＥＳ−２５６を用いて決定される可能性がある。これにより、アップデータデバイス１０は、ＡＵＴＨ10＝ＡＥＳ−２５６（ＳＫ，ＲＡＮＤ）を計算する。同様に、セキュアエレメント３０はＡＵＴＨ30＝ＡＥＳ−２５６（ＳＫ，ＲＡＮＤ）を計算する。受取った認証データＡＵＴＨ10と決定された認証データＡＵＴＨ30とを比較することによって、セキュアエレメント３０はアップデータデバイス１０の認証を完了する。
【００８７】
セキュアエレメント３０によってアップデータデバイス１０へ送られたメッセージＭ７は、アルゴリズムＡＥＳ−２５６−ＣＢＣ−ＩＳＯ９７９７−Ｍ１を用いてセッションキーＳＫによって暗号化されたオペレーティングシステム３５の現在バージョンＶ１を備え、Ｍ７＝ＡＥＳ−２５６−ＣＢＣ−ＩＳＯ９７９７−Ｍ１（ＳＫ，Ｖ１）である。これにより、アップデータデバイス１０によるセキュアエレメント３０の認証が可能になる。この趣旨で、ＣＢＣモード《Cipher-block chaining》が用いられ、かつＩＣＶ暗号が用いられ、乱数ＲＡＮＤに基づいて決定される。例えば、ＩＣＶは、乱数ＲＡＮＤの１６中心オクテットにアルゴリズムＡＥＳ−２５６を適用することによって決定される。
【００８８】
これにより、セキュアエレメント３０とアップデータデバイス１０との間の相互認証を完了できる。
【００８９】
図６及び図７は、暗号化されたオペレーティングシステム３５の新規バージョンＯＳ（Ｖ２）を含む、ブロックＯＳＢ１、ＯＳＢ２、…ＯＳＢＮのアップデータデバイス１０による決定の例を示す。
【００９０】
指定されたＯＳ（Ｖ２）であるオペレーティングシステムのコードは、マイクロプロセッサ３１によって実行可能な命令を特に含む非暗号化データのセットである。アップデータデバイス１０は、コードＯＳ（Ｖ２）の末端にインプリント６０を加える。インプリント６０は、例えば、アルゴリズムＳＨＡ−５１２によって決定される。
【００９１】
次に、アップデータデバイス１０は、暗証番号、コードＯＳ（Ｖ２）のサイズ６２、及びコードＯＳ（Ｖ２）のオペレーティングシステムのバージョン６３をコードＯＳ（Ｖ２）の始まりに加える。暗証番号６１は、例えば４オクテットにコードされており、アップデータデバイス１０及びセキュアエレメント３０に対して既知である。これにより、セキュアエレメント３０による、受取ったオペレーティングシステムの確認において、追加的なセキュリティが提供される。サイズ６１は、例えば４オクテットにコードされている。コードＯＳ（Ｖ２）のオペレーティングシステムのバージョン６３は、例えば、２オクテットコードされている。
【００９２】
次に、アップデータデバイス１０は、暗証番号６１、サイズ６２、バージョン６３、コードＯＳ（Ｖ２）、及びインプリント６１によって形成されたセットの末端に、１６の倍数Ｎであるオクテット総数に達するためのファイリングデータ６４（例えば、数オクテットの値《０》）を加える。これにより、暗号化されていないコードＯＳ（Ｖ２）を含む１６オクテットのＮブロックＤａｔａ１、Ｄａｔａ２、…ＤａｔａＮに形成されたすべてのデータを分割できる。
【００９３】
ブロックＤａｔａ１、Ｄａｔａ２、…ＤａｔａＮから、アップデータデバイス１０は、例えば、図７に示すように、暗号化コードＯＳ（Ｖ２）を含むブロックＯＳＢ１、ＯＳＢ２、…ＯＳＢＮを決定する。
【００９４】
図７において、ＩＣＶは乱数ＲＡＮＤに応じて決められた暗号である。例えば、ＩＣＶは、乱数ＲＡＮＤの１６中心のオクテットにアルゴリズムＡＥＳ−２５６を適用することによって決定される。
【００９５】
次に、ブロックＤａｔａ１、Ｄａｔａ２、…ＤａｔａＮの暗号化は、キーＳＫ及びＩＣＶ暗号を用いることによるＣＢＣ（《Cipher-block chaining》）モードのアルゴリズムＡＥＳ−２５６によって実行される。これにより、ＩＣＶ暗号とブロックＤａｔａ１とは、ＸＯＲ（排他論理和）演算によって組み合わせられる。次に、このＸＯＲ演算の結果は、セッションキーＳＫ及びブロックＯＳＢ１を決定するためのアルゴリズムＡＥＳ−２５６を用いることによって暗号化される。
【００９６】
ひと続きのブロックＤａｔａ（ｉ）のそれぞれに対し、ＩＣＶ暗号の代わりにブロックＯＳＢ（ｉ−１）を用いることによって、対応するブロックＯＳＢ（ｉ）が同じ様に決定される。
【００９７】
各ブロックＯＳＢ（ｉ）を受取った後で、図２のステップＥ９において、セキュアエレメント３０はセッションキーＳＫで受取ったデータを復号できる。次に、ステップＥ１０において、特にインプリント６０及び暗証番号６１を確認して破損を検知する。
【００９８】
図１のシステムは、いくつかの利点を有する。
【００９９】
特に、セキュアエレメント３０のオペレーティングシステム３５をアップデートできる。このアップデートは、セキュアエレメント３０が既に存在しつつ、ユーザのターミナル２０の操作としてなされ得る。ターミナル２０とアップデータデバイス１０との間の通信が通信ネットワークを通過する場合に、ユーザはサービス提供者のショップのような所定のサイトに行ってはいけない。オペレーティングシステム３５はその全体が交換され得る。アップデートの間に、ユーザデータ３７は変更されない。これにより、アップデートの後で、ユーザは、ユーザのアプリケーション及び個人的なデータを依然として有する。また、ターミナル２０の操作は遮られはいけない。
【０１００】
アップデータデバイス１０及びセキュアエレメント３０の相互認証及びアップデータデバイス１０とセキュアエレメント３０との間の暗号化通信のおかげで、サードパーティはオペレーティングシステムの新規バージョンＯＳ（Ｖ２）を取得すること、又は、アップデータデバイス１０を偽ることによってセキュアエレメント３０へ破損版を提供することができない。特に、ターミナル２０のプログラムＰ１が破損版に置き換えられたときに、この破損版はせいぜい暗号化されたブロックＯＳＢ（ｉ）を取得できるだけである。言い換えれば、オペレーティングシステムの秘密性及び完全性は保護される。これらの特徴により、セキュアエレメント３０及び／又はシステムの保証を確保できる。
【０１０１】
アップデータデバイス１０は、失敗した相互認証の試行をカウントできる。この数が所定の閾値に達したら、アップデータデバイス１０は、例えば、警告を送り、又は、そのセキュアエレメントをブラックリストに載せて、保護対策を講じる。
【０１０２】
相互認証及び暗号化はセキュアエレメントのシリアルナンバーに基づいているので、それらはセキュアエレメントによって多様化されている。従って、１つの欠陥がアップデータデバイスに接続されている全てのセキュアエレメントに影響を与えるわけではない。
【０１０３】
乱数ＲＡＮＤは、セキュアエレメントによって生成されており、アップデータデバイス１０によって生成されない。このことは、アップデータデバイスにかかる負荷を制限する。これは、多数のセキュアエレメントと関係するアップデータデバイスについて特に重要である。
【０１０４】
セキュアエレメントとアップデータデバイスとの相互認証及び暗号化通信に対する同一のセッションキーＳＫの使用は、セキュアエレメントのレベルにおいて、必要なリソースを限定する。しかし、変形例において、相互認証と暗号化通信とは異なるキーを用いる。
【０１０５】
ターミナル２０におけるプログラムＰ１の存在は、オペレーティングシステムのアップデートの間におけるターミナル２０の性能を変更する。例えば、セキュアエレメント３０のアプリケーションを用いる、ターミナル２０のアプリケーションは、アップデータの間は非動作状態にさせられる可能性がある。
【図１】
2014029688.tif 000003
【図２】
2014029688.tif 000004
【図３】
2014029688.tif 000005
【図４】
2014029688.tif 000006
【図５】
2014029688.tif 000007
【図６】
2014029688.tif 000008
【図７】
2014029688.tif 000009
【外国語明細書】
2014029688000001.pdf