差分障害解析(DFA) は、暗号学、特に暗号解読の分野におけるアクティブサイドチャネル攻撃の一種です。その原理は、暗号操作に障害(予期しない環境条件) を誘発して、その内部状態を明らかにすること です。
原則
組み込みプロセッサを搭載したスマートカードを例にとると、高温にさらされたり、サポートされていない電源電圧や電流を受け取ったり、過度にオーバークロックされたり、強い電界や磁界にさらされたり、さらには電離放射線を受けてプロセッサの動作に影響を及ぼすなど、予期しない環境条件に遭遇する可能性があります。このようなストレスがかかると、プロセッサは物理的なデータ破損により誤った結果を出力し始める可能性があり、これにより暗号解読者はプロセッサが実行している命令やデータの内部状態を推測できるようになります。[1] [2]
DESとトリプルDESの場合、秘密鍵を得るためには約200ビットの反転が必要です。[3] DFAはAES暗号にも適用され、成功しています。[4]
こうした種類の攻撃から身を守るために多くの対策が提案されている。そのほとんどはエラー検出方式に基づいている。[5] [6]
フォールト注入
フォールト インジェクション攻撃では、暗号化タスクを担当するトランジスタにストレスを与えてフォールトを生成し、それを分析の入力として使用します。ストレスは電磁パルス (EM パルスまたはレーザーパルス) である場合があります。
実際のフォールト注入は、パルサーまたはレーザーに接続された電磁プローブを使用して、プロセッサのサイクルタイムと同程度の長さ(ナノ秒のオーダー)の妨害を発生させるものです。チップに伝達されるエネルギーは、チップの特定のコンポーネントを焼損させるのに十分な場合があるため、パルサーの電圧(数百ボルト)とプローブの位置を細かく調整する必要があります。精度を高めるために、チップはしばしばカプセル化解除(化学的に侵食してシリコンを露出させる)されます。[7]
参考文献
- ^ Eli Biham、Adi Shamir:差分故障解析の次の段階:完全に未知の暗号システムを破壊する方法(1996)
- ^ Dan Boneh、Richard A. DeMillo、Richard J. Lipton: 暗号プロトコルの欠陥チェックの重要性について、Eurocrypt (1997)
- ^ Ramesh Karri 他: フォールトベースのサイドチャネル暗号解析耐性 Rijndael 対称ブロック暗号アーキテクチャ (2002)
- ^ クリストフ・ジロー: AES の DFA (2005)
- ^ Xiaofei Guo 他: 高度暗号化標準のための不変性に基づく同時エラー検出 (2012)
- ^ Rauzy と Guilley: CRT-RSA に対する高次フォールト注入攻撃に対する対策 (2014) (オープン アクセス版)
- ^ 「フォールトインジェクション」。eshard.com 2021-11-01 . 2021-11-23閲覧。
