KR20170095155A - 보안 반도체 칩 및 그 동작 방법 - Google Patents

보안 반도체 칩 및 그 동작 방법 Download PDF

Info

Publication number
KR20170095155A
KR20170095155A KR1020170018693A KR20170018693A KR20170095155A KR 20170095155 A KR20170095155 A KR 20170095155A KR 1020170018693 A KR1020170018693 A KR 1020170018693A KR 20170018693 A KR20170018693 A KR 20170018693A KR 20170095155 A KR20170095155 A KR 20170095155A
Authority
KR
South Korea
Prior art keywords
signal
ring oscillator
shield
output
semiconductor chip
Prior art date
Application number
KR1020170018693A
Other languages
English (en)
Inventor
고형호
최병덕
Original Assignee
한양대학교 산학협력단
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 한양대학교 산학협력단 filed Critical 한양대학교 산학협력단
Priority to PCT/KR2017/001492 priority Critical patent/WO2017138774A1/ko
Priority to US16/076,510 priority patent/US10972460B2/en
Publication of KR20170095155A publication Critical patent/KR20170095155A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/556Detecting local intrusion or implementing counter-measures involving covert channels, i.e. data leakage between processes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • G06F15/7853Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) including a ROM
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • 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
    • 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/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/74Protecting 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 operating in dual or compartmented mode, i.e. at least one secure mode
    • 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • 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/321Cryptographic 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 involving a third party or a trusted authority
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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]
    • 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/2149Restricted operating environment
    • 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

Abstract

반도체 칩은 데이터를 처리하는 프로세서, 메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드, 레퍼런스 신호를, 상기 레퍼런스 신호가 상기 쉴드를 통과하여 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지 여부를 감지하는 감지부 및 상기 메탈 라인의 라우팅 토폴로지를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경하여 구성하는 컨트롤러를 포함할 수 있다.

Description

