サイドチャネル攻撃(さいどちゃねるこうげき)
最終更新:2026/4/27
サイドチャネル攻撃とは、暗号システム自体の脆弱性を利用するのではなく、実装上の副次的な情報から秘密情報を推測する攻撃手法である。
別名・同義語 副次チャネル攻撃実装攻撃
ポイント
電力消費、電磁波、処理時間など、本来の通信内容とは関係のない情報を利用して暗号鍵を解読する。
概要
サイドチャネル攻撃は、暗号アルゴリズムの数学的な強度ではなく、その実装環境から情報を漏洩させる攻撃である。暗号化された通信や処理において、電力消費、電磁波放射、処理時間、音響など、本来の通信内容とは関係のない副次的な情報(サイドチャネル)を観測し、そこから秘密鍵や平文などの機密情報を推測する。
攻撃の種類
サイドチャネル攻撃には様々な種類がある。
- タイミング攻撃: 暗号処理にかかる時間から鍵情報を推測する。
- 電力解析攻撃: 暗号処理中の電力消費量を測定し、鍵情報を推測する。
- 電磁波解析攻撃: 暗号処理中に放射される電磁波を測定し、鍵情報を推測する。
- 音響解析攻撃: 暗号処理中に発生する音響ノイズから鍵情報を推測する。
- キャッシュ攻撃: CPUキャッシュの利用状況から鍵情報を推測する。
対策
サイドチャネル攻撃への対策としては、以下のようなものが挙げられる。
- マスキング: 暗号処理の実行時間を一定にする、または電力消費量を平準化する。
- ブラインディング: 入力データにランダムな値を加えることで、処理結果の変動を隠蔽する。
- ハードウェア対策: 電磁波シールド、ノイズフィルタなどを導入する。
- ソフトウェア対策: 処理を最適化し、サイドチャネル情報の漏洩を抑制する。
歴史
サイドチャネル攻撃の研究は1990年代から始まり、現在も活発に行われている。初期の研究では、電力解析攻撃が注目を集め、その後の研究で様々な種類のサイドチャネル攻撃が発見された。