JP6792970B2 - 集積回路、集積回路を保護する方法及びコンピュータプログラム製品 - Google Patents

集積回路、集積回路を保護する方法及びコンピュータプログラム製品 Download PDF

Info

Publication number
JP6792970B2
JP6792970B2 JP2016137595A JP2016137595A JP6792970B2 JP 6792970 B2 JP6792970 B2 JP 6792970B2 JP 2016137595 A JP2016137595 A JP 2016137595A JP 2016137595 A JP2016137595 A JP 2016137595A JP 6792970 B2 JP6792970 B2 JP 6792970B2
Authority
JP
Japan
Prior art keywords
critical component
security
integrated circuit
active shield
shield
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.)
Active
Application number
JP2016137595A
Other languages
English (en)
Other versions
JP2017063401A (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 JP2017063401A publication Critical patent/JP2017063401A/ja
Application granted granted Critical
Publication of JP6792970B2 publication Critical patent/JP6792970B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/86Secure or tamper-resistant housings
    • G06F21/87Secure or tamper-resistant housings by means of encapsulation, e.g. for integrated circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism
    • 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
    • G06F21/31User authentication
    • G06F21/316User authentication by observing the pattern of computer usage, e.g. typical user behaviour
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1408Protection against unauthorised use of memory or access to memory by using cryptography
    • 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/602Providing cryptographic facilities or services
    • 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/62Protecting access to data via a platform, e.g. using keys or access control rules
    • 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/86Secure or tamper-resistant housings
    • 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
    • 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/07372Means for preventing undesired reading or writing from or onto record carriers by detecting tampering with the circuit
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card
    • 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
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/57Protection from inspection, reverse engineering or tampering
    • H01L23/573Protection from inspection, reverse engineering or tampering using passive means
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/57Protection from inspection, reverse engineering or tampering
    • H01L23/576Protection from inspection, reverse engineering or tampering using active circuits
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • 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
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/007Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2133Verifying human interaction, e.g., Captcha
    • HELECTRICITY
    • H01ELECTRIC ELEMENTS
    • H01LSEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
    • H01L23/00Details of semiconductor or other solid state devices
    • H01L23/52Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames
    • H01L23/522Arrangements for conducting electric current within the device in operation from one component to another, i.e. interconnections, e.g. wires, lead frames including external interconnections consisting of a multilayer structure of conductive and insulating layers inseparably formed on the semiconductor body
    • H01L23/5222Capacitive arrangements or effects of, or between wiring layers
    • H01L23/5225Shielding layers formed together with wiring layers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Condensed Matter Physics & Semiconductors (AREA)
  • Power Engineering (AREA)
  • Bioethics (AREA)
  • Social Psychology (AREA)
  • Storage Device Security (AREA)
  • Semiconductor Integrated Circuits (AREA)

Description

本明細書は、集積回路に関するものである。さらに本明細書は、集積回路を保護する対応の方法、及び対応するコンピュータプログラム製品に関するものである。
現在では、多数の電子デバイス及びコンピューティング環境において、セキュリティが重要な役割を果たす。例えば、スマートカード及び電子識別文書等の電子デバイスはしばしば、個人情報及び秘密鍵等の機密データが格納された集積回路(IC)を含む。この機密データによって、営利団体及び政府機関との業務を可能にできる。電子識別文書の例として、電子パスポート(e-Passport)及び電子認証カード(eID)が挙げられる。これらの機密データを保護するために、より具体的には権限が与えられていない者がこれらのデータにアクセスすることを防ぐために、多数の技術が開発されている。しかしながら、当該ICのセキュリティを破る多数の技術も存在する。保証されたICからデータを読み出す様々な攻撃が編み出されている。例えば、いわゆる集束イオンビーム(FIB)アタック又はプロービングアタックはとても強力である。そのようなアタックには、選択された信号の状態を探り及び/又は強制する、不良解析やウエハレベルのICデバッグ機器が用いられる。
かかるアタックによって引き起こされるリスクゆえに、有効な対策を開発することが重要である。
本明細書の第1の態様によれば、第1の層に存在するアクティブシールドと、第2の層に存在する少なくとも1つのセキュリティクリティカルコンポーネントとを備える集積回路であり、セキュリティクリティカルコンポーネントは、セキュリティクリティカルコンポーネントの少なくとも一部へのアクセスを可能とするアクセスキーを生成するように構成され、アクセスキーはアクティブシールドの出力値に基づく、集積回路が提供される。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントが、アクセスキーを用いて、セキュリティクリティカルコンポーネントに含まれる記憶装置のコンテンツへのアクセスを可能にするように更に構成される。
1つ以上の実施形態では、前記コンテンツは暗号化されたコンテンツであり、アクセスキーは前記暗号化されたコンテンツを復号するための復号キーを含む。
1つ以上の実施形態では、アクセスキーは、アクティブシールドの出力値に基づくとともに、固定の乱数に基づく。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、アクティブシールドの出力値及び前記固定の乱数に対して排他的論理和演算を行うことによってアクセスキーを生成するように更に構成される。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、入力値をアクティブシールドに提供するように更に構成され、この入力値は固定の乱数シード値に基づく。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、前記入力値をアクティブシールドに提供する前に、当該入力値を可変ランダム値でマスクするように更に構成される。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、この可変ランダム値を用いてアクティブシールドの出力値をアンマスクするように更に構成される。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、入力値をマスクするとともに出力値をアンマスクするためにブールマスキングを使用するように更に構成される。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントは、入力値をマスクするとともに出力値をアンマスクするように構成されるシールドコントローラを備える。
1つ以上の実施形態では、前記アクセスが無効である場合に、セキュリティクリティカルコンポーネントはエラー信号を生成するように更に構成される。
1つ以上の実施形態では、スマートカードは本明細書で述べる性質の集積回路を備える。
1つ以上の実施形態では、電子識別文書は本明細書で述べる性質の集積回路を備える。
本明細書の第2の態様によれば、集積回路を保護する方法であり、前記集積回路は、第1の層に存在するアクティブシールドと、第2の層に存在する少なくとも1つのセキュリティクリティカルコンポーネントとを備え、セキュリティクリティカルコンポーネントは、前記セキュリティクリティカルコンポーネントの少なくとも一部へのアクセスを可能とするアクセスキーを生成し、前記アクセスキーはアクティブシールドの出力値に基づく、集積回路を保護する方法が考えられる。
本明細書の第3の態様によれば、命令を含むコンピュータプログラム製品であり、処理装置によって前記コンピュータプログラム製品が実行されるときに、前記処理装置に本明細書で述べる性質の方法を行わせる、コンピュータプログラム製品が提供される。
集積回路の例を示す図である。 アクティブシールドを制御できる手段を示すブロック図である。 集積回路の実施形態を説明するブロック図である。 1つ以上の実施形態に従い、アクティブシールドを制御できる手段を示すブロック図である。 アクティブシールド実装の実施形態を説明する図である。 アクティブシールド実装のデータフローの実施形態を説明する図である。
添付図面を参照して、実施形態をより詳細に説明する。
図1は、集積回路(IC)100の例を示す図である。集積回路100は、アクティブシールド108を含む第1の層102を備える。第1の層102を、集積回路100の最上層とすることができる。さらに、集積回路100は、ICコンポーネント106を含む第2の層104を備える。第2の層104を、第1の層102の真下の層とすることができ、又はIC100の下層とすることができる。ICコンポーネント106を、秘匿関数(a secure function)を実行し及び/又は機密データを格納する、セキュリティクリティカルコンポーネントとすることができる。アクティブシールド108は、複数の導電線を備えることができる。特に、アクティブシールド108は、ランダム信号を伝送する、ワイヤの高密度メッシュを備えることができる。
図2は、アクティブシールドを制御できる手段を示すブロック図200である。上述したように、アクティブシールド108は、ランダム信号を伝送する、ワイヤの高密度メッシュを備えることができる。あるいは、アクティブシールド108を別の方法で実装することができ、例えば、2014年2月20日に公開された米国出願公開第2014/0049359号明細書に説明されているような、導電線と論理演算回路との構造体として実装することができる。ICコンポーネント106は、アクティブシールド108の入力204とアクティブシールド108の出力206とに接続されたシールドコントローラ202を備えることができる。シールドコントローラ202は、上述したランダム信号を生成することができ、導電線の損傷を検出するために当該信号の整合性をチェックすることができる。アクティブシールディング自体は既知であり、例えば論文 Sebastien Briais et al. “Random Active Shield”. IEEE Computer Society, Fault Diagnosis and Tolerance in Cryptography, Sep 2012, Leuven, Belgium, 2012 で説明されている。当該論文で定められているように、(デジタルシールディングとも呼ばれる)アクティブシールドは、ビットのランダムシーケンスをICの最上層に導入して、ランダムシーケンスが前記層に埋め込まれた金属接続を通って伝送された後に、もとのまま届いたかチェックすることを含む。アクティブシールディングは、プロ−ビングアタックを防ぐように設計されているが、それ自体がプロ−ビングアタック又は集束イオンビームマニピュレーションの対象となり得るエラー信号をしばしば生成する。エラー信号の数を拡張する実装が存在するが、そのような実装は単に攻撃者を減速させるだけであり、かかる攻撃を不可能にすることはできない。
それゆえに本明細書によれば、集積回路は、第1の層に存在するアクティブシールドと、第2の層に存在する少なくとも1つのセキュリティクリティカルコンポーネントとを備え、セキュリティクリティカルコンポーネントは、セキュリティクリティカルコンポーネントの少なくとも一部へのアクセスを可能とするアクセスキーを生成するように構成され、アクセスキーはアクティブシールドの出力値に基づく。したがって、アクティブシールドの出力を用いてセキュリティクリティカルコンポーネントの一部へアクセスすることによって、アクティブシールドがバイパスされるリスクが軽減される。その結果、攻撃によりシールドが損傷している場合に、セキュリティクリティカルコンポーネントの当該部分にアクセスすることができず、この損傷の結果誤ったアクセスキーが生成されるため、アクティブシールドの出力を処理する試みは無駄になる。
1つ以上の実施形態では、セキュリティクリティカルコンポーネントが、アクセスキーを用いて、セキュリティクリティカルコンポーネントに含まれる記憶装置のコンテンツへのアクセスを可能にするように更に構成される。この構成は、機密データを格納して保護すべきである場合に有用である。アクセスキーは例えば、記憶装置のコンテンツへのアクセスを可能にする、パスワード又は他のコードを含むことができる。代わりに又はそれに加えて、アクセスキーは、記憶装置に格納されたコンテンツを復号するために、例えば前記機密データを復号するために、使用することができる暗号鍵を含むことができる。したがって、1つ以上の実施形態では、記憶装置のコンテンツは暗号化されており、アクセスキーは前記暗号化されたコンテンツを復号するための復号鍵を含む。これにより、上述した攻撃に対して特に強力な保護をもたらすことができる。
図3は、集積回路の実施形態を説明するブロック図300を示す。集積回路は、アクティブシールド108と、セキュリティクリティカルICコンポーネント106とを備える。ICコンポーネント106は、キーストア302と、暗号化されたメモリ304(すなわち暗号化されたコンテンツを含むメモリ)と、暗号化されたメモリ304に動作可能に接続されたメモリ暗号化ブロック306と、メモリ暗号化ブロック306に動作可能に接続された中央処理装置308とを備える。さらに、ICコンポーネント106は、排他的論理和演算を行うXORゲート310を備える。また、ICコンポーネント106は、シールドコントローラ202と、真性ランダムビットをシールドコントローラ202に提供するように構成される真性乱数発生器312とを備える。シールドコントローラ202は、図4及び6を参照して以下より詳細に説明するように、この真性ランダムビットを使用して、アクティブシールド108に提供される入力値をマスクすることができるとともにアクティブシールド108の出力値をアンマスクすることができる。
アクティブシールド108は、データ入力及びデータ出力を持つ。シールド108の導電線が損傷されない限り、出力値を、入力値の決定論的マッピング(“shield_map”と表す)とみなすことができる。言い換えれば、導電線が損なわれていない限り、この導電線を通って伝送される入力値は、予測できる出力値を生み出す。出力値のサイズを、要求される復号鍵のサイズに合わせることができる。あるいは、必要に応じて、圧縮関数又はハッシュ関数を用いて出力値のサイズを復号鍵のサイズへ減少させることができる。メモリ暗号化ブロック306は、暗号鍵を用いてメモリ304のコンテンツを暗号化するとともに、対応する復号鍵を用いてメモリ304のコンテンツを復号するように構成されることができる。さらに、復号鍵を暗号鍵と同じものとすることができる。データ“shield_seed”(IC製造時に一度だけ生成される乱数、すなわち固定の乱数シード値)及び“key_share0”(IC製造時に一度だけ生成される他の乱数、すなわち他の固定の乱数シード値)を、キーストア302に永久に格納することができる。メモリ暗号化ブロック306を、中央処理装置308によって制御することができる。
動作時に、アクティブシールド108は、key_share1 = shield_map (shield_seed) を出力することができる。続いて、メモリ暗号化ブロック306は、メモリ304のコンテンツを復号するために、この出力に基づく復号鍵を使用することができる。任意に、アクティブシールド108の出力を、排他的論理和演算の対象にすることができる。したがって、メモリ暗号化ブロック306は、以下の復号鍵“mem_key = key_share0 XOR key_share1”を使用することができる。アクティブシールド108が損傷している場合、アクティブシールド108の出力“key_share1” が誤って計算され、それゆえに複号鍵 “mem_key” も同じく不正確なものとなる。その結果、攻撃者は内部信号を探ることはできるかもしれないが、メモリ304のコンテンツが誤って復号されているため、この内部信号は無意味なものである。
なお、キーストア302及び暗号化されたメモリ304をICコンポーネント106の別個のブロックとして図示しているが、これらは実際には同一の物理的なメモリに存在することができる。このようにして、ICの面積を削減することができる。例えば、この物理的なメモリの小さな面積をキーストア302として、キーストア302では暗号化を行わないようにすることができる。暗号化されたメモリコンテンツにアクセスするために、キーストア302のコンテンツを光読み取りによってアクセス可能とすることができるが、攻撃者もマッピング“shield_map” を知る必要がある。しかしながら、このマッピングはIC製造者が極秘にする設計情報である。
このように、1つ以上の実施形態では、アクセスキー(例えば”mem_key”)が、アクティブシールドの出力値(例えば“key_share1”)に基づき、及び固定の乱数(例えば“key_share0”)に基づく。このようにして、アクセスキーはより複雑になり、その結果攻撃することがより困難になる。実用的かつ効率的な実装において、セキュリティクリティカルコンポーネントは、アクティブシールドの出力値及び前記固定の乱数に対して排他的論理和演算を行うことでアクセスキーを生成するように構成され得る。さらに、1つ以上の実施形態では、セキュリティクリティカルコンポーネントが、入力値をアクティブシールドに提供するように更に構成され、この入力値は固定の乱数シード値(例えば“shield_seed”)に基づく。このようにして、結果として生じるアクセスキーはより一層複雑になる。
図4は、1つ以上の実施形態に従い、アクティブシールドを制御できる手段を示すブロック図400である。この場合もまた、アクティブシールド108は、ランダム信号を伝送する、ワイヤの高密度メッシュを備えることができる。ICコンポーネントは、アクティブシールド108の入力204とアクティブシールド108の出力206とに接続されたシールドコントローラ402を含むことができる。シールドコントローラ402は、上述したランダム信号を生成することができ、導電線の損傷を検出するために当該信号の整合性をチェックすることができる。信号がランダムであるため、上述した決定論的マッピング(“shield_map”)を実装することは実際問題として困難となり得る。さらに、1つ以上の実施形態では、セキュリティクリティカルコンポーネントが、入力値をアクティブシールドに提供する前に、当該入力値を可変ランダム値でマスクするように更に構成される。さらに、1つ以上の実施形態では、セキュリティクリティカルコンポーネントが、この可変ランダム値を用いてアクティブシールドの出力値をアンマスクするように更に構成される。このようにして、上述した決定論的マッピングを損なわずに、アクティブシールド108の導電線を通って伝送される信号を十分にランダム化することができる。実用的かつ効率的な実装において、シールドコントローラ402は、入力値をマスクするとともに出力値をアンマスクするように構成される。例えば、図4に示すように、シールドコントローラ402は、入力値をマスクするように構成されたマスキングユニット404と、出力値をマスクするように構成されたアンマスキングユニット406とを備えることができる。
1つ以上の実施形態では、入力値をマスクするとともに出力値をアンマスクするために、ブールマスキングを使用することができる。これによって、単純だが効率的な実装を実現できる。例えば、”shield_map”アルゴリズムは、ビットを状態‘A’にすることを要求できる。それから、マスキングユニット404は、ランダムビット‘R’を生成するとともに関連するシールド線を ‘A’ XOR ‘R’ に設定することができる。シールド線の他端部では、アンマスキングユニット406が、‘R’が付いた状態の当該シールド線でXOR演算を行うことによって‘A’を取り出す。当業者は、例えばセキュリティのレベルを向上させたり全体の効率を向上させたりするために、マスキング及びアンマスキングを行うために他の方法を使用することができることを理解することができる。しかしながら、一般的に言えば、”shield_map”アルゴリズムの決定論的状態を、当該決定論的状態を取り戻すことができるように、可変乱数でマスクすることができると言える。また、マスク演算とアンマスク演算との間の中間データを、十分にランダムであるとみなすことができ、かつ、アクティブシールドが用いるシールド線又は任意の他の構造を駆動するのに適しているとみなすことができる。
図5は、アクティブシールド実装500の実施形態を説明する図である。この例では、アクティブシールド実装500は、複数のスライス504を備え、それぞれのスライス504は、一次関数を実装する。それぞれのスライス504は、組み合わせ論理及びメモリを含む第1の論理演算装置510と、組み合わせ論理及び任意的なメモリを含む第2の論理演算装置512とを備える。保護された領域の外、特にセキュリティクリティカルICコンポーネント506の外に配置されたシールド線は、第1の論理演算装置510と第2の論理演算装置512との間でビットを伝送する。セキュリティクリティカルコンポーネント506に含まれるシールドコントローラ502は、シリアルデータ及び制御信号を第1のスライス(すなわち左のスライス)の第1の論理演算装置510へ提供するように構成される。さらに、シールドコントローラ502は、シリアルデータ及び任意的な制御信号を第1のスライスの第2の論理演算装置512へ提供するように構成される。動作時に、組み合わせ論理は、制御信号の制御下でシリアルデータの変換を行い、それによって上述した一次関数を実装する。中間データを、論理演算装置510、512に含まれるメモリに格納することができる。このように、アクティブシールドを、スライスにグループ分けすることができ、各スライスは同じ一次関数を実装することができる。シールドコントローラ502は第1のスライスを駆動することができ、スライスを通じてデータをシフトすることができ、この処理を、シフトレジスタが実行する処理と同様のものとみなすことができる。第1のスライスを除く各スライスは、前のスライスの出力を入力として受け入れる。シールドコントローラ502は、最後のスライス(右のスライス)の出力を受け、当該出力を用いて定められた種類のアクセスキーを生成する。当業者は、スライスの数を図示した数から変えることができることを理解できる。図5は単に、原理を説明するために少数のスライスを有する例を示したにすぎないことを強調する。スライスが実装する一次関数は、大きな数の中間値を生成するように、複数の入力ビットを受け入れることができる。一次関数を実装するスライスを使用することで、シールドコントローラの複雑さを減少させることができ、その結果アクティブシールドの実用的かつ効率的な実装を実現できる。
図6は、アクティブシールド実装のデータフロー600の実施形態を説明する図である。この例では、データフロー600は、図5を参照して説明したような一次関数を実装する複数のスライスに基づく(「一次スライス関数」とも呼ぶ)スライス関数を含むアクティブシールド608を包含する。データフローの他の全ての機能ブロックは、シールドコントローラに実装される。特に、これらの機能ブロックは、アクティブシールドの入力値及び出力値をそれぞれマスク及びアンマスクすることに関わる、一式の要素を含む。一式の要素とは、真性ランダムビットを入力として受け取るバッファ610と、バッファ610から入力を受け取る擬似乱数生成器602と、擬似乱数生成器602から入力を受け取るXORゲート618と、アクティブシールド608に含まれるスライス一次関数に対応し、擬似乱数生成器602から入力を受け取るスライス一次関数614と、スライス一次関数614及びアクティブシールド608から入力を受け取るXORゲート620と、である。さらに、データフロー600は、シード値“shield_seed”を入力として受け取る他の擬似乱数生成器602と、スライス一次関数から提供された入力値の数を計数するNビットカウンタ606と、擬似乱数生成器602から入力を受け取りNビットカウンタ606を形成してXORゲート618に出力を送るNビット暗号化機能604と、XORゲート620から入力を受け取って出力値“key_share1”を出力として生み出すハッシュ関数616とを備える。
データフロー600は、集積回路が改ざんされていないか判断するために、アクティブシールド608が損傷していないか効果的に試験するテスト手順の一部を構成することができる。1つのスライスに対するシリアルビットの数がNであり、スライスの数がMである場合、シングルパスを擬似乱数生成器602、612のMステップとして定めることができる。さらに、スライスがラッチをメモリ要素として使用する場合には、単一のテストは 2N のパス又は 2N* 2 のパスを含むことができ、当該数のパスは、起こり得る全ての入力値がスライス関数に提供されることを確実にし、したがって全てのシールド線が損なわれていないことを保証する間、出力値“key_share1”を生み出すために必要な最低限の作業量を表す。それぞれのパスについて、擬似乱数生成器602、612はリセットされる(すなわち、それぞれのパスについて擬似乱数生成器602のシードがリロードされる)。それぞれのステップでは、擬似乱数生成器602、612は新たなランダム値を生み出し、擬似乱数生成器602、612は各スライスに対してかかる新たな乱数を生み出す。各テストについてNビットカウンタは初期値にリセットされ、各パスで(パスカウンタとも呼ぶことができる)Nビットカウンタ606は新たな値を生み出す(すなわち、Nビットカウンタ606がインクリメントされる)。アクティブシールド608は、シリアルデータ入力と、シリアルデータ出力とを有し、アクティブシールド608をM段のシフトレジスタとみなすことができる。この各段は、N個の変換されたビットを次のスライスへシフトするように構成されるスライスを含む。バッファ610と、擬似乱数生成器612と、スライス関数614とは、シード値“shield_seed”に関する任意のデータに対しては動作せず、真性ランダムデータのみに対して動作する。アクティブシールド608に対する入力値をマスクするとともにアクティブシールド608の出力値をアンマスクするために、バッファ610と、擬似乱数生成器612と、スライス関数614とを使用する。Nビット暗号化機能604を使用して、シード値“shield_seed”に応じたカウンタ値に変化を与える。Nビット暗号化機能604は、アクティブシールド608に対して決定論的入力を出力する。この決定論的入力は、擬似乱数生成器612の出力によってXORゲート618でマスクされる。したがって、XORゲート618はアクティブシールド608に対してランダム入力を出力する。同様に、アクティブシールド608の出力はランダムでありXORゲート620でアンマスクされる。したがって、XORゲート620は、ハッシュ関数616に対して決定論的入力を出力する。
さらに、1つ以上の実施形態では、セキュリティクリティカルコンポーネントに対するアクセスが無効である場合に、セキュリティクリティカルコンポーネントはエラー信号を生成するように更に構成される。上述したように、アクティブシールド108が損傷している場合には、メモリ304のコンテンツは誤って復号される。しかしながら、誤り通知が無いときには、システムの挙動を予測することが困難となり得る。したがって、セキュリティクリティカルコンポーネント106は例えば、IC外部の装置へ出力されるエラー信号を生成することができる。決定論的エラー信号が望まれる場合、システムは、周知の値が格納された、暗号化されたメモリ304の特定の位置で読み取りを行うことができる。値が十分に広汎である場合、例えば値が128ビットである場合、誤った復号鍵によって期待された値を得ることができる確率は無視できる程小さい。他のアプローチは、”mem_key”に対する巡回冗長符号(CRC)を算出して、巡回冗長符号をキーストア302に格納された期待される値と比較することである。
本明細書で説明した機能ブロック及び方法の少なくとも一部を、1つ以上のコンピュータプログラムで具体化することができる。1つ以上のコンピュータプログラムは、単一のコンピュータシステムに又は複数のコンピュータシステムにわたって、様々な形態で活性及び不活性で存在することができる。例えばコンピュータプログラムは、本明細書に記載されたステップのいくつかを実施するための、ソースコード、オブジェクトコード、実行可能コード又は他のフォーマットのプログラム命令で構成されるソフトウェアプログラムとして存在することができる。上述したもののいずれかを、コンピュータが読取可能な媒体に具現化することができ、当該媒体は、圧縮形態又は非圧縮形態の、記憶装置及び信号を備えることができる。
本明細書で使用されるように、用語「プロセッサ」又は「処理装置」は、マイクロプロセッサ、コプロセッサ、マイクロコントローラ、マイクロコンピュータ、中央処理装置、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブル論理回路及び/又はメモリに格納された動作指示に基づいて(アナログ又はデジタルの)信号を処理する任意の回路とすることができる、データ処理回路を指す。用語「記憶装置」又は「メモリ」は、読取専用メモリ、ランダムアクセスメモリ、揮発性メモリ、不揮発性メモリ、スタティックメモリ、ダイナミックメモリ、フラッシュメモリ、キャッシュメモリ及び/又はデジタル情報を格納する任意の回路等の、1つ以上の記憶回路を指す。
本明細書で使用されるように、「コンピュータが読取可能な媒体」又は「記憶媒体」を、命令実行システム、機器又は装置が使用する又はこれに接続された、コンピュータプログラムを含む、格納する、伝える、伝達する若しくは伝送する任意の手段とすることができる。コンピュータが読取可能な媒体は、例えば電子的、磁気的、光学的、電磁気的、赤外的又は半導体の、システム、機器、装置又は伝達媒体であるが、これらに限定されるものではない。コンピュータが読取可能な媒体のより具体的な例(非包括的なリスト)には、一本以上のワイヤを含む電気的接続、ポータブルコンピュータのディスケット、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、消去可能プログラマブルROM(EPROM又はフラッシュメモリ)、光ファイバ及びポータブル読取専用コンパクトディスク(CDROM)等を含めることができる。
なお、上述した実施形態は様々な主題と関連する。特に、ある実施形態を方法の発明の請求項に関連させて説明してきた一方、他の実施形態を装置の発明の請求項に関連させて説明してきた。しかしながら、当業者は、他の箇所で示していない限り、ある種類の主題に属する構成の任意の組み合わせに加えて、上述した構成から、異なる主題に関する構成の任意の組み合わせを集めることもできる。特に、方法の発明の構成と装置の発明の構成とを組み合わせることが、本明細書に記載されているとみなされる。
なお、図面は概略図である。異なる図面において、類似する又は同一の構成要素には、同じ引用符号を付けている。なお、具体的な実施形態を簡潔に説明するために、当業者の慣行に含まれる実装の詳細については説明していない。当然のことながら、かかる任意の実装の開発において、任意のエンジニアリング又は設計プロジェクトで該当するように、開発者の特定の目的に到達するため、実装ごとに異なり得る、システム関連のコンプライアンス又はビジネス関連の制約等の実装固有の多数の決定を行わなければならない。さらに当然のことながら、このような開発の努力は煩雑であり時間がかかるものであるが、当業者にとっては設計、製造及び生産の日常的作業であろう。
なお、当業者は、添付された特許請求の範囲から離れることなく多数の代替的な実施形態を設計することができるであろう。特許請求の範囲において、丸括弧で囲まれた任意の引用符号は限定するものとして解釈されるべきではない。用語「備える」又は「備えている」は、特許請求の範囲で列挙されたもの以外の構成要素又はステップの存在を除外するものではない。ある構成要素の前の用語「1つの」又は「1個の」は、複数のかかる構成要素の存在を除外するものではない。特許請求の範囲に記載された手段を、いくつかの別個の要素を備えるハードウェア及び/又は適切にプログラミングされたプロセッサを用いて実装することができる。いくつかの手段を列挙する装置の発明の請求項では、これらの手段のいくつかを1つまたは同一の項目のハードウェアで具体化することができる。ある手段同士が互いに異なる従属項に記載されているという事実をもって、これらの手段の組み合わせに効果がないということを示すものではない。
100 集積回路
102 最上層
104 下層
106 ICコンポーネント
108 アクティブシールド
200 ブロック図
202 シールドコントローラ
204 シールドの入力
206 シールドの出力
300 ブロック図
302 キーストア
304 暗号化されたメモリ
306 メモリ暗号化ブロック
308 中央処理装置
310 XORゲート
312 真性乱数生成器
400 ブロック図
402 シールドコントローラ
404 マスキングユニット
406 アンマスキングユニット
500 アクティブシールド実装
502 シールドコントローラ
504 スライス
506 ICコンポーネント
508 アクティブシールド
510 組み合わせ論理及びメモリ
512 組み合わせ論理及び任意的なメモリ
600 アクティブシールド実装データフロー
602 擬似乱数生成器
604 Nビット暗号化
606 Nビットカウンタ
608 スライス一次関数を含むアクティブシールド
610 バッファ
612 擬似乱数生成器
614 スライス一次関数
616 ハッシュ関数
618 XORゲート
620 XORゲート

Claims (15)

  1. 第1の層に存在するとともにランダム信号を生成するアクティブシールドと、第2の層に存在する少なくとも1つのセキュリティクリティカルコンポーネントとを備える集積回路であり、前記セキュリティクリティカルコンポーネントは、前記ランダム信号に基づき前記セキュリティクリティカルコンポーネントの少なくともある部分へのアクセスを可能とするアクセスキーを生成するように構成され
    前記アクティブシールドは前記ランダム信号を前記セキュリティクリティカルコンポーネントに伝送する導電線を有し、前記アクティブシールドの前記導電線が損傷している場合に、前記アクティブシールドからの前記ランダム信号はもとのまま前記セキュリティクリティカルコンポーネントに届かず、前記セキュリティクリティカルコンポーネントは、前記アクティブシールドが送信する前記ランダム信号に基づくアクセスキーとは異なる、誤ったアクセスキーを生成し、前記セキュリティクリティカルコンポーネントの前記部分にアクセスすることができなくなる、集積回路。
  2. 前記セキュリティクリティカルコンポーネントは、前記アクセスキーを用いて、前記セキュリティクリティカルコンポーネントに含まれる記憶装置のコンテンツへのアクセスを可能にするように更に構成される、請求項1に記載の集積回路。
  3. 前記コンテンツは暗号化されたコンテンツであり、前記アクセスキーは前記暗号化されたコンテンツを復号するための復号キーを含む、請求項2に記載の集積回路。
  4. 前記アクセスキーは、前記アクティブシールドの前記出力値に基づくとともに、固定の乱数に基づく、請求項1〜3のいずれか一項に記載の集積回路。
  5. 前記セキュリティクリティカルコンポーネントは、前記アクティブシールドの前記出力値及び前記固定の乱数に対して排他的論理和演算を行うことによって、前記アクセスキーを生成するように更に構成される、請求項4に記載の集積回路。
  6. 前記セキュリティクリティカルコンポーネントは、入力値を前記アクティブシールドへ提供するように更に構成され、前記入力値は固定の乱数シード値に基づく、請求項1〜5のいずれか一項に記載の集積回路。
  7. 前記セキュリティクリティカルコンポーネントは、前記入力値を前記アクティブシールドへ提供する前に、前記入力値を可変ランダム値でマスクするように更に構成される、請求項6に記載の集積回路。
  8. 前記セキュリティクリティカルコンポーネントは、前記可変ランダム値を用いて前記アクティブシールドの前記出力値をアンマスクするように更に構成される、請求項7に記載の集積回路。
  9. 前記セキュリティクリティカルコンポーネントは、ブールマスキングを使用するように更に構成される、請求項8に記載の集積回路。
  10. 前記セキュリティクリティカルコンポーネントは、前記入力値をマスクするとともに前記出力値をアンマスクするように構成されるシールドコントローラを備える、請求項8又は9に記載の集積回路。
  11. 前記アクセスが無効である場合に、前記セキュリティクリティカルコンポーネントは、エラー信号を生成するように更に構成される、請求項1〜10のいずれか一項に記載の集積回路。
  12. 請求項1〜11のいずれか一項に記載の集積回路を備えるスマートカード。
  13. 請求項1〜11のいずれか一項に記載の集積回路を備える電子識別文書。
  14. 集積回路を保護する方法であり、前記集積回路は、第1の層に存在するとともにランダム信号を生成するアクティブシールドと、第2の層に存在する少なくとも1つのセキュリティクリティカルコンポーネントとを備え、前記セキュリティクリティカルコンポーネントは、前記ランダム信号に基づき前記セキュリティクリティカルコンポーネントの少なくともある部分へのアクセスを可能とするアクセスキーを生成し
    前記アクティブシールドは前記ランダム信号を前記セキュリティクリティカルコンポーネントに伝送する導電線を有し、前記アクティブシールドの前記導電線が損傷している場合に、前記アクティブシールドからの前記ランダム信号はもとのまま前記セキュリティクリティカルコンポーネントに届かず、前記セキュリティクリティカルコンポーネントは、前記アクティブシールドが送信する前記ランダム信号に基づくアクセスキーとは異なる、誤ったアクセスキーを生成し、前記セキュリティクリティカルコンポーネントの前記部分にアクセスすることができなくなる、集積回路を保護する方法。
  15. 命令を含むコンピュータプログラム製品であり、前記集積回路が備える処理装置によって前記コンピュータプログラム製品が実行されるときに、前記処理装置に請求項14に記載の方法を行わせる、コンピュータプログラム製品。
JP2016137595A 2015-09-23 2016-07-12 集積回路、集積回路を保護する方法及びコンピュータプログラム製品 Active JP6792970B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP15290240.9 2015-09-23
EP15290240.9A EP3147830B1 (en) 2015-09-23 2015-09-23 Protecting an integrated circuit

Publications (2)

Publication Number Publication Date
JP2017063401A JP2017063401A (ja) 2017-03-30
JP6792970B2 true JP6792970B2 (ja) 2020-12-02

Family

ID=54476874

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016137595A Active JP6792970B2 (ja) 2015-09-23 2016-07-12 集積回路、集積回路を保護する方法及びコンピュータプログラム製品

Country Status (5)

Country Link
US (1) US10282312B2 (ja)
EP (1) EP3147830B1 (ja)
JP (1) JP6792970B2 (ja)
KR (1) KR20170035820A (ja)
CN (1) CN106548100B (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018106509A1 (en) * 2016-12-05 2018-06-14 Cryptography Research Inc. Backside security shield
US10573605B2 (en) * 2016-12-13 2020-02-25 University Of Florida Research Foundation, Incorporated Layout-driven method to assess vulnerability of ICs to microprobing attacks
CN108733311B (zh) * 2017-04-17 2021-09-10 伊姆西Ip控股有限责任公司 用于管理存储系统的方法和设备
US10798075B2 (en) * 2018-01-29 2020-10-06 International Business Machines Corporation Interface layer obfuscation and usage thereof
CN109100635B (zh) * 2018-07-11 2021-06-29 北京智芯微电子科技有限公司 对多通道金属屏蔽布线层进行完整性检测的电路及方法
US10839109B2 (en) * 2018-11-14 2020-11-17 Massachusetts Institute Of Technology Integrated circuit (IC) portholes and related techniques
US11606688B2 (en) 2019-02-20 2023-03-14 Coretigo Ltd. Secure key exchange mechanism in a wireless communication system
US12039091B2 (en) * 2021-10-07 2024-07-16 Duke University Integrated circuit protections against removal and oracle-guided attacks

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2738971B1 (fr) * 1995-09-19 1997-10-10 Schlumberger Ind Sa Procede de determination d'une cle de cryptage associee a un circuit integre
AT408925B (de) * 1996-10-22 2002-04-25 Posch Reinhard Dr Anordnung zum schutz von elektronischen recheneinheiten, insbesondere von chipkarten
US7005733B2 (en) 1999-12-30 2006-02-28 Koemmerling Oliver Anti tamper encapsulation for an integrated circuit
ATE350766T1 (de) * 2000-08-21 2007-01-15 Infineon Technologies Ag Vorrichtung zum schutz einer integrierten schaltung
DE10044837C1 (de) 2000-09-11 2001-09-13 Infineon Technologies Ag Schaltungsanordnung und Verfahren zum Detektieren eines unerwünschten Angriffs auf eine integrierte Schaltung
DE10223176B3 (de) * 2002-05-24 2004-01-22 Infineon Technologies Ag Integrierte Schaltung mit sicherheitskritischen Schaltungskomponenten
FR2864667B1 (fr) 2003-12-29 2006-02-24 Commissariat Energie Atomique Protection d'une puce de circuit integre contenant des donnees confidentielles
WO2005085972A1 (en) 2004-02-24 2005-09-15 Koninklijke Philips Electronics N.V. Ic intrusion detection
EP2615641B1 (en) 2006-01-24 2015-07-01 Nds Limited Chip attack protection
WO2007091210A2 (en) * 2006-02-09 2007-08-16 Nxp B.V. Circuit arrangement, data processing device comprising such circuit arrangement as well as method for identifying an attack on such circuit arrangement
JP4349389B2 (ja) * 2006-07-28 2009-10-21 ソニー株式会社 データ記憶装置、および、通信装置
KR101299602B1 (ko) 2007-03-27 2013-08-26 삼성전자주식회사 리버스 엔지니어링을 보호하는 집적회로
US8615085B2 (en) * 2009-09-29 2013-12-24 Zamtec Ltd Encrypted communication system with limited number of stored encryption key retrievals
EP3435234A1 (en) 2010-01-12 2019-01-30 Stc.Unm System and methods for generating unclonable security keys in integrated circuits
KR101665562B1 (ko) * 2010-11-05 2016-10-25 삼성전자주식회사 검출 회로, 그 검출 방법, 및 이를 포함하는 메모리 시스템
US20130141137A1 (en) 2011-06-01 2013-06-06 ISC8 Inc. Stacked Physically Uncloneable Function Sense and Respond Module
JP2013045407A (ja) * 2011-08-26 2013-03-04 Renesas Electronics Corp 半導体装置
EP2780938B1 (en) * 2011-11-18 2015-09-30 Tubitak Active shield with electrically configurable interconnections
US9323950B2 (en) * 2012-07-19 2016-04-26 Atmel Corporation Generating signatures using a secure device
US10771448B2 (en) * 2012-08-10 2020-09-08 Cryptography Research, Inc. Secure feature and key management in integrated circuits
KR20140034332A (ko) 2012-08-14 2014-03-20 삼성전자주식회사 보안 장치 및 이를 구비하는 집적 회로
EP2819049B1 (en) 2013-06-27 2015-11-18 Nxp B.V. Device with capacitive security shield
US9171810B2 (en) * 2013-11-21 2015-10-27 Nxp B.V. Electronic device incorporating a randomized interconnection layer having a randomized conduction pattern
CN103646137A (zh) * 2013-12-03 2014-03-19 北京中电华大电子设计有限责任公司 一种高安全芯片有源屏蔽物理保护结构的设计方法
CN104268049B (zh) * 2014-09-30 2017-01-25 北京金山安全软件有限公司 判断存储设备异常的方法、装置及终端

Also Published As

Publication number Publication date
EP3147830B1 (en) 2020-11-18
US10282312B2 (en) 2019-05-07
JP2017063401A (ja) 2017-03-30
EP3147830A1 (en) 2017-03-29
CN106548100B (zh) 2021-11-02
KR20170035820A (ko) 2017-03-31
US20170083459A1 (en) 2017-03-23
CN106548100A (zh) 2017-03-29

Similar Documents

Publication Publication Date Title
JP6792970B2 (ja) 集積回路、集積回路を保護する方法及びコンピュータプログラム製品
Hu et al. An overview of hardware security and trust: Threats, countermeasures, and design tools
Bhasin et al. Hardware Trojan horses in cryptographic IP cores
Francq et al. Introduction to hardware Trojan detection methods
Ngo et al. Linear complementary dual code improvement to strengthen encoded circuit against hardware Trojan horses
Rostami et al. A primer on hardware security: Models, methods, and metrics
Kitsos et al. Exciting FPGA cryptographic Trojans using combinatorial testing
Contreras et al. Security vulnerability analysis of design-for-test exploits for asset protection in SoCs
Wallat et al. A look at the dark side of hardware reverse engineering-a case study
US10642947B2 (en) System, method and computer-accessible medium providing secure integrated circuit camouflaging for minterm protection
Sumathi et al. A review on HT attacks in PLD and ASIC designs with potential defence solutions
Zhang et al. Securing FPGA-based obsolete component replacement for legacy systems
Moein et al. Hardware attack mitigation techniques analysis
Woo et al. A secure scan architecture protecting scan test and scan dump using skew-based lock and key
Alanwar et al. Dynamic fpga detection and protection of hardware trojan: A comparative analysis
Potestad-Ordóñez et al. Protecting FPGA-Based Cryptohardware Implementations from Fault Attacks Using ADCs
Peterson Developing tamper-resistant designs with ultrascale and ultrascale+ FPGAs
Rankl Overview about attacks on smart cards
CN113228012A (zh) 用于鉴别fpga配置的方法和设备
Kaur et al. Analytical Classifications of Side Channel Attacks, Glitch Attacks and Fault Injection Techniques: Their Countermeasures
Mohankumar et al. Lightweight Logic Obfuscation in Combinational Circuits for Improved Security—An Analysis
Rajendran Security challenges in hardware used for smart environments
Wang et al. A secure scan architecture using parallel latch-based lock
Francq et al. Overview of hardware trojan detection and prevention methods
EP3907633B1 (en) System and method for obfuscating opcode commands in a semiconductor device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200825

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201002

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201109

R150 Certificate of patent or registration of utility model

Ref document number: 6792970

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250