ハードウェアセキュリティの最新動向
スキャンテストのためのスキャンチェーンが、暗号の処理を行うチップで攻撃の経路になりうる理由と、その対策の組み合わせとして、正しいものはどれか。
- A処理の途中でテストのモードにすると、鍵に関係するレジスタの値を外に読み出せることがある。モードの切り替えで秘密を消し、出荷後はスキャンを無効にするか認証を求める
- Bスキャンチェーンは動作中に大きな電力を使うので、消費電力の波形が乱れて電力解析ができなくなる。そのため、スキャンチェーンはできるだけ長くつないでおく
- Cスキャンチェーンはチップの中の配線を増やすだけで、チップの中のデータを外に読み出すためには使えない。そのため、特別な対策は必要ない
答えと解説を見る
正解:A. 処理の途中でテストのモードにすると、鍵に関係するレジスタの値を外に読み出せることがある。モードの切り替えで秘密を消し、出荷後はスキャンを無効にするか認証を求める
スキャン設計では、チップの中のフリップフロップをつないで、内部の状態を外から設定したり読み出したりできます。暗号の回路の途中の状態をスキャンで読み出せると、入力を変えながら途中の値を比べることで鍵を推測できることが、研究で示されました。そのため、テストのモードに切り替えるときに鍵などのレジスタをリセットする、鍵のレジスタをチェーンから外す、スキャンの出力をかき混ぜる、出荷時にeFuseでスキャンを無効にするか認証を通った場合だけ使えるようにする、などの対策を組み合わせます。テストのしやすさと秘密の守りやすさは対立するので、設計の早い段階で両方を考えます。
- A. 正しい。テストのための読み出しの経路を、秘密の読み出しに使わせないようにします。
- B. スキャンチェーンは電力解析を防ぐ仕組みではなく、長くしても対策になりません。
- C. スキャンチェーンは、内部の状態を読み出すための仕組みそのものです。