JP6037450B2 - 端末認証システムおよび端末認証方法 - Google Patents

端末認証システムおよび端末認証方法 Download PDF

Info

Publication number
JP6037450B2
JP6037450B2 JP2013105971A JP2013105971A JP6037450B2 JP 6037450 B2 JP6037450 B2 JP 6037450B2 JP 2013105971 A JP2013105971 A JP 2013105971A JP 2013105971 A JP2013105971 A JP 2013105971A JP 6037450 B2 JP6037450 B2 JP 6037450B2
Authority
JP
Japan
Prior art keywords
terminal
server
physical information
device physical
authentication
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.)
Active
Application number
JP2013105971A
Other languages
English (en)
Other versions
JP2014229968A (ja
Inventor
利彦 岡村
利彦 岡村
洋輔 小松崎
洋輔 小松崎
明宏 八木橋
明宏 八木橋
洋一郎 伊東
洋一郎 伊東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
NEC Communication Systems Ltd
Original Assignee
NEC Corp
NEC Communication Systems Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp, NEC Communication Systems Ltd filed Critical NEC Corp
Priority to JP2013105971A priority Critical patent/JP6037450B2/ja
Publication of JP2014229968A publication Critical patent/JP2014229968A/ja
Application granted granted Critical
Publication of JP6037450B2 publication Critical patent/JP6037450B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、端末のデバイスの固有情報を用いた端末認証システムおよび端末認証方法に関する。
安全な情報および通信システムを実現するためには、サーバと端末の間の通信において、通信の相手が正規の相手であるかどうかの判定を行う認証処理が必要となる。認証処理には、機器固有の情報(ID:identification)が存在することが前提となる。端末に付与されているシリアル番号は、IDの代表であるが、正規の端末を手に入れた攻撃者がシリアル番号を入手することは容易である。また、ある端末のシリアル番号から他の端末のシリアル番号を推測することができることも多い。
端末にランダムな秘密鍵を持たせれば端末の秘密鍵が漏洩しても他の端末の秘密鍵を推測することは困難であるが、秘密鍵の保持を安全に行う必要がある。不揮発性メモリに秘密鍵を保持しておく方法では、端末を入手した攻撃者は、秘密鍵を容易に読み出せる可能性があり、メモリの内容の解析を行わなくてもメモリをそのままコピーすれば複製が作成できる可能性がある。このような攻撃に対処する技術は耐タンパー技術と呼ばれ、一般的な手法として、例えば揮発性メモリに秘密鍵を持つ方法が知られている。しかし、この方法は、例えば秘密鍵保持用のメモリのバッテリ、およびタンパー行為を検知するセンサ等が必要になるのでコストが高くなるという問題がある。
近年、機器を構成するデバイスにおいて、製造過程で不可避的に発生する物理的なばらつきを利用してデバイス個体の固有情報を生成し、固有情報を認証に利用する技術の研究が進んでいる。この技術には、一般的に、Physically Unclonable Function(PUF)と呼ばれる関数が用いられる。
図14は、PUFを利用した一般的な認証システムの構成を示すブロック図である。認証は、端末110とサーバ100の間で行われる。端末110は、デバイス物理情報生成手段120を備える。デバイス物理情報生成手段120は、端末の構成要素として元々存在するデバイスをPUFに利用する。デバイス物理情報生成手段120は、入力によって指定された構成要素に対応する物理量を出力する。例えば、StaticRAMをベースとするデバイス物理情報生成手段120は、RAMの各ビットをPUFの要素とする。その場合、ユーザは、利用するビットを特定する。そして、デバイス物理情報生成手段120は、例えば、電源投入時のそのビットの初期値を出力する。
デバイス物理情報生成手段120が用いるような、製造過程で不可避的に発生する配線遅延の個体毎のばらつきを利用するPUFが、次の特許文献1、2および非特許文献1に開示されている。
PUFの典型的な利用方法は、チャレンジ−レスポンス認証であり、登録フェーズと認証フェーズの2段階で端末の認証が行われる。登録フェーズは、端末の利用開始前に実施され、盗聴やなりすましがない、安全な環境で実施されると仮定する。
以下、チャレンジ−レスポンス認証を利用した一般的な認証システムの動作を説明する。図15は、チャレンジ−レスポンス認証を用いた一般的な認証システムの登録フェーズにおける動作を示すフローチャートである。図16は、チャレンジ−レスポンス認証を用いた一般的な認証システムの認証フェーズにおける動作を示すフローチャートである。
[登録フェーズ]
サーバ100は、端末110からの登録の要求に対してデバイス物理情報生成手段120の中の要素を指定するデータ(チャレンジ)を複数送付する(ステップ1a)。端末110は、ステップ1aのチャレンジに対するデバイス物理情報生成手段120のレスポンスをサーバ100に送付する(ステップ2a)。サーバ100は、このチャレンジとレスポンスの組を保持する(ステップ3a)。
[認証フェーズ]
サーバ100は、端末110からの認証の要求に対して、保持しているチャレンジの一部を送付する(ステップ1b)。端末110は、ステップ1bのチャレンジに対するデバイス物理情報生成手段120のレスポンスをサーバ100に送付する(ステップ2b)。サーバ100は、このレスポンスとステップ3aで保持したレスポンスと比較する(ステップ3b)。サーバ100は、ステップ3bの比較結果を用いて認証処理を行う(ステップ4b)。具体的には、サーバ100は、ステップ3bの比較結果が十分に近いと判断される場合には、レスポンス送付元の端末が正規の端末110であると認証する。サーバ100は、ステップ3bの比較結果に所定の差があると判断した場合には、レスポンス送付元の端末が正規の端末110ではないと判断する。
次に、チャレンジ−レスポンス認証の処理の具体例を説明する。図17は、チャレンジ−レスポンス認証の登録フェーズの処理の例を示す説明図である。図18は、チャレンジ−レスポンス認証の認証フェーズの処理の例を示す説明図である。登録フェーズでは、サーバ100は、チャレンジcと端末110からのレスポンスf(c)の組(c,f(c))を含むテーブル(チャレンジ−レスポンステーブル)を生成する。認証フェーズでは、サーバ100は、このテーブルのチャレンジcに対する端末からのレスポンスf’(c)を登録フェーズで生成したf(c)と照合することにより認証処理を行う。物理情報は、温度による変動や熱雑音等の環境要因による揺らぎがあるため、この環境要因による変動を考慮して照合することが課題となる。
この課題を解決するための一般的な手法として、環境要因の影響を軽減する出力が得られるようにデバイス物理情報生成手段120を構成することが考えられる。例えば、物理情報そのものではなく、物理情報間の相対的な比較結果を出力する方法が考えられる。このような目的で提案された技術として、非特許文献1にはarbiter PUFを用いた方法が開示されている。
図19は、チャレンジ−レスポンス認証で用いるarbiter PUFの構成例を示すブロック図である。arbiter PUFを用いたデバイス物理情報生成手段120は、同一長の経路となる配線をセレクタ300で多段につないだパスで構成される。この各段で対となっているセレクタに対して、チャレンジは同一タイプの経路を選択することで同一長とみなせる2本のパスを形成する。デバイス物理情報生成手段120は、このパスを決定後、信号を送信して最後のarbiter(D−FF回路)310がどちらの経路を通った信号が速く到達したかを判定する。設計上、同一のパス長であってもデバイス毎に両者の遅延の大小は異なり、この予測は困難であることから、判定結果を推測困難な固有情報として利用することができる。回路の遅延は温度により変動するが、arbiter PUFでは同一経路長の二つのパスの遅延の大小のみを比較するので相対的な関係はある程度保たれるため、比較的安定した出力を得ることができる。
上記チャレンジ−レスポンス認証において安全性を確保するためには認証フェーズで1度利用したチャレンジを攻撃者が再度送付する再送攻撃を避けるために1度だけ使用するという制限が必要であり、実用にはデバイス物理情報生成手段120は十分に大きな個数のチャレンジに対応できる必要がある。Arbiter PUFがn段のセレクタで構成される場合には2個のパスが構成でき、これがチャレンジの総数となる。n=64であれば264個のチャレンジ数となり、十分な回数のチャレンジ−レスポンス認証に対応可能となる。
Arbiter PUFと同様に同一回路の遅延の大小を比較する回路としてリングオッシレータ回路を使用した方法が特許文献2および非特許文献1に示されている。
特表2007−509563号公報 特表2009−524998号公報
G. E. Shu and S. Devadas, "Physically Unclonable Functions for Device Generation and Secret Key Generation," Proc. 44th Design Automation Conference, pp.9-14.
上記のデバイス物理情報生成手段120を用いたチャレンジ−レスポンス認証方式で用いられるPUFは、arbiter PUFのようにチャレンジが十分に多数設定できるものに限定される。例えば、特許文献2または非特許文献1に記載されたリングオッシレータ回路を利用したPUFは、回路の個数の2乗程度のチャレンジ数となるため、そのままではチャレンジ−レスポンス認証には適さず、変動するデバイス物理情報から同一のレスポンスを高い信頼度で生成する必要がある。このために、デバイス物理情報生成手段は、例えば誤り訂正符号などを利用して非常に高い再現性を達成することができる手段に限定される。
さらにarbiter PUFでは登録フェーズと認証フェーズの温度が大きく異なる場合には再現性も大きく劣化する傾向にあり、このとき認証のためには多数のチャレンジ−レスポンスのペアが必要となる。このため、登録フェーズで大量のチャレンジ−レスポンスペアを生成する、もしくは高い頻度で登録フェーズを実行する必要が発生する。
本発明は、デバイス物理情報生成手段として広範囲な実現手段を用いることが可能であり、かつ登録フェーズの実施の頻度を抑えることができる端末認証システムおよび端末認証方法を提供することを目的とする。
本発明による端末認証システムは、端末とサーバとを備え、登録フェーズにおいて前記端末の登録処理を行い、認証フェーズにおいて前記端末の認証処理を行う端末認証システムであって、前記端末は、前記端末の構成要素に関する物理情報をデバイス物理情報として生成するデバイス物理情報生成手段と、サーバ公開鍵を用いて前記デバイス物理情報を暗号化し前記サーバに送信する公開鍵暗号化手段と、前記デバイス物理情報を用いて端末側ランダム情報を生成する端末側鍵生成手段と、前記端末側ランダム情報を取得する端末側鍵検証手段とを含み、前記サーバは、サーバ秘密鍵を用いて、暗号化された前記デバイス物理情報を復号化する公開鍵暗号復号手段と、復号化された前記デバイス物理情報を格納する物理情報格納手段と、復号化された前記デバイス物理情報を用いてサーバ側ランダム情報を生成するサーバ側鍵生成手段と、前記登録フェーズにおいて前記公開鍵暗号復号手段が復号化した前記デバイス物理情報と、前記認証フェーズにおいて前記公開鍵暗号復号手段が復号化した前記デバイス物理情報とを比較することにより前記端末の照合を行う照合手段と、前記サーバ側ランダム情報を取得するサーバ側鍵検証手段とを含み、前記サーバ側鍵検証手段および前記端末側鍵検証手段は、前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行うことを特徴とする。
本発明による端末認証方法は、端末とサーバとを用いて、登録フェーズにおいて前記端末の登録処理を行い、認証フェーズにおいて前記端末の認証処理を行う端末認証方法であって、登録フェーズにおいて、前記端末は、前記端末の構成要素に関する物理情報をデバイス物理情報として生成し、サーバ公開鍵を用いて前記デバイス物理情報を暗号化し前記サーバに送信し、前記サーバは、サーバ秘密鍵を用いて、暗号化された前記デバイス物理情報を復号化し、復号化された前記デバイス物理情報を格納し、認証フェーズにおいて、前記端末は、前記端末の構成要素に関する物理情報をデバイス物理情報として生成し、サーバ公開鍵を用いて当該デバイス物理情報を暗号化し前記サーバに送信し、当該デバイス物理情報を用いて端末側ランダム情報を生成し、前記サーバは、サーバ秘密鍵を用いて、暗号化された当該デバイス物理情報を復号化し、復号化された当該デバイス物理情報を用いてサーバ側ランダム情報を生成し、前記登録フェーズにおいて復号化した前記デバイス物理情報と、前記認証フェーズにおいて復号化した前記デバイス物理情報とを比較することにより前記端末の照合を行い、前記端末および前記サーバのうちの少なくとも一方は、前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行うことを特徴とする。
本発明は、デバイス物理情報生成手段として広範囲な実現手段を用いることが可能であり、かつ登録フェーズの実施の頻度を抑えることができる。
本発明による端末認証システムの第1の実施形態の構成を示すブロック図である。 本発明による端末認証システムの第1の実施形態の登録フェーズにおける動作を示すフローチャートである。 本発明による端末認証システムの第1の実施形態の認証フェーズにおける動作を示すフローチャートである。 本発明による端末認証システムの第2の実施形態の構成を示すブロック図である。 本発明による端末認証システムの第2の実施形態の登録フェーズにおける動作を示すフローチャートである。 本発明による端末認証システムの第2の実施形態の認証フェーズにおける動作を示すフローチャートである。 実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段の構成を示すブロック図である。 実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段の登録フェーズにおける動作を示すフローチャートである。 実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段の認証フェーズにおける動作を示すフローチャートである。 実施例におけるリングオッシレータ回路の周波数比の標準偏差を実験により求めた結果を示す説明図である。 図10に示す標準偏差の頻度を表す説明図である。 鍵検証手段の実施例を示すフローチャートである。 本発明による端末認証システムの主要部の構成を示すブロック図である。 PUFを利用した一般的な認証システムの構成を示すブロック図である。 チャレンジ−レスポンス認証を用いた一般的な認証システムの登録フェーズにおける動作を示すフローチャートである。 チャレンジ−レスポンス認証を用いた一般的な認証システムの認証フェーズにおける動作を示すフローチャートである。 チャレンジ−レスポンス認証の登録フェーズの処理の例を示す説明図である。 チャレンジ−レスポンス認証の認証フェーズの処理の例を示す説明図である。 チャレンジ−レスポンス認証で用いるarbiter PUFの構成例を示すブロック図である。
実施形態1.
図1は、本実施形態の端末認証システムの構成を示すブロック図である。本実施形態の端末認証システムは、サーバ150および端末160を備える。サーバ150は、公開鍵暗号復号手段410と、サーバ秘密鍵420と、鍵生成手段430と、鍵格納手段440と、物理情報格納手段450と、照合手段460と、鍵検証手段470とを含む。端末160は、公開鍵暗号化手段411と、サーバ公開鍵421と、鍵生成手段431と、鍵格納手段441と、鍵検証手段471と、デバイス物理情報生成手段480とを含む。サーバ150および端末160に含まれる各手段は、例えば、特定の演算処理等を行うよう設計されたハードウェア、またはプログラムに従って動作するCPU(Central Processing Unit)等の情報処理装置によって実現される。
図2は、本実施形態の端末認証システムの登録フェーズにおける動作を示すフローチャートである。図3は、本実施形態の端末認証システムの認証フェーズにおける動作を示すフローチャートである。本実施形態の端末認証システムは、登録フェーズと認証フェーズの2段階で端末160の認証を実現する。登録フェーズは、端末160を利用する前に予め実施される。以下、端末認証システムの登録フェーズと認証フェーズの各動作を説明する。
[登録フェーズ]
端末160は、サーバ150に登録の要求を行い、デバイス物理情報生成手段480がデバイス物理情報を生成する(ステップ1c)。具体的には、デバイス物理情報生成手段480は、端末の構成要素に関する物理情報をデバイス物理情報として生成する。端末160の公開鍵暗号化手段411は、サーバ公開鍵421を用いて、ステップ1cで生成されたデバイス物理情報を暗号化し、暗号化により得られたデータをサーバ150に送信する(ステップ2c)。サーバ150の公開鍵暗号復号手段410は、サーバ秘密鍵420を用いてステップ2cで暗号化されたデータを復号し、物理情報格納手段450に格納する(ステップ3c)。
なお、本実施形態の端末認証システムは、公開鍵暗号化方式として、RSA暗号、エルガマル暗号、楕円暗号など既存の任意の一般的な方式を適用することができる。また、公開鍵暗号化方式では乱数が必要になる場合があるが、本実施形態の端末認証システムは、デバイス物理情報の中の乱数成分を利用することもできる。
[認証フェーズ]
端末160は、サーバ150に認証の要求を行い、デバイス物理情報生成手段480がデバイス物理情報を生成する(ステップ1d)。端末160の公開鍵暗号化手段411は、サーバ公開鍵421を用いて、ステップ1dで生成されたデバイス物理情報を暗号化して、暗号化されたデータをサーバ150に送信する。また、鍵生成手段431は、デバイス物理情報を用いてランダム情報を生成して鍵格納手段441に格納する(ステップ2d)。鍵生成手段431は、ランダム情報として、例えば乱数情報を抽出する。
サーバ150の公開鍵暗号復号手段410は、サーバ秘密鍵420を用いてステップ2dで得られたデータを復号する(ステップ3d)。また、照合手段460は、複合されたデータと、登録フェーズにおいて物理情報格納手段450に格納されたデータとを比較することにより、ステップ2dでデータを送信した端末と登録された端末とが同一であるかどうか判定する(ステップ4d)。
鍵生成手段430は、ランダム情報として、例えば乱数情報を抽出する。照合手段460が、ステップ4dにおいて、ステップ2dでデータを送信した端末と登録された端末とが同一でない判定した場合には、サーバ150は、認証失敗と判定して処理を終了する。照合手段460が、ステップ4dにおいて、ステップ2dでデータを送信した端末と登録された端末とが同一である判定した場合には、鍵生成手段430は、ステップ3dで得られた復号データを用いてランダム情報を生成して鍵格納手段440に格納する(ステップ5d)。
鍵検証手段470および鍵検証手段471は、鍵検証プロセスを実施し、同一のランダム情報を共有していることが確認できたら認証成功とし、そうでない場合は認証失敗と判定する(ステップ6d)。具体的には、鍵検証手段470は、鍵格納手段441に格納されたランダム情報を端末160から取得し、鍵格納手段440に格納されたランダム情報と一致するか確認する。また、鍵検証手段471は、鍵格納手段440に格納されたランダム情報をサーバ170から取得し、鍵格納手段441に格納されたランダム情報と一致するか確認する。
照合手段460は、照合処理において、温度などの環境要因の差を考慮して、登録フェーズにおけるデバイス物理情報と認証フェーズにおけるデバイス物理情報の相対的な統計値を算出し統計値に基づいて端末の照合を行う。同一デバイスによるデバイス物理情報である場合、この統計値は異なるデバイス間の場合よりも高い一致度を示すことが期待できる。そのため、利用者が予め適切な閾値を設定しておき、照合手段460が閾値と統計値とを比較することにより登録フェーズに用いられた端末と認証フェーズに用いられた端末とが同一であるかを判定することができる。
鍵生成手段430および431は、典型的にはSHAなどのハッシュ関数などを適用してランダム情報を生成する。デバイス物理情報の性質によっては特定のビットを選択するなどの簡易な方法を適用できる場合もある。本実施形態では、鍵生成手段430および431が出力する情報は、認証フェーズのたびに異なり、端末認証処理後のデータ通信時における暗号化や認証の一時鍵として利用することができる。
また、鍵検証手段470および471は、鍵生成手段430および431で生成するランダム成分を秘密鍵としてハッシュ関数やブロック暗号を用いることにより検証処理を行ってもよい。
本実施形態の端末認証システムは、一般的なチャレンジ−レスポンス認証と異なり、攻撃者は通信路上のデータを取得しても公開鍵で暗号化してあるためにデバイス物理情報そのものを入手することはできない。端末からの送信データをキャプチャし、のちに送付して端末になりすますことを狙う再送攻撃に対しても鍵検証手段470および471での検証処理でこれを検出することができる。このため、本実施形態の端末認証システムは、デバイス物理情報が十分な情報量を持てば、一度の登録フェーズの実施で長期間安全な認証が実現できるので運用性に優れている。
本実施形態の端末認証システムは、さらに、サーバ150において登録フェーズと認証フェーズのデバイス物理情報をそのまま利用して照合することができるために温度など環境要因の変動を考慮した柔軟な照合方式を適用できる。これらの性質からデバイス物理情報生成手段480は、高い再現性が得られる手段に限定されず、多様な実現手段を用いることが可能になる。
実施形態2.
第1の実施形態の端末認証システムは、デバイス物理情報生成手段480を構成するすべての要素の出力を利用する。本実施形態では、前述した一般的なチャレンジ−レスポンス認証方式と同様にデバイス物理情報生成手段480の構成要素を指定するためにサーバからチャレンジを送信する方法を用いた端末認証システムについて説明する。
図4は、本実施形態の端末認証システムの構成を示すブロック図である。本実施形態の端末認証システムは、サーバ170と端末180とを備える。サーバ170は、チャレンジ生成および格納手段500を含む。サーバ170のチャレンジ生成および格納手段500以外の構成は、第1の実施形態のサーバ150と同じであるため、説明を省略する。また、端末180の構成は、第1の実施形態の端末160と同じであるため、説明を省略する。
サーバ170のチャレンジ生成および格納手段500は、端末180からの登録の要求に対して、デバイス物理情報生成手段480がデバイス物理情報を生成するために使用する端末180の構成要素を指定するチャレンジを生成し、格納するとともに端末180に送信する。
図5は、本実施形態の端末認証システムの登録フェーズにおける動作を示すフローチャートである。図6は、本実施形態の端末認証システムの認証フェーズにおける動作を示すフローチャートである。図5および図6に示すフローチャートは、ステップ1c’およびステップ1d’以外の動作は図2および図3に示す第1の実施形態の動作と同じであるため、説明を省略する。
サーバ170のチャレンジ生成および格納手段500は、端末180からの登録の要求に対して、デバイス物理情報生成手段480がデバイス物理情報を生成するために使用する端末180の構成要素を指定するチャレンジを生成し、格納するとともに端末180に送信する。端末180のデバイス物理情報生成手段480は、チャレンジを受信し、チャレンジに対応する要素を用いて、レスポンスとしてデバイス物理情報を生成する(ステップ1c’)。
端末180のデバイス物理情報生成手段480は、チャレンジを受信し、チャレンジに対応する要素を用いて、レスポンスとしてデバイス物理情報を生成する(ステップ1d’)。
このように、本実施形態の端末認証システムは、認証のために用いるデバイス物理情報をサーバがチャレンジとして指定するため、認証のために用いるデバイス物理情報を更新することが可能になる。これにより、本実施形態の端末認証システムは、固有情報の漏えいの可能性が発生したときや再現性が大きく劣る要素を排除して他の要素を用いることが可能になる。
なお、本実施形態の端末認証システムは、鍵検証手段470および471がサーバと端末間で同一の乱数データを共有していることが確認できたときにはこの乱数データを秘密鍵として通信データの暗号化やメッセージ認証を行うことができる。
(実施例)
以下、第2の実施形態の端末認証システムのデバイス物理情報生成手段480にリングオッシレータ回路を用いた実施例を説明する。なお、以下に示す実施例は、第1の実施形態の端末認証システムに適用することもできる。
図7は、実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段480の構成を示すブロック図である。リングオッシレータ回路600は、奇数個のインバータ600aを含む。インバータ600aの個数は、必要とする認証の精度と情報量に依存するが、典型的には100個以上である。セレクタ610は、入力されたチャレンジに従ってリングオッシレータ回路600の出力値を選択する。カウンタ620は、一定時間における出力値の0,1反転数(周波数)を計測する。メモリ630は、カウンタ620が計測したリングオッシレータ回路600の周波数を保持する。
以下、本実施例における登録フェーズおよび認証フェーズの動作例を説明する。図8は、実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段の登録フェーズにおける動作を示すフローチャートである。図9は、実施例におけるリングオッシレータ回路を用いたデバイス物理情報生成手段の認証フェーズにおける動作を示すフローチャートである。以下の例において、デバイス物理情報生成手段480は、128個のリングオッシレータ回路600を含み、カウンタ620の出力値が24ビットであり、公開鍵暗号が2048ビットのRSA暗号であるとする。
[登録フェーズ]
端末180は、サーバ170に登録の要求を行い、デバイス物理情報生成手段480は128個のリングオッシレータ回路600の周波数を順に算出し、メモリ630に格納する(ステップ1e)。算出された周波数は、128×24=3072ビットのデータとなる。公開鍵暗号化手段411は、このデータに対して1536ビットずつ2回に分けてRSA暗号化を実施し、暗号化された2個の暗号文をサーバ170に送付する(ステップ2e)。ステップ2eで2回に分けて暗号化を行う理由は、データがRSA(2048ビット)の入力サイズを越えているためである。公開鍵暗号復号手段410は、ステップ2eで送付された2個の暗号文を復号し、復号された128個のリングオッシレータ回路600の周波数を物理情報格納手段450に格納する(ステップ3e)。
[認証フェーズ]
端末180は、サーバ170に認証の要求を行い、デバイス物理情報生成手段480は128個のリングオッシレータ回路600の周波数を順に算出し、メモリ630に格納する(ステップ1f)。公開鍵暗号化手段411は、登録フェーズと同様に3072ビットの周波数データを2回に分けてRSA暗号化を実施し、サーバ170に送信する。また、鍵生成手段431は、128個の周波数データの最下位2ビットを取り出し、128×2=256ビットを鍵格納手段441に格納する(ステップ2f)。
公開鍵暗号復号手段410は、ステップ2dの2個の暗号文を復号して128個のリングオッシレータ回路600を復元する(ステップ3f)。照合手段460は、復元されたデータと登録フェーズで物理情報格納手段450に格納したデータとを比較することにより、ステップ2fでデータを送信した端末と登録された端末とが同一デバイスであるかどうか判定する(ステップ4f)。サーバ170は、同一デバイスでないと判定した場合には認証失敗として終了する。サーバ170は、ステップ4fで同一デバイスと判定した場合には、鍵生成手段430が、128個の周波数データの最下位2ビットを取り出し、128×2=256ビットを鍵格納手段440に格納する(ステップ5f)。
サーバ170および端末180は、鍵検証プロセスを実施して同一の乱数成分を共有していることが確認できた場合には認証成功とする、そうでない場合には認証失敗と判定する(ステップ6f)。鍵検証プロセスについては後述する。
物理情報がリングオッシレータ回路600の周波数である場合、その周波数値には熱雑音に伴うランダム成分が重畳される。そのため、鍵生成手段430および431は、上記のように最下位付近のビットを取り出すことによって、ランダム情報の生成を実現することができる。
本実施例におけるステップ4fにおける照合手段460の照合処理の具体例を示す。登録フェーズにおけるリングオッシレータ回路600の周波数をs_1,s_2,...,s_128、認証フェーズにおけるリングオッシレータ回路600の周波数をt_1,t_2,...,t_128とする。登録フェーズと認証フェーズの温度が異なると、周波数は異なるが、各回路で同様に変化する。そのため、同一デバイスであれば周波数比t_i/s_iは平均値付近に集中した分布になることが期待できる。そこで、下記式(1)および(2)を算出すると(sqrt()は正の平方根)、式(2)で表される標準偏差dは、同一デバイスの場合には異なるデバイス間の場合と比較して十分に小さくなることが期待できる。
m=(t_1/s_1+・・・+t_128/s_128)/128.・・・(1)
d=sqrt(((t_1/s_1−m)+・・・+(t_128/s_128−m))/128).・・・(2)
図10は、実施例におけるリングオッシレータ回路の600周波数比の標準偏差を実験により求めた結果を示す説明図である。図10に示す結果は、10個のFPGA(Field−Programmable Gate Array)を用いて、各FPGAに同一のリングオッシレータ回路600を128個作成して実験した結果である。この実験ではリングオッシレータ回路600は、15個のインバータ600aを含む。また、カウンタ620は、5.24msecにおける出力の0,1の反転回数をカウントした。このときのカウント値は90万程度となり、20ビットで表すことができる。
図10に示す表の対角成分は、同一FPGAで、登録フェーズにおけるデバイスの温度が−5℃であり、認証フェーズにおけるデバイス温度が65℃である場合の式(2)の標準偏差である。図10に示す表のその他の成分は、行に対応するFPGAを登録フェーズとして列に対応するFPGAで認証フェーズを実行したときの式(2)から算出される標準偏差を示している。
図11は、図10に示す標準偏差の頻度を表す説明図である。このグラフから、今回実験に用いたFPGA,リングオッシレータ回路600を用いた場合、照合手段460は、式(2)から算出される標準偏差値が例えば0.003以下であれば同一FPGA、つまり同一デバイスであると判定することができる。
次に、ステップ6fの鍵検証手段470および471のブロック暗号によるCBC−MAC(Cipher Block Chaining Message Authentication Code)に基づく具体例を示す。図12は、鍵検証手段の実施例を示すフローチャートである。この実施例において、サーバ170の鍵格納手段440に格納される値をK1とし、端末180の鍵格納手段441に格納される値をK2とする。サーバ170および端末180は、検証用のデータD1およびD2を予め決めておく。D1およびD2は、一般にサーバ170と端末180のIDを含み、このIDの順序の変更や異なる定数を用いてD1とD2とは異なる値となるようにする。
[鍵検証]
サーバ170は、乱数R1を生成し端末180に乱数R1を送付する(ステップ1g)。端末180は、R1とD1とを連接したデータに対してK2を秘密鍵としてCBCモードによる暗号化を実施して、最終ブロックの出力をサーバ170に送付する(ステップ2g)。サーバ170は、R1とD1とを連接したデータに対してK1を秘密鍵としてCBCモードによる暗号化を実施して、最終ブロックをステップ2gで受信したデータと比較する(ステップ3g)。比較した結果、一致する場合は、データ送信元の端末が、登録フェーズの端末180と一致していると判定し5gに移行し、不一致の場合は認証失敗として終了する(ステップ4g)。
サーバ170は、D2に対してK1を秘密鍵としてCBCモードによる暗号化を実施して、最終ブロックの出力を端末180に送信する(ステップ5g)。端末180は、D2に対してK2を秘密鍵としてCBCモードによる暗号化を実施して、最終ブロックの出力をステップ4gで受信したデータと比較する。一致する場合は正しい端末であると判定し、不一致の場合は認証失敗として終了する(ステップ6g)。
本実施例の端末認証システムは、ステップ1g,2gによる処理によって、端末のなりすましによる再送攻撃を検出することができる。上記鍵検証プロセスをK1,K2の一部を用いて実施し、残りのビットを秘密鍵としてその後の暗号化通信を実施することで中間者攻撃に対しても高い安全性を達成することが可能となる。例えば、128ビット秘密鍵のブロック暗号を用いる場合であれば前述の設定における鍵格納手段の256ビットの乱数データを、128ビットを鍵検証処理に利用し、残りの128ビットをその後のデータ通信における暗号化やメッセージ認証に適用することができる。
以上のように、本実施形態の端末認証システムは、認証フェーズ毎に異なるランダムな秘密情報を用いてデータの暗号化および認証通信を行うことによって中間者攻撃による脅威を排除することが可能となる。また、本実施形態の端末認証システムは、攻撃者がある時点のデバイス物理情報を仮に入手した場合であっても、サーバ170と正規端末180の間の認証フェーズにおいて共有されるランダム情報の推測は困難であるために秘匿性を保つことが可能となる。
図13は、本発明による端末認証システムの主要部の構成を示すブロック図である。図13に示すように、端末認証システムは、主要な構成要素として端末160とサーバ150とを備え、登録フェーズにおいて端末160の登録処理を行い、認証フェーズにおいて端末160の認証処理を行う端末認証システムであって、端末160は、端末160の構成要素に関する物理情報をデバイス物理情報として生成するデバイス物理情報生成手段480と、サーバ公開鍵を用いてデバイス物理情報を暗号化しサーバ150に送信する公開鍵暗号化手段411と、デバイス物理情報を用いて端末側ランダム情報を生成する端末側鍵生成手段433と、端末側ランダム情報を取得する端末側鍵検証手段473とを含み、サーバ150は、サーバ秘密鍵を用いて、暗号化されたデバイス物理情報を復号化する公開鍵暗号復号手段410と、復号化されたデバイス物理情報を格納する物理情報格納手段450と、復号化されたデバイス物理情報を用いてサーバ側ランダム情報を生成するサーバ側鍵生成手段432と、登録フェーズにおいて公開鍵暗号復号手段410が復号化したデバイス物理情報と、認証フェーズにおいて公開鍵暗号復号手段410が復号化したデバイス物理情報とを比較することにより端末160の照合を行う照合手段460と、サーバ側ランダム情報を取得するサーバ側鍵検証手段472とを含み、サーバ側鍵検証手段472および端末側鍵検証手段473は、前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行う。
また、上記の各実施形態には、以下の(1)から(4)に記載された端末認証システムも開示されている。
端末(例えば、端末160または端末180)とサーバ(例えば、サーバ150またはサーバ170)とを備え、登録フェーズにおいて端末の登録処理を行い、認証フェーズにおいて端末の認証処理を行う端末認証システムであって、端末は、端末の構成要素に関する物理情報をデバイス物理情報として生成するデバイス物理情報生成手段(例えば、デバイス物理情報生成手段480)と、サーバ公開鍵(例えば、サーバ公開鍵421)を用いてデバイス物理情報を暗号化しサーバに送信する公開鍵暗号化手段(例えば、公開鍵暗号化手段411)と、デバイス物理情報を用いて端末側ランダム情報を生成する端末側鍵生成手段(例えば、鍵生成手段431)と、端末側ランダム情報を取得する端末側鍵検証手段(例えば、鍵検証手段471)とを含み、サーバは、サーバ秘密鍵(例えば、サーバ秘密鍵420)を用いて、暗号化されたデバイス物理情報を復号化する公開鍵暗号復号手段(例えば、公開鍵暗号復号手段410)と、復号化されたデバイス物理情報を格納する物理情報格納手段(例えば、物理情報格納手段450)と、復号化されたデバイス物理情報を用いてサーバ側ランダム情報を生成するサーバ側鍵生成手段(例えば、鍵生成手段430)と、登録フェーズにおいて公開鍵暗号復号手段が復号化したデバイス物理情報と、認証フェーズにおいて公開鍵暗号復号手段が復号化したデバイス物理情報とを比較することにより端末の照合を行う照合手段(例えば、照合手段460)と、サーバ側ランダム情報を取得するサーバ側鍵検証手段(例えば、鍵検証手段470)とを含み、サーバ側鍵検証手段および端末側鍵検証手段は、前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行う端末認証システム。
(2)端末認証システムは、サーバが、登録フェーズおよび認証フェーズにおいて、デバイス物理情報生成手段がデバイス物理情報を生成するために使用する構成要素を指定するチャレンジを生成するチャレンジ生成手段(例えば、チャレンジ生成および格納手段500)を含むように構成されていてもよい。このような端末認証システムによれば、認証のために用いるデバイス物理情報をサーバがチャレンジとして指定するため、認証のために用いるデバイス物理情報を更新することが可能になる。
(3)端末認証システムは、デバイス物理情報生成手段が、リングオッシレータ回路(例えば、リングオッシレータ回路600)を含み、当該リングオッシレータ回路の周波数情報をデバイス物理情報として生成するように構成されていてもよい。
(4)端末認証システムは、照合手段が、登録フェーズおよび認証フェーズにおいて、対応するリングオッシレータ回路の周波数の比を算出し、当該比の統計値(例えば、標準偏差)に基づいて、端末の照合を行うように構成されていてもよい。
本発明は、機器認証に適用することができる。
100 サーバ
110 端末
120,480 デバイス物理情報生成手段
410 公開鍵暗号復号手段
411 公開鍵暗号化手段
420 サーバ秘密鍵
421 サーバ公開鍵
430,431 鍵生成手段
432 サーバ側鍵生成手段
433 端末側鍵生成手段
440,441 鍵格納手段
450 物理情報格納手段
460 照合手段
470,471 鍵検証手段
472 サーバ側鍵検証手段
473 端末側鍵検証手段
500 チャレンジ生成および格納手段
600 リングオッシレータ回路
620 カウンタ
630 メモリ

Claims (8)

  1. 端末とサーバとを備え、登録フェーズにおいて前記端末の登録処理を行い、認証フェーズにおいて前記端末の認証処理を行う端末認証システムであって、
    前記端末は、
    前記端末の構成要素に関する物理情報をデバイス物理情報として生成するデバイス物理情報生成手段と、
    サーバ公開鍵を用いて前記デバイス物理情報を暗号化し前記サーバに送信する公開鍵暗号化手段と、
    前記デバイス物理情報を用いて端末側ランダム情報を生成する端末側鍵生成手段と、
    前記端末側ランダム情報を取得する端末側鍵検証手段とを含み、
    前記サーバは、
    サーバ秘密鍵を用いて、暗号化された前記デバイス物理情報を復号化する公開鍵暗号復号手段と、
    復号化された前記デバイス物理情報を格納する物理情報格納手段と、
    復号化された前記デバイス物理情報を用いてサーバ側ランダム情報を生成するサーバ側鍵生成手段と、
    前記登録フェーズにおいて前記公開鍵暗号復号手段が復号化した前記デバイス物理情報と、前記認証フェーズにおいて前記公開鍵暗号復号手段が復号化した前記デバイス物理情報とを比較することにより前記端末の照合を行う照合手段と、
    前記サーバ側ランダム情報を取得するサーバ側鍵検証手段とを含み、
    前記サーバ側鍵検証手段および前記端末側鍵検証手段は、
    前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行う
    ことを特徴とする端末認証システム。
  2. サーバは、登録フェーズ及び認証フェーズにおいて、デバイス物理情報生成手段がデバイス物理情報を生成するために使用する構成要素を指定するチャレンジを生成するチャレンジ生成手段を含む
    請求項1記載の端末認証システム。
  3. デバイス物理情報生成手段は、リングオッシレータ回路を含み、当該リングオッシレータ回路の周波数情報をデバイス物理情報として生成する
    請求項1または請求項2記載の端末認証システム。
  4. 照合手段は、登録フェーズおよび認証フェーズにおいて、対応するリングオッシレータ回路の周波数の比を算出し、当該比の統計値に基づいて、端末の照合を行う
    請求項3記載の端末認証システム。
  5. 端末とサーバとを用いて、登録フェーズにおいて前記端末の登録処理を行い、認証フェーズにおいて前記端末の認証処理を行う端末認証方法であって、
    登録フェーズにおいて、
    前記端末は、
    前記端末の構成要素に関する物理情報をデバイス物理情報として生成し、
    サーバ公開鍵を用いて前記デバイス物理情報を暗号化し前記サーバに送信し、
    前記サーバは、
    サーバ秘密鍵を用いて、暗号化された前記デバイス物理情報を復号化し、
    復号化された前記デバイス物理情報を格納し、
    認証フェーズにおいて、
    前記端末は、
    前記端末の構成要素に関する物理情報をデバイス物理情報として生成し、
    サーバ公開鍵を用いて当該デバイス物理情報を暗号化し前記サーバに送信し、
    当該デバイス物理情報を用いて端末側ランダム情報を生成し、
    前記サーバは、
    サーバ秘密鍵を用いて、暗号化された当該デバイス物理情報を復号化し、
    復号化された当該デバイス物理情報を用いてサーバ側ランダム情報を生成し、
    前記登録フェーズにおいて復号化した前記デバイス物理情報と、前記認証フェーズにおいて復号化した前記デバイス物理情報とを比較することにより前記端末の照合を行い、
    前記端末および前記サーバは、
    前記端末側ランダム情報と前記サーバ側ランダム情報とが一致するかどうか確認することにより認証処理の検証を行う
    ことを特徴とする端末認証方法。
  6. サーバが、登録フェーズ及び認証フェーズにおいて、デバイス物理情報を生成するために使用する構成要素を指定するチャレンジを生成する
    請求項5記載の端末認証方法。
  7. 端末が、リングオッシレータ回路の周波数情報をデバイス物理情報として生成する
    請求項5または請求項6記載の端末認証方法。
  8. サーバが、登録フェーズおよび認証フェーズにおいて、対応するリングオッシレータ回路の周波数の比を算出し、当該比の統計値に基づいて、端末の照合を行う
    請求項7記載の端末認証方法。
JP2013105971A 2013-05-20 2013-05-20 端末認証システムおよび端末認証方法 Active JP6037450B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013105971A JP6037450B2 (ja) 2013-05-20 2013-05-20 端末認証システムおよび端末認証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013105971A JP6037450B2 (ja) 2013-05-20 2013-05-20 端末認証システムおよび端末認証方法

Publications (2)

Publication Number Publication Date
JP2014229968A JP2014229968A (ja) 2014-12-08
JP6037450B2 true JP6037450B2 (ja) 2016-12-07

Family

ID=52129477

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013105971A Active JP6037450B2 (ja) 2013-05-20 2013-05-20 端末認証システムおよび端末認証方法

Country Status (1)

Country Link
JP (1) JP6037450B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017028354A (ja) * 2015-07-16 2017-02-02 渡辺 浩志 電子装置ネットワーク及びチップ認証方式
JP6692792B2 (ja) 2017-12-28 2020-05-13 三菱重工業株式会社 監視装置、監視システム、監視方法及びプログラム
JP7084442B2 (ja) * 2020-03-16 2022-06-14 三菱重工業株式会社 情報処理装置、情報処理方法及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3736882C2 (de) * 1987-10-30 1997-04-30 Gao Ges Automation Org Verfahren zur Echtheitsprüfung eines Datenträgers mit integriertem Schaltkreis
JP2007511810A (ja) * 2003-05-16 2007-05-10 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 乱数関数を利用した実行証明
WO2007007229A1 (en) * 2005-07-07 2007-01-18 Koninklijke Philips Electronics N.V. Method, apparatus and system for verifying authenticity of an object
KR101366376B1 (ko) * 2006-01-24 2014-02-24 베라요, 인크. 신호 제너레이터에 기반한 장치 보안
EP2730048A2 (en) * 2011-07-07 2014-05-14 Verayo, Inc. Cryptographic security using fuzzy credentials for device and server communications

Also Published As

Publication number Publication date
JP2014229968A (ja) 2014-12-08

Similar Documents

Publication Publication Date Title
CN109347835B (zh) 信息传输方法、客户端、服务器以及计算机可读存储介质
CN109756338B (zh) 认证装置、验证装置的计算机实现方法和计算机可读介质
US11533297B2 (en) Secure communication channel with token renewal mechanism
US8694778B2 (en) Enrollment of physically unclonable functions
US10015159B2 (en) Terminal authentication system, server device, and terminal authentication method
CN106411521B (zh) 用于量子密钥分发过程的身份认证方法、装置及系统
US11283633B2 (en) PUF-based key generation for cryptographic schemes
Huth et al. Securing systems on the Internet of Things via physical properties of devices and communications
US11533169B2 (en) Method for role-based data transmission using physically unclonable function (PUF)-based keys
US11477039B2 (en) Response-based cryptography using physical unclonable functions
JP6950745B2 (ja) 鍵交換装置、鍵交換システム、鍵交換方法、及び鍵交換プログラム
US12047519B2 (en) Physical unclonable function based mutual authentication and key exchange
KR101739203B1 (ko) 일회용 개인키 기반 전자 서명과 동형 암호를 이용한 패스워드 기반 사용자 인증 방법
JP2020530726A (ja) サプライチェーン資産管理を保護するアプリケーションを有する遠隔サーバへのnfcタグ認証
CN105009507A (zh) 借助于物理不可克隆函数创建从加密密钥中推导的密钥
CN106850207B (zh) 无ca的身份认证方法和系统
Zerrouki et al. PUF-based mutual authentication and session key establishment protocol for IoT devices
Touil et al. H-rotation: secure storage and retrieval of passphrases on the authentication process
CN109218251B (zh) 一种防重放的认证方法及系统
JP6037450B2 (ja) 端末認証システムおよび端末認証方法
WO2018047120A1 (en) A system and method for data block modification detection and authentication codes
KR101924138B1 (ko) 트리 기반 다중 사물인터넷 디바이스의 동시 인증을 위한 시스템 및 방법
US12107973B1 (en) PUF based key generation for lattice and code cryptography
Alshaeri et al. Distributed Hardware-Assisted Authentication and Key Agreement Protocol for Internet of Things
US11528144B1 (en) Optimized access in a service environment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160406

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161027

R150 Certificate of patent or registration of utility model

Ref document number: 6037450

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313115

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350