JP2009533741A - 半導体デバイス識別子の生成方法および半導体デバイス - Google Patents

半導体デバイス識別子の生成方法および半導体デバイス Download PDF

Info

Publication number
JP2009533741A
JP2009533741A JP2009504873A JP2009504873A JP2009533741A JP 2009533741 A JP2009533741 A JP 2009533741A JP 2009504873 A JP2009504873 A JP 2009504873A JP 2009504873 A JP2009504873 A JP 2009504873A JP 2009533741 A JP2009533741 A JP 2009533741A
Authority
JP
Japan
Prior art keywords
key
identifier
semiconductor device
memory
bit value
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
JP2009504873A
Other languages
English (en)
Other versions
JP4913861B2 (ja
Inventor
ハー ウェー サルタース ルーロフ
エス ファン フェーン ルトガー
ペー セー ハイリガース マヌエル
シー クルセマン アブラハム
テー ツイルス ピム
イェー シュレイェン ヘールト
スコリック ボリス
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.)
NXP BV
Original Assignee
NXP BV
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
Application filed by NXP BV filed Critical NXP BV
Publication of JP2009533741A publication Critical patent/JP2009533741A/ja
Application granted granted Critical
Publication of JP4913861B2 publication Critical patent/JP4913861B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L21/00Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
    • H01L21/02Manufacture or treatment of semiconductor devices or of parts thereof
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/20Initialising; Data preset; Chip identification
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0407Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals on power on
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/4402Internal storage of test result, quality data, chip identification, repair information
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5002Characteristic
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Manufacturing & Machinery (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Engineering (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Dram (AREA)
  • Static Random-Access Memory (AREA)
  • Storage Device Security (AREA)

Abstract

複数のメモリセルを有する揮発性メモリ(610)を具える半導体デバイス(600)から識別子を生成する方法(100)を開示する。この方法は、メモリセルの微細構造の変化に由来する複数の疑似ランダムビット値をメモリセルに呈示させるステップ(110)と、複数のメモリセルの少なくともサブセットからビット値を読み出すステップ(120)と、読み出したビット値から識別子を生成するステップとを含む。この方法(100)は、十分な量の揮発性メモリのセルが製造プロセスパラメータに内在する変化に支配されるビット値を示し得るという認識に基づいており、これは例えば、SRAMに対しては起動時、又はDRAMに対してはリフレッシュのない期間後に発生する。これは、例えば前記揮発性メモリ(610)を具える半導体デバイス(600)を識別すること、又はエラー訂正符号語を前記識別子ビット位置にマッピングすることによる安全キーの生成など、幾つかの識別目的のために使用できる。

Description

本発明は、複数のメモリセルを有する揮発性メモリを具える半導体デバイスから、識別子を生成する方法に関するものである。
本発明はまた、このような半導体デバイスを識別する方法に関するものである。
本発明は更に、このような半導体デバイスに関するものである。
様々な理由により、集積回路(IC)のような半導体デバイスを識別できることは、特にパッケージングしたあとに重要である。例えばその識別は、パッケージングの前、例えばICが依然としてウェハにある間に、得られたテスト結果を追跡するために必要であるかもしれない。あるいは現場の返品(つまり顧客による返品)の場合に、欠陥の可能性がある他のICを現場で修正できるように、又は返品された欠陥ICの生産プロセスを評価して将来のIC生産プロセスを改良できるように、ICを特定のバッチについて追跡することが重要となるかもしれない。また、独自のIC識別子(ID)を安全性目的のために使用することもできる。
ICのための識別子を生成する幾つかの知られた方法が存在する。例えばICは、パッケージングのあとラッカーで処理をし、その中にIDを刻印することができる。しかしこれはかなりコストのかかるプロセスである。また、識別子を専用のメモリ位置に記憶することもできる。この方法は、このためにメモリリソースを犠牲または追加しなければならない欠点を有する。
別の識別技術は、識別目的のために固有のデバイス特性の利用を目標としている。このような識別方法の例が、”IC Identification Circuit Using Device Mismatch” by Lofstrom et al. in Proceedings of the ISSCC, IEEE Feb. 9 2000, pp. 372−373に開示されている。この論文において、アドレス可能なMOSFETのアレイを有するICが開示されている。MOSFETのミスマッチによって、これらのデバイスのドレイン電流はランダムに異なるので、アレイにより駆動される負荷にランダム電圧署名を発生させることができる。これらの電圧は、単一のICに対して再現可能であるため、これらの電圧署名はそのICのための識別子として働くことができる。欠点は、この方法はIC上に追加の専用ハードウェアを必要とし、ICのコストを増加させることである。
このような方法の別の例が米国特許出願公開第2004/0162959号に開示されている。この出願公開で開示されている発明は、メモリを有する半導体デバイスに関するものであり、メモリが欠陥メモリブロックを有する傾向がある事実を利用している。その欠陥メモリブロックの位置はおおよそランダムであるため、半導体デバイスは、メモリ内の欠陥ブロックの位置に少なくとも部分的に基づく識別子によって特定できる。この方法の欠点は、識別子を決定するためにメモリ全体を調査しなければならないことであり、これは特に大きなメモリにとって、時間とコストのかかるプロセスである。
米国特許出願公開第2006/0063286号には、静的ランダムアクセスメモリ(SRAM)の一群のセルの固有の起動値のような、プロセス変化に敏感であるが、時間に不変な値を有する電気的パラメータを有する多くの半導体デバイス回路素子から1つを選択することに基づく、半導体デバイスのための識別子を提供するための方法が開示されている。半導体デバイスのための識別子として、選択した回路素子のパラメータ値の時間不変性を利用する。プロセス変化のランダム性によって、この識別子が一意であることが保証される。
しかし、SRAMセルの一群から起動値を導出することは、全てのSRAMセルが固有の起動値を有しているわけではないという問題があることが本発明の発明者によって発見された。その結果、固有の起動値を有するセルを信頼性をもって識別できるようにSRAM起動の挙動を慎重に評価する必要があるため、SRAM起動から識別子を導出することは時間のかかる実行となり、十分な信頼性を保証できるためには、典型的には多数回SRAM起動が必要になる。
本発明の目的は、冒頭の段落に記載された、半導体デバイスから識別子を生成する、もっと手頃な方法を提供しようとすることである。
本発明の更なる目的は、本発明の方法を適用可能な半導体デバイスを提供しようとすることである。
本発明の1つの態様では、複数のメモリセルを有する揮発性メモリを具える半導体デバイスから識別子を生成する方法を提供し、その方法は、
(a)前記メモリセルに、メモリセルの微細構造の変化に由来する複数の疑似ランダムビット値を呈示させるステップと、
(b)前記メモリセルの少なくともサブセットからビット値を読み出すステップと、
(c)その読み出したビット値から識別子を生成するステップと、
を含む。
本発明は、静的ランダムアクセスメモリ(SRAM)のような揮発性メモリの電源を入れたとき、またはダイナミックランダムアクセスメモリ(DRAM)から電荷の放電を規定の期間許容したとき、少なくともその幾つかのメモリセルは、優先的に特定のビット値を示し、例えば起動時に優先的なビット値を示し、規定の期間の間、所定のビット値を保持するという認識に基づいている。この挙動は、各独立したメモリセル、したがってそれぞれのメモリに対して異なり、セルの微細構造の相違に起因している。結果として、メモリセルのサブセットから疑似ランダムビット値、つまり、一回の読み出しステップにてランダムに見えるが、セルの微細構造との相関によって少なくとも或る範囲において再現可能であるビット値を読み出すことによって、これらの値を識別子として使用し、メモリが属する半導体デバイスに割り当てることができる。
しかし、本発明の範囲内において、疑似ランダムビット値が一回の読み出しステップにおいてランダム値であるように見えないばかりか、続く読み出しステップとの間である程度の変化を示す可能性も指摘されている。例えば、少なくとも複数のメモリセルのサブセットからビット値を読み出すステップは、SRAMからビット値を読み出すステップを含み、本発明の方法のステップ(a)が再び実行された場合には、少なくともビット値の幾つかは異なる起動値を示す可能性がある。言い換えると、読み出されたビット値の幾つかは、固有の起動値を有さず、単に優先的な起動値を有するだけであり、つまり、セルはSRAMの異なる起動時において異なるビット値を取るが、その相補値よりも特定の起動値をより頻繁に取る可能性がある。
メモリの電源を投入することによって疑似ランダムビット値を生成する場合、メモリの全てのセルが優先ビット起動挙動を示すわけではないが、つまり、幾つかのセルは、多少のランダム起動挙動を示すが、異なる起動時に同一のメモリから読み出されたビット値における相違は、異なるメモリから読み出されたビット値における相違より極めて小さいことが明らかとなった。これは、この方法でメモリから読み出されたビット値を識別目的で使用できることを実証している。
言い換えると、異なるメモリ間の起動値の変化よりも同一のメモリ間の起動値の変化の方が極めて小さく、メモリセル選択の起動値におけるある程度の変化は許容できるため、本発明は、US2006/0063286A1の方法に対して著しい改良法を提供する。この認識は、真に固有の起動値を有するSRAMにおけるこれらのセルをもはや識別する必要はないため、US2006/0063286A1の場合よりも、識別目的に使用するメモリセルのサブセットの選択を容易にする。識別目的のための読み出しビットの選択を利用する場合に必要な全ては、後により詳細に説明するように、このようなメモリから読み出されたビット値とデータベースからの識別子との差が、規定の閾値を超えないか検査することである。
メモリセルの起動値を使用する重要な利点は、サブセットのサイズを小さいままにできることであり、例えば固有デバイスの数が〜10オーダーの場合、256メモリセルのサブセットサイズは、それらが属するメモリ及び半導体デバイスを上手に識別するのに十分である。別の利点は、識別子を記憶するためのメモリリソースを確保する必要がないことである。
ほとんどの識別目的に対しては、一回の疑似ランダムビット値生成ステップから読み出されたビット値は十分に信頼できるが、この方法は更にステップ(a)及び(b)の繰り返しを含むことができ、この繰り返しは異なる起動電圧及び/又は異なる温度で行うことができ、読み出されたビット値を利用するステップは、様々な繰り返されたステップ(b)から読み出されたビット値の組み合わせを使用する。
疑似ランダムビット値の生成、例えば、メモリの起動、及び、続く多くのデータ読み込みを多数回繰り返すことにより、どのメモリセルが異なる起動時に同一のビット値を支配的に取るかを確定することができ、これらのセルが、起動時にこのビット値を示すものとして特定できる。さらに、メモリセルは、供給された起動電圧及び動作温度のような異なる動作条件では異なる起動特性を有する可能性もある。これらの異なる特性を考慮することによって、更に信頼性のある識別子を得ることができる。
得られた識別子はデータベースに記憶することができる。これにより後日、半導体デバイスの識別が可能となる。
他の実施例によれば、この方法は更に、
識別子のデータベースをロードするステップと、
前記読み出されたビット値と複数の半導体デバイスの対応する識別子とを比較するステップと、
前記読み出されたビット値と最も適合する識別子を選択するステップと、
を含む。
読み出されたビット値と識別子のデータベース内の識別子との間のベストマッチを発見するステップは、読み出されたビット値とデータベースからの識別子との相違を、ビットドリフト値又はハミング距離として決定するステップを含んでもよい。読み出されたビット値と識別子が半導体デバイスの明確な識別子か否かを決定するために、この相違を規定の閾値と比較することができる。こうして、認識すべきデバイスのメモリからビット値のセットを読み出し、それと、以前に読み出されたビット値に基づく識別子とを比較することによって、半導体デバイスを容易に識別することが可能となる。
本発明の更なる実施例により、識別子に基づいた秘密キーを生成することが可能となる。半導体デバイスは、その動作のためにこのようなキーを必要とする機能を具えることができる。例えば、半導体デバイスは、安全通信を符号化又は復号化するためにキーを使用することができるし、認証目的のためにキーを使用し、例えば、半導体デバイスの保護部分へのアクセスを許可する場合に、このキーを外界から読み出されたキーと比較することができる。
この目的のために、この方法は更に、
各符号語が更なる複数の情報シンボルからなる、一群の符号語を提供するステップと、
その一群の符号語から1つ以上の符号語を選択するステップと、
その一つ以上の符号語の情報シンボルからキーを生成するステップと、
そのキーを出力で使用可能にするステップと、
を具え、前記識別子を生成するステップは、
前記1つ以上の符号語のそれぞれのビット値を、対応する識別子のビット値が読み出されるそれぞれのメモリセルにマッピングするマッピング関数を生成するステップと、
そのマッピング関数を半導体デバイスに記憶するステップと、
を含む。
こうして、揮発性メモリから1つ以上の符号語を後の段階で読み出すことができ、キーは読み出された符号語の情報シンボルから再構成できるため、1つの符号語のビット、又は単一の符号語が秘密キーのための十分な情報シンボルを提供しない場合には複数の符号語のビットを識別子にマッピングし、1つ以上の符号語の情報シンボルからキーを形成し、マッピング情報を記憶することによって、揮発性メモリからの識別子をキー生成器として使用することができる。例えばデバイスの製造者にキーを開示するために、このキーは半導体デバイスの出力で使用可能にすることができる。キーは利用可能とする前に変更することができ、例えば、生成された秘密キーから公開キーを抽出し、この公開キーのみを使用可能にすることができる。
半導体デバイスから不正なキーの読み出しを防止するために、半導体デバイスはキーを出力で使用可能にする手段を具え、この手段はキーを出力で使用可能にしたあとに、無効化又は破壊できるようにするのが好ましい。このような手段は、例えば符号語選択又は符号化手段を具えることができる。
マッピング関数は多くの方法によって実装できる。それぞれの選択したメモリセルに対するポインタのリストを、半導体デバイスの不揮発性メモリ、例えば消去可能なリードオンリーメモリに形成し、保存することができる。代わりに、ビット表を形成することによって実装することも可能であり、各ビット表セルは、揮発性メモリの少なくともサブセットのメモリセルに対応し、各ビット表セルに、マッピング関数内の対応するメモリセルの存在を示すビット値を与える。マッピングされた情報シンボルの値は、対応するメモリセルのビット値と起動ビット値の積とすることができる。
マッピング関数は、メモリセルのセットに対する置換表として実装することもできる。例えば、マッピング関数を上手く読み出すのに必要なランダム順を定義する情報を使用して、マッピング関数はランダムな順序で1つ以上のビット値をマッピングすることができる。このような情報もまた、半導体デバイス上に記憶することができる。
本発明の方法の別の実施例では、そのキー依存機能の動作を許容するために、半導体デバイス内でキーを再生成することができる。この実施例によると、この方法は更に、
マッピング関数を使用して識別子から1つ以上の符号語を読み出すステップと、
1つ以上の読み出した符号語をエラー訂正するステップと、
1つ以上のエラー訂正符号語の情報シンボルからキーを生成するステップと、
そのキーを使用する機能を動作させるステップと、
を含む。
典型的には、符号語は、BCH符号、リードソロモン符号、ハミング符号などのような、エラー訂正符号語の符号表からの符号語である。エラー訂正符号語の利用は、異なる起動ステップにおいて読み出された起動値の変化を、符号語のパリティビットを用いて エラー訂正ステップにおいて訂正できる利点を有する。こうして、キーの特性は、半導体デバイスの揮発性メモリに固有の特性に基づいているため、キーを偽造できない半導体デバイスのキー依存機能を動作させる方法が得られる。
キーを構成する符号語は、不正なキーへのアクセスの危険性を最小化するための比較ステップのあと、メモリから削除することが好ましい。
本発明の他の態様によると、
複数のメモリセルを有する揮発性メモリと、
複数のメモリセルの少なくともサブセットから、メモリセルの微細構造の変化に由来するそれぞれの疑似ランダムビット値からなる識別子を読み出すように構成されたコントローラと、
を具える半導体デバイスを提供する。このような半導体デバイスは、外部の識別子生成要求信号、例えば、自動試験装置又はコンピュータに応答し、本発明の方法にしたがって識別子を生成することが可能となる。
識別子が識別目的に使用される場合には、半導体デバイスは更に揮発性メモリに結合した出力を具えることができ、コントローラは出力にそれぞれのビット値を提供するように設定される。これにより、生成された識別子への容易なアクセスが可能となる。半導体デバイスは、このような信号を処理するためのバウンダリスキャン(IEEE 1149.1又はIEEE 1500)準拠の試験アクセスポート(TAP)コントローラを具えてもよく、メモリコントローラがこれに対して応答する。これは、利用可能なTAP、例えば、識別子生成要求信号と読み出したビット値との通信のための試験データ入力(test data in,TDI)及び試験データ出力(test data out,TDO)のピンを使用することができる。
メモリコントローラは更に、サブセットのサイズを記憶するためのプログラミング可能な記憶手段を具えることもできる。これにより、サブセットサイズの動的な設定が可能となり、これは半導体デバイスのバッチがどの程度大きくなるのか分からない場合に有利となりうる。
識別子は、半導体デバイスへのアクセスの権限を与えるためのキーを生成する目的で使用できる。この目的のために、半導体デバイスは、更に、
各符号語がさらに複数の情報シンボルからなる一群の符号語の1つ以上の符号語の情報シンボルからキーを生成するための出力と、
符号語のビットを識別子のそれぞれのビット値へマッピングするためのマッピング関数を生成するための手段と、
マッピング関数を記憶するための不揮発性メモリと、
キーを出力の送る通信手段であって、キーがすでに生成されている場合には無効化される通信手段と、
他のキーを受信するための入力と、
マッピング関数を使用して識別子からキーを抽出する抽出手段と、
前記キーを前記他のキーと比較するための比較器を具え、半導体デバイスの少なくとも一部へのアクセスを許可する為の許可手段と、
を具える。
この半導体デバイスは、半導体デバイスの少なくとも一部へのアクセスを許可するキーが半導体デバイスの揮発性メモリの固有の特性に基づいているという事実によって不正使用できない認可機構の利益を有する。半導体デバイスがマッピング関数も含めてコピーされたとしても、コピーされた揮発性メモリは異なる起動挙動を示し、選択した1つ以上の符号語を再生できないため、そのコピーは機能しない。
本発明をいくつかの例について添付の図面を参照してより詳細に説明するが、本発明はこれらの例に限定されない。
図面は単なる模式図に過ぎず、縮尺どおりに描かれてはいないことを理解されたい。図面全体を通して、同一又は類似の部分を示すために同一の参照番号が使用されていることも理解されたい。
SRAMのような複数のメモリセルを有する揮発性メモリを有する半導体デバイスに、識別子を割り当てる方法の実施例を図1に示す。本出願との関連で、メモリセルは単位データ要素、例えばビットを記憶するように配置されている。SRAM型の揮発性メモリ、つまり起動時に疑似ランダムビットパターンを示すメモリに対して、方法100をまず説明する。第1のステップ110において、半導体デバイスのメモリは規定の動作条件、つまりメモリセルがそれぞれの疑似ランダムビットを示すことができる規定の起動電圧V及び規定の温度Tの下で電源が入力される。揮発性メモリは、どのような情報も含まない、つまりほとんど電荷を含まない状態から電源を投入されることは明らかである。
後により詳細に示すように、事前に予測できないが、かなりの程度再現可能であるため、ビット値は疑似ランダムである。ビット値の再現性とランダム性は各メモリセルが、メモリセル間の製造パラメータの潜在的な変化に起因する固有の挙動を示すことに由来している。言い換えると、各セルは固有の微細構造を有し、そのためセルはSRAM型メモリセルに対しては異なる起動挙動などの異なる挙動を有する。挙動におけるこの相違は、本発明において有効に利用されている。
起動電圧の値は、メモリのトランジスタの閾値電圧を超えるように選ばれる。起動電圧Vの実際の適切な値は揮発性メモリが実現される技術に依存し、例えば、CMOS12技術において開発されたメモリに対しては、0.7Vから1.5Vの範囲のどの値でも適切であるが、例えば、他の半導体技術の場合にはこの範囲外の値も使用できる。
ステップ110は、識別子生成要求信号、つまり半導体デバイスをトリガして本発明の方法の実行を開始させる信号によって開始できる。
次のステップ120において、メモリの少なくともサブセットに記憶されたデータを読み出す。メモリ全体からのデータの読み出しは、特にメモリが大きなサイズ、例えば数メガビットの時には極めて多大な時間を必要とするため、メモリ全体ではなくメモリの一部からのデータの取得が好ましい。さらに、揮発性メモリからビット値を読み出すために使用される幾つかの装置は、制限されたデータ容量に対処できるのみであるから、メモリ全体の読み出しを阻止する。
ステップ125において、更なる測定が要求されたか決定する。異なる読み出しステップ、例えば、異なる温度、異なる起動電圧又はこれらの異なる条件の組み合わせで行われるし、異なるSRAM型メモリ起動からビット値の異なるセットを読み出すことができ、各起動ステップとデータ読み出しステップは、様々な起動間の揮発性メモリの選択したサブセットに対する起動ビット値の変化を検出できるように、固定されたT及びVで何度も繰り返される。これにより、例えば、サブセットにおける各メモリセルの起動挙動のランダム性、例えば、セルが起動時に特定のビット値を取る強い傾向があるかどうかを発見できる。多数の起動及びデータ読みだしを行うか否かの決定は、ステップ125においてなされ、T及び/又はVをそのあとの追加ステップ130において変更できる。
このようなデータ読みだしからの多数のデータセットが存在する場合(これはステップ135において確認される)、これらのデータセットは、ステップ140において、例えばデータセットを平均化することによって組み合わせることができる。これについて以下により詳細に説明する。読み出されたデータは、ステップ140において組み合わされたデータにでき、ステップ150において識別子として半導体デバイスに割り当てられ、ステップ160において適切なデータベースに記憶される。識別子生成のために使用される揮発性メモリのサブセットサイズは、識別子のサイズがデータベースに記憶するのに適したサイズに選択し、例えば過剰なデータベースサイズとならないようにすることができる。
方法100は、VEQTOR12と呼ばれる半導体デバイスのバッチに対して試験され、これらのデバイスは、CMOS12プロセスの開発、認定及び監視のために組織内で出願人に使用される手段である。VEQTOR12は、揮発性メモリの実施例としてSRAMを具えている。メモリの電源が切られたときに揮発性メモリの内容は消去されるため、起動された揮発性メモリのメモリセルにおけるビット値は、起動プロセスの結果であることを強調しておく。そのビット値は、つまり、メモリセルにおいて記憶されたビット値は、セルが論理「0」又は「1」のいずれか一方を示す傾向がない場合にランダムに生成されるか、セルが論理「0」又は「1」のいずれか一方を示す傾向が在る場合に予測可能な値を有するかのどちらかである。言い換えると、メモリセル内のビット値は、揮発性メモリの起動によって生成される。
特定のビット値の想定は、SRAMセルのインバータ対におけるインバータは製造変化のために完全に同一ではないという事実に起因している。その結果として、セルの相補的な半部が充電状態に到達するときに、一方の半部がこれらの変化のために勝る傾向にある。
図2は、V=1.2V及びT=25℃でのVEQTOR12デバイスに対してなされた一回の起動及びデータ読み出しステップの結果を与えている。256ビットのサイズ(16ビットの16ベクトル)を有するメモリのサブセットからのデータ読み出し結果が図示されている。この評価において、サブセットの全サイズは2848ビットである(図3はその一部を示す)。サブセットサイズは、評価において信頼できる統計を得るように選ばれたことを強調しておく。識別目的のために、ずっと小さいサブセットを使用することができ、例えば、数百ビットのオーダーのサブセットは、数千万のデバイスを識別するのに十分な大きさである。
Figure 2009533741
図3は、V=0.8V,V=1.2V,T=−20℃,T=25℃,T=80℃の全ての組み合わせで行われた計42回の起動ステップと、次のデータ読み出しステップの結果を示し、ここでは7つの独立した起動と次のデータ読み込みがT及びVの各組み合わせに対して行われた。図3において、小数の値は、全42回の測定に亘る対応するメモリ位置から読み出されたビットの平均値を表している。表1は100を超えるVEQTOR12デバイスバッチからランダムに選択したVEQTOR12(IC18)に対するこれらの測定の結果をまとめている。これは、選択したサブセットにおける十分な数のメモリ位置が、起動時に同一のビット値を取ることを示しており、読み出されたデータを識別子又は署名として使用するための基盤を提供している。
100を超えるVEQTOR12デバイスのセットからランダムに選択した計三個のVEQTOR12デバイスを評価した。識別目的のためには、デバイスに対して誤った識別子を割り当てることを防止するために、単一のデバイスから読み出されるビット値の変化は、異なるデバイスから読み出されたビット値の変化よりも極めて小さいことが重要である。これを計算できる幾つかの方法が存在する。例えば、2つのバイナリデータのセットの間でハミング距離、つまり、異なるビット位置の総数を計算できる。ビットドリフトを計算するためには、次式を使用できる。
ビットドリフト=(異なるビット数/ビットの総数)×100%
表2はデバイスセットからランダムに選択した3個のVEQTOR12デバイスのビットドリフトの要約を与えている。この測定によって、デバイス当たりのビットドリフトはとても小さく、典型的には約10のハミング距離に対応していることが示された。さらに、Vdd=0.8Vに対しては、温度の増加と共にビットドリフトが小さくなる明確な傾向が存在する。こうして、これらのデータセットから、高温では適度な起動電圧VDDに対してより安定した署名(つまりビット値)を得ることができると結論できる。
Figure 2009533741
デバイス間のビットドリフト、又はハミング距離の表示を図4から得ることができる。ここで、3個のランダムに選択したデバイスに対する、42回の測定に亘る平均ビット値から、グレースケールの表示が得られる。白い四角は一貫して論理「0」を出現させたメモリ位置を示し、一方、グレーの四角は42回の測定に亘って、「0」と「1」の混合して出現したメモリ位置で、より暗いグレースケールはより低い平均値を示しており、例えば、位置410は平均値0.4に対応しているのに対し、位置420は平均値0.7に対応している。
図4から、3個のデバイスの署名、つまり読み出されたビット値のパターンは完全に相違していることが直ちに明らかとなる。これは、例えば異なるデバイスから読み出されたビット値の個々のセット間のハミング距離において表され、デバイスIとデバイスIIの読み出された各ビット値のセット間のハミング距離は121、デバイスIとデバイスIIIの読み出された各ビット値のセット間のハミング距離は121、デバイスIIとデバイスIII読み出された各ビット値のセット間のハミング距離は118であった。これらのハミング距離は、単一のデバイスの読み出されたビット値の2つのセット間のハミング距離よりも1桁大きい。このことも、読み出されたデータセットを識別目的で使用できることを示している。
この時点において、方法100は別のタイプの揮発性メモリ、例えばDRAM型メモリに使用することもできることを強調しておく。このようなメモリにおいて、異なるセルの電荷リーク速度は、セルの微細構造のばらつきにより互いに異なる。ステップ110において、揮発性メモリの起動は、メモリセルに規定のビット値、例えば全て「1」のセットを記憶させ、ステップ120は、DRAMメモリセルの全てではなく幾つかが規定のビット値を失わないように選ばれた規定の期間後にビット値のサブセットを読み出す。これにより、DRAMメモリに図4に示す署名と同様の署名を与え、DRAMの読み出されたビット値から生成された識別子を同様の方法で使用することができる。
図5は本発明の方法の別の実施例のフローチャートを示している。以前に説明したステップ110,120,125,130,135,140及び150に加えて、方法500は識別子のデータベースをロードするステップ510を含む。このデータベースにおける識別子は方法100によって生成された識別子であり、データベースは本発明の方法のステップ160において生成されたデータベースである。言い換えると、データベースは図1に示す方法100の実施例によって、複数の半導体デバイスのそれぞれの揮発性メモリから抽出された識別子を具える。
次のステップ520において、そのデータベースから識別子が選択され、この選択した識別子は、ステップ530において、識別すべき半導体デバイスから読み出されたビット値と比較される。その比較は多くの方法で行うことができる。例えば、選択した識別子と読み出されたビット値との間で、ハミング距離又はビットドリフトを計算することができる。これは、識別子及び/又は読み出されたデータが複数回の起動ステップと、次のデータ読み出しステップに基づく場合、平均ハミング距離又はビットドリフト値とすることができ、あるいは各メモリセルごとに図3に示すセルの再現可能なビット値を取る傾向の強さに基づいた重み係数を用いてハミング型の距離計算のような他の比較技術を使用できる。
比較は、典型的にはデータベースからの識別子と、識別すべき半導体デバイスから読み出されたビット値との差の類似性を示す値を生じる。ステップ535において、この値は規定の閾値と比較され、その閾値は、識別子と読み出されたビット値との間の類似性の必要なレベル又は最大許容差違を規定している。例えば、VEQTOR12デバイスに対して行われた実験において、単一のデバイスに対しては、観測されたハミング距離は典型的には5〜15程度であって、一方、異なるデバイスから読み出されたビット値間のハミング距離は、典型的には100を上回った。こうして、この特別な例において、10〜20程度の閾値の選択はデータベースの識別子を使用して正しいデバイスの識別の成功をもたらすはずである。
ステップ535において、データベースにおける識別子が読み出されたビット値と一致しないと判断された場合、一致する識別子が発見されるまでステップ520,530及び535が繰り返され、その後、ステップ540において識別は終了し、識別された半導体デバイスに関する情報、例えばバッチナンバー、生産場所などの情報の通信方法をユーザに知らせることができる。
図6は本発明の半導体デバイス600を模式的に図示している。デバイス600はメモリコントローラ620に結合した揮発性メモリ610を有している。メモリコントローラ620は、識別子生成目的のために、メモリ610のメモリセルの規定のサブセットから疑似ランダムビット値を読み出すように設定されている。疑似ランダムビット値は、以前に説明したように、読み出される対応するメモリセルの微細構造に由来している。コントローラ620はSRAM型メモリの場合にはメモリ610の起動時にビット値を読み出し、又はDRAM型メモリの起動時にメモリ内に規定のビットパターンを記憶し、プログラム可能な規定の遅延後にメモリから疑似ランダムビット値を読み出すように設定することができる。
サブセットの寸法を、メモリコントローラ620においてハードコーディングすることもでき、又はプログラム可能とすることもできる。このためサブセットのプログラム可能な寸法を記憶するように、メモリコントローラ620は、例えば、小さなフラッシュメモリ、1つ以上の適切なレジスタなど、データ記憶設備622を有することもできる。メモリコントローラ620は入力642を介して与えられた信号に応答することができる。その信号は典型的には識別子の生成を要求し、したがってメモリ610の起動もトリガする。出力644はメモリ610から読み出されたデータを受信するように設定されている。
メモリコントローラ620は入力642に直接接続することができる。代わりに、半導体デバイス600は、さらに、IEEE 1149.1準拠のテストアクセスポート(TAP)コントローラ630を具えることもでき、それはデバイス600の試験モードの制御に従事させることもできる。TAPコントローラは、TAP640からの命令を受信するために命令レジスタ(図示せず)を有することができる。バウンダリスキャン規格は、独自仕様の命令の使用を許可されているため、メモリコントローラ620の制御の下でメモリ610の起動とデータの読み出しをトリガする命令を与え、TAPコントローラ630に対する命令セットに追加することができる。入力642はTDIであっても、出力644はTAP640のTDOであっても、メモリ610から出力644までのデータ経路はTAPコントローラ630の制御の下での走査チェーンを具えてもよい。
本発明は内蔵揮発性メモリデバイスのセルの微細構造における固有の変化を有効利用しているだけではなく、このような疑似ランダムビットの挙動を示す半導体デバイスの基板上の分散揮発性メモリ、例えば、一群のフリップフロップもまた、このような有効利用に等しく適していることが理解されよう。どの場合においても、メモリセルの設計は、前記の微細構造依存効果の検出を可能とするために、特定のビット値になる設計ベースの傾向を避けることが好ましい。
この時点で、本発明の方法は、真正な又は安全なデータ通信を検証又は生成するなどのために、セキュリティ目的のための識別子、つまりICへのアクセスを認証するための独自のキーを生成することにも使用できることを強調しておく。本発明との関連で、アクセスの認証は、例えばセットトップボックスなどのデコーダなどの半導体デバイスによって処理される内容へのアクセスを含む。
図7は方法700のフローチャートを示し、これはキー生成の目的のために揮発性メモリ署名を利用する第1の実施例を与える。方法700はステップ110,120,125,130及び140を使用して開始し、これらのステップはすでに方法100の詳細な説明に記載されている。更に、ステップ710において符号表から符号語が選択される。適切な符号表の例として、例えばBCH符号表、ハミング符号表、リードソロモン符号表などの一群のエラー訂正符号語の要素から成る符号語が挙げられる。符号表の各符号語は、典型的にはk情報シンボル及び最小距離dを有する長さnの符号語であり(n、k、dは符号表固有の正整数)、各符号語は固有の情報シンボルセットを有することが好ましい。
情報シンボルは符号語におけるビットパターン、つまりnビットのサブセットであり、一方、符号語は更に、情報シンボルの読み出しにおけるエラーを訂正するために多くのパリティビットを具える。したがって、異なる起動からの識別子ビット値間のハミング距離がゼロより大きい場合には、エラー訂正符号の使用が必要となる。エラー訂正符号の理論は、当業者にとって周知であり、例えば、Wickerの”Error Control Systems for Digital Communication and Storage”,Prentice−Hall 1995、又はLinとCostelloの”Error Control Coding:Fundamentals and Applications”,Prentice−Hall 1983を参照されたく、このため更なる説明は行わない。エラー訂正符号のk情報シンボルを、特定の半導体デバイス機能を含む半導体デバイス(の部分)へのアクセスを許可するための認証キーとして使用できることを言及すれば十分である。
本発明の方法は、ノイズの多いデータから符号化情報、例えばキーの読み出しを可能にする、いわゆるヘルパーデータ(helper data)法の特定の例である。ヘルパーデータ使用の背後にある理論のより詳細な説明は、J.P. Linnarts, P.Tuyls,”New Shielding Functions to Enhance Privacy and Prevent Misusu of Biometric Templates”in J.Kettler and M. Nixon, editors, Proceeding of the 3rd Conference on Audio and Video Based Person Authentication, volume 2688 of Lecture Notes in Computer Science, page238−250, Springer−Verlag, 2003に見つけることができる。
符号語が選択されたあと、ステップ720において、選択された符号語のビットは識別子の対応するビット値へ、つまりこれらの識別子ビットが読み出されるメモリセルへマッピングされる。メモリセルは、異なる起動条件の下での同一の起動ビット値の再生傾向などの適切性基準に基づいて選択され、以前説明したように、ステップ110,120,125,130及び140を何度も繰り返すことによって決定できる。
図8は、どのように符号語のマッピング関数を構築できるかの幾つかの概要例を示している。符号語810の4ビットが半導体デバイスの揮発性メモリのサブセット820上にマッピングされている。ここで、明確さのみのために揮発性メモリの4ビット符号語と16ビットサブセットを示し、典型的には、より大きなサイズの符号語810とサブセット820を使用する。さらにサブセットは一例としてのみ使用し、以前に説明したように識別目的のための完全なメモリの使用もまた実行可能である。
マッピングにおいて、シンボル810とサブセット820の間の矢印によって示すように、適切なメモリセル、つまり起動時に符号810のそれぞれのビットに対応するビット値を取るメモリセルを選択する。マッピング関数はサブセット820の選択したメモリセルへのポインタ表として実現でき、半導体デバイス、例えば、ROM,PROM又はEEPROMのような不揮発性メモリ中に記憶できる。ポインタは置換に記憶でき、ポインタの順序は符号語ビットのスクランブルされた順序を指し、例えば第1のポインタは符号語の第3のビットを指し、第2のポインタは符号語の第7のビットを指す、などとすることができる。
代わりに、ビット表830を形成してもよい。このようなビット表830は、サブセット820のマスク又はオーバーレイとして働き、どのメモリセルが符号語の情報シンボルにマッピングされるかを特定する。図8において、「1」とラベルされたビット表830のセルは、符号語ビットマッピングのために選択されたサブセット820のメモリセルを示している。符号語810のビットの実際のビット値は、典型的にはビット表830のラベルの値と下にあるメモリセルの起動ビット値との積である。ビット表830もまた、置換形式で記憶できる。
符号語を揮発性メモリ上にマッピングする上記の方法は、本発明に不可欠ではないことは理解されよう。他の等しく実行できるマッピングアルゴリズムを本発明の教示から離れることなく使用できる。
図7に戻り説明すると、選択された符号語の情報シンボルは、半導体デバイスのある機能が、その動作のために要求するキーとして使用される。このような機能には、識別子ベースのキーによる外界から受信したキーの認証、他の既知のキーベースの機能と同様に、識別子ベースのキーによるデータ通信の符号化又は復号化がある。符号語の情報シンボルは、ステップ730においてキーに割り当てられる。
単一の符号語における情報シンボルの数は、安全キーの生成のためには不十分であるかもしれない。例えば、符号語は16情報シンボルを提供する一方、安全キーは64情報シンボルを必要とする。これはステップ735においてチェックされる。キーが単一の符号語によって提供される符号語より多くの情報シンボルを必要とする場合、十分な量の情報シンボルが得られるまでステップ710,720及び730を繰り返すことができる。種々の符号語から得られた情報シンボル(IS)を連結によって単一の安全キーに割り当てることができる。
<key>=<IS word1><IS word2><IS word3><IS word4>
キー生成の完了時に、ステップ740において、マッピング関数が半導体デバイス、例えば不揮発性メモリ中に記憶されるとともに、ステップ750において、そのキーが外界に使用可能にされる。ステップ750及び740が実行される順序は大きな意味はなく、図7に示す順序から外れてもよい。一度キーが外界に利用可能となった場合、この通信を可能にした半導体デバイスに搭載された回路を、ステップ760において、無効化、例えば破壊して、権限のないメンバーがキーにアクセスするのを防止することが好ましい。回路の破壊は既知の破壊技術、例えば通信に不可欠の導電性パス内のヒューズを破壊するなどの手段を使用して達成でき、また、例えばハードウェア内に符号語の符号器が存在する場合にはこれを無効化、例えば破壊してもよい。
キーは、変形態様、例えば識別子にマッピングされたキー、つまり秘密キーから生成された公開キーの態様で外界に利用可能とすることができる。公開及び秘密双方のキーを使用したセキュリティシステムの理論、つまり非対称暗号化は、当業者によく知られており、したがって更に議論しない。
図9に示す方法900のフローチャートは、その動作にキーを必要とする半導体デバイスの機能が、方法700で生成されたキーを使用することでどのような恩恵を受けることができるかを実証している。方法900は、方法100と共通のステップ、特にステップ110,120,125,130,135及び140を有する。方法900の場合、これら全てのステップは搭載された半導体デバイス上で実行でき、このことは、実際には、随意のステップ130において、加熱素子が半導体デバイス上に具えられていなければ、温度の調整は実現可能ではないことを意味している。しかしこれは好適な実施例ではない。
揮発性メモリの起動時、又はメモリが記憶された規定のビット値の幾つかを消失するのを待つとき、方法900は更に、方法700によって生成されたキーを読み出すステップ910を含む。この目的のために、ステップ730において保存されたマッピング関数を使用して、半導体デバイスの揮発性メモリの選択したメモリセルから1つの符号語、又はもしキーが1つ以上の符号語からの情報シンボルを含む場合には、複数の符号語のビットを読み出す。読み出された符号語は、符号語の情報シンボルを読み出すために復号化される。典型的には、復号化ステップは、それぞれ符号語マッピング段と抽出段とからの識別子の起動値との差を消去するためにエラー訂正するステップを含む。典型的には、当業者によく知られているように、ステップ720における選択したメモリセルのビット値と方法900のステップ120におけるこれらのセルから読み出されたビット値との間のハミング距離が距離dを超えない場合には、符号語はエラー訂正し、情報シンボルをエラー訂正された符号語から読み出すことができる。ステップ910はキーの情報シンボルが読み出され、キーに割り当てられるまで繰り返される。
ステップ920において、キーは半導体デバイスのキー依存機能の動作を可能とするために使用する。以前に説明したように、このような機能は、キーを使用した安全データ通信、例えばインターネットにおけるデータ通信、の符号化又は復号化、受信したメッセージの署名の認証、送信するメッセージのキーによる署名などを含むことができ、また外界から提供されたキーの認証を含むことができる。
後者の例は、方法900の部分925に与えられており、一例のみが示されるが、これに限定されない。ステップ930において、他のキーを外界から受信する。揮発性メモリ識別子に基づくキーと外界から受信したキーとをステップ935において比較する。キーが同一の場合、ステップ950において、半導体デバイスの安全部分又は機能へのアクセスが許可され、キーが同一でない場合、このアクセスはステップ940において拒絶される。
許可されていないメンバーが半導体デバイスへの他のキーの通信を盗聴することによってキーを入手することを防止するために、他のキーを符号化された形態で提供することができる。暗号化された形態で他のキーを提供する例は、半導体デバイスからランダムなメッセージを作成し、他のキーを使用してそのメッセージを符号化し、他のキーを、半導体デバイスに符号化されたメッセージの形態で提供し、そのメッセージを揮発性メモリからの識別子に基づくキーを使用して復号化する。復号化されたメッセージがステップ935においてチェックされ、前記ランダムメッセージに一致する場合には、他のキーは揮発性メモリからの識別子に基づくキーと同一のキーであり、半導体デバイスへのアクセスは、ステップ950において許可することができる。このキー通信プロトコル自体は既知であり、他の既知安全通信プロトコルも等しく適していることを強調しておく。この実施例において、ステップ910及び920は任意の順序で実行することもでき、例えばステップ910の実行は、ステップ920における他のキーの受信によりトリガすることができる。
一般的に、読み出された符号語から構築したキーと、外界から受信した他のキー(もしあれば)は、例えばステップ960において、権限のないキーの取得を防止するために、キー制御機能の動作の完了時に、それらのキーを半導体デバイスから除去又は削除することが好ましい。これは、一時的に記憶されたメモリからキーを消去することによって実行できる。
安全な半導体デバイス1000の実施例を図10に模式的に示す。半導体デバイス1000は、エラー訂正符号化及び復号化アルゴリズム、つまり符号語を生成し読み出すためのアルゴリズムがソフトウェアで実装されているプロセッサー1010を有する。プロセッサ1010は、本発明の方法700にしたがってキーを生成するための外部信号源(図示せず)に応答することができる。代わりに、プロセッサ1010は、揮発性メモリ610の第1の起動時にのみこのようなキーを生成することができる。プロセッサ1010は、コントローラ620(プロセッサ1010に内蔵できる)に命令して、メモリ610から識別子を読み出すように設定できる。プロセッサ1010は更に、識別子を評価し、プロセッサ1010によって生成された符号語のビット値を適切な識別子ビット値に、つまり適切なメモリセルにマッピングするように設定できる。
半導体デバイスは更に、符号語ビットのメモリセルへのマッピング関数を記憶するために不揮発性メモリ1020を具える。プロセッサ1010は、生成されたキーを出力1044へ伝えるために、破壊可能通信回路1030を介して出力1044に結合することができる。破壊可能通信回路1030は、一例では、プロセッサ1010から出力1044間での信号パスにおいて破壊可能なヒューズを具えることができるがこれに限定されず、他の知られた破壊技術も等しく適用できる。典型的には、通信回路1030は一度キーが出力1044に伝えられたら無効化される。
プロセッサ1010は更に、識別子ベースのキーを必要とする機能を行うように設定する。例えばプロセッサ1010は、半導体デバイス1000の保護された機能へのアクセスを許可するために、他のキーを受信する入力1042に結合でき、このキーは以前に説明したように符号化された形態とすることができる。プロセッサ1010は、他のキーを受信し次第、不揮発性メモリ1020に記憶されたマッピング関数を使用して、メモリ610からの識別子ベースのキーを読み出すように設定できる。このため、必要ならば揮発性メモリ610の電源の切断に先行して、揮発性メモリ610を起動させ、その後コントローラ620がマッピング関数にしたがってメモリセルのビット値を読み出すように、プロセッサ1010を設定する。代わりに、プロセッサ1010は、DRAM型揮発性メモリに規定のビット値セットをプログラムし、コントローラ620に、規定の遅延時間後に、マッピング関数にしたがってメモリ610からのビット値を読み出すように命令するよう設定することもできる。
プロセッサ1010は、キーが一致した場合に半導体デバイス1000のキー保護部分へのアクセスを許可するために、メモリ610から読み出したビットを復号化して、キーの情報シンボルを読み出し、そのキーを入力1042から受信した他のキーと比較するように設定することができる。プロセッサ1010は、代わりに、データ通信符号化及び/又は復号化のような、識別子ベースのキーの使用を必要とする他の機能を動作するように設定することができる。
最後に、プロセッサ1010は、比較の完了後、その内部メモリ、例えばレジスタ、又は他のメモリからキー及び他のキー(もしあれば)を削除するように設定する。
半導体デバイス1000の上記のソフトウェアベースの実施例は一例に過ぎず、これに限定されず、例えばハードウェア実装のエラー訂正符号化及び復号化、及び/又はキーベースのデータ通信暗号化又は復号化ブロック、及び/又はハードウェア実装のキーと他のキーとの比較器などが存在する他の実施例は、等しく実現可能であることを強調しておく。このような実装は、それ自体知られており、簡潔さのために更に説明しない。
上述の実施例は本発明を制限する訳ではなく、当業者は添付の請求項の範囲から離れることなく、多くの代わりの実施例を設計できることに注意されたい。「含む」、「具える」という語は、請求項に並べられたもの以外の素子やステップの存在を除外するものではない。単数はこのような素子の複数の存在を除外しない。本発明は幾つかの明確な素子を具えたハードウェアによって実装できる。幾つかの手段を列挙しているデバイス請求項において、これらの手段の幾つかはハードウェアの1つ及び同一のアイテムによって実施できる。ある測定が完全に異なる独立請求項において列挙される事実は、単にこれらの手段の組み合わせは有利に使用できないことを示しているわけではない。
本発明の方法のフローチャートを示している。 本発明の方法を使用した半導体デバイスから読み出されるビット値を模式的に示している。 本発明の方法を使用した半導体デバイスから読み出される平均ビット値を模式的に示している。 本発明の用法を使用した多くの半導体デバイスのメモリセルのサブセットからの平均起動ビット値のグレースケールマッピングを示している。 本発明の方法の別の実施例のフローチャートを示している。 本発明の半導体デバイスを示している。 本発明の方法の更に別の実施例のフローチャートを示している。 図7の方法の態様にしたがったマッピング関数を模式的に示している。 本発明の方法の更に別の実施例のフローチャートを示している。 本発明の別の半導体デバイスを示している。

Claims (36)

  1. 複数のメモリセルを有する揮発性メモリを具える半導体デバイスから識別子を生成する方法であって、前記方法は、
    (a)前記メモリセルに、前記メモリセルの微細構造の変化に由来する複数の疑似ランダムビット値を呈示させるステップと、
    (b)前記複数のメモリセルの少なくともサブセットから、前記疑似ランダムビット値を読み出すステップと、
    (c)前記読み出したビット値から識別子を生成するステップと、
    を含むことを特徴とする方法。
  2. 識別子生成要求信号を受信するステップと、
    前記信号の受信に応答してステップ(a)〜(c)を行うステップと、
    を更に具えることを特徴とする、請求項1に記載の方法。
  3. 前記メモリセルに前記複数の疑似ランダムビット値を呈示させるステップが、前記揮発性メモリを起動するステップを含むことを特徴とする、請求項1又は2に記載の方法。
  4. 前記メモリセルに、前記複数の疑似ランダムビット値を呈示させるステップが、
    前記メモリセルに規定のビット値のセットを記憶させるステップと、
    前記複数のメモリセルの全てではない幾つかが、規定のビット値を失うことが可能になるように、前記読み出しステップを遅延させるステップと、
    を含むことを特徴とする、請求項1又は2に記載の方法。
  5. 前記ステップ(a)及び(b)を繰り返すステップを更に含み、
    前記識別子を生成する前記ステップが、前記繰り返されるステップ(b)から読み出された前記ビット値を組み合わせるステップを含むことを特徴とする、請求項1〜4のいずれか一項に記載の方法。
  6. 前記メモリに対して異なる起動電圧を使用して、前記ステップ(a)及び(b)を繰り返すことを特徴とする、請求項4に記載の方法。
  7. 異なる温度にて前記ステップ(a)及び(b)を繰り返すことを特徴とする、請求項5又は6に記載の方法。
  8. 前記識別子を前記半導体デバイスに割り当てるステップを更に含むことを特徴とする、請求項1〜7のいずれか一項に記載の方法。
  9. 更に前記識別子をデータベースに記憶するステップを含むことを特徴とする、請求項1〜8に記載の方法。
  10. 識別子のデータベースをロードするステップと、
    前記読み出されたビット値を前記データベース内のそれぞれの識別子と比較し、前記読み出されたビット値と最もよく一致する前記識別子を選択することによって、前記半導体デバイスを識別するステップと、
    を更に含むことを特徴とする、請求項8に記載の方法。
  11. 最もよく一致する前記識別子を選択する前記ステップが、前記読み出されたビット値と前記識別子との間の差を決定するステップを含むことを特徴とする、請求項10に記載の方法。
  12. 前記差を決定するステップが、ハミング距離を決定するステップを含むことを特徴とする、請求項11に記載の方法。
  13. 前記差を決定するステップが、ビットドリフト値を決定するステップを含むことを特徴とする、請求項11に記載の方法。
  14. 前記半導体デバイスが更に、その動作のための複数の情報シンボルからなるキーを必要とする機能と、
    出力と、
    前記キーを前記出力で使用可能にするための手段と、
    を含み、前記方法は更に、
    各符号語が更なる複数の情報シンボルからなる一群の符号語を提供するステップと、
    前記一群の符号語から1つ以上の符号語を選択するステップと、
    前記1つ以上の符号語の前記情報シンボルから前記キーを生成するステップと、
    前記キーを前記出力で使用可能にするステップとを含み、前記識別子を生成する前記ステップが、
    前記1つ以上の符号語の各ビット値を、対応する識別子のビット値が読み出されるそれぞれのメモリセルにマッピングするマッピング関数を生成するステップと、
    前記マッピング関数を前記半導体デバイスに記憶するステップと、
    を含むことを特徴とする、請求項1〜7のいずれか一項に記載の方法。
  15. 前記キーを使用可能にする以前に、前記キーを変更するステップを更に含むことを特徴とする、請求項14に記載の方法。
  16. 前記キーを使用可能にしたあとに、前記出力に前記キーを提供する前記手段を無効化するステップを更に含む、請求項14又は15に記載の方法。
  17. 前記マッピング関数を生成する前記ステップが、前記それぞれのメモリセルに対する複数のポインタを生成するステップを含むことを特徴とする、請求項14,15又は16に記載の方法。
  18. 前記マッピング関数を生成するステップが、
    前記揮発性メモリの前記少なくともサブセットの各メモリセルに対応するセルを有するビット表を生成するステップと、
    前記ビット表の各セルに、前記マッピング関数内の前記対応するメモリセルの存在を示すビット値を提供するステップと、
    を含むことを特徴とする、請求項14,15又は16に記載の方法。
  19. 前記マッピング関数を形成する前記ステップが、メモリセルのセットに対する置換表を形成するステップを含む、請求項14,15又は16に記載の方法。
  20. 前記半導体デバイスが更に、
    その動作のために、複数の情報シンボルからなるキーを必要とする機能と、
    各符号語が更に複数の情報シンボルからなる一群の符号語からの1つ以上の符号語のビット値を、前記識別子の対応するビット値にマッピングするためのマッピング関数と、
    を含み、前記方法が更に、
    前記マッピング関数を使用して、前記識別子から前記1つ以上の符号語を読み出すステップと、
    前記1つ以上の読み出された符号語をエラー訂正するステップと、
    前記1つ以上のエラー訂正された符号語の前記情報シンボルから前記キーを生成するステップと、
    前記キーを使用して前記機能を動作させるステップと、
    を含むことを特徴とする、請求項1〜7のいずれか一項に記載の方法。
  21. 前記機能を動作させるステップが、
    他のキーを受信するステップと、
    前記キーと前記他のキーとを比較するステップと、
    前記キーが前記他のキーと一致した場合に、前記半導体デバイスの少なくとも一部の動作を許可するステップと、
    を含むことを特徴とする、請求項20に記載の方法。
  22. 前記機能を動作させるステップが、
    暗号化データを受信するステップと、
    前記キーを使用して前記暗号化データを処理するステップと、
    を含むことを特徴とする、請求項20に記載の方法。
  23. 前記機能を動作させるステップが、
    前記キーを使用してデータを符号化するステップと、
    前記符号化データを送信するステップと、
    を含む、請求項20に記載の方法。
  24. 前記機能を動作させたあとに、前記キーを消去するステップを更に含むことを特徴とする、請求項20に記載の方法。
  25. 複数のメモリセルを有する揮発性メモリと、
    前記複数のメモリセルの少なくともサブセットから、前記メモリセルの微細構造の変化に由来するそれぞれの疑似ランダムビット値を含む識別子を読み出すように設定されているコントローラと、
    を具えることを特徴とする、半導体デバイス。
  26. 前記コントローラが、前記揮発性メモリの起動に応答して、前記ビット値を読み出すように設定されていることを特徴とする、請求項25に記載の半導体デバイス。
  27. 前記揮発性メモリに結合された出力を更に具え、前記コントローラが、前記出力に前記それぞれのビット値を提供するように設定されていることを特徴とする、請求項25又は26に記載の半導体デバイス。
  28. 前記メモリコントローラが、外部識別子生成要求信号に応答することを特徴とする、請求項25,26又は27に記載の方法。
  29. 前記メモリコントローラが、前記サブセットサイズを記憶するためのプログラム可能なメモリ手段を具えることを特徴とする、請求項25,26,27又は28に記載の方法。
  30. 前記メモリコントローラが、前記外部識別子生成要求信号を処理するように設定されている、バウンダリスキャン準拠の試験アクセスポートコントローラに応答することを特徴とする、請求項28に記載の半導体デバイス。
  31. 出力と、
    その動作のために、複数の情報シンボルから成るキーを必要とする機能と、
    一群の符号語から1つ以上の符号語の情報シンボルから前記キーを生成するための手段と、
    前記1つ以上の符号語のビットを前記識別子の対応するビット値にマッピングするためのマッピング関数を生成するための手段と、
    前記マッピング関数を記憶するための不揮発性メモリと、
    前記マッピング関数を使用して前記識別子から前記キーを抽出するための抽出手段と、
    を具えることを特徴とする、請求項25又は26に記載の半導体デバイス。
  32. 他のキーを受信するための入力を更に具え、前記機能が、
    前記半導体デバイスの前記少なくとも一部へのアクセスを許可するための許可手段を具え、前記許可手段が、前記キーと前記他のキーとを比較するための比較器を具えることを特徴とする、請求項31に記載の方法。
  33. 前記機能が、前記キーを使用してデータを符号化するための符号器を具えることを特徴とする、請求項32に記載の方法。
  34. 前記機能が、前記キーを使用してデータを復号化するための復号器を具えることを特徴とする、請求項31又は33に記載の半導体デバイス。
  35. 前記キーを前記出力に送るための手段を更に具えることを特徴とする、請求項31に記載の半導体デバイス。
  36. 前記キーを送るための前記手段を無効化することを特徴とする、請求項34に記載の半導体デバイス。
JP2009504873A 2006-04-13 2007-04-04 半導体デバイス識別子の生成方法および半導体デバイス Active JP4913861B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06112656 2006-04-13
EP06112656.1 2006-04-13
PCT/IB2007/051213 WO2007119190A2 (en) 2006-04-13 2007-04-04 Semiconductor device identifier generation method and semiconductor device

Publications (2)

Publication Number Publication Date
JP2009533741A true JP2009533741A (ja) 2009-09-17
JP4913861B2 JP4913861B2 (ja) 2012-04-11

Family

ID=38447441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009504873A Active JP4913861B2 (ja) 2006-04-13 2007-04-04 半導体デバイス識別子の生成方法および半導体デバイス

Country Status (7)

Country Link
US (1) US9129671B2 (ja)
EP (1) EP2011123B1 (ja)
JP (1) JP4913861B2 (ja)
KR (1) KR101059005B1 (ja)
CN (1) CN101421792B (ja)
TW (1) TW200822137A (ja)
WO (1) WO2007119190A2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012503814A (ja) * 2008-09-26 2012-02-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ デバイス及びユーザの認証
WO2012164721A1 (ja) 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
WO2013002239A1 (ja) * 2011-06-27 2013-01-03 日本電気株式会社 機器固有情報生成装置と機器固有情報生成方法、端末機器および認証システム
JP2013186911A (ja) * 2012-03-06 2013-09-19 Nec Corp デバイス固有情報生成装置及びデバイス固有情報生成方法
JP2014053064A (ja) * 2012-09-10 2014-03-20 Renesas Electronics Corp 半導体装置
JP2014099676A (ja) * 2012-11-13 2014-05-29 Renesas Electronics Corp 認証回路
WO2014091559A1 (ja) 2012-12-11 2014-06-19 三菱電機株式会社 統合セキュリティ装置および統合セキュリティ装置に用いられる信号処理方法
WO2014184899A1 (ja) 2013-05-15 2014-11-20 三菱電機株式会社 機器真贋判定システムおよび機器真贋判定方法
US9031232B2 (en) 2010-01-15 2015-05-12 Mitsubishi Electric Corporation Bit sequence generation apparatus and bit sequence generation method
US9106213B2 (en) 2011-01-13 2015-08-11 Mitsubishi Electric Corporation Bit generation apparatus and bit generation method
US9823899B2 (en) 2015-06-18 2017-11-21 Panasonic Intellectual Property Management Co., Ltd. Random number processing device generating random numbers by using data read from non-volatile memory cells, and integrated circuit card

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101499316B (zh) * 2008-01-30 2011-10-19 群联电子股份有限公司 快闪存储器区块管理方法及使用此方法的控制器
US8671327B2 (en) 2008-09-28 2014-03-11 Sandisk Technologies Inc. Method and system for adaptive coding in flash memories
JP5537551B2 (ja) 2008-09-28 2014-07-02 ラマト アット テル アビブ ユニバーシティ リミテッド フラッシュメモリにおける適応符号化用の方法およびシステム
KR100926214B1 (ko) * 2009-04-23 2009-11-09 한양대학교 산학협력단 공정편차를 이용한 디지털 값 생성 장치 및 방법
US7928762B1 (en) * 2010-05-14 2011-04-19 Raytheon Company Systems and methods for digitally decoding integrated circuit blocks
FR2964278A1 (fr) * 2010-08-31 2012-03-02 St Microelectronics Rousset Extraction de cle dans un circuit integre
KR101139630B1 (ko) 2010-12-09 2012-05-30 한양대학교 산학협력단 식별키 생성 장치 및 방법
KR101118826B1 (ko) 2011-02-15 2012-04-20 한양대학교 산학협력단 물리적 공격을 방어하는 암호화 장치 및 암호화 방법
DK2693370T3 (en) 2011-03-31 2016-09-26 Ictk Co Ltd Device and method for generation of a digital value
US9612977B2 (en) * 2011-07-15 2017-04-04 Standard Microsystems Corporation Method and system for controlling access to embedded nonvolatile memories
US10078112B2 (en) * 2012-02-07 2018-09-18 Mcube, Inc. Security system and methods for integrated devices
WO2013184201A1 (en) * 2012-06-08 2013-12-12 Ntt Docomo, Inc. A method and apparatus for low delay access to key-value based storage systems using fec techniques
KR101332517B1 (ko) * 2012-08-21 2013-11-22 한양대학교 산학협력단 인증 정보 처리 장치 및 방법
US20140101368A1 (en) * 2012-10-04 2014-04-10 Qualcomm Incorporated Binding microprocessor to memory chips to prevent re-use of microprocessor
KR101488616B1 (ko) * 2013-09-06 2015-02-06 (주) 아이씨티케이 식별키 생성 장치 및 방법
KR101504025B1 (ko) 2013-09-06 2015-03-18 (주) 아이씨티케이 식별 키 생성 장치 및 방법
KR101489091B1 (ko) 2013-09-30 2015-02-04 (주) 아이씨티케이 반도체 공정을 이용한 식별키 생성 장치 및 방법
WO2015053440A1 (ko) * 2013-10-08 2015-04-16 (주) 아이씨티케이 식별 키 생성 장치 및 방법
KR101457305B1 (ko) * 2013-10-10 2014-11-03 (주) 아이씨티케이 식별키 생성 장치 및 방법
WO2015089346A1 (en) 2013-12-13 2015-06-18 Battelle Memorial Institute Electronic component classification
KR102186475B1 (ko) 2013-12-31 2020-12-03 주식회사 아이씨티케이 홀딩스 랜덤한 디지털 값을 생성하는 장치 및 방법
US9967094B2 (en) * 2015-08-25 2018-05-08 Nxp Usa, Inc. Data processing system with secure key generation
KR102373544B1 (ko) 2015-11-06 2022-03-11 삼성전자주식회사 요청 기반의 리프레쉬를 수행하는 메모리 장치, 메모리 시스템 및 메모리 장치의 동작방법
EP3330878B1 (en) * 2016-12-05 2019-03-13 Samsung SDI Co., Ltd. Control unit for a battery system with security identifier
KR20180094170A (ko) 2017-02-13 2018-08-23 에스케이하이닉스 주식회사 식별자를 생성하기 위한 메모리 장치, 메모리 컨트롤러, 및 그의 동작 방법
US10789550B2 (en) 2017-04-13 2020-09-29 Battelle Memorial Institute System and method for generating test vectors
US11043164B2 (en) 2018-01-31 2021-06-22 Ignis Innovation Inc. Display panel compensation methods
US11734409B2 (en) 2020-04-17 2023-08-22 University Of South Florida Determining electronic component authenticity via electronic signal signature measurement
US11301343B2 (en) * 2020-06-12 2022-04-12 Taiwan Semiconductor Manufacturing Company Limited Memory block age detection

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02501961A (ja) * 1987-10-30 1990-06-28 ゲーアーオー・ゲゼルシャフト・フューア・アウトマツィオーン・ウント・オルガニザツィオーン・エムベーハー 集積回路を備えたデータ・キャリアの信頼性テスト方法
WO2000049538A1 (en) * 1999-02-17 2000-08-24 Icid, Llc A system for providing an integrated circuit with a unique identification
US20060063286A1 (en) * 2004-09-23 2006-03-23 Bidermann William R Using a time invariant statistical process variable of a semiconductor chip as the chip identifier

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774545A (en) * 1996-03-28 1998-06-30 Lucent Technologies Inc. Method and apparatus for enhancing security in and discouraging theft of VLSI and ULSI devices
JPWO2002050910A1 (ja) * 2000-12-01 2004-04-22 株式会社日立製作所 半導体集積回路装置の識別方法と半導体集積回路装置の製造方法及び半導体集積回路装置
US6601008B1 (en) 2001-08-02 2003-07-29 Lsi Logic Corporation Parametric device signature
US7840803B2 (en) * 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
US6802447B2 (en) 2002-08-26 2004-10-12 Icid, Llc Method of authenticating an object or entity using a random binary ID code subject to bit drift
US6738294B2 (en) * 2002-09-30 2004-05-18 Agere Systems Inc. Electronic fingerprinting of semiconductor integrated circuits
US6889305B2 (en) 2003-02-14 2005-05-03 Hewlett-Packard Development Company, L.P. Device identification using a memory profile
WO2004081948A1 (en) 2003-03-12 2004-09-23 Koninklijke Philips Electronics N.V. Test for weak sram cells
EP1631987A2 (en) 2003-05-26 2006-03-08 Koninklijke Philips Electronics N.V. Semiconductor device, method of authentifying and system
JP2006060109A (ja) * 2004-08-23 2006-03-02 Matsushita Electric Ind Co Ltd 半導体装置の識別コード作成方法および半導体装置の識別方法並びに半導体装置
US7216272B2 (en) * 2005-02-23 2007-05-08 Texas Instruments Incorporated Method for reducing SRAM test time by applying power-up state knowledge
US7222040B1 (en) * 2005-12-22 2007-05-22 Sony Computer Entertainment Inc. Methods and apparatus for producing an IC identification number
US7388781B2 (en) * 2006-03-06 2008-06-17 Sandisk Il Ltd. Multi-bit-per-cell flash memory device with non-bijective mapping

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02501961A (ja) * 1987-10-30 1990-06-28 ゲーアーオー・ゲゼルシャフト・フューア・アウトマツィオーン・ウント・オルガニザツィオーン・エムベーハー 集積回路を備えたデータ・キャリアの信頼性テスト方法
WO2000049538A1 (en) * 1999-02-17 2000-08-24 Icid, Llc A system for providing an integrated circuit with a unique identification
US20060063286A1 (en) * 2004-09-23 2006-03-23 Bidermann William R Using a time invariant statistical process variable of a semiconductor chip as the chip identifier

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
LOFSTROM K, 2000 IEEE INTERNATIONAL SOLID-STATE CIRCUITS CONFERENCE, JPN5009003560, 7 February 2000 (2000-02-07), pages 372 - 373, ISSN: 0001893513 *
MAEDA S, IEEE TRANSACTIONS ON ELECTRON DEVICES, vol. V50 N6, JPN5009003559, June 2003 (2003-06-01), US, pages 1451 - 1458, ISSN: 0001893512 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012503814A (ja) * 2008-09-26 2012-02-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ デバイス及びユーザの認証
US9031232B2 (en) 2010-01-15 2015-05-12 Mitsubishi Electric Corporation Bit sequence generation apparatus and bit sequence generation method
US9106213B2 (en) 2011-01-13 2015-08-11 Mitsubishi Electric Corporation Bit generation apparatus and bit generation method
WO2012164721A1 (ja) 2011-06-02 2012-12-06 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
US9391772B2 (en) 2011-06-02 2016-07-12 Mitsubishi Electric Corporation Key information generation device and key information generation method
JPWO2013002239A1 (ja) * 2011-06-27 2015-02-23 日本電気株式会社 機器固有情報生成装置と機器固有情報生成方法、端末機器および認証システム
WO2013002239A1 (ja) * 2011-06-27 2013-01-03 日本電気株式会社 機器固有情報生成装置と機器固有情報生成方法、端末機器および認証システム
JP2013186911A (ja) * 2012-03-06 2013-09-19 Nec Corp デバイス固有情報生成装置及びデバイス固有情報生成方法
JP2014053064A (ja) * 2012-09-10 2014-03-20 Renesas Electronics Corp 半導体装置
JP2014099676A (ja) * 2012-11-13 2014-05-29 Renesas Electronics Corp 認証回路
WO2014091559A1 (ja) 2012-12-11 2014-06-19 三菱電機株式会社 統合セキュリティ装置および統合セキュリティ装置に用いられる信号処理方法
KR20150093785A (ko) 2012-12-11 2015-08-18 미쓰비시덴키 가부시키가이샤 통합 시큐리티 장치 및 통합 시큐리티 장치에 이용되는 신호 처리 방법
US9722805B2 (en) 2012-12-11 2017-08-01 Mitsubishi Electric Corporation Integrated security device and signal processing method used for an integrated security device
WO2014184899A1 (ja) 2013-05-15 2014-11-20 三菱電機株式会社 機器真贋判定システムおよび機器真贋判定方法
KR20160010521A (ko) 2013-05-15 2016-01-27 미쓰비시덴키 가부시키가이샤 기기 진위 판정 시스템 및 기기 진위 판정 방법
US9823899B2 (en) 2015-06-18 2017-11-21 Panasonic Intellectual Property Management Co., Ltd. Random number processing device generating random numbers by using data read from non-volatile memory cells, and integrated circuit card

Also Published As

Publication number Publication date
TW200822137A (en) 2008-05-16
EP2011123B1 (en) 2015-03-04
CN101421792B (zh) 2015-09-23
US9129671B2 (en) 2015-09-08
CN101421792A (zh) 2009-04-29
US20100070777A1 (en) 2010-03-18
KR20090007433A (ko) 2009-01-16
KR101059005B1 (ko) 2011-08-23
JP4913861B2 (ja) 2012-04-11
WO2007119190A2 (en) 2007-10-25
EP2011123A2 (en) 2009-01-07
WO2007119190A3 (en) 2008-01-17

Similar Documents

Publication Publication Date Title
JP4913861B2 (ja) 半導体デバイス識別子の生成方法および半導体デバイス
US7945791B2 (en) Protected storage of a datum in an integrated circuit
US6490685B1 (en) Storage device having testing function and memory testing method
US20080201592A1 (en) Hibernating a processing apparatus for processing secure data
WO1999038078A1 (en) Storage device, encrypting/decrypting device, and method for accessing nonvolatile memory
US20090285390A1 (en) Integrated circuit with secured software image and method therefor
TW200832427A (en) Virtual secure on-chip one time programming
JP2013003431A (ja) 半導体装置及び半導体装置へのデータ書き込み方法
WO2002027441A1 (en) System for protecting static and dynamic data against unauthorised manipulation
Roelke et al. Attacking an SRAM-based PUF through wearout
US6101605A (en) Method and apparatus for performing a secure operation
CN114785503B (zh) 密码卡及其根密钥保护方法、计算机可读存储介质
US7957526B2 (en) Confidential information implementation system and LSI
CN114817931A (zh) 基于星型信任链的终端安全防护方法、装置、设备及介质
KR100948043B1 (ko) 보안 요소의 클로닝을 방지하기 위한 방법 및 장치
CN114521261A (zh) 用于管理集成电路器件的安全性的未定义生命周期状态标识符
Lee et al. Samsung physically unclonable function (SAMPUF™) and its integration with Samsung security system
US20080104396A1 (en) Authentication Method
TWI716685B (zh) 電子系統及其操作方法
JP7170999B2 (ja) 機密データを保護することが可能な電子機器
JP5986279B2 (ja) 半導体装置
US20230377676A1 (en) Integrated circuit and operation method and inspection method thereof
CN118133310A (zh) 数据存储方法、数据解密方法及芯片
CN116724310A (zh) 用于控制对资源的访问的方法和设备
CN102236754A (zh) 数据保密方法以及使用此数据保密方法的电子装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110913

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: 20120117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120119

R150 Certificate of patent or registration of utility model

Ref document number: 4913861

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150127

Year of fee payment: 3

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

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