説明

RFIDにおけるIDの正当性保証方法

【課題】
RFIDのチップ全体のメモリ領域の増加を極力抑え,RFIDのID情報領域にできるだけ多く,IDそのもののデータを格納し,且つIDの正当性も保証することができるシステムを提供すること。
【解決手段】
ID情報の正当性を検証する為の改竄検知符号を,ID情報領域に格納せず,輻輳制御等を行う為に用意されている制御情報領域に格納することで,ID情報領域内のIDそのものの占める割合を上げ,且つ制御情報領域内の改竄検知符号と連動することで,ID情報の正当性を保証する。また,制御情報領域内の改竄検知符号は,輻輳制御に用いるデータとしても利用することにより,チップ全体のメモリ領域の増加を抑えることが可能となる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は,RFIDにおけるID情報の正当性保証技術に関する。
【背景技術】
【0002】
RFID(Radio Frequency IDentification)は,ID情報を埋め込んだタグから,電波などを用いた近距離の無線通信によって情報をやりとりするものであり,食品や物品等の物流管理・トレーサビリティの分野から交通機関のIC乗車券や,社員証や学生証等,様々な分野において利用されている。
【0003】
また,正規の品物にRFIDを装着することにより,偽造品・模造品等の判別に用いるなど,セキュリティ用途への利用にも期待されている。このようにセキュリティ用途で用いる場合,そもそもRFIDそのものが,正当なRFID製造会社が製造したRFIDであるのかを判別する仕組みが望まれている。
【0004】
従来のRFIDのID情報の正当性を保証する技術では,RFIDのID情報に対して,例えばMAC(Message Authentication Code)等の改竄検知符号を付け加え,MAC等の改竄検知符号を検証することで,改竄されていない正しいID情報であることを確認している。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2002−140404号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の技術は,RFIDのID情報を格納する領域に,RFIDを一意に識別する為のIDと,その改竄検知符号とを合わせて書き込んであり,IDと改竄検知符号を含んだID情報をRFIDリーダ等の検証装置側に提示することで,IDの正当性を検証している。
【0007】
その為,百数bitのID情報領域しか持たない超小型のRFIDに実装するには,そのわずかな百数bitを,IDそのものと,改竄検知符号とで折半しなければならなかった。
【0008】
つまり,IDそのものを格納できる領域が減り,IDの定義空間を狭める為,異なるIDを大量に生成することができなくなる。
【0009】
また,データを格納するメモリ領域を拡張すると,その分チップ全体の体積が増え,RFIDを超小型化することが困難になる。
【0010】
それ故,チップ全体のメモリ領域の増加を極力抑え,ID情報領域にできるだけ多く,IDそのもののデータを格納したい,という要求がある。
【課題を解決するための手段】
【0011】
本発明は,上記事情に鑑みてなされたものであり,本発明の目的は,チップ全体のメモリ領域の増加を極力抑え,RFIDのID情報領域にできるだけ多く,IDそのもののデータを格納し,且つIDの正当性も保証することができるシステムを提供することである。
【0012】
具体的には,本発明は,ID情報の正当性を検証する為の改竄検知符号を,ID情報領域に格納せず,輻輳制御等を行う為に用意されている制御情報領域に格納することで,ID情報領域内のIDそのものの占める割合を上げ,且つ制御情報領域内の改竄検知符号と連動することで,ID情報の正当性を保証する,ことを特徴とする。
【0013】
また,チップ全体のメモリ増加を極力抑える為に,制御情報領域内の改竄検知符号は,本来の役目である輻輳制御等を行う為の制御情報として兼用する,ことを特徴とする。
【発明の効果】
【0014】
本発明によれば,改竄検知符号は,ID情報領域外にある制御情報領域に格納する為,RFIDのID情報領域には,IDそのもののデータを最大限に格納することが可能となり,且つ改竄検知符号は,本来の役目である制御情報としても扱う為,新たにメモリを確保する必要がなく,チップ全体のメモリ増加を極力抑えることができ,更にID情報と改竄検知符号を連動させることにより,IDの正当性も保証するシステムを提供することが可能となる。
【図面の簡単な説明】
【0015】
【図1】一実施形態における全体構成図である。
【図2】図1に示すID・署名生成装置,RFIDリーダ装置40,業務アプリケーション装置のハード構成例を示す図である。
【図3】図1に示すRFID30のデータの内容を示す図である。
【図4】一実施形態におけるID発行に関する処理を説明するワークフロー図である。
【図5】一実施形態におけるID検証に関する処理を説明するワークフロー図である。
【発明を実施するための形態】
【0016】
以下,図面を用いて本発明の一実施形態について説明する。尚,これにより本発明が限定されるものではない。
【0017】
図1は,本発明の一実施形態が適用された全体構成図である。
【0018】
ID発行装置10は,IDを生成し,ID発行装置10の秘密鍵をもって前記IDに対するMAC(Message Authentication Code)を計算する。本一実施形態では,このMACを改竄検知符号として説明する。ID発行装置10は,前記秘密鍵104と,データの入出力を行う入出力部101と,MAC生成を行う暗号演算部103と,それらを制御する制御部102からなり,IDとMACの組を必要個数生成し,図3のID情報311,制御情報312の情報の組としてリスト化し,データ埋込装置20に送付する。尚,前記IDはID情報311のID315に対応し,前記MACは制御情報312の改竄検知符号318に対応する。データ埋込装置20は,必要情報をRFIDに書き込む装置であり,ID発行装置10から送られた前記リストからID情報及び制御情報の組をRFID30に書き込む。
【0019】
RFID30は,前記ID情報及び制御情報を埋め込んだタグであり,電磁界や電波などを用いた近距離の無線通信によって情報をやりとりするものである。
【0020】
RFIDリーダ装置40は,前記ID発行装置10が設定し共有した秘密鍵404と,データの入出力を行う入出力部401と,MAC検証を行う暗号演算部403と,それらを制御する制御部402からなり,RFID30からIDとMACの組を読込み,前記ID発行装置10が設定し,RFIDリーダ装置40と共有している秘密鍵を用いて,IDに対するMACを検証することにより,該当IDが改竄されていないことを確認し,前記ID発行装置10が発行したIDであると判断する。RFIDリーダ装置40は,前記IDが正当なものであると判断した場合,前記IDを業務アプリケーション装置50に引渡たす。業務アプリケーション装置50は,IDを要求または受信し,受信したIDを基にサービスを実行する装置であり,RFIDリーダ装置40から引き渡されたIDに対し,必要に応じてサービスを実行する。
【0021】
また,ID発行装置10と,RFIDリーダ装置40は,それぞれ,図2が示すように,記憶媒体67と,記憶媒体67の読取装置61と,半導体を用いた一次記憶装置(以下,メモリという)62と,入出力装置63と,CPU64と,ハードディスクなどの二次記憶装置(以下,記憶装置という)65と,通信装置66とが,バスなどの内部通信線(以下,バスという)68で連結された情報処理装置60上に構成することができる。また,RFID30は,アンテナ部71,電源部72,論理部73,メモリ74とが,バス75で連結された情報処理装置70上に構成することができる。
【0022】
上述の,暗号演算部103,403と,秘密鍵104,404,制御部102,402は,それぞれの装置のメモリ62または記憶装置65に格納されたプログラムをCPU64が実行することにより,当該装置上に具現化されるものである。また,これらのプログラム及び秘密鍵104,404は,上記記憶装置65に格納されていても良いし,必要なときに,着脱可能な記憶媒体67を介して,前記情報処理装置60に導入されたり,通信装置66を介して外部から導入されてもよい。
【0023】
以下に,図面を参照して,本一実施形態のシステムにおける概略を説明する。
【0024】
図3(a)は,MACを用いた従来方式を説明する為のデータ形式の一例である。RFID30は,ID情報301と,輻輳制御に用いる制御情報302を含む。尚,輻輳制御とは,複数のRFIDのID情報を一連の動作で読み込む技術である。ID情報301は,ヘッダ303,サービスヘッダ304,ID305,改竄検知符号306,EDC(1)(Error Detecting Code)307で構成される。ヘッダ303は,バージョン情報等を識別する情報であり,サービスヘッダ304は,利用用途等を識別する情報である。ID305は,RFID30に対する真の意味でのIDである。改竄検知符号306は,ヘッダ303,サービスヘッダ304,とID305に対する改竄検知符号であり,例えばMACである。EDC(1)307は,ヘッダ303,サービスヘッダ304,ID305,改竄検知符号306に対する誤り検出符号である。一方,制御情報302は,輻輳制御用データ(乱数)308とEDC(2)309からなり,EDC(2)309は輻輳制御用データ(乱数)308に対する誤り検出符号である。尚,輻輳制御用データ(乱数)308は,輻輳制御を行う際,順序を定める乱数である。
【0025】
本実施例では,この制御情報302に着目し,制御情報312に改竄検知用兼輻輳制御用として改竄検知符号318を埋め込んでいる(図3(b)参照)。尚,ヘッダ(1)313は,バージョン情報等を識別する情報であり,サービスヘッダ314は,利用用途等を識別する情報である。ID315は,RFID30に対する真の意味でのIDである。EDC(1)317は,ヘッダ(1)313,サービスヘッダ314,ID315に対する誤り検出符号である。
一方,制御情報302は,ヘッダ(2)320と輻輳制御用データ(乱数)兼改竄検知符号318とEDC(2)309からなり,ヘッダ(2)320は,バージョン情報やデータ長を識別する情報である。また,改竄検知符号318は,ヘッダ(1)313,サービスヘッダ314,とID315に対する改竄検知符号であり,例えばMACである。また,EDC(2)319はヘッダ(2)320と輻輳制御用データ(乱数)318に対する誤り検出符号である。
【0026】
この様に,本実施例では,改竄検知用の符号をID情報領域からはずし,制御情報領域に格納することで,ID情報領域内のIDそのものを格納する領域が増加する。また,制御領域内に改竄検知用の符号を書き加えることになるが,改竄検知用の符号を本来の輻輳制御用のデータとして兼用することにより,制御情報領域の増加分を少なくすることが可能となる。
【0027】
次に図4を用いてID発行フローを説明する。
【0028】
ID発行指示を受けたID発行装置10は,バージョンの識別に用いるヘッダ情報であるヘッダ(1)313と利用用途を識別するサービスヘッダ314とID315を生成し,更にヘッダ(1)313とサービスヘッダ314とID315に対する簡易的な誤り検出記号であるEDC(1)317を計算して,ID情報311を作成する(S001)。また,ID発行装置10は,暗号演算部103で,秘密鍵104を用いて前記IDに対するMAC値を計算する。更にバージョンの識別に用いるヘッダ(2)320を作成し,ヘッダ(2)320とMAC318に対するEDC(2)319を計算して,制御情報312を作成する(S002)。
【0029】
ID発行装置10は,必要に応じてS001に戻り,S001,S002で生成したID情報311と制御情報312の組を,必要なチップの個数分だけ生成する(S003)。
【0030】
S001,S002で生成したID情報311と制御情報312の組の組が,必要個数分集まったら,その組を全てリスト化し(S004),データ埋込装置20に受け渡し,データ埋込装置20は,そのリストに基づいて,各RFID30にID情報311を書き込む(S005),更に,RFID30に制御情報312を書き込み(S006),必要なチップの個数分だけ,S004でのリストに基づき,ID情報311と制御情報312をRFID30に書き込む(S007)。
【0031】
次に図5を用いてID検証フローを説明する。
【0032】
RFIDリーダ装置40は,輻輳制御用データ(乱数)の領域に格納できる最大数から降順に付近のRFID30へ輻輳制御用の数値を送信し,応答命令を出す(S101)。
【0033】
RFID30は,S101での応答命令に対し,RFIDリーダ装置40から送られてきた数値が,自身の輻輳制御用データ(乱数)317であるかを確認し(S102),自身の順番であればID情報311,制御情報312を連結し,RFIDリーダ装置40に送信する(S103)。
【0034】
RFIDリーダ装置40は,ID情報(ヘッダ(1)||サービスヘッダ||ID || EDC(1))311から,前記ヘッダ(1)||サービスヘッダ||IDに対する誤り検知符号EDC(1)317を確認し,且つ制御情報(ヘッダ(2)||改竄検知符号(MAC)||EDC(1))312から前記ヘッダ(2)||改竄検知符号(MAC)に対する誤り検知符号EDC(2)319を確認する(S104)。尚,誤りが検知された場合,設定回数分だけ再読込みを行い,それでも誤りが生じる場合,読込みエラーとして扱う。
【0035】
S104にて正しく読込みに成功した場合,ID情報311内のID315と制御情報312内の改竄検知符号(MAC)318より,秘密鍵404を用いてMAC検証を行う(S105)。
【0036】
S105にて検証失敗した場合,不正なIDとして処理し(S106),検証に成功した場合,正当なIDとして,業務アプリケーション装置50へ,ID情報311等の必要な情報を渡す(S107)。
【0037】
以上に述べたように,本一実施形態によれば,RFID30は,チップ全体のメモリ領域の増加を極力抑え,RFIDのID情報領域にできるだけ多く,IDそのもののデータを格納し,且つIDの正当性も保証することが可能となる。
【0038】
尚,本発明は,上記の本一実施形態に限定されるものではなく,その要旨の範囲内で様々な形態が可能である。
【0039】
例えば,図4のS001で,ID発行装置10は,IDを生成しているが,IDは外部から入力され,そのIDのMAC値のみを暗号演算部103で計算してもよい。
【0040】
また,改竄検知符号としてMACを例に挙げているが,電子署名等の技術を適用し,MAC値の代わりに電子署名値を用いてもよい。また,その際,電子署名の公開鍵をRFIDリーダ装置40の秘密鍵404の代わりにRFIDリーダ装置40が格納してもよいし,ヘッダ(2)302に公開鍵を書き込んでもよい。
【0041】
また,本一実施例では,改竄検知符号318の大きさを固定して説明しているが,ヘッダ(2)302に改竄検知符号318のデータ長を記載し,信頼性に応じて改竄検知符号318のデータ長を必要な長さに可変できるようにしても良い。
【0042】
また,本一実施例では,改竄検知符号318全体が輻輳制御用データ(乱数)を兼ねているが,改竄検知符号318の部分値,または改竄検知符号318を含むデータを輻輳制御用データ(乱数)として用いても良い。更には,輻輳制御用データ(乱数)を別途用意しているRFIDに対しては,必ずしも改竄検知符号と輻輳制御用データ(乱数)を兼用しなくてもよい。
【0043】
また,本一実施例では,ID情報311と制御情報312をRFIDリーダ装置40に送っているが,必ずしもID情報311と制御情報312を送るのではなく,IDの正当性検証を必要としない場合などには,ID情報311のみをRFIDリーダ装置40に送信してもよい。
【0044】
また,図5にてRFIDリーダ装置40は,輻輳制御用データ(乱数)の領域に格納できる最大数から降順に付近のRFID30へ送信し,応答命令を出しているが,順序を示す値を昇順やランダムにRFID30へ送信し,応答命令を出してもよい。また,RFID30側の輻輳制御用データ(乱数)318を,例えば,8bitずつに分割し,RFIDリーダ装置40は,8bitのデータを昇順または降順またはランダムにRFID30へ送信し,RFID30は,8bitずつに分割した輻輳制御用データ(乱数)318の内,最初の8bitがRFIDリーダ装置40から送られてきた値と一致しているかを判断して,応答してもよい。その際,最初の8bitで同じ番号のRFID30が複数存在した場合,再度,RFIDリーダ装置40は,8bitのデータを昇順または降順またはランダムにRFID30へ送信し,RFID30は,8bitずつに分割した輻輳制御用データ(乱数)の内,次の8bitがRFIDリーダ装置40から送られてきた値と一致しているかを判断して,応答し,それでも同じ番号が存在した場合,同様にその次の8bitと,次々を繰り返すことにより,輻輳制御を行ってもよい。
【0045】
また,改竄検知符号318は,輻輳制御用データ(乱数)として兼用しているが,改竄検知符号318またはその部分値を乱数生成用等に用いられる関数の初期値(IV)として利用し,動的に輻輳制御用の乱数を生成してもよい。
【0046】
また,改竄検知符号と輻輳制御用データ(乱数)が一致し,且つRFIDリーダ装置40は,輻輳制御用データ(乱数)の領域に格納できる最大数から降順または昇順やランダムに付近のRFID30へ送信し,応答命令を出している場合,応答してきたRFID30の改竄検知符号318は,RFIDリーダ装置40が輻輳制御用の順番を示す為に送信した値と等しい為,RFID30はID情報311のみをRFIDリーダ装置40に送信し,RFIDリーダ装置40は,RFID30から送られてきたID315と,輻輳制御用の順番を示す為にRFIDリーダ装置40が送信した値から,IDの正当性を検証してもよい。
【0047】
また,図5にて,RFIDリーダ装置40は,S107にてMAC検証が成功した場合に,業務アプリケーション50へ必要な情報を送信しているが,S104のEDC検証が通過した時点で,業務アプリケーション50へ必要な情報を送信し,その後,RFIDリーダ装置40は,MAC検証を引き続き行い,その結果を再度,業務アプリケーション50へ送ってもよい。
【0048】
また,本一実施例では,RFIDリーダ装置40内で,IDの正当性検証を行っているが,業務アプリケーション装置50または,ネットワークで繋がっているサーバ等に本実施例の検証機能を持たせ,RFIDリーダ装置40は,RFID30から送られてきた値のEDCのみを検証し,業務アプリケーション装置50またはネットワークで繋がっているサーバ等に引き渡し,業務アプリケーション装置50またはネットワークで繋がっているサーバ等でIDの正当性を検証してもよい。
【符号の説明】
【0049】
10:ID発行装置,20:データ埋込装置,30:RFID,40:RFIDリーダ装置,50:業務アプリケーション装置,60,70:情報処理装置,61:読取装置,62,74:メモリ,63:入出力装置,64:CPU,65:記憶装置,66:通信装置,67:記憶媒体,68,75:バス,71:アンテナ部,72:電源部,73:論理部101,401:入出力部,102,402:制御部,103,403:暗号演算部,104,404:秘密鍵,301,311:ID情報,302,312:制御情報,303,313,319:ヘッダ,304,314:サービスヘッダ,305,315:ID,306:改竄検知符号,307,309,317,319:EDC,308:輻輳制御用データ(乱数),318:改竄検知符号兼輻輳制御用データ(乱数)

