JP5733215B2 - サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム - Google Patents

サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム Download PDF

Info

Publication number
JP5733215B2
JP5733215B2 JP2011545223A JP2011545223A JP5733215B2 JP 5733215 B2 JP5733215 B2 JP 5733215B2 JP 2011545223 A JP2011545223 A JP 2011545223A JP 2011545223 A JP2011545223 A JP 2011545223A JP 5733215 B2 JP5733215 B2 JP 5733215B2
Authority
JP
Japan
Prior art keywords
side channel
analysis range
evaluation
channel attack
resistance evaluation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2011545223A
Other languages
English (en)
Other versions
JPWO2011071063A1 (ja
Inventor
哲孝 山下
哲孝 山下
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2011545223A priority Critical patent/JP5733215B2/ja
Publication of JPWO2011071063A1 publication Critical patent/JPWO2011071063A1/ja
Application granted granted Critical
Publication of JP5733215B2 publication Critical patent/JP5733215B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラムに関し、特に、暗号装置から漏洩するサイドチャネル情報を用いて、暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラムに関する。
情報の電子データ化が進む中で、情報の保護、秘匿な通信、といった観点から暗号は欠かせない技術となっている。暗号はその安全性を保つために、鍵等の秘匿情報が容易に推測できないようにする必要がある。鍵の全数探索や数学的に解読を行う線形解読や差分解読等といった暗号解析方法が知られているが、現実的な時間での解析は不可能な状況といえる。
その一方で、暗号機能付きのICカードや携帯端末などの暗号を実装した装置において、攻撃者が処理時間や消費電力などのサイドチャネル情報を精密に測定できるとの仮定の下で、サイドチャネル情報から秘匿情報の取得を試みるサイドチャネル攻撃とその対策が大きな研究テーマとなっている。サイドチャネル情報には、攻撃対象である暗号装置内で実行されている処理やデータに関する情報が含まれており、サイドチャネル情報を解析することで、暗号アルゴリズム、処理タイミング、秘密鍵の推定が可能である。前記サイドチャネル攻撃の具体的な攻撃方法としては、処理時間に注目したタイミング攻撃(例えば非特許文献1参照)や消費電力に注目した電力解析(例えば非特許文献2参照)、漏洩電磁波に注目した電磁波解析(例えば非特許文献3参照)等が知られている。
電力解析の一手法として、Kocher氏らは非特許文献2において差分電力解析(DPA:Differential Power Analysis)を提案した。DPAではまず、大量のサイドチャネル情報を測定し、取得した大量の測定波形に対して統計処理を行う。統計処理を行う際に、秘密鍵を仮定して処理を行うが、この仮定が正解であれば統計処理を行った後の波形において、秘密鍵と関連している箇所の特徴としてピークが出現する。一方、仮定が不正解であれば、統計処理を行った後の波形において、ピークは出現しない。このピークを見ることによって、秘密鍵を解析するのがDPAである。DPAでは、大量のサイドチャネル情報に対して統計処理をすることにより、波形に含まれるノイズなどの余分な情報の影響を排除することにより攻撃の精度を高めている。さらに、攻撃の精度を上げる方法として、相関電力解析(CPA:Correlation Power Analysis)等DPAから派生した方法が複数提案されている(例えば非特許文献4参照)。
暗号を実装した装置においては、実用上、サイドチャネル攻撃に対する攻撃耐性(以下、適宜「耐タンパ性」と呼ぶ。)が求められる。そのため、サイドチャネル情報から暗号アルゴリズムなどの秘匿情報の推定を困難にする耐タンパ技術の研究がすすめられている。ここで、耐タンパ性とは攻撃に対して、秘匿情報の漏洩や機能の改変を防ぐ性能のことである。
耐タンパ技術として、恣意的にサイドチャネル情報に不要な情報を付加することで、サイドチャネル情報から秘匿情報の漏洩を防ぐ耐タンパ手法(特許文献1参照)等が提案されている。ここで、上記のような耐タンパ手法を適用することで実際にサイドチャネル攻撃への耐性が向上しているか、耐タンパ手法の有効性を評価する必要がある。
また、実装された暗号装置が本当に安全なのか確認するため、サイドチャネル攻撃に対する耐性を評価する技術が求められている(例えば非特許文献5参照)。
特開2007−116215号公報
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 Works hop on Cryptographic Hardware and Embedded Systems 2001 (CHES 2001), LNCS 21 62 Paris, France, May 2001, pp 251-261. Eric Brier, Christophe Clavier, and Francis Olivier, "Correlation Power Analysis with a Leakage Model," CHES2004, pp.16-29, 2004. 今井秀樹"情報セキュリティ−安全・安心な社会のために−",電子情報通信学会誌,2007年,Vol.90,No.5,pp.334−339
上述のように、例えば非特許文献5に記載の技術を用いることによりサイドチャネル攻撃に対する耐性を評価することが可能となる。
しかしながら、評価する際に、波形の処理範囲が広すぎることが原因で、解析に失敗することがある。例えば、DPAにおいて、秘密鍵と関連していない箇所を処理範囲とすることによって、不正解鍵を仮定したときに、秘密鍵と関連していない箇所において特徴が現れてしまい、解析に失敗する場合がある。その結果、実際には耐性が低いにもかかわらず、耐性があると誤判定することがある。よって、耐性評価の精度を高めるためには、サイドチャネル攻撃耐性評価において余分な部分を処理しないことが求められる。
そこで、本発明は、サイドチャネル情報上の不要な情報による耐性評価の精度低下を抑制し、暗号機器に対するサイドチャネル攻撃の可否を高精度で評価可能な、サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラムを提供することを目的とする。
本発明の第1の観点によれば、暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置において、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、
前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定部と、前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備え、前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価装置が提供される。
本発明の第2の観点によれば、暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価する装置である評価装置が行うサイドチャネル攻撃耐性評価方法において、前記評価装置が備えるサイドチャネル情報受付部が、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付ステップと、前記評価装置が備える解析範囲設定部が、前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定ステップと、前記評価装置が備えるサイドチャネル攻撃耐性評価部が、前記解析範囲設定ステップで設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価ステップと、を備え、前記解析範囲設定部が前記サイドチャネル攻撃耐性評価ステップにおける評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価方法が提供される。
本発明の第3の観点によれば、暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置に組み込まれるサイドチャネル攻撃耐性評価プログラムにおいて、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定部と、前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備え、前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されるサイドチャネル攻撃耐性評価装置としてコンピュータを機能させることを特徴とするサイドチャネル攻撃耐性評価プログラムが提供される。
本発明によれば、解析範囲を設定して耐性評価に用いるサイドチャネル情報を絞り込むことで、余分な範囲まで評価に用いることで発生してしまう誤った評価を行う可能性を抑制できることから、評価対象のサイドチャネル攻撃耐性の評価精度の向上を図ることが可能となる。
本発明の第1の実施形態に係るサイドチャネル攻撃耐性評価装置の構成を表すブロック図である。 本発明の第1の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 本発明の第2の実施形態に係るサイドチャネル攻撃耐性判定装置の構成を表すブロック図である。 本発明の第2の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 本発明の第3の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 差分電力解析(DPA)のピーク検出手段を示したフローチャートである。 本発明の第4の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 本発明の第4の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャート(解析失敗時に事前に決められた基準に基づいて解析範囲を設定)である。 本発明の第5の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 本発明の第6の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 本発明の第7の実施形態に係るサイドチャネル攻撃耐性判定装置の動作を示したフローチャートである。 DES暗号処理時の電磁波測定波形である。 DES暗号処理時の電磁波測定波形において、設定された解析範囲を示した図である。 DES暗号処理時の電磁波測定波形において、設定された解析範囲部分を抜き出した図である。 実施例1において、最初に耐性評価を実施した時の解析結果を示した表を表す図である。 実施例1において、解析範囲を設定した後に耐性評価を実施した時の解析結果を示した表を表す図である。
以下、本発明に係るサイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラムの実施形態について、図面を参照して詳細に説明する。
まず、本発明の実施形態の概略を説明する。本実施形態は、概略、評価対象の暗号装置と、暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定装置と、サイドチャネル情報測定装置で測定されたサイドチャネル情報を用いて暗号装置のサイドチャネル耐性評価、すなわち暗号装置の暗号化に関する内部処理や秘匿情報を解析するサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置とを有している。
サイドチャネル攻撃耐性評価装置は、サイドチャネル情報測定装置により測定されたサイドチャネル情報をサイドチャネル攻撃耐性評価装置に入力するサイドチャネル情報入力部と、サイドチャネル情報入力部から入力されたサイドチャネル情報に対して、耐性評価における解析範囲を設定する解析範囲設定部と、解析範囲設定部で設定された範囲内のサイドチャネル情報を用いて前記暗号装置のサイドチャネル耐性評価を行うサイドチャネル攻撃耐性評価部とを有している。
[第1の実施形態]
図1は、本発明の第1の実施形態であるサイドチャネル攻撃耐性評価装置300の概略構成及びその他の装置について表したブロック図である。
図1を参照すると、本実施形態は、暗号装置100、サイドチャネル情報測定装置200及びサイドチャネル攻撃耐性評価装置300を有する。
暗号装置100は、平文に対する暗号化や暗号文に対する復号化等の処理(以下、これらの処理を総称して「暗復号処理」と呼ぶ。)を行う装置である。暗号装置100としては、暗復号処理を実行可能な種々の情報処理装置を採用することが可能である。採用可能な装置としては、パーソナルコンピュータ(PC)、携帯電話機等の携帯端末、接触型および非接触型のICカード、リーダライタ等が例示できる。
サイドチャネル情報測定装置200は、暗号装置100が暗復号処理を実施する際に漏洩するサイドチャネル情報を測定する装置である。測定対象とするサイドチャネル情報としては、暗号装置において内部の処理に影響を受ける種々の情報が考えられる。具体的には、電力、電磁波、音、温度等が例示できる。
もしも、電磁波をサイドチャネル情報として用いるのであれば、サイドチャネル情報測定装置200は、オシロスコープやスペクトラムアナライザ等を採用することが可能である。
サイドチャネル攻撃耐性評価装置300は、サイドチャネル情報測定装置200から得られるサイドチャネル情報を用いて、評価対象の暗号装置である暗号装置100のサイドチャネル攻撃に対する耐性を評価する装置である。
サイドチャネル攻撃耐性評価装置300は、サイドチャネル情報受付部301と、解析範囲設定部302と、サイドチャネル攻撃耐性評価部303を有している。
サイドチャネル情報受付部301は、サイドチャネル情報測定装置200で測定されたサイドチャネル情報をサイドチャネル攻撃耐性評価装置300に取り込む機能を有する。なお、サイドチャネル情報受付部301が具体的にどのような方法によりサイドチャネル情報を取り込むのかは本実施形態の要旨ではない。そのため、任意の方法を用いて取り込むことが可能である。取り込む方法としては、例えば、サイドチャネル情報測定装置200からUSB(Universal Serial Bus)やRS−232C(Recommended Standard 232 version C)、IEEE1394(Institute of Electrical and Electronic Engineers 1394)、SCSI(Small Computer System Interface)等の規格に準拠したケーブルを経由して取り込む方法、赤外線や電波などの電磁波を受信して取り込む方法、ハードディスク、CD(Compact Disc)やDVD(Digital Versatile Disc)、ブルーレイディスク、フロッピー(登録商標)ディスク、磁気テープ、フラッシュメモリなどの記録媒体から読み込んで取り込む方法などが挙げられる。
解析範囲設定部302は、サイドチャネル攻撃耐性評価部303で用いるサイドチャネル情報の解析範囲の設定を行う。具体的な解析範囲の設定方法としては、以下に記載する4つの方法が例示できる。
具体的な解析範囲の設定方法の1つ目として、外部からの入力に基づいて解析範囲を設定する方法が挙げられる。この方法では、外部からの入力が検出された時点を基準として解析範囲を設定することとなる。検出した時点を解析範囲の始点としたり、終点としたり、または解析範囲の中心点として解析範囲を設定したり、検出した時点から一定ポイント前もしくは後ろのポイントを解析範囲の始点や終点、中心点とする設定方法などが考えられる。
具体的な解析範囲の設定方法の2つ目として、入力されたサイドチャネル情報に基づいて解析範囲を設定する方法が挙げられる。この方法では、例えばサイドチャネル情報の立ち上がりや立下り、スパイクなどを事前に決められたパラメータに基づいて検出する。そして、検出した位置を基準に解析範囲を設定することとなる。この方法でも、検出した位置を基準として、1つ目の方法と同様に、解析範囲の始点や終点などを設定する方法が考えられる。
具体的な解析範囲の設定方法の3つ目として、入力されたサイドチャネル情報に対して、基準情報との相関の算出、マッチングなどの演算を行い、その演算結果に基づいて解析範囲を設定する方法が挙げられる。こちらの方法では、高い相関が得られた箇所やマッチングでもっとも類似度が高かった箇所を基準として1つ目の方法と同様に解析範囲の始点などを決める方法が考えられる。
具体的な解析範囲の設定方法の4つ目として、一度、サイドチャネル情報全体、もしくは適当に設定した解析範囲内のサイドチャネル情報を使ってサイドチャネル攻撃耐性評価を実施し、その結果に基づいて解析範囲を設定する方法が挙げられる。なお、上述した4つの方法はあくまで例として示したに過ぎない。これら4つの方法以外の方法を用いることも可能である。
サイドチャネル攻撃耐性評価部303は、解析範囲設定部302で設定された範囲内のサイドチャネル情報を用いて、暗号装置100のサイドチャネル攻撃への耐性評価を実施する。評価方法として、解析範囲内のサイドチャネル情報に対してサイドチャネル攻撃を行い、攻撃が成功するか否かの判定結果を利用する方法や、基準波形との相関や距離、および類似度を利用する方法等があげられる。なお、サイドチャネル攻撃の方法としては、タイミング攻撃、電磁波解析、単純電力解析、差分電力解析、故障利用攻撃、キャッシュ攻撃、音響解析攻撃等が例示できる。また、耐性評価において、複数のサイドチャネル情報を必要とする場合には、サイドチャネル情報受付部301での入力、および解析範囲設定部302での処理を複数回行うことで、複数のサイドチャネル情報を取得することが可能である。または、2波形目以降は解析範囲設定部302で設定された範囲のみを繰り返しサイドチャネル情報受付部301で入力することで、複数のサイドチャネル情報を取得可能となる。また、解析範囲設定部302が解析範囲を耐性評価の結果に応じて変動させる機能を有している場合は、サイドチャネル攻撃の耐性評価の内容(耐性の有無、解析時のピークの出現箇所やピークの値、相関値、距離、類似度等)を解析範囲設定部302に伝播する手段を有する。
上述のように構成されたサイドチャネル攻撃耐性評価装置において、最後に、設定された解析範囲内のサイドチャネル情報を用いて、サイドチャネル攻撃耐性評価部303にて暗号装置100のサイドチャネル攻撃への耐性評価を実施する。なお、図1中で「S1」及び「S2」は「サイドチャネル情報」を表すものとする。また、図1中で「S3」は「解析範囲設定済みサイドチャネル情報」を表すものとする。更に、図1中で「S4」は「サイドチャネル情報耐性評価結果情報」を表すものとする。また、サイドチャネル攻撃耐性評価部303から解析範囲設定部302への接続は動作例によっては必ずしも必要ではない。この接続及び「S4」を省略することも可能である。
次に、本実施形態における動作例について説明する。図2は、本実施形態におけるサイドチャネル攻撃耐性評価装置300の動作例を表すフローチャートである。
動作例においては、解析範囲設定部302にて、サイドチャネル情報受付部301から入力したサイドチャネル情報に対して解析範囲を設定し、サイドチャネル攻撃耐性評価部303にて、設定された解析範囲内のサイドチャネル情報を用いて暗号装置100のサイドチャネル攻撃耐性評価を実施する。
まず、評価処理が開始されると、サイドチャネル情報受付部301が、サイドチャネル情報を受け付け、受け付けたサイドチャネル情報を取り込む(ステップA1)。
サイドチャネル情報の取り込みが終了すると、解析範囲設定部302が、入力されたサイドチャネル情報を事前に決められた基準に基づいて、サイドチャネル攻撃耐性評価部303で用いるサイドチャネル情報の解析範囲を設定する(ステップA2)。
サイドチャネル攻撃耐性評価部303は、解析範囲設定部302で設定された解析範囲内のサイドチャネル情報を用いてサイドチャネル攻撃耐性評価を実施し、評価を終了する(ステップA3)。
以上のような方法を用いて、解析範囲を設定し、耐性評価に用いるサイドチャネル情報を絞り込むことで、余分な範囲まで評価に用いることで発生してしまう誤った評価を行う可能性を抑制できる。そして、このように誤った評価を行う可能性を抑制できることから、暗号装置機器(暗号装置100)に対して高い精度でサイドチャネル攻撃耐性を評価することが可能となる。
また、解析範囲を絞り込むことにより、評価に要する時間を抑制することができる。一方、同一の時間でより大量の情報を評価に使えるようになるため、評価精度の向上につながる。
[第2の実施形態]
続いて、本発明の第2の実施形態の構成例について説明する。図3は、本実施形態における構成例を示したブロック図である。
第1の実施形態の構成例との相違点は、サイドチャネル攻撃耐性評価装置310が、サイドチャネル受付部301の代わりにサイドチャネル情報測定部304を有している点と、外部のサイドチャネル情報測定装置200が不要となっている点である。
サイドチャネル情報測定部304は、サイドチャネル情報測定装置200と同様に、暗号装置100が暗復号処理を実施する際に漏洩するサイドチャネル情報を測定する機能を有する。測定の対象として、例えば、電力、電磁波、音、温度等が挙げられる。なお、図1と同様に、図3中で「S2」は「サイドチャネル情報」を表すものとする。また、図3中で「S3」は「解析範囲設定済みサイドチャネル情報」を表すものとする。更に、図3中で「S4」は「サイドチャネル情報耐性評価結果情報」を表すものとする。また、サイドチャネル攻撃耐性評価部303から解析範囲設定部302への接続は動作例によっては必ずしも必要ではない。この接続及び「S4」を省略することも可能である。
図4は、本実施形態におけるサイドチャネル攻撃耐性評価装置310の動作例を表すフローチャートである。
第1の実施形態の動作例との相違点は、評価開始時のサイドチャネル情報の入力において、サイドチャネル測定部304が暗号装置100からサイドチャネル情報を測定することによって、サイドチャネル情報がサイドチャネル攻撃耐性評価装置310へ取り込まれる点である(ステップA1−1)。サイドチャネル情報入力後の動作の流れは第1の実施形態と同様である(ステップA2、A3)。
本実施形態では、サイドチャネル情報測定部304をサイドチャネル攻撃耐性評価装置310に組み込むことで、暗号装置100から直接サイドチャネル情報を取り込むことができる。よってサイドチャネル情報測定装置200が存在しない環境下においてもサイドチャネル攻撃耐性評価を実施することが可能となる。
[第3の実施形態]
続いて、本発明の第3の実施形態について説明する。本実施形態は、一度サイドチャネル情報の全体、若しくは、予め設定した解析範囲内、のサイドチャネル情報を使ってサイドチャネル攻撃耐性評価を実施する。また、その評価結果に基づいて解析範囲を再設定し、再びサイドチャネル攻撃耐性を評価する。さらに、評価結果に基づいて解析範囲の設定と耐性評価を繰り返すという動作をする。
図5は、本実施形態におけるサイドチャネル攻撃耐性評価装置300のフローチャートである。
第1の実施形態との相違点は、耐性評価及び解析範囲設定を繰り返す点である。
具体的には、サイドチャネル情報受付部301がサイドチャネル情報を取り込んだ後(ステップA1)に、まずサイドチャネル攻撃耐性評価部303がサイドチャネル攻撃耐性の評価を行う(ステップA3)。そして、ステップA3における評価結果に応じて解析範囲設定部302が解析範囲を設定(ステップA2−1)する。そして、再びサイドチャネル攻撃耐性評価部303における耐性評価および解析範囲設定部302における解析範囲設定を繰り返す(ステップA3、ステップA2−1)。
なお、繰り返しの終了については、サイドチャネル攻撃耐性の評価を行った後(ステップA3)に解析範囲が一定範囲以下になるか、既定回数ループするか、もしくは耐性評価の結果が基準を満たすなどしたら終了する(ステップA5においてYES)。これらの条件はあくまで例示であり、他の条件を繰り返し終了の条件としてもよい。また、何れかの条件の一つを満たせば繰り返し終了としてもよく、複数の条件の全てを満たした場合に繰り返し終了としてもよい。
一方、条件を満たさない場合は再度ステップA2−1に進み動作を継続する(ステップA5においてNO)。
ここで、ステップA5における耐性評価結果の基準としては、秘密鍵の解析成功/不成功や、基準波形との距離や相関・類似度の高さが例示できる。また、複数の鍵を解析対象としている場合には、解析に成功した鍵の数。また、DPAやそれの派生した手法を利用しているならばピークの高さ、などといったものが例示できる。更に、1回だけ解析範囲を絞り込んだだけでは十分に解析精度を向上できなくても、解析範囲の再設定を繰り返すことにより、解析精度の向上が期待できる。
[第4の実施形態]
続いて、本発明の第4の実施形態について説明する。本実施形態では、サイドチャネル攻撃としてDPAを対象としたときに、解析範囲を再設定するときの基準として、複数ある鍵のうち一部の鍵解析に成功したときのピーク位置を利用する方法について説明する。
DPAでは、消費電力波形Wとその波形に対応する暗号文もしくは平文から秘密鍵の推測を行う。ここでは、暗号文Cを使う場合を説明する。説明に際しては、図6のフローチャートを参照する。
推測する際に、ある推測鍵K'を仮定する(ステップB1)。
次に、K'と暗号文Cを選択関数と呼ばれる関数F(K',C)を利用して、Wを2つのグループに分類する(ステップB2)。
ステップB2においてすべてのWの分類が終わったら、グループごとにWの平均を求める(ステップB3)。
そして、2つのグループのWの平均の差分を計算する(ステップB4)。
ここで、推測した鍵K'が正解鍵と一致していた場合には、消費電力波形Wと関数Fとは強い相関をもつため、差分をとったあとのWにおいてピークが出現する。一方、K'と正解鍵が一致していない場合、WとFでは相関がなく差分をとったあとのWにピークが出現しない。そのため、2グループの平均の差分を計算した後にピークの検出を行う(ステップB5)。すべての鍵候補に対して同様にピーク検出処理を行い、もっとも高いピークを示したK'を推測結果とする。最後に、推測した鍵が正解鍵と一致した場合に、解析成功したことになる。
ここで、推測する鍵が複数ある場合についてみてみる。例えば、DES(Data Encryption Standard)のラウンド鍵を推測する場合には、8個の6bit部分鍵を推測することとなる。このとき、一部の部分鍵しか解析成功しなかった場合に、より解析精度を高めるために解析範囲を絞り込む基準として、本発明の実施形態ではDPAのピークを利用する。
図7は、本実施形態におけるサイドチャネル攻撃耐性評価装置300のフローチャートである。
第3の実施形態の動作例との相違点は、ステップA2−1の内容が変更され、ステップA6が追加されており、またステップA2−2と修正されている点である。
具体的には、解析範囲設定部302が解析範囲の設定をする際に、一度解析した結果、解析成功した部分鍵があれば(ステップA6においてYES)、その部分鍵でピークが出現した箇所を解析範囲の再設定の基準とする点(ステップA2−2)である。
例えばDESの解析において、8個の部分鍵のうち、1個でも解析成功した鍵があった場合、その解析成功した鍵でピークが現れた箇所を解析範囲の設定基準とする。一方で、解析成功した部分鍵が存在しない場合の対処としては、そのまま動作終了する方法が一例として考えられる(ステップA6においてNO)。また、動作を終了させるのではなく事前に決められた方法で解析範囲を設定してしまう方法(図8のステップA2−3)等も考えられる。範囲の設定の仕方としては、解析に成功した正解鍵のピークのうち最もピークが高かった箇所を基準とする方法や、とりあえず解析範囲を半分にして、両方でそれぞれ解析する方法、などが考えられる。
もし、複数の部分鍵が解析成功していた場合には、次のような方法で解析範囲を設定することができる。1つ目は、鍵に優先順位をつけておき、優先順位が上位の鍵のピークを基準とする方法である。最初の部分鍵から順に位をつけることも可能である。2つ目は、ピークの高さを比較し、最も高いピークを基準とする方法である。3つ目は解析成功している或る部分鍵において、正解鍵以外の鍵候補の中で最も高いピークと正解鍵のピークを比較し、2つのピークの差もしくは2つのピークの比が最も大きくなるピークを基準とする方法が考えられる。
なお、DPAにおいては2つのグループの差分によって鍵を推測するが、DPAから派生した方法では差分以外の特徴で鍵を推測することがある。たとえば、CPAでは相関係数の高さによって鍵の推測を行う。本発明の実施形態は、DPA以外の手法においても、鍵を推測するために用いる特徴を、解析範囲の設定基準として適用することが可能である。
暗号化処理においては、各部分鍵を使った処理を連続もしくは並列に処理することがある。このような場合には、各部分鍵において相関を持つ箇所が近傍に存在することとなる。よって、正解した鍵のピークが出現した箇所を基準として解析範囲を絞り込むことによって、解析精度が向上し、サイドチャネル攻撃耐性評価の評価精度の向上につながる。
[第5の実施形態]
続いて、本発明の第5の実施形態について説明する。本実施形態では、正解鍵のピークとそれ以外の鍵のピークを比較することによって、解析範囲を設定する方法について説明する。
図9は、本実施形態におけるサイドチャネル攻撃耐性評価装置300のフローチャートである。
第4の実施形態の動作例との相違点は、解析成功した部分鍵が複数あった場合に、正解鍵のピーク値とそれ以外の鍵候補のピーク値とを比較し、そのピーク値の比較結果に応じて解析範囲を決める点である。
具体的には、解析成功した部分鍵が複数あった場合に(ステップA7においてYES)、解析範囲設定部302が、正解鍵のピーク値とそれ以外の鍵候補のピーク値とを比較し(ステップA8)、そのピーク値の比較結果に応じて解析範囲を決める点である(ステップA2−5)。
なお、解析成功した鍵が1つだけであった場合には(ステップA7においてNO)、解析範囲設定部302が、解析成功した鍵のピーク位置に基づいて解析範囲を設定する(ステップA2−4)。
例えば、DESの8個ある6bit部分鍵の推測において、2個の部分鍵の解析に成功していた場合について述べる。DESの1個の部分鍵あたりの候補の数は64個あり、64個の鍵候補においてピーク値が計算され、正解鍵におけるピーク値が最も高ければ解析成功となる。本発明の実施形態では、正解鍵以外の63個の鍵候補におけるピーク値のうち、最も高いピーク値と正解鍵のピーク値を比較する。それを、すべての解析に成功している正解鍵に対して実施し、もっともピーク値の比較結果が良かったものを解析範囲設定の基準とする。比較方法としては、ピーク同士の差や比が考えられる。例えば、部分鍵Aにおいて正解鍵のピークが10、他の鍵候補における最大のピークが8であった場合、差分なら2、比なら10/8ということになる。同様に、部分鍵Bにおいて正解鍵のピークが6、他の鍵候補における最大のピークが2であった場合、差分なら4、比なら6/2ということになる。この場合、部分鍵Bのほうが部分鍵Aの場合よりも差や比が大きいこととなるので、部分鍵Bのピークが現れた箇所を解析範囲の設定基準とする。
ピークが最も高いものを基準とする方法もあるが、他の鍵候補のピーク値が正解鍵のピーク値と近い場合には、解析範囲を変更した場合に正解鍵のピークと他の鍵候補のピークの区別がつきにくくなることがある。また、他の鍵候補のピーク値が正解鍵のピーク値と近い場合、偶然正解鍵のピークが大きくなったという可能性もある。そのため、ピークを比較して解析範囲の基準を決定することで解析精度の向上、ならびに耐性評価の精度向上が期待できる。
[第6の実施形態]
続いて、本発明の第6の実施形態について説明する。本実施形態では、正解した部分鍵が存在しなかった場合に、正解鍵のピークとそれ以外の鍵のピークを比較することによって、解析範囲を設定する方法について説明する。
図10は、本実施形態におけるサイドチャネル攻撃耐性評価装置300のフローチャートである。
第4の実施形態の動作例との相違点は、正解した部分鍵が存在しなかった場合に、正解鍵のピークと他の鍵候補の中で最も高いピークとを比較し、そのピーク値の比較結果に応じて解析範囲を決定する点である。
具体的には、解析正解した部分鍵が存在しなかった場合に(ステップA6においてNO)、解析範囲設定部302が、正解鍵のピークと他の鍵候補の中で最も高いピークとを比較し(ステップA9)、そのピーク値の比較結果に応じて解析範囲を決定する点である(ステップA2−6)。
例えば、DESの8個ある6bit部分鍵の推測において、1つも部分鍵の解析に成功しなかった場合について述べる。解析成功している鍵がある場合には、その鍵のピークを基準に解析範囲を決めることとなる。一方、成功した鍵がない場合には、正解鍵のピークと、それ以外の鍵候補の中で最も高いピークとを比較し、その比較結果に応じて解析範囲を決定する。比較方法としては第5の実施形態同様にピーク同士の差や比が考えられる。ただし、第5の実施形態とは異なり、本実施形態では、正解鍵のピークとそれ以外のピークとの差もしくは比が最も小さくなる、正解鍵のピーク箇所を解析範囲の設定基準とする。
最大のピークと正解鍵のピークとの差や比が小さいならば、正解鍵のピークが現れた箇所で解析範囲を絞り込んだときに、正解鍵のピークが最も高くなり解析に成功する可能性が高い。したがって、解析失敗時においてピークの差や比によって解析範囲を設定することで解析精度が向上し、結果として耐性評価の精度向上が期待できる。
[第7の実施形態]
続いて、本発明の第7の実施形態について説明する。本実施形態では、一度サイドチャネル情報全体もしくは適当に設定した解析範囲内のサイドチャネル情報を使ってサイドチャネル攻撃耐性評価を実施し、その結果に基づいて解析範囲を再設定、再びサイドチャネル攻撃耐性を評価する。さらに、評価結果に基づいて解析範囲の設定と耐性評価を繰り返す方法について説明する。
図11は、本実施形態におけるサイドチャネル攻撃耐性評価装置300の動作例を表すフローチャートである。
第3の実施形態の動作例との相違点は、サイドチャネル情報が入力された後(ステップA1)、解析範囲設定部302が解析範囲をAとBの2つに分割する(ステップA10)。ここで、ループ回数が指定回数まわったか、2分した解析範囲が一定値以下になってしまったら、そこで評価を終了とする(ステップA11においてYES)。
一方、ループ回数・解析範囲の終了条件を満たさなければ(ステップA11においてNO、サイドチャネル攻撃耐性評価部303がA、Bそれぞれの解析範囲内で解析を実施する(ステップA3−1、A3−2)。
そして、ステップA3−1又はステップA3−2のどちらかの解析結果が基準を満たした場合、そこで評価を終了とする(ステップA12においてYES)。
一方、解析結果が基準を満たさなかった場合(ステップA12においてNO)、解析範囲設定部302が各解析結果を比較する(ステップA13)。そして、より有効だと判定されたほうの解析範囲を次に2分する解析範囲とする(ステップA14)。そして、再び解析範囲を2分して(ステップA10)各範囲に対する解析を繰り返す。
なお、解析範囲の分割については2つではなく、3つ以上に分割することも考えられる。この場合、各範囲内で解析と結果の比較が行われることとなる。
ステップA12における基準としては、第3の実施形態のときと同様、秘密鍵の解析成功/不成功や、基準波形との距離や相関・類似度の高さ、複数の鍵を解析対象としている場合には、解析に成功した鍵の数等が例示できる。また、DPAやそれの派生した手法を利用しているならばピークの高さ、などといったものが例示できる。
また、ステップA13の比較方法としては、ステップA12と同様の基準を比較に用いることが可能である。例えば、解析範囲Aと解析範囲Bにおいて、解析に成功した鍵の数を比較し、成功数が多いほうを次の2分する解析範囲とする方法が例示できる。または、DPAにおいて、ピークを比較に用いる方法もある。単にピークが高いほうを次の2分する解析範囲とする方法が例示できる。更に第5や第6の実施形態で述べたような、正解鍵とそれ以外の鍵候補でのピークの比較結果を基準とし、お互いに一部鍵解析に成功しているならば、ピークの差または比が大きいほうを次の2分する解析範囲とする方法が例示できる。一方、お互いに鍵解析に失敗しているならば、ピークの差または比が小さいほうを次の2分する解析範囲とする方法等が例示できる。
2つの解析範囲の結果を比較しながら解析範囲を絞っていくことで、耐性評価に有効な解析範囲を探索することが可能となる。その結果、耐性評価の精度を向上させることが可能となる。
本発明の第5の実施形態において、暗号を実施可能な評価ボード(図1の暗号装置100に相当)においてDESを実装し、オシロスコープ(図1のサイドチャネル情報測定装置200に相当)を用いて、暗号処理中の評価ボードから漏洩する電磁波(各実施形態におけるサイドチャネル情報に相当)を測定し、測定した電磁波を用いてサイドチャネル攻撃耐性を評価する場合について説明する。
今回の実施例では、使用暗号はDESとし、鍵長は64bit、ラウンド数16段として、最終段における48bit(6bitの部分鍵が8個)のラウンド鍵の解析の可否でサイドチャネル攻撃耐性を評価する。
動作としては、図9に示した各ステップに相当する動作を行う。ステップA3の耐性評価ではCPAを用い、8個の部分鍵ごとに64個の鍵候補に対する相関係数のピーク値と位置を算出し、そのうち正解鍵のピーク値が他の63個の鍵候補のピーク値より高ければその部分鍵は解析成功となる。
ステップA5では5回ループしたら耐性ありと評価して終了とする。また、8個ある部分鍵のうち5つ以上の部分鍵の解析に成功した場合は、耐性なしと評価して終了とする。
ステップA8では、解析成功した部分鍵において、正解鍵のピーク値と他の鍵候補のピーク値の比を求め、最も比が大きくなった部分鍵のピーク位置をステップA2−4における解析範囲の設定の基準とする。
ステップA2−4では解析に成功した鍵のピーク位置を中心に解析範囲を設定する。また、ステップA2−5では最も比が大きくなった部分鍵のピーク位置を中心として解析範囲を設定する。その範囲は1回目のループでは251ポイント、2回目のループでは101ポイント、3回目は51ポイント、4回目は25ポイント、5回目は11ポイントとする。
サイドチャネル攻撃耐性評価の流れについて説明する。はじめに、評価ボードにてDESを実行し、DESの電磁波波形を複数測定する(ステップA1)。なお、最初の波形のポイント数は28000ポイントとしている。図12に測定した電磁波波形を示す。
次に、サイドチャネル攻撃耐性評価として、測定したDESの電磁波波形に対し、CPAを実施し8個の部分鍵を解析する(ステップA3)。下記の表1に8個の部分鍵(Key1〜8)の正解を示す。
Figure 0005733215
また、図15に1回目の解析結果を示す。ここで図15は各部分鍵に対して解析した結果、ピークが高かった順に3個の鍵候補のピーク値とピーク位置、および鍵候補の値を示している。また、灰色が塗られている箇所は正解鍵であることを示している。図15より、解析成功した部分鍵は3個であることがわかる。したがって、解析に成功した鍵の個数は4個以下(ステップA5においてNO)であり、また複数の部分鍵の解析に成功している(ステップA6においてYES、A7においてYES)。したがって、成功した部分鍵のピーク値の比較を行う(ステップA8)。下記の表2に成功した部分鍵における、正解鍵と他の鍵候補のピーク値、およびそのピーク値の比をとったものを示す。
Figure 0005733215
表2より、Key6の比が最も高いことがわかる。したがって、Key6のピーク位置8736ポイントを中心に251ポイントとった、8611〜8861ポイントを次の解析範囲と設定する(ステップA2−5)。図13に電磁波波形において解析対象とした箇所(矢印で示した箇所)を示す。また、図14に解析対象の範囲を切り出した波形を示す。
そして、新たに設定した解析範囲で再びCPAを実行して部分鍵の解析を行う(ステップA3)。新たな解析範囲で解析した結果を図16に示す。図16の項目は、図15と同様である。図16より、解析に成功した部分鍵の数が6個に増加していることがわかる。したがって、解析に成功した部分鍵の数が5個以上となったため、今回の評価対象にはサイドチャネル攻撃耐性はないと評価して、サイドチャネル攻撃耐性評価は終了となる(ステップA5においてYES)。
このように、解析結果に応じて解析範囲を絞り込むことにより、解析精度が向上する。その結果、高い評価精度を持つサイドチャネル攻撃耐性評価装置を実現できる。
また、本発明の実施形態は、解析範囲を設定することでサイドチャネル攻撃耐性評価装置の評価精度を高めることを目的とするものであるが、サイドチャネル情報の解析を未だ行っていない段階においてサイドチャネル情報の持つ特徴に応じて解析範囲を決定することが可能である。
すなわち、サイドチャネル情報の解析結果に基づいて初めて解析する範囲を決定し、その後に再解析を行うといった技術とは相違する点も有している。
なお、本発明の実施形態であるサイドチャネル攻撃耐性評価装置は、ハードウェアにより実現することもできるが、コンピュータをそのサイドチャネル攻撃耐性評価装置として機能させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
また、本発明の実施形態によるサイドチャネル攻撃耐性評価方法は、ハードウェアにより実現することもできるが、コンピュータにその方法を実行させるためのプログラムをコンピュータがコンピュータ読み取り可能な記録媒体から読み込んで実行することによっても実現することができる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限定されない。
(付記1)暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置において、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、前記サイドチャネル情報の全ての範囲内から解析対象とする範囲である解析範囲を設定する解析範囲設定部と、前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備えることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記2)付記1に記載のサイドチャネル攻撃耐性評価装置において、前記サイドチャネル情報受付部に代えて、前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定部を備えることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記3)付記1又は2に記載のサイドチャネル攻撃耐性評価装置において、前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記4)付記3に記載のサイドチャネル攻撃耐性評価装置において、前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記5)付記3又は4に記載のサイドチャネル攻撃耐性評価装置において、前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部において解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記6)付記3又は4に記載のサイドチャネル攻撃耐性評価装置において、前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価装置。
(付記7)付記3又は4に記載のサイドチャネル攻撃耐性評価装置において、前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定を設定することを特徴とするサイドチャネル攻撃耐性評価装置。
(付記8)付記3乃至7の何れか1項に記載のサイドチャネル攻撃耐性評価装置において、前記解析範囲設定部が解析範囲を分割し、前記サイドチャネル攻撃耐性評価部が前記分割された解析範囲毎に前記評価をし、前記解析範囲設定部が前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価装置。
(付記9)暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価方法において、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付ステップと、前記サイドチャネル情報の全ての範囲内から解析対象とする範囲である解析範囲を設定する解析範囲設定ステップと、前記解析範囲設定ステップで設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価ステップと、を備えることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記10)付記9に記載のサイドチャネル攻撃耐性評価方法において、前記サイドチャネル情報受付ステップに代えて、前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定ステップを備えることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記11)付記9又は10に記載のサイドチャネル攻撃耐性評価方法において、前記解析範囲設定ステップが前記サイドチャネル攻撃耐性評価ステップにおける評価結果に応じて再度解析範囲設定を行い、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記12)付記11に記載のサイドチャネル攻撃耐性評価方法において、前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記13)付記11又は12に記載のサイドチャネル攻撃耐性評価方法において、前記解析範囲設定ステップでは、前記サイドチャネル攻撃耐性評価ステップにおいて解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記14)付記11又は12に記載のサイドチャネル攻撃耐性評価方法において、前記解析範囲設定ステップでは、前記サイドチャネル攻撃耐性評価ステップにおける評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記15)付記11又は12に記載のサイドチャネル攻撃耐性評価方法において、前記解析範囲設定ステップでは、前記サイドチャネル攻撃耐性評価ステップにおける評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
(付記16)付記11乃至15の何れか1項に記載のサイドチャネル攻撃耐性評価方法において、前記解析範囲設定ステップで解析範囲を分割し、前記サイドチャネル攻撃耐性評価ステップで前記分割された解析範囲毎に前記評価をし、前記解析範囲設定ステップで前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価方法。
(付記17)暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置の暗号化に関する内部処理又は秘匿情報を解析するサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置に組み込まれるサイドチャネル攻撃耐性評価プログラムにおいて、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、前記サイドチャネル情報の全ての範囲内から解析対象とする範囲である解析範囲を設定する解析範囲設定部と、前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、を備えるサイドチャネル攻撃耐性評価装置としてコンピュータを機能させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記18)付記17に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記サイドチャネル攻撃耐性評価装置は、前記サイドチャネル情報受付部に代えて、前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定部を備えることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記19)付記17又は18に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記20)付記19に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記21)付記19又は20に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部において解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記22)付記19又は20に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記23)付記19又は20に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定を設定することを特徴とするサイドチャネル攻撃耐性評価プログラム。
(付記24)付記19乃至23の何れか1項に記載のサイドチャネル攻撃耐性評価プログラムにおいて、前記解析範囲設定部が解析範囲を分割し、前記サイドチャネル攻撃耐性評価部が前記分割された解析範囲毎に前記評価をし、前記解析範囲設定部が前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価プログラム。
また、上述した実施形態は、本発明の好適な実施形態ではあるが、上記実施形態のみに本発明の範囲を限定するものではなく、本発明の要旨を逸脱しない範囲において種々の変更を施した形態での実施が可能である。
この出願は、2009年12月10日に出願された日本出願特願2009−280487号を基礎とする優先権を主張し、その開示の全てをここに取り込む。
100 暗号装置
200 サイドチャネル情報測定装置
300、301 サイドチャネル攻撃耐性評価装置
301 サイドチャネル情報受付部
302 解析範囲設定部
303 サイドチャネル攻撃耐性評価部
304 サイドチャネル情報測定部

