JP2010068523A - 攻撃に対するマイクロ回路の保護方法及びデバイス - Google Patents

攻撃に対するマイクロ回路の保護方法及びデバイス Download PDF

Info

Publication number
JP2010068523A
JP2010068523A JP2009209465A JP2009209465A JP2010068523A JP 2010068523 A JP2010068523 A JP 2010068523A JP 2009209465 A JP2009209465 A JP 2009209465A JP 2009209465 A JP2009209465 A JP 2009209465A JP 2010068523 A JP2010068523 A JP 2010068523A
Authority
JP
Japan
Prior art keywords
microcircuit
function
writing
protection
address
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009209465A
Other languages
English (en)
Other versions
JP5517535B2 (ja
Inventor
De La Crouee Hugues Thiebauld
ティエボール ドゥ ラ クルーエ ユゲ
Olivier Chamley
シャムレイ オリビエ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Idemia France SAS
Original Assignee
Oberthur Technologies SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=40600008&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP2010068523(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Oberthur Technologies SA filed Critical Oberthur Technologies SA
Publication of JP2010068523A publication Critical patent/JP2010068523A/ja
Application granted granted Critical
Publication of JP5517535B2 publication Critical patent/JP5517535B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/073Special arrangements for circuits, e.g. for protecting identification code in memory
    • G06K19/07309Means for preventing undesired reading or writing from or onto record carriers
    • G06K19/07363Means for preventing undesired reading or writing from or onto record carriers by preventing analysis of the circuit, e.g. dynamic or static power analysis or current analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)

Abstract

【課題】マイクロ回路への攻撃に対して、攻撃によって妨げられることなくマイクロ回路の保護機能を実行することを目的とする。
【解決手段】攻撃に対するマイクロ回路保護方法であって、攻撃が検出されたか否かを判定するステップ(205)と、攻撃が検出された場合に、保護機能を実行するステップ(210、510)と、攻撃が検出されなかった場合に、保護機能を擬似的に実行し、保護機能と実質的に同一の方法でマイクロ回路の外部から検知可能なおとり機能を実行するステップ(215、515)とを有することを特徴とする。ある実施形態では、おとり機能は、保護機能の消費電力と実質的に同一の消費電力を有し、保護機能は、不揮発性メモリの第1のアドレスに所定のデータを書き込むステップを有し、おとり機能は、不揮発性メモリの第1のアドレスと異なるアドレスに書き込むステップを有する。
【選択図】図2

Description

本発明は、攻撃(attacks)に対するマイクロ回路(microcircuit)の保護方法及びデバイスに関する。特に、電力解析によるサイドチャネル攻撃に対するスマートカードの保護に関する。
格納されたデータ及びプログラムを保護するために、マイクロプロセッサカードでは、「キルカード(kill-card)」フラグを使用できる。攻撃と考えられるイベントをカードが検出した場合、カードは、「キルカード」フラグを所与の値に不可逆的にセットする。フラグが所与の値にセットされると、マイクロプロセッサの次の動作が妨げられる。フラグは、不揮発性メモリに格納される。フラグを所与の値にセットすることには、(いわゆる「キルカード」機能の実行によって)不揮発性メモリに書き込み動作を行うことが含まれる。
高度化した攻撃は、実行の解析に基づいて、マイクロ回路の保護機能、又は対策機能の実行を検出して、マイクロ回路上の物理的動作(マイクロ回路に供給されるクロック周波数への干渉、回路のエリア上のレーザ作動など)によって保護機能の実行に干渉し、又は(マイクロ回路の電源供給を遮断することなどにより)保護機能の実行を妨げる。このように、マイクロ回路へ干渉又は抑制する前に、保護機能の実行を検出する。これにより、攻撃者は、保護機能を動作不能にし、又は弱めることによって攻撃を成功させる。
これらの高度化した攻撃には、電力解析を使用してマイクロ回路の動作を判定するものがある。特に不揮発性メモリへの書き込み動作は、RAM(random-access memory)の演算動作と比較して非常に大きな電力を消費する。したがって、電力解析は、異なる動作は異なる電力量を消費するという事実を利用する。このように、異なる動作は、消費電力に関して異なる特徴(signatures)を有する。不揮発性メモリの書き込み動作は、消費電力が大きいため、とても特徴的であるという事実により、マイクロプロセッサの動作を中断させる所与の値をフラグが取り込むことを攻撃が妨げることができるようにする。この書き込み動作の特徴が攻撃によって検出されると、マイクロプロセッサの電源供給が遮断され、書き込み動作は完了しない。
本発明は、このような問題を解消することを目的とする。
この目的を達成するために、本発明の第1の態様は、攻撃に対してマイクロ回路を保護する方法であって、
攻撃が検出されたか否かを判定するステップと、
攻撃が検出された場合に、保護機能を実行するステップと、
攻撃が検出されなかった場合に、保護機能を擬似的に実行(simulating)し、保護機能と実質的に同一の方法でマイクロ回路の外部から検知可能なおとり機能(decoy function)を実行するステップと、を含むことを特徴とする。
したがって、攻撃が検出されない場合でもおとり機能が保護機能を擬似的に実行するので、攻撃者は、保護機能の実行を把握することによって攻撃が検出されたか否かを判定することができない。
好適には、おとり機能による保護機能の擬似的な実行は、保護機能の実行の検出を攻撃者が利用して攻撃を成功裡に終了することができなくなるまで実行されると考えられる。したがって、好適には、おとり機能は、保護機能の持続時間、又は保護機能がマイクロ回路の通常の動作を制止する時間以上の時間に亘って実行され、その後おとり機能は、マイクロ回路の保護が妨げることなく検知される。
マイクロ回路の外部から検出可能であり且つ保護機能及びおとり機能によって変化する物理量は、放射線、若しくは電磁界、抵抗、抵抗、容量、インダクタンス、電圧、電流、又は消費電力とすることができる。
ある実施形態では、攻撃が検出されたか否かを判定するステップに続いておとり機能が実行される場合には、保護機能は実行されない。
ある実施形態では、おとり機能は、保護機能の消費電力と実質的に同一の消費電力を有する。
したがって、保護機能の実行により生じる消費電力がマイクロ回路の外部から検知可能な場合は、回路の通常の動作の間におとり機能は、同一の消費電力の特徴を有して実行される。この結果、攻撃者は、保護機能の実行とマイクロ回路の通常の動作とをマイクロ回路の消費電力に基づいて区別することができない。
上述のように、おとり機能が動作する毎にマイクロ回路の電源供給を遮断する場合には、マイクロ回路の動作を解析することができない。この結果、攻撃は効力を失い、マイクロ回路は、この種の攻撃から保護される。なお、この種の攻撃において、おとり機能の消費電力を検出したときに、おとり機能が実行された後のマイクロ回路の動作を監視し続けるために攻撃者が電源供給を遮断しない場合は、攻撃が検出されると同時に保護機能が実行されることを必然的に許すことになる。
好適には、ある実施形態では、保護機能は、不揮発性メモリのデータに書き込むことによって、マイクロ回路を無効にする機能である。例えば、保護機能は、上述の「キルカード」機能である。
ある実施形態では、保護機能は、不揮発性メモリの第1のアドレスに所定のデータを書き込むステップを有する。
この結果、マイクロ回路の通常動作の間に、攻撃を検出しない場合にも「キルカード」機能と同一の消費電力の特徴を有するおとり機能を実行することにより、攻撃の効果がなくなる。
ある実施形態では、おとり機能は、不揮発性メモリの第1のアドレスとは異なる第2のアドレスに書き込むステップを有する。
ある実施形態では、おとり機能によって第2のアドレスに書き込むステップの間、保護機能により第1のアドレスに書き込むビットと同一数のビットが書き込まれ、保護機能により第1のアドレスに書き込むアルゴリズムと同一の書き込みアルゴリズムが使用される。
ある実施形態では、第2のアドレスに書き込むおとり機能のステップの間、所定のデータが第2のアドレスに書き込まれる。
ある実施形態では、おとり機能を実行するステップの間、所定のデータと異なるデータが不揮発性メモリの第1のアドレスに書き込まれる。
上述のそれぞれの実施形態では、消費電力に関して保護機能とおとり機能との特徴の類似性を高める。
ある実施形態では、不揮発性メモリに書き込むステップでは、マイクロ回路の通常の動作の間に行われる不揮発性メモリへの他の書き込みステップと異なるアルゴリズムを使用する。
なお、アルゴリズムは、ソフトウェア、ハードウェア、又はメモリのセルが異なる種類のセルであるときに適用されるハードウェアのオプションに関して異なるものにできる。
ある実施形態では、少なくとも一部の、不揮発性メモリに書き込むステップの間、照合データは、使用されない。特にチェックサムは、使用されない。
ある実施形態では、少なくとも一部の、不揮発性メモリに書き込むステップの間、書き込まれたデータは、再読み出されない。
ある実施形態では、少なくとも一部の、不揮発性メモリに書き込むステップの間、書き込みエリアは、消去されない。
これらのそれぞれの対策によって、これらの異なる機能の特徴が異なることなく、書き込みステップの速度が高速化するとともに、「キルカード」機能が終了する前に電源供給を遮断する時間を有する攻撃のリスクが減少される。さらに、いくつかの書き込み機能の実行時間が減少されるので、マイクロ回路の動作は、高速になる。またさらに、おとり機能によるメモリセルの磨耗は、書き込み時間/読み出し時間の数が減少することによって減少する。
ある実施形態では、不揮発性メモリにデータを再書き込みするステップが、データを最初に書き込むステップと同一の方法でマイクロ回路の外部で検知可能な場合は、おとり機能は、書き込みエリアを消去しない。この場合は、書き込み動作を有する保護機能と、第1のサイクルを除いて同一の再書き込み機能を有することができるおとり機能とは、いわゆる「消去」予備段階を除いて同一の特徴を有することができる。
ある実施形態では、書き込みエリアを消去するステップは、消去するステップを有しないそれぞれの書き込みステップで、書き込みエリアを部分的に消去するステップに置き換えられる。
例えば部分的な消去は、メモリセルを完全に放電(又は充電)する時間より短い時間で、書き込み動作が行われたそれぞれのセルを放電(メモリの構造によっては充電)することによって行われる。
ある実施形態では、保護機能は、書き込みエリアを消去するステップを有する。これらの対策によって、書き込みエリアをおとり機能が必ずしも消去しない一方、攻撃を検出したときに保護機能による正確な書き込みが保障されるので、マイクロ回路の動作は高速になる。
ある実施形態では、おとり機能を実行するいくつかのステップは、書き込みエリアを消去するステップを含む。具体的には、この実施形態は、書き込みと再書き込みとの特徴が同一でなく、書き込み動作が行われるセルを消去する予備段階を保護機能が含む場合に適用される。
ある実施形態では、保護機能は、データのセンシティブな項目の少なくとも1つを暗号化するステップを含む。
ある実施形態では、おとり機能は、保護機能を擬似的に実行する機能以外の機能を有しない。
この結果、おとり機能は、有効ではなく、実行段階以外にはマイクロ回路の動作に影響を与えない。例えば、おとり機能は、決して読み出されることがないデータを書き込み、マイクロ回路の動作に利用されないデータを暗号化する。これらの対策によって、おとり機能がマイクロ回路の動作に有用でない場合は、より高速なおとり機能は、書き込まれたデータ消去するステップ及び/又は変更するステップなどを有しない、より高速の書き込みなどを提供できる。
本発明の第2の態様は、攻撃に対してマイクロ回路を保護するデバイスであって、
攻撃が検出されたか否かを判定する手段と、
攻撃が検出された場合に保護機能を実行し、攻撃が検出されなかった場合に保護機能と実質的に同一の方法でマイクロ回路の外部から検知可能な機能であって、保護機能を擬似的に実行するおとり機能を実行するように適当に調整された制御手段と、
を有することを特徴とする。
本発明の第3の態様は、先に簡潔に述べたような本発明に係るデバイスを有する小型又はモバイルの電子的な装置(entity)である。
電子的な装置は、PDA(携帯端末)、USB(ユニバーサル・シリアル・バス)キー、メモリカード、携帯電話、電子的パスポート、又はスマートカード(すなわち、例えば一般的な基準によって認証され、ISO7816規格に従う安全なカード(secure card))などである。
本発明に係るデバイス、機器及び方法の有利な点、目的、実施形態について、ここまでに簡単に説明したので、ここでは繰り返して説明はしない。
本発明に係る他の有利な点、目的、特徴は、本発明を限定することなしに、添付した図面とともに以下で説明される。
本発明に係るデバイスの一実施形態を概略的に示した図である。 本発明に係る方法の第1の実施形態における動作のフローチャートを示した図である。 不揮発性メモリの一般的な書き込みステップを実行するステップのフローチャートを示した図である。 本発明に係る方法の第1の好適な改良の実施形態を実行するステップのフローチャートを示した図である。 本発明に係る方法の第2の実施形態を実行するステップのフローチャートを示した図である。
公知の攻撃が消費電力に基づくものなので、以下の記載では、マイクロ回路の外部から検知可能な物理量として消費電力を例示的に使用している。しかしながら、本発明は、攻撃の検出において変化するこの種の物理量に限定するものではなく、さらには、マイクロ回路との接触、若しくはマイクロ回路との接続又はリモート接続により、マイクロ回路の外部から検知可能な全ての変化する物理量を含むものである。
したがって、本発明に関係する変化する物理量は、放射、若しくは電磁界、抵抗、容量、インダクタンス、電圧、電流、又は消費電力などとすることができる。
攻撃が検出された場合、外部から検知可能な少なくとも1つの所定の物理量を変化させるとともに、マイクロ回路を保護する保護機能を実行する。本発明においては、マイクロ回路の通常の動作の間は、保護機能と実質的に同一の方法でマイクロ回路の外部から検知可能な所定の物理量のそれぞれを変化させることによって、おとり機能が、保護機能を擬似的に実行する。好適には、おとり機能による保護機能の擬似的な動作は、攻撃者が保護機能の実行の検出を利用して攻撃が成功裡に続けることができなくなるまで実行される。したがって、好適には、おとり機能は、マイクロ回路の通常の動作を保護機能が中断するための期間以上の期間を有する。そして、おとり機能は、その後おとり機能は、マイクロ回路の保護が妨げることなく検知できる。
図1は、マイクロ回路カード105を示す。マイクロカード105は、マイクロプロセッサ110と、I/O115と、動作システム125を格納するRAM120と、メモリマトリックス135を有し且つマイクロプロセッサ110に直接制御される不揮発性メモリ130とを有し、これらの素子は、バス155により相互に接続される。
図4を参照して説明される高速書き込みプログラム150は、RAM120又は不揮発性メモリ130の一方に格納されるか、若しくはマイクロプロセッサ110にハードウェアとして構成される。また、プログラム150は、RAM120に格納された動作システム125により直接実行される。
RAM120又は不揮発性メモリ130は、カード105の動作プログラムの命令を格納する。このプログラムは、図2に示す方法の実施形態の特定のステップを実行する。
図2及び5に示すように、本発明に係る方法は、公知の技術的手段を使用して、攻撃が行われたか否かを判定するステップ205をマイクロカード105の動作が有する毎に実行する。
攻撃が検出された場合、保護機能が実行されてカード及び/又はカードのコンテンツを保護する。
本発明では、攻撃が検出されない場合でも、おとり機能が実行され保護機能と実質的に同一の方法でマイクロ回路の外から検知可能な保護機能を擬似的に実行する。
ある実施形態では、おとり機能は、パラメータ又は変数を除き保護機能と同一であり、パラメータや変数のビット数は同一であり、同一数のビットに0を割り当てる。
図2に示すように、ある実施形態では、ステップ210において、不揮発性メモリの第1のアドレスに所定のデータを書き込む。例えば、不揮発性メモリの「キルフラグ」に相当する第1のアドレスに所定のデータを書き込むことにより所定の値「キルフラグ」を設定することになる。
本発明に係るこれらの実施形態では、攻撃が検出されない場合でも、ステップ215において、不揮発性メモリの第1のアドレスに所定のデータを書き込むステップと消費電力に関して同一の特徴を有する機能を実行する。
ある実施形態では、おとり機能のステップが実行されている間、不揮発性メモリは、第1のアドレスと異なる第2のアドレスに書き込まれる。
可能な限り特徴を類似させるため、第2のアドレスに書き込むステップの間、所定のデータと同一ビット数が書き込まれ、所定のデータが書き込まれるときと同一の書き込みプロトコルが使用される。好適には、第2のアドレスに書き込むステップの間、所定のデータが第2のアドレスに書き込まれる。
例えば、「キルカード(アドレス1)」機能を攻撃の検出に使用した場合、攻撃が検出されない場合は、「キルカード(アドレス2)」機能を実行する。相当するコード又は一連の命令は、以下の通りである。
If attack detected {
Complete processing of the current APDU;
Killcard(address1);

Else{
Complete processing of the current APDU;
Killcard(address2);
また、保護機能「キルカード(アドレス1)」は、おとり機能「キルカード(アドレス2)」と相違し、例えば、おとり機能は、本明細書で後に説明するように、再読み出し又は照合データと照合されることなく実行される。
図5に示すように、ある実施形態では、ステップ510において、保護機能は、秘密鍵を使用して不揮発性メモリに格納されるセンシティブオブジェクト(sensitive object)を暗号化して不揮発性メモリに書き込み、そしてセンシティブオブジェクトを消去するなどしてセンシティブオブジェクトに全くアクセスできないように変形する。したがって、データが暗号化されると、マイクロ回路は、もはや通常の状態では機能できない。
本発明に係るこれらの実施形態では、攻撃が検出されない場合でも、ステップ515のマイクロ回路の動作において、それぞれのセンシティブオブジェクトを暗号化して不揮発性メモリに書き込むステップと消費電力に関して同一の特徴を有する機能を実行する。例えば、ステップ515では、マイクロ回路の動作に利用されないデータを暗号化する。
暗号化は、復元することができるので、カードの発行者は、対象又は非対称のキーを使用して、ステップ510において暗号化したセンシティブオブジェクトのそれぞれの項目を復元して、不揮発性メモリを書き換えて再びカードを使用できる。
また、データは、おとり機能によって一部のみ暗号化される。そして、おとり機能は、保護機能と同じ期間持続しない。攻撃者がより長い持続期間の保護機能を検出して、すぐにマイクロ回路の電源供給を中断できる場合に、保護機能によって消去されるべき全てのデータが消去されていなくても、少なくとも通常の動作に必要なデータは消去されているので、マイクロ回路は保護される。
図4を参照して以下に説明するように、この改良したアルゴリズムにおいては、第1及び第2のアドレスの書き込みにおいて、特にチェックサムで、書き込みエリアの消去、再読み出し及び/又は照合データの照合がされないように、キルカード機能を修正する。この目的を達成するために、書き込み機能を実行する前に、カードのマイクロプロセッサは、書き込み機能がアドレス1又はアドレス2に係るものであるか否かを判定する。アドレス2に係るものであるならば、簡単な書き込み動作(図4を参照)を使用する。アドレス1に係るものであるならば完全な書き込み動作(図3を参照)を実行する。なお、処理の違いは、メモリ自体の構造に起因することにもなる。
他の実施形態では、おとり機能を実行するステップにおいて、所定のデータと異なるデータが不揮発性メモリの第1のアドレスに書き込まれ、所定のデータは、保護機能において同一アドレスに書き込まれる。
図3を参照すると、不揮発性メモリのデータ書き込みに一般的に使用するプロトコルは、
書き込みエリア、少なくともデータを書き込まなければならないアドレスを消去するステップである、消去ステップと呼ばれるステップ305と、
書き込まなければならないデータから少なくとも1つのチェックサムを決定するステップ310と、
データと、ステップ310で決定したそれぞれのチェックサムとを書き込むステップ315と、
書き込まれたデータ及びそれぞれのチェックサムを再読み出しするステップ320と、
読み出すデータの対応するそれぞれのチェックサムを決定して、そのチェックサムと読み出したチェックサムとを比較することによってチェックサムの妥当性を判定するステップ325と、
を含む。
なお、書き込みエリアを消去するステップ305は、書き込みエリアの電荷を均一にするステップに含むことができる。
この書き込みプロトコルは、メモリを磨耗し且つ実行時間を遅くする非常に長い書き込みステップを有することは、明らかである。
なお、書き込まれたデータは、再読み出しされないため、アドレス2のチェックサムエラーの検出は重要ではなく、ある実施形態では、その検出により、いかなる作動も生じない。
他の実施形態では、アドレス2のチェックサムエラーの検出は、攻撃されたことを表すものであると考えられる。制限値を超えた暗号化キーの使用回数やカードの認証の数などに関係した、他の表示が検出された場合、攻撃が行われたことを決定してマイクロ回路保護機能が実行される。
図4に示すように、本発明に係る方法の好適な実施形態では、第2のアドレスに書き込み、第1のアドレスにも使用されるプロトコルは、
書き込みエリアを消去するステップであり、ステップ405の間ランダムに又はサイクリックに選択された特定の書き込み操作を保持することができるステップ405と、
少なくとも1つのチェックサムを決定するステップであり、ステップ410の間ランダムに又はサイクリックに選択された特定の書き込み操作を保持することができるステップ410と、
書き込んだデータを再読み出しするステップであり、少なくとも1つのチェックサムの決定を導くデータをステップ420において保持するステップ420と、
読み出したデータの対応するそれぞれのチェックサムの決定を繰り返すことによってチェックサムの妥当性を判定するステップであり、少なくとも1つのチェックサムの決定を導くデータをステップ425において保持するステップ425と、
を有さない。
したがって、好適な実施形態では、不揮発性メモリの第1又は第2のアドレスに書き込むプロトコルは、
データを書き込むステップ415と、
書き込みエリアを消去するステップ405と、ステップ410と、ステップ416と、ステップ420と、ステップ425とからランダム又はサイクリックに選択されるいくつかの書き込み操作と、
をのみ含む。
なお、おとり機能によって行われる書き込みは、書き込み動作と保持した書き込み状態とが同一の特徴を有する場合には、書き込みエリアの消去を全く含まないことが可能である。書き込みエリアを消去することなくおとり機能を繰り返すときに特徴が異なる場合は、おとり機能は、書き込み状態において不揮発性メモリの同一のセルを保持するが、ここでは、本質的に不揮発性メモリのセルの状態の変化に相当する保護機能の異なる特徴を含むことがある。したがって、特徴が異なる場合は、(例えばサイクリックに又はランダムに選択される)おとり機能の少なくとも一部は、書き込みエリアの消去を含む。
また、書き込みエリアの全てを消去する代わりに、書き込みエリアの一部を消去する。書き込みエリアの一部の消去は、メモリセルを完全に放電する(充電する)より短い期間で書き込み機能を行う、それぞれのメモリセルを放電(又は、構造によっては充電)することを含むことができる。
ある実施形態では、保護機能で行う不揮発性メモリの書き込みは、チェックサムを生成し、書き込み、再読み出し、照合することを含む一方、おとり機能で行う不揮発性メモリの書き込みは、これらを含まない。また、以下で説明するように、(サイクリックに又はランダムに選択された)おとり機能で行う書き込み動作のみが、チェックサムを生成し、書き込み、再読み出し、照合することを含む。この2つの場合では、攻撃者が保護機能を認識することを妨げると同時に、メモリの磨耗は減少し、マイクロ回路の通常の動作スピードは増加する。
したがって、書き込みエリアの消去及び/又はチェックサムの使用が行われないため、書き込み終了遅延(write finalization delay)は、従来技術と比べてとても短くなる。これによって、おとり機能を繰り返し実行することによりマイクロ回路の動作が極端に遅くなることを避けることができる。さらにおとり機能により実行される書き込み動作によるメモリの磨耗は、減少する。おとり機能が使用するメモリセルは、書き込みサイクル数で制限される寿命を有しているので、かなり早く劣化する。書き込みデータを再読み出しするステップと書き込みエリアを消去するステップとを取り除くことによって、書き込み時間が短縮されるだけでなく、おとり機能で使用するメモリセルの寿命が延びる。
なお、セルの劣化によりチェックサムを使用して検出可能なエラーが生じる場合は、後のチェックサムを使用して劣化を検出できる。この場合、動作プログラムは、おとり機能が書き込んだセルを他の使用していないセルに切り替えることができる。
なお、本発明は、マイクロ回路で実行されるプログラム、若しくはASIC(特定用途向け集積回路)、プログラム可能な論理回路、又は製造後に再プログラムできる論理ICなどの専用ICの形で実行できる。
本発明に係る好適な実施形態をマイクロ回路カードが実行するとき、消費電力を解析する攻撃者は、攻撃を検出した後にどこでカードが作動するかを判定できない。
ある実施形態では、小型又はモバイルの電子的装置は、本発明に係る保護方法を使用するマイクロ回路保護デバイスを含む。
この電子的装置は、PDA(携帯端末)、USB(ユニバーサル・シリアル・バス)キー、メモリカード、携帯電話、電子的パスポート、又はスマートカード(すなわち、例えば一般的な基準によって認証され、ISO7816規格に従うセキュアカード)などである。
なお、好適には、おとり機能は、保護機能と実質的にはほぼ同一となるようにマイクロ回路の外部から検知可能な保護機能のおとりとして動作する以外の他の効力/効果/機能を有しない。
したがって、おとり機能は、有効ではなく、おとり機能を実行する以外にマイクロ回路の動作に影響しない。おとり機能は、決して読み出されない又は使用されないデータ、若しくはマイクロ回路の動作に利用されない暗号化データなどを書き込む。この好適な特性によって、マイクロ回路の動作に有益でない場合には、おとり機能は、データを消去するステップ及び/又はデータを変更するステップなどを有さない、高速書き込みなどを提供することができる。

Claims (20)

  1. 攻撃に対するマイクロ回路保護方法であって、
    攻撃が検出されたか否かを判定するステップと、
    攻撃が検出された場合に、保護機能を実行するステップと、
    攻撃が検出されなかった場合に、前記保護機能を擬似的に実行し、前記保護機能と実質的に同一の方法で前記マイクロ回路の外部から検知可能なおとり機能を実行するステップと、
    を有することを特徴とするマイクロ回路保護方法。
  2. 前記おとり機能は、前記保護機能の消費電力と実質的に同一の消費電力を有する、請求項1に記載のマイクロ回路保護方法。
  3. 前記保護機能は、不揮発性メモリの第1のアドレスに所定のデータを書き込むステップを有する、請求項2に記載のマイクロ回路保護方法。
  4. 前記おとり機能は、不揮発性メモリの前記第1のアドレスと異なる第2のアドレスに書き込むステップを有する、請求項3に記載のマイクロ回路保護方法。
  5. 前記おとり機能による前記第2のアドレスに書き込む前記ステップの間、前記保護機能により前記第1のアドレスに書き込むビットと同一数のビットが書き込まれ、前記保護機能により前記第1のアドレスに書き込むアルゴリズムと同一の書き込みアルゴリズムが使用される、請求項4に記載のマイクロ回路保護方法。
  6. 不揮発性メモリに書き込む前記ステップは、前記マイクロ回路の通常の動作の間に行われる不揮発性メモリに書き込む他のステップと異なるアルゴリズムを使用する、請求項4に記載のマイクロ回路保護方法。
  7. 不揮発性メモリに書き込む前記ステップの少なくとも1つの間は、照合データは使用されない、請求項4に記載のマイクロ回路保護方法。
  8. 前記保護機能は、不揮発性メモリの第1のアドレスに所定のデータを書き込むステップを有する、請求項1に記載のマイクロ回路保護方法。
  9. 前記おとり機能は、不揮発性メモリの前記第1のアドレスと異なる第2のアドレスに書き込む、請求項8に記載のマイクロ回路保護方法。
  10. 前記おとり機能よる前記第2のアドレスに書き込む前記ステップの間、前記保護機能により前記第1のアドレスに書き込むビットと同一数のビットが書き込まれ、前記保護機能により前記第1のアドレスに書き込むアルゴリズムと同一の書き込みアルゴリズムが使用される、請求項9に記載のマイクロ回路保護方法。
  11. 不揮発性メモリに書き込む前記ステップは、前記マイクロ回路の通常の動作の間に行われる不揮発性メモリに書き込む他のステップと異なるアルゴリズムを使用する、請求項9に記載のマイクロ回路保護方法。
  12. 不揮発性メモリに書き込む前記ステップの少なくとも1つの間は、照合データは使用されない、請求項9に記載のマイクロ回路保護方法。
  13. 不揮発性メモリに書き込む前記ステップの少なくとも1つの間は、前記書き込みデータは再読み出しされない、請求項9に記載のマイクロ回路保護方法。
  14. 不揮発性メモリに書き込む前記ステップの少なくとも1つの間は、前記書き込みエリアを消去するステップを有しない、請求項9に記載のマイクロ回路保護方法。
  15. 不揮発性メモリにデータを再書き込みする前記ステップが前記データの最初の書き込みと同一の方法で前記マイクロ回路の外部から検知可能な場合は、前記おとり機能は、前記書き込みエリアを消去するステップを有しない、請求項14に記載のマイクロ回路保護方法。
  16. 前記保護機能は、前記書き込みエリアを消去する前記ステップを使用する、請求項14に記載のマイクロ回路保護方法。
  17. 前記おとり機能の実行は、前記書き込みエリアを消去する前記ステップを有することがある、請求項16に記載のマイクロ回路保護方法。
  18. 前記保護機能は、データのセンシティブな項目の少なくとも1つを暗号化するステップを有する、請求項1に記載のマイクロ回路保護方法。
  19. 前記おとり機能は、前記保護機能を擬似的に実行する機能以外の機能を有さない、請求項1に記載のマイクロ回路保護方法。
  20. 攻撃に対するマイクロ回路保護デバイスであって、
    攻撃が検出されたか否かを判定する手段と、
    攻撃が検出された場合に保護機能を実行し、攻撃が検出されなかった場合に前記保護機能と実質的に同一の方法で前記マイクロ回路の外部から検知可能な機能であって、前記保護機能を擬似的に実行するおとり機能を実行するように適当に調整された制御手段と、
    を有することを特徴とするマイクロ回路保護方法。
JP2009209465A 2008-09-11 2009-09-10 攻撃に対するマイクロ回路の保護方法及びデバイス Active JP5517535B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0856116 2008-09-11
FR0856116A FR2935823B1 (fr) 2008-09-11 2008-09-11 Procede et dispositif de protection d'un microcircuit contre les attaques.

Publications (2)

Publication Number Publication Date
JP2010068523A true JP2010068523A (ja) 2010-03-25
JP5517535B2 JP5517535B2 (ja) 2014-06-11

Family

ID=40600008

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009209465A Active JP5517535B2 (ja) 2008-09-11 2009-09-10 攻撃に対するマイクロ回路の保護方法及びデバイス

Country Status (6)

Country Link
US (1) US8555390B2 (ja)
EP (1) EP2164031B2 (ja)
JP (1) JP5517535B2 (ja)
DK (1) DK2164031T4 (ja)
ES (1) ES2390638T5 (ja)
FR (1) FR2935823B1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012128860A (ja) * 2010-12-14 2012-07-05 Oberthur Technologies 攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保
JP2014216659A (ja) * 2013-04-22 2014-11-17 三菱電機株式会社 耐タンパメモリ方式
JP2016004371A (ja) * 2014-06-16 2016-01-12 大日本印刷株式会社 Icチップ、異常検知処理方法、及びプログラム

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8819825B2 (en) 2006-05-31 2014-08-26 The Trustees Of Columbia University In The City Of New York Systems, methods, and media for generating bait information for trap-based defenses
US9009829B2 (en) 2007-06-12 2015-04-14 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for baiting inside attackers
US8769684B2 (en) * 2008-12-02 2014-07-01 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for masquerade attack detection by monitoring computer user behavior
US8332945B2 (en) * 2009-06-05 2012-12-11 The Regents Of The University Of Michigan System and method for detecting energy consumption anomalies and mobile malware variants
US8528091B2 (en) * 2009-12-31 2013-09-03 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for detecting covert malware
FR2968807B1 (fr) * 2010-12-14 2013-09-27 Oberthur Technologies Blocage d'une carte a microcircuit par combinaison entre un signal de controle et un signal essentiel au fonctionnement de cette carte
US9558034B2 (en) 2011-07-19 2017-01-31 Elwha Llc Entitlement vector for managing resource allocation
US9575903B2 (en) * 2011-08-04 2017-02-21 Elwha Llc Security perimeter
US8955111B2 (en) 2011-09-24 2015-02-10 Elwha Llc Instruction set adapted for security risk monitoring
US9298918B2 (en) 2011-11-30 2016-03-29 Elwha Llc Taint injection and tracking
US9471373B2 (en) 2011-09-24 2016-10-18 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US9465657B2 (en) 2011-07-19 2016-10-11 Elwha Llc Entitlement vector for library usage in managing resource allocation and scheduling based on usage and priority
US8943313B2 (en) 2011-07-19 2015-01-27 Elwha Llc Fine-grained security in federated data sets
US9798873B2 (en) 2011-08-04 2017-10-24 Elwha Llc Processor operable to ensure code integrity
US9460290B2 (en) 2011-07-19 2016-10-04 Elwha Llc Conditional security response using taint vector monitoring
US9098608B2 (en) 2011-10-28 2015-08-04 Elwha Llc Processor configured to allocate resources using an entitlement vector
US9443085B2 (en) 2011-07-19 2016-09-13 Elwha Llc Intrusion detection using taint accumulation
US9170843B2 (en) 2011-09-24 2015-10-27 Elwha Llc Data handling apparatus adapted for scheduling operations according to resource allocation based on entitlement
FR3011650B1 (fr) * 2013-10-09 2015-12-11 Oberthur Technologies Procede et dispositif de realisation de fonction par un microcircuit
FR3011657B1 (fr) * 2013-10-09 2015-12-11 Oberthur Technologies Procede mis en œuvre par un processeur et entite electronique associee
FR3011658B1 (fr) * 2013-10-09 2017-02-10 Oberthur Technologies Procede mis en oeuvre dans un microcircuit et dispositif associe
FR3011656B1 (fr) * 2013-10-09 2015-12-25 Oberthur Technologies Procede et dispositif de realisation de fonction par un microcircuit
FR3045184B1 (fr) * 2015-12-15 2018-07-20 Idemia France Procede d’ecriture dans une memoire non-volatile d’une entite electronique et entite electronique associee
FR3045862B1 (fr) * 2015-12-17 2018-02-02 Oberthur Technologies Procede d'ecriture dans une memoire non-volatile, procede de lecture dans une memoire non-volatile et procede mis en œuvre dans une entite electronique
US11194915B2 (en) 2017-04-14 2021-12-07 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for testing insider threat detection systems
US11507847B2 (en) 2019-07-25 2022-11-22 Raytheon Company Gene expression programming
US11321462B2 (en) 2018-04-10 2022-05-03 Raytheon Company Device behavior anomaly detection
US11436537B2 (en) 2018-03-09 2022-09-06 Raytheon Company Machine learning technique selection and improvement
US11381599B2 (en) * 2018-04-10 2022-07-05 Raytheon Company Cyber chaff using spatial voting
WO2019199777A1 (en) 2018-04-10 2019-10-17 Raytheon Company Encryption using spatial voting
US11341235B2 (en) 2019-02-21 2022-05-24 Raytheon Company Anomaly detection with adaptive auto grouping
CN113569237B (zh) * 2021-07-29 2024-04-02 武汉天喻信息产业股份有限公司 攻击防护方法、装置、设备及可读存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533123A (en) * 1994-06-28 1996-07-02 National Semiconductor Corporation Programmable distributed personal security
JP2001251294A (ja) * 2000-01-31 2001-09-14 Oberthur Card Systems Sa 2つの電子的エンティティ間における暗号プロトコル実行方法
JP2002334317A (ja) * 2001-05-09 2002-11-22 Hitachi Ltd 情報処理装置
JP2004310752A (ja) * 2003-03-12 2004-11-04 Sharp Corp データ処理装置における誤り検出
WO2005027403A1 (ja) * 2003-09-11 2005-03-24 Renesas Technology Corp. 情報処理装置
JP2005223477A (ja) * 2004-02-04 2005-08-18 Renesas Technology Corp 耐タンパー情報処理装置
JP2007174024A (ja) * 2005-12-20 2007-07-05 Sony Corp 暗号処理装置
JP2007325219A (ja) * 2006-06-05 2007-12-13 Sony Corp 暗号処理システムおよび暗号処理装置
JP2008510242A (ja) * 2004-08-17 2008-04-03 オベルトゥル カード システムズ ソシエテ アノニム データ処理の方法及び装置
JP2009277085A (ja) * 2008-05-15 2009-11-26 Nippon Telegr & Teleph Corp <Ntt> 情報削除機能付きlsi

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2600183B1 (fr) * 1986-06-13 1990-10-12 Eurotechnique Sa Circuit integre pour la memorisation et le traitement d'informations de maniere confidentielle comportant un dispositif anti-fraude
US20020046351A1 (en) * 2000-09-29 2002-04-18 Keisuke Takemori Intrusion preventing system
FR2849232B1 (fr) * 2002-12-24 2005-02-25 Trusted Logic Procede pour la securisation des systemes informatiques incorporant un module d'interpretation de code
KR100706787B1 (ko) * 2004-11-29 2007-04-11 삼성전자주식회사 향상된 보안 기능을 갖는 스마트 카드
FR2878633A1 (fr) * 2005-11-25 2006-06-02 Samsung Electronics Co Ltd Carte a microprocesseur, procede et produit-programme informatique pour utiliser des courants fictifs pour masquer des donnees
EP1912148A1 (en) * 2006-10-09 2008-04-16 Axalto S.A. Protection against side channel attacks with an integrity check
US7945792B2 (en) * 2007-10-17 2011-05-17 Spansion Llc Tamper reactive memory device to secure data from tamper attacks

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5533123A (en) * 1994-06-28 1996-07-02 National Semiconductor Corporation Programmable distributed personal security
JP2001251294A (ja) * 2000-01-31 2001-09-14 Oberthur Card Systems Sa 2つの電子的エンティティ間における暗号プロトコル実行方法
JP2002334317A (ja) * 2001-05-09 2002-11-22 Hitachi Ltd 情報処理装置
JP2004310752A (ja) * 2003-03-12 2004-11-04 Sharp Corp データ処理装置における誤り検出
WO2005027403A1 (ja) * 2003-09-11 2005-03-24 Renesas Technology Corp. 情報処理装置
JP2005223477A (ja) * 2004-02-04 2005-08-18 Renesas Technology Corp 耐タンパー情報処理装置
JP2008510242A (ja) * 2004-08-17 2008-04-03 オベルトゥル カード システムズ ソシエテ アノニム データ処理の方法及び装置
JP2007174024A (ja) * 2005-12-20 2007-07-05 Sony Corp 暗号処理装置
JP2007325219A (ja) * 2006-06-05 2007-12-13 Sony Corp 暗号処理システムおよび暗号処理装置
JP2009277085A (ja) * 2008-05-15 2009-11-26 Nippon Telegr & Teleph Corp <Ntt> 情報削除機能付きlsi

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"第9回 エキスパートセキュリティ ノートパソコンのセキュリティを高めるTPMチップを活用する", PC JAPAN, vol. 第12巻 第2号, JPN6013048183, 1 February 2007 (2007-02-01), JP, pages 128 - 131, ISSN: 0002643562 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012128860A (ja) * 2010-12-14 2012-07-05 Oberthur Technologies 攻撃の場合のマイクロ回路カードの指令手段の電源の安全確保
JP2014216659A (ja) * 2013-04-22 2014-11-17 三菱電機株式会社 耐タンパメモリ方式
JP2016004371A (ja) * 2014-06-16 2016-01-12 大日本印刷株式会社 Icチップ、異常検知処理方法、及びプログラム

Also Published As

Publication number Publication date
EP2164031A1 (fr) 2010-03-17
FR2935823B1 (fr) 2010-10-01
US20100064370A1 (en) 2010-03-11
US8555390B2 (en) 2013-10-08
ES2390638T3 (es) 2012-11-14
DK2164031T4 (en) 2017-10-16
EP2164031B1 (fr) 2012-07-25
EP2164031B2 (fr) 2017-06-28
FR2935823A1 (fr) 2010-03-12
ES2390638T5 (es) 2017-11-14
JP5517535B2 (ja) 2014-06-11
DK2164031T3 (da) 2012-10-22

Similar Documents

Publication Publication Date Title
JP5517535B2 (ja) 攻撃に対するマイクロ回路の保護方法及びデバイス
KR101197556B1 (ko) 불 휘발성 메모리의 프로그램 동작을 검증하는 장치 및방법, 그리고 그 장치를 포함한 메모리 카드
JP6373888B2 (ja) 情報処理装置及び制御方法
US20080235796A1 (en) Circuit Arrangement with Non-Volatile Memory Module and Method for Registering Attacks on Said Non-Volatile Memory Switch
US20050251708A1 (en) Microprocessor comprising error detection means protected against an attack by error injection
US8250288B2 (en) Flash memory storage system and controller and data protection method thereof
JP4822231B2 (ja) 長い摂動による故障の検出
US20140020095A1 (en) Data processing device and a secure memory device including the same
CN102968392A (zh) 防止存储器转储的微处理器
KR102515381B1 (ko) 반복적인 사이드 채널 공격 대응책
US20200012783A1 (en) Tracking events of interest to mitigate attacks
JP2018169694A (ja) 故障利用攻撃に対しての耐タンパー性を持たせたセキュリティデバイス
US11487441B2 (en) Managing tamper detections in secure memory devices
JP2007004456A (ja) 携帯可能電子装置及び携帯可能電子装置のデータ出力方法
Leng Smart card applications and security
EP1435558A1 (en) On-device random number generator
RU2469384C2 (ru) Способ маскировки перехода к концу срока службы электронного устройства и устройство, содержащее соответствующий контрольный модуль
CN105763312A (zh) 一种密码芯片光故障注入系统和攻击方法
US9483641B2 (en) Method and device for the performance of a function by a microcircuit
JP2018195329A (ja) 情報処理装置
TWI582702B (zh) 電子元件及其保護方法、智慧卡、電腦程式及紀錄媒體
JP6396119B2 (ja) Icモジュール、icカード、及びicカードの製造方法
US20080187133A1 (en) Encryption code processing circuit, operation device and electronic apparatus
JP5724387B2 (ja) 携帯装置及び動的データの格納位置変更方法
JP2009015651A (ja) 情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120817

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140304

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140401

R150 Certificate of patent or registration of utility model

Ref document number: 5517535

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250