KR101299602B1 - 리버스 엔지니어링을 보호하는 집적회로 - Google Patents

리버스 엔지니어링을 보호하는 집적회로 Download PDF

Info

Publication number
KR101299602B1
KR101299602B1 KR1020070029936A KR20070029936A KR101299602B1 KR 101299602 B1 KR101299602 B1 KR 101299602B1 KR 1020070029936 A KR1020070029936 A KR 1020070029936A KR 20070029936 A KR20070029936 A KR 20070029936A KR 101299602 B1 KR101299602 B1 KR 101299602B1
Authority
KR
South Korea
Prior art keywords
signal
comparison
signals
integrated circuit
comparison signal
Prior art date
Application number
KR1020070029936A
Other languages
English (en)
Other versions
KR20080087542A (ko
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 KR1020070029936A priority Critical patent/KR101299602B1/ko
Priority to US12/052,427 priority patent/US8296845B2/en
Priority to DE102008016914.5A priority patent/DE102008016914B4/de
Publication of KR20080087542A publication Critical patent/KR20080087542A/ko
Application granted granted Critical
Publication of KR101299602B1 publication Critical patent/KR101299602B1/ko

Links

Images

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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • 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
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Storage Device Security (AREA)

Abstract

여기에 개시된 집적회로는 제어부와; 액티브 쉴드의 보안 상태를 나타내는 복수의 비교 신호들; 상기 복수의 비교 신호들을 입력받는 판단부; 그리고 상기 제어부의 제어에 응답하여 상기 복수의 비교 신호들의 주기를 랜덤하게 변경하는 주기제어부를 포함하되, 상기 판단부는 상기 복수의 비교 신호들을 입력받아 상기 액티브 쉴드에 공격이 있는가를 감지하고, 만약 상기 액티브 쉴드에 공격을 감지한 경우, 리셋 신호 또는 인터럽트 신호를 출력한다.

Description

리버스 엔지니어링을 보호하는 집적회로{INTEGRATED CIRCUIT PROTECTING REVERSE ENGINEERING}
도 1은 제1 실시예에서 본 발명에 따른 집적회로의 블록도이다.
도 2는 도 1에 도시된 비교부의 내부 블록을 도시한 블록도이다.
도 3은 도 2에 도시된 본 발명의 타이밍이다.
도 4는 도 1에 도시된 비교부의 또 다른 실시예를 도시한 블록도이다.
도 5는 도 4에 도시된 본 발명의 타이밍이다.
도 6은 제2 실시예에서 본 발명에 따른 집적회로의 블록도이다.
도 7는 도 6에 도시된 비교부의 내부 블록을 도시한 블록도이다.
도 8은 도 6에 도시된 집적회로의 타이밍이다.
*도면의 주요 부분에 대한 부호의 설명*
100 : 집적회로 110 : 액티브 쉴드
120 : 시드 130 : 비교부
131 : 액티브 쉴드 데이터 레지스터 132 : 시드 데이터 레지스터
133 : 시드 데이터 비교부 134 : 누적부
135 : 오실레이터 136 : 인버터
137 : 먹스 140 : 판단부
본 발명은 집적회로에 관한 것으로, 좀 더 구체적으로는 액티브 쉴드를 포함하는 집적회로에 관한 것이다.
특히, 스마트 카드에 사용되는 집적 회로에서는, 포텐셜 어택커(potential attacker)가 집적 회로의 분석, 소위 '역설계(reverse engineering)'를 수행하여 얻어진 정보로 회로의 동작 모드를 변동시키거나 또는 그 메모리 내의 데이터 조작을 수행할 수 있다. 이러한 방법은 특히 현금 카드 기능 또는 출입 허가 기능을 가진 보안 관련 회로에서 원하지 않는 결과를 야기할 수 있다.
집적회로는 액티브 쉴드에 의하여 보호된다. 공격자는 FIB(Focused Ion Beam) 방법과 프로빙(probing) 방법 또는 포싱(forcing) 방법에 의하여 집적회로의 액티브 쉴드를 피하여 집적회로를 해킹한다. FIB(Focused Ion Beam)란 메탈 라인을 임의적으로 단락하거나 연결하는 방법입니다. 프로빙(probing) 방법이란 FIB 방법에 의하여 액티브 쉴드의 특정 메탈 라인을 절단하고, 절단된 메탈 라인의 상태값을 독출하는 것을 의미한다. 포싱(forcing)이란 FIB 방법에 의하여 액티브 쉴드의 특정 메탈 라인을 절단하고,절단된 메탈 라인에 특정한 신호가 제공함으로써 데이터를 조작하는 것을 의미한다.
따라서, 종래의 액티브 쉴드를 가지는 집적회로는 공격자의 해킹에 의하여 집적회로의 보안이 해체될 수 있는 문제점을 가진다.
따라서, 본 발명의 목적은 공격자로부터 해킹을 방지할 수 있는 집적회로를 제공하는데 있다.
상술한 바와 같은 본 발명의 목적을 달성하기 위한 본 발명의 특징에 의하면 집적회로는 테스트 신호를 입력받고, 복수의 신호 경로들을 통해 복수의 쉴드 신호들을 출력하는 액티브 쉴드; 상기 테스트 신호와 상기 복수의 쉴드 신호들 각각을 비교하고, 비교 결과에 따라서 적어도 두 개의 비교 신호들을 출력하는 비교부; 그리고 상기 적어도 두 개의 비교 신호들 각각의 패턴에 따라서 상기 액티브 쉴드의 공격 여부를 판단하는 판단기를 포함한다.
(실시예)
이하, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있도록 본 발명의 실시예를 첨부된 도면을 참조하여 설명한다.
본 발명의 신규한 집적회로는 테스트 신호를 입력받고, 복수의 신호 경로들을 통해 복수의 쉴드 신호들을 출력하는 액티브 쉴드; 상기 테스트 신호와 상기 복수의 쉴드 신호들 각각을 비교하고, 비교 결과에 따라서 적어도 두 개의 비교 신호들을 출력하는 비교부; 그리고 상기 적어도 두 개의 비교 신호들 각각의 패턴에 따라서 상기 액티브 쉴드의 공격 여부를 판단하는 판단부를 포함한다.
도 1은 제1 실시예에서 본 발명에 따른 집적회로의 블록도이다.
도 1을 참조하면, 본 발명에 따른 집적회로(100)는 액티브 쉴드(Active Shield ; 110), 시드(SEED ; 120), 비교부(Compare Logic ; 130), 및 판단부etection & Decision Logic ; 140)를 포함한다.
액티브 쉴드(110)는 외부의 공격자(Attacker)로부터 소위 '역설계(reverse engineering)'에 의하여 집적회로를 보호하기 위한 메탈 라인이다. 시드(120)는 랜덤한 데이터를 발생한다. 시드(120)는 액티브 쉴드(110)와 비교부(130)에 동일한 랜덤 데이터 신호(R_sig)를 전송한다. 비교부(130)는 시드(120)로부터 전송된 랜덤 데이터(R_sig)와 액티브 쉴드(110)로부터 전송된 데이터를 비교한다. 시드(120)로부터 전송된 랜덤 데이터(R_sig)와 액티브 쉴드(110)로부터 전송된 데이터가 동일하면, 비교부(130)은 토글(toggle)되는 제1 비교 신호(D_sig1)와 제1 비교 신호를 인버팅한 제2 비교 신호(D_sig2)를 출력한다. 그렇지 않은 경우, 비교부(130)은 토글(toggle)되는 제1 비교 신호(D_sig1)와 제1 비교 신호를 동일한 제2 비교 신호(D_sig2)를 출력한다.
또한, 본 발명의 비교부(130)는 두 개 이상의 비교 신호들을 출력하도록 설계된다. 본 발명은 두 개 이상의 비교 신호들을 포함하여 공격자에 의한 FIB 방법, Probe 방법, 및 Forcing 방법 등에 의한 공격을 어렵게 한다.
계속해서, 도 1을 참조하면, 판단부(140)는 비교부(130)로부터 입력된 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)를 판단한다. 만약 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)가 서로 상보적이면, 액티브 쉴드(110)는 안전한 상태이므로, 아무런 동작을 수행하지 않는다. 그렇지 않은 경우, 액티브 쉴 드(110)는 공격자로부터 공격받은 상태이므로, 판단부(140)는 집적회로(100)를 초기화하는 리셋 신호(Reset)을 발생하거나 집적회로(100)의 기능을 차단하는 인터럽트 신호(Interrupt)를 발생한다.
비교부(130)의 내부에 대해서는 도 2와 도 3에서 상세히 설명한다.
도 2는 도 1에 도시된 비교부의 내부 블록을 도시한 블록도이고, 도 3은 도 1에 도시된 본 발명의 타이밍이다. 도 2를 참조하면, 비교부(130)은 액티브 쉴드 데이터 레지스터(Active Shield Data Register ; 131), 시드 데이터 레지스터(Seed Data Register ; 132), 데이터 비교부(Seed Data Comparator ; 133), 누적부(Accumulator ; 134), 오실레이터(Osillator ; 135), 인버터(Invertor ; 136), 및 먹스(MUX:Multiplexor ; 137)를 포함한다.
액티브 쉴드 데이터 레지스터(131)는 액티브 쉴드(110)로부터 전송된 데이터를 저장한다. 시드 데이터 레지스터(132)는 시드(120)로부터 입력된 랜덤 데이터(R_sig)를 저장한다.
데이터 비교부(133)는 액티브 쉴드 데이터 레지스터(131)에 저장된 데이터와 시드 데이터 레지스터(132)에 저장된 데이터를 비교한다.
액티브 쉴드 데이터 레지스터(131)에 저장된 데이터와 시드 데이터 레지스터(132)에 저장된 데이터가 동일하면, 데이터 비교부(133)는 "0"를 누적부(134)에 출력한다. 그렇지 않은 경우, 데이터 비교부(133)는 "1"를 누적부(134)에 출력한다. 누적부(134)는 데이터 비교부(133)로부터 전송된 비교 결과를 저장한다. 예를 들면, 누적부(134)는 "0"인 상태를 저장하고 있다가 비교부(133)로부터 비교 결과 "1"이 입력되면, "1"의 상태를 저장하고, 그 후에 비교부(133)로부터 비교 결과 "0"이 입력되어도, "1"의 상태를 유지한다.
오실레이터(135)는 토글(Toggle)되는 신호를 발생한다. 인버터(136)는 오실레이터(135)로부터 토글되는 신호를 입력받아 인버팅한다. 먹스(137)는 누적부(134)의 제어에 응답하여 오실레이터(135)의 출력 신호 또는 인버터(136)의 출력 신호 중 하나를 출력한다.
도 1 내지 도 3을 참조하면, t1 시간부터 t12 시간까지 비교부(130)의 제1 비교 신호(D_sig1)는 시간의 변화에 따라 토글된다. 제2 비교 신호(D_sig2)는 제1 비교 신호를 인버팅하여 출력된다. 이것은 공격자로부터 공격이 감지되지 않았음을 의미한다. t13 시간에 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)는 동일한 상태값을 갖는다. 이것은 공격자로부터 공격이 감지되었음을 의미한다. 따라서, t14 시간에 판단부(140)는 리셋 신호(Reset) 또는 인터럽트 신호(Interrupt)를 활성화한다.
도 4는 도 1에 도시된 비교부의 또 다른 실시예를 도시한 블록도이고, 도 5는 도 4에 도시된 본 발명의 타이밍도이다.
도 4는 도 2에 도시된 비교부(130)와 오실레이터(135)를 제외하고 모두 동일하다. 즉, 도 4의 비교부(230)는 도 2의 오실레이터(135) 대신 랜던 신호 발생기(Random Signal Generator ; 235)를 포함한다. 따라서, 중복되는 설명은 생략한다.
도 4를 참조하면, 비교부(230)은 액티브 쉴드 데이터 레지스터(Active Shield Data Register ; 231), 시드 데이터 레지스터(Seed Data Register ; 232), 데이터 비교부(Seed Data Comparator ; 233), 누적부(Accumulator ; 134), 랜덤 신호 발생기(Random Signal Generator ; 235), 인버터(Invertor ; 236), 및 먹스(MUX:Multiplexor ; 237)를 포함한다.
랜덤 신호 발생기(235)는 랜덤한 신호를 발생한다. 인버터(236)는 랜덤 신호 발생기(235)로부터 발생된 랜덤한 신호를 입력받아 인버팅한다. 먹스(237)는 누적부(234)의 제어에 응답하여 랜덤 신호 발생기(235)의 출력 신호 또는 인버터(236)의 출력 신호 중 하나를 출력한다.
도 1 , 도 4, 및 도 5를 참조하면, t1 시간부터 t12 시간까지 비교부(230)의 제1 비교 신호(D_sig1)는 시간의 변화에 따라 랜덤하게 변화한다. 제2 비교 신호(D_sig2)는 제1 비교 신호를 인버팅하여 출력된다. 이것은 공격자로부터 공격이 감지되지 않았음을 의미한다. t13 시간에 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)는 동일한 상태값을 갖는다. 이것은 공격자로부터 공격이 감지되었음을 의미한다. 따라서, t14 시간에 판단부(140)는 리셋 신호(Reset) 또는 인터럽트 신호(Interrupt)를 활성화한다.
따라서, 본 발명은 복수의 비교 신호에 계속적으로 변화하는 신호를 입력하여 공격자로부터 해킹(Hacking)을 방지하는 효과가 있다.
도 6은 제2 실시예에서 본 발명에 따른 집적회로의 블록도이고, 도 7은 도 6에 도시된 비교부의 내부 블록을 도시한 블록도이다. 도 7은 도 2에 도시된 오실레이터(135)를 제외하고 모두 동일하다. 즉, 도 7의 비교부(630)는 도 2의 오실레이터(135)에 주파수 설정부(660)로부터 전송된 랜덤 주파수 신호(RF_sig)를 더 포함한다. 따라서, 중복되는 설명은 생략한다. 본 발명에 따른 집적회로(600)는 공격자로부터의 해킹을 하드웨어적 검출방법과 소프트웨어적 검출방법에 의하여 감지한다.
도 6을 참조하면, 본 발명에 따른 집적회로(600)는 액티브 쉴드(Active Shield ; 610), 시드(SEED ; 620), 비교부(Compare Logic ; 630), 판단부(Detection & Decision Logic ; 640), 컨트롤러(Controller ; 650), 및 주파수 설정부(SET_FREQ ; 660)를 포함한다.
액티브 쉴드(610)는 외부의 공격자(Attacker)로부터 소위 '역설계(reverse engineering)'에 의하여 집적회로를 보호하기 위한 메탈 라인이다. 시드(620)는랜덤한 데이터를 발생한다. 시드(620)는 액티브 쉴드(610)와 비교부(630)에 동일한 랜덤 데이터 신호(R_sig)를 전송한다. 비교부(630)는 시드(620)로부터 전송된 랜덤 데이터(R_sig)와 액티브 쉴드(610)로부터 전송된 데이터를 비교한다. 시드(620)로부터 전송된 랜덤 데이터(R_sig)와 액티브 쉴드(610)로부터 전송된 데이터가 동일하면, 비교부(630)은 주파수 설정부(660)의 랜덤 주파수 신호(RF_sig)에 의하여 랜덤한 주기를 갖는 제1 비교 신호(D_sig1)를 출력하고, 제1 비교 신호를 인버팅한 제2 비교 신호(D_sig2)를 출력한다. 그렇지 않은 경우, 비교부(630)은 제1 비교 신호(D_sig1)와 제1 비교 신호와 동일한 제2 비교 신호(D_sig2)를 출력한다. 또한, 본 발명의 비교부(620)는 두 개 이상의 비교 신호들을 출력하도록 설계된다. 본 발명은 두 개 이상의 비교 신호들을 포함하여 공격자에 의한 FIB 방법, Probe 방법, 및 Forcing 방법 등에 의한 공격을 어렵게 한다.
계속해서, 도 6을 참조하면, 본 발명의 판단부(640)는 하드웨어적 검출방법을 수행한다. 판단부(640)는 비교부(630)로부터 입력된 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)를 판단한다. 예를 들면, 제1 비교 신호(D_sig1)는 클록(Clock)과 같이 토글되는 신호이거나, 랜덤한 상태값을 가지는 신호이다. 제2 비교 신호(D_sig2)는 액티브 쉴드(610)이 안전한 경우 제1 비교 신호(D_sig1)와 상보적 상태(즉, 인버팅한 상태)를 가진다. 만약 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)가 서로 상보적이면, 액티브 쉴드(610)는 안전한 상태이므로, 판단부(640)는 아무런 동작을 수행하지 않는다. 그렇지 않은 경우, 액티브 쉴드(610)는 공격자로부터 공격받은 상태이므로, 판단부(640)는 집적회로(100)를 초기화하는 리셋 신호(Reset)을 발생하거나 집적회로(600)의 기능을 차단하는 인터럽트 신호(Interrupt)를 발생한다.
계속해서, 도 6을 참조하면, 본 발명의 컨트롤러는 소프트웨어적 검출방법을 수행한다. 주파수 설정부(660)은 컨트롤러(650)의 주파수 제어 신호(F_sig)에 응답하여 랜덤 주파수 신호(RF_sig)를 비교부(630)에 출력한다. 예를 들면, 주파수 설정부(660)는 컨트롤러(650)의 주파수 제어 신호(F_sig)에 응답하여 25MHz, 50MHz, 75MHz 등을 설정한다. 즉, 주파수 설정부(660)는 컨트롤러(650)의 주파수 제어 신호(F_sig)에 응답하여 랜덤 주파수 신호(RF_sig)를 비교부(630)에 전송하도록 설정된다. 컨트롤러(650)는 주파수 설정부(660)가 랜덤한 주파수를 발생하도록 주파수 제어 신호(F_sig)를 전송하고, 판단부(640)로부터 제1 비교 신호(D_sig1)와 제2 비 교 신호(D_sig2)를 입력받는다. 컨트롤러(650)는 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)의 주기를 주파수 제어 신호(F_sig)와 비교하여 동일하지 않은 경우, 검출 신호(Detect)를 활성화하여 판단부(640)에 전송한다. 만약 컨트롤러(650)의 검출 신호(Detect)를 활성화되면, 판단부(640)는 집적회로(100)를 초기화하는 리셋 신호(Reset)을 발생하거나 집적회로(600)의 기능을 차단하는 인터럽트 신호(Interrupt)를 발생한다. 그렇지 않은 경우, 액티브 쉴드(610)는 안전한 상태이므로, 판단부(640)는 아무런 동작을 수행하지 않는다.
도 8은 도 6에 도시된 집적회로의 타이밍을 도시한다. 도 6 내지 도 8을 참조하면, 제1 비교 신호(D_sig1)는 클록과 같이 토글되는 신호를 가정한다. 제2 비교 신호(D_sig2)는 액티브 쉴드(610)가 안전한 경우 제1 비교 신호(D_sig2)와 상보적인 상태를 유지한다. t1 시간부터 t12 시간까지 비교부(230)의 제1 비교 신호(D_sig1)는 주파수 설정부(660)의 랜덤 주파수 신호(RF_sig)에 응답하여 시간의 변화에 따라 주기가 랜덤하게 변화한다. 제2 비교 신호(D_sig2)는 제1 비교 신호를 인버팅하여 출력된다. 이것은 공격자로부터 공격이 감지되지 않았음을 의미한다. t13 시간에 제1 비교 신호(D_sig1)와 제2 비교 신호(D_sig2)는 동일한 상태값인 "1"을 갖는다. 이것은 공격자에 의하여 액티브 쉴드(610)가 해킹되었음을 의미한다. 따라서, t14 시간에 판단부(140)는 리셋 신호(Reset) 또는 인터럽트 신호(Interrupt)를 활성화한다.
따라서, 본 발명은 복수의 비교 신호에 계속적으로 변화하는 신호를 입력하여 공격자로부터 해킹을 방지하는 효과가 있다. 또한, 본 발명은 복수의 비교 신호 에 계속적으로 변화시키면서 주기를 변동하여 공격자로부터 해킹을 방지하는 효과가 있다.
이상에서와 같이 도면과 명세서에서 최적 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미한정이나 특허청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
이상과 같은 본 발명은 복수의 비교 신호에 계속적으로 변화하는 신호를 입력하여 공격자로부터 해킹(Hacking)을 방지하는 효과가 있다.
또한, 본 발명은 복수의 비교 신호에 계속적으로 변화시키면서 주기를 변동하여 공격자로부터 해킹을 방지하는 효과가 있다.