Claims (21)

  1. 暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置において、
    耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、
    前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定部と、
    前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、
    を備え、
    前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価装置。
  2. 請求項1に記載のサイドチャネル攻撃耐性評価装置において、
    前記サイドチャネル情報受付部に代えて、前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定部を備えることを特徴とするサイドチャネル攻撃耐性評価装置。
  3. 請求項1又は2に記載のサイドチャネル攻撃耐性評価装置において、
    前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価装置。
  4. 請求項1乃至3の何れか1項に記載のサイドチャネル攻撃耐性評価装置において、
    前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部において解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価装置。
  5. 請求項1乃至3の何れか1項に記載のサイドチャネル攻撃耐性評価装置において、
    前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価装置。
  6. 請求項1乃至3の何れか1項に記載のサイドチャネル攻撃耐性評価装置において、
    前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定を設定することを特徴とするサイドチャネル攻撃耐性評価装置。
  7. 請求項乃至の何れか1項に記載のサイドチャネル攻撃耐性評価装置において、
    前記解析範囲設定部が解析範囲を分割し、前記サイドチャネル攻撃耐性評価部が前記分割された解析範囲毎に前記評価をし、前記解析範囲設定部が前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲の分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価装置。
  8. 暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価する装置である評価装置が行うサイドチャネル攻撃耐性評価方法において、
    前記評価装置が備えるサイドチャネル情報受付部が、耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付ステップと、
    前記評価装置が備える解析範囲設定部が、前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定ステップと、
    前記評価装置が備えるサイドチャネル攻撃耐性評価部が、前記解析範囲設定ステップで設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価ステップと、
    を備え、
    前記解析範囲設定部が前記サイドチャネル攻撃耐性評価ステップにおける評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されることを特徴とするサイドチャネル攻撃耐性評価方法。
  9. 請求項に記載のサイドチャネル攻撃耐性評価方法において、
    前記評価装置は前記サイドチャネル情報受付部に代えてサイドチャネル情報測定部を備えており、
    前記サイドチャネル情報受付ステップに代えて、前記サイドチャネル情報測定部が前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定ステップを備えることを特徴とするサイドチャネル攻撃耐性評価方法。
  10. 請求項8又は9に記載のサイドチャネル攻撃耐性評価方法において、
    前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価方法。
  11. 請求項8乃至10の何れか1項に記載のサイドチャネル攻撃耐性評価方法において、
    前記解析範囲設定ステップでは前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価ステップにおいて解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
  12. 請求項8乃至10の何れか1項に記載のサイドチャネル攻撃耐性評価方法において、
    前記解析範囲設定ステップでは前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価ステップにおける評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
  13. 請求項8乃至10の何れか1項に記載のサイドチャネル攻撃耐性評価方法において、
    前記解析範囲設定ステップでは前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価ステップにおける評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価方法。
  14. 請求項乃至1の何れか1項に記載のサイドチャネル攻撃耐性評価方法において、
    前記解析範囲設定ステップでは前記解析範囲設定部が解析範囲を分割し、前記サイドチャネル攻撃耐性評価ステップでは前記サイドチャネル攻撃耐性評価部が前記分割された解析範囲毎に前記評価をし、前記解析範囲設定ステップでは前記解析範囲設定部が前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲の分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価方法。
  15. 暗号装置から漏洩するサイドチャネル情報を用いて、前記暗号装置のサイドチャネル攻撃への耐性を評価するサイドチャネル攻撃耐性評価装置に組み込まれるサイドチャネル攻撃耐性評価プログラムにおいて、
    耐性評価対象の暗号装置から取得したサイドチャネル情報を外部から受け付け、当該サイドチャネル情報を取り込むサイドチャネル情報受付部と、
    前記サイドチャネル情報の全ての時間の範囲内から解析対象とする時間の範囲である解析範囲を設定する解析範囲設定部と、
    前記解析範囲設定部で設定された前記解析範囲内のサイドチャネル情報を用いて評価対象の暗号装置のサイドチャネル攻撃への耐性の可否を判定するサイドチャネル攻撃耐性評価部と、
    を備え、
    前記解析範囲設定部が前記サイドチャネル攻撃耐性評価部における評価結果に応じて再度解析範囲設定を行い、前記サイドチャネル攻撃耐性評価部が、再度サイドチャネル攻撃耐性評価を行い、当該再度の解析範囲設定及び当該再度のサイドチャネル耐性評価が繰り返されるサイドチャネル攻撃耐性評価装置としてコンピュータを機能させることを特徴とするサイドチャネル攻撃耐性評価プログラム。
  16. 請求項1に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記サイドチャネル攻撃耐性評価装置は、前記サイドチャネル情報受付部に代えて、前記評価対象の暗号装置のサイドチャネル情報を測定するサイドチャネル情報測定部を備えることを特徴とするサイドチャネル攻撃耐性評価プログラム。
  17. 請求項15又は16に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記再度の解析範囲設定及び前記再度のサイドチャネル耐性評価は、予め定められた条件が満足されるまで繰り返されることを特徴とするサイドチャネル攻撃耐性評価プログラム。
  18. 請求項15乃至17の何れか1項に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部において解析に成功した鍵におけるピークに基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価プログラム。
  19. 請求項15乃至17の何れか1項に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記解析範囲設定部は、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析成功時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定をすることを特徴とするサイドチャネル攻撃耐性評価プログラム。
  20. 請求項15乃至17の何れか1項に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記解析範囲設定部が、前記サイドチャネル攻撃耐性評価部における評価結果の中で、解析失敗時における正解鍵とそれ以外の鍵候補におけるピークを比較し、比較した結果に基づいて前記再度の解析範囲の設定を設定することを特徴とするサイドチャネル攻撃耐性評価プログラム。
  21. 請求項1乃至2の何れか1項に記載のサイドチャネル攻撃耐性評価プログラムにおいて、
    前記解析範囲設定部が解析範囲を分割し、前記サイドチャネル攻撃耐性評価部が前記分割された解析範囲毎に前記評価をし、前記解析範囲設定部が前記分割された解析範囲毎の評価の結果に応じて再度の分割の対象とする解析範囲を選択し、再び前記解析範囲の分割、前記分割された解析範囲毎の耐性評価及び前記解析範囲の選択を行うことを特徴とするサイドチャネル攻撃耐性評価プログラム。
