特許第6602210号(P6602210)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 国立大学法人 東京大学の特許一覧

特許6602210認証システム及び方法
この文献は図面が300枚以上あるため,図面を表示できません.
<>
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6602210
(24)【登録日】2019年10月18日
(45)【発行日】2019年11月6日
(54)【発明の名称】認証システム及び方法
(51)【国際特許分類】
   H04L 9/32 20060101AFI20191028BHJP
   G06F 21/44 20130101ALI20191028BHJP
【FI】
   H04L9/00 675A
   G06F21/44
【請求項の数】10
【全頁数】36
(21)【出願番号】特願2016-10169(P2016-10169)
(22)【出願日】2016年1月21日
(65)【公開番号】特開2017-130855(P2017-130855A)
(43)【公開日】2017年7月27日
【審査請求日】2019年1月16日
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】100103137
【弁理士】
【氏名又は名称】稲葉 滋
(72)【発明者】
【氏名】松浦 幹太
(72)【発明者】
【氏名】ミオドラッグ ミハイエビッチ
【審査官】 金沢 史明
(56)【参考文献】
【文献】 Miodrag J. MIHALJEVIC et al.,Lightweight Authentication Protocols Based on the LPN Problem and Random Selection,2016 Symposium on Cryptography and Information Security (SCIS 2016),2016年 1月19日,2E1-5, pp. 1-6
【文献】 Xuedi SONG et al.,The Simple Way to Enhance Security and Reduce Size of HB#,The 29th Symposium on Cryptography and Information Security (SCIS 2012),2012年 1月30日,4D2-3, pp. 1-5
【文献】 Sinisa TOMOVIC et al.,A Protocol for Provably Secure Authentication of Tiny Entity to a High Performance Computing One,Mathematical Problem in Engineering,Hindawi Publishing Corporation,2016年,Vol. 2016, Article ID 9289050,pp. 1-9,[2017年4月11日検索],インターネット,URL,https://www.hindawi.com/journals/mpe/2016/9289050/abs/
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/32
G06F 21/44
(57)【特許請求の範囲】
【請求項1】
被認証デバイスと認証デバイスを備えた認証システムにおいて、
前記被認証デバイスは、
秘密鍵を含む共通情報を格納する記憶部と、
強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成する雑音生成部と、
レスポンス生成部と、
を備え、
前記第1雑音は、「1」の数がΔ個以下となるように生成されたNビット列のバイナリベクトルであり、
前記第2雑音は、ランダムに生成されたバイナリベクトルであり、
前記認証デバイスは、
秘密鍵を含む共通情報を格納する記憶部と、
強度制限の厳しい第1雑音の候補を網羅的に生成する雑音候補生成部と、
チャレンジ生成部と、
ローカルレスポンス生成部と、
認証判定部と、
を備え、
前記第1雑音候補は、「1」の数がΔ個となるように網羅的に生成されたNビット列群であり、
前記被認証デバイスの前記レスポンス生成部は、当該被認証デバイスが生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成し、
前記認証デバイスの前記ローカルレスポンス生成部は、当該認証デバイスが網羅的に生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、
前記認証デバイスの前記認証判定部は、前記雑音候補を網羅的に用いて生成された前記ローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定する、
認証システム。
【請求項2】
前記雑音生成部は、
Nビット列からなるバイナリベクトルをランダムに生成するバイナリベクトル生成部と、
前記バイナリベクトル生成部により生成されたバイナリベクトルの「1」の数を重みとして抽出し、共通情報に含まれるパラメータΔと比較する判定部と、
を備え、
前記バイナリベクトル生成部により生成されたバイナリベクトルの重みがΔ個より多い場合には、バイナリベクトルの重みがΔ個以下になるまでバイナリベクトルの生成を繰り返し、バイナリベクトルの重みがΔ個以下となった時のバイナリベクトルを第1雑音とし、
前記バイナリベクトル生成部により生成された任意のバイナリベクトルを第2雑音とし、
前記雑音候補生成部は、重みΔの全てのNビット列のバイナリベクトルを生成して第1雑音候補とする、
請求項に記載の認証システム。
【請求項3】
前記被認証デバイスは、コミットメントを生成して、前記認証デバイスに送信し、
前記共通情報は、m×nバイナリベクトルである秘密鍵Sを含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのm次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンス生成部は、演算子Oを用いて、
[この文献は図面を表示できません]
秘密データS、第1雑音e、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、第2雑音e、コミットメントr、から、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、前記演算子Oを用いて、
秘密データS、各第1雑音候補
[この文献は図面を表示できません]
、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、コミットメントrから、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証判定部は、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
請求項1、2いずれか1項に記載の認証システム。
【請求項4】
前記共通情報は、n次元バイナリベクトルである秘密鍵sと、
n次元のバイナリベクトルを暗号化する暗号アルゴリズム
[この文献は図面を表示できません]
と、
を含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのn次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンス生成部は、第1雑音e、チャレンジmを用いて、ノイジーチャレンジv
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジvを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データs(v)を用いてチャレンジmの暗号化を実行し、第2雑音eを付加することで、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、各第1雑音候補
[この文献は図面を表示できません]
と、チャレンジmを用いて、ノイジーチャレンジ
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データを用いてチャレンジmの暗号化を実行して、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証判定部は、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
請求項1、2いずれか1項に記載の認証システム。
【請求項5】
被認証デバイスと認証デバイスとの間の認証方法において、
前記被認証デバイスと前記認証デバイスは秘密鍵を含む共通情報を共有し、
前記認証デバイスはチャレンジを生成して前記被認証デバイスに送信し、
前記被認証デバイスは、強度制限の厳しい第1雑音として、「1」の数がΔ個以下となるようにNビット列のバイナリベクトルを生成し、強度制限が緩い第2雑音として、バイナリベクトルをランダムに生成し、生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成して、前記認証デバイスに送信し、
前記認証デバイスは、強度制限の厳しい第1雑音の候補として、「1」の数がΔ個となるように網羅的に生成されたNビット列群を生成し、生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、生成したローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定する、
認証方法。
【請求項6】
前記第1雑音の生成は、ランダムに生成されたNビット列からなるバイナリベクトルの「1」の数を重みとして抽出し、生成されたバイナリベクトルの重みがΔ個より多い場合には、バイナリベクトルの重みがΔ個以下になるまでバイナリベクトルの生成を繰り返し、バイナリベクトルの重みがΔ個以下となった時のバイナリベクトルを第1雑音とするものであり、
前記第2雑音は、ランダムに生成された任意のバイナリベクトルであり、
前記第1雑音候補は、重みΔの全てのNビット列のバイナリベクトルを生成することで得られる、
請求項に記載の認証方法
【請求項7】
前記被認証デバイスは、コミットメントを生成して、前記認証デバイスに送信し、
前記共通情報は、m×nバイナリベクトルである秘密鍵Sを含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのm次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンスは、演算子Oを用いて、
[この文献は図面を表示できません]
秘密データS、第1雑音e、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、第2雑音e、コミットメントr、から、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、前記演算子Oを用いて、
秘密データS、各第1雑音候補
[この文献は図面を表示できません]
、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、コミットメントrから、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証デバイスは、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
請求項5、6いずれか1項に記載の認証方法。
【請求項8】
前記共通情報は、n次元バイナリベクトルである秘密鍵sと、
n次元のバイナリベクトルを暗号化する暗号アルゴリズム
[この文献は図面を表示できません]
と、
を含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのn次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンスは、第1雑音e、チャレンジmを用いて、ノイジーチャレンジv
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジvを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データs(v)を用いてチャレンジmの暗号化を実行し、第2雑音eを付加することで、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、各第1雑音候補
[この文献は図面を表示できません]
と、チャレンジmを用いて、ノイジーチャレンジ
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データを用いてチャレンジmの暗号化を実行して、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証デバイスは、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
請求項5、6いずれか1項に記載の認証方法。
【請求項9】
被認証デバイスと認証デバイスとの間の認証方法において、
前記被認証デバイスと前記認証デバイスは秘密鍵を含む共通情報を共有し、
前記認証デバイスはチャレンジを生成して前記被認証デバイスに送信し、
前記被認証デバイスは、強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成し、生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成して、前記認証デバイスに送信し、
前記認証デバイスは、強度制限の厳しい第1雑音の候補を網羅的に生成し、生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、生成したローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定するものであり、
前記被認証デバイスは、コミットメントを生成して、前記認証デバイスに送信し、
前記共通情報は、m×nバイナリベクトルである秘密鍵Sを含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのm次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンスは、演算子Oを用いて、
[この文献は図面を表示できません]
秘密データS、第1雑音e、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、第2雑音e、コミットメントr、から、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、前記演算子Oを用いて、
秘密データS、各第1雑音候補
[この文献は図面を表示できません]
、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、コミットメントrから、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証デバイスは、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
認証方法。
【請求項10】
被認証デバイスと認証デバイスとの間の認証方法において、
前記被認証デバイスと前記認証デバイスは秘密鍵を含む共通情報を共有し、
前記認証デバイスはチャレンジを生成して前記被認証デバイスに送信し、
前記被認証デバイスは、強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成し、生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成して、前記認証デバイスに送信し、
前記認証デバイスは、強度制限の厳しい第1雑音の候補を網羅的に生成し、生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、生成したローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定するものであり、
前記共通情報は、n次元バイナリベクトルである秘密鍵sと、
n次元のバイナリベクトルを暗号化する暗号アルゴリズム
[この文献は図面を表示できません]
と、
を含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのn次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンスは、第1雑音e、チャレンジmを用いて、ノイジーチャレンジv
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジvを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データs(v)を用いてチャレンジmの暗号化を実行し、第2雑音eを付加することで、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、各第1雑音候補
[この文献は図面を表示できません]
と、チャレンジmを用いて、ノイジーチャレンジ
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データを用いてチャレンジmの暗号化を実行して、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証デバイスは、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る、
認証方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、認証システム及び方法に係り、典型的な態様例では、非対称計算機資源環境における認証システム及び方法に関する。
【背景技術】
【0002】
認証プロトコルは、証明者Pが自身を検証者Vに対して認証するためのプロトコルである。例えばRFID実装においては、証明者Pはタグ、検証者Vはリーダである。図1は、認証プトコルの概要を示し、典型的な認証プロトコルは、タグとリーダが共通鍵を共有するための疑似乱数関数(PRF)f(AES等)を用いることで構築される。認証プロトコルは、リーダがチャレンジcをタグに送信し、タグはこれに対してf(c)を返し、リーダは、タグから受信したcの評価が正しいかについて検証する。
【0003】
この手法の主な問題は、疑似乱数関数が、数学的仮説あるいはAESのようなアドホックのブロック暗号に基づいて証明可能安全性を備えていたとしても、制限された計算機資源を備えた軽量デバイスにおいて手順を実行するにはコストが高いということである。
【0004】
軽量の認証手法としては、以下の2つの手法が提案されている。
(i)LPN問題に基づく認証(非特許文献3、5)
(ii)ランダム選択に基づく認証(非特許文献1、2、4)
【0005】
LPN問題に基づく認証
LPN問題(Learning parity with Noise)の困難性を仮定して、それに基づく幾つかの認証プロトコルが提案されている。LPN問題自体については、当業者に知られているので、本明細書での詳細な説明は省略する。非特許文献3には、以下の3つの認証プロトコルが提案されている。
(1)Authentication Protocol Secure Against Active Attacks (Protocol A1)
(2)The First MAC based Construction of Authentication Protocol Secure against MIM (Protocol MAC1)
(3)The Second MAC based Construction of Authentication Protocol Secure against MIM (Protocol MAC2)
プロトコルA1は、アクティブ攻撃シナリオ下において安全であり、プロトコルMAC1、MAC2は、中間者(MIM)攻撃シナリオ下において安全である。
非特許文献5には、MIM攻撃シナリオ下において安全である別の認証プロトコルが提案されている。
【0006】
ランダム選択(Random Selection)に基づく認証
認証プロトコルにおけるランダム選択の原理は以下の通りである。
検証者アリスと証明者ボブが、プロック長nの軽量の対称暗号演算
[この文献は図面を表示できません]
を用いるチャレンジ・レスポンス認証プロトコルを実行するとする。
ここで、
[この文献は図面を表示できません]
は、適切な鍵空間である。
さらに、Eは、パッシブな攻撃者によって効率的に秘密鍵
[この文献は図面を表示できません]
を関数
[この文献は図面を表示できません]
のサンプルから計算できるものとする。これは、Eが線形の場合は自明である。
【0007】
ランダム選択は、Eの無力さを以下の実行モードによって補償することである。
単一の
[この文献は図面を表示できません]
を保有することに代えて、アリスとボブは、共通の秘密情報として、
[この文献は図面を表示できません]
からの複数の鍵から成る集合(L>1は小さな定数である)
[この文献は図面を表示できません]
を共有する。
【0008】
アリスからチャレンジ
[この文献は図面を表示できません]
を受信すると、ボブは、選択インデックス
[この文献は図面を表示できません]
を選択し、レスポンス
[この文献は図面を表示できません]
を出力する。
チャレンジuに関するレスポンスyの検証は、全ての
[この文献は図面を表示できません]
について、
[この文献は図面を表示できません]
を計算することによって効率的に実行される。
【0009】
ここで、軽量の認証プロトコルの開発においては、ワイヤレス・センサーネットワーク(WSN)やIoT(Internet of Things)において適用し得る軽量の認証プロトコルの開発が課題である。すなわち、タグやセンサー等の計算機資源の乏しいデバイスが、PCのような計算機資源豊かなデバイスと通信を行う環境(非対称計算機資源環境)に適用し得る軽量の認証プロトコルの開発が重要である。非対称計算機資源環境とは、「自分は確かに自分である」と証明する側(証明者)と、それを検証して確認する側(検証者)との間に、証明者としてセンサーやタグなどの計算機資源が乏しいデバイスを想定し、検証者としてサーバなどの計算機資源が豊かな装置を想定するがゆえに、計算機資源の大きな格差が存在する環境をいう(図2)。
【0010】
しかしながら、(1)非特許文献3、5に記載された認証プロトコルは、幾つかの興味深い要素を提供しているが、幾つかのM2M認証シナリオにとって十分に軽量ではなく、また、非対称計算機資源環境下の制約を考慮していない。(2)非特許文献1、2、4に記載された認証プロトコルは、ランダムセレクションという興味深いパラダイムを採用しているが、所望の暗号セキュリティを備えていない。すなわち、非特許文献1〜5に開示されたプロトコルは、非対称計算機資源環境を考慮していない点、あるいは/および、所望の暗号セキュリティを提供しない点において、適切ではない。
【非特許文献1】J. Cichon, M. Klonowski and M. Kutyowski, ”Privacy protection for RFID with hidden subset identifiers”, PERVASIVE 2008, Lecture Notes in Computer Science, vol. 5013, pp. 298-314, 2008.
【非特許文献2】Z. Golebiewski, K. Majcher and F. Zagrski, ”Attacks on CKK family of RFID authentication protocols”, In: Coudert, D., Simplot-Ryl, D., Stojmenovic, I. (eds.) ADHOC-NOW 2008. Lecture Notes in Computer Science, vol. 5198, pp. 241-250, 2008
【非特許文献3】E. Kiltz, K. Pietrzak, D. Cash, A. Jain, and D. Venturi, ”Efficient Authentication from Hard Learning Problems”, EUROCRYPT 2011, Lecture Notes in Computer Science, vol. 6632, pp. 7-26, 2011.
【非特許文献4】M. Krause and M. Hamann, ”The Cryptographic Power of Random Selection”, SAC 2011, Lecture Notes in Computer Science, vol. 7118, pp. 134-150, 2012.
【非特許文献5】V. Lyubashevsky and D. Masny, ”Man-in-the-Middle Secure Authentication Schemes from LPN and Weak PRFs”, CRYPTO 2013, Lecture Notes in Computer Science, vol. 8043, pp. 308-325, 2013.
【発明の開示】
【発明が解決しようとする課題】
【0011】
本発明は、認証のための通信手順(プロトコル)において、証明者の計算機資源が検証者のそれよりも圧倒的に乏しい場合に、(i)その非対称性を考慮し、(ii)証明者がタグやセンサーであっても問題にならないほど十分に軽量で、しかも(iii)暗号理論的に十分な安全性を達成すること、を目的とするものである。
【課題を解決するための手段】
【0012】
本発明が採用した認証システムは、被認証デバイスと認証デバイスを備え、
前記被認証デバイスは、
秘密鍵を含む共通情報を格納する記憶部と、
強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成する雑音生成部と、
レスポンス生成部と、
を備え、
前記認証デバイスは、
秘密鍵を含む共通情報を格納する記憶部と、
強度制限の厳しい第1雑音の候補を網羅的に生成する雑音候補生成部と、
チャレンジ生成部と、
ローカルレスポンス生成部と、
認証判定部と、
を備え、
前記被認証デバイスの前記レスポンス生成部は、当該被認証デバイスが生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成し、
前記認証デバイスの前記ローカルレスポンス生成部は、当該認証デバイスが網羅的に生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、
前記認証デバイスの前記認証判定部は、前記雑音候補を網羅的に用いて生成された前記ローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定する。
【0013】
本発明が採用した認証方法は、
被認証デバイスと認証デバイスが秘密鍵を含む共通情報を共有し、
前記認証デバイスはチャレンジを生成して前記被認証デバイスに送信し、
前記被認証デバイスは、強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成し、生成した第1雑音及び第2雑音と、前記認証デバイスから受信したチャレンジと、前記共通情報と、を用いてレスポンスを生成して、前記認証デバイスに送信し、
前記認証デバイスは、強度制限の厳しい第1雑音の候補を網羅的に生成し、生成した第1雑音候補と、当該認証デバイスが生成したチャレンジと、前記共通情報と、を用いてローカルレスポンスを生成し、生成したローカルレスポンスと、前記被認証デバイスから受信した前記レスポンスと、を比較して、認証を判定する。
【0014】
本発明において、証明者である被認証デバイスによってレスポンスを生成するための処理の計算量は、検証者である認証デバイスによってローカルレスポンスを生成して認証を判定する計算量よりも計量である。
【0015】
1つの態様では、前記第1雑音は、「1」の数がΔ個以下となるように生成されたNビット列のバイナリベクトルであり、
前記第2雑音は、ランダムに生成されたバイナリベクトルであり、
前記第1雑音候補は、「1」の数がΔ個となるように網羅的に生成されたNビット列群(NCΔ個のNビット列からなる群)である。
1つの態様では、前記雑音生成部は、
Nビット列からなるバイナリベクトルをランダムに生成するバイナリベクトル生成部と、前記バイナリベクトル生成部により生成されたバイナリベクトルの「1」の数を重みとして抽出し、共通情報に含まれるパラメータΔと比較する判定部と、を備え、
前記バイナリベクトル生成部により生成されたバイナリベクトルの重みがΔ個より多い場合には、バイナリベクトルの重みがΔ個以下になるまでバイナリベクトルの生成を繰り返し、バイナリベクトルの重みがΔ個以下となった時のバイナリベクトルを第1雑音とし、
前記バイナリベクトル生成部により生成された任意のバイナリベクトルを第2雑音とし、
前記雑音候補生成部は、重みΔの全てのNビット列のバイナリベクトルを生成して第1雑音候補とする。
【0016】
1つの態様(後述する認証プロトコルI)では、 前記被認証デバイスは、コミットメントを生成して、前記認証デバイスに送信し、
前記共通情報は、m×nバイナリベクトルである秘密鍵Sを含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのm次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンス生成部は、演算子Oを用いて、
[この文献は図面を表示できません]
秘密データS、第1雑音e、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、第2雑音e、コミットメントr、から、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、前記演算子Oを用いて、
秘密データS、各第1雑音候補
[この文献は図面を表示できません]
、チャレンジc、を入力として、ランダム化された秘密データS、ランダム化されたチャレンジs、を出力するものであり、
ランダム化された秘密データS、ランダム化されたチャレンジs、コミットメントrから、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証判定部は、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る。
【0017】
1つの態様(後述する認証プロトコルII)では、前記共通情報は、n次元バイナリベクトルである秘密鍵sと、
n次元のバイナリベクトルを暗号化する暗号アルゴリズム
[この文献は図面を表示できません]
と、
を含み、
前記第1雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成することで得られ、
前記第2雑音は、
[この文献は図面を表示できません]
にしたがって、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成することで得られ、
前記第1雑音候補は、
[この文献は図面を表示できません]
個の重みΔのn次元バイナリベクトルを、第1雑音eの候補
[この文献は図面を表示できません]
として生成することで得られ、
前記レスポンス生成部は、第1雑音e、チャレンジmを用いて、ノイジーチャレンジv
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジvを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データs(v)を用いてチャレンジmの暗号化を実行し、第2雑音eを付加することで、レスポンス
[この文献は図面を表示できません]
を生成し、
前記ローカルレスポンス生成部は、各第1雑音候補
[この文献は図面を表示できません]
と、チャレンジmを用いて、ノイジーチャレンジ
[この文献は図面を表示できません]
を生成し、ノイジーチャレンジを用いて、秘密データsのマッピングを実行して、マッピングされた秘密データ
[この文献は図面を表示できません]
を生成し、マッピングされた秘密データを用いてチャレンジmの暗号化を実行して、ローカルレスポンス
[この文献は図面を表示できません]
を生成し、
前記認証判定部は、
[この文献は図面を表示できません]
にしたがって、すべての第1雑音候補
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、前記レスポンスを許可して認証を受け入る。
【発明の効果】
【0018】
本発明では、計算機資源が乏しいデバイスである証明者は、軽量な行列計算を行い、計算機資源が豊かなデバイスである検証者は、軽量ではないベクトル評価を含む検証演算を行うことで、計算資源に応じた非対称的な方式とし、安全性を確保しつつ、負荷の高い処理を計算機資源が豊かなデバイス側へ偏らせることによって、計算機資源の乏しいデバイス側の動作コストを低くした。したがって、証明者の計算機資源が検証者のそれよりも圧倒的に乏しい場合、例えば、証明者がタグやセンサーであっても問題にならないほど十分に軽量で、かつ、暗号理論的に十分な安全性を備えた認証プロトコルを提供することができる。
【図面の簡単な説明】
【0019】
図1】チャレンジ・レスポンス認証プロトコルの概要を示す。
図2】非対称計算機資源環境下(計算能力の低い証明者と計算能力の高い検証者)における認証シナリオを示す。
図3】本実施形態に認証システムの概略図である。
図4】本実施形態に係る認証フレームワークを示す。
図5】本実施形態に係る認証プロトコルIにおける証明者における処理を示すブロック図である。
図6】本実施形態に係る認証プロトコルIにおける検証者における処理を示すブロック図である。
図7】本実施形態に係る認証プロトコルIIにおける証明者における処理を示すブロック図である。
図8】本実施形態に係る認証プロトコルIIにおける検証者における処理を示すブロック図である。
【発明を実施するための形態】
【0020】
[A]非対称計算機資源環境
本実施形態は、非対称計算機資源環境における認証方法及びシステムに関する。非対称計算機資源環境とは、タグやセンサー等の計算機資源の乏しいデバイスが、PCのような計算機資源豊かなデバイスと暗号通信を行う環境である。図2に示すように、本実施形態に係る認証は、検証者としての第1デバイス(認証デバイス)と証明者としての第2デバイス(被認証デバイス)との間で行われる。第1デバイス、第2デバイスは共にコンピュータを含んでいると共に、通信機能(典型的には無線通信機能)を備えている。コンピュータは、ハードウェアとして、入力部、記憶部、処理部(演算部ないしCPU)、出力部等を備えており、ソフトウェア(コンピュータプログラム)によって所定の処理を実行する。
【0021】
本実施形態では、第1デバイスは計算機資源(CPU、メモリ等)が豊かであり、第2デバイスは計算機資源が乏しい。第1デバイスは第2デバイスよりも処理能力(計算能力)が高く、また、第2デバイスはより小さい消費電力で動作可能である。第1デバイスとしては、PC(デスクトップ、ラップトップ、ノートブック等)、サーバ、モバイルコンピュータ(スマートフォン、携帯電話、PDA、タブレット、所定の計算機資源を備えたウェラブルコンピュータ等)、タグリーダ等が例示される。第2デバイスとしては、センサー(IC内蔵)、RFIDタグ、ICタグ、ICカード、ウェアラブルコンピュータが例示される。
【0022】
[B]認証システム
図3図4に示すように、認証システムは、証明者である被認証デバイスと、検証者である認証デバイスと、を備えたチャレンジ・レスポンス認証システムである。被認証デバイスと認証デバイスが秘密データを含む共通情報を共有し、認証デバイスはチャレンジを生成して当該チャレンジを被認証デバイスに送信し、チャレンジを受信した被認証デバイスは、受信したチャレンジ及び秘密データを用いて、所定の処理を実行してレスポンスを生成して当該レスポンスを認証デバイスに送信し、レスポンスを受信した認証デバイスは、チャレンジ及び秘密データを用いて、所定の処理を事項してローカルレスポンスを生成し、被認証デバイスから受信したレスポンスと認証デバイスで生成したローカルレスポンスとを比較して、受信したレスポンスを評価し、当該レスポンスを受け入れるか否かを判定する。
【0023】
認証デバイスは、秘密データを含む共通情報を格納する共通情報記憶部と、雑音生成部と、チャレンジ生成部と、ローカルレスポンス生成部と、認証判定部と、を備えている。被認証デバイスは、秘密データを含む共通情報を格納する共通情報記憶部と、雑音生成部と、レスポンス生成部と、を備えている。後述する認証プロトコルIでは、さらに、コミットメント生成部を備えている。認証デバイス及び被認証デバイスは、共に、データの送受信部を備えている。
【0024】
被認証デバイスの雑音生成部は、強度制限の厳しい第1雑音、強度制限が緩い第2雑音を、それぞれ生成する。認証デバイスの雑音生成部は、強度制限の厳しい雑音の候補を網羅的に生成する雑音候補生成部である。後述する実施形態では、雑音生成部は、バイナリベクトルを生成するバイナリベクトル生成部であり、
【0025】
被認証デバイスのレスポンス生成部は、当該被認証デバイスが生成した第1雑音及び第2雑音と、認証デバイスから受信したチャレンジと、共通情報と、を用いてレスポンスを生成する。レスポンスの生成アルゴリズムは、軽量な計算で実行できる処理である。
【0026】
被認証デバイスにおけるレスポンス生成処理は、「認証デバイスが生成して被認証デバイスに送信したチャレンジ」と、「被認証デバイスが生成し、認証デバイスには送信しない、2つの雑音(強度制限の厳しい雑音と厳しくない雑音)」と、を用いて(プロトコルIでは「被認証デバイスが生成して認証デバイスに送信したコミットメント」も用いて)、認証デバイスが現実的な負荷(図4のmoderate complexity processing)で検証可能な範囲で、かつ、攻撃者が十分な情報を得られない強度で、秘密情報から部分情報を抽出してスクランブルを施したレスポンスを生成するものである。
【0027】
認証デバイスのローカルレスポンス生成部は、当該認証デバイスが網羅的に生成した雑音候補と、当該認証デバイスが生成したチャレンジと、共通情報と、を用いてローカルレスポンスを生成する。認証デバイスの認証判定部は、雑音候補を網羅的に用いて生成されたローカルレスポンスと、前記被認証デバイスから受信したレスポンスと、を比較して、認証を判定する。認証デバイスにおける処理は、強度制限の厳しい雑音の候補を網羅的にテストするだけで、強度制限の厳しくない雑音の候補を考えることなく、実行できる処理である。
【0028】
図4に本実施形態に係る認証フレームワークを示す。認証フレームワークは、図4に示す複数のボックスから構成されており、これらのボックスは、「共通秘密データ(shared secret data)」、「コミットメント(commitment)」、「チャレンジ(challenge)」、「証明者における軽量な処理(lightweight processing P)」、「レスポンス(response)」、「検証者における無理の無い程度の複雑な処理(moderate complexity processing V)」、「認証結果(authentication result)」からなり、後述する本実施形態に係るそれぞれの認証プロトコルでは、所定のボックスにおいて異なる設計や構成が採用される。
【0029】
本実施形態は、「共通秘密データ」、「証明者における処理」、「レスポンス」、「検証者における処理」において新規の設計/構成を備えている。本実施形態は、特に、「証明者(被認証デバイス)における処理P(図5図6参照)」、「検証者(認証デバイス)における処理V(図7図8参照)」に特徴を有している。それによって、本実施形態に係る認証プロトコルは、以下の要求に対応することができる。
(a)図2に示す非対称計算機資源環境下での認証シナリオに適合するものであること、
(b)証明者と検証者との間に実装の複雑性(implementation complexities)のトレードオフを解決するものであること、
(c)以下の2つの概念に基づく認証の高い安全性を提供するものであること、
- LPN問題とランダムセレクション問題の組み合わせ、
- 適切な暗号、ランダムセレクション、暗号文のランダム化の組み合わせ。
【0030】
[C]認証プロトコル
本実施形態に係る認証プロトコルは、認証プロトコルIと、認証プロトコルIIからなる。認証プロトコルIは、(i) LPN問題と、(ii)ランダムセレクション問題 の2つの問題の組み合わせに基づいた認証セキュリティを提供するものであり、認証プロトコルIIは、(i)適切な暗号アルゴリズム(ストリーム暗号)、(ii) ランダムセレクションパラダイム、(iii)暗号文のランダム化、の組み合わせに基づいた認証セキュリティを提供するものである。
【0031】
[C−1]表記法
[この文献は図面を表示できません]
ベルヌーイ分布にしたがってm次元バイナリベクトルを引き出す演算であって、ベルヌーイ分布は、確率τで「1」を生成し、確率1−τで「0」を生成し、τ<1/2である。
【0032】
[この文献は図面を表示できません]
バイナリベクトルeの重みであり、バイナリベクトルeにおける「1」の数に等しい。パラメータΔは重みの上限を規定する。
【0033】
[この文献は図面を表示できません]
それぞれ、バイナリ引数のmodulo2加算(排他的論理和)、modulo2加算による総和を示す。
【0034】
[この文献は図面を表示できません]
それぞれ、l次元バイナリベクトルのドメイン、m×n次元バイナリ行列のドメイン、である。
【0035】
[この文献は図面を表示できません]
演算子
[この文献は図面を表示できません]
は、
●与えられたmxnのバイナリ行列(各要素は0または1)
[この文献は図面を表示できません]
ここで、
[この文献は図面を表示できません]
は行列Sのi番目の行、
●m次元のバイナリベクトルe
●n次元のバイナリベクトルc、
について、以下の手順で、mxnバイナリ行列S、m次元バイナリベクトルsを返すものである。
【0036】
与えられたベクトル
[この文献は図面を表示できません]
について、mxnバイナリ行列Eを以下ように評価する。
行列Eのj番目の列は、j-1番目の列におけるeの要素のサイクリックシフトによって得られたベクトルと等しい。
【0037】
演算子
[この文献は図面を表示できません]
、行列S*、ベクトルs*を以下ように定義する。
[この文献は図面を表示できません]
ここで、
[この文献は図面を表示できません]
である。
ここで、「1」は、全ての要素が1のmxnバイナリ行列であり、すなわち、
[この文献は図面を表示できません]
は、行列Eの各要素をビット反転させた行列となる。
【0038】
すなわち、一般的に表現すると、演算子
[この文献は図面を表示できません]
は、「秘密データS」、「バイナリベクトルe(本実施形態では、ベクトルeによって規定されるランダム行列Eが生成されるが、ランダム化の具体的な計算は本実施形態に限定されない)」、「チャレンジc」、を入力として、「ランダム化された秘密データS」、「ランダム化されたチャレンジs」、を出力する。
【0039】
[C−2]認証プロトコルI
[共有情報]
証明者と検証者との間で共有されるデータは、
●行列形式(m×n次元バイナリ行列)の秘密鍵S、
[この文献は図面を表示できません]
●パラメータ
[この文献は図面を表示できません]
m,n:次元数、
Δ:バイナリベクトル生成時の重み(「1」の数)の上限、
τ,τ:ベルヌーイ分布において「1」を生成する確率、
thr:認証の合否を決定する閾値、
である。
【0040】
[ステップ1]
証明者は、ランダムに生成されたn次元バイナリベクトルであるコミットメントメッセージrを生成し、検証者に送信する。
【0041】
[ステップ2]
検証者は、ランダムに生成されたn次元バイナリベクトルであり、重みがΔよりも大きいチャレンジメッセージcを生成し、証明者に送信する。
【0042】
[ステップ3]
証明者は、検証者からチャレンジメッセージcを受信すると、以下の手順でレスポンスを生成する(図4における処理P)。
【0043】
[セレクト(選択)]
●eの生成
[この文献は図面を表示できません]
証明者は、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成する。
[この文献は図面を表示できません]
の場合(eのうち1の立っているビットがΔ個より多ければ)には、新しいeを生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成して再チェックする(Δ個以下になるまで繰り返す)。
●eの生成
[この文献は図面を表示できません]
証明者は、mビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成する。
【0044】
認証プロトコルIで採用されるバイナリベクトルe、eにおいて、eは、データのランダム化のための第1系列(ベクトル)、すなわち、第1雑音であり、eは、データのランダム化のための第2系列(ベクトル)、すなわち、第2雑音である。第1雑音(e)は、強度制限のより厳しい雑音であり、第2雑音(e)は、強度制限がより厳しくない雑音、である。
【0045】
[評価]
証明者は、演算子Oを用いて、m×nバイナリ行列S*、及び、m次元バイナリベクトルs*を計算し、そして、レスポンスzを計算する。
[この文献は図面を表示できません]
[この文献は図面を表示できません]
[この文献は図面を表示できません]
【0046】
図5を参照しつつ、証明者(被認証デバイス)における処理Pをより具体的に説明する。ブロック「ランダムセレクション(Random selection)」において第1雑音eが生成される。ブロック「秘密データのマッピング(Mapping of secret data)」において、生成された第1雑音eを用いて、秘密データ(秘密鍵)Sのマッピング
[この文献は図面を表示できません]
が実行され、ランダム化された秘密データSを得る。ここで、Eは、ベクトルeによって規定されるランダム行列である。
【0047】
ブロック「LPN処理(LPN Processing)」において、マッピング(ランダム化)された秘密データSと、コミットメントrと、生成された第2雑音eと、を用いて、
[この文献は図面を表示できません]
が生成される。
【0048】
ブロック「レスポンスの評価(Evaluation of response)」において、生成された第1雑音eにより規定されるランダム行列Eを用いて、チャレンジcのランダム化
[この文献は図面を表示できません]
が実行され、ランダム化されたチャレンジsを得る。
【0049】
ブロック「LPN処理」で生成された
[この文献は図面を表示できません]
と、ランダム化されたチャレンジsと、からレスポンスz
[この文献は図面を表示できません]
が生成される。
【0050】
[送信]
証明者は、レスポンスzを検証者に送信する。
【0051】
[ステップ4]
検証者は、レスポンスzを受信すると、以下の手順で認証の成否を決定する(図4における処理V)。
【0052】
検証者は、eについて、m次元から「1」である要素をΔ個選んで得られる組合せ、すなわち、
[この文献は図面を表示できません]
個のm次元バイナリベクトル(重みΔ)を、eの候補
[この文献は図面を表示できません]
として生成し、演算子Oを用いて行列S及びベクトルsを以下のように評価する。
[この文献は図面を表示できません]
であり、
[この文献は図面を表示できません]
である。
【0053】
検証者は、候補として検討されたすべての
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、レスポンスzを許可して認証を受け入れ(合格)、そうでない場合には、レスポンスzは拒否され、認証を棄却(不合格)とする。
ここで、thrは事前に設定された閾値であり、thr<<m/2である。
【0054】
図6を参照しつつ、検証者(認証デバイス)における処理Vをより具体的に説明する。ブロック「ランダムセレクションにおける仮定の設定(Setting a hypothesis on random selection)」において第1雑音の候補
[この文献は図面を表示できません]
が生成される。
【0055】
ブロック「秘密データのマッピング(Mapping of secret data)」において、生成された第1雑音の候補
[この文献は図面を表示できません]
用いて、秘密データ(秘密鍵)Sのマッピング
[この文献は図面を表示できません]
が実行され、ランダム化された秘密データSを得る。ここで、Eは、ベクトル
[この文献は図面を表示できません]
によって規定されるランダム行列である。
【0056】
ブロック「マッピングされた秘密データを用いた評価(Evaluation employing mapped secret data)」において、マッピング(ランダム化)された秘密データSと、コミットメントrと、を用いて、
[この文献は図面を表示できません]
が生成される。
【0057】
ブロック「ローカルで生成されたレスポンス推定の評価(Evaluation of locally generated response estimation)」において、生成された第1雑音の候補
[この文献は図面を表示できません]
により規定されるランダム行列Eを用いて、チャレンジcのランダム化
[この文献は図面を表示できません]
が実行され、sを得る。ブロック「マッピングされた秘密データを用いた評価」で生成された
[この文献は図面を表示できません]
と、ランダム化されたチャレンジsと、からローカルレスポンス
[この文献は図面を表示できません]
が生成される。
【0058】
受信したレスポンスzと、認証デバイスにおいてローカルに生成されたレスポンス
[この文献は図面を表示できません]
と、を判定関数
[この文献は図面を表示できません]
によって出力される重みを用いて比較して、認証の認否を決定する。
【0059】
[C−3]認証プロトコルII
[共有情報]
証明者と検証者との間で共有される情報は、
●秘密ベクトル
[この文献は図面を表示できません]
●n次元のバイナリベクトルを暗号化する暗号(ストリーム暗号)アルゴリズム
[この文献は図面を表示できません]
●パラメータ
[この文献は図面を表示できません]
l,n:次元数、
Δ:バイナリベクトル生成時の重み(「1」の数)の上限、
τ,τ:ベルヌーイ分布において「1」を生成する確率、
thr:認証の合否を決定する閾値、
である。
【0060】
[ステップ1]
検証者は、n次元バイナリベクトルであるメッセージmを証明者に送信する。
【0061】
[ステップ2]
証明者は、検証者からメッセージmを取得すると、以下の手順でレスポンスを生成する(図4における処理P)。
【0062】
[セレクト(選択)]
●eの生成
[この文献は図面を表示できません]
証明者は、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成する。
[この文献は図面を表示できません]
の場合(eのうち1の立っているビットがΔ個より多ければ)には、新しいeを生成し、その重みが条件
[この文献は図面を表示できません]
を満たすまで、新しいeを生成して再チェックする(Δ個以下になるまで繰り返す)。
●eの生成
[この文献は図面を表示できません]
証明者は、nビットのeの各ビットをパラメータτのベルヌーイ分布にしたがって生起させてeをランダムに生成する。
【0063】
認証プロトコルIIで採用されるバイナリベクトルe、eにおいて、eは、ランダム化のための第1系列(ベクトル)、すなわち、第1雑音であり、eは、ランダム化のための第2系列(ベクトル)、すなわち、第2雑音である。第1雑音(e)は、強度制限のより厳しい雑音であり、第2雑音(e)は、強度制限がより厳しくない雑音、である。
【0064】
[評価]
証明者は、メッセージmに生成されたe(第1雑音)を加えることでvを生成し、s0に「vの第i成分が1であるようなsi(i=1, 2, …, n)」をビット毎の排他的論理和で足し合わせていき、その結果をs(v)とする。s(v)を暗号アルゴリズムによるスクランブルで鍵として利用してレスポンスzを得る。
[この文献は図面を表示できません]
[この文献は図面を表示できません]
【0065】
図7を参照しつつ、証明者(被認証デバイス)における処理Pをより具体的に説明する。ブロック「ランダムセレクション(Random selection)」において第1雑音eが生成される。ブロック「秘密データのマッピング(Mapping of secret data)」において、生成された第1雑音e、認証デバイスから受信したチャレンジmを用いて、ノイジーチャレンジv
[この文献は図面を表示できません]
が生成され、ノイジーチャレンジvを用いて、秘密データ(秘密鍵)sのマッピングが実行され、マッピングされた秘密データs(v)
[この文献は図面を表示できません]
を得る。
【0066】
ブロック「軽量暗号化及び加法性雑音(Lightweight Encryption & Additive noise)」において、マッピングされた秘密データs(v)を用いてチャレンジmの暗号化が実行され、暗号化(スクランブル)チャレンジEs(v)(m)が生成され、生成された第2雑音eを用いて、レスポンスz
[この文献は図面を表示できません]
が生成される。
【0067】
[送信]
証明者は、レスポンスzを送信する。
【0068】
[ステップ3]
検証者は、レスポンスzを受信すると、以下の手順で認証の成否を決定する(図4における処理V)。
【0069】
検証者は、eについて、n次元から「1」である要素をΔ個選んで得られる組合せ、すなわち、
[この文献は図面を表示できません]
個のn次元バイナリベクトル(重みΔ)を、eの候補
[この文献は図面を表示できません]
として生成し、各候補について、
[この文献は図面を表示できません]
を計算し、その結果にしたがって各候補を評価する。
【0070】
検証者は、候補として検討されたすべての
[この文献は図面を表示できません]
について
[この文献は図面を表示できません]
を満たす場合には、レスポンスzを許可して認証受け入れ(合格)、そうでない場合には、レスポンスzは拒否され、認証を棄却(不合格)とする。
ここで、thrは予め設定された閾値であり、thr<<n/2である。
【0071】
図8を参照しつつ、検証者(認証デバイス)における処理Vをより具体的に説明する。ブロック「ランダムセレクションにおける仮定の設定(Setting a hypothesis on random selection)」において雑音eの候補
[この文献は図面を表示できません]
が生成される。
【0072】
ブロック「秘密データのマッピング(Dedicated secret data mapping)」において、生成された雑音eの候補
[この文献は図面を表示できません]
と、チャレンジmを用いて、ノイジーチャレンジ
[この文献は図面を表示できません]
が生成され、ノイジーチャレンジを用いて、秘密データ(秘密鍵)sのマッピングが実行され、マッピングされた秘密データ
[この文献は図面を表示できません]
を得る。
【0073】
ブロック「軽量暗号化及び加法性雑音(Lightweight Encryption & Additive noise)」において、マッピングされた秘密データを用いてチャレンジmの暗号化が実行され、暗号化(スクランブル)チャレンジ
[この文献は図面を表示できません]
が生成される。
【0074】
受信したレスポンスzと、認証デバイスにおいてローカルに生成されたレスポンス
[この文献は図面を表示できません]
と、を判定関数
[この文献は図面を表示できません]
によって出力される重みを用いて比較して、認証の認否を決定する。
【0075】
[D]本実施形態に係る認証プロトコルと非特許文献に係るプロトコルとの対比
本実施形態に係る認証プロトコルは、非特許文献3、5及び1、2、4に開示された認証プロトコルの結果を考慮し、これらの開示事項の非自明な組み合わせに基づくものである。
本実施形態に係る認証プロトコルは、非特許文献3、5に開示されている幾つかの要素を採用するものであるが、非特許文献3、5に開示されている要素において、計算能力の乏しい当事者(通常は、証明者)のおける認証の軽量性をサポートできない要素、特に、
(i)非特許文献3における主要要素である長いバイナリベクト転置(permutation)、
(ii)非特許文献5における主要要素である非バイナリ有限体(non-binary finite field)における演算を含まない。
プロトコルの暗号セキュリティとより計算能力の高い当事者(通常は、検証者)における複雑性の実装とのトレードオフとして、ランダムセレクション手法を採用して計算能力の乏しい当事者におけるプロトコルの暗号セキュリティを確保する。
本実施形態の認証プロトコルの主要な技術的特徴を非特許文献3〜5に開示された認証プロトコルにおける対応する要素と対比して示す。
【0076】
表1は、nが支配的パラメータであると仮定して、秘密鍵及び通信の次元を対比したものである。
【表1】
[この文献は図面を表示できません]
【0077】
表2は、証明者側における支配的な演算を対比して示すものである。本実施形態に係る認証プロトコルは、非特許文献3における主要要素である長いバイナリベクト転置(permutation)、非特許文献5における主要要素である非バイナリ有限体における演算を含まない。
【表2】
[この文献は図面を表示できません]
【0078】
表3は、レスポンスを対比して示す。
【表3】
[この文献は図面を表示できません]
【0079】
表4は、検証者側における支配的な演算を対比して示す。
【表4】
[この文献は図面を表示できません]
【産業上の利用可能性】
【0080】
高性能な計算機だけでなく情報処理能力の低いウェラブルデバイスやセンサーなどのデバイスを含む複雑なネットワークシステムを構築し、ITが新たなサービスと市場を創出する期待が高まっている。本発明に係る認証プロトコルは、そのようなシステムのためのセキュリティ技術として利用可能である。
【0081】
本発明に係る認証プロトコルでは、計算機資源の乏しいデバイス側の消費電力を大幅に抑えることができるため、応用範囲が格段に広まる。例えば、電力など重要インフラのセキュリティ、人への埋め込みもしくは携帯デバイスを活用したヘルスケアや高齢者向けサービス、様々なセンサーを活用した農業、漁業支援や災害対策システム、計算機を持ち歩かずとも利用可能な外出先での次世代クレジットカード決済など、市場の大きな応用しかもグローバルな市場への応用が期待できる。ウェアラブルデバイスを着用した作業員がロボットやセンサーと協調して働く制御システムなど、一見異なる応用に見えるものの融合もあり得る。それらの基盤技術として利用価値が高い。
図1
[この文献は図面を表示できません]
図2
[この文献は図面を表示できません]
図3
[この文献は図面を表示できません]
図4
[この文献は図面を表示できません]
図5
[この文献は図面を表示できません]
図6
[この文献は図面を表示できません]
図7
[この文献は図面を表示できません]
図8
[この文献は図面を表示できません]