説明

リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽するリーダ及びトランスポンダとその方法

複数の異なるアプリケーションを格納した記憶装置(106)を備えるトランスポンダ(104)であり、該トランスポンダは、リーダ(102)のリクエストに応答して、該トランスポンダ(104)と前記リーダ(102)の双方が知っている暗号化スキームを用いて解釈可能なレスポンスを生成する処理装置(108)と、前記レスポンスを前記リーダ(102)に送信するように構成された送信装置(110)とを備え、前記リーダ(102)が、前記暗号化スキームを用いて前記レスポンスを解析することによりアプリケーションが当該トランスポンダ(104)によりサポートされているかどうかを決定することができるように構成されている、トランスポンダ。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、複数の異なるアプリケーションを格納したトランスポンダ、トランスポンダから受信されるデータを復号するように設計されたリーダに関し、更にリーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽する方法に関する。更に、本発明はプログラム素子にも関する。更に、本発明はコンピュータ読み取り可能な媒体にも関する。
【背景技術】
【0002】
リーダとトランスポンダ(特にスマートカード又はRFIDタグ)との間で伝送されるデータは、アタッカーがそのデータを取得し犯罪に使用できないようにするために暗号化される。この暗号化は個人データ、アカウントデータ、クレジットカード番号などに対して使用されること明らかである。最新のスマートカードはより多くのスマートカードをエミュレートすること、即ち多数の異なるアプリケーションをサポートすることができるため、サポートされるアプリケーションも隠蔽されなければならない。このカードのユーザは先験的に自明でない。しかし、多数のアプリケーション「ビザ」、「アメリカンエクスプレス」、「ウォルマート」、及び「サブウェイニューヨーク」をサポートするカードについて考察すると、このカードはアメリカ国民のものである可能性が極めて高いので、ユーザが明らかになる。この「烙印」によってそのユーザは容易にテロリストの標的になり得る。
【0003】
以下において、通常の通信システムに関連するいくつかの更なる考察が記載される。
【0004】
プライバシーは個人にも、所定の特性を共有する人々の集団(例えばアメリカ国民)にも関連し得る。プライバシーの保護が望まれる。
【0005】
プライバシーは様々な経路でリークし得る。通常、コリジョン検出で使用されるカードのUID(unique identifier)は簡単に読み取ることができる。従って、個人ユーザはいくつかの場所でスキャンされ得る。
【0006】
従来利用可能な解決方法はランダムID(RID)を使用するものである。しかし、依然としてリーダ内の真性アプリケーションはどのカードとそれらが通信するかを知る必要があるため、ユニークカードロジカルID(UCLID)を必要とする。
【0007】
カードがそのタイプ、ブランドなどを提示する際、これは害がないように見える。しかし、製造業者YのカードタイプXはニューヨークサブウェイで使用され、多くの市民が持ち歩いているという知見から、このようなカードの所有者はニューヨーカである確率が高いことが明らかになる。
【0008】
一つにアプリケーションに対する一つの鍵が破られると他のアプリケーションに対するプライバシーも破られることがないようにすることが望まれる。
【0009】
特許文献1は、デバイスに登録された多数のデータセットの一つを選択する方法を開示している。この方法では各データセットが個別の鍵と関連し、この方法では交換情報をデバイス内で個別の一つの鍵を用いて暗号化し、暗号化された交換情報を遠隔デバイスに送り、遠隔デバイス内で遠隔デバイスに格納されている前記一つの鍵により復号化し、復号化された交換情報を前記デバイスに返送する。次に、交換情報を復号化された交換情報と比較する。両情報が等しい場合には、正しいデータセットが発見され、異なる場合には別の鍵を用いて上記のサイクルが再開される。前記デバイス及び前記遠隔デバイスの役割は、上記のサイクルが遠隔デバイスで開始されるように変更されてもよい。特許文献1はデバイスに登録された多数のデータセットの一つを遠隔デバイスに与える装置にも関する
【0010】
しかし、上記の方法はかなり時間のかかる認証検査を使用している。そのうえこの方法はマルチアプリケーションリーダをサポートしない。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】国際特許出願公開第2006/003562号明細書
【発明の概要】
【発明が解決しようとする課題】
【0012】
従って、本発明の目的はプライバシー保護動作し得るリーダ及び/又はトランスポンダを提供することにある。
【課題を解決するための手段】
【0013】
本発明の目的は、独立請求項に記載されたトランスポンダ、リーダ、方法、プログラム素子及びコンピュータ読み取り可能な媒体により達成さえる。
【0014】
一つの模範的な実施態様によれば、複数の異なるアプリケーションを格納した記憶装置を備えるトランスポンダが提供され、当該トランスポンダは、リーダのリクエストに応答して、当該トランスポンダとリーダの双方が知っている暗号化スキームを用いて解釈可能なレスポンスを生成し、その結果前記リーダが前記レスポンスを前記暗号化スキームを用いて解析することによってアプリケーションが当該トランスポンダによりサポートされるかどうかを決定することができるように構成された処理装置と、前記レスポンスを前記リーダに送信するように構成された送信装置とを備える。
【0015】
もっと正確に言うと、一つの模範的な実施態様によれば、複数の異なるアプリケーション(例えば当該トランスポンダによりサポートされる一つ又は複数のアプリケーション)を格納した(リーダと通信可能に結合し得る)トランスポンダが提供され、該トランスポンダは、(例えばリーダからトランスポンダへ送信される通信メッセージによる)リーダのリクエスト時に、アプリケーションの名前を乱数(例えば真の乱数又は擬似乱数、この乱数はトランスポンダの乱数発生器により生成しても、トランスポンダの記憶装置に格納してもよい)で拡張し、拡張された数を前記アプリケーションと関連する鍵(この鍵はリーダも知ることができる)で暗号化又はMAC化し(即ちメッセージ認証符号(MAC)を生成し)、暗号化された数を前記リーダに送信する。
【0016】
別の模範的な実施態様によれば、リーダが提供され、該リーダは、該リーダによりサポートされる複数のアプリケーションを示すリクエストをトランスポンダに送信するように構成された送信装置と、前記トランスポンダから受信されたレスポンスを前記トランスポンダ及び該リーダの双方が知っている暗号化スキームで解析するように構成された解析装置と、前記レスポンスを前記暗号化スキームを用いて解析することによってアプリケーションが前記トランスポンダによりサポートされるかどうかを決定するように構成された決定装置とを備える。
【0017】
別の模範的な実施態様によれば、(トランスポンダと通信可能に結合できる)リーダが提供され、該リーダは、トランスポンダから受信されたデータをアプリケーション(例えばトランスポンダによりサポートされる一つ又は複数のアプリケーション)と関連する(トランスポンダにも知られている)鍵で復号化し、前記復号化された数が前記アプリケーションの名前を含むかどうかを決定するように構成される。
【0018】
更に別の模範的な実施態様によれば、リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽する方法が提供され、該方法は、
前記リーダが前記トランスポンダにリクエストを送信するステップ、
前記トランスポンダが、前記トランスポンダと前記リーダの双方が知っている暗号化スキームを用いて、アプリケーションが該トランスポンダによりサポートされるかどうかを示す解釈可能なレスポンスを生成するステップ、
前記トランスポンダが前記レスポンスを前記リーダに送信するステップ、及び
前記リーダが、前記レスポンスを前記暗号化スキームを用いて解析することによってアプリケーションが前記トランスポンダによりサポートされるかどうかを決定するステップを備える。
【0019】
もっと正確に言えば、更に別の模範的な実施態様によれば、リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽する方法が提供され、該方法は、
前記リーダが前記トランスポンダにリクエストを送信するステップ、
前記トランスポンダが、それがサポートするアプリケーションの名前を乱数で拡張するステップ、
前記トランスポンダが、前記拡張された数を前記アプリケーションと関連する鍵で暗号化又はMAC化(メッセージ認証符号化)するステップ、
前記リーダが前記暗号化された拡張数を復号化する又は前記MACを前記暗号化された拡張数に基づいて検証するステップ、及び
前記リーダが、前記復号化された又は検証された拡張数がアプリケーションの名前を含むかどうかを決定するステップを備える。
【0020】
本発明の別の模範的な実施態様によれば、プログラム素子(例えばソースコード又は実行可能コードで記述されたソフトウェアルーチン)が提供され、該プログラム素子は、プロセッサで実行されるとき、上述した特徴を有するデータ処理方法を制御又は実行するように構成される。
【0021】
本発明の更に別の模範的な実施態様によれば、コンピュータ読み取り可能な媒体(例えばCD,DVD,USBスティック,フロッピディスク又はハードディスク)が提供され、該媒体には、プロセッサで実行されるとき、上述した特徴を有するデータ処理方法を制御又は実行するように構成されたコンピュータプログラムが格納されている。
【0022】
本発明のそれぞれの実施態様に従って実行されるデータ処理は、コンピュータプログラム、即ちソフトウェアによって、又は一つ以上の特別の電子最適化回路、即ちハードウェアによって、又はハイブリッド構成、即ちソフトウェアコンポーネントとハードウェアコンポーネントによって実現することができる。
【0023】
用語「トランスポンダ」は、特にRFIDタグ又は(例えば非接触型の)スマートカードを意味し得る。より一般的には、トランスポンダは、インタロゲータからの特別信号により活性化されて所定の(例えば符号化された)データを自動的に送信し得るデバイス(例えばチップを含む)とし得る。
【0024】
用語「リーダ」は、特にトランスポンダを読み出すために電磁放射ビームを送り、反射又は放射される信号を検出するように構成された基地局を意味し得る。リーダデバイスは、読み出し及び/又は書き込みデバイス、RFIDリーダ、非接触チップカードリーダ、パッシブトランスポンダ及びニアフィールド通信デバイスからなる群から選ばれえる一つとし得る。
【0025】
用語「アプリケーション」は、特にリーダ及びトランスポンダにより構成される通信システムにおいてトランスポンダが寄与し得るサービスを意味するものとし得る。このようなトランスポンダの寄与は、格納された又は計算されたデータを提供する能力、種々の処理能力を提供する能力などを含み得る。このようなサービスの例は、トランスポンダのユーザによる公共輸送機関の利用料金の支払い、無線支払いシステム、クレジットカードサービスなどによる商品購入価額の支払いなどである。
【0026】
用語「アプリケーションの名前」は、特にアプリケーションを示す識別子又はコードとすることができ、識別子に基づいて特定のアプリケーションを明確に検索することができる。このような名前は、特に文字の列、数字の列又は文字と数字の組み合わせのような任意の文字数字コードとすることができる。
【0027】
用語「暗号化スキーム」は、特に通信メッセージの基本としてのデータブロックを暗号化するスキーム、ルーチン又はアルゴリズムであって、暗号化されたデータブロックの内容の解釈に暗号化スキームの知識、例えば暗号化に使用される一つ以上の鍵を必要とするものを意味する。この用語に該当する種々の暗号化スキームとしては、対称暗号化(通信相手が送信側も受信側も同じ鍵を使用し得る)及び公開鍵暗号化(通信相手が公開鍵、秘密鍵又は同種のものを使用し得る)がある。特に、MAC(メッセージ認証符号)の形成及びCRC(巡回冗長検査)(後で符号化される)の形成は暗号化スキームに基づく暗号化の形式とみなせる。
【0028】
用語「メッセージ認証符号」(MAC)は、特に認証メッセージに使用される短い情報を意味する。MACアルゴリズムは入力として秘密鍵と認証すべき任意の長さのメッセージを受け取り、MACを出力し得る。MAC値によれば、検証者(その人も秘密鍵又は対応する公開鍵を所有する)がメッセージの内容の変化を検出することが可能になり、メッセージの正当性のみならずその完全性も保護することができる。
【0029】
用語「巡回冗長検査」(CRC)は、特に入力として任意の長さのデータストリームを取得し、出力として所定のサイズの値、例えば所定のビット数の整数を生成する関数の一種である。CRCは伝送中のデータの変化を検出するチェックサムとして使用することができる。
【0030】
本発明の一実施態様によれば、トランスポンダによりサポートされるアプリケーションをリーダとトランスポンダとの間における通信メッセージの伝送中に隠蔽することができる利点が提供される。従って、アタッカーは、どのようなアプリケーション又はいくつのアプリケーションがトランスポンダによりサポートされているかについて何の情報も得ることができず、よって通信相手のプライバシーが保護される。
【0031】
一実施態様では、リーダから到来するデータも隠蔽することができるため、アタッカーはどのようなアプリケーション又はいくつのアプリケーションがリーダによりサポートされているかについて何の情報も得ることができない。
【0032】
本発明のいくつかの模範的な実施態様について以下に記載する。
【0033】
リーダは、自身がサポートする一組のアプリケーションを通知することができ、トランスポンダは、自身がこれらのアプリケーションの一つ以上をサポートするかどうかについてリーダに応答することができ、必要に応じトランスポンダのアイデンティティ(ID)をリーダに送ることができる。
【0034】
この通信は、(アタッカーはトランスポンダがアプリケーションをサポートするかどうかを解釈できないように)機密性を維持する方法及び(リーダはトランスポンダがアプリケーションをサポートしていることを決定できるのみならず、リーダはトランスポンダがちょうど今アプリケーションをサポートすることを決定でき、このサポートをフレッシュとみなすことができるように)完全性を維持する方法で行うことができる。
【0035】
リーダは、次に、メッセージをトランスポンダに送ることによってアプリケーションを選択することができる。トランスポンダはこのメッセージを復号することができるが、アタッカーはこのメッセージからサポートに関する結論を得ることはできない。
【0036】
機密性は、アタッカーが、トランスポンダがどんなアプリケーションをサポートしているかを決定できないことを意味する。例えばアプリケーション名が転送される一つの通信を観察してもできない。その理由は通信を暗号化するためである。また、多数のメッセージ(たとえそれらが暗号化されていても、それらは同一であるから情報を暴露し得る)を観察しても、できない。その理由は乱数を含めるためである。
【0037】
完全性は、リーダがレスポンスから、このレスポンスがアプリケーションをサポートするトランスポンダにより発生されたものであることを決定することができることを意味する。これは特に以下の模範的な実施態様の一つによって行うことができ、多くの代替例が可能である。
【0038】
RND‖ApplNameに基づいて計算されたMAC。このメッセージはアプリケーションのサポートを搬送するが、トランスポンダのアイデンティティは搬送しない。ここで、RNDは乱数であり、ApplNameはアプリケーションのIDである。
【0039】
ある情報、例えばRND‖UCLIDに基づいてCRCが計算され、次にその全体が符号化された(RND‖UCLID‖CRC)。ここで、USLIDはトランスポンダのIDである。CRCは完全性をもたらす。
【0040】
符号化された情報、例えばEnc(K, RND‖LUCID‖CRC)に基づいて計算されたMAC。このMACは完全性をもたらす。ここで、Encは符号化関数であり、Kは鍵である。
【0041】
フレッシュネスは次のように処理される。リーダはそれがサポートするアプリケーションのリストと一緒に乱数を送信する。トランスポンダはCRC又はMACの計算に基づいてこの乱数を含むことができる。これによりトランスポンダの以前のレスポンスのリプレーを防止することができる。
【0042】
アプリケーションの選択は、高い機密性(従って暗号化及び乱数の挿入)、高い完全性(トランスポンダはメッセージが真性であることを確かめることができる)、及びフレッシュネス(トランスポンダが以前のステップでリーダに与えた乱数情報を含むため)で行うことができる。
【0043】
一実施例では、アプリケーションサポートはリーダにより通知することができ、トランスポンダは、リーダは実際のサポートを決定できるがアタッカーはその決定をできないように応答する。
【0044】
以下に、トランスポンダの更なる模範的な実施例を説明する。しかし、これらの実施例はリーダにも、方法にも、プログラム素子にも、コンピュータ読み取り可能な媒体にも適用できる。
【0045】
トランスポンダの処理装置(例えば処理能力を有するトランスポンダの集積回路)は、リーダによりサポートされているアプリケーションを示すリーダからのリクエストの受信時に、リーダによりサポートされている一以上のアプリケーションのどれがトランスポンダによってもサポートされているかを決定し、リーダ及びトランスポンダによりサポートされているアプリケーションに対して拡張及び暗号化を行うように構成することができる。従って、トランスポンダはリーダからのリクエストに対して、トランスポンダがサポートするとともにリーダもサポートするアプリケーションのリストを生成することによって応答することができる。従って、トランスポンダとリーダとの間で両エンティティがサポートするアプリケーションに関して合意を得ることができる。
【0046】
処理装置は、アプリケーションの名前を暗号化前に乱数とチェックサムで拡張するように構成することができる。アプリケーションの名前、乱数、チェックサム及び鍵のいずれか一つは任意の数字の列、文字の列又は任意の英数字コードとすることができる。特定の実施例はアプリケーションの名前を乱数に単に加えることができるが、その後の安全伝送のために暗号化前に、アプリケーションの名前と乱数に加えてチェックサムをデータブロックに加えると、システムを更に安全にすることができるとともに、故障しにくくすることができる。
【0047】
一実施例では、トランスポンダの処理装置は、トランスポンダによりサポートされないアプリケーションに対しても、乱数を生成するように構成できる。トランスポンダの送信装置(例えばアンテナ)は、生成された乱数を前記リーダに送信するように構成できる。更にトランスポンダによりサポートされないアプリケーションに対してデータブロックを通信メッセージのような送信メッセージに付加することによって、通信メッセージの長さをトランスポンダによりサポートされるアプリケーションの数と無関係にすることができる。こうすると、アタッカーは通信メッセージの長さを単に解析するだけで(サポートされている)アプリケーションの数を導出することはできなくなる。トランスポンダによりサポートされないアプリケーションに対して生成される乱数はサポートされるアプリケーションの名前を示さないものとすることができる。代案として、トランスポンダによりサポートされないアプリケーションに対して生成される乱数にトランスポンダによりサポートされないアプリケーションの名前の表示及びこのアプリケーションはサポートされないという表示を付随させることができる。
【0048】
トランスポンダからリーダへ送信される通信メッセージの長さの単なる解析によってトランスポンダによりサポートされる複数のアプリケーションを決定することを許さない利点は、トランスポンダによりサポートされないアプリケーションに対して、トランスポンダによりサポートされるアプリケーションに対する暗号化された数と同じ長さを有する乱数を生成するように処理装置を構成するとき、特に有効である。この手段を採用することによって、アタッカーは伝送されるデータセクションの長さに基づいて、特定のアプリケーションが通信エンティティの一つによりサポートされているかいないかを識別することはまったく不可能になる。これは通信システムが動作中のデータの安全性及びプライバシーを更に増大する。
【0049】
乱数は擬似乱数とすることができる。擬似乱数と対照的に、真の乱数はその発生基準と無関係に生成される数である。暗号目的のために、物理的測定に基づく数を乱数とみなすことができる。擬似乱数は検出可能パターンをできるだけ少なくした数であるが真の乱数ではない。コンピュータプログラムは真の乱数を生成できないために擬似乱数を生成している。乱数生成器はトランスポンダの一部分とすることができる。
【0050】
トランスポンダの処理装置は、トランスポンダのアイデンティティを示す識別子をレスポンスに含めるように構成できる。換言すれば、トランスポンダは、どのトランスポンダがリクエストに対して答えたかを明確に示すために、例えばユニーク識別子(UID)又はカード倫理ユニーク識別子(CLUID)を通信メッセージに含めることができる。
【0051】
処理装置は、リーダによりサポートされる複数のアプリケーションの一つを選択し、選択したアプリケーションをレスポンスに含めるように構成できる。リーダ及びトランスポンダの双方が複数の同一のアプリケーションをサポートするシナリオでは、トランスポンダがこれらのアプリケーションの一つを次の使用のために選択する能力を持つことができる。これは、トランスポンダがリクエストに対して次の通信のために使用すべきアプリケーションの名前で応答することによって簡単に指示することができる。従って、トランスポンダはどのアプリケーションをリーダに提示するかを決定することができる。
【0052】
処理装置は、トランスポンダによりサポートされる複数のアプリケーション又はすべてのアプリケーションをリーダによるサポートアプリケーションの一つの次の選択の基礎としてレスポンスに含めるように構成することができる。このような実施例では、リーダは、両通信相手のデバイスによりサポートされる複数のアプリケーションのどれが次に使用できるかを決定するエンティティになる。従って、リーダは、トランスポンダによりサポートされるアプリケーションの情報を含むトランスポンダからのレスポンスを受信した後、サポートされるアプリケーションの特定の一つを例えば特定の決定基準に従って選択することができる。この選択されたアプリケーションは次にリーダとトランスポンダとの間の更なる連携動作に使用され得る。
【0053】
トランスポンダの処理装置は、メッセージ認証符号(MAC)を含むように前記レスポンスを生成するように構成することができる。このメッセージ認証符号は、トランスポンダとリーダの双方でサポートされるアプリケーションの名前を隠蔽するためにどのように暗号化スキームをトランスポンダとリーダとの間で使用できるかに関する一例である。この基準を満足するこのようなメッセージ認証符号を形成する種々の可能性がある。一つの可能性は、アプリケーションと関連する鍵と乱数の組み合わせに基づいてMACを形成するものである。代案は、アプリケーションの名前と乱数の組み合わせに基づいて形成するものである。他の代案は、アプリケーションの名前と乱数とトランスポンダのアイデンティティを示す識別子との組み合わせに基づいて形成するものである。このようなMACによりリーダはそのアプリケーションがトランスポンダによりサポートポートされているかどうかを明確に決定することが可能になる。
【0054】
メッセージ認証符号をレスポンスとして送信する代わりに、本発明のいくつかの実施例はレスポンス又はその一部として、巡回冗長検査(CRC)を使用し、後で暗号化することができる。このような暗号化されたCRCは、暗号化スキームの応用方法に関する一例とみなすことができる。このようなCRCは乱数とトランスポンダのアイデンティティを示す識別子に基づくものとし得る。ユニーク識別子及び乱数とそのCRCとの組み合わせを暗号化することもできる。
【0055】
処理装置は、アプリケーションの名前を含まないが、アプリケーションがトランスポンダによりサポートされているかどうかをチェックサムの解析に基づいて決定することをリーダに可能にする情報を含むチェックサム又は任意の他のデータブロックを含むように前記レスポンスを生成するように構成することができる。例えば、リーダはすべてのサポートアプリケーションを単一の通信メッセージに含める必要はない。代替実施例では、リーダは続いて各メッセージが特定のアプリケーションがサポートされているかどうかについて問い合わせる複数の通信メッセージを送信することができる。これらの通信メッセージの各々に対するリプライにおいて、トランスポンダは、アプリケーションの名前を指定しないで、前リクエストに含まれるアプリケーションがサポートされるか否かを指示することができる。これは、アプリケーションとサポートするかしないかに関する情報との相関を明確に導出することをリーダに可能ならしめるMACで指示することができる。
【0056】
次に、リーダの他の模範的な実施例について説明する。しかし、これらの実施例はトランスポンダにも、方法にも、プログラム素子にも、及びコンピュータ読み取り可能な媒体にも適用される。
【0057】
リーダは、どの(一つ又は複数の)トランスポンダがリーダの無線レンジ内に存在するかを判定する判定装置(リーダのプロセッサの一部分とし得る)を備えることができる。このような実施例では、リーダは最初に、リーダの周囲の空間レンジ(このレンジ内でリーダはトランスポンダと通信できる)内に位置する複数のトランスポンダ(例えばRFIDタグ又はスマートカード)を検出する。
【0058】
このような判定の実行後に、リーダの選択装置(リーダのプロセッサの一部分とし得る)は無線レンジ内にあると検出されたトランスポンダの一つをその後の通信のために選択することができる。このような選択プロシージャは、リーダがクロストークを避けるために各時刻に一つのトランスポンダとのみ通信するようにアンチコリジョンプロシージャと関連して実行することができる。例えば、リーダの無線レンジ内の(選択されたトランスポンダ以外の)他のトランスポンダはリーダによりミュート又はサイレント状態に切り替えることができる。
【0059】
リーダは、更に、リーダによりサポートされる一以上のアプリケーションを示すリクエストをトランスポンダに送信する送信装置を備えることができる。このような送信装置は通信アンテナとすることができる。このようなリクエストによって、リクエストは通信可能に結合されたトランスポンダに、どのアプリケーションがリクエストによりサポートされているかを指示することができる。この情報によって、通信システムは更なる通信をより有意義に続けることができ、例えば通信相手のデバイス(即ちトランスポンダ及び/又はリーダ)によりサポートされないアプリケーションに関する通信を阻止することができる。
【0060】
代替実施例では、どのアプリケーションがリーダにより提示されるかは安全に関係ないシナリオにおいては、あるいは、リーダがトランスポンダによりサポートされるアプリケーションに関する情報をトランスポンダに問い合わせることは安全に関係ないシナリオにおいては、このようなリクエストを平文で送信することもできる。
【0061】
リーダの処理装置及び/又は送信装置は、リーダによりサポートされる複数のアプリケーションと無関係に一定の長さを有するリクエストを送信するように構成することができる。一般に、リーダによりサポートされる各アプリケーションをリクエストに含めるには特定のデータ長が必要とされるため、サポートアプリケーションの簡単なリストからなるデータブロックはサポートアプリケーションの数に依存する。従って、このデータブロックのみをトランスポンダに送信する場合、アタッカーは通信メッセージの長さを解析するだけでサポートアプリケーションの数を導出することが可能である。しかし、リクエストを常に一定の長さで送信し、場合により空のデータセクションを乱数で満たせば、いくつのアプリケーションがリーダによりサポートされるかを隠蔽することができる。
【0062】
リーダの処理装置及び/又は送信装置は、トランスポンダによりサポートされるアプリケーションの指示をトランスポンダに要求するために「エンプティ」リクエストを送信するように構成することもできる。これに関連して、「エンプティ」とは、どのアプリケーションがリーダによりサポートされるかの指示及び/又はリーダがトランスポンダによりサポートされるアプリケーションのリストを要求する指示を含まないメッセージを意味する。このような実施例では、リクエストはサポートアプリケーションに関する指示を完全に含まないが、リーダにより要求される情報はトランスポンダによりサポートされるアプリケーションの数であることをトランスポンダに特定させる任意の指示を含むことができる。
【0063】
リーダの決定装置は、前記復号化された拡張数が前記アプリケーションの名前を含まないことを決定するとき、アプリケーションはトランスポンダによりサポートされないと判断するように構成することができる。換言すれば、トランスポンダからリーダへ伝送される通信メッセージ内に既知のアプリケーションがないことは、この特定の実施例において、リーダに対応するアプリケーションはトランスポンダにより提供されないと判断させることができる。
【0064】
リーダの決定装置は、レスポンスからトランスポンダのアイデンティティを示す識別子を取り出すことによってトランスポンダのアイデンティティを決定するように構成することもできる。よって、合意されたデータオーダリングスキームに従って、リーダはリプライからどのトランスポンダがリクエストに応答したかの情報を得ることもできる。これは、システムを一つのリーダ対複数のトランスポンダの環境においても動作可能にする。
【0065】
リーダの決定装置は、次の使用のためにリーダによりサポートされ選択される一つのアプリケーションをレスポンスから決定するように構成することができる。このような実施例は、トランスポンダが使用すべきアプリケーションについての決定を行うシナリオに対応する。
【0066】
また、リーダとトランスポンダとの間の次の通信のために次に使用すべきアプリケーションについての決定をリーダが行うこともできる。このようなシナリオでは、リーダの決定装置は、次の使用のためにトランスポンダによりサポートされる複数のアプリケーションの一つを選択し、選択したアプリケーションをトランスポンダに通知するように構成することができる。例えば、リーダは10のアプリケーションのうちのどれとどれがトランスポンダによりサポートされるかの回答を要求することができる。トランスポンダは10のアプリケーションのうちの6つがトランスポンダによりサポートされると回答し得る。すると、リーダはこれらの6つの共通にサポートされるアプリケーションのうちの一つをリーダ/トランスポンダシステムの次の動作のために選択し、トランスポンダに通知することができる。
【0067】
レスポンス内にまたはレスポンスとしてCRC及び/又はMACを生成する上述したトランスポンダに応じてリーダが動作できるように、このようなCRC及び/又はMACを解釈するために対応する設備をリーダに設けることができる。
【0068】
リーダの決定装置は、レスポンスに含まれる、アプリケーションの名前を含まないMAC又は他のデータブロックを解析することによって、トランスポンダによりサポートされるアプリケーションを決定するように構成することもできる。リーダが通信メッセージごとに特定のアプリケーションのサポートを問い合わせ、そのために複数のリクエストを次々にトランスポンダに送信するシナリオでは、各リクエストに対する各リプライが、MACの解析によって、特定の問い合わされたアプリケーションに対して、トランスポンダがサポートを指示するかしないかを決定することを可能にする。
【0069】
本発明の模範的な実施例は選択されたアプリケーションアイデンティティに関するプライバシー属性を提供することができる。本発明の模範的な実施例によるアーキテクチャはマルチアプリケーションリーダを収容することができる。このようなアーキテクチャは更に試験認証を使用しないことができる。これらの代わりに、実施例はそれ自体がリーダによる問い合わせに依存し得るトランスポンダからの単一機能レスポンスを用いることができる(即ちトランスポンダはリーダによりサポートされるアプリケーションに対してのみ応答する)。よって、洗練されたプライバシー属性及び高速性能を本発明の模範的な実施例によって保証することができる。
【0070】
本発明のこれらの及び他の特徴は以下に記載する実施例について説明され、明らかにされる。
【図面の簡単な説明】
【0071】
【図1】本発明の模範的な実施例によるリーダ及びスマートカード間のメッセージフローを示す。
【図2】本発明の模範的な実施例による通信システムを示す。
【図3】本発明の模範的な実施例によるリーダ及びトランスポンダ間のメッセージフローを示す。
【図4】本発明の模範的な実施例によるリーダ及びトランスポンダ間のメッセージフローを示す。
【図5】本発明の模範的な実施例によるリーダ及びトランスポンダ間のメッセージフローを示す。
【発明を実施するための形態】
【0072】
以下に、本発明を図面に示す実施例について、非限定的な例証して、詳細に説明する。
図面は概略図である。異なる図において、同様もしくは同一の素子には同一の参照符号が付されている。
【0073】
図1は本発明の模範的な実施例による通信システム100を構成するリーダ102とスマートカード104との間のメッセージフローを示す。
【0074】
以下に更に詳しく説明されるように、リーダ102とスマートカード104との間の通信中に、複数の通信メッセージが交換される。
【0075】
図1の通信スキームのステップ1(符号120参照)において、リーダ102はどのスマートカードが無線レンジ内にあるかを判定し、それらの一つをそれ自体周知のアンチコリジョンプロシージャ中に最終的に選択する。選択されたのはトランスポンダ104である。
【0076】
ステップ2(符号130参照)において、リーダ102はリーダ102によりサポートされるアプリケーションに関する情報を含むコマンドをスマートカード104に送信する。本例では、リーダ102はアプリケーションA,B及びCをサポートする。
【0077】
ステップ3において、スマートカード104は、リーダ102によりサポートされるアプリケーションのどれがカード104によってもサポートされるかを検査する。次に、カード104は、乱数及びチェックサムにより拡張されたサポートアプリケーションの名前をリーダに返送し、このとき拡張された数はアプリケーションと関連する鍵で暗号化及び/又はMAC化される。本例では、カード104はアプリケーションA,B,D,X及びZをサポートする。アプリケーションCはスマートカード104によりサポートされない。従って、アプリケーションAの名前は乱数及びチェックサムにより拡張され、次いでアプリケーションAと関連する鍵で暗号化及び/又はMAC化される。アプリケーションBの名前も同様に処理される。アプリケーションCはサポートされないため、乱数のみが生成され、リーダ102に送信される。乱数はアプリケーションA及びBに対して得られる数と同じ長さを有する。
【0078】
ステップ104において、リーダ102は、スマートカードカード102にも使用されているアプリケーションA,B及びCに対する鍵で受信データの復号化及び/又はMACの検査を行う(厳密に言えば、カード104はアプリケーションA及びBに対する鍵のみを使用する)。復号化後に、アプリケーションA及びBに対するアプリケーション名は平文で現れ、またアプリケーションAまたはBが使用されている場合MACが受信MACと一致する。よって、リーダ102は、スマートカード104がアプリケーションA及びBをサポートし、アプリケーションCをサポートしない(アプリケーションCに対しては復号化後に乱数が現れるため)ことを知る。次に、リーダ102はアプリケーションの一つを選択し、その後のプロシージャにどのアプリケーションを使用すべきかをスマートカード104に通知する。
【0079】
本例では、アプリケーションAの名前が乱数及びチェックサムにより拡張される。次に、得られた数がアプリケーションAと関連する鍵で暗号化され、スマートカード104に送信される(参照符号150参照)。スマートカード104において、アプリケーションAの名前が平文になるように受信データが再び復号化される。このときリーダ102とスマートカード104の双方がどのアプリケーションを使用すべきかを知る。或いは又、スマートカード104はMACを計算し、それが受信MACと一致するか検証する。
【0080】
上述のプロシージャは以下の利点をもたらすことができる。
トランスポンダがサポートするアプリケーションの名前は決して平文で送信されないため、アタッカーが通信システムに与えられるアプリケーションに関する無許可情報を取得することを防止できる。
【0081】
暗号化された名前は乱数部分を含むために決して同じにならないため、攻撃はより一層困難になる。
【0082】
カードのレスポンスの長さは、通信相手によりサポートされるアプリケーションの数と無関係に常に同じである。これはサポートされるアプリケーションの数も隠蔽する。
【0083】
従って、アタッカーは、スマートカードによりどのようなアプリケーションがサポートされているかも、いくつのアプリケーションがサポートされているかも、決して決定することはできない。
【0084】
代替実施例では、図1のステップ2において、保護すべき主な対象がスマートカード104であるためであるため、アプリケーションの名前は平分で送信される。それにもかかわらず、リーダ102からスマートカード104への通信も暗号化することができる。他の実施例では、リーダ102によりサポートされるアプリケーションに関する情報が全く存在しないように、ステップ2においてカード104にエンプティコマンドが送信される。
【0085】
しかし、応答の長さのために、サポートされるアプリケーションの数はアタッカーにより決定され得る。それゆえ、他の実施例では、ステップ2のコマンドは規定のデフォルト長、例えば10個のアプリケーションの長さにする。そしてアプリケーションのために使用されないデータブロックは乱数で埋める。この場合、アタッカーはどのようなアプリケーションがサポートされているかも、いくつのアプリケーションがサポートされているかも、決して決定することはできない。
【0086】
プライバシーは個人にとっても、所定の特性を共有する人々のグループにとっても重要な役割を果たす。しかし、プライバシーは様々な経路でリークし得る。従来のカード通信システムの場合、コリジョン検出を簡単に読み取ることが可能である。従って、個人ユーザはいくつかの場所でスキャンされ得る。ランダム識別子を使用しても、依然としてリーダ内の真正アプリケーションはそれらがどのカードと通信するかを知る必要があるため、依然としてカード論理ユニークID(CLUID)を必要とする。カードがそのサポートアプリケーションを提示するとき、これは安全とはいえない。アタッカーはサポートされるアプリケーションから導出し得るサイドチャネル情報に基づいて個人を追跡することができる。
【0087】
また、カードがそのタイプ、ブランドなどを提示するとき、これも必ずしも安全ではない。例えば、製造業者YのカードタイプXはニューヨークサブウェイで使用され、多く市民が持ち歩いているという知識から、このようなカードの所有者はニューヨーカである確率が高いことが明らかになる。
【0088】
これらのコンフィギュレーションを考慮すると、プライバシーは最終的な目標である。通信システムは、カード所有者、カードアプリケーション、カード識別子、カード製造業者、カードタイプなどに関する情報を当該カードインスタンスによりサポートされるアプリケーションに対して正当なリーダでないエンティティに暴露しないのが望ましい。従って、プライバシーは、プロトコル、データ、動作によっても、カードのアナログ動作特性によっても、失われてはならない。
【0089】
通信システムがこのような最終目標を実現する程度は、使用可能なコスト、時間、設置基盤とのコンパチビリティなどに依存する。一つのアプリケーションに対して使用される一つの鍵の解読は他のアプリケーションのプライバシーを解読することにならない。
【0090】
しかし、最終プライバシー状態においてプライバシーのリスクが残存し得る。アプリケーション鍵が解読されると、該アプリケーションのすべてのユーザのプライバシーが危険にさらされる。そのUCLIDを読み取り、それに基づいてユーザを追跡することができる。
【0091】
以下に、図2を参照して、本発明の模範的な実施例による、プライバシーを維持し得る通信システム100を説明する。
【0092】
通信システム100は図1に示す通信システムに類似し、無線通信のために互いに結合されるリーダ102及びトランスポンダ104を備える。
【0093】
リーダ102は送信アンテナ114及び受信アンテナ116に結合されたプロセッサ112(例えばマイクロプロセッサ又は中央処理装置)を備える。送信アンテナ114は通信メッセージ118をトランスポンダ104に送信することができる。受信アンテナ116はトランスポンダ104からの通信メッセージ122を受信することができる。送信アンテナ114及び受信アンテナ116は図2には2つの異なるアンテナとして示されているが、代替実施例は単一の共用トランシーバアンテナを使用することもできる。通信メッセージ118,122はエンティティ102,104間で無線で交換することができる。
【0094】
アンテナ114,116はプロセッサ112と電気的に結合され、プロセッサ112からデータを通信メッセージ118として送信することができ、また受信アンテナ116により受信された通信メッセージ122をプロセッサ122により解析し処理することができる。
【0095】
プロセッサ112によりアクセス可能なデータを格納するために半導体メモリのような記憶装置124がプロセッサ122と双方向のデータ転送のために結合される。更に、ユーザによるリーダデバイス102の動作及び制御を可能にする入力/出力装置126が示されている。
【0096】
更に図2から明らかなように、トランスポンダ104は送信及び受信アンテナ110、マイクロプロセッサのようなプロセッサ108及びメモリ106を備える。一実施例では、メモリ106及びプロセッサ108は、アンテナ110に接続でき且つ支持体128(例えば布片)に付着できる集積回路(IC)にモノリシック集積することができる。
【0097】
動作中、リーダ102のプロセッサ112は、どのトランスポンダがリーダ102の無線レンジ内にあるかを判定する判定装置として作用することができる。本例シナリオでは、トランスポンダ104のみがリーダ102の無線レンジ内にある、即ち十分に正確な通信ができる十分に近い位置にあるものとする。リーダ102の無線レンジ内に複数のトランスポンダがある場合には、コリジョンプロシージャ中に、プロセッサ112は、次の通信のために、無線レンジ内の複数のトランスポンダの1つ、本例シナリオではトランスポンダ104を選択することができる。
【0098】
リーダ102は、更に、送信アンテナ114を介して、リーダ102によりサポートされるアプリケーションを表す通信メッセージ118のようなリクエストをトランスポンダ104に送信する。このようなリクエストは暗号化された形又は平文で送信することができる。別の実施例では、リクエスト118はリーダ102によりサポートされるアプリケーションの如何なる表示も含まないものとすることができる。
【0099】
しかしながら、好適実施例では、送信アンテナ114はリーダ102によりサポートされるアプリケーションの数と無関係の一定の長さを有するがサポートされるアプリケーションを暗号化された形で示すリクエスト118を送信する。これにより、アタッカーは通信メッセージ118の長さを解析することによってリーダ102により与えられえる情報を特定することができなくなる。対応するデータパケットの空部分は、サポートされるアプリケーションの数をアタッカーに対して隠蔽するために乱数で満たすことができる。
【0100】
トランスポンダ104は、トランスポンダ104によりサポートされる複数の異なるアプリケーションをサポートするために必要なデータをその記憶装置106に格納することができる。リーダ102からのリクエスト118の受信時に、処理装置108はトランスポンダ104によりサポートされるアプリケーションに関する情報をリーダ102に知らせるために通信メッセージ122を生成することができる。この目的のために、図2に参照符号202で略図示されるアプリケーションの名前を乱数204及びチェックサム206で拡張することができる。乱数204はプロセッサ108により生成することができる。アプリケーション名202もチェックサム206もメモリ106に格納することができる。更に、データパケット202,206,204は、同様にメモリ106に格納することができる鍵208を用いて暗号化することができる。この鍵208は名前202で示されるアプリケーションと関連するもの又は該アプリケーションに指定されたものとすることができる。次いで、対応する暗号化されたデータメッセージ210は、図2に通信メッセージ122で示されるように、送信アンテナ110によりリーダデバイス102に送信することができる。
【0101】
アプリケーションがトランスポンダ104によりサポートされない場合には、トランスポンダ104は単に乱数のみからなる通信メッセージをリーダ102に送信する。このメッセージは、アタッカーがトランスポンダ104によりサポートされるアプリケーションの数に関する情報を導出することができないように、通信メッセージ210と同一の長さを有するものとすることができる。
【0102】
通信メッセージ122が受信アンテナ116により受信されるとき、プロセッサ112は受信データをトランスポンダ104によりサポートされるアプリケーションと関連する鍵208を用いて復号化する復号化装置として動作する。これにより、復号化された数、即ちデータパケット202,206,204をプロセッサ112により導出することができる。プロセッサ112は、このデータパケット202,206,204から、アプリケーション名202を特定し、このアプリケーション名によってリーダデバイス102はトランスポート104が対応するアプリケーションをサポートすることを決定することができる。リーダデバイス102とトランスポンダ104との間の更なる通信に対して、両エンティティはアプリケーション名202で示されるアプリケーションが両エンティティにより与えられることを知ることができる。同時に、プライバシーが維持される。
【0103】
当業者は、本発明によるトランスポンダ、リーダ及び方法、並びにソフトウェアは非接触データ伝送に限定されず、原理的には有線通信にも適用されることに留意すべきである。
【0104】
以下に、図3を参照して、本発明の模範的な実施例によるリーダ102とトランスポンダ104との間の通信スキーム300を説明する。
【0105】
記載する実施例では、複数のアプリケーション名202(A,B,C)を含む通信メッセージ302がトランスポンダ104に送信され、これらのアプリケーション名はリーダ102がトランスポンダ104によりサポートされるかどうか知りたいアプリケーションの名前である。
【0106】
このリクエストに対するレスポンスとして、トランスポンダ104は通信メッセージ304を生成する。この通信メッセージ304は、特に、サポートされるアプリケーションAの名前を隠蔽するためにアプリケーションの名前202(即ちサポートされるアプリケーションA)と乱数204との組み合わせに基づいて形成される計算MAC306を含む。これに関連して、フィールド310は暗号文の完全性(インテグリティ)を与える点に留意されたい。
【0107】
通信メッセージ302及びレスポンス304は両方ともRandQとして示される更なる乱数を含むことができ、これはオプションであり、フレッシュネスを決定するのに役立てることができる。
【0108】
通信メッセージ304はアプリケーションAに関連するブロック204,202,308を含むだけでなく、該当する場合にはアプリケーションB及びCに対するサポートを示す対応するブロックも含むことができる。参照符号204'及び204"で示されるように、アプリケーションB及びCに対しても、対応する乱数を計算することができる。参照符号310'及び310"で示されるように、アプリケーションB及びCに対しても、インテグリティブロックを計算することができる。インテグリティブロック310'及び310"は、鍵KAの代わりに鍵KB又はKCを用いて、アプリケーションAに対するデータブロック310と同様に計算される(status,RndF又はRndH,ApplB又はC及びRndQに基づいて計算されるMAC)。
【0109】
トランスポンダ104からリーダ102へのリプライ304の送信後に、リーダ102側におけるメッセージ304の解析によってリーダ102はどのアプリケーションがトランスポンダ104によりサポートされているかに関する情報を抽出することができる。
【0110】
本例では3つのアプリケーションA,B,Cがトランスポンダ104によりサポートされているため、リーダ102は参照符号320で示される選択プロシージャを実行することができる。この目的のために、リーダ102は、アプリケーションA、アプリケーションB又はアプリケーションCが選択されるかどうかに依存して鍵KA,KB又はKCを用いてMAC322を計算する。MAC322は、乱数308、アプリケーションA、アプリケーションB又はアプリケーションCを示すブロック324及び対応する乱数RndD204、RndF204’又はRndH204”を含む。
【0111】
通信メッセージ320の受信時に、トランスポンダはメッセージ330を返送することができる。
【0112】
トランスポンダ104が次の動作のために使用すべきサポートアプリケーションA,B又はCの選択を行う場合には、トランスポンダ104はアプリケーションA,B又はCに対して一つのレスポンスを返すのみとすることができる。この場合には、トランスポンダ104が予め選択を行うので、選択コマンド320は不要になる。
【0113】
図3の実施例はMAC306内にトランスポンダ104の識別子(CLUID)を含まない。
【0114】
通信シーケンス400を示す図4の実施例では、このようなユニーク識別子を含むMAC412が生成される。
【0115】
図4の実施例では、リクエスト302の受信後に、トランスポンダ104はリプライ410を生成する。このリプライ410は、ペイロードブロック414とアプリケーションの名前を示すブロック416とからなる計算MAC412を含む。ペイロードブロック414はアプリケーションAに関連する鍵KAの関数として計算され、他のデータを含めることもできる。この目的のために乱数RndDを用いることもできる。ペイロード414はトランスポンダ104のアイデンティティを示すサブブロック418を含むとともに乱数ブロック420を含む。アプリケーションB及びCに対しても、該当する場合には、図4に示すように対応するブロックを同様に生成することができる。
【0116】
リプライ410を形成する図4のシナリオは、アプリケーションA,B及びCが実際にトランスポンダ104によりサポートされている状態に関連している。アプリケーションがサポートされていない別のシナリオでは、トランスポンダ104は、通信メッセージ410の代わりに、単に乱数をリーダ102に送信する。これは如何なるサポートの「存在」又は「不在」を隠蔽する。
【0117】
ペイロードブロック430はアプリケーションAに関連するが、ペイロード430’はアプリケーションBに関連し、ペイロード430”はアプリケーションCに関連する。同様に、ブロック310に対応するインテグリティブロック310’及び310”がアプリケーションB及びCに対して形成される。ペイロードブロック430’、430”はアプリケーションAに対するペイロードフィールド430と同様に、ユニーク識別子CLUID及び乱数を鍵KAの代わりに鍵KB又はKCを用いて暗号化することにより計算される。
【0118】
本例でも、リーダ102が次の動作のためにアプリケーションA,B,C,の一つを選択するというシナリオで選択メッセージ440がリーダ102により生成されるようしてよい。この目的のために、乱数444、トランスポンダのアイデンティティを示すブロック446及びフィールド324及び308を含むMAC442をリーダデバイス102により計算することができる。
【0119】
図4の例は、リーダ102がアプリケーションA,B及びCをサポートするというシナリオに関連する。MAC442に関して、リーダ102がアプリケーションA,B又はCのいずれも選択しない場合には乱数RndYを送信することができる。MAC442を計算するために使用される鍵は選択されるアプリケーションA,B又はCに応じて鍵KA,KB又はKCである。
【0120】
図3と同様に、RndQ308は使用してもしなくてもよい。各アプリケーションに対してレスポンスを与えるか、トランスポンダ104がA,B又はCに対して一つのレスポンスを返すのみとする。この場合、選択コマンド440は不要になる。
【0121】
図5の実施例において、通信メッセージ302及び330は図3及び図4の場合と同様である。
【0122】
しかし、通信メッセージ510を計算するために、ペイロード512はアプリケーションAを示す鍵(KA)と他のデータの暗号(E)として計算することができる。また、このブロック512の計算のために乱数RndDを用いることができる。更に、図5から明らかなように、ブロック512はトランスポンダの識別子418、乱数RndX420、アプリケーションAの名前202、オプションの乱数RndQ及び巡回冗長検査(CRC)514を含む。CRC514は暗号文の完全性を保証する。アプリケーションB及びCに対して対応するブロックを同様に計算することができる(参照符号512’及び512”参照)。例えば、フィールド512’はアプリケーションAの場合と同様に、KAの代わりにKBを用いて、CLUID、RndX、RndQ及びCRCを暗号化することにより計算される。
【0123】
選択メッセージ550のために、MACを計算することができる。リーダ102がアプリケーションA,B又はCのいずれも選択しない場合にはRndYを送信することができる。MACを計算するために、使用する鍵はどのアプリケーションA,B又はCが選択されるかに応じてKA,KB又はKCである。
【0124】
本発明の模範的な実施例によれば、プロトコルフローが反対方向になるようにリーダ及びトランスポンダの全体的な機能を逆にすることができる。これは明瞭に記載したシステムと等価な解決をもたらし、これも本発明の範囲によりカバーされる。例えば、リーダとトランスポンダを入れ替えることによりリーダのアプリケーション名を保護することができる。
【0125】
最後に、上述の実施例は例示であり、本発明を限定するものではなく、当業者は添付の特許請求の範囲で特定される発明の範囲を逸脱することなく多くの代替実施例を設計可能であるということに留意する必要がある。特許請求の範囲において、括弧内の符号は請求項の記載を限定するものと解釈されるべきではない。「具え」および「含む」などの単語は、請求項あるいは本明細書に列記されていない要素またはステップの存在を除外するものではない。単数形で述べる要素は複数の要素を除外するものではないし、その逆も成り立つ。いくつかの手段を列挙している装置請求項において、これらの手段のいくつかは、ハードウェアあるいはソフトウェアの同一の要素によって具現化できる。特定の手段が相互に異なる従属請求項に引用されているが、このことは、これらの手段の組合せが有利に使用できないことを示すものではない。

