説明

距離および相手認証方法

【課題】無線による距離検証システムにおける中継端末攻撃(Relay attack)を防ぐ。
【解決手段】距離検証システムは、位置サーバと耐タンパー性の位置モジュールとからなる。位置サーバは、位置モジュールからの応答の遅延時間を検知できる精度の時間計測機能を有し、位置モジュールまでの距離を検証して認証する。位置モジュールは、ユーザ認証手段を有し、ユーザ認証に成功した場合のみ、位置サーバからのチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成する。位置サーバは、位置モジュールからの応答の遅延時間を利用して距離検証を行う際に、相手認証のための処理時間を距離検証のための計測時間の範囲に含めて、相手認証と距離検証を同時に実施する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、距離および相手認証方法に関し、特に、中継攻撃を防ぐことができ、複数の証明者間の距離を検証可能な距離および相手認証方法に関する。
【背景技術】
【0002】
最近、いつでもどこでもシームレスに情報取得可能であり、計算機能力利用も可能なユビキタスネットワークが盛んに研究されている。ユビキタスネットワークでは、RFID(無線タグ)、GPS(Global Positioning System)のような実環境と情報空間を結びつける技術を利用して、LBS(Location Based Service)に代表される実環境に依存したサービスの提供が検討されている。LBSは、サービスを要求するクライアントの、または他のエンティティの物理的な位置に依存するサービスである。例えば、携帯電話の存在する近辺の店舗や天気の情報を配信するサービスや、携帯電話の位置を追跡するサービスや、鉄道での非接触ICカードを利用した改札管理などがあげられる。今後、さらにリッチなサービスの出現も予想される。また、携帯電話におけるLBSのデファクト標準技術として、OMAや3GPPにおいて標準化が行われている。
【0003】
非特許文献11や非特許文献21に紹介されているように、携帯電話などのモバイルノードに対する測位技術としては、GPS、E-OTD(Enhanced Observed Time Difference)、TDOA(Time Difference Of Arrival)、無線LANを利用した室内測位システム等が知られている。また、RFIDや簡易なセンサノードを利用した方式[非特許文献23]も盛んに研究されている。いずれも複数の電波の送受信時刻の差を利用して位置を決定する方法と言える。ユビキタスネットワークにおいては、ノードは常に移動しているため、位置トラッキングシステムが重要なインフラとして必要となる。
【0004】
これらの測位技術では、モバイルノードやセンサノードが偽の位置情報を提供する可能性があるため、必ずしも安全と言えない。これを位置検証問題と呼ぶ。つまり、「位置検証手段Vは位置証明手段Pが時刻Tに位置Lに存在したことを検証できるか?」という問題である。安全なLBSを実現するため、位置検証問題を解決することが重要である。非特許文献9において指摘されているように、位置証明手段Pが移動体である場合は、時刻Tも位置情報を構成する要素として必須である。位置認証問題において特に重要なことは、攻撃者によって位置証明手段Pが実際に存在している位置Lではなく、位置検証手段Vが偽の位置L'を信じるようにできてしまうことが無いことである。特に、今後出現が予想されるリッチなサービスや入退室管理などのセキュリティが重視されるLBSでは、この問題は必ず解決されなければならない。
【0005】
本明細書において、位置(Location)は、距離(Distance)、領域(Region)、点位置(Position)、経路(Route)の総称として扱う。距離は、位置証明手段Pと位置検証手段Vの相対的な距離を意味し、領域は、位置検証手段Vが検証可能なある範囲内に位置証明手段Pが存在することを意味する。点位置は、位置検証手段Vからみたある相対的な位置(距離、方角)に位置証明手段Pが存在することを意味する。さらに、本明細書では、位置として、時空的な観点から経路も扱う。経路は、時系列に複数の位置情報を並べた情報である。
【0006】
位置検証問題を解決するため、GPSやRFIDといった既存の測位技術をベースとした位置認証技術がある。非特許文献6や非特許文献12には、位置証明手段PにGPSレシーバーやRFIDタグを設置し、かつ耐タンパー性を仮定することで、位置検証手段Vが位置証明手段Pから位置に関する情報を取得する方式が開示されている。しかしながら、耐タンパー性を仮定しても、これらの方法は位置検証手段Vが取得する位置を操作できる可能性がある。例えばGPSレシーバーへの入力であるGPS信号は、偽装・再送・ジャミングすることにより、位置検証手段Vが取得する位置情報を操作できる可能性がある。また、RFIDは、リーダーで読み取ることができるため、クローンを作成することや、中継器をRFIDタグとリーダーの間に設けることで距離を延長して、位置検証手段Vが取得する位置を操作できる可能性がある。
【0007】
非特許文献2、非特許文献4、非特許文献15、非特許文献18には、電波が光速であることを利用し、位置検証手段Vが無線経由で位置証明手段Pにチャレンジを送信してから、位置検証手段Vが無線経由で位置証明手段Pから送られたレスポンスを受信するまでの時間を計測することで、位置証明手段Pと位置検証手段Vの相対距離を測定する技術が開示されている。位置検証手段VがチャレンジをPに送った時刻TCと位置検証手段Vが対応するレスポンスを位置証明手段Pから受信した時刻TRの差を計測することで、位置検証手段Vと位置証明手段Pの相対距離を決定する(これを位置検証方式と呼ぶ)。電波が光速であることから、位置証明手段Pはレスポンスを光の速度より早く位置検証手段Vに送ることができないことを安全性の根拠としている。逆に位置証明手段Pはレスポンスを遅らせることは容易に可能であるため、位置証明手段Pと位置検証手段Vの距離の上限のみを決定できる技術である。さらに、一つの位置証明手段Pを複数の位置検証手段Vで測位することにより、領域認証や点位置認証に拡張することができる。非特許文献2、非特許文献18では、位置証明手段Pは信頼できるという前提のもと、第三者による攻撃を防ぐことを目標としている。
【0008】
非特許文献15の方式は、位置証明手段Pの演算時間を考慮した設計であること、及び位置検証手段V-位置証明手段P間通信を中継する中継器を想定した中継攻撃に耐性を持つことから、実用性が高い。また、非特許文献15の方式は、位置検証の対象となる位置証明手段Pのアイデンティティ(ID)を認証しない方式である。一方、非特許文献2、非特許文献4、非特許文献18の方式は、位置検証の対象であるエンティティのIDを検証可能な方式である。これは、「位置検証手段Vが位置証明手段Pの位置を検証したとき、位置証明手段PのIDを認証できるか?」という問題である。
【0009】
非特許文献4、非特許文献15では、位置証明手段Pも信頼できないという前提のもと、第三者および不正な位置証明手段Pによる攻撃を防ぐことを目標としている。非特許文献2では、元々相手認証において、中継攻撃(Mafia FraudsすなわちMan in the middle attack)を防ぐために位置認証を併用することを提案している。位置認証を利用して中継攻撃に類する攻撃を防ぐことを提案している文献としては、非特許文献3と非特許文献5(Wormhole attack)と、非特許文献7(Rushing attack)が存在する。これらは、いずれも送信手段(Sender)と受信手段(Receiver)の間に不正な転送ノードが存在可能なアドホックネットワークに対する攻撃である。位置認証自体に対する攻撃としては、非特許文献15と非特許文献4では、位置証明手段Pが実際とは異なる位置を詐称することを想定しているし、非特許文献18においては、位置証明手段Pと位置検証手段Vの間に第三者である攻撃者が中継器(Proxy)を設置して、位置証明手段Pの位置を改ざんする中継器攻撃(Proxy attack)と、それに耐性を持つ位置認証方式が提案されている。
【0010】
ところで、非特許文献2、非特許文献4では、位置認証の対象となるエンティティの相手認証を同時に行う方法が検討されている。これは、位置検証手段Vが位置証明手段Pの位置を検証する際に、位置証明手段Pが誰であるかも同時に検証する問題である。本明細書では、このような相手認証は、単に認証(Authentication)と呼ぶ。逆に、非特許文献15のように、位置証明手段Pの相手認証を行わないような場合は、無認証(No authentication)と呼ぶ。ここで、図9(a)に示すように、非特許文献2、非特許文献4ではいずれも、位置認証と相手認証の依存性を少なく設計している。これは、相手認証の処理時間を時間計測に含めてしまうと、位置認証の誤差が増加してしまうことを防ぐためである。
【0011】
逆に、非特許文献15では、位置証明手段Pの演算時間の上界を事前に規定することで、位置認証の誤差を考慮した方法を提案している。非特許文献18のものは、位置検証手段Vに対しては匿名で位置認証を行い、事前に位置証明手段Pが決めた第三者には、位置検証手段Vの署名が行われた位置証明手段PのIDと位置情報を開示できる機能を有している。これは、位置証明手段Pが自身の位置情報を開示する相手を選択ができることを意味し、位置証明手段Pは自身のプライバシを守ることができる。本明細書では、このような相手認証方式を、匿名認証(Authentication with anonymity)と呼ぶ。
【0012】
相手位置認証に関係する特許文献としては、以下のものがある。特許文献1に開示された「セキュリティ用の無線端末および無線セキュリティシステム」は、セキュリティのチェック対象に取付けられた無線端末と無線基地局との間で無線信号を送受信することで、チェック対象が、無線基地局がカバーしている無線伝搬エリアから不正に移動したことをチェックするものである。セキュリティのチェック対象物に取付けられた無線端末は、自身が存在する無線伝搬エリアをカバーしている無線基地局に対して、無線伝搬エリアに存在し続ける旨を示す駐在登録要求を送信する。その後、無線基地局から送信されてくる在圏チェック信号の受信レベルが、予め定めた閾値より低くなった場合には、無線伝搬エリアから離れたものとみなし、無線基地局に対して、駐在登録要求の送信時の無線出力レベルより高い無線出力レベルでアラーム信号を送信する。
【0013】
特許文献2に開示された「携帯型情報端末および携帯型情報端末を使用したネットワークサービスシステム」は、携帯型情報端末の位置情報に基づいた携帯型情報端末がエリア内にいるか否かの判定により携帯型情報端末からの発信を制御したり、特定の情報を受けたりするなどのように、利用者の利用形態に応じた細かいサービスを提供し得る携帯型情報端末および携帯型情報端末を使用したネットワークサービスシステムである。基準ポイントの位置情報を、予め基準ポイント格納部に格納する。携帯型情報端末の位置を、GPS処理部で測定する。携帯型情報端末の位置から基準ポイントまでの距離を、距離データ演算部で演算して所定の閾値と比較する。所定の閾値内にある場合には、発信制御部の制御により、携帯型情報端末からの発信を許可する。閾値を越えている場合には、発信を不許可にする。
【0014】
特許文献3に開示された「アクセス制御システム、情報格納装置、位置情報管理装置および移動端末」は、鍵情報を利用した所定の演算処理による認証を行うアクセス制御システムにおいて、正規ユーザのみが所望の演算結果を得るようにするものである。このアクセス制御システムは、移動端末と、移動端末によりアクセスされる情報を格納する情報格納手段と、移動端末の位置情報を有する位置情報管理手段を有する。情報格納手段は、移動端末からのアクセス要求に応答して、所定の鍵を用いた演算結果を導出するメッセージ信号を、移動端末に送信する。移動端末が所定の領域内に位置する場合に、位置情報管理手段は、所定の鍵を利用した演算処理を移動端末から受信したメッセージ信号に施すことによって、演算結果を作成する。情報格納手段は、演算結果に基づいて、移動端末の前記情報へのアクセスの許否を判定する。
【0015】
ところで、今後、LBS関係のサービスが多様化するにつれ、複数の位置証明手段Pの位置関係の証明を要求するLBSが出現すると予想される。例えば、複数人でないと入店できない店舗における入退室管理や、法的な理由から複数の人物が実際に会ったことを証明するサービスが考えられる。これは、「位置検証手段Vは位置証明手段P1と位置証明手段P2が時刻Tに距離D以内に近づいていたことを検証できるか?」という問題である(これを2点間距離検証と呼ぶ)。また、位置証明手段P1と位置証明手段P2を区別する必要があるため、それぞれのIDについて認証する必要もある。しかしながら、従来方式では、複数の位置検証手段Vを想定することで、検証精度を高めることや検証範囲を拡大することは考慮しているが、複数の位置証明手段の位置関係については考慮していない。
【0016】
一方、複数のエンティティが同時に存在したことを証明する技術として、二つのICタグを同時にリーダーが読み取ったことを証明する"yoking-proof"が提案されている[非特許文献20]。これは、リーダーを介して2つのICタグが1つの署名を生成する方式である。例えば、薬と処方箋といった必ず同時に出荷されなければならない製品を出荷したことの証明に用いることができる。また、非特許文献20の方式の再送攻撃に対する耐性を強化し、複数のICタグが同時にリーダーに読み取られたことを証明する方式[非特許文献22]も提案されている。これらの方式は、セッションを開始してから一定時間経っても完了しない場合に、プロトコルを終了するタイムアウト仮定をおいている。この時間計測は、多くのリーダーが元々そのように実装されていることがあり、安全性の向上を目的に行われている。
【0017】
ユビキタスネットワークでは、いつでもどこでも攻撃を受ける可能性があり、十分なセキュリティを確保することが必須である。携帯電話のLBSの標準規格であるMP(非特許文献13参照)、LCS(非特許文献1参照)においても、サーバとクライアント間の認証や通信路の暗号化、位置情報の公開に関するプライバシに関して検討がされている。位置情報は重要なプライバシ情報であるため、そのアクセスコントロールが欠かせない。端末は自分の位置を自分が許可したエンティティのみに公開することが基本となる。そのようなプライバシを考慮した位置トラッキングシステムが、非特許文献19や非特許文献10で提案されている。
【0018】
【特許文献1】特開平10-84570号公報
【特許文献2】特開2001-224064号公報
【特許文献3】特開2003-324769号公報
【非特許文献1】3rd Generation Partnership Project, 3GPP TS 22.071 V3.4.0, 3GPP TS 23.171 V3.10.0, 3GPP TS 24.030 V3.3.0.
【非特許文献2】S. Brands, D. Chaum, "Distance-Bounding Protocols," Proceeding of Eurocrypto '93, Springer-Verlag, pp.344-359.
【非特許文献3】S. Capkun, L. Buttyan, and J. P. Hubaux, "SECTOR: Secure Tracking of Node Encounters in Multi-hop Wireless Networks,"
【非特許文献4】S. Capkun, J. P. Hubaux, "Securing position and distance verification in wireless networks," Technical report EPFL/IC/200443, submitted to ACM MobiCom 2004, Philadelphia, 26 Sep - 1 Oct 2004.
【非特許文献5】S. Capkun, J. P. Hubaux, and M. Jakobsson, "Secure and Privacy-Preserving Communication in Hybrid Ad Hoc Networks,"
【非特許文献6】E. Gabber and A. Wool, "How to prove where you are: Tracking the location of customer equipment," In Proc. 5th ACM Conf. Computer and Communications Security (CCS), pages 142-149, San Francisco, November 1998.
【非特許文献7】Y. C. Hu, A. Perrig, D. B. Johnson, "Rushing Attacks and Defense in Wireless Ad Hoc Network Routing Protocols," In Proc. of 2nd ACM Workshop on Wireless Security (WiSe'03), San Diego, CA, Sep, 2003.
【非特許文献8】S. Haber, W. S. Stornetta, "How to Time-Stamp a Digital Document," Journal of Cryptology: the Journal of the International Association for Cryptologic Research 3, 2 (1991), 99-111.
【非特許文献9】ITS Info communications, POIX_EX(ITS FORUM RC-001) Version 2.0.
【非特許文献10】M. Izumi, S. Takeuchi, Y. Watanabe, K. Uehara, H. Sunahara, J. Murai, "A Proposal on a Privacy Control Method for Geographical Location Information Systems," Proc. of INET'2000, Jul 2000. http://www.csl.sony.co.jp/person/sohgo/GLI/inet2000/
【0019】
【非特許文献11】T. Kitasuka, T. Nakanishi, and A. Fukuda, "Indoor Location Sensing Technique using Wireless Network," In Proc. of CS2002 pp. 83-90, 2002.
【非特許文献12】K. Nakanishi, J. Nakazawa, and H. Tokuda, "LEXP: Preserving User Privacy and Certifying the Location Information," 2nd Workshop on Security in Ubiquitous Computing Ubicomp 2003, Seattle, Washington, USA October 12, 2003.
【非特許文献13】Location Inter-operability Forum (LIF), "Mobile Location Protocol," LIF TS 101 Specification Version 3.0.0.
【非特許文献14】A. Freier, P. Karlton, and P. Kocher, "The SSL Protocol Version 3.0," Transport Layer Security Working Group, INTERNET-DRAFT, 1996.
【非特許文献15】N. Sastry, U. Shankar, and D. Wagner, "Secure Verification of Location Claims," Report No. UCB//CDS-03-1245, University of California, Berkeley.
【非特許文献16】T. Dierks, C. Allen, "The TLS Protocol Version 1.0," Request for Comments: 2246, 1999.
【非特許文献17】Yih-Chun Hu, A. Perring, and D. B. Johnson, "Packet Leashes: A Defense against Wormhole Attacks in Wireless Networks," In INFOCOM, 2003.
【非特許文献18】B. R. Waters, E. W. Felten, "Secure, Private Proofs of Location," Princeton University Computer Science Technical Reports, TR-667-03, 2003.
【非特許文献19】Y. Watanabe, S. Takeuchi, F. Teraoka, K. Uehara, and J. Murai, "The Geographical Location Information System with Privacy Protection," IPSJ Journal, Vol.37, No.6, 1996.
【非特許文献20】A. Juels, "Yoking-Proofs" for RFID tags, First International Workshop on Pervasive Computing and Communication Security, IEEE Press, 2004.
【0020】
【非特許文献21】T. Kitasuka, T. Nakanishi, and A.. Fukuda, "Indoor Location Sensing Techinique using Wireless Network," In Proc. of Computer System Symposium'02 pp. 83-90, 2002.
【非特許文献22】齊藤純一郎, 櫻井幸一, "RFIDタグにおけるグループ証明方式の提案," 2004年コンピュータセキュリティシンポジウム(CSS2004) 予稿集, 2B-1, 2004.
【非特許文献23】A. Vora, M. Nesterenko, "Secure Location Verification Using Radio Broadcast," In Proc. of OPODIS 2004: 8th International Conference on Principles of Distributed Systems, 2004.
【発明の開示】
【発明が解決しようとする課題】
【0021】
しかし、従来の位置認証方法では、位置を詐称する不正を防止できないという問題がある。本発明者らは、非特許文献2、非特許文献18、非特許文献4に開示された位置認証と相手認証を同時に行う方式が、攻撃者として不正な位置証明手段Pと、その位置証明手段Pが操作する中継器攻撃(Proxy attack)の中継器(Proxy)に類似の中継端末RS(Relay Station)を想定することで位置を詐称できることを発見した。これを中継端末攻撃(Relay attack)と呼ぶ。非特許文献2、非特許文献18、非特許文献4に開示された方法では、プロトコルの序盤で位置認証のための情報(Challenge)と応答(Response1)の間の時間計測を行い、終盤で相手認証のために位置証明手段Pの秘密鍵Kの処理を必要とする認証情報(Response2)のやり取り等を行う。
【0022】
図9(b)に示すように、中継端末攻撃では、位置検証手段Vの無線通信範囲外に位置証明手段Pが存在し、位置検証手段Vの無線通信範囲内に中継端末RSの存在を想定する。中継端末攻撃では、序盤の位置認証のための情報と応答は、中継端末RSが単独で位置検証手段Vとやり取りを行い、終盤の秘密鍵Kの必要な認証情報は、位置証明手段Pが中継端末RSを経由して位置検証手段Vに送る。序盤は秘密鍵の処理は要求していないため、秘密鍵を持たない中継端末RSでも正常な応答が可能である。一方、終盤は秘密鍵Kの処理を要求するために、位置証明手段Pが応答する必要があるが、時間計測はしていないために、中継して遅延が発生しても問題なく正常な応答が可能となる。
【0023】
以上により、位置検証手段Vに対して位置証明手段Pの存在する位置Lではなく、中継端末RSの存在する位置L'を位置証明手段Pの位置としてアクセプトさせることが可能となる。なお、非特許文献18の場合は、位置証明手段PがIDを開示する第三者に対して位置L'をアクセプトさせることが可能となる。非特許文献2、非特許文献18、非特許文献4において、中継端末攻撃が可能となる原因は、位置認証と秘密鍵Kを用いた処理の依存度が低いことにある。
【0024】
一方、2点間距離検証問題については、"yoking-proof"では、位置検証方式のように厳密な検証を行っているわけではないため、リーダーから複数のICタグの距離や位置関係を証明することは難しい。例えば、中継攻撃により、リーダー‐ICタグ間の通信を中継することで、本来のリーダーの通信距離を超えた位置に存在するICタグについても証明の対象となってしまう可能性がある。また、従来の位置検証方式では、2つの位置証明手段間の距離を扱えない。
【0025】
本発明の目的は、上記従来の問題を解決して、距離検証方法において、中継端末攻撃を防ぐことである。また、2つの距離証明手段間の距離を検証できるようにすることである。
【課題を解決するための手段】
【0026】
上記の課題を解決するために、本発明では、距離検証手段と距離証明手段とからなり、距離検証手段は、応答遅延時間を検知可能な精度の時間計測機能と、距離証明手段までの距離を検証して認証する機能を有し、距離証明手段は、距離検証手段からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける距離検証方法を、距離検証手段が、距離証明手段からの応答の遅延時間を利用して距離検証を行う際に、鍵の処理のための処理時間を距離検証のための計測時間の範囲に含める方法とした。
【0027】
すなわち、距離証明手段の秘密鍵に依存した処理を、距離検証と結合することにより、距離検証に対する中継端末攻撃に耐性を持たせる。また、中継端末攻撃の検出率を高めるために、認証情報の構造を、中継時の遅延が増加する形式にする。さらに、秘密鍵および秘密鍵に関する処理を変更することで、さまざまな暗号方式の適用が容易な構造にする。認証に関しては、共通鍵ベースの方法と公開鍵ベースの方法の両方がある。
【0028】
また、2点間距離検証の課題を解決するために、本発明では、1つの距離検証手段(V)と2つの距離証明手段(P1、P2)とからなり、距離検証手段は、応答遅延時間を検知可能な精度の時間計測機能と、距離証明手段までの距離を検証して認証する機能を有し、距離証明手段は、距離検証手段からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける距離検証方法を、P2を距離検証する際に、P1にチャレンジを中継させ、P1はチャレンジを中継する際にチャレンジにコミットし、P2はレスポンスを返す際にレスポンスにコミットし、P2はレスポンスをVに直接返し、P2を距離検証した結果とP1を単独で距離検証した結果からP1-P2間距離を算出する方法とした。すなわち、複数の証明者間の位置関係を検証するために、チャレンジやレスポンスを意図的に証明者により中継させる。例えば、証明者P1とP2を検証する場合、P1に中継させてP2の距離検証を行い、その結果とP1単体で行った距離検証の結果との差分から、P1-P2間距離を算出する。
【発明の効果】
【0029】
上記のように構成したことにより、特別なハードウエアの追加なしに、中継端末攻撃を検知して防ぐことができ、距離検証の安全性を高めることができる。また、距離証明手段が、相手認証のレベル、例えば、無認証、認証、匿名認証のいずれかを選択できる。さらに、距離証明手段による他の距離証明手段へのチャレンジ情報の中継により、距離検証手段‐距離証明手段間の距離に加え、2つの距離証明手段間の距離も検証できる。
【発明を実施するための最良の形態】
【0030】
以下、本発明を実施するための最良の形態について、図1〜図8を参照しながら詳細に説明する。
【実施例1】
【0031】
本発明の実施例1は、距離検証手段である位置サーバと、耐タンパー性の距離証明手段である位置モジュールとからなる距離検証システムにおいて、位置モジュールは、位置サーバから受信したチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成し、位置サーバは、位置モジュールからの応答遅延時間を利用して距離検証を行い、相手認証のための処理時間を距離検証のための計測時間の範囲に含めて、相手認証と距離検証を同時に実施する距離検証方法である。
【0032】
図1は、本発明の実施例1における距離検証方法の概念図である。図2は、距離検証方法に対する攻撃の種別を説明する図である。図3は、距離検証方法の手順を説明する図である。図4は、距離検証方法の種別を説明する図である。図5は、本発明の距離検証方法と従来例を比較した表である。図1〜図5において、距離検証手段Vは、位置サーバである。距離証明手段Pは、位置モジュールである。中継端末RSは、位置サーバと位置モジュールとの間の無線通信を中継する攻撃手段の中継装置である。位置サーバSは、位置モジュールまでの距離を検証する手段である。位置モジュールMは、位置サーバからのチャレンジ情報を処理してレスポンス情報を生成する耐タンパー性モジュールである。鍵Kは、位置モジュールが秘密に保持する位置モジュール固有の鍵である。
【0033】
最初に、図1を参照しながら、本発明の実施例1における距離検証方法とそれを実行する距離検証システムの概要を説明する。図1に示すように、距離検証システムは、距離検証手段(位置サーバ)と、距離証明手段(位置モジュール)とからなる。距離検証手段は、応答遅延時間を検知可能な精度の時間計測機能と、距離証明手段までの距離を検証して認証する機能を有する。距離証明手段は、距離検証手段からのチャレンジ情報を処理してレスポンス情報を生成する機能を有し、耐タンパー性である。距離検証手段が、距離証明手段からの応答の遅延時間を利用して距離検証を行う際に、相手認証のための処理時間を距離検証のための計測時間の範囲に含めて、相手認証と距離検証を同時に実施する。
【0034】
距離検証手段は、毎回異なるチャレンジ情報を生成して送信する。距離証明手段は、受信したチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成する。距離検証手段は、遅延時間が想定遅延時間を超えていた場合に距離検証に失敗したと見なす。距離検証手段は、距離証明手段の演算能力に基づいてチャレンジ情報と想定遅延時間を決定する。距離検証手段の相手認証またはメッセージ認証は、距離検証のための時間計測外に送信し、検証する。距離検証と相手認証の組を繰り返し行う。相手認証のための情報に、公開鍵暗号または共通鍵暗号を使うか、それらの両方を併用する。相手認証を不使用とする選択が可能である。相手認証のための情報を、距離検証手段に対して匿名性を有するようにできる。
【0035】
距離検証手段を複数備えることで、領域認証を可能とする。距離検証手段を複数備えることで、点位置検証を可能とする。距離検証手段を複数備える場合は、複数の距離検証手段からの情報に基づいて、距離検証または相手認証の結果を判断する。距離検証装置は、自身の位置を取得可能なモバイルノードであってもよい。距離証明装置はユーザ認証手段を有し、ユーザ認証に成功した場合のみ、チャレンジ情報と秘密鍵からレスポンス情報を生成可能である。モバイルノードが、距離証明手段と距離検証手段とを備えるものでもよい。相手認証のための情報を、距離検証手段に対して匿名性を有するようにできる。
【0036】
次に、本発明の実施例における距離検証方法の具体例を説明する。距離検証方法におけるエンティティは、位置サーバと、ユーザと、位置モジュールと、中継装置である。位置サーバS(Location Server)は、ユーザまたは位置モジュールまでの距離を検証する。位置サーバSの無線送受信範囲内に存在する位置モジュールMiを介して、位置モジュールMiと同位置に存在するユーザUiを認証する。iは、ユーザ番号である。位置サーバSは、応答遅延時間を検知可能な精度の時間計測機能を有する。位置サーバSは、安全に自己の位置を取得できる。または、位置サーバSの位置は常に固定であり、位置サーバSの移動を検知できる。位置サーバSは、位置モジュールMを認証する機能を有する。全てのエンティティが、位置サーバSを信頼する。以上の要件を満たすため、耐タンパー性を仮定する。位置サーバSは複数存在する場合もあるが、ここでは、説明を簡単化するために、一台の場合を説明する。
【0037】
ユーザUiは、位置サーバに対して、自己の位置を証明しようとする利用者である。自身に対応した位置モジュールを有する。位置を詐称しようとする場合がある。転送困難な手段によりユーザUiを認証する機能を有する。ユーザUiの認証に成功した場合のみ、秘密鍵Xiにアクセス可能となる。位置モジュールMi(Location Module)は、ユーザUiの認証に成功した場合、位置サーバSのチャレンジに対して自身が安全に保持する秘密鍵Xiにより処理したレスポンスを生成する。処理能力Wiは変更されないか、またはその変更を検知できる。以上の要件を満たすため、耐タンパー性を仮定する。中継端末RSiは、ユーザUiが中継攻撃のために使用する中継装置である。
【0038】
距離検証方法が満たすべき要件をまとめる。ここでは位置(Location)として距離(Distance)を扱い、距離検証(Distance Verification)を拡張することで領域認証(Region Verification)および点位置検証(Position Verification)を実現する。距離検証可能性(Distance Verifiability)とは、距離検証者Vが、時刻Tに観測を開始し、時刻(T+ΔT)までの間に応答を受け取ったとき、
[命題]時刻Tから時刻(T+ΔT)の間に、距離検証者Vから距離d内において鍵Kを用いた処理が実行されたこと
の真偽が判定できることである。なお、鍵Kを用いたエンティティ認証を行う際は、耐タンパー性の仮定等による、鍵Kと、鍵Kを処理するエンティティの関連付けが必要である。ここで、距離検証者Vは鍵Kに関する情報を、監視の実施前に保持しないとした場合、非特許文献15において実現されているようなエンティティ認証を行わない位置検証と等しい。不正証明者耐性(Dishonest prover-resistance)とは、不正な距離証明者Pに対して距離検証可能性を満たすことである。拡張性(Extendibility)とは、鍵Kに関して、暗号方式の適用が容易な構造であることである。
【0039】
第3に、図2を参照しながら、攻撃例について説明する。攻撃の目的(Purpose of Attack)は、位置サーバSに対して、ユーザまたはその存在する位置を偽ることである。攻撃者(Attacker)は、ユーザまたは第三者とする。図2に示すように、攻撃の種類は、エンティティに対するものと、通信路に対するものに分類される。エンティティ(位置サーバSや位置モジュールM)への攻撃としては、直接解析(Tampering)と、入出力から秘密を推測する方法(Black box attack)と、ユーザUiの位置モジュールMiを第三者に貸与する方法(Loan attack)と、成りすまし(Impersonation)と、位置詐称(Location fraud)がある。通信路に対する攻撃としては、通信路の情報を改ざんする方法(Message forgery)と、通信路の情報を再送する方法(Message replay)と、位置モジュールMiと位置サーバSとの間の通信を中継する方法(Relay attack)がある。
【0040】
第4に、記号の定義を説明する。
A_Enc(p,m)は、公開鍵pにより平文mを暗号化する公開鍵暗号関数である。その暗号文は、公開鍵pに対応する秘密鍵により復号できる。
S_Enc(k,m)は、共通鍵kにより平文pを暗号化する安全な共通鍵暗号関数である。その暗号文は、共通鍵kにより復号できる。
A_Sig(ks,m)は、秘密鍵ksにより平文mにディジタル署名を行う安全な署名関数である。その署名文は、秘密鍵ksに対応する公開鍵pにより検証できる。添付型および回復型のどちらの署名方式でも構わないが、表記を簡単にするため以降の説明では回復型として扱う。
S_Sig(k,m)は、共通鍵kにより平文mから認証情報を生成する安全な鍵付き一方向性ハッシュ関数である。
H(m)は、平文mからハッシュ値を生成する安全な一方向性ハッシュ関数である。
Chaiは、位置サーバSが位置モジュールMiに対して生成するリクエスト情報Reqiに対応したチャレンジ情報であり、質問Qiを含む。
Resiは、位置モジュールMiが生成するチャレンジ情報Chaiに対応したレスポンス情報であり、回答Aiを含む。
【0041】
ReqGは、リクエスト情報を生成する関数である。
ChaG_Cは、チャレンジ情報およびチャレンジ情報に含まれる質問Qiに対応する回答Aiを生成する関数である。クラスCは、α(認証なし)、β(公開鍵ベースの方法による相手認証あり)、γ(共通鍵ベースの方法による相手認証あり)、ε(匿名性を有する相手認証あり)のいずれかを意味する。
ResG_Cは、レスポンス情報を生成する関数である。クラスCは、ChaG_Cと同様である。
VeriF_Cは、入力値を検証し、正当な場合はOK=1、その他の場合はOK=0の値を出力する検証関数である。クラスCは、ChaG_Cと同様である。
Y(R,Y)は、公開鍵Yを乱数Rによりマスクする関数である。乱数R無しにマスク値MaskY(R,Y)から公開鍵Yを得ることは困難である。
MaskX(R,X)は、秘密鍵Xを乱数Rによりマスクする関数である。乱数R無しにマスク値MaskX(R,X)から秘密鍵Xを得ることは困難である。
rは、位置サーバSと通信可能な無線の有効距離である。
sは通信媒体の信号伝達速度である。
【0042】
第5に、図3に示す流れ図を参照しながら、距離検証方法の処理手順を説明する。ステップ1において、位置モジュールMiは、次式によりリクエスト情報を生成し、位置サーバSへ送信する。
Reqi=ReqG(Zi)
このとき、無認証(No authentication)の場合(Case1)は、乱数Riを生成して、ユーザ番号iと乱数Riの連接データ(i‖Ri)を引数Ziとする。対称鍵利用認証(Symmetric Key Based Authentication)の場合(Case2)は、ID番号iを引数Ziとする。非対称鍵利用認証(Asymmetric Key Based Authentication)の場合(Case3)は、公開鍵Yiを引数Ziとする。匿名認証(Authentication with anonymity)の場合(Case4)は、公開鍵Yiを乱数Riでマスクしたマスク値MaskY(Ri,Yi)を引数Ziとする。
【0043】
ステップ2において、位置サーバSは、リクエスト情報Reqiを受信し、引数Ziを取得する。位置サーバSは、引数Ziから、位置モジュールMiが要求する相手認証の方法を判断する。要求を受け入れない場合は拒否(Reject)を位置モジュールMiへ送信し、プロトコルを中止する。この考え方は、非特許文献16や非特許文献14のCipher Suite方式に近い。
【0044】
ステップ3において、位置サーバSは、乱数RSを生成する。位置サーバSは、次式によりチャレンジ情報および回答を生成して、チャレンジ情報を位置モジュールMiへ送信し、Chaiの送信時刻をTChaとする。位置サーバSは、Chaiの上位から順に位置モジュールMiへ送信する。
{Chai,Ai}=ChaG_C(Rs,zi)
このとき、Zi=(i‖Ri)の場合(Case1)は、乱数Riをziとする。Zi=iの場合(Case2)は、iから対応する共通鍵Kiを選択して、共通鍵Kiをziとする。Zi=Yiの場合(Case3)は、公開鍵Yiをziとする。Zi=MaskY(Ri,Yi)の場合(Case4)は、マスク値MaskY(Ri,Yi)をziとする。
【0045】
ステップ4において、位置モジュールMiは、チャレンジ情報Chaiを受信し、次式によりレスポンス情報を生成して位置サーバSへ送信する。
Resi=ResG_C(Chaii)
このとき、Zi=(i‖Ri)の場合(Case1)は、乱数Riをζiとする。Zi=iの場合(Case2)は、iから対応する共通鍵Kiを選択して、共通鍵Kiをζiとする。Zi=Yiの場合(Case3)は、秘密鍵Xiをziとする。Zi=MaskY(Ri,Yi)の場合(Case4)は、マスク値MaskX(Ri,Xi)をζiとする。
【0046】
ステップ5において、位置サーバSは、応答Resiを受信し、応答Resiの受信時刻をTResとする。次式により、応答Resiの検証を行う。
OK=VeriF_C(Ai,Resi,zi,r,s,TDelay,TCha,TRes
ただし、VeriF_Cは、検証関数であり、検証成功の場合は1を返し、それ以外では0を返す関数である。OKの値が1の場合は認証成功とし、OKの値が0の場合は認証失敗と判断する。認証成功時は、d(=(ΔT−TDelay)/s)を求めて、アクセプトする。
【0047】
第6に、各関数と生成器の要件および詳細を説明する。リクエスト生成関数(Request Generator)ReqG_Cは、Ziを含み、位置サーバSがZiを取得できることとする。チャレンジ生成関数(Challenge Generator)ChaG_Cは、以下の要件を満たすチャレンジChaiを生成可能である。質問Qi全体からのみ回答Aiを得ることができる。ziに対応したζiからのみ回答Ai(またはSigned Ai)を計算することができる。回答Aiおよびその要素である回答要素Ai_jは、全数探索に耐えうるサイズである。チャレンジ情報とリクエスト情報の通信時間の合計をTComとし、Chaiが中継された場合に、
{(TCom+TRelay−TDelay)/s}>r
を満たす中継遅延TDelayが発生するようにChaiのサイズCSiを決定する。位置モジュールMiが回答Ai(またはSigned Ai)を計算するのに要する時間TMは、TM≦TDelayを満たす。質問Qの全体を得るまで、回答Aiを算出するのに必要な、いかなる処理も困難である。
【0048】
ChaG_β1(非対称鍵利用認証1)
Chai=Qi
=(Qi_n‖Qi_n-1‖Qi_n-2‖・・・‖Qi_j‖・・・‖Qi_3‖Qi_2‖Qi_1)
質問の構成は、
i_1=A_Enc(Yi,Ai_1)
i_j=S_Enc(Ai_j-1,Ai_j) (j≧2),
または
i_j=A_Enc(Yi_j-1,Ai_j)
(j≧2、Ai_jとYi_jはそれぞれ秘密鍵と公開鍵の組となっている)とする。
回答は、
i=(Ai_n‖Ai_n-1‖Ai_n-2‖・・・‖Ai_j‖・・・‖Ai_3‖Ai_2‖Ai_1)
である。Qiは2≦nのとき、多重構造を有する。n=1の場合は単純な構造となる。
【0049】
ChaG_β2(非対称鍵利用認証2)
Chai=Qi
=(Qi_n‖Qi_n-1‖Qi_n-2‖・・・‖Qi_j‖・・・‖Qi_2‖Qi_1‖Qi_0)
i_0=Ωi
{Ωi|1からnまでの整数をランダムに並べた系列、n=1の場合は、Qi_0はQiに含まれない}
例:Ωi=(2‖5‖n‖・‖9‖n−3)
{Ai|Ωに従ってQiを並べた系列}
例:Qi'=(Qi_2‖Qi_5‖Qi_n‖・‖Qi_9‖Qi_n-3)
回答は、Signed Ai=A_Sig(Xi,H(Qi'))である。Qiは2≦nのとき、Qi'への置換が必要となる。n=1の場合はQi'=Qiの単純な構造となる。
【0050】
ChaG_γ1(対称鍵利用認証1):Chaiと回答は、ChaG_β1と同じ。質問の構成は、
i_1=S_Enc(Ki,Ai_1)
i_j=S_Enc(Ai_j-1,Ai_j) (j≧2)
となる。
【0051】
ChaG_γ2(対称鍵利用認証2):Chaiと質問はChaG_β2と同じ。回答は、
Signed Ai'=S_Sig(Ki,Qi)
である。
【0052】
ChaG_α(無認証):対称鍵利用認証1、2と同様の処理を、乱数Riを鍵Kiの代わりとして行う。乱数Riを毎回変更する場合は、位置サーバSが位置モジュールMiを特定する情報を無くすことができる。一方、乱数Riを毎回同じとする場合は、位置サーバSは位置モジュールMiが誰であるかは分からないが、他のエンティティと区別することが可能となる。
【0053】
ChaG_ε(匿名認証):ChaG_β2に適用可能なDSA等のDLPをベースとする方法を示す。なお、同様の考えによりECDSA等の楕円曲線暗号を利用することも可能である。pとqを素数、gを、(q−1)/pを位数とする元、乱数Riと秘密鍵Xiを1からq−1までの整数、
i=gXi modp
とする。このとき、マスク関数はそれぞれ次のように表される。
MaskY(Ri,Yi)=YiRi modp=gXi×Ri modp
MaskX(Ri,Xi)=Ri×Xi modq
【0054】
図のステップ1においては、これらのマスク関数を用いて、ChaG_β2を実行する。ステップ2において認証に成功した場合、位置サーバSは、自身の公開鍵YSに対応する秘密鍵XSを用いて、位置証明書InfoLi(=A_Sig(XS,IDS‖TCha‖TRes‖MaskY(Ri,Yi)))を、位置モジュールMiへ送る。ステップ3において、位置モジュールMiはInfoLiを受信し、位置を証明した第三者TPに、InfoLiと乱数Ri'とYiの公開鍵証明書CertiとYSの公開鍵証明書CertSを開示する。ステップ4において、TPはCertS、InfoLi、Certiの署名を検証し、正しい場合にはInfoLiからMaskY(Ri,Yi)をCertiから公開鍵Yi'を取得し、次式
MaskY(Ri,Yi)=MaskY(Ri',Yi')
が成立するか否かを検証する。成立する場合は、(IDS‖TCha‖TRes)を受け入れる。
【0055】
応答生成関数(Response Generator)ResG_Cは、Chaiとζiを入力として、時間TMにおいてAi'を含むResiを生成できる関数である。
【0056】
認証関数(Verification Function)VeriF_Cは、入力Ai,Resi,zi,r,Tdelay,Tcha,TResが正しい場合に、OK=1を出力し、それ以外の場合にはNG(OK=0)を出力する関数である。入力が正しいとは、
ΔT=TRes−TCha
d=(ΔT−TDelay)/s
のとき、
r≧d>0
かつ次の条件を満たす場合を意味する。
ChaG_β1およびChaG_γ1の場合は、入力Aiと入力Resiから取得したAi'が等しい。
ChaG_β2の場合は、入力Aiと入力Resiから取得したAi'が等しい、かつSigned A'をzi(=Yi)により検証した結果が、成功である。
ChaG_γ2の場合は、入力Aiと入力Resiから取得したAi'が等しい、かつSigned A'をzi(=Ki)により検証した結果が、成功である。
ChaG_αの場合は、乱数RiをKiとして、ChaG_γ1またはChaG_γ2と同様の検証を行う。
ChaG_εの場合は、ChaG_β2と同様の検証を行う。
【0057】
第7に、機能拡張方法について説明する。中継端末攻撃(Relay attack)を防ぐために、中継が行われた場合には、通信範囲外であるかのように検出されるように設定する。すなわち、位置サーバSと位置モジュールMの距離dを、中継が行われた場合の通信時間から求めると、位置サーバSが無線通信できる有効距離rを超えるように設計する。そのため、本実施例では、距離検証に加えて相手認証も含めて通信・演算時間を計測すると共に、認証情報を中継する場合には遅延が増加するように工夫する。ここで、通信の中継には必ず遅延が発生し、中継データサイズの増加、中継回数の増加、中継距離の増加があった場合に、遅延は増加すると仮定する。
【0058】
中継データサイズが増加するように、認証のチャレンジ情報のサイズを大きくとる。ただし、中継端末RSが分割して中継し、位置モジュールMが処理して中継端末RSに返すことをパイプラインのように繰り返されると、サイズを大きくした効果が少なくなる。そのため、チャレンジ全体を保持しない場合には処理が実行できないように、チャレンジ情報を構成する。中継回数が増加するように、認証を複数回繰り返すようにする。ただし、演算量が増加するため、距離検証の誤差が増加する。そのため、実装時に、そのシステムに適した認証回数を評価して、最適認証回数を設定する。攻撃者は、位置を詐称することを望むわけであるが、多くの場合は、詐称する位置と実際の位置の差が大きいほど、攻撃者に都合が良いと予想される。したがって、中継距離の増加は特に考慮しなくても、多くの場合は増加する傾向にあると考えられる。
【0059】
繰り返しによる拡張方法を説明する。図3のステップ3〜5をB回繰り返すことにより、繰り返し認証型に変換可能である。Bは、転送遅延を決定するセキュリティパラメータである。中継端末RSの中継遅延TRelayに、中継量に依存しない固定的な時間が含まれる場合、チャレンジ情報のサイズ当たりの中継遅延増加率は繰り返し認証型の方が高くなる。つまり、繰り返し認証型におけるh(1≦h≦B)回目のチャレンジ情報Chai_hのサイズをCSi_hとしたとき、総通信量B×CSjを通常のチャレンジChaiのサイズCSiより小さくできる可能性がある。その反面、リクエスト情報の生成に必要な演算オーバヘッドによる距離検証誤差が増加する可能性がある。
【0060】
特別のデータ構造を有するチャレンジ情報について説明する。チャレンジ情報全体のみからレスポンス情報を生成でき、チャレンジ情報の一部からはレスポンス情報のいかなる部分も生成できないというデータ構造を有するチャレンジ情報を用いる。具体的には、チャレンジが複数の質問(暗号文)から構成され、ひとつの暗号文を解くと、次の暗号文を解く鍵が得られる構成である。チャレンジの暗号文列のうち、最初に解かなくてはならない暗号文を最後に送信する。
【0061】
図4を参照しながら、領域検証、点位置検証、経路検証に拡張する方法を説明する。非特許文献15と同様に、位置サーバSを複数配置し、それらの位置サーバの距離検証結果を集計することにより、複数の位置サーバSの距離検証範囲を合わせたより大きな領域(Region)における距離検証が可能となる。非特許文献4と同様に、位置サーバSを複数配置し、3台の位置サーバSを頂点とするほぼ三角形の範囲内に位置モジュールMが存在する場合、それらの位置サーバSの距離検証結果を集計することにより、位置モジュールMの二次元での点位置(Position)が距離検証可能となる。さらに4台の位置サーバSを頂点とするほぼ4面体ピラミッドの範囲内に位置モジュールMが存在する場合、それらの位置サーバSの距離検証結果を集計することにより、位置モジュールMの三次元での点位置(Position)が距離検証可能となる。
【0062】
経路認証(Route Verification)について説明する。経路認証は、位置モジュールMの移動経路を、位置サーバSまたは第三者が検証できるようにする方法である。具体的には、位置サーバSを複数配置し、それらの位置サーバSの距離検証結果を時系列に集計することにより、位置モジュールMの移動経路を検証することが可能となる。
【0063】
相互認証と相互距離検証について説明する。位置モジュールMが位置サーバSにリクエスト情報を送る前に、位置サーバSの相手認証を行うことで、正しい位置サーバSであることを確認してから、位置に関する情報を位置サーバSに送ることができる。位置モジュールMが位置サーバSと同様に距離検証機能を有している場合、位置モジュールMが位置サーバSの距離検証も行うことで、相互距離検証が可能である。
【0064】
位置サーバSの実装形態を説明する。特定の場所に固定され、不正に移動されたことを検知可能とする固定式と、位置サーバSが安全な方法により自身の位置を取得可能であり、かつ移動することができる移動式がある。固定式には、独立型(位置サーバSはスタンドアローンで動作する)と集権型(複数の位置サーバSの情報をセンター位置サーバが管理する)がある。移動式には、独立型(位置サーバSはスタンドアローンで動作する)と、内蔵型(位置モジュールM内にスタンドアローンで動作する位置サーバSが内蔵されている)と、兼用型(位置モジュールMが位置サーバSを兼ねる)と、集権型(複数の位置サーバSの情報をセンター位置サーバが管理する)がある。
【0065】
使い捨て鍵を利用して、処理遅延を短縮する方法を説明する。対称鍵利用認証1と2において、対称鍵として使い捨て鍵(One Time Key)を利用することで、演算コスト(即ち、処理時間 Processing Delay)を最小限に抑える方法を示す。S_Enc関数およびS_Sig関数を、入力値同士の単純な演算(例、XOR)、また通信に先立ち位置サーバSと位置モジュールMiで、暗号学的に安全な擬似乱数生成器PRGおよびマスター鍵Kiを共有しておく。位置モジュールMiはS_EncおよびS_Sigに使用するw回目の使い捨て鍵であるKi_wを、PRGによりリクエスト情報を送信する前に生成し、安全に保存しておく。また、質問Qiはn=1で構成する。以上の条件下において、対称鍵利用認証1と2を実施することで、演算コストを最小限に抑えた距離検証が可能となる。
【0066】
位置に基づくアクセス制御について説明する。距離検証に成功した場合、位置サーバSは、位置モジュールMiに対して、距離検証に使用した鍵Kiを用いて何らかのアクセス権を与えることができる。例えば、位置サーバSは、ゲートを開ける、位置サーバSは何らかの情報を位置モジュールMiへ送る、位置サーバSは位置モジュールMiのネットワークへの接続を許可する、などである。
【0067】
メッセージ認証について説明する。通信路上での攻撃を防ぐため、通信情報にMAC(Message Authentication Code)およびタイムスタンプを付加することが有効である。これにより、改ざん・再送攻撃を検出できる。ただし、これらの付加情報の通信時間や演算時間がΔTに含まれると距離検証の精度が低下するため、チャレンジに対するMACはチャレンジの前に送信し、レスポンスに対するMACはレスポンスの後に送信する。また、MACやタイムスタンプの検証は、位置モジュールMの場合はレスポンス送信後、位置サーバSの場合はレスポンス受信後に行う。
【0068】
ユーザ認証について説明する。本実施例は、位置モジュールMiの位置を認証するものである。ここでは、本実施例を、人間の距離検証に応用する方法を説明する。ユーザUiを、位置モジュールMiの所有者とする。位置モジュールMiはユーザUiの認証に成功した場合に、位置サーバSのチャレンジに対して、自身が安全に保持する秘密鍵Xiにより処理したレスポンスを生成する。つまり、ユーザUiの認証に成功した場合のみ、秘密鍵Kiを使用可能となる。このとき、ユーザUiを認証する機能は、ユーザUiが位置モジュールMiとほぼ同位置に存在することを保証する必要がある。これを満たす認証方式としては、指紋認証や虹彩認証等がある。逆に、パスワードや声紋認証等は、リモートからの認証が可能となるため、条件を満たさない。
【0069】
位置スタンプ(Location Stamp)について説明する。位置スタンプとは、誰が、いつ、何処にいたかを証明し、それらの情報に対して証明者の署名が付加されたものである。本実施例では、位置サーバSの署名を付加する。つまり、匿名性を有する相手認証の位置証明書InfoLiは、位置スタンプと言える。通常の相手認証の場合にも、位置・相手認証に成功した位置モジュールMに対して、位置サーバSが位置スタンプを発行することが可能である。位置スタンプは、発行対象がモバイルノードである場合、時刻情報が必須となる。したがって、位置スタンプはタイムスタンプ(非特許文献8参照)の一種であるとも考えられる。タイムスタンプは時刻情報のみを扱うため、TSA(Time Stamp Authority)はネットワーク経由でどこからでもグローバルに利用することが可能である。一方、位置スタンプの場合は、モバイルノードの物理的な位置情報を扱う必要があるため、モバイルノードの存在する近傍のエリアに位置サーバが存在しなくてはならない。
【0070】
第8に、安全性の評価などについて説明する。本実施例の距離検証方法は、電波の速度および位置モジュールMiの耐タンパー性に依存する安全性に帰着するので、距離検証可能性(Distance verifiability)および不正証明者耐性(Dishonest prover-resistance)を満たす。本実施例の距離検証方法における安全性の前提とする4つの仮定を示す。
仮定1:位置モジュールMiが回答AiまたはSigned Aiを計算するために要する時間と、通信時間を除く通信処理に要する時間の合計である許容可能な遅延時間TDelayを、位置サーバSは知っており、かつ攻撃者は、TDelayを変更することが困難である。この仮定は、位置モジュールMiに耐タンパー性を要求することにより満足される。
仮定2:攻撃者は、速度sより速くは送信できない。この仮定は、速度sが真空中の光速度cにほぼ等しい場合には妥当である。
【0071】
仮定3:もし、位置サーバSと位置モジュールMiの通信が中継されると、中継遅延時間TRelay(>0)が発生し、かつTRelayは次の不等式を満たす。
((TCom+TRelay−TDelay)/s)>r
チャレンジとレスポンスを、この仮定を満たすように設計する。
仮定4:暗号方式(A_Enc(Y,m),S_Enc(K,m),A_Sig(X,m),S_Sig(k,m),H(m))は、暗号学的に安全である。VeriF_Cの出力が「OK」の場合、位置モジュールMiが、位置サーバSから距離d(=(ΔT−TDelay)/s)以内に存在すると判別する。ここで、dは、不等式r≧d>0を満たす。仮定1より、TDelayは、攻撃者により変更できない。仮定2より、TComは、攻撃者により低減できない。仮定3より、中継が行われた場合は、不等式((TCom+TRelay)/s)>rが満たされる。そして、仮定1、2、3、4より、VeriF_Cは安全である。ゆえに、VeriF_Cの出力が「OK」ならば、位置モジュールMiは、位置サーバSから距離d以内に存在する。
【0072】
本実施例では、Resiの検証に成功し、かつ
d=(ΔT−TDelay)/s
のときに、次式を満たす場合に、位置サーバSから距離d以内に位置モジュールMiが存在すると判断する。
r≧d>0
このとき、仮定1および2より、TDelayは攻撃者により変更することが困難であり、かつ仮定3より攻撃者が通信時間(ΔT−TDelay)を減少することは困難であり、かつ仮定4より、中継が行われた場合は
{(ΔT−TDelay)/s}>r
となる。ゆえに
r≧d>0
を満たすとき、位置モジュールMiが位置サーバSから距離d以内に存在する。
【0073】
セキュリティパラメータについて説明する。チャレンジ情報ChaiのサイズCSは、中継遅延を決定するセキュリティパラメータである。実際には、中継器RSの中継速度と通信時間について考慮する必要がある。ここで、CSiは、Chaiのサイズを意味する。Ei[bit/sec]は、通信速度、Fi[bit/sec]は、RSiの中継速度である。EiとFiを用いて、TComとTRelayを、次のように表す。
TCom=CSi/Ei
TRelay=CSi/Fi
また、上式より、次のように記述できる。
((CSi/Fi+CSi/Ei−TDelay)/s)>r
つまり、Fiを予想することで、CSiを決定できる。回答Aiと対応する要素Ai_jのサイズは、全数探索攻撃に耐えうるサイズとする。例えば、少なくとも80bitsである。
【0074】
匿名認証の安全性について説明する。もし、暗号方式(MaskY(R,Y),MaskX(R,X),A_Sig(X,m))が安全で、DLPを解くことが計算量的に困難であれば、位置サーバSは、位置モジュールMiの公開鍵を知らないため、位置モジュールMiを特定できない。一方、位置モジュールMiによって選ばれた第三者は、乱数Rを使って公開鍵を得ることができる。
【0075】
個別の攻撃に対する耐性について説明する。エンティティに対する攻撃のうち、直接解析(Tampering)については、耐タンパー性を仮定しているため、位置サーバSおよび位置モジュールM共に、直接解析に対して耐性を有する。したがって、位置モジュールMのクローニングも実施困難であるため、中継端末RSは位置モジュールMのクローンではないと仮定できる。中継端末RSが位置モジュールMのクローンである場合、中継端末攻撃耐性(Relay attack resistance)を満たさない。成りすまし攻撃が想定されるが、位置モジュールMに対する相手認証を実施し、その認証には暗号学的に安全な方式を利用しているため、成りすましは困難である。
【0076】
位置モジュールMの秘密鍵はレスポンス情報に含まれる。そのため、チャレンジとして与える情報を変更することで秘密鍵を得ようとするブラックボックス攻撃が想定できる。しかし、位置モジュールMがレスポンス情報の生成に利用する暗号方式は、OAEP RSAやPSS等の暗号学的に安全な方式を使用すると仮定するため、レスポンス情報から秘密鍵を得ることは困難である。
【0077】
通信に対する攻撃について説明する。メッセージ改ざん攻撃があるが、メッセージに対する改ざん耐性を持たせるため、通信路上のメッセージの改ざんを検知するMACを導入する。メッセージ再送攻撃があるが、通信路上のメッセージを記憶しておき、後から再送する再送攻撃に対する耐性を持たせるため、再送攻撃を検知するタイムスタンプを導入する。中継端末攻撃があるが、既に述べたように、中継端末攻撃に対して耐性を有する。
【0078】
最後に、図5を参照しながら、本実施例を従来方法と比較する。図5に示すように、本実施例は、全ての要求を満たしている。本実施例は、距離検証可能性を満たしている。不正証明者耐性も満たしている。拡張性についても、複数の認証方式が適用可能であるので満たしている。特に、不正証明者耐性を満たす方法は、本発明のみである。不正証明者耐性は、安全性の基本要求であるため、距離検証方式は必ず満たすべきである。拡張性は、システムによっては要求されない場合もあるが、近年でのユーザプライバシ保護要求の高まりなどに応じて、今後は種々の拡張が必要になると考えられる。
【0079】
実施例1では、位置モジュールMの処理遅延を固定するため、耐タンパー性を仮定している。従来方法は、位置モジュールMの秘密鍵Kの処理を距離検証の時間計測の範囲外とすることで、秘密鍵Kに関する処理遅延を無視できるものとして、耐タンパー性を仮定していない。しかしながら、現実には、無線通信プロトコルは、変復調・エラー訂正等の処理を必要とするため、これらに関する処理遅延を無視することはできない。したがって、結局は、処理遅延を固定するために、耐タンパー性を仮定する必要がある。以上より、実施例1は、現実的な仮定の下での方法のうちで、最も優れた方法であると言える。
【0080】
上記のように、本発明の実施例1では、距離検証方法を、距離検証手段である位置サーバと、耐タンパー性の距離証明手段である位置モジュールとからなる距離検証システムにおいて、位置モジュールは、位置サーバから受信したチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成し、位置サーバは、位置モジュールからの応答遅延時間を利用して距離検証を行い、相手認証のための処理時間を距離検証のための計測時間の範囲に含めて、相手認証と距離検証を同時に実施する方法としたので、中継端末攻撃を検知でき位置詐称を防ぐことができる。また、位置モジュールの秘密鍵の処理を汎用的に設計することにより、位置モジュールが、複数の認証方法のうちから任意の方法を選択可能にできるので、プライバシの保護も可能である。
【実施例2】
【0081】
本発明の実施例2は、距離証明手段P2を距離検証する際に、距離証明手段P1にチャレンジを中継させ、距離証明手段P1はチャレンジを中継する際にチャレンジにコミットし、距離証明手段P2はレスポンスを返す際にレスポンスにコミットし、距離証明手段P2はレスポンスを距離検証手段Vに直接、または、距離証明手段P1経由で返し、距離証明手段P2を距離検証した結果と距離証明手段P1を単独で距離検証した結果から距離証明手段P1‐距離証明手段P2間距離を算出する2点間距離検証方法である。
【0082】
図6は、本発明の実施例2における2点間距離検証方法の種別を示す概念図である。図6において、距離検証手段V(位置サーバS)は、距離証明手段までの距離を検証する手段である。距離証明手段P1、P2、P3(位置モジュール)は、距離証明手段のチャレンジ情報を処理してレスポンス情報を生成するとともに、チャレンジとレスポンスを中継する機能を有する耐タンパー性モジュールである。
【0083】
図6(a)は、2個の距離証明手段P1、P2を個別に距離検証する方法を示す図である。図6(b)は、2個の距離証明手段P1、P2間の距離を、ターン型中継法により検証する方法を示す図である。図6(c)は、2個の距離証明手段P1、P2間の距離を、ループ型中継法により検証する方法を示す図である。図6(d)は、2個の距離証明手段P1、P2間の距離を、ターン型中継法により検証する場合の、チャレンジとレスポンスの中継方法を示す図である。図6(e)は、3個の距離証明手段P1、P2、P3を個別に距離検証する方法を示す図である。図6(f)は、3個の距離証明手段P1、P2、P3間の距離を、ターン型中継法により検証する方法を示す図である。図6(g)は、3個の距離証明手段P1、P2、P3間の距離を、ループ型中継法により検証する方法を示す図である。
【0084】
図7は、2点間距離検証方法で用いる位置サーバと位置モジュールの概念図である。実施例2における2点間距離検証方法で用いる位置モジュールと位置サーバの基本的な構成は、実施例1の図1に示したものと同じである。ただし、位置モジュールに、コミット関数により署名を施して中継する機能を有する点が異なる。中継機能は、応答生成関数の機能と類似のものである。図8は、2点間距離検証方法の処理手順の一部を示す流れ図である。
【0085】
本発明の実施例2における2点間距離検証方法の処理手順を、図6〜図8を参照しながら説明する。最初に、定義を説明する。位置は「距離、範囲、場所、経路」を意味する。また、距離検証を拡張することで、範囲検証、場所検証、経路検証を実現できるので、ここでは距離検証のみを説明する。
【0086】
位置サーバSは、秘密鍵Kiが演算された位置Liを検証する距離検証手段である。位置サーバSはRF(Radio Frequency)を用いて距離r以内のエンティティと通信でき、精密にその時間を計測できる。位置サーバSは位置Lsに固定され、移動されたことを検知できる。全エンティティは位置サーバSが不正を行わないことを信じるものとする。この条件を満たすため、位置サーバSに耐タンパー性を仮定する。
【0087】
位置モジュールMiは、位置サーバSに対して自身の位置Liを証明する距離証明手段である。位置モジュールMiは、秘密鍵Ki(共通鍵暗号)又はXi(公開鍵暗号:対応する公開鍵をYiとする)を安全に保管する。iは、位置モジュールのIDである。1≦i≦n,2≦n,nはユーザ数である。IDがiである位置モジュールをMiと表す。IDがjである位置モジュールをMjと表す。位置モジュールMiが保持する秘密鍵をKiと表す。その他のものも同様である。
【0088】
位置モジュールMiは、位置サーバSにより生成されたチャレンジに対応するレスポンスを秘密鍵Ki又はXiを用いて生成する。また、他の位置モジュールに対するチャレンジやレスポンスを中継することができる。ここで、位置モジュールMiの演算時間や中継時間を変更することは困難とする。この条件を満たすため、位置モジュールMiに耐タンパー性を仮定する。また、位置モジュールMiは検証中に移動しないものとする。
【0089】
中継端末RSiは、不正な位置モジュールMiに操作されて、位置サーバSと位置モジュールMiの通信を中継する。中継端末RSiは、秘密鍵Ki又はXiを持たないとする。
【0090】
2点間及びn点間距離検証方法の要件を説明する。2点間距離検証方法と、2点間距離検証方法を複数の証明者に拡張したn点間距離検証方法とのそれぞれに共通の要件を説明する。
【0091】
2点間距離検証性について説明する。
[命題1]「時刻Tから時刻(T+ΔT)の間に、検証者Vから距離di以内で秘密鍵Kiが、検証者Vから距離dj以内で秘密鍵Kjが、かつ秘密鍵Kiと秘密鍵Kjが距離dij以内で計算された。」(距離diは、秘密鍵Kiに対応する距離、距離djは、秘密鍵Kjに対応する距離、距離dijは、秘密鍵Kiと秘密鍵Kjとの組に対応する距離)
【0092】
もし、検証者Vが時刻Tに観察を開始してから時刻(T+ΔT)までに全レスポンスを受けたなら、検証者Vは命題1の成否を判定できる。2点間距離検証に相手認証機能を付加するため、位置モジュールMi以外は秘密鍵を知らない(共通鍵暗号の場合は検証者Vにも既知)と仮定し、秘密鍵と位置モジュールMiは分離できないものとする。
【0093】
n点間距離検証性について説明する。
[命題2]「時刻Tから時刻(T+ΔT)の間に、検証者Vから距離d1以内で秘密鍵K1が、検証者Vから距離d2以内で秘密鍵K2が、・・・検証者Vから距離dn以内で秘密鍵Knが、かつ、秘密鍵のうちの2個の全ての組み合わせに対して、秘密鍵の組(秘密鍵Ki,秘密鍵Kj)が距離d{j,i}以内で計算された。」
【0094】
もし、検証者Vが時刻Tに観察を開始してから時刻(T+ΔT)までに全レスポンスを受けたなら、検証者Vは命題2の成否を判定できる。ここで、距離d{j,i}はn個から2個を選ぶ全秘密鍵の組み合わせにおける、秘密鍵Kiと秘密鍵Kjの秘密鍵間距離を意味する。なお、相手認証機能の付加については、2点間距離検証と同様である。
【0095】
中継攻撃耐性とは、中継攻撃に耐性を持つことを意味する。適応性とは、実際のシステムに適応できることを意味する。モジュール性とは、秘密鍵に依存した複数相手認証方法を入れ替えられるフレームワークを持つことを意味する。
【0096】
攻撃モデルについて説明する。位置モジュールMiの所有者又は第三者である攻撃者の目的は、位置モジュールMiの偽の位置L'を検証者Vに信じさせることと仮定する。攻撃を、エンティティと通信に対するものに分類する。
【0097】
エンティティに対する攻撃は、次のものである。タンパー攻撃は、直接、位置モジュールMi又は位置サーバSを改ざんし解析することである。一方、ブラックボックス攻撃は、様々な入力に対する位置モジュールMi又は位置サーバSの出力から、秘密情報を推測することである。また、成りすまし攻撃は、位置モジュールMi又は位置サーバSに対して成りすましを行うことである。
【0098】
通信に対する攻撃は、次のものである。メッセージ改ざん攻撃は、通信路上のメッセージを改ざんすることである。一方、再送攻撃は、通信路上のメッセージを再送することである。中継攻撃は、中継端末RSiが、位置モジュールMiと位置サーバSの通信や、位置モジュールMiと位置モジュールMj(i≠j)の通信を中継することである。
【0099】
ベースとなる方法は、実施例1のフレームワークと複数の相手認証のモジュールから成る。このフレームワークを拡張し、相手認証のモジュールは変更せずにそのまま利用する。そのため、相手認証モジュールについての詳細は説明しない。2個の位置モジュールM1とM2を検証可能な2点間距離検証方法と、n(n>1)個の位置モジュールM1、M2、・・・、Mnを検証可能なn点間距離検証方法に分類できる。また、実現方法として、それぞれレスポンスを中継してから検証者に戻すターン型と、レスポンスを直接検証者に返すループ型が存在する。
【0100】
記号を説明する。
A_Sig(X,m)は、秘密鍵Xにより平文mに署名する安全な署名関数である。対応する公開鍵Yで署名を検証できる。
S_Sig(K,m)は、共通鍵Kにより平文mのMAC(Message Authentication Code)を生成する安全な関数である。例えば、HMACである。共通鍵KでMACを検証できる。
H(m)は、平文mのハッシュ値を生成する安全な一方向性ハッシュ関数である。
MaskY(R,Y)は、乱数Rにより公開鍵Yをマスクする公開鍵マスク関数である。Rが無い場合は、マスクされた公開鍵Y'からYを得ることは困難である。
MaskX(R,X)は、乱数Rにより秘密鍵Xをマスクする秘密鍵マスク関数である。乱数Rが無い場合は、マスクされた秘密鍵X'から秘密鍵Xを得ることは困難である。
【0101】
(Qi,Ai)は、位置モジュールMiに対応する質問と回答の組である。
Reqiは、位置モジュールMiにより生成されたリクエストである。
Chaiは、位置モジュールMiのために位置サーバSが生成したチャレンジである。
Resiは、位置モジュールMiにより生成されたレスポンスである。
ReqGは、相手認証方法のタイプを入力として、リクエストReqiを出力するリクエスト生成関数である。
ChaG_Cは、乱数とリクエストReqiを入力として、チャレンジChaiを出力する関数である。Cは、相手認証方法タイプを意味する。相手認証方法タイプは、
α="No authentication"
β=公開鍵ベース"Authentication"
γ=共通鍵ベース"Authentication"
ε="Authentication with anonymity"
のいずれかである。
ResG_Cは、チャレンジChaiと位置モジュールMiの秘密鍵を入力として、レスポンスResiを出力する関数である。Cは、相手認証方法タイプである。
【0102】
VeriF_Cは、入力を検証し、正しければ"OK"を出力し、不正なら他の値を出力する検証関数である。Cは、相手認証方法タイプである。
VeriFrelay_Cは、入力を検証し、正しければ"OK"を出力し、不正なら他の値を出力する検証関数である。VeriF_Cと異なり、中継の正当性を検証できる。Cは相手認証方法タイプである。
ComF_Cは、位置モジュールMiの秘密鍵とメッセージを入力として、A_Sig(X,m)又はA_Sig(X,m)により署名した値を出力するコミット関数である。Cは、相手認証方法タイプである。
TCha_iは、位置サーバSがチャレンジChaiを送信した時刻である。
TCha_ijは、位置サーバSがチャレンジChajを位置モジュールMiに送信した時刻である。
TRes_iは、位置サーバSがレスポンスResiを受信した時刻である。
TRes_ijは、位置サーバSがレスポンスResjを、位置モジュールMiから受信した時刻である。
【0103】
TRelayは、中継遅延時間である。チャレンジChaiが未中継ならば、Trelay=0である。
TRelay_iは、位置サーバSが事前に承認した位置モジュールMiの中継時間(中継時に位置モジュールMiが実施するコミット処理を含む全ての演算時間)である。
TDelay_iは、位置サーバSが事前に承認した位置モジュールMiのレスポンス演算時間(通信に関わる演算やコミットを含む全ての時間)である。
TCom_iは、位置サーバS-位置モジュールMi間の通信時間である。
TCom_ijは、位置モジュールMiを経由した位置サーバS-位置モジュールMj間の通信時間(中継時間及び演算時間は含まない)である。
TPermitは、位置サーバSが許容する距離検証の誤差時間である。
ΔTは、監視を開始してから全レスポンスを受けるまでの時間(ΔT=TRes_ij−TCha_i)である。
ΔTi=TRes_i−TCha_i
である。
sは、RFの速度である。
rは、位置サーバSの有効なRF距離である。
【0104】
ターン型2点間距離検証方法のフレームワークを説明する。位置モジュールMiとMj(i≠j)を、位置サーバSが検証する場合について説明する。
Step1:位置モジュールMiは、リクエストReqi(=ReqG(Zi))を生成し、位置サーバSに送る。相手認証方法タイプZiを以下のように選択する。
Case1 "No authentication":Zi←i‖Ri。「‖」は、データの連接、B←Aは、AのBへの代入を意味する。
Case2 共通鍵ベース"Authentication":Zi←i。
Case3 公開鍵ベース"Authentication":Zi←Yi
Case4 "Authentication with anonymity":Zi←Yi'(MaskY(Ri,Yi)の出力)。
【0105】
Step2:位置サーバSは、リクエストReqiを受信し、リクエストReqiから位置モジュールMiが要求する相手認証方法タイプZiを得る。位置サーバSは、相手認証方法タイプZiに対応しない場合は、"Reject"を位置モジュールMiへ送り、プロトコルを終了する。
【0106】
Step3:位置サーバSは、乱数Rsiを選択し、チャレンジと対応する回答の組{Chai,Ai}(=ChaG_C(Rsi,zi))を生成する。以下のようにziを選択する。
Case1 Zi=i‖Rsiならば、zi←Rsiとする。
Case2 Zi=iならば、位置サーバSは、iから対応するKiを選択し、zi←Kiとする。
Case3 Zi=Yiならば、zi←Yiとする。
Case4 Zi=Yi'ならば、zi←Yi'とする。
次に、位置サーバSは、チャレンジChaiを位置モジュールMiへ送り、TCha_iに、その時刻を代入する。なお、位置サーバSは、最上位から順番にチャレンジChaiを位置モジュールMiへ送る。
【0107】
Step4:位置モジュールMiは、チャレンジChaiを受信し、レスポンスResi(=ResG_C(Chaii))を生成する。以下のようにζiを選択する。
Case1 Zi=i‖Rsiならばζi←Rsiとする。
Case2 Zi=iならばζi←Kiとする。
Case3 Zi=Yiならばζi←Xiとする。
Case4 Zi=Y'ならばζi←Xi'(MaskX(Ri,Xi)の出力)とする。
最後に、位置モジュールMiは、Resiを位置サーバSに送る。
【0108】
Step5:位置サーバSは、Resiを受信し、TRes_iにその時刻を代入する。
Step6:位置サーバSは、位置モジュールMjに対して、同様に、Step1からStep5を実行し、TCha_jとTRes_jを得る。ここまでの手順は、実施例1と同じである。(Step1からStep5までの流れは、実施例1の図3と同じである)
Step7:位置サーバSは、乱数Rsjiを選択し、チャレンジと対応する回答の組{Chaji,Aji}(=ChaG_C(Rsji,zi))を生成する。なお、ziは、Step3と同じものを利用する。次に、位置サーバSは、チャレンジChajiを位置モジュールMjへ送り、TCha_jiに、その時刻を代入する。
Step8:位置モジュールMjは、Chajiを受信し、コミットメントComtj1(=ComF_C(Chajii))を生成する。なお、ζiは、Step4と同じものを利用する。次に、位置モジュールMiに、(Chaji‖Comtj1)を送る。
【0109】
Step9:位置モジュールMiは、(Chaji‖Comtj1)を受信し、レスポンス
Resji(=ResG_C(Chajii))
とコミットメント
Comti1(=ComF_C(Resji‖Chaji‖Comtj1,ζi))
を生成する。位置モジュールMiは、(Resji‖Chaji‖Comtj1‖Comti1)を、位置モジュールMjに送る。
Step10:位置モジュールMjは、(Resji‖Chaji‖Comtj1‖Comti1)を受信し、コミットメント
Comtj2(=ComF_C(Resji‖Chaji‖Comtj1‖Comti1,ζi))
を生成する。位置サーバSに、(Resji‖Chaji‖Comtj1‖Comti1‖Comtj2)を送る。
Step11:位置サーバSは、(Resji‖Chaji‖Comtj1‖Comti1‖Comtj2)を受信し、TRes_jiに、その時刻を代入する。
Step12:位置サーバSは、位置モジュールMjに対して、同様に、Step7からStep11を実行し、TCha_ijとTRes_ijを得る。(Step7からStep10までの流れを、図8に示す)
【0110】
Step13:位置サーバSは、以下の様に、個々のΔTとTComを計算する。
ΔTi=TRes_i−TCha_i
ΔTj=TRes_j−TCha_j
TCom_ji=(TRes_ji−TCha_ji)−(2×TRelay_j+TDelay_i)
TCom_ij=(TRes_ij−TCha_ij)−(2×TRelay_i+TDelay_j)
【0111】
以下の式(1)(2)(3)(4)(5)
|TCom_ji−TCom_ij|≦TPermit (1)
"OK"=VeriF_C(Ai,Resi,zi,r,s,TDelay_i,ΔTi) (2)
"OK"=VeriF_C(Aj,Resj,zj,r,s,TDelay_j,ΔTj) (3)
"OK"=VeriFrelay_C
(Aji,Resji‖Chaji‖Comtj1‖Comti1‖Comtj2,zj,zi,r,s,TCom_ji) (4)
"OK"=VeriFrelay_C
(Aij,Resij‖Chaij‖Comti1‖Comtj1‖Comti2,zj,zj,r,s,TCom_ij) (5)
が全て満たされる場合、
i(=Δti−TDelay_i/s)
j(=Δti−TDelay_j/s)
{i,j}(=((TCom_ji+Tcom_ij)/s−dj−di)/2)
を計算する。
【0112】
ループ型2点間距離検証方法のフレームワークを説明する。ループ型2点間距離検証方法は、ターン型2点間距離検証方法のフレームワークのStep9において位置モジュールMiが直接、位置サーバSに(Resji‖Chaji‖Comtj1‖Comti1)を送る点、Step10の処理が省略される点が異なる。ゆえに、TCom_jiとTCom_ijは、以下の様に計算される。(図6(c)にループ型の流れを示す)
TCom_ji=(TRes_ji−TCha_ji)−(TRelay_j+TDelay_i)
TCom_ij=(TRes_ij−TCha_ij)−(TRelay_i+TDelay_j)
【0113】
n点間距離検証フレームワークを説明する。n点間距離検証方法は、単純にn個の位置モジュールの秘密鍵から2個を選ぶ全組み合わせに対し、2点間距離検証方法を実行するものである。また、ターン型及びループ型の差についても2点間距離検証方法に準じる。
【0114】
関数の要件を説明する。
VeriFrelay_Cは、入力値
(Aji,Chaji‖Resji‖Comtj1‖Comti1‖Comti2,zj,zi,r,s,TCom_ji)
が正しければ"OK"を出力し、それ以外の場合は"OK"以外を出力できる。正しいとは、不等式
2×r≧d{j,i}(=TCom_ji/s)>0
と、以下の条件を満たすことを意味する。
‐Ai又はSigned Aiの検証方法については、実施例1の距離検証方法のVeriF_C関数と同様である。
‐署名文(コミットメント)Comtj1を、チャレンジの平文Chajiとzjにより検証し、結果が正しい。このとき、チャレンジChajiは、位置サーバSが生成したチャレンジと等しいこと。
‐署名文(コミットメント)Comti1を平文(Resji‖Chaji‖Comtj1)とziにより検証し、結果が正しい。
‐署名文(コミットメント)Comtj2を平文(Resji‖Chaji‖Comtj1‖Comti1)とzjにより検証し、結果が正しい。
【0115】
適応性については、検証者Vにとって証明者Pの演算遅延が既知であると仮定し、距離検証する際に演算遅延を考慮するため、適応性を満たす。モジュール性については、位置モジュールMiが複数の相手認証方法から一つを選択できるため、モジュール性を満たす。
【0116】
基本的な安全性について説明する。距離di及びdjについては、実施例1の距離検証方法と同様の安全性である。以下、距離djiの安全性について説明する。
仮定1:位置サーバSにとって、位置モジュールMiの中継時間TRelay_i及び演算時間TDelay_iは既知であり、かつ、攻撃者は、TRelay_i及びTDelay_iを変更することが困難である。TDelay_iは、位置モジュールMiがAi(又はsigned Ai)を計算するための秘密鍵演算時間と、位置モジュールMiの通信に関わる演算時間から成る。仮定1を満たすために、耐タンパー性を要求する。位置モジュールMjも同様に仮定する。
【0117】
仮定2:攻撃者は速度sより速くデータを送信できない。sが真空中の光速度に等しいなら、仮定は妥当である。
【0118】
仮定3:位置サーバS‐位置モジュールMi間、位置モジュールMi‐位置モジュールMj間、位置モジュールMj‐位置サーバS間のいずれかの通信が中継された場合、中継遅延TRelay(>0)が発生し、
(((TRelay+TCom_ji+TCom_ij)/s−dj−di)/2)>(2×r)
を満たす。ベースとなる距離検証方法(実施例1)のチャレンジとレスポンスは、中継遅延を検出可能な大きさに増加するように設計設計されている。ここで、予め想定する位置モジュールによる中継時間は、既にTCom_ji及びTCom_ijに含まれている。
【0119】
仮定4:中継端末RSiと第三者は、位置モジュールMiの秘密鍵を知ることはできない。この仮定を満たすために、A_Enc(Y,m),S_Enc(K,m),A_Sig(X,m),S_Sig(K,m),H(m)は安全であるとし、位置モジュールMiは、耐タンパーモジュールとする。位置モジュールMjも同様であると仮定する。VeriFrelay_Cの出力が"OK"であれば、位置モジュールMiとMj間の距離は、
ji(=((Trelay+TCom_ji+TCom_ij)/s−dj−di)/2)
以内であると判定する。ここで、djiは不等式
(2×r)≧dji>0
を満たし、
TCom_ji=(TRes_ji−TCha_ji)−(2×TRelay_j+TDelay_i)
TCom_ij=(TRes_ij−TCha_ij)−(2×TRelay_i+TDelay_j)
である。仮定1より、TDelay_i,TDelay_j,TRelay_i,TRelay_jは、攻撃者により変更されない。仮定2より、TCom_ji及びTCom_ijは、攻撃者により削減されない。仮定3より、通信が中継されると、TRelayは不等式
(((Trelay+TCom_ji+TCom_ij)/s−dj−di)/2)>(2×r)
を満たす。仮定4より、位置モジュールMiのみがAi(又はsinged Ai)を計算できる(位置モジュールMjも同様である)。ゆえに、VeriFrelay_Cは安全であり、出力が"OK"ならば、位置モジュールMiとMj間の距離はdji以内である。
【0120】
"Authentication with anonymity"の安全性:実施例1の距離検証方法と同様である。攻撃モデルにおいて述べたいくつかの攻撃に対する安全性についても、実施例1の距離検証方法と同様である。
【0121】
位置モジュール信頼性による安全性の違いについて説明する。実施例1の距離検証方法と同様に、レスポンスを遅らせることにより、位置モジュールは自身の位置を遠くに見せかけることが可能である。位置モジュールMi経由と位置モジュールMj経由の2方向から通信時間を測定するが、仮に一方が不正な位置モジュールであれば、ある程度の能力は要求されるものの、2方向の測定に矛盾しないように通信を遅らせることが可能である。また、両方の位置モジュールとも不正な場合は、両方とも自身の位置を遠くに見せかけることができる。ただし、いずれの場合においても、仮定1から4を満たす場合、近くに見せかけることは困難である。
【0122】
許容誤差に関する安全性について説明する。前述のように、攻撃者の能力が高い場合は、式(1)を満たすことが可能である。したがって、式(1)は、能力の低い攻撃者の検出や、位置モジュールが何らかの理由により移動したことを検出する目的にのみ利用できる。
【0123】
本発明の実施例2の拡張について説明する。連続する検証を依存させる方法について説明する。Step5又はStep11において受信したレスポンス1に依存させて、以降のStep6又はStep12に利用するチャレンジ2を生成することが可能である。また、単に依存させるだけでなく、Step1〜Step5又はStep7〜Step11において生成したチャレンジ1又はレスポンス1を用いなければ、以降のStep6又はStep12におけるレスポンス2を生成できないような構造のチャレンジ2を生成することも可能である。このような構造にすることで、検証の連続性を保証することが可能となり、安全性が向上する。
【0124】
同報通信の利用について説明する。位置サーバSがチャレンジを同報通信することで、通信コストを削減することが可能となる。ただし、レスポンスが同時に複数の位置モジュールMから位置サーバSに送られる可能性があるため、複数同時受信及び並列処理可能な位置サーバSであることが前提となる。また、n点間距離検証方法において、位置モジュールMがチャレンジ又はレスポンスの中継を同報通信で行うことにより、プロトコル全体の時間を削減することが可能となる。ただし、同様に並列処理可能な位置モジュールMであることが前提となる。
【0125】
匿名性及び位置秘匿性について説明する。実施例1の距離検証方法と同様に、"Authentication with anonymity"を用いることで、位置モジュールMは、位置サーバSに対して匿名性を得ることができる。このとき、位置モジュールMiとMjの生成する乱数は、必ず異なるとする。同じ場合は、位置サーバSは、位置モジュールMiとMjを区別することが困難となり、正常にプロトコルが動作しない。また、実施例1と同様に、位置サーバSが検証結果に対して位置証明書(位置サーバSが発行する位置モジュールMの位置情報と時刻とIDと位置サーバSのID又は位置情報に署名をした証明書)を生成して提供することが可能である。このとき、位置サーバSのID又は位置情報を位置証明書に含めないことで、位置モジュールMjとMiがある時刻にある距離以内に近づいていたことのみが証明可能となり、どの位置に存在したのかを第三者は特定できない。これを位置秘匿性と呼ぶ。
【0126】
複数検証者を用いた拡張について説明する。位置サーバを複数個用意し、それらの位置サーバは情報を共有できるものとする。このとき、位置サーバAが送ったチャレンジを位置モジュール1が中継し、位置モジュール2が対応するレスポンスを位置サーバBに送る。このとき、位置サーバAとBが情報を共有することで、検証可能な範囲を拡張することや、範囲検証、場所検証、経路検証への拡張が可能となる。
【0127】
中継証明者の固定について説明する。n点間距離検証方法において、中継を行う位置モジュールMiを固定的に決定することで、位置モジュールMiから半径ri以内に他の位置モジュールが存在するという証明が可能となる。ただし、位置モジュールMiが不正な場合、全ての位置モジュールの距離を簡単に遠くに見せかけることが可能となるため、位置モジュールMiが信頼できる場合にのみ用いるべきである。
【0128】
中継位置モジュールの複数化について説明する。これまでは、一つのチャレンジ・レスポンスの組に対しては1個の位置モジュールMしか中継を行わないものとした。複数の位置モジュールMを経由することで、より詳細に複数の位置モジュールM間の位置関係を検証できる。ただし、検証手順の煩雑化や中継回数の増加により検証精度が低下することがある。
【0129】
位置モジュールの演算時間の一定化について説明する。この例では、位置モジュールMの演算時間は、位置サーバSにとって既知であるという仮定をおいている。しかしながら、位置モジュールMへの入力であるチャレンジの内容により演算時間が変化することが予想される。そこで、電力攻撃やタイミング攻撃等のサイドチャネル攻撃に対する対策として提案されている、入力に依存せずに常に演算時間を一定化する技術を用いる。このような技術を用いて位置モジュールMの演算部を実装することで、常に位置モジュールMの演算時間を一定に保ち、検証精度を向上できる。
【産業上の利用可能性】
【0130】
本発明の距離検証方法は、ユビキタスネットワーク等における位置依存サービスにおいて、中継攻撃を防ぐための最適な方法である。この距離検証方法は、改札・ゲートでの電子チケット検証や、入退室管理システムや、位置でアクセス制御可能なログインシステムや、位置と時間でアクセス制御可能なICカードや、位置に依存した情報配信サービスなどにおいて、安全性を高めるために利用できる。また、本発明の2点間距離検証方法は、複数人でないと入店できない店舗における入退室管理や、法的な理由から複数の人物が実際に会ったことを証明するサービスなどのための検証方法として最適である。
【図面の簡単な説明】
【0131】
【図1】本発明の実施例1における距離検証方法の概念図
【図2】本発明の実施例1における距離検証方法に対する攻撃の種別を説明する図
【図3】本発明の実施例1における距離検証方法の手順を説明する図
【図4】本発明の実施例1における距離検証方法の種別を説明する図
【図5】本発明の実施例1における距離検証方法と従来例を比較した表
【図6】本発明の実施例2における2点間距離検証方法の種別を説明する図
【図7】本発明の実施例2における2点間距離検証方法の概念図
【図8】本発明の実施例2における2点間距離検証方法の手順を説明する図
【図9】従来の距離検証方法の概念図
【符号の説明】
【0132】
V 距離検証手段(検証者)
P 距離証明手段(証明者)
RS 中継端末
S 位置サーバ
M 位置モジュール
K 鍵

【特許請求の範囲】
【請求項1】
距離検証手段と距離証明手段とからなり、前記距離検証手段は、応答遅延時間を検知可能な精度の時間計測機能と、前記距離証明手段までの距離を検証して認証する機能を有し、前記距離証明手段は、前記距離検証手段からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける距離検証方法であって、前記距離検証手段が、前記距離証明手段からの応答の遅延時間を利用して距離検証を行う際に、鍵の処理のための処理時間を距離検証のための計測時間の範囲に含めることを特徴とする距離検証方法。
【請求項2】
前記距離検証手段は、毎回異なるチャレンジ情報を生成して送信し、前記距離証明手段は、受信したチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成することを特徴とする請求項1記載の距離検証方法。
【請求項3】
前記距離検証手段は、遅延時間が想定遅延時間範囲に入らない場合に距離検証に失敗したと見なすことを特徴とする請求項1記載の距離検証方法。
【請求項4】
前記距離検証手段は、前記距離証明手段の演算能力に基づいて前記チャレンジ情報と前記想定遅延時間を決定することを特徴とする請求項3記載の距離検証方法。
【請求項5】
前記距離検証手段は、距離検証のための時間計測外に、メッセージ検証に関する情報の送信とメッセージの検証とを行うことを特徴とする請求項1記載の距離検証方法。
【請求項6】
距離検証手段と距離証明手段とからなる距離検証システムであって、前記距離検証手段は、前記距離証明手段からの応答遅延時間を検知可能な精度の時間計測手段と、鍵の処理のための処理時間を距離検証のための計測時間の範囲に含めて距離検証を行う手段とを有し、前記距離証明手段は、前記距離検証手段からのチャレンジ情報を処理してレスポンス情報を生成する手段を有することを特徴とする距離検証システム。
【請求項7】
前記距離検証手段は、毎回異なるチャレンジ情報を生成して送信する手段を有し、前記距離証明手段は、受信したチャレンジ情報を自己の秘密鍵により処理してレスポンス情報を生成する手段を有することを特徴とする請求項6記載の距離検証システム。
【請求項8】
前記鍵の処理において前記距離証明手段の秘密鍵を不使用とする選択が可能であることを特徴とする請求項1記載の距離検証方法。
【請求項9】
前記鍵の処理のための情報を、前記距離検証手段に対して匿名とする選択を可能とすることを特徴とする請求項1記載の距離検証方法。
【請求項10】
前記距離検証手段を複数備えて、領域検証を可能とすることを特徴とする請求項1記載の距離検証方法。
【請求項11】
前記距離検証手段を複数備えて、点位置検証を可能とすることを特徴とする請求項1記載の距離検証方法。
【請求項12】
前記距離検証手段を複数備えて、複数の距離検証手段からの情報に基づいて距離検証の結果を判断することを特徴とする請求項1記載の距離検証方法。
【請求項13】
前記距離検証装置が、自身の距離を取得可能なモバイルノードであることを特徴とする請求項1記載の距離検証方法。
【請求項14】
前記モバイルノードが、前記距離証明手段と前記距離検証手段とを備えることを特徴とする請求項13記載の距離検証方法。
【請求項15】
前記鍵の処理において、前記距離証明手段の秘密鍵を不使用とする選択が可能であり、前記鍵の処理のための情報を、前記距離検証手段に対して匿名とする選択が可能であることを特徴とする請求項1記載の距離検証方法。
【請求項16】
前記チャレンジ情報全体のみから前記レスポンス情報を生成でき、前記チャレンジ情報の一部からは前記レスポンス情報のいかなる部分も生成できないというデータ構造を有するチャレンジ情報を用いることを特徴とする請求項1記載の距離検証方法。
【請求項17】
前記チャレンジ情報は、複数の暗号文からなり、ひとつの暗号文を解くと次の暗号文を解く鍵が得られる構成であり、前記暗号文のうち、最初に解かなくてはならない暗号文を最後に送信することを特徴とする請求項16記載の距離検証方法。
【請求項18】
前記距離検証手段を複数備えて、経路検証を可能とすることを特徴とする請求項1記載の距離検証方法。
【請求項19】
前記距離検証手段が第2の距離証明手段を備え、前記距離証明手段が第2の距離検証手段を備え、相互に距離検証を行うことを特徴とする請求項1記載の距離検証方法。
【請求項20】
前記距離証明手段が、距離検証の実行前に、前記距離検証手段の相手検証を実行することを特徴とする請求項1記載の距離検証方法。
【請求項21】
前記距離検証手段が距離検証に成功した場合に、距離情報と時刻と前記距離証明手段の識別情報とを含み、前記距離証明手段の署名が付加された距離証明書を、前記距離証明手段に発行することを特徴とする請求項1記載の距離検証方法。
【請求項22】
前記距離情報が、前記距離検証手段の識別情報と、遅延時間とを含むことを特徴とする請求項21記載の距離検証方法。
【請求項23】
前記距離証明手段は、常に演算時間が一定になるように、最大演算時間より演算時間が少ない場合は、その差分時間だけ他の演算を行うことを特徴とする請求項1〜5、8〜21のいずれかに記載の距離検証方法。
【請求項24】
前記距離証明手段は、常に演算時間が一定になるように、最大演算時間より演算時間が少ない場合は、その差分時間だけ他の演算を行うことを特徴とする請求項6または7に記載の距離検証システム。
【請求項25】
距離検証手段(V)と少なくとも2つの距離証明手段(P1、P2)とからなり、前記距離検証手段(V)は、応答遅延時間を検知可能な精度の時間計測機能と、前記距離証明手段(P1、P2)までの距離を検証して認証する機能を有し、前記距離証明手段(P1、P2)は、前記距離検証手段(V)からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける2点間距離検証方法であって、前記距離証明手段P2を距離検証する際に、前記距離証明手段P1にチャレンジ情報を中継させ、前記距離証明手段P1はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P2はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P2はレスポンス情報を前記距離検証手段Vに直接返し、前記距離証明手段P2を距離検証した結果と前記距離証明手段P1を単独で距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出することを特徴とする2点間距離検証方法。
【請求項26】
距離検証手段(V)と少なくとも2つの距離証明手段(P1、P2)とからなり、前記距離検証手段(V)は、応答遅延時間を検知可能な精度の時間計測機能と、前記距離証明手段(P1、P2)までの距離を検証して認証する機能を有し、前記距離証明手段(P1、P2)は、前記距離検証手段(V)からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける2点間距離検証方法であって、前記距離証明手段P2を距離検証する際に、前記距離証明手段P1にチャレンジ情報を中継させ、前記距離証明手段P1はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P2はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P2はレスポンス情報を前記距離証明手段P1に中継させ、前記距離証明手段P1はレスポンス情報を中継する際にレスポンス情報にコミットし、前記距離証明手段P2を距離検証した結果と前記距離証明手段P1を距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出することを特徴とする2点間距離検証方法。
【請求項27】
距離検証手段(V)と少なくとも2つの距離証明手段(P1、P2)とからなり、前記距離検証手段(V)は、応答遅延時間を検知可能な精度の時間計測機能と、前記距離証明手段(P1、P2)までの距離を検証して認証する機能を有し、前記距離証明手段(P1、P2)は、前記距離検証手段(V)からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける2点間距離検証方法であって、前記距離証明手段P2を距離検証する際に、前記距離証明手段P1にチャレンジ情報を中継させ、前記距離証明手段P1はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P2はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P2はレスポンス情報を前記距離検証手段Vに直接返し、前記距離証明手段P2を距離検証した結果と前記距離証明手段P1を単独で距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出し、前記距離証明手段P1を距離検証する際に、前記距離証明手段P2にチャレンジ情報を中継させ、前記距離証明手段P2はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P1はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P1はレスポンス情報を前記距離検証手段Vに直接返し、前記距離証明手段P2を単独で距離検証した結果と前記距離証明手段P1を距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出し、結果の差が一定値以内であれば検証成功とすることを特徴とする2点間距離検証方法。
【請求項28】
距離検証手段(V)と少なくとも2つの距離証明手段(P1、P2)とからなり、前記距離検証手段(V)は、応答遅延時間を検知可能な精度の時間計測機能と、前記距離証明手段(P1、P2)までの距離を検証して認証する機能を有し、前記距離証明手段(P1、P2)は、前記距離検証手段(V)からのチャレンジ情報を処理してレスポンス情報を生成する機能を有する距離検証システムにおける2点間距離検証方法であって、前記距離証明手段P2を距離検証する際に、前記距離証明手段P1にチャレンジ情報を中継させ、前記距離証明手段P1はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P2はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P2はレスポンス情報を前記距離証明手段P1に中継させ、前記距離証明手段P1はレスポンス情報を中継する際にレスポンス情報にコミットし、前記距離証明手段P2を距離検証した結果と前記距離証明手段P1を単独で距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出し、前記距離証明手段P1を距離検証する際に、前記距離証明手段P2にチャレンジ情報を中継させ、前記距離証明手段P2はチャレンジ情報を中継する際にチャレンジ情報にコミットし、前記距離証明手段P1はレスポンス情報を返す際にレスポンス情報にコミットし、前記距離証明手段P1はレスポンス情報を前記距離証明手段P2に中継させ、前記距離証明手段P2はレスポンス情報を中継する際にレスポンス情報にコミットし、前記距離証明手段P2を単独で距離検証した結果と前記距離証明手段P1を距離検証した結果から前記距離証明手段P1と前記距離証明手段P2との間の距離を算出し、結果の差が一定値以内であれば検証成功とすることを特徴とする2点間距離検証方法。
【請求項29】
前記距離検証手段は、前記距離証明手段の演算能力に基づいて前記チャレンジ情報と想定遅延時間を決定し、遅延時間が前記想定遅延時間範囲に入らない場合に距離検証に失敗したと見なすことを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項30】
前記距離証明手段を単独で距離検証した際のチャレンジ情報またはレスポンス情報に依存させて、距離検証の際のチャレンジ情報を生成し、それに対するレスポンス情報は、単独検証の際のチャレンジ情報またはレスポンス情報なしには生成できないというデータ構造を有するチャレンジ情報を用いることを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項31】
前記距離証明手段を3個以上とし、前記距離証明手段は、チャレンジ情報を中継する際に同報し、前記距離証明手段のうちの2つの組み合わせすべてについて距離検証を行うことを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項32】
前記距離検証手段がチャレンジ情報を同報することを特徴とする請求項31記載の2点間距離検証方法。
【請求項33】
前記距離検証手段が検証結果に署名して距離証明書を発行する際に、当該距離検証手段の識別情報又は距離情報を含めないことを特徴とする請求項25〜32のいずれかに記載の2点間距離検証方法。
【請求項34】
前記距離証明手段を3個以上とし、複数の距離証明手段により、チャレンジ情報とレスポンス情報を順次中継することを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項35】
前記距離証明手段を3個以上とし、中継する距離証明手段を常に特定の距離証明手段とすることを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項36】
相互に通信可能な複数の距離検証手段を設け、ある距離検証手段が送ったチャレンジに対するレスポンス情報を他の距離検証手段が受信し、距離検証手段間通信を行い、それぞれの結果を集めて距離検証することを特徴とする請求項25〜28のいずれかに記載の2点間距離検証方法。
【請求項37】
前記距離検証手段は、事前に生成可能な情報を事前に生成しておくことを特徴とする請求項25〜36のいずれかに記載の2点間距離検証方法。
【請求項38】
前記距離証明手段は、常に演算時間が一定になるように、最大演算時間より演算時間が少ない場合は、その差分時間だけ他の演算を行うことを特徴とする請求項25〜36のいずれかに記載の2点間距離検証方法。

【図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


【公開番号】特開2006−197458(P2006−197458A)
【公開日】平成18年7月27日(2006.7.27)
【国際特許分類】
【出願番号】特願2005−8851(P2005−8851)
【出願日】平成17年1月17日(2005.1.17)
【出願人】(000005821)松下電器産業株式会社 (73,050)
【Fターム(参考)】