JP2011545223A 2009-12-10 2010-12-08 サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム Active JP5733215B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011545223A JP5733215B2 (ja) 2009-12-10 2010-12-08 サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2009280487 2009-12-10
JP2009280487 2009-12-10
PCT/JP2010/071977 WO2011071063A1 (ja) 2009-12-10 2010-12-08 サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム
JP2011545223A JP5733215B2 (ja) 2009-12-10 2010-12-08 サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム

Publications (2)

Publication Number Publication Date
JPWO2011071063A1 JPWO2011071063A1 (ja) 2013-04-22
JP5733215B2 true JP5733215B2 (ja) 2015-06-10

Family

ID=44145607

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011545223A Active JP5733215B2 (ja) 2009-12-10 2010-12-08 サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム

Country Status (2)

Country Link
JP (1) JP5733215B2 (ja)
WO (1) WO2011071063A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5794638B2 (ja) * 2012-06-27 2015-10-14 株式会社東海理化電機製作所 サイドチャネル評価装置及びサイドチャネル評価方法
JP5979750B2 (ja) * 2012-06-27 2016-08-31 株式会社東海理化電機製作所 サイドチャネル評価装置及びサイドチャネル評価方法
CN106936561B (zh) * 2015-12-29 2020-06-02 航天信息股份有限公司 一种侧信道攻击防护能力评估方法和系统

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSNG200800997002; 堀 洋平: 'サイドチャネル攻撃に対する標準評価ボードとツールの開発' 電子情報通信学会技術研究報告 Vol.108 No.300 , 20081110, 87〜92頁, 社団法人 電子情報通信学会 *
CSNG200801033009; 南崎 大作: 'CPA攻撃用実験環境の構築' 電子情報通信学会技術研究報告 Vol.108 No.355 , 20081210, 61〜66頁, 社団法人 電子情報通信学会 *
CSNJ201010031188; 山下 哲孝: '信号処理を利用したSASEBOにおける差分電力解析' 2009年 暗号と情報セキュリティシンポジウム SCIS2009 [CD-ROM] , 20090120, 1〜6頁 *
JPN6014025936; 山下 哲孝: '信号処理を利用したSASEBOにおける差分電力解析' 2009年 暗号と情報セキュリティシンポジウム SCIS2009 [CD-ROM] , 20090120, 1〜6頁 *
JPN6014025940; 堀 洋平: 'サイドチャネル攻撃に対する標準評価ボードとツールの開発' 電子情報通信学会技術研究報告 Vol.108 No.300 , 20081110, 87〜92頁, 社団法人 電子情報通信学会 *
JPN6014025943; 南崎 大作: 'CPA攻撃用実験環境の構築' 電子情報通信学会技術研究報告 Vol.108 No.355 , 20081210, 61〜66頁, 社団法人 電子情報通信学会 *

