ハードウェアセキュリティにおけるラッチロックの脆弱性評価
新しいオラクルなし攻撃が、チップセキュリティのためのラッチロック方法のリスクを明らかにした。
― 0 分で読む
今のチップデザインの世界では、ハードウェアのセキュリティを維持するのがめっちゃ重要だよね。多くのチップが複数のサプライヤーを使って作られているから、誰かがデザインやデータに不正アクセスするリスクがあるんだ。ハードウェアを守るために、「ロジックロック」という方法が出てきたよ。この方法は、秘密のキーを使ってハードウェア回路の本当の動作を隠すんだ。もし誰かが間違ったキーを使ったら、回路は正しく動かない。
具体的なロジックロックの一つに、「ラッチロック」というのがある。これはデータを保持する回路の部分、つまりラッチを守ることに焦点を当ててる。ラッチロックはデザインの特定の部分を複製して、動作を変えることで実現する。これによって、リバースエンジニアリングや理解しようとする人たちにとってデザインがより複雑になるんだ。
ラッチロックとは?
ラッチロックはデジタル回路を守るための技術だよ。従来のロジックロックは、状態を保持しない入力を出力に変える「組み合わせ論理」に焦点を当てることが多いけど、ラッチロックはデータを時間をかけて保持・管理する「順序回路」に関わるんだ。
この技術では、デザイン内の特定のフリップフロップを複製してラッチに置き換えるんだ。さらに、混乱させるための偽ラッチも追加されて、回路の理解を難しくする。回路は正しいキーが使われたときだけ動作するから、不正なユーザーが機能にアクセスするのは簡単じゃないよ。
ラッチロックの仕組み
ラッチロックのプロセスは、いくつかのステップに分けられるよ:
- フリップフロップの選択: デザインから複製するフリップフロップを選ぶ。
- 複製と変更: 選ばれたフリップフロップを複製してラッチに変更する。
- 偽ラッチの挿入: デザインを理解しようとする人を混乱させるために、さまざまな偽ラッチを追加する。
- 制御回路の追加: ラッチが動作するためには正しいキーが必要な制御回路を含める。
この設定で、間違ったキーが使われると回路は正しい出力を提供できず、元の機能が隠されるってわけ。
ラッチロックへの脅威
ラッチロックはセキュリティを向上させることができるけど、完璧ではないんだ。攻撃者は隠された機能を特定する方法を考え出すことができる。いくつかの従来の攻撃はアンロックされた回路にアクセスすることに依存しているけど、他の方法はそれを必要としない。これらのオラクルレス攻撃は、ロックされたデザインにアクセスするだけで済むから、もっと危険かもしれない。
従来の攻撃
ロジックロックに対する多くの攻撃は、ロックされた回路とロック解除された回路の両方にアクセスできることに依存している。攻撃者は二つのバージョンを分析して、秘密のキーを特定しようとする。この方法は時間がかかり、複雑なことが多い。
オラクルレス攻撃
新しいオラクルレス攻撃は大きな脅威を表している。これらは、キーや機能を特定するために機能するアンロックされた回路を必要としない。代わりに、攻撃者はロックされた回路の詳細のみに頼ることができるから、これらの攻撃はより効果的で魅力的なんだ。
提案された攻撃
この文書では、ラッチロックに向けた新しいオラクルレス攻撃を提案してるよ。機械学習、ブール解析、および整数線形プログラミングの組み合わせを利用している。この方法は、元の回路が動作する必要はなく、ロックされた回路の観察された振る舞いのみに依存してるんだ。
二段階アプローチ
攻撃は二つの主要な段階に分かれている:
- ロジック偽の特定: 最初の段階では、機械学習を使って回路内の偽ラッチを特定する。検出後、これらの偽を取り除いて回路を簡素化する。
- 残りのラッチの特定: 二番目の段階では、簡素化された回路をさらに分析して残りのラッチを分類する。ここでは、機械学習と整数線形プログラミングが協力して回路をロック解除するための潜在的なキーを見つけるんだ。
攻撃の仕組み
提案された攻撃は、ラッチロックされたデザインの構造を利用している。デザインに関連する順序グラフを研究することによって、攻撃はデコイの挿入によって構造がどこで変更されたかを特定する。
フェーズ1: ロジック偽の特定
このフェーズでは、機械学習モデルを使って、回路のどの部分が偽かを判断する。回路の特徴と挙動を分析することで、どのラッチが本物でどれが隠蔽のために追加されたかを把握する。
偽が特定されたら、それらは考慮から取り除かれる。これによって回路が簡素化され、次のフェーズで分析しやすくなる。
フェーズ2: 残りのラッチの特定
偽が取り除かれたら、次のステップは残りのラッチを分類することだ。これは別の機械学習モデルを使って行う。このモデルからの出力は、整数線形プログラミングのコンポーネントへの入力となる。
この最適化モデルは、特定の構成に合うラッチを見つける役割を担ってる。目標は、悪意のあるユーザーがロックされた回路に対してテストできる潜在的なキーを導出することなんだ。
実験と結果
この攻撃の有効性を検証するために、研究者たちはさまざまなベンチマーク回路で一連のテストを行った。そのテストは、攻撃がどれくらい正確にキーを特定できるか、方法全体のパフォーマンスを評価することを目的としている。
精度と効率
テストフェーズからの結果は、攻撃が大多数のテスト対象回路で約96.9%の精度で正しいキーを明らかにできることを示した。これは、攻撃がラッチロックされた回路の機能を明らかにするのに非常に効果的であることを示している。
実行時間の効率に関しても、攻撃は良好で、テストした各回路に対して15分未満で完了し、実用的な使用が可能だったよ。
機能的腐敗
テスト中に測定された興味深い側面の一つは、機能的腐敗だった。この用語は、間違ったキーを使ったときに出力にどれだけのエラーが現れるかを指す。識別されたキーが完全に正確でなくても、回路の機能はしばしば保持されていて、ロックメカニズムが価値のある情報を漏らす可能性があることを示している。
特徴の重要性の分析
研究者たちは、ラッチを効果的に特定する上で最も重要な特徴を調べた。この特徴の重要性分析は、攻撃者がラッチロックを突破しようとする際に最も重要な回路の特徴を理解するのに役立つんだ。
将来の方向性
この攻撃の結果は、ラッチロックが最初に考えられていたほどセキュアではないかもしれないことを示している。ラッチロックの有効性を向上させるために、開発者たちは以下のような戦略を検討することができるよ:
- 情報漏洩の回避: キーや回路の構造が貴重な情報を漏洩しないようにするための戦略を実施することができる。
- 新しいタイプの偽の導入: 異なる定数値を出力するなど、異なる方法で動作する偽を作成することが将来の攻撃を複雑にするかもしれない。
結論
この研究は、ラッチロックがハードウェアセキュリティのための初期の有望な防御であった一方で、現代の攻撃に対して脆弱であることを強く示している。ここで探求されたオラクルレス攻撃は、ラッチロックデザインの重大な弱点を効果的に暴露する。
技術が進化し続ける中で、ハードウェアデザインのセキュリティを強化することが重要になる。これは、既存の方法を強化するだけでなく、潜在的な侵害からデザインを守るために代替構造や戦略を探求することも含まれるんだ。
機械学習と構造分析の組み合わせを通じて、このアプローチは、不正アクセスからハードウェアを保護する新しい方法への道を開いていて、将来のデザインで対処すべき脆弱性を浮き彫りにしているんだ。
タイトル: Unraveling Latch Locking Using Machine Learning, Boolean Analysis, and ILP
概要: Logic locking has become a promising approach to provide hardware security in the face of a possibly insecure fabrication supply chain. While many techniques have focused on locking combinational logic (CL), an alternative latch-locking approach in which the sequential elements are locked has also gained significant attention. Latch (LAT) locking duplicates a subset of the flip-flops (FF) of a design, retimes these FFs and replaces them with latches, and adds two types of decoy latches to obfuscate the netlist. It then adds control circuitry (CC) such that all latches must be correctly keyed for the circuit to function correctly. This paper presents a two-phase attack on latch-locked circuits that uses a novel combination of deep learning, Boolean analysis, and integer linear programming (ILP). The attack requires access to the reverse-engineered netlist but, unlike SAT attacks, is oracle-less, not needing access to the unlocked circuit or correct input/output pairs. We trained and evaluated the attack using the ISCAS'89 and ITC'99 benchmark circuits. The attack successfully identifies a key that is, on average, 96.9% accurate and fully discloses the correct functionality in 8 of the tested 19 circuits and leads to low function corruptibility (less than 4%) in 3 additional circuits. The attack run-times are manageable.
著者: Dake Chen, Xuan Zhou, Yinghua Hu, Yuke Zhang, Kaixin Yang, Andrew Rittenbach, Pierluigi Nuzzo, Peter A. Beerel
最終更新: 2023-04-28 00:00:00
言語: English
ソースURL: https://arxiv.org/abs/2305.00107
ソースPDF: https://arxiv.org/pdf/2305.00107
ライセンス: https://creativecommons.org/licenses/by/4.0/
変更点: この要約はAIの助けを借りて作成されており、不正確な場合があります。正確な情報については、ここにリンクされている元のソース文書を参照してください。
オープンアクセスの相互運用性を利用させていただいた arxiv に感謝します。