(57)【要約】  サイドチャネル情報の利用による暗号アルゴリズムや処理タイミングの推定、暗号アルゴリズムの処理系列の判定の可否を評価可能なサイドチャネル攻撃耐性評価装置を提供する。サイドチャネル攻撃耐性評価装置は、暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施するもので、記憶部（特徴データ記憶装置）、測定部（サイドチャネル情報測定器）、処理部（サイドチャネル攻撃耐性評価手段）を有する。記憶部は、事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくはそれらを処理した特徴データを格納する。測定部は、評価対象の暗号装置から発生するサイドチャネル情報を測定する。処理部は、測定部で得られたサイドチャネル情報と記憶部に格納された特徴データとの間の相関値を計算して評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する。
2009072547.tif 000002
【特許請求の範囲】
【請求項１】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する装置であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして格納する記憶部と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する測定部と、
前記測定部で得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理部とを備える、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項２】
請求項１記載のサイドチャネル攻撃耐性評価装置において、
前記処理部は、前記評価対象の暗号装置で実行されている暗号アルゴリズムを判別する、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項３】
請求項１もしくは請求項２記載のサイドチャネル攻撃耐性評価装置において、
前記処理部は、前記評価対象の暗号装置で実行されている暗号処理の処理タイミングを特定する、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項４】
請求項２もしくは請求項３記載のサイドチャネル攻撃耐性評価装置において、
前記処理部は、前記測定部から得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算する処理において高い相関値を示した特徴データの出現回数とその処理タイミングを算出して該特徴データの出現回数とその処理タイミングから暗号アルゴリズムの処理系列を特定する、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項５】
請求項１から請求項４のいずれか１項に記載のサイドチャネル攻撃耐性評価装置において、
前記所定の暗号アルゴリズムは、ＤＥＳ（Date Encryption Standard）及びＡＥＳ（Advanced Encryption Standard）を含み、
前記サイドチャネル情報は、前記暗号装置によるＤＥＳ及びＡＥＳ暗号処理時にそれぞれ漏洩する電磁波の波形データを含む、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項６】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する方法であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして記憶部に格納し、
評価対象の暗号装置から発生するサイドチャネル情報を測定し、
得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する、
ことを特徴とするサイドチャネル攻撃耐性評価方法。
【請求項７】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施するプログラムであって、
事前に既存の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして記憶部に格納する処理と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する処理と、
得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理と、
をコンピュータに実行させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サイドチャネル攻撃耐性評価装置、方法及びプログラムに関し、特に暗号装置から漏洩するサイドチャネル情報を用いて、実装された暗号アルゴリズムや暗号処理タイミング、暗号アルゴリズムの処理系列の推定の可否を判定することでサイドチャネル攻撃への耐性評価を実施するサイドチャネル攻撃耐性評価装置に関する。
【背景技術】
【０００２】
情報の電子データ化が進む中で、情報の保護、秘匿な通信において、暗号はかかせない技術となっている。暗号はその安全性を保つために、鍵等の秘密情報が容易に推測できないようにする必要がある。鍵の全数探索や数学的に解読を行う線形解読や差分解読等といった暗号解析方法が知られているが、現実的な時間での解析は不可能な状況といえる。【０００３】
その一方で、暗号機能付きのＩＣ（Integrated Circuit）カードや携帯端末などの暗号を実装した装置において、攻撃者が処理時間や消費電力などのサイドチャネル情報を精密に測定できるとの仮定の下で、サイドチャネル情報から秘密情報の取得を試みるサイドチャネル攻撃とその対策が大きな研究テーマとなっている（例えば、特許文献１参照）。サイドチャネル情報には、攻撃対象である暗号装置内で実行されている処理やデータに関する情報が含まれており、サイドチャネル情報を解析することで、暗号アルゴリズム、処理タイミング、秘密鍵の推定が可能である。【０００４】
前記サイドチャネル攻撃の具体的な攻撃方法としては、処理時間に注目したタイミング攻撃（非特許文献１参照）や消費電力に注目した電力解析、漏洩電磁波に注目した電磁波解析等が知られている。電力解析攻撃には、単純電力解析(ＳＰＡ：Simple Power Analysis)と電力差分解析(ＤＰＡ：Differential Power Analysis)がある（非特許文献２参照）。また、同文献には、既知のブロック暗号であるＤＥＳ（Data Encryption Standard）に対するＤＰＡについて、具体的な攻撃方法が記載されている。
【特許文献１】特開２００５−２０７３５号公報
【非特許文献１】Paul Kocher, “Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems”, Crypto’ 96, pp.104-113, 1996.
【非特許文献２】P. Kocher, J. Jaffe, B. Jun, “Introduction to Differential Power Analysis and Related Attacks”, 1998.
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した関連技術では、次のような課題があった。【０００６】
暗号装置に実装されている暗号アルゴリズムは、公知であることもあるが、より安全性を高めることを目的として実装されている暗号アルゴリズムを秘匿していることがある。そのアルゴリズムを秘匿とする場合、サイドチャネル攻撃により、実装されている暗号アルゴリズムが推定される危険性がある。【０００７】
また、ＤＰＡ等の統計処理を用いる攻撃においては正確な処理タイミングの把握が必要であるが、この処理タイミングをサイドチャネル情報から推定可能な場合、前記攻撃が適用可能となり、秘密鍵が解読される危険性がある。【０００８】
そこで、本発明は、評価対象の暗号装置に対してサイドチャネル情報の利用による暗号アルゴリズムや処理タイミングの推定、暗号アルゴリズムの処理系列の推定の可否を評価可能なサイドチャネル攻撃耐性評価装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明に係るサイドチャネル攻撃耐性評価装置は、暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する装置であって、事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして格納する記憶部と、評価対象の暗号装置から発生するサイドチャネル情報を測定する測定部と、前記測定部で得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理部とを備える、ことを特徴とする。【００１０】
本発明に係るサイドチャネル攻撃耐性評価方法は、暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する方法であって、事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして記憶部に格納し、評価対象の暗号装置から発生するサイドチャネル情報を測定し、得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する、ことを特徴とする。【００１１】
本発明に係るサイドチャネル攻撃耐性評価プログラムは、暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施するプログラムであって、事前に既存の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理した情報を特徴データとして記憶部に格納する処理と、評価対象の暗号装置から発生するサイドチャネル情報を測定する処理と、得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、事前に測定した既存暗号アルゴリズムもしくは各暗号に共通する処理に関する特徴データと、評価対象の暗号装置にて測定したサイドチャネル情報とを比較することで、暗号アルゴリズムもしくは処理タイミング、暗号アルゴリズムの処理系列等の判定を実施することで、暗号装置のサイドチャネル攻撃耐性評価が可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明の第１の実施形態に係るサイドチャネル攻撃耐性評価装置の概略構成図である。
【図２】本発明の第１の実施形態に係るサイドチャネル攻撃耐性判定手段の処理を示した概略フローチャートである。
【図３】本発明の第２の実施形態に係るサイドチャネル攻撃耐性判定手段の処理を示した概略フローチャートである。
【図４】本発明の第３の実施形態に係るサイドチャネル攻撃耐性判定手段の処理を示した概略フローチャートである。
【図５】ＡＥＳ暗号処理時の電磁波測定波形を示すグラフである。
【図６】ＤＥＳ暗号処理時の電磁波測定波形を示すグラフである。
【図７】ＡＥＳ暗号処理時の電磁波測定波形に対してバンドパスフィルタによりノイズ除去を実施したＡＥＳ暗号の特徴データを示すグラフである。
【図８】ＡＥＳ暗号の１０ラウンド目を示す特徴データを示すグラフである。
【図９】ＤＥＳ暗号処理時の電磁波測定波形に対してバンドパスフィルタによりノイズ除去を実施したＡＥＳ暗号の特徴データを示すグラフである。
【図１０】ＤＥＳ暗号の１ラウンド目を示す特徴データを示すグラフである。
【図１１】ＡＥＳ暗号処理時の電磁波測定波形とＡＥＳ暗号の１０ラウンド目を示す特徴データとの相関算出結果を示すグラフである。
【図１２】ＡＥＳ暗号処理時の電磁波測定波形とＤＥＳ暗号の１ラウンド目を示す特徴データとの相関算出結果を示すグラフである。
【図１３】ＤＥＳ暗号処理時の電磁波測定波形とＡＥＳ暗号の１０ラウンド目を示す特徴データとの相関算出結果を示すグラフである。
【図１４】ＤＥＳ暗号処理時の電磁波測定波形とＤＥＳ暗号の１ラウンド目を示す特徴データとの相関算出結果を示すグラフである。
【符号の説明】
【００１４】
１  暗号装置
２  サイドチャネル情報測定器（測定部）
３  特徴データ記憶装置（記憶部）
４  サイドチャネル攻撃耐性評価手段（処理部）
【発明を実施するための最良の形態】
【００１５】
次に、本発明に係るサイドチャネル攻撃耐性評価装置、方法及びプログラムの実施形態について、図面を参照して詳細に説明する。【００１６】
［第１の実施形態］
本発明の第１の実施形態に係るサイドチャネル攻撃耐性評価装置は、暗号装置から漏洩するサイドチャネル情報を用いて暗号化の内部処理や秘密情報を解析するサイドチャネル攻撃への耐性評価装置を適用したもので、サイドチャネル情報測定器（本発明の測定部に対応する。）と、特徴データ記憶装置（本発明の記憶部に対応する。）と、サイドチャネル攻撃耐性評価手段（本発明の処理部に対応する。）とを備える。【００１７】
サイドチャネル情報測定器は、評価対象の暗号装置から漏洩するサイドチャネル情報を測定する。サイドチャネル情報としては、後述するように暗号装置において内部の処理に影響を受ける電力、電磁波、音、温度等、種々の情報が採用可能である。【００１８】
特徴データ記憶装置は、既存の暗号アルゴリズム、もしくは各暗号に共通する処理に関して、事前に取得したサイドチャネル情報における特徴的なデータを記憶しておく。【００１９】
サイドチャネル攻撃耐性評価手段は、特徴データ記憶装置に記憶された特徴データを用いて、サイドチャネル情報測定器にて測定したサイドチャネル情報と特徴データとの比較により、評価対象の暗号装置に実装されている暗号アルゴリズムの推定や処理タイミングの推定、暗号処理系列の推定の可否を評価する。【００２０】
本実施形態において、サイドチャネル攻撃耐性評価手段は、評価対象の暗号装置にて測定したサイドチャネル情報に対して、事前に取得した既存暗号アルゴリズムの特徴データとの相関を取り、高い相関を示した暗号アルゴリズムを評価対象の暗号装置に実装された暗号アルゴリズムであると判定する手段を備えてもよい。【００２１】
また、サイドチャネル攻撃耐性評価手段は、評価対象の暗号装置にて測定したサイドチャネル情報に対して、事前に取得した既存暗号アルゴリズムの特徴データとの相関を取り、高い相関を示した暗号アルゴリズムを評価対象の暗号装置に実装された暗号アルゴリズムであると判定後、最大の相関を示したタイミングから暗号の処理タイミングを判定する手段を備えてもよい。【００２２】
さらに、サイドチャネル攻撃耐性評価手段は、評価対象の暗号装置にて測定したサイドチャネル情報に対して、事前に取得した各暗号に共通する処理に関する特徴データとの相関を取り、各特徴データと高い相関を示した回数とタイミングを算出し、各特徴データの出現回数、処理タイミングから暗号アルゴリズムの処理系列を判定する手段を備えてもよい。【００２３】
図１は、本実施形態に係るサイドチャネル攻撃耐性評価装置の概略構成を表した図である。【００２４】
図１を参照すると、サイドチャネル攻撃耐性評価装置は、評価対象の暗号装置１と、サイドチャネル情報測定器２と、特徴データ記憶装置３と、サイドチャネル攻撃耐性評価手段４を備えて構成されている。【００２５】
暗号装置１は、平文に対する暗号化や暗号文に対する復号化等の暗復号処理を行う装置である。暗号装置１は、暗復号処理を実行する種々の情報処理装置が採用可能である。例えば、パーソナルコンピュータ（ＰＣ）、携帯端末、ＩＣカード、リーダライタ等がある。【００２６】
サイドチャネル情報測定器２は、暗号装置１が暗復号処理を実施する際に漏洩するサイドチャネル情報を測定する装置である。サイドチャネル情報は、暗号装置１において内部の処理に影響を受ける種々の情報が採用可能である。例えば、電力、電磁波、音、温度等がある。例えば、電磁波をサイドチャネル情報として用いる場合は、サイドチャネル情報測定器２は、オシロスコープやスペクトラムアナライザ等を採用可能である。【００２７】
特徴データ記憶装置３は、事前に評価対象の暗号装置と同じデバイスにより構成された暗号装置１にて、ＤＥＳ、ＡＥＳ（Advanced Encryption Standard）、ＭＩＳＴＹ１等の既存暗号、もしくは共通鍵暗号においては主に採用されているＦ関数、Ｓ−ｂｏｘ、シフト処理等、各種暗号アルゴリズムにおいて共通する処理を実行した際のサイドチャネル情報を特徴データとして記憶する装置である。また、サイドチャネル情報に対してバンドパスフィルタ等の信号処理を施すことで特徴を明確化した情報も特徴データとして採用可能である。【００２８】
サイドチャネル攻撃耐性評価手段４は、サイドチャネル情報測定装置２から入力されるサイドチャネル情報に対して、特徴データ記憶装置３に記憶されている複数の特徴データとの比較を行い、サイドチャネル攻撃への耐性評価を実施する。また、特徴データ記憶装置３に記憶されたデータが信号処理を施している場合は、サイドチャネル情報測定装置２から入力されるサイドチャネル情報に対して同様の信号処理を施す手段を有している。【００２９】
サイドチャネル攻撃耐性評価手段４のハードウェア及びソフトウェア構成は、とくに限定されるものではなく、上記機能を実現可能なものであれば、いずれの形態でも適用可能である。その一例として、コンピュータに上記機能を実現させるためのプログラム（サイドチャネル攻撃耐性評価プログラム）を例示できる。【００３０】
上述のように構成されたサイドチャネル攻撃耐性評価装置において、評価担当者は、事前に取得した複数の暗号アルゴリズムに関するサイドチャネル情報に対して、特徴データを抽出し特徴データ記憶装置３に格納する。その後、評価対象である暗号装置１にて暗号処理を実行すると共に、サイドチャネル情報測定器２にて暗号装置１から漏洩するサイドチャネル情報を測定する。測定されたサイドチャネル情報は、サイドチャネル攻撃耐性評価手段４において、特徴データ記憶装置３に記憶された各特徴データと比較され、これにより、評価対象の暗号装置１におけるサイドチャネル攻撃への耐性評価が実施される。【００３１】
続いて、図２を参照して、本実施形態の動作について説明する。【００３２】
本実施形態は、サイドチャネル攻撃耐性評価手段４にて、評価対象の暗号装置１を用いて測定したサイドチャネル情報に対して、事前に取得した既存暗号アルゴリズムのサイドチャネルデータとの相関を取り、最も高い相関を示した暗号アルゴリズムを評価対象の暗号装置１に実装された暗号アルゴリズムであると判定することにより、評価対象の暗号装置１におけるサイドチャネル攻撃耐性評価を実施する。【００３３】
図２は、本実施形態におけるサイドチャネル攻撃耐性評価手段４の処理を示すフローチャートである。【００３４】
まず、判定処理が開始されると（ステップＡ１）、サイドチャネル情報を入力する（ステップＡ２）。サイドチャネル情報の入力が終了すると、特徴データ記憶装置３から暗号アルゴリズムの特徴データが読み出される（ステップＡ３）。特徴データの読み出しが終了すると、特徴データと入力されたサイドチャネル情報との相関を算出する(ステップＡ４)。【００３５】
ステップＡ３とステップＡ４の処理は、全データとの比較が終了するまで繰り返し実行される（ステップＡ５：ＮＯ）。そして、特徴データ記憶装置３に記憶された全ての暗号アルゴリズムの特徴データに対しての比較を実施した時点（ステップＡ５：ＹＥＳ）で、各相関値から最も高い相関を示した暗号アルゴリズムを評価対象の暗号装置１に実装された暗号アルゴリズムと判定し（ステップＡ６）、判定処理を終了する（ステップＡ７）。【００３６】
その結果、判定されたアルゴリズムが評価対象の暗号装置１に実装されたアルゴリズムであれば、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していないと評価され、判定されたアルゴリズムと実装されたアルゴリズムが異なる場合は、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していると評価される。【００３７】
また、測定データが非常にノイズを含む場合は、サイドチャネル情報の入力後に信号処理を施すことでノイズを削減し、サイドチャネル攻撃耐性評価装置の精度を改善することができる。この場合は、特徴データに対しても同様の信号処理が実施されている必要がある。【００３８】
[第２の実施形態]
続いて、図３を参照して、本発明の第２の実施形態について説明する。本実施形態に係るサイドチャネル攻撃耐性評価装置の概略構成は、図１に示した第１の実施形態のものと同様である。第１の実施形態と同様の構成要素については、同一符号を付しその説明を簡略又は省略する。以下、本実施形態の動作について説明する。【００３９】
本実施形態は、サイドチャネル攻撃耐性評価手段４にて、評価対象の暗号装置１を用いて測定したサイドチャネル情報に対して、事前に取得した既存暗号アルゴリズムのサイドチャネルデータとの相関を取り、最も高い相関を示した暗号アルゴリズムを評価対象の暗号装置１に実装された暗号アルゴリズムであると判定し、その結果から暗号処理タイミングを判定することにより、評価対象の暗号装置１におけるサイドチャネル攻撃耐性評価を実施する。【００４０】
図３は、本実施形態におけるサイドチャネル攻撃耐性評価手段４の処理を示すフローチャートである。図２に示す第１の実施形態との相違点は、ステップＡ６の暗号アルゴリズム判定後、その相関の値から処理タイミングを判定（ステップＡ８）する点である。【００４１】
その結果、判定された暗号処理タイミングが評価対象における暗号処理タイミングと一致すれば、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していないと評価され、判定されたタイミングと評価対象の暗号装置１における暗号処理タイミングが異なる場合は、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していると評価される。【００４２】
また、測定データが非常にノイズを含む場合は、サイドチャネル情報の入力後に信号処理を施すことでノイズを削減し、サイドチャネル攻撃耐性評価装置の精度を改善することができる。この場合は、特徴データに対しても同様の信号処理が実施されている必要がある。【００４３】
[第３の実施形態]
続いて、図４を参照して、本発明の第３の実施形態について説明する。本実施形態に係るサイドチャネル攻撃耐性評価装置の概略構成は、図１に示した第１の実施形態のものと同様である。第１の実施形態と同様の構成要素については、同一符号を付しその説明を簡略又は省略する。以下、本実施形態の動作について説明する。【００４４】
本実施形態は、サイドチャネル攻撃耐性評価手段４にて、評価対象の暗号装置１を用いて測定したサイドチャネル情報に対して、事前に取得した既存暗号アルゴリズムのサイドチャネルデータとの相関を取り、最も高い相関を示した暗号アルゴリズムを評価対象の暗号装置１に実装された暗号アルゴリズムであると判定し、その結果から暗号処理タイミングを判定することにより、評価対象の暗号装置１におけるサイドチャネル攻撃耐性評価を実施する。【００４５】
図４は、本実施形態におけるサイドチャネル攻撃耐性評価手段４の処理を示すフローチャートである。図２に示す第１の実施形態との相違点は、高い相関を検知した場合（ステップＡ９）に、その回数とタイミングを算出する（ステップＡ１０）点と、全データとの比較後（ステップＡ５：ＹＥＳ）に、各特徴データの出現回数、タイミングから暗号処理系列を判定する（ステップＡ１１）点である。【００４６】
その結果、判定された暗号処理系列が評価対象における暗号装置１に実装された暗号処理系列と一致すれば、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していないと評価され、判定された暗号処理系列と異なる場合は、評価対象の暗号装置１はサイドチャネル攻撃に対して耐性を有していると評価される。【００４７】
また、測定データが非常にノイズを含む場合は、サイドチャネル情報の入力後に信号処理を施すことでノイズを削減し、サイドチャネル攻撃耐性評価装置の精度を改善することができる。この場合は、特徴データに対しても同様の信号処理が実施されている必要がある。
【実施例１】
【００４８】
次に、図５〜図１４を参照して、本発明の実施例１について説明する。【００４９】
本実施例は、前述した第１の実施形態において、暗号処理を実行可能な暗号装置１としての評価ボードにより実行される暗号アルゴリズムとしてＡＥＳとＤＥＳをそれぞれ実装し、サイドチャネル情報測定器２としてオシロスコープを用いて、ＡＥＳとＤＥＳの各暗号処理中の評価ボードから漏洩するサイドチャネル情報として電磁波を測定し、測定した電磁波を用いてサイドチャネル攻撃耐性を評価した。【００５０】
まず、ＡＥＳとＤＥＳの特徴データを抽出するために、評価ボードにＡＥＳとＤＥＳをそれぞれ実装し、評価ボードによるＡＥＳ暗号処理及びＤＥＳ暗号処理中にそれぞれ漏洩する電磁波をオシロスコープにより測定した（図５、図６参照）。【００５１】
続いて、測定されたＡＥＳ暗号処理時の電磁波測定波形（図５）に対してバンドパスフィルタ処理を適用してノイズを除去した。そのノイズ除去を実施したＡＥＳ暗号の特徴データとなる波形データを図７に示す。さらに図７中の枠ａ１で囲んだ部分を拡大した波形データを図８に示す。図８中の枠ａ２で囲んだ部分は、１０ラウンドの処理にて実行されるＡＥＳ暗号処理の１０ラウンド目の処理を示す。この波形データを、ＡＥＳの特徴データとして特徴データ記憶装置３に格納した。【００５２】
また、測定されたＤＥＳ暗号処理時の電磁波測定波形（図６）に対してバンドパスフィルタ処理を適用してノイズを除去した。そのノイズ除去を実施したＤＥＳ暗号の特徴データとなる波形データを図９に示す。さらに図９中の枠ｂ１で囲んだ部分を拡大した波形データを図１０に示す。図１０中の枠ｂ２で囲んだ部分は、１６ラウンドの処理にて実行されるＤＥＳ暗号処理の１ラウンド目の処理を示す。この波形データを、ＤＥＳの特徴データとして特徴データ記憶装置３に格納した。【００５３】
次に、評価対象の暗号装置１としての評価ボードにより実行される暗号アルゴリズムとしてＡＥＳが実装された場合を評価するため、再度評価ボードによりＡＥＳ暗号処理を実行し、暗号装置１から漏洩するサイドチャネル情報として評価ボードからの電磁波を測定した。これにより、図５と同様の電磁波測定波形を取得し、その波形データをサイドチャネル攻撃耐性評価手段４に入力した（ステップＡ２）。次に、サイドチャネル攻撃耐性評価手段４では、まず入力された電磁波波形に対して、バンドパスフィルタ処理を適用し、ノイズを除去した。【００５４】
続いて、特徴データ記憶装置３からＡＥＳの特徴データを読み出し（ステップＡ３）、前記バンドパスフィルタ処理後の波形データと読み出したＡＥＳの特徴データとの相関を算出した（ステップＡ４）。その算出結果を図１１に示す。【００５５】
続いて、特徴データ記憶装置３からＤＥＳの特徴データを読み出し（ステップＡ３）、前記バンドパスフィルタ処理後の波形と読み出したＡＥＳの特徴データとの相関を算出した（ステップＡ４）。その算出結果を図１２に示す。【００５６】
上記２つの特徴データとの算出が終了すると（ステップＡ５：ＹＥＳ）、算出した各相関値から高い相関を示したアルゴリズムを判定した（ステップＡ６）。その結果、図１１、図１２よりＡＥＳの特徴データと高い相関を示しており、実装された暗号アルゴリズムがＡＥＳであることが判定された。【００５７】
次に、評価対象の暗号装置１としての評価ボードにより実行される暗号アルゴリズムとしてＤＥＳが実装された場合について、上記と同様の処理を実施した。その結果、ＡＥＳの特徴データとの相関算出結果として図１３、ＤＥＳの特徴データとの相関算出結果として図１４が得られた。図１３、図１４より、ＤＥＳの特徴データと高い相関を示しており、実装された暗号アルゴリズムがＤＥＳであることが判定された。
【実施例２】
【００５８】
次に、本発明の実施例２について説明する。【００５９】
本実施例では、前述した第２の実施形態において、実施例１と同様にサイドチャネル攻撃耐性を評価した。実施例１との相違点は、ステップＡ６の暗号アルゴリズム判定後、その相関の値から処理タイミングを判定（ステップＡ８）する点である。【００６０】
その結果、ＡＥＳ暗号処理における処理タイミングの判定では、図１０より１０個の高い相関が確認された。ＡＥＳは１０ラウンドの処理を実行する暗号アルゴリズムであり、高い相関を示した１０箇所のタイミングにおいて各ラウンド処理が実施されていることが判定された。【００６１】
また、ＤＥＳ暗号処理においても同様に、図１４より１６個の高い相関が確認された。ＤＥＳは１６ラウンドの処理を実行する暗号アルゴリズムであり、高い相関を示した１６箇所のタイミングにおいて各ラウンド処理が実施されていることが判定された。【００６２】
なお、上記各実施形態に係るサイドチャネル攻撃耐性評価装置は、上述した構成要素（サイドチャネル情報測定器（測定部）、特徴データ記憶装置（記憶部）、サイドチャネル攻撃耐性評価手段（処理部））の各処理（機能）を実現可能なものであれば、その装置の物理的構成、その装置内部のハードウェア（回路）及びソフトウェア（プログラム）構成については、特に限定されるものではない。例えば、独立して個別の回路やユニット或いはプログラム部品（プログラムモジュール等）を構成したり、１つの回路やユニット内に一体的に構成したりする等、いずれの形態のものでも適用可能である。これらの形態は、実際に使用する装置の機能や用途等の事情に応じて適宜選択、変更、変形等して実施してもよい。【００６３】
また、上述した構成要素の各機能に対応して、これらと同様の処理を行う各処理ステップを有するサイドチャネル攻撃耐性評価方法も、本発明の範疇に含まれる。【００６４】
さらに、上述した構成要素の各機能の内の少なくとも一部の処理は、ＣＰＵ（Central Processing Unit）を有するマイクロプロセッサ等の処理装置で構成されるコンピュータによるソフトウェア処理で実現してもよい。この場合、コンピュータを機能させるためのプログラム（サイドチャネル攻撃耐性評価プログラム）は、本発明の範疇に含まれる。【００６５】
このプログラムは、ＣＰＵにより直接実行可能な形式のプログラムに限らず、ソース形式のプログラムや、圧縮処理されたプログラム、暗号化されたプログラム等、種々形態のプログラムを含む。また、このプログラムは、装置全体の制御を行うＯＳ（Operating System）やファームウェア等の制御プログラムと連携して動作し、或いはその一部に組み込まれて一体的に動作するアプリケーションプログラムやそれを構成するソフトウェア部品（ソフトウェアモジュール）等、いずれの形態でも提供可能である。さらに、このプログラムは、無線又は有線回線を介して外部装置と通信する通信機能を有する装置に実装して使用する場合、例えば回線上に接続されたサーバ等の外部ノードからダウンロードして自装置内の記録媒体にインストールして使用することもできる。これらの形態は、実際に使用する装置の機能や用途等の事情に応じて適宜選択、変更、変形等して実施してもよい。【００６６】
また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に含まれる。この場合、記録媒体は、ＲＯＭ（Read Only Memory）等のメモリ等、装置内に固定して使用されるものや、利用者により持ち運びが可能な可搬型のもの等、いずれの形態のものでも適用可能である。【００６７】
上記のサイドチャネル攻撃耐性評価手段に対応する本発明の処理部は、評価対象の暗号装置で実行されている暗号アルゴリズムを判別してもよい。また、本発明の処理部は、評価対象の暗号装置で実行されている暗号処理の処理タイミングを特定してもよい。また、本発明の処理部は、測定部から得られたサイドチャネル情報と記憶部に格納された特徴データとの間の相関値を計算する処理において高い相関値を示した特徴データの出現回数とその処理タイミングを算出して該特徴データの出現回数とその処理タイミングから暗号アルゴリズムの処理系列を特定してもよい。【００６８】
以上、実施形態及び実施例を参照して本願発明を説明したが、本願発明は上記実施形態及び実施例に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。【００６９】
この出願は、２００７年１２月５日に出願された日本出願特願２００７−３１４６７０号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００７０】
本発明は、暗号装置から漏洩するサイドチャネル情報を用いて、実装された暗号アルゴリズムや暗号処理タイミング、暗号アルゴリズムの処理系列の推定の可否を判定することでサイドチャネル攻撃への耐性評価を実施するサイドチャネル攻撃耐性評価装置、方法、及びプログラムに適用できる。
【図１】
2009072547.tif 000003
【図２】
2009072547.tif 000004
【図３】
2009072547.tif 000005
【図４】
2009072547.tif 000006
【図５】
2009072547.tif 000007
【図６】
2009072547.tif 000008
【図７】
2009072547.tif 000009
【図８】
2009072547.tif 000010
【図９】
2009072547.tif 000011
【図１０】
2009072547.tif 000012
【図１１】
2009072547.tif 000013
【図１２】
2009072547.tif 000014
【図１３】
2009072547.tif 000015
【図１４】
2009072547.tif 000016
【手続補正書】
【提出日】平成21年10月1日(2009.10.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する装置であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、暗号アルゴリズムの種類を示す特徴データとして格納する記憶部と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する測定部と、
前記測定部で得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されている暗号アルゴリズムを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理部とを備える、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項２】
（削除）
【請求項３】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する装置であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、ラウンド処理を示す特徴データとして格納する記憶部と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する測定部と、
前記測定部で得られたサイドチャネル情報と前記記憶部に格納されたラウンド処理を示す特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されているラウンド処理の処理タイミングを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理部とを備える、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項４】
請求項１もしくは請求項３記載のサイドチャネル攻撃耐性評価装置において、
前記処理部は、前記測定部から得られたサイドチャネル情報と前記記憶部に格納されたラウンド処理を示す特徴データとの間の相関値を計算する処理において、高い相関値を示したラウンド処理の特徴データの出現回数と、その処理タイミングを算出して、該特徴データの出現回数とその処理タイミングから暗号アルゴリズムの処理系列を特定する、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項５】
請求項１、３、４のいずれか１項に記載のサイドチャネル攻撃耐性評価装置において、
前記所定の暗号アルゴリズムは、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）及びＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）を含み、
前記サイドチャネル情報は、前記暗号装置によるＤＥＳ及びＡＥＳ暗号処理時にそれぞれ漏洩する電磁波の波形データを含む、
ことを特徴とするサイドチャネル攻撃耐性評価装置。
【請求項６】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する方法であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、暗号アルゴリズムの種類を示す特徴データとして記憶部に格納し、
評価対象の暗号装置から発生するサイドチャネル情報を測定し、
得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されている暗号アルゴリズムを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する、
ことを特徴とするサイドチャネル攻撃耐性評価方法。
【請求項７】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施するプログラムであって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、暗号アルゴリズムの種類を示す特徴データとして記憶部に格納する処理と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する処理と、
得られたサイドチャネル情報と前記記憶部に格納された特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されている暗号アルゴリズムを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理と、
をコンピュータに実行させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
【請求項８】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施する方法であって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、ラウンド処理を示す特徴データとして格納する記憶部と、
評価対象の暗号装置から発生するサイドチャネル情報を測定し、
前記測定部で得られたサイドチャネル情報と前記記憶部に格納されたラウンド処理を示す特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されているラウンド処理の処理タイミングを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する、
ことを特徴とするサイドチャネル攻撃耐性評価方法。
【請求項９】
暗号装置から漏洩するサイドチャネル情報を用いてサイドチャネル攻撃への耐性評価を実施するプログラムであって、
事前に所定の暗号アルゴリズムを暗号装置で実行することによって得たサイドチャネル情報もしくは当該サイドチャネル情報を処理し、ラウンド処理を示す特徴データとして記憶部に格納する処理と、
評価対象の暗号装置から発生するサイドチャネル情報を測定する測定する処理と、
前記測定部で得られたサイドチャネル情報と前記記憶部に格納されたラウンド処理を示す特徴データとの間の相関値を計算して、前記評価対象の暗号装置で実行されているラウンド処理の処理タイミングを判別することで、前記評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定する処理と、
をコンピュータに実行させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
【国際調査報告】
2009072547.tif 000017
2009072547.tif 000018
2009072547.tif 000019
2009072547.tif 000020