(57)【特許請求の範囲】
【請求項１】
内部にデータ保持可能な記憶手段と、
装置に与えられる物理条件があらかじめ定められた仕様の範囲を超えたことを検出する仕様外物理条件検出回路と、
上記仕様外物理条件検出回路の出力結果を入力し、装置内部のデータの出力を禁止する制御信号を出力する保護制御回路とを備えた半導体装置であって、
上記仕様外物理条件検出回路は、
上記物理条件が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力する位相同期回路と、
上記位相同期回路の出力を計数する第７のカウンタと、
回路動作に使用されるクロック信号を計数する第８のカウンタと、
上記第７および第８のカウンタの各々の出力を比較する比較回路とからなり、
上記比較回路は、上記第７および第８のカウンタが所定の範囲をはずれると検出信号を出力することを特徴とする半導体装置。
【請求項２】
上記仕様外物理条件検出回路は、入力されるクロック信号の周波数があらかじめ定められた所定の周波数の範囲外であることを検出することを特徴とする請求項１に記載の半導体装置。
【請求項３】
上記位相同期回路は、
基準周波数のクロック信号を出力することを特徴とする請求項２に記載の半導体装置。
【請求項４】
上記仕様外物理条件検出回路は、入力される電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出することを特徴とする請求項１に記載の半導体装置。
【請求項５】
上記位相同期回路は、
電圧値に依存して周波数が変化することを特徴とする請求項４に記載の半導体装置。
【請求項６】
上記仕様外物理条件検出回路は、半導体装置の温度があらかじめ定められた所定の温度の範囲外であることを検出することを特徴とする請求項１に記載の半導体装置。
【請求項７】
上記位相同期回路は、
温度に依存して周波数が変化することを特徴とする請求項６に記載の半導体装置。
【請求項８】
上記仕様外物理条件検出回路は、入力されるクロック信号の周波数、与えられた電源電圧あるいは半導体装置の温度のうちのいずれか２つ以上について値をそれぞれの上記所定の範囲と比較し、少なくとも一つがその所定の範囲外であることを検出することを特徴とする請求項１に記載の半導体装置。
【請求項９】
上記仕様外物理条件検出回路は、上記クロック信号の周波数、電源電圧あるいは温度のうちのいずれか２つ以上について、所定の範囲外であることを、同一の回路で検出することを特徴とする請求項８に記載の半導体装置。
【請求項１０】
上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、電源供給を遮断することを特徴とする請求項１ないし９のいずれかに記載の半導体装置。
【請求項１１】
上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、外部から入力されるクロック信号を遮断することを特徴とする請求項１ないし１０のいずれかに記載の半導体装置。
【請求項１２】
上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、半導体装置を特定の状態に固定することを特徴とする請求項１ないし１１のいずれかに記載の半導体装置。
【請求項１３】
上記仕様外物理条件検出回路の出力により、仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の履歴記憶手段を有することを特徴とする請求項１ないし１２のいずれかに記載の半導体装置。
【請求項１４】
上記履歴記憶手段は、上記半導体装置に内蔵されるデータ保持用の上記記憶手段内に設けられることを特徴とする請求項１３に記載の半導体装置。
【請求項１５】
上記履歴記憶手段は、記憶内容の変更が不可逆であることを特徴とする請求項１３に記載の半導体装置。
【請求項１６】
請求項１ないし１５のいずれかに記載の半導体装置を用いたことを特徴とするＩＣカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内部にデータを保存できるとともに、その内部データの漏洩を防ぐ仕組みを有する半導体装置およびＩＣカードに関するものである。
【０００２】
【従来の技術】
内部にデータを保存できる記憶手段を有する半導体装置は、ＣＰＵ等の暗号化装置を内蔵することが可能であり、同時に暗号鍵自身も内部に保存することができるため、外部から秘密情報を読み出しにくい、セキュリティの高い記憶装置を作ることができる。
【０００３】
このようにセキュリティの高い半導体装置を応用したＩＣカードは、認証や電子マネーへと実用の範囲を広げつつある。
【０００４】
しかし、このような装置から不正にデータを引き出そうとする不正使用（タンパー）の一つとして、半導体装置に外部から、仕様外の高電圧、低電圧、高周波数、低周波数、高温、低温などの、通常に使用する条件からはずれた物理条件を与えることにより回路を誤動作させて、誤動作の結果得られる出力を蓄積し、解析することによって、暗号化された情報を推測するという暗号解析技術がある。内部に認証データなどの秘匿性の高い極めて重要なデータを保存するためには、この暗号解析技術から内部のデータを守ることが大きな問題となる。
【０００５】
この問題に対して、特開平１０−１５４９７６号公報では、暗号装置の誤動作を検出する方法が提案されている。すなわち、暗号化に伴うデータ変換処理と同一の処理を施し、得られた結果が互いに一致するかを比較するか、あるいは、データ変換処理の逆変換処理を施し、変換前のデータと一致するかを比較するなどの方法によって、誤動作が発生したか否かを検出し、誤動作が検出されれば、データ変換処理結果に規制を施して、内部情報が反映されたデータを外部に出力しないようにすることにより、誤動作結果による暗号解析技術から内部データを保護するというものである。
【０００６】
【発明が解決しようとする課題】
従来、暗号解読からの保護技術では、通信中のデータ盗聴を防ぐことを主眼においており、データそのものは保護するが、データの記憶装置そのものは保護の対象とはなっていなかった。
【０００７】
つまり、記憶装置そのものを誤動作させて、誤動作の結果得られる出力を蓄積し、解析することによって機密情報を推測する暗号解析技術に対して無防備であった。
【０００８】
このような暗号解析技術への対抗技術である上記特開平１０−１５４９７６号公報に記載の技術では、誤動作検出のためにデータ変換処理を複数回実行したり、複数回行う処理時間の短縮のためにパイプライン的並列動作を行う。しかしながら、処理を複数回行うと処理時間が長くなるし、並列動作を行うには回路規模を増大させなければならないという欠点がある。
【０００９】
本発明は、上記問題点に鑑みなされたものであり、その目的は、高いセキュリティを確保しながら、検出回路を簡略化することができる半導体装置およびＩＣカードを提供することにある。また、簡便な回路で、暗号解読だけでなく、仕様外の高電圧、低電圧、高周波数、低周波数、高温、低温などの、通常に使用する条件からはずれた物理条件を与えて回路を誤動作させることによる内部データの漏洩、改竄を防ぐことができる半導体装置およびＩＣカードを提供することにある。
【００１０】
【課題を解決するための手段】
上記の課題を解決するため、本発明の半導体装置は、内部にデータ保持可能な記憶手段と、装置に与えられる物理条件があらかじめ定められた仕様の範囲を超えたことを検出する仕様外物理条件検出回路と、上記仕様外物理条件検出回路の出力結果を入力し、装置内部のデータの出力を禁止する制御信号を出力する保護制御回路とを備えた半導体装置であって、上記仕様外物理条件検出回路は、上記物理条件が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力する位相同期回路と、上記位相同期回路の出力を計数する第７のカウンタと、回路動作に使用されるクロック信号を計数する第８のカウンタと、上記第７および第８のカウンタの各々の出力を比較する比較回路とからなり、上記比較回路は、上記第７および第８のカウンタが所定の範囲をはずれると検出信号を出力することを特徴としている。
【００１１】
上記の構成のように、ＰＬＬを用いることにより、仕様外の周波数、電圧、温度の三つの条件検出を一つの回路で実現することができる。それゆえ、高いセキュリティを確保しながら、検出回路を簡略化することができる半導体装置およびＩＣカードを提供することができる。また、半導体装置に与えられる物理条件があらかじめ定められた仕様の範囲を超えたことを検出すると、上記半導体装置内部のデータの出力を禁止する制御信号を出力する。それゆえ、内部データの漏洩、改竄を目的とした、仕様外の条件（たとえば、高電圧、低電圧、高周波数、低周波数、高温、低温）を与え、内部回路を誤動作させて、誤動作の結果得られる出力を蓄積し、解析することによって、暗号化された情報を推測するという暗号解析技術を用いた不正使用に対して、回路動作を止めることにより、内部データの漏洩や改竄を防ぐことができる。
【００１２】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、入力されるクロック信号の周波数があらかじめ定められた所定の周波数の範囲外であることを検出することを特徴としている。
【００１３】
上記の構成により、入力されるクロック信号の周波数があらかじめ定められた所定の周波数の範囲（仕様範囲）外であることが検出される。したがって、仕様外の周波数で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００１４】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、基準周波数のクロック信号を出力する第１の発振回路と、上記第１の発振回路の出力を計数する第１のカウンタと、回路動作に使用されるクロック信号を計数する第２のカウンタと、上記第１および第２のカウンタの各々の出力を比較する第１の比較回路からなり、上記第１の比較回路は、上記第１および第２のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力することを特徴としている。
【００１５】
上記の構成により、仕様で定められた周波数の基準クロック（リファレンスクロック）を発生させる発振回路を内部に有している。さらに、外部から入力されるクロック信号（もしくは、電磁波により非接触で電力および信号の供給を受ける場合、ＲＦ（Radio Frequency ）回路などから生成されるクロック信号）とこの基準クロックとの周波数比較によって、入力されたクロック信号が仕様内か仕様外かを判別する。したがって、仕様外の周波数で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００１６】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、入力される電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出することを特徴としている。
【００１７】
上記の構成により、入力される電源電圧があらかじめ定められた所定の電圧の範囲（仕様範囲）外であることが検出される。したがって、仕様外の電源電圧で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００１８】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、電圧値に依存して周波数が変化する第２の発振回路と、上記第２の発振回路の出力を計数する第３のカウンタと、回路動作に使用されるクロック信号を計数する第４のカウンタと、上記第３および第４のカウンタの各々の出力を比較する第２の比較回路からなり、上記第２の比較回路は、上記第３および第４のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力することを特徴としている。
【００１９】
上記の構成により、仕様で定められた電圧のときに仕様で定められた周波数の基準クロックを発生させる電圧検出用発振回路を内部に有している。この発振回路は、印加される電圧によって、発振する周波数が変化する。この発振回路は、ＶＣＯ（Voltage Controlled Oscillator 、電圧制御発振器）などの簡便な回路で実現できる。そして、仕様に定められた所定の周波数の、外部から入力されるクロック信号（もしくは、電磁波により非接触で電力および信号の供給を受ける場合、ＲＦ（Radio Frequency ）回路などから生成されるクロック信号）と電圧検出用基準クロックとの周波数比較によって、回路に印加されている電圧が仕様内か仕様外かを判別する。したがって、仕様外の電源電圧で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００２０】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、半導体装置の温度があらかじめ定められた所定の温度の範囲外であることを検出することを特徴としている。
【００２１】
上記の構成により、半導体装置の温度があらかじめ定められた所定の温度の範囲（仕様範囲）外であることが検出される。したがって、仕様外の温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００２２】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、温度に依存して周波数が変化する第３の発振回路と、上記第３の発振回路の出力を計数する第５のカウンタと、回路動作に使用されるクロック信号を計数する第６のカウンタと、上記第５および第６のカウンタの各々の出力を比較する第３の比較回路からなり、上記第３の比較回路は、上記第５および第６のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力することを特徴としている。
【００２３】
上記の構成により、仕様で定められた温度のときに仕様で定められた周波数の基準クロックを発生させる温度検出用発振回路を内部に有している。この発振回路は、半導体装置の周囲温度によって、発振する周波数が変化する。この発振回路は、ＶＣＯ（Voltage Controlled Oscillator 、電圧制御発振器）などの簡便な回路で実現できる。そして、仕様に定められた所定の周波数の、外部から入力されるクロック信号（もしくは、電磁波により非接触で電力および信号の供給を受ける場合、ＲＦ（Radio Frequency ）回路などから生成されるクロック信号）と温度検出用基準クロックとの周波数比較によって、半導体装置の周囲の温度が仕様内か仕様外かを判別する。したがって、仕様外の温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００２４】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、入力されるクロック信号の周波数、与えられた電源電圧あるいは自身の温度のうちのいずれか２つ以上について値をそれぞれの上記所定の範囲と比較し、少なくとも一つがその所定の範囲外であることを検出することを特徴としている。
【００２５】
上記の構成により、入力されるクロック信号の周波数、与えられた電源電圧あるいは半導体装置自身の温度のうちのいずれか２つ以上について値がそれぞれの所定の範囲（仕様範囲）と比較され、少なくとも一つがその所定の範囲外であることを検出される。したがって、仕様外の周波数、電源電圧または温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができる。
【００２６】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、上記クロック信号の周波数、電源電圧あるいは温度のうちのいずれか２つ以上について、所定の範囲外であることを、同一の回路で検出することを特徴としている。
【００２７】
上記の構成により、クロック信号の周波数、電源電圧あるいは温度の検出手段のうち、いずれか２つ以上の検出手段は、同一の回路で兼用される。したがって、電圧検出、周波数検出、温度検出のうち、２つ以上の機能を一つの回路で実現することによって、不正検出のための回路の規模を小さくすることができる。それゆえ、上記の構成による効果に加えて、必要最小限の回路で不正を検出することができる。
【００２８】
また、本発明の半導体装置は、上記の構成に加えて、上記の仕様外物理条件検出回路は、電圧および温度が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力する位相同期回路と、上記位相同期回路の出力を計数する第７のカウンタと、回路動作に使用されるクロック信号を計数する第８のカウンタと、上記第７および第８のカウンタの各々の出力を比較する第４の比較回路からなり、上記第４の比較回路は、上記第７および第８のカウンタの出力間の位相差が所定の値以上になると検出信号を出力することを特徴としている。
【００２９】
上記の構成により、仕様外の物理条件の検出回路として位相同期回路（ＰＬＬ）を有する。ＰＬＬは外部からのクロック信号入力に対してロックする機能がある。ＰＬＬがロック可能な範囲は、電圧および温度に対して依存性がある。それゆえ、上記の構成による効果に加えて、仕様外の電圧および温度を精度よく検出することができる。
【００３０】
さらに、一定の周波数にしかロックしない性質を利用して、仕様外の周波数をも検出できる。すなわち、ＰＬＬを用いることにより、仕様外の周波数、電圧、温度の三つの条件検出を一つの回路で実現することができる。それゆえ、上記の構成による効果に加えて、高いセキュリティを確保しながら、検出回路を簡略化することができる。
【００３１】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、電源供給を遮断することを特徴としている。
【００３２】
上記の構成により、保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、電源供給を遮断する。したがって、仕様外の物理条件を検出したときに、電源を遮断することにより回路の動作を止める。それゆえ、上記の構成による効果に加えて、電源を止めることにより、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができる。
【００３３】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、外部から入力されるクロック信号を遮断することを特徴としている。
【００３４】
上記の構成により、保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、外部から入力されるクロック信号を遮断する。したがって、仕様外の物理条件を検出したときに、クロックを遮断することにより回路の動作を止めることができる。それゆえ、上記の構成による効果に加えて、半導体回路はクロックによって動作が制御されているため、クロックの遮断で、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができる。
【００３５】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、半導体装置を特定の状態に固定することを特徴としている。
【００３６】
上記の構成により、保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、リセット状態等の半導体装置を特定の状態に固定する。したがって、仕様外の物理条件を検出したときに、リセット状態等ある一定の状態に内部を固定することができる。それゆえ、上記の構成による効果に加えて、内部状態を固定して、動かなくしてしまうことにより、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができる。
【００３７】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路の出力により、仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の履歴記憶手段を有することを特徴としている。
【００３８】
上記特開平１０−１５４９７６号公報に記載の技術では、もし仮に不正な方法によりデータが漏洩したとしても、それを知る手がかりがなく、データ漏洩に対する対策を講じることができない。
【００３９】
これに対し、上記本発明の構成によれば、誤動作による内部データの漏洩や改竄を防ぐのに加えて、さらに、内部データの解析が行われると、その解析行為の履歴を残すことができる。それゆえ、上記の構成による効果に加えて、この履歴を参照することにより、保護すべきデータが解析されて情報が漏洩した可能性があると見なし、たとえば暗証データなどの変更可能な秘匿情報を変更する等の対応が可能となる。
【００４０】
また、本発明の半導体装置は、上記の構成に加えて、上記履歴記憶手段は、上記半導体装置に内蔵されるデータ保持用の上記記憶手段内に設けられることを特徴としている。
【００４１】
上記の構成により、履歴記憶手段は、上記半導体装置に内蔵されるデータ保持用の上記記憶手段内に設けられる。したがって、保護すべきデータが解析されたことを示す履歴情報が、データ保持用の記憶手段内に設けられるため、仮に解析による不正な手段によりデータが漏洩してそのデータを基に模造品を作成したとしても、履歴情報も漏洩するため、不正データであることが判明する。それゆえ、上記の構成による効果に加えて、模造品による不正使用の防止手段とすることができ、さらに高度なセキュリティを実現することができる。
【００４２】
また、本発明の半導体装置は、上記の構成に加えて、上記履歴記憶手段は、記憶内容の変更が不可逆であることを特徴としている。
【００４３】
上記の構成により、履歴記憶手段は、記憶内容の変更が不可逆である。上記履歴記憶手段としては、例えば、溶融ヒューズの切断、絶縁膜への物理的ダメージ等を採用できる。したがって、不可逆な履歴記憶手段を用いることにより、いったん履歴が記録されればその情報を抹消することが不可能になる。そのため、その行為を行ったという痕跡を残すことなくデータ解析を行うことが不可能となる。それゆえ、上記の構成による効果に加えて、不正なデータ解析行為に対する抑止効果を得られるとともに、確実にその行為の発見が可能となる。
【００４４】
また、本発明のＩＣカードは、上記構成の半導体装置を用いたことを特徴としている。
【００４５】
上記の構成により、仕様外の物理条件の検出および、検出時に内部データを保護する機能を組み込んだＩＣカードができる。したがって、仕様外の高電圧、低電圧、高周波数、低周波数、高温、低温等の通常に使用する条件からはずれた物理条件を与えることにより回路を誤動作させて誤動作の結果得られる出力を蓄積し、解析することによって秘匿データの解析技術に対して高い耐タンパー性を有している。それゆえ、仮に不正な解析手段により秘匿データが漏洩したとしても、その履歴を残すことが可能なため、不正な使用を防止することも可能となり、きわめてセキュリティの高いＩＣカードを提供することができる。
【００４６】
【発明の実施の形態】
本発明の実施の一形態について図１ないし図１７に基づいて説明すれば、以下の通りである。図１に本実施の形態にかかる半導体装置の構成例を示す。半導体装置１００は、内部回路１１０、仕様外物理条件検出回路１２０、保護制御回路１３０、外部通信用端子群１４０、その他の端子群１５０からなる。好ましくは、内部回路１１０は、通信回路１１２、ＣＰＵ（中央制御部）１１４、暗号化回路１１６、メモリ１１８から構成される。
【００４７】
半導体装置１００は、外部通信用端子群１４０を等して外部機器とデータのやりとりを行う。盗聴を防ぐため、このデータは暗号化されていることが好ましく、通信回路１１２によって受信した暗号化されたデータは暗号化回路１１６によって復号化される。復号化されたデータに沿ってＣＰＵ１１４は処理を実行する。メモリ１１８は、ＣＰＵ１１４が実行するプログラムを置いてもよいし、不揮発性メモリなどを利用して暗号鍵情報や機密データの保存領域として使用してもよい。仕様外物理条件検出回路１２０は、電源電圧、クロック入力の周波数、周囲温度などの物理条件を監視しており、これらの物理条件が仕様に定められている範囲からはずれた場合には保護制御回路１３０へ信号を送る。保護制御回路１３０は、仕様外物理条件検出回路１２０から物理条件仕様外の信号を受けると、正常な動作が保証できないと判断し、内部回路１１０に対して制御信号Ｌ１０を送る。制御信号Ｌ１０は、メモリ１１８のデータを保護したり、内部回路１１０の動作を止めたりする制御に用いられる。
【００４８】
図２に示すように、仕様外物理条件検出回路１２０は、周波数検出回路２０２、電圧検出回路２０４、温度検出回路２０６のうち一つ以上を有している。周波数検出回路２０２は、入力クロックの周波数が仕様に定められている範囲であるかどうかを検出する。電圧検出回路２０４は、入力される電圧を監視し、仕様に定められている範囲であるかどうかを検出する。温度検出回路２０６は、この半導体装置の周囲温度を監視し、仕様に定められている範囲であるかどうかを検出する。
【００４９】
図３に、周波数検出回路２０２の回路構成例を示す。周波数検出用比較周波数発生回路（第１の発振回路）３０８は、この半導体装置の周波数仕様値に設計されている。外部からのクロック入力とこの周波数検出用比較周波数発生回路３０８が発振するクロックとを、カウンタＡ（第２のカウンタ）３０２、カウンタＢ（第１のカウンタ）３０４でそれぞれ計数し、このカウンタの値を比較回路（第１の比較回路）３０６で評価する。なお、この比較回路は、この図３や後述の図４、図５、図６、図１６中の比較回路も含めて、公知の回路にて構成可能である。外部入力されるクロックが仕様と同じ周波数であれば、カウンタＡの値とカウンタＢの値との差は一定である。多少のジッタがあったとしても平均的にはカウンタＡ、カウンタＢの値の差は一定となる。
【００５０】
比較回路３０６では、この計数値の差の変動が大きく変わるときに仕様外の周波数が入力されたとして検出信号を発する。具体的には、カウンタＡ、Ｂを４ビットとする。カウンタＡとカウンタＢの初期値はその差の絶対値がたとえば８となるように設定する。正常動作中は、多少のジッタがあったとしても、カウンタ値の差の絶対値は８に収束する。ところが、周波数が大きく違うとその差は一定の値に収束せず、ランダムな値をとるようになる。ついには差が４以下になるときがある。このときを、仕様外の周波数が入力されたと検出する。
【００５１】
なお、ここでは上記のように初期値の差の絶対値を８とし、それが４以下になるときを検出しているが、これに限定されず、所定の範囲（仕様範囲）をはずれたか否かを検出すればよい。例えば、初期値の差の絶対値を０とし、それが３以上になるときを検出する、などのようにしてもよい。このことは、後述の電圧に基づく検出や温度に基づく検出についても同様である。
【００５２】
図４に、電圧検出回路２０４の回路構成例を示す。電圧検出用比較周波数発生回路（第２の発振回路）４０８は電圧特性を有しており、仕様範囲内の電圧で仕様に定められた外部入力されるクロックと同じ周波数で発振するように設計されている。外部からのクロック入力とこの電圧検出用比較周波数発生回路４０８が発振するクロックとを、カウンタＡ（第４のカウンタ）４０２、カウンタＢ（第３のカウンタ）４０４でそれぞれ計数し、このカウンタの値を比較回路（第２の比較回路）４０６で評価する。もし、クロック信号として仕様外の電圧が印加された場合は、電圧検出用比較周波数発生回路４０８の電圧特性により、外部から入力されるクロックとの位相に差が生じる。その結果、カウンタの出力の計数値の差が所定の範囲（仕様範囲）をはずれる。
【００５３】
比較回路４０６では、この計数値の差の変動が大きく変わるときに仕様外の電圧が印加されたとして検出信号を発する。具体的には、カウンタＡ、Ｂを４ビットとする。カウンタＡとカウンタＢの初期値はその差の絶対値がたとえば８となるように設定する。正常動作中は、多少のジッタがあったとしても、カウンタ値の差の絶対値は８に収束する。ところが、周波数が大きく違うとその差は一定の値に収束せず、ランダムな値をとるようになる。ついには差が４以下になるときがある。このときを、仕様外の電圧が印加されたと検出する。
【００５４】
図５に、温度検出回路２０６の回路構成例を示す。温度検出用比較周波数発生回路（第３の発振回路）５０８は温度特性を有しており、仕様範囲内の温度で仕様に定められた外部入力されるクロックと同じ周波数で発振するように設計されている。外部からのクロック入力とこの温度検出用比較周波数発生回路５０８が発振するクロックとを、カウンタＡ（第６のカウンタ）５０２、カウンタＢ（第５のカウンタ）５０４でそれぞれ計数し、このカウンタの値を比較回路（第３の比較回路）５０６で評価する。もし、仕様外の温度で動作させた場合は、温度検出用比較周波数発生回路５０８の温度特性により、外部から入力されるクロックとの位相に差が生じる。その結果、カウンタの出力の計数値の差が所定の範囲（仕様範囲）をはずれる。
【００５５】
比較回路５０６では、この計数値の差の変動が大きく変わるときに仕様外の温度であるとして検出信号を発する。具体的には、カウンタＡ、Ｂを４ビットとする。カウンタＡとカウンタＢの初期値はその差の絶対値がたとえば８となるように設定する。正常動作中は、多少のジッタがあったとしても、カウンタ値の差の絶対値は８に収束する。ところが、周波数が大きく違うとその差は一定の値に収束せず、ランダムな値をとるようになる。ついには差が４以下になるときがある。このときを、仕様外の温度であると検出する。
【００５６】
また、図６に、周波数検出、電圧検出、温度検出の三つを一つの回路で行える複合型の仕様外物理条件検出回路の回路構成例を示す。物理条件検出用周波数発生回路６０８が発生させる周波数は、電圧特性および温度特性を有しており、仕様範囲内の電圧、温度で仕様に定められた外部入力されるクロックと同じ周波数で発振するように設計されている。外部からのクロック入力とこの物理条件検出用周波数発生回路６０８が発振するクロックとを、カウンタＡ（第８のカウンタ）６０２、カウンタＢ（第７のカウンタ）６０４でそれぞれ計数し、このカウンタの値を比較回路（第４の比較回路）６０６で評価する。もし、仕様外の周波数、電源電圧または温度で動作させた場合は、物理条件検出用周波数発生回路６０８が発生させる周波数の電圧特性および温度特性により、外部から入力されるクロックとの位相に差が生じる。その結果、カウンタの出力の計数値の差が所定の範囲（仕様範囲）をはずれる。
【００５７】
比較回路６０６では、この計数値の差の変動が大きく変わるときに仕様外の物理条件であるとして検出信号を発する。具体的には、カウンタＡ、Ｂを４ビットとする。カウンタＡとカウンタＢの初期値はその差の絶対値がたとえば８となるように設定する。正常動作中は、多少のジッタがあったとしても、カウンタ値の差の絶対値は８に収束する。ところが、周波数が大きく違うとその差は一定の値に収束せず、ランダムな値をとるようになる。ついには差が４以下になるときがある。このときを、仕様外の物理条件であると検出する。
【００５８】
ここで、図７に、物理条件検出用周波数発生回路６０８の望ましい電圧特性を示す。仕様範囲内の電圧では一定の周期で発振し、仕様外の電圧では電圧に依存した周期で発振する。例えば、同図に示すように、電圧Ｖmin からＶmax まで（仕様範囲）は、周波数は一定値ｆosc を保っている。
【００５９】
また、図８に、物理条件検出用周波数発生回路６０８の望ましい温度特性を示す。仕様範囲内の温度では一定の周期で発振し、仕様外の温度では温度に依存した周期で発振する。例えば、同図に示すように、温度Ｔmin からＴmax まで（仕様範囲）は、周波数は一定値ｆosc を保っている。
【００６０】
図９に、このような特性を有する物理条件検出用周波数発生回路６０８の内部回路例を示す。すなわち、位相比較器７０２、ＬＰＦ（ローパスフィルタ）７０４、分周器７０６、ＶＣＯ（電圧制御型発振回路）７０８で構成される。ＶＣＯ７０８は、電圧特性および温度特性を有しており、電圧、温度が仕様範囲内であれば、仕様に定められた周波数のクロックが発振する。同図に示す物理条件検出用周波数発生回路６０８の回路構成は、一般に、ＰＬＬ（Phase Locked Loop 、位相同期回路）として知られているものである。外部からのクロックをＰＬＬでロックして比較用のクロックを生成する。
【００６１】
図１０に、ＰＬＬがロック可能な範囲を示す。入力クロックをロック可能な範囲に設計すれば、仕様外の周波数が入力された場合にはロックがはずれて、仕様外の入力周波数を精度よく検出できる。また、入力電圧が変化した場合にもＰＬＬのロック可能な範囲がずれるため、仕様外の範囲までずれた電圧が印加されたことを精度よく検出することができる。温度が変化した場合も同様にロック可能な範囲が変動するため、仕様外まで温度がずれた場合には仕様範囲外の温度であることを精度よく検出することができる。
【００６２】
図９に示すような同一すなわちただ一つの物理条件検出用周波数発生回路６０８を設けるだけで、仕様外物理条件検出回路１２０は、入力されるクロック信号の周波数、与えられた電源電圧、および半導体装置の温度のいずれについても、所定の仕様範囲外か否かを検出することができる。
【００６３】
次に、図１１に、保護制御回路１３０の回路例の一つを示す。仕様外物理条件検出回路１２０から出力される検出信号により電源を制御することにより、もし仕様外であることを検出した場合には内部回路１１０の電源を遮断する。電源を遮断することにより、誤動作や出力信号観察などのタンパーに対する対策を行える。
【００６４】
図１２に、保護制御回路１３０の他の回路例を示す。仕様外物理条件検出回路１２０から出力される検出信号によりクロックを制御することにより、もし仕様外であることを検出した場合には内部回路１１０の動作クロックを止める。クロックを停止することにより、誤動作や出力信号観察などのタンパーに対する対策を行える。
【００６５】
図１３に、保護制御回路１３０の他の回路例を示す。仕様外物理条件検出回路１２０から出力される検出信号により内部の動作モードを固定させる（例えばリセット状態にする）ことにより、もし仕様外であることを検出した場合には内部回路１１０の動作を止める。リセット状態など動作を止めた状態に固定することにより、誤動作や出力信号観察などのタンパーに対する対策を行える。
【００６６】
以上、仕様の範囲外の物理条件を検出する手段と、それが検出された場合の解析に対する防止手段を詳述したが、前述のような物理条件が与えられたという履歴を残す不揮発性の記憶手段（履歴記憶手段）をさらに設けることにより、保護すべきデータが漏洩した可能性を知ることが可能となり、暗証データ等変更可能な秘匿情報を変更する等の、データ漏洩に対する対策を講ずることが可能となる。
【００６７】
図１４に、保護制御回路１３０の履歴機能を実現する回路例を示す。仕様外物理条件検出回路１２０から出力される検出信号を不揮発性記憶素子（履歴記憶手段）に記録することにより、仕様外物理条件が与えられたという履歴を残すことができる。この不揮発性記憶素子の例としてフラッシュメモリを使用した場合、通常は何も書き込まれていないのでデータは１である。仕様外物理条件を検出した場合は０を書き込む。この記憶素子の値を外部通信用端子群１４０に出すことにより、不正使用された可能性を容易に知ることができる。この記憶素子は、ＣＰＵ１１４からの消去や書き込みのための手段を持たないようにすることができる。そのようにすれば、ＣＰＵ１１４が誤動作したとしても履歴を破壊されることはない。
【００６８】
図１４の例では、仕様外物理条件が与えられたことを示す履歴情報を保護制御回路１３０に設けたが、内蔵のメモリ１１８にこの履歴情報の格納領域（履歴記憶手段）を設けてもよい。この場合、たとえば仕様外物理条件検出回路１２０から出力される検出信号を受けて保護制御回路１３０はメモリ１１８の通常のデータ保持に使用されない領域に対して特定のビットパターンのデータを書き込む制御信号Ｌ１０を生成するようにすればよい。これにより、仮に不正な手段によりデータが漏洩したとしても、その履歴情報も同時に漏洩する。そのため、不正に取得したデータを用いて模造品を作成して使用すると、不正使用であることが判別可能となる。その結果、不正な使用に対する防止手段とすることができる。
【００６９】
また、図１４では、履歴を残す不揮発性記憶素子としてフラッシュメモリを用いて説明したが、この不揮発性記憶素子として、いったん情報が記録されるとその情報の抹消が不可能となる不可逆な記憶手段（履歴記憶手段）を用いると、より確実にデータ漏洩の可能性を知ることが可能となり、また、不正なデータ解析行為に対する抑止力にもなる。たとえば、図１４の不揮発性記憶素子として、高抵抗値のバスを生じる溶融ヒューズや、高電界の印加で絶縁膜が破壊され、直流電流パスを生じるキャパシタを半導体装置に設け、各々の抵抗値や電流値の変化を検出したり、あるいは、剥離した半導体チップを目視検査することなどが考えられる。
【００７０】
なお、ここで示したフラッシュメモリや溶融ヒューズ、キャパシタ等はあくまでも例であり、上述の目的に沿うものであれば、これらの手段や方法に限定されるものではない。また、検出信号を分岐させて、図１１ないし図１４の構成をすべて設けるように構成することもできる。
【００７１】
図１５に、周波数検出回路２０２の別の構成例を示す。クロック信号がバンドパスフィルタ８０４に入力され、次いで、整流ダイオード８０６を介して、「常にハイ」となる検出信号として出力される。この出力信号をインバータ（図示せず）に通せば「常にロー」の信号を出力できる。したがって、バンドパスフィルタ８０４が通過させる周波数域を、仕様範囲内の周波数に調整しておけば、仕様範囲内の周波数のクロック信号が入力されている間は「常にロー」の検出信号が出力される一方、仕様範囲外の周波数のクロック信号が入力されると、バンドパスフィルタ８０４を通過しないため、「常にハイ」の検出信号が出力されることになる。
【００７２】
図１６に、仕様外物理条件検出回路１２０の別の構成例を示す。同図に示す仕様外物理条件検出回路１２０は、電圧検出回路２０４または温度検出回路２０６の機能を持っている。カウンタＡ９０２、カウンタＢ９０４、比較回路９０６は、図４（カウンタＡ４０２、カウンタＢ４０４、比較回路４０６）や図５（カウンタＡ５０２、カウンタＢ５０４、比較回路５０６）と同様のものである。電圧／温度検出用比較周波数発生回路９０８は、同図に示すように奇数個（ここでは１個）のインバータ９０８ａを設け、その出力にＬＰＦ（ローパスフィルタ）９０８ｂを接続した構成とすることができる。これにより電圧／温度検出用の比較周波数を発生する。カウンタＡ９０２では、外部からのクロック入力を計数し、カウンタＢ９０４では、電圧／温度検出用比較周波数発生回路９０８が発生する信号を計数する。
【００７３】
電圧／温度検出用比較周波数発生回路９０８を構成しているトランジスタ、抵抗、コンデンサ等の素子の特性を適宜調整することによって、例えば、半導体装置の仕様範囲内となる電源電圧に対してフラットな特性、すなわち、仕様範囲内の電源電圧値に対しては電圧／温度検出用比較周波数発生回路９０８の発振する周波数が所定の一定値となるように設計することができる。このようにしておいた場合に、図４の場合と同様に、もし、仕様外の電源電圧が印加された場合は、電圧／温度検出用比較周波数発生回路９０８の発振する周波数が上記所定の一定値からはずれるので、外部から入力されるクロックと電圧／温度検出用比較周波数発生回路９０８の出力信号との位相に差が生じる。比較回路９０６では、この差の変動が大きく変わるときに仕様外の電源電圧が印加されたとして検出信号を発する。
【００７４】
同様に、電圧／温度検出用比較周波数発生回路９０８を構成しているトランジスタ、抵抗、コンデンサ等の素子の特性を適宜調整することによって、例えば、半導体装置の仕様範囲内となる周囲温度に対してフラットな特性、すなわち、仕様範囲内の周囲温度値に対しては電圧／温度検出用比較周波数発生回路９０８の発振する周波数が所定の一定値となるように設計することができる。このようにしておいた場合に、図４の場合と同様に、もし、仕様外の周囲温度となった場合は、電圧／温度検出用比較周波数発生回路９０８の発振する周波数が上記所定の一定値からはずれるので、外部から入力されるクロックと電圧／温度検出用比較周波数発生回路９０８の出力信号との位相に差が生じる。比較回路９０６では、この差の変動が大きく変わるときに仕様外の周囲温度になったとして検出信号を発する。
【００７５】
さらに、電圧／温度検出用比較周波数発生回路９０８を構成しているトランジスタ、抵抗、コンデンサ等の素子の特性を適宜調整することによって、例えば、半導体装置の仕様範囲内となる電源電圧に対してフラットな特性、すなわち、仕様範囲内の電源電圧値に対しては電圧／温度検出用比較周波数発生回路９０８の発振する周波数が所定の一定値となるようにするとともに、半導体装置の仕様範囲内となる周囲温度に対してフラットな特性、すなわち、仕様範囲内の周囲温度値に対しては電圧／温度検出用比較周波数発生回路９０８の発振する周波数が所定の一定値となるように設計することができる。このようにすれば、電源電圧および半導体装置の温度について、所定の仕様範囲外であることを、同一の仕様外物理条件検出回路１２０で検出することができる。
【００７６】
図１７に、電圧検出回路２０４の別の構成例を示す。コンパレータ８５０に電源電圧が入力され、これと基準電圧との比較結果が検出信号として出力される。もし、仕様外の電源電圧が印加された場合は、その電源電圧が基準電圧からはずれるので、その旨を示す検出信号を出力するものである。例えば、基準電圧を仕様範囲内の電源電圧値の上限値にしておき、通常は検出信号は例えばローとなるようにしておく。入力される電源電圧が仕様範囲を超えて増加すると、通常とは異なる比較結果となる。このときに、仕様外の電源電圧が印加されたとして、その旨を示す検出信号（この例ではハイ）を発する。
【００７７】
図１５ないし図１７のような回路構成は、仕様外物理条件検出回路１２０の中にどれか一つを選んで設けることもできるし、いずれか二つ以上の構成を設けることもできる。一つの半導体装置内にこれらいずれか二つ以上の構成を設ければ、仕様外物理条件検出回路１２０は、設けた構成に応じて、入力されるクロック信号の周波数、与えられた電源電圧あるいは半導体装置の温度のうちのいずれか二つ以上について、所定の仕様範囲外か否かを検出することができる。
【００７８】
本実施の形態の構成によれば、内部にデータを保存できる記憶手段を有している構成において、内部のデータの漏洩や改竄を防ぐ仕組みを実現できる。すなわち、このように、本実施形態においては、内部に電圧検出回路、周波数検出回路、温度検出回路を備えて、仕様外の物理条件が与えられたことを検出する。仕様外の物理条件が与えられたときは、正常動作が保証できない、または不正使用と判断し、回路の動作を停止させる。これにより、外部から仕様外の物理条件を与えて回路を誤動作させてその出力を観察することにより内部の情報を推測する不正アクセスに対して、内部の情報を推測されない半導体装置を提供することができる。
【００７９】
さらに、以上に詳述した半導体装置をＩＣカードに適用することにより、意図的な誤動作の結果解析による内部データの漏洩を阻止することが可能となり、もし仮に不正な手段によりデータが漏洩したとしても、不正に取得されたデータであることが判別可能になるため、個人データや認証データ等の高い秘匿性を要求されるデータを格納する広い用途に対応できるＩＣカードを実現することが可能となる。
【００８０】
なお、本発明に係る半導体装置は、内部にデータ保持可能な記憶手段を有する半導体装置において、上記半導体装置に与えられる物理条件があらかじめ定められた仕様の範囲を超えたことを検出する物理条件検出回路と、上記物理条件検出回路の出力結果を入力し、上記半導体装置の動作を制限あるいは禁止する制御信号を出力する保護制御回路を備えたように構成してもよい。
【００８１】
また、本発明に係る半導体装置は、上記構成において、上記物理条件検出回路は、入力されるクロック信号の周波数があらかじめ定められた所定の周波数の範囲外であることを検出するように構成してもよい。
【００８２】
また、本発明に係る半導体装置は、上記構成において、上記物理条件検出回路は、入力される電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出するように構成してもよい。
【００８３】
また、本発明に係る半導体装置は、上記構成において、上記物理条件検出回路は、自身の温度があらかじめ定められた所定の温度の範囲外であることを検出するように構成してもよい。
【００８４】
また、本発明に係る半導体装置は、上記構成において、上記物理条件検出回路は、入力されるクロック信号の周波数、与えられた電源電圧あるいは自身の温度のうち、いずれか２つ以上の条件があらかじめ定められた所定の範囲外であることを検出するように構成してもよい。
【００８５】
また、本発明に係る半導体装置は、上記の構成において、上記クロック信号の周波数、電源電圧あるいは温度の検出手段のうち、いずれか２つ以上の検出手段を有する上記物理条件検出回路は、同一の回路で検出するように構成してもよい。
【００８６】
また、本発明に係る半導体装置は、上記構成において、上記クロック信号の周波数があらかじめ定められた所定の周波数の範囲外であることを検出する手段は、基準周波数のクロック信号を出力する第１の発振回路と、上記第１の発振回路の出力を計数する第１のカウンタと、回路動作に使用されるクロック信号を計数する第２のカウンタと、上記第１および第２のカウンタの各々の出力を比較する第１の比較回路からなり、上記第１の比較回路は、上記第１および第２のカウンタの出力の計数値の差が所定の値以上になると検出信号を出力するように構成してもよい。
【００８７】
また、本発明に係る半導体装置は、上記構成において、上記電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出する手段は、電圧値に依存して周波数が変化する第２の発振回路と、上記第２の発振回路の出力を計数する第３のカウンタと、回路動作に使用されるクロック信号を計数する第４のカウンタと、上記第３および第４のカウンタの各々の出力を比較する第２の比較回路からなり、上記第２の比較回路は、上記第３および第４のカウンタの出力間の位相差が所定の値以上になると検出信号を出力するように構成してもよい。
【００８８】
また、本発明に係る半導体装置は、上記構成において、上記温度があらかじめ定められた所定の温度の範囲外であることを検出する手段は、温度に依存して周波数が変化する第３の発振回路と、上記第３の発振回路の出力を計数する第５のカウンタと、回路動作に使用されるクロック信号を計数する第６のカウンタと、上記第５および第６のカウンタの各々の出力を比較する第３の比較回路からなり、上記第３の比較回路は、上記第５および第６のカウンタの出力間の位相差が所定の値以上になると検出信号を出力するように構成してもよい。
【００８９】
また、本発明に係る半導体装置は、上記構成において、上記電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出する手段および上記温度があらかじめ定められた所定の温度の範囲外であることを検出する手段は、電圧および温度が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力するＰＬＬ（Phase Locked Loop 、位相同期回路）と、上記ＰＬＬの出力を計数する第７のカウンタと、回路動作に使用されるクロック信号を計数する第８のカウンタと、上記第７および第８のカウンタの各々の出力を比較する第４の比較回路からなり、上記第４の比較回路は、上記第７および第８のカウンタの出力間の位相差が所定の値以上になると検出信号を出力するように構成してもよい。
【００９０】
また、本発明に係る半導体装置は、上記構成において、上記保護制御回路は、上記物理条件検出回路からの検出信号の入力により、電源供給を遮断するように構成してもよい。
【００９１】
また、本発明に係る半導体装置は、上記構成において、上記保護制御回路は、上記物理条件検出回路からの検出信号の入力により、外部から入力されるクロック信号を遮断するように構成してもよい。
【００９２】
また、本発明に係る半導体装置は、上記構成において、上記保護制御回路は、上記物理条件検出回路からの検出信号の入力により、リセット状態等の半導体装置を特定の状態に固定するように構成してもよい。
【００９３】
また、本発明に係る半導体装置は、上記構成において、上記物理条件検出回路の出力により、仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の記憶手段を有するように構成してもよい。
【００９４】
また、本発明に係る半導体装置は、上記構成において、上記仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の記憶手段は、上記半導体装置に内蔵するデータ保持用記憶手段内に設けられるように構成してもよい。
【００９５】
また、本発明に係る半導体装置は、上記構成において、上記仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の記憶手段は、溶融ヒューズの切断、絶縁膜への物理的ダメージ等記憶内容の変更が不可逆な記憶手段であるように構成してもよい。
【００９６】
上記の構成によれば、仕様外の物理条件を与えて回路を誤動作させてその出力を観察することにより内部の情報を推測する不正アクセスに対して、与えられた物理条件があらかじめ定められた仕様範囲を超えたことを検出する手段を設けたことにより、内部の情報を推測しようとするタンパー攻撃から確実に内部情報を守ることができ、内部情報の改竄や漏洩を防ぐことができる。特に、仕様範囲外の物理条件の検出回路としてＰＬＬを用いた場合、高い精度で仕様範囲を設定できるとともに、一つのＰＬＬ回路で周波数、電圧および温度の各物理条件を検出できるため、三つの条件検出による高いセキュリティを確保しながら、検出回路を非常に簡略化できる。
【００９７】
さらに、仮に不正な手段によりデータが漏洩したとしても、不正な手段により取得されたという情報も同時に漏洩するようにしているため、漏洩データの不正使用を防止することが可能となる。
【００９８】
また、本発明に係るＩＣカードは、上記構成の半導体装置を用いたように構成してもよい。
【００９９】
本発明による半導体装置をＩＣカードに適用することにより、非常に高度なセキュリティを要求される幅広い用途に対応できるＩＣカードを実現できる。
【０１００】
【発明の効果】
以上のように、本発明の半導体装置は、内部にデータ保持可能な記憶手段と、装置に与えられる物理条件があらかじめ定められた仕様の範囲を超えたことを検出する仕様外物理条件検出回路と、上記仕様外物理条件検出回路の出力結果を入力し、装置内部のデータの出力を禁止する制御信号を出力する保護制御回路とを備えた半導体装置であって、上記仕様外物理条件検出回路は、上記物理条件が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力する位相同期回路と、上記位相同期回路の出力を計数する第７のカウンタと、回路動作に使用されるクロック信号を計数する第８のカウンタと、上記第７および第８のカウンタの各々の出力を比較する比較回路とからなり、上記比較回路は、上記第７および第８のカウンタのが所定の範囲をはずれると検出信号を出力するものである。
【０１０１】
これにより、高いセキュリティを確保しながら、検出回路を簡略化することができる半導体装置およびＩＣカードを提供することができるという効果を奏する。また、内部データの漏洩、改竄を目的とした、仕様外の条件（たとえば、高電圧、低電圧、高周波数、低周波数、高温、低温）を与え、内部回路を誤動作させて、誤動作の結果得られる出力を蓄積し、解析することによって、暗号化された情報を推測するという暗号解析技術を用いた不正使用に対して、回路動作を止めることにより、内部データの漏洩や改竄を防ぐことができるという効果を奏する。
【０１０２】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、入力されるクロック信号の周波数があらかじめ定められた所定の周波数の範囲外であることを検出する構成である。
【０１０３】
これにより、仕様外の周波数で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１０４】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、基準周波数のクロック信号を出力する第１の発振回路と、上記第１の発振回路の出力を計数する第１のカウンタと、回路動作に使用されるクロック信号を計数する第２のカウンタと、上記第１および第２のカウンタの各々の出力を比較する第１の比較回路からなり、上記第１の比較回路は、上記第１および第２のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力する構成である。
【０１０５】
これにより、仕様外の周波数で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１０６】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、入力される電源電圧があらかじめ定められた所定の電圧の範囲外であることを検出する構成である。
【０１０７】
これにより、仕様外の電源電圧で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１０８】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、電圧値に依存して周波数が変化する第２の発振回路と、上記第２の発振回路の出力を計数する第３のカウンタと、回路動作に使用されるクロック信号を計数する第４のカウンタと、上記第３および第４のカウンタの各々の出力を比較する第２の比較回路からなり、上記第２の比較回路は、上記第３および第４のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力する構成である。
【０１０９】
これにより、仕様外の電源電圧で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１１０】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、半導体装置の温度があらかじめ定められた所定の温度の範囲外であることを検出する構成である。
【０１１１】
これにより、仕様外の温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１１２】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、温度に依存して周波数が変化する第３の発振回路と、上記第３の発振回路の出力を計数する第５のカウンタと、回路動作に使用されるクロック信号を計数する第６のカウンタと、上記第５および第６のカウンタの各々の出力を比較する第３の比較回路からなり、上記第３の比較回路は、上記第５および第６のカウンタの出力の計数値の差が所定の範囲をはずれると検出信号を出力する構成である。
【０１１３】
これにより、仕様外の温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１１４】
また、本発明の半導体装置は、上記の構成に加えて、上記の仕様外物理条件検出回路は、入力されるクロック信号の周波数、与えられた電源電圧あるいは半導体装置の温度のうちのいずれか２つ以上について値をそれぞれの上記所定の範囲と比較し、少なくとも一つがその所定の範囲外であることを検出する構成である。
【０１１５】
これにより、仕様外の周波数、電源電圧または温度で動かそうとすることを検出することができる。それゆえ、上記の構成による効果に加えて、簡便な構成で、誤動作によるデータ漏洩を防ぐことができるという効果を奏する。
【０１１６】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、上記クロック信号の周波数、電源電圧あるいは温度のうちのいずれか２つ以上について、所定の範囲外であることを、同一の回路で検出する構成である。
【０１１７】
これにより、電圧検出、周波数検出、温度検出のうち、２つ以上の機能を一つの回路で実現することによって、不正検出のための回路の規模を小さくすることができる。それゆえ、上記の構成による効果に加えて、必要最小限の回路で不正を検出することができるという効果を奏する。
【０１１８】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路は、電圧および温度が、あらかじめ定められた所定の範囲内であれば、所定の周波数のクロック信号を出力する位相同期回路と、上記位相同期回路の出力を計数する第７のカウンタと、回路動作に使用されるクロック信号を計数する第８のカウンタと、上記第７および第８のカウンタの各々の出力を比較する第４の比較回路からなり、上記第４の比較回路は、上記第７および第８のカウンタの出力間の位相差が所定の値以上になると検出信号を出力する構成である。
【０１１９】
これにより、ＰＬＬがロック可能な範囲は、電圧および温度に対して依存性がある。それゆえ、上記の構成による効果に加えて、仕様外の電圧および温度を精度よく検出することができるという効果を奏する。
【０１２０】
さらに、一定の周波数にしかロックしない性質を利用して、仕様外の周波数をも検出できる。それゆえ、上記の構成による効果に加えて、高いセキュリティを確保しながら、検出回路を簡略化することができるという効果を奏する。
【０１２１】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、電源供給を遮断する構成である。
【０１２２】
これにより、仕様外の物理条件を検出したときに、電源を遮断することにより回路の動作を止める。それゆえ、上記の構成による効果に加えて、電源を止めることにより、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができるという効果を奏する。
【０１２３】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、外部から入力されるクロック信号を遮断する構成である。
【０１２４】
これにより、仕様外の物理条件を検出したときに、クロックを遮断することにより回路の動作を止めることができる。それゆえ、上記の構成による効果に加えて、半導体回路はクロックによって動作が制御されているため、クロックの遮断で、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができるという効果を奏する。
【０１２５】
また、本発明の半導体装置は、上記の構成に加えて、上記保護制御回路は、上記仕様外物理条件検出回路からの検出信号の入力により、半導体装置を特定の状態に固定する構成である。
【０１２６】
これにより、仕様外の物理条件を検出したときに、リセット状態等ある一定の状態に内部を固定することができる。それゆえ、上記の構成による効果に加えて、内部状態を固定して、動かなくしてしまうことにより、誤動作による内部データの破壊や不正な内部データへのアクセスを防ぐことができるという効果を奏する。
【０１２７】
また、本発明の半導体装置は、上記の構成に加えて、上記仕様外物理条件検出回路の出力により、仕様の範囲を超えた物理条件が与えられた履歴を示す情報を格納する不揮発性の履歴記憶手段を有する構成である。
【０１２８】
これにより、内部データの解析が行われると、その解析行為の履歴を残すことができる。それゆえ、上記の構成による効果に加えて、暗証データなどの変更可能な秘匿情報を変更する等の対応が可能となるという効果を奏する。
【０１２９】
また、本発明の半導体装置は、上記の構成に加えて、上記履歴記憶手段は、上記半導体装置に内蔵されるデータ保持用の上記記憶手段内に設けられる構成である。
【０１３０】
これにより、保護すべきデータが解析されたことを示す履歴情報が、データ保持用の記憶手段内に設けられるため、仮に解析による不正な手段によりデータが漏洩してそのデータを基に模造品を作成したとしても、履歴情報も漏洩するため、不正データであることが判明する。それゆえ、上記の構成による効果に加えて、模造品による不正使用の防止手段とすることができ、さらに高度なセキュリティを実現することができるという効果を奏する。
【０１３１】
また、本発明の半導体装置は、上記の構成に加えて、上記履歴記憶手段は、記憶内容の変更が不可逆である構成である。
【０１３２】
これにより、不可逆な履歴記憶手段を用いることにより、いったん履歴が記録されればその情報を抹消することが不可能になる。そのため、その行為を行ったという痕跡を残すことなくデータ解析を行うことが不可能となる。それゆえ、上記の構成による効果に加えて、不正なデータ解析行為に対する抑止効果を得られるとともに、確実にその行為の発見が可能となるという効果を奏する。
【０１３３】
また、本発明のＩＣカードは、上記構成の半導体装置を用いた構成である。
【０１３４】
これにより、仕様外の高電圧、低電圧、高周波数、低周波数、高温、低温等の通常に使用する条件からはずれた物理条件を与えることにより回路を誤動作させて誤動作の結果得られる出力を蓄積し、解析することによって秘匿データの解析技術に対して高い耐タンパー性を有している。それゆえ、仮に不正な解析手段により秘匿データが漏洩したとしても、その履歴を残すことが可能なため、不正な使用を防止することも可能となり、きわめてセキュリティの高いＩＣカードを提供することができるという効果を奏する。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかる半導体装置の構成の概要を示すブロック図である。
【図２】仕様外物理条件検出回路の構成の概要を示すブロック図である。
【図３】周波数検出回路の構成の概要を示すブロック図である。
【図４】電圧検出回路の構成の概要を示すブロック図である。
【図５】温度検出回路の構成の概要を示すブロック図である。
【図６】周波数、電圧、温度の検出を一つの回路で行う回路の構成の概要を示すブロック図である。
【図７】物理条件検出用周波数発生回路の電圧特性を示すグラフである。
【図８】物理条件検出用周波数発生回路の温度特性を示すグラフである。
【図９】物理条件検出用周波数発生回路の構成の概要を示すブロック図である。
【図１０】ＰＬＬのロック可能な範囲を示すグラフである。
【図１１】保護制御回路の構成例の概要を示すブロック図である。
【図１２】保護制御回路の構成例の概要を示すブロック図である。
【図１３】保護制御回路の構成例の概要を示すブロック図である。
【図１４】仕様外物理条件が与えられた履歴を残す手段を有する保護制御回路の構成例の概要を示すブロック図である。
【図１５】周波数検出回路の構成の概要を示す回路図である。
【図１６】仕様外物理条件検出回路の構成の概要を示すブロック図である。
【図１７】電圧検出回路の構成の概要を示すブロック図である。
【符号の説明】
１００  半導体装置
１１０  内部回路
１１２  通信回路
１１４  ＣＰＵ
１１６  暗号化回路
１１８  メモリ
１２０  仕様外物理条件検出回路
１３０  保護制御回路
１４０  外部通信用端子群
１５０  その他の端子群
２０２  周波数検出回路
２０４  電圧検出回路
２０６  温度検出回路
３０２  カウンタＡ（第２のカウンタ）
３０４  カウンタＢ（第１のカウンタ）
３０６  比較回路（第１の比較回路）
３０８  周波数検出用比較周波数発生回路（第１の発振回路）
４０２  カウンタＡ（第４のカウンタ）
４０４  カウンタＢ（第３のカウンタ）
４０６  比較回路（第２の比較回路）
４０８  電圧検出用比較周波数発生回路（第２の発振回路）
５０２  カウンタＡ（第６のカウンタ）
５０４  カウンタＢ（第５のカウンタ）
５０６  比較回路（第３の比較回路）
５０８  温度検出用比較周波数発生回路（第３の発振回路）
６０２  カウンタＡ（第８のカウンタ）
６０４  カウンタＢ（第７のカウンタ）
６０６  比較回路（第４の比較回路）
６０８  物理条件検出用周波数発生回路
７０２  位相比較器
７０４  ＬＰＦ
７０６  分周器
７０８  ＶＣＯ
８０４  バンドパスフィルタ
８０６  整流ダイオード
８５０  コンパレータ
９０２  カウンタＡ
９０４  カウンタＢ
９０６  比較回路
９０８  電圧／温度検出用比較周波数発生回路
９０８ａ  インバータ
９０８ｂ  ＬＰＦ
Ｌ１０  制御信号
【図１】
0003983521.tif 000002
【図２】
0003983521.tif 000003
【図３】
0003983521.tif 000004
【図４】
0003983521.tif 000005
【図５】
0003983521.tif 000006
【図６】
0003983521.tif 000007
【図７】
0003983521.tif 000008
【図８】
0003983521.tif 000009
【図９】
0003983521.tif 000010
【図１０】
0003983521.tif 000011
【図１１】
0003983521.tif 000012
【図１２】
0003983521.tif 000013
【図１３】
0003983521.tif 000014
【図１４】
0003983521.tif 000015
【図１５】
0003983521.tif 000016
【図１６】
0003983521.tif 000017
【図１７】
0003983521.tif 000018