(57)【要約】デバイス（２００；３００）であって、当該デバイス（２００；３００）の第一の部分（２０２）に設けられる第一のアプリケーション・ユニット（４０１）および第二のアプリケーション・ユニット（４０２）と；当該デバイス（２００；３００）の第二の部分（２１２；３０２）に設けられる転送ユニット（２１１）とを有しており；前記転送ユニット（２１１）は、第一のアプリケーション・ユニット（４０１）と第二のアプリケーション・ユニット（４０２）との間でメッセージを伝送するよう適応されており；前記第二の部分（２１２；３０２）より前記第一の部分（２０２）においてより高いレベルのセキュリティが提供されているか、および／または、前記転送ユニット（２１１）は、第一のアプリケーション・ユニット（４０１）と第二のアプリケーション・ユニット（４０２）との間でメッセージを伝送するときに、通信マスターの役割をするよう適応されている、デバイス。
2008530936.tif 000002
【特許請求の範囲】
【請求項１】
デバイスであって、
いずれも当該デバイスの第一の部分に設けられる第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと；
当該デバイスの第二の部分に設けられる転送ユニットとを有しており；
前記第二の部分より前記第一の部分においてより高いレベルのセキュリティが提供されており；
前記転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するよう適応されている、
デバイス。
【請求項２】
第一の通信プロトコルに従う、少なくとも一つの読み取りおよび／または書き込み装置との通信のために設計された読み取りおよび／または書き込み装置インターフェースを有する、
請求項１記載のデバイス。
【請求項３】
前記転送ユニットによって前記第一のアプリケーション・ユニットと前記第二のアプリケーション・ユニットとの間でメッセージを伝送するために、前記第一の通信プロトコルを使用するよう適応されている、
請求項２記載のデバイス。
【請求項４】
前記転送ユニットが、前記第一のアプリケーション・ユニットから第二の通信プロトコルに従ってメッセージを受信し、該メッセージを、前記第二のアプリケーション・ユニットに変換メッセージを送るために前記第一の通信プロトコルに変換するよう適応されている、
請求項２記載のデバイス。
【請求項５】
前記転送ユニットが、前記第一のアプリケーション・ユニットから前記第一の通信プロトコルに従ってメッセージを受信し、該メッセージを、前記第二のアプリケーション・ユニットに変換メッセージを送るために第二の通信プロトコルに変換するよう適応されている、
請求項２記載のデバイス。
【請求項６】
前記第一のアプリケーション・ユニットおよび前記第二のアプリケーション・ユニットを含むプロセッサを有しており；
前記プロセッサと少なくとも一つの読み取りおよび／または書き込み装置との間の通信のために設計された読み取りおよび／または書き込み装置インターフェースを有しており；
前記読み取りおよび／または書き込み装置インターフェースを介したユーザーと前記プロセッサとの間の通信を開始するために設計された少なくとも一つのユーザー入力および／または出力ユニットを有する、
請求項１記載のデバイス。
【請求項７】
前記第一のアプリケーション・ユニットは、対応するアプリケーションに関係したデータを前記プロセッサに加えることはでき、前記第一のアプリケーション・ユニットは該データを前記少なくとも一つのユーザー入力および／または出力ユニットが出力できるフォーマットで提供することはできず；
前記第二のアプリケーション・ユニットは少なくとも、前記第一のアプリケーション・ユニットによって与えられた前記データを前記少なくとも一つのユーザー入力および／または出力ユニットが出力できるフォーマットに変換することができる、
請求項６記載のデバイス。
【請求項８】
前記転送ユニットが、前記第一のアプリケーション・ユニットと前記第二のアプリケーション・ユニットとの間のメッセージの伝送に関する通信マスターの役割をするよう適応されている、
請求項１記載のデバイス。
【請求項９】
前記第一のアプリケーション・ユニットが、前記第二のアプリケーション・ユニットに伝送されるメッセージの内容に関するコンテンツ・マスターの役割をするよう適応されている、
請求項８記載のデバイス。
【請求項１０】
前記第一のアプリケーション・ユニットと前記第二のアプリケーション・ユニットとの間で伝送されるメッセージが暗号化されるまたは暗号化可能であるよう適応されている、
請求項１記載のデバイス。
【請求項１１】
前記転送ユニットが、該転送ユニットによって前記第一のアプリケーション・ユニットと前記第二のアプリケーション・ユニットとの間で伝送されるメッセージを解読できない、
請求項１０記載のデバイス。
【請求項１２】
前記転送ユニットによって前記第一のアプリケーション・ユニットと前記第二のアプリケーション・ユニットとの間でメッセージを、ISO7816に従って伝送するよう設計されている、請求項３記載のデバイス。
【請求項１３】
デバイスの第一の部分にある第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、前記デバイスの第二の部分にある転送ユニットとを有しており、前記第二の部分より前記第一の部分においてより高いレベルのセキュリティが提供される前記デバイスを動作させる方法であって、
第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で転送ユニットを介してメッセージを伝送するステップを有する方法。
【請求項１４】
デバイスであって、
当該デバイスの第一の部分に設けられる第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、
当該デバイスの第二の部分に設けられる転送ユニットとを有しており、
前記転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するよう適応されており、
前記転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するときに、通信マスターの役割をするよう適応されている、
デバイス。
【請求項１５】
前記第一のアプリケーション・ユニットが、前記第二のアプリケーション・ユニットに伝送されるメッセージの内容に関するコンテンツ・マスターの役割をするよう適応されている、
請求項１４記載のデバイス。
【請求項１６】
デバイスの第一の部分にある第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、前記デバイスの第二の部分にある転送ユニットとを有する前記デバイスを動作させる方法であって、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で転送ユニットを介してメッセージを伝送するステップを有しており、転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するときに、通信マスターの役割をするよう適応されている、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスを動作させることのデバイスおよび方法に関する。
【背景技術】
【０００２】
スマートカードまたはチップカードは、クレジットカード大のカード内、あるいはさらに小さいGSMカードのようなカード内に埋め込まれた小型で安全な暗号プロセッサであることができる。スマートカードは通例、電池は含まず、電力はカード読み取り器／書き込み器によって供給される。カード読み取り器／書き込み器とはすなわち、スマートカードからデータを読み取ることによって、またはスマートカードにデータを書き込むことによってスマートカードの機能を制御するための読み取りおよび／または書き込み装置である。
【０００３】
スマートカード・デバイスは、金融、セキュリティ・アクセスおよび運輸の分野で普通に使われている。スマートカードは通例、カード保有者のデータ（たとえば、名前、口座番号、たまったポイント数）の安全な記憶手段として機能する高セキュリティ・プロセッサを含む。
【０００４】
スマートカードにおいて直接的にユーザー・インターフェース機能の統合を可能にすることは困難な課題である。たとえば、ユーザーに対して情報を表示するためのディスプレイがスマートカード内に統合されることがありうる。あるいは、ユーザーがデータを入力できるようにするためにスマートカードにボタンが含められることもありうる。
【０００５】
スマートカードは、意識的に、ユーザー対話機能を提供するマン・マシン・インターフェースをもたないように設計された。ユーザー対話のサポート欠如は、既知のスマートカードのハードウェア設計およびソフトウェア設計（オペレーティング・システム）の両方に反映されている。
【０００６】
この意識的な選択は、薄くて柔軟なディスプレイ技術の欠如によって、およびスマートカードに課される強いセキュリティ上の要求に駆られてきた。今日では、薄くて柔軟なディスプレイの技術は存在しているので、ユーザー対話を難しくしているのは厳格なセキュリティ規則と手順である。消費者電子装置から、およびパーソナル・コンピュータ装置から知られているAPI（アプリケーション・プログラミング・インターフェース）の導入は難しい。というのも、セキュリティ規則は、あらゆるシステム構成要素が、たとえばセキュリティおよび信頼性に関して、特別な手順の管理下で開発されなければならないことを要求するからである。これは、何らかのチップカードのプロセッサ構成要素またはソフトウェア構成要素を開発または変更するときに、長い検証手順とそれに続く長い産業受容のプロセスを必要とする。
【０００７】
以下に、図１を参照して、従来技術に基づく、統合ディスプレイ機能をもつスマートカード１００について述べる。
【０００８】
スマートカード１００は、スマートカード機能を提供する集積回路が形成されたプラスチック基板１０１を有する。
【０００９】
スマートカードのうち高いレベルのセキュリティが提供されるセキュリティ・ドメインまたはプロセッサ１０２（安全なICプロセッサ）には、カード・マネージャ・ユニット１０３（これは論理的ユニット、アプリケーション・プロトコル・データ・ユニット（APDU）が受領されるときに走っているソフトウェア手順であってもよい）が配置されており、該カード・マネージャ・ユニット１０３は、種々の用途に供するために必要とされるデータおよびコマンドを含んでいるアプリケーション・ユニット１０４の複数と通信するよう適応されている。スマートカード１００を動作させるためのソフトウェアを含むオペレーティング・システム１０５が提供される。さらに、それぞれ対応するハードウェア・ユニット１０７を駆動するための複数のドライバ・ユニット１０６が設けられる。
【００１０】
スマートカード１００は、スマートカード読み取りおよび書き込み端末１０８と通信するよう設計されている。端末１０８とスマートカード１００との間の通信は、ISO7816に従ったアプリケーション・プロトコル・データ・ユニット（APDU）の交換を介して実行される。カード・マネージャ・ユニット１０３は、前記アプリケーション・ユニット１０４のうちの特定のものとAPDUを交換することを、前記アプリケーションのうちの対応する一つを実行するために行う。
【００１１】
スマートカード１００の内部構造は標準的な（パーソナル・コンピュータのような）アーキテクチャと同様で、よく知られた層モデルで記述できる。ハードウェア・ユニット１０７を見ると、これらのユニットは、プロセッサ、メモリ、周辺装置および直接、低レベルのドライバと一緒にはたらくいくつかの暗号化／復号コプロセッサを含みうる。ドライバ・ユニット１０６は、オペレーティング・システム層（OSL）の一部をなす。OSLは、ハードウェアの機能のアプリケーションへの抽象化を提供し、諸アプリケーションによって頻繁に再利用される追加的な機能を提供する。オペレーティング・システム１０５は、電源投入の際のチップ初期化の役割も担う。
【００１２】
オペレーティング・システムの上では、図１にアプリケーション・ユニット１０４として概略的に示した提供者固有のアプリケーションが走らされてもよい。スマートカード１００のようなスマートカードは、読み取りおよび書き込み端末１０８のような端末とともに使用されるのが一般的なので、マスター・スレーブ様の通信挙動が展開される。これは、端末１０８が、プロセッサ１０２にアプリケーション・プロトコル・データ・ユニット（APDU）を送ってスマートカード１００との通信を開始するということを意味している。カード・マネージャ１０３は、APDU内のアドレス・フィールドを使って、そのAPDUがどのアプリケーション・ユニット１０４に転送されるべきかを認識しうる。指定されたアプリケーションは、その情報の受領後、要求された動作を実行し、応答として端末１０８に状態／データを返す。この通信方式は、複雑なアプリケーションについては、端末１０８およびスマートカード１００の両方が実際の通信状態を記憶しなければならないことを要求する。
【００１３】
上で記載された構成要素およびその機能とは別に、スマートカード１００は、該スマートカード１００のユーザー・インターフェース機能を許容するための拡張を有する。
【００１４】
この目的のため、スマートカード１００のうちセキュリティ・ドメイン（security  domain）１０２に関係しない部分に、ボタン１１２およびディスプレイ・ハードウェア１１３が設けられる。ユーザーがボタン１１２によってコマンドを入力することを介してスマートカード１００と対話することを許容するために、ボタン１１２と、安全ドメイン（secure  domain）１０２内でハードウェア・ユニット１０７のレベルに配置されたディスプレイ・インターフェース・ユニット１１１との間に接続がある。さらに、ディスプレイ・ハードウェア１１３上に表示されるデータをユーザーが視覚的に知覚できるようにするため、ディスプレイ・ドライバ・ユニット１１０がドライバ・ユニット１０６のレベルに設けられる。図１に示したスマートカード１００では、ディスプレイ機能またはユーザー・インターフェース機能はディスプレイ１１３およびボタン１１２によって提供される。さらに、オペレーティング・システム１０５の拡張または適応が必要であり、これは図１ではオペレーティング・システム拡張１０９として概略的に示されている。
【００１５】
スマートカード１００は、実線で示された標準的なブロックの隣に、点線でマークされた追加的なブロック１１０、１１１、１１２、１１３を含む。これらの追加的ブロックがユーザー・インターフェース機能を提供する。対応するディスプレイ・ドライバ１１０をもつ新しいハードウェア構成要素１１１が追加されており、オペレーティング・システム１０５は、アプリケーション・ユニット１０４に従って実行されるアプリケーションにディスプレイ機能APIを提供するための関数で拡張されていることが見て取れる。
【００１６】
しかしながら、図１に基づくスマートカード１００の実装にはいくつかの欠点がある。
【００１７】
第一に、オペレーティング・システム１０５は、オペレーティング・システム拡張１０９の形の修正を必要とする。これは開発コストおよび検証コストを生じる。さらに、スマートカード１００の安全ドメイン１０１に干渉する修正のため、潜在的なセキュリティ・リスクが発生する。
【００１８】
第二に、ハードウェア・ドライバの追加とは別に、スマートカード１００について、ネイティブなマスター・スレーブ・モードとは異なる追加的な使用モードが定義される必要がある。この追加的モードは、スマートカード１００が端末外で（いわゆる「スタンドアローン・モード」）始動されたときに、ユーザーによるボタン１１２の押下に反応し、情報を表示するために使用できるものである。これはスマートカード１００システムのアーキテクチャに影響し、追加的なセキュリティ脅威をもたらし、追加的な適格性が要求される。
【００１９】
第三に、アプリケーション・ユニット１０４は、ディスプレイ機能を組み込むために修正される必要がある。これは、EMV（Europay,  Mastercard,  VISA；クレジット／デビット金融カード用途についての標準）またはCEPS（Common  Electronic  Purse  Specification；電子財布（e-Purse）用途についての標準）のようなよく知られ、確立され、受け容れられた標準については、実現が困難であり、規格化のやり直しが求められることになる。
【００２０】
第四に、スマートカード・デバイス（チップ）は、ディスプレイ１１３およびディスプレイ・ドライバ１１０にそれぞれ通信するために、追加的に、ハードウェア・インターフェース、つまりディスプレイ・インターフェース１１１を有することを求める。そのようなインターフェースは、セキュリティ脅威のため、望まれないことがありうる。US6,256,690は、マイクロプロセッサおよびメモリを有しており、メモリが第一および第二のアプリケーションを記憶するスマートカードを開示している。メモリはさらに、少なくとも第一のアプリケーションからメッセージ・データ・オブジェクトを受け取るよう適応され、少なくとも第二のアプリケーションに該データ・メッセージ・オブジェクトを通信するよう適応されているメッセージ・ボックスと呼称されるメモリ部分を有する。しかしながら、US6,256,690に基づくこのアーキテクチャおよび通信方式は、そのICカードを操作するときにセキュリティ問題が発生しうるという欠点がある。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
デバイスの構成要素間の効率的な通信を可能にすることが本発明の一つの目的である。
【課題を解決するための手段】
【００２２】
上に規定した目的を達成するため、独立請求項に基づく、デバイスを動作させることのデバイスおよび方法が提供される。
【００２３】
本発明のある例示的な実施形態によれば、いずれも当該デバイスの第一の部分に設けられる第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、当該デバイスの第二の部分に設けられる転送ユニットとを有するデバイスであって、前記第二の部分より前記第一の部分においてより高いレベルのセキュリティが提供されるデバイスが提供される。転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するよう適応されうる。
【００２４】
さらに、本発明の別の例示的な実施形態によれば、当該デバイスの第一の部分にある第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、当該デバイスの第二の部分にある転送ユニットとを有するデバイスであって、前記第二の部分より前記第一の部分においてより高いレベルのセキュリティが提供されるデバイスを動作させる方法が提供される。本方法は、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で転送ユニットを介してメッセージを伝送するステップを有しうる。
【００２５】
本発明のさらにもう一つの実施形態によれば、当該デバイスの第一の部分に設けられる第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、当該デバイスの第二の部分に設けられる転送ユニットとを有するデバイスが提供される。転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するよう適応されうる。転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するときに、通信マスターの役割をするよう適応されうる。
【００２６】
本発明のいま一つの実施形態によれば、デバイスを動作させる方法であって、前記デバイスは、該デバイスの第一の部分にある第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットと、該デバイスの第二の部分に設けられる転送ユニットとを有する方法が提供される。本方法は、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で転送ユニットを介してメッセージを伝送するステップを有しうる。ここで、転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するときに、通信マスターの役割をするよう適応されうる。
【００２７】
本発明の例示的な実施形態に基づく効率的な通信アーキテクチャは、コンピュータ・プログラムによって、すなわちソフトウェアによって、あるいは一つまたは複数の特別な電子最適化回路を使うことによって、すなわちハードウェアで、あるいは混合型で、すなわちソフトウェア構成要素およびハードウェア構成要素によって、実現できる。
【００２８】
「アプリケーション・ユニット」の用語は、具体的には、デバイスの任意のソフトウェアおよび／またはハードウェア構成要素であって、デバイス全体の操作の枠組みにおいて割り当てられた機能またはサービスを提供する能力を有するものを表しうる。そのようなアプリケーションは、当該デバイスがクレジットカードである例では、クレジット残高の値のような特定のデータの提供でありうる。別のアプリケーションは、当該デバイスがクレジットカードである例では、特定のフォーマットの、たとえば表示装置上に表示される用意のできたデータの提供である。そのようなアプリケーションは、当該デバイス上で走っているまたは提供されている他のアプリケーションに依存していてもよいし、独立していてもよい。
【００２９】
「転送ユニット」の用語は、具体的には、デバイスの任意のソフトウェアおよび／またはハードウェア構成要素であって、データソースから受け取ったデータをデータ目的地に転送する能力を有するものを表しうる。この転送は、当該転送ユニットによる何らかのデータの処理を含んでいてもよいし、排除していてもよい。たとえば、転送ユニットはデータを修正することなく単にデータを伝達するだけでもよい。あるいはまた、転送ユニットは、データを目的地に送る前にデータを解析、解釈または修正（たとえばフォーマット変更）してもよい。
【００３０】
「より高いレベルのセキュリティ」の用語は、具体的には、当該デバイスの第一の部分で講じられうるデータの安全な扱いに関係する何らかの措置が、当該デバイスの第二の部分で講じられていないという意味を有しうる。換言すれば、第一の部分は、第二の部分にない少なくとも一つのセキュリティ機能を有しうるのである。また、第二の部分は比較的安全な領域でありうるが、絶対的な尺度では第一の部分ほど安全ではないことがありうるのである。あるいはまた、第二の部分において一切セキュリティ施策が講じられていなくてもよい。「セキュリティ」は具体的には、データ・アクセスおよびデータ転送の安全性を表しうるものであり、データにアクセスしたり他の仕方で扱ったりする、あるいは当該デバイスの特定の部分にアクセスする権限に関する制約を含みうる。これは、データ暗号化および／またはデータ・アクセスのために要求されるパスワードのような機能を含みうる。
【００３１】
「通信マスター」の用語は、具体的には、その対応する通信エンティティまたはインスタンスが、そのときスレーブとして動作している一つまたは複数の他の通信エンティティまたはインスタンスとの通信を開始および／または制御するという意味を有しうる。コンピュータ・ネットワーキングでは、マスター／スレーブは、一つのエンティティまたはプロセス（マスターとして知られる）が一つまたは複数の他のエンティティまたはプロセス（スレーブとして知られる）を制御する、通信プロトコルのためのモデルでありうる。ひとたびマスター／スレーブ関係が確立されると、制御の方向は常にマスターからスレーブでありうる。
【００３２】
「コンテキスト・マスター」の用語は、具体的には、その対応するエンティティがそれぞれ、メッセージのコンテキストを担う、あるいはメッセージを生成するという意味を有しうる。
【００３３】
本発明に基づく特徴は、特に、効率的な通信アーキテクチャが実現されうるという共通の効果を有しうる。第一の側面によれば、これは、安全な領域にアプリケーション・ユニットを、それほど安全ではない領域に転送ユニットまたはデータ・ミラーを設け、アプリケーション・ユニット間の通信が、（既存の）アプリケーション・ユニットを修正および検証する必要なしに転送ユニットを介して可能にされうるようにすることによって達成されうる。第二の側面によれば、これは、アプリケーション・ユニットをスレーブとして提供し、転送ユニットまたはデータ・ミラーをマスターが通信を制御および開始しうる通信方式において関わってくるマスターとして提供することによって達成されうる。これは、通信メッセージの内容を受け取る二つのアプリケーション・ユニットの少なくとも一つが、そのメッセージの起点を認識も解析もしなくてよく、よって、既存のモジュール内に、この（既存の）アプリケーション・ユニットを新たな使用目的に適応させる必要なしに、実装されうるという同様の効果を有しうる。
【００３４】
第一の側面によれば、二つのアプリケーション・ユニット（いずれも安全な領域内に位置している）の間で伝送されるべきメッセージの安全な転送が転送ユニット（それほど安全ではない、またはセキュリティ保護されていない領域に位置している）によって仲介される。換言すれば、デバイスの安全な部分に位置している二つのアプリケーション・ユニットの間で伝送されるべきデータの「反射」を許容しうる転送ユニットの形でデータ・ミラーが設けられる。転送ユニットは、二つのアプリケーション・ユニットの間で送られるデータを復号や修正する必要はなくてもよい。これは、デバイスのセキュリティ部分に設けられた二つのアプリケーション・ユニットの間の通信を、該アプリケーション・ユニットを修正する必要なしに可能にすることを許容することがありうる。安全な部分に設けられるアプリケーション・ユニットを修正するのは非常に時間がかかり、困難であるのに対し、アプリケーション・ユニットの間でデータを伝達または伝送するためのセキュリティ領域からは離れた転送ユニットを提供することはずっと容易でありうるのである。
【００３５】
本発明に基づくデバイスの例示的な用途はスマートカードである。ここで、二つのアプリケーション・ユニットは二つの異なるアプリケーションを提供することができ、スマートカードの安全なプロセッサ内で提供される。転送ユニットは該安全なプロセッサの外部で提供されることができ、アプリケーション・ユニットの間の通信を許容しうる。
【００３６】
たとえば、アプリケーション・ユニットの一方が視覚的に表示可能となるようデータを整形する機能を提供してもよく、他方のアプリケーション・ユニットが特定のデータ内容をスマートカード内に提供する機能を提供してもよい。このデータ内容がスマートカードの表示装置上に表示される必要があるシナリオでは、該データ内容はメッセージとして定式化されることができ、これが対応するアプリケーション・ユニットから、データ・ミラーまたは転送ユニットを介して、該データを表示可能なように再フォーマットできる他方のアプリケーション・ユニットに伝送される。この施策を講じることにより、データ内容を提供することはできるが表示可能データを提供することはできない（検証済みの）アプリケーション・ユニットを修正することなく、スマートカードにディスプレイ機能を提供することが可能となりうる。
【００３７】
本発明のある側面によれば、スマートカードのプロセッサによって実施される異なる安全なソフトウェア・モジュール（たとえばクレジットカード、電子財布）の間での通信が可能にされる。ここで、プロセッサは外部からの操作に対して安全にされていることができる。この通信は、本発明の実施形態によれば、ソフトウェア・モジュールを修正するまたは従って適応させる必要なしに、可能にされうる。スマートカードの安全にされた部分に設けられるソフトウェア・モジュールの修正は、修正されたスマートカードのセキュリティ検証を必要とし、それは金銭的に高い費用と時間の損失を要求することになる。
【００３８】
この目的のため、あるアプリケーションから別のアプリケーションにメッセージを伝達できるデータ・ミラーが安全な部分の外に設けられうる。この脈絡では、スマートカードとリモート端末（現金自動支払機またはスマートカード読み書き装置のような）の間の通信についてと同じ（または別の）通信プロトコルが使用されうる。こうして、アプリケーション間の通信について、端末（現金自動支払機またはスマートカード読み取り器）との通信についてと同じ通信プロトコルが使用されてもよい。これは、少なくとも通信経路のある部分については成り立ちうる。
【００３９】
ある例示的な実施形態によれば、アプリケーション・ユニットにとって、リモート端末と通信しているのか、あるいは（転送ユニットを介して）別のアプリケーション・ユニットと通信しているのかを認識するのは、「不可視」または検出不能でありうる。
【００４０】
よって、アプリケーション・ユニットは安全な部分に位置されていてもよく、転送ユニットは当該デバイスのそれほど安全ではない部分に位置されていてもよい。それほど安全ではない部分では、より低い度合いのセキュリティが提供されているか、全くセキュリティが提供されていない。こうして、このそれほど安全でない部分にアクセスするための要件は、当該デバイスのより安全な部分にアクセスするための要件ほど厳格ではないことがありうる。
【００４１】
こうした施策を講じることは、端末とスマートカードとの間で有効なあらゆるセキュリティ機能が、アプリケーション・ユニット全部を書き換える必要なしに、アプリケーション・ユニット間の通信についても有効となりうるという効果を有しうる。こうして、検証試験が省略可能となりうる。さらに、そのようなシステム、たとえばスマートカードのためのオペレーティング・システムは不変のままでありうる。送信するまたはソース側のアプリケーションだけが能動的になる必要がある。
【００４２】
第一の通信ユニットは、一つまたは複数の第二のアプリケーション・ユニットに逐次的または同時にメッセージを送りうる。これは非常に効率的なデータ交換を許容しうる。
【００４３】
本発明のある側面によれば、いずれもデバイスの第一のドメインに位置される第一および少なくとも一つの第二のアプリケーションの間の、前記デバイスの第二のドメインに位置される転送モジュールを介した通信の方法が提供される。第二のドメインは、第一のドメインほど、工作（tampering）に対して安全でなくてもよい。本方法は、前記デバイスとリモート端末との間の通信に使われる通信プロトコルに従って第一のアプリケーションから前記転送モジュールにメッセージを伝送し、前記通信プロトコルに従って該メッセージを前記転送モジュールから第二のアプリケーションに伝送するステップを有しうる。
【００４４】
本発明に基づくデバイスは、接触型デバイスとして、あるいは非接触デバイスとして実現されうる。
【００４５】
本発明のある例示的な実施形態によれば、異なるアプリケーション・ユニット間での通信のために当該デバイス（たとえばスマートカード）のオペレーティング・システムにいかなる修正も必要としないデバイスが提供される。二つのアプリケーションのうちの一つだけが、ミラー機能と協働するよう準備される必要がある。他方のアプリケーションは完全に不変のままであってもよい。
【００４６】
前記ミラー機能によれば、一方のアプリケーションが、他方のアプリケーションに、ちょうど端末がするように、アプリケーション・プロトコル・データ・ユニット（APDU）を送りうる。換言すれば、第一のアプリケーションは、イニシアチブを取り、データ交換プロセスにおけるマスターである端末の役割を演じることができる。第二のアプリケーションは原則として、本物の端末でなく第一のアプリケーションと通信していることには気づかなくてもよい。
【００４７】
たとえば、安全な領域内の（既存および／または新規の）部分の間での通信は、スマートカードの一部ではあるが安全な領域の外に位置していてもよい第三者としての転送ユニットを介して行われてもよい。よって、既存の部分（たとえば高セキュリティのレガシー・アプリケーション）は不変のままでいることができる。デバイス内通信に使用される通信プロトコルは端末とデバイスの通信に使われるのと同じでもよいからである。
【００４８】
レガシー・アプリケーションは、ディスプレイ・アプリケーションと同様、安全な領域に設けられてもよい。これに対し、第三者としてのスマート・ディスプレイ・コントローラが安全な領域外に設けられてもよく、これがレガシー・アプリケーションとディスプレイ・アプリケーションとの間で交換されるメッセージを伝達してもよい。
【００４９】
たとえば、ディスプレイ・アプリケーションは、スマート・ディスプレイ・コントローラに対して、データとともに、データをレガシー・アプリケーションに転送する要求を送りうる。すると、スマート・ディスプレイ・コントローラはそのデータを要求されたとおりに転送しうる。その後、レガシー・アプリケーションは、通常の仕方で（端末と通信するように）応答しうる。スマート・ディスプレイ・コントローラは、その応答をディスプレイ・アプリケーションに転送しうる。さらに、ディスプレイ・アプリケーションは、スマート・ディスプレイ・コントローラに、受け取ったデータを表示するよう要求しうる。
【００５０】
これは、全体的なシステム・セキュリティに影響することなく、ディスプレイ機能の既存のスマートカード・システムへの迅速な統合を許容しうる。さらに、既存のシステムに対する上位互換性も提供されうる。
【００５１】
前記した第二の側面によれば、転送ユニットは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間でメッセージを伝送するとき、通信マスターの役割をするよう適応されうる。換言すれば、転送ユニットは、二つのアプリケーション・ユニットの間の通信の開始者となりうるのである。具体的には、転送ユニットは、第一のアプリケーション・ユニットに、通信が確立されるべきかどうかを尋ねる問い合わせを送りうる。第二のアプリケーション・ユニットにメッセージが送られるべきである場合、第一のアプリケーション・ユニットは転送ユニットにそのメッセージを供給する。すると、転送ユニットはそのメッセージを第二のアプリケーション・ユニットに（元のフォーマットで、または再フォーマットして）送る。換言すれば、転送ユニットは、前記アプリケーション・ユニットのうち特定のものからメッセージを受け取る、および／または特定のものにメッセージを送ることの開始に関わるマスターの役割をしうる。他方、アプリケーション・ユニットはこの階層レベルにおけるスレーブとして行動する。これと対照的に、ブロードキャストされるべきメッセージの内容に関しては、送り側のアプリケーション・ユニットは一種のマスターとして行動し、受け取り側のアプリケーション・ユニットはスレーブとして行動しうる。
【００５２】
転送ユニットを、実装される通信アーキテクチャの通信マスターとして、アプリケーション・ユニットをスレーブとして適応することにより、少なくともメッセージを受け取るアプリケーション・ユニットは、どのユニットが通信を開始したのかを気づく必要はなく、単に要求されたサービスを提供するだけでよくなる。これは、（第二の）アプリケーション・ユニットのために既存のハードウェアおよび／またはソフトウェア・モジュールが使用できるという帰結を有しうる。このアプリケーション・ユニットは複雑な通信経路を意識することなく単にオンデマンドでその機能を満たすので、そのようなモジュールを特定の通信経路に適応させることは省略可能でありうる。
【００５３】
記載される側面に基づくデバイスは、たとえばトランスポンダとして実現されうるし、あるいはまたUSBバス通信のフレームにおいて実現されうる。
【００５４】
従属請求項について言えば、本発明のさらなる例示的な実施形態について以下に述べる。これらの実施形態は、本発明の前記第一の側面および前記第二の側面両方にあてはまる。
【００５５】
具体的には、第一および第二の実施形態に基づく側面のいずれも、第三および第四の実施形態に基づくデバイスの範囲内で実現されうる。
【００５６】
次に、デバイスの例示的な実施形態について述べる。これらの実施形態は、デバイスを動作させる方法にも適用されうる。
【００５７】
デバイスは、第一の通信プロトコルに従う少なくとも一つの読み取りおよび／または書き込み装置との通信のために設計された読み取りおよび／または書き込み装置インターフェースを有しうる。換言すれば、デバイスは、当該デバイスからデータが読み取りおよび／または書き込み装置によって読み取られることができ、ならびに／または、当該デバイスにデータが読み取りおよび／または書き込み装置によって書き込まれることができるような仕方で、適応されうる。デバイスと読み取りおよび／または書き込み装置との間の通信のためには、ある特定の通信プロトコルが使用されうる。
【００５８】
具体的に、デバイスは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で転送手段によって（すなわち、転送手段を介して）メッセージを伝送するために前記第一の通信プロトコルを使用するよう適応されうる。この実施形態によれば、同一の通信プロトコルが、一方ではデバイスと読み書き装置との間の通信のために、他方では転送ユニットを介したデバイスの二つのアプリケーション・ユニット間の通信のために使用されうる。単一の通信プロトコルの要件のみを考えればいいので、これはデバイスの単純化された構築を許容しうる。
【００５９】
具体的に、デバイスの転送ユニットは、ある第二の通信プロトコル（前記第一の通信プロトコルと異なるものでもよい）に従ってメッセージを第一のアプリケーション・ユニットから受け取り、該メッセージを、第二のアプリケーション・ユニットに変換メッセージを送るために第一の通信プロトコルに変換するよう適応されうる。この実施形態によれば、いずれもデバイスの第一のドメイン内に位置している前記第一のアプリケーションと前記少なくとも一つの第二のアプリケーションとの間の通信が可能にされうる。この通信は、第一のドメインほどは工作に対して安全でない当該デバイスの第二のドメインに位置する転送モジュールによって仲介されうる。この脈絡においては、第一のアプリケーション・ユニットから転送モジュールにメッセージが伝送されうる。さらに、そのメッセージは転送モジュールにおいて、デバイスとリモート端末との間の通信のために使用される通信プロトコルに従って変換されうる。この変換は、メッセージ・フォーマットを第一の通信プロトコルから第二の通信プロトコルに変更しうる。次いで、変換されたメッセージが、転送モジュールから第二のアプリケーション・ユニットに伝送されうる。
【００６０】
あるいはまた、デバイスの転送ユニットは、第一のアプリケーション・ユニットから第一の通信プロトコルに従ってメッセージを受け取り、第二のアプリケーション・ユニットに変換メッセージを送るために前記メッセージをある第二の通信プロトコル（前記第一の通信プロトコルと異なるものでもよい）に変換する。この実施形態によれば、いずれもデバイスの第一のドメイン内に位置しうる前記第一のアプリケーションと前記少なくとも一つの第二のアプリケーションとの間の通信が提供される。この通信は、第一のドメインほどは工作に対して安全でない当該デバイスの第二のドメインに位置しうる転送モジュールによって仲介されうる。この実施形態の範囲においては、第一のアプリケーション・ユニットから転送モジュールに、デバイスとリモート端末との間の通信のために使用される第一の通信プロトコルに従って、メッセージが伝送されうる。さらに、このメッセージは転送モジュールにおいて、第二のアプリケーションによって使用され、第二の通信プロトコルと称される通信プロトコルに従うように変換されうる。次いで変換されたメッセージが転送モジュールから第二のアプリケーションに伝送されうる。
【００６１】
本発明のもう一つの例示的な実施形態によれば、第一の部分にはセキュリティ機能が設けられてもよく、第二の部分はセキュリティ機能が全くなくてもよい。この実施形態によれば、第一の部分の構成要素内での、および第一の部分の構成要素との通信は、不正なアクセスに対して保護されることができ、高度のセキュリティが与えられる。これに対し、第一の部分の外にある構成要素はセキュリティ施策が実装されない。これは、これらの構成要素の単純な構築およびこれらの構成要素への単純な外部アクセスを許容する。
【００６２】
本発明に基づくデバイスは、第一のアプリケーション・ユニットおよび第二のアプリケーション・ユニットを含むプロセッサを有しうる。さらに、本デバイスは、プロセッサと少なくとも一つの読み取りおよび／または書き込み装置との間の通信のために設計された読み取りおよび／または書き込み装置インターフェースを有しうる。さらに、本デバイスは、ユーザーとプロセッサとの間の通信を該読み取りおよび／または書き込み装置インターフェースを介して開始するために設計された、少なくとも一つのユーザー入力および／または出力ユニットを有しうる。
【００６３】
「プロセッサ」の用語は、具体的には、たとえばマイクロプロセッサまたは中央処理装置（CPU）のような、制御ユニットまたはスマートカード管理ユニットを表しうる。そのようなプロセッサは、モノリシック集積回路として製造されてもよく、たとえば半導体（特にシリコン）技術で生産されてもよい。
【００６４】
「読み取りおよび／または書き込み装置」の用語は、具体的には、スマートカードからデータを読み取ることにより、および／またはスマートカードにデータを書き込むことによりスマートカードの機能を制御するための（当該デバイス、たとえばスマートカードに対して）外部の装置を表しうる。
【００６５】
「ユーザー入力および／または出力ユニット」の用語は、具体的には、少なくとも部分的に本デバイス（たとえばスマートカード）上に設けられることができ、人間のユーザーが本デバイスと対話することを許容する装置を表しうる。具体的には、そのようなユーザー入力および／または出力ユニットは、ユーザーが、一方向的または双方向的にデータをプロセッサに送信し、および／またはプロセッサから受信することを許容しうる。そのデータは、スマートカードによって提供される特定のアプリケーションに関係していてもよい。
【００６６】
「インターフェース」は具体的には、通信システムの特定の構成要素への接続またはアクセスを提供しうる。
【００６７】
記述される実施形態によれば、提供されるデバイス、たとえばスマートカードは、スマートカードから情報を読み取り、および／またはスマートカードに情報を書き込むための読み取りおよび／または書き込み装置へのプロセッサの接続のためにも使用される同じ信号経路を介してプロセッサに接続されるユーザー・インターフェース（たとえばディスプレイおよび／またはキーパッド）を提供する。ユーザー（ユーザー・インターフェースとしてのユーザー入力および／または出力ユニット上で対話的に作業する）とプロセッサとの間の通信が、読み取りおよび／または書き込み装置インターフェースによって開始されうる。換言すれば、ユーザー・インターフェースとプロセッサとの間の通信は、プロセッサ側からの通信の制御ではなく、ユーザーの側から制御できる。したがって、プロセッサ（スマートカードの安全な部分に位置していることができる）の観点からは、読み取りおよび／または書き込み（マスター）端末との通信は、入力および／または出力（マスター）ユニットとの通信と同様または同一の仕方で実現されうる。こうして、本発明の記載された実施形態に基づくスマートカードのプロセッサは、読み取りおよび／または書き込み端末との通信チャネルおよびユーザー入力および／または出力（マスター）ユニットとの通信チャネルの両方においてスレーブとして動作しうる。こうして、この通信は、プロセッサを収容する安全な部分を不変のままに保ち、それにより高いレベルのセキュリティを提供する。
【００６８】
さらに、第一のアプリケーション・ユニットは、プロセッサに、対応するアプリケーションに関係しうるデータを提供することができてもよく、第一のアプリケーション・ユニットは、前記少なくとも一つのユーザー入力および／または出力ユニットによって出力できるフォーマットでデータを提供することができなくてもよい。さらに、第二のアプリケーション・ユニットは少なくとも、第一のアプリケーション・ユニットによって提供されたデータを、前記少なくとも一つのユーザー入力および／または出力ユニットによって出力できるフォーマットに変換することができてもよい。こうして、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間の通信は、ユーザー入力および／または出力ユニットによって仲介されることができ、該ユーザー入力および出力ユニットはこのときデータ・ミラーまたは転送ユニットとして作用している。この実施形態はまた、セキュリティ部分に位置されていてもよいが表示可能データを提供することはできない既存のアプリケーション・ユニットを拡張することも許容しうる。拡張は、第一のアプリケーション・ユニットによって提供されるデータを表示可能なフォーマットに変換する機能を満たしうる第二のアプリケーション・ユニットである。また、第二のアプリケーション・ユニットは、安全部分に設けられうる。変換機能に加えて、第二のアプリケーション・ユニットは、任意的に、一つまたは複数のさらなる機能を満たしうる。すなわち、データを表示できるフォーマットにする変換機能に制約されない。
【００６９】
転送ユニットが、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間のメッセージの伝送に関する通信マスターの役割をするよう適応されてもよい。したがって、転送ユニットは、アプリケーション・ユニット間の通信を開始することができ、この目的のために、対応する通信ネットワークを確立しうる。このレベルでは、どちらのアプリケーション・ユニットもスレーブとして作用する。
【００７０】
第一のアプリケーション・ユニットが、第二のアプリケーション・ユニットに送信されるメッセージの内容に関するマスターの役割をするよう適応されてもよい。換言すれば、第一のアプリケーション・ユニットが第二のアプリケーション・ユニットと通信するとき、第一のアプリケーション・ユニットはスレーブ様の第二のアプリケーション・ユニットとのこの通信の内容を制御でき、特に、そのような通信に基づくメッセージに関係した主題またはデータ内容を指定できる。このレベルでは、第二のアプリケーション・ユニットがスレーブとして作用する。
【００７１】
第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間の通信は、転送ユニットとしての前記少なくとも一つのユーザー入力および／または出力ユニットによって仲介されうる。したがって、ユーザー入力および／または出力ユニットは、単に第一のアプリケーション・ユニットから第二のアプリケーション・ユニットに、または第二のアプリケーション・ユニットから第一のアプリケーション・ユニットにデータを転送するデータ・ミラーとして機能しうる。
【００７２】
デバイスは、第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間で伝送されるメッセージが暗号化されるよう適応されてもよい。この施策を講じることにより、メッセージが安全でない領域を介して仲介されるときであっても、暗号化が高いセキュリティ基準が維持されることを保証するので、安全な通信システムが得られる。復号のために要求される復号鍵はみな安全な部分の内部に位置されうる。
【００７３】
本デバイスにおいて、転送ユニットは、メッセージを復号できなくてもよい。その結果、仲介するインスタンスが仲介されるメッセージを復号する機能をもたないので、高いレベルのセキュリティが達成されうる。
【００７４】
第一のアプリケーション・ユニットと第二のアプリケーション・ユニットとの間の通信は、少なくとも一つのアプリケーション・プロトコル・データ・ユニット（APDU）の伝送を含みうる。アプリケーション・プロトコル・データ・ユニットは、ISO7816規格に基づく通信ユニットとして定義されうる。二つのエンティティ間でコマンドを伝送するコマンドAPDUとコマンドへの応答を伝送する応答APDUがある。APDU通信方式は、よく知られたOSIモデル（Open  Systems  Interconnection）に関係する。特にスマートカードについては、APDUの概念はISO7816-4に記載されており、ここで明示的に参照しておく。
【００７５】
デバイスの第一のアプリケーション・ユニットは、レガシー・アプリケーション・ユニット、すなわち、洗練された追加的な（たとえば表示）機能を提供することのない用途を提供するだけのアプリケーションであってもよい。
【００７６】
デバイスは、ISO7816に従って第一のアプリケーション・ユニットと第二のアプリケーション・ユニットの間でメッセージを伝送するために設計されてもよい。これに関し、アプリケーション・プロトコル・データ・ユニット（APDU）の定義および使用に関係するISO7186の部分が特に参照される。ISO7816シリーズまたは規格は、スマートカードの物理的な形ならびにその電気的コネクタの位置および形のみならず、それらのコネクタに適用される通信プロトコルおよび電源電圧ならびにスマートカードに送られるコマンドおよびスマートカードによって返される応答の機能およびフォーマットを定義する。転送ユニットを介したアプリケーション・ユニット間の通信は、この実施形態によれば、読み取りおよび／または書き込み装置とプロセッサとの間の通信と同じ業界標準に従って実施されうる。
【００７７】
本発明に基づくデバイスは、スマートカードまたは近距離場通信デバイスとして実現されうる。
【００７８】
本発明に基づくスマートカードとして実現されるデバイスの例示的な応用は、クレジットカードとして、携帯電話用のSIMカードとして、有料テレビ用の認可カード（authorization  card）として、身分証明およびアクセス・コントロール・カードとして、公共交通チケットとして、などとしての使用を含む。
【００７９】
本発明に基づくスマートカードは、接触型スマートカードとしても、非接触スマートカードとしても実現されうる。接触型スマートカードでは、プロセッサを含む集積回路または半導体チップが電気伝導性の接点により認識されることができる。無接触スマートカードとも称されうる非接触型スマートカードでは、チップは、無線式の自己電源の誘導技術により（具体的には、カード読み取り器／書き込み器とスマートカードの間で、たとえば高周波領域で、電磁波を交換することによって）カード読み取り器／書き込み器と通信しうる。本発明に基づく非接触スマートカードの技術は、RFID（Radio  Frequency  Identification［電波方式認識］）の技術を用いて実現されることもできるし、あるいはそれと組み合わせることもできる。
【００８０】
代替的に、デバイスは、近距離場通信（NFC:  nearfield  communication）として実現されてもよい。近距離場通信は、ユーザーが、単に二つのデバイスを近づけるだけで、あらゆる種類の情報を安全に交換することを可能にしうる。そのたとえば数センチメートルの短距離相互作用は、同定の問題全体を大いに単純にしうる。デバイスがすぐ近くのものしか「聞く」ことができなければ混乱は少なくなるのである。NFCは、デジタルカメラ、PDA、セットトップボックス、コンピュータおよび携帯電話といった装置を接続することを許容しうる。本発明の上に定義した諸側面およびさらなる側面は、以下に述べる実施例から明らかであり、それらの実施例を参照しつつ説明する。
【００８１】
本発明について以下に、実施例を参照しつつより詳細に述べるが、本発明はそれに限定されるものではない。
【発明を実施するための最良の形態】
【００８２】
図面の図解は概略的なものである。異なる図面において、同様または同一の要素には同じ参照負号を与えている。
【００８３】
以下の図面の記述において、「スマート・ディスプレイ・コントローラ」の用語は、「転送ユニット」の例として使用される。同様に、「ディスプレイ・アプリケーション・ユニット」および「レガシー・アプリケーション・ユニット」の用語は、「第一のアプリケーション・ユニット」および「第二のアプリケーション・ユニット」の例として使用される。「プロセッサ」の用語は安全な「第一の部分」を表すことができ、「ユーザー入力および出力ユニット」の用語はそれほど安全ではない「スマートカード」の「第二の部分」を表すことができる。「スマートカード」はより一般的な用語「デバイス」の例である。しかし、本発明はこれらの例に限定されるものではない。
【００８４】
以下では、図２を参照しつつ、本発明の例示的な実施形態に基づくスマートカード２００について詳細に述べる。図２で同様の構成要素に関する限り、図１の上記の記述が補足として参照される。
【００８５】
スマートカード２００のさまざまな構成要素はプラスチック基板２０１の上および／または中に設けられる。図２に示されるスマートカード２００は複数のアプリケーション（そのそれぞれがアプリケーション・ユニット２０４の特定の一つに関係している）を提供できる。スマートカード２００は、種々のアプリケーションにサービスする範囲における計算および制御機能を実行するよう設計されているマイクロプロセッサ２０２を有する。
【００８６】
スマートカード読み取りおよび書き込み端末２０８（カード読み取り器／書き込み器とも称される）が、スマートカード２００において保存または生成された情報を読み取るために、あるいは外から入力されたデータをスマートカード２００にプログラムするまたは導入するために設けられる。スマートカード２００の読み取りおよび書き込み装置インターフェース２１３は、スマートカード読み取りおよび書き込み装置２０８とマイクロプロセッサ２０２との間の双方向通信のために設計される。
【００８７】
さらに、ユーザー入力および出力ユニット２１２（I/Oユニット）がスマートカード内に設けられる。ユーザー入力および出力ユニット２１２は、人間のユーザー（図示せず）とマイクロプロセッサ２０２との間の、スマートカード読み取りおよび書き込み装置インターフェース２１３を介した通信を能動的に開始することができる。こうして、ユーザー入力および出力ユニット２１２とマイクロプロセッサ２０２との間での通信の範囲において、ユーザー入力および出力ユニット２１２はマスターの役割を果たし、マイクロプロセッサ２０２はスレーブの役割を果たす。電子工学の分野では、マスターの役割を演じるのは通例はマイクロプロセッサなので、この割り当ては非典型的である。しかしながら、この割り当ては、スマートカード２００の異なる構成要素間のデータ転送のセキュリティを改善するという決定的な利点を有する。
【００８８】
ユーザー入力および出力ユニット２１２はスマート・ディスプレイ・コントローラ２１１を有している。スマート・ディスプレイ・コントローラ２１１は、記述される実施形態によれば、ハードウェアで実現され、プロセッサ２０２とディスプレイ・ハードウェア２１０およびボタン２０９（ユーザー入力および出力ユニット２１２のさらなる構成要素として）との間の通信を調整する。
【００８９】
ユーザーはコマンドを入力できる。該コマンドは、プロセッサ２０３に、スマート・ディスプレイ・コントローラ２１１およびインターフェース２１３を介して与えられ、これらのデータは、アプリケーション・ユニット２０４に割り当てられたアプリケーションの一つのコンテキストにおいて、さらに処理される。たとえば、アプリケーションは、クレジット／デビット金融カード・アプリケーションなどであることができる。さらに、スマートカード２００によって実行されるアプリケーションに関係したデータがプロセッサ２０２からインターフェース２１３およびスマート・ディスプレイ・コントローラ２１１を介して、ディスプレイ・ハードウェア２１０に送信されることができ、ディスプレイ・ハードウェア２１０が対応する情報を、人間のユーザーにとって見える、および／または聞こえるように表示する。
【００９０】
図２から見て取れるように、スマートカード２００はセキュリティ部分またはプロセッサ２０２と、残りの非セキュリティ部分に分けられる。複数のアプリケーション・ユニット２０４を含んでいるマイクロプロセッサ２０２はセキュリティ部分にある。さらに、スマートカード２００を動作させるためのソフトウェア構成要素を有しうるオペレーティング・システム２０５が提供される。さらに、複数のドライバ・ユニット２０６および複数のハードウェア・ユニット２０７が設けられる。ハードウェア・ユニット２０７のそれぞれは、サブプロセッサ、メモリ、周辺装置または暗号化／復号サブプロセッサといった構成要素を含みうる。
【００９１】
スマートカード読み取りおよび書き込み端末２０８とマイクロプロセッサ２０２との間の通信のために使用される通信プロトコルは、ユーザー（図示せず）が操作するユーザー入力および出力ユニット２１２をとマイクロプロセッサ２０２との間の通信のための通信プロトコルに等しい。これらの通信チャネルはいずれも、アプリケーション・プロトコル・データ・ユニット（APDU）の交換によって、業界標準ISO7816に従って実現される。
【００９２】
ユーザー入力および出力ユニット２１２は、ディスプレイ２１０（これはフィリップス・フレキシブル・ディスプレイ・システムズ技術に基づいて実現できる）およびボタン２０９を含む。図２に示される実施形態によれば、ユーザー入力および出力ユニット２１２はハードウェア・ユニットとして実現される。
【００９３】
スマートカード２００は、スマートカード・デバイスの高セキュリティ世界および対応するソフトウェアが本質的に不変なままである（よって潜在的な攻撃に対してセキュリティ保護され、非脆弱である）迅速、安全かつ低価格のデバイスだが、既存のセキュリティ・インフラストラクチャーを通じてユーザー対話を実現するためのカード・アプリケーションの可能性を含んでいる。図２に示される実施形態はスマートカード２００ハードウェアに接続されたディスプレイ２１０とボタン２０９に焦点を当てるが、本発明に基づくシステムは、たとえば指紋読み取り器などといった他のカード内電子回路を接続することもできる。
【００９４】
以下では、既存の物理的および論理的インターフェースを通じたディスプレイ機能のハードウェア／ソフトウェア接続が記載される。図２は、ディスプレイ機能をもつスマートカード・システムの拡張を示している。スマートカード２００では、スマートカード・プロセッサ・システム（ハードウェアおよびソフトウェア）は本質的に不変のままであり、よって安全なままである。図２では、I/O機能は、スマートカード２００のプロセッサまたは安全ドメイン２０２の隣の別個のブロック２１２として追加されている。
【００９５】
スマート・ディスプレイ・コントローラ２１１は、ISO7816インターフェース２１３を使って、マイクロプロセッサ２０２とAPDUを交換することによって、スマートカード・アプリケーションと通信する（より詳細には、マイクロプロセッサ２０２と通信する）。ユーザー入力および出力ユニット２１２とマイクロプロセッサ２０２との間の通信は、スマートカード読み取りおよび書き込み端末２０８との通信と同じようにして実現される。インターフェース２１３を通じて、スマート・ディスプレイ・コントローラ２１１はあるアプリケーション・ユニット２０４に、対応するメッセージによって、ボタン２０９がユーザーによって押されたことを通知することができ、それぞれのアプリケーション２０４にディスプレイ２１０に表示されるべきデータを求める。ユーザー入力および出力ユニット２１２の追加をしても、変更は、ディスプレイ２１０上でデータを駆動するためのプロトコルを理解する必要のあるアプリケーションにのみ存するので、システムのセキュリティは影響されない。他のシステム構成要素の修正は必要とされない。
【００９６】
スマート・ディスプレイ・コントローラ２１１はハードウェアおよびソフトウェアの両方で実現できる。ここで、両方の実現は概念に関しては同じである。
【００９７】
スマートカード２００は、スマート・ディスプレイ・コントローラ２１１のハードウェアでの実現を示している。これは、ディスプレイ・ドライバにおける機能ブロックの実装を必要とし、そのドライバへのISO7816接点への接続を必要とする。ディスプレイ機能はアプリケーション開発者に依存するのみなので、図２の実施形態は非常に柔軟である。そのようなシナリオでは、マイクロプロセッサ２０２に対する追加的なハードウェア・インターフェースは必要とされない。
【００９８】
以下では、図３を参照しつつ、本発明のもう一つの例示的な実施形態に基づくスマートカード３００について述べる。
【００９９】
図３に示した実施形態では、スマート・ディスプレイ・コントローラ２１１はソフトウェアで実現される。よって、ユーザー入力および出力ユニット３０２のスマート・ディスプレイ・コントローラ２１１はスマートカード３００のソフトウェア・ブロック３０４内にある。スマート・ディスプレイ・コントローラ２１１はさらに、ボタン２０９およびディスプレイ・ハードウェア２１０を含んでいる。受信機／送信機バッファ３０３（RX/TXバッファ）およびファイアウォール・ユニット３０１もソフトウェア・ブロック３０４内にある。
【０１００】
スマート・ディスプレイ・コントローラ２１１をソフトウェアで実現することは、関数コールによってソフトウェアで、たとえば受信機／送信機バッファ３０３を通じて、APDUをマイクロプロセッサ２０２のカード・マネージャ２０３に送信および受信する機能があるということを意味する。スマート・ディスプレイ・コントローラ２１１は、ソフトウェア・コマンドに基づいても動作される。スマート・ディスプレイ・コントローラ２１１は、安全な領域２０２（フィリップス・スマートカード・プロセッサ上のフィリップスMifareエミュレーションと同様）から完全に分離された、カード・コントローラのファイアウォールされた領域内で走る。スマート・ディスプレイ・コントローラ２１１は、専用インターフェースを通じて、たとえばシリアル・インターフェースを通じてディスプレイ・ハードウェア２１０およびボタン２０９を駆動する。図３のこの実施形態は、検証を全く、またはわずかしか必要としない。
【０１０１】
以下では、図４を参照して、本発明のある例示的な実施形態に基づくスマートカードの、スマート・ディスプレイ・コントローラのデータ・ミラー機能を実装する部分４００について述べる。
【０１０２】
図４は、レガシー・アプリケーションにディスプレイ・機能を追加する概念を示している。図４のシステムは、図２に示されたデバイス２００に、あるいは図３に示されたデバイス３００に統合できる。特に、図１ないし図３を参照しつつ言及したあらゆる側面が図４についても成り立ちうる。より詳細には、図４に示すような構成要素４０１および４０２は図２または図３内で、構成要素２０４のいずれの位置にも接続されうる。
【０１０３】
図４に見られるように、部分４００は、セキュリティ部分またはプロセッサ２０２にあるディスプレイ・アプリケーション・ユニット４０１およびやはりセキュリティ部分またはプロセッサ２０２にあるレガシー・アプリケーション・ユニット４０２を有している。ディスプレイ・アプリケーション４０１およびレガシー・アプリケーション・ユニット４０２とは別に、さらなるアプリケーション・ユニット２０４がセキュリティ部分２０２に設けられている。以下に述べるように、ディスプレイ・アプリケーション・ユニット４０１とレガシー・アプリケーション・ユニット４０２の間の通信は、複数の伝送チャネル４０３ないし４０７を介して実行されることができ、データ・ミラーまたは転送ユニットとして作用するスマート・ディスプレイ・コントローラ２１１によって仲介されうる。
【０１０４】
図４に示される実施形態は、よく確立され、標準化されたレガシー・アプリケーション、たとえば電子財布（CEPS、Geldkarte、Chipknip）からの情報（レガシー・アプリケーション・ユニット４０２に含まれるもののような）を表示する問題を解決する。多くの場合、そのような既存のアプリケーションは、電子財布に保存されている金額のような情報をディスプレイ上に表示するようには設計されていない。
【０１０５】
この問題に対するストレートな解決策は、アプリケーション・ユニットにディスプレイ機能を追加することであろう。しかしながら、そのアプローチは、多大な開発努力と、それに続く検証および業界での受容を達成するための長い期間を要することになる。
【０１０６】
もう一つの可能な解決策は、スマート・ディスプレイ・コントローラ２１１内での端末エミュレーション機能の実装でありうる。そのようなエミュレートされた端末はレガシー・アプリケーションから要求されるデータ（たとえば電子財布の金額）を読み取り、フォーマットし、ディスプレイ上に表示することができる。ところが、そのような解決策はいくつかの欠点があるであろう。たとえば、スマート・ディスプレイ・コントローラ２１１は、種々のアプリケーション規格（ドイツについてはGeldkarte、オランダについてはChipknipまたは新しいカードについてはCEPS）のためのプロトコルを含め端末機能全体を実装する必要があろう。それはハードウェアおよび／またはソフトウェアの複雑かつ高価なブロックにつながるであろう。
【０１０７】
さらに、レガシー・アプリケーション・ユニット４０２との通信はしばしば暗号化される。よってこの実装は、暗号化鍵が、カード完成プロセスの間にスマート・ディスプレイ・コントローラ２１１内に保存されることを要求することになる（これは費用集約的かつ複雑である）。スマート・ディスプレイ・コントローラ２１１内での暗号アルゴリズムの実装も要求される。さらに、スマートカード上に表示される情報について、カスタマイズの可能性はない。それには、スマート・ディスプレイ・コントローラ２１１が表示内容をフォーマットしなければならないはずだからである。
【０１０８】
図４に基づく解決策は、スマート・ディスプレイ・コントローラ２１１内におけるAPDUパッケージのためのミラー機能および別個のディスプレイ・アプリケーション・ユニット４０１の実装である。このディスプレイ・アプリケーション・ユニット４０１は、標準的な既知のレガシー・アプリケーション・プロトコルを使って、表示内容をフォーマットするために必要な情報を取得することができる。ディスプレイ・アプリケーション・ユニット４０１とディスプレイ・アプリケーション変換ユニット４０２との間で伝送されるいかなる通信メッセージも、図４に示すように、スマート・ディスプレイ・コントローラ２１１を通じてミラーされる。図４では、スマートカードのいくつかの関連する構成要素が部分４００として示されている。通信の矢印４０３ないし４０７は、絵を簡単にするために、ISO7816プロトコルのデータ交換のマスター‐スレーブ原理を象徴している。
【０１０９】
アプリケーション構成要素は、スマートカードICの安全領域２０２内にカプセル化される。図４の実装では、一つまたは複数の所与のレガシー・アプリケーション・ユニット４０２のデータを、スマート・ディスプレイ・コントローラ２１１を通じて取得、解釈および表示するために設計された特別なアプリケーションであるディスプレイ・アプリケーション・ユニット４０１がある。
【０１１０】
通信は以下のようにはたらく：スマート・ディスプレイ・コントローラ２１１はディスプレイ・アプリケーション・ユニット４０１および／またはレガシー・アプリケーション・ユニットとの通信を開始でき、この通信方式におけるマスターとして作用しうる。一方、構成要素４０１、４０２はスレーブとして作用する。ディスプレイ・アプリケーション・ユニット４０１はスマート・ディスプレイ・コントローラ２１１に、通信メッセージを、目標のレガシー・アプリケーション・ユニット４０２にミラーする（すなわち転送する）よう要求を送る。該要求とともに、ディスプレイ・アプリケーション・ユニット４０１は、カプセル化されたAPDUを送り、このAPDUはレガシー・アプリケーション・ユニット４０２に転送されることになる。第一の伝送矢印４０３を参照。換言すれば、伝送されるべきメッセージの内容に関しては、ディスプレイ・アプリケーション・ユニット４０１はマスターの役割をし、レガシー・アプリケーション・ユニット４０２がスレーブの役割をする。
【０１１１】
その後、スマート・ディスプレイ・コントローラ２１１は、要求されたAPDUをレガシー・アプリケーション・ユニット４０１に送る（すなわちミラーする）。第二の伝送矢印４０４を参照。
【０１１２】
レガシー・アプリケーション・ユニット４０２は、スマート・ディスプレイ・コントローラ２１１へのデータ／状態をもって通常の仕方で（ちょうど端末との通信と同様に）応答する。第三の伝送矢印４０５を参照。
【０１１３】
スマート・ディスプレイ・コントローラ２１１は該応答を再びディスプレイ・アプリケーション・ユニット４０１にミラーする。第四の伝送矢印４０６を参照。
【０１１４】
次いで、ディスプレイ・アプリケーション・ユニット４０１は、レガシー・アプリケーション・ユニット４０２から受け取ったデータに基づいて、スマート・ディスプレイ・コントローラ２１１に表示内容を与えることができる。第五の伝送矢印４０７を参照。
【０１１５】
この方法の著しい利点は、改良されたセキュリティである。スマート・ディスプレイ・コントローラ２１１はミラーされたデータを解釈する必要はないので、暗号鍵が安全領域２０２を出ることなく、データはスクランブルされることができる。これは、ディスプレイ・アプリケーション・ユニット４０１がレガシー・アプリケーション・ユニット４０２から（そしてその逆も）、安全な方法で情報を入手し、画面上に表示できる情報を抽出し、それをスマート・ディスプレイ・コントローラ２１１に送ることができるということを意味している。
【０１１６】
この解決策のもう一つの恩恵は、サービス提供者がディスプレイ・アプリケーション・ユニット４０１をカスタマイズする（たとえば、データが表示される方法を変える）ことができ、使用されるカードまたはオペレーティング・システムから独立のままであるということである。レガシー・アプリケーション・ユニット４０２内の個人データへのアクセスをセキュリティ保護するためにディスプレイ・アプリケーション・ユニット４０１に暗証コードなどを通じたユーザー識別を追加することさえできる。ミラー機能は、スマート・ディスプレイ・コントローラ２１１内に容易に実装できる。
【０１１７】
本発明に基づくシステムは、マルチコンポーネント・スマートカードにおいて、特にディスプレイ付きスマートカードにおいて使用されうる。本発明は、既存のスマートカード・システムへのディスプレイ機能の、総合的なシステム・セキュリティに影響することのない迅速な統合を許容し、上位互換性への解決策を提供する。本発明に基づく方法は、ISO7816のような既存の規格の使用を通じて、潜在的な顧客にとっての使用の高度な単純さを提供する。
【０１１８】
「有する」の語は他の要素およびステップを排除せず、要素の単数形の表現が複数を排除しないことを注意しておくべきである。異なる実施形態との関連で記載された要素は組み合わされてもよい。請求項に参照符号があったとしても、請求項の範囲を限定するものを解釈してはならないことも注意しておくべきである。
【図面の簡単な説明】
【０１１９】
【図１】従来技術に基づくスマートカードを示す図である。
【図２】本発明の例示的な実施形態に基づくスマートカードを示す図である。
【図３】本発明のもう一つの例示的な実施形態に基づくスマートカードを示す図である。
【図４】ユーザー入力および／または出力ユニットのミラー・機能を図解する、本発明の例示的な実施形態に基づくスマートカードの一部を示す図である。
【図１】
2008530936.tif 000003
【図２】
2008530936.tif 000004
【図３】
2008530936.tif 000005
【図４】
2008530936.tif 000006
【国際調査報告】
2008530936.tif 000007
2008530936.tif 000008
2008530936.tif 000009