보안 반도체 칩 및 그 동작 방법{SECURE SEMICONDUCTOR CHIP AND OPERATING METHOD THEREOF}
보안이 강화된 반도체 칩 및 그 동작 방법에 연관되며, 보다 특정하게는 반도체 칩에 대한 물리적 공격의 감지에 연관된다.
반도체 칩에 대한 다양한 물리적 공격 및 소프트웨어 공격은 SoC (System on Chip)를 이용한 제품 및 이를 이용한 응용 서비스에 위협이 된다. 이러한 물리적 공격의 예로, 이를테면 디패키징 (De-packaging), FIB (Focused ion beam)를 이용한 회로 변형, 마이크로 프로빙 (micro-probing), 전력 분석 (power analysis), EMA (Electromagnetic Analysis), 전압/주파수/온도 조절 공격 방식 (fault injection) 등 다양한 것들이 알려져 있다.
물리적 공격을 감지하고 이로부터 회로를 보호하기 위한 기술들이 소개되고 있으며, 이를테면 아래에 서술하는 몇몇 선행기술 문헌들을 통해 이전의 시도들을 이해할 수 있다.
대한민국 등록 특허공보 KR 10-1299602호 (공고일 2013년8월26일)에는 무작위의 레퍼런스 신호를 액티브 쉴드를 통해 전송한 제1 결과와 직접 비교 로직으로 전송한 제2 결과를 서로 비교해서 쉴드에서의 리버스 엔지니어링이 발생했는지를 감지하는 내용이 제시되었다.
기술문헌 "A Highly time sensitive XOR gate for probe attempt detectors" (S. Manich, et al., IEEE Trans. Circuits Syst., II: Exp. Briefs, vol. 60, no. 11, pp. 786-790, Nov. 2013)은 반도체 칩에 대한 디패키징 후 내부의 데이터 버스를 프로빙 (probing) 하는 경우에 발생되는 프로빙 커패시턴스 딜레이 (probing capacitance delay)를 발견하는 기술이 제시되었다.
본 발명은 물리적 공격을 감지할 수 있는 보안 반도체 칩 및 그 동작 방법을 제공하기 위한 것이다.
일측에 따르면, 반도체 칩은 메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드, 레퍼런스 신호를, 상기 레퍼런스 신호가 상기 쉴드를 통과하여 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지 여부를 감지하는 감지부 및 상기 메탈 라인의 라우팅 토폴로지를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경하여 구성하는 컨트롤러를 포함할 수 있다.
일실시예에 따르면, 상기 반도체 칩은 상기 컨트롤러가 상기 라우팅 토폴로지를 구성하도록 하는 구성 신호(configuration signal)을 제공하는 난수 생성기를 더 포함할 수 있다. 보다 구체적으로, 상기 컨트롤러는 상기 난수 생성기가 제공하는 상기 구성 신호에 따라 상기 라우팅 토폴로지를 변경할 수 있는 적어도 하나의 초퍼 어레이를 포함할 수 있다.
다른 일실시예에 따르면, 상기 난수 생성기는 시간에 따라 주기적으로 상기 구성 신호를 무작위로 변경하여 상기 컨트롤러가 상기 라우팅 토폴로지를 지속적으로 바꿀 수 있다. 또한, 상기 레퍼런스 신호는 상기 난수 생성기가 상기 구성 신호와 별도로 만드는 신호를 나타낼 수 있다.
또 다른 일실시예에 따르면, 상기 레퍼런스 신호는 서로 독립적으로 생성되는 제1 입력 신호 및 제2 입력 신호를 포함하고, 상기 감지부는 상기 제1 입력 신호 및 상기 제2 입력 신호가 각각 상기 쉴드를 통과해서 출력되는 제1 출력 신호 및 제2 출력 신호를 상기 제1 입력 신호 및 상기 제2 입력 신호와 비교하여 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지할 수 있다.
또 다른 일실시예에 따르면, 상기 감지부는 상기 메탈 라인의 라우팅 토폴로지에 따라 상기 제1 입력 신호를 서로 다른 포트에서 출력되는 제1 출력 신호 및 제2 출력 신호 중 어느 하나와 비교하여 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지할 수 있다.
또 다른 일실시예에 따르면, 상기 컨트롤러는 상기 적어도 하나의 초퍼 어레이 각각을 상기 구성 신호 내의 미리 지정된 비트에 매칭하고, 매칭되는 비트 값의 변화에 따라 대응하는 초퍼 어레이를 이용하여 라우팅 토폴로지를 변경할 수 있다.
다른 일측에 따르면, 반도체 칩은 데이터를 처리하는 프로세서, 메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드, 제1 링 오실레이터의 출력을 상기 쉴드의 제1 영역을 통과시켜 상기 제1 링 오실레이터 입력으로 귀환하고, 상기 제1 링 오실레이터와 동기화된 제2 링 오실레이터의 출력을 상기 쉴드의 제2 영역을 통과시켜 상기 제2 링 오실레이터 입력으로 귀환하는 링 오실레이터 블록 및 상기 제1 링 오실레이터와 상기 제2 링 오실레이터의 발진 위상을 비교하여 상기 쉴드의 전기적 프로빙이 있는지의 여부를 감지하는 감지부를 포함할 수 있다.
일실시예에 따르면, 상기 반도체 칩은 상기 제1 영역에서 상기 제1 링 오실레이터의 전송 경로가 병렬 다중화되고, 상기 제2 영역에서 상기 제2 링 오실레이터의 전송 경로가 병렬 다중화될 수 있다.
다른 일실시예에 따르면, 상기 감지부는 리셋 신호를 상기 링 오실레이터 블록으로 전달하여, 상기 제1 링 오실레이터와 상기 제2 링 오실레이터를 주기적으로 동기화할 수 있다. 또한, 상기 제1 링 오실레이터 및 상기 제2 링 오실레이터는 상기 리셋 신호에 따라 동일한 위상을 갖는 클락 신호를 생성할 수 있다.
또 다른 일측에 따르면, 반도체 칩은 데이터를 처리하는 프로세서, 메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드, 상기 쉴드 내에 배선 변경이 있는지의 여부 및 상기 쉴드에 관한 전기적 프로빙이 있는지의 여부 중 적어도 하나를 감지하는 감지부 및 반도체 칩에 관한 배선 변경을 감지하는 제1 모드 및 상기 반도체 칩에 관한 마이크로 프로빙을 감지하는 제2 모드 중 어느 하나를 선택하여 선택된 모드에 상응하는 신호를 상기 감지부로 전달하는 컨트롤러를 포함할 수 있다.
일실시예에 따르면, 상기 제1 모드가 선택된 경우에, 상기 컨트롤러는 상기 메탈 라인의 라우팅 토폴로지를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경하여 구성하고, 상기 감지부는 전달되는 레퍼런스 신호를, 상기 레퍼런스 신호가 상기 쉴드를 통과해서 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지할 수 있다.
다른 일실시예에 따르면, 상기 반도체 칩은 제1 링 오실레이터의 출력을 상기 쉴드의 제1 영역을 통과시켜 상기 제1 링 오실레이터 입력으로 귀환하고, 상기 제1 오실레이터와 동기화된 제2 링 오실레이터의 출력을 상기 쉴드의 제2 영역을 통과시켜 상기 제2 링 오실레이터 입력으로 귀환하는 링 오실레이터 블록을 더 포함하고, 상기 제2 모드가 선택된 경우에, 상기 컨트롤러는 제1 링 오실레이터 및 상기 제2 링 오실레이터 각각의 출력 신호가 상기 쉴드 내의 대응 영역을 통과하여 상기 감지부로 전달되도록 제어할 수 있다.
본 발명에 따르면, FIB 방법, 마이크로 프로빙 방법 및 포싱 방법 등의 물리적 공격을 감지할 수 있다.
도 1은 일실시예에 따라 반도체 칩의 배선 변경을 감지하는 회로를 나타내는 예시도이다.
도 2a는 상기 도 1에서 설명된 반도체 칩에 관한 블록도이다.
도 2b는 레퍼런스 신호와 쉴드의 출력 신호를 비교하여 반도체 칩에 관한 배선 변경을 감지하는 과정을 설명하는 예시도이다.
도 3은 다른 일실시예에 따라 반도체 칩에 대한 마이크로 프로빙 공격을 감지하는 회로를 나타내는 예시도이다.
도 4a는 상기 도 3에서 설명된 반도체 칩에 관한 블록도이다.
도 4b는 적어도 두 개의 링 오실레이터의 귀환 신호를 비교하여 반도체 칩에 관한 마이크로 프로빙 공격을 감지하는 과정을 설명하는 예시도이다.
도 5는 또 다른 일실시예에 따라 반도체 칩을 보호하는 집적 회로를 나타내는 예시도이다.
도 6는 다중 모드를 지원하는 반도체 칩의 동작 방법을 설명하는 흐름도이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 실시예들은 특정한 개시형태로 한정되는 것이 아니며, 본 명세서의 범위는 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
반도체 칩에 대한 물리적 공격들
IC(Integrated Circuit) 카드 등에 사용되는 집적 회로에 대해 공격자들은 집적 회로에 관한 리버스 엔지니어링(reverse engineering)을 수행하고, 획득된 정보를 이용하여 회로의 동작 모드를 임의적으로 변경하거나 메모리 내에 저장된 데이터의 조작을 수행할 수 있다. 위와 같은 반도체 칩에 관한 공격은 중요 데이터에 관한 해킹이나 출입 보안을 해체하는 것과 같은 현실적인 문제들을 야기할 가능성이 존재한다.
예시적으로 공격자들은 FIB(Focused Ion Beam) 방법, 마이크로 프로빙(probing) 방법 및 포싱(forcing) 방법 등을 이용하여 집적회로 내의 쉴드를 회피하여 상기 집적회로에 관한 공격을 수행할 수 있다. 보다 구체적으로, FIB는 이온 빔을 이용하여 메탈 라인을 임의적으로 단락 하거나 연결하는 방법을 나타낸다. 마이크로 프로빙 방법은 특정 메탈 라인에 관한 상태값을 독출하는 방법을 나타낸다. 포싱이란 FIB 방법에 의해 특정 메탈 라인을 절단하고, 절단된 메탈 라인에 대해 특정한 조작 신호를 제공하여 데이터를 조작하는 공격을 나타낸다.
이하에서는 물리적 공격, 예시적으로 그러나 한정되지 않게 반도체 칩의 배선 변경 또는 마이크로 프로빙 공격 등이 발생한 경우에 물리적 공격을 감지하는 보안 반도체 칩의 다양한 실시예들이 제시된다.
일실시예에 따른 보안 반도체 칩 구현
도 1은 일실시예에 따라 반도체 칩의 배선 변경을 감지하는 회로를 나타내는 예시도이다. 도 1을 참조하면, 반도체 칩은 액티브 쉴드(active shield)(110), 난수 발생기(RNG: random number generator)(120), 감지부(detection logic)(130), 제1 초퍼 어레이(chopper array)(140) 및 제2 초퍼 어레이(150)를 포함할 수 있다. (160)은 임의로 경로를 재구성 가능한 액티브 쉴드(110)의 영역을 나타낼 수 있다. 액티브 쉴드(110)는 외부의 공격자로부터 리버스 엔지니어링에 의한 반도체 칩 공격을 방어하는 메탈 라인을 포함할 수 있다.
난수 발생기(120)는 무작위적으로 생성된 비트 스트림을 미리 지정된 회로로 전송할 수 있다. 일실시예로서, 난수 발생기(120)는 무작위적으로 생성된 제1 입력 신호(TX1) 및 제2 입력 신호(TX2)를 레퍼런스 신호로서 감지부(130) 및 제1 초퍼 어레이(140)에 전달할 수 있다. 다른 일실시예로서, 난수 발생기(120)는 기설정된 비트 수에 대응하는 구성 신호(configuration signal)를 각각의 초퍼 어레이(140, 150)들에 전달할 수 있다.
이하의 설명에서는, 5 비트의 구성 신호가 동일하게 각각이 제1 초퍼 어레이(140) 및 제2 초퍼 어레이(150)에 전달되는 실시예가 도시되지만 이는 이해를 돕기 위한 예시적인 기재일 뿐 다른 실시예의 범위를 제한하거나 한정하는 것으로 해석되어서는 안될 것이다. 이를테면, 난수 발생기(120)가 10 비트의 제1 구성 신호를 제1 초퍼 어레이(140)로 전달하고, 10 비트의 제2 구성 신호를 제2 초퍼 어레이(150)에 전달하는 실시예가 구현될 수도 있고, 또는 난수 발생기(120)가 동일한 4 비트의 구성 신호를 제1 초퍼 어레이(140) 및 제2 초퍼 어레이(150)에 전달하는 실시예 또한 구현 가능할 것이다.
감지부(130)는 난수 발생기(120)로부터 직접 전달된 레퍼런스 신호(TX1, TX2)와 액티브 쉴드(110) 내의 메탈 라인을 통과하여 출력되는 출력 신호(RX1, RX2)를 비교하는 방식으로 액티브 쉴드(110) 내의 배선 변경이 존재하는지 여부를 검출할 수 있다.
일실시예로서, 감지부(130)는 두 개의 레퍼런스 신호(TX1, TX2) 각각이 대응하는 출력 신호(RX1, RX2)와 동일한 경우에는 반도체 칩에 관한 배선 변경이 없는 것으로 판단할 수 있다. 다른 일실시예로서, 감지부(130)는 두 개의 레퍼런스 신호(TX1, TX2) 중 적어도 하나의 신호가 대응하는 출력 신호(RX1, RX2)와 상이한 경우에 반도체 칩에 관한 배선 변경이 존재하는 것으로 판단하여 감지 신호(detect out)를 출력할 수 있다. 이하에서는 반도체 칩에 관한 블록도를 이용하여 감지부가 반도체 칩에 관한 배선 변경을 검출하는 과정에 대해 상세하게 기재한다.
도 2a는 상기 도 1에서 설명된 반도체 칩에 관한 블록도이다. 도 2a를 참조하면, 반도체 칩(200)은 프로세서(210), 쉴드(220), 감지부(230) 및 컨트롤러(240)를 포함할 수 있다. 프로세서(210)는 반도체 칩(200)에 관한 데이터를 처리할 수 있다. 외부의 공격자들은 반도체 칩(200)에 관한 물리적 공격을 통해 프로세서(210)로부터 처리되는 데이터를 조작하거나 탈취하고자 할 것이다. 쉴드(220)는 메탈 라인을 포함하며, 프로세서(210)의 상부에 배치되어 프로세서(210)를 보호할 수 있다. 일실시예로서, 쉴드(220)는 복수의 메탈 라인을 포함하는 액티브 쉴드와 같은 형태로 구현될 수 있다.
감지부(230)는 레퍼런스 신호를, 상기 레퍼런스 신호가 쉴드(220)를 통과하여 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지 여부를 감지할 수 있다.
또한, 컨트롤러(240)는 상기 메탈 라인의 라우팅 토폴로지(routing topology)를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경할 수 있다. 이하의 설명에서 라우팅 토폴로지는 하나의 레퍼런스 신호가 쉴드(220) 내의 메탈 라인을 통과하여 출력되는 경로에 관한 연결 관계를 나타낼 수 있다. 이를테면, 라우팅 토폴로지가 제1 상태인 경우에 레퍼런스 신호는 제1 경로를 통과하여 감지부(230)로 출력될 수 있고, 상기 라우팅 토폴로지가 제2 상태인 경우에는 레퍼런스 신호가 제2 경로를 통과하여 감지부(230)로 출력될 수 있다.
도 2a에서 도시되지는 않았지만, 반도체 칩(200)은 컨트롤러(240)가 라우팅 토폴로지를 구성하도록 하는 구성 신호(configuration signal)를 제공하는 난수 생성기를 더 포함할 수 있다. 난수 생성기는 기설정된 시간 주기에 따라 미리 지정된 비트수를 갖는 비트 스트림을 상기 구성 신호로서 컨트롤러(240)에 제공할 수 있다. 또한, 난수 생성기는 시간에 따라 주기적으로 상기 구성 신호를 무작위로 변경하여 컨트롤러(240)가 라우팅 토폴로지를 지속적으로 바꾸도록 할 수 있다.
일실시예로서, 컨트롤러(240)는 난수 생성기가 제공하는 구성 신호에 따라 라우팅 토폴로지를 변경할 수 있는 적어도 하나의 초퍼 어레이를 포함할 수 있다. 이하의 설명에서, 초퍼 어레이는 적어도 하나의 스위칭 컨버터를 포함하는 회로로서 입력되는 전류 또는 전압에 따라 출력되는 신호의 경로를 변경하는 회로를 나타낼 수 있다.
예시적으로, 컨트롤러(240)는 쉴드(220)의 입력단에 배치되는 제1 초퍼 어레이와 쉴드(220)의 출력단에 배치되는 제2 초퍼 어레이를 포함할 수 있다. 일실시예로서, 난수 생성기는 상기 제1 초퍼 어레이 및 상기 제2 초퍼 어레이에 동일한 구성 신호를 제공할 수 있다. 이 경우에, 상기 제1 초퍼 어레이 및 상기 제2 초퍼 어레이는 서로 동일하게 라우팅 토폴로지가 변경될 수 잇다. 다른 일실시예로서, 난수 생성기는 임의로 생성된 제1 구성 신호를 상기 제1 초퍼 어레이에 제공하고, 상기 제1 구성 신호와 구분되는 제2 구성 신호를 상기 제2 초퍼 어레이에 제공할 수 있다. 상기 제1 구성 신호 및 상기 제2 구성 신호는 동일한 비트수를 갖지만 서로 다른 신호를 나타낼 수 있다. 이 경우에는, 상기 제1 초퍼 어레이 및 상기 제2 초퍼 어레이에 관한 라우팅 토폴로지가 상호 간에 독립적으로 변경될 수 있다.
컨트롤러(240)는 상기 적어도 하나의 초퍼 어레이 각각을 난수 생성기가 제공하는 구성 신호의 미리 지정된 비트와 매칭할 수 있다. 또한, 컨트롤러(240)는 매칭된 비트값의 변화에 따라 대응하는 초퍼 어레이를 제어하여 라우팅 토폴로지를 변경할 수 있다.
또한, 난수 생성기는 구성 신호와 별도로 레퍼런스 신호를 생성하고, 감지부(230) 및 컨트롤러(240)에 제공할 수 있다. 보다 구체적으로, 난수 생성기는 서로 독립적으로 생성되는 제1 입력 신호(TX1) 및 제2 입력 신호(TX2) 각각을 상기 레퍼런스 신호로서 생성할 수 있다. 또한, 난수 생성기는 상기 제1 입력 신호(TX1) 및 제2 입력 신호(TX2) 각각을 감지부(230) 및 컨트롤러(240)에 전달할 수 있다. 컨트롤러(240)는 현재의 라우팅 토폴로지에 따라 제1 입력 신호(TX1)를 쉴드(220) 내의 제1 경로를 통해 통과시키고, 제2 입력 신호(TX2)를 쉴드(220) 내의 제2 경로를 통해 통과시킬 수 있다.
감지부(230)는 제1 경로를 통과하여 출력되는 제1 출력 신호(RX1)와 제2 경로를 통과하여 출력되는 제2 출력 신호(RX2)를 상기 제1 입력 신호(TX1) 및 상기 제2 입력 신호(TX2) 각각과 비교하여 쉴드 내의 배선 변경이 있는지 여부를 감지할 수 있다. 일실시예로서, 감지부(230)는 제1 입력 신호(TX1)를 제1 출력 신호(RX1)와 비교하여, 제2 입력 신호(TX2)를 제2 출력 신호(RX2)와 비교하여 쉴드(220) 내에 배선 변경이 있는지 여부를 감지할 수 있다.
다른 일실시예로서, 감지부(230)는 메탈 라인의 라우팅 토폴로지에 따라 제1 입력 신호(RX1)를 다른 포트에서 출력되는 제2 출력 신호(RX2)와 비교하고, 제2 입력 신호(RX2)를 제1 출력 신호(RX1)와 비교하여 쉴드(220) 내에 배선 변경이 있는지 여부를 감지할 수 있다.
본 실시예에 따른 반도체 칩은 레퍼런스 신호가 쉴드(220) 내의 메탈 라인을 통과하는 라우팅 토폴로지를 주기적으로 변화시킬 수 있다. 그에 따라, 쉴드(220) 내의 특정 영역에 배선 변경이 존재하는 경우에는, 지정된 경로 내에서 배선 변경이 발생하였다는 것을 알 수 있어 종래 방식보다 정확하게 배선 변경 영역을 판단할 수 있다.
도 2b는 레퍼런스 신호와 쉴드의 출력 신호를 비교하여 반도체 칩에 관한 배선 변경을 감지하는 과정을 설명하는 예시도이다. 도 2b를 참조하면, 동일한 시간축을 따라 측정되는 레퍼런스 신호(250), 출력 신호(260), 클락 신호(270) 및 공격 신호(280)가 도시된다. 감지부(230)는 난수 발생기로부터 직접적으로 전달된 레퍼런스 신호(250)와 쉴드(220)를 통과하여 전달된 출력 신호(260)를 비교하여 전송 경로가 변경되었는지 여부를 감지할 수 있다.
또한, 감지부(230)는 레퍼런스 신호(250)와 출력 신호(260) 값이 변화하는 라이징 엣지(rising edge)또는 폴링 엣지(falling edge)에서 시간 지연을 비교하여 공격이 없는 정상 상태에서의 두 신호들의 지연 시간(tr)(291)을 측정할 수 있다. 그에 따라, 감지부(230)는 정상 상태에서의 지연 시간(tr)(291)과 비교하여 공격에 따라 변화된 지연 시간(tra: rising time when attacked)(292)이 검출되면 배선 변경과 같은 공격을 감지할 수 있다. 예시적으로, 정상 상태의 경우에 레퍼런스 신호(250)와 출력 신호(260)의 지연 시간(tr)(291)이 약 10ns를 유지한다면, 프로빙 공격과 같은 물리적 공격 신호(280)가 발생하는 경우에는 약 70ns 이상 80ns 이하의 지연 시간(tra)(292)이 발생할 수 있고, 감지부(230)는 기설정된 임계치 이상의 지연 시간 변화를 감지하여 배선 변경 또는 마이크로 프로빙 공격을 감지할 수 있다.
또한, 쉴드(220) 내의 전송 경로 내에서 프로빙 공격이 존재하는 경우에는 100 fF 이상 10 Pf 이하 수준의 커패시턴스 용량이 추가될 수 있을 것이고, 배선 변경 공격의 경우에는 1kΩ 이상 100 kΩ 이하의 저항이 추가될 수 있다. 감지부(230)는 레퍼런스 신호(250)와 출력 신호(260)를 비교하는 방식으로서 신호의 동등성 확인, 시간 지연 확인, 쉴드(220) 내의 전송 경로에 관한 저항 및 용량 변화를 검출할 수 있다.
다른 일실시예에 따른 보안 반도체 칩 구현
도 3은 다른 일실시예에 따라 반도체 칩에 대한 마이크로 프로빙 공격을 감지하는 회로를 나타내는 예시도이다. 도 3을 참조하면, 반도체 칩은 액티브 쉴드(310), 링 오실레이터 블록(320) 및 감지부(330)를 포함할 수 있다. 액티브 쉴드(310)에 대해서는 앞서 도 1에서 설명된 액티브 쉴드(110)에 관한 설명이 그대로 적용될 수 있어, 중복되는 설명은 생략하기로 한다.
링 오실레이터 블록(320)은 동기화 가능한 적어도 두 개의 링 오실레이터를 포함할 수 있다. 각각의 링 오실레이터는 감지부(330)로부터 출력되는 리셋 신호(reset signal)에 따라 동기화될 수 있다. 또한, 동기화된 각각의 링 오실레이터는 전달되는 신호에 대해 동일한 지연 시간을 갖고, 동일한 위상을 갖는 클락 신호를 생성할 수 있다.
링 오실레이터 블록(320)은 제1 링 오실레이터에서 출력되는 제1 출력 신호를 액티브 쉴드(310) 내의 제1 영역으로 전달할 수 있다. 마찬가지로, 링 오실레이터 블록(320)은 제2 링 오실레이터에서 출력되는 제2 출력 신호를 액티브 쉴드(310) 내의 제2 영역으로 전달할 수 있다. 도 3에서 설명되는 실시예에서는 액티브 쉴드(310) 내에 포함되는 10 개의 메탈 라인 중 상부의 5 개의 메탈 라인이 제1 영역으로 지정되고, 하부의 5 개의 메탈 라인이 제2 영역으로 지정되는 경우에 대해 개시되나, 이는 이해를 돕기 위한 예시적 기재일 뿐 다른 실시예들의 범위를 제한하거나 한정하는 것으로 해석되어서는 안될 것이다.
링 오실레이터 블록(320)는 액티브 쉴드(310) 내의 제1 영역을 통과하여 전달되는 제1 귀환 신호(RING_OUT1) 및 액티브 쉴드(310) 내의 제2 영역을 통과하여 전달되는 제2 귀환 신호(RING_OUT2)를 감지부(330)로 전달할 수 있다. 공격자가 탐침 장치(probing device)를 이용하여 마이크로 프로빙 방법을 시도하는 경우에는, 해당 영역에 대응하는 귀환 신호에 대해 지연 시간이 증가하게 될 것이다. 감지부(230)는 동기화된 적어도 두 개의 링 오실레이터의 출력 신호를 비교하여 마이크로 프로빙에 의한 비동기화를 감지하고, 공격이 감지된 경우에는 감지 신호를 출력할 수 있다. 이하에서는 반도체 칩에 관한 블록도를 이용하여 감지부가 반도체 칩에 관한 마이크로 프로빙 공격을 검출하는 과정에 대해 상세하게 기재한다.
도 4a는 상기 도 3에서 설명된 반도체 칩에 관한 블록도이다. 도 4a를 참조하면, 반도체 칩(400)은 프로세서(410), 쉴드(420), 링 오실레이터 블록(430) 및 감지부(440)를 포함할 수 있다. 프로세서(410) 및 쉴드(420)에 대해서는 도 2a와 함께 기재된 설명이 그대로 적용될 수 있어, 중복되는 설명은 생략하기로 한다.
링 오실레이터 블록(430)은 적어도 두 개의 오실레이터를 포함할 수 있다. 일실시예로서, 링 오실레이터 블록(430)는 제1 링 오실레이터 및 제2 링 오실레이터를 포함할 수 있다. 링 오실레이터 블록(430)은 제1 링 오실레이터의 출력 신호를 쉴드(420) 내의 제1 영역에 연결되는 포트로 입력하고, 상기 제1 링 오실레이터의 출력 신호가 상기 제1 영역을 통과하여 링 오실레이터 블록(430)으로 귀환하도록 제어할 수 있다. 마찬가지로, 링 오실레이터 블록(430)은 제2 링 오실레이터의 출력 신호를 쉴드(420) 내의 제2 영역에 연결되는 포트로 입력하고, 상기 제2 링 오실레이터의 출력 신호가 상기 제2 영역을 통과하여 링 오실레이터 블록(430)으로 귀환하도록 제어할 수 있다. 또한, 링 오실레이터 블록(430)은 각각의 귀환 신호(RING_OUT1, RING_OUT2)를 감지부(440)로 전달할 수 있다.
감지부(440)는 상기 제1 링 오실레이터와 상기 제2 링 오실레이터의 발진 위상을 비교하여 쉴드(420)의 전기적 프로빙이 있는지 여부를 감지할 수 있다. 쉴드(420)는 제1 링 오실레이터에 관한 전송 경로가 병렬 다중화된 제1 영역 및 제2 링 오실레이터에 관한 전송 경로가 병렬 다중화된 제2 영역을 포함할 수 있다.
감지부(440)는 두 개의 귀환 신호의 위상이 동일한 경우에 리셋 신호를 링 오실레이터 블록(420)으로 전달하여 상기 제1 링 오실레이터와 상기 제2 링 오실레이터를 주기적으로 동기화되도록 제어할 수 있다. 상기 제1 링 오실레이터 및 상기 제2 링 오실레이터는 상기 리셋 신호에 따라 동일한 위상을 갖는 클락 신호를 생성할 수 있다.
도 4b는 적어도 두 개의 링 오실레이터의 귀환 신호를 비교하여 반도체 칩에 관한 마이크로 프로빙 공격을 감지하는 과정을 설명하는 예시도이다. 도 4b를 참조하면, 동일한 시간축을 따라 정의되는 두 개의 귀환 신호(451, 452), 마이크로 프로빙에 연관되는 공격 신호(460), 감지 신호(470) 및 리셋 신호(480)가 도시된다. 감지부(440)는 각각의 링 오실레이터로부터 전달되는 두 개의 귀환 신호(451, 452)를 비교하여 반도체 칩(400)에 관한 프로빙 공격을 감지할 수 있다. 일실시예로서, 귀환 신호에 관한 적절한 주파수는 100kHz 이상 999kHz 이하에서 설정될 수 있다.
두 개의 링 오실레이터가 출력하는 신호는 감지부(430)로부터 전달되는 리셋 신호(480)에 따라 동기화 될 수 있다. 예시적으로, 공격자에 의한 마이크로 프로빙 공격이 제2 링 오실레이터에 연관되는 제2 영역에 대해 가해지는 경우가 있을 수 있다. 이 경우에, 제2 링 오실레이터에 의한 출력 신호는, 발진 경로 내에서 탐침 장치에 의한 커패시턴스 용량의 추가에 따라 제2 귀환 신호(452)의 위상 지연이 증가할 것이다. 위와 같은 위상 지연에 따라, 제2 귀환 신호(452)의 주파수는 감소하게 될 것이다. 감지부(430)는 제2 귀환 신호(452) 내의 주파수 감소 시점들(492, 493)을 이용하여 프로빙 공격을 감지할 수 있다.
리셋 신호(480)에 따라 두 개의 링 오실레이터가 서로 동기화되었으므로, 프로빙 공격이 존재하지 않는다면 두 개의 귀환 신호(451, 452)는 서로 동일한 주파수로서 동작할 것이다. 그러나, 프로빙 공격이 존재하는 경우에는, 공격 받은 영역에 대응하는 제2 귀환 신호(452)가 제1 귀환 신호(451)와 대비하여 주파수가 느려지게 될 것이다.
이에 따라 제1 리셋 신호에 의한 폴링 이후에 유사한 위상을 가지는 제1 귀환 신호(451)와 제2 귀환 신호(452)는 6 주기 이후 다시 반대 위상을 가지게 되고, 감지부(420)는 위와 같은 위상 차이를 이용하여 공격을 검출할 수 있다.
또 다른 일실시예에 따른 보안 반도체 칩 구현
도 5는 또 다른 일실시예에 따라 반도체 칩을 보호하는 집적 회로를 나타내는 예시도이다. 도 5를 참조하면, 반도체 칩은 액티브 쉴드(510), 난수 발생기(520), 제1 제어부(530), 제2 제어부(540), 링 오실레이터 블록(550) 및 감지부(560)를 포함할 수 있다. 액티브 쉴드(510)는 리버스 엔지니어링을 위한 물리적 공격으로부터 칩 내부의 집적회로를 보호하기 위한 최상위 메탈 라인을 나타낼 수 있다. 제1 제어부(530) 및 제2 제어부(540)는 반도체 칩의 보호 모드에 따라 배선 변경을 감지하는 제1 모드 및 마이크로 프로빙을 감지하는 제2 모드 중 어느 하나를 지원할 수 있다. 반도체 칩의 복수의 보호 모드를 선택하는 과정에 대해서는 도 6과 함께 보다 자세하게 설명될 것이다.
배선 변경을 감지하는 제1 모드가 선택된 경우에, 난수 발생기(520)는 제1 제어부(530)와 감지부(560)로 동일한 레퍼런스 신호(TX1, TX2)를 전송할 수 있다. 제1 제어부(530)는 제1 모드에 따라, 전달 받은 레퍼런스 신호(TX1, TX2)가 액티브 쉴드(510)를 통과하도록 제어할 수 있다. 또한, 난수 발생기(520)는 제1 제어부(530) 및 제2 제어부(540)가 액티브 쉴드(510) 내의 라우팅 토폴로지를 변경할 수 있도록 구성 신호를 생성할 수 있다. 난수 발생기(520)는 생성된 구성 신호를 제1 제어부(530) 및 제2 제어부(540)로 전달할 수 있다. 구성 신호는 라우팅 토폴로지를 변경하기 위한 제어 신호로서 배선 변경을 직접적으로 감지하기 위한 레퍼런스 신호(TX1, TX2)와는 독립적으로 생성되는 신호를 나타낼 수 있다.
감지부(560)는 난수 발생기(520)로부터 직접적으로 전달된 레퍼런스 신호(TX1, TX2)와 액티브 쉴드(510)를 통과하여 전달된 출력 신호(RX1, RX2)를 비교할 수 있다. 비교 결과에 따라, 감지부(560)는 반도체 칩에 관한 상부 배선 변경을 감지할 수 있다.
마이크로 프로빙 공격을 감지하는 제2 모드가 선택된 경우에, 제1 제어부(530)는 링 오실레이터 블록(550)으로부터 전달되는 두 개의 출력 신호가 액티브 쉴드(510) 내의 지정된 영역을 통과하도록 제어할 수 있다. 또한, 제2 제어부(540)는 대응하는 액티브 쉴드(510) 내를 통과하여 귀환하는 두 개의 귀환 신호를 링 오실레이터 블록(550) 및 감지부(560)로 전달할 수 있다. 감지부(560)는 앞서 기재한 것과 같이 두 개의 귀환 신호의 발진 위상을 비교하는 방식으로 반도체 칩에 관한 프로빙 공격을 감지할 수 있다.
도 6는 다중 모드를 지원하는 반도체 칩의 동작 방법을 설명하는 흐름도이다. 다중 모드를 지원하는 반도체 칩의 동작 방법은 배선 변경을 검출하는 제1 모드 및 프로빙 공격을 검출하는 제2 모드 중 어느 하나를 선택하는 단계(610), 제1 모드가 선택된 경우에 실행되는 전달되는 구성 신호에 따라 메탈 라인의 라우팅 토폴로지를 변경하는 단계(621) 및 레퍼런스 신호와 출력 신호를 비교하여 쉴드 내의 배선 변경을 감지하는 단계(622), 제2 모드가 선택된 경우에 실행되는 링 오실레이터로부터 전달되는 두 개의 출력 신호를 쉴드 내의 서로 다른 영역으로 통과 시키는 단계(631) 및 두 개의 귀환 신호의 위상을 비교하여 마이크로 프로빙을 감지하는 단계(632)를 포함할 수 있다.
단계(610)에서 반도체 칩에 포함되는 제어부는 상기 반도체 칩에 관한 보호 모드를 선택할 수 있다. 보다 구체적으로, 제어부는 배선 변경을 검출하는 제1 모드 및 프로빙 공격을 검출하는 제2 모드 중 어느 하나를 선택할 수 있다. 다른 일실시예로서, 제어부는 미리 지정된 시간 주기에 따라 반복적으로 제1 모드에서 제2 모드로 또는 제2 모드에서 제1 모드로, 동작 모드를 변경할 수 있다.
제1 모드가 선택된 경우, 단계(621)에서 제어부는 난수 발생기에서 전달되는 구성 신호를 초퍼 어레이에 전달하여 쉴드 내의 메탈 라인의 라우팅 토폴로지를 변경할 수 있다. 또한, 단계(622)에서 반도체 칩에 포함되는 감지부는 난수 발생기에서 직접적으로 전달되는 레퍼런스 신호와 출력 신호를 비교하여 쉴드 내의 배선 변경을 감지할 수 있다. 단계(621) 및 단계(622)에 관한 구체적 설명은 앞서 도 2a 및 도 4a에서 설명된 반도체 칩에 관한 설명이 그대로 적용될 수 있어 중복되는 설명은 생략하기로 한다.
제2 모드가 선택된 경우, 단계(631)에서 제어부는 링 오실레이터로부터 전달되는 두 개의 출력 신호를 쉴드 내의 서로 다른 영역으로 통과시킬 수 있다. 또한, 단계(632)에서 반도체 칩에 포함되는 감지부는 제어부를 통해 출력되는 두 개의 귀환 신호의 위상을 비교하여 마이크로 프로빙을 감지할 수 있다. 마찬가지로, 단계(631) 및 단계(632)에 관한 구체적 설명은 앞서 도 2a 및 도 4a에서 설명된 반도체 칩에 관한 설명이 그대로 적용될 수 있어 중복되는 설명은 생략하기로 한다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (16)

  1. 데이터를 처리하는 프로세서;
    메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드;
    레퍼런스 신호를, 상기 레퍼런스 신호가 상기 쉴드를 통과하여 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지 여부를 감지하는 감지부; 및
    상기 메탈 라인의 라우팅 토폴로지를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경하여 구성하는 컨트롤러
    를 포함하는 반도체 칩.
  2. 제1항에 있어서,
    상기 컨트롤러가 상기 라우팅 토폴로지를 구성하도록 하는 구성 신호(configuration signal)을 제공하는 난수 생성기
    를 더 포함하는 반도체 칩.
  3. 제2항에 있어서,
    상기 컨트롤러는 상기 난수 생성기가 제공하는 상기 구성 신호에 따라 상기 라우팅 토폴로지를 변경할 수 있는 적어도 하나의 초퍼 어레이를 포함하는 반도체 칩.
  4. 제2항에 있어서,
    상기 난수 생성기는 시간에 따라 주기적으로 상기 구성 신호를 무작위로 변경하여 상기 컨트롤러가 상기 라우팅 토폴로지를 지속적으로 바꾸도록 하는 반도체 칩.
  5. 제2항에 있어서,
    상기 레퍼런스 신호는 상기 난수 생성기가 상기 구성 신호와 별도로 만드는 신호인 반도체 칩.
  6. 제1항에 있어서,
    상기 레퍼런스 신호는 서로 독립적으로 생성되는 제1 입력 신호 및 제2 입력 신호를 포함하고, 상기 감지부는 상기 제1 입력 신호 및 상기 제2 입력 신호가 각각 상기 쉴드를 통과해서 출력되는 제1 출력 신호 및 제2 출력 신호를 상기 제1 입력 신호 및 상기 제2 입력 신호와 비교하여 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지하는 반도체 칩.
  7. 제5항에 있어서,
    상기 감지부는 상기 메탈 라인의 라우팅 토폴로지에 따라 상기 제1 입력 신호를 서로 다른 포트에서 출력되는 제1 출력 신호 및 제2 출력 신호 중 어느 하나와 비교하여 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지하는 반도체 칩.
  8. 제2항에 있어서,
    상기 컨트롤러는 상기 적어도 하나의 초퍼 어레이 각각을 상기 구성 신호 내의 미리 지정된 비트에 매칭하고, 매칭되는 비트 값의 변화에 따라 대응하는 초퍼 어레이를 이용하여 라우팅 토폴로지를 변경하는 반도체 칩.
  9. 데이터를 처리하는 프로세서;
    메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드;
    제1 링 오실레이터의 출력을 상기 쉴드의 제1 영역을 통과시켜 상기 제1 링 오실레이터 입력으로 귀환하고, 상기 제1 링 오실레이터와 동기화된 제2 링 오실레이터의 출력을 상기 쉴드의 제2 영역을 통과시켜 상기 제2 링 오실레이터 입력으로 귀환하는 링 오실레이터 블록; 및
    상기 제1 링 오실레이터와 상기 제2 링 오실레이터의 발진 위상을 비교하여 상기 쉴드의 전기적 프로빙이 있는지의 여부를 감지하는 감지부
    를 포함하는 반도체 칩.
  10. 제9항에 있어서,
    상기 제1 영역에서 상기 제1 링 오실레이터의 전송 경로가 병렬 다중화되고, 상기 제2 영역에서 상기 제2 링 오실레이터의 전송 경로가 병렬 다중화되는 반도체 칩.
  11. 제9항에 있어서,
    상기 감지부는 리셋 신호를 상기 링 오실레이터 블록으로 전달하여, 상기 제1 링 오실레이터와 상기 제2 링 오실레이터를 주기적으로 동기화하는 반도체 칩.
  12. 제11항에 있어서,
    상기 제1 링 오실레이터 및 상기 제2 링 오실레이터는 상기 리셋 신호에 따라 동일한 위상을 갖는 클락 신호를 생성하는 반도체 칩.
  13. 데이터를 처리하는 프로세서;
    메탈 라인을 포함하며 상기 프로세서의 상부에 배치되는 쉴드;
    상기 쉴드 내에 배선 변경이 있는지의 여부 및 상기 쉴드에 관한 전기적 프로빙이 있는지의 여부 중 적어도 하나를 감지하는 감지부; 및
    반도체 칩에 관한 배선 변경을 감지하는 제1 모드 및 상기 반도체 칩에 관한 마이크로 프로빙을 감지하는 제2 모드 중 어느 하나를 선택하여 선택된 모드에 상응하는 신호를 상기 감지부로 전달하는 컨트롤러
    를 포함하는 반도체 칩.
  14. 제13항에 있어서,
    상기 제1 모드가 선택된 경우에, 상기 컨트롤러는 상기 메탈 라인의 라우팅 토폴로지를 제1 상태로 구성하고, 상기 라우팅 토폴로지를 상기 제1 상태로부터 제2 상태로 변경하여 구성하고, 상기 감지부는 전달되는 레퍼런스 신호를, 상기 레퍼런스 신호가 상기 쉴드를 통과해서 출력되는 출력 신호와 비교함으로써 상기 쉴드 내에 배선 변경이 있는지의 여부를 감지하는 반도체 칩.
  15. 제14항에 있어서,
    상기 컨트롤러가 상기 라우팅 토폴로지를 구성하도록 하는 구성 신호(configure signal)을 제공하는 난수 생성기
    를 더 포함하고,
    상기 컨트롤러는 상기 난수 생성기가 제공하는 상기 구성 신호에 따라 상기 라우팅 토폴로지를 변경할 수 있는 적어도 하나의 초퍼 어레이를 포함하는 반도체 칩.
  16. 제13항에 있어서,
    제1 링 오실레이터의 출력을 상기 쉴드의 제1 영역을 통과시켜 상기 제1 링 오실레이터 입력으로 귀환하고, 상기 제1 오실레이터와 동기화된 제2 링 오실레이터의 출력을 상기 쉴드의 제2 영역을 통과시켜 상기 제2 링 오실레이터 입력으로 귀환하는 링 오실레이터 블록
    을 더 포함하고,
    상기 제2 모드가 선택된 경우에, 상기 컨트롤러는 제1 링 오실레이터 및 상기 제2 링 오실레이터 각각의 출력 신호가 상기 쉴드 내의 대응 영역을 통과하여 상기 감지부로 전달되도록 제어하는 반도체 칩.
