JP5794638B2 - サイドチャネル評価装置及びサイドチャネル評価方法 - Google Patents
サイドチャネル評価装置及びサイドチャネル評価方法 Download PDFInfo
- Publication number
- JP5794638B2 JP5794638B2 JP2012144040A JP2012144040A JP5794638B2 JP 5794638 B2 JP5794638 B2 JP 5794638B2 JP 2012144040 A JP2012144040 A JP 2012144040A JP 2012144040 A JP2012144040 A JP 2012144040A JP 5794638 B2 JP5794638 B2 JP 5794638B2
- Authority
- JP
- Japan
- Prior art keywords
- selection function
- side channel
- evaluation
- encryption
- channel information
- 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
Links
Description
図1に示すように、暗号アルゴリズムの一種としてAESがある。AESは、ブロックサイズが128ビット、暗号鍵サイズが128/196/256ビットの3種類から選択可能である。本例では、暗号鍵サイズが128ビットのもののみを対象とし、以降、AES−128と記す。
一般的な論理回路の場合、LSIにおけるレジスタの遷移ハミング距離と消費電力との間には、線形相関があることが多い。遷移ハミング距離は、レジスタの値がある値に切り替わる際に、レジスタがビット反転した数に相当する。CPAは、推測した遷移ハミング距離と消費電力との間のピアソン相関計数の大きさで、推測の正しさを判断する解析手法である。
前述のCPAの例では、ループ型構造に起因した選択関数を用いて説明した。このように、例えばLSI設計者が自ら設計したLSIを評価する場合など、予めLSIの実装情報を知っていれば、この実装情報を用いることで適切な選択関数を選ぶことができる。従って、実装情報が入手可能な条件下では、解析が成立する可能性のある選択関数のみをピックアップして評価すればよい。
本例の場合、評価処理時の計算量削減として、真の部分鍵k*を「既知の値」と仮定して、式(5)や式(6)のパラメータ「k」を固定値化した条件下で評価を実施する。この条件下での評価関数は、次式(7),(8)となる。これら式からも分かるように、パラメータ「k」をなくした分、式(5),(6)と比較して、計算量を削減できることが分かる。
ここでは、想定されるAES−128の選択関数について考察する。
(I)レジスタの遷移ハミング距離モデルに基づく選択関数
本節では、[CPAの概要]の節で挙げた例での選択関数と同様に、レジスタの遷移ハミング距離と消費電力との間に線形相関があると仮定する消費電力モデルを用いた選択関数を検討する。このモデルでは、レジスタの遷移前後のデータ2値により、消費電力を推定する。[CPAの概要]の節で挙げた例の場合、R10[0]とC[0]がこの2値に相当する。
平文バイトP[j]や暗号文バイトC[j]のバイト間のハミング距離を出力する選択関数では、式(3)のパラメータ「k」の要素がないため、暗号鍵解析には使えない。しかし、これらのバイトと暗号化中間値バイトRi[j],Si[j],Mi[j]とのハミング距離は、[CPAの概要]の節で挙げた例のように解析に用いることができる。
暗号化中間値バイトRi[j],Si[j],Mi[j]のうち、2値のハミング距離を出力する選択関数も解析に用いることができる。
レジスタ遷移前後のデータは必ずしも暗号化データとは限らず、例えばマイクロコンピュータ等では遷移毎にゼロクリアが行われる場合が考えられる。この場合のレジスタの遷移ハミング距離は、暗号データ1値のハミング重みと一致する。なお、この場合、データのハミング重みとも分類可能だが、本項ではこの場合もレジスタの遷移ハミング距離モデルと分類する。
レジスタ値が遷移する際、その前後の値は必ずしも同一の暗号処理時のものとは限らない。例えば、レジスタの値が平文Aを暗号化する際の中間値データから、平文Bを暗号化する際の中間値データに遷移する場合も考えられる。このような平文Aと平文Bとの関係は、実装方法に依存して様々な場合が存在し、例えば「連続して暗号化を行う2つの平文データ」である場合等が挙げられる。
Iで挙げた選択関数の他に、非線形回路の出力遷移確率の偏りを利用した選択関数も存在する。例えば、非線形回路である2入力AND回路にランダムな値を順次入力したとき、出力が遷移する確率は平均3/8である。ここで、この出力値のある時刻の値が「1」である場合に限定すると、前後の時刻と出力値とが異なる確率、つまり出力遷移確率は3/4となる。また、「0」である場合には、出力遷移確率は1/4となる。従って、出力値で消費電力を分類した場合に、その平均値の間に差分が生じる。この偏りは、ある時刻の入力1ビットで分類した場合にも生じ、同様な平均消費電力差分を生じる。
SubBytes変換への入力バイトが「00(HEX)」の場合とそれ以外とを分類する解析Zero Value DPAが周知である。逆元変換への入力バイトが「00(HEX)」である場合、「00(HEX)」は、どのGF(256)上においても逆元が「00(HEX)」であり、内部論理回路の入出力ビットも全て「0」となることから、特異な電力消費挙動となる。Zero Value DPAの選択関数は、逆元変換を行うGF(256)に依存せず、次式(12)で表される。
ステップ101において、サイドチャネル情報入力部4は、測定部3が測定した実測のサイドチャネル情報Dscを、測定部3から入力する(サイドチャネル情報入力ステップ)。
ステップ103において、暗号鍵入力部6は、暗号装置2に書き込まれた真の暗号鍵Ktrを、暗号装置2から入力する(暗号鍵入力ステップ)。即ち、サイドチャネル攻撃に対する安全性評価を行う作業者は暗号装置2の暗号鍵を知っていると仮定しているので、この暗号鍵を暗号装置2からサイドチャネル評価装置1に入力する。暗号鍵入力部6は、取得した真の暗号鍵Ktrを部分鍵計算部8に出力する。
(1)サイドチャネル情報Dscに対する暗号装置2の脆弱性評価を行うにあたり、安全性評価を行う作業者は暗号装置2の真の暗号鍵Ktrを知っているものと仮定し、この真の暗号鍵Ktrから部分鍵kを計算して、暗号装置2のサイドチャネル攻撃に対する耐性を評価する。このため、評価時に入力対象となる暗号鍵が1つで済むので、安全性評価の作業時、使用しなければならない暗号鍵が1パターンで固定される。よって、暗号鍵を複数推測して評価を行う作業をとらずに済むので、その分、安全性評価にかかる時間を短縮することができる。
・部分鍵計算部8は、必要とする部分鍵kを一度に計算することに限らず、例えば評価を行う選択関数が選択される度に、都度計算を実施する形式をとってもよい。
・暗号データDenは、選択関数の入力となり得るデータであれば、種々のものが採用可能である。
・暗号の種類は、AESに代えて、DES(Data Encryption Standard)等の他の暗号方式を採用してもよい。
・安全性評価のレベル設定は、例えば使用する選択関数を作業者自らが1つひとつ適宜選択する方式でもよい。また、評価レベルを高〜低レベルの間で多段階(複数の選択関数群)に設定可能とし、選択されたレベル毎に、使用される選択関数が設定されてもよい。
・選択関数データベース9に書き込まれる選択関数は、適宜変更することが可能である。
・解析手法は、MIA(Mutual Information Analysis:相互情報量解析)や、EMA(ElectroMannetic Analysis:電磁波解析)等を採用することも可能である。
(イ)暗号装置の不正解読に対する耐性を評価するサイドチャネル評価プログラムにおいて、前記暗号装置から漏洩するサイドチャネル情報を入力させるサイドチャネル情報入力ステップと、前記暗号装置で取り扱う暗号データを入力させる暗号データ入力ステップと、前記暗号装置に書き込まれた真の暗号鍵を入力させる暗号鍵入力ステップと、前記サイドチャネル情報を計算する選択関数に必要な部分鍵を、前記真の暗号鍵から計算する部分鍵計算ステップと、複数の前記選択関数が登録された選択関数データベースを参照することにより、前記評価に必要な選択関数を選択し、当該選択関数により計算上のサイドチャネル情報を求める選択関数制御ステップと、前記サイドチャネル情報入力部で入力した前記サイドチャネル情報と、前記選択関数により求めた選択関数出力との相関を計算する相関計算ステップと、前記相関計算部が求めた相関係数と閾値とを比較し、その比較結果を出力する比較出力ステップとをコンピュータに実行させることを特徴とするサイドチャネル評価プログラム。
Claims (5)
- 暗号装置の不正解読に対する耐性を評価するサイドチャネル評価装置において、
前記暗号装置から漏洩するサイドチャネル情報を入力するサイドチャネル情報入力部と、
前記暗号装置で取り扱う暗号データを入力する暗号データ入力部と、
前記暗号装置に書き込まれた真の暗号鍵を入力する暗号鍵入力部と、
前記サイドチャネル情報の計算に用いる選択関数に必要な部分鍵を、前記真の暗号鍵から計算する部分鍵計算部と、
複数の前記選択関数が登録された選択関数データベースを参照することにより、前記評価に必要な選択関数を選択し、当該選択関数により計算上のサイドチャネル情報を求める選択関数制御部と、
前記サイドチャネル情報入力部で入力した前記サイドチャネル情報と、前記選択関数により求めた選択関数出力との相関を計算する相関計算部と、
前記相関計算部が求めた相関係数と閾値とを比較し、その比較結果を出力する比較出力部と
を備えたことを特徴とするサイドチャネル評価装置。 - 評価を行う前記選択関数を選択可能とすることにより、前記評価のレベルを設定変更することが可能な評価レベル設定部を備え、
前記選択関数制御部は、前記データベースから前記評価のレベルに応じた特定の選択関数のみを選択する
ことを特徴とする請求項1に記載のサイドチャネル評価装置。 - 前記評価のレベルは、前記選択関数に入力する部分鍵サイズである
ことを特徴とする請求項2に記載のサイドチャネル評価装置。 - 前記評価のレベルは、前記選択関数の種類である
ことを特徴とする請求項2に記載のサイドチャネル評価装置。 - 暗号装置の不正解読に対する耐性を評価するサイドチャネル評価方法において、
前記暗号装置から漏洩するサイドチャネル情報を入力するサイドチャネル情報入力ステップと、
前記暗号装置で取り扱う暗号データを入力する暗号データ入力ステップと、
前記暗号装置に書き込まれた真の暗号鍵を入力する暗号鍵入力ステップと、
前記サイドチャネル情報を計算する選択関数に必要な部分鍵を、前記真の暗号鍵から計算する部分鍵計算ステップと、
複数の前記選択関数が登録された選択関数データベースを参照することにより、前記評価に必要な選択関数を選択し、当該選択関数により計算上のサイドチャネル情報を求める選択関数制御ステップと、
前記サイドチャネル情報入力ステップで入力した前記サイドチャネル情報と、前記選択関数により求めた選択関数出力との相関を計算する相関計算ステップと、
前記相関計算ステップで求めた相関係数と閾値とを比較し、その比較結果を出力する比較出力ステップと
を備えたことを特徴とするサイドチャネル評価方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012144040A JP5794638B2 (ja) | 2012-06-27 | 2012-06-27 | サイドチャネル評価装置及びサイドチャネル評価方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012144040A JP5794638B2 (ja) | 2012-06-27 | 2012-06-27 | サイドチャネル評価装置及びサイドチャネル評価方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014006484A JP2014006484A (ja) | 2014-01-16 |
JP5794638B2 true JP5794638B2 (ja) | 2015-10-14 |
Family
ID=50104226
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012144040A Active JP5794638B2 (ja) | 2012-06-27 | 2012-06-27 | サイドチャネル評価装置及びサイドチャネル評価方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5794638B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110460425B (zh) * | 2019-09-24 | 2023-05-09 | 北京银联金卡科技有限公司 | 一种面向侧信道密码能量泄漏信号的攻击方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100246808A1 (en) * | 2007-12-05 | 2010-09-30 | Nec Corporation | Side channel attack tolerance evaluation apparatus, method and program |
JP5397625B2 (ja) * | 2007-12-11 | 2014-01-22 | 日本電気株式会社 | サイドチャネル攻撃耐性評価装置、その方法及びそのプログラム |
JP2010135881A (ja) * | 2008-12-02 | 2010-06-17 | Nec Corp | サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法、サイドチャネル攻撃耐性評価プログラム |
JP5733215B2 (ja) * | 2009-12-10 | 2015-06-10 | 日本電気株式会社 | サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法及びそのプログラム |
JP2012080344A (ja) * | 2010-10-01 | 2012-04-19 | Nec Corp | サイドチャネル攻撃耐性評価装置、サイドチャネル攻撃耐性評価方法およびプログラム |
-
2012
- 2012-06-27 JP JP2012144040A patent/JP5794638B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2014006484A (ja) | 2014-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Standaert | Introduction to side-channel attacks | |
US9497021B2 (en) | Device for generating a message authentication code for authenticating a message | |
JP5711681B2 (ja) | 暗号処理装置 | |
CN106664204B (zh) | 差分功率分析对策 | |
Ayoup et al. | Efficient selective image encryption | |
JP5268609B2 (ja) | 暗号処理装置及び演算方法 | |
US11436946B2 (en) | Encryption device, encryption method, decryption device, and decryption method | |
JP2008131108A (ja) | 共通鍵暗号のための暗号化装置 | |
JP2008295108A (ja) | 安全化暗号化方法及び装置 | |
CN109417466A (zh) | 机密密钥估算方法与装置 | |
WO2016083864A1 (en) | Methods for recovering secret data of a cryptographic device and for evaluating the security of such a device | |
KR20180110550A (ko) | 부채널 분석 방지를 위한 화이트박스 암호 방법 및 장치 | |
Roy et al. | From theory to practice of private circuit: A cautionary note | |
US11269993B2 (en) | Encryption device, encryption method, decryption device, and decryption method | |
JP5979750B2 (ja) | サイドチャネル評価装置及びサイドチャネル評価方法 | |
Zhao et al. | Efficient Hamming weight-based side-channel cube attacks on PRESENT | |
WO2016063512A1 (ja) | Macタグリスト生成装置、macタグリスト検証装置、macタグリスト生成方法、macタグリスト検証方法およびプログラム記録媒体 | |
Rajput et al. | A novel image encryption and authentication scheme using chaotic maps | |
JP5794638B2 (ja) | サイドチャネル評価装置及びサイドチャネル評価方法 | |
CN111602367B (zh) | 用于保护在使白盒密码算法安全的对策中使用的熵源的方法 | |
JP2006054568A (ja) | 暗号化装置、復号化装置、および方法、並びにコンピュータ・プログラム | |
Kim et al. | New Type of Collision Attack on First‐Order Masked AESs | |
Alioto et al. | A general model of DPA attacks to precharged busses in symmetric-key cryptographic algorithms | |
Diehl et al. | Fixing the CLOC with Fine-grain Leakage Analysis | |
JP5500277B2 (ja) | 共通鍵暗号機能を搭載した暗号化装置及び組込装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20141212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20141215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150714 |
|
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: 20150728 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150806 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5794638 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |