(57)【要約】【課題】電子タグに複雑な論理回路を実装することなく、安価で安全性の高いシステムを提供する。【解決手段】電子タグ２０と、リーダ・ライタ装置１０と、を有するシステムにおいて、リーダ・ライタ装置１０に、電子鍵を記憶させておく。電子タグ２０に、電子タグ固有のキーワードと、電子鍵および固有のキーワードを所定の不可逆関数で演算して求めたパスワードとを記憶させておく。そして、リーダ・ライタ装置１０は、電子タグ２０からキーワードを読み出し、読み出したキーワードと自身が記憶している電子鍵とを用いてパスワードを生成し、電子タグ２０に、コマンドおよび生成したパスワードを送信する。電子タグは、リーダ・ライタ装置１０が送信したパスワードおよびコマンドを受信し、自身が記憶しているパスワードと受信したパスワードとを比較して、両者が同じ場合に受信したコマンドに対応する処理を行う。【選択図】図１
2007293443.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶するメモリを備えた電子タグと、前記電子タグに各種コマンドを送信し、前記メモリへのデータの読み書き処理および電子タグを無効化する処理を行うリーダ・ライタ装置と、を有する電子タグシステムであって、
前記リーダ・ライタ装置は、
電子鍵を記憶しているデータ保持部と、
前記電子鍵と、前記電子タグの固有のキーワードとを所定の不可逆関数で演算してパスワードを生成するパスワード生成部と、
前記リーダ・ライタ装置全体の動作を制御すると共に、前記電子タグに各種コマンドを送信する制御部と、を備え、
前記電子タグの前記メモリには、予め、前記電子タグ固有のキーワードと、前記電子鍵および該固有のキーワードを前記所定の不可逆関数で演算して求めたパスワードとが記憶されていて、
前記リーダ・ライタ装置の制御部は、前記電子タグに各種のコマンドを送信する際、
前記電子タグのメモリに記憶されている前記電子タグ固有のキーワードを読み出し、
前記パスワード生成部に、前記読み出したキーワードと前記データ保持部に記憶している電子鍵とを用いてパスワードを生成させ、
前記コマンドとともに前記生成したパスワードを前記電子タグに送信し、
前記電子タグは、
前記リーダ・ライタ装置が送信した前記パスワードおよび前記コマンドを受信し、前記メモリに記憶しているパスワードと前記受信したパスワードとを比較して、両者が同じ場合に前記受け付けたコマンドに対応する処理を行うこと
を特徴とする電子タグシステム。
【請求項２】
請求項１に記載の電子タグシステムであって、
前記リーダ・ライタ装置のデータ保持部には、前記電子鍵が複数記憶されているとともに、該電子鍵毎に対応付けられた鍵識別情報が記憶されていて、
前記電子タグのメモリには、前記電子タグ固有のキーワード、および前記パスワードに加え、さらに、前記パスワードを求める際に利用した前記電子鍵に対応付けられている前記鍵識別情報が記憶されていて、
前記リーダ・ライタ装置の制御部は、
前記電子タグ固有のキーワードを読み出す際、さらに前記電子タグのメモリから前記鍵識別情報を読み出し、前記データ保持部に記憶している複数の電子鍵の中から、前記読み出した鍵識別情報に対応付けられている電子鍵を特定し、
前記パスワード生成部にパスワードを生成させる際、前記読み出したキーワードと前記特定した電子鍵とを用いてパスワードを生成させること
を特徴とする電子タグシステム。
【請求項３】
請求項２に記載の電子タグシステムであって、
前記電子タグのメモリには、さらに、前記鍵識別情報に対応付けられた電子鍵が記憶されていて、
前記電子タグは、乱数を発生する乱数発生部を備え、
前記リーダ・ライタ装置の制御部は、
前記パスワード生成部に、前記読み出したキーワードと前記記憶している電子鍵とを用いてパスワード（第１パスワード）を生成させると、さらに、前記電子タグに乱数の送信を要求して該電子タグの乱数発生部に乱数を発生させ、前記電子タグから該発生させた乱数を取得し、
前記取得した乱数と、前記特定した電子鍵と、前記生成した第１パスワードとを用いて第２パスワードを生成し、
前記コマンドを送信する際、前記第１パスワードに代えて、前記第２パスワードを該コマンドとともに送信し、
前記電子タグは、
前記リーダ・ライタ装置が送信した前記コマンドおよび第２パスワードを受信すると、前記パスワード演算部が発生させた乱数と、前記メモリに記憶している前記電子鍵と、前記メモリに記憶しているパスワード（第１パスワード）とを用いて第２パスワードを生成し、
前記生成した第２パスワードと前記受信した第２パスワードとを比較し、両者が同じ場合に前記受け付けたコマンドに対応する処理を行うこと
を特徴とする電子タグシステム。
【請求項４】
請求項２に記載の電子タグシステムであって、
前記電子タグのメモリには、さらに、前記鍵バージョンに対応する電子鍵が記憶されていて、
前記リーダ・ライタ装置は、乱数を発生する乱数発生部を有し、
前記リーダ・ライタ装置の制御部は、
前記パスワード生成部に、前記読み出したキーワードと前記記憶している電子鍵とを用いてパスワード（第１パスワード）を生成させると、さらに、前記乱数発生部に乱数の発生を指示し、該乱数発生部が発生した乱数を前記電子タグに送信し、
前記電子タグは、
前記リーダ・ライタ装置からの乱数を受信すると、前記受信した乱数と、前記メモリに記憶している電子鍵と、前記メモリに記憶しているパスワード（第１パスワード）とを用いて第２パスワードを生成し、該生成した第２パスワードを前記リーダ・ライタ装置に送信し、
前記リーダ・ライタ装置は、
前記電子タグからの第２パスワードを受信すると、前記乱数発生部が発生させた乱数と、前記特定した電子鍵と、前記生成した第１パスワードとを用いて第２パスワードを生成し、該生成した第２パスワードと前記受信した第２パスワードとを比較して、両者が同じ場合に前記電子タグを正当なものと判別し、
前記正当なものと判別した場合に、電子タグに前記コマンドを送信すること
を特徴とする電子タグシステム。
【請求項５】
請求項１〜４のいずれか一項に記載の電子タグシステムであって、
前記電子タグのメモリに書き込まれる前記電子タグ固有のキーワードは、一度書き込んだら二度と書き換えできないものとし、
前記電子タグのメモリには、さらに、前記キーワードと前記電子鍵で暗号化した情報が記憶されていること
を特徴とする電子タグシステム。
【請求項６】
データを記憶するメモリを備えた電子タグと、前記電子タグに各種コマンドを送信し、前記メモリへのデータの読み書き処理および電子タグを無効化する処理を行うリーダ・ライタ装置と、を有する電子タグシステムが行うデータ処理方法であって、
前記リーダ・ライタ装置は、電子鍵を記憶しているデータ保持部を備え、
前記電子タグの前記メモリには、予め、前記電子タグ固有のキーワードと、前記電子鍵および該固有のキーワードを所定の不可逆関数で演算して求めたパスワードとが記憶されていて、
前記リーダ・ライタ装置は、
前記電子タグのメモリに書き込まれている前記電子タグ固有のキーワードを読み出すステップと、
前記読み出したキーワードと、前記記憶している前記電子鍵とを前記所定の不可逆関数で演算して求めたパスワードを生成するステップと、
前記コマンドとともに前記生成したパスワードを前記電子タグに送信するステップとを実行し、
前記電子タグは、
前記リーダ・ライタ装置が送信した前記パスワードおよび前記コマンドを受信するステップと、
前記メモリに記憶しているパスワードと前記受信したパスワードとを比較し、両者が同じ場合に前記受信したコマンドに対応する処理を行うステップと、を実行すること
を特徴とするデータ処理方法。
【請求項７】
データを記憶するメモリを備えた電子タグと、前記電子タグに各種コマンドを送信し、前記メモリへのデータの読み書き処理および電子タグを無効化する処理を行うリーダ・ライタ装置と、を有する電子タグシステムが行うデータ処理方法であって、
前記リーダ・ライタ装置は、複数の電子鍵と、該電子鍵毎に対応付けられた鍵識別情報が記憶されているデータ保持部を備え、
前記電子タグの前記メモリには、予め、前記電子タグ固有のキーワードと、前記電子鍵および該固有のキーワードを所定の不可逆関数で演算して求めたパスワードと、前記パスワードを求める際に利用した前記電子鍵に対応付けられた前記鍵識別情報とが記憶されていて、
前記リーダ・ライタ装置は、
前記電子タグのメモリに記憶されている前記電子タグ固有のキーワードおよび前記鍵識別情報を読み出すステップと、
前記データ保持部に記憶している複数の電子鍵の中から、前記読み出した鍵識別情報に対応付けられている電子鍵を特定するステップと、
前記読み出したキーワードと、前記特定した前記電子鍵とを前記所定の不可逆関数で演算して求めたパスワードを生成するステップと、
前記コマンドとともに前記生成したパスワードを前記電子タグに送信するステップとを実行し、
前記電子タグは、
前記リーダ・ライタ装置が送信した前記パスワードおよび前記コマンドを受信するステップと、
前記メモリに記憶しているパスワードと前記受信したパスワードとを比較し、両者が同じ場合に前記受信したコマンドに対応する処理を行うステップと、を実行すること
を特徴とするデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子タグと、その電子タグにデータを読み書き等する情報処理装置と有するシステムの技術に関し、特に、電子タグに格納するデータの安全性を確保する技術に関する。
【背景技術】
【０００２】
近年、商品情報等を格納したメモリを備えた電子タグを商品に貼り付け、リーダ・ライタ装置で電子タグから情報を読み出し、商品管理や商品の所在確認を行う電子タグシステムの導入が進んでいる。例えば、流通業界では、食料品の生産者情報や栽培方法を示した情報を格納した電子タグを食料品に貼り付け、リーダ・ライタ装置で電子タグに格納された情報を読み出して表示する電子タグシステムが導入されている。また、出版界では、不正行為の抑制、物流の効率化、在庫管理等を目的として、電子タグシステムの利用が検討されている。
【０００３】
ところで、電子タグシステムでは、利用者のプライバシー保護の問題が生じることが懸念されている。例えば、商品が消費者の手に渡った後も電子タグが商品と一体に存在する場合、リーダ・ライタ装置を使えば、遠隔から電子タグのメモリにアクセスし、メモリ内の情報を容易に読み取ることが可能である。その結果、商品を所持する消費者に気付かれないうちに、その消費者の所持品を知ることも可能であり、消費者のプライバシーが侵害される可能性が高くなる。
【０００４】
また、電子タグシステムでは、電子タグを不正に複製したり改ざんしたりする問題が生じることが懸念されている。例えば、高価な商品に取り付けて高価であることを説明する電子タグを、複製して安価な商品に取り付けて販売されたり、安価な商品用の電子タグのデータを高価な商品用のデータに改ざんして販売されたりする可能性が高くなる。
【０００５】
上述の問題に対し、特許文献１では、認証請求者（例えばリーダ・ライタ装置）を認証するために、暗号化・復号化などの処理部を認証側（例えば電子タグ）に搭載し、認証請求者を確認した後、認証側がある処理（例えばメモリ内の情報送信）を行うようにして、認証側処理の安全性向上を実現している。
【０００６】
また、特許文献２では、暗号化処理を電子タグの外で行い、暗号化した情報を電子タグのメモリに書き込むことで、メモリ内の情報の安全性向上を実現している。
【０００７】
【特許文献１】特許第３０２７７９１号公報
【特許文献２】特開２００４−３１８４７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記特許文献１は、以下の問題を有している。具体的には、特許文献１の技術を実施するには、電子タグに暗号化・復号化などの処理部の搭載が必要となり、電子タグの単価は高くなる。そのため個々の商品にこの電子タグを貼付することはコストの面から現実的ではない。
【０００９】
一方、特許文献２は、電子タグの低コスト化を実現することができるが、電子タグ毎に、その電子タグの所有者の情報に関連付けたＩＤを発行して管理する必要があるため運用上の使い勝手が悪い。具体的には、特許文献２は、電子タグの所有者の情報に関連付けたＩＤを元にして暗号化したデータを電子タグに格納し、その所有者のＩＤを入力しなければ暗号化したデータを復号化できない仕組である。そのため、電子タグにデータを書き込む前に所有者を特定しておくことが必要となり面倒である。さらに、特許文献２では、電子タグから情報を読み出す際、ＩＤを入力しなければならず操作が煩雑である。
【００１０】
本発明は、上記事情に鑑みてなされたものであり、本発明の目的は、電子タグに複雑な論理回路を実装することなく、安価で安全性の高い電子タグシステムを提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明の一態様は、データを記憶するメモリを備えた電子タグと、前記電子タグに各種コマンドを送信し、前記メモリへのデータの読み書き処理および電子タグを無効化する処理を行うリーダ・ライタ装置と、を有する電子タグシステムに適用される。
【００１２】
そして、前記リーダ・ライタ装置は、電子鍵を記憶しているデータ保持部と、前記電子鍵と、前記電子タグの固有のキーワードとを所定の不可逆関数で演算してパスワードを生成するパスワード生成部と、前記リーダ・ライタ装置全体の動作を制御すると共に、前記電子タグに各種コマンドを送信する制御部と、を備え、前記電子タグの前記メモリには、予め、前記電子タグ固有のキーワードと、前記電子鍵および該固有のキーワードを前記所定の不可逆関数で演算して求めたパスワードとが記憶されていて、前記リーダ・ライタ装置の制御部は、前記電子タグに各種のコマンドを送信する際、前記電子タグのメモリに記憶されている前記電子タグ固有のキーワードを読み出し、前記パスワード生成部に、前記読み出したキーワードと前記データ保持部に記憶している電子鍵とを用いてパスワードを生成させ、前記コマンドとともに前記生成したパスワードを前記電子タグに送信し、前記電子タグは、前記リーダ・ライタ装置が送信した前記パスワードおよび前記コマンドを受信し、前記メモリに記憶しているパスワードと前記受信したパスワードとを比較して、両者が同じ場合に前記受け付けたコマンドに対応する処理を行う。
【発明の効果】
【００１３】
このように本発明では、電子タグに、予め、リーダ・ライタ装置を認証するためのパスワードと、そのパスワードを生成するために必要なキーワードを書き込んでおく。リーダ・ライタ装置は、電子タグにアクセスする場合、先ず、電子タグからキーワードを読み出し、そのキーワードを用いてパスワードを生成する。つぎに、リーダ・ライタ装置は、コマンドとともに上記の生成したパスワードを電子タグに送信する。そして、電子タグは、送信されたパスワードと記憶しているパスワードが同じ場合にだけ、リーダ・ライタ装置を認証し、認証されたリーダ・ライタ装置からのコマンドだけ実行する。
【００１４】
このように構成することで、本発明では、電子タグ側に、暗号化や復号化などの処理を行う処理部を搭載することなく、電子タグに対する不正なアクセスを防止することができる。すなわち、本発明によれば、安全性の高い電子タグシステムを低コストで実現することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施形態について図面を用いて説明する。
《第１実施形態》
先ず、本発明の第１実施形態について説明する。第１実施形態は、電子タグ２０に認証処理の機能を設ける構成を採用したものである。このようにするのは、電子タグ２０が、認証できたリーダ・ライタ装置１０からの要求だけを受け付けるようにすることで、電子タグ２０への不正アクセスを防ぐためである。
【００１６】
図１は、本発明の第１実施形態の電子タグシステムの機能ブロック図である。
【００１７】
図示するように、電子タグシステムは、データを格納して無線で通信する電子タグ２０と、無線で電子タグ２０と通信して電子タグ２０を操作するリーダ・ライタ装置１０とを有する。電子タグ２０には、例えば、ＲＦ−ＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ−Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）タグを用いることができる。また、リーダ・ライタ装置１０は、ＲＦ−ＩＤタグ等の電子タグに対してデータの読出し処理および書込み処理等を行う専用の装置であってもいいし、パーソナルコンピュータや携帯電話やキオスク端末機器や自動販売機などと共に形成されていても良い。
【００１８】
そして、電子タグ２０は、書籍や衣服や電化製品というような商品などに直接貼付するか、或いは、商品を梱包する包みや箱などに貼付される。また、電子タグ２０は、個人が携帯するカードなどに貼付しても良い。なお、電子タグ２０及びリーダ・ライタ装置１０は、どちらか一方または両方とも複数存在しても良い。
【００１９】
具体的には、リーダ・ライタ装置１０は、制御部１０００、鍵管理部１１００、パスワード生成部１２００、送受信部１４００、および各種データを記憶するデータ保持部１５００を有する。
【００２０】
データ保持部１５００には、共通鍵を識別する鍵バージョンに対応付けて、その鍵バージョンにより特定される共通鍵１３２が記憶されている。なお、本実施形態では、データ保持部１５００には、複数の共通鍵が記憶されているものとする。
【００２１】
制御部１０００は、リーダ・ライタ装置１０の全体の動作を制御する。また、制御部１０００は、送受信部１４００を介して、電子タグ２０にデータを書き込む処理、電子タグ２０からデータを読み出す処理、および電子タグ２０を無効化する処理を行う。具体的には、制御部１０００は、電子タグ２０にデータを書き込むためのコマンド（書き込みコマンド）を生成し、その書き込みコマンドを送受信部１４００経由で電子タグ２０に送信する。また、制御部１０００は、電子タグ２０からデータを読み出すためのコマンド（読み出しコマンド）を生成し、その生成した読み出しコマンドを送受信部１４００経由で電子タグ２０に送信する。また、制御部１０００は、電子タグ２０を無効化させるコマンド（無効化コマンド）を生成して、その生成した無効化コマンドを送受信部１４００経由で電子タグ２０に送信する。
【００２２】
また、制御部１０００は、図示しない入力装置（キーボード、操作パネル等）を介して、利用者からの各種要求やデータの入力を受け付ける。
【００２３】
鍵管理部１１００は、後述するパスワード生成処理に用いる共通鍵を管理する。具体的には、鍵管理部１１００は、データ保持部１５００が記憶している複数の鍵バージョン１３１と共通鍵１３２とを対に管理する。鍵管理部１１００は、データ保持部１５００にアクセスし、鍵バージョン１３１から、その鍵バージョン１３１に対応する共通鍵１３２を検索する。
【００２４】
なお、鍵管理部１１００は、リーダ・ライタ装置１０と物理的に離れた場所に設置され、図示しない通信装置を介して（通信装置に接続された専用線やインターネット等を介して）、他のリーダ・ライタ装置１０に鍵バージョン１３１や共通鍵１３２を送信するようにしてもよい。すなわち、鍵管理部１１００に、データ保持部１５００が記憶している鍵バージョン１３１および共通鍵１３２を他のリーダ・ライタ装置１０に送信する機能を設けるようにしてもよい。
【００２５】
パスワード生成部１２００は、電子タグ２０がリーダ・ライタ装置１０を認証する際に用いるためのパスワードを生成する。具体的には、パスワード生成部１２００は、データ保持部１５００が記憶している共通鍵１３２と、電子タグ固有のキーワードとを不可逆関数Ｈで演算しパスワードを生成する。なお、不可逆関数Ｈについて特に限定しないが、例えば、ハッシュ関数を用いるようにしてもよい。
【００２６】
送受信部１４００は、電子タグ２０との間で行われるデータの送受信を制御する。例えば、送受信部１４００は、制御部１０００からの要求に応じて電子タグ２０にアクセスし、電子タグ２０が送信した電子タグ情報（電子タグ情報については後述する）を受信する。
【００２７】
次に、電子タグ２０の機能構成について説明する。電子タグ２０は、制御部２０００、認証部２３００、送受信部２４００、および各種の情報を記憶するデータ保持部２５００を有する。なお、データ保持部２５００は、鍵バージョン２３１、電子タグ２０固有のキーワード２３３、および電子タグ２０固有のパスワード２３４を記憶する。また、データ保持部２５００は、リーダ・ライタ装置１０から書き込まれる電子タグ情報を記憶する。電子タグ情報とは、電子タグ２０を貼付ける対象の製品等の情報（製品名、品番、価格、製造年月日等、生産者情報等）である。
【００２８】
制御部２０００は、電子タグ２０全体の動作を制御する。例えば、制御部２０００は、リーダ・ライタ装置１０からのデータ書き込みコマンドを送受信部２４００経由で受け付け、そのデータ書き込みコマンドにしたがいデータをデータ保持部２５００に記憶させる。また、制御部２０００は、リーダ・ライタ装置１０からのデータ読み出しコマンドを送受信部２４００経由で受け付け、そのデータ読み出しコマンドにしたがい、データ保持部２５００が記憶しているデータを送受信部２４００経由でリーダ・ライタ装置１０に送信する。
【００２９】
認証部２３００は、リーダ・ライタ装置１０が送信したパスワードと、データ保持部２５００に記憶されているパスワード２３４とを照合することにより、リーダ・ライタ装置１０を認証する。制御部２０００は、認証できたリーダ・ライタ装置１０からの要求だけを受け付ける。
【００３０】
送受信部２４００は、リーダ・ライタ装置１０との間で行われるデータの送受信を制御する。
【００３１】
続いて、本実施形態のハードウェア構成について、図２を用いて説明する。
【００３２】
図２は、本発明の第１実施形態の電子タグシステムのハードウェア構成図である。
【００３３】
リーダ・ライタ装置１０は、電子タグ２０と電磁誘導方式や電波方式や光通信方式などで信号を送受信する送受信装置１００と、データを処理するＣＰＵなどの中央処理装置１１０と、データを一時的に記憶するＲＡＭなどの主記憶装置１２０と、データを格納する耐タンパ性の高いＲＯＭなどの補助記憶装置１３０と、を有する。なお、送受信装置１００、中央処理装置１１０、主記憶装置１２０、および補助記憶装置１３０は、バスなどによって接続されている。
【００３４】
そして、補助記憶装置１３０には、電子タグ２０から受信したキーワード２３３を用いてパスワードを生成するために必要な鍵バージョン１３１および共通鍵１３２と、上述の制御部１０００、鍵管理部１１００、およびパスワード生成部１２００の機能を実現するためのプログラムとが格納されている。
【００３５】
そして、制御部１０００、鍵管理部１１００、およびパスワード生成部１２００の機能は、中央処理装置１１０が補助記憶装置１３０に格納されている上記のプログラムを主記憶装置１２０にロードして実行することにより実現される。また、送受信部１４００の機能は、送受信装置１００により実現される。データ保持部１５００の機能は、補助記憶装置１３０により実現される。
【００３６】
電子タグ２０は、リーダ・ライタ装置１０と、電磁誘導方式や電波方式や光通信方式などで信号を送受信する送受信装置２００と、電子タグ２０全体の動作を制御する制御回路２１０と、電子タグ２０の電源がオフのときもデータを保持するＥＥＰＲＯＭなどの補助記憶装置２３０とを有する。なお、送受信装置２００、制御回路２１０、および補助記憶装置２３０は、バスなどによって接続されている。
【００３７】
また、補助記憶装置２３０には、電子タグ２０を貼付した商品などを説明する電子タグ情報と、鍵バージョン２３１と、唯一のキーワード２３３と、パスワード２３４とが記憶されている。電子タグ情報とは、電子タグ２０を貼付ける対象の製品等の情報（製品名、品番、価格、製造年月日等、生産者情報等）をいう。
【００３８】
そして、上述した制御部２０００、および認証部２３００の機能は、制御回路２１０に実装されている。本実施形態の制御回路２０００は、電子タグ２０全体の動作を制御するとともに、制御部２０００および認証部２４００の機能を専用に行うように設計された回路である。なお、制御回路２１０に実装されている機能は、電子タグ２０の電源がオンのときに実行される。また、送受信部２４００の機能は、送受信装置２００により実現される。データ保持部２５００の機能は、補助記憶装置２３０により実現される。
【００３９】
次に、本発明の第１実施形態のリーダ・ライタ装置１０と電子タグ２０との間で行われるデータの送受信処理を説明する。
【００４０】
最初に、準備段階として、リーダ・ライタ装置１０が鍵バージョンＶａ、キーワードＫＷｉおよびパスワードＰＷｉを電子タグ２０に書き込む処理（以下、「初期化処理」という）について、図３を用いて説明する。
【００４１】
図３は、本発明の第１実施形態のリーダ・ライタ装置が行う電子タグ２０の初期化処理のフローを説明するための図である。なお、リーダ・ライタ装置１０のデータ保持部１５００には複数の共通鍵と、それぞれと対になる鍵バージョンが記憶されているものとする。
【００４２】
先ず、リーダ・ライタ装置１０は、データ保持部１５００から一つの共通鍵Ｋａとそれと対になる鍵バージョンＶａを選択する（Ｓ１００１）。具体的には、リーダ・ライタ装置１０の制御部１０００が鍵管理部１１００を介してデータ保持部１５００から一対の共通鍵Ｋａと鍵バージョンＶａを取得する。すなわち、本ステップでは、制御部１０００が鍵管理部１１００に、一対の共通鍵Ｋａと鍵バージョンＶａを要求する。鍵管理部１１００は、制御部１０００からの要求に応じて、データ保持部１５００に記憶されている、複数の「共通鍵Ｋａおよび鍵バージョンＶａの組み合わせ」の中から、一対の「共通鍵Ｋａおよび鍵バージョンＶａ」を選択する。そして、鍵管理部１１００は、選択した一対の「共通鍵Ｋａおよび鍵バージョンＶａ」を制御部１０００に出力する。
【００４３】
なお、鍵管理部１１００が複数の「共通鍵Ｋａおよび鍵バージョンＶａの組み合わせ」の中から一対の「共通鍵Ｋａおよび鍵バージョンＶａ」を選択する方法は、特に限定しない。鍵管理部１１００は、ランダムに「一対の共通鍵Ｋａおよび鍵バージョンＶａ」を選択するようにしてもよいし、所定の順序（例えば鍵バージョンの昇順）で一対の「共通鍵Ｋａおよび鍵バージョンＶａ」を選択するようにしてもよい。
【００４４】
次に、リーダ・ライタ装置１０は、電子タグ２０がリーダ・ライタ装置１０を認証するための利用するパスワードＰＷｉを生成する（Ｓ１００２）。
【００４５】
具体的には、リーダ・ライタ装置１０の制御部１０００が電子タグ２０の固有のキーワードＫＷｉの入力を受け付ける。パスワード生成部１２００は、制御部１０００が受け付けたキーワードＫＷｉと、Ｓ１００１で取得した共通鍵Ｋａとを不可逆関数Ｈで演算する。この演算した結果をパスワードＰＷｉとする。
【００４６】
なお、リーダ・ライタ装置１０がキーワードＫＷｉの入力を受け付ける方法について特に限定しない。例えば、利用者がキーワードＫＷｉを、入力装置（図示せず）を介して、リーダ・ライタ装置１０に入力するようにしてもよい。
【００４７】
次に、リーダ・ライタ装置１０は、上記のキーワードＫＷｉと、Ｓ１００１で取得した鍵バージョンＶａ、およびＳ１００２で求めたパスワードＰＷｉを電子タグ２０に送信して書き込む（Ｓ１００３）。具体的には、制御部１０００が、送受信制御部１４００を介して、鍵管理部１１００から取得した鍵バージョンＶａと、パスワード生成部１２００で演算したパスワードＰＷｉと、キーワードＫＷｉとを電子タグ２０に書き込む。
【００４８】
続いて、第１実施形態の電子タグ２０がリーダ・ライタ装置１０を認証する処理について、図４を用いて説明する。なお、図示するフローは、図３の初期化処理が行われた電子タグ２０と、リーダ・ライタ装置１０との間で行われる処理である。
【００４９】
図４は、第１実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。なお、以下の処理は、図３で示した初期化処理において、電子タグ２０に鍵バージョンＶａ、パスワードＰＷｉおよびキーワードＫＷｉを書き込んだリーダ・ライタ装置１０と異なるリーダ・ライタ装置１０により行われるものとする。
【００５０】
また、本フローを行うリーダ・ライタ装置１０は、図３のＳ１００２で利用した共通鍵Ｋａと同じ共通鍵Ｋａを保持している。具体的には、リーダ・ライタ装置１０のデータ保持部１５００には、Ｓ１００２で利用した共通鍵Ｋａを含む複数の共通鍵と、それらと対になる鍵バージョンＶａが記憶されている。なお、これらの共通鍵Ｋａは、限られたリーダ・ライタ装置１０に耐タンパ性技術を用いて格納することが望ましい。或いは、これらの共通鍵Ｋａは、リーダ・ライタ装置１０と物理的に離れたところで管理されており、限られたリーダ・ライタ装置１０に安全性の高いネットワークを介して取得されることが望ましい。
【００５１】
先ず、リーダ・ライタ装置１０は、電子タグ２０に対して鍵バージョンＶａとキーワードＫＷｉを要求する信号（説明の便宜上「送信リクエスト信号」という）を送信する（Ｓ２００１）。具体的には、制御部１０００が、送受信部１４００を経由して電子タグ２０に対して「送信リクエスト信号」を送信する。その後、リーダ・ライタ装置１０は。電子タグ２０からの信号を受信するまで待機する。
【００５２】
一方、電子タグ２０は、リーダ・ライタ装置１０からの「送信リクエスト信号」を受信すると、データ保持部２５００に記憶している「キーワードＫＷｉ」および「鍵バージョンＶａ」をリーダ・ライタ装置１０に返信する（Ｓ２１００）。具体的には、電子タグ２０の制御部２０００が、送受信部２４００を介して、「送信リクエスト信号」を受信する。制御部２０００は、データ保持部２５００にアクセスして、記憶している「キーワードＫＷｉ」および「鍵バージョンＶａ」を読み出す。そして、制御部２０００は、送受信部２４００を介して、読み出した「キーワードＫＷｉ」および「鍵バージョンＶａ」をリーダ・ライタ装置１０に送信する。その後、リーダ・ライタ装置１０側の処理に移行する。
【００５３】
つぎに、リーダ・ライタ１０側の処理を説明する。リーダ・ライタ装置１０は、電子タグ２０からの「鍵バージョンＶａ」および「キーワードＫＷｉ」を受信すると（Ｓ２００２）、その鍵バージョンＶａを鍵管理部１１００に出力してＳ２００３の処理に移行する。
【００５４】
Ｓ２００３では、共通鍵Ｋａを特定する処理が行われる。具体的には、鍵管理部１１００は、データ保持部１５００にアクセスして、Ｓ２００２で受信した鍵バージョンＶａから、データ保持部１５００に記憶されている共通鍵Ｋａを検索し、後述する演算に使用する共通鍵Ｋａを特定する。すなわち、鍵管理部１１００は、データ保持部１５００にアクセスし、記憶されている複数の共通鍵Ｋａの中から、Ｓ２００２で受信した鍵バージョンＶａに対応付けられている共通鍵Ｋａを特定する。
【００５５】
Ｓ２００４では、パスワードを生成する処理が行われる。具体的には、制御部１０００が、パスワード生成部１２００にパスワードＰＷｉの生成を指示する。パスワード生成部１２００は、Ｓ２００２で受信したキーワードＫＷｉと、Ｓ２００３で特定した共通鍵Ｋａとを不可逆関数Ｈで演算する。演算した結果をパスワードＰＷｉとする。なお、ここで利用する不可逆関数Ｈは、図３のＳ１００２で用いたものと同様のものとする。
【００５６】
次に、リーダ・ライタ装置１０は、電子タグ２０に、Ｓ２００４で算出した「パスワードＰＷｉ」及び「コマンド」を送信する（Ｓ２００５）。この場合、リーダ・ライタ装置１０と電子タグ２０とを近づけ他とは隔離し、通信データが漏洩、盗聴されないように注意するとよい。なお、「コマンド」とは、電子タグ情報の読み書きや電子タグ２０を無効化するコマンドのことをいう。リーダ・ライタ装置１０が「パスワードＰＷｉ」および「コマンド」を電子タグ２０に送信すると、その後、電子タグ２０側の処理に移行する。
【００５７】
続いて、電子タグ２０側の処理を説明する。電子タグ２０は、リーダ・ライタ装置１０が送信した「パスワードＰＷｉ」および「コマンド」を受信する（Ｓ２１０１）。具体的には、電子タグ２０の制御部２０００は、送受信部２４００を介して、リーダ・ライタ装置１０が送信した「パスワードＰＷｉ」及び「コマンド」を受信する。
【００５８】
次に、電子タグ２０は、Ｓ２１０１で受信したパスワードＰＷｉを利用して、パスワードＰＷｉおよびコマンドを送信したリーダ・ライタ装置１０を認証する処理を行う（Ｓ２１０２）。そして、認証できなければ処理を終了し、認証できればＳ２１０３に進む。
【００５９】
具体的には、電子タグ２０の制御部２０００は、認証部２３００に、Ｓ２１０１で受信したパスワードＰＷｉを出力して認証処理を行わせる。認証部２３００は、受信したパスワードＰＷｉとデータ保持部２５００に記憶しているパスワードＰＷｉとを比較する。認証部２３００は、２つのパスワードＰＷｉが等しければ認証が成功したと判定してその旨を制御部２０００に出力し、Ｓ２１０３の処理に移る。一方、認証部２３００は、２つのパスワードＰＷｉが等しくなければ認証が失敗したものと判定してその旨を制御部２０００に出力して、処理を終了する。
【００６０】
Ｓ２１０３では、電子タグ２０の制御部２０００は、Ｓ２１０１で受信したコマンドに応じた処理を行う。例えば、受信したコマンドが電子タグ情報の「書き込みコマンド」である場合には、制御部２０００は、データ保持部２５００に電子タグ情報を記憶させる。また、例えば、受信したコマンドがデータ保持部２５００の電子タグ情報の「読み出しコマンド」である場合、制御部２０００は、データ保持部２５００に記憶されている電子タグ情報を読み出し、送受信部２４００を介して、リーダ・ライタ装置１０に送信する。なお、この場合、リーダ・ライタ装置１０は、電子タグ２０が送信した電子タグ情報を受信する。また、例えば、受信したコマンドが電子タグ２０を無効化する「無効化コマンド」の場合、制御部２０００は、電子タグ２０を無効化する処理を行う。
【００６１】
このように、電子タグ２０に、リーダ・ライタ装置１０を認証する機能を設けたことにより、電子タグ２０は、正当なリーダ・ライタ装置１０に対してだけ、電子タグ２０内の情報の読み書き、或いは、電子タグを無効化するなどのコマンドを受け付けることができるようになる。
【００６２】
すなわち、正当なリーダ・ライタ装置１０がなければ、電子タグ２０に格納されているデータを読み出したり、或いは、電子タグ２０にデータを書き込んだりすることができない。そのため、第１実施形態によれば、電子タグ２０内の情報が不正に読み取られる可能性を軽減することができる。また、電子タグ２０内の情報が不正に書き換えられる（改ざんされる）可能性を軽減することができる。
【００６３】
また、第１実施形態では、電子タグ２０に暗号化・復号化などの処理部を設けることなく、電子タグ２０のデータの不正アクセスを防止している。すなわち、第１実施形態によれば、電子タグ内に、コストがかかる暗号化・復号化などの処理部を設ける必要がないため、より安価なシステムで安全性の高い電子タグシステムを実現することができる。
【００６４】
また、第１実施形態は、上述した特許文献２のように、電子タグ毎に、その電子タグの所有者の情報に関連付けたＩＤを発行して管理するような方式を採用していない。また、電子タグにアクセスする際に、ユーザがその電子タグ固有のＩＤを入力する必要がない。そのため、第１実施形態によれば、電子タグシステムのユーザの手間を軽減することができる。
【００６５】
さらに、第１実施形態では、共通鍵と対になる鍵バージョンを備え、複数の共通鍵の使用を可能にしている。そして、電子タグ２０毎に、パスワードＰＷｉを生成する共通鍵Ｋａを任意に定めることができる。そのため、ある電子タグ２０のパスワードＰＷｉを生成するための「共通鍵Ｋａ」および演算方式が漏洩したとしても、他の電子タグ２０に記憶されているデータが読み出されたり、書き換えられたりされる可能性を軽減することができる。
【００６６】
また、本実施形態の電子タグ２０は、磁気カードよりも安全で、ＩＣカードよりも低コストにリーダ・ライタ装置の認証を実現する。したがって、本実施形態は、商品に添付する電子タグだけでなく、クーポン券やギフト券などにも使うことができる。
【００６７】
《第２実施形態》
次に、本発明の第２実施形態について説明する。本発明の第２実施形態は、第１実施形態の構成に、さらに、リーダ・ライタ装置１０および電子タグ２０にパスワード演算処理の機能を付加してものである。このようにするのは、通信経路上におけるパスワードの傍受を防ぐためである。第２実施形態では、通信経路上におけるパスワードの傍受を防ぐために、リーダ・ライタ装置１０が電子タグ２０に送るパスワードを、乱数を使用して演算することにより得られたパスワードを用いる。なお、第２実施形態の説明において、上述した第１実施形態と同じ構成については同じ符号を用いることとする。また、第２実施形態の説明は、第１実施形態と異なる部分を中心に説明する。
【００６８】
先ず、第２実施形態の機能構成について、図５を用いて説明する。
【００６９】
図５は、本発明の第２実施形態の電子タグシステムの機能ブロック図である。
【００７０】
図示するように、第２実施形態の電子タグシステムは、上述した第１実施形態と同様、リーダ・ライタ装置１０と、電子タグ２０とを有する。
【００７１】
第２実施形態のリーダ・ライタ装置１０は、第１実施形態が有する構成に、さらにパスワード演算部１３００が付加されたものである。また、第２実施形態のリーダ・ライタ装置１０は、第１実施形態のものと制御部１０００の機能の一部が異なっている。具体的には、リーダ・ライタ装置１０は、上述した制御部１０００、鍵管理部１１００、パスワード生成部１２００、送受信部１４００、データ保持部１５００に加え、さらに、パスワード演算部１３００を有する。パスワード演算部１３００は、パスワードを、乱数を用いて演算する。具体的には、パスワード演算部１３００は、送受信部１４００が受信した乱数ＲＮと、パスワード生成部１２００が演算したパスワードとを関数Ｆで演算する。本実施形態では、関数Ｆについて特に限定しないが、以下では、論理規模が小さい擬似乱数発生関数を用いて乱数ＲＮを演算し、その結果とパスワードとを排他的論理演算する場合を例にする。制御部１０００は、パスワード演算部１３００で演算した結果（演算済みパスワード）を電子タグ２０に送信する。
【００７２】
第２実施形態の電子タグ２０は、第１実施形態が有する構成に、さらに、乱数を発生する乱数発生部２１００と、パスワード演算部２２００とが付加されたものである。また、第２実施形態の電子タグ２０は、第１実施形態のものと制御部２０００の機能の一部が異なっている。具体的には、電子タグ２０は、上述した制御部２０００、認証部２３００、送受信部２４００、データ保持部２５００に加え、さらに、乱数発生部２１００およびパスワード演算部２２００を有する。データ保持部２５００には、鍵バージョン２３１、キーワード２３３およびパスワード２３４に加え、さらに、共通鍵２３２を記憶させておく。なお、本実施形態では、乱数発生部２１００が行う乱数発生処理の具体的な方法については特に限定しない。以下では、乱数発生部２１００が擬似乱数発生関数を用いて乱数ＲＮを発生させるものとする。
【００７３】
パスワード演算部２２００は、パスワードを、乱数を用いて演算する。具体的には、パスワード演算部２２００は、乱数発生部２１００が発生した乱数ＲＮと、データ保持部２５００に記憶されているパスワードとを関数Ｆで演算する。関数Ｆは、リーダ・ライタ装置１０のパスワード演算部１３００に実装されているものと同一のものとする。
【００７４】
認証部２３００は、リーダ・ライタ装置１０が送信した演算済みパスワードと、パスワード演算部２２００が演算した演算結果（演算済みパスワード）とを照合することにより、リーダ・ライタ装置１０を認証する。制御部２０００は、認証できたリーダ・ライタ装置１０からの要求だけを受け付ける。
【００７５】
続いて、第２実施形態の電子タグシステムのハードウェア構成を説明する。
【００７６】
第２実施形態の電子タグシステムのハードウェア構成は、上述した図２のものと同じである。なお、リーダ・ライタ装置１０の補助記憶装置１３０には、パスワード演算部１３００の機能を実現するためのプログラムが格納されている。そして、パスワード演算部１３００の機能は、中央処理装置１１０が補助記憶装置１３０に格納されている上記のプログラムを主記憶装置１２０にロードして実行することにより実現される。
【００７７】
また、電子タグ２０の補助記憶装置２３０には、共通鍵２３２が記憶されている。また、乱数発生部２１００、およびパスワード演算部２２００は、制御回路２１０に実装されている。そして、制御回路２１０に実装されている各機能（ここでは、制御部２０００、乱数発生部２１００、パスワード演算部２２００、認証部２３００の各機能）は、電子タグ２０の電源がオンのときに実行される。
【００７８】
次に、第２実施形態のリーダ・ライタ装置１０と電子タグ２０との間で行われるデータの送受信処理を説明する。
【００７９】
最初に、リーダ・ライタ装置１０が準備段階として、鍵バージョンＶａ、キーワードＫＷｉおよびパスワードＰＷｉを電子タグ２０に書き込む。すなわち、リーダ・ライタ装置１０は、電子タグ２０への初期化処理を行い、鍵バージョンＶａ、キーワードＫＷｉおよびパスワードＰＷｉを電子タグ２０に書き込む。また、第２実施形態では、リーダ・ライタ装置１０は、初期化処理の際、パスワードＰＷｉの生成に利用した共通鍵Ｋａも、電子タグ２０に書き込む。なお、第２実施形態の初期化処理は、第１実施形態のものと、共通鍵Ｋａを書き込む以外、同様であるため、ここでの説明を省略する。
【００８０】
続いて、第２実施形態の電子タグ２０がリーダ・ライタ装置１０を認証する処理について、図６を用いて説明する。なお、図示するフローは、上述した初期化処理が行われた電子タグ２０と、リーダ・ライタ装置１０との間で行われる処理である。
【００８１】
図６は、第２実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。なお、図示するフローは、準備段階の初期化処理において、電子タグ２０に鍵バージョンＶａ、パスワードＰＷｉ、キーワードＫＷｉ、および共通鍵Ｋａを書き込んだリーダ・ライタ装置１０と異なるリーダ・ライタ装置１０により行われるものとする。
【００８２】
また、本フローを行うリーダ・ライタ装置１０は、初期化処理でのパスワードＰＷｉの生成に利用した（図３のＳ１００２で利用した）共通鍵Ｋａと同じ共通鍵Ｋａを保持している。具体的には、リーダ・ライタ装置１０のデータ保持部１５００には、Ｓ１００２で利用した共通鍵Ｋａを含む複数の共通鍵と、それらと対になる鍵バージョンが記憶されている。この場合、これらの共通鍵Ｋａは、限られたリーダ・ライタ装置１０に耐タンパ性技術を用いて格納することが望ましい。或いは、これらの共通鍵Ｋａは、リーダ・ライタ装置１０と物理的に離れたところで管理されており、限られたリーダ・ライタ装置１０に安全性の高いネットワークを介して取得されることが望ましい。
【００８３】
先ず、リーダ・ライタ装置１０と電子タグ２０との間において、上述した図４のＳ２００１、Ｓ２１００、およびＳ２００２と同様の処理が行われる（Ｓ３００１、Ｓ３１００、Ｓ３１０２）。すなわち、リーダ・ライタ装置１０は、電子タグ２０に対してキーワードＫＷｉおよび鍵バージョンＶａを要求し、その要求に応答して電子タグ２０が送信するキーワードＫＷｉおよび鍵バージョンＶａを受信する。
【００８４】
次に、リーダ・ライタ装置１０は、図４のＳ２００３〜２００４と同じ処理（Ｓ３００３〜３００４）を行う。すなわち、リーダ・ライタ装置１０は、Ｓ３００２で受信した鍵バージョンＶａから共通鍵Ｋａを特定し、Ｓ３００２で受信したキーワードＫＷｉと、特定した共通鍵Ｋａとを、図３のＳ２００２と同様の不可逆関数Ｈで演算する。演算した結果をパスワードＰＷｉとする。
【００８５】
次に、リーダ・ライタ装置１０は、電子タグ２０に対して乱数ＲＮを要求する（Ｓ３００５）。具体的には、リーダ・ライタ装置１０の制御部１０００が、送受信部１４００を介して、電子タグ２０に対して、乱数ＲＮの送信を要求する信号を送信し、電子タグ２０からの乱数ＲＮを受信するまで待機する。
【００８６】
次に、電子タグ２０側の処理を説明する。電子タグ２０は、リーダ・ライタ装置１０からの「乱数ＲＮの送信を要求する信号」を受信すると、乱数ＲＮを発生させ、発生させた乱数ＲＮをリーダ・ライタ装置１０に送信する（Ｓ３１０１）。具体的には、電子タグ２０の制御部２０００が、送受信部２４００を介して、「乱数ＲＮの送信を要求する信号」を受信すると、乱数発生部２１００に乱数ＲＮの発生を指示する。乱数発生部２１００は、制御部２０００からの指示にしたがい、乱数ＲＮを発生させる。なお、乱数発生部２１００は、リーダ・ライタ装置１０からの要求に対して毎回異なる乱数ＲＮを発生する。そして、制御部２０００は、乱数発生部２１００が発生させた乱数ＲＮをリーダ・ライタ装置１０に出力し、リーダ・ライタ装置１０側の処理に遷移する。
【００８７】
リーダ・ライタ装置１０は、電子タグ２０からの乱数ＲＮを受信する（Ｓ３００６）。具体的には、リーダ・ライタ装置１０の制御部１０００は、送受信部１４００を介して、電子タグ２０からの乱数ＲＮを受信する。
【００８８】
次に、リーダ・ライタ装置１０は、電子タグ２０から受信した乱数ＲＮ、およびパスワード生成部１２００が演算したパスワードＰＷｉ（Ｓ３００４で求めたパスワードＰＷｉ）を関数Ｆで演算する（Ｓ３００７）。具体的には、制御部１０００は、パスワード演算部１３００に対し、Ｓ３００４で求めたパスワードＰＷｉおよび乱数ＲＮを、関数Ｆで演算させる指示をする。パスワード演算部１３００は、上記の指示を受け、下記の（式１）を用いて、Ｓ３００６で受信した「乱数ＲＮ」と、「共通鍵Ｋａ」との排他的論理和を、擬似乱数発生関数ｆで演算し、その「演算結果」とＳ３００４で算出した「パスワードＰＷｉ」とを排他的論理演算する。そして、演算した結果を「演算済みパスワードＰＷｉ’」とする。
ＰＷｉ’＝ＰＷｉ  ＸＯＲ  ｆ（Ｋａ，ＲＮ）…（式１）
次に、リーダ・ライタ装置１０は、電子タグ２０に、Ｓ３００７で算出した「演算済みパスワードＰＷｉ’」および「コマンド」を送信する（Ｓ３００８）。この場合、リーダ・ライタ装置１０と電子タグ２０とを近づけ、他とは隔離し、通信データが漏洩、盗聴されないように注意するとよい。なお、「コマンド」とは、電子タグ情報の読み書きや電子タグ２０を無効化するコマンドである。
【００８９】
続いて、電子タグ２０側の処理を説明する。電子タグ２０は、リーダ・ライタ装置１０が送信した「演算済みパスワードＰＷｉ’」および「コマンド」を受信する（Ｓ３１０２）。具体的には、リーダ・ライタ装置１０の制御部２０００が、送受信部２４００を介して、リーダ・ライタ装置１０が送信した「演算済みパスワードＰＷｉ’」および「コマンド」を受信し、Ｓ３０１３の処理に進む。
【００９０】
Ｓ３０１３では、電子タグ２０は、データ保持部２５００に記憶されているパスワードＰＷｉを、乱数発生部２１００で生成した乱数ＲＮを用いて演算する。なお、ここで利用する乱数ＲＮは、Ｓ３１０１で生成した乱数ＲＮである（すなわち、リーダ・ライタ装置１０に送信した乱数ＲＮと同じものである）。
【００９１】
具体的には、電子タグ２０の制御部２０００は、パスワード演算部２２００に対し、データ保持部２５００に記憶されているパスワードＰＷｉを演算させる指示を行う。パスワード演算部２２００は、上記の指示を受け、上述したＳ３００７と同様の手順により、Ｓ３１０１で生成した「乱数ＲＮ」と、データ保持部２５００に記憶されている「共通鍵Ｋａ」との排他的論理和を、擬似乱数発生関数ｆで演算し、その「演算結果」と、データ保持部２５００に記憶されている「パスワード」とを排他的論理演算する。そして、演算した結果を「演算済みパスワードＰＷｉ’」とする。ここで、擬似乱数発生関数ｆは、Ｓ３００７でリーダ・ライタ装置１０が用いたものと同一のものとする。
【００９２】
次に、電子タグ２０は、Ｓ３１０２で受信した「演算済みパスワードＰＷｉ’」を利用して、「演算済みパスワードＰＷｉ’」および「コマンド」を送信したリーダ・ライタ装置１０を認証する処理を行う（Ｓ３１０４）。そして、認証できなければ処理を終了して、認証できればＳ３０２０に進む。
【００９３】
具体的には、電子タグ２０の制御部２０００は、認証部２３００に、Ｓ３１０２で受信した「演算済みパスワードＰＷｉ’」を出力して認証処理を行わせる。認証部２３００は、受信した「演算済みパスワードＰＷｉ’」と、Ｓ３１０３でパスワード演算部２２００が演算した「演算済みパスワードＰＷｉ’」とを比較する。認証部２３００は、２つの「演算済みパスワードＰＷｉ’」が等しければ認証が成功したと判定してその旨を制御部２０００に出力し、Ｓ３０１５の処理に移る。一方、認証部２３００は、２つの「演算済みパスワードＰＷｉ’」が等しくなければ認証が失敗したと判定してその旨を制御部２０００に出力して、処理を終了する。
【００９４】
Ｓ３１０５では、電子タグ２０の制御部２０００は、Ｓ３１０２で受信したコマンドに応じた処理を行う。なお、コマンドに応じた処理とは、上述した図４のＳ２１０３と同じであるため、ここでの説明は省略する。
【００９５】
なお、図６に示す説明では、電子タグ２０は、Ｓ３１０２において、「演算済みパスワードＰＷｉ’」および「コマンド」を受信した後で、Ｓ３１０３の「パスワード演算処理」を行うようにしているが、特にこれに限定するものではない。電子タグ２０は、Ｓ３１０１で乱数ＲＮを送信させてから、ＳＳ３１０２の「演算済みパスワードＰＷｉ’」および「コマンド」を受信するまでの間に、「パスワード演算処理」を行うようにしてもよい。
【００９６】
このように、電子タグ２０とリーダ・ライタ装置１０にパスワードを演算する機能を設けたことにより、リーダ・ライタ装置１０は、電子タグ２０に対してパスワードを秘匿化して送信することができるようになる。すなわち、リーダ・ライタ装置１０は、コマンドを送信する毎にパスワードを変更するため、通信経路上でパスワードが傍受されたとしても、電子タグ２０が不正アクセスされることを防止することができる。
【００９７】
したがって、第２実施形態によれば、上述した第１実施形態の効果に加えて、リーダ・ライタ装置１０を認証するためのパスワードの傍受を防ぐことができるようになるため、より安全性の高い電子タグシステムを構築することができる。
《第３実施形態》
次に、本発明の第３実施形態について説明する。本発明の第３実施形態は、第２実施形態の構成を変更したものである。すなわち、第３実施形態は、リーダ・ライタ装置１０に電子タグ２０の認証処理の機能を付加してものである。そして、電子タグ２０は、自身が記憶しているパスワードをリーダ・ライタ装置１０に送り、リーダ・ライタ装置１０が電子タグ２０を認証する。また、パスワードを送る際に、乱数を使用してパスワードを演算することで、通信経路上におけるパスワードの傍受を防ぐようにしている。なお、第３実施形態の説明において、上述した第２実施形態と同じ構成については同じ符号を用いることとする。また、第３実施形態の説明は、第２実施形態と異なる部分を中心に説明する。
【００９８】
先ず、第３実施形態の機能構成について、図７を用いて説明する。
【００９９】
図７は、本発明の第３実施形態を表す電子タグシステムの機能ブロック図である。
【０１００】
図示するように、第３実施形態の電子タグシステムは、上述した第２実施形態と同様、リーダ・ライタ装置１０と、電子タグ２０とを有する。
【０１０１】
第３実施形態のリーダ・ライタ装置１０は、第２実施形態が有する構成に、さらに乱数発生部１６００と、認証部１７００を付加している。また、第３実施形態のリーダ・ライタ装置１０は、第２実施形態のものと制御部１０００の機能の一部が異なっている。具体的には、リーダ・ライタ装置１０は、上述した制御部１０００、鍵管理部１１００、パスワード生成部１２００、パスワード演算部１３００、送受信部１４００、データ保持部１５００に加え、さらに、乱数発生部１６００、認証部１７００を有する。データ保持部１５００には、複数の鍵バージョン２３１と、鍵バージョン毎に対応付けられた共通鍵２３２と、を記憶させておく。
【０１０２】
乱数発生部１６００は、乱数を発生する。本実施形態では、乱数発生の具体的な方法については特に限定しないが、以下では、擬似乱数発生関数を用いて乱数ＲＮを発生する。認証部１７００は、リーダ・ライタ装置１０が受信した「演算済みパスワード」と、パスワード演算部１３００が演算した「演算済みパスワード」とを照合することにより、電子タグ２０を認証する。制御部１０００は、認証できた電子タグ２０にだけ各種のコマンドを送信する。
【０１０３】
第３実施形態の電子タグ２０は、第２実施形態が有する構成から、乱数発生部２１００およびパスワード演算部２２００の機能を除いたものである。また、第３実施形態の電子タグ２０は、第２実施形態のものと制御部２０００の機能の一部が異なっている。例えば、第３実施形態の電子タグ２０の制御部２０００は、リーダ・ライタ装置１０から受信した乱数と、データ保持部２５００に記憶しているパスワードとを関数Ｆで演算し、その演算結果をリーダ・ライタ装置１０に送信する処理を行う（なお、電子タグ２０が行う処理は、後段で詳細に説明する）。
【０１０４】
続いて、第３実施形態のハードウェア構成を説明する。
【０１０５】
第３実施形態の電子タグシステムのハードウェア構成は、上述した図２のものと同じである。なお、リーダ・ライタ装置１０の補助記憶装置１３０には、乱数発生部１６００および認証部１７００の機能を実現するためのプログラムが格納されている。そして、乱数発生部１６００および認証部１７００の機能は、中央処理装置１１０が補助記憶装置１３０に格納されている上記のプログラムを主記憶装置１２０にロードして実行することにより実現される。
【０１０６】
また、電子タグ２０の制御回路２１０は、制御部２０００、およびパスワード演算部２２００の機能を専用に行うように設計されている。そして、第３実施形態の電子タグの制御部２０００およびパスワード演算部２２００の機能は、制御回路２１０により実現される。
【０１０７】
次に、第３実施形態のリーダ・ライタ装置１０と電子タグ２０との間で行われるデータの送受信処理を説明する。
【０１０８】
最初に、準備段階として、リーダ・ライタ装置１０が鍵バージョンＶａ、キーワードＫＷｉおよびパスワードＰＷ２ｉを電子タグ２０に書き込む処理（初期化処理）について、図８を用いて説明する。
【０１０９】
図８は、本発明の第３実施形態のリーダ・ライタ装置が行う電子タグ２０の初期化処理のフローを説明するための図である。なお、リーダ・ライタ装置１０のデータ保持部１５００には複数の共通鍵Ｋａ２と、それぞれと対になる鍵バージョンＶａが記憶されているものとする。
【０１１０】
先ず、リーダ・ライタ装置１０は、上述した図３のＳ１００１と同様の手順にしたがい、データ保持部１５００から電子タグ２０を認証するための一つの共通鍵Ｋａ２とそれと対になる鍵バージョンＶａを選択する（Ｓ４００１）。すなわち、リーダ・ライタ装置１０の制御部１０００が鍵管理部１１００を介してデータ保持部から一対の電子タグ２０認証用の共通鍵Ｋａ２と鍵バージョンＶａを取得する。
【０１１１】
次に、リーダ・ライタ装置１０は、電子タグの認証処理に用いるパスワードＰＷ２ｉを生成する処理を行う（Ｓ４００２）。
【０１１２】
具体的には、リーダ・ライタ装置１０の制御部１０００が電子タグ２０の固有のキーワードＫＷｉの入力を受け付ける。パスワード生成部１２００は、制御部１０００が受け付けたキーワードＫＷｉと、Ｓ４００１で取得した共通鍵Ｋａ２とを不可逆関数Ｈで演算する。この演算した結果をパスワードＰＷ２ｉとする。
【０１１３】
次に、リーダ・ライタ装置１０は、上記のキーワードＫＷｉと、Ｓ４００１で取得した鍵バージョンＶａ、およびＳ４００２で求めたパスワードＰＷ２ｉを電子タグ２０に送信して書き込む（Ｓ４００３）。具体的には、制御部１０００が、送受信制御部１４００を介して、鍵管理部１１００から取得した鍵バージョンＶａと、パスワード生成部１２００で演算したパスワードＰＷ２ｉと、キーワードＫＷｉとを電子タグ２０に書き込む。
【０１１４】
さらに、本ステップ（Ｓ４００３）では、リーダ・ライタ装置１０は、パスワードＰＷ２ｉの生成に利用した共通鍵Ｋａ２も、電子タグ２０に書き込む。
【０１１５】
続いて、第３実施形態のリーダ・ライタ装置１０が電子タグ２０を認証する処理について、図９を用いて説明する。なお、図示するフローは、図８の初期化処理が行われた電子タグ２０と、リーダ・ライタ装置１０との間で行われる処理である。
【０１１６】
図９は、第３実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【０１１７】
ここで、電子タグ２０のデータ保持部２５００には、電子タグ情報が格納されているものとする。また、以下の処理は、準備段階の初期化処理において、電子タグ２０に鍵バージョンＶａ、パスワードＰＷ２ｉおよびキーワードＫＷｉを書き込んだリーダ・ライタ装置１０と異なるリーダ・ライタ装置１０により行われるものとする。
【０１１８】
また、本フローを行うリーダ・ライタ装置１０は、図８のＳ４００２で利用した共通鍵Ｋａ２と同じ共通鍵Ｋａ２を保持している。具体的には、リーダ・ライタ装置１０のデータ保持部１５００には、Ｓ４００２で利用した共通鍵Ｋａ２を含む複数の共通鍵と、それらと対になる鍵バージョンが記憶されている。この場合、これらの共通鍵Ｋａ２は、限られたリーダ・ライタ装置１０に耐タンパ性技術を用いて格納することが望ましい。或いは、これらの共通鍵Ｋａ２は、リーダ・ライタ装置１０と物理的に離れたところで管理されており、限られたリーダ・ライタ装置１０に安全性の高いネットワークを介して取得されることが望ましい。
【０１１９】
先ず、リーダ・ライタ装置１０と電子タグ２０との間において、上述した図６のＳ３００１、Ｓ３１００、およびＳ３００２〜３００４と同様の処理が順次行われる（Ｓ５００１、Ｓ５１００、Ｓ５００２〜Ｓ５００４）。
【０１２０】
具体的には、リーダ・ライタ装置１０は、電子タグ２０に対してキーワードＫＷｉおよび鍵バージョンＶａを要求し、その要求に応答して電子タグ２０が送信するキーワードＫＷｉおよび鍵バージョンＶａを受信する。そして、リーダ・ライタ装置１０は、受信した鍵バージョンＶａから共通鍵Ｋａ２を特定し、Ｓ４００２受信したキーワードＫＷｉと、特定した共通鍵Ｋａ２とを、図８のＳ４００２と同様の不可逆関数Ｈで演算する。演算した結果をパスワードＰＷ２ｉとする。
【０１２１】
次に、リーダ・ライタ装置１０は、乱数ＲＮを生成し、その生成した乱数ＲＮを電子タグ２０に送信する（Ｓ５００５）。具体的には、リーダ・ライタ装置１０の制御部１０００が乱数発生部１６００に乱数ＲＮの生成を指示する。乱数発生部１６００は、制御部１０００からの指示を受けて、乱数ＲＮを発生させる。制御部１０００は、送受信部１４００を介して、乱数発生部１６００が発生させた乱数ＲＮを電子タグ２０に送信する。その後、リーダ・ライタ装置１０は、電子タグ２０からの信号（後述する「演算済みパスワードＰＷｉ’」）を受信するまで待機する。
【０１２２】
次に、電子タグ２０側の処理を説明する。電子タグ２０は、リーダ・ライタ装置１０が送信した乱数ＲＮを受信する（Ｓ５１０１）。
【０１２３】
次に、電子タグ２０は、Ｓ５１０１で受信して乱数ＲＮと、データ保持部２５００に記憶されているパスワードＰＷ２ｉとを関数Ｆで演算する（Ｓ５１０２）。具体的には、Ｓ５１０１で受信した「乱数ＲＮ」と、「共通鍵Ｋａ２」との排他的論理和を、擬似乱数発生関数ｆで演算し、その「演算結果」とデータ保持部２５００に記憶されている「パスワード」とを排他的論理演算する。演算した結果を「演算済みパスワードＰＷ２ｉ’」とする。なお、「演算済みパスワードＰＷ２ｉ’」は、図６のＳ３００７と同様の手順にしたがい、すなわち、Ｓ３００７の処理の際に利用した計算式（上述した（式１））にしたがい算出される。
【０１２４】
次に、電子タグ２０は、Ｓ５１０２で求めた「演算済みパスワードＰＷ２ｉ’」をリーダ・ライタ装置１０に送信する（Ｓ５１０３）。すなわち、電子タグ２０の制御部２０００が送受信部２４００を介して、「演算済みパスワードＰＷ２ｉ’」をリーダ・ライタ装置１０に送信する。その後、リーダ・ライタ装置１０側の処理に移行する。なお、この場合、リーダ・ライタ装置１０と電子タグ２０とを近づけ他とは隔離し、通信データが漏洩、盗聴されないように注意するとよい。
【０１２５】
続いて、リーダ・ライタ装置１０側の処理を説明する。リーダ・ライタ装置１０は、電子タグ２０が送信した「演算済みパスワードＰＷ２ｉ’」を受信する（Ｓ５００６）と、パスワード演算処理を行う（Ｓ５００７）。具体的には、リーダ・ライタ装置１０のパスワード演算部１３００は、データ保持部１５００に記憶されているパスワードＰＷ２ｉを、Ｓ５００５で生成した乱数ＲＮを用いて演算する。すなわち、パスワード演算部１３００は、Ｓ５００５で生成した「乱数ＲＮ」と、データ保持部１５００に記憶されている電子タグ２０認証用の「共通鍵Ｋａ２」との排他的論理和を、擬似乱数発生関数ｆで演算し、その「演算結果」とデータ保持部２５００に記憶されている「パスワードＰＷ２ｉ」とを排他的論理演算する。そして、演算した結果を「演算済みパスワードＰＷ２ｉ’」とする。ここで、擬似乱数発生関数ｆは、Ｓ５１０２で電子タグ２０が用いたものと同一のものとする。すなわち、パスワード演算部１２００は、上述したＳ５１０２の処理の際に求められた計算式（上述した（式１））にしたがい、「演算済みパスワードＰＷ２ｉ’」を求める。
【０１２６】
次に、リーダ・ライタ装置１０は、Ｓ５００６で受信した「演算済みパスワードＰＷ２ｉ’」を利用して、「演算済みパスワードＰＷ２ｉ’」を送信した電子タグ２０を認証する処理を行う（Ｓ５００８）。そして、認証できなければ処理を終了して、認証できればＳ５００９に進む。
【０１２７】
具体的には、リーダ・ライタ装置１０の制御部１０００は、認証部１７００に、Ｓ５００６で受信した「演算済みパスワードＰＷ２ｉ’」を出力して認証処理を行わせる。認証部１７００は、受信した「演算済みパスワードＰＷ２ｉ’」と、Ｓ５００７でパスワード演算部１３００が演算した「演算済みパスワードＰＷ２ｉ’」とを比較する。認証部１７００は、２つの「演算済みパスワードＰＷ２ｉ’」が等しければ認証が成功したものと判定してその旨を制御部１０００に出力し、Ｓ５００９の処理に移る。一方、認証部１７００は、２つの「パスワードＰＷ２ｉ’」が等しくなければ認証が失敗したものと判定してその旨を制御部１０００に出力して、処理を終了する。
【０１２８】
Ｓ５００９では、リーダ・ライタ装置１０の制御部１０００は、電子タグ２０に対する各種コマンドを生成し、その生成したコマンドを送信する。なお、ここでは、「読み出しコマンド」を送信する場合を例にする。
【０１２９】
そして、リーダ・ライタ装置１０からのコマンド（ここでは「読み出しコマンド（リードコマンド）」）を受信して電子タグ２０は、「読み出しコマンド」に応じた処理を行う（Ｓ５１０４）。すなわち、電子タグ２０は、データ保持部２５００に記憶している電子タグ情報をリーダ・ライタ装置１０に送信する。具体的には、電子タグ２０の制御部２０００が、データ保持部２５００から電子タグ情報を読み出し、リーダ・ライタ装置１０に、その読み出した電子タグ情報を送信する。
【０１３０】
そして、リーダ・ライタ装置１０は、電子タグ２０からの電子タグ情報を受信して処理を終了する（Ｓ５０１０）。
【０１３１】
なお、図９に示す説明では、リーダ・ライタ装置１０は、Ｓ５００６の処理の後で。すなわち、「演算済みパスワードＰＷ２ｉ’」を受信した後で、Ｓ５００７の「パスワード演算処理」を行うようにしているが、特にこれに限定するものではない。リーダ・ライタ装置１０は、乱数ＲＮを送信したから（すなわち、Ｓ５００５の処理の後）、Ｓ５００６で「演算済みパスワードＰＷｉ’」を受信するまでの間に、「パスワード演算処理」を行うようにしてもよい。
【０１３２】
また、上記の説明では、Ｓ５００９において、電子タグ情報の「読み出しコマンド」を送信する場合を例にして説明したが、他のコマンドの場合は以下のようになる。
【０１３３】
すなわち、Ｓ５００９において、電子タグ情報の「書き込みコマンド」を送信された場合、Ｓ５０１３では、電子タグ２０に電子タグ情報が書き込まれる。具体的には、電子タグ２０の制御部２０００は、データ保持部２５００に電子タグ情報を記憶させる。また、Ｓ５００９において、「無効化コマンド」が送信された場合、Ｓ５０１３では、電子タグ２０の制御部２０００は、電子タグ２０を無効化する処理を行う。なお、Ｓ５００９において、「書き込みコマンド」および「無効化コマンド」のいずれかが送信された場合、Ｓ５０１０の処理は行われない。
【０１３４】
このように、リーダ・ライタ装置１０に認証する機能を設けたことにより、リーダ・ライタ装置１０側で電子タグ２０を認証することができるようになる。したがって、第３実施形態の機能を利用することにより、商品等に不正な電子タグが添付されているか否かを確認することができる。また、第３実施形態は、第２実施形態と同様、認証に利用するパスワードが毎回変更されるためパスワードの傍受を防ぐことができるようになる。
【０１３５】
《第４実施形態》
続いて、本発明の第４実施形態について説明する。第４実施形態は、上述した第３実施形態の構成に、さらに、電子タグ情報を暗号化および復号化するための機能を付加したものである。このようにするのは、電子タグ情報の漏洩を防ぐと共に電子タグ２０の複製を防ぐためである。なお、以下では、説明の便宜上、第３実施形態を変形した場合を例にして説明する。また、第４実施形態の説明において、上述した第３実施形態と同じ構成については、同じ符号を用いることとする。
【０１３６】
本発明の第４実施形態の機能構成は、図７で示した第３実施形態のものと制御部１０００の機能が異なる以外は同じである。第４実施形態のハードウェア構成は、第３実施形態と同じである。そのため、以下では、異なる部分を中心に説明する。具体的には、第４実施形態では、リーダ・ライタ装置１０の制御部１０００に、電子タグ情報を暗号化して、電子タグ２０に書き込む手段と、電子タグ２０から読み取った暗号化された電子タグ情報を復号化する手段とを設けるようにした。また、電子タグ２０のデータ保持部２５００に記憶されているキーワードは、一度書き込まれると二度と書き換えができない仕組みになっている。この構成により、電子タグ２０内の情報が漏洩するのを防止する。
【０１３７】
図１０は、本発明の第４実施形態のリーダ・ライタ装置が行う電子タグ２０の初期化処理のフローを説明するための図である。
【０１３８】
先ず、リーダ・ライタ装置１０は、上述した図８のＳ４００１〜Ｓ４００３と同じ処理を行う（Ｓ６００１〜６００３）。
【０１３９】
次に、リーダ・ライタ装置１０は、書き換え不可能なキーワードを用いて電子タグ情報を暗号化し、電子タグ２０に暗号化した電子タグ情報を書き込む（Ｓ６００４）。具体的には、リーダ・ライタ装置１０の制御部１０００が、キーワードＫＷｉおよび共通鍵Ｋａ２を用いて既存の暗号アルゴリズム（例えば、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）、ＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）等）で電子タグ情報を暗号化する。そして、制御部１０００は、送受信部１４００を介して、電子タグ２０に暗号化した電子タグ情報を書き込む。なお、第４実施形態の暗号化処理、および、後述する復号化処理は、既存の技術により実現されるものとする。
【０１４０】
続いて、第４実施形態のリーダ・ライタ装置１０が電子タグ２０を認証する処理について、図１１を用いて説明する。
【０１４１】
図１１は、第４実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【０１４２】
図示するように、リーダ・ライタ装置１０と電子タグ２０との間において、上述した図９と同様の処理が行われる。すなわち、リーダ・ライタ装置１０が、図９のＳ５００１〜Ｓ５００９と同様の処理を行い（Ｓ７００１〜７００９）、電子タグ２０が図９のＳ５１００〜５１０４と同様の処理を行う（Ｓ７１００〜７１０４）。
【０１４３】
次に、リーダ・ライタ装置１０は、電子タグ２０が送信した暗号化された電子タグ情報を受信し、その受信した電子タグ情報を、Ｓ７００２で受信したキーワードＫＷｉおよびＳ７００４で検索した共通鍵Ｋａ２を用いて複号化して、処理を終了する（Ｓ７０１０）。
【０１４４】
なお、図１１に示す説明では、リーダ・ライタ装置１０は、Ｓ７００６において、「演算済みパスワードＰＷ２ｉ’」を受信した後で、Ｓ７００７の「パスワード演算処理」を行うようにしているが、特にこれに限定するものではない。第３実施形態と同様で、リーダ・ライタ装置１０は、乱数ＲＮを送信してから「演算済みパスワードＰＷｉ’」を受信するまでの間に（Ｓ７００６の処理とＳ７００７の処理との間に）「パスワード演算処理」を行うようにしてもよい。
【０１４５】
以上の処理により、第４実施形態でも、上記第３実施形態と同様の効果を得ることが出来る。また、第４実施形態では、電子タグ情報を暗号化した上で、電子タグ２０に格納するようにしているため、第３実施形態に比べて、電子タグシステムの安全性をさらに高めることができる。
【０１４６】
このように、上述した本発明の第１〜第４実施形態によれば、電子タグ側に暗号化処理や復号化処理を行うための複雑な論理回路を実装することなく、安価で安全性の比較的高い電子タグシステムを提供することができるようになる。
【０１４７】
なお、本発明は、以上で説明した実施形態に限定されるものではなく、本発明の要旨の範囲内において種々の変形が可能である。
【０１４８】
例えば、上述した第１〜第４実施形態では、リーダ・ライタ装置１０が複数の共通鍵Ｋａを保持している場合を例にしたが、特にこれに限定するものではない。リーダ・ライタ装置１０が保持する共通鍵は、単数であってもかまわない。なお、この場合、電子タグ２０に、鍵バージョンを記憶させておく必要はない。そして、リーダ・ライタ装置１０は、図４のＳ２００１において、電子タグ２０に「キーワードＫＷｉ」の送信要求を行う。これに対して、電子タグ２０は、図４のＳ２１００において、データ保持部２５００に記憶しているキーワードＫＷｉをリーダ・ライタ装置１０に返信する。リーダ・ライタ装置１０は、電子タグ２０からのキーワードＫＷｉを受信すると、Ｓ２００３を行なわずに、受信したキーワードＫＷｉと、自身が記憶している共通鍵Ｋａを用いてパスワードＰＷｉを生成し、生成したパスワードＰＷｉとコマンドを電子タグ２０に送信する。そして、電子タグ２０は、図４のＳ２１０１〜Ｓ２１０３と同じ処理を行う。
【０１４９】
このように、リーダ・ライタ装置１０が保持する共通鍵は、単数であっても、電子タグ２０側で認証処理を行なうことができ、電子タグ２０側に暗号化処理や復号化処理を行うための複雑な論理回路を実装することなく、安価で安全性の比較的高い電子タグシステムを提供することができるようになる。
【０１５０】
また、上述の第２実施形態と第３実施形態とを組合せ、リーダ・ライタ装置１０および電子タグ２０の両者において、相互で認証処理を行なうようにしてもよい。なお、この場合、電子タグ２０は、図５に示す処理部を備え、リーダ・ライタ装置１０は、図７に示す処理部を備えるものとする。また、電子タグ２０がリーダ・ライタ装置１０を認証するための処理に利用する共通鍵Ｋａ（図６のＳ３００４、３００７、３１０３で利用する共通鍵Ｋａ）と、リーダ・ライタ装置１０が電子タグ１０を認証するための処理に利用する共通鍵Ｋａ２（図９のＳ５００４、５００７、５１０２で利用する共通鍵Ｋａ２）と、は異なる方がよい。すなわち、データ保持部１５００において、複数の共通鍵Ｋａおよびその鍵バージョンＶａと、複数の共通鍵Ｋａ２とその鍵バージョンＶａとを別々に管理するとよい（例えば、データ保持部１５００は、共通鍵Ｋａおよびその鍵バージョンＶａと、共通鍵Ｋａ２およびその鍵バージョンＶａとを、各々、別のデータベースに登録して記憶する）。
【０１５１】
同様に、第１実施形態と第３実施形態とを組合せて、リーダ・ライタ装置１０および電子タグ２０の両者において、相互で認証処理を行なうようにしてもよい。
【０１５２】
また、上述の第１実施形態の制御部１０００に、第４実施形態で説明した、電子タグ情報を暗号化および復号化するための機能を付加するようにしてもよい。或いは、上述の第２実施形態の制御部１０００に、第４実施形態で説明した、電子タグ情報を暗号化および復号化するための機能を付加するようにしてもよい
また、第１〜第４実施形態では、リーダ・ライタ装置１０が有する各処理部の機能が、ソフトウェアにより実現されるものとして説明したが（各処理部の機能は、中央処理装置１１０がプログラムを実行することにより実現されるものと説明したが）、特にこれに限定するものではない。例えば、リーダ・ライタ装置１０が有する各処理部の機能を専用のハードウェアロジックで実現するようにしてもよい。例えば、リーダ・ライタ装置１０に、上述したリーダ・ライタ装置１０の機能を実現するためのＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）を搭載するようにしてもよい。
【０１５３】
また、第１〜第４実施形態の電子タグ２０の制御回路２１００に代えて、ＣＰＵおよびワークエリアとして機能するメモリを搭載して、電子タグ２０の各処理部の機能をソフトウェアにより実現するようにしてもよい。すなわち、電子タグ２０の各処理部の機能は、ＣＰＵがメモリに記憶されている各プログラムを実行することにより実現されることとしてもよい。
【図面の簡単な説明】
【０１５４】
【図１】本発明の第１実施形態の電子タグシステムの機能ブロック図である。
【図２】本発明の第１実施形態の電子タグシステムのハードウェア構成図である。
【図３】本発明の第１実施形態のリーダ・ライタ装置が行う電子タグの初期化処理のフローを説明するための図である。
【図４】本発明の第１実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【図５】本発明の第２実施形態の電子タグシステムの機能ブロック図である。
【図６】本発明の第２実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【図７】本発明の第３実施形態の電子タグシステムの機能ブロック図である。
【図８】本発明の第３実施形態のリーダ・ライタ装置が行う電子タグの初期化処理のフローを説明するための図である。
【図９】本発明の第３実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【図１０】本発明の第４実施形態のリーダ・ライタ装置が行う電子タグの初期化処理のフローを説明するための図である。
【図１１】本発明の第４実施形態のリーダ・ライタ装置と電子タグとの間で行われるデータ送受信処理のフローを説明するための図である。
【符号の説明】
【０１５５】
１０…リーダ・ライタ装置、２０…電子タグ、１００…送受信装置、１１０…中央処理装置、１２０…主記憶装置、１３０…補助記憶装置、１３１…鍵バージョン、１３２…共通鍵、２００…送受信装置、２１０…制御回路、２３０…補助記憶装置、１０００…制御部、１１００…かぎ管理部、１２００…パスワード生成部、１３００…パスワード演算部、１４００…送受信部、１５００…データ保持部、１６００…乱数発生部、１７００…認証部、２０００…制御部、２１００…乱数発生部、２２００…パスワード演算部、２３００…認証部、２４００…送受信部、２５００…データ保持部
【図１】
2007293443.tif 000003
【図２】
2007293443.tif 000004
【図３】
2007293443.tif 000005
【図４】
2007293443.tif 000006
【図５】
2007293443.tif 000007
【図６】
2007293443.tif 000008
【図７】
2007293443.tif 000009
【図８】
2007293443.tif 000010
【図９】
2007293443.tif 000011
【図１０】
2007293443.tif 000012
【図１１】
2007293443.tif 000013