【特許請求の範囲】
【請求項1】
複数の異なるアプリケーションを格納した記憶装置を備えるトランスポンダであって、
リーダのリクエストに応答して、当該トランスポンダと前記リーダの双方が知っている暗号化スキームを用いて解釈可能なレスポンスを生成し、その結果前記リーダが前記レスポンスを前記暗号化スキームを用いて解析することによってアプリケーションが当該トランスポンダによりサポートされるかどうかを決定することができるように構成された処理装置と、
前記レスポンスを前記リーダに送信するように構成された送信装置と、
を備えるトランスポンダ。
【請求項2】
前記処理装置は、アプリケーションの名前を乱数により拡張し、拡張された数を前記アプリケーションと関連する鍵で暗号化するように構成されている、請求項1記載のトランスポンダ。
【請求項3】
前記処理装置は、リーダから該リーダによりサポートされるアプリケーションを示すリクエストを受信するとき、該リーダによりサポートされるアプリケーションのどれが当該トランスポンダによってもサポートされるか検査し、該リーダ及び当該トランスポンダによりサポートされるアプリケーションを拡張し暗号化するように構成されている、請求項2記載のトランスポンダ。
【請求項4】
前記処理装置は、前記アプリケーションの名前を暗号化前に乱数及びチェックサムにより拡張するように構成されている、請求項2記載のトランスポンダ。
【請求項5】
前記処理装置は、当該トランスポンダによりサポートされないアプリケーションに対して、乱数を生成するように構成され、
前記送信装置は生成された乱数を前記リーダに送信するように構成されている、請求項1記載のトランスポンダ。
【請求項6】
前記処理装置は、当該トランスポンダによりサポートされないアプリケーションに対して、乱数を生成し、該乱数は当該トランスポンダによりサポートされるアプリケーションに対する符号化された数の長さと同一の長さを有する、請求項5記載のトランスポンダ。
【請求項7】
前記処理装置は、当該トランスポンダのアイデンティティを示す識別子を前記レスポンスに含めるように構成されている、請求項1記載のトランスポンダ。
【請求項8】
前記処理装置は、前記リーダによりサポートされる複数のアプリケーションの少なくとも一つを選択し、選択したアプリケーションを前記レスポンスに含めるように構成されている、請求項1記載のトランスポンダ。
【請求項9】
前記処理装置は、当該トランスポンダによりサポートされる複数のアプリケーション又はすべてのアプリケーションを、前記リーダによるサポートアプリケーションの一つの次の選択のための基礎として前記レスポンスに含めるように構成されている、請求項1記載のトランスポンダ。
【請求項10】
前記処理装置は、メッセージ認証符号を含むように前記レスポンスを生成するように構成されている、請求項1記載のトランスポンダ。
【請求項11】
前記処理装置は、前記メッセージ認証符号を含むレスポンスを、アプリケーションと関連する鍵と乱数、アプリケーションの名前と乱数、及びアプリケーションの名前と乱数と当該トランスポンダのアイデンティティを示す識別子からなる群のうちの一つの組み合わせに基づいて生成するように構成されている、請求項10記載のトランスポンダ。
【請求項12】
前記処理装置は、巡回冗長検査(CRC)を含むように前記レスポンスを生成するように構成されている、請求項1記載のトランスポンダ。
【請求項13】
前記処理装置は、前記巡回冗長検査(CRC)を含むレスポンスを、乱数と当該トランスポンダのアイデンティティを示す識別子に基づいて生成するように構成されている、請求項12記載のトランスポンダ。
【請求項14】
前記処理装置は、符号化されたチェックサムを含むがアプリケーションの名前を含まないように前記レスポンスを生成し、前記リーダは、前記チェックサムに基づいて、アプリケーションが当該トランスポンダによりサポートされているかどうかを決定することができるように構成されている、請求項1記載のトランスポンダ。
【請求項15】
当該リーダによりサポートされる複数のアプリケーションを表すリクエストをトランスポンダに送信するように構成された送信装置と、
前記トランスポンダから受信されたレスポンスを前記トランスポンダと当該リーダの双方が知っている暗号化スキームで解析するように構成された解析装置と、
前記暗号化スキームを用いて前記レスポンスを解析することによってアプリケーションが前記トランスポンダによりサポートされるかどうかを決定するように構成された決定装置と、
を備えるリーダ。
【請求項16】
前記解析装置は、前記トランスポンダから受信される前記レスポンスをアプリケーションと関連する鍵で復号化して復号化された拡張数を導出するように構成された復号装置であり、
前記決定装置は、前記復号化された拡張数が前記アプリケーションの名前を含むかどうかを決定するように構成されている、請求項15記載のリーダ。
【請求項17】
前記送信装置は、前記リクエストを暗号化して送信するように、あるいは、前記リクエストを平分で送信するように構成されている、請求項15記載のリーダ。
【請求項18】
前記送信装置は、当該リーダによりサポートされる複数のアプリケーションと無関係に一定の長さを有する前記リクエストを送信するように構成されている、請求項15記載のリーダ。
【請求項19】
前記決定装置は、前記復号化された数が前記アプリケーションの名前を含まないことを決定するとき、アプリケーションが前記トランスポンダによりサポートされないと判断するように構成されている、請求項16記載のリーダ。
【請求項20】
前記決定装置は、前記レスポンスから前記トランスポンダのアイデンティティを示す識別子を取り出すことによって前記トランスポンダのアイデンティティを決定するように構成されている、請求項15記載のリーダ。
【請求項21】
前記決定装置は、前記レスポンスから、次の使用のために当該リーダによりサポートされ、選択される一つのアプリケーションを決定するように構成されている、請求項15記載のリーダ。
【請求項22】
前記決定装置は、次の使用のために前記トランスポンダによりサポートされる複数のアプリケーションの一つを選択し、選択したアプリケーションを前記トランスポンダに通知するように構成されている、請求項15記載のリーダ。
【請求項23】
前記決定装置は、前記レスポンスに含まれるメッセージ認証符号を解析することによって前記トランスポンダによりサポートされるアプリケーションを決定するように構成されている、請求項15記載のリーダ。
【請求項24】
前記決定装置は、前記レスポンスに含まれる巡回冗長検査を解析することによって前記トランスポンダによりサポートされるアプリケーションを決定するように構成されている、請求項15記載のリーダ。
【請求項25】
前記決定装置は、前記レスポンスに含まれるアプリケーションの名前を含まないチェックサムを解析することによって前記トランスポンダによりサポートされるアプリケーションを決定するように構成されている、請求項15記載のリーダ。
【請求項26】
リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽する方法であって、該方法は、
前記リーダが前記トランスポンダにリクエストを送信するステップ、
前記トランスポンダが、前記トランスポンダと前記リーダの双方が知っている暗号化スキームを用いて、アプリケーションが前記トランスポンダによりサポートされるかどうかを示す解釈可能なレスポンスを生成するステップ、
前記トランスポンダが前記レスポンスを前記リーダに送信するステップ、及び
前記リーダが、前記暗号化スキームを用いて前記レスポンスを解析することによってアプリケーションが前記トランスポンダによりサポートされるかどうかを決定するステップを備える方法。
【請求項27】
前記トランスポンダが、前記トランスポンダがサポートするアプリケーションの名前を乱数で拡張するステップ、及び
前記トランスポンダが、前記レスポンスを生成するために、拡張された数を前記アプリケーションと関連する鍵で暗号化するステップを更に備える、請求項26記載の方法。
【請求項28】
プロセッサで実行すると、請求項26に記載された方法を実行又は制御するように構成された、リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽するコンピュータプログラムが格納されているコンピュータ読み取り可能な媒体。
【請求項29】
プロセッサで実行すると、請求項26に記載された方法を実行又は制御するように構成されている、リーダ及び/又はトランスポンダによりサポートされるアプリケーションを隠蔽するプログラム素子。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公表番号】特表2011−519091(P2011−519091A)
【公表日】平成23年6月30日(2011.6.30)
【国際特許分類】
【出願番号】特願2011−505605(P2011−505605)
【出願日】平成20年11月7日(2008.11.7)
【国際出願番号】PCT/IB2008/054665
【国際公開番号】WO2009/144535
【国際公開日】平成21年12月3日(2009.12.3)
【出願人】(507219491)エヌエックスピー ビー ヴィ (657)
【氏名又は名称原語表記】NXP B.V.
【住所又は居所原語表記】High Tech Campus 60, NL−5656 AG Eindhoven, Netherlands
【Fターム(参考)】