(57)【要約】【課題】  タグが埋め込まれた製品等の真贋判定を高い信頼性で行うことを可能にする真贋判定方法を提供する。【解決手段】  リーダ／ライタ２２を介して、ＲＦタグ４と真贋判定サーバ１２との間で通信が行われ、上記真贋判定用ＳＥＥＤを基にしてＲＦ(Radio Frequency)タグ４のワンタイムＩＤであるＯＴＩＤ（ＴＡＧ）が生成され、当該ＯＴＩＤ（ＴＡＧ）を用いた真贋判定が真贋判定サーバ１２によって行われる。そして、真贋判定サーバ１２は、上記真贋判定の結果をリーダライタ２２に送信する。ＲＦタグ４の認証が行われる度に、真贋判定用ＳＥＥＤを更新する。【選択図】  図１
2008293415.tif 000002
【特許請求の範囲】
【請求項１】
タグの真贋判定を行う真贋判定方法であって、
前記タグが、当該タグに記憶された真贋判定用シードを基に前記ワンタイムＩＤを生成するワンタイムＩＤ生成工程と、
前記ワンタイムＩＤ生成工程で生成された前記ワンタイムＩＤを前記タグからリーダが読み出してサーバに送信する通信工程と、
前記サーバが前記通信工程で受信したワンタイムＩＤを基に前記タグを認証する認証工程と、
前記サーバが前記認証工程の前記認証の結果を出力する出力工程と
を有する真贋判定方法。
【請求項２】
前記タグと前記サーバが同じ前記真贋判定用シードを記憶しており、
前記サーバが前記認証を行う度に、当該タグに記憶された前記真贋判定用シードを前記タグが更新すると共に、前記サーバに記憶された前記真贋判定用シードを前記サーバが更新するシード更新工程
をさらに有し、
前記認証工程において、前記サーバは、当該サーバに記憶された前記真贋判定用シードを用いて生成されたワンタイムＩＤを用いて前記タグを認証する
請求項１に記載の真贋判定方法。
【請求項３】
前記タグは、物品に略一体不可分に組み込まれている
請求項１または請求項２に記載の真贋判定方法。
【請求項４】
タグと通信を行う第１の通信手段と、
サーバと通信を行う第２の通信手段と、
前記第１の通信手段を介して前記タグから当該タグのワンタイムＩＤを読み出し、当該読み出したワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバによる前記ワンタイムＩＤを用いた前記タグの真贋判定処理に伴うデータ授受を前記第１の通信手段および前記第２の通信手段により中継する処理を行う処理回路と
を有する真贋判定用中継装置。
【請求項５】
中継装置を介してタグとデータ授受を行う通信手段と、
前記タグと同じ真贋判定用シードを記憶する記憶手段と、
前記記憶手段から読み出した真贋判定用シードを基に生成した照合用ワンタイムＩＤのリストのなかから、前記通信手段を介して受信した前記タグのワンタイムＩＤを検索して前記タグを認証し、当該認証の度に前記記憶手段に記憶された前記真贋判定用シードを更新する処理回路と
を有する真贋判定用サーバ。
【請求項６】
リーダが、タグから当該タグの真贋判定用シードを読み出すシード読み出し工程と、
前記リーダが、前記シード読み出し工程で読み出した真贋判定用シードを基に、前記タグのタグワンタイムＩＤを生成するタグワンタイムＩＤ生成工程と、
前記タグワンタイムＩＤ生成工程で生成した前記タグワンタイムＩＤと、前記リーダのリーダワンタイムＩＤとをサーバに送信する第１の通信工程と、
前記サーバが、前記第１の通信工程で受信した前記タグワンタイムＩＤを基に前記タグを認証し、前記第１の通信工程で受信した前記リーダワンタイムＩＤを基に前記リーダを認証する第１の認証工程と、
前記サーバが、前記第１の認証工程の前記認証で前記タグおよび前記リーダの双方が正当であると判断すると、当該サーバのサーバワンタイムＩＤをリーダに送信する第２の通信工程と、
前記リーダが、前記第２の通信工程で受信した前記サーバワンタイムＩＤを基に前記サーバを認証する第２の認証工程と、
前記タグが、前記サーバとの間で規定した演算をパスワードに施す演算工程と、
前記リーダが、前記第２の認証工程で前記サーバの正当性を確認すると、前記演算工程で演算された前記パスワードを前記タグから読み出し、当該読み出したパスワードおよびリーダワンタイムＩＤを前記サーバに送信する第３の通信工程と、
前記サーバが、前記第３の通信工程で受信した前記パスワードに前記演算に対応する演算を施して前記タグを認証し、前記第３の通信工程で受信した前記リーダワンタイムＩＤを基に前記リーダを認証する第３の認証工程と
を有する真贋判定方法。
【請求項７】
前記第１の認証工程で前記サーバが当該タグの前記認証を行う度に、前記タグに記憶された前記真贋判定用シードを前記リーダが更新し、前記サーバに記憶された前記真贋判定用シードを前記サーバが更新する真贋判定用シード更新工程と、
前記リーダが、当該リーダに記憶されたリーダ認証用シードを基に前記リーダワンタイムＩＤを生成するリーダワンタイムＩＤ生成工程と、
前記第１の認証工程で前記サーバが当該リーダの前記認証を行う度に、当該リーダに記憶された前記リーダ認証用シードを前記リーダが更新し、前記サーバに記憶された前記リーダ認証用シードを前記サーバが更新するリーダシード更新工程と
をさらに有し、
前記第１の認証工程において、前記サーバは、当該サーバに記憶された前記真贋判定用シードを用いて生成されたタグワンタイムＩＤを用いて前記タグを認証し、当該サーバに記憶された前記リーダ認証用シードを用いて生成されたリーダワンタイムＩＤを用いて前記リーダを認証する
請求項６に記載の真贋判定方法。
【請求項８】
タグと通信を行う第１の通信手段と、
サーバと通信を行う第２の通信手段と、
リーダ認証用シードを記憶する記憶手段と、
前記第１の通信手段を介して前記タグから当該タグの真贋判定用シードを読み出し、当該読み出した真贋判定用シードを基に前記タグのタグワンタイムＩＤを生成し、前記リーダ認証用シードを基にリーダワンタイムＩＤを生成し、前記タグワンタイムＩＤおよび前記リーダワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバからの応答に応じて、前記第１の通信手段を介して前記タグから当該タグのパスワードを読み出し、当該読み出したパスワードを前記第２の通信手段を介して前記サーバに送信する処理回路と
を有する真贋判定用中継装置。
【請求項９】
タグのリーダと通信を行う通信手段と、
真贋判定用シードおよびリーダ認証用シードを記憶する記憶手段と、
前記真贋判定用シードを基に生成した照合用タグワンタイムＩＤのリストのなかから前記通信手段が受信したタグワンタイムＩＤを検索して前記タグを認証し、当該認証の度に前記真贋判定用シードを更新し、リーダ認証用シードを基に生成した照合用リーダワンタイムＩＤのリストから前記通信手段が受信したリーダワンタイムＩＤを検索して前記リーダを認証し、当該認証の度に前記リーダ認証用シードを更新し、前記タグおよび前記リーダの双方の正当性を確認した後に、前記タグとの間で規定された演算が施された前記通信手段が受信したパスワードに前記演算に対応する演算を施し、当該演算後の前記パスワードに対応するエントリを検索して前記パスワードの正当性を確認する処理を行う処理回路と
を有する真贋判定用サーバ。
【請求項１０】
タグの真贋判定を行う真贋判定方法であって、
リーダが前記タグから真贋判定用シードを読み出す読み出し工程と、
前記リーダが、前記読み出し工程で読み出した真贋判定用シードを基に、前記タグのワンタイムＩＤを生成するワンタイムＩＤ生成工程と、
前記リーダが、前記ワンタイムＩＤ生成工程で生成した前記ワンタイムＩＤをサーバに送信する通信工程と、
前記サーバが、前記通信工程で受信したワンタイムＩＤを基に前記タグを認証する認証工程と、
前記サーバが、前記認証工程の前記認証の結果を出力する出力工程と
を有する真贋判定方法。
【請求項１１】
前記リーダが、前記認証を前記サーバが行う度に、前記真贋判定用シードを更新し、当該更新した真贋判定用シードを前記タグに書き込む書き込み工程と、
前記サーバが、前記認証を行う度に、当該サーバに記憶された前記真贋判定用シードを更新する更新工程と
をさらに有し、
前記認証工程において、前記サーバは、当該サーバに記憶された前記真贋判定用シードを用いて生成されたワンタイムＩＤを用いて前記タグを認証する
請求項１０に記載の真贋判定方法。
【請求項１２】
タグと通信を行う第１の通信手段と、
サーバと通信を行う第２の通信手段と、
前記第１の通信手段を介して前記タグから当該タグの真贋判定用シードを読み出し、当該読み出した真贋判定用シードを基に前記タグのワンタイムＩＤを生成し、当該ワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバによる前記ワンタイムＩＤの認証が行われる度に前記真贋判定用シードを更新し、当該更新した真贋判定用シードを前記第１の通信手段を介して前記タグに書き込む処理を行う処理回路と
を有する真贋判定用中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タグを用いて物品等の真贋を判定する真贋判定方法、並びにそれに用いられる真贋判定用中継装置および真贋判定用サーバに関する。
【背景技術】
【０００２】
ブランド品といわれる様々な商品の偽造品が蔓延している。それらブランド品の情報を知りえた特定の者以外は、正確かつ即座にその真偽を判定するのは非常に困難である。
ところで、ブランド品にＲＦタグを埋め込み、このＲＦタグに記憶したＩＤを基に、ブランド品を管理するシステムが提案されている。また、このようなシステムを用いて、ブランド品の真贋を判定することも考えられている。
【０００３】
【特許文献１】特開2005-38367号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来のシステムにおいて、ＲＦタグに固定のＩＤを記憶し、そのＩＤを基にブランド品の真贋判定を行うと、固定のＩＤを盗んでコピーを作られた場合に、コピー品を真正な商品と誤って判定してしまうという問題がある。また、このような固定のＩＤを用いた場合には、一つの真正な商品から、多数のコピー品を容易に製造できてしまう。
【０００５】
本発明はかかる事情に鑑みてなされたものであり、その目的は、タグが埋め込まれた製品等の真贋判定を高い信頼性で行うことを可能にする真贋判定方法、真贋判定用中継装置および真贋判定用サーバを提供することにある。
【課題を解決するための手段】
【０００６】
上述した目的を達成するために、第１の観点の本発明の真贋判定方法は、タグの真贋判定を行う真贋判定方法であって、前記タグが、当該タグに記憶された真贋判定用シードを基に前記ワンタイムＩＤを生成するワンタイムＩＤ生成工程と、前記ワンタイムＩＤ生成工程で生成された前記ワンタイムＩＤを前記タグからリーダが読み出してサーバに送信する通信工程と、前記サーバが前記通信工程で受信したワンタイムＩＤを基に前記タグを認証する認証工程と、前記サーバが前記認証工程の前記認証の結果を出力する出力工程とを有する。
【０００７】
第１の観点の発明では、タグに固定ＩＤを割り当てるのではなく、認証の度に更新されるワンタイムＩＤを割り当てる。そのため、ワンタイムＩＤが流出した場合でも、次に用いられる正当なワンタイムＩＤは、過去のワンタイムＩＤとは異なるため、真贋判定用シードを保持した正当なタグのみが正当なワンタイムＩＤを生成できる。そのため、真贋判定で真正と判定される不正なタグを大量に製造することはできない。
また、真贋判定用シードを基にしたワンタイムＩＤの生成はタグ内で行われ、リーダは、タグとサーバとの間でのデータ授受を中継するのみである。そのため、秘匿性の高い真贋判定用シードが、不正なリーダにより流出することを防止できる。
【０００８】
第２の観点の発明の真贋判定用中継装置は、タグと通信を行う第１の通信手段と、サーバと通信を行う第２の通信手段と、前記第１の通信手段を介して前記タグから当該タグのワンタイムＩＤを読み出し、当該読み出したワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバによる前記ワンタイムＩＤを用いた前記タグの真贋判定処理に伴うデータ授受を前記第１の通信手段および前記第２の通信手段により中継する処理を行う処理回路とを有する。
第２の観点の発明の真贋判定用中継装置は、第１の観点の発明において、リーダとして用いられる。
【０００９】
第３の観点の発明の真贋判定用サーバは、中継装置を介してタグとデータ授受を行う通信手段と、前記タグと同じ真贋判定用シードを記憶する記憶手段と、前記記憶手段から読み出した真贋判定用シードを基に生成した照合用ワンタイムＩＤのリストのなかから、前記通信手段を介して受信した前記タグのワンタイムＩＤを検索して前記タグを認証し、当該認証の度に前記記憶手段に記憶された前記真贋判定用シードを更新する処理回路とを有する。
第３の観点の発明の真贋判定用サーバは、第１の観点の発明において、サーバとして用いられる。
【００１０】
第４の観点の発明の真贋判定方法は、リーダが、タグから当該タグの真贋判定用シードを読み出すシード読み出し工程と、前記リーダが、前記シード読み出し工程で読み出した真贋判定用シードを基に、前記タグのタグワンタイムＩＤを生成するタグワンタイムＩＤ生成工程と、前記タグワンタイムＩＤ生成工程で生成した前記タグワンタイムＩＤと、前記リーダのリーダワンタイムＩＤとをサーバに送信する第１の通信工程と、前記サーバが、前記第１の通信工程で受信した前記タグワンタイムＩＤを基に前記タグを認証し、前記第１の通信工程で受信した前記リーダワンタイムＩＤを基に前記リーダを認証する第１の認証工程と、前記サーバが、前記第１の認証工程の前記認証で前記タグおよび前記リーダの双方が正当であると判断すると、当該サーバのサーバワンタイムＩＤをリーダに送信する第２の通信工程と、前記リーダが、前記第２の通信工程で受信した前記サーバワンタイムＩＤを基に前記サーバを認証する第２の認証工程と、前記タグが、前記サーバとの間で規定した演算をパスワードに施す演算工程と、前記リーダが、前記第２の認証工程で前記サーバの正当性を確認すると、前記演算工程で演算された前記パスワードを前記タグから読み出し、当該読み出したパスワードおよびリーダワンタイムＩＤを前記サーバに送信する第３の通信工程と、前記サーバが、前記第３の通信工程で受信した前記パスワードに前記演算に対応する演算を施して前記タグを認証し、前記第３の通信工程で受信した前記リーダワンタイムＩＤを基に前記リーダを認証する第３の認証工程とを有する。
【００１１】
第４の観点の発明では、リーダがタグから真贋判定用シードを読み出し、それを基にタグのワンタイムＩＤを生成する。そのため、タグには、ワンタイムＩＤ生成用の処理機能を持たせる必要がない。
また、第４の観点の発明では、リーダとサーバとの間の通信で、リーダおよびタグと、サーバとの相互認証に成功すると、タグに記憶されたパスワードにタグ内で演算を施し、それをサーバで認証する。そのため、当該演算内容をタグとサーバ間でのみ特定できるようにすることで、不正なリーダを用いて不正な認証が行われることを防止できる。
【００１２】
第５の観点の発明の真贋判定用中継装置は、タグと通信を行う第１の通信手段と、サーバと通信を行う第２の通信手段と、リーダ認証用シードを記憶する記憶手段と、前記第１の通信手段を介して前記タグから当該タグの真贋判定用シードを読み出し、当該読み出した真贋判定用シードを基に前記タグのタグワンタイムＩＤを生成し、前記リーダ認証用シードを基にリーダワンタイムＩＤを生成し、前記タグワンタイムＩＤおよび前記リーダワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバからの応答に応じて、前記第１の通信手段を介して前記タグから当該タグのパスワードを読み出し、当該読み出したパスワードを前記第２の通信手段を介して前記サーバに送信する処理回路とを有する。
第５の観点の発明の真贋判定用中継装置は、第４の観点の発明において、リーダとして用いられる。
【００１３】
第６の観点の発明の真贋判定用サーバは、タグのリーダと通信を行う通信手段と、真贋判定用シードおよびリーダ認証用シードを記憶する記憶手段と、前記真贋判定用シードを基に生成した照合用タグワンタイムＩＤのリストのなかから前記通信手段が受信したタグワンタイムＩＤを検索して前記タグを認証し、当該認証の度に前記真贋判定用シードを更新し、リーダ認証用シードを基に生成した照合用リーダワンタイムＩＤのリストから前記通信手段が受信したリーダワンタイムＩＤを検索して前記リーダを認証し、当該認証の度に前記リーダ認証用シードを更新し、前記タグおよび前記リーダの双方の正当性を確認した後に、前記タグとの間で規定された演算が施された前記通信手段が受信したパスワードに前記演算に対応する演算を施し、当該演算後の前記パスワードに対応するエントリを検索して前記パスワードの正当性を確認する処理を行う処理回路とを有する。
第６の観点の発明の真贋判定用サーバは、第４の観点の発明において、サーバとして用いられる。
【００１４】
第７の観点の発明の真贋判定方法は、タグの真贋判定を行う真贋判定方法であって、リーダが前記タグから真贋判定用シードを読み出す読み出し工程と、前記リーダが、前記読み出し工程で読み出した真贋判定用シードを基に、前記タグのワンタイムＩＤを生成するワンタイムＩＤ生成工程と、前記リーダが、前記ワンタイムＩＤ生成工程で生成した前記ワンタイムＩＤをサーバに送信する通信工程と、前記サーバが、前記通信工程で受信したワンタイムＩＤを基に前記タグを認証する認証工程と、前記サーバが、前記認証工程の前記認証の結果を出力する出力工程とを有する。
【００１５】
第８の観点の発明の真贋判定用中継装置は、タグと通信を行う第１の通信手段と、サーバと通信を行う第２の通信手段と、前記第１の通信手段を介して前記タグから当該タグの真贋判定用シードを読み出し、当該読み出した真贋判定用シードを基に前記タグのワンタイムＩＤを生成し、当該ワンタイムＩＤを前記第２の通信手段を介して前記サーバに送信し、前記サーバによる前記ワンタイムＩＤの認証が行われる度に前記真贋判定用シードを更新し、当該更新した真贋判定用シードを前記第１の通信手段を介して前記タグに書き込む処理を行う処理回路とを有する。
【発明の効果】
【００１６】
本発明によれば、タグが埋め込まれた製品等の真贋判定を高い信頼性で行うことを可能にする真贋判定方法、真贋判定用中継装置および真贋判定用サーバを提供することができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施形態に係る商品真贋判定システムについて説明する。
＜第１実施形態＞  
図１は、本実施形態の商品真贋判定システム１の概念図である。
第１実施形態は、第１〜第３の観点の発明の実施形態である。
ここで、ＲＦタグ４が本発明のタグの一例であり、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）が本発明のワンタイムＩＤの一例であり、真贋判定サーバ１２が本発明のサーバ（真贋判定用サーバ）の一例であり、リーダライタ２２が本発明の中継装置（真贋判定用中継装置）の一例である。
【００１８】
図１に示すように、商品真贋判定システム１では、商品２の輸出前にＲＦタグ４の設定動作を行い、商品２の輸出後に税関２０等において真贋判定動作を行う。
図１に示すように、商品２の輸出前の設定動作において、ＳＥＥＤ発行サーバ１０が、真贋判定用ＳＥＥＤを生成し、これをＲＦタグ４に書き込む。
また、ＳＥＥＤ発行サーバ１０は、上記発行した真贋判定用ＳＥＥＤを真贋判定サーバ１２に送信して登録する。
そして、ＲＦタグ４を商品２に埋め込んだ後に、商品２が輸出、輸出等される。
【００１９】
その後、輸出先の国の税関２０等において、リーダ／ライタ２２を介して、例えば、ＲＦタグ４と真贋判定サーバ１２との間で通信が行われ、上記真贋判定用ＳＥＥＤを基にしてＲＦ(Radio Frequency)タグ４のワンタイムＩＤであるＯＴＩＤ(One Time ID)（ＴＡＧ）が生成され、当該ＯＴＩＤ（ＴＡＧ）を用いた真贋判定が真贋判定サーバ１２によって行われる。そして、真贋判定サーバ１２は、上記真贋判定の結果をリーダライタ２２に送信する。
商品真贋判定システム１は、真贋判定サーバ１２においてＲＦタグ４の認証が行われる度に、真贋判定用ＳＥＥＤを更新する。
【００２０】
このように、商品真贋判定システム１では、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）を用いてＲＦタグ４の認証を行い、当該ＯＴＩＤ（ＴＡＧ）を認証の度に更新するため、あるタイミングでのＯＴＩＤ（ＴＡＧ）を不正にコピーしても、当該ＯＴＩＤ（ＴＡＧ）を用いたその後の認証は成功しない。そのため、ＲＦタグ４を組み込んだ大量の不正なコピー商品が作られた場合に、その真贋判定を高い信頼性で行うことができる。
第１実施形態の商品真贋判定システム１では、ＲＦタグ４がＯＴＩＤ（ＴＡＧ）の生成（演算）機能を備えており、リーダライタ２２は基本的にＲＦタグ４と真贋判定サーバ１２との間でのデータ受け渡しを中継するものである。
【００２１】
以下、図１に示す各構成要素を説明する。
［ＲＦタグ４］
図２は、図１に示すＲＦタグ４の構成図である。
図２に示すように、ＲＦタグ４は、例えば、処理回路４１、ＲＯＭ(Read Only
Memory)４２、ＲＡＭ(Random Access Memory)４３、データ送信部４５およびデータ受信部４６がデータバス４０を介して接続された構成を有している。
ＲＦタグ４は、例えば、耐タンパ性のモジュールとして構成される。
処理回路４１は、ＲＯＭ４２に格納されているプログラムＰＲＧ−Ｔを実行してＲＦタグ４全体の動作を制御する。
例えば、処理回路４１は、ＳＥＥＤ発行サーバ１０やリーダライタ２２から輻射されている電磁波がアンテナ４９において受信されたとき、それに応じて、当該真贋判定用ＳＥＥＤを基にＲＦタグ４のＯＴＩＤ（ＴＡＧ）を生成および読み出す等の処理を行う。
【００２２】
処理回路４１は、プログラムＰＲＧ−Ｔを実行することで、図２に示す乱数発生部４１１、ワンタイムＩＤ生成部４１２、暗号処理部４１３、共通鍵更新部４１４、通信処理部４１５およびデータ管理部４１６の機能を実現する。
【００２３】
乱数発生部４１１は、演算により疑似乱数を生成する処理部である。
ワンタイムＩＤ生成部４１２は、タグ乱数およびサーバ乱数を引数とした一方向性関数の値に基づきワンタイムＩＤを生成する処理部である。本実施形態では、一方向性関数として、暗号鍵を使用せずにダイジェストを生成するＭＤ５などのハッシュ関数が使用される。
暗号処理部４１３は、可変共通鍵で暗号化および復号化を行う処理部である。
共通鍵更新部４１４は、可変共通鍵、タグ乱数およびサーバ乱数を引数とした一方向性関数の値に基づき可変共通鍵を更新する処理部である。本実施形態では、一方向性関数として、暗号鍵を使用せずにダイジェストを生成するＭＤ５などのハッシュ関数が使用される。
通信処理部４１５は、データ送信部４５およびデータ受信部４６を制御する。
データ管理部４１６は、ＲＯＭ４２およびＲＡＭ４３へのアクセスを管理する処理部である。
【００２４】
ＲＡＭ４３には、真贋判定用ＳＥＥＤ等の相互認証において必要となる情報、トランザクション処理において必要となる情報などが適宜記憶される。
【００２５】
図２に示すように、ＲＦタグ４は、さらにアンテナ４９、コンデンサ５０、インタフェース５１、ＢＰＳＫ変調部５２およびＢＰＳＫ復調部５３を有する。
アンテナ４９とコンデンサ５０により構成されるＬＣ回路は、近傍に配置されたＳＥＥＤ発行サーバ１０あるいはリーダライタ２２から輻射される所定の周波数の電磁波と共振する。
インタフェース５１は、例えば、ＡＳＫ復調回路６１、電圧レギュレータ６２、発振回路６３およびＡＳＫ変調回路６４を有する。
インタフェース５１は、ＡＳＫ復調回路６１において、アンテナ４９を介して受信した変調波（ＡＳＫ変調波）を包絡線検波して復調し、復調後のデータをＢＰＳＫ（Binary Phase Shift Keying）復調部５３に出力する。
【００２６】
また、インタフェース５１は、アンテナ４９において励起された交流磁界をＡＳＫ復調回路６１により整流し、それを電圧レギュレータ６２において安定化し、各部に直流電源として供給する。ＳＥＥＤ発行サーバ１０やリーダライタ２２から輻射される電磁波の電力は、後述するようにＲＦタグ４に必要な電力を賄う磁界を発生させるように調整されている。
【００２７】
また、インタフェース５１の発振回路６３はＰＬＬ（Phase Locked Loop）回路を内蔵し、受信信号のクロック周波数と同一の周波数のクロック信号を発生する。
さらに、インタフェース５１は、所定の情報をリーダライタ２２に送信する場合、ＢＰＳＫ変調部５２から供給されるデータに対応して、例えば、所定のスイッチング素子（図示せず）をオン／オフさせ、スイッチング素子がオン状態であるときだけ、所定の負荷をアンテナ４９に並列に接続させることにより、アンテナ４９の負荷を変動させる。
【００２８】
ＡＳＫ変調回路６４は、アンテナ４９の負荷の変動により、ＢＰＳＫ変調部５２より供給されたＢＰＳＫ変調波をＡＳＫ変調し、その変調成分を、アンテナ４９を介してリーダライタ２２等に送信する。
【００２９】
ＢＰＳＫ復調部５３は、ＡＳＫ復調回路６１で復調されたデータがＢＰＳＫ変調されている場合、図示せぬＰＬＬ回路から供給されるクロック信号に基づいて、そのデータの復調（マンチェスターコードのデコード）を行い、復調したデータをデータ受信部４６に出力する。
データ受信部４６は、供給されてきたデータを処理回路４１に適宜出力する。処理回路４１は当該データをＲＡＭ４３に記憶させる。
ＲＦタグ４から送信されるデータは、処理回路４１にＲＡＭ４３から読み出され、データ送信部４５に供給される。
ＢＰＳＫ変調部５２は、データ送信部４５から供給されてきたデータにＢＰＳＫ変調（マンチェスターコードへのコーディング）を行い、それをＡＳＫ変調回路６４に出力する。
【００３０】
上述した例では、ＲＦタグ４として、電磁波の伝達方式として電磁誘導方式を採用した場合を例示したが、ＲＦタグ４は、アンテナで電磁波をやりとりし、エネルギ・信号を伝達する電波方式を採用してもよい。また、上述した例では、ＲＦタグ４がパッシブタイプのものを例示したが、アクティブタイプでもよい。
さらに、上述した例では、ＲＦタグ４とリーダライタ２２およびＳＥＥＤ発行サーバ１０との間で無線により通信する例について説明したが、有線の通信を行うようにしてもよい。
【００３１】
［ＳＥＥＤ発行サーバ１０］
ＳＥＥＤ発行サーバ１０は、商品２の輸出前にＲＦタグ４に真贋判定用ＳＥＥＤを書き込むと共に、真贋判定用ＳＥＥＤを真贋判定サーバ１２に登録するために用いられる。
【００３２】
図３は、図１に示すＳＥＥＤ発行サーバ１０の構成図である。
図３に示すように、ＳＥＥＤ発行サーバ１０は、例えば、処理回路８１、ＲＯＭ８３、ＲＡＭ８５、ネットワークＩ／Ｆ８７および信号処理回路９１がデータバス８２を介して相互に接続されている。
【００３３】
処理回路８１は、ＲＯＭ８３に格納されているプログラムＰＲＧ−Ｓ１を実行し、ＳＥＥＤ発行サーバ１０の動作を統括的に制御する。例えば、処理回路８１は、ＲＦタグ４に送信するコマンドやデータを生成し、それを、データバス８２を介して信号処理回路９１に出力したり、ＲＦタグ４から送信されてきたデータの認証処理などを行ったりする。
具体的には、処理回路８１は、プログラムＰＲＧ−Ｓ１を実行して、図３に示すように、ＳＥＥＤ発生部８１１、ＳＥＥＤ書き込み部８１２およびＳＥＥＤ登録部８１３の機能を実現する。
ＲＡＭ８５には、ＳＥＥＤ発生部８１１によって生成された各ＲＦタグ４の真贋判定用ＳＥＥＤが記憶されている。ここで、真贋判定用ＳＥＥＤがＲＦタグ４および真贋判定サーバ１２においてＲＦタグ４のＯＴＩＤ（ＴＡＧ）を生成するために用いられる。
【００３４】
ネットワークＩ／Ｆ８７は、図１に示す真贋判定サーバ１２との間でデータの入出力を行うためのインタフェースである。真贋判定サーバ１２との間の通信は、例えば、インターネットなどのネットワークプロトコルを用いて行われる。
【００３５】
信号処理回路９１は、受信データが復調部９５から供給されてきたとき、そのデータに対して、例えば、ＢＰＳＫ復調（マンチェスターコードのデコード）などを施し、取得したデータを処理回路８１に供給する。
また、信号処理回路９１は、ＲＦタグ４等に送信するコマンドがデータバス８２を介して処理回路８１から供給されてきたとき、そのコマンドにＢＰＳＫ変調（マンチェスターコードへのコーディング）を施し、取得したデータを変調部９３に出力する。
【００３６】
変調部９３は、図示しない発振回路（ＯＳＣ）から供給される所定の周波数の搬送波を、信号処理回路９１より供給されるデータに基づいて、ＡＳＫ変調し、生成された変調波を、電磁波としてアンテナ９７から出力する。
また、復調部９５は、アンテナ９７を介して取得した変調波（ＡＳＫ変調波）を復調し、復調されたデータを信号処理回路９１に出力する。
【００３７】
アンテナ９７は、所定の電磁波を輻射し、それに対する負荷の変化に基づいて、ＲＦタグ４が近接されたか否かを検出する。そして、例えば、ＲＦタグ４が近接されたとき、アンテナ９７は、ＲＦタグ４との間で各種のデータを送受信する。
【００３８】
［真贋判定サーバ１２］
真贋判定サーバ１２は、税関２０等に配置されたリーダライタ２２と通信を行い、リーダライタ２２に近接して配置されたＲＦタグ４の正当性を認証するために用いられる。
【００３９】
図４は、図１に示す真贋判定サーバ１２の構成図である。
図４に示すように、真贋判定サーバ１２は、例えば、処理回路１６１、ＲＯＭ１６３、ＲＡＭ１６５およびネットワークＩ／Ｆ１６７がデータバス１６０を介して相互に接続されている。
【００４０】
処理回路１６１は、ＲＯＭ１６３に格納されているプログラムＰＲＧ−Ｓ２を実行し、例えば、リーダライタ２２を介してＲＦタグ４から送信されてきた応答データや、ＳＥＥＤ発行サーバ１０から入力した制御信号に基づいて、各種の処理を実行する。例えば、処理回路１６１は、ＲＦタグ４に送信するデータやコマンドを生成する。
処理回路１６１は、上記プログラムＰＲＧ−Ｓ２を実行し、ＲＦタグ４の正当性を認証（商品２の真贋性を判定）する真贋判定の機能を実現する。
【００４１】
処理回路１６１は、プログラムＰＲＧ−Ｓ２を実行することで、図４に示す乱数発生部１６１１、ワンタイムＩＤ生成部１６１２、暗号処理部１６１３、共通鍵更新部１６１４、通信処理部１６１５およびデータ管理部１６１６の機能を実現する。
【００４２】
乱数発生部１６１１は、演算により疑似乱数を生成する処理部である。
ワンタイムＩＤ生成部１６１２は、タグ（ＲＷ）乱数およびサーバ乱数を引数とした一方向性関数の値に基づきワンタイムＩＤを生成する処理部である。本実施形態では、一方向性関数として、暗号鍵を使用せずにダイジェストを生成するＭＤ５などのハッシュ関数が使用される。
暗号処理部１６１３は、可変共通鍵で暗号化および復号化を行う処理部である。
共通鍵更新部１６１４は、可変共通鍵、タグ（ＲＷ）乱数およびサーバ乱数を引数とした一方向性関数の値に基づき可変共通鍵を更新する処理部である。本実施形態では、一方向性関数として、暗号鍵を使用せずにダイジェストを生成するＭＤ５などのハッシュ関数が使用される。
通信処理部１６１５は、ＳＥＥＤ発行サーバ１０およびリーダライタ２２との間の通信を制御する。
データ管理部１６１６は、ＲＯＭ１６３およびＲＡＭ１６５へのアクセスを管理する処理部である。
【００４３】
ＲＡＭ１６５には、真贋判定処理を行う前に、前述した真贋判定用ＳＥＥＤが書き込まれている。
【００４４】
ネットワークＩ／Ｆ１６７は、図１に示すリーダライタ２２およびＳＥＥＤ発行サーバ１０との間でデータの入出力を行うためのインタフェースである。
【００４５】
［リーダ／ライタ２２］
リーダライタ２２は、ＲＦタグ４と近距離通信を行うと共に、真贋判定サーバ１２と通信を行う。すなわち、ＲＦタグ４と真贋判定サーバ１２との間でのデータ授受を中継する。
【００４６】
図５は、図１に示すリーダライタ２２の構成図である。
リーダライタ２２は、処理回路２１１、ＲＯＭ２１２、ＲＡＭ２１３、ネットワークＩ／Ｆ２１４、信号処理回路２１６および表示部２２０を有し、これがデータバス２１５を介して接続されている。
【００４７】
処理回路２１１は、ＲＯＭ２１２に格納されているプログラムＰＲＧ−ＲＷを実行し、例えば、ＲＦタグ４から送信されてきた応答データや、真贋判定サーバ１２等から供給されてきた制御信号に基づいて、各種の処理を実行する。例えば、処理回路２１１は、ＲＦタグ４に送信するコマンドを生成し、それを、データバス２１５を介して信号処理回路２１６に出力したり、ＲＦタグ４から送信されてきたデータの処理などを行う。
【００４８】
ネットワークＩ／Ｆ２１４は、真贋判定サーバ１２から供給されてきたデータを、データバス２１５を介して処理回路２１１に供給したり、処理回路２１１から、データバス２１５を介して供給されてきたデータを真贋判定サーバ１２に送信する。
【００４９】
信号処理回路２１６は、ＲＦタグ４からの応答データが復調部２０４から供給されてきたとき、そのデータに対して、例えば、BPSK復調（マンチェスターコードのデコード）などを施し、取得したデータを処理回路２１１に供給する。
また、信号処理回路２１６は、ＲＦタグ４に送信するコマンドがデータバス２１５を介して供給されてきたとき、そのコマンドにＢＰＳＫ変調を施し、取得したデータを変調部２０２に出力する。
【００５０】
変調部２０２は、発振回路（図示せず）から供給される所定の周波数の搬送波を、信号処理回路２１６より供給されるデータに基づいて、ＡＳＫ変調し、生成された変調波を、電磁波としてアンテナ２０５から出力する。
一方、復調部２０４は、アンテナ２０５を介して取得した変調波（ＡＳＫ変調波）を復調し、復調されたデータを信号処理回路２１６に出力する。
【００５１】
アンテナ２０５は、所定の電磁波を輻射し、それに対する負荷の変化に基づいて、ＲＦタグ４が近接されたか否かを検出する。そして、例えば、ＲＦタグ４が近接されたとき、アンテナ２０５は、ＲＦタグ４と各種のデータを送受信する。
【００５２】
以下、図１に示す商品真贋判定システム１の各種の動作例を説明する。
［商品輸出前の動作例］
以下、商品２を輸出する前に行われるＲＦタグ４への設定動作について説明する。
図６は、商品２を輸出する前に行われるＲＦタグ４への設定動作について説明するためのフローチャートである。
図３に示すＳＥＥＤ発行サーバ１０の処理回路８１によって実現されるＳＥＥＤ発生部８１１が、真贋判定用ＳＥＥＤを生成し、これをＲＡＭ８５に書き込む（ステップＳＴ１１）。
【００５３】
次に、処理回路８１によって実現されるＳＥＥＤ書き込み部８１２が、ＲＡＭ８５から真贋判定用ＳＥＥＤを読み出し、これを図３に示す信号処理回路９１および変調回路９３で変調し、アンテナ９７を介してＲＦタグ４に送信する。
図２に示すＲＦタグ４は、ＳＥＥＤ発行サーバ１０が送信した上記真贋判定用ＳＥＥＤを、アンテナ４９を介して受信し、これをＡＳＫ復調回路６１およびＢＰＳＫ復調部５３で復調し、データ受信部４６によってＲＡＭ４３に書き込まれる（ステップＳＴ１２）。これにより、ＲＦタグ４がワンタイムＩＤを生成可能な状態に設定される。
【００５４】
次に、業者は、ＲＦタグ４を商品２に取り外し困難な状態で埋め込む（ステップＳＴ１３）。
次に、図３に示すＳＥＥＤ発行サーバ１０の処理回路８１によって実現されるＳＥＥＤ登録部８１３は、ＲＡＭ８５から読み出した真贋判定用ＳＥＥＤを、ネットワークＩ／Ｆ８７を介して真贋判定サーバ１２に送信する。
真贋判定サーバ１２は、図４に示すネットワークＩ／Ｆ１６７を介して、上記真贋判定用ＳＥＥＤを受信し、これをＲＡＭ１６５に書き込む（ステップＳＴ１４）。これにより、真贋判定サーバ１２は、ＲＦタグ４をワンタイムＩＤを用いて認証可能な状態になる。
業者は、商品２を輸出や出荷等する（ステップＳＴ１５）。
【００５５】
［商品輸出（税関通過）後の真贋判定動作］
以下、商品輸出後の真贋判定動作を説明する。
図７は、商品輸出後の真贋判定動作を説明するためのフローチャートである。
例えば、税関２０等において、ＲＦタグ４とリーダライタ２２とが近距離に配置される。
ＲＦタグ４は、リーダライタ２２の正当性を認証する（ステップＳＴ２１）。このとき、図２に示すＲＦタグ４の処理回路４１は、ＲＡＭ４３から読み出した所定の秘密鍵・乱数等を用いてチャレンジ・レスポンス方式でリーダライタ２２の正当性を認証する。
【００５６】
ＲＦタグ４がリーダライタ２２の正当性を確認すると、ＲＦタグ４と真贋判定サーバ１２とが、リーダライタ２２を介して通信を行い、ワンタイムＩＤによる相互認証を行う（ステップＳＴ２２，ＳＴ２３）。当該通信において図３に示すリーダライタ２２は、ＲＦタグ４から真贋判定サーバ１２への送信時には、アンテナ２０５、復調部２０４、信号処理回路２１６およびネットワークＩ／Ｆ２１４を介してデータを中継する。また、リーダライタ２２は、真贋判定サーバ１２からＲＦタグ４への送信時には、ネットワークＩ／Ｆ２１４、信号処理回路２１６、変調部２０２およびアンテナ２０５を介してデータを中継する。
【００５７】
上記相互認証において、図２に示すＲＦタグ４の処理回路４１は、ＲＡＭ４３から読み出した上記真贋判定用ＳＥＥＤを用いてＲＦタグ４のＯＴＩＤ（ＴＡＧ）を生成し、これをリーダライタ２２を介して真贋判定サーバ１２に送信する。そして、真贋判定サーバ１２の処理回路１６１は、受信したＯＴＩＤ（ＴＡＧ）を基にＲＦタグ４を認証する。具体的には、処理回路１６１は、上記受信したＯＴＩＤ（ＴＡＧ）が、ＲＡＭ１６５に記憶されているタグテーブル（リスト）内に存在すればＲＦタグ４が正当であると認証し、そうでない場合にはＲＦタグ４が不正であると判断する。
【００５８】
一方、上記相互認証においてに、図４に示す真贋判定サーバ１２の処理回路１６１は、ＲＡＭ１６５から読み出した上記真贋判定用ＳＥＥＤを基に、真贋判定サーバ１２のワンタイムＩＤであるＯＴＩＤ（ＳＥＶ）を生成し、これをリーダライタ２２を介してＲＦタグ４に送信する。そして、ＲＦタグ４の処理回路４１は、受信したＯＴＩＤ（ＳＥＶ）を基に、真贋判定サーバ１２を認証する。具体的には、処理回路４１は、上記受信したＯＴＩＤ（ＳＥＶ）が、ＲＡＭ４３に記憶されているサーバテーブル（リスト）内に存在すれば真贋判定サーバ１２が正当であると認証し、そうでない場合には真贋判定サーバ１２が不正であると判断する。
処理回路４１，１６１は、上記相互認証後に、真贋判定用ＳＥＥＤを更新する。また、真贋判定サーバ１２は、次にＲＦタグ４の認証を行う際に、更新後の真贋判定用ＳＥＥＤを基にＲＦタグ４の新たなＯＴＩＤ（ＴＡＧ）を生成し、これを用いてＲＡＭ１６５に記憶されているテーブル（リスト）のＯＴＩＤ（ＴＡＧ）を更新する。
当該ワンタイムＩＤを用いた認証処理については後に詳細に説明する。
【００５９】
真贋判定サーバ１２の処理回路１６１は、上記ＯＴＩＤ（ＴＡＧ）を用いた認証結果を基にＲＦタグ４（商品２）の真贋を判定する。
処理回路１６１は、上記真贋の判定結果を、ネットワークＩ／Ｆ１６７を介してリーダライタ２２に送信する（ステップＳＴ２４）。
図３に示すリーダライタ２２は、上記真贋判定結果をネットワークＩ／Ｆ２１４を介して受信してＲＡＭ２１３に表示する。また、その真贋判定結果を表示部２２０に表示する（ステップＳＴ２５）。なお、上記真贋判定結果をリーダライタ２２の表示部２２０に表示するのではなく、リーダライタ２２に接続された別の装置（コンピュータ）等の表示部に表示してもよい。
【００６０】
以上説明したように、商品真贋判定システム１では、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）を用いてＲＦタグ４の認証を行い、当該ＯＴＩＤ（ＴＡＧ）を認証の度に更新される。そのため、あるタイミングでのＯＴＩＤ（ＴＡＧ）をコピーしても、当該ＯＴＩＤ（ＴＡＧ）を用いたその後の認証は成功しない。そのため、ＲＦタグ４を組み込んだ大量の不正なコピー商品が製造された場合に、その真贋判定を高い信頼性で行うことができる。
【００６１】
また、商品真贋判定システム１では、真贋判定用ＳＥＥＤをＲＦタグ４内にセキュアな状態で記憶され、リーダライタ２２に提供されないため、不正なリーダライタ２２を用いた不正行為を防止でき、真贋判定の信頼性を高めることができる。
【００６２】
＜第２実施形態＞
第２実施形態は、第４〜６の観点の発明の実施形態である。
上述した第１実施形態では、ＲＦタグ４内でワンタイムＩＤの生成、並びに真贋判定サーバ１２の認証を行う場合を例示したが、本実施形態では、リーダライタ２２において、タグワンタイムＩＤの生成、並びに真贋判定サーバ１２の認証を行う。
また、本実施形態では、真贋判定サーバ１２が、リーダライタ２２の認証をリーダライタ２２のワンタイムＩＤを用いて行う。
さらに、本実施形態では、真贋判定サーバ１２は、タグワンタイムＩＤを用いたＲＦタグ４の認証に加えて、ＲＦタグ４のパスワードを用いたチャレンジ・レスポンス方式によるＲＦタグ４の認証も行う。
【００６３】
ここで、ＲＦタグ４が本発明のタグの一例であり、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）が本発明のタグワンタイムＩＤの一例であり、リーダライタ２２のＯＴＩＤ（ＲＷ）が本発明のリーダワンタイムＩＤの一例であり、真贋判定サーバ１２が本発明のサーバ（真贋判定用サーバ）の一例であり、リーダライタ２２が本発明の中継装置（真贋判定用中継装置）の一例である。
【００６４】
図８は、本発明の第２実施形態に係る商品真贋判定システムの動作例を説明するためのフローチャートである。
第２実施形態では、リーダライタ２２のＯＴＩＤ（ＲＷ）を用いた認証が行われ、図４および図５に点線で示すように、リーダライタ２２および真贋判定サーバ１２には、ＯＴＩＤ（ＲＷ）の生成に用いられるＲＷ認証用ＳＥＥＤが予め記憶されている。
また、図２に点線で示すように、ＲＦタグ４のＲＡＭ４３には、パスワードＰＷＤが記憶されている。
【００６５】
先ず、図５に示すリーダライタ２２の処理回路２１１がＲＦタグ４に真贋判定用ＳＥＥＤの読み出しコマンドを送信する。図２に示すＲＦタグ４の処理回路４１は、リーダライタ２２から受信した上記読み出しコマンドを基に、その時点での真贋判定用ＳＥＥＤをＲＡＭ４３から読み出し、これをリーダライタ２２に送信する（ステップＳＴ５１）。
図５に示すリーダライタ２２は、ＲＦタグ４から受信した真贋判定用ＳＥＥＤをＲＡＭ２１３に書き込む。
【００６６】
リーダライタ２２の処理回路２１１は、ＲＡＭ２１３から読み出した真贋判定用ＳＥＥＤを基に、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）を生成し、これをＲＡＭ２１３に書き込む（ステップＳＴ５２）。
また、処理回路２１１は、その時点でのＲＷ認証用ＳＥＥＤをＲＡＭ２１３から読み出し、これを用いて新たなＯＴＩＤ（ＲＷ）を生成し、これをＲＡＭ２１３に書き込む（ステップＳＴ５２）。
そして、処理回路２１１は、ＯＴＩＤ（ＲＷ）およびＯＴＩＤ（ＴＡＧ）をＲＡＭ２１３から読み出し、これをネットワークＩ／Ｆ２１４を介して真贋判定サーバ１２に送信する（ステップＳＴ５３）。
【００６７】
図４に示す真贋判定サーバ１２の処理回路１６１は、ステップＳＴ５３で受信したＯＴＩＤ（ＲＷ）を基に、リーダライタ２２を認証する（ステップＳＴ５４）。具体的には、処理回路１６１は、上記受信したＯＴＩＤ（ＲＷ）が、ＲＡＭ１６５に記憶されているＲＷテーブル（リスト）内に存在すればリーダライタ２２が正当であると認証し、そうでない場合にはリーダライタ２２が不正であると判断する。
また、処理回路１６１は、ステップＳＴ５３で受信したＯＴＩＤ（ＴＡＧ）を基にＲＦタグ４を認証する（ステップＳＴ５４）。具体的には、処理回路１６１は、上記受信したＯＴＩＤ（ＴＡＧ）が、ＲＡＭ１６５に記憶されているタグテーブル（リスト）内に存在すればＲＦタグ４が正当であると認証し、そうでない場合にはＲＦタグ４が不正であると判断する。
【００６８】
そして、真贋判定サーバ１２の処理回路２１１は、ステップＳＴ５４の認証において、リーダライタ２２およびＲＦタグ４の双方が正当であると判断すると（ステップＳＴ５５）、ＲＦタグ４のパスワードＰＷＤの読み出しコマンドをリーダライタ２２に送信する（ステップＳＴ５６）。このとき、処理回路２１１は、真贋判定サーバ１２のワンタイムＩＤであるＯＴＩＤ（ＳＥＶ）を生成し、これをリーダライタ２２に送信する（ステップＳＴ５６）。
【００６９】
図５に示すリーダライタ２２の処理回路２１１は、ステップＳＴ５６で真贋判定サーバ１２から受信したＯＴＩＤ（ＳＥＶ）を基に、真贋判定サーバ１２の認証を行う（ステップＳＴ５７）。具体的には、処理回路２１１は、上記受信したＯＴＩＤ（ＳＥＶ）が、ＲＡＭ２１３に記憶されているサーバテーブル（リスト）内に存在すれば真贋判定サーバ１２が正当であると認証し、そうでない場合には真贋判定サーバ１２が不正であると判断する。
【００７０】
リーダライタ２２の処理回路２１１は、ステップＳＴ５７の認証において、真贋判定サーバ１２の正当性を確認すると（ステップＳＴ５８）、ＲＦタグ４にパスワードの読み出しコマンドを送信する（ステップＳＴ５９）。図２に示すＲＦタグ４の処理回路４１は、リーダライタ２２から上記読み出しコマンドを受けると、ＲＡＭ４３からパスワードＰＷＤを読み出し、これに真贋判定サーバ１２との間で予め規定したチャレンジ・レスポンス方式の演算（例えば、乱数発生・暗号化処理）を施す（ステップＳＴ６０）。
そして、ＲＦタグ４の処理回路４１は、上記演算後のパスワードＰＷＤ（ＴＡＧ）を、リーダライタ２２に送信する（ステップＳＴ６０）。
図５に示すリーダライタ２２は、ＲＦタグ４から受信したパスワードＰＷＤ（ＴＡＧ）をＲＡＭ２１３に書き込む。
【００７１】
リーダライタ２２の処理回路２１１は、その時点でのＲＷ認証用ＳＥＥＤを用いて新たなＯＴＩＤ（ＲＷ）を生成し、これをＲＡＭ２１３に書き込む。
そして、処理回路２１１は、ＯＴＩＤ（ＲＷ）と上記パスワードＰＷＤ（ＴＡＧ）とをＲＡＭ２１３から読み出し、これをネットワークＩ／Ｆ２１４を介して真贋判定サーバ１２に送信する（ステップＳＴ６１）。
図４に示す真贋判定サーバ１２の処理回路１６１は、ステップＳＴ６１で受信したＯＴＩＤ（ＲＷ）を基に、リーダライタ２２を認証する。具体的には、処理回路１６１は、上記受信したＯＴＩＤ（ＲＷ）が、ＲＡＭ１６５に記憶されているＲＷテーブル（リスト）内に存在すればリーダライタ２２が正当であると認証し、そうでない場合にはリーダライタ２２が不正であると判断する。
【００７２】
また、処理回路１６１は、ステップＳＴ６１で受信したパスワードＰＷＤ（ＴＡＧ）を基にＲＦタグ４を認証する（ステップＳＴ６２）。具体的には、処理回路１６１は、ステップＳＴ６１で受信したパスワードＰＷＤ（ＴＡＧ）に上記チャレンジ・レスポンス方式に対応した演算を施し、演算後のパスワードが、例えば、ステップＳＴ５４におけるＲＦタグ４の認証で用いられたＯＴＩＤ（ＴＡＧ）と対応付けられてＲＡＭ１６５に記憶されているパスワードＰＷＤとして登録されているかを判断し、登録されていれば、ＲＦタグ４が正当であると認証し、そうでない場合にはＲＦタグ４が不正であると判断する。
【００７３】
上述した処理において、ＲＦタグ４および真贋判定サーバ１２が記憶する真贋判定用ＳＥＥＤは、真贋判定サーバ１２においてＲＦタグ４が認証される度に更新される。また、真贋判定サーバ１２は、次にＲＦタグ４の認証を行う際に、更新後の真贋判定用ＳＥＥＤを基にＲＦタグ４の新たなＯＴＩＤ（ＴＡＧ）を生成し、これを用いてＲＡＭ１６５に記憶されているタグテーブル（リスト）のＯＴＩＤ（ＴＡＧ）を更新する。
同様に、リーダライタ２２および真贋判定サーバ１２が記憶するＲＷ判定用ＳＥＥＤは、真贋判定サーバ１２においてリーダライタ２２が認証される度に更新される。また、真贋判定サーバ１２は、次にリーダライタ２２の認証を行う際に、更新後のＲＷ判定用ＳＥＥＤを基にリーダライタ２２の新たなＯＴＩＤ（ＲＷ）を生成し、これを用いてＲＡＭ１６５に記憶されているＲＷテーブル（リスト）のＯＴＩＤ（ＲＷ）を更新する。
【００７４】
以上説明したように、第２実施形態の商品真贋判定システムでは、リーダライタ２２においてＯＴＩＤ（ＴＡＧ）の生成、並びにＯＴＩＤ（ＳＥＶ）の認証を行い、ＲＦタグ４においてはパスワードＰＷＤに対してのチャレンジ・レスポンス対応の演算を行うのみである。そのため、ＲＦタグ４の処理回路４１に要求される処理能力を低くできる。
また、第２実施形態の商品真贋判定システムでは、真贋判定サーバ１２がＯＴＩＤ（ＲＷ）を用いてリーダライタ２２の認証を行う。そのため、不正なリーダライタ２２の使用を排除でき、真贋判定の信頼性を高めることができる。
また、上述した第２実施形態の商品真贋判定システムでは、真贋判定サーバ１２は、ＯＴＩＤ（ＴＡＧ）を用いたＲＦタグ４の認証に加えて、ＲＦタグ４に記憶されたパスワードＰＷＤを用いてＲＦタグ４を認証する。そのため、認証精度を高め、高い信頼性を得ることができる。
【００７５】
＜第３実施形態＞
第３実施形態では、第２実施形態においてＲＦタグ４のパスワードによる認証を行わない方式である。
第３実施形態は、第７〜９の観点の発明の実施形態である。
【００７６】
図９は、本発明の第３実施形態に係る商品真贋判定システムの真贋判定動作を説明するためのフローチャートである。
例えば、税関２０等において、ＲＦタグ４とリーダライタ２２とが近距離に配置される。
ＲＦタグ４の処理回路４１は、第１実施形態の場合と同様に、リーダライタ２２の正当性を認証する（ステップＳＴ８１）。
【００７７】
ＲＦタグ４の処理回路４１は、リーダライタ２２の正当性を確認すると、ＲＡＭ４３に記憶されている真贋判定用ＳＥＥＤの読み出しを許可し、当該真贋判定用ＳＥＥＤがリーダライタ２２によって読み出されて、図５に示すＲＡＭ２１３に書き込まれる（ステップＳＴ８２）。
【００７８】
リーダライタ２２と真贋判定サーバ１２とが通信を行い、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）および真贋判定サーバ１２のＯＴＩＤ（ＳＥＶ）を用いてワンタイムＩＤによる相互認証を行う（ステップＳＴ８３，ＳＴ８４）。
【００７９】
上記相互認証において、図５に示すリーダライタ２２の処理回路２１１は、ＲＡＭ２１３から読み出した上記真贋判定用ＳＥＥＤを用いてＲＦタグ４のＯＴＩＤ（ＴＡＧ）を生成し、これを真贋判定サーバ１２に送信する。そして、真贋判定サーバ１２の処理回路１６１は、受信したＯＴＩＤ（ＴＡＧ）を基にＲＦタグ４を認証する。具体的には、処理回路１６１は、上記受信したＯＴＩＤ（ＴＡＧ）が、ＲＡＭ１６５に記憶されているタグテーブル（リスト）内に存在すればＲＦタグ４が正当であると認証し、そうでない場合にはＲＦタグ４が不正であると判断する。
【００８０】
一方、上記相互認証においてに、真贋判定サーバ１２の処理回路１６１は、ＲＡＭ１６５から読み出した上記真贋判定用ＳＥＥＤを基に、真贋判定サーバ１２のワンタイムＩＤであるＯＴＩＤ（ＳＥＶ）を生成し、これをリーダライタ２２に送信する。そして、リーダライタ２２の処理回路２１１は、受信したＯＴＩＤ（ＳＥＶ）を基に、真贋判定サーバ１２を認証する。具体的には、処理回路２１１は、上記受信したＯＴＩＤ（ＳＥＶ）が、ＲＡＭ２１３に記憶されているサーバテーブル（リスト）内に存在すれば真贋判定サーバ１２が正当であると認証し、そうでない場合には真贋判定サーバ１２が不正であると判断する。
【００８１】
真贋判定サーバ１２の処理回路１６１は、上記ＯＴＩＤ（ＴＡＧ）を用いた認証結果を基にＲＦタグ４（商品２）の真贋を判定する。
処理回路１６１は、上記真贋の判定結果を、ネットワークＩ／Ｆ１６７を介してリーダライタ２２に送信する（ステップＳＴ８５）。
図３に示すリーダライタ２２は、上記真贋判定結果をネットワークＩ／Ｆ２１４を介して受信してＲＡＭ２１３に表示する。また、その真贋判定結果を表示部２２０に表示する（ステップＳＴ８６）。
【００８２】
リーダライタ２２の処理回路２１１および真贋判定サーバ１２の処理回路１６１は、上記相互認証後に、真贋判定用ＳＥＥＤを更新する（ステップＳＴ８７）。
そして、処理回路２１１は、上記更新した真贋判定用ＳＥＥＤをＲＦタグ４に出力する。ＲＦタグ４は、入力した真贋判定用ＳＥＥＤをＲＡＭ４３に書き込む（ステップＳＴ８８）。
当該ワンタイムＩＤを用いた認証処理については後に詳細に説明する。
【００８３】
以上説明したように、本実施形態の商品真贋判定システムでは、商品真贋判定システム１では、ＲＦタグ４のＯＴＩＤ（ＴＡＧ）を用いてＲＦタグ４の認証を行い、当該ＯＴＩＤ（ＴＡＧ）を認証の度に更新される。そのため、あるタイミングでのＯＴＩＤ（ＴＡＧ）をコピーしても、当該ＯＴＩＤ（ＴＡＧ）を用いたその後の認証は成功しない。これにより、ＲＦタグ４を組み込んだ大量の不正なコピー商品を作ることを防止できる。
また、本実施形態の商品真贋判定システムでは、ＲＦタグ４の処理回路４１は、ワンタイムＩＤの生成や照合等の処理を行わないため、計算能力が低いチップを採用できる。なお、ステップＳＴ８１の処理を無くせば、処理回路を備えない構成にすることも可能である。
【００８４】
＜ワンタイムＩＤを用いた認証の詳細＞
以下、前述した第１実施形態を例に、ＲＦタグ４と真贋判定サーバ１２との間でワンタイムＩＤを用いて認証を行う際のＲＦタグ４と真贋判定サーバ１２との間での通信処理を詳細に説明する。
以下に示す例は、図７に示すステップＳＴ２２，ＳＴ２３の処理を詳細に説明したものであり、リーダライタ２２に関する処理は省略している。
【００８５】
図１０は、図１に示すＲＦタグ４と真贋判定サーバ１２との間でワンタイムＩＤを用いて認証を行う際のＲＦタグ４と真贋判定サーバ１２との間での通信処理を詳細に説明するためのフローチャートである。
【００８６】
まず、真贋判定サーバ１２およびＲＦタグ４は、初期値として、タグ乱数Ｒ（０）、サーバ乱数Ｑ（０）および可変共通鍵Ｋ（０）を共有している。真贋判定サーバ１２では、タグ乱数Ｒ（０）、サーバ乱数Ｑ（０）および可変共通鍵Ｋ（０）は、ＲＡＭ１６５における認証データ１４ｂとして予め格納される。ＲＦタグ４では、タグ乱数Ｒ（０）、サーバ乱数Ｑ（０）および可変共通鍵Ｋ（０）は、ＲＡＭ４３における認証データ３４ｂとして予め格納される。なお、最初の可変共通鍵Ｋ（０）は、ＲＦタグ４および真贋判定サーバ１２により、後述の式（５）に基づき生成されるようにしてもよい。その場合、前セッションの可変共通鍵の代わりに、真性乱数Ｚが使用される。この真性乱数Ｚは、初期状態にて、真贋判定サーバ１２およびＲＦタグ４により共有される。
【００８７】
そして、１回の認証セッションごとに、真贋判定サーバ１２およびＲＦタグ４に保持されているタグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）が更新されていく。
【００８８】
したがって、ｎ回の認証セッションが完了した後には、タグ乱数Ｒ（ｎ）、サーバ乱数Ｑ（ｎ）および可変共通鍵Ｋ（ｎ）が共有されている状態となる。
【００８９】
ここで、ｉ回の認証セッションが完了した後のタグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）が共有されている状態から、（ｉ＋１）回目の認証セッションが発生し完了するまでの処理について図１０を参照して説明する。
【００９０】
各状態では、タグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）が共有されている（ステップＳ１１，Ｓ３１）。
【００９１】
ＲＦタグ４において真贋判定サーバ１２による認証を受ける要求が発生した場合、まず、ワンタイムＩＤ生成部４１２は、式（１）に従って、現セッションｉについての、ＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ）を生成する（ステップＳ１２）。ワンタイムＩＤ：Ｃ（ｉ）はデータ管理部４１６により一時的にＲＡＭ４３に記憶される。
ここで、Ｃ（ｉ）が前述したＯＴＩＤ（ＴＡＧ）に対応している。
【００９２】
Ｃ（ｉ）＝ｈａｓｈ（Ｒ(ｉ），Ｑ（ｉ）)  ・・・（１）
【００９３】
ただし、ｈａｓｈは、ＭＤ５などのハッシュ関数である。このハッシュ関数としては、暗号鍵を使用せずにダイジェストを生成するハッシュ関数が使用される。このハッシュ関数には、多少の衝突が発生してもよく、計算量があまり多くないものが選択される。
【００９４】
次に、乱数発生部４１１は、次セッション（ｉ＋１）についてのタグ乱数Ｒ（ｉ＋１）を発生する（ステップＳ１３）。このタグ乱数Ｒ（ｉ＋１）は、データ管理部４１６によりＲＡＭ４３に一時的に記憶される。また、このタグ乱数Ｒ（ｉ＋１）は、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）および真贋判定サーバ１２の現セッションのワンタイムＩＤ：Ｓ（ｉ）の生成に使用される。
【００９５】
そして、データ管理部４１６は、可変共通鍵Ｋ（ｉ）をＲＡＭ４３から読み出し、タグ乱数Ｒ（ｉ＋１）とともに暗号処理部４１３に供給する。暗号処理部４１３は、所定の暗号化関数Ｆｃに従って、可変共通鍵Ｋ（ｉ）でタグ乱数Ｒ（ｉ＋１）を暗号化する（ステップＳ１４）。暗号化されたタグ乱数Ａｃは、データ管理部４１６によりＲＡＭ４３に一時的に記憶される。
【００９６】
そして、データ管理部４１６は、ＲＡＭ４３から、ワンタイムＩＤ：Ｃ（ｉ）および暗号化されたタグ乱数Ａｃを読み出し通信処理部４１５に供給する。通信処理部４１５は、ワンタイムＩＤ：Ｃ（ｉ）および暗号化されたタグ乱数Ａｃを、認証要求とともに、真贋判定サーバ１２へ送信する（ステップＳ１５）。
【００９７】
真贋判定サーバ１２では、通信処理部１６１５が、真贋判定サーバ１２宛の通信データを受信する。このため、認証要求、ワンタイムＩＤ：Ｃ（ｉ）および暗号化されたタグ乱数Ａｃは、通信処理部１６１５により受信される（ステップＳ３２）。
【００９８】
真贋判定サーバ１２の通信処理部１６１５が認証要求を受信すると、データ管理部１６１６は、ＲＡＭ１６５のタグテーブルを参照し、受信されたワンタイムＩＤ：Ｃ（ｉ）と同一のワンタイムＩＤがタグテーブルに登録されているか否かを判定する（ステップＳ３３）。
【００９９】
データ管理部１６１６は、受信されたワンタイムＩＤ：Ｃ（ｉ）がタグテーブルに登録されていない場合には、認証処理を中止する（ステップＳ３４）。
【０１００】
一方、データ管理部１６１６は、受信されたワンタイムＩＤ：Ｃ（ｉ）がタグテーブルに登録されている場合、認証要求を送信したＲＦタグ４が正当なタグであると判断するとともに、ＲＦタグ４を特定する。
ＲＦタグ４が正当なタグであると判断された後、データ管理部１６１６は、特定されたＲＦタグ４の可変共通鍵Ｋ（ｉ）をＲＡＭ１６５から読み出し、タグ乱数Ａｃとともに、暗号処理部１６１３に供給する。暗号処理部１６１３は、所定の復号化関数Ｆｄに従って、暗号化されているタグ乱数Ａｃを可変共通鍵Ｋ（ｉ）で復号化し、平文のタグ乱数Ｒ（ｉ＋１）を取得する（ステップＳ３５）。なお、復号化関数Ｆｄは、ＲＦタグ４における暗号処理部４１３の暗号化関数Ｆｃにより暗号化された暗号文を平文に変換する関数である。タグ乱数Ｒ（ｉ＋１）はデータ管理部１６１６により一時的にＲＡＭ１６５に記憶される。
【０１０１】
次に、真贋判定サーバ１２のデータ管理部１６１６は、ＲＡＭ１６５からサーバ乱数Ｑ（ｉ）を読み出し、タグ乱数Ｒ（ｉ＋１）とともに、ワンタイムＩＤ生成部１６１２に供給する。ワンタイムＩＤ生成部１６１２は、現セッションについての真贋判定サーバ１２のワンタイムＩＤ：Ｓ（ｉ）を式（２）に従って生成する（ステップＳ３６）。ワンタイムＩＤ：Ｓ（ｉ）はデータ管理部１６１６により一時的にＲＡＭ１６５に記憶される。ここで、Ｓ（ｉ）が前述したＯＴＩＤ（ＳＥＶ）に対応している。
【０１０２】
Ｓ（ｉ）＝ｈａｓｈ（Ｒ（ｉ＋１），Ｑ（ｉ））  ・・・（２）
【０１０３】
ただし、ｈａｓｈは、ＭＤ５などのハッシュ関数である。式（２）の関数ｈａｓｈは、式（１）の関数ｈａｓｈと同一であってもよい。
【０１０４】
また、ＲＦタグ４が正当なタグであると判断された後、乱数発生部１６１１は、特定されたＲＦタグ４との間で使用される次セッションのサーバ乱数Ｑ（ｉ＋１）を生成する（ステップＳ３７）。サーバ乱数Ｑ（ｉ＋１）はデータ管理部１６１６により一時的にＲＡＭ１６５に記憶される。このサーバ乱数Ｑ（ｉ＋１）は、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１），Ｓ（ｉ＋１）の生成に使用される。
【０１０５】
その際、乱数発生部１６１１は、次セッションについてのＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ＋１）がタグテーブルに登録済みで未使用のワンタイムと重複しないようにサーバ乱数Ｑ（ｉ＋１）を生成する。
【０１０６】
図１１は、図１０のステップＳ３７の詳細を説明するフローチャートである。
【０１０７】
まず、乱数発生部１６１１は、乱数Ｑｔを生成する（ステップＳ６１）。乱数Ｑｔは、サーバ乱数Ｑ（ｉ＋１）の候補である。
【０１０８】
そして、データ管理部１６１６は、この乱数Ｑｔと、次セッションのタグ乱数Ｒ（ｉ＋１）とをワンタイムＩＤ生成部１６１２に供給する。ワンタイムＩＤ生成部１６１２は、式（３）に従って、乱数Ｑｔがサーバ乱数Ｑ（ｉ＋１）とされた場合の、次セッションについてのＲＦタグ４のワンタイムＩＤ：ＣＣを生成する（ステップＳ６２）。
【０１０９】
ＣＣ＝ｈａｓｈ（Ｒ（ｉ＋１），Ｑｔ）  ・・・（３）
【０１１０】
ただし、ｈａｓｈは、式（１）の関数ｈａｓｈと同一なハッシュ関数である。
【０１１１】
次に、データ管理部１６１６は、タグテーブルに登録されている各ワンタイムＩＤと、生成されたワンタイムＩＤ：ＣＣとを比較する（ステップＳ６３）。
【０１１２】
タグテーブルに登録されているいずれかのワンタイムＩＤと、生成されたワンタイムＩＤ：ＣＣとが同一である場合には、乱数発生部１６１１は、別の乱数Ｑｔを生成し（ステップＳ６４）、ワンタイムＩＤ生成部１６１２は、その別の乱数Ｑｔに基づいてワンタイムＩＤ：ＣＣを生成する（ステップＳ６２）。そして、生成されたワンタイムＩＤ：ＣＣは、タグテーブルに登録されている各ワンタイムＩＤと比較される。
【０１１３】
そして、生成されたワンタイムＩＤ：ＣＣが、タグテーブルに登録されているいずれのワンタイムＩＤとも同一ではない場合には、データ管理部１６１６は、この乱数Ｑｔを次セッションについてのサーバ乱数Ｑ（ｉ＋１）とし、一時的にＲＡＭ１６５に記憶する（ステップＳ６５）。
【０１１４】
このように、真贋判定サーバ１２では、ＲＦタグ４においてワンタイムＩＤを生成する関数ｈａｓｈと同一の関数を使用して、複数のＲＦタグ４のワンタイムＩＤに衝突が生じないサーバ乱数が予め選択される。
【０１１５】
特定されたＲＦタグ４について次セッションのサーバ乱数Ｑ（ｉ＋１）が生成されると、図１０に戻り、データ管理部１６１６は、そのサーバ乱数Ｑ（ｉ＋１）をＲＡＭ１６５から読み出し、可変共通鍵Ｋ（ｉ）をＲＡＭ１６５から読み出し、それらを暗号処理部１６１３に供給する。暗号処理部１６１３は、所定の暗号化関数Ｆｃに従って、可変共通鍵Ｋ（ｉ）でサーバ乱数Ｑ（ｉ＋１）を暗号化する（ステップＳ３８）。暗号化されたタグ乱数Ａｓは、データ管理部１６１６によりＲＡＭ１６５に一時的に記憶される。なお、この暗号化関数Ｆｃは、ＲＦタグ４における暗号処理部１６１３の暗号化関数と同一でもよいし、別のものでもよい。
【０１１６】
そして、データ管理部１６１６は、ＲＡＭ１６５から、ワンタイムＩＤ：Ｓ（ｉ）および暗号化されたタグ乱数Ａｓを読み出し通信処理部１６１５に供給する。通信処理部１６１５は、認証されたことを示す返答、並びにワンタイムＩＤ：Ｓ（ｉ）および暗号化されたサーバ乱数Ａｓを、認証要求の送信元のＲＦタグ４へ送信する（ステップＳ３９）。
【０１１７】
このように、真贋判定サーバ１２は、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）をＲＦタグ４に送信せずに、ＲＦタグ４において次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）が生成される際に使用される次セッションのサーバ乱数Ｑ（ｉ＋１）を送信する。
【０１１８】
認証されたことを示す返答、並びにワンタイムＩＤ：Ｓ（ｉ）および暗号化されたサーバ乱数Ａｓを送信した後、真贋判定サーバ１２のデータ管理部１６１６は、今回認証を行ったＲＦタグ４の次セッションについてのワンタイムＩＤ：Ｃ（ｉ＋１）をタグテーブルに登録する（ステップＳ４０）。その際、今回認証を行ったＲＦタグ４の現セッションについてのワンタイムＩＤ：Ｃ（ｉ）が、次セッションについてのワンタイムＩＤ：Ｃ（ｉ＋１）で上書きされ更新される。また、次セッションについてのワンタイムＩＤ：Ｃ（ｉ＋１）は、サーバ乱数Ｑ（ｉ＋１）を生成する際に計算したもの（ステップＳ６２）としてもよいし、ワンタイムＩＤ生成部１６１２により式（４）に従って生成されたものとしてもよい。
【０１１９】
Ｃ（ｉ＋１）＝ｈａｓｈ（Ｒ（ｉ＋１），Ｑ（ｉ＋１））  ・・・（４）
【０１２０】
ただし、ｈａｓｈは、式（１）と同一なハッシュ関数である。
【０１２１】
ここで、タグテーブルの更新処理について説明する。図１２は、図１０のステップＳ４０の詳細を説明するフローチャートである。図１３は、本実施形態におけるタグテーブルの一例を示す図である。
【０１２２】
図１３に示すように、本実施形態では、タグテーブルには、複数ｍのレコードが確保されている。各レコードは、１つのＲＦタグ４についてのワンタイムＩＤおよびタグ情報を有する。また、各レコードには、連続するインデックスが付されており、インデックスの値を指定することで所望の１つのレコードが読み出される。本実施形態では、インデックスの値は、ワンタイムＩＤを所定の整数Ｎで除算した際の剰余とされ、レコード数ｍは、Ｎの１０〜２０倍程度の数とされる。ただし、インデックスの値が衝突した場合には、インデックスの値を１ずつ増加させる。例えば、図１３では、インデックス値が１であるレコードに、あるタグのワンタイムＩＤ：Ｃ２およびそのタグの情報が格納されている。
【０１２３】
まず、データ管理部１６１６は、現セッションのワンタイムＩＤ：Ｃ（ｉ）からインデックスの値を計算する（ステップＳ８１）。ワンタイムＩＤを所定の整数Ｎで除算した際の剰余が計算され、その剰余の値をインデックスの値とする。
【０１２４】
次に、データ管理部１６１６は、タグテーブルにおけるそのインデックス値のレコードを読み出す（ステップＳ８２）。
【０１２５】
そして、データ管理部１６１６は、読み出したレコード内のワンタイムＩＤがワンタイムＩＤ：Ｃ（ｉ）と同一であるか否かを判断する（ステップＳ８３）。
【０１２６】
データ管理部１６１６は、読み出したレコード内のワンタイムＩＤがワンタイムＩＤ：Ｃ（ｉ）と同一ではない場合、インデックス値を１だけ増加させ（ステップＳ８４）、そのインデックス値のレコードを読み出し（ステップＳ８２）、ワンタイムＩＤが同一であるか否かを判断する（ステップＳ８３）。
【０１２７】
そして、読み出したレコード内のワンタイムＩＤがワンタイムＩＤ：Ｃ（ｉ）と同一である場合、データ管理部１６１６は、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）からインデックスの値を計算する（ステップＳ８５）。ワンタイムＩＤを所定の整数Ｎで除算した際の剰余が計算され、その剰余の値をインデックスの値とする。
【０１２８】
次に、データ管理部１６１６は、そのインデックス値のレコードが空きか否かを判断する（ステップＳ８６）。
【０１２９】
データ管理部１６１６は、そのインデックス値のレコードが空きではない場合、インデックス値を１だけ増加させ（ステップＳ８７）、そのインデックス値のレコードが空きか否かを判断する（ステップＳ８６）。
【０１３０】
そして、データ管理部１６１６は、インデックス値のレコードが空きである場合、そのインデックス値のレコードに、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）、および現セッションのワンタイムＩＤ：Ｃ（ｉ）のレコードにおけるタグ情報を格納する（ステップＳ８８）。
【０１３１】
次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）を登録した後、データ管理部１６１６は、現セッションのワンタイムＩＤ：Ｃ（ｉ）のレコードをタグテーブルから削除する（ステップＳ８９）。
【０１３２】
このようにして、タグテーブル内のワンタイムＩＤが更新される。
【０１３３】
図１０に戻り、その後、データ管理部１６１６は、特定されたＲＦタグ４についての次セッションのタグ乱数Ｒ（ｉ＋１）およびサーバ乱数Ｑ（ｉ＋１）をＲＡＭ１６５から読み出し、可変共通鍵Ｋ（ｉ）をＲＡＭ１６５から読み出し、それらを共通鍵更新部１６１４に供給する。共通鍵更新部１６１４は、タグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および現セッションの可変共通鍵Ｋ（ｉ）から次セッションの可変共通鍵Ｋ（ｉ＋１）を式（５）に従って生成する（ステップＳ４１）。次セッションの可変共通鍵Ｋ（ｉ＋１）は、データ管理部１６１６により一時的にＲＡＭ１６５に記憶される。
【０１３４】
Ｋ（ｉ＋１）＝ｈａｓｈ２（Ｋ（ｉ），Ｒ（ｉ＋１），Ｑ（ｉ＋１））・・・（５）
【０１３５】
ただし、ｈａｓｈ２は、ハッシュ関数である。
【０１３６】
そして、データ管理部１６１６は、ＲＡＭ１６５から次セッションのタグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および可変共通鍵Ｋ（ｉ＋１）を読み出し、ＲＡＭ１６５の認証データ１４ｂとして格納されているタグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）を次セッションのタグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および可変共通鍵Ｋ（ｉ＋１）へ更新する（ステップＳ４２）。
【０１３７】
一方、ＲＦタグ４では、通信処理部４１５が、ＲＦタグ４宛の通信データを受信する。このため、返答、ワンタイムＩＤ：Ｓ（ｉ）および暗号化されたサーバ乱数Ａｓは、通信処理部４１５により受信される（ステップＳ１６）。
【０１３８】
ＲＦタグ４のデータ管理部４１６は、返答が受信されると、真贋判定サーバ１２の真正なワンタイムＩＤ：Ｙと、受信されたワンタイムＩＤ：Ｓ（ｉ）とを比較して真贋判定サーバ１２の正当性を判断する（ステップＳ１７，Ｓ１８）。なお、真贋判定サーバ１２の真正なワンタイムＩＤ：Ｙは、ワンタイムＩＤ生成部４１２により式（６）に従って生成される。
【０１３９】
Ｙ＝ｈａｓｈ（Ｒ(ｉ＋１），Ｑ（ｉ）)  ・・・（６）
【０１４０】
ただし、ｈａｓｈは、式（２）と同一なハッシュ関数である。
【０１４１】
データ管理部４１６は、受信されたワンタイムＩＤ：Ｓ（ｉ）が真正なワンタイムＩＤ：Ｙと同一ではない場合、返答した真贋判定サーバ１２を不正サーバと判断し、認証処理を中止する（ステップＳ１９）。
【０１４２】
一方、データ管理部４１６は、受信されたワンタイムＩＤ：Ｓ（ｉ）が真正なワンタイムＩＤ：Ｙと同一である場合、返答した真贋判定サーバ１２が正当なサーバであると判断するとともに、真贋判定サーバ１２を特定する。
【０１４３】
真贋判定サーバ１２が正当なサーバであると判断された後、データ管理部４１６は、可変共通鍵Ｋ（ｉ）をＲＡＭ４３から読み出し、サーバ乱数Ａｓとともに、暗号処理部４１３に供給する。暗号処理部４１３は、所定の復号化関数Ｆｄに従って、暗号化されているタグ乱数Ａｓを可変共通鍵Ｋ（ｉ）で復号化し、平文のサーバ乱数Ｑ（ｉ＋１）を取得する（ステップＳ２０）。なお、復号化関数Ｆｄは、真贋判定サーバ１２における暗号処理部１６１３の暗号化関数Ｆｃにより暗号化された暗号文を平文に変換する関数である。サーバ乱数Ｑ（ｉ＋１）はデータ管理部４１６により一時的にＲＡＭ４３に記憶される。
【０１４４】
データ管理部４１６は、次セッションのタグ乱数Ｒ（ｉ＋１）およびサーバ乱数Ｑ（ｉ＋１）をＲＡＭ４３から読み出し、可変共通鍵Ｋ（ｉ）をＲＡＭ４３から読み出し、それらを共通鍵更新部４１４に供給する。共通鍵更新部４１４は、タグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および現セッションの可変共通鍵Ｋ（ｉ）から次セッションの可変共通鍵Ｋ（ｉ＋１）を式（５）に従って生成する（ステップＳ２１）。次セッションの可変共通鍵Ｋ（ｉ＋１）は、データ管理部４１６により一時的にＲＡＭ４３に記憶される。
【０１４５】
そして、データ管理部４１６は、ＲＡＭ４３から次セッションのタグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および可変共通鍵Ｋ（ｉ＋１）を読み出し、ＲＡＭ４３の認証データ３４ｂとして格納されているタグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）を次セッションのタグ乱数Ｒ（ｉ＋１）、サーバ乱数Ｑ（ｉ＋１）および可変共通鍵Ｋ（ｉ＋１）へ更新する（ステップＳ２２）。
【０１４６】
このようにして、１認証セッションにおいて、ワンタイムＩＤ：Ｃ（ｉ），Ｓ（ｉ）によりＲＦタグ４および真贋判定サーバ１２が相互に認証を行うとともに、共有している情報であるタグ乱数Ｒ（ｉ）、サーバ乱数Ｑ（ｉ）および可変共通鍵Ｋ（ｉ）がＲＦタグ４および真贋判定サーバ１２のそれぞれにおいて更新される。
【０１４７】
そして、上述のようにして、１回の認証セッションが完了し相互に認証が完了した後、ＲＦタグ４と真贋判定サーバ１２との間で、各種アプリケーションのデータ通信が開始される。なお、各種アプリケーションのデータ通信は、複数回の認証セッションを行った後に開始するようにしてもよい。
【０１４８】
以上のように、上記本実施形態によれば、真贋判定サーバ１２は、複数のＲＦタグ４を、所定の通信単位（認証セッション）ごとに変化するワンタイムＩＤで認証サーバ装置により認証する。
【０１４９】
ＲＦタグ４では、ワンタイムＩＤ生成部４１２は、現セッションのサーバ乱数Ｑ（ｉ）とタグ乱数Ｒ（ｉ）とを引数としたハッシュ関数の値でＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ）を生成する。通信処理部４１５は、そのワンタイムＩＤ：Ｃ（ｉ）およびタグ乱数Ｒ（ｉ＋１）を真贋判定サーバ１２に送信する。ただし、タグ乱数Ｒ（ｉ＋１）は暗号化された状態で送信される。真贋判定サーバ１２では、データ管理部１６１６は、タグテーブルにおけるワンタイムＩＤと受信されたワンタイムＩＤとに基づきＲＦタグ４の正当性を判断する。
【０１５０】
ＲＦタグ４が正当なものであると判断された後、ワンタイムＩＤ生成部１６１２は、次セッションのサーバ乱数Ｑ（ｉ＋１）と受信された次セッションのタグ乱数Ｒ（ｉ＋１）とを引数としたハッシュ関数の値に基づいてＲＦタグ４の次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）を生成し、このワンタイムＩＤ：Ｃ（ｉ＋１）が、タグテーブルに格納されている複数のワンタイムＩＤのいずれかと同一である場合には、再度生成されたサーバ乱数Ｑ（ｉ＋１）と受信されたタグ乱数Ｒ（ｉ＋１）とからワンタイムＩＤ：Ｃ（ｉ＋１）を再度生成し、そのワンタイムＩＤでタグテーブルにおけるそのＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ）を更新する。そして、通信処理部１６１５は、次セッションのワンタイムＩＤ：Ｃ（ｉ）の生成に使用されたサーバ乱数Ｑ（ｉ＋１）をＲＦタグ４に送信する。ただし、サーバ乱数Ｑ（ｉ＋１）は暗号化された状態で送信される。
【０１５１】
そして、ＲＦタグ４では、次セッションにおいて、そのサーバ乱数Ｑ（ｉ＋１）と既に生成されているタグ乱数Ｒ（ｉ＋１）から次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）が生成される。
【０１５２】
これによれば、ＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ＋１）の生成に使用される真贋判定サーバ１２のサーバ乱数Ｑ（ｉ＋１）が生成される際に、複数のうちのいずれかのＲＦタグ４に現在既に割り当てられているワンタイムＩＤと同一にならないように検証した上でサーバ乱数Ｑ（ｉ＋１）を生成している。これにより、固有ＩＤを送受しなくても、一方向性関数の値に基づくワンタイムＩＤで、ＲＦタグ４を常に一意に特定することが可能になる。
【０１５３】
また、真贋判定サーバ１２において、現セッションのワンタイムＩＤ：Ｃ（ｉ）に基づきＲＦタグ４が正当なものであると判断された後に、直ちに同一のセッション内で、そのＲＦタグ４の次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）が生成され更新される。これにより、さらに、ワンタイムＩＤ：Ｃ（ｉ）を盗聴した第三者がそのワンタイムＩＤ：Ｃ（ｉ）を使用した場合でもその第三者の機器が正当なＲＦタグ４と特定されてしまうことを防止できる。つまり、ワンタイムＩＤが盗聴された場合でも、正当な機器を一意に特定することができる。
【０１５４】
また、ＲＦタグ４から真贋判定サーバ１２へのワンタイムＩＤ：Ｃ（ｉ）などの送信、および真贋判定サーバ１２からＲＦタグ４へのワンタイムＩＤ：Ｓ（ｉ）などの送信という２回の通信のみで相互認証を行うことができる。このため、相互認証に要する時間が短くて済む。
【０１５５】
また、本実施形態によれば、真贋判定サーバ１２で生成された次セッションについてのＲＦタグ４のワンタイムＩＤ：Ｃ（ｉ＋１）がＲＦタグ４に送信されず、その代わりに、ＲＦタグ４においてワンタイムＩＤ：Ｃ（ｉ＋１）が生成される際に使用される次セッションのサーバ乱数Ｑ（ｉ＋１）が送信される。したがって、ＲＦタグ４は、次セッションのワンタイムＩＤ：Ｃ（ｉ＋１）を、真贋判定サーバ１２から受信せず、真贋判定サーバ１２から受信したサーバ乱数Ｑ（ｉ＋１）および自己の生成するタグ乱数Ｒ（ｉ＋１）から生成する。このようにして、次回使用されるワンタイムＩＤ：Ｃ（ｉ＋１）が盗聴されることがない。
【０１５６】
また、本実施形態によれば、ＲＦタグ４は、固有ＩＤなどの固定的な識別情報を全く送信しない。したがって、ＲＦタグ４から真贋判定サーバ１２へ送信されるデータが盗聴され解析されたとしても、盗聴者がＲＦタグ４の固定的な識別情報を取得することはできない。
【０１５７】
また、本実施形態によれば、真贋判定サーバ１２は、複数のＲＦタグ４のそれぞれについて生成されたサーバ乱数Ｑ（ｉ）を使用して、複数のＲＦタグ４のそれぞれについてのワンタイムＩＤ：Ｃ（ｉ）を生成する。これにより、正当なＲＦタグ４が、自己についてのサーバ乱数を取得しても、他のＲＦタグ４についてのサーバ乱数とは異なるため、他のＲＦタグ４のワンタイムＩＤが推測しにくい。
【０１５８】
また、上記本実施形態によれば、真贋判定サーバ１２は、現セッションについての真贋判定サーバ１２のワンタイムＩＤ：Ｓ（ｉ）を生成しＲＦタグ４へ送信する。これによれば、ワンタイムＩＤ：Ｃ（ｉ）を送信してきたＲＦタグ４においても、真贋判定サーバ１２のワンタイムＩＤ：Ｓ（ｉ）に基づいて真贋判定サーバ１２の正当性を判断することができる。これにより、相互認証が可能となる。
【０１５９】
また、上記本実施形態によれば、真贋判定サーバ１２は、可変共通鍵で暗号化された次セッションのタグ乱数ＡｃをＲＦタグ４から受信し、そのＲＦタグ４が正当なものであると判断された後に、そのタグ乱数Ａｃを復号化する。これにより、ＲＦタグ４が正当なものである場合にのみ復号化処理が実行されるため、不正タグからの認証要求に対する処理を短時間で行うことができる。このため、不正タグからの大量の認証要求によるＤｏＳ攻撃に対する耐性が向上する。
【０１６０】
また、上記本実施形態によれば、真贋判定サーバ１２は、現セッションの可変共通鍵Ｋ（ｉ）を使用して次セッションの可変共通鍵Ｋ（ｉ＋１）を生成し、可変共通鍵Ｋ（ｉ＋１）を更新する。これにより、ＲＦタグ４と真贋判定サーバ１２との間で全く送受されない可変共通鍵を用いて次セッションの可変共通鍵Ｋ（ｉ＋１）を生成するため、可変共通鍵Ｋ（ｉ＋１）を解読しにくくすることができる。
【０１６１】
また、上記本実施形態によれば、ワンタイムＩＤ：Ｃ（ｉ）を生成するための一方向性関数に、暗号鍵を使用せずにダイジェストを生成するハッシュ関数が使用される。これにより、衝突が発生しうるが計算量の比較的少ないハッシュ関数を一方向性関数として使用することができる。計算量の比較的少ないハッシュ関数を使用することで認証処理の時間を短くすることができる。
【０１６２】
なお、図８に示すリーダライタ２２と真贋判定サーバ１２との間のワンタイムＩＤを用いた認証は、上述した図１０においてＲＦタグ４をリーダライタ２２に置き換えることで同様に行うことができる。
【０１６３】
＜ブランドカードとの組み合わせ＞
例えば、各ＲＦタグ４にワンタイムＩＤの他に固定のＩＤを割り当て、そのＩＤを記憶したブランドカードを用意する。
そして、真贋判定サーバ１２において、各ＲＦタグ４の固定ＩＤと、ワンタイムＩＤとの対応関係を管理する。
商品２の所有者は、商品２の盗難にあった場合に、ブランドカードを基に、固定ＩＤと共に盗難された旨を真贋判定サーバ１２に通知する。
真贋判定サーバ１２は、当該通知に基づいて、上記固定ＩＤに対応したワンタイムＩＤの認証が行われた場合に、その商品２が盗難品であると判定する。
このようにすることで、真贋判定サーバ１２を質屋などに配置すれば、盗難品が不正に売られることを防止できる。
【０１６４】
＜本発明の実施形態の変形例＞
本発明は上述した実施形態には限定されない。
すなわち、当業者は、本発明の技術的範囲またはその均等の範囲内において、上述した実施形態の構成要素に関し、様々な変更、コンビネーション、サブコンビネーション、並びに代替を行ってもよい。
【０１６５】
上述した実施形態では、例えば、図１に示すＳＥＥＤ発行サーバ１０と真贋判定サーバ１２として異なるサーバを用いる場合を例示したが、これらのサーバの機能を物理的に一つのサーバで実現してもよい。
【０１６６】
図８の変形例として、リーダライタ２２のＯＴＩＤ（ＲＷ）を用いてＲＦタグ４がリーダライタ２２の認証を行ってもよい。
【０１６７】
また、図１０〜図１３を用いて説明したワンタイムＩＤを用いた相互認証は一例であり、本発明は、これ以外の方法でワンタイムＩＤを用いた認証を行ってもよい。
【０１６８】
また、上述した例では、商品２にＲＦタグ４を組み込む場合を例示したが、正贋判定を必要とされる金券、カジノのコインや紙幣、帳票、証券、紙幣等の紙類、キャッシュカードやクレジットカード等のカード類にＲＦタグ４を組み込み、その真贋判定を行う場合にも本発明を適用可能である。
【産業上の利用可能性】
【０１６９】
本発明は物品等の真贋を判定するシステムに適用可能である。
【図面の簡単な説明】
【０１７０】
【図１】図１は、本発明の第１実施形態に係る商品真贋判定システムの全体構成図である。
【図２】図２は、図１に示すＲＦタグの構成図である。
【図３】図３は、図１に示すＳＥＥＤ発行サーバの構成図である。
【図４】図４は、図１に示す真贋判定サーバの構成図である。
【図５】図５は、図１に示すリーダライタの構成図である。
【図６】図６は、図１に示す商品真贋判定システムにおいて、商品を輸出する前に行われるＲＦタグへの設定動作について説明するためのフローチャートである。
【図７】図７は、図１に示す商品真贋判定システムにおいて、商品輸出後の真贋判定動作を説明するためのフローチャートである。
【図８】図８は、本発明の第２実施形態に係る商品真贋判定システムにおける商品輸出後の真贋判定動作を説明するためのフローチャートである。
【図９】図９は、本発明の第３実施形態に係る商品真贋判定システムにおける商品輸出後の真贋判定動作を説明するためのフローチャートである。
【図１０】図１０は、図１に示すＲＦタグと真贋判定サーバとの間でワンタイムＩＤを用いて認証を行う際のＲＦタグと真贋判定サーバとの間での通信処理を詳細に説明するためのフローチャートである。
【図１１】図１１は、図１０のステップＳ３７の詳細を説明するフローチャートである。
【図１２】図１２は、図１０のステップＳ４０の詳細を説明するフローチャートである。
【図１３】図１３は、図１０に示す例におけるタグテーブルの一例を示す図である。
【符号の説明】
【０１７１】
１…商品真贋判定システム、２…商品、４…ＲＦタグ、１０…ＳＥＥＤ発行サーバ、１２…真贋判定サーバ、２２…リーダライタ、４１，８１，１６１，２１１…処理回路、４２，８３，１６３，２１２…ＲＯＭ、４３，８５，１６５，２１３…ＲＡＭ、４５…データ送信部、４６…データ受信部、４９，９７…アンテナ、５１…インタフェース、５２…ＢＰＳＫ変調部、５３…ＢＰＳＫ復調部、８７，１６７，２１４…ネットワークＩ／Ｆ、９１，２１６…信号処理回路、９３，２０２…変調部、９５，２０４…復調部、９７，２０５…アンテナ、
【図１】
2008293415.tif 000003
【図２】
2008293415.tif 000004
【図３】
2008293415.tif 000005
【図４】
2008293415.tif 000006
【図５】
2008293415.tif 000007
【図６】
2008293415.tif 000008
【図７】
2008293415.tif 000009
【図８】
2008293415.tif 000010
【図９】
2008293415.tif 000011
【図１０】
2008293415.tif 000012
【図１１】
2008293415.tif 000013
【図１２】
2008293415.tif 000014
【図１３】
2008293415.tif 000015