(57)【要約】【課題】耐性評価に不適切なサイドチャネル情報による耐性評価の精度低下を抑制し、暗号装置に対するサイドチャネル攻撃の可否を正確に評価できるサイドチャネル攻撃耐性評価装置を提供する。【解決手段】暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃耐性評価装置であって、評価対象の暗号装置から取得したサイドチャネル情報を取り込むサイドチャネル情報入力部と、サイドチャネル情報入力部で得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別部と、サイドチャネル情報選別部で処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備える。【選択図】図１
2010135881.tif 000002
【特許請求の範囲】
【請求項１】
暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価装置において、
評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価装置に取り込むサイドチャネル情報入力部と、
前記サイドチャネル情報入力部で得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別部と、
前記サイドチャネル情報選別部で処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、
を備えることを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項２】
前記サイドチャネル情報入力部は、評価対象の暗号装置のサイドチャネル情報を測定する手段を備えることを特徴とする請求項１に記載のサイドチャネル攻撃耐性評価装置。
【請求項３】
前記サイドチャネル情報選別部は、サイドチャネル情報の統計量と基準となる情報との比較を行うことを特徴とする請求項１又は２に記載のサイドチャネル攻撃耐性評価装置。
【請求項４】
前記サイドチャネル情報選別部は、前記統計量として、サイドチャネル情報の平均値、メジアン、最頻値、最大値、最小値、分散値、標準偏差のいずれか１つ若しくはこれらの組み合わせを用いることを特徴とする請求項３に記載のサイドチャネル攻撃耐性評価装置。
【請求項５】
前記サイドチャネル情報選別部は、サイドチャネル情報と基準のサイドチャネル情報との間の類似係数を計算し、前記類似係数に基づいて選別を行うことを特徴とする請求項１又は２に記載のサイドチャネル攻撃耐性評価装置。
【請求項６】
前記サイドチャネル情報選別部は、前記類似係数として、サイドチャネル情報と基準のサイドチャネル情報との間の距離、類似度、相関値のいずれか１つ若しくはこれらの組み合わせを用いることを特徴とする請求項５に記載のサイドチャネル攻撃耐性評価装置。
【請求項７】
前記サイドチャネル情報選別部におけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル攻撃耐性評価部における評価の実施の可否を判断することを特徴とする請求項１から６のいずれか１項に記載のサイドチャネル攻撃耐性評価装置。
【請求項８】
前記サイドチャネル情報選別部におけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル情報入力部において別のサイドチャネル情報を取り込み、前記サイドチャネル情報選別部において再び情報の選別を行うことを特徴とする請求項１から６のいずれか１項に記載のサイドチャネル攻撃耐性評価装置。
【請求項９】
前記サイドチャネル情報選別部におけるサイドチャネル情報の選別結果に応じてサイドチャネル情報を一時保存し、複数の前記一時保存したサイドチャネル情報を用いて前記サイドチャネル攻撃耐性評価部における評価を実施することを特徴とする請求項８に記載のサイドチャネル攻撃耐性評価装置。
【請求項１０】
前記サイドチャネル情報選別部におけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル情報入力部から得られたサイドチャネル情報に基づいて変動することを特徴とする請求項１から９のいずれか１項に記載のサイドチャネル攻撃耐性評価装置。
【請求項１１】
前記基準となる情報が、前記サイドチャネル情報入力部から得られたサイドチャネル情報の統計量に基づいて変動することを特徴とする請求項１０に記載のサイドチャネル攻撃耐性評価装置。
【請求項１２】
前記統計量が、サイドチャネル情報の平均値、メジアン、最頻値、最大値、最小値、分散値、標準偏差のいずれか１つ若しくはこれらの組み合わせであることを特徴とする請求項１１に載のサイドチャネル攻撃耐性評価装置。
【請求項１３】
前記サイドチャネル情報選別部におけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル攻撃耐性評価部における評価結果に応じて変動することを特徴とする請求項１から１２のいずれか１項に記載のサイドチャネル攻撃耐性評価装置。
【請求項１４】
暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価方法において、
評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価方法に取り込むサイドチャネル情報入力ステップと、
前記サイドチャネル情報入力ステップで得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別ステップと、
前記サイドチャネル情報選別ステップで処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価ステップと、
を備えることを特徴とするサイドチャネル攻撃耐性評価方法。
【請求項１５】
前記サイドチャネル情報入力ステップは、評価対象の暗号装置のサイドチャネル情報を測定する手段を備えることを特徴とする請求項１４に記載のサイドチャネル攻撃耐性評価方法。
【請求項１６】
前記サイドチャネル情報選別ステップは、サイドチャネル情報の統計量と基準となる情報との比較を行うことを特徴とする請求項１４又は１５に記載のサイドチャネル攻撃耐性評価方法。
【請求項１７】
前記サイドチャネル情報選別ステップは、前記統計量として、サイドチャネル情報の平均値、メジアン、最頻値、最大値、最小値、分散値、標準偏差のいずれか１つ若しくはこれらの組み合わせを用いることを特徴とする請求項１６に記載のサイドチャネル攻撃耐性評価方法。
【請求項１８】
前記サイドチャネル情報選別ステップは、サイドチャネル情報と基準のサイドチャネル情報との間の類似係数を計算し、前記類似係数に基づいて選別を行うことを特徴とする請求項１４又は１５に記載のサイドチャネル攻撃耐性評価方法。
【請求項１９】
前記サイドチャネル情報選別ステップは、前記類似係数として、サイドチャネル情報と基準のサイドチャネル情報との間の距離、類似度、相関値のいずれか１つ若しくはこれらの組み合わせを用いることを特徴とする請求項１８に記載のサイドチャネル攻撃耐性評価方法。
【請求項２０】
前記サイドチャネル情報選別ステップにおけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル攻撃耐性評価ステップにおける評価の実施の可否を判断することを特徴とする請求項１４から１９のいずれか１項に記載のサイドチャネル攻撃耐性評価方法。
【請求項２１】
前記サイドチャネル情報選別ステップにおけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル情報入力ステップにおいて別のサイドチャネル情報を取り込み、前記サイドチャネル情報選別ステップにおいて再び情報の選別を行うことを特徴とする請求項１４から１９のいずれか１項に記載のサイドチャネル攻撃耐性評価方法。
【請求項２２】
前記サイドチャネル情報選別ステップにおけるサイドチャネル情報の選別結果に応じてサイドチャネル情報を一時保存し、複数の前記一時保存したサイドチャネル情報を用いて前記サイドチャネル攻撃耐性評価ステップにおける評価を実施することを特徴とする請求項２１に記載のサイドチャネル攻撃耐性評価方法。
【請求項２３】
前記サイドチャネル情報選別ステップにおけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル情報入力ステップから得られたサイドチャネル情報に基づいて変動することを特徴とする請求項１４から２２のいずれか１項に記載のサイドチャネル攻撃耐性評価方法。
【請求項２４】
前記基準となる情報が、前記サイドチャネル情報入力ステップから得られたサイドチャネル情報の統計量に基づいて変動することを特徴とする請求項２３に記載のサイドチャネル攻撃耐性評価方法。
【請求項２５】
前記統計量が、サイドチャネル情報の平均値、メジアン、最頻値、最大値、最小値、分散値、標準偏差のいずれか１つ若しくはこれらの組み合わせであることを特徴とする請求項２４に記載のサイドチャネル攻撃耐性評価方法。
【請求項２６】
前記サイドチャネル情報選別ステップにおけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル攻撃耐性評価ステップにおける評価結果に応じて変動することを特徴とする請求項１４から２５のいずれか１項に記載のサイドチャネル攻撃耐性評価方法。
【請求項２７】
暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価プログラムにおいて、
評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価プログラムに取り込むサイドチャネル情報入力機能と、
前記サイドチャネル情報入力機能で得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別機能と、
前記サイドチャネル情報選別機能において処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価機能と、
をコンピュータに実現させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
【請求項２８】
前記サイドチャネル情報入力機能は、評価対象の暗号装置のサイドチャネル情報を測定することを特徴とする請求項２７に記載のサイドチャネル攻撃耐性評価プログラム。
【請求項２９】
前記サイドチャネル情報選別機能におけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル攻撃耐性評価機能における評価の実施の可否を判断する機能を実現させることを特徴とする請求項２７又は２８に記載のサイドチャネル攻撃耐性評価プログラム。
【請求項３０】
前記サイドチャネル情報選別機能におけるサイドチャネル情報の選別結果に応じて、前記サイドチャネル情報入力機能を用いて別のサイドチャネル情報を取り込み、前記サイドチャネル情報選別機能において再び情報の選別を行う機能を実現させることを特徴とする請求項２７から２９のいずれか１項に記載のサイドチャネル攻撃耐性評価プログラム。
【請求項３１】
前記サイドチャネル情報選別機能におけるサイドチャネル情報の選別結果に応じてサイドチャネル情報を一時保存し、複数の前記一時保存したサイドチャネル情報を用いて前記サイドチャネル攻撃耐性評価機能において評価を実施する機能を実現させることを特徴とする請求項３０記載のサイドチャネル攻撃耐性評価プログラム。
【請求項３２】
前記サイドチャネル情報選別機能におけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル情報入力機能を用いて得られたサイドチャネル情報に基づいて変動することを特徴とする請求項２７から３１のいずれか１項に記載のサイドチャネル攻撃耐性評価プログラム。
【請求項３３】
前記サイドチャネル情報選別機能におけるサイドチャネル情報の選別において基準となる情報が、前記サイドチャネル攻撃耐性評価機能における評価結果に応じて変動することを特徴とする請求項２７から３２のいずれか１項に記載のサイドチャネル攻撃耐性評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法、サイドチャネル攻撃耐性評価プログラムに関し、特に暗号装置から漏洩するサイドチャネル情報に対して信号処理を施し、サイドチャネル攻撃への耐性評価を実施する技術に関するものである。
【背景技術】
【０００２】
情報の電子データ化が進む中で、情報の保護、秘匿な通信において、暗号は欠かせない技術となっている。暗号はその安全性を保つために、鍵等の秘匿情報が容易に推測できないようにする必要がある。鍵の全数探索や数学的に解読を行う線形解読や差分解読等といった暗号解析方法が知られているが、現実的な時間での解析は不可能な状況である。
【０００３】
その一方で、暗号機能付きのＩＣカードや携帯端末等の暗号を実装した装置において、攻撃者が処理時間や消費電力などのサイドチャネル情報を精密に測定できるとの仮定の下で、サイドチャネル情報から秘匿情報の取得を試みるサイドチャネル攻撃とその対策が大きな研究テーマとなっている。サイドチャネル情報には、攻撃対象である暗号装置内で実行されている処理やデータに関する情報が含まれており、サイドチャネル情報を解析することで、暗号アルゴリズム、処理タイミング、秘密鍵の推定が可能である。このようなサイドチャネル攻撃の具体的な攻撃方法としては、処理時間に注目したタイミング攻撃（非特許文献１参照）や消費電力に注目した電力解析（非特許文献２参照）、漏洩電磁波に注目した電磁波解析（非特許文献３参照）等が知られている。
【０００４】
暗号を実装した装置においては、実用上、サイドチャネル攻撃に対する攻撃耐性（耐タンパ性）が求められる。そのため、サイドチャネル情報から暗号アルゴリズム等の秘匿情報の推定を困難にする耐タンパ技術の研究が進められている。ここで、耐タンパ性とは攻撃に対して、秘匿情報の漏洩や機能の改変を防ぐ性能のことである。耐タンパ技術として、恣意的にサイドチャネル情報に不要な情報を付加することで、サイドチャネル情報から秘匿情報の漏洩を防ぐ耐タンパ手法（特許文献１参照）等が提案されている。ここで、上記のような耐タンパ手法を適用することで実際にサイドチャネル攻撃への耐性が向上しているか、耐タンパ手法の有効性を評価する必要がある。
【０００５】
また、実装された暗号装置が本当に安全なのか確認するため、サイドチャネル攻撃に対する耐性を評価する技術が求められている（非特許文献４参照）。サイドチャネル攻撃の種類によっては、サイドチャネル情報の微小な変化を検出することで攻撃を行うこともある。例えば、差分電力解析（ＤＰＡ：Differential Power Analysis）では、取得した大量の消費電力に含まれる秘密鍵に関する微小な情報を、統計処理することによって増幅することで秘密鍵を解析する（非特許文献２参照）。もし、統計処理に用いる消費電力波形に秘密鍵に関する情報を相殺するようなノイズが含まれていた場合、秘密鍵の解析に失敗し、正しい耐性評価を実施することができない。
【特許文献１】特開２００７−１１６２１５号公報
【非特許文献１】P. Kocher, "Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems," Crypto'96, pp.101-113, 1996.
【非特許文献２】P. Kocher, J. Jaffe and B. Jun, "Introduction to Differential Power Analysis and Related Attacks," 1998.
【非特許文献３】Karine Gandolfi, Christophe Mourtel, and Francis Olivier, "Electromagnetic Analysis: Concrete Results," In the Proceedings of the  Workshop on Cryptographic Hardware and Embedded Systems 2001 (CHES 2001), LNCS 2162 Paris, France, May 2001, pp 251-261.
【非特許文献４】今井秀樹，“情報セキュリティ  −安全・安心な社会のために−”，電子情報通信学会誌，２００７年，Ｖｏｌ．９０，Ｎｏ．５，ｐｐ．３３４−３３９
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記の非特許文献や特許文献の評価手法では、耐タンパ手法の有効性や実装された暗号装置のサイドチャネル攻撃耐性を正しく評価できないことがあった。それは、実環境において周囲のノイズや測定ミス等が評価に影響を与えるためである。これまで、そのような要因が影響を与えることを考慮していなかった。
【０００７】
本発明では、実環境において耐性評価に悪影響を与える要因を排除し、暗号機器に対するサイドチャネル攻撃の可否を正確に評価可能なサイドチャネル攻撃耐性評価装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
かかる目的を達成するために、本発明の第１のサイドチャネル攻撃耐性評価装置は、暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価装置であって、評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価装置に取り込むサイドチャネル情報入力部と、サイドチャネル情報入力部で得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別部と、サイドチャネル情報選別部で処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備える。
【０００９】
また、本発明の第１のサイドチャネル攻撃耐性評価方法は、暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価方法であって、評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価方法に取り込むサイドチャネル情報入力ステップと、サイドチャネル情報入力ステップで得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別ステップと、サイドチャネル情報選別ステップで処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価ステップと、を備える。
【００１０】
また、本発明の第１のサイドチャネル攻撃耐性評価プログラムは、暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性評価プログラムであって、評価対象の暗号装置から取得したサイドチャネル情報をサイドチャネル攻撃耐性評価プログラムに取り込むサイドチャネル情報入力機能と、サイドチャネル情報入力機能で得られたサイドチャネル情報に対して、サイドチャネル情報と基準となる情報との比較を行うことで、取り込んだサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別するサイドチャネル情報選別機能と、サイドチャネル情報選別機能において処理された選別済みサイドチャネル情報から評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価機能と、をコンピュータに実現させる。
【発明の効果】
【００１１】
本発明によれば、サイドチャネル情報の選別において、入力されたサイドチャネル情報を基準となる情報と比較することで、測定ミスやノイズの影響を受けた異常なサイドチャネル情報を除去できる。そして、異常なサイドチャネル情報がサイドチャネル攻撃耐性評価に与える影響を軽減でき、その結果、評価対象のサイドチャネル攻撃耐性に対する評価精度が向上する。
【発明を実施するための最良の形態】
【００１２】
まず、図面を参照しながら、本発明の実施形態について説明する。なお、以下の述べる実施形態は、本発明の好適な実施の形態であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【００１３】
［第１の実施形態］
次に、本発明を実施するための最良の形態について、図面を参照して詳細に説明する。図１は、本発明を適用可能なサイドチャネル攻撃耐性評価装置の構成例を表したブロック図である。図１を参照すると、サイドチャネル攻撃耐性評価装置３は、評価対象の暗号装置１からサイドチャネル情報測定装置２により取得されたサイドチャネル情報を取り込むサイドチャネル情報入力部４と、サイドチャネル情報選別部５と、サイドチャネル攻撃耐性評価部６を備えて構成されている。
【００１４】
暗号装置１は、平文に対する暗号化や暗号文に対する復号化等の暗復号処理を行う装置である。暗号装置１は、暗復号処理を実行する種々の情報処理装置が採用可能である。例えば、パーソナルコンピュータ（ＰＣ）、携帯端末、接触型及び非接触型のＩＣカード、リーダライタ等がある。
【００１５】
サイドチャネル情報測定装置２は、暗号装置１が暗復号処理を実施する際に漏洩するサイドチャネル情報を測定する装置である。サイドチャネル情報は、暗号装置において内部の処理に影響を受ける種々の情報が採用可能である。例えば、電力、電磁波、音、温度等がある。もし、電力や電磁波をサイドチャネル情報として用いる場合は、サイドチャネル情報測定装置２は、オシロスコープやスペクトラムアナライザ等を採用可能である。
【００１６】
サイドチャネル攻撃耐性評価装置３は、サイドチャネル情報測定装置２から得られるサイドチャネル情報を用いて、暗号装置１のサイドチャネル攻撃に対する耐性を評価する装置である。
【００１７】
サイドチャネル情報入力部４は、サイドチャネル情報測定装置２で測定されたサイドチャネル情報をサイドチャネル攻撃耐性評価装置３に取り込む機能を有する。取り込む方法として、サイドチャネル情報測定装置２からＵＳＢやＲＳ−２３２Ｃ、ＩＥＥＥ１３９４、ＳＣＳＩ等のケーブルを経由して取り込む方法、赤外線や電波等の電磁波を受信して取り込む方法、ハードディスク、ＣＤやＤＶＤ、フロッピー（登録商標）ディスク、磁気テープ、フラッシュメモリ等の記録媒体から読み込んで取り込む方法等が挙げられる。
【００１８】
サイドチャネル情報選別部５は、サイドチャネル情報入力部４から入力されるサイドチャネル情報に対し、サイドチャネル攻撃耐性評価部６における有効性を判定し、情報の選別を行う。選別は、入力されたサイドチャネル情報と基準となる情報とを比較することによって行われ、入力されたサイドチャネル情報がサイドチャネル攻撃耐性評価に用いるのが適切か否かの選別が行われる。選別の方法として、サイドチャネル情報の平均値やメジアン、最頻値、最大値や最小値、分散や標準偏差等の統計値を基準値と比較して、統計値が基準範囲内に収まっているかどうかで選別する方法、入力されたサイドチャネル情報とあらかじめ用意しておいた基準のサイドチャネル情報との間の距離や類似度、相関値等の類似係数を算出し、類似係数と基準値とを比較して、類似係数が基準範囲内に収まっているかどうかで選別する方法、サイドチャネル情報のパワースペクトルを算出し、パワースペクトル上のピークの高さや位置が基準範囲内に収まっているかどうかで選別する方法等が例示できる。なお、複数の選別方法を組み合わせて選別することも可能である。サイドチャネル情報選別部５で用いるパラメータとして、例えば、選別に用いる統計値や類似係数の種類、基準のサイドチャネル情報の種類、選別の基準値等が挙げられる。
【００１９】
サイドチャネル攻撃耐性評価部６は、サイドチャネル情報選別部５から入力される選別済みサイドチャネル情報に対して、サイドチャネル攻撃への耐性評価を実施する。評価方法として、選別済みサイドチャネル情報に対してサイドチャネル攻撃を行い、攻撃が成功するか否かの判定結果を利用する方法や、基準波形との相関や距離、及び類似度を利用する方法等が挙げられる。なお、サイドチャネル攻撃の方法としては、タイミング攻撃、電磁波解析、単純電力解析、差分電力解析、故障利用攻撃、キャッシュ攻撃、音響解析攻撃等が例示できる。また、耐性評価において、複数のサイドチャネル情報を必要とする場合には、サイドチャネル情報入力部４での入力、及びサイドチャネル情報選別部５での処理を複数回行うことで、複数のサイドチャネル情報を取得することが可能である。また、サイドチャネル情報選別部５がパラメータを変動させる機能を有している場合は、サイドチャネル攻撃の耐性評価の内容（耐性の有無、相関値、距離、類似度等）をサイドチャネル情報選別部５に伝播する手段を有する。
【００２０】
上述のように構成されたサイドチャネル攻撃耐性評価装置３において、まずサイドチャネル情報選別部５で用いる選別に用いる値の種類や、選別の基準値等のパラメータを設定し、さらにサイドチャネル攻撃耐性評価装置６で用いる評価方法を決定する。その後、評価対象である暗号装置１にて暗号処理を実行するとともに、サイドチャネル情報測定装置２にて暗号装置１から漏洩するサイドチャネル情報を測定する。測定したサイドチャネル情報は、サイドチャネル情報入力部４からサイドチャネル攻撃耐性評価装置３に入力される。入力されたサイドチャネル情報は、サイドチャネル情報選別部５において選別が行われる。最後に、サイドチャネル攻撃耐性評価部６で選別済みサイドチャネル情報を用いて、暗号装置１のサイドチャネル攻撃への耐性評価を実施する。
【００２１】
次に、第１の実施形態における動作例について説明する。図２は、本発明の第１の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。動作例においては、サイドチャネル情報選別部５にて、サイドチャネル情報入力部４から入力したサイドチャネル情報に対して事前に決められたパラメータを用いて選別を実施し、サイドチャネル攻撃耐性評価部６にて、選別済みのサイドチャネル情報を用いて暗号装置１のサイドチャネル攻撃耐性評価を実施する。
【００２２】
まず、評価処理が開始されると（ステップＡ１）、サイドチャネル情報入力部４が、サイドチャネル情報を取り込む（ステップＡ２）。サイドチャネル情報の入力が終了すると、サイドチャネル情報選別部５が、入力されたサイドチャネル情報を事前に決められたパラメータの下で選別を行い、入力されたサイドチャネル情報をサイドチャネル攻撃耐性評価に用いるべきか選別する（ステップＡ３）。選別の結果、入力されたサイドチャネル情報がサイドチャネル攻撃耐性評価に用いることが適切だと判定された場合、サイドチャネル攻撃耐性評価部６が、選別済サイドチャネル情報を用いてサイドチャネル攻撃耐性評価を実施し、評価を終了する（ステップＡ４、ステップＡ５）。一方、選別の結果、入力されたサイドチャネル情報がサイドチャネル攻撃耐性評価に用いるのが不適切だと判定された場合、サイドチャネル攻撃耐性評価は実施せず、評価処理を終了する（ステップＡ６、Ａ７）。
【００２３】
サイドチャネル情報の選別を実施することで、サイドチャネル攻撃耐性評価に不適切なサイドチャネル情報を用いることで発生してしまう正当でない評価を行う可能性を抑制でき、正確な耐性評価が可能となる。また、暗号装置１に耐タンパ手法を適用した場合、適用した耐タンパ手法が暗号装置１において有効か否かを評価することが可能である。もし、サイドチャネル情報選別部５においてサイドチャネル情報を選別することによって、サイドチャネル攻撃耐性評価部６で耐性なしと判定されるようならば、暗号装置１に適用した耐タンパ手法の有効性は低いといえる。一方、サイドチャネル情報選別部５で選別を行っても、サイドチャネル攻撃耐性評価部６で耐性ありと判定されれば、暗号装置１に適用した耐タンパ手法の有効性は高いといえる。
【００２４】
［第２の実施形態］
続いて、第２の実施形態の構成例について説明する。図３は、第２の実施の形態における構成例を示したブロック図である。第１の実施形態の構成例との相違点は、サイドチャネル攻撃耐性評価装置３ａが、サイドチャネル入力部の代わりにサイドチャネル情報測定部７を有している点と、外部のサイドチャネル情報測定装置２が不要となっている点である。
【００２５】
サイドチャネル情報測定部７は、サイドチャネル情報測定装置２と同様に、暗号装置１が暗復号処理を実施する際に漏洩するサイドチャネル情報を測定する機能を有する。測定の対象として、例えば、電力、電磁波、音、温度等があげられる。
【００２６】
図４は、本発明の第２の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態の動作例との相違点は、評価開始時のサイドチャネル情報の入力において、サイドチャネル測定部７が暗号装置１からサイドチャネル情報を測定することによって、サイドチャネル情報がサイドチャネル攻撃耐性評価装置３ａへ取り込まれる点である（ステップＡ２−１）。サイドチャネル情報入力後の動作の流れは第１の実施形態と同様である。第２の実施形態では、サイドチャネル情報測定部７をサイドチャネル攻撃耐性評価装置３ａに組み込むことで、暗号装置１から直接サイドチャネル情報を取り込むことができる。
【００２７】
［第３の実施形態］
続いて、第３の実施形態の構成例について説明する。本発明の第３の実施形態では、サイドチャネル情報選別部５にて、サイドチャネル情報入力部４若しくはサイドチャネル情報測定部７より入手したサイドチャネル情報の統計値を算出する。そして、算出した統計値を、パラメータである基準値と比較し、統計値が基準値の定める範囲内に収まっているかどうかによって、サイドチャネル攻撃耐性評価に対する有効性を判定する。判定の結果、評価に対して有効と判断された場合、サイドチャネル攻撃耐性評価部６にて、選別済みのサイドチャネル情報を用いて暗号装置１のサイドチャネル攻撃耐性評価を実施する。
【００２８】
図５は、本発明の第３の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態との相違点は、ステップＡ３のサイドチャネル情報の選別において、統計値に基づく選別を実施する点である（ステップＡ３−１）。統計値としては、平均値やメジアン、最頻値、最大値、最小値、分散、標準偏差等が挙げられる。
【００２９】
統計値に基づく選別を実施することで、通常の統計値から大きく外れているサイドチャネル情報を耐性評価に用いることを回避し、誤ったサイドチャネル攻撃耐性の評価をする可能性を抑制することができる。例えば、異常な電圧が暗号装置に加わることで、サイドチャネル情報の波形が大きく乱れることがある。この場合、サイドチャネル情報から暗号装置に関する秘匿情報の解析が困難となり、正確にサイドチャネル攻撃耐性を評価することができない。異常な電圧が加わった場合にはサイドチャネル情報の平均値や分散が、通常のサイドチャネル情報の平均値や分散とは大きく異なることがありえる。そのため、通常とは大きく異なる統計値を示したサイドチャネル情報に対しては、サイドチャネル攻撃耐性評価を実施しないことで、誤った耐性評価を実施する可能性を回避できる。このように、異常なサイドチャネル情報が入力された場合に、その異常なサイドチャネル情報を排除できる本実施形態は有効である。有効な情報が選別されることで、サイドチャネル攻撃耐性評価部６では正確な耐性評価が可能となる。
【００３０】
［第４の実施形態］
続いて、第４の実施形態の構成例について説明する。本発明の第４の実施形態では、サイドチャネル情報選別部５にて、サイドチャネル情報入力部４若しくはサイドチャネル情報測定部７より入手したサイドチャネル情報と、あらかじめ用意しておいた基準のサイドチャネル情報との間の類似係数を計算する。次に、算出した類似係数を、パラメータである基準値と比較し、類似係数が基準値の定める範囲内に収まっているかどうかによって、サイドチャネル攻撃耐性評価に対する有効性を判定する。判定の結果、評価に対して有効と判断された場合、サイドチャネル攻撃耐性評価部６にて、選別済みのサイドチャネル情報を用いて暗号装置１のサイドチャネル攻撃耐性評価を実施する。
【００３１】
図６は、本発明の第４の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態との相違点は、ステップＡ３のサイドチャネル情報の選別において、類似係数に基づく選別を実施する点である（ステップＡ３−２）。類似係数として、距離や類似度、相関値等が挙げられる。
【００３２】
類似係数に基づく選別を実施することで、基準のサイドチャネル情報から大きく外れているサイドチャネル情報を耐性評価に用いることを回避し、誤ったサイドチャネル攻撃耐性の評価をする可能性を抑制することができる。例えば、測定時にノイズが加わることで、通常測定されるサイドチャネル情報とは波形の形状が異なるサイドチャネル情報が測定されることがありえる。ここで、基準のサイドチャネル情報との類似係数を求めることで、通常の波形と形状が異なっているかを検出でき、異常なサイドチャネル情報を用いたサイドチャネル攻撃耐性評価を回避できる。このように、異常なサイドチャネル情報が入力された場合に、その異常なサイドチャネル情報を排除できる本実施形態は有効である。有効な情報が選別されることで、サイドチャネル攻撃耐性評価部６では正確な耐性評価が可能となる。
【００３３】
［第５の実施形態］
続いて、第５の実施形態の構成例について説明する。本発明の第５の実施形態では、サイドチャネル情報選別部５にて選別を実施した後、選別の結果に応じて別のサイドチャネル情報をサイドチャネル情報入力部４若しくはサイドチャネル情報測定部７より入手し、改めてサイドチャネル情報選別部５にて選別を実施する。
【００３４】
図７は、本発明の第５の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態との相違点は、選別の結果、入力されたサイドチャネル情報がサイドチャネル攻撃耐性評価に用いるのが不適切だと判定された場合、別のサイドチャネル情報をサイドチャネル情報入力部４若しくはサイドチャネル情報測定部７より入手する点である（ステップＡ３／ＮＧ、ステップＡ２）。選別により、サイドチャネル攻撃耐性評価に用いるのが適切なサイドチャネル情報を用いて耐性評価を実施することで、サイドチャネル攻撃耐性評価部６では正確な耐性評価が可能となる。
【００３５】
［第６の実施形態］
続いて、第６の実施形態の構成例について説明する。本発明の第６の実施形態では、サイドチャネル情報選別部５にて選別を実施した後、有効だと判定された場合にサイドチャネル情報を一時保存し、そしてサイドチャネル情報をサイドチャネル情報入力部４若しくはサイドチャネル情報測定部７より入手し、再びサイドチャネル情報選別部５にて選別を実施する。
【００３６】
図８は、本発明の第６の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第５の実施形態との相違点は、選別の結果、入力されたサイドチャネル情報がサイドチャネル攻撃耐性評価に用いるのが適切だと判定された場合、入力されたサイドチャネル情報を一時保存する（ステップＡ８）。そして、パラメータとして事前に設定しておいた数のサイドチャネル情報が確保できるまで、再びサイドチャネル情報の入力・選別・一時保存を繰り返し、十分な数のサイドチャネル情報を確保した時点でサイドチャネル攻撃耐性評価部６においてサイドチャネル攻撃耐性評価を実施する点である（ステップＡ９）。
【００３７】
サイドチャネル攻撃耐性評価の対象の１つとして、ＤＰＡに対する耐性が挙げられる。ＤＰＡでは、複数のサイドチャネル情報（消費電力波形）を用いて解析を行う。ここで、解析に利用する消費電力波形の中に異常な波形が混在していると、解析精度が低下するため、正確な耐性評価の実施が困難となる。そのため、サイドチャネル攻撃耐性評価に有効なサイドチャネル情報を選別することで、サイドチャネル攻撃耐性評価部６では正確な耐性評価が可能となる。
【００３８】
［第７の実施形態］
続いて、第７の実施形態の構成例について説明する。本発明の第７の実施形態では、サイドチャネル情報選別部５にて、入力したサイドチャネル情報に対して特徴判別を行い、特徴に応じて選別で使用するパラメータを決定し、サイドチャネル情報の選別を行う。その後、サイドチャネル攻撃耐性評価部６にて、選別済みのサイドチャネル情報を用いて暗号装置１のサイドチャネル攻撃耐性評価を実施する。
【００３９】
図９は、本発明の第７の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態との相違点は、ステップＡ２のサイドチャネル情報の入力後、入力されたサイドチャネル情報の特徴を算出し（ステップＡ１０）、算出された特徴に応じて選別のパラメータを決定する（ステップＡ１１）点である。選別のパラメータとしては、選別に用いる統計値や類似係数の種類、基準のサイドチャネル情報の種類、選別の基準値等が挙げられる。
【００４０】
まずサイドチャネル情報の特徴に応じたパラメータを用いて選別を実施することで、固定パラメータで選別を実施するよりも効率的なサイドチャネル情報の選別が可能となる。また、サイドチャネル情報選別部５でサイドチャネル情報にあわせたパラメータを設定するので、サイドチャネル情報ごとに事前にパラメータを設定する手間が軽減される。特徴として、サイドチャネル情報の平均値やメジアン、最頻値、最大値や最小値、分散や標準偏差等の統計量、相関値や距離、類似度等の類似係数、及び、パワースペクトル上でのピークの位置や高さ等が挙げられる。また、選別で用いるパラメータは、上記の特徴に基づいて決めることになる。
【００４１】
なお、特徴判断・選別を実施した後には、第５の実施形態と同様に別のサイドチャネル情報を再入力する方法（図１０参照）や、第６の実施形態と同様に十分な数のサイドチャネル情報が確保できるまで、サイドチャネル情報の入力と選別、一時保存を繰り返す方法（図１１参照）も考えられる。
【００４２】
［第８の実施形態］
続いて、第８の実施形態の構成例について説明する。本発明の第８の実施形態では、サイドチャネル情報選別部５にて、入力したサイドチャネル情報に対して統計量の算出を行い、算出した統計量に応じて選別で使用するパラメータを決定し、サイドチャネル情報の選別を行う。その後、サイドチャネル攻撃耐性評価部６にて、選別済みのサイドチャネル情報を用いて暗号装置１のサイドチャネル攻撃耐性評価を実施する本発明の実施形態について説明する。
【００４３】
図１２は、本発明の第８の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第７の実施形態との相違点は、ステップＡ２のサイドチャネル情報の入力後、入力されたサイドチャネル情報の統計量を算出し（ステップＡ１０−１）、算出された統計量に応じて選別のパラメータを決定する（ステップＡ１１−１）点である。統計量として、サイドチャネル情報の平均値やメジアン、最頻値、最大値や最小値、分散や標準偏差等が挙げられる。
【００４４】
第８の実施形態においても、第７の実施形態と同様に特徴判断・選別を実施した後に、別のサイドチャネル情報を再入力する方法（図１３参照）や、十分な数のサイドチャネル情報が確保できるまで、サイドチャネル情報の入力と選別、一時保存を繰り返す方法（図１４参照）も考えられる。
【００４５】
図１４のフローチャートにおいては、最初に入力したサイドチャネル情報の統計量を基準とし、その統計量を基準値として、基準値に近いサイドチャネル情報だけを選別・一時保存して、耐性評価を実施することが可能である。入力値に応じて選別を実施することで、固定パラメータで選別を実施するよりも効率的なサイドチャネル情報の選別が可能となる。また、サイドチャネル情報選別部５でサイドチャネル情報にあわせたパラメータを設定するので、サイドチャネル情報ごとに事前にパラメータを設定する手間が軽減される。
【００４６】
［第９の実施形態］
続いて、第９の実施形態の構成例について説明する。本発明の第９の実施形態では、サイドチャネル攻撃耐性評価装置６にて耐性評価を実施した後、サイドチャネル情報選別部５にて使用するパラメータを変更する。
【００４７】
図１５は、本発明の第９の実施形態におけるサイドチャネル攻撃耐性評価手段のフローチャートである。第１の実施形態との相違点は、ステップＡ４のサイドチャネル攻撃耐性評価を実施後、評価結果が基準を満たしているかどうかを判定し（ステップＡ１２）、満たしていた場合は評価を終了する（ステップＡ５）。一方、評価を満たしていなかった場合、サイドチャネル情報選別部５で用いる選別のパラメータを変更し（ステップＡ１３）、再びサイドチャネル情報の入力と選別、及びサイドチャネル攻撃耐性評価を実施する点である。選別のパラメータとしては、選別に用いる統計値や類似係数の種類、基準のサイドチャネル情報の種類、選別の基準値等が挙げられる。
【００４８】
サイドチャネル攻撃耐性の評価後にパラメータの変更を実施することで、耐性評価の内容（耐性の有無、サイドチャネル情報と基準波形との相関値や距離、及び類似度等）に応じて、選別のパラメータを変更することが可能となる。例えば、サイドチャネル情報に付加しているノイズが多いため、評価結果が基準を満たさなかった場合には、選別の基準を厳しくしていくことによって、ノイズが少ないサイドチャネル情報を使って改めてサイドチャネル攻撃耐性評価を実施することが可能となる。さらに、選別のパラメータが順次変更されることで、サイドチャネル情報ごとに事前に選別のパラメータを設定する手間が軽減される。
【００４９】
なお、選別のパラメータを変更した後、同じサイドチャネル情報に対して、サイドチャネル情報の選別とサイドチャネル攻撃耐性評価を実施する方法（図１６参照）も考えられる。
【実施例１】
【００５０】
本発明の第８の実施形態（その３、図１４）において、暗号を実施可能な評価ボード（暗号装置１）においてＡＥＳを実装し、オシロスコープ（サイドチャネル情報測定装置２）を用いて、暗号処理中の評価ボードで消費している電力（サイドチャネル情報）を測定し、測定した消費電力波形を用いてサイドチャネル攻撃耐性を評価する場合について説明する。
今回の実施例では、ステップA4では差分電力解析を実施し、ＡＥＳの秘密鍵のうち何ブロック分解析に成功するかについて調査している。
【００５１】
図１７に選別を行わずに差分電力解析を実施した際の解析成功率を示す。横軸は波形数、縦軸は成功率をあらわしている。図１７において、５０００波形使用したときの解析成功率は８０％となっており、解析成功率は１００％に到達していない。そのため、対象の暗号装置のサイドチャネル攻撃耐性はあると評価することができる。しかしながら、３５００波形（上向き矢印）で急激に解析成功率が低下していることがわかる。また、４３００波形（下向き矢印）以降では解析成功率が８０％で停滞している。これは、３５００波形や４３００波形あたりの段階で異常な消費電力波形が入力されたためである。
【００５２】
図１８に１波形目の消費電力波形を、図１９に３４７６波形目の消費電力波形を、図２０に４２８２波形目の消費電力波形を示す。図１８から図２０において、横軸は時間、縦軸は電力を表している。図１８と比較して、図１９では丸で囲まれた部分で波形に乱れが生じていることがわかる。次に図１８と図２０と比較した場合では、明らかに図２０の波形の形状が異なっていることがわかる。これらの原因として、測定時に暗号機器にかかる電圧が急激に変化した、測定用のプローブがノイズを拾ってしまった、といったものが挙げられる。
【００５３】
図２１に測定した消費電力波形の標準偏差を示す。横軸は波形の番号、縦軸は標準偏差である。図２１より、ほとんどの波形の標準偏差は０．１〜０．１１の範囲に収まっているのに対し、３４７６波形目や４２８２波形目の標準偏差はその範囲を逸脱しているのがわかる。
【００５４】
以上のような消費電力波形が入力される状況での、本発明の実施例について説明する。
はじめに、ステップＡ３で使用するパラメータの一部を決定する。選別の基準として用いる統計値として、消費電力波形の標準偏差を使用する。また、選別の基準値として、最初に入力された消費電力波形の標準偏差の±１０％の値を基準値として設定する。ここで、±１０％という基準値を狭く設定するほどサイドチャネル情報を絞り込むことができ、より正確なサイドチャネル攻撃耐性評価が可能となるが、サイドチャネル情報の再測定を実施する時間が増大してしまう。
【００５５】
なお、基準値として最初の波形の標準偏差としているが、複数の消費電力波形を入力し、それらの標準偏差の平均値やメジアン、最頻値、最大値や最小値等を基準値とすることも可能である。また、ステップＡ９で何波形保存したらステップＡ４に移行するかを決定する。今回の実施例では５０００波形保存したらステップＡ４に移行することにする。
【００５６】
続いて、評価ボードでＡＥＳを実行し、測定したＡＥＳの消費電力波形を入力する（ステップＡ２）。次に、入力した消費電力波形の標準偏差を算出し（ステップＡ１０−１）、算出した標準偏差に応じてステップA3の選別の基準値を決定する（ステップＡ１１−１）。今回の実施例では、１波形目の標準偏差は０．１０６であり、０．０９５４〜０．１１６６が選別の基準値となる。
【００５７】
続いて、消費電力波形に対して選別を実施し（ステップＡ３）、選別でＯＫとなった場合は消費電力波形を一時保存する（ステップＡ８）。一方、選別でＮＧとなった場合には別の消費電力波形を入力し（ステップＡ２）、再び消費電力波形の選別を行う（ステップＡ３）。ここで、先ほどあげた３４７６波形目や４２８２波形目の消費電力波形はＮＧとなり、別の消費電力波形を入力することとなる。
【００５８】
ステップＡ８で消費電力波形を一時保存した場合、保存された波形数が５０００波形に達したか否かを判定する（ステップＡ９）。もし、保存した波形数が５０００波形に達していなかった場合、別の消費電力波形を入力し（ステップＡ２）、再び消費電力波形の選別を行う（ステップＡ３）。保存した波形数が５０００波形に達した場合には、保存した５０００波形の消費電力波形を利用して評価ボードに対するサイドチャネル攻撃耐性を評価する（ステップＡ４）。
【００５９】
図２２に、本発明の実施形態を利用したときの差分電力解析の解析成功率と、図１７の結果とを重ね合わせた結果を示す。ここで、横軸は波形数、縦軸は解析成功率である。また、白線が選別を実施したときの解析成功率、黒線が図１７で示した選別を実施しないときの解析成功率である。図２２において、３５００波形で発生していた急激な成功率の低下は発生しておらず、５０００波形使用したときの解析成功率は１００％となっている。これは、図１７のときの解析成功率より２０％向上している。解析成功率が１００％に達したため、対象の暗号装置のサイドチャネル攻撃耐性はないと評価することができる。
【００６０】
したがって、選別を実施しない状態では、暗号装置の耐性を正しく評価することは困難であるが、選別を実施することで、暗号装置の耐性を正しく評価することが可能になることがわかる。なお、本発明の実施形態であるサイドチャネル攻撃耐性評価装置は、ハードウェア、ソフトウェア、又はこれらの組み合わせにより実現することができる。
【実施例２】
【００６１】
本発明の第７の実施形態（その３、図１１）において、ステップＡ１０において特徴判断で使用する特徴と、それによって決定されるステップＡ３で使用する基準値や基準のサイドチャネル情報、及びその基準値の例について示す。図２３は、特徴判断で使用する特徴と、それによって決定される基準値や基準のサイドチャネル情報、及びその例を示した図である。
【００６２】
まず、平均値を特徴判断で使用した場合について説明する。測定するポイントがずれる等で正確な測定ができなかった場合、基準とした通常のサイドチャネル情報の平均値とは異なる平均値を示すことが考えられる。そのため、最初に基準値を求め、それ以降はその基準値に従って選別する、例えば基準値から±１０％の範囲内の平均値を持つサイドチャネル情報のみ耐性評価に使用することで、異常なサイドチャネル情報を除去することができる。次に、標準偏差を特徴として基準値を決定した場合、実施例１で示した通りに通常測定できる波形とは異なる波形を選別により排除でき、暗号装置の耐性を正しく評価することが可能になる。
【００６３】
続いて、ステップＡ１０において複数の基準波形との相関を求める場合について説明する。入力されるサイドチャネル情報は、測定に使用する機材や周囲の環境（温度、ノイズ）、測定のポイント等、様々な要因で変化する。そのため、あらかじめ用意しておいた基準のサイドチャネル情報とは異なる特徴を入力されるサイドチャネル情報が示す可能性がある。そのため、複数の基準となる情報を用意しておき、その中で最も高い相関を示した情報をステップＡ３における選別の基準とし、例えばその基準波形とサイドチャネル情報との相関値が０．８以上のサイドチャネル情報のみ耐性評価に使用することで、周囲の環境等によらず、サイドチャネル情報を効率的に選別できるようになる。
【００６４】
次に、パワースペクトルのピーク位置を特徴として選別の基準値を決定する場合について説明する。入力されるサイドチャネル情報において、パワースペクトル上において暗号機器のクロック周波数等に依存した特定の周波数帯域にピークが出現することがある。しかしながら、測定ミス等で正確な測定ができなかった場合、本来現れるパワースペクトル上のピークが出現しないことがある。そのため、ステップＡ１０において基準となるパワースペクトルのピーク位置を算出し、ステップＡ３では入力したサイドチャネル情報のパワースペクトルのピーク位置がステップＡ１０で求めたピーク位置と一致するかで選別を実施する。パワースペクトルを算出して基準とすることで、異常なサイドチャネル情報を除去でき、耐性評価の精度を向上させることができる。
【００６５】
なお、本発明の実施形態であるサイドチャネル攻撃耐性評価装置において、選別に平均値や標準偏差、相関値やパワースペクトル以外にも、最頻値、最大値や最小値などの統計値、距離や類似度などの類似係数を用いたり、それらの値を複数組み合わせて用いることが可能である。
【００６６】
上述した実施形態で説明したように、本発明は、評価対象の暗号装置（図１の１）のサイドチャネル情報を測定するサイドチャネル情報測定装置（図１の２）に対し、サイドチャネル情報測定装置で測定されたサイドチャネル情報を用いて暗号装置に対するサイドチャネル攻撃の可否を評価するサイドチャネル攻撃耐性評価装置（図１の３）を備えている。サイドチャネル攻撃耐性評価装置は、サイドチャネル情報測定装置で測定されたサイドチャネル情報をサイドチャネル攻撃耐性評価装置へ取り込むサイドチャネル情報入力部（図１の４）と、サイドチャネル情報入力部により入力されたサイドチャネル情報から耐性評価に適切なサイドチャネル情報を選別するサイドチャネル情報選別部（図１の５）と、サイドチャネル情報選別部により選別された選別済みサイドチャネル情報を用いて暗号装置に対するサイドチャネル攻撃の可否を評価するサイドチャネル攻撃耐性評価部（図１の６）とを備えている。
【００６７】
本発明の第１の視点によれば、入力されたサイドチャネル情報に対して、サイドチャネル情報選別部において基準となる情報との比較を実施し、入力されたサイドチャネル情報を耐性評価に用いるのが適切か否を選別する。その後、入力されたサイドチャネル情報が適切だと判定された場合のみ、サイドチャネル攻撃耐性評価部において、評価対象のサイドチャネル攻撃耐性を評価する手段を備えることを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
【００６８】
本発明の第２の視点によれば、入力されたサイドチャネル情報に対して、サイドチャネル情報選別部において基準となる情報との比較を実施し、入力されたサイドチャネル情報を耐性評価に用いるのが適切か否を選別する。選別の結果、不適切だと判定された場合、別のサイドチャネル情報を入力し、改めて選別を実施する。一方、入力されたサイドチャネル情報が適切だと判定された場合、サイドチャネル攻撃耐性評価部において、評価対象のサイドチャネル攻撃耐性を評価する手段を備えることを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
【００６９】
本発明の第３の視点によれば、入力されたサイドチャネル情報に対して、サイドチャネル情報選別部において基準となる情報との比較を実施し、入力されたサイドチャネル情報を耐性評価に用いるのが適切か否を選別する。選別の結果、不適切だと判定された場合、別のサイドチャネル情報を入力し、改めて選別を実施する。有効だと判定された場合、そのサイドチャネル情報を一時保存する。そして、十分な数のサイドチャネル情報が保存されるまで入力と選別を繰り返す。十分な数のサイドチャネル情報が保存された段階で、サイドチャネル攻撃耐性評価部において、評価対象のサイドチャネル攻撃耐性を評価する手段を備えることを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
【００７０】
本発明の第４の視点によれば、入力されたサイドチャネル情報に対して、サイドチャネル情報の特徴判別を行い、特徴に応じて選別に用いるパラメータを決定する。次に、入力されたサイドチャネル情報に対し、パラメータの下で基準となる情報と比較することで、サイドチャネル情報の選別を行う。その後、選別の結果に応じて、サイドチャネル攻撃耐性評価部において、評価対象のサイドチャネル攻撃耐性を評価する手段を備えることを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
【００７１】
本発明の第５の視点によれば、入力されたサイドチャネル情報に対して、サイドチャネル情報選別部において基準となる情報との比較を実施し、入力されたサイドチャネル情報を耐性評価に用いるのが適切か否を選別する。選別の結果、不適切だと判定された場合、別のサイドチャネル情報を入力し、改めて選別を実施する。一方、入力されたサイドチャネル情報が適切だと判定された場合、サイドチャネル攻撃耐性評価部において、評価対象のサイドチャネル攻撃耐性を評価する。評価の結果が基準を満たしていた場合、耐性評価を終了する。一方、評価の結果が基準を満たしていなかった場合、サイドチャネル情報選別部における選別基準を変更し、改めて情報の選別と耐性評価を実施することを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
【００７２】
なお、上述する実施形態は、本発明の好適な実施形態であり、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
【００７３】
すなわち、本実施形態におけるサイドチャネル攻撃耐性評価装置で実行されるプログラムは、先に述べた各部（サイドチャネル情報入力部、サイドチャネル情報選別部、サイドチャネル攻撃耐性評価部）を含むモジュール構成となっており、実際のハードウェアを用いて具体的手段を実現する。すなわち、コンピュータ（ＣＰＵ）が所定の記録媒体からプログラムを読み出して実行することにより上記各手段が主記憶装置上にロードされ、サイドチャネル情報入力部、サイドチャネル情報選別部、サイドチャネル攻撃耐性評価部が主記憶装置上に生成される。
【００７４】
本実施形態におけるサイドチャネル攻撃耐性評価装置で実行されるプログラムは、インターネット等のネットワークに接続されたコンピュータ上に格納され、ネットワーク経由でダウンロードさせることにより提供されるように構成してもよい。また、上記プログラムをインターネット等のネットワーク経由で提供あるいは配布するように構成してもよい。
【００７５】
また、上記プログラムは、インストール可能な形式又は実行可能な形式のファイルで、フロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ、不揮発性のメモリカード等のコンピュータで読み取り可能な記録媒体に記録されて提供されるように構成してもよい。また、上記プログラムは、ＲＯＭ等にあらかじめ組み込んで提供するように構成してもよい。
【００７６】
この場合、上記記録媒体から読み出された又は通信回線を通じてロードし実行されたプログラムコード自体が前述の実施形態の機能を実現することになる。そして、そのプログラムコードを記録した記録媒体は本発明を構成する。
【図面の簡単な説明】
【００７７】
【図１】本発明の第１の実施形態に係るサイドチャネル攻撃耐性評価装置の構成を示したブロック図である。
【図２】本発明の第１の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図３】本発明の第２の実施形態に係るサイドチャネル攻撃耐性判定装置の構成を示したブロック図である。
【図４】本発明の第２の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図５】本発明の第３の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図６】本発明の第４の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図７】本発明の第５の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図８】本発明の第６の実施形態におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図９】本発明の第７の実施形態（その１）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１０】本発明の第７の実施形態（その２）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１１】本発明の第７の実施形態（その３）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１２】本発明の第８の実施形態（その１）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１３】本発明の第８の実施形態（その２）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１４】本発明の第８の実施形態（その３）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１５】本発明の第９の実施形態（その１）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１６】本発明の第９の実施形態（その２）におけるサイドチャネル攻撃耐性判定処理を示したフローチャートである。
【図１７】本発明の実施例１における選別を実施しない場合の評価ボードに対するＡＥＳの解析成功率を表したグラフである。
【図１８】本発明の実施例１における１波形目の消費電力波形を表したグラフである。
【図１９】本発明の実施例１における３４７６波形目の消費電力波形を表したグラフである。
【図２０】本発明の実施例１における４２８２波形目の消費電力波形を表したグラフである。
【図２１】本発明の実施例１における消費電力波形の標準偏差を表したグラフである。
【図２２】本発明の実施例１における選別を実施した場合（白線）と実施しない場合（黒線）の評価ボードに対するＡＥＳの解析成功率を表したグラフである。
【図２３】本発明の実施例２において、特徴判断で使用する特徴と、それによって決定される基準値や基準のサイドチャネル情報及びその例を示した図である。
【符号の説明】
【００７８】
１    暗号装置
２    サイドチャネル情報測定装置
３    サイドチャネル攻撃耐性評価装置
４    サイドチャネル情報入力部
５    サイドチャネル情報選別部
６    サイドチャネル攻撃耐性評価部
【図１】
2010135881.tif 000003
【図２】
2010135881.tif 000004
【図３】
2010135881.tif 000005
【図４】
2010135881.tif 000006
【図５】
2010135881.tif 000007
【図６】
2010135881.tif 000008
【図７】
2010135881.tif 000009
【図８】
2010135881.tif 000010
【図９】
2010135881.tif 000011
【図１０】
2010135881.tif 000012
【図１１】
2010135881.tif 000013
【図１２】
2010135881.tif 000014
【図１３】
2010135881.tif 000015
【図１４】
2010135881.tif 000016
【図１５】
2010135881.tif 000017
【図１６】
2010135881.tif 000018
【図１７】
2010135881.tif 000019
【図１８】
2010135881.tif 000020
【図１９】
2010135881.tif 000021
【図２０】
2010135881.tif 000022
【図２１】
2010135881.tif 000023
【図２２】
2010135881.tif 000024
【図２３】
2010135881.tif 000025