暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する実行手段と、該すべてのワード、すべてのビットについてt回の処理を実行後に、前記出現回数算定手段における出現回数から出現頻度を算出する出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置。暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する実行手段と、該すべてのワード、すべてのビットについてt回の処理を実行後に、前記出現回数算定手段における出現回数から出現頻度を算出する出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置。前記偏り算出手段が、偏りの中心値の算出をワード長ごとに実行することを特徴とする請求項1または請求項2に記載の評価装置。前記入力手段に入力されるパラメータに並列度が含まれる場合に、前記出現頻度算出手段および偏り算出手段が並列度に応じて演算の並列処理を行うことを特徴とする請求項1または請求項2に記載の評価装置。暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行する第1の実行手段と、該t回実行後の前記出現回数算定手段における出現回数から出現頻度を算出する第1の出現頻度算出手段と、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t ́回実行する第2の実行手段と、該t ́回実行後の前記出現回数算定手段における出現回数から出現頻度を算出する第2の出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、前記演算手段による演算、出現回数算定手段による出現回数の算定、第1の出現頻度算出手段および第2の出現頻度算出手段による出現頻度の算出、偏り算出手段によるすべてのビットにおける偏りの中心値の算出をすべてのワードおよびすべてのビットについて実行する第3の実行手段と、該算出した偏りが所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置。前記第1の偏り算出手段および第2の偏り算出手段が、偏りの中心値の算出をワード長ごとに実行することを特徴とする請求項4に記載の評価装置。前記入力手段に入力されるパラメータに並列度が含まれる場合に、前記第1の出現頻度算出手段、第1の出現頻度算出手段、第1の偏り算出手段および第2の偏り算出手段が並列度に応じて演算の並列処理を行うことを特徴とする請求項4に記載の評価装置。暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第5のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、を備えたことを特徴とする評価方法。暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第6のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、を備えたことを特徴とする評価方法。暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行する第5のステップと、該t回実行後に、出現回数から出現頻度を算出する第6のステップと、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する第7のステップと、該t ́回実行後に、出現回数から出現頻度を算出する第8のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第9のステップと、すべてのワードおよびすべてのビットについて前記第3のステップから第9のステップを実行させる第10のステップと、該算出した偏りが所定の閾値を超えている場合に、警告を行う第11のステップと、を備えたことを特徴とする評価方法。暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第5のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、をコンピュータに実行させるためのプログラム。暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第6のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、をコンピュータに実行させるためのプログラム。暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行する第5のステップと、該t回実行後に、出現回数から出現頻度を算出する第6のステップと、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する第7のステップと、該t ́回実行後に、出現回数から出現頻度を算出する第8のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第9のステップと、すべてのワードおよびすべてのビットについて前記第3のステップから第9のステップを実行させる第10のステップと、該算出した偏りが所定の閾値を超えている場合に、警告を行う第11のステップと、をコンピュータに実行させるためのプログラム。任意の暗号方式に対して自動的にビットの偏りを統計的に計算し、評価する手法は存在しなかった。しかしながら、そこで、本発明は、上述の課題に鑑みてなされたものであり、利用者が指定した任意の暗号方式に対してビットの統計的偏りを求め、自動的に安全性を評価し判定する評価装置、評価方法およびプログラムを提供することを目的とする。本発明は、上記の課題を解決するために、以下の事項を提案している。なお、理解を容易にするために、本発明の実施形態に対応する符号を付して説明するが、これに限定されるものではない。1本発明は、暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する実行手段と、該すべてのワード、すべてのビットについてt回の処理を実行後に、前記出現回数算定手段における出現回数から出現頻度を算出する出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置を提案している。この発明によれば、入力手段は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する。入力データ生成手段は、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。演算手段は、2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する。出現回数算定手段は、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。実行手段は、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する。出現頻度算出手段は、すべてのワード、すべてのビットについてt回の処理を実行後に、出現回数算定手段における出現回数から出現頻度を算出する。偏り算出手段は、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。警告手段は、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。2本発明は、暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する実行手段と、該すべてのワード、すべてのビットについてt回の処理を実行後に、前記出現回数算定手段における出現回数から出現頻度を算出する出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置を提案している。この発明によれば、入力手段は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する。入力データ生成手段は、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。演算手段は、2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する。出現回数算定手段は、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。実行手段は、2つの入力データX、X ́の選択した秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する。出現頻度算出手段は、すべてのワード、すべてのビットについてt回の処理を実行後に、出現回数算定手段における出現回数から出現頻度を算出する。偏り算出手段は、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。警告手段は、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。3本発明は、1または2の評価装置について、前記偏り算出手段が、偏りの中心値の算出をワード長ごとに実行することを特徴とする評価装置を提案している。この発明によれば、偏り算出手段は、偏りの中心値の算出をワード長ごとに実行する。これにより、計算処理を高速化することができる。4本発明は、1または2の評価装置について、前記入力手段に入力されるパラメータに並列度が含まれる場合に、前記出現頻度算出手段および偏り算出手段が並列度に応じて演算の並列処理を行うことを特徴とする評価装置を提案している。この発明によれば、入力手段に入力されるパラメータに並列度が含まれる場合に、出現頻度算出手段および偏り算出手段が並列度に応じて演算の並列処理を行う。これにより、計算時間を短縮することができる。5本発明は、暗号方式の安全性を評価する評価装置であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する入力手段と、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する入力データ生成手段と、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する演算手段と、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする出現回数算定手段と、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行する第1の実行手段と、該t回実行後の前記出現回数算定手段における出現回数から出現頻度を算出する第1の出現頻度算出手段と、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t ́回実行する第2の実行手段と、該t ́回実行後の前記出現回数算定手段における出現回数から出現頻度を算出する第2の出現頻度算出手段と、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する偏り算出手段と、前記演算手段による演算、出現回数算定手段による出現回数の算定、第1の出現頻度算出手段および第2の出現頻度算出手段による出現頻度の算出、偏り算出手段によるすべてのビットにおける偏りの中心値の算出をすべてのワードおよびすべてのビットについて実行する第3の実行手段と、該算出した偏りが所定の閾値を超えている場合に、警告を行う警告手段と、を備えたことを特徴とする評価装置を提案している。この発明によれば、入力手段は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する。入力データ生成手段は、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。演算手段は、2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する。出現回数算定手段は、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。第1の実行手段は、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t回実行する。第1の出現頻度算出手段は、t回実行後の出現回数算定手段における出現回数から出現頻度を算出する。第2の実行手段は、入力データx、x ́について秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、演算手段による演算および出現回数算定手段による出現回数の算定を任意の回数t ́回実行する。第2の出現頻度算出手段は、t ́回実行後の出現回数算定手段における出現回数から出現頻度を算出する。偏り算出手段は、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。第3の実行手段は、演算手段による演算、出現回数算定手段による出現回数の算定、第1の出現頻度算出手段および第2の出現頻度算出手段による出現頻度の算出、偏り算出手段によるすべてのビットにおける偏りの中心値の算出をすべてのワードおよびすべてのビットについて実行する。警告手段は、該算出した偏りが所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、第1の実行手段の処理、第1の出現頻度算出手段の処理を行う。また、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、第2の実行手段の処理、第2の出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。6本発明は、4の評価装置について、前記第1の偏り算出手段および第2の偏り算出手段が、偏りの中心値の算出をワード長ごとに実行することを特徴とする評価装置を提案している。この発明によれば、第1の偏り算出手段および第2の偏り算出手段が、偏りの中心値の算出をワード長ごとに実行する。これにより、計算処理を高速化することができる。7本発明は、4の評価装置について、前記入力手段に入力されるパラメータに並列度が含まれる場合に、前記第1の出現頻度算出手段、第1の出現頻度算出手段、第1の偏り算出手段および第2の偏り算出手段が並列度に応じて演算の並列処理を行うことを特徴とする評価装置を提案している。この発明によれば、入力手段に入力されるパラメータに並列度が含まれる場合に、第1の出現頻度算出手段、第1の出現頻度算出手段、第1の偏り算出手段および第2の偏り算出手段が並列度に応じて演算の並列処理を行う。これにより、計算時間を短縮することができる。8本発明は、暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第5のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、を備えたことを特徴とする評価方法を提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行させる。そして、すべてのワード、すべてのビットについて上記の処理を実行させ、t回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出して、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。9本発明は、暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第6のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、を備えたことを特徴とする評価方法を提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の選択した秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行させる。そして、すべてのワード、すべてのビットについて上記の処理を実行させ、t回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出して、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。10本発明は、暗号方式の安全性を評価する評価装置における評価方法であって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行する第5のステップと、該t回実行後に、出現回数から出現頻度を算出する第6のステップと、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する第7のステップと、該t ́回実行後に、出現回数から出現頻度を算出する第8のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第9のステップと、すべてのワードおよびすべてのビットについて前記第3のステップから第9のステップを実行させる第10のステップと、該算出した偏りが所定の閾値を超えている場合に、警告を行う第11のステップと、を備えたことを特徴とする評価方法を提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行する。t回実行後に、出現回数から出現頻度を算出する。一方、入力データx、x ́について秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する。t ́回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。そして、すべてのワードおよびすべてのビットについて上記の処理を実行させ、算出した偏りが所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、第1のステップ、第6のステップの処理を行う。また、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、第7のステップ、第8のステップ、第9のステップの処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。11本発明は、暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第5のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、をコンピュータに実行させるためのプログラムを提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行させる。そして、すべてのワード、すべてのビットについて上記の処理を実行させ、t回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出して、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。12本発明は、暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行させる第5のステップと、すべてのワード、すべてのビットについて第1のステップから第6のステップを実行させる第6のステップと、該t回実行後に、前記出現回数から出現頻度を算出する第7のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第8のステップと、該算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う第9のステップと、をコンピュータに実行させるためのプログラムを提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の選択した秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行させる。そして、すべてのワード、すべてのビットについて上記の処理を実行させ、t回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出して、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。13本発明は、暗号方式の安全性を評価する評価装置における評価方法をコンピュータに実行させるためのプログラムであって、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する第1のステップと、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する第2のステップと、該2つの入力データX、X ́について、前記入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する第3のステップと、該演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする第4のステップと、前記2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t回実行する第5のステップと、該t回実行後に、出現回数から出現頻度を算出する第6のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第7のステップと、入力データx、x ́について前記秘密鍵以外のデータを固定し、前記秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、前記暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する第8のステップと、該t ́回実行後に、出現回数から出現頻度を算出する第9のステップと、該算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する第10のステップと、すべてのワードおよびすべてのビットについて前記第3のステップから第10のステップを実行させる第11のステップと、該算出した偏りが所定の閾値を超えている場合に、警告を行う第12のステップと、をコンピュータに実行させるためのプログラムを提案している。この発明によれば、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力し、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。その2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力し、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。次に、2つの入力データX、X ́の前記選択した秘密鍵を固定し、該秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行する。t回実行後に、出現回数から出現頻度を算出する。一方、入力データx、x ́について秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t ́回実行する。t ́回実行後に、出現回数から出現頻度を算出し、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。そして、すべてのワードおよびすべてのビットについて上記の処理を実行させ、算出した偏りが所定の閾値を超えている場合に、警告を行う。つまり、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、第1のステップ、第6のステップの処理を行う。また、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、第7のステップ、第8のステップ、第9のステップの処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価する。本発明によれば、暗号方式の安全性を利用者が自動的に検証することが可能となるという効果がある。以下、本発明の実施形態について、図面を用いて、詳細に説明する。なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。<第1の実施形態>以下、図1および図2を用いて、本発明の第1の実施形態について説明する。<評価装置の構成ブロック>本実施形態に係る評価装置は、図1に示すように、入力部100と、記憶部200と、入力データ生成部300と、演算部400と、出現回数算定部手段500と、実行部600と、出現頻度算出部700と、偏り算出部800と、警告部900とから構成されている。入力部100は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力する。記憶部200は、複数の秘密鍵とデータ列とを記憶する。入力データ生成部300は、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データX ́を生成する。演算部400は、2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力する。出現回数算定部500は、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントする。実行部600は、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算部400による演算および出現回数算定部500による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する。出現頻度算出部700は、すべてのワード、すべてのビットについてt回の処理を実行後に、出現回数算定手段における出現回数から出現頻度を算出する。偏り算出部800は、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。警告部900は、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行う。なお、偏り算出部800は、偏りの中心値の算出をワード長ごとに実行する。これにより、計算処理を高速化することができる。また、入力部100に入力されるパラメータに並列度が含まれる場合に、出現頻度算出部700および偏り算出部800が並列度に応じて演算の並列処理を行う。これにより、計算時間を短縮することができる。<評価装置の処理>図2を用いて、本実施形態に係る評価装置の処理について説明する。まず、利用者は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力するステップS101。ここで、パラメータとしては、評価したい暗号方式、評価する段数、サンプル数、安全性を評価する閾値、並列度等がある。次に、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうちjビット目を反転した入力データX ́を生成するステップS102。2つの入力データX、X ́について、入力された段数まで暗号化関数ラウンド関数を演算し、演算結果Z、Z ́を出力しステップS103、演算結果Z、Z ́について、iワードのビットごとに1となる出現回数をカウントするステップS104。なお、このとき、iワード目の値だけを保存し、他のワードの値を破棄する。2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうちjビット目を反転した入力データx ́とに変更して、暗号化関数ラウンド関数の演算および出現回数の算定を任意の回数t回実行させるステップS105。すべてのワード、すべてのビットについてステップS101からステップS105を実行させるステップS106。t回実行後に、出現回数から出現頻度を算出するステップS107。具体的には、ステップS104でカウントした出現回数ctr_iを計算回数tで割り、1であった割合を求める。さらに、具体的には、2ctr_it-1を偏りγ_iとして保存する。次に、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出しステップS108、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行うステップS109。したがって、本実施形態によれば、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価できる。<第2の実施形態>以下、図3および図4を用いて、本発明の第2の実施形態について説明する。<評価装置の構成ブロック>本実施形態に係る評価装置は、図3に示すように、入力部100と、記憶部200と、入力データ生成部300と、演算部400と、出現回数算定部手段500と、実行部610と、出現頻度算出部700と、偏り算出部800と、警告部900とから構成されている。なお、第1の実施形態と同一の符号を付す構成要素は、同様の機能を有するため、詳細な説明は省略する。実行部610は、2つの入力データX、X ́の選択した秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算部400による演算および出現回数算定部500による出現回数の算定を任意の回数t回実行させるとともに、さらに、すべてのワード、すべてのビットについて実行する。<評価装置の処理>図4を用いて、本実施形態に係る評価装置の処理について説明する。まず、利用者は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力するステップS201。ここで、パラメータとしては、評価したい暗号方式、評価する段数、サンプル数、安全性を評価する閾値、並列度等がある。次に、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうちjビット目を反転した入力データX ́を生成するステップS202。2つの入力データX、X ́について、入力された段数まで暗号化関数ラウンド関数を演算し、演算結果Z、Z ́を出力しステップS203、演算結果Z、Z ́について、iワードのビットごとに1となる出現回数をカウントするステップS204。なお、このとき、iワード目の値だけを保存し、他のワードの値を破棄する。2つの入力データX、X ́の選択した秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行させるステップS205。すべてのワード、すべてのビットについてステップS201からステップS205を実行させるステップS206。t回実行後に、出現回数から出現頻度を算出するステップS207。具体的には、ステップS204でカウントした出現回数ctr_iを計算回数tで割り、1であった割合を求める。さらに、具体的には、2ctr_it-1を偏りγ_iとして保存する。次に、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出しステップS208、算出した偏りの中心値が所定の閾値を超えている場合に、警告を行うステップS209。したがって、本実施形態によれば、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、実行手段の処理、出現頻度算出手段、偏り算出手段の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価できる。<第3実施形態>以下、図5および図6を用いて、本発明の第3の実施形態について説明する。<評価装置の構成ブロック>本実施形態に係る評価装置は、図5に示すように、入力部100と、記憶部200と、入力データ生成部300と、演算部400と、出現回数算定部手段500と、第1の実行部620と、第1の出現頻度算出部710と、第2の実行部630と、第2の出現頻度算出部720と、偏り算出部800と、第3の実行部640、警告部900とから構成されている。なお、第1の実施形態または第2の実施形態と同一の符号を付す構成要素は、同様の機能を有するため、詳細な説明は省略する。第1の実行部620は、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、演算部400による演算および出現回数算定部500による出現回数の算定を任意の回数t回実行する。第1の出現頻度算出部710は、t回実行後の出現回数算定手段における出現回数から出現頻度を算出する。第2の実行部630は、入力データx、x ́について秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、演算部400による演算および出現回数算定部500による出現回数の算定を任意の回数t ́回実行する。第2の出現頻度算出部720は、t ́回実行後の出現回数算定部500における出現回数から出現頻度を算出する。偏り算出部800は、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出する。第3の実行部640は、演算部400による演算、出現回数算定部500による出現回数の算定、第1の出現頻度算出部710および第2の出現頻度算出部720による出現頻度の算出、偏り算出部800によるすべてのビットにおける偏りの中心値の算出をすべてのワードおよびすべてのビットについて実行する。<評価装置の処理>図6を用いて、本実施形態に係る評価装置の処理について説明する。まず、利用者は、パラメータとして、少なくとも暗号化方式および暗号化の段数を入力するステップS301。ここで、パラメータとしては、評価したい暗号方式、評価する段数、サンプル数、安全性を評価する閾値、並列度等がある。次に、予め保有する秘密鍵の中からランダムに任意の秘密鍵を選択するとともに、秘密鍵以外のデータをランダムに選択し、これらを結合して入力データXを生成するとともに、入力データXの秘密鍵データ以外のビットのうちjビット目を反転した入力データX ́を生成するステップS302。2つの入力データX、X ́について、入力された段数まで暗号化関数を演算し、演算結果Z、Z ́を出力しステップS303、演算結果Z、Z ́について、特定のワードのビットごとに予め決められた値となる出現回数をカウントするステップS304。そして、2つの入力データX、X ́の選択した秘密鍵を固定し、秘密鍵以外のデータをランダムに選択して、これらを結合した入力データxと、入力データxの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データx ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t回実行するステップS305。次に、t回実行後に、出現回数から出現頻度を算出しステップS306、入力データx、x ́について秘密鍵以外のデータを固定し、秘密鍵をランダムに選択して、これらを結合した入力データyと、入力データyの秘密鍵データ以外のビットのうち予め定められたビットを反転した入力データy ́とに変更して、暗号化関数の演算および出現回数の算定を任意の回数t ́回実行するステップS307。さらに、t ́回実行後に、出現回数から出現頻度を算出しステップS308、算出した各ビットにおける出現頻度から、すべてのビットにおける偏りの中心値を算出するステップS309。そして、すべてのワードおよびすべてのビットについてステップS303からステップS309を実行させステップS310、算出した偏りが所定の閾値を超えている場合に、警告を行うステップS311。したがって、本実施形態によれば、入力データのうち、秘密鍵以外のデータを変更して、差分ペアを生成し、第1の実行部の処理、第1の出現頻度算出部の処理を行う。また、入力データのうち、秘密鍵をランダムに変更して、差分ペアを生成し、第2の実行部の処理、第2の出現頻度算出部、偏り算出部の処理を行い、算出した偏りの中心値が所定の閾値を超えているか否かの判定を行うことにより、暗号方式の安全性を自動的に評価することができる。なお、評価装置の処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを評価装置に読み込ませ、実行することによって本発明の評価装置を実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。また、コンピュータシステムは、WWWWorldWideWebシステムを利用している場合であれば、ホームページ提供環境あるいは表示環境も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する伝送媒体は、インターネット等のネットワーク通信網や電話回線等の通信回線通信線のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル差分プログラムであっても良い。以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。