Claims (12)

  1. 테스트 신호를 입력받고, 복수의 신호 경로들을 통해 복수의 쉴드 신호들을 출력하는 액티브 쉴드;
    상기 테스트 신호와 상기 복수의 쉴드 신호들 각각을 비교하고, 비교 결과가 동일하면, 제 1 비교 신호와 상기 제 1 비교 신호를 인버팅한 제 2 비교 신호를 출력하고, 상기 비교 결과가 상이하면, 상기 제 1 비교 신호와 상기 제 1 비교 신호와 동일한 제 2 비교 신호를 출력하는 비교부; 그리고
    상기 제 1 비교 신호와 상기 제 2 비교 신호의 패턴이 동일한 시점에 상기 액티브 쉴드의 공격 여부를 판단하는 판단 신호를 출력하고, 상기 판단 신호가 활성화되면 직접 회로의 초기화 및 기능 차단 중 하나를 수행하는 판단부를 포함하는 것을 특징으로 하는 집적회로.
  2. 제 1 항에 있어서,
    상기 비교부는
    상기 복수의 쉴드 신호들을 저장하는 액티브 쉴드 데이터 레지스터;
    상기 테스트 신호를 저장하는 시드 데이터 레지스터;
    상기 테스트 신호와 상기 복수의 쉴드 신호들 각각을 비교하고, 비교 결과를 출력하는 데이터 비교부;
    상기 제 1 비교 신호를 발생시키는 제 1 비교 신호 발생기;
    상기 제 1 비교 신호를 인버팅하는 인버터; 그리고
    상기 비교 결과에 근거하여 상기 인버팅된 제 1 비교 신호와 상기 제 1 비교 신호 중 하나를 상기 제 2 비교 신호로 출력하는 먹스를 포함하고,
    상기 제 1 비교 신호 발생기는 토글 신호를 발생시키는 오실레이터와 랜덤한 신호를 발생시키는 랜덤 넘버 발생기 중 하나임을 특징으로 하는 집적 회로.
  3. 삭제
  4. 제어부와;
    액티브 쉴드의 보안 상태를 나타내는 복수의 비교 신호들;
    상기 복수의 비교 신호들을 입력받는 판단부; 그리고
    상기 제어부의 제어에 응답하여 상기 복수의 비교 신호들의 주기를 랜덤하게 변경하는 주기제어부를 포함하되,
    상기 판단부는 상기 복수의 비교 신호들을 입력받아 상기 액티브 쉴드에 공격이 있는가를 감지하고, 만약 상기 액티브 쉴드에 공격을 감지한 경우, 리셋 신호 또는 인터럽트 신호를 출력하는 것을 특징으로 하는 집적회로.
  5. 제 4 항에 있어서,
    상기 제어부는 상기 판단부로부터 상기 복수의 비교 신호를 입력받아 상기 복수의 비교 신호의 주기를 판단하여 외부로부터 공격이 있는가를 감지하고, 만약 외부로부터 공격을 감지한 경우, 감지 신호를 상기 판단부로 출력하는 것을 특징으로 하는 집적회로.
  6. 제 4 항에 있어서,
    상기 복수의 비교 신호들을 출력하는 비교부를 더 포함하는 것을 특징으로 하는 집적회로.
  7. 제 6 항에 있어서,
    상기 비교부는,
    랜덤 신호를 발생하는 시드와;
    상기 랜덤 신호와 상기 랜덤 신호를 입력받는 상기 액티브 쉴드의 출력과 비교하고, 상기 비교된 결과를 누적하는 누적부와; 그리고
    상기 누적부의 결과에 응답하여 상기 복수의 비교 신호를 출력하는 출력부를 포함하는 것을 특징으로 하는 집적회로.
  8. 제 6 항에 있어서,
    상기 복수의 비교 신호들은,
    "0"와 "1"의 상태를 반복하는 제1 비교 신호와; 그리고
    상기 제1 비교신호와 상보적인 상태인 제2 비교 신호를 포함하는 것을 특징으로 하는 집적회로.
  9. 제 6 항에 있어서,
    상기 복수의 비교 신호들은,
    "0"와 "1"의 상태를 랜덤하게 가지는 제1 비교 신호와; 그리고
    상기 제1 비교신호와 상보적인 상태인 제2 비교 신호를 포함하는 것을 특징으로 하는 집적회로.
  10. 제 6 항에 있어서,
    상기 비교부는,
    상기 주기제어부로부터 랜덤한 주기 신호를 입력받아 랜덤한 주기를 갖는 복 수의 비교 신호들을 출력하는 것을 특징으로 하는 집적회로.
  11. 제 4 항에 있어서,
    상기 리셋 신호는 상기 집적회로를 초기화하는 신호이고, 상기 인터럽트 신호는 상기 집적회로의 정상 동작을 정지시키고, 상기 집적 회로에 외부의 공격을 알리는 신호인 것을 특징으로 하는 집적회로.
  12. 삭제