KR1020170018693A 2016-02-12 2017-02-10 보안 반도체 칩 및 그 동작 방법 KR20170095155A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2017/001492 WO2017138774A1 (ko) 2016-02-12 2017-02-10 보안 반도체 칩 및 그 동작 방법
US16/076,510 US10972460B2 (en) 2016-02-12 2017-02-10 Secure semiconductor chip and operating method thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160016587 2016-02-12
KR1020160016587 2016-02-12

Publications (1)

Publication Number Publication Date
KR20170095155A true KR20170095155A (ko) 2017-08-22

Family

ID=59757767

Family Applications (5)

Application Number Title Priority Date Filing Date
KR1020170018693A KR20170095155A (ko) 2016-02-12 2017-02-10 보안 반도체 칩 및 그 동작 방법
KR1020170018692A KR20170095154A (ko) 2016-02-12 2017-02-10 보안 반도체 칩 및 그 동작 방법
KR1020170018694A KR20170095156A (ko) 2016-02-12 2017-02-10 메모리 장치 및 그 동작 방법
KR1020170019341A KR20170095161A (ko) 2016-02-12 2017-02-13 시큐어 시스템 온 칩
KR1020170019497A KR20170095163A (ko) 2016-02-12 2017-02-13 하드웨어 디바이스 및 그 인증 방법

