表題番号:2009A-504 日付:2011/03/05
研究課題安全・安心な電子社会のための暗号LSI攻撃とその防御
研究者所属(当時) 資格 氏名
(代表者) 理工学術院 准教授 戸川 望
研究成果概要
 近年,暗号処理を実装したLSI (大規模集積回路) に対し,テスト用のスキャンパスを利用することでその秘密鍵を復元するスキャンベース攻撃が注目されている.スキャンパスとはLSI中のレジスタを直列に接続し,LSIの外部からレジスタを直接制御・観測できるようにしたテスト容易化手法の1つであり,スキャンパステストを用いることでLSIテスト効率を大幅に高めることができる.
 その一方,スキャンパスを使用して動作中のLSI内部のレジスタ出力を取得できることを利用し,暗号回路の動作状態を解析,秘密鍵復元に応用したものがスキャンベース攻撃である.スキャンベース攻撃の難しさは攻撃者が暗号動作中のスキャンデータを取得しても,そのスキャンデータとレジスタの対応関係が不明である点にある.これに対し従来いくつかの手法が提案されて来ているがいずれも次の2点に大きな問題がある.(1) スキャンパスが暗号回路中のレジスタだけで構成されている場合のみ有効であり,周辺回路のレジスタを含むことができない.(2) 共通鍵暗号DESおよびAES を対象としており,スキャンベース攻撃で公開鍵暗号方式の秘密鍵を復元できない.
 このような背景のもと本研究では,暗号回路以外のレジスタがスキャンパスに含まれていても秘密鍵を復元すると同時に,公開鍵暗号方式として知られるRSA暗号ならびに楕円曲線暗号の秘密鍵も復元することを可能とした新たなスキャンベース攻撃手法を提案した.提案手法は,暗号中に計算される「中間値」を保持する特定の1ビットレジスタの変化の系列に着目する.十分な数の入力からそれぞれ計算した暗号処理中の中間値の1ビットの変化は乱数に近い値であり,その途中結果に固有の値となる(これを判別値あるいはスキャンシグニチャと呼ぶ).スキャンシグニチャがスキャンデータの中に存在するか否かでスキャンデータを解析する.計算機シミュレーションおよびFPGAボードを使った評価実験を通して,AES,RSA,楕円曲線暗号のそれぞれにおいて最大数百程度の平文によって,128ビットを越える秘密鍵を解読できることを示した.さらに提案するスキャンベース攻撃から暗号LSIを防御するためスキャンデータの解析を妨害する新たなスキャンパス防御手法-状態依存スキャンレジスタ技術-を提案した.