説明

ICメモリ並びにICメモリ用のアクセス装置及び正当性検証方法

【課題】既存の仕様に影響を与えることなく、RFIDタグのデータ複製を困難にし、データを複製した場合も容易に検出を可能にする。
【解決手段】RFIDタグ100内に、既存仕様に準拠したバンク以外に、読み取り専用バンクが設けられる。メーカからのRFIDタグ100の出荷時に、RFID識別情報がRFIDタグ100の読み取り専用バンクに格納される。UIIデータの正当性を保証したい利用者は、RFIDタグ100にUIIデータを書き込む時に、RFID識別情報とUIIデータを暗号化して暗号演算結果データを作成し、暗号演算結果データをRFIDタグ100内のUSERバンクに格納する。RFIDタグ100からUIIデータを読み取る他の利用者は、RFIDタグ100からRFID識別情報とUIIデータを読み出して暗号演算を行い、その演算結果が、RFIDタグ100に格納されている演算結果データと一致するかをチェックすることで、RFIDタグ100の格納データが正当かどうかを判断できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、RFID(Radio Frequency IdentI/Fication)タグに代表されるような複数の記憶部をもつICメモリ、及びそのようなICメモリのアクセスや制御のための技術に関する。
【背景技術】
【0002】
RFIDタグには、これまで用途にあわせて様々な仕様が存在していたが、主に流通業界での利用を目的としたUHF帯RFIDタグの規格として、例えばISO/IEC 18000-6 Type Cに準拠したRFIDタグは、複数のバンクと呼ばれる書き換え可能な記憶部を持つことができ、UIIバンクにはRFIDのIDデータを格納することができる。TIDバンクには、タグ製造メーカの情報を格納することができる。RESERVEDバンクには、パスワードデータを格納することができる。そしてUSERバンクにはオプションの領域ではあるが、各利用者が自由にデータを格納することができる。また、各バンクは、書き換えをパスワードによってロックする仕組みや、永久に書き換えを不可能にすることが可能である(非特許文献1)。
【非特許文献1】ISO/IEC 18000-6:2004 Information technology -- Radio frequency identI/Fication for item management -- Part 6: Parameters for air inteRFace communications at 860 MHz to 960 MHz
【発明の開示】
【発明が解決しようとする課題】
【0003】
しかし、ISO/IEC 18000-6 Type Cで規定されている仕様では、RFIDタグが製造元から利用者に渡されるときのRFIDタグの内部データや書き換えのロック状態について明確な規定があるわけではない。例えばTIDバンクにRFIDタグ製造メーカがデータを書き込み永久に書き換えを不可能にしてタグを出荷することが必須になっているわけではなく、いわゆる何もデータが書かれず、後で誰でも書き換えが可能ないわゆるホワイトカードの発行も可能である。何もデータをかかなければRFIDタグの製造コストを下げることには効果的ではあるが、誰にでも自由にデータが書けるため、ホワイトカードが存在していると誰でも簡単にRFIDタグの複製ができてしまう。
【0004】
パスワードにより、データの書き換えを防ぐことも可能ではあるが、パスワードを格納するRESERVEDバンク以外のバンクは、パスワードによる書き換え制限をかけることも可能であるが、読み出すことに対しては制限がないため、読み出せれば複製ができてしまう。
【0005】
従って、本発明の目的は、RFIDタグのようなICメモリにおいて、既存の仕様に影響を与えることなく、そのデータの複製を困難とすることにある。
【0006】
本発明の別の目的は、RFIDタグのようなICメモリのデータが複製された場合、それを容易に検出することを可能にすることにある。
【課題を解決するための手段】
【0007】
本発明の第1の側面に従うICメモリは、複数のデータ記憶部と、外部通信装置と電波の送受信を行うためのアンテナと、前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、前記信号が表すコマンド及びデータの前記外部通信装置に対する送受信、前記複数のデータ記憶部に対するデータの読み書き、及び前記ICメモリの内部状態の管理を含むプロトコル処理を行うプロトコル処理手段とを備え、前記複数のデータ記憶部のうちの少なくとも1つが、データ読出しのみが可能な読み取り専用記憶部であり、前記複数のデータ記憶部のうちの前記読み取り専用記憶部以外の記憶部が、データ読出しと書き込みのいずれもが可能な記憶部である。
【0008】
一実施形態では、前記読み取り専用記憶部が、製造後の最初の一機会又は製造時にのみデータの書き込み可能であるが、それ以降は読み取りのみが可能である。
【0009】
一実施形態では、前記プロトコル処理手段が、前記複数のデータ記憶部のうちの前記読み取り専用記憶部以外の記憶部について読み取り可否または書き込み可否に関するアクセス設定を設定するデータ読出し書き込み可否設定手段と、前記設定されたアクセス設定に従って前記読み取り専用記憶部以外の記憶部の読み取りと書き込みを制御するが、前記読み取り専用記憶部については読み取りのみが行なえるアクセス制御手段とを有する。
【0010】
一実施形態では、前記読み取り専用記憶部に、製造後の最初の一機会又は製造時のデータ書き込みによって、前記ICメモリに割り当てられた特定情報が格納されている。
【0011】
好適な実施形態では、前記読み取り専用バンクに格納された前記特定情報が、下記A〜Dの値
A 乱数値、
B 他のICメモリに割り当られた特定情報とは重複せず、かつ前記他のICメモリに割り当られた特定情報と連続関係にあるシリアル値、
C 他のICメモリに割り当られた特定情報とは重複せず、かつ前記他のICメモリに割り当られた特定情報と連続関係にない不連続値、および
D 他のICメモリに割り当られた特定情報と同一の値、
の中から選ばれた一つの値である。
【0012】
一実施形態では、前記読み取り専用バンクに格納された前記特定情報が、所定の複数のICメモリグループから選ばれた一つのICメモリグループに割り当られた、他のICメモリグループのそれとは異なるグループ識別情報と、前記選ばれた一つのICメモリグループ内で前記ICメモリに割り当てられた個別番号とを含み、前記個別番号が、下記A〜Dの値
A 乱数値、
B 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報とは重複せず、かつ前記他のICメモリに割り当られた個別情報と連続関係にあるシリアル値、
C 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報とは重複せず、かつ前記他のICメモリに割り当られた個別情報と連続関係にない不連続値、および
D 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報と同一の値、
の中から選ばれた一つの値であり、前記A〜Dの値のどれが選ばれるかは、前記選ばれた一つのICメモリグループがどれであるかによって異なっている。
【0013】
一実施形態では、前記複数の記憶部のうちの前記読み取り専用記憶部以外のいずれかの記憶部に、前記読み取り専用バンクに格納された前記特定情報に対して所定の関数演算を施して得られた演算結果データが格納される。
【0014】
一実施形態では、前記複数の記憶部のうちの前記読み取り専用記憶部以外のいずれかの記憶部に、前記読み取り専用バンクに格納された前記特定情報と他のいずれかの記憶部に格納されたデータの一部とを少なくとも含むデータに対して所定の関数演算を施して得られた演算結果データが格納される。
【0015】
一実施形態では、前記演算結果データが、共通鍵または公開鍵を使用した暗号演算による演算結果データである。
【0016】
一実施形態では、ICメモリは、前記所定の関数演算を行って前記演算結果データを算出する手段を備えてない。
【0017】
一実施形態では、ICメモリはRFIDであり、前記読み取り専用記憶部以外の記憶部として、RESERVEDバンク、UIIバンク、TIDバンク及びUSERバンクを有し、前記演算結果データが前記USERバンクに格納される。
【0018】
一実施形態では、前記プロトコル処理手段が応答可能な前記読み取り専用記憶部に対する読み取りコマンドと他の記憶部に対する読み取りコマンドとが、コマンドコードにおいて異なっている。
【0019】
一実施形態では、前記プロトコル処理手段が、前記読み取り専用記憶部の読み取り動作を行う場合と、他の記憶部の読み取り及び書き込みを行う場合とで、前記外部通信装置に対して異なるプロトコルの処理を実行する。
【0020】
本発明の第2の側面に従う外部通信装置は、上述の第1の側面に従うICメモリと通信を行なうためのものであって、前記ICメモリと電波の送受信を行うためのアンテナと、前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、前記信号が表すマンド及びデータの前記ICメモリに対する送受信を含む外部通信装置プロトコルの処理を行うプロトコル処理手段と、演算対象データに所定の関数演算を行って演算結果データを算出する演算手段とを備え、前記外部通信装置プロトコル処理手段が、前記ICメモリ内の前記読み取り専用記憶部からデータを読み取る処理を行う手段と、前記読み取り専用記憶部から読み取られたデータを前記演算対象データとして前記演算手段に渡し、前記読み取られたデータに基づいて前記演算手段が算出した演算結果データを受ける手段と、前記演算手段から受けた演算結果データを、前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部に書き込む処理を行なう手段とを有する。
【0021】
本発明の第3の別の側面に従う外部通信装置は、上述の第1の側面に従うICメモリと通信を行なうためのものであって、前記ICメモリと電波の送受信を行うためのアンテナと、前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、前記信号が表すマンド及びデータの前記ICメモリに対する送受信を含む外部通信装置プロトコルの処理を行うプロトコル処理手段と、演算対象データに所定の関数演算を行って演算結果データを算出する演算手段とを備え、前記外部通信装置プロトコル処理手段が、前記ICメモリ内の前記読み取り専用記憶部からデータを読み取る処理を行う手段と、前記読み取り専用記憶部から読み取られたデータを前記演算対象データとして前記演算手段に渡し、前記読み取られたデータに基づいて前記演算手段が算出した演算結果データを受ける手段と、前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部からデータを読み取る処理を行う手段と、前記演算手段から受けた演算結果データと、前記所定の記憶部から読み取られたデータとを比較することで、前記ICメモリ内のデータが正当か否かを判断する手段とを有する。
【0022】
上記第2又は第3の側面に従う外部通信装置の一実施形態では、前記外部通信装置プロトコル処理手段が前記ICメモリに対して送信する前記読み取り専用記憶部に対する読み取りコマンドと他の記憶部に対する読み取りコマンドとが、コマンドコードにおいて異なっているか、または、前記外部通信装置プロトコル処理手段が、前記読み取り専用記憶部の読み取り処理を行う場合と、他の記憶部の読み取り及び書き込み処理を行う場合とで、前記ICメモリに対して異なるプロトコルの処理を実行する。
【0023】
本発明の第4の側面に従うシステムは、上記第1の側面に従うICメモリと、上記第2又は第3の側面に従う外部通信装置とを備える。
【0024】
本発明の第5の側面に従うシステムは、上記第1の側面に従うICメモリと、上記第2の側面に従う第1の外部通信装置と、上記第3の側面に従う第2の外部通信装置とを備える。
【0025】
本発明の第6の側面に従う、上記第1の俗面に従うICメモリ内のデータの正当性を検証するための方法は、前記ICメモリ内の前記読み取り専用記憶部からデータを読み取るステップと、前記読み取り専用記憶部から読み取られたデータに所定の関数演算を施して演算結果データを得るステップと、前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部からデータを読み取るステップと、前記演算手段から受けた演算結果データと、前記所定の記憶部から読み取られたデータとを比較することで、前記ICメモリ内のデータが正当か否かを判断するステップとを有する。
【発明の効果】
【0026】
本発明の一つの側面によれば、既存の仕様に影響を与えることなく、RFIDタグのようなICメモリのデータ複製を困難にすることができる。
【0027】
また、本発明の別の側面によれば、RFIDタグのようなICメモリのデータが複製された場合、それを容易に検出することが可能である。
【発明を実施するための最良の形態】
【0028】
本発明は、RFIDタグだけでなく他の種類のICメモリにも適用可能である。しかし、以下では、非限定的な説明のための例示として、RFIDタグに適用された本発明の実施形態図面を参照しながら説明していく。
【0029】
図1は、本発明の一実施形態に係るRFIDタグと、外部通信装置としての1以上のRFIDリーダライタ装置からなるRFIDシステムの構成を示した図である。
【0030】
RFIDタグ100は、或るRFIDリーダライタ装置101でデータを格納され、それとは別のRFIDリーダライタ装置102又は同じRFIDリーダライタ装置101でデータを読み取られることができる。もちろんRFIDタグ100が多数存在する場合もあるし、リーダライタ装置もより多くの台数からなるシステムもあれば、1台だけのシステムの場合もありえる。
【0031】
図2は、RFIDタグ100の主要な内部構成を示した図である。
【0032】
RFIDタグ100は、外部のRFIDリーダライタ装置と電波の送受信を行うアンテナ200と、RFIDタグ本体201と、アンテナ200で受信した電波からの動作電力の生成や、その電波に載せられる信号の変復調を行うRF部202と、その信号が表すコマンド及びデータの送受信や複数のメモリバンクに対するデータの読み書きやRFIDタグ本体201の内部状態の管理等を含むプロトコルの処理を行うRFIDタグプロトコル処理部203と、IDデータや利用者が任意に作成したデータなど各種データを記憶する記憶部204を具備する。プロトコル処理部203は、また、状態管理フラグを用いた論理的な管理方法で、記憶部204の書換え可否等のロック状態を管理する。
【0033】
図3は、RFIDリーダライタ装置101の主要な内部構成を示した図である(他のRFIDリーダライタ装置102も同様の構成をもつ)。
【0034】
RFIDリーダライタ装置101は、RFIDタグ100と電波の送受信を行うアンテナ300と、リーダライタ装置本体301と、アンテナ200で受信した電波に載せられる信号の変復調を行うRF部302と、その信号が表すコマンド及びデータの送受信やリーダライタ装置本体301の内部状態の管理等を含むプロトコルの処理を行うRFIDプロトコル処理部303と、共通鍵や公開鍵を用いての暗号や署名の演算処理や、ハッシュ関数の実施等を行う暗号処理部304と、外部の管理装置(図示省略)と連携してRFIDリーダライタ装置101が動作するための管理装置通信インタフェースとして機能する外部I/F部305を具備したものとなっている。なお、暗号処理部304は、図2に示したように、RFIDタグ100自体には備えられていない。
【0035】
図4は、暗号演算処理部304で実施される暗号演算を簡単に図示したものである。
【0036】
暗号演算処理部304は、暗号演算関数400を有し、これは、共通鍵暗号処理や、公開鍵暗号処理など一般的によく知られたもので構わない。暗号演算関数400は、必ずしもそうでなければならないわけではないが、利用者の要求するセキュリティレベルや既存システムとの連携を考慮して変更できることが望ましい。暗号演算関数400に演算対象データ401と鍵データ402を渡すことで、暗号演算関数400による演算が実施されて、演算対象データ401に基づく暗号演算結果データ403が求められる。鍵データ402は、例えばICカードのように、暗号演算処理部304に含まれていてもよいし、或いは、外部I/F305を通じて外部装置から暗号演算関数400に渡されてもよい。暗号演算処理部304は、データを暗号化することや、データに改ざん検出のためのデータをつけることができる。鍵データ402を同一グループや利用者の中で管理することで、第3者が勝手にデータを見ることや改ざんすることを防ぐことが可能になる。鍵データ402の管理の仕方には、ICカード等で既に一般的に知られた管理方法を用いることができる。
【0037】
図5は、RFIDタグ100の記憶部204の構成を示したものである。
【0038】
記憶部204は、この例では、5つのメモリバンク、すなわち、RESERVEDバンク、UIIバンク、TIDバンク、USERバンク及び読み取り専用バンクを有している。RESERVEDバンク、UIIバンク、TIDバンク及びUSERバンクは、RAMのように、データの書き込みと読み取りの双方が可能なメモリにより構成されている。これに対し、読み取り専用バンクは、ライトワンスメモリ又はROMのように、製造後の最初の一機会又は製造時にのみ、そこにデータを書き込むことができるが、それ以降はデータの書き込みは不可能でデータ読み取りのみが可能な構造をもつメモリであるか、或いは、RFIDプロトコル処理部203が行う論理的なアクセス制御によって、製造後の最初の一機会又は製造時にデータが書き込まれた後はデータ読み取りのみが可能になっている。読み取り専用バンクには、RFID読み取り専用バンクは、既存の規格には定義されていないものである。
【0039】
メモリバンクの種類によりアクセス設定が可能な内容(設定により制御できるアクセスの種類)が異なっている。すなわち、RESERVEDバンクは、読み取りと書き込みのそれぞれの可否の設定が可能であるが、UIIバンク、TIDバンク、USERバンクは、書き込み可否の設定のみが可能となっている。読み取り専用バンクは、アクセス設定をすること自体が不可能である。
【0040】
各バンクのアクセス設定は、RFIDプロトコル処理部203が、それが有する内部状態保持部に、各バンクの設定値を格納することで行われる。RFIDプロトコル処理部203は、コマンド処理時に、内部状態保持部内の各バンクの設定値を参照して論理的に、各バンクのアクセスを制御することができる。読み取り専用バンクは、ライトワンスメモリで構成されて、RFIDタグ100の発行時に1回だけそこにデータが書けるようになっていてもよいし、或いは、ROMメモリにより構成されて、RFIDタグ100の製造時にそこにデータが書かれるようになっていてもよい。なお、本実施形態にかかるRFIDタグ100では、1つの記憶部204が異なるバンクに分かれているが、必ずしもバンクという概念で分かれている必要はなく、複数のバンクに代えて物理的に別の複数のメモリが設けられていてもよい。例えば読取専用バンクは、バンクではなく、他のバンクの記憶部とは物理的に別の専用の記憶部として設けられてもよく、また1つではなく、複数個存在してもよい。
【0041】
図6は、RFIDタグ100の内部データの例を示した一覧600である。
【0042】
ここで、各RFIDタグ100は、所定の複数のRFIDグループのいずれかに分類される。そして、各RFIDタグ100には、それが分類されるRFIDグループで使用されるいずれかのRFID識別子情報といずれかのUIIデータとが割り当てられ、各RFIDタグ100内に格納される。さらに、各RFIDタグ100では、それに格納されたUIIデータの正当性を検証するためのデータが、上述した暗号演算処理部304で暗号演算結果データ403として算出され、そのデータも各RFIDタグ100内に格納される。図6は、15個の異なるRFIDタグ"RFID1"〜"RFID15"を例にとり、それらが属する複数のRFIDグループの種類と、それぞれのRFIDグループで使用されるRFID識別子情報とUIIデータの例と、UIIデータの正当性を検証するためのデータ(暗号演算結果データ403)の例と示している。
【0043】
図6に示された例では、上述したRFID識別子情報として、RFIDグループ識別情報と個別情報がある。各RFIDタグ100に割当てられたRFIDグループ識別情報と個別情報のデータは、そのRFIDタグ100内の読み取り専用バンクに格納されている。RFIDグループには、図6で"01"、"02"、"03"で示された3種類と、特定のRFIDグループに属さないこと(これも本明細書では、一つのRFIDグループとみなす)を意味する"−"で示された1種類の合計4種類があり、それぞれに対応するRFIDグループ識別情報は、"01"、"02"、"03"、"00"である。
【0044】
さらに個別情報として、グループ"01"では、互いに重複することのないシリアルな番号、例えば"000001"、"000002"、"000003"などが使用される。グループ"02"では、互いに重複することのない不連続な(シリアルでない)番号、例えば"000001"、"000002"、"000004"などが使用される。グループ"02"では、個別情報がシリアルであることを保障しないことで、不具合品の除去を簡単に可能とすることができ、RFIDタグを安価に製造することが可能になる。グループ"03"では、乱数値、例えば"146236"、"492528"、"660318"などが使用される。グループ"03"では、個別情報が乱数であるため重複する可能性はあるが、個別情報を管理する必要がなく、また個別情報のデータ長を大きくすれば重複の可能性が非常に低くなるため、安価なRFIDタグの製造に向いている。グループ"−"ではすべてという一つの特別の値、例えば"000000"が使用される。グループ"−"は、既存の仕様のRFIDタグと同様の使い方をしたいだけの利用者のためのグループであり、そこでは、個別情報"000000"が設定されていれば、RFID識別情報を使う必要はなく、或いは、個別情報を使用せずにRFIDグループ識別情報"00"だけを使用してもよい。個別情報としての特別値は、"000000"でなくても、例えば"111111"のように別の特別値であってもよい。
【0045】
また、図6は、UIIバンクに格納されるUIIデータの例も示している。この例では、いずれのRFIDグループでも、他のグループと共通のUIIデータ、例えば"00000001"、"00000002","00000003"などが使用される。また、図6は、UIIデータの正当性を検証するためのデータとして、USERバンクに格納される暗号演算結果データ403の例も示している。この例では、暗号演算結果データ403を求めるための演算対象データ401として、"RFIDグループ識別情報"と"個別情報"と"UIIデータ"を結合したものを用いている。異なるRFIDタグのUIIデータが同じ値、例えば"00000001"、であっても、それらのRFIDタグが属するRFIDグループが異なれば、それらのRFIDタグの暗号演算結果データ403は異なる値となる。ただし、RFIDグループ"−"内では、いずれのRFIDタグも、RFIDグループ識別情報と個別情報にて同じであるため、異なるRFIDタグのUIIデータが同じである場合は、それらのRFIDタグの暗号演算結果データも同じになる。
【0046】
図7は、RFIDタグ100に送信される通常の読み取りコマンド(つまり、読み取り専用バンク以外のバンクに対する読み取りコマンド)のフォーマットの例と、RFIDタグ100からRFIDリーダライタ装置101又は102へ返信される、通常の読み取りコマンドに対する応答のフォーマットの例を示す。
【0047】
通常の読み取りコマンドは、コマンドフォーマット700に示すように、"Command"というコマンドコード値を格納するフィールド、"MemBank"という読み取り対象のバンクを指定するパラメータを格納するフィールド、及び"WordPtr"というポインタの種類を指定するパラメータを格納するフィールドなどから構成される。
【0048】
通常の読み取りコマンドに対する応答は、応答フォーマット701に示すように、ヘッダを格納するフィールド、及び"Memory Word"という読み出されたデータを格納するフィールドなどから構成される。
【0049】
図8は、RFIDリーダライタ装置101又は102からRFIDタグ100に送信される読み取り専用バンクに対する読み取りコマンドのフォーマットの例と、RFIDタグ100からRFIDリーダライタ装置101又は102へ返信される、読み取り専用バンクに対する読み取りコマンドに対する応答のフォーマットの例を示す。
【0050】
読み取り専用バンクに対する読み取りコマンドは、コマンドフォーマット800に示すように、"Command"というコマンドコード値を格納するフィールドと、その他のパラメータを格納するフィールドなどから構成される。このコマンドフォーマット800は、図7に示した通常の読み取りコマンドのコマンドフォーマット700とは、コマンドコード値やパラメータが全く異なった構成となっている。このようなカスタムコマンドを使うことで、既存の仕様に影響を与えることがない。
【0051】
図9は、二つの異なるプロトコルに対応したRFIDタグ部をもつRFIDタグ100の構成例を示す。
【0052】
RFIDタグ100は、第1のプロトコルに対応する第1のRFIDタグ部(例えばISO18000-6 Type Cに準拠したRFIDタグとして機能する部分)と、第2のプロトコルに対応する第2のRFIDタグ部(例えば2.45Ghz帯のプロトコルに対応したRFIDタグとして機能する部分)とを備える。第1のRFIDタグ部は、そこに記憶されたデータの書換えが可能であるが、第2のRFIDタグ部は、そこに記憶されたデータの書換えは不可能であり、読み取りのみが可能である。
【0053】
第1のRFIDタグ部は、RFIDリーダライタ装置と電波の送受信を行うアンテナ900と、第1のRFIDタグ本体901と、アンテナ900で受信した電波からの動作電力の生成や、その電波に載せられる信号の変復調を行うRF部902と、その信号が表すコマンド及びデータの送受信や、後述の書き換え可能記憶部904内の複数のメモリバンクに対するデータの読み書きや、第1のRFIDタグ本体901の内部状態の管理等を含むプロトコルの処理を行うRFIDタグプロトコル処理部903と、IDデータや利用者データなど各種データを記憶する書き換え可能記憶部904とを具備する。書き換え可能記憶部904内に、前述したRESERVEDバンク、UIIバンク、TIDバンク及びUSERバンクが設けられる。
【0054】
第2のRFIDタグ部はRFIDリーダライタ装置と電波の送受信を行うアンテナ905と、第2のRFIDタグ本体906と、アンテナ905で受信した電波からの動作電力の生成や、その電波に載せられる信号の変復調を行うRF部907と、その信号が表すコマンド及びデータの送受信や、後述の読み取り専用記憶部909に対するデータの読み書きや、第2のRFIDタグ本体906の内部状態の管理等を含むプロトコルの処理を行うRFIDタグプロトコル処理部908と、RFIDグループ識別情報データや個別情報などを格納する読み取り専用の記憶部909を具備する。読み取り専用の記憶部909が、前述した読み取り専用バンクとして使用される。読み取り専用の記憶部909へのアクセスは、他のメモリバンクとは異なるプロトコル、すなわち既存のRFIDタグ用の規格に従う第1のプロトコルとは異なる第2のプロトコルで行われる必要がある。
【0055】
変形例として、RFIDタグ100が3つ以上のRFIDタグ部を備えてもよいし、或いは、まったく同じプロトコルに対応した複数のRFIDタグ部を備えてもよい。
【0056】
図10は、図9に示したような二つの異なるプロトコルに対応するRFIDタグと通信可能なRFIDリーダライタ装置の内部構成の例を示す。
【0057】
RFIDリーダライタ装置102は、RFIDタグ100との電波の送受信を行うアンテナ1000と、リーダライタ装置本体1001と、第1のプロトコルのコマンド及びデータを表した信号の変復調を行うRF部1002と、第1のプロトコルのコマンド及びデータの送受信や第1のプロトコル上でのRFIDリーダライタ装置102の内部状態の管理等を含むプロトコルの処理を行うRFIDプロトコル処理部1003と、第2のプロトコルのコマンド及びデータを表した信号の変復調を行うRF部1004と、第2のプロトコルのコマンド及びデータの送受信や第2のプロトコル上でのRFIDリーダライタ装置102の内部状態の管理等を含むプロトコルの処理を行うRFIDプロトコル処理部1005と、共通鍵や公開鍵を用いての暗号や署名の演算処理や、ハッシュ関数の実施等を行う暗号処理部304と、外部の管理装置(図示省略)と連携して動作するための管理装置インタフェースとして機能する外部I/F部305を具備したものとなっている。この例では、分かり易くするために、異なるプロトコルについて異なるRF部と異なるプロトコル処理部が備えられているが、変形例として、異なるプロトコルについての処理が共通の一つのRF部と一つのプロトコル処理部で行われるようになっていてもよい。
【0058】
図10に示された構成をもつRFIDリーダライタ装置102であれば、図9に示された構成のRFIDタグ100内の書き換え可能記憶部904と読み取り専用記憶部909のそれぞれのデータを異なるプロトコルにより取り扱うことが可能である。その際、読み取りコマンドや応答のフォーマットは、それぞれのプロトコルに適合した合致したものが使用される。
【0059】
図11は、利用者がRFIDタグ100内のUIIデータの正当性を検証するための処理フロー例を示した図である。
【0060】
ここでは、RFIDタグ100が、図6に例示されたRFIDグループ"01"に属する1つのRFIDタグ"RFID1"である場合を想定する。しかし、これは説明のための非限定的な例示であり、RFIDタグ100がRFIDグループ"01"〜"03"に属するいずれのRFIDタグであってもよい。
【0061】
図11の処理は、RFIDタグ100の利用者が必要に応じて何時でも実行できるものである。この処理が開始されるより前に、RFIDタグ100の読み取り専用バンクにRFIDグループ識別情報"01"と個別情報"000001"が格納され、UIIバンクにはUIIデータ"00000001"が格納されている。これらの格納行為を行う主体に格別の限定は無いが、典型例を示せば、読み取り専用バンクにRFIDグループ識別情報"01"と個別情報"000001"を格納する行為は、例えばRFIDタグ100のメーカによって、RFIDタグ100の出荷前に行われる。また、UIIデータ"00000001"の格納行為は、例えば、利用者によって行われ得る。そして、UIIデータ"00000001"を格納した利用者は、そのUIIデータの正当性を保証したければ、UIIデータの正当性を検証するため暗号演算結果データを、RFIDタグ100に格納することができる。
【0062】
図11に示された前半の処理フローは、上記のような利用者が、UIIデータの正当性を検証するための暗号演算結果データをRFIDタグ100に格納するための処理を示している。よって、図11の処理フローの開始時点では、上記暗号演算結果データは未だRFIDタグ100に格納されていない。
【0063】
図11の前半の処理フローにおいて、ステップS1100で、上記利用者が使用するRFIDリーダライタ装置101と、RFIDタグ100との間で、RFIDタグ100内のUIIデータを読み取る処理が実行される。すなわち、RFIDリーダライタ装置101からRFIDタグ100へ、UIIバンク読み取りコマンドが送付される。そして、RFIDタグ100からRFIDリーダライタ装置101へ、UIIデータ"00000001"が応答される。
【0064】
その後のステップS1101で、RFIDリーダライタ装置101とRFIDタグ100との間で、RFIDタグ100内の読み取り専用バンク内のRFID識別情報を読み取る処理が実行される。すなわち、すなわち、RFIDリーダライタ装置101からRFIDタグ100へ、読み取り専用バンクに対する読み取りコマンドが送付される。そして、RFIDタグ100からRFIDリーダライタ装置101へ、読み取り専用バンクから読み出されたRFIDグループ識別情報"01"と個別情報"000001"が応答される。
【0065】
その後、ステップS1102で、RFIDリーダライタ装置101にて、暗号演算処理が実行される。すなわち、RFIDタグ100から読み出したRFIDグループ識別情報"01"、個別情報"000001"及びUIIデータ"00000001"を結合したデータが、演算対象データ401として暗号演算関数400に渡され、暗号演算関数400が暗号演算結果データ403として、UIIデータの正当性を検証するためのデータ"4624652"を導く。鍵データ402や暗号演算関数400の具体的な例示はここでは省略するが、これらは、RFIDグループ識別情報"01"を使う利用者により管理される。
【0066】
その後、ステップS1103で、上記暗号演算結果データ"4624652"の書き込み処理が実行される。すなわち、RFIDリーダライタ装置101がRFIDタグ100へ、上記暗号演算結果データ"4624652"をUSERバンクに書き込むための書き込みコマンドを送る。RFIDタグ100は、その書き込みコマンドを受けて、USERバンクに、読み取り専用バンクのRFID識別情報を活用したUII検証用のデータ"4624652"を格納する。
【0067】
以上のようにして、UII検証用のデータ"4624652"が格納された後、もし、このRFIDタグ100が流通業界で利用されているのならば、このRFIDタグ100は他の種々の利用者へ転々と流通されていくであろう。この流通過程で、鍵データ402や暗号演算関数400を利用できる権限をもつ利用者は、RFIDリーダライタ装置102を用いて、RFIDタグ100内のUIIデータが正当なデータかどうか(換言すれば、RFIDタグ100が、他のRFIDタグの複製でないかどうかを)を、図11の後半の処理フローで検証することができる。
【0068】
すなわち、まず、S1104で、RFIDリーダライタ装置102とRFIDタグ100との間で、UIIデータの読み取り処理が実行される。すなわち、RFIDリーダライタ装置102からRFIDタグ100へ、UIIバンク読み取りコマンドが送付され、RFIDタグ100からRFIDリーダライタ装置102へ、UIIデータ"00000001"が応答される。
【0069】
その後、ステップS1105で、RFID識別情報の読み取り処理が実行される。すなわち、RFIDリーダライタ装置102からRFIDタグ100へ、読み取り専用バンクに対する読み取りコマンドが送付されて、RFIDタグ100からRFIDリーダライタ装置102へ、RFIDグループ識別情報"01"と個別情報"000001"が応答される。
【0070】
その後、ステップS1106で、暗号演算処理が実行される。すなわち、RFIDリーダライタ装置102内で、演算対象データ401としてのRFIDグループ識別情報"01"、個別情報"000001"及びUIIデータ"00000001"が暗号演算関数400に渡され、暗号演算関数400が暗号演算結果データ403として、UIIデータの正当性を検証するためのデータ"4624652"を導く。
【0071】
その後(又は、ステップS1104〜S1106の何れかより前でもよい)、ステップS1107で、USERバンクに格納されている暗号演算結果データの読み取り処理が実行される。すなわち、RFIDリーダライタ装置102からRFIDタグ100へ、USERバンク読み取りコマンドが送付されて、RFIDタグ100からRFIDリーダライタ装置102へ、暗号演算結果データ"4624652"が応答される。
【0072】
その後、ステップS1108で、演算対象データの正当性検証処理が実行される。すなわち、RFIDリーダライタ装置102内で、RFIDプロトコル処理部が、ステップS1106で演算された暗号演算結果データと、ステップS1107で読み出された暗号演算結果データとを比較し、両者が一致していれば、RFIDタグ100内のUIIデータは正当なデータであると判断する。一方、両者が一致しない場合には、第3者がRFIDタグ100内のデータを改ざんしたか、複製した等の可能性が考えられるから、RFIDリーダライタ装置102は、エラーを利用者に通知する。なお、鍵データ402を知らない第3者は、正しい暗号演算結果データを求めることができないため、RFIDタグ100内のUIIデータの正当性の検証を行なうことはできない。この検証は、正当な利用者だけが、それを必要とするときにだけ行えばよい。通常のUIIデータの読み取りは、既存の仕様に従うプロトコルだけで何の問題もなく実行することができる。
【0073】
このように、上述した本発明の実施形態によれば、既存の仕様に影響を与えることなく、RFIDタグのデータ複製を困難にし、さらに、そのデータが複製された場合、上記検証によって容易にそのことの検出が可能である。
【図面の簡単な説明】
【0074】
【図1】本発明の一実施形態にかかるRFIDタグとRFIDリーダライタ装置を備えたシステムの構成を示した図。
【図2】本発明の一実施形態にかかるRFIDタグの内部構成を示した図。
【図3】本発明の一実施形態にかかるRFIDリーダライタ装置の内部構成を示した図。
【図4】本発明の一実施形態にかかるRFIDリーダライタ装置内の暗号演算処理部の機能を示した図。
【図5】本発明の一実施形態にかかるRFIDタグ内のバンクの種類と、それぞれのバンクに設定可能なアクセス設定の種類を示した図。
【図6】本発明の一実施形態にかかるRFIDタグが属することができる複数のRFIDグループと、それぞれのRFIDグループに属するRFIDタグに格納され得るデータの例を示した図。
【図7】本発明の一実施形態にかかるRFIDタグの読み取り専用バンク以外のバンクに対する通常の読み取りコマンドのフォーマット例を示した図。
【図8】本発明の一実施形態にかかるRFIDタグの読み取り専用バンクに対する読み取りコマンドのフォーマット例を示した図。
【図9】本発明の一実施形態にかかる複数の異なるRFIDプロトコル処理制御部をもつRFIDタグの内部構成を示した図。
【図10】本発明の一実施形態にかかる複数の異なるRFIDプロトコル処理制御部をもつRFIDリーダライタ装置の内部構成を示した図。
【図11】本発明の一実施形態にかかるRFIDタグとRFIDリーダライタ装置を備えたシステムにおいて、RFIDタグ内のUIIデータの正当性を検証するための処理のフローを示した図。
【符号の説明】
【0075】
100 RFIDタグ
101 RFIDリーダライタ装置A
102 RFIDリーダライタ装置
200 RFIDタグアンテナ
201 RFIDタグ本体
202 RF部
203 RFIDプロトコル処理部
204 記憶部
300 RFIDリーダライタ装置アンテナ
301 RFIDリーダライタ装置本体
302 RF部
303 RFIDプロトコル処理部
303 暗号演算処理部
400 暗号演算関数
401 演算対象データ
402 鍵データ
403 演算結果データ
500 各バンクとアクセス設定の一覧
501 異なるグループのRFIDタグに格納されるデータの一覧
700 通常Readコマンドフォーマット
701 通常Readコマンド応答フォーマット
800 読み取り専用バンク通常Readコマンドフォーマット
801 読み取り専用バンク通常Readコマンド応答フォーマット
900 RFIDタグアンテナ
901 RFIDタグ本体
902 RF部
903 RFIDプロトコル処理部
904 書き換え可能記憶部
905 アンテナ
906 RFIDタグ本体
907 RF部
908 RFIDプロトコル処理部
909 書き換え可能記憶部
1000 RFIDリーダライタ装置アンテナ
1001 RFIDリーダライタ装置本体
1002 RF部
1003 RFIDプロトコル処理部
1004 RF部
1005 RFIDプロトコル処理部