Family Applications After (4)

Application Number Title Priority Date Filing Date
KR1020170018692A KR20170095154A (ko) 2016-02-12 2017-02-10 보안 반도체 칩 및 그 동작 방법
KR1020170018694A KR20170095156A (ko) 2016-02-12 2017-02-10 메모리 장치 및 그 동작 방법
KR1020170019341A KR20170095161A (ko) 2016-02-12 2017-02-13 시큐어 시스템 온 칩
KR1020170019497A KR20170095163A (ko) 2016-02-12 2017-02-13 하드웨어 디바이스 및 그 인증 방법

Country Status (3)

Country Link
US (4) US10778679B2 (ko)
KR (5) KR20170095155A (ko)
CN (4) CN108701193B (ko)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190063051A (ko) * 2017-11-29 2019-06-07 재단법인대구경북과학기술원 네트워크공격검출시스템
KR20200104227A (ko) * 2019-02-25 2020-09-03 윈본드 일렉트로닉스 코포레이션 반도체 집적회로를 리버스 엔지니어링으로부터 보호하는 방법 및 반도체 디바이스
KR20200141783A (ko) 2019-06-11 2020-12-21 연세대학교 산학협력단 침투 공격에 대해 검출 및 보호가 가능한 온칩 보안 회로
EP3834111A4 (en) * 2018-08-10 2022-05-18 Cryptography Research, Inc. MEMORY BUS PROTECTION
KR20220074017A (ko) * 2020-11-27 2022-06-03 연세대학교 산학협력단 칩의 보안 회로
KR102640110B1 (ko) * 2023-02-28 2024-02-23 전남대학교산학협력단 침투 공격 검출이 가능한 초소형 온칩 보안 회로 장치 및 그 방법

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10949546B2 (en) * 2017-08-02 2021-03-16 Samsung Electronics Co., Ltd. Security devices, electronic devices and methods of operating electronic devices
KR102089085B1 (ko) * 2018-02-21 2020-03-16 주식회사 에이피씨테크 산업 제어 시스템을 위한 암호화 모듈 및 통신 모듈을 포함하는 보안 통신 장치
CN109639757B (zh) * 2018-10-31 2021-07-06 深圳市元征科技股份有限公司 一种文件下载方法、终端及服务器
US10996952B2 (en) 2018-12-10 2021-05-04 SiFive, Inc. Macro-op fusion
US11245680B2 (en) * 2019-03-01 2022-02-08 Analog Devices, Inc. Garbled circuit for device authentication
EP3948608B1 (en) * 2019-04-01 2023-04-26 Raytheon Company Adaptive, multi-layer enterprise data protection & resiliency platform
WO2020205497A1 (en) * 2019-04-01 2020-10-08 Raytheon Company Root of trust assisted access control of secure encrypted drives
US11177934B2 (en) * 2019-06-05 2021-11-16 Nec Corporation Of America Open processor for operation technology and internet of things
TWI716918B (zh) * 2019-06-27 2021-01-21 旺宏電子股份有限公司 電子裝置、記憶體裝置及其記憶資料的讀取方法
EP3798886A1 (en) * 2019-09-26 2021-03-31 General Electric Company Devices, systems, and methods for securely initializing an embedded system
CN112560118A (zh) * 2019-09-26 2021-03-26 杭州中天微系统有限公司 用于提供可重置的标识符的配置装置和配置方法
KR20210037314A (ko) * 2019-09-27 2021-04-06 삼성전자주식회사 보안 집적 회로를 이용하여 펌웨어를 갱신하기 위한 전자 장치 및 그의 동작 방법
US11336440B2 (en) * 2019-12-16 2022-05-17 The Toronto-Dominion Bank Secure management and regeneration of cryptographic keys within a computing environment using permissioned distributed ledgers
US11743058B2 (en) 2020-03-05 2023-08-29 International Business Machines Corporation NVDIMM security with physically unclonable functions
EP3907633B1 (en) * 2020-05-05 2022-12-14 Nxp B.V. System and method for obfuscating opcode commands in a semiconductor device
CN113742795A (zh) * 2020-05-27 2021-12-03 台湾积体电路制造股份有限公司 对集成电路中的半导体存储器的安全级别进行认证的方法
KR102591826B1 (ko) * 2020-06-10 2023-10-24 한국전자통신연구원 Puf를 이용한 인증서 기반 디바이스 인증 장치 및 방법
CN113965595A (zh) * 2020-07-02 2022-01-21 中国电信股份有限公司 物联网设备配置方法、服务器、设备、系统和存储介质
EP3979136A4 (en) * 2020-08-07 2022-06-15 Shenzhen Goodix Technology Co., Ltd. LASER ERRORS INJECTION ATTACK DETECTION CIRCUIT FOR A CHIP AND SECURITY CHIP
EP3989478B1 (en) * 2020-10-22 2023-10-18 Moxa Inc. Computing system and device for handling a chain of trust
CN114626020A (zh) * 2020-12-11 2022-06-14 熵码科技股份有限公司 用来控制装置激活的方法以及相关电子装置
GB202107886D0 (en) * 2021-06-02 2021-07-14 Nordic Semiconductor Asa Device identity keys
US20220116206A1 (en) * 2021-12-22 2022-04-14 Intel Corporation Systems and methods for device authentication in supply chain

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6184054A (ja) * 1984-09-27 1986-04-28 シーメンス、アクチエンゲゼルシヤフト 集積mos回路
US5117457A (en) * 1986-11-05 1992-05-26 International Business Machines Corp. Tamper resistant packaging for information protection in electronic circuitry
US5053992A (en) 1990-10-04 1991-10-01 General Instrument Corporation Prevention of inspection of secret data stored in encapsulated integrated circuit chip
JP3209938B2 (ja) * 1997-01-10 2001-09-17 富士通株式会社 発光素子の保護装置及び発光素子の保護方法
DE19701166A1 (de) * 1997-01-15 1998-07-23 Siemens Ag Verfahren zur Überwachung der bestimmungsgemäßen Ausführung von Softwareprogrammen
CA2364506A1 (en) * 2001-12-07 2003-06-07 John W. Bogdan Integrated timing systems and circuits
EP1331539B1 (en) * 2002-01-16 2016-09-28 Texas Instruments France Secure mode for processors supporting MMU and interrupts
JP2003296680A (ja) 2002-03-29 2003-10-17 Hitachi Ltd データ処理装置
KR100517554B1 (ko) 2002-12-05 2005-09-28 삼성전자주식회사 보안 기능을 갖는 반도체 집적 회로
US7219337B2 (en) * 2003-03-06 2007-05-15 Northrop Grumman Corporation Direct instructions rendering emulation computer technique
KR20050066558A (ko) 2003-12-26 2005-06-30 매그나칩 반도체 유한회사 광검출 회로를 이용하여 보안성을 강화한 반도체 소자
DE602004023378D1 (de) * 2004-07-01 2009-11-12 Texas Instruments Inc Vorrichtung und Verfahren zum sicheren Modus für Prozessoren und Speicher auf mehreren Halbleiterbauelementen in einem einzelnen Halbleitergehäuse
US8099783B2 (en) * 2005-05-06 2012-01-17 Atmel Corporation Security method for data protection
CN101171617A (zh) * 2005-05-06 2008-04-30 爱特梅尔公司 用于数据保护的安全方法
KR20080059321A (ko) * 2005-10-24 2008-06-26 엔엑스피 비 브이 반도체 장치 및 이를 포함하는 스마트 카드, 공격 방어방법
CN101379517A (zh) 2006-02-09 2009-03-04 Nxp股份有限公司 电路装置,包括这种电路装置的数据处理设备以及用于识别对这种电路装置的攻击的方法
WO2008102282A2 (en) * 2007-02-20 2008-08-28 Nxp B.V. Semiconductor device with backside tamper protection
US7831873B1 (en) * 2007-03-07 2010-11-09 Xilinx, Inc. Method and apparatus for detecting sudden temperature/voltage changes in integrated circuits
KR100929348B1 (ko) 2007-06-22 2009-12-03 삼성전자주식회사 비정상 동작을 감시하기 위한 반도체 장치 및 방법
US8978132B2 (en) * 2008-05-24 2015-03-10 Via Technologies, Inc. Apparatus and method for managing a microprocessor providing for a secure execution mode
US7989918B2 (en) * 2009-01-26 2011-08-02 International Business Machines Corporation Implementing tamper evident and resistant detection through modulation of capacitance
JP2012053788A (ja) * 2010-09-02 2012-03-15 Canon Inc 半導体集積回路装置
JP2012074674A (ja) * 2010-09-02 2012-04-12 Canon Inc 半導体集積回路装置
KR101118826B1 (ko) 2011-02-15 2012-04-20 한양대학교 산학협력단 물리적 공격을 방어하는 암호화 장치 및 암호화 방법
WO2012122994A1 (en) * 2011-03-11 2012-09-20 Kreft Heinz Off-line transfer of electronic tokens between peer-devices
TWI479870B (zh) * 2011-08-16 2015-04-01 Ict Korea Co Ltd 基於puf透過機器對機器溝通在裝置之間認證的設備與方法
US10678951B2 (en) * 2011-10-24 2020-06-09 Maxim Integrated Products, Inc. Tamper detection countermeasures to deter physical attack on a security ASIC
EP2780938B1 (en) * 2011-11-18 2015-09-30 Tubitak Active shield with electrically configurable interconnections
EP2836956B1 (en) * 2012-04-13 2019-06-26 OLogN Technologies AG Secure zone for digital communications
KR20140114263A (ko) 2013-03-13 2014-09-26 삼성전자주식회사 어플리케이션 인증 방법 및 이를 구현하는 전자 장치
US9846656B2 (en) * 2013-04-17 2017-12-19 Laurence H. Cooke Secure computing
US9310862B2 (en) * 2013-05-20 2016-04-12 Advanced Micro Devices, Inc. Method and apparatus for monitoring performance for secure chip operation
CN103336930A (zh) * 2013-05-28 2013-10-02 戴葵 一种新型的puf电路体系结构
US8896086B1 (en) 2013-05-30 2014-11-25 Freescale Semiconductor, Inc. System for preventing tampering with integrated circuit
CN103413106B (zh) * 2013-08-05 2016-04-20 大唐微电子技术有限公司 一种芯片顶层覆盖完整性保护方法和装置
US11349675B2 (en) * 2013-10-18 2022-05-31 Alcatel-Lucent Usa Inc. Tamper-resistant and scalable mutual authentication for machine-to-machine devices
CN203535642U (zh) * 2013-11-06 2014-04-09 昆腾微电子股份有限公司 用于安全芯片的动态遮蔽保护装置
CN103559459A (zh) * 2013-11-06 2014-02-05 北京昆腾微电子有限公司 用于安全芯片的动态遮蔽保护装置和方法
CN104850805B (zh) * 2015-05-29 2019-03-26 北京华大信安科技有限公司 一种保护芯片系统敏感信息的装置及方法
CN105184194A (zh) * 2015-10-13 2015-12-23 天津大学 在集成电路中探测光故障注入攻击的结构及其探测方法
US10394556B2 (en) * 2015-12-20 2019-08-27 Intel Corporation Hardware apparatuses and methods to switch shadow stack pointers
KR102444239B1 (ko) * 2016-01-21 2022-09-16 삼성전자주식회사 보안 칩, 어플리케이션 프로세서, 보안 칩을 포함하는 디바이스 및 그 동작방법
EP3246845B1 (en) * 2016-05-17 2018-12-05 Inside Secure Secure asset management system
FR3082659A1 (fr) * 2018-06-14 2019-12-20 Stmicroelectronics (Research & Development) Limited Puce electronique protegee

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190063051A (ko) * 2017-11-29 2019-06-07 재단법인대구경북과학기술원 네트워크공격검출시스템
EP3834111A4 (en) * 2018-08-10 2022-05-18 Cryptography Research, Inc. MEMORY BUS PROTECTION
KR20200104227A (ko) * 2019-02-25 2020-09-03 윈본드 일렉트로닉스 코포레이션 반도체 집적회로를 리버스 엔지니어링으로부터 보호하는 방법 및 반도체 디바이스
KR20200141783A (ko) 2019-06-11 2020-12-21 연세대학교 산학협력단 침투 공격에 대해 검출 및 보호가 가능한 온칩 보안 회로
US11387196B2 (en) 2019-06-11 2022-07-12 Industry-Academic Cooperation Foundation, Yonsei University On-chip security circuit for detecting and protecting against invasive attacks
KR20220074017A (ko) * 2020-11-27 2022-06-03 연세대학교 산학협력단 칩의 보안 회로
KR102640110B1 (ko) * 2023-02-28 2024-02-23 전남대학교산학협력단 침투 공격 검출이 가능한 초소형 온칩 보안 회로 장치 및 그 방법

