1 / 95

暗号処理デバイスへの電力差分解析攻撃に対するアルゴリズムレベルでの耐性評価に関する研究

暗号処理デバイスへの電力差分解析攻撃に対するアルゴリズムレベルでの耐性評価に関する研究. 電気通信大学大学院 電気通信学研究科 情報工学専攻 0541005  佐々木 明彦. アジェンダ. 背景と目的 電力差分解析 対策手法 耐性評価手法 電力差分解析のシミュレーション Basic Data-Whitening Routine への適用 DES への適用 考察 まとめ. 背景と目的. 暗号技術. 情報の秘匿・認証 日常生活に不可欠な基盤技術 高い信頼性が求められる. 近年、暗号デバイス内の秘密情報に アクセスする攻撃手法が出現.

karli
Download Presentation

暗号処理デバイスへの電力差分解析攻撃に対するアルゴリズムレベルでの耐性評価に関する研究

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 暗号処理デバイスへの電力差分解析攻撃に対するアルゴリズムレベルでの耐性評価に関する研究暗号処理デバイスへの電力差分解析攻撃に対するアルゴリズムレベルでの耐性評価に関する研究 電気通信大学大学院 電気通信学研究科 情報工学専攻 0541005 佐々木 明彦

  2. アジェンダ • 背景と目的 • 電力差分解析 • 対策手法 • 耐性評価手法 • 電力差分解析のシミュレーション • Basic Data-Whitening Routine への適用 • DES への適用 • 考察 • まとめ

  3. 背景と目的

  4. 暗号技術 • 情報の秘匿・認証 • 日常生活に不可欠な基盤技術 • 高い信頼性が求められる 近年、暗号デバイス内の秘密情報に アクセスする攻撃手法が出現

  5. 暗号デバイスを直接的・間接的に解析する手法暗号デバイスを直接的・間接的に解析する手法 • 破壊解析 • 故障誘導解析 • サイドチャネル解析 • タイミング解析 • 電力解析 • 単純電力解析 • 電力差分解析 • 音響解析

  6. サイドチャネル解析 暗号デバイス 入力 出力 演算 秘密情報(鍵) 相関 サイドチャネル情報 処理時間, 消費電力, 電磁波 など 電力差分解析

  7. 電力差分解析(Differential Power Analysis, DPA) • Kocherらによって提案された サイドチャネル解析の一つ • 演算中の消費電力を繰り返し測定して 統計処理することで秘密情報を特定する • 未対策の暗号デバイスの多くに有効 • 攻撃の痕跡を残さない 強力な攻撃手法

  8. シミュレーションによるDPA耐性評価の意義 • 暗号デバイスのDPA耐性の評価は必須 • デバイスの試作はコストが高い 設計段階に合わせた シミュレーション • デバイス作成前にDPA耐性を評価 • 対策手法の検討 • 攻撃手法の研究

  9. 電力差分解析

  10. 選択関数 選択関数 D (C , Ks ) C : 暗号文など既知の値 Ks : 部分鍵など未知の値 参照ビット ・・・ アルゴリズム中の着目したビット 電力差分解析における攻撃箇所 参照値 ・・・ 参照ビットの値 (0 or 1) 選択関数 ・・・ 参照値の予想値を返す関数

  11. DPAの原理鍵の予想が正しい場合 参照値の 参照値の 予想値 真の値 消費電力 予想値 真の値 消費電力 1 1 P+a 1 1 P+a 1 1 P+a 予想値 で分類 1 1 P+a 平均 P+a 0 0 P 1 1 P+a 差あり 0 0 P 1 1 P+a 1 1 P+a 0 0 P 1 1 P+a 0 0 P 平均 P 0 0 P 0 0 P 0 0 P 0 0 P 選択関数

  12. DPAの原理鍵の予想が正しくない場合 参照値の 参照値の 予想値 真の値 消費電力 予想値 真の値 消費電力 1 1 P+a 1 1 P+a 0 1 P+a 予想値 で分類 1 0 P 平均 P+a/2 1 0 P 1 0 P 差なし 1 0 P 1 1 P+a 1 1 P+a 0 1 P+a 0 1 P+a 0 1 P+a 平均 P+a/2 0 0 P 0 0 P 0 0 P 0 0 P 選択関数

  13. DPAの手順 • デバイスが演算中の消費電力を 複数回測定 • 鍵を予想して選択関数で 消費電力をグループ分け • グループ毎に平均して電力差分を取る • 繰り返して電力差分がもっとも大きくなった 鍵を正解と予想する

  14. 対策手法

  15. 耐性評価手法の分類 • アルゴリズムレベル • Transformed Masking Method • Duplication Method • Unique Masking Method など • ハードウェアレベル • Masked-AND • RSL • WDDL など

  16. DESアルゴリズム • DataEncryptionStandard • ブロック暗号 • 全16段で構成

  17. Transformed Masking Methodを適用した DES アルゴリズム • 乱数 X によりマスク • 全16段を通して乱数でマスクされる • マスク対応のSMBox を使用

  18. Duplication Methodを適用した DES アルゴリズム • 乱数 X により分割・冗長化 • 全16段を通して2系統の演算 • SBox も2系統必要

  19. 耐性評価手法

  20. 関連研究 高速 低コスト 高精度

  21. ディジタルモデル • アルゴリズムレベルの評価手法 • アルゴリズムビットと実装ビットの相関に着目 • 定性的な評価 未対策のアルゴリズム中のデータ表現 アルゴリズムビット 01100101… 実装するアルゴリズム中のデータ表現 実装ビット 10100100…

  22. Hamming Distance Model • レジスタ遷移時のハミング距離から消費電力を概算 • 組み合わせ回路に適用するのは煩雑 • RTLレベルのリークモデルに近い手法 01100101… ハミング距離 レジスタの遷移 10100100… 変化したビット

  23. リークモデル • RTLレベルでの評価手法 • 論理シミュレータでスイッチング回数を測定 • ハードウェア記述言語での記述が必要

  24. 提案手法 • アルゴリズムレベルでの評価手法 • 定量的な評価 • 組み合わせ回路を考慮できる 関連手法と異なり、アルゴリズムレベルで定量的な評価が可能

  25. 電力差分解析のシミュレーション

  26. 参照値と消費電力 ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  27. 遷移確率に比例する電力 スタティックな電力 CMOS回路の消費電力 ・・・ 負荷容量の充放電 ・・・ 貫通電流 ・・・ リーク電流

  28. リーク電流が無視できる場合のCMOS回路の消費電力リーク電流が無視できる場合のCMOS回路の消費電力 消費電力は遷移確率に比例する

  29. 参照値と消費電力 ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  30. 論理ゲートの遷移確率 入力または出力の1線に着目して 論理ゲートの遷移を考察

  31. 出力の値に注目した2入力ANDゲートの遷移確率出力の値に注目した2入力ANDゲートの遷移確率

  32. Y’=0 : 3 / 12 = 1 / 4 Y’=1 : 3 / 4 Y→Y’ の遷移 出力の値に注目した2入力ANDゲートの遷移確率 遷移確率

  33. A=0 : 2 / 8 = 1 / 4 A=1 : 4 / 8 = 1 / 2 Y→Y’ の遷移 入力の値に注目した2入力ANDゲートの遷移確率 遷移確率

  34. 2入力ANDゲートの遷移確率 着目した端子と遷移確率 1 : 2 1 : 3

  35. 2入力論理ゲートの遷移確率

  36. 参照値と消費電力 ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  37. 2入力ANDゲートの消費電力 ゲートの出力遷移による消費電力 3 : 1 2 : 1 実験条件 NanoSim 0.35μmプロセス

  38. 2入力論理ゲートの消費電力 : : : : : :

  39. 2入力論理ゲートの遷移確率と消費電力 : : : : : :

  40. 参照値と消費電力 ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  41. 遷移確率に比例する電力 スタティックな電力 CMOS回路の消費電力 ・・・ 負荷容量の充放電 ・・・ 貫通電流 ・・・ リーク電流 電力差分解析の差分計算により スタティックな電力は消える

  42. 電力差分解析で考慮すべきCMOS回路の消費電力電力差分解析で考慮すべきCMOS回路の消費電力 電力差分解析に関係する消費電力 DPA消費電力

  43. 参照値と消費電力 ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  44. ゲートの入力または出力の1線の値を確定 電力差分解析で考慮すべき消費電力 参照値と消費電力のまとめ ゲートの入力または出力の1線の値を確定 ゲートの遷移確率 リーク電流を除いたゲートの消費電力 電力差分解析で考慮すべき消費電力

  45. DPA消費電力の概算 電力差分解析の可否の判断に必要なこと × 高精度の消費電力 ○ 脆弱性に関係する電力の有無 • 電力差分解析において攻撃箇所となる参照ビットを含むビット列に着目 • 各ビットで消費電力の重みは同じとする • ビットが 1 のときの消費電力を 1ビットが 0 のときの消費電力を 0 と正規化 攻撃箇所のビット列の ハミングウェイトを消費電力と概算する

  46. ハミングウェイトを用いたDPA消費電力の概算

  47. DPAシミュレーションの暗号アルゴリズムへの適用DPAシミュレーションの暗号アルゴリズムへの適用 • Basic Data-Whitening Routine • DES 対策手法なし / 対策手法あり 1次電力差分解析 / 2次電力差分解析

  48. Basic Data-Whitening Routineへの適用

  49. Basic Data-Whitening Routineに対するDPAシミュレーション 1. 未対策の Whitening Routine に対する1次電力差分解析 2. 乱数マスクを適用した Whitening Routine に対する1次電力差分解析 3. 乱数マスクを適用した Whitening Routine に対する2次電力差分解析 Basic Data-Whitening Routine : 暗号アルゴリズムに見られる XOR 演算

  50. 未対策の Whitening Routine (W1) W1(PTI) { A: Result = PTI + SecretKey ... other operations ... ... return CTO }

More Related