【特許請求の範囲】
【請求項1】
ID情報と,それに対応する改ざん検知符号情報と,を有し,
前記改ざん検知符号情報が,複数のRFIDタグの読み取りを制御する輻輳制御情報を兼ねていることを特徴とするRFIDグ。
【請求項2】
請求項1に記載のRFIDタグにおいて,
前記ID情報と改ざん検知符号情報とは別領域に格納されており,各々を連動させることにより,前記ID情報の正当性を確認するRFIDタグ。
【請求項3】
請求項1のRFIDタグにおいて,改ざん検知符号情報を,制御用データ又は関数入力の初期値のデータとして兼用することを特徴とするRFIDタグ。
【請求項4】
ID情報と,それに対応する改ざん検知符号情報と,を有したRFIDタグを用いたRFID読み取り方法において,
前記RFIDタグは前記改ざん検知符号情報が,複数のRFIDタグの読み取りを制御する輻輳制御情報を兼ねていて,
前記輻輳制御情報の領域に記憶された改ざん検知符号情報を用いて前記IDの正当性を判断するRFID読み取り方法。
【請求項5】
請求項4のRFID読み取り方法において,改ざん検知符号情報を,制御用データ又は関数入力の初期値のデータとして兼用することを特徴とするRFID読み取り方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2010−277493(P2010−277493A)
【公開日】平成22年12月9日(2010.12.9)
【国際特許分類】
【出願番号】特願2009−131709(P2009−131709)
【出願日】平成21年6月1日(2009.6.1)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】