Also Published As

Publication number Publication date
US10778679B2 (en) 2020-09-15
US10972460B2 (en) 2021-04-06
US20190050702A1 (en) 2019-02-14
KR20170095161A (ko) 2017-08-22
CN108701193A (zh) 2018-10-23
KR20170095163A (ko) 2017-08-22
US11089016B2 (en) 2021-08-10
KR20170095156A (ko) 2017-08-22
US20190042532A1 (en) 2019-02-07
CN108604275A (zh) 2018-09-28
CN108604274A (zh) 2018-09-28
CN108701193B (zh) 2022-08-30
US20190253417A1 (en) 2019-08-15
KR20170095154A (ko) 2017-08-22
US20190114428A1 (en) 2019-04-18
CN108701192A (zh) 2018-10-23
CN108701192B (zh) 2022-05-31

Similar Documents

Publication Publication Date Title
KR20170095155A (ko) 보안 반도체 칩 및 그 동작 방법
Krautter et al. FPGAhammer: Remote voltage fault attacks on shared FPGAs, suitable for DFA on AES
US9523736B2 (en) Detection of fault injection attacks using high-fanout networks
CN107958153B (zh) 用于主动asic侵犯屏障的设备
WO2015102359A1 (ko) 랜덤한 디지털 값을 생성하는 장치 및 방법
EP2962534B1 (en) Anti-tamper system based on dual random bits generators for integrated circuits
Gnad et al. Checking for electrical level security threats in bitstreams for multi-tenant FPGAs
Provelengios et al. Mitigating voltage attacks in multi-tenant FPGAs
Moein et al. A new characterization of hardware trojans
Kitsos et al. FPGA Trojan detection using length-optimized ring oscillators
US20200162249A1 (en) Apparatus for generating secret information on basis of ring oscillator architecture and method of same
Haider et al. Advancing the state-of-the-art in hardware trojans design
Jyothi et al. FPGA Trust Zone: Incorporating trust and reliability into FPGA designs
Mahmoud et al. DFAulted: Analyzing and exploiting CPU software faults caused by FPGA-driven undervolting attacks
US10043766B2 (en) Protected integrated circuit
CN110363032B (zh) 安全芯片的主动屏蔽层电路
Bete et al. Side-channel power resistance for encryption algorithms using dynamic partial reconfiguration (SPREAD)
Rao et al. Analysis of the Security Vulnerabilities of 2.5-D and 3-D Integrated Circuits
Kitsos et al. A comparison of TERO and RO timing sensitivity for hardware Trojan detection applications
WO2017138774A1 (ko) 보안 반도체 칩 및 그 동작 방법
KR102220662B1 (ko) 테스트 모드에서 데이터 보호 장치 및 방법
US20100026337A1 (en) Interdependent Microchip Functionality for Defeating Exploitation Attempts
Veeranna et al. Hardware trojan avoidance and detection for dynamically re-configurable FPGAs
CN106169045B (zh) 计算装置和对此的运行方法
KR102251812B1 (ko) 반도체 장치 및 반도체 장치의 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right