JPWO2013094056A1 - デバイス固有情報生成装置およびデバイス固有情報生成方法 - Google Patents

デバイス固有情報生成装置およびデバイス固有情報生成方法 Download PDF

Info

Publication number
JPWO2013094056A1
JPWO2013094056A1 JP2013550030A JP2013550030A JPWO2013094056A1 JP WO2013094056 A1 JPWO2013094056 A1 JP WO2013094056A1 JP 2013550030 A JP2013550030 A JP 2013550030A JP 2013550030 A JP2013550030 A JP 2013550030A JP WO2013094056 A1 JPWO2013094056 A1 JP WO2013094056A1
Authority
JP
Japan
Prior art keywords
glitch
circuit
bit
specific information
generation
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
JP2013550030A
Other languages
English (en)
Other versions
JP5646091B2 (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Application granted granted Critical
Publication of JP5646091B2 publication Critical patent/JP5646091B2/ja
Publication of JPWO2013094056A1 publication Critical patent/JPWO2013094056A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • 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
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Computer Hardware Design (AREA)
  • Manipulation Of Pulses (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

デバイス製造時の影響、あるいはデバイスの経年劣化の影響を受けずに、所望の性能を満たすグリッチを出力する装置を得る。グリッチ発生回路(330)と、グリッチの形状を情報ビットに変換するビット変換回路(340)とを有するビット生成部(310)を備え、グリッチ発生回路は、複数の組み合わせ回路(331)が搭載されることで、複数の異なるグリッチを出力し、ビット生成部は、選択信号に応じて、複数の異なるグリッチの中から1つのグリッチを選択してビット変換回路に対して出力するセレクタ(332)をさらに有し、選択信号を出力することで、複数の異なるグリッチのそれぞれに対応するビット情報を取得し、それぞれのビット情報に基づいて、所望の性能を満たしているグリッチを特定する性能評価・制御部(350)をさらに備える。

Description

本発明は、認証や暗号化などのセキュリティに関するものであり、より具体的には、認証で必要となるデバイス固有の識別子や、暗号化で必要となる秘密鍵などを生成することを目的としたデバイス固有情報生成装置およびデバイス固有情報生成方法に関するものである。
ASICやFPGA等の半導体デバイスにおいて、同一種類のデバイス上に同一の回路を実装した場合でも、ゲート遅延等のデバイス特性がデバイス個体毎に異なることによって、デバイス個体毎に異なる出力が得られる現象が存在する。このような現象を生む回路もしくはその技術は、Physical Unclonable FunctionやPhysical Uncloning技術などと呼ばれ(以下の説明では、この技術をPUFと称する)、認証や暗号化といった用途への応用が期待されている。
PUFの例として、組み合わせ回路の出力信号に発生するグリッチを利用した従来技術がある(例えば、特許文献1参照)。図13は、特許文献1に示されているPUF(以下、グリッチPUFと称する)の基本構成図、および具体的な信号処理の説明図である。図13(a)に示したグリッチPUF1301は、データレジスタ群1320、グリッチ発生回路1330、およびビット変換回路1340を備えて構成されている。
ここで、グリッチとは、信号の値が変化する際の過渡状態に見られる、値が0と1とで激しく変化を繰り返す現象のことである。そのとき、信号波形に発生する山のことも、ここでは、グリッチと呼ぶ。
図13(a)では、組み合わせ回路で構成されたグリッチ発生回路1330への入力信号1311の値を変化させると、それに応じて出力信号1312の値が変化する。その変化が完了するまでの過渡状態において、グリッチが発生する。以後、グリッチを含む信号を、グリッチ信号と呼ぶ。
グリッチは、グリッチ発生回路1330が実装されたデバイス個体の特性によって変化する。つまり、同じグリッチ発生回路1330であっても、各デバイス毎に異なるグリッチが発生する。そこで、グリッチの形状に従って、0または1の値を決定することにより、各デバイス毎に異なるビットを生成することが可能となる。値の決定の仕方として、例えば、グリッチに含まれる山の数が偶数であれば0、奇数であれば1とする方法がある。
以上の、グリッチPUF1301によるビット生成処理の流れが、図13(b)に示されている。また、グリッチ形状をビットに変換するビット変換回路1340での処理の実装例が、図13(c)に示されている。図13(c)では、トグルフリップフロップ(以下、トグルFFと称す)を利用したビット変換回路1340、およびその動作のタイミングチャートが示されている。
トグルFFは、1回の立ち上がり信号の入力につき、出力の値が反転(0であれば1に、1であれば0に変化)する回路である。この原理により、グリッチに含まれる山の数が偶数、奇数のいずれであるかが、出力の反転回数の偶数、奇数に1対1対応し、結果、0、1のビット値に1対1対応する。
図13に示したような一連の処理で、入力信号1311に対応して1ビットが生成されることとなる。この処理を、入力信号1311の変化のさせ方を変えて複数回行うことで、複数のビットからなるビット列を生成することができる。つまり、グリッチ発生回路1330への入力信号をnビットとすると、例えば、0→1、0→2、…、0→2n−1という2n−1個の変化のさせ方を行うことで、2n−1ビットのビット列を生成することができる。
国際公開第11/086688号パンフレット
しかしながら、特許文献1に示されるグリッチPUF1301の構成には、次に述べる課題があった。グリッチPUF1301をFPGAやASIC等のデバイスに実装した際の性能は、実際にデバイスを製造するまで不明である。このため、実際にデバイスを製造した際に所望の性能を満たしていない可能性がある。ここで、性能とは、例えば、情報量やエラーレートである。
また、デバイスの製造当初は、所望の性能を満たしていても、デバイスの経年劣化によって所望の性能を満たさなくなる可能性がある。そこで、デバイスの経年劣化によって情報量が減る理由を次に説明する。グリッチは、グリッチ発生回路1330を構成するゲートの遅延特性に基づいて発生する。この遅延特性は、デバイスの経年劣化によって変化するので、グリッチの出方もデバイスの経年劣化によって変化することとなる。
図14は、従来のグリッチPEFにおけるグリッチ発生回路の経年変化の状態を示す説明図である。図14に示すように、グリッチ発生回路1430が経年変化すると、グリッチが出にくくなる、あるいはグリッチが出なくなるといった状況が発生する。その結果、生成される情報量が減ることとなる。なぜなら、例えば、上述のようにグリッチの山の数が偶数か奇数かによってビットを決定する方法においては、グリッチがそもそも出ない(山の個数が0)と、ビットが必ず0になってしまうためである。
所望の情報量やエラーレートを満たさない結果として、所望のビット長の識別子や暗号鍵の生成が行えず、製品機器が機能しない不具合が発生することとなる。
本発明は、前記のような課題を解決するためになされたものであり、デバイス製造時の影響、あるいはデバイスの経年劣化の影響を受けずに、所望の性能を満たすグリッチを出力することのできるデバイス固有情報生成装置およびデバイス固有情報生成方法を得ることを目的とする。
本発明に係るデバイス固有情報生成装置は、組み合わせ回路の出力信号に発生するグリッチを出力するグリッチ発生回路と、グリッチの形状を情報ビットに変換するビット変換回路とを有するビット生成部を備えることにより、半導体デバイス内で半導体デバイスの固有情報を生成するデバイス固有情報生成装置であって、グリッチ発生回路は、複数の組み合わせ回路が搭載されることで、複数の異なるグリッチを出力するグリッチ発生回路トップとして構成され、ビット生成部は、外部から選択信号を受信することで、グリッチ発生回路から出力される複数の異なるグリッチの中から1つのグリッチを選択してビット変換回路に対して出力するセレクタをさらに有し、複数の異なるグリッチの中から1つを順次選択するように選択信号を出力することで、複数の異なるグリッチのそれぞれに対応してビット変換回路で変換されたそれぞれのビット情報を取得し、それぞれのビット情報に基づいて、所望の性能を満たしているグリッチを特定し、特定したグリッチを半導体デバイスの固有情報として出力するように、選択信号を特定する性能評価・制御部をさらに備えるものである。
また、本発明に係るデバイス固有情報生成方法は、組み合わせ回路の出力信号に発生するグリッチを出力するグリッチ発生回路と、グリッチの形状を情報ビットに変換するビット変換回路とを有するデバイス固有情報生成装置に適用され、半導体デバイス内で半導体デバイスの固有情報を生成するためのデバイス固有情報生成方法であって、グリッチ発生回路に搭載された複数の組み合わせ回路を介して出力される複数の異なるグリッチの中から1つのグリッチを選択してビット変換回路に対して出力させる選択信号を出力するステップと、複数の異なるグリッチの中から1つを順次選択するように選択信号を出力することで、複数の異なるグリッチのそれぞれに対応してビット変換回路で変換されたそれぞれのビット情報を取得し、それぞれのビット情報に基づいて、所望の性能を満たしているグリッチを特定するステップと、特定したグリッチを半導体デバイスの固有情報として出力するように、選択信号を特定するステップとを備えるものである。
本発明に係るデバイス固有情報生成装置およびデバイス固有情報生成方法によれば、グリッチ発生回路を複数搭載し、その中から所望の性能に近いグリッチ発生回路を選択可能とすることにより、デバイス製造時の影響、あるいはデバイスの経年劣化の影響を受けずに、所望の性能を満たすグリッチを出力することのできるデバイス固有情報生成装置およびデバイス固有情報生成方法を得ることができる。
本発明の実施の形態1におけるデバイス固有情報生成装置内のグリッチ発生回路の基本アイデアを説明するための図である。 本発明の実施の形態1におけるグリッチの安定性に関する説明図である。 本発明の実施の形態1におけるデバイス固有情報生成装置の第1の構成例を示す図である。 本発明の実施の形態1におけるデバイス固有情報生成装置の第2の構成例を示す図である。 本発明の実施の形態1における性能評価・制御部に含まれるエラーレート評価回路の構成例を示す図である。 本発明の実施の形態1における情報量を評価するためのデバイス固有情報生成装置の構成例、および性能評価・制御部に含まれる情報量評価回路の構成例を示す図である。 本発明の実施の形態1におけるデバイス固有情報生成装置を含むシステム構成例を示す図である。 本発明の実施の形態1における図7に示すグリッチPUFの初期設定のフローチャートである。 本発明の実施の形態1における図7に示すグリッチPUFの再設定のフローチャートである。 本発明の実施の形態2における鍵生成を行う場合の性能評価・制御部の構成図である。 本発明の実施の形態2における図10に示すグリッチPUFの初期設定のフローチャートである。 本発明の実施の形態2における図10に示すグリッチPUFの再設定のフローチャートである。 特許文献1に示されているPUFの基本構成図、および具体的な信号処理の説明図である。 従来のグリッチPEFにおけるグリッチ発生回路の経年変化の状態を示す説明図である。
以下、本発明のデバイス固有情報生成装置およびデバイス固有情報生成方法の好適な実施の形態につき図面を用いて説明する。
実施の形態1.
本発明の基本アイデアは、グリッチ発生回路として、特性の異なるものを複数個搭載することである。特性として、グリッチの発生個数に着目し、あまりグリッチが発生しないグリッチ発生回路から、グリッチが大量に発生するグリッチ発生回路までを、多数搭載する。その目的から、特に、単純で小さな論理回路を直列に接続していくことで、段階的に論理の複雑さを増し、グリッチの発生を増加させていく構成を基本とする。
図1は、本発明の実施の形態1におけるデバイス固有情報生成装置内のグリッチ発生回路の基本アイデアを説明するための図である。図1に示したグリッチ発生回路130は、同一の論理回路Aを4個(論理回路131(1)〜131(4)に相当)、直列に接続して構成されている。ここで、論理回路Aは、線形回路であってもよいし、非線形回路であってもよい。
グリッチ発生回路130への入力信号を変化させると、各論理回路131(1)〜131(4)の出力にグリッチが発生する。これらの出力は、同じ論理回路Aを直列に接続した1段目・2段目・3段目・4段目の出力であり、段数が進むに従って、グリッチがより多く発生することとなる。
これにより、たとえば、図1の例では、1段目の論理回路131(1)の出力は、グリッチが少なく情報量が少ない。一方、3段目の論理回路131(3)および4段目の論理回路131(4)の出力は、グリッチが多く不安定である。これに対して、2段目の論理回路131(2)の出力は、グリッチと安定性のバランスがよい、といった状況が起こる。
ここで、安定性について、図2を用いて説明する。図2は、本発明の実施の形態1におけるグリッチの安定性に関する説明図であり、具体的には、同じ入力信号に対して、動作毎に異なるパターンのグリッチが発生し、毎回生成されるビットが異なる状況を表している。このような状態を不安定と呼ぶ。不安定な状態では、動作毎のビットの再現性がないため、生成されたビットを情報として使うことができない。つまり、PUFとして使用可能な情報量が減ることを意味する。
先の図1において、グリッチが多く発生(3段目の論理回路131(3)の出力、あるいは4段目の論理回路131(4)の出力に相当)した方が、情報量は高くなるが、同時に、グリッチが多く発生する状態は、不安定である。従って、論理回路Aの段数を増やしてグリッチを増やすと、初めはPUFとして使用可能な情報量が増加するが、どこかの時点で減少に転じる。それが2段目と3段目の境界である。このことから、グリッチの数と安定性の両立を考慮すると、図1に示した例では、2段目の論理回路131(2)の出力が、PUFとしての利用に最適と言える。
また、3段目の論理回路131(3)の出力は、経年劣化後にPUFとして最適となる可能性がある。つまり、現時点ではグリッチが多くて不安定であるが、経年劣化によってグリッチが出にくくなった際には、この3段目の論理回路131(3)の出力が、PUFとして最適になり得る。
さらに、4段目の論理回路131(4)の出力は、PUFとしてではなく、乱数発生器としての利用が可能である。すなわち、4段目の論理回路131(4)の出力は、グリッチが非常に多くて不安定であるため、図2に示したように、毎回の出力が安定しない。従って、この4段目の論理回路131(4)の出力は、PUFとしては使えないが、逆に、乱数として使えるようになるのである。
以上の原理を踏まえ、本実施の形態1におけるデバイス固有情報生成装置の内部構成について、いくつかの具体例を図示しながら、次に説明する。図3は、本発明の実施の形態1におけるデバイス固有情報生成装置の第1の構成例を示す図である。図3に示したデバイス固有情報生成装置に相当するグリッチPUF301は、ビット生成部310と性能評価・制御部350とを備えて構成されている。
ここで、ビット生成部310は、ビット生成を行う機能を有し、データレジスタ群320,グリッチ発生回路トップ330、およびビット変換回路340を備えている。一方、性能評価・制御部350は、ビット生成部310で生成されるビットの性能評価を行うとともに、所望の性能に近いグリッチが発生するように、ビット制御部310を制御する機能を有している。
次に、ビット生成部310の内部構成について、詳細に説明する。ビット生成部310内のデータレジスタ群320は、グリッチ発生回路トップ330に入力されるデータを保持するレジスタ群である。
そして、グリッチ発生回路トップ330は、同じ論理回路AをN段直列に接続してなる論理回路331(1)〜331(N)、およびセレクタ332を備えている。ここで、論理回路331(1)〜331(N)の動作は、先の図1における4段の論理回路を有するグリッチ発生回路130と同様である。
また、セレクタ320は、性能評価・制御部350から出力される選択信号に基づいて、論理回路331(1)〜331(N)のいずれの段の出力を選択してビット変換回路340に与えるかを選択切換する。このような構成を備えることで、グリッチ発生回路トップ330は、グリッチの発生数を段階的に増加させる構成を備えるとともに、性能評価・制御部350から出力される選択信号により、N個のグリッチ信号の中から、いずれか1つを選択することを可能としている。
なお、論理回路Aに関しては、先の図1で説明したように、線形回路であっても、非線形回路であってもよい。設計方針の一例としては、実装サイズを抑える目的のために、単独では単純で小さな論理回路を用い、その段数Nを増やすことで、論理の複雑度を増していく構成が挙げられる。
次に、図4は、本発明の実施の形態1におけるデバイス固有情報生成装置の第2の構成例を示す図である。図4に示したデバイス固有情報生成装置に相当するグリッチPUF401は、ビット生成部410と性能評価・制御部450とを備えて構成されている。また、ビット生成部410は、データレジスタ群420,グリッチ発生回路トップ430、およびビット変換回路440を備えている。
図4に示した第2の構成例と、先の図3で示した第1の構成例とを比較すると、基本的な構成は同じであるが、グリッチ発生回路トップの内部構成が異なっている。そこで、この相違点を中心に、以下に説明する。先の図3で示した第1の構成例におけるグリッチ発生回路トップ330は、論理回路AをN段接続し、その各段からの出力を選択することで、合計N個のグリッチ信号を生成していた。
一方、図4に示した第2の構成例におけるグリッチ発生回路トップ430は、全く別々のN個のグリッチ発生回路431(1)〜431(N)、およびセレクタ432を備えている。すなわち、グリッチ発生回路トップ430は、全く別々のグリッチ発生回路をN個実装することで、N個のグリッチ信号を生成している。
この図4の構成におけるグリッチ発生回路431(1)〜431(N)の例としては、暗号アルゴリズムのS−boxが挙げられる。DES、AES、MISTY、Camelliaといった、様々な暗号アルゴリズムのS−boxを利用することで、異なるグリッチ発生回路を実装することが可能である。
次に、図3における性能評価・制御部350、および図4における性能評価・制御部450について、説明する。両者の機能は同一であり、ここでは、図3を用いて、性能評価・制御部350の機能について、具体的に説明する。
性能評価・制御部350は、セレクタ332を制御し、N個のグリッチ信号を1個ずつ選択する。これにより、ビット変換回路340は、各段に対応するグリッチ信号をビットに変換することで、各段に対応するビットを生成できる。ここで、性能評価・制御部350は、ある段に対するビット生成を繰り返し(例えば100回)行わせるようにセレクタ332を制御し、その際に、ビット変換回路340の出力として、初回に得られた値と、2回目以降に得られた値とを比較することで、エラーレートの評価を行うことができる。
図5は、本発明の実施の形態1における性能評価・制御部に含まれるエラーレート評価回路の構成例を示す図である。エラーレート評価回路560は、初回のビット値を保持するレジスタ561、初回のビット値と2回目以降のビット値とを比較する比較器562、およびその比較結果が不一致だった回数を数えて保持するレジスタ563を備えている。
比較器562は、比較結果が不一致であった場合には、レジスタ563のイネーブル信号を生成する。そして、レジスタ563は、イネーブル信号に応じてレジスタの値を1増やすことで、不一致回数を数えることができる。例えば、100回の比較を行った後のレジスタ563の値が10であれば、エラーレート評価回路560は、エラーレートが10%であると判定する。
このように、エラーレートは、同一のデバイス内でのビット生成を、例えば100回繰り返し、その100個のビット値を用いて評価することができる。一方、情報量を評価するためには、複数の、例えば100個の異なるデバイスに対して生成された100個のビット値が必要である。したがって、同一のデバイス内に、疑似的に複数デバイスが存在する状況を作る必要がある。
図6は、本発明の実施の形態1における情報量を評価するためのデバイス固有情報生成装置の構成例、および性能評価・制御部に含まれる情報量評価回路の構成例を示す図である。図6(a)に示したデバイス固有情報生成装置に相当するグリッチPUF601は、データレジスタ群620、M個のグリッチ発生回路トップ630(1)〜630(M)、セレクタ632、ビット変換回路640、および性能評価・制御部650を備えて構成されている。
ここで、データレジスタ群620、セレクタ632、ビット変換回路640、および性能評価・制御部650のそれぞれは、先の図3におけるデータレジスタ群320、セレクタ332、ビット変換回路340、および性能評価・制御部350と同一の機能を有するものである。
また、M個のグリッチ発生回路トップ630(1)〜630(M)は、先の図3におけるグリッチ発生回路トップ330、あるいは先の図4におけるグリッチ発生回路トップ430に相当するグリッチ発生回路トップ(すなわち、N個のグリッチ信号を生成するために、グリッチ発生回路をN個有するもの)を、同一のレイアウトでM個、デバイス上に実装したものである。
そして、性能評価・制御部650は、セレクタ632を制御することで、M個のグリッチ発生回路トップ630(1)〜630(M)の中のいずれか1つの出力を選択可能としている。これにより、グリッチPUF601は、疑似的にM個のデバイスに対するグリッチPUFを構成し、疑似的にM個のデバイスに対するビットを生成している。さらに、グリッチPUF601は、擬似的に生成したM個のビット値に対する統計処理を性能評価・制御部650で行うことにより、情報量を評価することが可能となる。
あるビットが持つ情報量は、例えば、シャノンのエントロピーによって測られる。シャノンのエントロピーは、ビットが0となる確率がp(1となる確率が1−p)のとき、
−p×log2(p)−(1−p)×log2(1−p) (1)
と定義される。なお、log2は、2を底とする対数関数である。
対数関数を回路として実現すると、実装サイズが大きくなるため、pの値のみから情報量に関する評価を行うことが望ましい。ここで、上式(1)は、p=0.5で最大値を取る左右対称の凸関数であるため、情報量のおおよその大小は、pの値から判定できる。そこで、図6(b)を用いて、性能評価・制御部650に含まれる情報量評価回路670の機能について説明する。
図6(b)に示した情報量評価回路670は、比較器671、および2つのレジスタ672、673を備えて構成されている。比較器671は、ビット変換回路640で生成されたビット値が0であるか否かを判定し、その結果からレジスタ672およびレジスタ673のイネーブル信号を生成する。
2つのレジスタ672、673のイネーブル信号は、互いの反転となっており、レジスタ672は、ビット値が0であるときに値が増加するカウンタとして機能し、レジスタ673は、ビット値が1であるときに値が増加するカウンタとして機能する。上述した、グリッチPUF601で生成されるM個のビット値に対し、性能評価・制御部650として、この情報量評価回路670を用いることで、M個中の0と1の個数を数えることが可能となり、その結果、情報量の評価が可能となる。
この回路は、また、米国のNIST SP800−22が定める乱数検定の、ビットの0/1等頻度性評価の目的にも使用可能である。
次に、ここまでで説明したビット生成部、および、性能評価・制御部を、CPUやメモリも含むシステムとして構成する例について説明する。図7は、本発明の実施の形態1におけるデバイス固有情報生成装置を含むシステム構成例を示す図である。図7に示したデバイス固有情報生成装置に相当するグリッチPUF701は、ビット生成部710と性能評価・制御部750とを備えて構成されている。
ビット生成部710は、データレジスタ群720、M個のグリッチ発生回路トップ730(1)〜730(M)、セレクタ732、およびビット変換回路740を備えており、先の図6(a)と同様に、同一のレイアウトでM個、デバイス上に実装されたグリッチ発生回路トップ730(1)〜730(M)を有している。そして、ビット生成部710で生成されたビット列は、性能評価・制御部750に入力される。
性能評価・制御部750は、誤り訂正回路751、OWHF回路752、比較・判定回路753、性能評価回路754、および制御回路755を備えている。誤り訂正回路751は、性能評価・制御部750に入力されたビット列が含む誤りを訂正するための回路である。OWHF回路752は、誤り訂正後のビット列のハッシュ値を取る回路である。
比較・判定回路753は、生成したハッシュ値を以前生成したハッシュ値と比較する回路である。性能評価回路754は、性能評価・制御部750に入力されたビット列の性能を評価する回路である。さらに、制御回路755は、比較・判定回路753による判定結果、および性能評価回路754による評価結果に基づいて、ビット生成部710を制御する回路である。
さらに、図7に示すグリッチPUF701は、システムバス780を介して、CPU781、メモリ782、I/O783と接続されている。
次に、フローチャートを用いて、図7に示した構成を備えるグリッチPUF701の動作について、詳細に説明する。図8は、本発明の実施の形態1における図7に示すグリッチPUF701の初期設定のフローチャートである。また、図9は、本発明の実施の形態1における図7に示すグリッチPUF701の再設定のフローチャートである。
まず始めに、図8を用いて、初期設定の一連処理について、それぞれのステップ毎に説明する。
ステップS801:制御回路755が、ビットb(1、1、1)〜ビットb(N、M、2n−1)を得るステップである。ここで、b(i、j、k)の1つ目の添え字iは、グリッチ発生回路の番号である(i=1、…、N)。すなわち、先の図3においては、論理回路331(1)〜331(N)のいずれかを選択する番号に相当し、先の図4においては、グリッチ発生回路431(1)〜431(N)のいずれかを選択する番号に相当する。
また、2つ目の添え字jは、同一レイアウトでM個実装したグリッチ発生回路トップ730(1)〜730(M)のいずれかを選択する番号に相当する(j=1、…、M)。さらに、3つ目の添え字kは、グリッチ発生回路への入力変化パターンを表す番号であり、入力信号をnビットとすると、2n−1ビットのビット列に相当する。
ステップS802:性能評価回路754が、ビットb(1、1、1)、…、b(N、M、2n−1)の性能を評価するステップである。性能評価回路754は、その評価結果から、所望の性能を満たす添え字i(i=1、…、N)を選び、添え字iをメモリ782に保持する。
なお、添え字jに関しては、情報量を評価するためにM個のデバイスを疑似的に実装したものを表す添え字であるので、評価後、実際に使用するのは、この中の1つでよい。以降、j=1を使用するとして説明する。
ステップS803:誤り訂正回路751が、j=1とした場合の、所望の性能を満たす添え字iに対応するビット列w(i)=(b(i、1、1)、…、b(i、1、2n−1))に対し、誤り訂正に必要なシンドロームsを生成し、メモリ782に保持するステップである。
ステップS804:OWHF回路752が、ビット列w(i)のハッシュ値hを計算し、メモリ782に保持するステップである。
以上が、初期設定のフローチャートである。このような一連処理により、性能評価・制御部750は、所望の性能を満たす添え字i、ビット列w(i)の誤り訂正に必要なシンドロームs、およびビット列w(i)のハッシュ値hを、初期設定することができる。
次に、図9を用いて、再設定の一連処理について、それぞれのステップ毎に説明する。
ステップS901:制御回路755が、カウンタcntの値を0で初期化するステップである。このカウンタcntは、ステップS903の誤り訂正が失敗した回数を表している。
ステップS902:制御回路755が、ビット生成部710を制御することで、先の初期設定で決定した添え字iに対応するビット列w(i)’を生成するステップである。制御回路755は、添え字iをメモリ782から読み出す。そして、制御回路755は、グリッチ発生回路iを選択するための選択信号を生成し、この選択信号は、1台目(j=1に相当)のグリッチ発生回路トップ730(1)内のセレクタに入力される。これにより、ビット列w(i)’の生成が可能となる。なお、ビット列w(i)’は、通常、誤りを含むため、初期設定で生成したw(i)とは異なる値となり、「’」を付している。
ステップS903:誤り訂正回路751が、ビット列w(i)’に対して誤り訂正処理を行い、ビット列w(i)’’を得るステップである。誤り訂正回路751は、初期設定で生成した誤り訂正用のシンドロームsをメモリ782から読み出し、ビット列w(i)’に対して誤り訂正処理を行う。誤り訂正後のビット列w(i)’’は、初期設定で生成したビット列w(i)と一致することが期待される。
ステップS904:OWHF回路752が、ビット列w(i)’’のハッシュ値h’’を計算するステップである。
ステップS905:比較・判定回路753が、ハッシュ値h’’を、初期設定で生成したハッシュ値hと比較し、比較結果により処理を分岐させるステップである。h=h’’となった場合は、ステップS903における誤り訂正が成功し、初期設定で生成したビット列w(i)を再生成できたことを意味する。逆に、h≠h’’となった場合は、ステップS903における誤り訂正に失敗し、初期設定で生成したビット列w(i)の再生成ができなかったことを意味する。
ステップS906:制御回路755が、ステップS905でh≠h’’となった場合に、誤り訂正の失敗回数を表すカウンタcntの値を1増やし、次のステップS907に進むステップである。
ステップS907:カウンタcntの値が、ある所定のしきい値Uを超えているか否かを、制御回路755が判定するステップである。カウンタcntがUを超えていない場合、ステップS902に戻り、制御回路755は、再びビット列生成と誤り訂正を行う。
ステップS908:ステップS907において、cnt>Uとなった場合、制御回路755が、失敗通知を行うステップである。これは、制御回路755が、これ以上ビット列生成と誤り訂正を続けても、ビット列w(i)を再生成できないと判定したことを意味する。
ステップS909:ステップS905において、ハッシュ値がh=h’’となり、ビット列w(i)の再生成に成功したとき、カウンタcntの値が、あるしきい値Vを超えているか否かを制御回路755が判定するステップである。制御回路755は、cntがVを超えていない場合には、再設定処理を終了する。なお、UとVの関係は、U>Vである。
ステップS910:ステップS909において、cnt>Vとなった場合、性能評価・制御部750が、初期設定の処理を行って新たな添え字i’を選択するステップである。これは、ビット列w(i)の再生成に何度も失敗したため、性能評価・制御部750が、回路特性が大幅に変わったと判断し、ビット列w(i)の再生成ができなくなる前に、初期設定をやり直すことで、新たなi’を選び直したことを意味する。
以上が、再設定のフローチャートである。このような一連処理により、性能評価・制御部750は、デバイス製造の影響、あるいはデバイスの経年劣化の影響を受けずに、所望の性能(情報量やエラーレート)を満たすグリッチを出力することを保証でき、必要に応じて初期設定をやり直すことができる。
以上のように、実施の形態1によれば、グリッチ発生回路を複数搭載し、それらの情報量評価が可能である。従って、複数のグリッチ発生回路の中から使用するグリッチ発生回路を選択可能とすることで、所望の性能を満たす可能性を高めることができる。さらに、性能評価・制御部を備えることで、実際に、所望の性能を満たしているグリッチ発生回路の選択が可能となる。
さらに、これらの特徴を持つことにより、デバイス製造時やデバイスの経年劣化後に、グリッチPUFが所望の情報量を満たすことを保証できる。この結果、グリッチPUFを利用した製品機器の機能が正常に動作することを保証する、あるいは機能の保証期間をより長くすることなどが可能となる。
さらに、複数のグリッチ発生回路を搭載し、特に、グリッチが発生しやすく毎回のビット生成の再現性が低いグリッチ発生回路を搭載し、生成したビットの0/1等頻度性評価を行えることから、グリッチPUFの乱数発生器としての使用も可能となる。
実施の形態2.
先の実施の形態1では、最適なグリッチ発生回路の選択を行う初期設定、およびグリッチ発生回路の特性が変化したときの再設定に関して説明した。これに対して、本実施の形態2では、グリッチ発生回路を用いた具体的な応用例について説明する。
グリッチPUFによるビット列生成を用いて、暗号アルゴリズムで使用するための鍵生成を行うことができる。図10は、本発明の実施の形態2における鍵生成を行う場合の性能評価・制御部の構成図である。本実施の形態2における性能評価・制御部1050は、誤り訂正回路1051、OWHF回路1052、比較・判定回路1053、性能評価回路1054、制御回路1055、およびHF回路1056を備えている。また、本実施の形態2における図10の構成では、暗号回路1090が含まれている。
先の実施の形態1における図7の構成と比較すると、本実施の形態2における図10の性能評価・制御部1050は、ビット列をランダム化することを目的としたハッシュ関数(HF回路1056)をさらに備えている点が異なっている。このHF回路1056の働きにより、グリッチPUF1001で生成したビット列を、暗号アルゴリズムの鍵として使用することが可能となる。
次に、フローチャートを用いて、図10に示した構成を備えるグリッチPUF1001の動作について、詳細に説明する。図11は、本発明の実施の形態2における図10に示すグリッチPUF1001の初期設定のフローチャートである。また、図12は、本発明の実施の形態2における図10に示すグリッチPUF1001の再設定のフローチャートである。
まず始めに、図11を用いて、初期設定の一連処理について、それぞれのステップ毎に説明する。なお、この図11のフローチャートは、先の実施の形態1における図8のフローチャートに、鍵生成に関する処理を追加したものとなっている。具体的には、ステップS1102〜S1105は、ステップS801〜S804と同一であり、ステップS1101、S1105〜S1108が、鍵生成に関する処理として新たに追加されたステップに相当する。
ステップS1101:暗号回路1090が、I/O1082からマスター鍵mkを入力し、内部のレジスタに保持するステップである。
ステップS1102:制御回路1055が、ビットb(1、1、1)〜ビットb(N、M、2n−1)を得るステップである。
ステップS1103:性能評価回路1054が、ビットb(1、1、1)、…、b(N、M、2n−1)の性能を評価するステップである。性能評価回路1054は、その評価結果から、所望の性能を満たす添え字i(i=1、…、N)を選び、添え字iをメモリ1082に保持する。
ステップS1104:誤り訂正回路1051が、j=1とした場合の、所望の性能を満たす添え字iに対応するビット列w(i)=(b(i、1、1)、…、b(i、1、2n−1))に対し、誤り訂正に必要なシンドロームsを生成し、メモリに保持するステップである。
ステップS1105:OWHF回路1052が、ビット列w(i)のハッシュ値hを計算し、メモリ1082に保持するステップである。
ステップS1106:HF回路1056が、ビット列w(i)のハッシュ値kを計算し、暗号回路1090の内部レジスタに保持するステップである。このkが、グリッチPUF1001を用いて生成した暗号鍵に相当する。
ステップS1107:暗号回路1090が、ステップS1106で生成した暗号鍵kを用いてマスター鍵mkを暗号化し、暗号化データxを得るステップである。暗号回路1090は、暗号化データxをメモリ1082に保持する。
ステップS1108:暗号回路1090が、内部のレジスタに保持していたマスター鍵mkと暗号鍵kを消去するステップである。
上述した図11におけるフローチャートには、2つの暗号鍵mkとkが存在するが、マスター鍵mkが実際にデータを暗号化するための鍵であり、グリッチPUFで生成した暗号鍵kは、マスター鍵mkを暗号化するための鍵である。ここで、暗号鍵kをデータの暗号化に使わない理由は、グリッチPUF1001の出力は、デバイスの経年劣化によって変化し、初期設定と同じ暗号鍵kを再生成することが、いずれ不可能になるためである。
以上が、初期設定のフローチャートである。このような一連処理により、性能評価・制御部1050は、所望の性能を満たす添え字i、ビット列w(i)の誤り訂正に必要なシンドロームs、およびビット列w(i)のハッシュ値hを、初期設定することができる。さらに、性能評価・制御部1050は、マスター鍵mkの入手、暗号鍵kの生成、および暗号化データxの生成を行うことができる。
次に、図12を用いて、再設定の一連処理について、それぞれのステップ毎に説明する。なお、この図12のフローチャートは、先の実施の形態1における図9のフローチャートに、鍵管理に関する処理を追加したものとなっている。具体的には、ステップS1201〜S1208は、ステップS901〜S908と同一であり、ステップS1211は、ステップS909と同一であり、ステップS1209、S1210、S1212が、鍵管理に関する処理として新たに追加されたステップに相当する。
ステップS1201:制御回路1055が、カウンタcntの値を0で初期化するステップである。
ステップS1202:制御回路1055が、ビット生成部1010を制御することで、先の初期設定で決定した添え字iに対応するビット列w(i)’を生成するステップである。
ステップS1203:誤り訂正回路1051が、ビット列w(i)’に対して誤り訂正処理を行い、ビット列w(i)’’を得るステップである。
ステップS1204:OWHF回路1052が、ビット列w(i)’’のハッシュ値h’’を計算するステップである。
ステップS1205:比較・判定回路1053が、ハッシュ値h’’を、初期設定で生成したハッシュ値hと比較し、比較結果により処理を分岐させるステップである。
ステップS1206:制御回路1055が、ステップS1205でh≠h’’となった場合に、誤り訂正の失敗回数を表すカウンタcntの値を1増やし、次のステップS1207に進むステップである。
ステップS1207:カウンタcntの値が、ある所定のしきい値Uを超えているか否かを、制御回路1055が判定するステップである。カウンタcntがUを超えていない場合、ステップS1202に戻り、制御回路1055は、再びビット列生成と誤り訂正を行う。
ステップS1208:ステップS1207において、cnt>Uとなった場合、制御回路1055が、失敗通知を行うステップである。
ステップS1209:HF回路1056が、ビット列w(i)’’のハッシュ値kを計算するステップである。S1205において、h=h’’であったことから、w(i)’’=w(i)であるので、ここで求めたハッシュ値kは、w(i)のハッシュ値kと一致する。これは、初期設定で生成した鍵の再生成に成功したことを意味する。OWHF回路1052は、計算したハッシュ値kを、再生成した鍵kとして、暗号回路1090の内部のレジスタに保持する。
ステップS1210:暗号回路1090が、再生成した鍵kを用いてデータxを復号し、マスター鍵mkを得るステップである。暗号回路1090は、マスター鍵mkを内部のレジスタに保持する。
ステップS1211:カウンタcntの値が、あるしきい値Vを超えているか否かを、制御回路1055が判定するステップである。制御回路1055は、cntがVを超えていない場合には、S1212に進む。
ステップS1212:暗号回路1090が、マスター鍵mkを用いて暗号処理を行うステップである。
ステップS1213:ステップS1211において、cnt>Vとなった場合、性能評価・制御部1050が、初期設定の処理を行って新たな添え字i’の選択、および、それに対応する新たな鍵k’によるmkの暗号化を行うステップである。これは、ビット列w(i)の再生成に何度も失敗したため、性能評価・制御部1050が、回路特性が大幅に変わったと判断し、ビット列w(i)の再生成ができなくなる(従って、kが再生成できなくなる)前に、初期設定をやり直すことで、新たなi’を選び直したことを意味する。
以上が、再設定のフローチャートである。このような一連処理により、性能評価・制御部1050は、デバイス製造の影響、あるいはデバイスの経年劣化の影響を受けずに、所望の性能(情報量やエラーレート)を満たすグリッチを出力することを保証でき、必要に応じて初期設定をやり直すことができる。さらに、鍵管理に関する処理に応用することができる。
以上のように、実施の形態2によれば、先の実施の形態1の効果を有するグリッチPUFによるビット列生成を用いて、暗号アルゴリズムで使用するための鍵生成を行うことができ、暗号処理への応用が可能となる。
本発明に係るデバイス固有情報生成装置は、半導体デバイス内で半導体デバイスの固有情報を生成するデバイス固有情報生成装置であって、論理回路を直列に接続して多段構成され、各段の出力信号に発生する複数の異なるグリッチを出力するグリッチ発生回路と外部から選択信号を受信、グリッチ発生回路から出力される複数の異なるグリッチの中から1つのグリッチを選択して出力するセレクタセレクタにより選択されたグリッチの形状をビット情報に変換するビット変換回路と、複数の異なるグリッチを1つずつ選択するように選択信号を出力することで、複数の異なるグリッチのそれぞれに対応してビット変換回路で変換されたそれぞれのビット情報を取得し、取得したビット情報の性能を評価して選択するグリッチを特定し、特定したグリッチを半導体デバイスの固有情報として出力するように、選択信号を特定する性能評価制御部とを備えるものである。
また、本発明に係るデバイス固有情報生成方法は、半導体デバイス内で半導体デバイスの固有情報を生成するためのデバイス固有情報生成方法であって、論理回路を直列に接続して多段構成された回路を用いて、各段の出力信号に発生する複数の異なるグリッチを出力するグリッチ発生ステップと、外部から選択信号を受信し、グリッチ発生ステップから出力される複数の異なるグリッチの中から1つのグリッチを選択して出力するグリッチ選択ステップと、グリッチ選択ステップにより選択されたグリッチの形状をビット情報に変換するビット変換ステップと、複数の異なるグリッチを1つずつ選択するように選択信号を出力することで、複数の異なるグリッチのそれぞれに対応してビット変換ステップで変換されたそれぞれのビット情報を取得し、取得したビット情報の性能を評価して選択するグリッチを特定、特定したグリッチを半導体デバイスの固有情報として出力するように、選択信号を特定する性能評価制御ステップとを備えるものである。

Claims (8)

  1. 組み合わせ回路の出力信号に発生するグリッチを出力するグリッチ発生回路と、
    前記グリッチの形状を情報ビットに変換するビット変換回路と
    を有するビット生成部を備えることにより、半導体デバイス内で前記半導体デバイスの固有情報を生成するデバイス固有情報生成装置であって、
    前記グリッチ発生回路は、複数の組み合わせ回路が搭載されることで、複数の異なるグリッチを出力するグリッチ発生回路トップとして構成され、
    前記ビット生成部は、外部から選択信号を受信することで、前記グリッチ発生回路から出力される前記複数の異なるグリッチの中から1つのグリッチを選択して前記ビット変換回路に対して出力するセレクタをさらに有し、
    前記複数の異なるグリッチの中から1つを順次選択するように前記選択信号を出力することで、前記複数の異なるグリッチのそれぞれに対応して前記ビット変換回路で変換されたそれぞれのビット情報を取得し、前記それぞれのビット情報に基づいて、所望の性能を満たしているグリッチを特定し、特定したグリッチを前記半導体デバイスの前記固有情報として出力するように、前記選択信号を特定する性能評価・制御部
    をさらに備えるデバイス固有情報生成装置。
  2. 請求項1に記載のデバイス固有情報生成装置において、
    前記グリッチ発生回路を構成する前記グリッチ発生回路トップは、同一の論理回路を直列に接続することで多段構成され、各段の出力信号を前記複数の異なるグリッチとして出力する
    デバイス固有情報生成装置。
  3. 請求項1に記載のデバイス固有情報生成装置において、
    前記グリッチ発生回路を構成する前記グリッチ発生回路トップは、回路構成が異なる複数のグリッジ発生回路で構成され、前記複数のグリッジ発生回路のそれぞれの出力信号を前記複数の異なるグリッチとして出力する
    デバイス固有情報生成装置。
  4. 請求項1ないし3のいずれか1項に記載のデバイス固有情報生成装置において、
    前記性能評価・制御部は、前記複数の異なるグリッチの中から1つを順次選択するように前記選択信号を出力することで、前記複数の異なるグリッチのそれぞれに対応して前記ビット変換回路で変換されたそれぞれのビット情報を取得する操作を繰り返し実行し、繰り返し回数に対する前記ビット情報の一致度から、前記複数の異なるグリッチのそれぞれのエラーレートの評価を行うエレーレート評価回路を含む
    デバイス固有情報生成装置。
  5. 請求項1ないし4のいずれか1項に記載のデバイス固有情報生成装置において、
    前記グリッチ発生回路は、1つの前記半導体デバイス上に、前記グリッチ発生回路トップを複数個搭載して構成され、
    前記ビット生成部は、外部から第2の選択信号を受信することで、複数のグリッチ発生回路トップのそれぞれの出力の中から1つを選択して前記ビット変換回路に対して出力する第2のセレクタをさらに有し、
    前記性能評価・制御部は、前記複数のグリッチ発生回路トップのそれぞれの出力の中から1つを順次選択するように前記第2の選択信号を出力するとともに、それぞれのグリッチ発生回路トップに対するnビット(nは2以上の整数)の入力信号を順次変化させることで、前記複数のグリッチ発生回路トップのそれぞれに対応して前記ビット変換回路で変換されたそれぞれのビット情報を2n−1ビットのビット列として取得する操作を実行し、ビット列に含まれるビット値が1のビット数をカウントすることで前記複数のグリッチ発生回路トップのそれぞれの情報量評価を行う情報量評価回路を含む
    デバイス固有情報生成装置。
  6. 請求項4または5に記載のデバイス固有情報生成装置において、
    前記性能評価・制御部は、
    前記ビット生成部内の前記ビット変換回路を介して取り込んだビット列に含まれる誤りを訂正するための誤り訂正回路と、
    前記誤り訂正回路による誤り訂正後のビット列のハッシュ値を生成するOWHF回路と、
    前記OWHF回路で生成された前記ハッシュ値を、それ以前に生成したハッシュ値と比較する比較・判定回路と、
    前記ビット列の性能として、前記エラーレート評価あるいは前記情報量評価を行う性能評価回路と、
    前記比較・判定回路による判定結果、および性能評価回路による評価結果に基づいて、前記ビット生成部から出力される前記情報ビットが、所望の性能を満たしているグリッチから生成されるように制御する制御回路と
    を有するデバイス固有情報生成装置。
  7. 請求項6に記載のデバイス固有情報生成装置において、
    前記性能評価・制御部は、
    前記誤り訂正回路による誤り訂正後のビット列をランダム化してハッシュ値を求めることで、暗号鍵を生成するHF回路
    をさらに有するデバイス固有情報生成装置。
  8. 組み合わせ回路の出力信号に発生するグリッチを出力するグリッチ発生回路と、
    前記グリッチの形状を情報ビットに変換するビット変換回路と
    を有するデバイス固有情報生成装置に適用され、半導体デバイス内で前記半導体デバイスの固有情報を生成するためのデバイス固有情報生成方法であって、
    前記グリッチ発生回路に搭載された複数の組み合わせ回路を介して出力される前記複数の異なるグリッチの中から1つのグリッチを選択して前記ビット変換回路に対して出力させる選択信号を出力するステップと、
    前記複数の異なるグリッチの中から1つを順次選択するように前記選択信号を出力することで、前記複数の異なるグリッチのそれぞれに対応して前記ビット変換回路で変換されたそれぞれのビット情報を取得し、前記それぞれのビット情報に基づいて、所望の性能を満たしているグリッチを特定するステップと、
    特定したグリッチを前記半導体デバイスの前記固有情報として出力するように、前記選択信号を特定するステップと
    を備えるデバイス固有情報生成方法。
JP2013550030A 2011-12-22 2011-12-22 デバイス固有情報生成装置およびデバイス固有情報生成方法 Active JP5646091B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/079820 WO2013094056A1 (ja) 2011-12-22 2011-12-22 デバイス固有情報生成装置およびデバイス固有情報生成方法

Publications (2)

Publication Number Publication Date
JP5646091B2 JP5646091B2 (ja) 2014-12-24
JPWO2013094056A1 true JPWO2013094056A1 (ja) 2015-04-27

Family

ID=48667980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013550030A Active JP5646091B2 (ja) 2011-12-22 2011-12-22 デバイス固有情報生成装置およびデバイス固有情報生成方法

Country Status (8)

Country Link
US (1) US9361482B2 (ja)
JP (1) JP5646091B2 (ja)
KR (1) KR101576408B1 (ja)
CN (1) CN103946909B (ja)
DE (1) DE112011106024B4 (ja)
IN (1) IN2014CN03264A (ja)
TW (1) TWI505641B (ja)
WO (1) WO2013094056A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2508052A (en) * 2012-11-18 2014-05-21 Nds Ltd Glitch resistant device
JP6213345B2 (ja) * 2014-03-31 2017-10-18 富士通株式会社 転送装置、決定方法、及びデータ処理装置
JP2016046719A (ja) 2014-08-25 2016-04-04 株式会社東芝 データ生成装置、通信装置、移動体、データ生成方法およびプログラム
JP2016091177A (ja) * 2014-10-31 2016-05-23 株式会社アドバンテスト 認証端末
KR102201642B1 (ko) 2014-11-28 2021-01-13 삼성전자주식회사 Puf 회로 및 그것의 키 등록 방법
US9501664B1 (en) * 2014-12-15 2016-11-22 Sandia Corporation Method, apparatus and system to compensate for drift by physically unclonable function circuitry
US9703989B1 (en) * 2014-12-23 2017-07-11 Altera Corporation Secure physically unclonable function (PUF) error correction
US20170132434A1 (en) * 2015-11-06 2017-05-11 Mentor Graphics Corporation Measure variation tolerant physical unclonable function device
US10579339B2 (en) * 2017-04-05 2020-03-03 Intel Corporation Random number generator that includes physically unclonable circuits
JP6585215B2 (ja) * 2018-03-16 2019-10-02 株式会社東芝 データ生成装置、通信装置、移動体、データ生成方法およびプログラム
US20210119812A1 (en) * 2020-12-23 2021-04-22 Intel Corporation Time-based multi-dimensional key recreation mechanism using puf technologies
CN113268745B (zh) * 2021-04-12 2022-06-21 温州大学 基于Camellia加密算法的软PUF

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002212570A1 (en) * 2000-10-24 2002-05-15 Hmi Co., Ltd. Random number generator
US7840803B2 (en) 2002-04-16 2010-11-23 Massachusetts Institute Of Technology Authentication of integrated circuits
JP3732188B2 (ja) * 2003-03-31 2006-01-05 Necマイクロシステム株式会社 擬似乱数発生回路
US7233212B2 (en) * 2005-03-31 2007-06-19 International Business Machines Corporation Oscillator array with row and column control
WO2007031908A2 (en) 2005-09-14 2007-03-22 Koninklijke Philips Electronics N.V. Improved device, system and method for determining authenticity of an item
ATE426968T1 (de) * 2005-11-29 2009-04-15 Koninkl Philips Electronics Nv Physisches verteilen von geheimnissen und beweisen der nahe unter verwendung von pufs
JP5113074B2 (ja) 2006-11-06 2013-01-09 パナソニック株式会社 情報セキュリティ装置
CN102077205B (zh) 2008-06-27 2015-12-16 皇家飞利浦电子股份有限公司 用于检验物品的真实性、完整性和/或物理状态的设备、系统和方法
WO2011086688A1 (ja) 2010-01-15 2011-07-21 三菱電機株式会社 ビット列生成装置及びビット列生成方法

Also Published As

Publication number Publication date
US20140325241A1 (en) 2014-10-30
KR101576408B1 (ko) 2015-12-09
CN103946909B (zh) 2016-05-11
CN103946909A (zh) 2014-07-23
IN2014CN03264A (ja) 2015-07-03
TW201328190A (zh) 2013-07-01
TWI505641B (zh) 2015-10-21
JP5646091B2 (ja) 2014-12-24
DE112011106024T5 (de) 2014-09-18
DE112011106024B4 (de) 2023-07-06
KR20140093276A (ko) 2014-07-25
WO2013094056A1 (ja) 2013-06-27
US9361482B2 (en) 2016-06-07

Similar Documents

Publication Publication Date Title
JP5646091B2 (ja) デバイス固有情報生成装置およびデバイス固有情報生成方法
KR101860461B1 (ko) 암호화 방법 및 암호화 장치
JP5113074B2 (ja) 情報セキュリティ装置
KR101366376B1 (ko) 신호 제너레이터에 기반한 장치 보안
KR101987141B1 (ko) 난수 발생기
CN109274485B (zh) 一种数据加密方法、数据认证方法及相关设备和系统
JP6305642B2 (ja) メッセージ認証子生成装置、メッセージ認証子生成方法及びメッセージ認証子生成プログラム
CN108141352B (zh) 密码设备、方法、装置和计算机可读介质和编码设备、方法、装置和计算机可读介质
JP2009528559A (ja) Sms4暗号アルゴリズムを実現する暗号化および復号化処理方法とそのシステム
JP6187462B2 (ja) ユニバーサルハッシュ関数演算装置、方法およびプログラム
JP2012105056A (ja) デバイス固有情報生成装置、デバイス固有情報生成方法および認証装置
Yamuna et al. Encryption of a Binary String using music notes and graph theory
US20140369499A1 (en) Cryptographic device, cryptographic processing method, and cryptographic processing program
JP5427117B2 (ja) メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、およびプログラム
JP2009169316A (ja) ハッシュ関数演算装置及び署名装置及びプログラム及びハッシュ関数演算方法
KR101974465B1 (ko) 노이즈가 삽입된 물리적 복제 불가 함수 시스템
Cardell et al. Recovering the MSS-sequence via CA
KR20170059271A (ko) 비교기를 이용한 실 난수 발생기 및 발생 방법
CN115801227B (zh) 一种生成置换表的方法及装置
JP5488608B2 (ja) ブロック暗号装置、ブロック暗号化方法およびプログラム
JP2012014077A (ja) ハッシュ値演算装置、ハッシュ値演算方法及びハッシュ値演算プログラム
Fúster-Sabater et al. A deterministic approach to balancedness and run quantification in pseudorandom pattern generators
Fúster Sabater et al. A Deterministic Approach to Pseudorandom Pattern Generators
JP2009129391A (ja) メッセージ認証子生成装置、メッセージ認証子検証装置、メッセージ認証子生成方法、メッセージ認証子検証方法、プログラム、および記録媒体

Legal Events

Date Code Title Description
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: 20141007

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141104

R150 Certificate of patent or registration of utility model

Ref document number: 5646091

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