IT用語集

サイドチャネル攻撃とは? わかりやすく10分で解説

水色の背景に六角形が2つあるイラスト 水色の背景に六角形が2つあるイラスト
アイキャッチ
目次

サイドチャネル攻撃とは?

サイドチャネル攻撃は、暗号アルゴリズムを数学的に破るのではなく、実装や実行環境に由来する「副作用(サイドチャネル)」を観測して秘密情報を推測する攻撃です。たとえば暗号処理の処理時間、消費電力、電磁波、キャッシュの挙動などを観測・解析し、秘密鍵などの機密情報に迫ります(音や熱を手掛かりにする研究例もあります)。

サイドチャネル攻撃が厄介なのは、暗号方式が強固であっても、実装や実行環境(ハードウェア、OS、設定、物理環境など)の違いによって成立し得る点です。つまり、暗号の「理論上の安全性」だけでは守り切れない領域が残ります。

サイドチャネル(副経路)とは

暗号処理は、理想化すると「入力→演算→出力」という流れですが、実機では演算に伴ってさまざまな情報が漏れます。この漏れが、攻撃に利用される「副経路」です。副経路は必ずしも物理的なものだけではなく、CPUキャッシュや分岐予測など、マイクロアーキテクチャ上の挙動が観測可能な場合も含まれます。

サイドチャネル攻撃の歴史

サイドチャネル攻撃は1990年代から研究が進み、タイミング解析(1990年代半ば)や電力解析(1990年代後半)といった基礎的手法が知られるようになりました。その後、電磁波解析、故障利用(Fault)攻撃、キャッシュ攻撃など手法が広がり、IoT機器・ICカード・HSMだけでなく、サーバーやクラウド環境でのリスクも議論されるようになっています。

サイドチャネル攻撃の特徴

  • 暗号アルゴリズムが強固でも、実装や環境の弱点で成立し得る
  • 攻撃者は、対象機器の近くで測定する「物理系」だけでなく、同一マシン上の別プロセスから狙う「マイクロアーキテクチャ系」も用いる
  • 成立条件が揃うと深刻だが、常にどこでも成功するわけではなく、対象や環境への依存が大きい

サイドチャネル攻撃と他の攻撃手法との違い

暗号解析攻撃はアルゴリズムや数学的性質を突きます。一方、サイドチャネル攻撃は装置・実装・実行環境に由来する情報漏れ(副経路)を突きます。ネットワーク攻撃が通信内容の盗聴や改ざんを狙うのに対し、サイドチャネル攻撃は「通信を盗まなくても」秘密情報に迫れる可能性があります。

サイドチャネル攻撃の種類

サイドチャネル攻撃は、観測対象(時間・電力・電磁波・キャッシュなど)によって分類されます。ここでは代表的な例を整理します。

タイミング攻撃

タイミング攻撃は、処理時間の差から秘密情報を推測する攻撃です。分岐やテーブル参照の有無、キャッシュヒット/ミスなどが時間差として現れる場合に成立します。対策としては、秘密情報に依存する時間差を作らないコンスタントタイム実装が基本の一つになります。

電力解析攻撃

電力解析攻撃は、消費電力の変動から演算内容を推測する攻撃です。ICカードなど、電源ラインに近い場所で測定でき、かつ十分な測定回数を確保できる対象で現実味が増します。対策は、マスキング(乱数化)、ダミー演算、電力平準化などが中心です。

電磁波解析攻撃

電磁波解析攻撃は、機器から放射される電磁波を測定し、秘密情報の推測につなげます。対策は、シールド、レイアウトの工夫、ノイズ付加、測定しにくい設計など、多層的に検討されます。

故障利用(Fault)攻撃

故障利用攻撃は、電圧・クロック・レーザーなどで故障を誘発(あるいは偶発的な故障を利用)し、正常系と異常系の差分から秘密鍵を推測する手法です。対策としては、エラーチェック、冗長計算、耐タンパー設計などが用いられます。

キャッシュ攻撃(マイクロアーキテクチャ系)

キャッシュ攻撃は、CPUキャッシュの挙動(アクセス時間の差)を利用して、暗号処理の内部状態を推測する攻撃です。共有資源がある環境(同一ホスト上の別プロセス、同一CPU上での同時実行など)で問題化しやすく、対策はコンスタントタイム実装に加え、隔離(プロセス分離、SMTの扱い、コア固定、キャッシュ分割など)も、環境や脅威モデルに応じて検討対象になります。

音声・熱などの物理チャネル

機器が発する微弱な音や発熱パターンを利用する研究もあります。実務では、攻撃成立の難易度は対象、距離、測定条件に強く依存しますが、高価値な鍵を扱う装置(HSM、決済端末など)では無視できない場合があります。

サイドチャネル攻撃の手法と仕組み

