(57)【特許請求の範囲】
【請求項１】
フィードバックシフトレジスタを備える記憶装置に記憶されている、鍵情報に基づいて初期値が生成された基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する評価装置であって、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付ける情報量受付手段と、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍが、前記受け付けられた鍵情報量Ｌ以上であるか否かを判定する判定手段と、
を備える評価装置。
【請求項２】
請求項１に記載の評価装置であって、
前記記憶装置は、更に、メモリを備え、
前記基礎情報は、前記フィードバックシフトレジスタに記憶されている第１の基礎情報と、前記メモリに記憶されている第２の基礎情報と、を含み、
前記擬似乱数生成器は、前記更新処理において、前記フィードバックシフトレジスタに記憶されている第１の基礎情報が、当該第１の基礎情報のみに基づいて更新され、且つ、前記メモリに記憶されている第２の基礎情報が、当該第２の基礎情報と前記第１の基礎情報とに基づいて更新されるように構成された評価装置。
【請求項３】
請求項２に記載の評価装置であって、
前記擬似乱数生成器は、前記生成処理において、前記フィードバックシフトレジスタに記憶されている第１の基礎情報と、前記メモリに記憶されている第２の基礎情報と、に基づいて前記擬似乱数を生成するように構成された評価装置。
【請求項４】
請求項１乃至請求項３のいずれかに記載の評価装置であって、
前記擬似乱数生成器により生成された擬似乱数は、ストリーム暗号方式における鍵ストリームとして用いられる、評価装置。
【請求項５】
フィードバックシフトレジスタを備える記憶装置に記憶されている、鍵情報に基づいて初期値が生成された基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する評価方法であって、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付け、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍが、前記受け付けられた鍵情報量Ｌ以上であるか否かを判定する、評価方法。
【請求項６】
情報処理装置に、
フィードバックシフトレジスタを備える記憶装置に記憶されている、鍵情報に基づいて初期値が生成された基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価させるための評価プログラムであって、
前記情報処理装置に、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付け、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍが、前記受け付けられた鍵情報量Ｌ以上であるか否かを判定する、処理を実行させるための評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、擬似乱数生成器の安全性を評価する評価装置に関する。
【背景技術】
【０００２】
擬似乱数を生成する擬似乱数生成器が知られている。この種の擬似乱数生成器の一つとして、特許文献１に記載の擬似乱数生成器は、フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返す。これにより、擬似乱数生成器は、鍵情報に基づく疑似乱数列を生成する。例えば、鍵情報は、基礎情報の初期値を生成するために用いられる。【０００３】
また、擬似乱数生成器に対する推測決定攻撃が知られている。推測決定攻撃は、生成される擬似乱数が既知である場合に、記憶装置に記憶されている基礎情報を仮定し、その仮定した基礎情報に基づいて生成される擬似乱数が、既知の擬似乱数と一致するか否かに基づいて、真の基礎情報を特定する攻撃である。【０００４】
推測決定攻撃に対する安全性を評価するための評価手法として、非特許文献１に一例が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２６５９６１号公報
【非特許文献】
【０００６】
【非特許文献１】井手口恒太、渡辺大、「推測決定攻撃に対する安全性評価の一手法」、暗号と情報セキュリティシンポジウム、ＳＣＩＳ２００８、２００８年１月、３Ａ１−４
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記評価手法は、擬似乱数生成器の安全性を評価するために要する計算負荷が、擬似乱数生成器が有する記憶装置の記憶容量が大きくなるほど大きくなる。従って、上記評価手法が適用された評価装置によれば、擬似乱数生成器の安全性を評価するために要する計算負荷が過大になってしまう場合が生じる、という問題があった。【０００８】
このため、本発明の目的は、上述した課題である「擬似乱数生成器の安全性を評価するために要する計算負荷が過大になってしまう場合が生じること」を解決することが可能な評価装置を提供することにある。
【課題を解決するための手段】
【０００９】
かかる目的を達成するため本発明の一形態である評価装置は、
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する装置である。【００１０】
更に、この評価装置は、
上記記憶装置に記憶されている基礎情報のうちの、１回の上記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の上記生成処理において上記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、上記擬似乱数の情報の量である擬似乱数情報量ｍと、上記鍵情報の量である鍵情報量Ｌと、を受け付ける情報量受付手段と、
上記受け付けられた処理基礎情報量Ｕから、上記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、上記受け付けられた鍵情報量Ｌと、に基づいて、上記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する判定手段と、
を備える。【００１１】
また、本発明の他の形態である評価方法は、
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する方法である。【００１２】
更に、この評価方法は、
上記記憶装置に記憶されている基礎情報のうちの、１回の上記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の上記生成処理において上記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、上記擬似乱数の情報の量である擬似乱数情報量ｍと、上記鍵情報の量である鍵情報量Ｌと、を受け付け、
上記受け付けられた処理基礎情報量Ｕから、上記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、上記受け付けられた鍵情報量Ｌと、に基づいて、上記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する方法である。【００１３】
また、本発明の他の形態である評価プログラムは、
情報処理装置に、
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価させるためのプログラムである。【００１４】
更に、この評価プログラムは、
上記情報処理装置に、
上記記憶装置に記憶されている基礎情報のうちの、１回の上記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の上記生成処理において上記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、上記擬似乱数の情報の量である擬似乱数情報量ｍと、上記鍵情報の量である鍵情報量Ｌと、を受け付け、
上記受け付けられた処理基礎情報量Ｕから、上記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、上記受け付けられた鍵情報量Ｌと、に基づいて、上記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する、処理を実行させるためのプログラムである。
【発明の効果】
【００１５】
本発明は、以上のように構成されることにより、擬似乱数生成器の安全性を評価するために要する計算負荷を低減することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１実施形態に係る評価装置の構成を表すブロック図である。
【図２】本発明の第１実施形態に係る疑似乱数生成器の構成を表すブロック図である。
【図３】擬似乱数生成器の機能の概要を示したブロック図である。
【図４】ＮＬＳｖ２と呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図５】ＭＵＧＩと呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図６】ＳＮＯＷ１．０と呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図７】ＳＮＯＷ２．０と呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図８】Ｓｏｓｅｍａｎｕｋと呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図９】Ｓｏｓｅｍａｎｕｋと呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図１０】Ｓｏｓｅｍａｎｕｋと呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図１１】Ｓｏｓｅｍａｎｕｋと呼ばれる擬似乱数生成器の機能の概要を示した説明図である。
【図１２】本発明の第２実施形態に係る評価装置の構成を表すブロック図である。
【発明を実施するための形態】
【００１７】
以下、本発明に係る、評価装置、評価方法、及び、評価プログラム、の各実施形態について図１〜図１２を参照しながら説明する。
【００１８】
＜第１実施形態＞
（構成）
図１に示したように、第１実施形態に係る評価装置１００は、情報処理装置である。なお、評価装置１００は、パーソナル・コンピュータ、携帯電話端末、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｃｅ、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、スマートフォン、カーナビゲーション端末、又は、ゲーム端末等であってもよい。
【００１９】
評価装置１００は、図示しない中央処理装置（ＣＰＵ；Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、記憶装置（メモリ及びハードディスク駆動装置（ＨＤＤ；Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ））、入力装置（本例では、キーボード、及び、マウス）、及び、出力装置（本例では、ディスプレイ）を備える。
【００２０】
評価装置１００は、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。本例では、評価装置１００は、擬似乱数生成器の安全性を評価する。
【００２１】
ここで、擬似乱数生成器について説明する。
図２に示したように、擬似乱数生成器２００は、フィードバックシフトレジスタ２０１と、第１の変換処理部２０２と、メモリ２０３と、マルチプレクサ２０４と、第２の変換処理部２０５と、バッファ２０６と、第３の変換処理部２０７と、を備える。
【００２２】
本例では、フィードバックシフトレジスタ２０１は、線形帰還シフトレジスタ（ＬＦＳＲ；Ｌｉｎｅａｒ  Ｆｅｅｄｂａｃｋ  Ｓｈｉｆｔ  Ｒｅｇｉｓｔｅｒ）である。フィードバックシフトレジスタ２０１は、複数のレジスタブロックを含む。複数のレジスタブロックのそれぞれは、予め定められた単位ビット数のビットを記憶する。単位ビット数は、例えば、３２、又は、６４等である。なお、フィードバックシフトレジスタ２０１に記憶されている情報は、第１の基礎情報と呼ばれる。
【００２３】
メモリ２０３は、複数のメモリブロックを含む。複数のメモリブロックのそれぞれは、予め定められた単位ビット数のビットを記憶する。単位ビット数は、例えば、３２、又は、６４等である。本例では、フィードバックシフトレジスタ２０１の単位ビット数と、メモリ２０３の単位ビット数と、は等しい。なお、メモリ２０３に記憶されている情報は、第２の基礎情報と呼ばれる。
【００２４】
また、フィードバックシフトレジスタ２０１及びメモリ２０３は、記憶装置を構成している。記憶装置に記憶されている情報（即ち、第１の基礎情報及び第２の基礎情報）は、基礎情報と呼ばれる。なお、記憶装置は、フィードバックシフトレジスタ２０１のみにより構成されていてもよい。また、フィードバックシフトレジスタ２０１は、線形帰還シフトレジスタに代えて、非線形帰還シフトレジスタであってもよい。
【００２５】
第１の変換処理部２０２は、第１の変換処理を実行する。第１の変換処理は、フィードバックシフトレジスタ２０１に記憶されている第１の更新処理基礎情報を予め定められた方式に従って第１の更新後基礎情報に変換し、変換後の第１の更新後基礎情報をフィードバックシフトレジスタ２０１へ出力する処理である。
【００２６】
第１の更新処理基礎情報は、フィードバックシフトレジスタ２０１に含まれる複数のレジスタブロックに記憶されている情報（第１の基礎情報）のうちの、予め定められたレジスタブロックに記憶されている情報である。また、第１の更新後基礎情報の量（データサイズ、又は、ビット数）は、１つのレジスタブロックに記憶される情報の量と同じである。
【００２７】
フィードバックシフトレジスタ２０１は、第１の更新後基礎情報が出力される際、各レジスタブロックに記憶されている情報を、複数のレジスタブロックを直列に並べた場合における一端側にて隣接するレジスタブロックに記憶されている情報に更新するとともに、当該一端を構成するレジスタブロックに記憶されている情報を、出力された第１の更新後基礎情報に更新する。
【００２８】
マルチプレクサ２０４は、フィードバックシフトレジスタ２０１に記憶されている第２の更新処理基礎情報、及び、メモリ２０３に記憶されている第３の更新処理基礎情報、の一部を第４の更新処理基礎情報として第２の変換処理部２０５へ出力する。
【００２９】
第２の更新処理基礎情報は、フィードバックシフトレジスタ２０１に含まれる複数のレジスタブロックに記憶されている情報（第１の基礎情報）のうちの、予め定められたレジスタブロックに記憶されている情報である。また、第３の更新処理基礎情報は、メモリ２０３に含まれる複数のメモリブロックに記憶されている情報（第２の基礎情報）のうちの、予め定められたメモリブロックに記憶されている情報である。
【００３０】
第２の変換処理部２０５は、第２の変換処理を実行する。第２の変換処理は、マルチプレクサ２０４により出力された第４の更新処理基礎情報、及び、メモリ２０３に記憶されている第５の更新処理基礎情報、を予め定められた方式に従って第２の更新後基礎情報に変換し、変換後の第２の更新後基礎情報をメモリ２０３へ出力する処理である。
【００３１】
第５の更新処理基礎情報は、メモリ２０３に含まれる複数のメモリブロックに記憶されている情報（第２の基礎情報）のうちの、予め定められたメモリブロックに記憶されている情報である。
【００３２】
メモリ２０３は、メモリ２０３に含まれる複数のメモリブロックのうちの予め定められたメモリブロックに記憶されている情報を、第２の変換処理部２０５により出力された第２の更新後基礎情報に更新する。
【００３３】
バッファ２０６は、フィードバックシフトレジスタ２０１に記憶されている第１の生成処理基礎情報、及び、メモリ２０３に記憶されている第２の生成処理基礎情報を記憶する。
第３の変換処理部２０７は、第３の変換処理を実行する。第３の変換処理は、バッファ２０６に記憶されている情報を、予め定められた方式に従って、擬似乱数としての出力情報に変換し、変換後の出力情報を出力する処理である。本例では、出力情報の量は、１つのレジスタブロックに記憶されている情報の量、及び、１つのメモリブロックに記憶されている情報の量と同じである。
【００３４】
擬似乱数生成器２００は、記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すように構成される。これにより、擬似乱数生成器２００は、鍵情報に基づく疑似乱数列を生成する。
【００３５】
例えば、擬似乱数生成器２００は、鍵情報に基づいて基礎情報の初期値を生成するように構成される。また、擬似乱数生成器２００は、第１の変換処理、第２の変換処理、及び、第３の変換処理の少なくとも１つにおいて、鍵情報を用いるように構成されていてもよい。
【００３６】
また、本例では、擬似乱数生成器２００は、クロック信号に同期して作動するように構成される。即ち、擬似乱数生成器２００は、クロック信号における１つのクロック周期において、１回の更新処理と、１回の生成処理と、を実行するように構成される。
【００３７】
更新処理は、第１の更新処理と、第２の更新処理と、を含む。
第１の更新処理は、上述したように、第１の変換処理部２０２が第１の変換処理を実行し、且つ、フィードバックシフトレジスタ２０１が、第１の変換処理部２０２により出力された第１の更新後基礎情報に基づいて、各レジスタブロックに記憶されている情報を更新する処理である。
【００３８】
第２の更新処理は、上述したように、第２の変換処理部２０５が第２の変換処理を実行し、且つ、メモリ２０３が、第２の変換処理部２０５により出力された第２の更新後基礎情報に基づいて、各メモリブロックに記憶されている情報を更新する処理である。
【００３９】
また、生成処理は、上述したように、第３の変換処理部２０７が第３の変換処理を実行する処理である。
【００４０】
このように、擬似乱数生成器２００は、更新処理において、フィードバックシフトレジスタ２０１に記憶されている第１の基礎情報が、当該第１の基礎情報のみに基づいて更新され、且つ、メモリ２０３に記憶されている第２の基礎情報が、当該第２の基礎情報と第１の基礎情報とに基づいて更新されるように構成される、と言うことができる。
【００４１】
また、擬似乱数生成器２００は、生成処理において、フィードバックシフトレジスタ２０１に記憶されている第１の基礎情報と、メモリ２０３に記憶されている第２の基礎情報と、に基づいて擬似乱数を生成するように構成される、と言うことができる。
【００４２】
なお、擬似乱数生成器２００により生成された擬似乱数は、ストリーム暗号方式における鍵ストリームとして用いられてもよい。即ち、擬似乱数生成器２００は、生成した擬似乱数を鍵ストリームとして用いる暗号化装置の一部を構成していてもよい。
【００４３】
ところで、擬似乱数生成器２００の安全性は、擬似乱数生成器２００により生成された擬似乱数を鍵ストリームとして用いるストリーム暗号方式の安全性と対応している。従って、第１実施形態に係る評価装置１００によれば、当該ストリーム暗号方式を用いる暗号装置の安全性を評価するために要する計算負荷を低減することもできる。
【００４４】
（推測決定攻撃）
次に、推測決定攻撃について説明する。図３は、擬似乱数生成器２００の機能の概要を示したブロック図である。擬似乱数生成器２００の機能は、記憶装置Ｇ１と、更新処理実行部Ｇ２と、生成処理実行部Ｇ３と、を含む。
【００４５】
即ち、記憶装置Ｇ１は、フィードバックシフトレジスタ２０１及びメモリ２０３に対応している。更新処理実行部Ｇ２は、更新処理を実行する。生成処理実行部Ｇ３は、生成処理を実行する。
【００４６】
ここでは、説明を簡単にするために、記憶装置Ｇ１が、８つの記憶ブロック（レジスタブロック又はメモリブロック）ｓ０〜ｓ７を備える場合を想定する。また、更新処理基礎情報が、記憶ブロックｓ２及び記憶ブロックｓ５に記憶されている情報であり、生成処理基礎情報が、記憶ブロックｓ２及び記憶ブロックｓ４に記憶されている情報である場合を想定する。
【００４７】
ここで、更新処理基礎情報は、１回の更新処理において基礎情報を更新するために用いられる情報である。また、生成処理基礎情報は、１回の生成処理において擬似乱数を生成するために用いられる情報である。また、処理基礎情報は、基礎情報のうちの、更新処理基礎情報及び生成処理基礎情報の少なくとも一方に含まれる情報である。即ち、処理基礎情報は、記憶ブロックｓ２、記憶ブロックｓ４、及び、記憶ブロックｓ５に記憶されている情報である。
【００４８】
先ず、推測決定攻撃においては、処理基礎情報の一部が仮定される。例えば、記憶ブロックｓ４及び記憶ブロックｓ５に記憶されている情報（仮定部分）が仮定される。そして、仮定部分と、既知の擬似乱数と、を用いることにより、処理基礎情報のうちの残余（仮定部分以外）の部分（非仮定部分、即ち、記憶ブロックｓ２に記憶されている情報）が逆算される。
【００４９】
その後、同様の処理を繰り返すことにより、記憶装置Ｇ１に記憶されている情報のすべてが特定される。そして、更に、同様の処理を繰り返すことにより、鍵情報を特定することができる。
【００５０】
ところで、推測決定攻撃における最初のステップにおいては、処理基礎情報のうちの、判定基準量Ｕ−ｍを有する部分（仮定部分）を仮定する必要がある。ここで、判定基準量Ｕ−ｍは、処理基礎情報量Ｕから擬似乱数情報量ｍを減じた値である。処理基礎情報量Ｕは、処理基礎情報の量である。また、擬似乱数情報量ｍは、擬似乱数の情報の量である。
【００５１】
ところで、仮定部分と既知の擬似乱数とから非仮定部分を逆算する処理は、仮定部分の量が大きくなるほど多くなる回数だけ実行される。従って、推測決定攻撃における最初のステップにおける計算負荷は、判定基準量Ｕ−ｍが大きくなるほど大きくなる。
【００５２】
ところで、擬似乱数生成器２００に対して、すべての鍵情報のそれぞれを入力することにより、擬似乱数を生成させ、生成された擬似乱数と既知の擬似乱数とが一致しているか否かに基づいて、鍵情報を特定する攻撃（総当たり攻撃、又は、鍵の全数探索等とも呼ばれる）に要する計算負荷は、鍵情報量Ｌが大きくなるほど大きくなる。
【００５３】
従って、判定基準量Ｕ−ｍと、鍵情報量Ｌと、に基づいて、擬似乱数生成器２００が推測決定攻撃に対して安全である（即ち、推測決定攻撃に要する計算負荷が総当たり攻撃に要する計算負荷以上である）か否かを十分に高い精度にて判定することができる。
【００５４】
（機能）
次に、評価装置１００の機能について説明する。図１は、評価装置１００の機能を表すブロック図である。評価装置１００の機能は、情報量受付部（情報量受付手段）１０１と、判定部（判定手段）１０２と、出力部１０３と、を含む。
【００５５】
情報量受付部１０１は、処理基礎情報量Ｕと、擬似乱数情報量ｍと、鍵情報量Ｌと、を受け付ける。
処理基礎情報量Ｕは、記憶装置に記憶されている基礎情報のうちの、更新処理基礎情報及び生成処理基礎情報の量である。即ち、処理基礎情報量Ｕは、基礎情報のうちの、更新処理基礎情報及び生成処理基礎情報の少なくとも一方に含まれる情報の量である。
【００５６】
ここで、更新処理基礎情報は、１回の更新処理において基礎情報を更新するために用いられる情報である。即ち、本例では、更新処理基礎情報は、基礎情報のうちの、第１の更新処理基礎情報、第２の更新処理基礎情報、第３の更新処理基礎情報、及び、第５の更新処理基礎情報の少なくとも１つに含まれる情報である。
【００５７】
また、生成処理基礎情報は、１回の生成処理において擬似乱数を生成するために用いられる情報である。即ち、本例では、生成処理基礎情報は、基礎情報のうちの、第１の生成処理基礎情報、及び、第２の生成処理基礎情報の少なくとも１つに含まれる情報である。
また、擬似乱数情報量ｍは、擬似乱数の情報の量である。鍵情報量Ｌは、鍵情報の量である。
【００５８】
本例では、情報量受付手段１０１は、入力装置を介してユーザによって入力された情報を受け付ける。なお、情報量受付手段１０１は、外部の装置から情報を受信することにより情報を受け付けるように構成されていてもよい。
【００５９】
判定部１０２は、情報量受付部１０１により受け付けられた処理基礎情報量Ｕから、情報量受付部１０１により受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍを取得（算出）する。
【００６０】
更に、判定部１０２は、取得された判定基準量Ｕ−ｍが、情報量受付部１０１により受け付けられた鍵情報量Ｌ以上であるか否かを判定する。
【００６１】
そして、判定部１０２は、判定基準量Ｕ−ｍが鍵情報量Ｌ以上であると判定された場合、擬似乱数生成器２００が推測決定攻撃に対して安全であると判定する。一方、判定部１０２は、判定基準量Ｕ−ｍが鍵情報量Ｌよりも小さいと判定された場合、擬似乱数生成器２００が推測決定攻撃に対して安全でないと判定する。
【００６２】
このように、判定部１０２は、判定基準量Ｕ−ｍと、鍵情報量Ｌと、に基づいて擬似乱数生成器２００が推測決定攻撃に対して安全であるか否かを判定する、と言うことができる。
【００６３】
出力部１０３は、判定部１０２による判定の結果を表す判定結果情報を、出力装置を介して出力する。
【００６４】
次に、擬似乱数生成器２００に対する処理基礎情報量Ｕについて、具体例を参照しながら説明する。
【００６５】
図４に示したように、ＮＬＳｖ２と呼ばれる擬似乱数生成器２００が知られている（例えば、非特許文献２を参照）。
【非特許文献２】Philip Hawkes、Cameron McDonald、Michael Paddon、Gregory G. Rose、Miriam Wiggers de Vries、「Specification for NLSv2」、The eSTREAM Finalists 2008、Lecture Notes in Computer Science、Springer、2008年、Vol. 4986、pp.57-68
【００６６】
この擬似乱数生成器２００においては、処理基礎情報は、８個の記憶ブロック（レジスタブロック又はメモリブロック）に記憶されている情報である。具体的には、記憶ブロックＡ１〜Ａ２に記憶されている情報は、更新処理基礎情報を構成する。また、記憶ブロックＢ１〜Ｂ４に記憶されている情報は、生成処理基礎情報を構成する。また、記憶ブロックＡＢ１〜ＡＢ２に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。
【００６７】
従って、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、処理基礎情報量Ｕは、２５６（＝８×３２）ビットである。
【００６８】
また、図５に示したように、ＭＵＧＩと呼ばれる擬似乱数生成器２００が知られている（例えば、非特許文献３を参照）。
【非特許文献３】Dai Watanabe、Soichi Furuya、Hirotaka Yoshida、Kazuo Takaragi、Bart Preneel、「A New Keystream Generator MUGI」、FSE 2002、Lecture Notes in Computer Science、Springer、2002年、Vol. 2365、pp.179-194
【００６９】
この擬似乱数生成器２００においては、処理基礎情報は、１０個の記憶ブロックに記憶されている情報である。具体的には、記憶ブロックＡ１〜Ａ７に記憶されている情報は、更新処理基礎情報を構成する。また、記憶ブロックＡＢ１〜ＡＢ３に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。
【００７０】
従って、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、処理基礎情報量Ｕは、３２０（＝１０×３２）ビットである。
【００７１】
また、図６に示したように、ＳＮＯＷ１．０と呼ばれる擬似乱数生成器２００が知られている（例えば、非特許文献４を参照）。
【非特許文献４】Patrik Ekdahl、Thomas Johansson、「SNOW - a new stream cipher」、Proceedings of first NESSIE Workshop、Heverlee、Belgium、2000年
【００７２】
この擬似乱数生成器２００においては、処理基礎情報は、６個の記憶ブロックに記憶されている情報である。具体的には、記憶ブロックＡ１〜Ａ２に記憶されている情報は、更新処理基礎情報を構成する。また、記憶ブロックＡＢ１〜ＡＢ４に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。
【００７３】
従って、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、処理基礎情報量Ｕは、１９２（＝６×３２）ビットである。
【００７４】
また、図７に示したように、ＳＮＯＷ２．０と呼ばれる擬似乱数生成器２００が知られている（例えば、非特許文献５を参照）。
【非特許文献５】Patrik Ekdahl、Thomas Johansson、「A New Version of the Stream Cipher SNOW」、Selected Areas inCryptography 2002、Lecture Notes in Computer Science、Springer、2003年、Vol. 2595、pp.47-61
【００７５】
この擬似乱数生成器２００においては、処理基礎情報は、６個の記憶ブロックに記憶されている情報である。具体的には、記憶ブロックＡ１〜Ａ２に記憶されている情報は、更新処理基礎情報を構成する。また、記憶ブロックＡＢ１〜ＡＢ４に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。
【００７６】
従って、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、処理基礎情報量Ｕは、１９２（＝６×３２）ビットである。
【００７７】
また、図８〜図１１に示したように、Ｓｏｓｅｍａｎｕｋと呼ばれる擬似乱数生成器２００が知られている（例えば、非特許文献６を参照）。
【非特許文献６】Come Berbain、Olivier Billet、Anne Canteaut、Nicolas Courtois、Henri Gilbert、Louis Goubin、Aline Gouget、Louis Granboulan、Cedric Lauradoux、Marine Minier、Thomas Pornin、Herve Sibert、「Sosemanuk, a Fast Software-Oriented Stream Cipher」、The eSTREAMFinalists 2008、Lecture Notes in Computer Science、Springer、2008年、Vol. 4986、pp.98-118
【００７８】
この擬似乱数生成器２００は、クロック信号における、連続する４つのクロック周期において、１回の更新処理と、１回の生成処理と、を実行するように構成される。
【００７９】
第１のクロック周期において、図８に示したように、擬似乱数生成器２００は、記憶ブロックＡ１〜Ａ３に記憶されている情報を、第１のクロック周期に後続する第２のクロック周期における基礎情報を更新するために用いる。更に、第１のクロック周期において、図８に示したように、擬似乱数生成器２００は、記憶ブロックＡＢ１〜ＡＢ４に記憶されている情報を、第２のクロック周期における基礎情報を更新するために用いるとともに、擬似乱数を生成するために用いる。
【００８０】
従って、第１のクロック周期においては、記憶ブロックＡ１〜Ａ３に記憶されている情報は、更新処理基礎情報を構成する。また、第１のクロック周期においては、記憶ブロックＡＢ１〜ＡＢ４に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。即ち、第１のクロック周期においては、記憶ブロックＡ１〜Ａ３，ＡＢ１〜ＡＢ４に記憶されている情報は、処理基礎情報を構成する。
【００８１】
更に、第２のクロック周期において、図９に示したように、擬似乱数生成器２００は、記憶ブロックＡ４〜Ａ５，Ｃ２に記憶されている情報を、第２のクロック周期に後続する第３のクロック周期における基礎情報を更新するために用いる。更に、第２のクロック周期において、図９に示したように、擬似乱数生成器２００は、記憶ブロックＣ１，Ｃ５〜Ｃ７に記憶されている情報を、第３のクロック周期における基礎情報を更新するために用いるとともに、擬似乱数を生成するために用いる。
【００８２】
なお、記憶ブロックＣ１〜Ｃ７に記憶されている情報は、第１のクロック周期において処理基礎情報を構成する情報（即ち、記憶ブロックＡ１〜Ａ３，ＡＢ１〜ＡＢ４に記憶されている情報）に基づいて取得される。従って、第２のクロック周期においては、記憶ブロックＡ４，Ａ５に記憶されている情報は、更新処理基礎情報を構成する。即ち、記憶ブロックＡ４，Ａ５に記憶されている情報は、処理基礎情報を構成する。
【００８３】
更に、第３のクロック周期において、図１０に示したように、擬似乱数生成器２００は、記憶ブロックＡ６，Ｃ９，Ｃ１３に記憶されている情報を、第３のクロック周期に後続する第４のクロック周期における基礎情報を更新するために用いる。更に、第３のクロック周期において、図１０に示したように、擬似乱数生成器２００は、記憶ブロックＣ８，Ｃ１４〜Ｃ１６に記憶されている情報を、第４のクロック周期における基礎情報を更新するために用いるとともに、擬似乱数を生成するために用いる。
【００８４】
なお、記憶ブロックＣ８〜Ｃ１６に記憶されている情報は、第１のクロック周期及び第２のクロック周期において処理基礎情報を構成する情報（即ち、記憶ブロックＡ１〜Ａ５，ＡＢ１〜ＡＢ４に記憶されている情報）に基づいて取得される。従って、第３のクロック周期においては、記憶ブロックＡ６に記憶されている情報は、更新処理基礎情報を構成する。即ち、記憶ブロックＡ６に記憶されている情報は、処理基礎情報を構成する。
【００８５】
更に、第４のクロック周期において、図１１に示したように、擬似乱数生成器２００は、記憶ブロックＡ７，Ｃ１８，Ｃ２３に記憶されている情報を、第４のクロック周期に後続する第１のクロック周期における基礎情報を更新するために用いる。更に、第４のクロック周期において、図１１に示したように、擬似乱数生成器２００は、記憶ブロックＣ１７，Ｃ２４〜Ｃ２６に記憶されている情報を、第１のクロック周期における基礎情報を更新するために用いるとともに、擬似乱数を生成するために用いる。
【００８６】
なお、記憶ブロックＣ１７〜Ｃ２６に記憶されている情報は、第１のクロック周期、第２のクロック周期、及び、第３のクロック周期において処理基礎情報を構成する情報（即ち、記憶ブロックＡ１〜Ａ６，ＡＢ１〜ＡＢ４に記憶されている情報）に基づいて取得される。従って、第４のクロック周期においては、記憶ブロックＡ７に記憶されている情報は、更新処理基礎情報を構成する。即ち、記憶ブロックＡ７に記憶されている情報は、処理基礎情報を構成する。
【００８７】
このように、この擬似乱数生成器２００においては、処理基礎情報は、１１個の記憶ブロックに記憶されている情報である。上述したように、記憶ブロックＡ１〜Ａ７に記憶されている情報は、更新処理基礎情報を構成する。また、記憶ブロックＡＢ１〜ＡＢ４に記憶されている情報は、更新処理基礎情報を構成するとともに、生成処理基礎情報を構成する。
【００８８】
従って、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、処理基礎情報量Ｕは、３５２（＝１１×３２）ビットである。
【００８９】
また、この擬似乱数生成器２００は、第４のクロック周期において、各記憶ブロックに記憶されている情報の量の４倍の量を有する擬似乱数（出力情報）を生成する。即ち、この擬似乱数生成器２００においては、各記憶ブロックに記憶されるビットの数（単位ビット数）が３２である場合、擬似乱数情報量ｍは、１２８（＝４×３２）ビットである。
【００９０】
（作動）
次に、上述した評価装置１００の作動について説明する。
先ず、評価装置１００は、ユーザにより入力された、処理基礎情報量Ｕと、擬似乱数情報量ｍと、鍵情報量Ｌと、を受け付ける。次いで、評価装置１００は、受け付けられた処理基礎情報量Ｕから、受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍを取得（算出）する。
【００９１】
そして、評価装置１００は、取得された判定基準量Ｕ−ｍが、受け付けられた鍵情報量Ｌ以上であるか否かを判定する。
【００９２】
次いで、評価装置１００は、判定基準量Ｕ−ｍが鍵情報量Ｌ以上であると判定された場合、擬似乱数生成器２００が推測決定攻撃に対して安全であると判定する。一方、評価装置１００は、判定基準量Ｕ−ｍが鍵情報量Ｌよりも小さいと判定された場合、擬似乱数生成器２００が推測決定攻撃に対して安全でないと判定する。
【００９３】
そして、評価装置１００は、判定の結果を表す判定結果情報を、出力装置を介して出力する。
【００９４】
以上、説明したように、本発明の第１実施形態に係る評価装置１００によれば、擬似乱数生成器２００の安全性を十分に高い精度にて判定しながら、擬似乱数生成器２００の安全性を評価するために要する計算負荷を低減することができる。
【００９５】
なお、第１実施形態に係る評価装置１００においては、１つのレジスタブロックに記憶されている情報の量と、１つのメモリブロックに記憶されている情報の量と、生成される擬似乱数の情報の量と、は同じであった。ところで、１つのレジスタブロックに記憶されている情報の量と、１つのメモリブロックに記憶されている情報の量と、生成される擬似乱数の情報の量と、は、互いに異なる量であってもよい。また、１つのレジスタブロックに記憶されている情報の量と、１つのメモリブロックに記憶されている情報の量と、生成される擬似乱数の情報の量と、のうちの任意の１つが、他の２つと異なる量であってもよい。
【００９６】
＜第２実施形態＞
次に、本発明の第２実施形態に係る評価装置について図１２を参照しながら説明する。
第２実施形態に係る評価装置５００は、
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する装置である。
【００９７】
更に、この評価装置５００は、
上記記憶装置に記憶されている基礎情報のうちの、１回の上記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の上記生成処理において上記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、上記擬似乱数の情報の量である擬似乱数情報量ｍと、上記鍵情報の量である鍵情報量Ｌと、を受け付ける情報量受付部（情報量受付手段）５０１と、
上記受け付けられた処理基礎情報量Ｕから、上記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、上記受け付けられた鍵情報量Ｌと、に基づいて、上記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する判定部（判定手段）５０２と、
を備える。
【００９８】
ところで、推測決定攻撃においては、先ず、処理基礎情報のうちの、判定基準量Ｕ−ｍを有する部分（仮定部分）が仮定される。そして、仮定部分と、既知の擬似乱数と、を用いることにより、処理基礎情報のうちの仮定部分以外の部分（非仮定部分）が逆算される。従って、この段階までの、推測決定攻撃における計算負荷は、判定基準量Ｕ−ｍによりよく表される。
【００９９】
ところで、擬似乱数生成器に対して、すべての鍵情報のそれぞれを入力することにより、擬似乱数を生成させ、生成された擬似乱数と既知の擬似乱数とが一致しているか否かに基づいて、鍵情報を特定する攻撃（総当たり攻撃、又は、鍵の全数探索等とも呼ばれる）に要する計算負荷は、鍵情報量Ｌによりよく表される。
【０１００】
従って、上記構成によれば、擬似乱数生成器の安全性を十分に高い精度にて判定しながら、擬似乱数生成器の安全性を評価するために要する計算負荷を低減することができる。
【０１０１】
以上、上記実施形態を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
【０１０２】
なお、上記各実施形態において評価装置１００の各機能は、ＣＰＵがプログラム（ソフトウェア）を実行することにより実現されていたが、回路等のハードウェアにより実現されていてもよい。
【０１０３】
また、上記各実施形態においてプログラムは、記憶装置に記憶されていたが、コンピュータが読み取り可能な記録媒体に記憶されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【０１０４】
また、上記実施形態の他の変形例として、上述した実施形態及び変形例の任意の組み合わせが採用されてもよい。
【０１０５】
＜付記＞
上記実施形態の一部又は全部は、以下の付記のように記載され得るが、以下には限られない。
【０１０６】
（付記１）
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する評価装置であって、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付ける情報量受付手段と、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、前記受け付けられた鍵情報量Ｌと、に基づいて、前記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する判定手段と、
を備える評価装置。
【０１０７】
ところで、推測決定攻撃においては、先ず、処理基礎情報のうちの、判定基準量Ｕ−ｍを有する部分（仮定部分）が仮定される。そして、仮定部分と、既知の擬似乱数と、を用いることにより、処理基礎情報のうちの仮定部分以外の部分（非仮定部分）が逆算される。従って、この段階までの、推測決定攻撃における計算負荷は、判定基準量Ｕ−ｍによりよく表される。
【０１０８】
ところで、擬似乱数生成器に対して、すべての鍵情報のそれぞれを入力することにより、擬似乱数を生成させ、生成された擬似乱数と既知の擬似乱数とが一致しているか否かに基づいて、鍵情報を特定する攻撃（総当たり攻撃、又は、鍵の全数探索等とも呼ばれる）に要する計算負荷は、鍵情報量Ｌによりよく表される。
【０１０９】
従って、上記構成によれば、擬似乱数生成器の安全性を十分に高い精度にて判定しながら、擬似乱数生成器の安全性を評価するために要する計算負荷を低減することができる。
【０１１０】
（付記２）
付記１に記載の評価装置であって、
前記判定手段は、前記判定基準量Ｕ−ｍが、前記鍵情報量Ｌ以上である場合、前記擬似乱数生成器が推測決定攻撃に対して安全であると判定するように構成された評価装置。
【０１１１】
ところで、判定基準量Ｕ−ｍが鍵情報量Ｌ以上である場合、推測決定攻撃に要する計算負荷が、総当たり攻撃に要する計算負荷以上であると言うことができる。従って、上記構成によれば、擬似乱数生成器の安全性を十分に高い精度にて判定することができる。
【０１１２】
（付記３）
付記１又は付記２に記載の評価装置であって、
前記記憶装置は、更に、メモリを備え、
前記基礎情報は、前記フィードバックシフトレジスタに記憶されている第１の基礎情報と、前記メモリに記憶されている第２の基礎情報と、を含み、
前記擬似乱数生成器は、前記更新処理において、前記フィードバックシフトレジスタに記憶されている第１の基礎情報が、当該第１の基礎情報のみに基づいて更新され、且つ、前記メモリに記憶されている第２の基礎情報が、当該第２の基礎情報と前記第１の基礎情報とに基づいて更新されるように構成された評価装置。
【０１１３】
（付記４）
付記３に記載の評価装置であって、
前記擬似乱数生成器は、前記生成処理において、前記フィードバックシフトレジスタに記憶されている第１の基礎情報と、前記メモリに記憶されている第２の基礎情報と、に基づいて前記擬似乱数を生成するように構成された評価装置。
【０１１４】
（付記５）
付記１乃至付記４のいずれかに記載の評価装置であって、
前記擬似乱数生成器により生成された擬似乱数は、ストリーム暗号方式における鍵ストリームとして用いられる、評価装置。
【０１１５】
ところで、擬似乱数生成器の安全性は、擬似乱数生成器により生成された擬似乱数を鍵ストリームとして用いるストリーム暗号方式の安全性と対応している。従って、上記のように構成された評価装置によれば、当該ストリーム暗号方式を用いる暗号装置の安全性を評価するために要する計算負荷を低減することもできる。
【０１１６】
（付記６）
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価する評価方法であって、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付け、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、前記受け付けられた鍵情報量Ｌと、に基づいて、前記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する、評価方法。
【０１１７】
（付記７）
付記６に記載の評価方法であって、
前記判定基準量Ｕ−ｍが、前記鍵情報量Ｌ以上である場合、前記擬似乱数生成器が推測決定攻撃に対して安全であると判定するように構成された評価方法。
【０１１８】
（付記８）
情報処理装置に、
フィードバックシフトレジスタを備える記憶装置に記憶されている基礎情報に基づいて擬似乱数を生成する生成処理と、当該記憶装置に記憶されている基礎情報に基づいて当該基礎情報を更新する更新処理と、を交互に繰り返すことにより、鍵情報に基づく疑似乱数列を生成する擬似乱数生成器の安全性を評価させるための評価プログラムであって、
前記情報処理装置に、
前記記憶装置に記憶されている基礎情報のうちの、１回の前記更新処理において当該基礎情報を更新するために用いられる情報、及び、１回の前記生成処理において前記擬似乱数を生成するために用いられる情報の量である処理基礎情報量Ｕと、前記擬似乱数の情報の量である擬似乱数情報量ｍと、前記鍵情報の量である鍵情報量Ｌと、を受け付け、
前記受け付けられた処理基礎情報量Ｕから、前記受け付けられた擬似乱数情報量ｍを減じた値である判定基準量Ｕ−ｍと、前記受け付けられた鍵情報量Ｌと、に基づいて、前記擬似乱数生成器が推測決定攻撃に対して安全であるか否かを判定する、処理を実行させるための評価プログラム。
【０１１９】
（付記９）
付記８に記載の評価プログラムであって、
前記判定基準量Ｕ−ｍが、前記鍵情報量Ｌ以上である場合、前記擬似乱数生成器が推測決定攻撃に対して安全であると判定するように構成された評価プログラム。
【０１２０】
なお、本発明は、日本国にて２０１２年２月１５日に特許出願された特願２０１２−０３０４６９の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願に記載された内容は、全て本明細書に含まれるものとする。
【産業上の利用可能性】
【０１２１】
本発明は、擬似乱数生成器の安全性を評価する評価装置等に適用可能である。
【符号の説明】
【０１２２】
１００  評価装置
１０１  情報量受付部
１０２  判定部
１０３  出力部
２００  擬似乱数生成器
２０１  フィードバックシフトレジスタ
２０２  第１の変換処理部
２０３  メモリ
２０４  マルチプレクサ
２０５  第２の変換処理部
２０６  バッファ
２０７  第３の変換処理部
５００  評価装置
５０１  情報量受付部
５０２  判定部
【図１】
0005858503.tif 000002
【図２】
0005858503.tif 000003
【図３】
0005858503.tif 000004
【図４】
0005858503.tif 000005
【図５】
0005858503.tif 000006
【図６】
0005858503.tif 000007
【図７】
0005858503.tif 000008
【図８】
0005858503.tif 000009
【図９】
0005858503.tif 000010
【図１０】
0005858503.tif 000011
【図１１】
0005858503.tif 000012
【図１２】
0005858503.tif 000013