【特許請求の範囲】
【請求項1】
複数のデータ記憶部と、
外部通信装置と電波の送受信を行うためのアンテナと、
前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、
前記信号が表すコマンド及びデータの前記外部通信装置に対する送受信、前記複数のデータ記憶部に対するデータの読み書き、及び前記ICメモリの内部状態の管理を含むプロトコル処理を行うプロトコル処理手段と
を備え、
前記複数のデータ記憶部のうちの少なくとも1つが、データ読出しのみが可能な読み取り専用記憶部であり、
前記複数のデータ記憶部のうちの前記読み取り専用記憶部以外の記憶部が、データ読出しと書き込みのいずれもが可能な記憶部である、
ることを特徴とするICメモリ。
【請求項2】
請求項1記載のICメモリにおいて、
前記読み取り専用記憶部が、製造後の最初の一機会又は製造時にのみデータの書き込み可能であるが、それ以降は読み取りのみが可能であることを特徴とするICメモリ。
【請求項3】
請求項1記載のICメモリにおいて、
前記プロトコル処理手段が、
前記複数のデータ記憶部のうちの前記読み取り専用記憶部以外の記憶部について読み取り可否または書き込み可否に関するアクセス設定を設定するデータ読出し書き込み可否設定手段と、
前記設定されたアクセス設定に従って前記読み取り専用記憶部以外の記憶部の読み取りと書き込みを制御するが、前記読み取り専用記憶部については読み取りのみが行なえるアクセス制御手段と
を有するICメモリ。
【請求項4】
請求項1〜3のいずれか一項記載のICメモリにおいて、
前記読み取り専用記憶部に、製造後の最初の一機会又は製造時のデータ書き込みによって、前記ICメモリに割り当てられた特定情報が格納されている
ことを特徴とするICメモリ。
【請求項5】
請求項4記載のICメモリにおいて、
前記読み取り専用バンクに格納された前記特定情報が、下記A〜Dの値
A 乱数値、
B 他のICメモリに割り当られた特定情報とは重複せず、かつ前記他のICメモリに割り当られた特定情報と連続関係にあるシリアル値、
C 他のICメモリに割り当られた特定情報とは重複せず、かつ前記他のICメモリに割り当られた特定情報と連続関係にない不連続値、および
D 他のICメモリに割り当られた特定情報と同一の値、
の中から選ばれた一つの値である
ことを特徴とするICメモリ。
【請求項6】
請求項4記載のICメモリにおいて、
前記読み取り専用バンクに格納された前記特定情報が、
所定の複数のICメモリグループから選ばれた一つのICメモリグループに割り当られた、他のICメモリグループのそれとは異なるグループ識別情報と、
前記選ばれた一つのICメモリグループ内で前記ICメモリに割り当てられた個別番号と
を含み、
前記個別番号が、下記A〜Dの値
A 乱数値、
B 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報とは重複せず、かつ前記他のICメモリに割り当られた個別情報と連続関係にあるシリアル値、
C 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報とは重複せず、かつ前記他のICメモリに割り当られた個別情報と連続関係にない不連続値、および
D 前記選ばれた一つのICメモリグループ内の他のICメモリに割り当られた個別情報と同一の値、
の中から選ばれた一つの値であり、
前記A〜Dの値のどれが選ばれるかが、前記選ばれた一つのICメモリグループがどれであるかによって異なっている、
ことを特徴とするICメモリ。
【請求項7】
請求項4〜6のいずれか一項記載のICメモリにおいて、
前記複数の記憶部のうちの前記読み取り専用記憶部以外のいずれかの記憶部に、前記読み取り専用バンクに格納された前記特定情報に対して所定の関数演算を施して得られた演算結果データが格納される
ことを特徴とするICメモリ。
【請求項8】
請求項4〜6のいずれか一項記載のICメモリにおいて、
前記複数の記憶部のうちの前記読み取り専用記憶部以外のいずれかの記憶部に、前記読み取り専用バンクに格納された前記特定情報と他のいずれかの記憶部に格納されたデータの一部とを少なくとも含むデータに対して所定の関数演算を施して得られた演算結果データが格納される
ことを特徴とするICメモリ。
【請求項9】
請求項7または8記載のICメモリにおいて、
前記演算結果データが、共通鍵または公開鍵を使用した暗号演算による演算結果データである
ことを特徴とするICメモリ。
【請求項10】
請求項7〜9のいずれか一項記載のICメモリにおいて、
前記所定の関数演算を行って前記演算結果データを算出する手段を備えてない
ことを特徴とするICメモリ。
【請求項11】
請求項7〜10のいずれか一項記載のICメモリにおいて、
前記ICメモリはRFIDであり、
前記読み取り専用記憶部以外の記憶部として、RESERVEDバンク、UIIバンク、TIDバンク及びUSERバンクを有し、
前記演算結果データが前記USERバンクに格納される
ことを特徴とするICメモリ。
【請求項12】
請求項1〜11のいずれか一項記載のICメモリにおいて、
前記プロトコル処理手段が応答可能な前記読み取り専用記憶部に対する読み取りコマンドと他の記憶部に対する読み取りコマンドとが、コマンドコードにおいて異なっている
ことを特徴とするICメモリ。
【請求項13】
請求項1〜12のいずれか一項記載のICメモリにおいて、
前記プロトコル処理手段が、前記読み取り専用記憶部の読み取り動作を行う場合と、他の記憶部の読み取り及び書き込みを行う場合とで、前記外部通信装置に対して異なるプロトコルの処理を実行する
ことを特徴とするICメモリ。
【請求項14】
請求項1〜13のいずれか一項記載のICメモリと通信を行う外部通信装置において、
前記ICメモリと電波の送受信を行うためのアンテナと、
前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、
前記信号が表すマンド及びデータの前記ICメモリに対する送受信を含む外部通信装置プロトコルの処理を行うプロトコル処理手段と、
演算対象データに所定の関数演算を行って演算結果データを算出する演算手段と
を備え、
前記外部通信装置プロトコル処理手段が、
前記ICメモリ内の前記読み取り専用記憶部からデータを読み取る処理を行う手段と、
前記読み取り専用記憶部から読み取られたデータを前記演算対象データとして前記演算手段に渡し、前記読み取られたデータに基づいて前記演算手段が算出した演算結果データを受ける手段と、
前記演算手段から受けた演算結果データを、前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部に書き込む処理を行なう手段と
を有する
ことを特徴とする外部通信装置。
【請求項15】
請求項1〜13のいずれか一項記載のICメモリと通信を行う外部通信装置において、
前記ICメモリと電波の送受信を行うためのアンテナと、
前記アンテナで受信した電波上の信号の変復調の処理を行う信号処理手段と、
前記信号が表すマンド及びデータの前記ICメモリに対する送受信を含む外部通信装置プロトコルの処理を行うプロトコル処理手段と、
演算対象データに所定の関数演算を行って演算結果データを算出する演算手段と
を備え、
前記外部通信装置プロトコル処理手段が、
前記ICメモリ内の前記読み取り専用記憶部からデータを読み取る処理を行う手段と、
前記読み取り専用記憶部から読み取られたデータを前記演算対象データとして前記演算手段に渡し、前記読み取られたデータに基づいて前記演算手段が算出した演算結果データを受ける手段と、
前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部からデータを読み取る処理を行う手段と、
前記演算手段から受けた演算結果データと、前記所定の記憶部から読み取られたデータとを比較することで、前記ICメモリ内のデータが正当か否かを判断する手段と
を有する
ことを特徴とする外部通信装置。
【請求項16】
請求項14又は15記載の外部通信装置において、
前記外部通信装置プロトコル処理手段が前記ICメモリに対して送信する前記読み取り専用記憶部に対する読み取りコマンドと他の記憶部に対する読み取りコマンドとが、コマンドコードにおいて異なっているか、または、
前記外部通信装置プロトコル処理手段が、前記読み取り専用記憶部の読み取り処理を行う場合と、他の記憶部の読み取り及び書き込み処理を行う場合とで、前記ICメモリに対して異なるプロトコルの処理を実行する
ことを特徴とする外部通信装置。
【請求項17】
請求項1〜13のいずれか一項記載のICメモリと、
請求項14〜16のいずれか一項記載の1以上の外部通信装置と
を備えたシステム。
【請求項18】
請求項1〜13のいずれか一項記載のICメモリと、
請求項14記載の第1の外部通信装置と、
請求項15記載の第2の外部通信装置と
を備えたシステム。
【請求項19】
請求項1〜13のいずれか一項記載のICメモリ内のデータの正当性を検証する方法において、
前記ICメモリ内の前記読み取り専用記憶部からデータを読み取るステップと、
前記読み取り専用記憶部から読み取られたデータに所定の関数演算を施して演算結果データを得るステップと、
前記ICメモリ内の前記読み取り専用記憶部以外の所定の記憶部からデータを読み取るステップと、
前記演算手段から受けた演算結果データと、前記所定の記憶部から読み取られたデータとを比較することで、前記ICメモリ内のデータが正当か否かを判断するステップと
を有する方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate


【公開番号】特開2008−59013(P2008−59013A)
【公開日】平成20年3月13日(2008.3.13)
【国際特許分類】
【出願番号】特願2006−231616(P2006−231616)
【出願日】平成18年8月29日(2006.8.29)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】