攻撃が成立する条件

  • 観測できる副経路が存在し、秘密情報と統計的に相関している
  • 攻撃者が十分な測定回数と解析能力を持つ(ノイズに勝てるデータ量がある)
  • 対象が同様の処理を繰り返し行う(暗号処理が反復されるなど)

「攻撃者が必ず物理的に近くにいる必要がある」とは限りません。キャッシュ攻撃のように、同一ホスト上で成立する可能性がある手法もあるため、環境によっては論点が物理セキュリティだけに収まりません

「暗号が安全」でも漏れる理由

暗号アルゴリズムは、理想化されたモデルで安全性が議論されます。しかし実装では、分岐、メモリアクセス、電力特性などが一定でないことがあり、そこから秘密情報が漏れる可能性があります。対策は「暗号方式の選定」ではなく、実装・環境・運用の三点セットで考えるのが実務的です。

サイドチャネル攻撃の現状

サイドチャネル攻撃は、特定の条件下では深刻な影響を与えます。特に、IoT機器、組み込み機器、ICカード、決済端末、HSMなど、鍵が長期間使われる機器ではリスク評価が重要です。また、マイクロアーキテクチャ系の論点は、共有実行環境(仮想化やマルチテナント)での設計にも影響します。

サイドチャネル攻撃による被害のイメージ

  • 秘密鍵の推測により、暗号通信の解読やなりすましが可能になる
  • 署名鍵が漏れると、正規の署名を偽造される恐れがある
  • 端末が改ざんされていなくても情報が抜き取られる可能性がある(気づきにくい)

サイドチャネル攻撃から身を守るための対策

対策は「機器」「実装」「運用」に分けて考えると整理しやすくなります。

実装面の対策(ソフトウェア/ファームウェア)

  • コンスタントタイム実装(分岐やメモリアクセスを一定化)
  • マスキング、ブラインディング、乱数化などの耐解析技術
  • エラーチェックや冗長計算によるFault攻撃への耐性向上

機器・ハードウェア面の対策

  • 耐タンパー性の高いデバイスやHSMの利用
  • シールドやノイズ対策、電源設計の見直し
  • 鍵を扱う領域の物理的隔離(測定や改ざんを困難にする)

運用・環境面の対策

  • 鍵管理の見直し(鍵の寿命、ローテーション、用途分離)
  • 共有環境での隔離(重要処理を専用ホストや専用領域で実行)
  • 物理アクセス制御(持ち出し防止、設置場所の監視、保守手順の整備)

「最新技術で解決できる」という誤解に注意

サイドチャネル攻撃は、暗号方式を更新しただけでは解決しません。実装や実行環境が副経路を漏らしていれば、攻撃は成立し得ます。重要なのは実装品質と環境設計です。

サイドチャネル攻撃の将来

攻撃手法と防御技術は、いたちごっこの関係で進化します。AIが解析(攻撃・検知)を支援する可能性もありますが、どちらに転ぶかは前提条件と運用次第です。重要なのは、リスクの高い資産(署名鍵、認証鍵、長期鍵)を把握し、脅威モデルに応じた設計と監査を継続することです。

よくある質問(FAQ)

Q. サイドチャネル攻撃は暗号が弱いから起きるのですか?

いいえ。暗号が強固でも、実装や環境の「副経路」から情報が漏れると成立します。

Q. 攻撃者は必ず装置の近くにいる必要がありますか?

物理測定が必要な手法もありますが、キャッシュ攻撃のように同一ホスト上で成立し得る手法もあります。

Q. どんな機器が狙われやすいですか?

ICカード、IoT機器、決済端末、HSMなど、鍵が長期利用される機器は特に注意が必要です。

Q. 一番基本的な対策は何ですか?

コンスタントタイム実装など、秘密情報に依存した時間差やメモリアクセス差を作らない実装が基本です。

Q. 電力解析攻撃はPCでも起きますか?

可能性はありますが、現実的な成立条件は対象と測定条件に依存します。組み込み機器や近接測定できる対象で問題化しやすいです。

Q. キャッシュ攻撃はどう防げばよいですか?

コンスタントタイム実装に加え、重要処理の隔離、SMTの扱い、専用ホスト運用など、環境面の対策も検討します。

Q. 物理セキュリティはどこまで重要ですか?

重要です。特に測定や改ざんが前提となる手法では、設置場所や保守手順が防御の一部になります。

Q. 「新しい暗号方式」に変えれば解決しますか?

それだけでは解決しません。副経路は実装や環境から漏れるため、実装品質と設計が必要です。

Q. サイドチャネル攻撃は検知できますか?

一部は可能ですが、検知が難しいケースもあります。高価値資産は「成立しにくくする設計」を優先します。

Q. 企業で最初にやるべきことは何ですか?

鍵を扱う資産と用途を棚卸しし、脅威モデルに応じて「実装・機器・運用」のどこを強化するか決めることです。

記事を書いた人

ソリトンシステムズ・マーケティングチーム