(57)【特許請求の範囲】
【請求項１】
スマートカードタイプの携行オブジェクト（１）であって、
データ処理を実行する効率的部分（μＣＥ）を含むマイクロコントローラ（３０）；
前記マイクロコントローラ（３０）に電流を供給するコンタクトスタッド（ＶＣＣ）；
データの入力及び／又は出力用のコンタクトスタッド（Ｉ／Ｏ）；
秘密情報を含み；
さらに、インターフェース回路（ＧＥＮ，ＣＡＰ，ＣＯＭ）を含み、ここを通して効率的部分（μＣＥ）が供給電圧（ＶμＣＥ）を受け取るようにされ、そして、前記インターフェース回路（ＧＥＮ，ＣＡＰ，ＣＯＭ）は、電流アタックに対する前記秘密データをセキュリティ保護するために効率データ処理部（μＣＥ）の供給電圧を変えるよう設計されており、さらに、
前記インターフェース回路が、
前記コンタクトスタッド（ＶＣＣ）と前記効率的データ処理部（μＣＥ）の供給端子との間のスイッチ（ＣＯＭ）；
前記効率的データ処理部（μＣＥ）の供給端子と効率的部分（μＣＥ）の別の供給端子との間に接続されたキャパシタ（ＣＡＰ）；
を含むことを特徴とする、スマートカードタイプの携行オブジェクト。
【請求項２】
前記インターフェース回路は、前記データ処理に関して非同期に前記スイッチ（ＣＯＭ）を制御するパルス生成器（ＧＥＮ）を含むことを特徴とする、請求項１に記載のスマートカードタイプの携行オブジェクト。
【請求項３】
前記キャパシタは、１ナノファラッドよりも大きい容量を有することを特徴とする、請求項１又は２に記載のスマートカードタイプの携行オブジェクト。
【請求項４】
前記マイクロコントローラは、シリコンの主層（３０１）を含み、回路を含みかつコンタクトスタッド（３００）を支持する前記シリコンのアクティブ面が、追加の保護層（３０２）に対して、封止層（３０３）を用いて封止されていることを特徴とする、請求項１に記載のスマートカードタイプの携行オブジェクト。
【請求項５】
前記インターフェース回路（ＣＯＭ，ＧＥＮ，ＣＡＰ）が追加の保護層（３０２）内に配置されていることを特徴とする、請求項４に記載のスマートカードタイプの携行オブジェクト。
【請求項６】
スマートカードタイプの携行オブジェクト（１）に組み込まれるマイクロコントローラ（３０）であって、
前記マイクロコントローラ（３０）に電流を供給するコンタクトスタッド（ＶＣＣ）；
データの入力及び／又は出力用のコンタクトスタッド（Ｉ／Ｏ）；
データ処理を実行する効率的部分（μＣＥ）；
秘密データを含み、
さらに、インターフェース回路（ＧＥＮ，ＣＡＰ，ＣＯＭ）を含み、ここを通して効率的部分（μＣＥ）が供給電圧（ＶμＣＥ）を受け取るようにされ、そして、前記インターフェース回路（ＧＥＮ，ＣＡＰ，ＣＯＭ）は、電流アタックに対する前記秘密データをセキュリティ保護するために効率データ処理部（μＣＥ）の供給電圧を変えるよう設計されており、さらに、
前記インターフェース回路が、
前記コンタクトスタッド（ＶＣＣ）と前記効率的データ処理部（μＣＥ）の供給端子との間のスイッチ（ＣＯＭ）；
前記効率的データ処理部（μＣＥ）の供給端子と効率的部分（μＣＥ）の別の供給端子との間に接続されたキャパシタ（ＣＡＰ）；
を含むことを特徴とするマイクロコントローラ（３０）。
【発明の詳細な説明】
【０００１】
本発明は、携行オブジェクト、特に、通常スマートカードと称されるようなカード形式のオブジェクトに組み込まれることを意図したマイクロコントローラに関するものである。
【０００２】
スマートカードは、一般的に、秘密データをセキュリティーを確保した状態で記憶したり処理することが必須であるようなアプリケーションにおいて使用される。特に、これらスマートカードは、健康管理の分野におけるアプリケーションや、有料テレビのアプリケーションや、バンキングのアプリケーション、例えば、電子財布等を意図したものである。
【０００３】
マイクロコントローラは、集積回路形式にて形成されたプログラムされたオートマトンである。これらマイクロコントローラは、一連のロジック命令を、それらの内部メモリからのデータや外部からのデータに対して、入力／出力コンタクトスタッドを介して与えるものである。
【０００４】
一般的に、スマートカードマイクロコントローラは、ＳＭＣ技術を使用して設計される。この技術を使用して、マイクロコントローラの動作に必要とされるサブアセンブリ、特に、中央処理装置（ＣＰＵ）、ＲＯＭ（リードオンリメモリ）型の不揮発性の非リライタブル読出専用メモリ、フラッシュ型の不揮発性のリライタブルメモリ、ＥＥＰＲＯＭ（電気的に消去可能なプログラマブル読出専用メモリ）またはＦＲＡＭ（強磁性ランダムアクセスメモリ）およびＲＡＭ（ランダムアクセスメモリ）揮発性メモリは、同じ回路に集積されうる。
【０００５】
偽造者は、マイクロコントローラによって管理されている秘密データおよび、例えば、ＤＥＳ（Data  Encryption  Standard）またはＲＳＡ（Rivest  ShamirAdelman）アルゴリズムの如きマイクロコントローラに使用されている暗号化アルゴリズムを実施するキーを得るために電流アタックを開発している。
【０００６】
これらのアタックは、ある時間間隔においてオペランドＯＰＥに加えられる命令ＩＮＳを実行するマイクロコントローラによって消費されるエネルギーＥｃμCが常に同じでありある署名を表しているという原理に基づいている。換言するならば、次の原理である。
【０００７】
ＥｃμC（Ｔ；ＩＮＳ；ＯＰＥ）＝一定
上記の関係において、また、以下に述べる関係において、符号”＝”は、「ほぼ等しい」ことを意味する。
【０００８】
電流アタックを実施するため、偽造者は、例えば、マイクロコントローラ電源ＶμCとその電源スタッドとの間に直列に、低い値、例えば、１Ωの抵抗Ｒを接続する。それから、偽造者は、例えば、デジタルオシロスコープに接続されたコンピュータを使用して、同一または類似または異なるオペランドに加えられる数百または数千という命令の実行に応答して得られる時間につれての電圧ＲＩｃｃ（ｔ）の変動を表示させる。デジタルオシロスコープは、それらの変動を増幅し、抽出して、その後の分析において得られる結果をデジタル化するものである。
【０００９】
このようなアタックは、非破壊であり、非常に危険である。
【００１０】
したがって、マイクロコントローラの製造者およびボードの製造者は、これらのアタックに対してマイクロコントローラのセキュリティーを確保する方法を開発している。
【００１１】
これらの方法のほとんどは、擬似ランダム時間でのトリガ動作を含むプログラムや命令がマイクロコントローラによって実行されている間相当のランダムまたは間違い情報を持ったノイズを発生するような動作を含むプログラムを使用することに頼っている。
【００１２】
しかしながら、これらの方法は、多くの欠点を有している。プログラム実行時間が長い。相当なメモリスペースを必要としている。また、偽造者によって実行される徹底的な分析に対して秘密データが保護されていない。何故ならば、命令を実行する結果として生ずる電気信号が依然として存在するからである。
【００１３】
本願の優先日時点では公開されていない仏国特許出願第９８０１３０５号に記載された別の方法は、ローパスフィルタセルで電流をフィルタすることを勧めている。この方法は、電気的署名を減衰させるだけのものであり、それらを詳細に分析することにより、特定の秘密データに対してアクセスが依然としてできてしまうものである。
【００１４】
米国特許ＵＳ４９３２０５３号は、集積回路に含まれる秘密情報のセキュリティに関する。集積回路の応用、特にスマートカード型の応用のいくつかでは、権限のない者が回路のメモリに含まれる秘密情報のいくつかへアクセスすることは拒否されなければならない。詐取者がメモリの読み出し又は書き込み動作中に集積回路の端子から現在の消費量を調べることを防ぐために、保護回路が用いられている。この保護回路は、生成器で生成された擬似ランダムシーケンスによって、本物のメモリセルの消費値に等しい現在の消費値のシミュレーションを作動させるのに使われる。
最後に、米国特許ＵＳＰ４８２７４５１が、メモリセルのマトリックスの形態で形成されたメモリの分野に関するものであることに注目される。ライン及びコラムによってアクセスすることができるこのセルは、入力データの二つの状態「１」又は「０」でプログラムするのに用いられ、そしてこのようにプログラムされた状態を読み出す、読み出し／書き込み回路に接続されている。このメモリセルは、「１」をプログラミングするときにはプログラム電流を必要とし、「０」をプログラミングするときには電流を必要としないタイプのセルである。前記セキュリティ回路は、「１」をプログラミングする際にメモリセルによって供給される電流と同じ電流が「０」をプログラミングする際に供給されるよう作動するシミュレーション回路から構成される。
【００１５】
前述したことに鑑み、本発明が解決しようとしている技術的課題は、データ処理を実行する効率的部分を含んだマイクロコントローラ；前記マイクロコントローラに電流を供給するコンタクトスタッド；データ入力および／または出力コンタクトスタッド；及び秘密データ、を含むスマートカード型の携行オブジェクトを、電流アタックに対してセキュリティ保護することである。
これを達成するために、本発明は、請求項１によって定義される携行オブジェクト及び請求項７によって定義されるマイクロコントローラを提案する。
【００１６】
前記の効率的データ処理部のエネルギー消費はそれの供給電圧の自乗に比例するものと考えると、この電圧が変動すると電気的な署名は乱されて、それを分析することは困難となり、不可能とさえなる。
【００１７】
効率的データ処理部の供給電圧を変える手段は、マイクロコントローラ・サプライ・コンタクト・スタッドと直列に接続される時間的に可変な抵抗であるのが好ましく、この時間可変抵抗は例えばＴoffの期間開いていて、Ｔonの期間閉じているスイッチであり、サイクル比Ｔoff／Ｔoff＋Ｔonは時間の関数であり、期間Ｔoff＋Ｔonも時間の関数である。
【００１８】
さらに具体的に言えば、効率的データ処理部の供給電圧を変える手段は、パルス生成器を含んでいるのが好ましく、このパルス生成器はその効率的データ処理部の端子に接続された電圧スレッシュホールド交差同期回路を含んでいる。
【００１９】
最後に、効率的データ処理部の供給電圧を変える手段は、キャパシタを含んでいるのが好ましく、このキャパシタのキャパシタンスは例えば、０．１ナノファラッドより大きい。
【００２０】
本発明のある有利な実施態様においては、マイクロコントローラはシリコン主層を含んでおり、その主層のアクティブな面（このアクティブな面は回路を含み、そしてコンタクト・スタッドを支持している）は封止層を介して別の保護層に封止されている。これによってその保護層に配置された効率的データ処理部の供給電圧を変えることができる。
【００２１】
添付図を参照しての以下の本発明をそれに限定するものではない説明から本発明を容易に理解されよう。
本発明のポータブルな物品はスタンダードＩＳＯ７８１６の様々なセクションに記述されている標準化されたものであって、その内容を本文に参照するものとして挙げておく。図１、２、３に示す態様においてそのような物品は電子モジュール３と一体とされたボディ２を含んでいるほぼ矩形の薄いカード１の形態をとっている。
【００２２】
このカードのボディ２は５層のシート２０、２１、２２、２３、２４から成り、そしてモジュール３を包含する空所２５を含んでいる。
【００２３】
モジュール３のマイクロコントローラ３０のコンタクト・スタッド３００は導線３１を介してコンタクトパッド３２へ接続されており、これらのコンタクトパッド３２はカード・ボディ２の表面と同じ高さになっている。これらのコンタクトパッド３２はエポキシガラスの絶縁板３３に載っている。このアッセンブリーとなっているマイクロコントローラ３０と導線３１は保護樹脂３４で被膜されている。
【００２４】
図４の実施例ではマイクロコントローラ３０は面積約１０平方ミリ、厚み約１８０ミクロンの正平行六面体となっている。
【００２５】
このマイクロコントローラ３０のシリコン主層３０１のアクティブ面は回路とコンタクト・スタッド３００を支持しており、シリコンの保護層３０２に、封止層３０３を使って封止している。この保護層３０２の開口３０４はコンタクト・スタッド３００に対向しており、それらはコンタクト・パッド３２に接続されることができる。
【００２６】
実際には、５つのコンタクトスタッド300が存在する。これらは、モジュール３中のスタッドである、ＶＣＣ，ＲＳＴ，ＣＬＫ，Ｉ/Ｏ及びＧＮＤであり、それぞれ、モジュール３中のコンタクトパッドであるＶＣＣ，ＲＳＴ，ＣＬＫ，Ｉ/Ｏ及びＧＮＤに接続される。供給コンタクトスタッド（supply contact stud）ＶＣＣはマイクロコントローラに電力を供給することが意図されている。リセットスタッド（reset stud）ＲＳＴが、リセット信号をマイクロコントローラに送出することが意図されている。クロックスタッドＣＬＫが、クロック信号をマイクロコントローラに送出することが意図されている。入力/出力スタッドＩ／Ｏが、マイクロコントローラと外部との間の論理データの交換を可能とすることが意図されている。接地スタッドＧＮＤは、マイクロコントローラをグラウンド（ground）に接続するために用いられる。
【００２７】
本発明によるマイクロコントローラの集積回路30は、複数の能動部品を含む。特に、図５に示されるように、インターフェースマイクロコントローラパーツμＣＩ及び効率的データ処理パーツμＣＥが存在する。
【００２８】
インターフェースマイクロコントローラパーツあるいはインターフェースマイクロコントローラμＣＩは、好ましくは、唯一、エネルギーを消費する手段（この手段は、マイクロコントローラによって処理される、秘密データに関する情報を開示しないようなものである）のみを含む。実際には、インターフェースマイクロコントローラμＣＩは、例えば、コンタクトスタッドであるＲＳＴ，ＣＬＫ，及びＩ／Ｏと対応付けられる、ローディングポンプ（loading pump）あるいはインターフェース回路を含む。コンタクトスタッドＲＳＴは、主に、初期化信号及びそれに関連する、マイクロコントローラを初期化するための手段を検知するための手段に関係する。コンタクトスタッドＣＬＫは、上限と下限との間にある周波数を検知するための手段に関係する。最後に、コンタクトスタッドＩ／Ｏは、マイクロコントローラがスイッチングによって、入力モードから出力モードへ、あるいはその逆に、通信することを可能とする手段に関連する。
【００２９】
効率的なデータプロセッシングパーツ、つまりマイクロコントローラμＣＥは、マイクロコントローラ30のパーツであり、サブアセンブリを含む。このサブアセンブリのインバータが、秘密データを処理することが意図される。その結果、それは、マイクロコントローラのうち偽装者に秘密データについての情報を与えることになりうる部分となる。実際には、それは、中央処理ユニット（ＣＰＵ）を含み、このユニットと関連する暗号プロセッサ、データ及びアドレスバスコマンド回路、及びＲＡＭ，ＲＯＭ，及びＥＰＲＯＭメモリあるいは他のタイプの全てのメモリを含むこともありうる。
【００３０】
本発明によるマイクロコントローラ30はまた、パルス生成器ＧＥＮ，キャパシタＣＡＰ，及びスイッチＣＯＭを含む。パルス生成器，キャパシタ，及びスイッチは、効率的マイクロコントローラの電源電圧を変化させるために用いられる手段である。
【００３１】
パルス生成器ＧＥＮは、例えば、２つの発振器からなる。そのそれぞれは、入力回路上でヒステリシスを持つシュミットタイプのインバータ，インバータ入力と接地との間に接続されたキャパシタ，及びこのインバータの出力とその入力との間に接続された抵抗からなる。そして、当該２つの発振器は、抵抗によって一緒に結合されており、変調された周波数信号源を形成する。更に、パルス生成器ＧＥＮは、好ましくは、効率的マイクロコントローラの端子間の電圧ＶμCEのスレッシュホールド電圧Ｖthresholdのための電圧交差同期回路（voltage crossing synchronization circuit）を含む。この回路は、電圧比較器から構成され得る。この電圧比較器の正入力は、参照電圧つまり電圧Ｖthresholdに接続され、その負入力は効率的マイクロコントローラの端子間の電圧に接続され、その出力は、変調された周波数信号源からの同期信号によって同期がとられたフリップフロップの入力Ｄに接続される。
【００３２】
キャパシタＣＡＰは、約０．１ナノファラッドより大きく、約１ナノファラッドと約１０ファラッドの間の大きさの、例えば６ナノファラッドのオーダーのキャパシタンンスを持つ。１．５ナノファラッドのキャパシターの電極は、約１ｍｍ2の面積を持つことに注意して欲しい。また、６なのファラッドのキャパシタは、の約４ｍｍ2の面積を持つ。
【００３３】
本発明では、スイッチＣＯＭは、マイクロコントローラ電源コンタクトスタッドＶｃｃと直列に接続された可変抵抗によって置きかえられ得る。
【００３４】
本発明では、コンタクトスタッドＩ／Ｏ，ＲＳＴ，及びＣＬＫは、インターフェースマイクロコントローラμＣＩへの電気的接続線によって接続される。コンタクトスタッドＧＮＤは、パルス生成器ＧＥＮへの、キャパシタＣＡＰへの、効率的マイクロコントローラμＣＥへの、そして、インターフェースマイクロコントローラへの電気的接続線によって接続される。更に、コンタクトスタッドＶｃｃは、パルス生成器ＧＥＮへの、スイッチＣＯＭへの、及びインターフェースマイクロコントローラμＣＩへの電気的接続線によって接続される。更に、スイッチＣＯＭは、パルス生成器ＧＥＮへの、及びキャパシタＣＡＰへの電気的接続線によって接続される。最後に、電気的接続線は、効率的マイクロコントローラμＣＥを、キャパシタＣＡＰをスイッチＣＯＭに接続する電気的接続線に接続する。そして、電圧Ｖthresholdと比較して電圧ＶμCEをモニターするために、電気的接続線は、生成器ＧＥＮをこの最後の線に接続する。
【００３５】
図４に示される、このタイプのマイクロコントローラのためには、図６Ａ及び図６Ｂに示されるような上述のパーツが配置される。ここで、追加の層302（図６Ｂ）は、パルス生成器ＧＥＮ，キャパシタＣＡＰ，及びスイッチＣＯＭを含む。そして、コンタクトスタッドを支持する主層301（図６Ａ）は、効率的マイクロコントローラパーツμＣＥ及びインターフェースマイクロコントローラμＣＩを含む。
【００３６】
更に、主層301は、３つの中間接続スタッドＰ１，Ｐ２，Ｐ３を含む。第１のスタッドＰ１は、スタッドＶＣＣに接続される。第２のスタッドＰ２は、効率的マイクロコントローラに接続される。そして、第３のスタッドＰ３はスタッドＧＮＤに接続される。
【００３７】
同様に、別の層３０２は、３つの相互接続スタッドＰ１’、Ｐ２’、Ｐ３’を備え、これらはマイクロコントローラ内でそれぞれスタッドＰ１、Ｐ２、Ｐ３上に適合する。第１スタッドＰ１’は、第１にスイッチＣＯＭに、第２にパルス生成器ＧＥＮに接続され、第２スタッドＰ２’は、スイッチＣＯＭとキャパシターＣＡＰの間の共通ポイントに接続され、第３スタッドＰ３’は、第１にキャパシターＣＡＰに、第２にパルス生成器ＧＥＮに接続される。
【００３８】
図４に示すマイクロコントローラ３０では、スタッドＰ１、Ｐ２、Ｐ３は、それぞれ導電ボス経由で電気的にスタッドＰ１’、Ｐ２’、Ｐ３’に接続される。
【００３９】
明らかに、上述したマイクロコントローラは、本発明を実現する１つのモードを示し、本発明を他のモードで実現することも出来る。多層構造を有さず、従来の構造であり、上述したコンタクトスタッド、インターフェース、効率的なマイクロプロセッサ、キャパシター、パルス生成器、スイッチ等の色々の部品が、シリコン基板の別の層で覆われていない単一層上に集積されている構造でも良い。
【００４０】
本発明によるマイクロコントローラにより消費されるエネルギーＥｃμcは、インターフェースマイクロコントローラ、効率的なマイクロコントローラ、パルス生成器/キャパシタ／スイッチ組立体のそれぞれにより消費されるエネルギーＥｃμCI、ＥｃμCE、ｃMの合計に等しい。それゆえ次の関係が得られる。
【００４１】
Ｅｃμc＝ＥｃμCI＋ＥｃμCE＋ｃM
インターフェースマイクロコントローラにより消費されるエネルギーＥｃμCIは、マイクロコントローラ３０により実行される命令を現わさず、それゆえ前記命令の実行中、処理される秘密のデータを現わすわけではない。
【００４２】
効率的なマイクロコントローラの基本的ゲートは図７に示すようなインバータ４０である。インバータ４０は、Ｎ型トランジスタ４０２と直列に接続されたＰ型トランジスタ４０１からなる。電圧ＶμCEがＰ型トランジスタにかけられ、Ｎ型トランジスタは接地ＧＮＤされる。キャパシターＣiは、各インバータ４０と組み合わされる。このキャパシターＣiのキャパシタンスは、インバータ相互接続ラインの物理的キャパシタンスと同等であり、図７に示すインバータの下に接続されるであろうインバータのＰ型とＮ型のトランジスタを形成するグリッドのキャパシタンスと同等である。
【００４３】
機能的な視点からは、Ｐ型とＮ型のトランジスタは、インバータの入力電圧に対応する共通コマンド信号ＶCにより制御される。この信号が論理０（ＶC＝ＧＮＤ）のとき、Ｐ型トランジスタはオンで、Ｎ型トランジスタはオフで、出力（ＶS＝ＶμCE）で論理１が得られ、キャパシターＣiはチャージアップする。しかし、この信号が論理１（ＶC＝ＶμCE）のとき、Ｐ型トランジスタはオフで、Ｎ型トランジスタはオンで、出力（ＶS＝ＶμCE）で論理０が得られ、キャパシターＣiは放電する。
【００４４】
図８は、インバータの作動周波数がＦμCEに等しいときの時間ｔに対する供給電流ｉccのコマンド信号Ｖeの変化を示し、これは通常はコンタクトスタッドＣＬＫ経由で端子によりかけられるクロック周波数であるが、マイクロコントローラが内部クロック信号を発生できるなら、特別の周波数でも良い。
【００４５】
電圧Ｖeが一定のとき、Ｐ型とＮ型のトランジスタはオフであり、インバータ４０は、図８には示さない期間１／ＦμCEについて平均値がＩfである漏れ電流が流れる。集散するエネルギー即ちスタチックエネルギーは次の通りである。
【００４６】
Ｅ＝ＶμCEＩf／ＦμCE
電圧Ｖeが変化し、インバータ入力の信号が論理１から論理０に又はその逆に変化するとき、電流は図８に示すように変化する。
【００４７】
インバータは、次の短絡エネルギーＥCCを消費する。
【００４８】
ＥCC＝ＶμCEＩSC／ＦμCE
ここに、ＩSCは期間１／ＦμCEについての短絡回路電流の平均値である。
【００４９】
さらに、Ｐ型トランジスタの場合、電圧Ｖeが変化し、インバータ入力の信号が論理１から論理０に変化するとき、キャパシターはＣiの電圧ＶμCEに到達するまでチャージアップし、ダイナミックエネルギーＥdは次にキャパシターＣiに保存されたエネルギーの合計に等しいだけ静電エネルギーとして消費し、チャージ電流の限定する同等の抵抗内で散逸する。
【００５０】
Ｅd＝１／２ＣiＶ2μCE＋１／２ＣiＶ2μCE＝ＣiＶ2μCE
最後に、電圧Ｖeが変化し、インバータ入力の信号が論理０から論理１に変化するとき、キャパシターはＮ型トランジスタを通って放電し、以前に保存し１／２ＣiＶ2μCEに等しいエネルギーを散逸する。
【００５１】
ＳＭＣ技術を使用して作ったインバータでは、ＥCCdはＥdの２０％より小さく、ＥSはＥdよりずっと小さい。その結果、インバータｉで消費されるエネルギーＥCは、主に動的であり、ＥCはＥdにほぼ等しいと考える。
【００５２】
その結果、１つのクロックトランジスタ上の効率的なマイクロプロセッサにより消費されるエネルギーは、前記効率的なマイクロプロセッサが電圧ＶμCEを供給されるとき、ほぼ次の通りである。
【００５３】
ＥｃμCE＝Σi=1i=N  αiＣiＶ2μCE
ここに、インバータｉが特に作ったスイッチング動作でエネルギーを消費するとき、αi＝１であり、この変移中に特にスイッチング動作をしないとき、αi＝０である。また、Ｎは効率的なマイクロコントローラのインバータの数である。
【００５４】
従って、効率的なマイクロコントローラにより消費されるエネルギーはその供給電圧ＶμCEの２乗で変化する。
【００５５】
本発明の手段により消費されるエネルギーＥｃMは、パルス生成器ＧＥＮにより消費されるエネルギーＥｃGEMにスイッチＣＯＭにより消費されたエネルギーＥｃCOM及びキャパシターＣＡＰにより消費されたエネルギーＥｃCAPを加えたものに等しい。すなわち、
ＥｃM＝ＥｃGEN＋ＥｃCOM＋ＥｃCAP
パルス生成器ＧＥＮにより消費されるエネルギーＥｃGENは、インターフェイス・マイクロコントローラにより消費されるエネルギーと同じタイプである。事実、命令を実行する時に処理される機密情報に関して指示を与えない。
【００５６】
スイッチＣＯＭにより消費されるエネルギーＥｃCOMは事実、キャパシターＣＡＰが充電した時にスイッチにより散逸されるエネルギーである。すなわち、
ＥｃCOM＝充電されている時のＥｃCAP
キャパシターＣＡＰにより消費されてるエネルギーＥｃCAPは、スイッチＣＯＭの状態、開いているか又は閉じているか、に依存する。スイッチCOMの開いている又は閉じている状態はパルス生成器ＧＥＮにより制御される。この発生器は事実、スイッチＣＯＭを開く又は閉じるための命令信号Ｓを送ることができる。受信された信号Ｓに依存して、このスイッチは閉じられるか又は開かれる。それは時間間隔Ｔonの間、閉じられる。それは時間間隔Ｔoffの間、開かれる。
【００５７】
時間間隔Ｔoffの間、キャパシターは放電して、それが消費するエネルギーは次の様にＥｃCAP（Ｔoff）に等しい。
【００５８】
ＥｃCAP（Ｔoff）＝−１／２ＣΔＶ2
ここで、ΔＶはＴoffの間にキャパシターの端子を横断する電圧変化を表す。
【００５９】
時間間隔Ｔonの間、電流Ｉｃｃにより供給されるキャパシターは充電され、そしてその消費されるエネルギーＥｃCAP（Ｔon）は以下に等しい。
【００６０】
ＥｃCAP（Ｔon）＝１／２ＣΔＶ2
ここで、ΔＶはＴonの間にキャパシターの端子を横断する電圧変化を表す。
【００６１】
詐取する者は、全マイクロコントローラ供給電流のみにアクセスし、従って、マイクロコントローラにより消費される全エネルギーにアクセスする。
【００６２】
時間間隔Ｔoffの間、マイクロコントローラにより消費されるエネルギーはインターフェイス・コントローラにより消費されるエネルギーに等しい。効率的なマイクロコントローラは事実、放電しているキャパシターＣＡＰにより供給されている。従って、Ｔoffでは、
ＥｃμC＝ＥｃμCI
前に見たように、ＥｃμCIは効率的なマイクロコントローラ・インバータのスイッチングに関するどんな情報も暴露せず、従って、処理されている機密データに関する情報を暴露しない。この結果、詐取する者は時間間隔Ｔoffの間、前記データへのアクセスができない。
【００６３】
しかし、時間間隔Ｔonの間、マイクロコントローラにより消費されるエネルギーは、インターフェイス・マイクロコントローラにより消費されるエネルギーに本発明による手段により消費されるエネルギー及び効率的なマイクロコントローラにより消費されるエネルギーを加えたものに等しい。すなわち、
ＥｃμC＝ＥｃμCI＋ＥｃμCE＋ＥｃM
同じオペランドＯＰＥに命令ＩＮＳが適用され、そして本発明によるマイクロコントローラにより実行されたと仮定する。実際には、この命令ＩＮＳがいくつかのクロック遷移中に実行される。各クロック遷移において、命令ＩＮＳの部分が実行され、効率的なマイクロコントローラのＮ個インバータの幾つかがこの目的のために状態を変化する。
【００６４】
このような遷移の間に効率的なマイクロコントローラにより消費されるエネルギーは、前記マイクロコントローラの端子を横断する電圧ＶμCEの２乗に直接に比例する。
【００６５】
キャパシターＣＡＰが、効率的なマイクロコントローラに並列に接続されているため、効率的なマイクロコントローラの端子を横断する電圧ＶμCEは、キャパシターＣＡＰの端子を横断する電圧ＶCAPと同じである。従って、効率的なマイクロコントローラの端子を横断する電圧は常に変化する。
【００６６】
この結果、命令ＩＮＳの一部を実行するために消費されるエネルギー、そして、なおさら、命令ＩＮＳの完了のためのエネルギー、は常に同じではない。
【００６７】
事実、同じオペランドに適用された同一の命令については、効率的なマイクロコントローラにより消費されたエネルギー間の差は、これらがこのマイクロコントローラの供給電圧ＶμCEの２乗に関係するから一層に大きい。
【００６８】
上記の結果、この説明の前段で述べられたことにより、ＥｃμC（Ｔ；ＩＮＳ；ＯＰＥ）が一定であるという原理は、本発明においてはもはや真実でなく、そして、詐取する者は機密情報にアクセスすることができない。
【００６９】
図１０Ａないし図１０Ｄは、信号Ｓ、キャパシターＣＡＰの供給電流ＩCAP、効率的なマイクロコントローラの供給電圧ＶμCE、及びマイクロコントローラの供給電流Ｉｃｃをそれぞれ時間ｔに対して示す。
【００７０】
図１０Ａに示すように、時間間隔Ｔoff及びＴonは、１つの期間Ｔs−Ｔoff＋Ｔonと別の期間で変化する。従って、サイクル比Ｔoff／（Ｔon＋Ｔoff）は時間と共にでたらめに変化し、これは詐取する者が予想できなくするために利点である。さらに、スイッチＣＯＭはキャパシターの端子を横断する電圧がスレッシュホールドＶuilに達した正確な時点で閉じられず、この時点の後の最初のクロックの刻みで閉じられ、そして前記時点とこの最初のクロックの刻みの間の時間間隔が可変であるため、ＴS＝１／ＦSの値はランダムに変わる。上記のＴSの変化に加えて、シュミット・タイプ・インバータを持つ２つの結合した発振器を含むパルス生成器が作成される方法に起因してＴSの変化が存在する。
【００７１】
また、図１０Ｂに示されているように、コンデンサＣＡＰの供給電流ＩCAPは、コンデンサが充電されている時間間隔Ｔonの間は正である。しかし、ＩCAPはこれらの間隔の間、ＩCAP(t)＝０となるまで減少する。その結果、コンデンサはスイッチが開放された時にその最大電荷を有する。さらにその上、電流ＩCAPは、コンデンサが効率の良いマイクロコントローラに与えるために放電する時間間隔Ｔoffの間は負である。
【００７２】
図１０Ｃに示されているように、効率の良いマイクロコントローラの供給電圧は、時間間隔Ｔonの間、増加し、時間間隔Ｔoffの間、減少する。ΔＶはコンデンサ端子の電圧変化の大きさを表わしている。
【００７３】
最後に、図１０Ｄに示されているように、マイクロコントローラの供給電流ＩCCはＴoffの間、ＩμCIに等しく、その後、Ｔonの間、増加し、それはＩμCI＋ＩCAP＋ＩμCEに等しくなる。
【００７４】
図１１は、最新技術のマイクロコントローラのｔに対する電流ＩCCの変化（署名Ａ）と、同一オペランドに適用される同一命令を実行するための本発明による同一マイクロコントローラのｔに対する電流ＩCCの変化（署名Ｂ）とを示している。これらの命令は同一方法で遅れずに実行されるが、曲線はまったく異なる。最初の曲線に見られる電流のピークは２番目の曲線には現われない。時間間隔Ｔoff及びＴonは２番目の曲線に明瞭に見られる。そのため、秘密のデータに関する詳細を２番目の曲線から決定するのは極めて困難である。
【００７５】
明らかに、上述した発明の実施モードの説明は発明を限定するものではなく、発明は広い意味に理解されなければならない。他のもっと複雑な実施モードは非常に興味のある結果を与えることがある。これは、例えば、２個のコンデンサＣＡＰ１及びＣＡＰ２と、３個のスイッチＣＯＭ１，ＣＯＭ２及びＣＯＭ３と、その３個のスイッチＣＯＭ１，ＣＯＭ２及びＣＯＭ３をそれぞれ開閉する３つの指令信号Ｓ１，Ｓ２及びＳ３とを備えたマイクロコントローラを示す図１２に説明された実施モードに関連するものである。この実施モードでは、コンデンサＣＡＰ１は、スイッチＣＯＭ２及びＣＯＭ３が開放されている間にスイッチＣＯＭ１を介して再充電される前に、スイッチＣＯＭ１及びＣＯＭ２が開放されている間にスイッチＣＯＭ３を介して、基準電圧、例えば、接地において放電される。コンデンサＣＡＰ１は、スイッチＣＯＭ１を介して一度充電されると、スイッチＣＯＭ１及びＣＯＭ２が開放されている間にスイッチＣＯＭ２を介して効率の良いマイクロコントローラμＣＥと並列のコンデンサＣＡＰ２に放電する。図１３は時間に対する信号Ｓ1，Ｓ2及びＳ3の変化を示している。実施モードはμＣＥの作動に関係なくエネルギーの消費を一定に保持する手段を提供する。秘密の情報はもはや電流ＩCCを分析することにより得ることはできない。この実施モードは効率の良いマイクロコントローラのエネルギー消費を増加させる。
【図面の簡単な説明】
【図１】  本発明のスマートカードの斜視図である。
【図２】  本発明のスマートカードの横断面図である。
【図３】  本発明のスマートカードのコンタクト・パッドである。
【図４】  本発明のマイクロコントローラの斜視図である。
【図５】  本発明のマイクロコントローラの種々の要素を示す略図である。
【図６】  図６Ａは図４の本発明のマイクロコントローラのアクティブな層を表し、図６Ｂは図４の本発明のマイクロコントローラの保護層を表す。
【図７】  本発明のマイクロコントローラの効率的データ処理部のＳＭＣインバータの略図である。
【図８】  図７のＳＭＣインバータの指令信号Ｖeの時間に対する変化と、供給電流ｉccの時間に対する変化と、出力信号Ｖsの時間に対する変化をそれぞれ示している。
【図９】  本発明のマイクロコントローラの結線図である。
【図１０】  図１０Ａ−１０Ｄは、本発明のマイクロコントローラの信号Ｓの時間に対する変化、電流Ｉcapの時間に対する変化、そして供給電流Ｉccの時間に対する変化をそれぞれ表している。
【図１１】  先端技術のマイクロコントローラの時間に対する電流Ｉccの変化（署名Ａ）と本発明によるマイクロコントローラの時間に対する電流Ｉccの変化（署名Ｂ）とを示す。
【図１２】  本発明のマイクロコントローラの実施例の回路図である。
【図１３】  図１２の実施例のマイクロコントローラの時間に対する信号Ｓ1、Ｓ2、Ｓ3の変化を示す。
【図１】
0004769398.tif 000002
【図２】
0004769398.tif 000003
【図３】
0004769398.tif 000004
【図４】
0004769398.tif 000005
【図５】
0004769398.tif 000006
【図６Ａ】
0004769398.tif 000007
【図６Ｂ】
0004769398.tif 000008
【図７】
0004769398.tif 000009
【図８】
0004769398.tif 000010
【図９】
0004769398.tif 000011
【図１０Ａ】
0004769398.tif 000012
【図１０Ｂ】
0004769398.tif 000013
【図１０Ｃ】
0004769398.tif 000014
【図１０Ｄ】
0004769398.tif 000015
【図１１】
0004769398.tif 000016
【図１２】
0004769398.tif 000017
【図１３】
0004769398.tif 000018