KR1020070029936A 2007-03-27 2007-03-27 리버스 엔지니어링을 보호하는 집적회로 KR101299602B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020070029936A KR101299602B1 (ko) 2007-03-27 2007-03-27 리버스 엔지니어링을 보호하는 집적회로
US12/052,427 US8296845B2 (en) 2007-03-27 2008-03-20 Integrated circuits including reverse engineering detection using differences in signals
DE102008016914.5A DE102008016914B4 (de) 2007-03-27 2008-03-26 Integrierter Schaltkreis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070029936A KR101299602B1 (ko) 2007-03-27 2007-03-27 리버스 엔지니어링을 보호하는 집적회로

Publications (2)

Publication Number Publication Date
KR20080087542A KR20080087542A (ko) 2008-10-01
KR101299602B1 true KR101299602B1 (ko) 2013-08-26

Family

ID=39777732

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070029936A KR101299602B1 (ko) 2007-03-27 2007-03-27 리버스 엔지니어링을 보호하는 집적회로

Country Status (3)

Country Link
US (1) US8296845B2 (ko)
KR (1) KR101299602B1 (ko)
DE (1) DE102008016914B4 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8884757B2 (en) * 2011-07-11 2014-11-11 Verifone, Inc. Anti-tampering protection assembly
US8901954B2 (en) 2011-11-18 2014-12-02 Tubitak Active shield with electrically configurable interconnections
KR20140034332A (ko) * 2012-08-14 2014-03-20 삼성전자주식회사 보안 장치 및 이를 구비하는 집적 회로
GB201311834D0 (en) * 2013-07-02 2013-08-14 Qinetiq Ltd Electronic hardware assembly
EP3147830B1 (en) 2015-09-23 2020-11-18 Nxp B.V. Protecting an integrated circuit
KR101809076B1 (ko) 2016-07-05 2017-12-15 고려대학교 산학협력단 역설계 방지 집적회로칩
US10216452B2 (en) 2016-07-14 2019-02-26 Nxp Usa, Inc. Breach detection in integrated circuits
US10839109B2 (en) * 2018-11-14 2020-11-17 Massachusetts Institute Of Technology Integrated circuit (IC) portholes and related techniques
KR102245773B1 (ko) * 2019-06-11 2021-04-27 연세대학교 산학협력단 침투 공격에 대해 검출 및 보호가 가능한 온칩 보안 회로
KR20210089960A (ko) 2020-01-09 2021-07-19 삼성전자주식회사 침습성 공격을 검출하기 위한 장치 및 방법
DE102020000302A1 (de) * 2020-01-17 2021-07-22 Giesecke+Devrient Currency Technology Gmbh Siegelvorrichtung mit Prüflogik

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050033780A (ko) * 2003-10-07 2005-04-13 삼성전자주식회사 코어 칩의 보안성을 개선한 액티브 보호층 제거 탐지 장치및 그 방법

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1053518B1 (de) * 1998-11-05 2006-07-26 Infineon Technologies AG Schutzschaltung für eine integrierte schaltung
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
KR100378391B1 (ko) 2000-12-21 2003-03-31 박정호 배선 일체형 경보장치
JPWO2003015169A1 (ja) * 2001-08-07 2004-12-02 株式会社ルネサステクノロジ 半導体装置およびicカード
DE10223176B3 (de) * 2002-05-24 2004-01-22 Infineon Technologies Ag Integrierte Schaltung mit sicherheitskritischen Schaltungskomponenten
KR100528477B1 (ko) * 2003-07-22 2005-11-15 삼성전자주식회사 스마트카드의 해킹검지회로
JP4748929B2 (ja) * 2003-08-28 2011-08-17 パナソニック株式会社 保護回路および半導体装置
DE102004009144B4 (de) * 2004-02-25 2011-03-17 Infineon Technologies Ag Logikzelle und Verfahren zum Durchführen einer Dual-Rail-Logikoperation und Speichermedium
DE102005055158B4 (de) * 2005-11-18 2008-08-28 Infineon Technologies Ag Schaltungsanordnung mit einer Einrichtung zur Erkennung von Manipulationsversuchen und Verfahren zur Erkennung von Manipulationsversuchen bei einer Schaltungsanordnung
DE102005058238B4 (de) * 2005-12-06 2008-08-14 Infineon Technologies Ag Detektorschaltung zur Erfassung einer externen Manipulation einer elektrischen Schaltung sowie Verfahren zum Betreiben einer Schaltungsanordnung, bei dem externe Manipulation erfasst werden
EP2615641B1 (en) * 2006-01-24 2015-07-01 Nds Limited Chip attack protection
EP1984871A2 (en) * 2006-02-09 2008-10-29 Nxp B.V. Circuit arrangement, data processing device comprising such circuit arrangement as well as method for identifying an attack on such circuit arrangement

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050033780A (ko) * 2003-10-07 2005-04-13 삼성전자주식회사 코어 칩의 보안성을 개선한 액티브 보호층 제거 탐지 장치및 그 방법

