機密データの保護は、プロセッサーや単一チップ上のシステムの境界で終わるものではない。命令やデータがDRAMなどの外部メモリへ移されると、メモリインターフェースは攻撃対象領域の一部となる。特に、係争環境で動作し、数十年にわたって運用される可能性がある宇宙・政府システムではその傾向が強い。Semiconductor Engineeringに掲載された技術資料では、RambusのVincent van der LeestとAjay Kapoorが、コンテンツの暗号化にとどまらず、変更されていないことの検証まで含む、このインターフェースの保護方法を提示している。
この資料は2026年9月3日にスポンサーブログとして掲載されたものであるため、Rambusの製品に関する説明は、提案されたアプローチの商業的な例として扱うべきであり、その優位性を示す独立した証拠とはみなせない。一方、基本的な技術原則は製品そのものより広い。外部メモリには、鍵のライフサイクル管理に加え、機密性、認証、改ざん耐性が必要である。
暗号化はデータを隠すが、完全性を証明しない
Inline Memory Encryption、すなわちインラインメモリ暗号化は、システムオンチップに接続された外部メモリへ書き込む前にデータを暗号化し、使用時に戻されると復号する。通常は処理ロジックとメモリコントローラーの間に配置された暗号化エンジンによって実行され、性能と応答時間の要件を維持しながら、ソフトウェアに対して透過的な保護を可能にする。
しかし、データの機密性は完全性と同義ではない。攻撃者は、暗号文やセンサーデータ、実行命令を読み取る必要がない場合がある。コマンドや座標、検索テーブルに関連する値を変更できれば十分なことがある。同じリスクは医療・金融データにも当てはまり、人工知能モデルの入力やパラメーターについても、変更によって信頼できない判断や出力が生じる可能性がある。
このため、資料は、可能な限りストレージの近く、かつデータをプロセッサー、アクセラレーター、制御ロジックへ渡す前に認証を行うことを提案している。認証されていないデータが移動する距離を短くすることで、破損したデータがシステム内部へ広がる可能性を抑えられる。
AESのモード選択は、アルゴリズム名ではなく要件に結び付く
AES-XTSは、ストレージや高帯域幅メモリの暗号化で広く使用されている。このモードはデータアドレスに関連付けられた値を用いるため、異なるアドレスに保存した場合、同じコンテンツから同じ暗号文が生成されることを防ぐ一方、保護対象データのサイズを増加させない。しかしAES-XTSが提供するのは機密性だけであり、機密性と完全性の検証を組み合わせた認証付き暗号モードではない。
これに対し、AES-GCMは認証タグによって暗号化と完全性の検証を組み合わせ、元の平文を利用可能にする前に検証を行う。これにより意図的な改ざんを検出できるが、認証タグとnonce、すなわち初期化ベクトルの保存・管理が必要になる。その結果、メモリ容量、帯域幅、アドレス配置、キャッシュ機構、初期化段階に影響が及ぶ可能性がある。
実際には、判断をアルゴリズムの強度だけに限定すべきではない。エンジニアは、脅威モデル、必要な保証レベル、許容可能なメモリ増加、性能目標、システム全体のアーキテクチャのバランスを取る必要がある。重要システムでは、改ざんを検出できる能力が、追加のメタデータと設計の複雑さに伴うコストを正当化する場合がある。
サイドチャネル攻撃への耐性も設計の一部
数学的に健全なアルゴリズムであっても、その実装が物理的な漏えいを通じて鍵を露出させるなら十分ではない。資料は、電力消費、電磁放射、タイミングの分析により、機器へ物理的にアクセスできる攻撃者が、AESそのものを破ることなく鍵を推測できる可能性を指摘している。
したがって、サイドチャネル攻撃への耐性対策は、システムレベルだけで後から追加するのではなく、暗号化エンジンの内部に組み込むべきである。資料が挙げる保証要素には、安全な鍵の取り扱い、エラー発生時の予測可能な動作、制御経路の保護、ランダムな障害への耐性が含まれる。また、実地で検証されたソリューションと改ざん対策の実務的な知見に依存することで、実装リスクと設計における信頼構築の負担を軽減できるとしている。これは特に宇宙・政府プログラムで重要である。
プラットフォームレベルで何を確定すべきか
資料は、メモリパスに暗号化エンジンを追加するだけでは、すべての保護上の問題は解決しないと説明している。システム設計チームと暗号化エンジンの設計チームは、相互に関連する主な課題に対処する必要がある。
- データの新しさ:古い値が有効であることを検証しても、その値の再生は防げない。保護されたカウンター、バージョン情報、同期された状態が必要になる場合があり、メタデータ、永続性、復旧に影響を及ぼす。
- メモリの初期化:保護対象領域では、通常の起動を開始する前に正しいメタデータが必要になる場合がある。また、大容量メモリの初期化は、起動時間とシステムの可用性に影響する可能性がある。
- 信頼のルートとの統合:鍵の供給、セキュリティポリシー、ライフサイクル段階間の移行、鍵の消去、復旧メカニズムは、安全なブートから始まり、動作中のメモリ保護にまで及ぶ信頼チェーンと整合していなければならない。
Rambusによれば、FPGAアプリケーション向けに設計された同社のIME-IP-340製品は、AES-GCMを使用してメモリトランザクションを暗号化、復号、認証し、構成可能なメモリ管理、キャッシュ、鍵管理、電力解析攻撃への耐性オプションをサポートする。同社の説明によれば、これらの機能は、セキュリティ、性能、メタデータのコスト、統合要件のバランスを設計者が取れるよう支援することを目的としている。
編集部の見解:暗号化エンジンよりも境界が重要
資料が焦点を当てる実質的な変化は、メモリ保護を「コンテンツを隠す」概念から、改ざんの検出と鍵抽出手法への耐性を含む、より広い概念へ移行することである。これは、外部データに基づいて判断や実行、命令の発行を行うシステムにとって重要である。データの完全性は機密性に劣らず重要だからである。
ただし、出典だけでは、特定の運用環境におけるIME-IP-340の性能を証明できず、応答時間、メタデータのサイズ、独立試験の結果に関する詳細な数値も示していない。また、認証付き暗号は、リプレイ攻撃の防止、初期化、ライフサイクル管理の仕組みを設計する必要性をなくすものではない。したがって、どのソリューションも、メモリのセキュリティを自動的に保証する単独のコンポーネントとしてではなく、プラットフォーム全体のアーキテクチャと固有の脅威モデルの中で評価すべきである。