JP2007188375A - データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 - Google Patents
データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 Download PDFInfo
- Publication number
- JP2007188375A JP2007188375A JP2006006905A JP2006006905A JP2007188375A JP 2007188375 A JP2007188375 A JP 2007188375A JP 2006006905 A JP2006006905 A JP 2006006905A JP 2006006905 A JP2006006905 A JP 2006006905A JP 2007188375 A JP2007188375 A JP 2007188375A
- Authority
- JP
- Japan
- Prior art keywords
- tag
- variable
- authentication
- random number
- secret key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】送受信データからIDを追跡することを困難にしつつ、サーバ側における照合の負荷を軽減する認証技術を提供する。
【解決手段】タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)3つ組とし、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減する。また、タグはタグ固有鍵を記憶しておき、ID取得要求への応答があるたびに可変IDを上記タグ固有鍵を使って更新することで、追跡困難性を実現する。
【選択図】図8
【解決手段】タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)3つ組とし、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減する。また、タグはタグ固有鍵を記憶しておき、ID取得要求への応答があるたびに可変IDを上記タグ固有鍵を使って更新することで、追跡困難性を実現する。
【選択図】図8
Description
本発明は、ユーザのIDを認証する技術に関する。
現在、携帯電話や非接触型ICカード、商品タグなどを含むユビキタスネットワークが急速に拡大している。これらの携帯端末の用途は多岐に渡るが、1つの大きな用途として端末とそれを持つユーザ(もしくは商品など)を関連付け、ユーザの位置や状態などを把握するシステムが検討されている。携帯電話やICカードを使った電子マネーサービスや入退出管理システム、バーコードの代わりに無線タグを使った商品管理などはその実例である。
これらの機器(以下、一括してタグと称す)は各々が固有のIDを持ち、タグリーダからの要求に応えてIDやその他のデータをリーダを介してシステムを管理するサーバに送信する。このデータを蓄積することで、タグと関連付けられたユーザ(もしくは機器、商品)の管理が可能となり、商品の流通経路監視やユーザの位置確認などを行うことができる。このようなシステムで重要なことは、タグから送信されるデータの信頼性であり、データが(1)正規のタグから送信されたデータであること、(2)通信路上でデータが改ざんされていないこと、などをチェックするための仕組みが必要となる。このため、IDやデータの完全性を検証するための認証コードを送信データに付加することが望ましい。
ユーザIDの正当性を検証するためにもっとも広く用いられているのがパスワード認証であるが、通常のパスワード認証ではパスワード自体が通信路上を流れるため、インターネット通信や無線通信での利用には適していない。このような公開通信路では、CHAP(Challenge Handshake Authentication Protocol)などを利用する。
CHAP認証は、公開通信路上で利用してもタグの秘密情報(固有鍵k(I)など)が漏洩しない他、ID取得要求ごとにサーバが乱数を生成し、認証コード(ハッシュ値)の再利用ができない。このため、リプレイ攻撃を防止することができる。
このようにCHAP認証は優れた認証技術であるが、ユビキタスネットワークには適さない面もある。たとえば近年、プライバシ保護の観点から追跡可能性という新しい安全性の概念が発生した。追跡可能性とは、文字通りある特定のユーザやIDの行動を追跡できるかどうか、というものである。CHAPなどの既存の認証技術では、まずサーバにIDを送信するため、通信を傍受する攻撃者は常にIDを得ることができる。したがって、通信を傍受し続けることで個人の位置を把握することが可能である。また、他のID(商品タグ)との組み合わせにより、ある個人の嗜好などを分析することも可能となる。これは上記のプライバシ保護の観点からして望ましくない性質である。また、通信を傍受し続けることで、第三者により行動が追跡される畏れもある。このような用途においては、タグの追跡が困難な認証方法を使用する必要がある。
これに対し、IDを秘匿したまま認証を行う方法が提案されている。通常の認証では、タグのIDを検索キーとして、検証に必要なデータをデータベースから抽出するが、これらの方法では検索キーを使わずに、データベースの全件検索を行うことを基本アイデアとしている(非特許文献1、2参照)。
Stephen A. Weis 粘ecurity and privacy in Radio-Frequency Identification Devices 、[Online]、, MIT、2003年5月9日、p.40−42、[2005年1月28日検索]、インターネット<URL: http://theory.lcs.mit.edu/~sweis/pdfs/masters.pdf>
大久保美也子、鈴木幸太郎、木下真吾、「Forward-secure RFID privacy protection for low-cost RFID」、 コンピュータセキュリティシンポジウム CSS 2003予稿集、、2003年10月31日、p.493−494
非特許文献1に記載されている認証方法では、認証の際にIDを送信せず、乱数に依存するハッシュ値のみを送信して認証を行うことで、追跡困難性を実現している。また、非特許文献2に記載されている認証方法では、IDを通信を行うたびに更新し、IDから計算されるハッシュ値を送信して認証を行うことで追跡困難性を実現している。
しかし、非特許文献1、2に記載されている認証方法は、いずれも検索用のキーを送信しないことでプライバシをIDを秘匿したまま認証を行い、照合の際にデータベースに登録されているIDすべてについて照合を行う。すなわち、IDをデータベースから検索するためのキーがないため、データベースの全件検索を行う必要がある。
このため、データベース(もしくは認証用サーバ)の負荷が従来のCHAPなどに比べてひじょうに大きく、大規模なシステムには不向きであった。しかしその一方で、このようなプライバシ保護が可能な認証方法はユビキタス環境においてその真価を発揮する。また、主な用途として期待されているのも不特定多数のユーザを識別する大規模システムである。
したがって、プライバシ保護が可能で、かつ、大規模システムに適した認証技術が望まれている。
本発明は、このような事情を鑑みてなされたもので、送受信データからIDを追跡することを困難にしつつ、サーバ側における照合の負荷を軽減する認証技術を提供するものである。
本発明はIDの追跡を困難にする認証方法であって、非特許文献1に記載されてる認証方法の欠点を克服する技術を提供する。本発明は以下の3点を特徴とする。
1.送信するデータに検索キーとして可変のIDを含める
2.可変のIDは通信を行うたびに更新する
3.可変のIDを更新するときには秘密鍵を利用し、異なる可変のIDを結びつけることを困難にする
さらに詳しく述べると、本発明の提供する認証方法では、タグは秘密鍵と可変IDを記憶しており、タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)3つ組とする。ここで、照合用ハッシュ値は乱数と秘密鍵から計算される値である。サーバでは、受信したデータのうち、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減することができる。また、タグはID取得要求への応答があるたびに、可変IDと秘密鍵から新しい可変IDを計算することで追跡困難性を実現する。
2.可変のIDは通信を行うたびに更新する
3.可変のIDを更新するときには秘密鍵を利用し、異なる可変のIDを結びつけることを困難にする
さらに詳しく述べると、本発明の提供する認証方法では、タグは秘密鍵と可変IDを記憶しており、タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)3つ組とする。ここで、照合用ハッシュ値は乱数と秘密鍵から計算される値である。サーバでは、受信したデータのうち、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減することができる。また、タグはID取得要求への応答があるたびに、可変IDと秘密鍵から新しい可変IDを計算することで追跡困難性を実現する。
より具体的な、本発明の態様は、たとえば、通信装置1と記憶装置1と暗号処理装置1とを備える1個以上のタグと、通信装置2と記憶装置2と暗号処理装置2とを備えるタグ認証装置からなるシステムにおいてタグ認証装置がタグからの通信を識別するための方法であって、タグの記憶装置1には秘密鍵1と1回の通信ごとに更新される可変ID1が記憶されており、タグ認証装置の記憶装置2には各々のタグの情報を記録したテーブルが記憶されており、テーブルはタグのIDと各タグに対応する秘密鍵2と各タグに対応する可変ID2の値を項目として含んでおり、タグの暗号処理装置1は乱数生成装置、認証コード生成装置1、可変ID更新装置1を備え、タグ認証装置の暗号装置2は認証コード生成装置2、可変ID更新装置2を備え、タグ認証装置は、通信装置2を介して定期的にタグに対して認証を要求する信号を発信し、タグは、信号を受信すると乱数生成装置を用いて乱数rを生成し、乱数と秘密鍵1とを認証コード生成装置1の入力として認証コード1を生成し、信号に対する応答として、乱数と、可変ID1と、認証コード1とを通信装置1を介してタグ認証装置に送信し、秘密鍵1と可変ID1とを可変ID更新装置1の入力として新しい可変IDを計算し、その結果を記憶装置1に記憶し、タグ認証装置は、タグからの応答を受信すると応答に含まれる可変ID1を検索キーとしてテーブルを検索し、該当するタグのIDと対応する秘密鍵2を取り出し、応答に含まれる乱数を認証コード生成装置2に入力して得られた値と、応答に含まれる認証コードを照合することで、応答がテーブルに記録されているタグからのものであることを確認し、可変ID1と秘密鍵2を可変ID更新装置2の入力として新しい可変IDを計算し、その結果を記憶装置2に記憶することを特徴とする。
さらに、暗号処理装置1および暗号処理装置2は、一方向性ハッシュ関数を1つ以上備えてもよい。
さらに、認証コード生成装置は、一方向性ハッシュ関数Hashを使って、認証コードC
C=Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは乱数生成装置が生成した乱数とし、k||rは秘密鍵と乱数のビット列としての連結を指す)
を生成してもよい。
C=Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは乱数生成装置が生成した乱数とし、k||rは秘密鍵と乱数のビット列としての連結を指す)
を生成してもよい。
さらに、可変ID更新装置は、一方向性ハッシュ関数Hashを使って、新しい可変IDv(t+1)
v(t+1)=Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)はタグが現在記憶している可変IDとし、k||v(t)は秘密鍵と可変IDのビット列としての連結を指す)
を生成してもよい。
v(t+1)=Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)はタグが現在記憶している可変IDとし、k||v(t)は秘密鍵と可変IDのビット列としての連結を指す)
を生成してもよい。
さらに、テーブルはさらにすべてのタグについて複数回分の可変IDv(t+1)〜v(t+M)を記憶してもよい。
さらに、検索キーがテーブルに記載されている可変IDv(t)に該当しない場合に、あらかじめ計算しておいた複数回分の可変IDのリストから検索を行ってもよい。
さらに、あらかじめ計算しておいた複数回分の可変IDのリストから検索を行っても該当するタグが無い場合に、テーブルに記憶されているすべてのタグIDごとに対応する秘密鍵と応答に含まれる乱数とを認証コード生成装置2に入力して得られた値と応答に含まれている認証コード1とを照合し、2つの値が一致するタグIDを該当タグと識別してもよい。
また、本発明の他の具体的態様は、無線通信装置1と記憶装置1と暗号処理装置1とを備える1個以上のタグと、通信装置2と記憶装置2と暗号処理装置2とを備えるタグ認証装置と、タグと通信するための無線通信装置2と、タグ認証装置と通信するための通信装置1とを備える1個以上のタグリーダと、からなる無線タグ位置登録システムであって、タグの記憶装置1には秘密鍵1と1回の通信ごとに更新される可変ID1が記憶されており、タグ認証装置の記憶装置2には各々のタグの情報を記録したタグテーブルとタグリーダの情報を記録したリーダテーブルが記憶されており、タグテーブルはタグのIDと各タグの現在位置、各タグに対応する秘密鍵2、各タグに対応する可変ID2の値を項目として含んでおり、リーダテーブルはタグリーダのIDと各タグリーダを設置した場所の情報を項目として含んでおり、タグの暗号処理装置1は乱数生成装置、認証コード生成装置1、可変ID更新装置1を備え、タグ認証装置の暗号装置2は認証コード生成装置2、可変ID更新装置2を備え、無線通信装置1と無線装置2は一定距離以下でのみ通信可能であり、タグリーダは無線通信装置2を介して定期的に認証を要求する信号をブロードキャストし、タグは、ブロードキャストされた信号を受信すると乱数生成装置を用いて乱数rを生成し、乱数と秘密鍵1とを認証コード生成装置1の入力として認証コード1を生成し、信号に対する応答として、乱数と、可変ID1と、認証コード1とを含むデータを通信装置1を介してタグリーダに送信し、秘密鍵1と可変ID1とを可変ID更新装置1の入力として新しい可変IDを計算し、その結果を記憶装置1に記憶し、タグリーダは、タグからの通信を受信するとタグからの通信で受信したデータにタグリーダのIDを付加し、通信装置2を介してタグ認証装置に位置登録要求信号として送信し、タグ認証装置は、タグリーダからの位置登録要求信号を受信すると位置情報登録要求信号に含まれる可変ID1を検索キーとしてタグテーブルを検索し、該当するタグのIDと対応する秘密鍵2を取り出し、位置情報登録要求信号に含まれる乱数を認証コード生成装置2に入力して得られた値と、応答に含まれる認証コードを照合することで、応答がテーブルに記録されているタグからのものであることを確認し、可変ID1と秘密鍵2を可変ID更新装置2の入力として新しい可変IDを計算し、位置情報登録要求信号に含まれるタグリーダのIDを検索キーとしてリーダテーブルからタグリーダの位置情報を取得し、タグリーダの位置情報と新しい可変IDを記憶装置2に記憶することを特徴とする。
さらに、暗号処理装置1および暗号処理装置2は一方向性ハッシュ関数を1つ以上備えてもよい。
さらに、認証コード生成装置は、一方向性ハッシュ関数Hashを使って、認証コードC
C=Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは乱数生成装置が生成した乱数とし、k||rは秘密鍵と乱数のビット列としての連結を指す)
を生成してもよい。
C=Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは乱数生成装置が生成した乱数とし、k||rは秘密鍵と乱数のビット列としての連結を指す)
を生成してもよい。
さらに、可変ID更新装置は、一方向性ハッシュ関数Hashを使って、新しい可変IDv(t+1)
v(t+1)=Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)はタグが現在記憶している可変IDとし、k||v(t)は秘密鍵と可変IDのビット列としての連結を指す)
を生成してもよい
さらに、タグテーブルはさらにすべてのタグについて複数回分の可変IDv(t+1)〜v(t+M)を記憶してもよい。
v(t+1)=Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)はタグが現在記憶している可変IDとし、k||v(t)は秘密鍵と可変IDのビット列としての連結を指す)
を生成してもよい
さらに、タグテーブルはさらにすべてのタグについて複数回分の可変IDv(t+1)〜v(t+M)を記憶してもよい。
さらに、検索キーがタグテーブルに記載されている可変IDv(t)に該当しない場合に、あらかじめ計算しておいた複数回分の可変IDのリストから検索を行ってもよい。
さらに、あらかじめ計算しておいた複数回分の可変IDのリストから検索を行っても該当するタグが無い場合に、タグテーブルに記憶されているすべてのタグIDごとに対応する秘密鍵と応答に含まれる乱数とを認証コード生成装置2に入力して得られた値と応答に含まれている認証コード1とを照合し、2つの値が一致するタグIDを該当タグと識別してもよい。
さらに、タグリーダはさらに記憶装置3と暗号処理装置3とを備え、記憶装置3は秘密鍵3を記憶しており、暗号処理装置3は乱数生成装置3と認証コード生成装置3とを備え、タグリーダはタグからの通信を受信すると暗号処理装置3を用いて乱数を生成し、秘密鍵3と上記乱数を認証コード生成装置3への入力とし、得られた値をタグリーダIDに対する認証コードとして、タグ認証装置に送信する位置登録要求信号に付加してタグ認証装置に送信してもよい。
さらに、通信装置4を備える1個以上の表示用端末と、通信装置5を備える1個以上のアクセスポイント、とを備え、上記表示用端末は通信装置4を介して上記アクセスポイントに接続し、さらにタグ認証装置にタグ位置閲覧要求を送信し、タグの現在位置を取得してもよい。
さらに、タグ認証装置の記憶装置2はさらに表示用端末テーブルとを備え、上記表示端末テーブルは端末のIDと、各タグが閲覧してよいタグのIDからなるリストとを含み、タグ位置閲覧要求は表示用端末のIDを含み、タグ認証装置は、表示用端末からのタグ位置閲覧要求に対し、タグ位置閲覧要求に含まれる表示用端末のIDを検索キーとして上記表示用端末テーブルを検索し、要求を行った表示用端末が閲覧可能なタグIDのリストを取得し、上記リストに含まれる各タグIDを検索キーとしてタグテーブルを検索し、各タグの位置情報を取得し、取得した情報を表示用端末に返信してもよい。
さらに、表示用端末はさらに暗号処理装置を備え、タグ認証装置との通信を暗号化してもよい。
上記のように、本発明の認証方法ではサーバに送信するデータに検索キーとして使用できる可変のIDを含めるため、サーバは受信したデータがどのタグから送信されたものかを少ない負荷で、データベースから探し出すことができる。
本発明によれば、認証時のサーバの負荷を大幅に削減することができる。この結果、大規模なシステムにおいてIDの追跡困難性を実現可能な認証システムを提供できる。
以下に、本発明を適用する実施形態を説明する。
本実施形態は無線タグを利用したユーザの位置確認システムであり、ユーザは無線タグを携帯しているものとする。システムは一定の監視区域を対象とし、この区域内にタグリーダを設置する。タグリーダは一定時間おきにタグID取得要求をブロードキャストする。通信可能距離内に無線タグが存在すれば、タグは要求に対して応答する。タグリーダは受信した応答を認証サーバに転送し、認証サーバはタグの認証を行う。本実施形態では、タグリーダがタグからの応答を認証サーバに転送する際にタグリーダのIDを同時に送信することで、タグリーダの設置位置とタグを関連付け、タグの現在位置を確認する。
このようなシステムでは、通信可能距離を半径とする円で監視区域を充填することで、区域内のユーザの行動を完全に捕捉することができる。たとえば、遊園地などの大型レジャー施設で、幼児などにタグを配布して迷子の捜索を容易にするようなシステムでは、このように監視区域を充填するようにタグリーダを配置することで、漏れなく幼児の位置を確認することができる。
また、大型店舗などでは、たとえばエレベータや階段などフロアへの出入り口にタグリーダを設置することで、大雑把にユーザが何階にいるかを確認することができる。同様に、ビルの入口などで緩やかな入退出管理を行うことも可能である。
図1は本実施形態のシステム構成を表した図である。本実施形態は、タグ(201)、タグリーダ(211)、認証サーバ(221)、データベース(DB)サーバ(231)、表示用携帯端末(241)からなるシステムである。
タグ(201)は記憶装置(203)と通信装置(202)、タグ(201)の認証コードの生成などを行うための暗号処理装置(204)、データ処理を統括するデータ登録装置(205)からなる。
タグリーダ(211)はタグ(201)と通信するための通信装置1(212)、認証サーバと通信するための通信装置2(213)、リーダの認証コード生成などを行う暗号化装置(214)、データ処理を統括するデータ登録・参照装置(215)からなる。図ではタグ、タグリーダは1つであるが、一般には一つ以上のタグ、一つ以上のタグリーダからなるシステムである。
認証サーバ(221)はタグリーダ(211)や表示用携帯端末(241)と通信を行うための通信装置(222)、DBアクセス装置(223)、タグ(201)やタグリーダ(211)の認証を行うための認証装置(225)、検証用の認証コード生成などを行う暗号化装置(226)、データ処理を統括するデータ登録・参照装置(224)からなる。
DBサーバ(231)はタグリーダのIDと位置情報(タグリーダの設置位置)からなるリーダテーブル(232)、表示用携帯端末のIDと各端末が閲覧可能なタグのIDからなる携帯端末テーブル(233)、タグのIDとタグの固有鍵、タグの可変IDからなるタグテーブル(234)からなる。
表示用携帯端末(241)は認証サーバと通信するための通信装置(242)、記憶装置(243)と携帯端末の認証に必要な計算を行う暗号化装置(244)、表示装置(245)、およびデータ処理を統括するデータ登録・参照装置(246)からなる。
これらの機器はネットワークを通じて互いに通信することができる。
本実施形態では、ユビキタスネットワークで用いられるRFID(Radio Frequency IDentification)タグと同じく、タグ(201)とタグリーダ(211)の間の通信は無線通信を想定しているが、通常の有線による通信でも良い。また、タグリーダ(211)、認証サーバ(221)、表示用携帯端末(241)はLANなどの有線ネットワークで繋がっていることを想定しているが、表示用携帯端末(241)などは無線通信でこのネットワークに接続しても良い。また、DBサーバ(231)もこのネットワークに接続しても良い。
次に、認証サーバ(221)を実現するものとして、たとえば図2のPC(101)を例に説明する。PC(101)はCPU(102)、メモリ(103)、ハードディスクなどの外部記憶装置(104)、通信インターフェース(IF)(105)、周辺機器接続IF(106)からなり、周辺接続機器IF(106)を通じてモニタ(107)と接続している。
外部記憶装置(104)には、暗号処理装置(226)を実現する暗号処理プログラム(108)、認証装置(225)を実現する認証プログラム(109)などが格納されている。また、外部記憶装置(104)には、LANやインターネットなどのネットワーク(110)に接続する通信IF(105)と協働して通信装置(222)を実現するプログラムや、周辺機器接続IF(106)と協働してDBアクセス装置(223)を実現するプログラムも格納されている。。さらにDBサーバプログラムを外部記憶装置(104)内に内蔵しても良い。
そして、CPU(102)がメモリ(103)、外部記憶装置(104)に格納されたプログラムを実行することにより、認証サーバ(221)の各機能が実現する。
その他、タグ(201)、タグリーダ(211)、DBサーバ(231)、表示用携帯端末(241)は、いずれもPC(101)と同様の構成を備える情報処理装置において、CPU(102)がメモリ(103)、または外部記憶装置(104)に格納されたプログラムを実行することにより具現化されるものである。
これらのプログラムは、あらかじめ、上記PC(101)または情報処理装置内のメモリに格納されていても良いし、必要なときに、情報処理装置が利用可能な、着脱可能な記憶媒体または通信媒体を介して、他の装置から導入されてもよい。通信媒体とは、ネットワークまたはネットワーク上の搬送波やデジタル信号を指す。
なお、DBサーバ(231)は周辺機器接続IF(106)や通信IF(105)を通じて外部接続のハードディスクなどの外部記憶装置やネットワーク(109)に接続された別のPCやストレージとして実現されたDBサーバ(231)として実現しても良い。
図3はDBサーバ(231)に記憶されているリーダテーブル(232)の構成図である。リーダテーブル(232)の項目はタグリーダID(301)と位置情報(302)である。位置情報(302)は、タグリーダ(211)を設置した位置を表す情報で、システムの構成時に設定する。
図4はDBサーバ(231)に記憶されている表示端末テーブル(233)の構成図である。表示端末テーブル(233)の項目は表示端末ID(401)と、各表示端末から情報を取得できるタグ(201)のリスト(402)である。
図5はDBサーバ(231)に記憶されているタグテーブル(234)の構成図である。タグテーブル(234)の項目はタグリーダID(501)とタグの固有鍵(502)、タグの位置情報(503)、そしてタグの可変ID(504)である。タグの可変IDは現在時刻tについてのみ記憶しても良いが、本実施形態では同期ずれ(後述)に対応するために何回か先の可変IDについてもあらかじめ計算して可変IDの未来値(505)として記憶しておく。
図6はタグの位置情報をDBサーバに登録するためのプロトコルである。ステップ4のタグ(201)からのタグID取得応答(601)とステップ8のタグ認証は固定IDを秘匿する認証方法によるものである。タグ(201)と認証サーバ(221)の処理の詳細は後述する。
ステップ1.タグリーダ(211)から近傍のタグ(201)に対し、タグID取得要求(601)を行う。
ステップ2.タグ(201)は、タグリーダ(211)にタグID取得応答(602)を行う。
ステップ3.タグリーダ(211)は、認証サーバ(221)に位置情報登録要求(603)を行う。
ステップ4.認証サーバ(221)は、DBサーバ(231)にリーダID検索要求(604)を行う。
ステップ5.DBサーバ(231)は、リーダテーブル(232)からリーダID ridを検索し、認証サーバ(221)にリーダID検索応答(605)を行う。
ステップ6.認証サーバ(221)は、タグリーダ(211)を認証後、DBサーバ(231)にタグID検索要求(606)を行う。
ステップ7.DBサーバ(231)は、タグテーブル(234)からタグIDを検索し、認証サーバ(221)にタグID検索応答(607)を行う。
ステップ8.認証サーバ(221)は、タグIDを認証後、DBサーバ(231)に位置情報登録要求(608)を行う。
ステップ9.DBサーバ(231)は、タグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を行う。
ステップ10.認証サーバ(221)は、タグリーダ(211)に位置情報登録応答(610)を行う。
図7はタグリーダ(211)からID取得要求(601)を受信したタグ(201)の動作を表すフローチャートである。タグ(201)は記憶装置(203)にタグ固有鍵k(i)(502)と可変ID v(i, t) (504)を記憶しているものとする。タグ(201)はタグリーダ(211)からID取得要求(601)を受信すると、以下の以下のステップにしたがって処理を行う。
ステップ1(702).タグ(201)は暗号処理装置(204)を使って乱数r(t)を生成する。
ステップ2(703).タグ(201)は暗号処理装置(204)にタグ固有鍵k(i) (502)と乱数r(t)を入力し、認証コードを次のように計算する。
h(i, t) = MAC(k(i), r(t))
ここで、MAC(x, y)は認証コードを計算するための関数である。この関数はSHA−1などのハッシュ関数を用いたHMACやAESなどのブロック暗号を用いたCMACなどの標準的なメッセージ認証子生成方法を用いれば良い。また、単にタグ固有鍵k(i) (502)と乱数r(t)を連結したものをハッシュ関数で処理し、その出力を認証コードh(i, t)としても良い。
ここで、MAC(x, y)は認証コードを計算するための関数である。この関数はSHA−1などのハッシュ関数を用いたHMACやAESなどのブロック暗号を用いたCMACなどの標準的なメッセージ認証子生成方法を用いれば良い。また、単にタグ固有鍵k(i) (502)と乱数r(t)を連結したものをハッシュ関数で処理し、その出力を認証コードh(i, t)としても良い。
ステップ3(704).タグ(201)はID取得応答(602)としてT(i, t) = (v(i, t),r(t), h(i, t))をタグリーダ(211)に送信する。
ステップ4(705).タグ(201)は暗号処理装置(204)にタグ固有鍵k(i)(502)と時刻t(現在)の可変ID v(i, t)(504)を入力し、時刻t+1の可変IDを次のように計算する。
v(i, t+1) = H(k(i), v(i, t))
ここで、Hは可変IDの更新を行う関数であり、認証コードを計算するための関数MACと同じものを用いても良い。新しい可変ID v(i, t+1)はデータ登録装置(205)を介して記憶装置(203)に格納される。
ここで、Hは可変IDの更新を行う関数であり、認証コードを計算するための関数MACと同じものを用いても良い。新しい可変ID v(i, t+1)はデータ登録装置(205)を介して記憶装置(203)に格納される。
ステップ5(706).タグ(201)は処理を終了し、待機状態に移行する。
待機状態にあるタグ(201)はID取得要求(601)を受けると上記のステップを繰り返す。タグリーダ(211)からのID取得要求(601)が頻繁にある場合や、タグリーダ1個あたりの通信可能エリアが広い場合には、一定時間の休止を設定すれば良い。
図8はタグリーダ(211)からの位置情報登録要求(603)を受信した認証サーバ(221)およびDBサーバ(231)の動作を表すフローチャートである。以下、このフローチャートに従って認証サーバの動作を説明する。
ステップ1(802).認証サーバ(221)はタグリーダ(211)から位置情報登録要求を受信すると、まずタグリーダ(211)の認証を行う。この認証は別途CHAPなどのプロトコルを実行しても良いし、電子署名などを用いた認証を行っても良い。電子署名を用いた認証であれば、認証サーバ(221)はリーダID検索要求(604)をDBサーバ(231)に送信し、DBサーバ(231)からのリーダID検索応答(605)としてタグリーダ(211)の公開鍵を受け取り、位置情報登録要求(603)に含まれているタグリーダ(211)の署名を検証する。また、この際にDBサーバ(231)からタグリーダ(211)の位置情報posを取得しておく。
なお、CHAPによる認証の概要は次の通りである。
ステップA.サーバSはIDタグIにID取得要求を送信する。
ステップB.サーバSは乱数randを生成し、IDタグIに送信する。
ステップC.IDタグIはサーバSにIDと乱数rand、ハッシュ値h = Hash(k(I), rand)の組 (I, rand, h) を送信する。ここでk(I)はタグIの固有鍵である。
ステップD.サーバSはデータベースに登録されているタグのリストからタグIに対応する固有鍵k(I)を取り出し、 ハッシュ値h’ = Hash(k(I), rand) を計算する。
ステップE.サーバSはh = h’ であればIDを認証する。 h ≠ h’ であれば、サーバS はタグからの応答が不正なものであると判断する。
ステップ2(803).DBサーバ(231)にタグID検索要求(606)を送信し、タグ(201)の可変ID v(i, t)を検索キーとしてDBのタグテーブル(234)から時刻tの可変IDを検索する。
ステップ3(804、805).DBサーバ(231)はステップ2(803)の検索で該当するタグIDが見つからなければ例外処理(1)に移行する。
ステップ4(806).DBサーバ(231)はステップ2(803)の検索で該当するタグIDを見つけると、タグID検索応答(607)として該当するタグのID(501)と付随するエントリ(502〜505)を認証サーバ(221)に送信する。
ステップ5(807).認証サーバ(221)は照合のための以下の認証コード値を次のようにして計算する。
x = MAC(k(i'), r(t))
ステップ6(808).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ5(807)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ7(809)に移行する。一致しない場合にはステップ10(813)に移行する。
ステップ6(808).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ5(807)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ7(809)に移行する。一致しない場合にはステップ10(813)に移行する。
ステップ7(809).認証コードが一致した場合には、認証サーバ(221)は可変IDの未来値(505)の最後の値(時刻t+Mの値) v(i', t+M)を取り出し、時刻t+M+1の可変IDを次のように計算する。
v(i', t+M+1) = H(k(i'), v(i, t+M))
認証サーバ(221)は、受信したエントリについて「現在の可変ID」(504)の項目をv(i', t+1)で書き換える。また、可変IDの未来値(505)についても、一つずつ位置を繰り上げていき、リストの最後に新しく計算した時刻t+M+1の可変ID v(i', t+M+1)を追加する。さらにエントリの位置情報(503)を位置情報登録要求(603)に含まれる位置情報posに書き換える。
認証サーバ(221)は、受信したエントリについて「現在の可変ID」(504)の項目をv(i', t+1)で書き換える。また、可変IDの未来値(505)についても、一つずつ位置を繰り上げていき、リストの最後に新しく計算した時刻t+M+1の可変ID v(i', t+M+1)を追加する。さらにエントリの位置情報(503)を位置情報登録要求(603)に含まれる位置情報posに書き換える。
ステップ8(810).認証サーバ(221)はDBサーバ(231)に位置情報登録要求(608)を送信し、ステップ7(809)で計算した新しいエントリをDBサーバ(231)に送信する。DBサーバ(231)は位置情報登録要求(608)を受信すると、その情報に基づきタグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を返信する。
ステップ9(811、812).認証サーバ(221)はタグリーダ(211)に位置情報登録応答(610)を行い、タグ(201)が認証されたことをタグリーダ(211)に伝え、セッションを終了する。
ステップ10(813).認証コードが一致しない場合には、認証サーバ(221)はDBサーバ(231)にDBサーバ(231)に位置情報登録要求(608)を送信し、認証が失敗したことを伝える。DBサーバ(231)はこれをログに記録する。ログはDB全体で持っても良いし、タグテーブルに該当項目を設け、タグごとに記録しても良い。後者の場合であれば、認証が失敗した回数をタグごとに記録できるので、リプレイ攻撃など、システムに対する攻撃者(特定のタグに対するなりすまし攻撃など)を検出することができる。また、ログ自体は認証サーバが記録しても良い。
ステップ11(814、815).認証サーバ(221)はタグリーダ(211)に位置情報登録応答(610)を行い、タグ(201)の認証が失敗したことをタグリーダ(211)に伝え、セッションを終了する。
なお、ここでは認証サーバ(221)はタグリーダ(211)からの位置情報登録要求(603)ごとにDBサーバ(231)にタグID検索要求(606)を出しているが、システムを稼動させるにあたって、あらかじめDBのタグテーブル(234)などを認証サーバ(221)のメモリ上などに展開しておくことでDBサーバ(231)へのアクセスを削減し、検索を高速に処理することができる。また、認証サーバ(221)からタグリーダ(211)への位置情報登録応答(610)は省略しても良い。
図9は図8のフローチャートのステップ3で例外処理(1)に移行した場合のDBサーバ(231)および認証サーバ(221)の動作を表したフローチャートである。
例外処理(1)は、可変IDの同期ずれを想定したものである。本実施形態の主眼はデータベースの検索キーとして可変IDを使うことで、IDの秘匿性とデータベースの検索可能性を同時に実現することである。IDの秘匿性(追跡困難性)を実現するために、可変IDは通信を行うごとに更新する必要がある。しかしたとえば、ユーザがタグリーダ(211)の通信可能領域の縁を掠めた場合や電波障害などが発生した場合には、タグ(201)はタグID取得要求(601)を受け取り図7のフローに従ってタグID取得応答を返すが、タグリーダ(211)がタグ(201)からのタグID取得応答(602)を受信できない可能性がある。このような場合には、タグ(201)のみが可変IDの更新を行い、タグテーブル(234)の情報は更新されない。すなわち、タグの記憶している可変IDとタグテーブル(234)の記憶している現在の可変ID(504)の間にずれが生じる。これが可変IDの同期ずれである。
以下、図9に従って可変IDの同期ずれが発生した場合の処理について説明する。
ステップ1(902).図8のフローチャートのステップ3(804)で該当する現在の可変ID(504)が見つからなかった場合、DBサーバはv(i, t)を検索キーとしてDBのタグテーブル(234)から可変IDの予測値のリスト(505)を検索する。
ステップ2(903、904).タグテーブル(234)のリストにv(i, t)と一致する可変IDが見つからなかった場合には例外処理(2)へ移行する。一致する可変IDが見つかった場合にはステップ3以下の処理を行う。
ステップ3(905).DBサーバ(231)はタグID検索応答(607)として該当するタグのID(501)と付随するエントリ(502〜505)、同期ずれの量d (v(i, t) = v(i', t+p))を認証サーバ(221)に送信する。
ステップ4(906).認証サーバ(221)は照合のための以下の認証コード値を次のようにして計算する。
x = MAC(k(i'), r(t))
ステップ5(907).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ4(906)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ6(908)に移行する。一致しない場合にはステップ9(912)に移行する。
ステップ5(907).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ4(906)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ6(908)に移行する。一致しない場合にはステップ9(912)に移行する。
ステップ6(908).認証コードが一致した場合には、認証サーバ(221)はタグ(201)の新しい情報からなるエントリを以下のように作成する。
位置情報(503):pos
現在の可変ID(504):v(i', t+d+1)
可変IDの未来値のリスト(505):
v(i', t+x) = v(i', t+d+1+x), 0 < x < M-d
v(i', t+x) = H(k(i'), v(i', t+d+x)), M-d <= x <= M
ステップ7(909).認証サーバ(221)はDBサーバ(231)に位置情報登録要求(608)を送信し、ステップ6で計算した新しいエントリをDBサーバ(231)に送信する。DBサーバ(231)は位置情報登録要求(608)を受信すると、その情報に基づきタグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を返信する。
現在の可変ID(504):v(i', t+d+1)
可変IDの未来値のリスト(505):
v(i', t+x) = v(i', t+d+1+x), 0 < x < M-d
v(i', t+x) = H(k(i'), v(i', t+d+x)), M-d <= x <= M
ステップ7(909).認証サーバ(221)はDBサーバ(231)に位置情報登録要求(608)を送信し、ステップ6で計算した新しいエントリをDBサーバ(231)に送信する。DBサーバ(231)は位置情報登録要求(608)を受信すると、その情報に基づきタグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を返信する。
ステップ8(910、911).認証サーバ(221)はタグリーダ(211)に位置情報登録応答(610)を行い、タグ(201)が認証されたことをタグリーダ(211)に伝え、セッションを終了する。
ステップ9(912).認証コードが一致しない場合には、認証サーバ(221)はDBサーバ(231)にDBサーバ(231)に位置情報登録要求(608)を送信し、認証が失敗したことを伝える。DBサーバ(231)はこれをログに記録する。
ステップ10(913、914).認証サーバ(221)はタグリーダ(211)に位置情報登録応答(610)を行い、タグ(201)の認証が失敗したことをタグリーダ(211)に伝え、セッションを終了する。
例外処理(1)におけるステップ3以降の処理は正常処理を表す図8のフローチャートのステップ4以降とほぼ同様の処理を行う。ただし、ステップ3ではDBサーバ(231)がずれの量dを認証サーバ(221)に送信し、ステップ6では認証サーバ(221)が同期ずれを補正するため、ずれに相当する回数について可変IDの未来値の計算を行い、新しいエントリを生成する。
なおステップ3では、見つかったタグIDについて、同期ずれが発生したことをログなどに記録しても良いし、タグテーブル(234)に記録するための項目を設けても良い。あまり頻繁に同期ずれが発生する場合には、タグリーダの設置箇所に何らかの障害が発生している可能性がある。また、単一のタグについて同期ずれが頻繁に発生する場合には、タグの破損や(該当タグを検索不可能にすることを目的とする)攻撃者の存在などが懸念される。したがって、ある程度以上の頻度で同期ずれが発生する場合には、システム管理者に警告信号を送信するなどの対策を取る。
本実施形態では図6の通信順序などにより、構成同期ずれが発生した場合には常にタグの可変IDが先行する(時刻t+dの値になる)ように設定している。このため、タグテーブルには可変IDの未来値のみを保持しており、同期ずれが発生した場合の検索が容易である。
本実施形態ではタグの位置情報のみを取り扱うシステムを想定しているが、認証後にタグに対してデータの書き込みを行うようなシステムでは、タグリーダからの応答を待ってタグの可変IDを更新することも考えられる。このようなケースでは、タグがタグリーダからの応答を受信できない可能性があり、逆にタグの可変IDがタグテーブルの現在の可変ID(504)に対して遅れることも想定する必要がある。したがって、そのような場合にはタグテーブルは可変IDの未来値だけではなく、過去の値の履歴をある程度保存しておき、照合時にはその双方について検索を行う必要がある。
図10は図9のフローチャートのステップ2で例外処理(2)に移行した場合のDBサーバ(231)および認証サーバ(221)の動作を表したフローチャートである。例外処理(2)は極端な同期ずれが発生し、タグの可変IDに対応する値がDBサーバの可変IDリストに見つからない場合を処理するものである。以下、図10に従って例外処理(2)を説明する。
ステップ1(1002).DBサーバ(231)はタグテーブル(234)の可変IDの未来値のリスト(505)からv(i, t)と一致する値を見つけられなかった場合、タグID検索応答(607)としてタグテーブル(234)のすべてのID(N個)についてタグID jとタグ固有鍵k(j)を認証サーバに送信する。
ステップ2(1003).認証サーバは、タグID用のカウンタを初期化する。
ステップ3(1004、1005). もしカウンタの値がN以下であれば、ステップ5以下のルーチンを実行する。カウンタの値がNを超えていたら(すべてのタグについて計算を終了したら)、位置情報登録要求は不正なものと判断し、位置情報登録要求(608)をDBサーバに送信する。DBサーバ(231)はログにエラーを記録する。
ステップ4(1006、1007).認証サーバ(221)は位置情報登録応答(610)として、タグリーダ(211)に認証が失敗したことを伝え、処理を終了する。
ステップ5(1008).認証サーバ(221)はj番目のタグID(501)について照合のための以下の認証コード値を次のようにして計算する。
x(j) = MAC(k(j), r(t))
ステップ6(1009).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ5(1008)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ7(1010)に移行する。一致しない場合にはステップ10(1014)に移行する。
ステップ6(1009).認証サーバ(221)は位置情報登録要求(603)で受け取った認証コードと、ステップ5(1008)で生成した検証用の認証コードの照合を行う。2つの認証コードが一致すればステップ7(1010)に移行する。一致しない場合にはステップ10(1014)に移行する。
ステップ7(1010).認証コードが一致した場合には、認証サーバ(221)はタグ(201)の新しい情報からなるエントリを以下のように作成する。
位置情報(503):pos
現在の可変ID(504):v(j, t) = H(k(j), v(i, t))
可変IDの未来値のリスト(505):v(j, t+x) = H(k(j), v(j, t+x-1)), 0 < x <= M
ステップ8(1011).認証サーバ(221)はDBサーバ(231)に位置情報登録要求(608)を送信し、ステップ7で計算した新しいエントリをDBサーバ(231)に送信する。DBサーバ(231)は位置情報登録要求(608)を受信すると、その情報に基づきタグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を返信する。
現在の可変ID(504):v(j, t) = H(k(j), v(i, t))
可変IDの未来値のリスト(505):v(j, t+x) = H(k(j), v(j, t+x-1)), 0 < x <= M
ステップ8(1011).認証サーバ(221)はDBサーバ(231)に位置情報登録要求(608)を送信し、ステップ7で計算した新しいエントリをDBサーバ(231)に送信する。DBサーバ(231)は位置情報登録要求(608)を受信すると、その情報に基づきタグテーブル(234)を更新し、認証サーバ(221)に位置情報登録応答(609)を返信する。
ステップ9(1012、1013).認証サーバ(221)はタグリーダ(211)に位置情報登録応答(610)を行い、タグ(201)が認証されたことをタグリーダ(211)に伝え、セッションを終了する。
ステップ10(1014).認証コードが一致しない場合には、カウンタの値に1を加え、ステップ3(1004)に戻る。
図11は表示用携帯端末(241)からタグ(201)の現在位置を確認するためのプロトコルの概要を表した図である。以下、図11に従って位置確認プロトコルを説明する。
ステップ1.表示用携帯端末(241)は、アクセスポイント(1101)を介し、認証サーバ(221)に位置情報参照要求(1102)を行う。表示用端末(241)から認証サーバ(221)に送られる情報は端末のIDと認証コード、閲覧したいタグIDのリストである。必要であればこれらの情報は暗号化しておく。また、端末の認証はHMAC認証方法の他、電子署名を利用した認証でも良い。
ステップ2.認証サーバ(221)は、DBサーバ(231)に端末ID検索要求(1103)を行う。
ステップ3.DBサーバ(231)は、表示端末テーブル(233)から端末IDを検索し、認証サーバ(221)に端末ID検索応答(1104)を行う。
ステップ4.認証サーバ(221)は、端末ID検索応答(1104)を基に端末IDを認証後、DBサーバ(231)に位置情報検索要求(1105)を行う。位置情報検索要求(1105)はタグIDのリストを含む。
ステップ5.DBサーバ(231)は、タグテーブル(234)とリーダテーブル(232)からタグの位置情報を検索し、認証サーバ(221)にタグの位置情報を含む位置情報検索応答(1106)を行う。
ステップ6.認証サーバ(221)は、タグIDリストのタグIDの数だけステップ4)、5)を繰り返し、すべてのタグについて位置情報を取得したら、アクセスポイント(1101)を介し、表示用携帯端末(241)に全タグIDの位置情報を含む位置情報検索応答(1107)を行う。
ステップ7.表示用携帯端末(241)は、該当するタグの位置情報を表示装置(245)に表示する。
このように、本実施形態によれば、
タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)の3つ組とし、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減しつつ、IDの追跡を困難にする認証が可能である。このような特徴により、本実施形態の提供するタグ認証方法は大規模なシステムにおいてIDの追跡困難性を実現可能な認証システムを提供できる。
タグがサーバに送信するデータを(可変ID、乱数、照合用ハッシュ値)の3つ組とし、可変IDを検索キーとしてデータベースからタグの固定IDを検索することで、認証時のサーバの負荷を大幅に削減しつつ、IDの追跡を困難にする認証が可能である。このような特徴により、本実施形態の提供するタグ認証方法は大規模なシステムにおいてIDの追跡困難性を実現可能な認証システムを提供できる。
プライバシを考慮した位置確認システムは、たとえば、来園者の多い大型レジャーパークなどにおける迷子捜索などにも応用することができる。
201:タグ、202:通信装置、203:記憶装置、204:暗号処理装置、205:データ登録装置、
211:タグリーダ、212:通信装置、213:通信装置、214:暗号処理装置、215:データ登録・参照装置、
221:認証サーバ、222:通信装置、223:DBアクセス装置、224:データ登録・参照装置、225:認証装置、226:暗号処理装置、
231:DB(データベース)サーバ、232:リーダテーブル、233:表示端末テーブル、234:タグテーブル、
241:表示用携帯端末、242:通信装置、243:記憶装置、244:暗号処理装置、245:表示装置、246:データ登録・参照装置、
211:タグリーダ、212:通信装置、213:通信装置、214:暗号処理装置、215:データ登録・参照装置、
221:認証サーバ、222:通信装置、223:DBアクセス装置、224:データ登録・参照装置、225:認証装置、226:暗号処理装置、
231:DB(データベース)サーバ、232:リーダテーブル、233:表示端末テーブル、234:タグテーブル、
241:表示用携帯端末、242:通信装置、243:記憶装置、244:暗号処理装置、245:表示装置、246:データ登録・参照装置、
Claims (18)
- 通信装置1と記憶装置1と暗号処理装置1とを備える1個以上のタグと、
通信装置2と記憶装置2と暗号処理装置2とを備えるタグ認証装置
からなるシステムにおいて前記タグ認証装置が前記タグからの通信を識別するための方法であって、
前記タグの記憶装置1には秘密鍵1と1回の通信ごとに更新される可変ID1が記憶されており、
前記タグ認証装置の記憶装置2には各々のタグの情報を記録したテーブルが記憶されており、
前記テーブルはタグのIDと各タグに対応する秘密鍵2と各タグに対応する可変ID2の値を項目として含んでおり、
前記タグの暗号処理装置1は乱数生成装置、認証コード生成装置1、可変ID更新装置1を備え、
前記タグ認証装置の暗号装置2は認証コード生成装置2、可変ID更新装置2を備え、
前記タグ認証装置は、通信装置2を介して定期的にタグに対して認証を要求する信号を発信し、
前記タグは、前記信号を受信すると
前記乱数生成装置を用いて乱数rを生成し、
前記乱数と前記秘密鍵1とを前記認証コード生成装置1の入力として認証コード1を生成し、
信号に対する応答として、前記乱数と、前記可変ID1と、前記認証コード1とを前記通信装置1を介して前記タグ認証装置に送信し、
前記秘密鍵1と前記可変ID1とを前記可変ID更新装置1の入力として新しい可変IDを計算し、その結果を前記記憶装置1に記憶し、
前記タグ認証装置は、前記タグからの応答を受信すると
前記応答に含まれる前記可変ID1を検索キーとして前記テーブルを検索し、該当するタグのIDと対応する秘密鍵2を取り出し、
前記応答に含まれる前記乱数を前記認証コード生成装置2に入力して得られた値と、前記応答に含まれる認証コードを照合することで、前記応答が前記テーブルに記録されているタグからのものであることを確認し、
前記可変ID1と前記秘密鍵2を前記可変ID更新装置2の入力として新しい可変IDを計算し、その結果を前記記憶装置2に記憶する
ことを特徴とするタグ識別方法。 - 請求項1に記載のタグ識別方法であって、
前記暗号処理装置1および前記暗号処理装置2は、一方向性ハッシュ関数を1つ以上備える
ことを特徴とするタグ識別方法。 - 請求項2に記載のタグ識別方法であって、
前記認証コード生成装置は、前記一方向性ハッシュ関数Hashを使って、認証コードC
C = Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは前記乱数生成装置が生成した乱数とし、k||rは前記秘密鍵と前記乱数のビット列としての連結を指す)
を生成する
ことを特徴とするタグ識別方法。 - 請求項2に記載のタグ識別方法であって、
前記可変ID更新装置は、前記一方向性ハッシュ関数Hashを使って、新しい可変ID v(t+1)
v(t+1) = Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)は前記タグが現在記憶している可変IDとし、k||v(t)は前記秘密鍵と前記可変IDのビット列としての連結を指す)
を生成する
ことを特徴とするタグ識別方法。 - 請求項1に記載のタグ識別方法であって、
前記テーブルは、さらにすべてのタグについて複数回分の可変ID v(t+1)〜v(t+M)を記憶する
ことを特徴とするタグ識別方法。 - 請求項5記載のタグ識別方法であって、
前記検索キーが前記テーブルに記載されている可変ID v(t)に該当しない場合に、前記あらかじめ計算しておいた複数回分の可変IDのリストから検索を行う
ことを特徴とするタグ識別方法。 - 請求項6記載のタグ識別方法であって、
前記あらかじめ計算しておいた複数回分の可変IDのリストから検索を行っても該当するタグが無い場合に、前記テーブルに記憶されているすべてのタグIDごとに対応する秘密鍵と前記応答に含まれる乱数とを、前記認証コード生成装置2に入力して得られた値と前記応答に含まれている認証コード1とを照合し、
2つの値が一致するタグIDを該当タグと識別する
ことを特徴とするタグ識別方法。 - 無線通信装置1と記憶装置1と暗号処理装置1とを備える1個以上のタグと、
通信装置2と記憶装置2と暗号処理装置2とを備えるタグ認証装置と、
タグと通信するための無線通信装置2と、タグ認証装置と通信するための通信装置1とを備える1個以上のタグリーダと、
からなる無線タグ位置登録システムであって、
前記タグの記憶装置1には秘密鍵1と1回の通信ごとに更新される可変ID1が記憶されており、
前記タグ認証装置の記憶装置2には各々のタグの情報を記録したタグテーブルとタグリーダの情報を記録したリーダテーブルが記憶されており、
前記タグテーブルはタグのIDと各タグの現在位置、各タグに対応する秘密鍵2、各タグに対応する可変ID2の値を項目として含んでおり、
前記リーダテーブルはタグリーダのIDと各タグリーダを設置した場所の情報を項目として含んでおり、
前記タグの暗号処理装置1は乱数生成装置、認証コード生成装置1、可変ID更新装置1を備え、
前記タグ認証装置の暗号装置2は認証コード生成装置2、可変ID更新装置2を備え、
前記無線通信装置1と前記無線装置2は一定距離以下でのみ通信可能であり、
前記タグリーダは無線通信装置2を介して定期的に認証を要求する信号をブロードキャストし、
前記タグは、前記ブロードキャストされた信号を受信すると
前記乱数生成装置を用いて乱数rを生成し、
前記乱数と前記秘密鍵1とを前記認証コード生成装置1の入力として認証コード1を生成し、
信号に対する応答として、前記乱数と、前記可変ID1と、前記認証コード1とを含むデータを前記通信装置1を介して前記タグリーダに送信し、
前記秘密鍵1と前記可変ID1とを前記可変ID更新装置1の入力として新しい可変IDを計算し、その結果を前記記憶装置1に記憶し、
前記タグリーダは、前記タグからの通信を受信すると
前記タグからの通信で受信したデータにタグリーダのIDを付加し、前記通信装置2を介して前記タグ認証装置に位置登録要求信号として送信し、
前記タグ認証装置は、前記タグリーダからの前記位置登録要求信号を受信すると
前記位置情報登録要求信号に含まれる前記可変ID1を検索キーとして前記タグテーブルを検索し、該当するタグのIDと対応する秘密鍵2を取り出し、
前記位置情報登録要求信号に含まれる前記乱数を前記認証コード生成装置2に入力して得られた値と、前記応答に含まれる認証コードを照合することで、前記応答が前記テーブルに記録されているタグからのものであることを確認し、
前記可変ID1と前記秘密鍵2を前記可変ID更新装置2の入力として新しい可変IDを計算し、
前記位置情報登録要求信号に含まれるタグリーダのIDを検索キーとして前記リーダテーブルからタグリーダの位置情報を取得し、
タグリーダの位置情報と新しい可変IDを前記記憶装置2に記憶する
ことを特徴とする無線タグ位置登録システム。 - 請求項8に記載の無線タグ位置登録システムであって、
前記暗号処理装置1および前記暗号処理装置2は、一方向性ハッシュ関数を1つ以上備える
ことを特徴とする無線タグ位置登録システム。 - 請求項9に記載の無線タグ位置登録システムであって、
前記認証コード生成装置は、前記一方向性ハッシュ関数Hashを使って、認証コードC
C = Hash(k||r)
(ただし、kは該当タグの秘密鍵、rは前記乱数生成装置が生成した乱数とし、k||rは前記秘密鍵と前記乱数のビット列としての連結を指す)
を生成する
ことを特徴とする無線タグ位置登録システム。 - 請求項9に記載の無線タグ位置登録システムであって、
前記可変ID更新装置は、前記一方向性ハッシュ関数Hashを使って、新しい可変ID v(t+1)
v(t+1) = Hash(k||v(t))
(ただし、kは該当タグの秘密鍵、v(t)は前記タグが現在記憶している可変IDとし、k||v(t)は前記秘密鍵と前記可変IDのビット列としての連結を指す)
を生成する
ことを特徴とする無線タグ位置登録システム。 - タグテーブルの追加構成:未来値予測
請求項8に記載の無線タグ位置登録システムであって、
前記タグテーブルは、さらにすべてのタグについて複数回分の可変ID v(t+1)〜v(t+M)を記憶する
ことを特徴とする無線タグ位置登録システム。 - 請求項12記載の無線タグ位置登録システムであって、
前記検索キーが前記タグテーブルに記載されている可変ID v(t)に該当しない場合に、前記あらかじめ計算しておいた複数回分の可変IDのリストから検索を行う
ことを特徴とする無線タグ位置登録システム。 - 請求項13記載のタグ識別方法であって、
前記あらかじめ計算しておいた複数回分の可変IDのリストから検索を行っても該当するタグが無い場合に、前記タグテーブルに記憶されているすべてのタグIDごとに対応する秘密鍵と前記応答に含まれる乱数とを、前記認証コード生成装置2に入力して得られた値と前記応答に含まれている認証コード1とを照合し、
2つの値が一致するタグIDを該当タグと識別する
ことを特徴とする無線タグ位置登録システム。 - 請求項8記載の無線タグ位置登録システムであって、
前記タグリーダは、さらに記憶装置3と暗号処理装置3とを備え、
前記記憶装置3は、秘密鍵3を記憶しており、
前記暗号処理装置3は、乱数生成装置3と認証コード生成装置3とを備え、
タグリーダは、前記タグからの通信を受信すると、
前記暗号処理装置3を用いて乱数を生成し、
前記秘密鍵3と上記乱数を前記認証コード生成装置3への入力とし、
得られた値をタグリーダIDに対する認証コードとして、前記タグ認証装置に送信する位置登録要求信号に付加してタグ認証装置に送信する
ことを特徴とする無線タグ位置登録システム。 - 請求項8に記載のシステムであって、さらに、
通信装置4を備える1個以上の表示用端末と、通信装置5を備える1個以上のアクセスポイントと、を備え、
上記表示用端末は、通信装置4を介して上記アクセスポイントに接続し、
タグ認証装置にタグ位置閲覧要求を送信し、
タグの現在位置を取得する
ことを特徴とするタグ位置確認システム。 - 請求項16に記載のタグ位置確認システムであって、
前記タグ認証装置の記憶装置2はさらに表示用端末テーブルとを備え、
上記表示端末テーブルは端末のIDと、各タグが閲覧してよいタグのIDからなるリストとを含み、
前記タグ位置閲覧要求は表示用端末のIDを含み、
前記タグ認証装置は、表示用端末からのタグ位置閲覧要求に対し、
タグ位置閲覧要求に含まれる表示用端末のIDを検索キーとして上記表示用端末テーブルを検索し、
要求を行った表示用端末が閲覧可能なタグIDのリストを取得し、
上記リストに含まれる各タグIDを検索キーとして前記タグテーブルを検索し、
各タグの位置情報を取得し、
取得した情報を表示用端末に返信する
ことを特徴とするタグ位置確認システム。 - 請求項16に記載のタグ位置確認システムであって、
前記表示用端末は、さらに暗号処理装置を備え、
前記タグ認証装置との通信を暗号化する
ことを特徴とするタグ位置確認システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006006905A JP2007188375A (ja) | 2006-01-16 | 2006-01-16 | データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006006905A JP2007188375A (ja) | 2006-01-16 | 2006-01-16 | データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007188375A true JP2007188375A (ja) | 2007-07-26 |
Family
ID=38343492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006006905A Pending JP2007188375A (ja) | 2006-01-16 | 2006-01-16 | データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007188375A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129321A (ja) * | 2007-11-27 | 2009-06-11 | Hitachi Ltd | Rfidデバイス、サーバ、及び計算機システム |
JP2012244284A (ja) * | 2011-05-17 | 2012-12-10 | Hitachi Ltd | 認証装置、情報システム、および認証方法 |
JPWO2013179392A1 (ja) * | 2012-05-29 | 2016-01-14 | トヨタ自動車株式会社 | 認証システム及び認証方法 |
JP2021034902A (ja) * | 2019-08-26 | 2021-03-01 | Necプラットフォームズ株式会社 | 無線通信システムおよび無線通信方法 |
-
2006
- 2006-01-16 JP JP2006006905A patent/JP2007188375A/ja active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009129321A (ja) * | 2007-11-27 | 2009-06-11 | Hitachi Ltd | Rfidデバイス、サーバ、及び計算機システム |
JP2012244284A (ja) * | 2011-05-17 | 2012-12-10 | Hitachi Ltd | 認証装置、情報システム、および認証方法 |
JPWO2013179392A1 (ja) * | 2012-05-29 | 2016-01-14 | トヨタ自動車株式会社 | 認証システム及び認証方法 |
US9577997B2 (en) | 2012-05-29 | 2017-02-21 | Toyota Jidosha Kabushiki Kaisha | Authentication system and authentication method |
JP2021034902A (ja) * | 2019-08-26 | 2021-03-01 | Necプラットフォームズ株式会社 | 無線通信システムおよび無線通信方法 |
WO2021039676A1 (ja) * | 2019-08-26 | 2021-03-04 | Necプラットフォームズ株式会社 | 無線通信システム、無線通信方法および無線通信プログラムを格納した非一時的なコンピュータ可読媒体 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5401507B2 (ja) | 無線識別システムを利用した購買された品物の情報確認方法、その記録媒体及びそのシステム | |
US20100001840A1 (en) | Method and system for authenticating rfid tag | |
KR101048509B1 (ko) | 유비쿼터스 센서 네트워크에서의 위치 정보 및 해쉬 체인을 이용한 시빌 공격 노드 탐지 방법 및 장치 | |
Chen et al. | An ownership transfer scheme using mobile RFIDs | |
WO2012119434A1 (zh) | 一种读写器与标签卡之间的动态认证方法及实现装置 | |
US20100146273A1 (en) | Method for passive rfid security according to security mode | |
Dimitriou | rfidDOT: RFID delegation and ownership transfer made simple | |
US9374350B2 (en) | Authenticating method of communicating connection, gateway apparatus using authenticating method, and communication system using authenticating method | |
Pang et al. | Secure and efficient mutual authentication protocol for RFID conforming to the EPC C-1 G-2 standard | |
KR101284155B1 (ko) | 일회용 패스워드(otp)를 이용한 rfid 인증 처리방법 | |
CN107872800A (zh) | 一种基于软件双因子认证的蓝牙设备ble接入方法 | |
CN105791274A (zh) | 一种基于局域网的分布式加密存储和鉴权方法 | |
JP2008015639A (ja) | データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 | |
JP2007188375A (ja) | データベースにおいてidを検索可能なプライバシ保護型認証システムおよび装置 | |
Cherif et al. | A lightweight and secure data collection serverless protocol demonstrated in an active rfids scenario | |
Jannati et al. | Detecting relay attacks on RFID communication systems using quantum bits | |
Chuang et al. | Constructing effective lightweight privacy protection in RFID-based systems | |
CN107040363B (zh) | 基于混沌加密的轻量级rfid所有权转移方法及系统 | |
Avdyushkin et al. | Secure location validation with wi-fi geo-fencing and nfc | |
JP2006311319A (ja) | 無線端末認証システム,自局無線端末,他局無線端末及び無線端末の認証方法 | |
KR100882900B1 (ko) | Rfid 태그에서의 보안 방법, rfid 태그의 보안장치 및 rfid 환경에서의 보안 방법 | |
KR101162626B1 (ko) | 안전하고 효율적인 rfid 태그 검색방법 및 rfid 리더 장치 | |
Baghery et al. | Enhancing Privacy of Recent Authentication Schemes for Low-Cost RFID Systems. | |
KR101216993B1 (ko) | 모바일 리더의 태그 리스트 재사용을 방지하는 저비용 rfid 태그 검색방법 | |
Ham et al. | An efficient offline grouping proof protocol using multiple types of tags |