(57)【要約】  無線リーダ30によるタグ識別子データベースを介して利用可能な識別子IDを有した無線タグ20の認証方法は、リーダによる認証リクエストの送信段階E10と、タグによる少なくとも識別子に第１関数H1を適用した応答H1(ID)の送信段階E11と、タグ及びリーダによる識別子に第２関数H2を適用した新識別子H2(ID)の算出段階E15,E18とを有し、応答とデータベース内の識別子に第１関数を適用した結果とが一致した場合のリーダによる当該識別子に第３関数H3を適用した第１値H3(ID)の送信段階E13と、第１値とタグの識別子に第３関数を適用した値とが一致した場合のタグの算出した新識別子によるタグの識別子の置換段階E16と、当該新識別子に第４関数H4を適用して得た第２値H4(H2(ID))のリーダへの送信段階E17と、第２値とリーダの算出した新識別子に第４関数を適用した値とが一致した場合の当該新識別子によるデータベース内の識別子の置換段階E20とをさらに有する。
2011520373.tif 000002
【特許請求の範囲】
【請求項１】
無線周波数識別読取装置（３０）による、タグ識別子のデータベースを介して当該読取装置で利用可能となる識別子（ＩＤ）を有した無線周波数識別タグ（２０）の認証方法であって、
読取装置によって、タグへ認証リクエストが送信される段階（Ｅ１０）と、
タグによって、少なくとも識別子に第１関数を適用して算出した応答（Ｈ１（ＩＤ））が送信される段階（Ｅ１１）と、
タグ及び読取装置それぞれによって、識別子に第２関数を適用した新識別子（Ｈ２（ＩＤ））が算出される段階（Ｅ１５，Ｅ１８）と
を有し、
タグの送信した応答（Ｈ１（ＩＤ））とデータベース内の識別子に前記第１関数を適用して得た結果とが一致した場合に、読取装置（３０）によって、データベース内の当該識別子に第３関数を適用して算出した第１値（Ｈ３（ＩＤ））が送信される段階（Ｅ１３）と、
送信された第１値（Ｈ３（ＩＤ））とタグ内の識別子に第３関数（Ｈ３）を適用して得た値とが一致した場合に、タグ（２０）内の識別子（ＩＤ）がタグの算出した新識別子（Ｈ２（ＩＤ））で置き換えられる段階（Ｅ１６）と、
タグの算出した新識別子（Ｈ２（ＩＤ））に第４関数を適用して得た第２値（Ｈ４（Ｈ２（ＩＤ）））が読取装置へ送信される段階（Ｅ１７）と、
送信された第２値（Ｈ４（Ｈ２（ＩＤ）））と読取装置の算出した新識別子（Ｈ２（ＩＤ））に第４関数（Ｈ４）を適用して得た値とが一致した場合に、データベース内の当該タグの識別子が読取装置の算出した新識別子で置き換えられる段階（Ｅ２０）と
をさらに有することを特徴とする方法。
【請求項２】
タグの送信した応答（Ｈ１（ＩＤ））とデータベース内の各タグ識別子に前記第１関数を適用して得たすべての結果とが一致しなかった場合に、
最初に第２関数、次に第１関数が連続的に適用されるデータベース内の各識別子のうちから、タグの送信した応答を検索する段階と、
タグの送信した応答（Ｈ１（ＩＤ））とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果とが一致した場合に、データベース内の当該識別子に第２関数（Ｈ２）を適用して識別子（ＩＤ）の更新を行う段階と
をさらに有することを特徴とする請求項１に記載の方法。
【請求項３】
認証リクエストが、読取装置の生成した第１乱数値（ｒａｎｄｏｍｖａｌｕｅ１）を含み、
応答が、
タグの生成した第２乱数値（ｒａｎｄｏｍｖａｌｕｅ２）と、
タグの識別子、読取装置から受信した第１乱数値（ｒａｎｄｏｍｖａｌｕｅ１）、及び第２乱数値（ｒａｎｄｏｍｖａｌｕｅ２）からなるデータに第１関数を適用して得たハッシュと
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
無線周波数識別読取装置による認証がなされるように構成された、識別子（ＩＤ）を有する無線周波数識別タグであって、
読取装置から、認証リクエストと第１値（Ｈ３（ＩＤ））とを受信するように構成された受信手段（２１０）と、
読取装置へ、前記認証リクエストへの応答と第２値（Ｈ４（Ｈ２（ＩＤ）））とを送信するように構成された送信手段（２１０）と、
少なくとも識別子に第１関数（Ｈ１）を適用して前記応答（Ｈ１（ＩＤ））を算出するように構成された応答算出手段（２３０）と、
識別子に第２関数（Ｈ２）を適用して新識別子（Ｈ２（ＩＤ））を算出するように構成された新識別子算出手段（２４０）と、
新識別子（Ｈ２（ＩＤ））に第４関数（Ｈ４）を適用して第２値を算出するように構成された第２値算出手段（２５０）と、
識別子に第３関数（Ｈ３）を適用して第３値を算出するように構成された第３値算出手段（２６０）と、
タグ内の識別子を新識別子（Ｈ２（ＩＤ））で置き換えるように構成された識別子置換手段（２７０）と、
受信した第１値（Ｈ３（ＩＤ））と算出した第３値とを比較し、一致した場合に、識別子置換手段を起動するように構成された比較手段（２８０）と
を具備することを特徴とする無線周波数識別タグ。
【請求項５】
タグ識別子のデータベースにアクセスすることにより無線周波数識別読取装置で利用可能となる識別子（ＩＤ）によって識別がなされる少なくとも１つの無線周波数識別タグの認証を行うように構成された無線周波数識別読取装置であって、
タグへ、認証リクエストと第１値（Ｈ３（ＩＤ））とを送信するように構成された送信手段（３２５，３３５）と、
タグから、前記認証リクエストに対する応答（Ｈ１（ＩＤ））と第２値（Ｈ４（Ｈ２（ＩＤ）））とを受信するように構成された受信手段（３２５，３３０）と、
算出のための手段であって、
データベース内のタグに関連する識別子に第２関数（Ｈ２）を適用して算出したタグの新識別子（Ｈ２（ＩＤ））と、
データベース内のタグに関連する識別子に第３関数（Ｈ３）を適用して算出した第１値（Ｈ３（ＩＤ））と、
新識別子（Ｈ２（ＩＤ））に第４関数（Ｈ４）を適用して算出した第３値と
を算出するように構成された算出手段（３４０）と、
データベース内のタグに関連する識別子を検索するための手段であって、タグの送信した応答（Ｈ１（ＩＤ））とデータベース内の識別子に第１関数を適用して得た結果とが一致するか否かの判断を行い、一致した場合に、送信手段に、データベース内のタグに関連する前記識別子に第３関数（Ｈ３）を適用して算出した第１値（Ｈ３（ＩＤ））の送信を行わせるように構成された検索手段（３４５）と、
データベース内のタグに関連する識別子を新識別子で置き換えるように構成された置換手段（３５０）と、
タグから受信した第２値（Ｈ４（Ｈ２（ＩＤ）））と第３値とを比較し、第２値と第３値とが一致した場合に、前記置換手段を起動するように構成された比較手段（３５５）と
を具備することを特徴とする無線周波数識別読取装置。
【請求項６】
算出手段（３４０）が、データベース内のタグ識別子に最初に第２関数（Ｈ２）、次に第１関数（Ｈ１）を連続的に適用するようにさらに構成され、
データベース内のタグに関連する識別子の検索手段（３４５）が、タグの送信した応答（Ｈ１（ＩＤ））とデータベース内の各タグ識別子に前記第１関数を適用して得たすべての結果とが一致しなかった場合に、算出手段によって最初に第２関数（Ｈ２）、次に第１関数（Ｈ１）が連続的に適用されるデータベース内の各識別子のうちから、タグの送信した応答を検索するようにさらに構成され、
置換手段（３５０）が、タグの送信した応答（Ｈ１（ＩＤ））とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果（Ｈ１（Ｈ２（ＩＤ）））とが一致した場合に、当該識別子に第２関数（Ｈ２）を適用してデータベース内の識別子を更新するようにさらに構成されることを特徴とする請求項５に記載の無線周波数識別読取装置。
【請求項７】
請求項５に記載の無線周波数識別読取装置と、
少なくとも１つの、請求項４に記載の無線周波数識別タグと
からなることを特徴とする無線周波数認証システム。
【請求項８】
無線周波数識別読取装置の記憶部にインストールすることを意図したコンピュータプログラムであって、
プロセッサによって実行されたとき、請求項１ないし３のいずれか１項に記載の無線周波数識別タグの認証方法の各段階を無線周波数識別読取装置で実行するための複数の命令からなることを特徴とするコンピュータプログラム。
【請求項９】
請求項８に記載のコンピュータプログラムを格納したデータ記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線周波数識別読取装置による無線周波数識別タグの認証技術に関する。
詳細には、本発明は、無線周波数識別又は「ＲＦＩＤ」の分野に有利に適用される。
【背景技術】
【０００２】
無線周波数識別は、無線周波数識別タグ（又は「ＲＦＩＤタグ」）と称されるマーカーを用いることで、データの格納及び取り出しをリモートで行う技術である。無線周波数タグは、例えば、粘着ラベルなど、他の物体又は製造物への貼り付け又は埋め込み可能な小さな物体である。タグには、電子チップに関連したアンテナが含まれており、アンテナは、読取装置（リーダ）と称される送受信機から送信される無線周波数リクエストを受信し、応答することを可能とする。無線周波数識別タグは、例えば、タグがパスポート、旅行チケット、又は支払いカードに組み込まれたものである場合には、個人を識別するために使用され、また、バーコードのように、製造物を識別するためにされる。
【０００３】
慣習的に、読取装置は、タグの応答に対し、無線チャネルを介して特殊な問い合わせ信号を送信する。タグからの応答の一例としては、当該タグの数値的識別子がある。次いで、読取装置は、タグを識別するため又はタグの利用可能性をチェックするために、データベースの検索を行う。無線周波数識別タグの保有する私的生活（プライベートライフ）の情報、特に、個人の私的生活の情報の保護の観点から、通常、そのような情報は、読取装置において、以下の３つの特性を有した無線周波数識別タグ認証プロトコルを用いて取り扱われることが望ましい。
−  プロトコルは、匿名性を有するべきである。換言すれば、認証に使用されるタグは、悪意ある第三者によって識別可能であってはならない。
−  タグは、追跡可能であってはならない。換言すれば、同一のタグについて、２つの異なる認証結果が紐付けられてはならない。
−  何らかの手法、例えば、「リバースエンジニアリング」と称される手法やカードへの物理的な攻撃などにより、タグの識別子を逆取得する悪意のある行為が行われた場合に、タグの以前の認証結果を知ることが可能であってはならない。このような特性を「フォワードプライバシー」特性と称する。
【０００４】
そのようなプロトコルが個人の識別に使用される場合に、上記の３つの特性が私的生活を尊重するための助けとなることは明らかである。
【０００５】
大久保氏、鈴木氏、及び木下氏によって提案された「ＯＳＫ」プロトコルと称されるプロトコルは、これらの３つのセキュリティ特性を提供する。本プロトコルは、以下のように説明できる。すなわち、タグは、ＩＤを表す一意に定まる識別子を有し、かつタグを読み取る機能を有した読取装置は、すべてのタグ識別子を格納したデータベースにアクセスする。読取装置によって送信された認証リクエストを受信すると、タグは、自身の識別子のハッシュの送信によって応答する。ハッシュは、第１ハッシュ関数Ｈ１、例えば、（「セキュアハッシュアルゴリズム（Secure Hash Algorithm）」である）「ＳＨＡ−２５６」によって算出される。ここでは、このハッシュをＨ１（ＩＤ）と称する。
【０００６】
次いで、タグは、第１ハッシュ関数とは異なる第２ハッシュ関数Ｈ２を用いて自身の識別子の第２ハッシュを算出することによって、自身の識別子ＩＤを更新する。ここでは、第２ハッシュをＨ２（ＩＤ）と称する。よって、新たな識別子ＩＤは、Ｈ２（ＩＤ）となる。
【０００７】
識別子の第１ハッシュＨ１（ＩＤ）を受信すると、読取装置は、第１ハッシュ関数を用いて、データベース中の複数の識別子のハッシュを算出する。Ｈ１（ＩＤ）に等しい値が見つかった場合、読取装置は、タグの認証を受理するとともに、タグ側と同様の手法、すなわち、Ｈ２（ＩＤ）の算出によって、当該識別子ＩＤを更新する。読取装置は、複数の識別子のデータベース中でＨ１（ＩＤ）に等しい値を発見できなかった場合、第２ハッシュ関数Ｈ２を用いてすべての識別子のハッシュを算出し、認証が成功するまで、新たに算出した複数の識別子を用いて上記動作を繰り返す。
【０００８】
以上のことから、このプロトコルについて、次のことが言える。
−  タグと読取装置との間でやりとりされるのは、識別子にハッシュ関数を適用することによって取得された値である。ハッシュ関数、ここではＨと称する、は、任意のｘについて写像Ｈ（ｘ）が定まり、Ｈ（ｘ）＝Ｈ（ｙ）となるようなｙを算出することが非常に困難であるという特性を有する。この特性のおかげで、タグの匿名性が保たれる。識別子のハッシュを復元しようとする悪意のある人物は、識別子を推測的（a priori）に取り出すことができない。
−  ２つの認証の間にタグの識別子が更新されるので、認証リクエストに応答してタグによって送信される各メッセージは、異なる識別子に対応したものとなる。したがって、追跡不可能な特性が得られる。
−  ２つの認証リクエストの間にタグの識別子が更新され、かつハッシュ関数は不可逆であるとみなせるので、タグ識別子を復元しようと試みる悪意ある第三者は、このタグ識別子と以前の認証結果とを関連付けることができない。故に、「フォワードシークレシー（Forward Secrecy）」と称される特性が得られる。
【０００９】
しかしながら、この認証プロトコルは、いくつかの弱点を有している。例えば、タグは、読取装置からの各認証リクエストの後に自身の識別子を更新するので、タグに対してｍ個の連続した認証リクエストを行う者には、自身のタグ識別子のｍ回の更新を招き、タグと読取装置との間の同期に著しい損失を引き起こす。故に、読取装置による実際の認証リクエストにおいては、読取装置は、現在認証されているタグに対応する識別子を見つけた後に、複数の識別子のデータベース中のすべての識別子をｍ回更新する。ｍ回の更新は、読取装置とタグとの再同期に相当する。サービス拒否型攻撃のような攻撃は、そのような無線周波数識別システムの処理能力を低下又は飽和させ、最終的には、他の認証を排除することを目的としたものである。
【００１０】
無線周波数識別システムによって生成されたタグの数が大量である場合、タグの認証は、時間とリソースとの両方で高コストとなる。実行が容易であるこの種の攻撃は、無線周波数識別システムの認証プロトコルを無力化する。例えば、そのようなシステムが公共交通機関に設置され、回転式改札口（ターンスタイル）として具現されたアクセス端末において、加入者に対し、自身に提供された無線周波数識別タグを備えた加入者カードによる認証の後に、当該交通機関にアクセスすることが許可されている状況下で、特に混雑する時間帯に、加入者カードを提示してから改札口が開くのに数分も待たねばならないならば、これらの加入者は不満を抱くことだろう。
【００１１】
したがって、無線周波数識別システムに対して、当該無線周波数識別システムを無力化するサービス拒否型攻撃の影響を受けない認証プロトコルが求められている。
【発明の概要】
【課題を解決するための手段】
【００１２】
本発明は、無線周波数識別読取装置により無線周波数識別タグの認証を行う方法を提案することによって、このような要望に取り組む。上記タグは、読取装置が複数のタグ識別子のデータベースを介してアクセス可能な識別子を有する。上記方法は、
−  読取装置によって、タグへ認証リクエストが送信される段階と、
−  タグによって、少なくとも識別子に第１関数を適用して算出した応答が送信される段階と、
−  タグ及び読取装置それぞれによって、識別子に第２関数を適用した新識別子が算出される段階と
からなり、
−  タグの送信した応答とデータベース内の識別子に上記第１関数を適用して得た結果とが一致した場合に、読取装置によって、データベース内の当該識別子に第３関数を適用して算出した第１値が送信される段階と、
−  送信された第１値とタグ内の識別子に第３関数を適用して得た値とが一致した場合に、タグ内の識別子がタグの算出した新識別子で置き換えられる段階と、
−  タグの算出した新識別子に第４関数を適用して得た第２値が読取装置へ送信される段階と、
−  送信された第２値と読取装置の算出した新識別子に第４関数を適用して得た値とが一致した場合に、データベース内の当該タグの識別子が読取装置の算出した新識別子で置き換えられる段階と
を有することを特徴とする。
【００１３】
本発明による方法では、タグ及び読取装置は、特定の条件下でのみタグ識別子の更新を行う。
【００１４】
タグについては、識別子の更新は、読取装置がタグ識別子を把握したという確認を読取装置から受信し終わった後でのみ実行される。よって、タグは、信頼できる読取装置との対話が行われることを保証される。読取装置については、識別子のデータベース内のタグ識別子の更新は、タグが自身の識別子を更新したことを表すメッセージをタグから受信し、チェックした後でのみ実行される。
【００１５】
したがって、タグは、読取装置毎に、各タグで信頼できる読取装置との対話を確保する。
【００１６】
自身の識別子が更新されたことを通知するためにタグによって読取装置へ送信されるメッセージは、このようなメッセージがタグによる自身の識別子の更新の後に送信されるために過度の非同期性を保っており、読取装置によるデータベース内のタグ識別子の更新をトリガする。
【００１７】
これによって、タグとデータベースとの過度の非同期化が可能となる。具体的には、第三者によってｍ個の認証リクエストがタグへ送信される場合、そのような第三者は、タグの求めるメッセージを提供することができないので、タグは、当分野の従来のプロトコルに従うような、自身の識別子のｍ回の更新は行わない。よって、本来の認証において、読取装置は、タグのメッセージを受け取るより前にデータベース内の識別子をｍ回更新する必要は無い。読取装置が多数の識別子を管理する場合、複数の更新が、タグの認証を著しく遅らせることとなる。よって、本発明による方法は、サービス拒否型のような読取装置の処理能力を低下又は飽和させて他の認証を妨げることを意図した、第三者からのそのような攻撃には反応しない。
【００１８】
また、本発明による方法では、以下のセキュリティ特性が期待できる。
−  認証方法は、匿名性を有する。すなわち、タグと読取装置との間を行き来する識別子は、当該識別子に１つ以上のハッシュ関数を適用して得たハッシュ形態をとる。ハッシュ関数は、逆算が困難であるので、識別子のハッシュの復元を試みる悪意ある第三者は、認証で使用されるタグを識別できない。
−  タグは、追跡不可能である。すなわち、プロトコルを使用した通常のケースでは、タグに対する２つの連続した認証を互いに結び付けることができない。これは、２つの認証の間にタグの識別子が更新されるので、各メッセージは、異なる識別子に対応する認証リクエストに応答してタグによって送信されるためである。
−  第三者がタグの識別子を取得できたとしても、彼らは、タグの以前の認証を認識できない。具体的には、識別子は、２つの連続する認証の間に更新される。さらに、逆算の困難なハッシュ関数の使用によって、以前の認証をそのようなタグ識別子に関連付けることができない。この特性は、「フォワードシークレシー」特性と称される。
【００１９】
さらに、上記認証方法は、４つのハッシュ算出しか必要としないので、タグラベルにおける負荷が小さい。
【００２０】
本発明の一態様では、本方法は、タグの送信した応答とデータベース内の各タグ識別子に上記第１関数を適用して得たすべての結果とが一致しなかった場合に、
−  最初に第２関数、次に第１関数が連続的に適用されるデータベース内の各識別子のうちから、タグの送信した応答を検索する段階と、
−  タグの送信した応答とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果とが一致した場合に、データベース内の当該識別子に第２関数を適用して識別子の更新を行う段階と
を有する。
【００２１】
本発明による方法では、第三者に対し、タグと読取装置によって繰り返しアクセスを受けるデータベースとを非同期化できる。具体的には、タグは、読取装置から第１値Ｈ３（ＩＤ）を受信した後に自身の識別子を更新するので、非同期化は、タグによる識別子の更新の後、かつタグが第２値Ｈ４（Ｈ２（ＩＤ））を読取装置へ送信する前に、プロトコルの割り込みによって実行される。この場合、読取装置は、データベースの更新も、新たな識別子Ｈ２（ＩＤ）によるタグ識別子の置き換えも行わない。したがって、新たなタグ識別子がＨ２（ＩＤ）であるのに対し、データベースでは、タグ識別子のＩＤのままであるので、タグ及び読取装置は、一度非同期化される。しかしながら、タグとデータベースとを再度非同期化することはできない。
【００２２】
具体的には、第三者がタグへ新たな認証リクエストを送信する場合、そのような第三者は、タグの識別子を知らず、第１値Ｈ３（ＩＤ）を生成してタグへ送信することができないので、タグは、自身の識別子の更新を行わない。
【００２３】
認証リクエストに応答して乱数成分が読取装置へ送信される第２のケースでは、読取装置が識別子データベース内の識別子を無制限に検索するように、読取装置は、第１ハッシュ関数を適用して得た乱数成分のハッシュについて、データベース内を検索する。そのようなハッシュが見つからなかった場合、データベース内の各識別子に最初に第２ハッシュ関数、次に第１ハッシュ関数を適用して、データベース内を検索する。それでもハッシュが見つからなかった場合、読取装置は、それ以上検索は実行せず、認証は失敗に終わる。認証に失敗した場合、必然的に、タグが不正又は誤っていることを指す。どちらの場合でも、タグラベル又はデータベースラベルいずれの識別子の更新も行われない。
【００２４】
しかしながら、タグと読取装置とが（タグは自身の識別子を更新するが、データベースはそうではないために）ひとたび非同期化され、かつ読取装置がタグへの通知のための認証リクエストを送信した場合、タグと識別子データベースとの非同期性が存在する。具体的には、タグから認証リクエストに対する応答を受信する読取装置は、データベースの第２の検索、すなわち、データベース内の各識別子に最初に第２ハッシュ関数、次に第１ハッシュ関数を適用して実行する検索の間に、この応答を識別子データベース内から見つけ出す。応答が見つけ出されると、次いで、データベース内でタグ識別子が更新され、認証プロトコルが続行される。よって、タグ及びデータベースは、この正当な認証リクエストによって再同期化がなされる。
【００２５】
本発明による方法の一態様では、
−  認証リクエストは、読取装置の生成した第１乱数値（ｒａｎｄｏｍｖａｌｕｅ１）を含み、
−  応答は、タグの生成した第２乱数値（ｒａｎｄｏｍｖａｌｕｅ２）と、タグの識別子、読取装置から受信した第１乱数値（ｒａｎｄｏｍｖａｌｕｅ１）、及び第２乱数値（ｒａｎｄｏｍｖａｌｕｅ２）からなるデータに第１関数を適用して得たハッシュとを含む。
【００２６】
メッセージ中での乱数値の使用は、認証方法のセキュリティを強化する。読取装置による第１乱数値ｒａｎｄｏｍｖａｌｕｅ１の送信によって、タグと読取装置との間の非同期化の繰り返しを回避できる。タグの生成する第２乱数値ｒａｎｄｏｍｖａｌｕｅ２は、いくつかの連続する認証間での非追跡性を確保する。特に、認証間の攻撃の場合に、タグと読取装置との間で行き来するあるメッセージが横取りされたとしても、タグ識別子は、タグによって更新されることがない。
【００２７】
また、本発明は、無線周波数識別読取装置による認証がなされるように構成された無線周波数識別タグに関する。上記タグは、識別子を有するとともに、
−  読取装置から、認証リクエストと第１値とを受信するように構成された受信手段と、
−  読取装置へ、上記認証リクエストへの応答と第２値とを送信するように構成された送信手段と、
−  少なくとも識別子に第１関数を適用して上記応答を算出するように構成された応答算出手段と、
−  識別子に第２関数を適用して新識別子を算出するように構成された新識別子算出手段と、
−  新識別子に第４関数を適用して第２値を算出するように構成された第２値算出手段と、
−  識別子に第３関数を適用して第３値を算出するように構成された第３値算出手段と、
−  タグ内の識別子を新識別子で置き換えるように構成された識別子置換手段と、
−  受信した第１値と算出した第３値とを比較し、一致した場合に、識別子置換手段を起動するように構成された比較手段と
を具備する。
【００２８】
また、本発明は、タグ識別子のデータベースにアクセスすることにより無線周波数識別読取装置で利用可能となる識別子によって識別がなされる少なくとも１つの無線周波数識別タグの認証を行うように構成された無線周波数識別読取装置に関する。上記読取装置は、
−  タグへ、認証リクエストと第１値とを送信するように構成された送信手段と、
−  タグから、上記認証リクエストに対する応答と第２値とを受信するように構成された受信手段と、
−  算出のための手段であって、
・データベース内のタグに関連する識別子に第２関数を適用して算出したタグの新識別子と、
・データベース内のタグに関連する識別子に第３関数を適用して算出した第１値と、
・新識別子に第４関数を適用して算出した第３値と
を算出するように構成された算出手段と、
−  データベース内のタグに関連する識別子を検索するための手段であって、タグの送信した応答とデータベース内の識別子に第１関数を適用して得た結果とが一致するか否かの判断を行い、一致した場合に、送信手段に、データベース内のタグに関連する上記識別子に第３関数（Ｈ３）を適用して算出した第１値の送信を行わせるように構成された検索手段と、
−  データベース内のタグに関連する識別子を新識別子で置き換えるように構成された置換手段と、
−  タグから受信した第２値と第３値とを比較し、第２値と第３値とが一致した場合に、上記置換手段を起動するように構成された比較手段と
を具備する。
【００２９】
本発明による読取装置の一態様では、
−  算出手段は、データベース内のタグ識別子に最初に第２関数、次に第１関数を連続的に適用するようにさらに構成され、
−  データベース内のタグに関連する識別子の検索手段は、タグの送信した応答とデータベース内の各タグ識別子に上記第１関数を適用して得たすべての結果とが一致しなかった場合に、算出手段によって最初に第２関数、次に第１関数が連続的に適用されるデータベース内の各識別子のうちから、タグの送信した応答を検索するようにさらに構成され、
−  置換手段は、タグの送信した応答とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果とが一致した場合に、当該識別子に第２関数を適用してデータベース内の識別子を更新するようにさらに構成される。
【００３０】
また、本発明は、
−  本発明による上記無線周波数識別読取装置と、
−  本発明による、少なくとも１つの上記無線周波数識別タグと
からなる無線周波数認証システムに関する。
【００３１】
また、本発明は、無線周波数識別読取装置の記憶部にインストールすることを意図したコンピュータプログラムに関する。上記コンピュータプログラムは、プロセッサによって実行されたとき、本発明による無線周波数識別タグの上記認証方法の各段階を読取装置で実行するための複数の命令からなる。
【００３２】
また、本発明は、本発明による上記コンピュータプログラムを格納したデータ記録媒体に関する。
【００３３】
本発明のその他の詳細及び利点は、限定ではなく例示として与えられた添付の図面を参照し、具体的な実施形態の記載に目を通すことで、より良い理解が得られる。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態による、無線周波数識別読取装置によって無線周波数識別タグを認証するための方法の各ステップを示した図である。
【図２】本発明による、無線周波数識別タグの第１実施形態を例示した図である。
【図３】図２に示した無線周波数識別タグの認証を行うように構成された無線周波数識別読取装置の第１実施形態を例示した図である。
【発明を実施するための形態】
【００３５】
これより、無線周波数識別読取装置による無線周波数識別タグの認証方法の各ステップについて、図１を参照して説明する。
【００３６】
無線周波数識別読取装置３０は、無線周波数識別タグ一式の認証を行うように構成される。上記無線周波数識別タグ一式は、読取装置３０がアクセス可能な複数のタグ識別子からなるデータベース（図示せず）に記録される。一意の識別子ＩＤが与えられた無線周波数識別タグ２０が、読取装置３０がアクセス可能な識別子データベースに記録される。
【００３７】
認証が成功した場合、タグ２０の識別子ＩＤは、当該タグ２０の識別子ＩＤにハッシュ関数を適用することによって得られる新たな識別子を用いて、タグ側とデータベース側との両方で更新される。以降、上記ハッシュ関数をＨ２と表す。そのような更新は、例えば、「ＯＳＫ」プロトコルなど、従来技術による無線周波数識別タグ認証プロトコルによって実行されることに相当する。
【００３８】
初期ステップＥ１０において、読取装置３０は、認証リクエストをメッセージｍ１０として送信する。
【００３９】
認証リクエストｍ１０の受信後、演算及び応答送信のためのステップＥ１１において、タグ２０は、自身の識別子のハッシュＨ１（ＩＤ）を算出して、この識別子ハッシュＨ１（ＩＤ）を含んだ応答ｍ１１を送信する。ハッシュＨ１（ＩＤ）は、既知の第１ハッシュ関数Ｈ１を自身の識別子ＩＤに適用することによって算出される。例えば、タグ２０は、ハッシュ関数として、ＳＨＡ−２５６（ＳＨＡは、「セキュアハッシュアルゴリズム（Secure Hash Algorithm）」を意味する）を使用する。
【００４０】
検索ステップＥ１２において、読取装置３０は、第１ハッシュ関数Ｈ１を用いて、複数のタグ識別子からなるデータベース中の各識別子のハッシュを算出して、受信した応答ｍ１１から得たハッシュと比較する。得られたハッシュが応答ｍ１１でタグから受信したハッシュＨ１（ＩＤ）に一致した場合、これは、読取装置３０がデータベース中にタグ２０の識別子を発見したことを意味する。
【００４１】
ステップＥ１２で実行された検索で正の結果が得られた場合（図１におけるＯＫの分岐）、ステップＥ１３において、読取装置３０は、タグの識別子ＩＤに第３ハッシュ関数Ｈ３を適用することにより第１値Ｈ３（ＩＤ）を算出し、次いで、算出されたこの第１値Ｈ３（ＩＤ）を含んだメッセージｍ１２を送信する。メッセージｍ１２は、読取装置３０が識別子ＩＤを知っているということの根拠となる。これにより、タグ２０は、読取装置３０から受信した認証リクエストの信頼性、すなわち、読取装置３０の正当性をチェックできる。
【００４２】
チェックステップＥ１４において、タグは、自身の識別子ＩＤに第３ハッシュ関数を適用することによりチェック値を算出して、算出したチェック値とメッセージｍ１２で受信した第１値とを比較する。これらが一致した場合、タグ２０は、読取装置３０が自身の識別子ＩＤを知っているという確証を得る。すなわち、正当な読取装置３０とのやりとりであることを確信する。具体的には、タグ２０の識別子を推測的に知り得ない不正な読取装置は、この識別子から算出される値を含むメッセージを送信することができない。
【００４３】
ステップＥ１５において、ステップＥ１４で実行された正のチェック結果（図１におけるＯＫの分岐）に続いて、タグ２０は、自身の識別子の更新を行う。この目的は、タグが、自身の識別子ＩＤに第２ハッシュ関数Ｈ２を適用して、新たな識別子Ｈ２（ＩＤ）を得ることである。好ましくは、第２ハッシュ関数Ｈ２は、第１ハッシュ関数Ｈ１とは異なる関数である。
【００４４】
ステップＥ１６において、タグは、メモリ（図示せず）中の自身の識別子ＩＤを新たな識別子Ｈ２（ＩＤ）に置き換える。
【００４５】
本発明の変形実施形態においては、新たな識別子の算出と、新たな識別子によるタグ２０のメモリ中の識別子ＩＤの置き換えとが、同一のステップで行われる。よって、新たな識別子Ｈ２（ＩＤ）のための一時記憶装置を必要とせず、タグのメモリ容量を削減するという利点を得る。
【００４６】
ステップＥ１７において、タグ２０は、ステップＥ１５で算出された新たな識別子Ｈ２（ＩＤ）に第４ハッシュ関数Ｈ４を適用することにより算出された第２値を含んだメッセージｍ１３を送信する。メッセージｍ１３は、タグ２０が自身の識別子ＩＤの更新を実行したことを読取装置３０に通知するために、タグ２０によって送信される。メッセージｍ１３はタグ２０の識別子ＩＤに基づくものなので、他者は、そのようなメッセージを送信することができない。したがって、メッセージｍ１３を受信する読取装置３０は、このようなメッセージが認証プロセス中のタグを送信元としたものであるという確証を得る。
【００４７】
ステップＥ１８において、読取装置は、自身の識別子ＩＤに第２ハッシュ関数Ｈ２を適用することにより、タグの新たな識別子を算出する。
【００４８】
チェックステップＥ１９において、読取装置は、ステップＥ１８で算出した新たな識別子Ｈ２（ＩＤ）に第４ハッシュ関数を適用することによって、チェック値を算出し、算出したチェック値とメッセージｍ１３で受信した第２値とを比較する。これらが一致した場合、読取装置３０は、タグ２０が自身の識別子ＩＤの更新を実行したということを確信する。
【００４９】
ステップＥ２０において、ステップＥ１９で行われた正のチェック（図１におけるＯＫの分岐）に続いて、読取装置３０は、識別のデータベースにおいて、タグ２０の識別子ＩＤをステップＥ１８で算出した新たな識別子Ｈ２（ＩＤ）に置き換えることによって、タグ２０の識別子を更新する。
【００５０】
本発明の一実施形態（図示せず）では、ステップＥ１２において、タグから受信した応答Ｈ１（ＩＤ）がタグ識別子のデータベース中に見つからなかった場合、読取装置３０は、応答Ｈ１（ＩＤ）と、データベース内の各識別子に最初に第２ハッシュ関数Ｈ２、次に第１ハッシュ関数Ｈ１を連続的に適用することによって算出された第２ハッシュとを比較する。受信した応答が見つかった場合、読取装置は、当該識別子に第２ハッシュ関数を適用することによってデータベース内の識別子ＩＤを更新する。識別子のデータベース内の各識別子のうち、タグ２０の識別子だけが更新されるということに留意されたい。次いで、本方法は、ステップＥ１３に進み、タグ２０の識別子ＩＤが、更新後の識別子Ｈ２（ＩＤ）となる。
【００５１】
本発明のこの実施形態では、受信した応答が読取装置によって見つけ出されなかった場合、認証手続きは停止する。最初に第２ハッシュ関数、次に第１ハッシュ関数と２段階の適用がなされるデータベース内の各識別子を対象とする、応答の新たな検索は提供されない。具体的には、そのような検索は、本発明の方法に対しては、タグと読取装置が繰り返しアクセスするデータベースとを非同期化することが不可能なので意味をなさない。
【００５２】
各種ハッシュの算出に用いられる各ハッシュ関数Ｈ１，Ｈ２，Ｈ３，Ｈ４は、例えば、関数ＳＨＡ−２５６、ＳＨＡ−３８４、ＳＨＡ−５１２である。
【００５３】
本発明の一実施形態では、１つのハッシュ関数（明細書中では、Ｈと表す）だけを使用することができ、例えば、以下を算出する。
−  タグの識別子ＩＤに、連結定数、例えば１、とともにハッシュ関数Ｈを適用してＨ１（ＩＤ）を算出する（Ｈ１（１‖ＩＤ）と表される）。
−  タグの識別子ＩＤに、第２連結定数、例えば２、とともにハッシュ関数Ｈを適用してＨ２（ＩＤ）を算出する（Ｈ２（２‖ＩＤ）と表される）。
−  タグの識別子ＩＤに、第３連結定数、例えば３、とともにハッシュ関数Ｈを適用してＨ３（ＩＤ）を算出する（Ｈ３（３‖ＩＤ）と表される）。
−  タグの識別子ＩＤに、第４連結定数、例えば４、とともにハッシュ関数Ｈを適用してＨ４（ＩＤ）を算出する（Ｈ４（４‖ＩＤ）と表される）。
【００５４】
よって、いくつかのパラメータ、この場合はタグの識別子ＩＤ、に対し、同一のハッシュ関数Ｈから４つの異なるハッシュを得ることができる。この実施形態は、タグの記憶容量が限られる場合に有利である。実際に、この実施形態は、１つのハッシュ関数だけしか必要としない。
【００５５】
また、本発明の変形実施形態（図示せず）では、読取装置３０によってタグ２０へ送信される認証リクエストは、読取装置によって生成される第１乱数値ｒａｎｄｏｍｖａｌｕｅ１が含まれる。応答の算出及び送信ステップＥ１１において、タグは、ハッシュ関数Ｈ１を用いて、タグの識別子ＩＤと、読取装置から受信した第１乱数値ｒａｎｄｏｍｖａｌｕｅ１と、タグによって生成された第２乱数値ｒａｎｄｏｍｖａｌｕｅ２とを連結して得られたデータのハッシュを算出する。上記連結は、Ｈ１（ＩＤ‖ｒａｎｄｏｍｖａｌｕｅ１‖ｒａｎｄｏｍｖａｌｕｅ２）と表される。タグによって送信される応答ｍ１１は、得られたハッシュと、第２乱数値ｒａｎｄｏｍｖａｌｕｅ２とを含む。
【００５６】
読取装置による第１乱数値ｒａｎｄｏｍｖａｌｕｅ１の送信により、タグと読取装置との間に同期のずれが存在したとしても、再試行を回避できる。具体的には、読取装置とタグとの間を行き来するメッセージ、例えば、第三者がタグからの応答ｍ１１を監視又は横取りしよとする場合、識別子がタグによって更新されたことを知るには、まず、タグによって読取装置へ送信されるメッセージｍ１３の横取りを行う。メッセージｍ１３の横取りは、タグと識別子のデータベースとの間の非同期化を引き起こす。これは、タグは自身の識別子を新たな識別子で置き換えるが、読取装置はメッセージｍ１３を受信していないので識別子のデータベース内のタグの識別子ＩＤを新たな識別子で置き換えていないためである。故に、第三者は、読取装置から送信される新たな認証リクエスト続いて、メッセージｍ１３が横取りされた時点以前のやりとりで用いられていた応答ｍ１１を返すこととなる。よって、読取装置は、読取装置からの認証リクエストに対して、以前に送信されたメッセージを用いて応答した者が存在したとしても、正当なタグは認証を終えたと分かる。誤ったタグ、言うなれば、第三者に使用されるタグは、読取装置による正当な認証を受けることとなる。タグは、読取装置からの認証リクエストの後、読取装置によって送信された乱数値ｒａｎｄｏｍｖａｌｕｅ１に基づいたハッシュを含む応答ｍ１１を返すので、そのような乱数値ｒａｎｄｏｍｖａｌｕｅ１がこの種の攻撃を回避する。タグの識別子を知らない第三者は、そのような応答を生成不可能である。
【００５７】
タグによって生成される第２乱数値ｒａｎｄｏｍｖａｌｕｅ２により、いくつかの連続した認証の間の非追跡性が確保される。具体的には、第１の認証の間には、メッセージｍ１２はタグに届かない（メッセージは、読取装置によって送信されない、又は、タグによって受信されない）ということに留意されたい。この場合、タグは、自身の新たな識別子を算出せず、自身の識別子を新たな識別子に置き換えない。よって、読取装置による認証リクエストの送信に続く、読取装置によるタグの新たな認証では、タグは、２つの認証の間にタグの識別子が変更されていなくても、第１認証の間に送信された応答とは異なる応答ｍ１１を返す。具体的には、タグによって生成された乱数値ｒａｎｄｏｍｖａｌｕｅ２が、各認証時で異なるものとなる。故に、同一のタグの２つの認証を互いに結び付けることができないので、連続した認証の間の非追跡特性が完全に確保される。
【００５８】
これより、本発明による無線周波数識別タグを図２を参照して説明する。本発明によるタグ２０は、認証シーケンスの間に、先に記載した本発明による方法の各ステップの通りに、無線周波数識別読取装置と対話を行うように構成される。
【００５９】
本明細書中に記載された一実施形態では、タグ２０は、読取装置による問い合わせの際に、読取装置から自身のエネルギーを受信する受動デバイスである。タグ２０は、一意に定まる識別子ＩＤを有するとともに、通常、以下通り、複数の構成要素を具備する。
−  アンテナを備え、読取装置からの受信と読取装置への送信とを行うように構成された送信及び受信手段を具備する。受信手段は、読取装置から、認証リクエスト及び第１値（Ｈ３（ＩＤ））を受信するように構成される。送信手段は、読取装置へ、応答及び第２値（Ｈ４（Ｈ２（ＩＤ）））を送信するように構成される。
−  非プログラマブル有線ロジックの論理ゲートを形成するように構成された複数のトランジスタからなるシリコンチップ２２０を具備する。有線ロジックは、以下を構成する。
−  少なくとも識別子に第１関数（Ｈ１）を適用するように構成された応答（Ｈ１（ＩＤ））算出手段２３０。
−  識別子に第２ハッシュ関数（Ｈ２）を適用することによって新たな識別子（Ｈ２（ＩＤ））を算出するように構成された新識別子算出手段２４０。
−  新たな識別子（Ｈ２（ＩＤ））に第４ハッシュ関数（Ｈ４）を適用することによって第２値を算出するように構成された第２値算出手段２５０。
−  識別子に第３関数（Ｈ３）を適用することによって第３値を算出するように構成された第３値算出手段２６０。
−  タグ内の識別子を新たな識別子（Ｈ２（ＩＤ））で置き換えるように構成された識別子置換手段２７０。
−  読取装置から受信した第１値（Ｈ３（ＩＤ））と第３値とを比較し、第１値が第３値に一致した場合に、識別子置換手段２７０を起動するように構成された比較手段２８０。
【００６０】
本発明の一実施形態では、読取装置から受信した認証リクエストは、乱数値ｒａｎｄｏｍｖａｌｕｅ１を有し、かつタグの返した応答は、第２乱数値ｒａｎｄｏｍｖａｌｕｅ２を有しており、また、タグは、乱数値を生成するように構成された乱数値生成部（図示せず）を具備する。
【００６１】
本発明の一実施形態では、受信手段２１０は、読取装置から第１乱数値ｒａｎｄｏｍｖａｌｕｅ１を受信するようにさらに構成される。応答算出手段２３０は、乱数値生成部と共に動作し、タグの識別子、第１乱数値ｒａｎｄｏｍｖａｌｕｅ１、乱数値生成部の生成した第２乱数値ｒａｎｄｏｍｖａｌｕｅ２からなるデータに第１ハッシュ関数Ｈ１を適用するようにさらに構成される。例えば、上記データは、これら３つの値を連結したデータである。
【００６２】
これより、本発明による無線周波数識別読取装置を図３を参照して説明する。
【００６３】
無線周波数識別読取装置３０は、タグ（図３には図示されていない）を起動する無線周波数を送信する能動デバイスであり、近接するタグに、タグの必要とするエネルギーを提供する。本発明による読取装置３０は、先に記載した本発明による方法の各段階に従った認証シーケンスの間に、タグとの対話を行うように構成される。
【００６４】
読取装置３０は、以下の複数のモジュールからなる。
−  演算ユニット３１０、又は「ＣＰＵ（中央演算ユニット）」
−  命令コードの実行、変数の格納などに使用される揮発性メモリ３１５又は「ＲＡＭ（ランダムアクセスメモリ）」からなるメモリ一式。
−  無線チャネルを介した送信及び受信を行うように構成されたアンテナ３２５。
−  タグへリクエストを送信するように構成された送信モジュール３３５。送信モジュール３３５は、送信のためにアンテナ３２５を使用し、かつ、アンテナ３２５に接続されている場合には、読取装置３０の送信手段となる。具体的には、送信手段は、認証リクエスト及び第１値Ｈ３（ＩＤ）をタグへ送信するように構成される。
−  送信手段３２５，３３５によって送信されたリクエストに対する応答をタグから受信するように構成された受信モジュール３３０。受信モジュール３３０は、受信のためにアンテナ３２５を使用し、かつ、アンテナ３２５に接続されている場合には、読取装置３０の受信手段となる。具体的には、受信手段は、応答Ｈ１（ＩＤ）及び第２値Ｈ４（Ｈ２（ＩＤ））をタグから受信するように構成される。
−  読取装置外部の識別子データベース（図示せず）にアクセスするためのアクセスモジュール３２０。
−  識別子に第２ハッシュ関数Ｈ２を適用してタグの新たな識別子を算出するように、上記識別子に第３ハッシュ関数Ｈ３を適用して第１値Ｈ３（ＩＤ）を算出するように、かつ新たな識別子Ｈ２（ＩＤ）に第４関数Ｈ４を適用して第３値を算出するように構成された算出モジュール３４０。
−  データベース内の識別子に第１関数を適用することによって、識別子データベース内で、タグから受信した応答Ｈ１（ＩＤ）を検索するように構成された検索モジュール３４５。送信手段３３５，３２５は、検索手段が応答を見つけ出した場合に、当該識別子に第３関数Ｈ３を適用して算出した第３値Ｈ３（ＩＤ）を送信する。
−  タグの識別子を識別子データベースの新たな識別子で置き換えるように構成された識別子置換モジュール３５０。
−  タグから受信した第２値Ｈ４（Ｈ２（ＩＤ））と第３値とを比較するように構成された比較モジュール３５５。上記比較手段は、第２値が第３値に等しかった場合に、識別子置換モジュール３５０を起動する。
【００６５】
各モジュールは、通信バスを介して通信を行う。
【００６６】
各モジュール３２０，３３０，３３５，３４０，３４５，３５０，３５５は、先に記載したＲＦＩＤタグ認証方法の各ステップを実現するように構成される。好ましくは、これらは、タグ認証方法の各ステップを実行するための複数のソフトウェア命令からなるソフトウェアモジュールである。
【００６７】
したがってまた、本発明は、
−  プロセッサによって実行されたとき、先に記載したタグの認証方法を実現する複数の命令からなるコンピュータプログラムと、
−  上記のコンピュータプログラムを格納し、読取装置によって読み取り可能な記憶媒体と
に関する。
【００６８】
ソフトウェアモジュールは、データ記録媒体に格納されるか、又はデータ記録媒体によって送信される。データ記録媒体は、ハードウェア記録媒体、例えば、ＣＤ−ＲＯＭ、磁気ディスク若しくはハードディスク、又は、信号などの伝送媒体、又は、遠隔通信ネットワークであってよい。
【００６９】
タグの返した応答Ｈ１（ＩＤ）とデータベース内の各タグ識別子に上記第１関数を適用して得たすべての結果とが一致しない、本発明の一実施形態では、最初に第２関数、次に第１ハッシュ関数が連続的に適用されるデータベース内の識別子のうちから、送信された応答の検索を実行する。タグの送信した応答Ｈ１（ＩＤ）とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果Ｈ１（Ｈ２（ＩＤ））とが一致した場合、データベースにおいて、タグの識別子ＩＤが、当該識別子に第２関数Ｈ２を適用することによって更新され、次いで、タグ２０の識別子ＩＤが、識別子Ｈ２（ＩＤ）に更新される。この一実施形態では、
−  算出手段３４０は、データベース内のタグ識別子に最初に第２関数Ｈ２、次に第１関数Ｈ１を連続的に適用するようにさらに構成され、
−  データベース内のタグに関連する識別子の検索手段３４５は、タグの送信した応答Ｈ１（ＩＤ）とデータベース内の各タグ識別子に上記第１関数を適用して得たすべての結果とが一致しなかった場合に、演算手段３４０によって、最初に第２関数Ｈ２、次に第１関数Ｈ１が連続的に適用されるデータベース内の各識別子のうちから、タグの送信した応答をさらに検索するように構成され、
−  置換手段３５０は、タグの送信した応答Ｈ１（ＩＤ）とデータベース内のタグ識別子に最初に第２関数、次に第１関数を適用して得た結果Ｈ１（Ｈ２（ＩＤ））とが一致した場合に、当該識別子に第２ハッシュ関数Ｈ２を適用して、データベース内の識別子ＩＤを更新するようにさらに構成される。
【００７０】
読取装置の送信した認証リクエストが乱数値ｒａｎｄｏｍｖａｌｕｅ１を含み、かつタグの受信した応答が第２乱数値ｒａｎｄｏｍｖａｌｕｅ２を含むような、本発明の別の一実施形態では、読取装置は、
−  乱数値を生成するように構成された乱数値生成部（図示せず）
をさらに具備する。
【００７１】
本発明のこの実施形態では、
−  送信手段３２５，３３５は、乱数値生成部と共に動作し、認証リクエストにおいて、タグへ第１乱数値ｒａｎｄｏｍｖａｌｕｅ１を送信するように構成され、
−  受信手段３２５，３３０は、タグから第２乱数値ｒａｎｄｏｍｖａｌｕｅ２をさらに受信するように構成され、
−  演算手段３４０は、データベース内の識別子、第１乱数値ｒａｎｄｏｍｖａｌｕｅ１、タグから受信した第２乱数値ｒａｎｄｏｍｖａｌｕｅ２からなるデータに第１ハッシュ関数Ｈ１を適用するようにさらに構成される。例えば、上記データは、これら３つの値を連結したデータである。
【００７２】
詳細には記載しないが、本発明の一実施形態では、タグ２０は、能動デバイスとなる。よって、そのようなタグ２０は、信号の送信を可能とするバッテリを備える。故に、タグと読取装置とは、タグが読取装置からエネルギーを受信する受動デバイスである場合に比べて、より長い距離でのやりとりが可能となる。
【００７３】
詳細には記載しないが、本発明の別の実施形態では、タグ２０は、チップカード状の構造を有し、暗号化マイクロプロセッサ、データメモリ、及びプログラムメモリからなる。
【符号の説明】
【００７４】
２０  無線周波数識別タグ（ＲＦＩＤタグ）
２１０  アンテナ
２２０  シリコンチップ
２３０  応答算出手段
２４０  識別子算出手段
２５０  第２値算出手段
２６０  第３値算出手段
２７０  識別子置換手段
２８０  比較手段
３０  無線周波数識別読取装置（ＲＦＩＤリーダ）
３１０  演算ユニット（ＣＰＵ）
３１５  揮発性メモリ（ＲＡＭ）
３２０  データベースアクセスモジュール
３２５  アンテナ
３３０  受信モジュール
３３５  送信モジュール
３４０  算出モジュール
３４５  検索モジュール
３５０  識別子置換モジュール
３５５  比較モジュール
【図１】
2011520373.tif 000003
【図２】
2011520373.tif 000004
【図３】
2011520373.tif 000005
【国際調査報告】
2011520373.tif 000006
2011520373.tif 000007
2011520373.tif 000008
2011520373.tif 000009
2011520373.tif 000010
2011520373.tif 000011