Also Published As

Publication number Publication date
WO2011071063A1 (ja) 2011-06-16
JPWO2011071063A1 (ja) 2013-04-22

Similar Documents

Publication Publication Date Title
EP3220305B1 (en) Method of testing the resistance of a circuit to a side channel analysis of second order or more
US7748036B2 (en) Methods for categorizing input data
CN108604981B (zh) 用于估计秘密值的方法和设备
US20100246808A1 (en) Side channel attack tolerance evaluation apparatus, method and program
EP3447509B1 (en) Method of testing the resistance of a circuit to a side channel analysis
Mohamed et al. Improved algebraic side-channel attack on AES
JP5733215B2 (ja) サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム
Diop et al. Collision based attacks in practice
JP2010135881A (ja) サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法、サイドチャネル攻撃耐性評価プログラム
Heyszl et al. Investigating profiled side-channel attacks against the DES key schedule
Oren et al. Tolerant algebraic side-channel analysis of {AES}
Pammu et al. A highly efficient side channel attack with profiling through relevance-learning on physical leakage information
KR20160114252A (ko) 부채널 분석 연산 방법
JP5397625B2 (ja) サイドチャネル攻撃耐性評価装置、その方法及びそのプログラム
Goubin Cryptographic Hardware and Embedded Systems-CHES 2006: 8th International Workshop, Yokohama, Japan, October 10-13, 2006, Proceedings
Gebotys et al. A sliding window phase-only correlation method for side-channel alignment in a smartphone
Zhang et al. Efficient nonprofiling 2nd-order power analysis on masked devices utilizing multiple leakage points
Yu et al. The research of DPA attacks against AES implementations
Masoumi et al. Efficient implementation of power analysis attack resistant advanced encryption standard algorithm on side-channel attack standard evaluation board
Ueno et al. Constructing Sliding Windows Leak from Noisy Cache Timing Information of OSS-RSA.
Masoumi et al. An efficient smart card implementation of the AES algorithm robust against differential side channel analysis
Fan et al. How to Choose Interesting Points for Template Attacks?
JP2010273263A (ja) サイドチャネル情報測定装置、その方法及びそのプログラム
Zhang et al. Bit-policy based chosen-plaintext collision attack on reused-mask AES
Pan et al. An operation-based metric for CPA resistance

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140819

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150219

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20150226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150317

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150330

R150 Certificate of patent or registration of utility model

Ref document number: 5733215

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150