(57)【特許請求の範囲】
【請求項１】
論理シミュレーションによりシミュレーションされた論理回路の複数の信号に基づいて、前記論理回路の複数の信号それぞれが変化した回数ｆを計数して信号変化回数記憶部に記憶する信号変化回数計数部と、
前記信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の複数の信号それぞれが変化した回数ｆの合計値Σｆを算出し、算出した合計値Σｆを、論理回路の消費電力に基づく耐タンパ性評価において前記論理回路の消費電力の代わりとして用いられる値とする消費電力算出部とを備え、
前記信号変化回数計数部は、所定の時間での信号変化回数が奇数回である場合、１回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回である場合、０回の信号の変化であるとみなして、前記論理回路の複数の信号それぞれが変化した回数ｆを計数することを特徴とする電力算出装置。
【請求項２】
論理シミュレーションによりシミュレーションされた論理回路の複数の信号に基づいて、前記論理回路の複数の信号それぞれが変化した回数ｆを計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、
前記信号変化回数計数工程で信号変化回数記憶部に記憶した論理回路の複数の信号それぞれが変化した回数ｆの合計値Σｆを算出し、算出した合計値Σｆを、論理回路の消費電力に基づく耐タンパ性評価において前記論理回路の消費電力の代わりとして耐タンパ性評価に用いられる値とする消費電力算出工程とを備え、
前記信号変化回数計数工程において、所定の時間での信号変化回数が奇数回である場合、１回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回である場合、０回の信号の変化であるとみなして、前記論理回路の複数の信号それぞれが変化した回数ｆを計数することを特徴とする電力算出方法。
【請求項３】
秘密情報を保持する論理回路の耐タンパ性を評価する耐タンパ性評価装置において、
論理シミュレーションにより前記論理回路の複数の信号をシミュレーションする論理シミュレータと、
前記論理シミュレータがシミュレーションした論理回路の複数の信号に基づいて、前記論理回路の複数の信号それぞれが変化した回数ｆを計数して信号変化回数記憶部に記憶する信号変化回数計数部と、
前記信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の複数の信号それぞれが変化した回数ｆの合計値Σｆを算出し、算出した合計値Σｆを、論理回路の消費電力に基づく耐タンパ性評価において前記論理回路の消費電力の代わりとして用いられる値とする消費電力算出部と、
前記消費電力算出部が算出した論理回路の消費電力の代わりとして用いられる値に基づいて、前記論理回路が保持する秘密情報の漏洩の有無を解析する漏洩情報解析部とを備えることを特徴とする耐タンパ性評価装置。
【請求項４】
前記信号変化回数計数部は、所定の時間での信号変化回数が奇数回である場合、１回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回である場合、０回の信号の変化であるとみなして、前記論理回路の信号それぞれが変化した回数ｆを計数することを特徴とする請求項３に記載の耐タンパ性評価装置。
【請求項５】
秘密情報を保持する論理回路の耐タンパ性を評価する耐タンパ性評価方法において、
論理シミュレーションにより前記論理回路の複数の信号をシミュレーションする論理シミュレーション工程と、
前記論理シミュレーション工程でシミュレーションした論理回路の複数の信号に基づいて、前記論理回路の複数の信号それぞれが変化した回数ｆを計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、
前記信号変化回数計数工程で信号変化回数記憶部に記憶した論理回路の複数の信号がそれぞれ変化した回数ｆの合計値Σｆを算出し、算出した合計値Σｆを、論理回路の消費電力に基づく耐タンパ性評価において前記論理回路の消費電力の代わりとして用いられる値とする消費電力算出工程と、
前記消費電力算出工程で算出した論理回路の消費電力の代わりとして用いられる値に基づいて、前記論理回路が保持する秘密情報の漏洩の有無を解析する漏洩情報解析工程とを実行することを特徴とする耐タンパ性評価方法。
【請求項６】
前記信号変化回数計数工程において、所定の時間での信号変化回数が奇数回である場合、１回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回である場合、０回の信号の変化であるとみなして、前記論理回路の複数の信号それぞれが変化した回数ｆを計数することを特徴とする請求項５に記載の耐タンパ性評価方法。
【発明の詳細な説明】
【技術分野】
【０００１】
論理回路で消費する電力を回路の論理シミュレーションによって算出する電力算出装置と電力算出方法に関する。また、算出した論理回路の消費電力にもとづいて論理回路からの情報の漏洩を検出し、論理回路の耐タンパ性を評価する耐タンパ性評価装置と耐タンパ性評価方法に関する。
【背景技術】
【０００２】
暗号等のセキュリティ機能を実現する半導体デバイスは、回路の消費電力から、暗号鍵等の秘密情報が漏洩していないかを評価する耐タンパ性評価を行う。【０００３】
この耐タンパ性評価の方法には、従来、実機を用いて消費電力を測定することにより秘密情報が漏洩していないかを評価する方法と、半導体デバイスの設計段階において、論理回路のシミュレーションを行うことにより消費電力を算出し、秘密情報が漏洩していないかを評価する方法とがある。【０００４】
このうちシミュレーションによる方法には、ソフトウェアによるシミュレーションによって、暗号処理の過程で現れる（と予想される）中間変数の特定のビットまたはハミング重みにもとづいて消費電力を算出し、それによって情報漏洩を検出する方法と、回路シミュレータによって回路の詳細なシミュレーションを行って消費電力を算出し、それによって情報漏洩を検出する方法がある（どちらも、例えば、非特許文献１を参照）。【０００５】
論理シミュレーションでの消費電力の算出は、次のようにして行う。
現在、主に使用されている半導体デバイスはＣＭＯＳであるが、その消費電力の大半は負荷を充放電するためのスイッチング電力Ｐである。そのため、回路の消費電力は（１）式に示すように、信号毎の単位時間当たりの変化数ｆ、負荷容量Ｃ、電圧Ｖの２乗の積を足し合わせた値で表すことができる。【０００６】
Ｐ＝ΣｆＣＶ２      （１）【０００７】
ここで、ｆは論理シミュレーションによって求める値であり、Ｖは固定値である。また、Ｃは回路接続を記述したネットリストやライブラリにもとづいて算出される。論理シミュレーションによる消費電力の算出では、この負荷容量Ｃの算出に多くの時間を要する。
【非特許文献１】“ＴＥＣＨＮＩＣＡＬ  ＲＥＰＯＲＴ  ＯＦ  ＩＥＩＣＥ”、ＩＴ２００３−６０、ＩＳＥＣ２００３−１００、ＷＢＳ２００３−１７８（２００４年３月）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来のシミュレーションを用いた耐タンパ性評価方法には、次のような問題があった。まず、ソフトウェアによるシミュレーションの場合、シミュレータは実際の回路の消費電力を高い精度で近似することはできないという欠点があり、正しい評価が行われるか否かが不明であるという問題があった。さらに、回路のどの部分からどのように情報が漏洩するかというメカニズムの解明には、ほとんど役に立たないという問題もあった。【０００９】
一方、回路シミュレータを用いて詳細なシミュレーションを行う方法の場合、処理に非常に時間がかかる上に回路の詳細情報が必要となるため、回路設計の上流工程で手軽に耐タンパ性を評価するという用途には適用できず、結果的に設計と評価を効率的に行えないという問題があった。【００１０】
この発明は、これらの問題を解決するためになされたものであり、回路設計における論理設計を含む、それより上流の工程（以下、これを上流工程と呼ぶ）において、実際の回路の耐タンパ性を高精度かつ高速に評価することを目的とする。
【課題を解決するための手段】
【００１１】
前記した課題を解決するため、電力算出装置は、論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出することとした。【００１２】
また、論理回路からの情報の漏洩を検出し論理回路の耐タンパ性を評価する耐タンパ性評価装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数部と、信号変化回数計数部が信号変化回数記憶部に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費電力を算出する消費電力算出部と、消費電力算出部が算出した論理回路の消費電力にもとづいて論理回路から漏洩する情報を解析する漏洩情報解析部とを備えることとした。
【発明の効果】
【００１３】
この発明によれば、電力算出装置は、回路の論理シミュレータが出力した論理回路の信号が変化した回数の加算値にもとづいて論理回路の消費電力を算出することができる。【００１４】
また、耐タンパ性評価装置は、信号変化回数計数部が、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶し、消費電力算出部が、信号変化回数記憶部に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費電力を算出し、漏洩情報解析部が、算出した論理回路の消費電力にもとづいて論理回路から漏洩する情報を解析することにより、論理回路からの情報の漏洩を検出し、論理回路の耐タンパ性を評価することができる。
【発明を実施するための最良の形態】
【００１５】
実施の形態１．
実施の形態１では、耐タンパ性評価装置の論理シミュレータが出力した論理回路の信号が変化した回数にもとづいて、耐タンパ性評価装置の中の電力算出装置が論理回路の消費電力を算出する実施の形態について説明する。【００１６】
耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出する。【００１７】
図１は、実施の形態１における耐タンパ性評価装置の構成を示す図である。図１に示すように、電力算出装置は耐タンパ性評価装置の一部を構成する。
このうち電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数部１０と、信号変化回数計数部１０が信号変化回数記憶部に記憶した論理回路の信号が変化した回数の加算値にもとづいて論理回路の消費電力を算出する消費電力算出部２０とを備えている。【００１８】
また、耐タンパ性評価装置は、電力算出装置の他に、論理回路の動作のシミュレーションを行う論理シミュレータ３０と、論理シミュレータ３０が出力した信号の変化を記憶する信号変化情報記憶部３１と、論理シミュレータ３０が利用するファイルを記憶しているファイルデータベース４０と、論理シミュレータ３０を制御するシミュレーション制御情報を生成するシミュレーション制御情報生成部５０と、シミュレーション制御情報生成部５０が生成したシミュレーション制御情報を記憶するシミュレーション制御情報記憶部５１とを備えている。【００１９】
さらに、耐タンパ性評価装置は、消費電力算出部２０が算出した消費電力を記憶する消費電力記憶部２１と、消費電力記憶部２１から消費電力を読み出して時系列で並べた時系列電力情報を生成する時系列電力情報生成部６０と、時系列電力情報生成部６０が生成した時系列電力情報を記憶する時系列電力情報記憶部６１と、時系列電力情報記憶部６１から時系列電力情報を読み出して表示する結果表示部とを備えている。【００２０】
信号変化回数計数部１０は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する。消費電力算出部２０は、信号変化回数計数部１０が信号変化回数記憶部に記憶した論理回路の信号が変化した回数の加算値にもとづいて論理回路の消費電力を算出する。【００２１】
ここで、実施の形態１で用いる消費電力の算出方法について説明する。
前記した（１）式を用いた消費電力の算出方法では、負荷容量Ｃの算出に多くの時間を必要とする。しかし、回路設計の上流工程において論理回路の耐タンパ性を高精度かつ高速に評価する場合には、算出する消費電力にそれほど高い精度は必要ではない。そこで、信号の負荷容量Ｃはすべてほぼ同じだと見なして、信号毎の単位時間当たりの変化数ｆで近似することにより、消費電力を（２）式を用いて算出する。これによって処理時間を大幅に短縮することができる。【００２２】
Ｐ＝Σｆ      （２）【００２３】
各部の機能の説明に戻る。
論理シミュレータ３０は、ディジタル回路の論理設計で用いられる通常の論理シミュレータであり、対象となる論理回路でどのような信号の変化が発生したのかを示す全ての信号を生成する。ファイルデータベース４０は、論理シミュレータ３０が用いる論理回路、ネットリスト、ライブラリ、入力データファイル及びテストベンチを記憶している。これらは論理シミュレーションの全期間を通じて参照される。【００２４】
シミュレーション制御情報生成部５０は、論理シミュレータ３０が、シミュレーションの全期間をまとめて１度に行うのではなく、時間をずらした複数回のシミュレーション（それぞれを「単位シミュレーション」と呼ぶ）に分割して実行する場合に、単位シミュレーション毎の制御情報を生成する。生成したファイルは、テストベンチがシミュレーションの開始と終了を制御する際に参照する。【００２５】
時系列電力情報生成部６０は、消費電力算出部２０が算出した論理回路の所定の期間についての消費電力を、時系列にしたがって並べて一つの時系列電力情報を生成する。また、時系列電力情報生成部６０は、時系列電力情報を表示に適したフォーマットに変換する。結果表示部７０は、時系列電力情報生成部６０が生成した時系列電力情報を表示する。【００２６】
テストベンチは、論理シミュレータ３０の動作全体を記述したファイルである。例えば、論理シミュレータ３０によるファイルの入力や出力、論理シミュレーションの開始と終了のタイミングを指定する時間情報が記述されている。【００２７】
図２はテストベンチの例の一部であり、単位シミュレーション毎の信号変化情報を抽出するための記述である。対象となる論理回路が処理を行う際、クロックサイクル毎の信号変化情報を異なるファイルに出力させている。【００２８】
具体的には、単位シミュレーションの開始に際して、入力データファイルから入力データを一つ読み出し、対象となる論理回路の論理シミュレーションを行った後、論理シミュレータが出力した信号が変化した回数を計数し、その結果をファイルに出力している。【００２９】
図２の２箇所でファイルを参照（ｉｎｃｌｕｄｅ）しているが、参照されるファイルの例を図３と図４に示す。図３は単位シミュレーションで使用する入力データの先頭番号を保持するファイルである。図３の例では、入力データの先頭番号は、“１５９２００”となっている。図４は、単位シミュレーションで生成される信号変化情報を記入するファイル名を指定するファイルである。図４の例では、入力データが“１５９２００”（先頭番号）の場合、信号変化情報は“ｓａｉｆ／ｓｉｍ＿ｎｅｔ＿１５９２００．ｓａｉｆ”に記入され、入力データが“１５９２０１”の場合、“ｓａｉｆ／ｓｉｍ＿ｎｅｔ＿１５９２０１．ｓａｉｆ”に記入される。これらは、ともにシミュレーション制御情報であり、論理シミュレータ３０を起動する前にシミュレーション制御情報生成部５０によって生成される。【００３０】
次に、実施の形態１における電力算出装置を含む耐タンパ性評価装置の動作を説明する。図５は、電力算出装置を含む耐タンパ性評価装置での電力算出の処理を示すフローチャートである。【００３１】
耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号が変化した回数の加算値にもとづいて論理回路の消費電力を算出する消費電力算出工程とを実行する。【００３２】
消費電力を算出する対象となる論理回路とそのネットリスト、論理シミュレーションで用いるライブラリと、論理回路へ最初に入力する入力データと、論理シミュレーションで用いるテストベンチは、ファイルデータベース４０に記憶されている。入力データは複数用意されており、単位シミュレーションを繰り返すたびに読み出されて利用される。【００３３】
このうち対象となる論理回路は、論理シミュレータ３０によりファイルデータベース４０から読み出され、設定されているものとする。【００３４】
また、シミュレーション制御情報生成部５０は、予めシミュレーション制御情報を生成しておき、論理シミュレータ３０は、論理シミュレーションの開始／終了を制御するテストベンチからこれを参照する。【００３５】
まず、単位シミュレーションの動作を説明する。
論理シミュレータ３０は、ファイルデータベース４０に記憶されている入力データファイルから入力データを一つ読み込む（ステップＳ１００）。また、論理シミュレータ３０は、テストベンチの記述に従って、シミュレーション制御情報生成部５０のシミュレーション制御情報を参照する（ステップＳ１０１）。【００３６】
論理シミュレータ３０は、読み込んだ入力データを元にして、対象となる論理回路の論理的な動作のシミュレーションを行い、論理回路のクロックサイクル毎の信号を生成し、信号変化情報として信号変化情報記憶部３１に記憶する（ステップＳ１０２）。【００３７】
信号変化回数計数部１０は、信号変化情報記憶部３１から信号変化回数を読み出して論理回路で信号が変化した回数（以後、「信号変化回数」と略称する）を計数し、信号変化回数記憶部１１に記憶する（ステップＳ１０３）。これが前記した信号変化回数計数工程である。ここで、信号変化回数とは、１回の単位シミュレーションで評価対象回路が動作している期間のクロックサイクル毎に信号が変化した回数である。【００３８】
消費電力算出部２０は、信号変化回数記憶部１１の信号変化回数を読み出し、（２）式を用いて消費電力を算出し、消費電力記憶部２１に記憶する（ステップＳ１０４）。これが前記した消費電力算出工程である。【００３９】
つまり、ステップＳ１０３とステップＳ１０４が、耐タンパ性評価装置の中の電力算出装置の処理に相当する。【００４０】
消費電力算出部２０において、信号変化回数の総和を求め、消費電力を算出するプログラムの例を図６に示す。このプログラムでは、信号変化回数計数部１０が計数した信号変化回数を記入したファイルｆｐｒから、消費電力算出部２０が全ての信号の信号変化回数ＴＣを抽出し、抽出したＴＣの合計ｓｕｍを求めている。ｓｕｍは、図４に示すテストベンチによって指定された出力ファイルに出力される。【００４１】
ファイルｆｐｒでの信号変化回数の記入例（信号変化回数記憶部１１のファイルフォーマットの例）を表１に示す。また、抽出したＴＣの合計ｓｕｍのファイルでの記入例（消費電力記憶部２１のファイルフォーマットの例）を表２に示す。【００４２】
【表１】
0004651620.tif 000002
【００４３】
【表２】
0004651620.tif 000003
【００４４】
表１で示したような信号変化回数を記入したファイルｆｐｒと、表２で示したような合計ｓｕｍを記入したファイルが、単位シミュレーション毎に作成される。【００４５】
ここまでが１回の単位シミュレーションである。つまり、単位シミュレーションでは、読み込んだ入力データを元にして、シミュレーション制御情報で示される時間内の論理回路の消費電力を算出した。【００４６】
次に、論理シミュレータ３０は、ファイルデータベース４０内の入力データファイルに記述されている入力データの全てについて、論理シミュレーションを実行したか否かを判定する（ステップＳ１０５）。全ての入力データについての論理シミュレーションを完了した場合（ステップＳ１０５のＹｅｓの場合）、ステップＳ１０６へ進む。完了していない場合（ステップＳ１０５のＮｏの場合）、ステップＳ１００へ戻る。【００４７】
時系列電力情報生成部６０は、すべての入力データについて単位シミュレーションが終了すると、消費電力記憶部２１から単位シミュレーションを繰り返した数だけ生成された論理回路の消費電力を読み出し、単位シミュレーションを行う際に、シミュレーション制御情報から参照した時間情報にしたがって並べて、一つのまたは複数の時系列電力情報を生成し、時系列電力情報記憶部６１に記憶する（ステップＳ１０６）。結果表示部７０は、時系列電力情報記憶部６１から時系列電力情報を読み出し、例えば、オシロスコープなどでの表示形式とすることで、実機の解析と同じ環境で表示する（ステップＳ１０７）。【００４８】
以上により、対象とする論理回路が、ある時間内で消費する消費電力を論理シミュレーションにより算出することができる。【００４９】
本実施の形態により耐タンパ性評価装置の中の電力算出装置は、論理シミュレーションが出力した論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出することができる。これにより負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理回路の消費電力を算出することが可能となる。【００５０】
本実施の形態により信号変化回数計数部と消費電力算出部とから電力算出装置を構成することができる。その結果、電力算出装置は、信号変化回数計数部が論理回路の信号が変化した回数を計数し、消費電力算出部が信号の変化した回数の加算値にもとづいて論理回路の消費電力を算出することが可能となる。【００５１】
なお、耐タンパ性評価装置の中の電力算出装置のＰ＝Σｆの計算は、論理回路の信号が変化した回数のみにもとづいて消費電力を算出することを意味している。【００５２】
この場合、耐タンパ性評価装置の中の電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数部１０と、信号変化回数計数部１０が信号変化回数記憶部に記憶した論理回路の信号が変化した回数のみにもとづいて論理回路の消費電力を算出する消費電力算出部２０とを備えることとなる。【００５３】
また、電力算出装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号が変化した回数のみにもとづいて論理回路の消費電力を算出する消費電力算出工程とを実行する。【００５４】
この場合、電力算出装置は、論理シミュレーションが出力した論理回路の信号が変化した回数のみにもとづいて消費電力を算出することができる。これにより負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理回路の消費電力を算出することが可能となる。【００５５】
また、信号変化回数計数部と消費電力算出部とから電力算出装置を構成することができる。その結果、電力算出装置は、信号変化回数計数部が論理回路の信号が変化した回数を計数し、消費電力算出部が信号の変化した回数のみにもとづいて論理回路の消費電力を算出することが可能となる。【００５６】
実施の形態２．
実施の形態２では、耐タンパ性評価装置が、論理シミュレータが出力した論理回路の信号が変化した回数にもとづいて電力算出装置が算出した論理回路の消費電力から、論理回路からの情報の漏洩を検出し、論理回路の耐タンパ性を評価する実施の形態について説明する。また、その中で実行する回路の消費電力を用いた漏洩する情報の解析が、電力差分解析と、単純電力解析及びタイミング解析である実施の形態について説明する。【００５７】
図７は、実施の形態２における耐タンパ性評価装置の構成を示す図である。
論理回路からの情報の漏洩を検出し論理回路の耐タンパ性を評価する耐タンパ性評価装置は、論理回路の信号が変化した回数を計数して信号変化回数記憶部１１に記憶する信号変化回数計数部１０と、信号変化回数計数部が信号変化回数記憶部１１に記憶した論理回路の信号が変化した回数にもとづいて論理回路の消費電力を算出する消費電力算出部２０と、消費電力算出部が算出した論理回路の消費電力にもとづいて論理回路から漏洩する情報を解析する漏洩情報解析部８０とを備える。このうち、信号変化回数計数部１０と消費電力算出部２０とには、前記した電力算出装置を用いることができる。【００５８】
また、耐タンパ性評価装置は、論理回路の動作のシミュレーションを行う論理シミュレータ３０と、論理シミュレータ３０が出力した信号の変化を記憶する信号変化情報記憶部３１と、論理シミュレータ３０が利用するファイルを記憶しているファイルデータベース４０と、論理シミュレータ３０を制御するシミュレーション制御情報を生成するシミュレーション制御情報生成部５０と、シミュレーション制御情報生成部５０が生成したシミュレーション制御情報を記憶するシミュレーション制御情報記憶部５１とを備えている。【００５９】
さらに、耐タンパ性評価装置は、消費電力算出部２０が算出した消費電力を記憶する消費電力記憶部２１と、消費電力記憶部２１から消費電力を読み出して時系列で並べた時系列電力情報を生成する時系列電力情報生成部６０と、時系列電力情報生成部６０が生成した時系列電力情報を記憶する時系列電力情報記憶部６１と、漏洩情報解析部８０が解析した解析結果を記憶する解析結果記憶部８１と、解析結果記憶部８１から解析結果を読み出し表示する結果表示部とを備えている。【００６０】
なお、耐タンパ性評価装置の漏洩情報解析部８０は、時系列電力情報記憶部６１から時系列電力情報を読み出し、解析を行い解析結果を解析結果記憶部８１に記憶する。【００６１】
実施の形態２における耐タンパ性評価装置の各部の機能は、漏洩情報解析部８０を除き実施の形態１における電力算出装置の各部の機能と同じである。【００６２】
漏洩情報解析部８０は、消費電力算出部２０が算出した論理回路の消費電力を用いて電力解析を行い、論理回路から漏洩する情報を解析し、解析結果を出力する。【００６３】
耐タンパ性評価装置の消費電力算出部は、論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出する。【００６４】
または、耐タンパ性評価装置の消費電力算出部は、論理回路の信号が変化した回数のみにもとづいて消費電力を算出する。【００６５】
このことから、消費電力の算出方法は実施の形態１で用いた方法と同じである。また、テストベンチも実施の形態１と同じである。【００６６】
次に、漏洩情報解析部８０で実行する漏洩情報の解析するための電力解析について説明する。
耐タンパ性評価装置の漏洩情報解析部８０による回路の消費電力を用いた漏洩する情報の解析には、電力差分解析を用いる。【００６７】
あるいは、耐タンパ性評価装置の漏洩情報解析部８０による回路の消費電力を用いた漏洩する情報の解析には、単純電力解析を用いる。【００６８】
あるいは、耐タンパ性評価装置の漏洩情報解析部８０による回路の消費電力を用いた漏洩する情報の解析には、タイミング解析を用いる。【００６９】
前記した各解析の方法について具体的に説明する。ここでは解析の対象である半導体デバイスが実現するセキュリティ機能を暗号に限定して説明を行う。電力解析は、暗号を実行する半導体デバイス（以後、「暗号デバイス」と略称する）の論理回路の消費電力を解析することにより、暗号デバイスが保持する秘密情報、特に暗号鍵を推定する技術である。【００７０】
電力差分解析は、電力解析の一つの方法であり、ランダムな値のデータを暗号デバイスに入力して暗号化の処理を実行し、処理中の回路の消費電力を測定または算出して、得たデータを統計処理することにより暗号鍵を推定するものである。【００７１】
電力差分解析の具体的な方法は以下のようになる。
（１）対象となる回路に入力データを入力し、暗号化処理中の電力波形を測定する。通常、数千から数万データ分の電力波形を得る必要がある。
（２）公開されている暗号のアルゴリズムにもとづき、攻撃可能なＮビットの暗号鍵の一部（部分鍵）Ｋと攻撃ポイントＰＴを選択する。ＰＴは入力データとＫのみによって値が一意に決まる仮想的な中間変数の１ビットであり、かつ、Ｋのすべてのビットが関与するものである。例えば、ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）のＳボックスがそれに相当する。
（３）２Ｎ通りの部分鍵Ｋの候補すべてに対して、（１）で使用した入力データを与えたときに、ＰＴの値が１になるか０になるかを計算する。
（４）ＰＴの値によって測定データを２つのグループに分類し、それぞれのグループの平均電力の差分を計算する。平均電力の差分が最大となる候補が求める部分鍵Ｋである。
（５）十分な量の暗号鍵の情報が得られるまで、（２）〜（４）を繰り返す。【００７２】
単純電力解析は、電力解析のもう一つの方法であり、暗号化を実行している回路の電力波形から、暗号鍵に結びつく情報を推定するものである。【００７３】
例えば、単純なべき乗剰余演算は、べき指数を上位の桁から順に読み出し、その値が“１”のとき、乗算を行いながら平方演算を繰り返す。乗算と平方演算がそれぞれ異なる電力を消費する場合、電力波形からべき指数に関する情報を得ることができる。【００７４】
タイミング解析は、電力解析とは異なる解析方法である。その方法は、暗号化の処理時間が暗号鍵によって異なるとき、その時間の差を統計処理することにより、暗号鍵を推定する方法である。【００７５】
次に、実施の形態２における耐タンパ性評価装置の動作を、図８に示す耐タンパ性評価装置の処理のフローチャートにしたがって説明する。【００７６】
耐タンパ性評価装置での回路からの情報の漏洩を評価する情報漏洩評価方法は、論理回路の信号が変化した回数を計数して信号変化回数記憶部に記憶する信号変化回数計数工程と、信号変化回数計数工程が信号変化回数記憶部に記憶した論理回路の信号が変化した回数にもとづいて回路の消費電力を算出する消費電力算出工程と、消費電力算出工程が算出した回路の消費電力にもとづいて回路から漏洩する情報を解析する漏洩情報解析工程とを実行する。【００７７】
ファイルデータベース４０への対象となる論理回路などの入力と、シミュレーション制御情報生成部５０によるシミュレーション制御情報の生成とを行う準備は、実施の形態１と同じである。【００７８】
また、入力データファイルから入力データを一つ読み込むステップＳ２００から、時系列電力情報生成部６０が時系列電力情報を生成するステップＳ２０６までの処理は、実施の形態１におけるステップＳ１００からステップＳ１０６までの処理と同じである。ただし、ステップＳ２０６において、時系列電力情報生成部６０が生成した時系列電力情報は、時系列電力情報記憶部６１に記憶される。【００７９】
漏洩情報解析部８０は、時系列電力情報記憶部６１から読み出した時系列電力情報を用いて電力解析を行い、解析結果を解析結果記憶部８１に記憶する（ステップＳ２０７）。電力解析には、前記した電力差分解析か、単純電力解析か、タイミング解析を用いることができる。【００８０】
結果表示部７０は、解析結果記憶部８１から解析結果を読み出し、例えば、オシロスコープなどでの表示形式とすることで、実機の解析と同じ環境で表示する（ステップＳ２０８）。【００８１】
以上により、対象とする論理回路が、ある時間内で消費する消費電力を論理シミュレーションにより算出し、算出した消費電力を用いて電力解析を行うことにより、論理回路からの情報の漏洩を検出することができる。【００８２】
本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数を計数し、計数した信号の変化にもとづいて論理回路の消費電力を算出し、算出した消費電力にもとづいて論理回路から漏洩する情報を解析することができる。その結果、耐タンパ性評価装置は、対象となる論理回路の耐タンパ性を評価することが可能となる。【００８３】
本実施の形態によれば、耐タンパ性評価装置により電力差分解析を用いた回路の耐タンパ性の評価が可能となる。【００８４】
本実施の形態によれば、耐タンパ性評価装置により単純電力解析を用いた回路の耐タンパ性の評価が可能となる。【００８５】
本実施の形態によれば、耐タンパ性評価装置によりタイミング解析を用いた回路の耐タンパ性の評価が可能となる。【００８６】
本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数の加算値にもとづいて消費電力を算出することができる。これにより耐タンパ性評価装置は、負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理回路の消費電力を算出することが可能となる。【００８７】
本実施の形態によれば、耐タンパ性評価装置は、論理回路の信号が変化した回数のみにもとづいて消費電力を算出することができる。これにより耐タンパ性評価装置は、負荷容量を算出する必要がなくなることから、従来より短い処理時間で論理回路の消費電力を算出することが可能となる。【００８８】
本実施の形態によれば、論理シミュレーションで得られた信号変化情報にもとづいて耐タンパ性を評価するようにしたので、ソフトウェアによるシミュレーションよりも正確な評価が可能になった。また、回路シミュレータを用いる場合よりも高速な評価を設計の上流工程で行うことが可能になった。【００８９】
本実施の形態によれば、従来よりも消費電力を高速に算出することができる。その結果、回路設計の上流工程において、論理シミュレーションにより、短い時間で手軽に対象となる回路の耐タンパ性を評価することが可能となる。【００９０】
実施の形態３．
実施の形態３では、対象となる論理回路での信号の遅延による過渡遷移の影響を排除し、半導体デバイスや配置配線に依存しない理想的な状態での論理回路の耐タンパ性を評価する実施の形態について説明する。【００９１】
実施の形態３における耐タンパ性評価装置の構成と各部の機能及び消費電力の算出方法は、実施の形態２と同じである。【００９２】
ただし、信号変化回数計数部１０は、所定の時間での信号変化回数が奇数回である場合、１回の信号の変化であるとみなし、所定の時間での信号変化回数が偶数回である場合、０回の信号の変化であるとみなして、回路で信号が変化した回数を計数する。【００９３】
ここで、論理シミュレーションにおける、信号変化回数について説明する。
実施の形態３での耐タンパ性評価装置の信号変化回数計数部１０は、論理回路で発生するすべての信号変化を計数し、それを信号変化回数としている。この信号変化回数は、信号の過渡遷移によって論理回路で発生する信号の変化をも含んでいる。つまり、本来的には、１クロックサイクル経過した後に信号が変化しているかいないかだけが、信号変化の結果のはずである。しかし、実際には１クロックサイクル経過する過渡遷移の間にも、信号の変化は発生している。その結果、信号変化回数計数部１０が計数した信号変化回数は、この１クロックサイクル経過している間に生じる信号の変化の回数も含んだ値となってしまっている。【００９４】
論理回路からの情報の漏洩を正しく検出するためには、論理回路の消費電力を正しく算出する必要があり、そのためには、過渡遷移で信号が変化する回数を排除した信号変化回数を計数する必要がある。この原因である過渡遷移での信号の変化は、半導体デバイスの特性や配置配線により生じる信号の遅延を原因として発生するものである。そこで、情報の漏洩を正しく検出するためには、遅延のない理想的な回路で信号変化回数の計数を行い、正しい回路の消費電力を算出する必要がある。【００９５】
実際の遅延は、配置配線やトランジスタの特性その他の要因で変動し、論理シミュレーション時には各瞬間の遅延を実機と全く同等に予測することは不可能である。しかしながら、論理シミュレーションで得られる信号変化回数は、わずかな遅延差に依存して大きく変わることがある。また、この遅延はデバイスに依存するところも大きい。すなわち、設計の上流工程において論理的に耐タンパ性を評価するという目的に対して、配置配線などの不確定要素やデバイス依存性が入り込むことになる。【００９６】
この問題を解決し、可能な限りデバイス依存性や配置配線依存性を排除して、純粋に論理的に耐タンパ性を評価するためには、信号の伝播遅延が無い理想的なデバイスを想定した時の信号変化回数を計数すれば良い。【００９７】
これを実現するための手段として、例えば、論理シミュレーションでの遅延量を０遅延にすることが考えられる。ただし、この方法では、ある程度遅延も考慮に入れた評価を行いたい場合には、遅延量を変えて論理シミュレーションをやり直す必要がある。【００９８】
そこで本実施の形態においては、遅延を考慮する場合と遅延を考慮しない場合の評価をより効率的に実現するために、論理シミュレーションは遅延を考慮して１回だけ行い、遅延を考慮する場合は、論理シミュレーションから得られる信号変化回数をそのまま用い、遅延を考慮しない場合は、１クロックサイクルの間に信号が奇数回の変化した場合には、信号が１回変化したと数え、信号が偶数回変化した信号には、０回変化したと数えることとした。もちろん、両方を合わせて行っても良い。【００９９】
これにより、１回の論理シミュレーションで遅延を考慮した評価と、遅延を考慮しない場合、つまり、遅延の無い理想的なデバイスを想定した場合の評価とを両方行うことが可能となる。【０１００】
これにより信号変化回数を計数した場合の消費電力を算出するプログラムの例を図９に示す。このプログラムでは、信号変化回数計数部１０が計数した信号変化回数を記入したファイルｆｐｒから、消費電力算出部２０が全ての信号の変化回数ＴＣを抽出し、抽出したＴＣの合計ｔｃを求めた後、“ｔｃ％＝２”によりｔｃを２で割ったあまりを求めることにより、信号が変化した回数が偶数回の場合には０回を、奇数回の場合には１回を信号変化回数の合計ｓｕｍとしている。なお、信号変化回数を記入したファイルｆｐｒは、実施の形態１の表１と同じであり、合計ｓｕｍを記入したファイルは表２と同じである。【０１０１】
実施の形態３における耐タンパ性評価装置の動作は、実施の形態２における動作と同じである。ただし、前記したように、信号変化回数計数部１０での信号変化回数の計数方法のみが異なる。【０１０２】
本実施の形態によれば、過渡遷移での信号の変化を排除して信号変化回数を計数することができ、それにより論理回路の消費電力を正しく算出することができる。その結果、半導体デバイスや配置配線に依存しない理想的な状態での論理回路の耐タンパ性を評価することが可能となる。【０１０３】
本実施の形態によれば、一回の論理シミュレーションにより、遅延をなくし過渡遷移の影響を排除した理想的な論理回路の耐タンパ性の評価と、過渡遷移の影響を反映された遅延を含む論理回路での耐タンパ性の評価を行うことが可能となる。【０１０４】
実施の形態４．
実施の形態４では、論理回路の所望の領域のみに対して耐タンパ性の評価を行う実施の形態について説明する。【０１０５】
実施の形態４における耐タンパ性評価装置の構成と各部の機能及び消費電力の算出方法は、実施の形態２と同じである。【０１０６】
ただし、耐タンパ性評価装置は、信号変化回数計数部１０が信号の変化の回数を計数する論理回路として、所望の領域の論理回路を設定する。【０１０７】
実施の形態１〜実施の形態３では明記はしなかったが、消費電力の算出は、対象となる論理回路全体に対して行うことを想定していた。しかし、秘密情報が論理回路のどの部分からどのようにして漏洩するかというメカニズムを解明するためには、対象となる論理回路内の特定の回路部分のみの消費電力を算出できると都合が良い。【０１０８】
これを実現する方法として、信号の変化を抽出する回路部分を論理シミュレータ３０に対して指定する方法がある。しかし、この方法では、別の回路部分の消費電力を算出する場合には、回路部分の指定を変えて、再度、論理シミュレーションを行う必要がある。【０１０９】
そこで、どの回路部分の信号変化回数を計数するかの指定にもとづき、論理シミュレータ３０は、指定した回路部分を含むより大きな回路部分の信号変化情報を出力する。その上で、信号変化回数計数部１０は、その大きな回路部分の中で、回路部分を変えて、各回路部分で信号が変化した回数を計数し、消費電力算出部２０が、その回路部分の消費電力を算出する。【０１１０】
このようにすれば、１回の論理シミュレーションで、複数の回路部分の消費電力を算出することができる。【０１１１】
これにより信号変化回数を計数し、それを用いて消費電力を算出するプログラムの例を図１０に示す。このプログラムでは、指定された大きな論理回路の領域に含まれる回路部分をｉｎｓｔａｎｃｅで読み込み、読み込んだ回路部分について論理シミュレーションを行い、信号変化回数計数部１０が計数した信号変化回数を記入したファイルｆｐｒから、消費電力算出部２０が全ての信号の信号変化回数ＴＣを抽出し、抽出したＴＣの合計ｓｕｍを求めている。【０１１２】
次に、実施の形態４における耐タンパ性評価装置の動作を、図１１に示す耐タンパ性評価装置の処理のフローチャートを用いて説明する。【０１１３】
まず、実施の形態１と同じ、ファイルデータベース４０への対象となる論理回路などの入力と、シミュレーション制御情報生成部５０によるシミュレーション制御情報の生成との準備を行う。【０１１４】
次に、耐タンパ性評価装置は、耐タンパ性の評価の対象となる論理回路内の特定の回路部分を入力する（ステップＳ３００）。以後、ステップＳ３０１からステップＳ３０９は実施の形態３における耐タンパ性評価装置のステップＳ２００からステップＳ２０８と動作と同じであるが、ステップＳ３０３において、論理シミュレータは、ステップＳ３００で入力した論理回路内の特定の回路部分よりも広い範囲の回路部分の論理シミュレーションを行うようにする。【０１１５】
本実施の形態によれば、耐タンパ性評価装置は、論理シミュレータが論理シミュレーションを１回行うだけで、回路部分を変えて消費電力を算出することができる。その結果、１回の論理シミュレーションで、複数の回路部分の耐タンパ性を評価することができるようになり、評価を効率よく実行することが可能となる。【０１１６】
以上、セキュリティデバイスのハードウェア設計の上流工程において、論理シミュレータにより当該ハードウェアの一定時間間隔毎の信号変化数を計数し、それに基いて当該一定時間間隔毎の消費電力を見積もることで得られる消費電力情報を使って電力差分解析を行うことを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１１７】
同様の方法で得られる消費電力情報を使って単純電力解析を行うことを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１１８】
同様の方法で得られる消費電力情報を使ってタイミング解析を行うことを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１１９】
全ての信号の負荷容量はほぼ等しいものと見なし、「消費電力≒信号変化の総数」と近似することで電力見積もり時間を著しく短縮することを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１２０】
１クロックサイクルの間に奇数回変化した信号は１回変化したと数え、偶数回変化した信号は０回変化したと数えることで、遅延の無い理想的なデバイスを想定した場合の電力を求めることで、遅延による過渡遷移の影響を排除し、デバイスや配置配線に依存しない回路の本質的な特徴を評価することを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１２１】
セキュリティデバイス全体ではなく、暗号コアやその内部モジュール毎、または特定の信号群のみの電力を見積もり、それぞれに対して解析を行うことで、回路部分毎の攻撃に対する耐性を評価することを特徴とする耐タンパ性評価装置の実施の形態について説明した。【０１２２】
前記した各実施の形態において、電力算出装置、耐タンパ性評価装置は、コンピュータによって実現できるものである。【０１２３】
図示していないが、電力算出装置、耐タンパ性評価装置は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えている。ＣＰＵは、例えば、バスを介して、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、通信ボード、表示装置、キーボード、マウス、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｄｒｉｖｅ）、磁気ディスク装置、光ディスク装置、プリンタ装置、スキャナ装置等と接続されている。【０１２４】
ＲＡＭは、揮発性メモリの一例である。ＲＯＭ、ＦＤＤ、ＣＤＤ、磁気ディスク装置、光ディスク装置は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。【０１２５】
前記した各実施の形態の電力算出装置、耐タンパ性評価装置が扱う情報は、記憶装置あるいは記憶部により記録され、読み出されるものである。【０１２６】
通信ボードは、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネット、あるいはＩＳＤＮ（Ｉｎｔｅｇｒａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）等に接続されている。【０１２７】
磁気ディスク装置には、オペレーティングシステム（ＯＳ）、ウィンドウシステム、プログラム群、ファイル群が記憶されている。プログラム群は、ＣＰＵ、ＯＳ、ウィンドウシステムにより実行される。【０１２８】
電力算出装置、耐タンパ性評価装置は、一部あるいはすべてをコンピュータで動作可能なプログラムにより構成しても構わない。あるいは、ＲＯＭに記憶されたファームウェアで実現されていても構わない。あるいは、ソフトウェアとハードウェア、あるいは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。【０１２９】
プログラム群には、各実施の形態の説明において「〜部」として説明した処理をＣＰＵに実行させるプログラムが含まれる。これらのプログラムは、例えば、Ｃ言語やＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＳＧＭＬ（Ｓｔａｎｄａｒｄ  Ｇｅｎｅｒａｌｉｚｅｄ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）やＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）などのコンピュータ言語により作成される。【０１３０】
前記したプログラムは、磁気ディスク装置、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）、ＭＤ（Ｍｉｎｉ  Ｄｉｓｋ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のその他の記録媒体に記憶され、ＣＰＵにより読み出され実行される。
【実施例】
【０１３１】
本実施例では、ＤＥＳ暗号回路の耐タンパ性を電力差分解析を用いて評価した例を図１２、図１３、図１４に示す。これらの図はいくつかの中間変数について、それを１ビット毎に分解し、その１ビットが０になるか１になるかによって電力差分を求めた結果を一覧グラフ形式にまとめたものである。１ビット毎に横軸が時間、縦軸が電力差分を示している。グラフに現れる特徴的なスパイクが秘密情報につながる。【０１３２】
また、実機を用いて論理回路の耐タンパ性評価を行った結果と、前記した実施の形態を用いて実機に搭載している回路と同じ論理回路の耐タンパ性評価を行った結果を図１５と図１６に示す。図１５は評価の対象となる論理回路の電力差分が比較的大きい動作モードの場合であり、図１６は評価の対象となる論理回路の電力差分が比較的小さい動作モードの場合である。それぞれ（ａ）は実機を用いて耐タンパ性評価を行った結果、（ｂ）は実施の形態で説明した論理シミュレーションによる耐タンパ性評価を行った結果を示している。解析方法は、いずれも電力差分解析である。図の縦軸（電力差分）及び横軸（時間）の目盛りは相対的なものであり、あまり意味はない。また、前記した動作モードは、外部から論理回路に信号を入力することにより、選択することが可能である。【０１３３】
情報漏洩の有無という観点からは、本実施例で示した耐タンパ性評価を行った結果は、実機を用いて耐タンパ性評価を行った結果と高い精度で一致している。動作モードによる電力差分の違いも論理シミュレーションで予測できることがわかる。
【図面の簡単な説明】
【０１３４】
【図１】実施の形態１における電力算出装置の構成を示す図である。
【図２】実施の形態１における論理シミュレーションのためのテストベンチの例の一部である。
【図３】実施の形態１におけるテストベンチが参照するファイルの例である。
【図４】実施の形態１におけるテストベンチが参照するファイルの例である。
【図５】実施の形態１における電力算出装置の処理を示すフローチャートである。
【図６】実施の形態１における信号変化回数からその総和を求め消費電力を算出するプログラムの例である。
【図７】実施の形態２における耐タンパ性評価装置の構成を示す図である。
【図８】実施の形態２における耐タンパ性評価装置の処理を示すフローチャートである。
【図９】実施の形態３における１クロックサイクルの間に信号が奇数回の変化した場合には信号が１回変化したと数え、信号が偶数回変化した信号には０回変化したと数える処理のプログラムの例である。
【図１０】実施の形態４における大きな回路部分の中で回路部分を変えて、各回路部分で信号が変化した回数を計数し、その回路部分の消費電力を算出する処理のプログラムの例である。
【図１１】実施の形態４における耐タンパ性評価装置の処理を示すフローチャートである。
【図１２】実施例で示したＤＥＳ暗号回路の耐タンパ性を電力差分解析により評価した結果の例である。
【図１３】実施例で示したＤＥＳ暗号回路の耐タンパ性を電力差分解析により評価した結果の例である。
【図１４】実施例で示したＤＥＳ暗号回路の耐タンパ性を電力差分解析により評価した結果の例である。
【図１５】論理回路の電力差分が比較的大きい動作モードの場合における、（ａ）実機に搭載している論理回路の耐タンパ性評価を行った結果を示す図と、（ｂ）実施の形態を用いて同じ論理回路の耐タンパ性評価を行った結果を示す図である。
【図１６】論理回路の電力差分が比較的小さい動作モードの場合における、（ａ）実機に搭載している論理回路の耐タンパ性評価を行った結果を示す図と、（ｂ）実施の形態を用いて同じ論理回路の耐タンパ性評価を行った結果を示す図である。
【符号の説明】
【０１３５】
１０  信号変化回数計数部、１１  信号変化回数記憶部、２０  消費電力算出部、２１  消費電力記憶部、３０  論理シミュレータ、３１  信号変化情報記憶部、４０  ファイルデータベース、５０  シミュレーション制御情報生成部、５１  シミュレーション制御情報記憶部、６０  時系列電力情報生成部、６１  時系列電力情報記憶部、７０  結果表示部、８０  漏洩情報解析部、８１  解析結果記憶部。
【図１】
0004651620.tif 000004
【図２】
0004651620.tif 000005
【図３】
0004651620.tif 000006
【図４】
0004651620.tif 000007
【図５】
0004651620.tif 000008
【図６】
0004651620.tif 000009
【図７】
0004651620.tif 000010
【図８】
0004651620.tif 000011
【図９】
0004651620.tif 000012
【図１０】
0004651620.tif 000013
【図１１】
0004651620.tif 000014
【図１２】
0004651620.tif 000015
【図１３】
0004651620.tif 000016
【図１４】
0004651620.tif 000017
【図１５】
0004651620.tif 000018
【図１６】
0004651620.tif 000019