(57)【特許請求の範囲】
【請求項１】
非接触デバイスのセキュアエレメントのセキュアエレメントネームスペース中にアプリケーションデータを書き込むための、コンピュータによって実行される方法であって、前記書き込みは、前記非接触デバイス上に常駐しかつ前記セキュアエレメントの外部にあるユーザインタフェースソフトウェアアプリケーションからの要求を用いて行われ、前記方法は、
前記セキュアエレメント中の制御ソフトウェアアプリケーションにより、ソフトウェアアプリケーションプロバイダからのソフトウェアアプリケーションに対して前記セキュアエレメントネームスペースの1つ以上のメモリブロックを割りあてることであって、前記セキュアエレメントネームスペースの前記１つ以上のメモリブロックが、アクセスキーにより読み出しアクセス種類および書き込みアクセス種類から保護され、前記アクセスキーが、前記セキュアエレメントネームスペースのアクセスメモリブロック中にて、前記制御ソフトウェアアプリケーションにより定義され、前記アクセスキーのコピーが、前記制御ソフトウェアアプリケーション中に維持されることと、
前記セキュアエレメントの前記１つ以上のメモリブロックに割りあてられた前記ソフトウェアアプリケーションについてのアプリケーションデータの要求および書き込みアクセス種類についてのアクセスキーを前記ユーザインタフェースソフトウェアアプリケーションからリモートトラステッドサービスマネージャ（ＴＳＭ）コンピュータへと送信することであって、前記アプリケーションデータは、前記セキュアエレメントネームスペースへと書き込まれるべきものである、ことと、
前記要求されたアプリケーションデータおよび前記要求されたアクセスキーを前記リモートＴＳＭコンピュータから前記非接触デバイスのセキュアメモリ中へと受信することと、
前記セキュアエレメント中の前記制御ソフトウェアアプリケーションにより、前記要求されたアプリケーションデータを前記セキュアメモリから前記ソフトウェアアプリケーションに割りあてられた前記セキュアエレメントネームスペースの前記１つ以上のデータメモリブロックへと書き込むことであって、前記セキュアエレメントネームスペースの前記データメモリブロックは、前記要求されたアクセスキーを用いて前記制御ソフトウェアアプリケーションによってアクセスされる、ことと、
を含む、方法。
【請求項２】
前記要求されたアプリケーションデータは、前記セキュアエレメント中において実行可能な前記ソフトウェアアプリケーションまたは前記セキュアエレメント中の前記ソフトウェアアプリケーションをサポートするために必要なデータのうち少なくとも１つを含む、
請求項１に記載の方法。
【請求項３】
前記ソフトウェアアプリケーションについてのアプリケーション識別子（ＡＩＤ）およびディレクトリアクセスキーを前記リモートＴＳＭコンピュータから前記セキュアメモリ中へと受信することであって、前記ディレクトリアクセスキーは、前記セキュアエレメントネームスペース中のディレクトリメモリブロック中のアプリケーションディレクトリテーブルへの書き込みに用いられる、ことと、
前記ソフトウェアアプリケーションの前記ＡＩＤおよび前記書き込まれたソフトウェアアプリケーションのメモリブロック位置を前記制御ソフトウェアアプリケーションによって前記アプリケーションディレクトリテーブルへと書き込むことであって、前記ディレクトリメモリブロックは前記ディレクトリアクセスキーを用いて前記制御ソフトウェアアプリケーションによりアクセスされる、ことと、
をさらに含む、請求項２に記載の方法。
【請求項４】
前記リモートＴＳＭコンピュータから新規のアクセスキーを前記セキュアメモリ中に受信することであって、前記新規のアクセスキーは、前記要求されたアクセスキーを上書きする、ことと、
前記制御ソフトウェアアプリケーションによって前記アクセスメモリブロック内において前記要求された第１のアクセスキーを前記新規の第１のアクセスキーで置換することであって、前記データメモリブロックおよび前記アクセスメモリブロックへの書き込みアクセスは、前記要求されたアクセスキーを用いて許可され、前記新規のアクセスキーのコピーが、前記制御ソフトウェアアプリケーション中に維持されることと、
をさらに含む、請求項１に記載の方法。
【請求項５】
前記セキュアエレメントは、前記セキュアメモリを含む、請求項１に記載の方法。
【請求項６】
前記セキュアエレメントの外部に常駐する前記ユーザインタフェースソフトウェアアプリケーションは、コンピュータのオペレーティングシステム上において実行し、前記コンピュータは、前記セキュアエレメントと、ユーザ入力を受け付けるための入力デバイスとを含む、請求項１に記載の方法。
【請求項７】
前記要求されたアプリケーションデータを一時メモリからデータメモリブロックへと書き込むことは、前記アプリケーションデータがソフトウェアアプリケーションである場合、インストールのステップを含み、これにより、外部のカードリーダーデバイスによってトランザクションを開始するために、前記ソフトウェアアプリケーションが前記セキュアエレメント内で実行するように構成される、請求項１に記載の方法。
【請求項８】
前記ＴＳＭコンピュータは、前記セキュアエレメントを含む前記非接触デバイスと無線周波数で通信する外部のカードリーダーデバイスである、請求項１に記載の方法。
【請求項９】
非接触デバイスのセキュアエレメントネームスペース中にアプリケーションデータを書き込むための、コンピュータによって実行されるシステムであって、前記書き込みは、前記セキュアエレメントの外部に常駐するユーザインタフェースソフトウェアアプリケーションからの要求を用いて行われ、前記システムは、
前記セキュアエレメントを含むコンピュータであって、前記コンピュータはユーザインタフェースソフトウェアアプリケーションを実行し、前記ユーザインタフェースソフトウ
ェアアプリケーションは、アプリケーションデータの要求および書き込みアクセス種類についてのアクセスキーをリモートトラステッドサービスマネージャ（ＴＳＭ）コンピュータへと送信し、前記アプリケーションデータは、前記セキュアエレメントネームスペースへと書き込まれるべきものである、コンピュータと、
前記コンピュータ中の一時メモリであって、前記一時メモリは、前記要求されたアプリケーションデータと、前記要求されたアクセスキーとを前記リモートＴＳＭコンピュータから受信する、一時メモリと、
制御ソフトウェアアプリケーションであって、前記制御ソフトウェアアプリケーションは、ソフトウェアアプリケーションプロバイダからのソフトウェアアプリケーションに対して前記セキュアエレメントネームスペースの１つ以上のメモリブロックを割り当て、かつ前記要求されたアプリケーションデータを前記一時メモリからの前記ソフトウェアアプリケーションに割りあてられた前記セキュアエレメントネームスペースの前記１つ以上のデータメモリブロックへと書き込むように前記セキュアエレメント中において動作し、前記セキュアエレメントネームスペースの前記１つ以上のデータメモリブロックは前記要求されたアクセスキーを用いて前記制御ソフトウェアアプリケーションによりアクセスされる、制御ソフトウェアアプリケーションと、
を含む、システム。
【請求項１０】
前記セキュアエレメントは、前記一時メモリを含む、請求項９に記載のシステム。
【請求項１１】
前記セキュアエレメントネームスペースの前記データメモリブロックは、アクセスキーにより読み出しアクセス種類および書き込みアクセス種類から保護され、前記アクセスキーは、前記セキュアエレメントネームスペースのアクセスメモリブロック中において定義される、請求項９に記載のシステム。
【請求項１２】
前記要求されたアプリケーションデータは、前記セキュアエレメント中において実行可能な前記ソフトウェアアプリケーションまたは前記セキュアエレメント中の既存のソフトウェアアプリケーションをサポートするために必要なデータを少なくとも含む、請求項９に記載のシステム。
【請求項１３】
前記一時メモリは、前記ソフトウェアアプリケーションについてのアプリケーション識別子（ＡＩＤ）およびディレクトリアクセスキーを前記リモートＴＳＭコンピュータから受信し、前記ディレクトリアクセスキーは、前記セキュアエレメントネームスペース中のディレクトリメモリブロック中のアプリケーションディレクトリテーブルへの書き込みに用いられ、
前記セキュアエレメント中の前記制御ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの前記ＡＩＤと、前記書き込まれたソフトウェアアプリケーションのメモリブロック位置とを前記アプリケーションディレクトリテーブル内へと書き込み、前記ディレクトリメモリブロックは前記ディレクトリアクセスキーを用いて前記制御ソフトウェアアプリケーションによりアクセスされる、
請求項１２に記載のシステム。
【請求項１４】
前記一時メモリは、前記リモートＴＳＭコンピュータから新規のアクセスキーを受信し、前記新規のアクセスキーは前記要求されたアクセスキーを置換するものであり、
前記セキュアエレメント中の前記制御ソフトウェアアプリケーションは、前記アクセスメモリブロック内において、前記要求されたアクセスキーを前記新規のアクセスキーと置換し、前記データメモリブロックおよび前記アクセスメモリブロックへの書き込みアクセスは、前記要求されたアクセスキーを用いて許可され、前記新規のアクセスキーのコピーが、前記制御ソフトウェアアプリケーション中にて維持される、
請求項９に記載のシステム。
【請求項１５】
前記要求されたアプリケーションデータを前記一時メモリからデータメモリブロックへと書き込むことは、前記アプリケーションデータがソフトウェアアプリケーションである場合、インストールのステップを含み、これにより、外部のカードリーダーデバイスによってトランザクションを開始するために、前記ソフトウェアアプリケーションが前記セキュアエレメント内で実行するように構成される、請求項９に記載のシステム。
【請求項１６】
前記ＴＳＭコンピュータは、前記コンピュータと無線周波数で通信する外部のカードリーダーデバイスである、請求項９に記載のシステム。
【請求項１７】
非接触デバイスであって、
セキュアエレメントネームスペースを含むセキュアエレメントと、
前記セキュアエレメントの外部に常駐するユーザインタフェースソフトウェアアプリケーションであって、前記ユーザインタフェースソフトウェアアプリケーションは、アプリケーションデータの要求および少なくとも書き込みアクセス種類についてのアクセスキーをリモートトラステッドサービスマネージャ（ＴＳＭ）コンピュータへと送信し、前記アプリケーションデータは、前記セキュアエレメントネームスペースへと書き込まれるべきものである、ユーザインタフェースソフトウェアアプリケーションと、
前記要求されたアプリケーションデータと前記要求されたアクセスキーとを前記リモートＴＳＭコンピュータから受信する一時メモリと、
ソフトウェアアプリケーションプロバイダからのソフトウェアアプリケーションに対して前記セキュアエレメントネームスペースの１つ以上のメモリブロックを割り当て、かつ前記要求されたアプリケーションデータを前記一時メモリから前記ソフトウェアアプリケーションに割りあてられた前記セキュアエレメントネームスペースの前記１つ以上のデータメモリブロックへと書き込む、前記セキュアエレメント中の制御ソフトウェアアプリケーションであって、前記セキュアエレメントネームスペースの前記１つ以上のデータメモリブロックは前記要求されたアクセスキーを用いて前記制御ソフトウェアアプリケーションによりアクセスされる、制御ソフトウェアアプリケーションと、
を含む、デバイス。
【請求項１８】
前記セキュアエレメントは、前記一時メモリを含む、請求項１７に記載のデバイス。
【請求項１９】
前記セキュアエレメントネームスペースの前記データメモリブロックは、アクセスキーによる読み出しアクセス種類および書き込みアクセス種類から保護され、前記アクセスキーは、前記セキュアエレメントネームスペースのアクセスメモリブロック内において定義される、請求項１７に記載のデバイス。
【請求項２０】
前記要求されたアプリケーションデータは、前記セキュアエレメント中において実行可能な前記ソフトウェアアプリケーションまたは前記セキュアエレメント中の既存のソフトウェアアプリケーションをサポートするために必要なデータを少なくとも含む、請求項１７に記載のデバイス。
【請求項２１】
前記一時メモリは、前記ソフトウェアアプリケーションについてのアプリケーション識別子（ＡＩＤ）およびディレクトリアクセスキーを前記リモートＴＳＭコンピュータから受信し、前記ディレクトリアクセスキーは、前記セキュアエレメントネームスペース中のディレクトリメモリブロック中のアプリケーションディレクトリテーブルへの書き込みに用いられ、
前記セキュアエレメント内の前記制御ソフトウェアアプリケーションは、前記ソフトウェアアプリケーションの前記ＡＩＤと、前記書き込まれたソフトウェアアプリケーションのメモリブロック位置とを前記アプリケーションディレクトリテーブル内に書き込み、前記ディレクトリメモリブロックは前記ディレクトリアクセスキーを用いて前記制御ソフトウェアアプリケーションによりアクセスされる、
請求項２０に記載のデバイス。
【請求項２２】
前記一時メモリは前記リモートＴＳＭコンピュータから新規のアクセスキーを受信し、前記新規のアクセスキーで前記要求されたアクセスキーが置換され、
前記制御ソフトウェアアプリケーションは、前記アクセスメモリブロック内において、前記要求されたアクセスキーを前記新規のアクセスキーで置換し、前記データメモリブロックおよび前記アクセスメモリブロックへの書き込みアクセスは、前記要求されたアクセスキーを用いて許可され、前記新規のアクセスキーのコピーが、前記制御ソフトウェアアプリケーション中に維持される、
請求項１７に記載のデバイス。
【請求項２３】
前記要求されたアプリケーションデータを前記一時メモリからデータメモリブロックへと書き込むことは前記アプリケーションデータがソフトウェアアプリケーションである場合、インストールのステップを含み、これにより、外部のカードリーダーデバイスによってトランザクションを開始するために、前記ソフトウェアアプリケーションが前記セキュアエレメント内で実行するように構成される、請求項１７に記載のデバイス。
【請求項２４】
前記ＴＳＭコンピュータは、前記デバイスと無線周波数通信する外部のカードリーダーデバイスである、請求項１７に記載のデバイス。
【請求項２５】
前記制御ソフトウェアアプリケーションが、前記セキュアエレメントネームスペースの前記アクセスメモリブロック中に定義される前記アクセスキーのコピーを維持する、請求項１１に記載のシステム。
【請求項２６】
前記制御ソフトウェアアプリケーションが、前記セキュアエレメントネームスペースの前記アクセスメモリブロック中に定義される前記アクセスキーのコピーを定義する、請求項１９に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１１年９月２６日に出願された、「セキュアエレメントへのアプリケーションデータの書き込み」（“Ｗｒｉｔｉｎｇ  Ａｐｐｌｉｃａｔｉｏｎ  Ｄａｔａ  ｔｏ  ａ  Ｓｅｃｕｒｅ  Ｅｌｅｍｅｎｔ”）と題する米国出願第１３／２４４，７６７号の優先権を主張するものであり、この米国出願第１３／２４４，７６７号は、２０１０年１２月１７日に出願され、「非接触決済デバイスへの情報を管理、プロビジョニング、および暗号化するためのシステムと方法」と題する、米国仮特許出願第６１／４２４，６０６号の優先権を主張するものである。上で特定された優先出願の全内容は、その全体が参照により本明細書に組み込まれる。
【０００２】
本開示は、一般に非接触スマートカードデバイスのセキュアエレメントの名前空間をパーティショニングする、およびセキュアエレメント外部のソフトウェアアプリケーションからの要求を用いてセキュアエレメントにアプリケーションデータを書き込むためのコンピュータによって実現されるシステム、方法、およびデバイスに関する。
【背景技術】
【０００３】
非接触トランザクションシステムは、トランザクション目的でセキュア非接触スマートカードを使用する。いくつかのトランザクションシステムの例としては、交通、乗車カード、認証およびＩＤカード、駐車カード、テレフォンカードなどがある。セキュア非接触スマートカードの例としては、ＮＸＰ Ｓｅｍｉｃｏｎｄｕｃｔｏｒｓ社のＭＩＦＡＲＥ（登録商標）カード、ＨＩＤ  Ｇｌｏｂａｌ社のｉＣｌａｓｓ（登録商標）カードがある。ある種の従来のスマートカードは、無線自動識別（ＲＦＩＤ）標準を使用して、カードリーダデバイスで情報を送受信する。ＲＦＩＤベースの非接触スマートカードデバイスは、国際標準化機構（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｏｒｇａｎｉｚａｔｉｏｎ  ｆｏｒ  Ｓｔａｎｄａｒｄｉｚａｔｉｏｎ（ＩＳＯ））および国際電気標準会議（Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｅｌｅｃｔｒｏｔｅｃｈｎｉｃａｌ  Ｃｏｍｍｉｓｓｉｏｎ（ＩＥＣ））のスマートカードとカードリーダのためのＩＳＯ／ＩＥＣ１４４４３でサポートされている。非接触カードタイプのデバイスの中には、アンテナやセキュアメモリなどの電子部品、メモリ管理ユニット、プロセッサ、および暗号生成装置などの補助的な半導体構成要素を用いて機能するものがある。
【０００４】
ソフトウェアアプリケーションまたはアプリケーションデータのメモリ領域の様々なタイプとして、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、不揮発性フラッシュメモリが含まれる。こうしたメモリ領域は通常、セキュアメモリ領域であり、アクセス、メンバーシップ、または決済目的でソフトウェアアプリケーションを動作するために必要なセキュアな情報のすべてを格納する。ある種の低価格の非接触スマートカードでは、重要な処理機能を備えていない場合があり、こうしたスマートカードは多くの場合、受動的であり、パッシブメモリからの情報を無線周波で送信する。さらに、各セキュアメモリ領域は、特定のアプリケーション機能を割り当てられ、こうした機能は非接触スマートカード内のセキュアエレメント領域に含まれる。
【０００５】
ある種の非接触スマートカードには、EMV（電子クレジットカード仕様）および ＭＩＦＡＲＥ（登録商標）の両方の動作機能をサポートするハードウェアとソフトウェア用のプラットフォームが含まれる。こうしたカードには、さらに非接触スマートカードデバイスのセキュアエレメントを組み合わせたもの、または別個のセキュアエレメント内に様々な領域を保持するためのプロセッサが含まれる。非接触スマートカードは、様々なメモリサイズがあり、例えば、４ＫＢのＥＥＰＲＯＭ（フラッシュメモリ）や １ＫＢのＥＥＰＲＯＭパッケージがある。しかし、ある種の広く使用されているスマートカードは、いかなるインテリジェント処理機能も有さず、一部のメモリ領域だけがある特定のカードリーダのみによって読み取り可能であるようにソフトウェアでコーディングされている。ＭＩＦＡＲＥ  Ｃｌａｓｓｉｃ（登録商標）などの多くの広く使用されている非接触トランザクションカードでは、スマートカード内で利用できる開発をさらに可能にするリソース量に限りがある。例えば、４ＫＢのカードでは、いつでもカード内で４ＫＢの全てが有効であるという要件が存在する。
【０００６】
一部のセキュアエレメントの名前空間（非接触スマートカード内の「メモリ領域」ともいう）では、利用可能なメモリは静的にパーティションに分割され、こうしたパーティションはさらにカードリーダで符号化される。最終的にカードリーダは、事前に定められたパーティションからのみ読み出しをする。このように、既に予約超過の名前空間を分割することで、頻繁に衝突が発生することになり、従って、衝突防止のプロトコルを用いることで、さらに利用可能なメモリ領域を減らす。さらに、プロセッサ機能を持たないカードに対して限定されたセキュリティプロトコルが実行される。こうした実行は、例えば、クレジットカードのアプリケーションに一般的に使用されるＥＭＶタイプのカードと比較して、カードとカードリーダの中のセキュリティの選択肢を減らすことがある。
【０００７】
ソフトウェアアプリケーションによっては、カード内に保存されている情報、およびセキュアキーの所有者に対しての情報の管理することを制限することがある。複数アプリケーションを含む非接触スマートカードでは、メモリを共有する結果として衝突やエラーが発生する。さらに、非接触スマートカード上のデータの一部を第２の会社が保護する必要がある場合、１つのキーで他のキーのセキュリティのオーバーライドはしないため、こうした保護は不可能である。現在のアプリケーションでは、複数当事者の利益に対応する制限されたアプリケーション空間、データ空間、およびセキュリティは不十分である。さらに、カードのアクセスキーは、キー「Ｂ」の所有者の許可なしには、更新できない。
【発明の概要】
【課題を解決するための手段】
【０００８】
ある特定の例となる実施形態では、セキュアエレメント内の制御ソフトウェアアプリケーションによって、セキュアエレメントの名前空間を少なくとも２つの記憶タイプにパーティションで分割するコンピュータによって実現する方法は以下を含む。すなわち、制御ソフトウェアアプリケーションで、セキュアエレメントの名前空間内の複数のメモリブロックに対して少なくとも第１のアクセスタイプ、第２のアクセスタイプ、第１のアクセスキー、および第２のアクセスキーを定義し、第１のアクセスキーおよび第２のアクセスキーのそれぞれは、第１のアクセスタイプ、第２のアクセスタイプのいずれか、またはこの２つを組み合わせたものを、セキュアエレメントの名前空間内の複数のメモリブロックに対して提供することと、制御ソフトウェアアプリケーションによって、セキュアエレメントの名前空間内の複数のメモリブロックから、少なくとも第１のメモリブロックのグループ、第２のメモリブロックのグループ、および選択したメモリブロックのグループのそれぞれに対するアクセスタイプを選択し、選択したメモリブロックのグループの少なくとも１つのメモリブロックが、選択したメモリブロックのグループのデータメモリブロック内のソフトウェアアプリケーションまたはアプリケーションデータの選択したアクセスタイプを外部のデータを要求しているデバイスに提供するアクセスメモリブロックであることと、および、制御ソフトウェアアプリケーションから、選択したメモリブロックのグループのそれぞれに対しする、アクセスメモリブロックに保存するために、選択したメモリブロックのグループのそれぞれに対する第１のアクセスキー、第２のアクセスキー、および選択したアクセスタイプを送信し、それによりセキュアエレメントの名前空間を少なくとも２つの記憶タイプのパーティションに分割することである。
【０００９】
ある特定の例となる実施形態では、セキュアエレメント外部にあるユーザインタフェースソフトウェアアプリケーションを使用してアプリケーションデータをセキュアエレメントの名前空間に書き込む方法は以下を含む。すなわち、ユーザインタフェースソフトウェアアプリケーションからリモートのトラステッドサービスマネージャ（ＴＳＭ）コンピュータにアプリケーションデータに対する要求、および少なくとも書き込みアクセスタイプのためのアクセスキー、およびセキュアエレメントの名前空間に書き込まれるアプリケーションデータを送信することと、セキュアメモリにおいて、リモートのＴＳＭコンピュータから、要求されたアプリケーションデータ、および要求されたアクセスキーを受信することと、およびセキュアエレメントにある制御ソフトウェアアプリケーションによって、要求されたアプリケーションデータをセキュアメモリから、セキュアエレメントの名前空間のデータメモリブロックに書き込み、セキュアエレメントの名前空間のデータメモリブロックは、要求されたアクセスキーを用いて制御ソフトウェアアプリケーションによってアクセスされることである。
【図面の簡単な説明】
【００１０】
【図１】本発明のある例となる実施形態に従った、非接触スマートカードデバイスにあるセキュアエレメントの名前空間をパーティションに分割する、およびセキュアエレメント外部のソフトウェアアプリケーションからの要求を使用してセキュアエレメントにアプリケーションデータを書き込むための、コンピュータによって実現するシステムとデバイスを示す図である。
【図２】本発明のある例となる実施形態に従った、非接触スマートカードデバイスにあるセキュアエレメントの名前空間をパーティションに分割する、およびセキュアエレメント外のソフトウェアアプリケーションからの要求を使用してセキュアエレメントにアプリケーションデータを書き込むための、コンピュータによって実現するシステムとデバイスを示す図である。
【図３】本発明のある例となる実施形態に従った、非接触スマートカードデバイスにあるセキュアエレメントの名前空間のデータ構造、およびパーティショニングとセキュアエレメントの名前空間へのアプリケーションデータの保存を制御する制御ソフトウェアアプリケーションに関連するアプリケーションデータを示す図である。
【図４】本発明のある例となる実施形態に従った、セキュアエレメント内の制御ソフトウェアアプリケーションによってセキュアエレメントの名前空間を少なくとも２つの記憶タイプにパーティショニングするためのコンピュータによって実現する方法を示す図である。
【図５】本発明のある例となる実施形態に従った、セキュアエレメント外部にあるユーザインタフェースソフトウェアアプリケーションからの要求を使用してセキュアエレメントの名前空間にアプリケーションデータを書き込むためのコンピュータによって実現する方法を示す図である。
【図６】本発明のある例となる実施形態に従った、非接触スマートカードデバイスのセキュアエレメント内でローカルにトラステッドサービスマネージャ（ＴＳＭ）を実装するためのコンピュータによって実現する方法を示す図である。
【図７】本発明のある例となる実施形態に従った、パーティショニングおよびプロビジョニングの目的でセキュアエレメントの名前空間へのアクセスを制御するためのコンピュータによって実現する方法を示す図である。
【発明を実施するための形態】
【００１１】
アプリケーションディレクトリテーブルは、セキュアエレメントの名前空間にある特別なブロックをメタデータブロックとして予約する。これらのブロックには、アプリケーション識別子（ＡＩＤ）の、外部カードリーダデバイスに提示するべきソフトウェアアプリケーションを含むスロット／ブロックへの論理マッピングを含む。外部カードリーダデバイスに、非接触スマートカードが提示されると、外部カードリーダデバイスは、カードリーダとそのソフトウェアアプリケーションにとって事前に既知である定義済みのアクセスキーで、ディレクトリで特定される特別なメタデータブロックに対して認証を試みる。ブロックが有効である場合、カードリーダは、割り当てられたブロックでアプリケーションディレクトリテーブルの内容を読み取り、アプリケーションＩＤがマッピングされているセクタ／ブロックを見つけるために検索を実行する。例として、小売業者のポイントカードが「１０」というＡＩＤを有する場合、対象のカードリーダデバイスがセキュアエレメントの名前空間の当該データメモリブロックにあるアプリケーションディレクトリテーブルを読み取り、ＡＩＤ「１０」を検索することとなる。こうしたディレクトリサービスは有用であるが、ブロックとそのＡＩＤ名前空間を完全に使用することを必要とし、第三者によって外部から管理される。
【００１２】
非接触スマートカード内のアプリケーション識別子（ＡＩＤ）は、１６ビットのコードであり、それぞれ８ビット長の機能クラスタとアプリケーションコードに分けられる。セクタ０のキー「Ａ」すなわち「Ａキー」は、６バイトコードの公開セクタであり、セクタ０のキー「Ｂ」すなわち「Ｂキー」は、非接触スマートカードの発行者またはカード所有者によって決められるが、この場合、カード発行者がある特定のアクセスキー、および非接触スマートカード上の制御ソフトウェアアプリケーション、または他のソフトウェアアプリケーションのある特定の機能を制御する。
【００１３】
「カード発行者」または「カード所有者」は本明細書では相互に置き換えて使用され、一般に非接触スマートカード内にセキュアエレメントとアプリケーションディレクトリを配置するエンティティのことをいう。ＮＦＣサービスプロバイダが、カード発行者タイプのエンティティの例であろう。
【００１４】
Ｂキーは、関連メモリブロック内のソフトウェアアプリケーションまたはアプリケーションデータをへんこうするために、秘密にしておかれる６バイトのコードであり得る。
【００１５】
「アプリケーションデータ」は、本明細書では、データを拡大、更新する、またはソフトウェアアプリケーションにデータを提供するデータを意味する。「ソフトウェアアプリケーション」は、本明細書では、外部コンピュータから任意のフォーマットで入手される、非接触スマートカードのセキュアエレメント内にインストールし実行できる、任意のソフトウェアアプリケーションである。さらに、「ソフトウェアアプリケーション」と「アプリケーションデータ」は、外部コンピュータからセキュアエレメント内に保存されるデータのタイプであり、本明細書では、ほぼ同じ意味で使用される。「ソフトウェアアプリケーション」という用語は、特に説明がない限りは、ダウンロードしたフォーマットから、中間フォーマット、最終的に実行されるフォーマットに至る、ソフトウェアアプリケーションのすべてのフォーマットをも含む。
【００１６】
セキュアエレメントの名前空間にあるアプリケーションディレクトリテーブル用のデータメモリブロックでは、１バイトのクラスタコードをアクセス制御に使用し、別の１バイトをソフトウェアアプリケーションコードまたは最下位ビット（ＬＳＢ）として使用し、２バイトのアプリケーション識別子（ＡＩＤ）を使用してソフトウェアアプリケーションがマッピングされる。
【００１７】
ある特定の例となる実施形態では、ある種の非接触スマートカードまたは非接触スマートカードの実現形態では、セキュアエレメントの名前空間は、様々なカードプロトコルやプラットフォーム、例えばＪａｖａ（登録商標）ＣａｒｄプラットフォームのＥＭＶＣｏ、近接感知のための近距離無線通信（ＮＦＣ）、またはＭＩＦＡＲＥを含むカードタイプ別に異なるパーティションに分割できる。１つの実施形態では、セキュアエレメントの名前空間は、仮想的にセクタに分割され、そこで各セクタは各１６バイト長の４つのメモリブロックを含み、デフォルトの１６バイトとは異なる別のセクタサイズの選択肢もある。各セクタの終了ブロックは、専用アクセスメモリブロックであり、メモリブロックの残り部分へのアクセス情報を保存するための３つのメモリセクションに分割される。このアクセス情報は、Ａキー、アクセスメモリブロック内のアクセスビット、およびＢキーを含む。アクセスメモリブロックは、そのメモリブロックへのアクセスに使用する個々のアクセスキー、またはアクセスキーの組み合わせに応じて、セクタにある残りのブロックへのアクセスを制御する。セクタにある残りのメモリブロックは、アプリケーションデータまたはソフトウェアアプリケーションを含むデータメモリブロックである。ソフトウェアアプリケーションは、１つ前のセクタにソフトウェアアプリケーションの終了バイトのポインタまたは継続情報を提供することでセクタにわたって保存できる。こうしたポインタには、ソフトウェアアプリケーションのＡＩＤおよびソフトウェアアプリケーションの継続するセクションのブロック位置とセクタ位置を含む場合がある。
【００１８】
ある特定の例となる実施形態では、アクセスメモリブロックのアクセスキーは、アプリケーションデータとセクタ０のアプリケーションディレクトリテーブルに対するデータメモリブロックについて異なるアクセスタイプをサポートする。アクセス制御ブロックは、キーＢは制御ブロックのキーをローテーションし、アクセス制御ブロック内のアクセスビットを上書きする能力を維持したまま、キーＡの許可を表すように設定できる。アプリケーションディレクトリテーブルを含むセクタ０のデータメモリブロックでは、キーＢを使用してディレクトリを編集、セクタおよびメモリブロック位置へのＡＩＤのマッピングを変更、セキュアエレメントの名前空間でアクセスタイプを変更して、メモリブロックの再割り当てをしてもよい。こうした機能により、非接触スマートカードは、アクセスキーとアクセスメモリブロックのアクセスビットに応じて複数のアプリケーションやアクセスタイプを機能的にサポートできる。非接触スマートカードで利用可能なアクセスタイプには、書き込みアクセス、読み取りアクセス、増加アクセス、減少アクセスまたはこれらのうちの２つ以上の組み合わせが含まれる。書き込みアクセスには、セキュアエレメントの名前空間内のデータメモリブロックへのソフトウェアアプリケーションまたはアプリケーションデータの書き込みまたはインストールする機能が含まれる。
【００１９】
セキュアエレメントの名前空間にある各セクタは、デバイスのキーセットがそこから派生する一意の識別子を割り当てられ、ここで、一意の識別子はカード製造業者においてまたはカード所有者によって非接触スマートカードに割り当てられ得る。カード所有者は、セキュアエレメントとアプリケーションディレクトリ構造を非接触スマートカードに配備するエンティティのことを指し得る。例として、サービスアイデンティティモジュール（ＳＩＭ）、セキュアデジタル（ＳＤ）メモリカード、またはユニバーサル集積回路カード（ＵＩＣＣ）のメーカーは、スマートフォンに配備するために無線サービスプロバイダへの販売前に、セキュアエレメントとアプリケーションディレクトリ構造をＳＩＭ、ＵＩＣＣ、またはＳＤカードに埋め込むことにより、カード所有者であり得る。あるいは、汎ヨーロッパデジタル移動通信システム(Ｍｏｂｉｌｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ、ＧＳＭ（登録商標））、  万国移動通信システム（Ｕｎｉｖｅｒｓａｌ  Ｍｏｂｉｌｅ  Ｔｅｌｅｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｙｓｔｅｍ、ＵＭＴＳ）、または符号分割多元接続（Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ、ＣＤＭＡ）の無線サービスプロバイダが、モバイル通信を実現する目的でカードの販売前に、セキュアエレメントを埋め込み、アプリケーションディレクトリを作成する場合がある。
【００２０】
「カード製造業者」、「カード所有者」、または「無線サービスプロバイダ」のそれぞれは、セキュアエレメントを提供するための「カード発行者」と呼ばれ得、非接触スマートカード内のアプリケーションディレクトリをサポートする。ある特定の例となる実施形態では、「カード発行者」は、非接触スマートカードのセキュアエレメント内に制御ソフトウェアアプリケーションを作成し、展開するサービスプロバイダのことを指し得、この場合、この制御ソフトウェアアプリケーションは、セキュアエレメントの名前空間を制御、起動、およびパーティションに分割するために使用することができる。アプリケーションディレクトリは、埋め込み段階では埋め込みソフトウェアアプリケーションとして認識され得る。
【００２１】
ある特定の例となる実施形態では、非接触スマートカードデバイスのメーカーまたは非接触スマートカードのオペレーティングシステムの開発者はカード発行者と考えられる場合がある。カード発行者は、独自に、またはカード所有者と協力して、セキュアエレメントまたは外部のセキュアエレメントを介して非接触スマートカード内に１つ以上の追加ソフトウェアアプリケーションを提供し得る。こうした追加のソフトウェアアプリケーションは、単一のＮＦＣコントローラとアンテナを使用し、非接触スマートカードデバイス内のいくつかのカードプロトコルの中で管理の役割を果たし得る、または非接触スマートカードのセキュアエレメントの名前空間を制御し得る。さらに、ソフトウェアアプリケーションのプロバイダは、カード発行者のサービスまたは８０２．１１規格を使用した通常の無線インターネットを介して、無線方式でソフトウェアアプリケーションを提供する。
【００２２】
セキュアエレメントの各セクタは、アプリケーションディレクトリ構造の一部として、アプリケーション識別子（ＡＩＤ）とともに単一のアプリケーションを保存でき、それにより、複数のソフトウェアアプリケーションが非接触スマートカード内で共存できる。セクタアドレス０の１つのメモリブロックには、メーカーのデータのみを含み得るが、他のメモリブロックは、カード上の一意のアプリケーションのＡＩＤを含むデータメモリブロック、およびアプリケーションディレクトリテーブルへのアクセスを提供するアクセスメモリブロックである。メーカーのデータは、品質問題が発生した場合の集積回路（ＩＣ）の詳細を追跡するために使用される。そのため、セキュアエレメントの名前空間のセクタ０には、一般的に非接触スマートカード内の他のメモリブロックにあるアプリケーションのＡＩＤ情報である各１６バイトの２つのデータブロックが含まれる。
【００２３】
ある特定の例となる実施形態では、非接触スマートカードデバイスは、非接触スマートカードを組み込み、非接触スマートカードに対するユーザインタフェースソフトウェアアプリケーションによるアクセスを提供する。非接触スマートカードデバイスの例には、スマートフォン、モバイルフォン、ＰＤＡ、および、モバイルコンピューティングデバイス（ネットブック、iPad（登録商標）など）、電子的に使用可能なキーフォブ、カードタイプのデバイス、およびその他の電子的に使用可能なデバイスがある。この場合、各デバイスは、以下に制限されるものではないが、金融取引、クーポン、発券、セキュア認証、および関連アプリケーションなどを含む複数の目的に対して使用可能である。
【００２４】
ある特定の例となる実施形態では、交通環境アプリケーションの非接触スマートカード上のソフトウェアアプリケーションでは、交通システムに出入りした場合に、カードリーダが記録のために、あるセクタのメモリブロックにアクセスし、初期値を設定し、カードの値を減らすようにすることができる。自動改札機は、セキュリティが低いキーであるアクセスキーＡへのアクセスに制限される場合があり、カードリーダの自動改札機は、カードの値を読み取り、カードのアクセスメモリブロックの割り当てに応じて、非接触スマートカードのあるブロックに出口または入口のポイントを書き込むことを認証する。その結果、交通システムのソフトウェアアプリケーションは、あるブロックに他のセクタへの参照と合わせて保存され得、こうした他のセクタは、値の増加／減少、および駅の出札／入札の値のためのものある。この場合、減少値は、対応するデータメモリブロックにある駅の値の割り当てから計算され得る。各セクタは、必要に応じてキーＡとキーＢの異なるセットをみ得る。
【００２５】
例えば、ソフトウェアアプリケーションのプロバイダは、交通局であり、非接触スマートカードの異なるセクタとメモリブロックの初期値設定のためのキーＢへのアクセスを有し、この場合、このセクタは、キーＢを使用した書き込みを可能にする。従って、このカードはキーＢでアクセス可能なデバイスが、非接触スマートカードの事前定義された「初期値」データのメモリブロックまたはセクタに初期値を書き込むことができるようにする。「駅情報」を保存するためのセクタの異なるデータメモリブロックには、異なるアクセスキーのセット、キーＡとキーＢが含まれ、これにより、駅の情報の入場と退場を登録できる。料金の値は、入場駅と退場駅の間で計算され、カードのユーザが駅を出たときに非接触スマートカードの「初期値」データメモリブロックまたはセクタに適用される。交通システムは、入場を認める前に、「初期値」データのメモリブロックまたは残っている値の読み取りのためのセクタのキーＡを検証する。異なるキーＢは、キーＢによって割り当てられ、保護されている駅情報データのメモリブロックに入場場所を書き込む。自動改札機を出るとき、カードは通知を受け、料金が退場ポイントと入場ポイントから計算され、最初の場所を消去しながら、初期値から減少させる。または、減少値が初期値よりも大きい場合、カードは自動改札機に対して顧客を出さないように信号を送るであろう。アクセスのためのキーＢを使用して券売機または交通機関の事務所でカードに値をさらに加えることで、問題は解決するであろう。
【００２６】
非接触スマートカードは、初期化目的で既知のデフォルトキー（例、典型的なデフォルトキーは、０ｘＦＦ）で製造することができる。デフォルトキーが、既知であるため、非接触スマートカード上または非接触スマートカードデバイス内に埋め込まれているセキュリティエレメントは、使用不可、つまりアクセスが非接触インタフェース（外部カードリーダ）またはセキュアエレメント内のアプリケーションプログラミングインタフェース（ＡＰＩ）や他のソフトウェアアプリケーションなどのコンタクトインタフェースを介して防止される場合があると考えられる。ＡＰＩは、セキュアエレメントまたはセキュアエレメントをホストする非接触スマートカードデバイスの実行時環境によってサポートされ得る。カード製造業者またはカード発行者（または所有者）の場所で、初期設定デバイスによってアクセスキーのセットを用いてセクタのキーが指定されると、メインのアクセスキーであるキーＢは、オーバーライドのオプションを有し、当該セクタに対して排他的な管理アクセスを有する。従って、キーローテーションまたは変更は、メモリブロックの制御を保つために既知の状態に設定される。メモリブロック内のメッセージ、ソフトウェアアプリケーション、またはアプリケーションデータは、一般的に平文形式であり、暗号化されたメッセージ（キーＡまたはキーＢのうち該当するキーで暗号化されたもの）は、暗号形式である。キーＢは、任意のセクタのキーＡを変更するため、ならびに特定のセクタに対するキーに関連するアクセスビットを変更するためにも使用され得る。
【００２７】
ある特定の例となる実施形態では、カードリーダの端末またはデバイスは、セキュアエレメントのメモリをブラウズして関連するアプリケーションディレクトリを探し、カードリーダで定義されている事前定義されたソフトウェアアプリケーションＡＩＤまたは事前定義されたセクタに対してＡＩＤをスキャンすることにより、非接触スマートカードを読み取る。アプリケーションディレクトリ（ＡＤ）は、ディレクトリとアプリケーションエントリのためのデータ構造テーブルを確立し、それにより、リーダがトランザクションの正しいソフトウェアアプリケーションを特定できるようにする。非接触スマートカードは、メモリ記憶領域とみなされうる。これは、カードリーダが支払またはさらに乗車などのアプリケーションの処理のために、メモリ記憶領域からアプリケーションデータを要求するためである。非接触スマートカードは通常、カードリーダに対して乱数チャレンジを行い、カードリーダは、相互秘密鍵を使用して非接触スマートカードに対して独自の応答をする。非接触スマートカードは、次に乱数を比較し、同じ秘密鍵であることを確認して、カードリーダからの応答を検証する。その後、相互に合意された暗号秘密鍵を使用して実際のトランザクションが処理される。
【００２８】
ある特定の例となる実施形態では、非接触スマートカードの交通ソフトウェアアプリケーションには、複数のソフトウェアアプリケーション、または異なる地域、用途のものが含まれる場合がある。例として、ニューヨークの交通システムとロサンゼルスの交通システムでは、非接触スマートカードデバイス内で１つの非接触スマートカードに対して異なるソフトウェアアプリケーションを提供する場合がある。こうした２つのソフトウェアアプリケーションは、対応するカードリーダがＡＤをチェックすることでアクセスするのはどのディレクトリであるかを自動的に決定できるため、対応する場所の駅で使用できる。データメモリブロックのディレクトリ部分にある情報またはアプリケーションディレクトリのデータは、ＡＤの参照部分を提供し、ソフトウェアアプリケーションが割り当てられるカードの残りの空きセクタの分配に関する情報についてカード発行者または製造業者のセクタに対するポインタを含む。
【００２９】
ある特定の例となる実施形態では、セキュアエレメントの名前空間は、名前空間にインストールされている制御ソフトウェアアプリケーションによって２つの記憶タイプのパーティションに分割される。この制御ソフトウェアアプリケーションは、物理的または仮想的に異なるセキュアエレメントの名前空間にインストールされ得、この場合、物理的に異なるセキュアエレメントの名前空間は、本明細書で開示されているメモリブロックとセクタ構造のセキュアエレメントの名前空間とのセキュア通信路が含まれる。例として、制御ソフトウェアアプリケーションは、非接触スマートカードを組込んだ非接触スマートカードデバイスにある異なるセキュアエレメントの名前空間内でＪａｖａ（登録商標）Ｃａｒｄ  Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅで実行するＪａｖａ（登録商標）Ｃａｒｄアプレットであってもよい。従って、このＪａｖａ（登録商標）Ｃａｒｄアプレットは、ＡＰＩを使用し、セキュア通信路を介して非接触スマートカードのセキュアエレメントとやりとりし、アクセスキー、ソフトウェアアプリケーション、アプリケーションデータ、アプリケーションディレクトリ、およびアクセスメモリブロックのアクセスビットの配備を制御し得る。
【００３０】
ある特定の例となる実施形態では、セキュアエレメントの名前空間は、販売されたメモリブロックまたは販売されたスロット（ＳＳＬＯＴ）および貸与されたメモリブロックまたは貸与されたスロット（ＲＳＬＯＴ）に分割される。さらに、ＳＳＬＯＴまたはＲＳＬＯＴは、セクタを構成するメモリブロックのグループ、または複数セクタにまたがるメモリブロックのグループである。ＳＳＬＯＴは販売されたスロットであり、非接触スマートカードのメーカーが契約に基づきカード発行者に販売し得る。カード発行者は、そこでソフトウェアアプリケーションプロバイダが所有するソフトウェアアプリケーションをエンドユーザが使用するためにカードに展開する。例として、電話サービスプロバイダは、ＳＩＭまたはＵＩＣＣカードを発行し、非接触スマートカード製造業者の役割を担う場合があり、この場合、ＳＩＭまたはＵＩＣＣカードには、セキュアエレメントが含まれる。ＲＳＬＯＴは、第２者のカードユーザに貸与されうるスロットである。ソフトウェアアプリケーションのプロバイダは、金融取引、セキュア認証、発券、またはクーポンなどの運用のためにカード内のカスタムアプリケーションを利用する組織である。カード発行者は、貸与または販売で割り当てられたＳＬＯＴ内にアプリケーションと値を設定し、カードのアプリケーション内の値を変更するようにカードリーダを割り当てる。
【００３１】
ある特定の例となる実施形態では、スロットの割り当ては、セクタ、アクセスビット、およびアクセスキーの割り当てによって決まる。例えば、ＲＳＬＯＴは、セキュアエレメントの名前空間にあるソフトウェアアプリケーションプロバイダに貸与されたセクタとメモリブロックを含む。これは貸与されたセクタとメモリブロックに対するキーＡ認証と関連するアクセスビットおよびメモリブロックと共にソフトウェアアプリケーションプロバイダに貸与される。または複数のソフトウェアアプリケーションプロバイダが提携して、または個別に、ソフトウェアアプリケーションに対するデータとライフサイクル管理メカニズムおよびアプリケーションデータの制御を維持することを好む場合もある。この場合、ダウンロードとインストールから、使用、および更新までのライフサイクルの完全な制御には、カード発行者が提供するキーＢを使用する。こうしたシナリオの例としては、乗車カードに値を追加するための接続されていない補充端末がある。このプロセスでは、非接触スマートカードのあるセクタの機密データメモリブロックにアクセスするためにキーＢを必要とする場合がある。こうしたソフトウェアアプリケーションプロバイダの要求を満たすために、カード発行者は、ＳＳＬＯＴアクセスキーもソフトウェアアプリケーションプロバイダと共有できる。
【００３２】
ある特定の例となる実施形態では、名前空間のＳＳＬＯＴ（販売されたスロット）部分は、第２の当事者に完全に引き渡される場合があり、この場合ＳＳＬＯＴ部分には、セキュアエレメントの名前空間における選択されたセクタのためのキーＢが含まれる。さらに、セキュアエレメントの名前空間全体のＳＳＬＯＴが、非接触スマートカードの全てのセクタに対して同じアクセスキーを提供することでソフトウェアアプリケーションプロバイダに提供され得る。ＳＳＬＯＴの制御を引き渡し、カード発行者は、サービスプロバイダに当該スロット用のキーＢとキーＡの両方へのアクセスを許可する。ＳＳＬＯＴ契約の一部として、第２者は、セキュアエレメント内の制御ソフトウェアアプリケーション（またはＪａｖａ（登録商標）Ｃａｒｄベースの制御アプレット）の明示的な同意がない限りキーＢをローテーションし得ない。こうした制御ソフトウェアアプリケーションは、カード発行者が所有し、セキュアエレメントに配備される。こうした構成により、ソフトウェアアプリケーションプロバイダの要件毎に制御アプレットがセクタのＳＳＬＯＴを動的に入れ替えできるようにすることを意図している。さらに、エンドユーザが複数のソフトウェアアプリケーションを、非接触スマートカードを組込んだ非接触スマートカードデバイスにインストールする場合、セキュアエレメントの名前空間が混みあっている場合でも、あるソフトウェアアプリケーションをトランザクション目的で起動する選択肢が与えられる。ある特定の例となる実施形態では、外部セキュアメモリは、起動していないソフトウェアアプリケーションをロードするための一時メモリとして使用される場合がある。外部セキュアメモリは、既存のセキュアエレメント内に異なるディレクトリ構造で、外部カードリーダデバイスがアクセス不可能な状態で組み込まれ得る。
【００３３】
ある特定の例となる実施形態では、カード発行者とカード発行者の第二者のパートナでありうるソフトウェアアプリケーションプロバイダの契約は、サービス品質保証契約（ＳＬＡ）および両当事者間の業務規程に基づいたものである。こうしたＳＬＡでは、自動的または手動でＳＬＯＴ転送を有効にするためにアクセスキーを共有することで生じる制限、取引、およびプロセスを定義する。ブロックでのキーＢの外部のローテーション（すなわち、非接触のやりとり）は、ＳＬＡの規定に基づき得る。ＳＬＡのいかなる違反も、名前空間の販売部分を取り戻す技術的手段が無いことを意味するであろう。この機能は、ＳＳＬＯＴＳとＲＳＬＯＴＳを区別する。ＳＳＬＯＴは、重要な制御を第二者パートナに引き渡し、こうした共有がＳＬＡを介して非常に価値のある信頼されるパートナに対して実行され得る。
【００３４】
限られたセキュアエレメントの名前空間を最大限有効に使用するために、ＲＳＬＯＴ用にできる限り多くの名前空間を保持しながら、カード発行者は、できる限り少ないスロットを「販売」できる。保持したＲＳＬＯＴを最大限活用するために、ある特定の例となる実施形態では、カード発行者はＲＳＬＯＴの動的マッピング（静的パーティショニングの代わりに）を可能にするシステムを使用する。カード発行者の意図は、ＲＳＬＯＴの名前空間を、デバイスに組み込まれた非接触スマートカードのセキュアエレメントにある制御ソフトウェアアプリケーションとやりとりする非接触スマートカード上のウォレットソフトウェアアプリケーションまたはユーザインタフェースソフトウェアアプリケーションで直接管理可能にすることである。例として、非接触のＮＦＣが有効なモバイルフォンでエンドユーザは、ウォレットソフトウェアアプリケーションを使用して、スマートカード内の制御アプレットとやりとりし、それにより、エンドユーザが混雑したセキュアエレメントの名前空間で、複数アプリケーション環境で一部の機能を制御できるようにする。
【００３５】
名前空間を管理する場合、制御アプレットは、名前空間へのアクセスを有するＡキーとＢキーの全体セットのコピーを維持する。すべてのセクタに対するＡキーとＢキーを保持することで、カード発行者は名前空間を動的に管理する柔軟性を持つことができる。こうした動的管理は、例えば、カード発行者が所有または制御するリモートサーバにあるトラステッドサービスマネージャ（ＴＳＭ）などリモートコンピュータにあるリモートソフトウェアアプリケーションを介して適用できる。ウォレットソフトウェアアプリケーションは、ユーザのアクションおよび／または所在場所など様々なパラメータに基づき制御アプレットが提供するアクセスキーを使用して名前空間領域の内外でソフトウェアアプリケーションとアプリケーションデータを動的に入れ替えするためにも使用される場合がある。例えば、交通システムでは、非接触スマートカードデバイスのエンドユーザが、ある場所から他の場所に移動する場合、最初の場所の交通システムに適用されたそのスマートカードの認証情報は、第２の場所の交通認証情報と入れ替えられ、そのカードは第２の場所でも利用できるようになる。
【００３６】
アプリケーションディレクトリ（ＡＤ）を活用するために、ある特定の例となる実施形態では、カード発行者は、カードブロックの特定部分を占め、セキュアエレメントでカード発行者が定義した名前空間を使用する、アプリケーションディレクトリの修正版を使用する。さらに、カード発行者のアプリケーションディレクトリを実装することで、ウォレットソフトウェアアプリケーション（ユーザインタフェースソフトウェアアプリケーション）から直接プロビジョニングする機能をサポートでき、これにより、外部の許可を追加で必要とせずに、セキュアエレメントの名前空間の内容を動的に入れ替える。
【００３７】
ある特定の例となる実施形態では、ウォレットソフトウェアアプリケーションは、カード発行者または提供されたソフトウェアアプリケーションによって配備され得、セキュアエレメント内のソフトウェアアプリケーションと制御アプレットは、中間のトラステッドセキュアマネージャ（ＴＳＭ）を使用せずに、互いに協力またはやりとりして名前空間にアクセスする。機密データのプロビジョニングを安全にサポートするために、制御アプレットは公開鍵／秘密鍵の非対称暗号化をサポートしている。制御アプレットには、セキュアエレメント内部のセキュアメモリまたは外部のセキュアメモリの両方に鍵を含み、セキュアエレメントの外部では公開鍵のみを利用可能にする。
【００３８】
制御アプレットは、セキュアエレメント上でウォレットソフトウェアアプリケーションの拡張として機能し、セキュアエレメントでＥＭＶＣｏ準拠などの機能をサポートする。制御アプレットは、ウォレットソフトウェアアプリケーションから直接コマンドを受けることができ、それにより、以下を行う。すなわち、２種類の記憶（ＳＳＬＯＴとＲＳＬＯＴ）をサポートし、ＲＳＬＯＴとＳＳＬＯＴに対するアクセスキーを管理し、第二者のパートナまたはソフトウェアアプリケーションプロバイダにＳＳＬＯＴのアクセスキーをエクスポート／ローテーションし、暗号化された命令が第二者のデバイスから受信されるように、公開鍵／秘密鍵のペアをサポートし、プロビジョニングは、セキュアエレメントへのアプリケーションデータ、ソフトウェアアプリケーション、またはアクセスキーをプロビジョニングするためのＴＳＭまたはトラステッドサービスエージェント（ＴＳＡ）ソフトウェアなしで行われスロットへのデータのプロビジョニング、ＳＳＬＯＴとＲＳＬＯＴの両方に対してアクセスキーとデータを動的に入れ替えし、名前空間の超過予約をサポートし、カード発行者が指定した場所にルートＡＤブロックを位置づけるカード発行者が著作権を持つＡＤのバージョンを実行する。ある特定の例となる実施形態では、これはスマートカードのメモリ（セクタ１６）の最初のキロバイト直後の位置に定義できる。
【００３９】
名前空間にあるカード発行者のアプリケーションディレクトリは、カード発行者が全体を直接管理できる。制御ソフトウェアアプリケーションは、ブロックのキーを初期化することができるが、名前空間にあるすべてのスロット（またはセクタ）に対してＡキーとＢキーのコピーを常に保持する。ＳＳＬＯＴの場合、有効なＢキーを保持することは、技術的ではなく契約的に実行される。ある例では、非ＴＳＭサーバまたはエージェントからのＳＬＡとビジネスポリシを介した自動実施を行うことができる。ウォレットソフトウェアアプリケーションは、非接触スマートカードデバイスにすべてのツールのプロビジョニングを開始する。これは、「プル型プロビジョニング」の例である。さらに、ウォレットソフトウェアアプリケーションは、すべての非接触以外のトランザクションを開始し、既にプロビジョニングされたソフトウェアアプリケーションに対してプッシュ通知をできるようにする。この場合、ウォレットソフトウェアアプリケーションは、続いて要求されたトランザクションを開始し得る。
【００４０】
セキュアエレメントに制御ソフトウェアアプリケーションをインストールすると、制御ソフトウェアアプリケーションは、通常、導いたキーのセットをブロックにローテーションし、そのキーを保存し、これにより、セキュアエレメント内の名前空間のセキュアメモリを定義する。このアクセスキーは、それぞれカード発行者またはカードのメーカーから提供されるマスターキー、一意識別子（ＵＩＤ）、およびセキュアエレメントのＣＰＬＣ（（カード製造ライフサイクルデータ（Ｃａｒｄ  ｐｒｏｄｕｃｔｉｏｎ  ｌｉｆｅ−ｃｙｃｌｅ  ｄａｔａ））を使用して導くことができる。次に、アクセスキーの設定と各セクタに割り当てられるアクセスビットに従いセクタがパーティションに分割される。ブロックの最初の１キロバイトは乗車のためにリザーブされ、こうしたセクタはＳＳＬＯＴとして販売されるか、ＲＳＬＯＴとして貸与される。いずれにせよ、ブロックのリザーブ部分は乗車用にリザーブされる。４ＫＢカード上のブロックの次の３キロバイトは、カード発行者のアプリケーションディレクトリテーブルのためにリザーブできる。ＡＤルートブロックは、このアプリケーションディレクトリテーブルのためにリザーブされたブロックの最初のセクタにある。
【００４１】
ある特定の例となる実施形態では、キーローテーションは、制御ソフトウェアアプリケーションによって実行され得る。この制御ソフトウェアアプリケーションは、ＴＳＭを介してまたはカード製造業者の施設で非接触スマートカードに組み込む前に、最初にセキュアエレメントにインストールされ得る。しかし、キーローテーションは、デバイスを最初に使用する際に制御ソフトウェアアプリケーションのインスタンス化時に起こることもある。アクセスキーのローテーションは、非接触スマートカードデバイスがオンになったときに起動される制御ソフトウェアアプレットのインスタンス化コードの一部として開始され得る。ある特定の例となる実施形態では、制御アプレットは、カード製造業者の製造プロセス中にプリインストールされることがあり、半導体のダイが製造業者のウェハー処理を離れる際（テスト後）に、ＲＯＭまたはＥＥＰＲＯＭメモリにインストールされる。このプロセスの一貫として、制御アプレットのインスタンス化コードは、その後実行されなくなる。この理由のため、制御アプレットがインスタンス化のために選択されると、アクセスキーをローテーションすることなしには制御アプレットを使用（選択）しないように、「まだローテーションされていない」かのチェックが含まれる。チェックはアクセスキーを１回ローテーションするだけであるため、無効化を必要とする特殊なコマンドは不要である。この場合、制御アプレットは、アクセスキーのローテーション機能がデバイスに対して無効になる前にすべてのキーが確実に少なくとも１回ローテーションするようにしてアクセスキーのローテーションの強制終了を行う必要がある。
【００４２】
ある特定の例となる実施形態では、アクセスキーのローテーションは、非接触カードの製造前という早い段階、および携帯電話など非接触スマートカードデバイスを、非接触スマートカードを含む各構成部分に対して様々なドライバソフトウェアを組込み、開始するという遅い段階でも実行できる。スマートカードを組込み、開始することにより、組み込みセキュアエレメントの（ｅＳＥ）の確保（または無効化）がその後不要になるようにする。さらに、キーのローテーションがカードの製造時または試験時に納入先商標による受託製造（ＯＥＭ）で行われるプロセスは、ＮＦＣコントローラ、ＰＮ５４４、およびＪＣＯＰを含むＮＦＣモジュールが正しく機能しているかを検証する際に有用である。このプロセスにより、半田付けやダイの作業によって、チップにクラックが生じたり、損傷したりしないようにする。ＯＥＭでは、このチェックプロセスを半導体ダイの機能テストとして実行できる。その結果、ＯＥＭは品質チェックを実施し、納入前にデバイスの品質を向上し、カード発行者は、自身の組み込みソフトウェアの実装前にキーのローテーションを実施できるという利点がある。
【００４３】
制御ソフトウェアアプリケーションまたは制御アプレット、およびウォレットソフトウェアアプリケーション（ユーザインタフェースソフトウェアアプリケーション）は、セキュアエレメントの名前空間のサービスとプロビジョニングを行い、ソフトウェアアプリケーションプロバイダまたはカード発行者が正しいアプリケーションＩＤ（ＡＩＤ）を使用して、メモリを確実にプロビジョニングするようにする便利なインターフェースを提供する。この動作により、新しいソフトウェアアプリケーションが、他のソフトウェアアプリケーションのアプリケーションソフトウェアまたはアプリケーションデータをセキュアエレメントの名前空間で上書きしないようにする。ソフトウェアアプリケーションプロバイダが、制御ソフトウェアアプリケーションとやりとりするために、カード発行者は、メッセージ形式や関連するトランザクションモデルなどの場合があるプロトコルを発行する。こうしたプロビジョニングは、ユーザによるウォレットソフトウェアアプリケーションから開始される場合がある。あるパートナ（いくつかのソフトウェアアプリケーションプロバイダの１つ）に対して認証がプロビジョニングされると、そのソリューションは、ソフトウェアアプリケーションプロバイダがプッシュ通知をデバイスに配布するために使用できるコールバック識別子を提供する。
【００４４】
ある特定の例となる実施形態では、すべての制御アプレットのトランザクションは、トランザクションがプッシュされたイベント通知の結果として起こった場合でも、ウォレットソフトウェアアプリケーションによって開始できる。このウォレットソフトウェアアプリケーションは、トランザクションのイニシエータになることができる。この方法では、制御ソフトウェアアプリケーションのソリューションは、制御ソフトウェアアプリケーションでは、ウォレットソフトウェアアプリケーションが、トランザクションのマスタであり、ソフトウェアアプリケーションが、スレーブであるという点で従来のＥＭＶＣｏトランザクションとは異なる。逆に、ＥＭＶＣｏのプロビジョニングでは、ソフトウェアアプリケーションプロバイダ（例えば、金融機関または交通システム）が、トランザクションのマスタであり、ウォレットソフトウェアアプリケーションは、ＴＳＭを介してソフトウェアアプリケーションプロバイダがどのようなアクションを行ったかの情報を持たないスレーブである。このような設計では、ウォレットソフトウェアアプリケーションと非対称鍵ペア暗号化アルゴリズムと共に制御アプレットは、信頼できる中立的な安全なソフトウェアアプリケーションプロバイダとしての役割を果たすため、ＴＳＭの必要性を減らす。制御ソフトウェアアプリケーションは、セキュア通信路（少なくともセキュアソケットレイヤまたはＳＳＬで実行される）で行われるすべてのインタラクションを追加で定義し得る。
【００４５】
ある特定の例となる実施形態では、ＴＳＭソフトウェアアプリケーション（またはＪａｖａ（登録商標）Ｃａｒｄ ＶＭ環境のＴＳＭアプレット）は、独立して、または制御ソフトウェアアプリケーションの一部として、公開鍵／秘密鍵の非対称暗号化アルゴリズムを介してセキュアエレメントにＴＳＭ実装を行い、これにより、非ＴＳＭコンピュータが公開鍵で暗号化したソフトウェアアプリケーションとアプリケーションデータ、およびライフサイクル管理をセキュアエレメントにあるＴＳＭソフトウェアアプリケーションに提供することができるようにする。ＴＳＭソフトウェアアプリケーションは、制御ソフトウェアアプリケーションまたはインストールしたソフトウェアアプリケーションに対して以下を提供する。すなわち、インストール、インスタンス化、開始、停止、廃棄、更新、有効化、無効化、セクタとメモリブロックの入れ替え、アクセス条件に対するアクセスキーの変更、およびアクセスビットの変更を提供する。各機能を外部ＴＳＭコンピュータデバイスからの介入で行う。ソフトウェアアプリケーションまたはアプリケーションデータを含む数多くの非ＴＳＭコンピュータはそれぞれ、ＴＳＭソフトウェアアプリケーションまたは制御ソフトウェアアプリケーションを介してカード発行者に登録する。この場合、登録プロセスでは、非ＴＳＭコンピュータに対して非接触スマートカードのセキュアエレメントにアプリケーションデータを提供するための公開鍵を提供する。さらに、ＴＳＭソフトウェアアプリケーションは、登録プロセスの一部としてＴＳＭソフトウェアアプリケーションに与えられた許可を用いてセキュアエレメント内のアプリケーションデータのライフサイクルを管理する。
【００４６】
ある特定の例となる実施形態では、制御ソフトウェアアプリケーションの実装は、ＲＥＳＴｆｕｌ（Ｒｅｐｒｅｓｅｎｔａｔｉｖｅ  Ｓｔａｔｅ  Ｔｒａｎｓｆｅｒ）インタフェースを用いて行われる。これは、定義されたＪａｖａＳｃｒｉｐｔ（登録商標）  Ｏｂｊｅｃｔ  Ｎｏｔｉｆｉｃａｔｉｏｎ  または  ＪＳＯＮフォーマットのメッセージを使用したステートレスなクライアントサーバアーキテクチャである。この制御ソフトウェアアプリケーションには、ウォレットソフトウェアアプリケーションが開始プロビジョンメッセージをパートナのデバイスに送ることで開始する一連のイベントであるトランザクションを伴う。この場合、パートナデバイスは、非ＴＳＭコンピュータまたは複数ソフトウェアアプリケーションに対するリモートサーバとして機能するＴＳＭコンピュータである場合がある。この開始メッセージには、非ＴＳＭコンピュータが、安全にウォレットソフトウェアアプリケーションに戻す「トランザクション管理」応答を符号化するために非ＴＳＭコンピュータにとって必要な情報を含む。パートナは、開始トランザクションメッセージにある情報を使用して応答メッセージにあるデータを符号化する。例えば、開始メッセージには、非接触スマートカードデバイスにある秘密鍵とマッチする制御アプレットのための公開鍵を含むことがある。
【００４７】
ある特定の例となる実施形態では、非ＴＳＭコンピュータは、次いで、公開鍵を使用してその非ＴＳＭコンピュータが名前空間にプロビジョニングしたいアプリケーションデータまたはソフトウェアアプリケーションを符号化する。パートナデバイスは、複数ソフトウェアアプリケーションプロバイダからのソフトウェアアプリケーションを含む共通の非ＴＳＭコンピュータである場合がある。制御アプレットのトランザクションの概念は狭く、開始プロビジョンメッセージの設計によって制御されることがあり、セキュアエレメント内でウォレットソフトウェアアプリケーションと他のソフトウェアアプリケーションの間で共有される可能性がある多くのＡＰＩのひとつでありうる。ある特定の例となる実施形態では、交通システムのソフトウェアアプリケーションの残高特定インタフェースと他の機能が、ソフトウェアアプリケーションの一部として含まれ得る。制御ソフトウェアアプリケーションのメッセージトランザクションは、ソフトウェアアプリケーションプロバイダが非ＴＳＭコンピュータからデータをセキュアエレメントにコミットするひとつのメカニズムでありうる。非ＴＳＭサーバからのソフトウェアアプリケーションまたはアプリケーションデータは、一時メモリに割り当てられたセキュアエレメントの一部、またはセキュアエレメントにある制御ソフトウェアアプリケーションへのセキュアチャンネルの通信を持つ外部セキュアメモリ領域に保存され得る。
【００４８】
ある特定の例となる実施形態では、非接触スマートカードデバイス内のＳＳＬＯＴへのアクセス機能を持つ外部カードリーダデバイスには、公開−秘密鍵のペアを備えたＴＳＭコンピュータまたは非ＴＳＭコンピュータとして機能するプロビジョンを含むことがある。こうしたＴＳＭまたは非ＴＳＭタイプのカードリーダは、カードリーダの制御内にある、またはソフトウェアアプリケーションプロバイダによって発行され、カードリーダとセキュアエレメント内の任意のソフトウェアアプリケーションの両方に対する制御を持つと特定された常駐ソフトウェアアプリケーションを制御できる。ソフトウェアアプリケーションプロバイダが、カードリーダデバイスを介してソフトウェアアプリケーションに関連するトランザクションを開始したい場合、適切な非ＴＳＭコンピュータが、ウォレットソフトウェアアプリケーションにプッシュ通知を送り得る。次いで、ウォレットソフトウェアアプリケーションは、安全な通信回線を使用して制御ソフトウェアアプリケーションのトランザクションを開始し、その要求が有効であるとみなされるかを検証する。
【００４９】
ある特定の例となる実施形態では、ウォレットソフトウェアアプリケーションは、特定のタイムフレームで受信または応答を強力には保証しないことがある。制御アプレット（またはＴＳＭアプレット）とパートナデバイスの間の開始プロビジョンメッセージ構造は、以下を含む場合がある。すなわち、ＴＳＭソフトウェアアプリケーションまたは制御ソフトウェアアプリケーションの暗号化のための公開鍵、セキュアエレメントに対する一意のＩＤ、プロトコルのバージョン番号、トランザクション識別子、およびパートナリーダに対するＡＤへのアクセスを実現するためのＡＤ Ａキー、プッシュ通知を通してトランザクションを要求したのがそのパートナであるかをパートナが参照できるイベント通知、およびウォレットソフトウェアアプリケーションのコールバック識別子を含む場合があり、これは将来の任意の日にパートナがプッシュ通知できるようにするためのものである。プロビジョニング応答メッセージは、以下を含む場合がある。すなわち、応答ステータス（すなわち、ＳＵＣＣＥＳＳ、ＥＲＲＯＲ、ＲＥＴＲＹなど）、応答の詳細（すなわち、応答ステータスがＲＥＴＲＹならば、詳細文字列は、「サーバがダウンしています」、「後で再度試みてください」などになる）、ＲＳＬＯＴ／ＳＳＬＯＴのブール情報であり、ＲＳＬＯＴの場合はＡＩＤが必要であり、そのＡＩＤはソフトウェアアプリケーションプロバイダに割り当てられたカード発行者のアプリケーションディレクトリＩＤでなければならない。
【００５０】
さらにある特定の例となる実施形態では、開始プロビジョンメッセージの応答においてソフトウェアアプリケーションに割り当てられているＳＬＯＴがＳＳＬＯＴである場合、ＡＤのＩＤはパートナのソフトウェアアプリケーションに割り当てられている有効なＳＳＬＯＴアプリケーションＩＤになる。カードリーダまたはＴＳＭコンピュータを介したソフトウェアアプリケーションプロバイダからの応答は、さらに以下を含む場合がある。すなわち、選択されたＳＬＯＴのアプリケーションデータへのアクセスを保護するために使用するＡキー、またはソフトウェアアプリケーションに割り当てられたライフサイクル機能を含み、この場合、それぞれ制御アプレットの公開鍵を使用して暗号化される。公開鍵の応答領域は、正しいキーが既にデータのプロビジョニング元であるＴＳＭコンピュータ、ＴＳＭソフトウェアアプリケーション、またはカードリーダデバイスにある場合、ブランクの可能性がある。同様に、トランザクションがキーローテーションタイプであり、既存のデータが有効である場合、ローテーションコードに対する応答領域はブランクの可能性があり、ＳＬＯＴがＳＳＬＯＴであれば、応答でＢキーが使用される。キーをローテーションするための制御アプレットの公開鍵を用いてＳＳＬＯＴを暗号化するが、ＲＳＬＯＴのパートナはＢキーをローテーションできない。カードリーダまたはＴＳＭコンピュータでトランザクションが終了すると、パートナがユーザと共有したいトランザクションメッセージが非接触スマートカードに適用され、ユーザインタフェースソフトウェアアプリケーション（ウォレットソフトウェアアプリケーション）に表示される。例えば、トランザクションがギフトカードへの追加チャージであれば、「追加チャージありがとうごぞいます」というメッセージになりうる。
【００５１】
ある特定の例となる実施形態では、ＳＳＬＯＴのプロビジョニングは、ソフトウェアアプリケーションプロバイダとカード発行者がＢキーの保護を確実にする契約を締結し、ユーザインタフェースソフトウェアアプリケーションが、制御ソフトウェアアプリケーションとやりとりするためにウォレットソフトウェアアプリケーションを介して実行されることに合意し、それにより、ソフトウェアアプリケーションプロバイダからソフトウェアアプリケーションの一部の機能を制御するときに開始する。すべての合意がなされると、制御ソフトウェアアプリケーションが（ＴＳＭソフトウェアアプリケーションと共に）、非接触スマートカードデバイスのセキュアエレメント内にインストールされる。ＳＳＬＯＴのプロビジョニングは、ユーザのインタラクションの確保または制御アプレットのトランザクションを起動ーするプッシュ通知によって進み、ウォレットソフトウェアアプリケーションはソフトウェアアプリケーションのパートナ（ソフトウェアアプリケーション、非ＴＳＭまたはＴＳＭのコンピュータ）に対する安全な接続回線を形成し、開始プロビジョン要求がＪＳＯＮ ｏｖｅｒ ＲＥＳＴと符号化されたパートナに送信され、パートナは要求にあるデータを使用して、応答でデータとＡキーとＢキーを符号化し、ウォレットソフトウェアアプリケーションは、応答メッセージの正確さと正当性について（例、「店Ａ」は「店Ｂ」のアプリケーションを上書きでいないなど）妥当であるかをチェックする。応答が正当で、正確であれば、ウォレットソフトウェアアプリケーションは、アプリケーションデータのペイロードを制御アプレットのコマンドにパッケージ化し、次にローカルでセキュア通信路（セッションＩＤ、ＳＳＬ、およびバイナリのアプリケーションの署名 + カードＯＳのセキュリティ）を使ってそのコマンドを制御アプレットに送り、制御アプレットは秘密鍵を使用して入ってくる制御アプレットコマンドのデータのペイロードと鍵を復号し、制御アプレットは鍵管理の多様化を行い、必要に応じてＡキー + Ｂキーを保存し、制御アプレットは、そのデータのペイロードをＳＳＬＯＴアプリケーションＩＤ（ＡＩＤ）で指定される正しい場所に書き込む。
【００５２】
ＲＳＬＯＴのプロビジョニングは、以下を例外として上記で説明したＳＳＬＯＴのプロビジョニングと同様の方式で進む。すなわち、例外は、ＲＳＬＯＴパートナがＡキーだけを多様化するように指定し、ＲＳＬＯＴパートナはそのアプリケーションに対してＲＳＬＯＴまたはカード発行者のディレクトリアプリケーションＩＤを使用しなければならない。例えば、制御アプレットは、すべての時間の名前空間に対するすべてのキーの情報を維持しているため、そのブロックへのアクセスを超過予約できる。例えば、制御アプレットは、２つの交通当局がＳＳＬＯＴの１ＫＢすべての空間を使用してブロックで共存させることができる。このアクションは、第１の市の乗車カードと第２の市の乗車カードの両方にユーザがプロビジョニングした領域をそのウォレットで使用することで実行できる。制御アプレットは、ユーザの要求または非接触スマートカードをホストしているデバイスのＧＰＳ位置に基づき、様々なアプレットを動的にセキュアエレメントにコピーまたはセキュアエレメントからコピーしたりする。ある交通局のためのデータが、ブロックの外にローテーションされると、制御アプレットはその「スタンドバイ」データをセキュアエレメントに保存する。スタンドバイになっているカードを再有効化する必要があれば、制御アプレットはスタンドバイデータをライブのブロックと入れ替えし、置き換えられたデータを保存する。このプロセスはＲＳＬＯＴにも適用される。
【００５３】
ある特定の例となる実施形態では、ローカルのトラステッドサービスマネージャ（ＴＳＭ）は、非対称の暗号化方式を使用して実装でき、この場合、ＴＳＭアプレットはスマートカード内のセキュアエレメントにあり、非ＴＳＭサーバからの公開鍵で暗号化されたアプリケーションデータのセットを復号化するために秘密鍵を保存する。対応する公開鍵は、同じ署名がされた証明書でカード発行者またはソフトウェアアプリケーションプロバイダによって署名され、認証される。このプロセスにより、非接触スマートカードは、外部のカードリーダデバイスとインタラクションし、ＴＳＭまたはＴＳＡを必要とせずに、ソフトウェアアプリケーションのスクリプトおよびアプリケーションデータを確保することができる。例として、このインプリメンテーションでは、ウォレットソフトウェアアプリケーションを使用し、アプリケーションデータ（ソフトウェアアプリケーションプロバイダ）の所有者に証明書を送信する。ウォレットソフトウェアアプリケーションとアプリケーションデータには、銀行がセキュアエレメントでプロビジョン口座情報を求める、交通局が残高情報をプロビジョンまたは変更する、または販売業者がギフトカード、会員カード、クーポン、またはその他の情報のプロビジョンまたは変更を望む、などが含まれる場合がある。アプリケーションデータの発行者は証明書を調べ、ウォレットソフトウェアアプリケーションからの署名をバリデーション、認証し、そのアプリケーションデータを、データを要求した当該エンドユーザの非接触スマートカードデバイスに固有の公開鍵で暗号化する。当該アプリケーションデータのプロバイダ（ソフトウェアアプリケーションプロバイダ）は、次に暗号化されたデータを、非接触スマートカードを組込んだエンドユーザの非接触スマートカードデバイスのセキュアエレメント内でローカルのＴＳＭアプレット（または結合された場合は制御アプレット）に送信する。
【００５４】
ある特定の例となる実施形態では、こうしたアプリケーションデータを含む暗号化されたメッセージのデータ経路は、安全な通信回線を使用したウォレットソフトウェアアプリケーション経由で、または直接、制御アプレットへの経路となる。ローカルのＴＳＭアプレットは、要求されたデータを受信し、そのフォーマットを検証し、許可を検証し、アプリケーションデータを認証し、他のチェックを実行する。その後、ローカルのＴＳＭアプレットは、アプリケーションデータを復号化し、それをセキュアエレメントにインストールする。ローカルのＴＳＭを実装する制御アプレットでは、受信されたデータは、非接触スマートカードのＡＰＩを使用して直接、復号、検証、およびインストールされる。ある特定の例となる実施形態では、ローカルのＴＳＭアプレットは、非接触スマートカードデバイスのアクセスキーを使用して、セキュアスクリプトを作成し、アプリケーションデータをインストールする。ダウンロードされた暗号化フォーマットのアプリケーションデータは、セキュアエレメントの一時メモリまたはセキュアエレメントの外部にあり、セキュアエレメントへのセキュア通信路接続を持つ一時メモリに保存される。さらに、セキュアスクリプトがセキュアエレメントからエクスポートされ、ホストのオペレーティングシステムで実行するネイティブのソフトウェアアプリケーションによって非接触スマートカード内で実行される。ある特定の例となる実施形態では、ソフトウェアアプリケーションプロバイダからのアプリケーションデータは、決してＴＳＭソフトウェアアプリケーションおよび非接触スマートカードの外部には曝されず、ＴＳＭコンピュータと同様に外部のＴＳＭコンピュータとインタラクションせずに安全である。
【００５５】
制御アプレットを用いたローカルのＴＳＭアプレットとＲＳＬＯＴ実装の組み合わせにより、非接触スマートカードデバイスは、カード情報を非ＴＳＭコンピュータから安全に受信し、インストールする。このプロセスは、ソフトウェアアプリケーションプロバイダが、こうしたデータのライフサイクル管理をアクティブに管理することを防ぐ。データは非接触スマートカードのセキュアエレメント内でセキュア通信路を用いて入れ替え、有効化、および表示され、外部のＴＳＭコンピュータと通信せずに、ウォレットソフトウェアアプリケーションからのユーザの好みをＴＳＭアプレットからの許可によって展開できる。
【００５６】
図１は、ある例となる実施形態に従った非接触スマートカードデバイスにあるセキュアエレメントの名前空間をパーティションに分割する、およびセキュアエレメント外部のソフトウェアアプリケーションからの要求を使用してセキュアエレメントにアプリケーションデータを書き込むコンピュータによって実現するシステム１００とデバイス１４４を示す図である。非接触スマートカードデバイス１４４には、セキュアエレメント１５６を含む。このセキュアエレメントは、内部構成部分または他の各構成部分へのセキュア通信路接続を持つ外部構成部分のいずれかである非接触スマートカードの一部である。非接触スマートカードの他の構成部分には、ＮＦＣコントローラ１７６、およびアンテナ１８０が含まれる。セキュアエレメント１５６は、ＳＩＭカード、ＵＩＣＣカード、ＣＤＭＡ非接触決済デバイスの集積回路チップ、またはＳＤカードの一部である場合がある。外部セキュアエレメントとセキュアメモリ１８４が、セキュアエレメントのセクタにある空間を解放するために、ソフトウェアアプリケーションがインストール前、無効化中に置かれる、一時的であるがセキュアエレメントに接続されているセキュアメモリを表すために図示されている。
【００５７】
セキュアエレメント１５６は、制御ソフトウェアアプリケーション１６０と、セキュアエレメントネームスペース１６４とを含む。セキュアエレメントネームスペース１６４は、アプリケーションデータおよびソフトウェアアプリケーションをトランザクション目的のために保持する。一時メモリ１６８をセキュアエレメントネームスペースの既存のセクターの一部に用いてもよいし、あるいはセキュアエレメントネームスペースの異なるパーティションにおいて用いてもよい。一時メモリ１６８を外部のセキュアエレメント１８４の代わりに用いてもよい。ダウンロードされたアプリケーションデータまたはソフトウェアアプリケーション１７２および非アクティブにされたソフトウェアアプリケーションは、一時メモリ１６８内に常駐し得る。ＮＦＣコントローラ１７６は、制御ソフトウェアアプリケーションにおいて為されたかまたはセキュアエレメントネームスペースのセクター内において為された変更を介して起動される。あるいは、非接触スマートカードデバイスがリーダー端末１８８のための無線信号を受動的に送信するように設定されている場合、電話がスイッチオフされて非接触スマートカードデバイス１４４のこの受動的アプリケーションをイネーブルさせた場合、ＮＦＣコントローラは有効なままであり得る。
【００５８】
特定の例示的実施形態において、ユーザインタフェースソフトウェアアプリケーション１５２はウォレットソフトウェアアプリケーションであり、非接触スマートカードデバイス１４４のオペレーティングシステムまたは仮想マシン環境１４８内において実行する。ユーザインタフェースソフトウェアアプリケーション１５２は、情報をエンドユーザへ提供し、エンドユーザからの情報をキーパッド、音声またはタッチセンサー式方法を介して受容する。非接触スマートカード構成部分はそれぞれ、セキュアエレメントまたは外部のセキュアメモリと通信し得る。非接触スマートカードデバイス１４４は、ワイヤレス無線通信方法１４０またはワイヤレスインターネットネットワーク（Ｗｉ−Ｆｉ）１９６のうち１つを用いてカード発行者１０４およびソフトウェアアプリケーションプロバイダ１１２と通信する。特定の例示的実施形態において、カード発行者１０４は、ワイヤレスサービスプロバイダ１３６であり得る。その後、図１に示す２つの構成部分１０４および１３６は協働してトラステッドサービスマネージャ１０８をホストする。トラステッドサービスマネージャ１０８がカード発行者の１０４側に常駐している様子が図示されている。ソフトウェアアプリケーションプロバイダ１１２は、クレジットカード会社１１６、チケット発行会社（輸送システム）１２０、クーポン会社１２４、認証会社（ロイヤリティ、メンバーシップ、およびセキュリティ認証）１２８、ならびに特定のカードのインスタンス作成に用いられ得る機密または他の保護情報（例えば、アカウント情報を提供する保護情報プロバイダ１２１（例えば、銀行、商業または他の金融サービスプロバイダ））を含み得る。各構成部分１１６〜１２８は、アプリケーションデータおよびソフトウェアアプリケーションをホストする独立したセキュアなコンピュータを含み得る。上記アプリケーションデータおよびソフトウェアアプリケーションは、接続１９６を用いて直接的にまたは１３６および１４０を通じて間接的に非接触スマートカードデバイス１４４へと提供され得る。
【００５９】
特定の例示的実施形態において、ソフトウェアアプリケーションプロバイダ１１２は、トランザクション目的のためのソフトウェアアプリケーションをＴＳＭコンピュータ１０８内でのホスト対象としてカード発行者１０４へと提供する。これらのソフトウェアアプリケーションは、セキュアなＷｉ−Ｆｉ接続１９６を介してセキュアなダウンロード能力を提供し得るが、ワイヤレスモバイル通信のセキュリティ機能を利用するために、ＴＳＭ１０８を用いてソフトウェアアプリケーションを展開させる。特定のセキュアエレメントアプリケーションにおいて、インストールアプリケーションデータまたはソフトウェアアプリケーションのプロセスにおいて署名証明書が用いられる。これらの署名証明書は、ＴＳＭ１０８からセキュアエレメント１５６まで追跡される。従って、セキュアエレメントへのインストールはＷｉ−Ｆｉチャンネル１９６には適用されず、このような状況において、ＧＳＭ（登録商標）／ＣＤＭＡワイヤレスチャンネル１４０を用いると好適であり得る。
【００６０】
図２は、コンピュータによって実行されるシステム２００およびデバイス２４４を示す。システム２００およびデバイス２４４は、非接触スマートカードデバイス内のセキュアエレメントのネームスペースのパーティショニングと、セキュアエレメントの外部にあるソフトウェアアプリケーションからの要求を用いて特定の例示的実施形態に従ってアプリケーションデータをセキュアエレメントに書き込む際とに用いられる。非接触スマートカードデバイス２４４は、セキュアエレメント２５６を含む。セキュアエレメント２５６において、セキュアエレメントは非接触スマートカードの一部であり、内部の構成部分または外部の構成部分として、非接触スマートカードのその他の構成部分それぞれとのセキュアなチャンネル接続を有する。非接触スマートカードのその他の構成部分は、ＮＦＣコントローラ２７６と、アンテナ２８０とを含む。セキュアエレメント２５６は、ＳＩＭカード、ａＵＩＣＣカード、ＣＤＭＡ非接触支払デバイスの集積回路チップまたはＳＤカードの一部であり得る。上記外部のセキュアエレメントおよびセキュアメモリ２８４により、セキュアエレメントに接続された一時的かつセキュアメモリの一例を提供する様子が図示されており、ソフトウェアアプリケーションがインストール前または非活性化時においてセキュアエレメントセクター内の自由空間へと一時的に配置される。
【００６１】
セキュアエレメント２５６は、制御ソフトウェアアプリケーションまたはＴＳＭソフトウェアアプリケーション２６０と、セキュアエレメントネームスペース２６４とを含む。セキュアエレメントネームスペース２６４は、アプリケーションデータと、トランザクション目的のためのソフトウェアアプリケーションとを保持する。一時メモリ２６８は、セキュアエレメントネームスペースの既存のセクターの一部において用いてもよいし、あるいは、セキュアエレメントネームスペースの異なるパーティション内に用いてもよい。一時メモリ２６８は、外部のセキュアエレメント２８４の代わりに用いてもよい。ダウンロードされたアプリケーションデータまたはソフトウェアアプリケーション２７２と、非アクティブにされたソフトウェアアプリケーションとは、一時メモリ２６８内に常駐し得る。ＮＦＣコントローラ２７６は、制御ソフトウェアアプリケーションにおいてまたはセキュアエレメントネームスペースのセクター内において行われた変更を介して起動される。あるいは、非接触スマートカードデバイスがリーダー端末２９２のための無線信号を受動的に送信するように設定されている場合、電話がスイッチオフされて非接触スマートカードデバイス２４４のこの受動的アプリケーションがイネーブルされたとき、ＮＦＣコントローラはアクティブのままであり得る。
【００６２】
特定の例示的実施形態において、ユーザインタフェースソフトウェアアプリケーション２５２はウォレットソフトウェアアプリケーションであり、オペレーティングシステム内または非接触スマートカードデバイス２４４の仮想マシン環境２４８内において実行する。ユーザインタフェースソフトウェアアプリケーション２５２は、情報をエンドユーザへと提供し、上記エンドユーザからの情報をキーパッド、音声またはタッチセンサー式方法を介して受容する。非接触スマートカード構成部分はそれぞれ、セキュアエレメントまたは外部のセキュアメモリと通信し得る。非接触スマートカードデバイス２４４は、カード発行者２０４およびソフトウェアアプリケーションプロバイダ２１２との通信をワイヤレス無線通信方法２４０またはワイヤレスインターネットネットワーク（Ｗｉ−Ｆｉ）２９６のうち１つを用いて行う。特定の例示的実施形態において、カード発行者２０４は、ワイヤレスサービスプロバイダ２３６であり得る。その後、図２に示す２つの構成部分２０４および２３６は、協働してコンピュータをホストし得る。上記コンピュータは、公開鍵を介してソフトウェアアプリケーションを展開させることができ、非ＴＳＭコンピュータ２０８である。ＴＳＭコンピュータ２０８がカード発行者の２０４側に常駐している様子が図示されている。ソフトウェアアプリケーションプロバイダ２１２は、クレジットカード会社２１６、チケット発行会社（輸送システム）２２０、クーポン会社２２４、認証会社（ロイヤリティ、メンバーシップ、およびセキュリティ認証）２２８、ならびに特定のカードをインスタンス作成する際に用いられ得る機密情報または他の保護情報（例えば、アカウント情報）を提供する保護情報プロバイダ２２１（例えば、銀行、商業、または他の金融サービスプロバイダ）を含み得る。各構成部分２１６〜２２８は、アプリケーションデータおよびソフトウェアアプリケーションをホストする独立したセキュアなコンピュータを含み得る。上記アプリケーションデータおよびソフトウェアアプリケーションは、接続２９６を用いて直接的にまたは２３６および２４０を通じて間接的に非接触スマートカードデバイス２４４へと提供され得る。
【００６３】
特定の例示的実施形態において、制御ソフトウェアアプリケーションまたはＴＳＭソフトウェアアプリケーションは、一時メモリ２６８内に保存されている秘密鍵にアクセスする。例示的実施形態において、上記秘密鍵は、非対称暗号化アルゴリズムを用いてカード発行者によって生成される。上記秘密鍵は、所定間隔で変更されてカード発行者２０４からセキュアエレメント２５６へとプッシュされ、これにより秘密鍵のロテーションおよびセキュア性を保持する。さらに、ＴＳＭソフトウェアアプリケーションを制御ソフトウェアアプリケーションと一体化させてもよく、その場合、これら２つのソフトウェアアプリケーションによってソフトウェアアプリケーションプロバイダからのトランザクションソフトウェアアプリケーションを制御することが可能になる。次に、暗号化アルゴリズムによって生成された公開鍵を、多様な法的ソフトウェアアプリケーションプロバイダ（例えば、プロバイダ２１６〜２２８）および非ＴＳＭコンピュータ２０８によってホストされているソフトウェアアプリケーションへと分配する。非対称暗号化アルゴリズムを利用することにより、システム２００において恩恵が得られる。すなわち、ソフトウェアアプリケーションについての簡単な許可（例えば、インスタンス化、停止、開始およびソフトウェアアプリケーションの破棄）においてリモートＴＳＭが不要になる。
【００６４】
上記許可は、ＴＳＭソフトウェアアプリケーション２６０を介して認可され得る。ＴＳＭソフトウェアアプリケーション２６０は、非ＴＳＭコンピュータ２０８および２１６〜２２８からのソフトウェアアプリケーションの復号化および認証を行うための秘密鍵を含む。さらに、上記ＴＳＭソフトウェアアプリケーションは、セキュアエレメント内のインストールされたソフトウェアアプリケーションに対して行われるべき変更についての要求を認証し得、これにより、セキュアエレメントランタイム環境がライフサイクル機能についてソフトウェアアプリケーションの許可を求めるため、ＡＰＩを呼び出すことをさせないようにする。
【００６５】
図３は、ある特定の例となる実施形態に従った、非接触スマートカードデバイス内のセキュアエレメント３０４のネームスペースのデータ構造３００Ａと、セキュアエレメントネームスペース内におけるアプリケーションデータのパーティショニングおよび保存を制御する制御ソフトウェアアプリケーション３００と関連付けられたアプリケーションデータ３００Ｂを示す。上記セキュアエレメントネームスペースを表として図３に示す。この表は、メモリブロック３１６毎に１６バイトを含み、セクター３０８毎に４つのブロック３１２を含む。各メモリブロックは、アクセスメモリブロック３２８Ａ〜Ｚと、データメモリブロック３３２とを含む。各アクセスメモリブロック３２８Ａ〜Ｚは、アクセスキー３２０および３２４をさらに含む。、Ａ鍵３２０Ａ〜ＺおよびＢ鍵３２４Ａ〜Ｚはそれぞれ、ブロック全体に対して１つのアクセスタイプまたは２つ以上の７アクセスタイプの組み合わせを提供する。アクセスメモリブロック３２８は、アクセスビットを含む。上記アクセスビットは、セクター内のブロックに割りあてられたアクセスタイプを記述する。製造業者のブロック３３６は、バージョン情報と、一意の識別子情報とを含む。上記一意の識別子情報は、デフォルトアクセスキーＡおよびＢを導出する。セクター０についてのデータメモリブロックは、セクター０のブロック１およびブロック２内のアプリケーションディレクトリも含む。アプリケーションディレクトリ３３２Ａは、ＡＩＤの下側のソフトウェアアプリケーションまたはアプリケーションデータを含むセクターに対するＡＩＤ情報およびポインタを含む表である。
【００６６】
制御ソフトウェアアプリケーション３４０がアプリケーションデータを含む様子が例示目的のために図示されているが、特定の例示的実施形態において、アプリケーションデータは、同一のセキュアエレメントネームスペース３０４のデータメモリブロック内に保存されるかあるいはセキュアエレメント３０４外部の異なるセキュアエレメント内に物理的または仮想的に保存される。制御ソフトウェアアプリケーション３４０は、全てのアクセスキー３４４を保存する（例えば、Ｂ鍵を変更するためのアクセスキー、セキュアエレメントネームスペース３０４中の各セクターについてのアクセスビット３４８）。セクター種類３５２は、制御ソフトウェアアプリケーション中に保存されているアクセスビットに従って規定され、上記セクター種類により、単一のソフトウェアアプリケーションがセクター内の特定の機能（例えば、書き込み、読み出し、インクリメント、デクリメント、およびディレクトリセクター種類）を行うことが可能になる。さらに、セクター種類と、カード発行者が制御ソフトウェアアプリケーションを介して行ったスロット選択および分配とが関連付けられる。読み出し／書き込みブロックがＳＳＬＯＴセクターに割りあてられ得、一方、トランザクション種類ソフトウェアアプリケーションがセクターを制御しているためＳＳＬＯＴオーナーである場合のみにおいて、セクター１５内の初期値が書き込まれ得る。ソフトウェアアプリケーションが複数のセクター上に保存された場合、セクター毎のＡＩＤが、非接触スマートカード中のソフトウェアアプリケーションの構造に追随するように、制御ソフトウェアアプリケーション中に保存される（３５６）。変更ログは、エンドユーザ要求と、外部のＴＳＭコンピュータによって行われた変更と、セキュアエレメント内のソフトウェアアプリケーションのライフサイクル時において外部のカードリーダーによって行われたアクセスキーについての要求とについて記録をとる。
【００６７】
図４は、特定の例示的実施形態に従ってセキュアエレメントのネームスペースをパーティショニングして、セキュアエレメント内の制御ソフトウェアアプリケーションによる少なくとも２つの保存種類とするための、コンピュータによって実行される方法４００を示す。ブロック４０５において、カード発行者または非接触スマートカードデバイスエンドユーザは、セキュアエレメントネームスペース内の複数のメモリブロックについて、アクセスタイプを定義する（例えば、第１のアクセスタイプ、第２のアクセスタイプ、第１のアクセスキー、および第２のアクセスキー）。第１のアクセスキーおよび第２のアクセスキーはそれぞれ、第１のアクセスタイプ、第２のアクセスタイプ、または第１のアクセスタイプおよび第２のアクセスタイプの組み合わせのうちの１つをセキュアエレメントネームスペース内の複数のメモリブロックへ提供する。制御ソフトウェアアプリケーションを用いて、アクセスタイプおよびアクセスキーを定義することができる。別の実施形態において、上記定義付けは、生成後に上述したようなアクセスキーのロテーション時において行ってもよい。アクセスキーはＡ鍵およびＢ鍵を含み、アクセスタイプは、書き込み、読み出し、インクリメント、デクリメントおよび回復またはデフォルトを含む。
【００６８】
ブロック４１０は、制御ソフトウェアアプリケーションを用いて選択プロセスを行って、セキュアエレメントネームスペース内のメモリブロックの中から、少なくとも第１のメモリブロックグループ、第２のメモリブロックグループ、およびメモリブロックの選択されたグループそれぞれについてのアクセスタイプを選択する。メモリブロックの各選択されたグループ内のメモリブロックのうち少なくとも１つはアクセスメモリブロックであり、メモリブロックの選択されたグループのデータメモリブロック内のソフトウェアアプリケーションまたはアプリケーションデータについての選択されたアクセスタイプを外部のデータ要求側デバイスへと提供する。
【００６９】
ブロック４１５は、送信機能を行う。上記送信機能においては、制御ソフトウェアアプリケーションから、メモリブロックの選択されたグループそれぞれについてアクセスメモリブロック中に保存すべきものとして、メモリブロックの各選択されたグループについて第１のアクセスキー、第２のアクセスキー、および選択されたアクセスタイプを送信し、これにより、セキュアエレメントのネームスペースをパーティショニングして、少なくとも２つの保存種類とする。
【００７０】
図５は、特定の例示的実施形態に従ってセキュアエレメントの外部に常駐するユーザインタフェースソフトウェアアプリケーションからの要求を用いてアプリケーションデータをセキュアエレメントネームスペース中に書き込むための、コンピュータによって実行される方法５００を示す。ブロック５０５は、ユーザインタフェースソフトウェアアプリケーションまたはウォレットソフトウェアアプリケーションから、リモートトラステッドサービスマネージャ（ＴＳＭ）コンピュータ、アプリケーションデータ要求および少なくとも書き込みアクセスタイプについてのアクセスキーへと初期送信機能を行う。ブロック５０５を介して要求されたアプリケーションデータは、セキュアエレメントネームスペースへと書き込まれるべきものである。
【００７１】
ブロック５１０は、受信ステップを行う。上記受信ステップにおいて、要求されたアプリケーションデータと、要求されたアクセスキーとをリモートＴＳＭコンピュータからセキュアエレメントの一時メモリに受信する。上述したように、上記一時メモリは、トランザクション目的のためのアプリケーションデータおよびソフトウェアアプリケーションの保存に用いられるセキュアエレメントについて、物理的または仮想的に異なり得る。例えば、上記一時メモリは、外部のセキュアメモリ１８４および２８４である場合もあれば、一時メモリ１６８および２６８である場合もある。ブロック５１５は、セキュアエレメント中の制御ソフトウェアアプリケーションを用いて、要求されたアプリケーションデータをセキュアエレメントの一時メモリからセキュアエレメントネームスペースのデータメモリブロックへと書き込む。上記データメモリブロックは、制御ソフトウェアアプリケーションによって事前規定われるかまたは割りあてられる。さらに、セキュアエレメントネームスペースのデータメモリブロックは、ＴＳＭコンピュータから受信された要求されたアクセスキーを用いて、制御ソフトウェアアプリケーションによってアクセスされる。
【００７２】
図６は、特定の例示的実施形態に従って非接触スマートカードデバイスのセキュアエレメント内に局所的に設けられたトラステッドサービスマネージャ（ＴＳＭ）を実行するための、コンピュータによって実行される方法６００を示す。ＴＳＭソフトウェアアプリケーションは、ブロック６０５により、非接触スマートカードデバイスのセキュアエレメント内にインストールされる。ブロック６０５は、非接触スマートカード製造時において鍵回転直後のステップまたは非接触スマートカードデバイス内における非接触スマートカードの展開前のステップを示し得る。ＴＳＭソフトウェアアプリケーションは、セキュアエレメントの制御ソフトウェアアプリケーション内において用いてもよいし、あるいは独立的に実行してもよい。上記ＴＳＭソフトウェアアプリケーションは、要求アプリケーションデータに対する送信機能を実行するためのコンピュータコードと、暗号化形態の受信アプリケーションデータを復号化するための復号化機能とを含む。上記復号化機能において、上記受信アプリケーションデータは、送信機能からの要求に応答して、非接触スマートカードデバイスにおいて受信される。
【００７３】
ブロック６１０は、秘密鍵をセキュアエレメント内に保存する。ここで、上記秘密鍵はＴＳＭソフトウェアアプリケーションへと割りあてられ、上記秘密鍵は、（例えば非対称暗号化アルゴリズムを用いて）公開鍵と共に生成される。
【００７４】
送信ステップの後、ブロック６１５を介して、ＴＳＭソフトウェアアプリケーションから複数の登録リモート非ＴＳＭコンピュータのうちの１つへと、アプリケーションデータ要求が送信される。これらの非ＴＳＭコンピュータは、図２のデバイス２０８および２１６〜２２８を含む。上記リモート非ＴＳＭコンピュータは、上記要求に応答してアプリケーションデータを暗号化するための公開鍵へアクセスするように、構成される。ＴＳＭソフトウェアアプリケーションはまた、アプリケーションデータ要求をＴＳＭコンピュータへと送信することができる。上記ＴＳＭコンピュータは、上記公開鍵を用いてデータをデバイス２４４へと返送することができる。
【００７５】
ブロック６２０は、非接触スマートカードデバイスにおいて受信機能を行う。上記受信機能において、暗号化アプリケーションデータが受信および保存される。上記暗号化アプリケーションデータは、ｍａｙｂｅｓｔｏｒｅｄｉｎ当該目的のために割りあてられたセキュアエレメントセクター内の一時メモリ内に保存してもよいし、あるいは、非接触スマートカードデバイスに所属する外部のセキュアメモリを介して保存してもよく、その場合、上記外部のセキュアメモリは、セキュアな通信チャンネルを介してセキュアエレメントへと接続される。アプリケーションデータプロバイダは、要求されたアプリケーションデータを公開鍵を用いて暗号化した後、暗号化データをデバイス２４４へと通信してブロック６２０において受信させることができる。
【００７６】
ブロック６２５は、ＴＳＭソフトウェアアプリケーションに割りあてられた秘密鍵を用いて暗号化アプリケーションデータを復号化する。上記復号化されたアプリケーションデータは、セキュアエレメントの所定データメモリブロック内へインストール可能な状態であり、データメモリブロック割り当ては、メモリブロックの現状と、メモリブロックへ割りあてられたアクセスビットと、セクターＳＳＬＯＴまたはＲＳＬＯＴの状態とに基づいて、制御ソフトウェアアプリケーションによって決定される。
【００７７】
例示的実施形態において、セキュアエレメント２５６には、一意の秘密鍵および対応する公開鍵が割りあてられ得る。先ずＴＳＭソフトウェアアプリケーションがインストールされた場合、上記ＴＳＭソフトウェアアプリケーションは、２つの公開鍵／秘密鍵対を生成し、これらの鍵対を内部に保存することができる。１つの鍵対は、図６を参照して説明したように暗号化通信の受信のために用いられ、他方の鍵対は、ＴＳＭソフトウェアアプリケーションがメッセージ署名を行うことを可能にするために用いられる。
【００７８】
トラステッドエンティティ（例えば、リモートトラステッドサービスマネージャ）は、ＴＳＭソフトウェアアプリケーションと接触して公開鍵を入手し、証明書を生成することができる。これらの証明書により、これらの公開鍵が実際に実際のセキュアエレメント中のＴＳＭソフトウェアアプリケーションと関連付けられていることをサードパーティが確認することが可能になる。その後、これらのサードパーティ（例えば、図２のデバイス２０８および２１６〜２２８）は、公開鍵を用いてメッセージを暗号化し、暗号化メッセージをセキュアエレメント２５６へ送り、受信されたメッセージの発生元がセキュアエレメント２５６であることを確認する。
【００７９】
復号化のための秘密鍵を用いたＴＳＭソフトウェアアプリケーションの復号化機能の起動は、セキュアエレメント２５６内にインストールされた他のアプリケーションのみが呼び出すことができる。証明書は、公開鍵／秘密鍵対に基づいて、公開鍵のセキュリティが保証できる様態で生成され得る。
【００８０】
図７は、目的、アクセス条件７０４、アクセスタイプ７０８〜７１２、およびアクセスキー（例えば、特定の例示的実施形態に従って非接触スマートカードの多様なセクター内のメモリブロックに割りあてられ得る７２０および７２４）のパーティショニングおよび提供のためにセキュアエレメントネームスペースへのアクセスを制御するための、コンピュータによって実行される方法７００を示す。列７１６中に羅列されるセクターまたはメモリブロックにおいて、制御ソフトウェアアプリケーションを介して実行することが可能な変更の種類が、アクセス条件７０４によって定義される。制御ソフトウェアアプリケーションは、アクセス条件情報を図３に示す表３００Ｂと共に保存する。第１の行内の読み出しアクセスタイプは、鍵Ａ１へ設定される。鍵Ａ１は、同一の鍵Ａ１を非接触スマートカードへ表示することが可能な外部のカードリーダーデバイスにより、関連セクター７２８が読み出され得ることを暗示する。同様に、７２８において、鍵Ａ１またはＢ１を用いて、アクセス条件によって定義されたセクターへの書き込み能力へアクセスすることができる。例示目的のため、輸送システムを用いて、アクセスビットを有するセクターについて、出口および入口データ入力を可能にするためのアクセスメモリブロックにおいて、外部のカードリーダーは、出口ステーションおよび入口ステーションを書き込むために、スマートカードをＢ鍵と共に特定のセクターへ提供する。初期値の変更は、セクター７４０において鍵Ｂ２を用いて行われ得る。鍵Ｂ２は、鍵Ｂ１と異なり得る。自動改札機におけるカードリーダーは、このセクターへアクセスすることができない場合があり、輸送事務所にある特殊リーダーを用いれば、このセクターへアクセスして非接触スマートカードへ値を付加することができる。
【００８１】
これらのアクセスキーそのものは、特定の状況において変更することが可能であるが、本明細書中に記載の実施形態において、制御ソフトウェアアプリケーションは、カード発行者とソフトウェアアプリケーションプロバイダとの間の契約義務に基づいて、Ｂ鍵の変更を記録および許可する。そのため、図７に示すように、同一の鍵Ａ２またはより特権レベルの高い鍵である鍵Ｂ２を用いて鍵Ａ２７５２を変更することができ、先ず当該セクターのアクセスメモリブロック内のアクセスキーへアクセスすることができる。鍵Ｂ２は、常により高レベルのセキュリティ鍵であり、鍵Ｂ２を用いて、選択されたセクターの鍵Ａ２および鍵Ｂ２へのアクセスキー変更を図示のように７４４〜７６４を介して行うことができる。選択セクターに対して逆方向の作業が可能である場合であっても、Ｂ鍵をＡ鍵で変更することはできない。最後に、アクセスメモリブロック中のアクセスビットを変更し（７７６）、これにより、メモリブロックの異なる特権をＲＳＬＯＴおよびＳＳＬＯＴ目的のために割りあてることができる。さらに、メモリブロック中のソフトウェアアプリケーションを読み出して異なるメモリブロック内に保存した後、アクセスキーまたはアクセスビットを変更することができる。その後、アクセスキーおよびビットの変更後、アプリケーションデータまたはソフトウェアアプリケーションを新規メモリブロックまたは元のメモリブロックに再度書き込むことができる。ＲＳＬＯＴの場合、例示目的のため、メモリセクター７２８および７４０がＳＳＬＯＴである必要があり、これにより、公共交通機関管理所がこれらのスロット内のデータへ値を付加することが可能となる。しかし、アクセスメモリブロック中のアクセスビットはＳＳＬＯＴではなくＲＳＬＯＴであってもよく、これにより、公共交通機関管理所が（ブロック中の鍵を変更する必要無く）アクセス条件をインクリメントからデクリメントへと変更することが可能になる。
【００８２】
本開示の１つ以上の態様は、本明細書中に記載および例示される機能を具現化するコンピュータプログラムを含み得る。上記コンピュータプログラムは、命令を含むコンピュータシステムにおいて実行される。上記命令は、上記命令を実行する機械可読媒体およびプロセッサ中に保存される。しかし、コンピュータプログラミングにおける開示内容を実行するための方法は他にも多くあり、本開示は任意の１組のコンピュータプログラム命令に限定されたものとして解釈されるべきではないことが明らかである。さらに、熟練のプログラマであれば、添付のフローチャートおよび本出願の関連記載に基づいて、本開示の実施形態を実行するためのこのようなコンピュータプログラムを書くことができる。よって、特定の１組のプログラムコード命令の開示は、本開示の作製および利用方法の適切な理解のために必須であるとはみなされない。本開示の発明機能について、以下の例示的実施形態の説明と、プログラムフローを例示する図面とを参照しつつより詳細に説明する。
【００８３】
上記に示した実施形態における例示的方法および動作は例示的なものであり、別の実施形態において、本開示の範囲および意図から逸脱することなく、特定の動作を異なる順序で行うことも可能であるし、並列に行うことも可能であるし、全体的に省略することも可能であり、かつ／または異なる例示的実施形態において組み合わせることも可能であり、かつ／または特定のさらなる動作を行うことも可能である。よって、このような代替的実施形態は、本明細書中に記載される開示に含まれる。
【００８４】
例示的実施形態は、上記した方法および処理機能を行うコンピュータハードウェアおよびソフトウェアと共に用いられ得る。当業者であれば理解ｓるうように、本明細書中に記載されるシステム、方法および手順は、プログラマブルコンピュータ、コンピュータで実行可能なソフトウェアまたはデジタル回路において具現化することが可能である。ソフトウェアは、コンピュータで読み出し可能な媒体上に保存することができる。例えば、コンピュータで読み出し可能な媒体を挙げると、フロッピー（登録商標）ディスク、ＲＡＭ、ＲＯＭ、ハードディスク、リムーバブルメディア、フラッシュメモリ、メモリスティック、光媒体、磁気光学媒体、ＣＤーＲＯＭなどがある。デジタル回路を挙げると、集積回路、ゲートアレイ、ビルディングブロック論理、フィールドプログラマブルゲートアレイ（「ＦＰＧＡ」）などがある。
【００８５】
特定の実施形態について詳述してきたが、本記載はあくまで例示目的のためのものである。よって、上記した多くの態様は、他に明記無き限り、必要な要素または本質的な要素としてみなされるべきではないことが理解されるべきである。当業者が本開示を読めば、上記したもののの他にも、以下の特許請求の範囲に規定された本開示の意図および範囲から逸脱することなく、例示的実施形態の開示の態様に対応する多様な変更および同等の動作を行うことができる。本開示の特許請求の範囲は、このような変更構造および同等構造を包含するよう、最も広く解釈されるべきである。
【符号の説明】
【００８６】
１００  システム
１０４  カード発行者
１０８  トラステッドサービスマネージャ
１１２  ソフトウェアアプリケーションプロバイダ
１１６  クレジットカード会社
１２０  チケット発行会社
１２１  保護情報プロバイダ
１２４  クーポン会社
１２８  認証会社
１３６  ワイヤレスサービスプロバイダ
１４０  ワイヤレスチャンネル
１４４  非接触スマートカードデバイス
１４８  仮想マシン環境
１５２  ユーザインタフェースソフトウェアアプリケーション
１５６  セキュアエレメント
１６０  制御ソフトウェアアプリケーション
１６４  セキュアエレメントネームスペース
１６８  一時メモリ
１７２  ソフトウェアアプリケーション
１７６  ＮＦＣコントローラ
１８０  アンテナ
１８４  セキュアメモリおよびセキュアエレメント
１８８  リーダー端末
１９６  ワイヤレスインターネットネットワーク
【図１】
0005524425.tif 000002
【図２】
0005524425.tif 000003
【図３】
0005524425.tif 000004
【図４】
0005524425.tif 000005
【図５】
0005524425.tif 000006
【図６】
0005524425.tif 000007
【図７】
0005524425.tif 000008