1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【セキュリティ】サイドチャネル攻撃とは?仕組みと対策を整理する

Posted at

1. サイドチャネル攻撃とは

暗号アルゴリズムの数式的な弱点を突くのではなく、実装時に生じる副次的な情報(サイドチャネル)を利用して秘密情報を盗む攻撃です。

例えば、暗号化処理をしているスマートカードやCPUが発する「処理時間の差」「消費電力の揺らぎ」「電磁波」「キャッシュの挙動」などが攻撃対象になります。


2. 主な攻撃手法

(1) タイミング攻撃

  • 計算にかかるわずかな時間差を解析して鍵を推測
  • 例:RSAの乗算回数の違いから秘密鍵を特定

(2) 電力解析攻撃(SPA / DPA)

  • SPA (Simple Power Analysis)
    → 電力消費波形をそのまま観測
  • DPA (Differential Power Analysis)
    → 多数の電力波形を統計解析し、鍵のビットを推測
  • 例:スマートカードのPIN解析

(3) 電磁波解析攻撃(EMA)

  • デバイスから漏れる電磁波を拾って演算過程を推測

(4) キャッシュ攻撃

  • CPUキャッシュのヒット/ミスを観測して情報を盗む
  • 有名な事例:Spectre / Meltdown(2018年)

(5) 音響・振動解析

  • キーボードの打鍵音から入力文字を推定する研究も存在

3. 代表的な事例

  • KocherのRSAタイミング攻撃(1996年)
    → 最初の有名なサイドチャネル攻撃
  • DPA攻撃(1999年)
    → スマートカードの秘密鍵漏洩が現実に
  • Spectre / Meltdown(2018年)
    → CPUの投機的実行とキャッシュ機構を悪用した大規模脆弱性

4. 対策

ソフトウェア実装での対策

  • コンスタントタイム実装(if分岐やルックアップテーブル依存を避ける)
  • アクセスパターンや処理時間をデータに依存させない

ハードウェアでの対策

  • 電磁波シールドやノイズ注入
  • セキュアチップ(TPM, HSM, Secure Enclave)の活用

運用・システム側での対策

  • キャッシュ分離や乱数導入で攻撃難易度を上げる
  • ソフトウェアアップデートで既知の脆弱性を修正

まとめ

サイドチャネル攻撃は「理論的に安全な暗号」でも、実装が不十分なら破られるという現実を示しています。
近年はIoT機器やクラウド環境でも問題となっており、セキュリティ設計では「アルゴリズム」だけでなく「実装の安全性」も必須です。


ポイント(試験対策用に覚えておくと良いフレーズ)

  • 「副次的な情報から秘密を推測」
  • 「タイミング・電力・電磁波・キャッシュ」
  • 「代表例:RSAタイミング攻撃、DPA、Spectre/Meltdown」
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?