Also Published As

Publication number Publication date
US20080244749A1 (en) 2008-10-02
DE102008016914A1 (de) 2008-10-30
DE102008016914B4 (de) 2024-02-22
KR20080087542A (ko) 2008-10-01
US8296845B2 (en) 2012-10-23

Similar Documents

Publication Publication Date Title
KR101299602B1 (ko) 리버스 엔지니어링을 보호하는 집적회로
US8412988B2 (en) Fault injection detector in an integrated circuit
EP1721231B1 (en) Method and apparatus for protecting an integrated circuit using an intrusion detection by Monte Carlo analysis
KR101809076B1 (ko) 역설계 방지 집적회로칩
CN103425942B (zh) 安全模块的篡改检测器
EP2583112B1 (en) Method and apparatus for providing scan chain security
US10361873B2 (en) Test point-enhanced hardware security
US20090024890A1 (en) Circuit arrangement, data processing device comprising such circuit arrangement as well as method for identifying an attack on such circuit arrangement
US10223532B2 (en) Protection of data stored in a volatile memory
CN103748826A (zh) 防止通过边带信道攻击进行的数据提取
US10489595B2 (en) Method and detection circuit for detecting security chip operating state
US11074370B2 (en) Information processing system, information processing device, and method for controlling information processing device
US20120246528A1 (en) Circuit for Securing Scan Chain Data
US8901954B2 (en) Active shield with electrically configurable interconnections
US7934265B2 (en) Secured coprocessor comprising means for preventing access to a unit of the coprocessor
US8781118B1 (en) Digital fingerprints for integrated circuits
US11043102B1 (en) Detection of frequency modulation of a secure time base
EP3140775B1 (en) Dynamic change of security configurations
US20140049359A1 (en) Security device and integrated circuit including the same
JP2008293144A (ja) 半導体集積回路及びicカード
Monjur et al. ADobf: Obfuscated Detection Method against Analog Trojans on I 2 C Master-Slave Interface
Chen et al. BISTLock: Efficient IP piracy protection using BIST
JP2022516950A (ja) 信号のパルス幅改ざんの検出
CN107038374B (zh) 用于运行电子装置的方法和电子装置
CN117560232B (zh) 一种检测装置和芯片

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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160801

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180731

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 7