KR101436982B1 - 반도체 집적 회로 및 그것의 검사 방법 - Google Patents

반도체 집적 회로 및 그것의 검사 방법 Download PDF

Info

Publication number
KR101436982B1
KR101436982B1 KR1020070103194A KR20070103194A KR101436982B1 KR 101436982 B1 KR101436982 B1 KR 101436982B1 KR 1020070103194 A KR1020070103194 A KR 1020070103194A KR 20070103194 A KR20070103194 A KR 20070103194A KR 101436982 B1 KR101436982 B1 KR 101436982B1
Authority
KR
South Korea
Prior art keywords
signal
detection signal
detector
integrated circuit
security
Prior art date
Application number
KR1020070103194A
Other languages
English (en)
Other versions
KR20090037714A (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 KR1020070103194A priority Critical patent/KR101436982B1/ko
Priority to US12/249,495 priority patent/US8332662B2/en
Publication of KR20090037714A publication Critical patent/KR20090037714A/ko
Application granted granted Critical
Publication of KR101436982B1 publication Critical patent/KR101436982B1/ko

Links

Images

Classifications

    • 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/0723Record 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 the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation

Abstract

반도체 집적 회로는, 동작 환경이 비정상 상태인 지를 검출하고, 검출 신호를 출력하는 검출기 그리고 상기 검출기의 정상 동작 여부를 확인하기 위한 검사 신호를 발생하고, 상기 검출 신호를 수신하는 보안 검사기를 포함하며, 상기 검출기는 상기 검사 신호에 응답해서 상기 검출 신호를 활성화한다.

Description

반도체 집적 회로 및 그것의 검사 방법{SEMICONDUCTOR INTEGRATED CIRCUIT AND METHOD FOR TESTING THEREOF}
본 발명은 반도체 집적 회로에 관한 것으로 좀 더 구체적으로는 권한이 없는 사용자에 의해 발생되는 정보 누출이나 파괴 및 변조로부터 안전하게 보호할 수 있는 보안 기능을 갖는 반도체 집적 회로에 관한 것이다.
1920년대에 신용카드가 처음 출현한 이래 현금카드, 신용카드, 신분증, 증권카드, 백화점 카드 등으로 카드의 이용이 확산되고 있으며, 근래에는 사용자의 편리성, 안정성, 다용도성 등으로 인해 소형 컴퓨터라 불리는 IC(integrated circuit) 카드에 대한 관심이 증가하고 있다.
IC 카드는, 신용카드 크기의 플라스틱 카드에 얇은 반도체 소자를 부착한 형태로서, 기존의 자기 띠를 붙여 사용하는 카드에 비해 안전성이 높고, 데이터가 지워질 염려가 없을 뿐만 아니라, 보안성이 높아 차세대 멀티미디어 정보매체로 급부상하고 있다. IC 카드는 신용카드 크기와 두께를 가지는 플라스틱에 0.5mm 두께의 반도체 칩이 COB(Chip On Board) 형태로 이루어져 있다.
IC 카드는 기존의 마그네틱 스트립 카드(magnetic stripe card)와 같은 모양 과 크기를 가지며, 접촉형 IC 카드와, 두 종류의 무선형 비접촉식 카드 CICC(Contactless IC Card) 및 RCCC(Remote Coupling Communication Card)가 있다. CICC는 미국 AT&T에서 개발한 것으로, 감지거리가 1/2 인치 범위이고, RCCC는 700cm 정도의 거리에서 카드를 인식할 수 있는 카드로서, ISO DIS 10536으로 표준화가 이루어지고 있다.
IC 카드의 종류를 다르게 구분하면, 마이크로프로세서(또는 CPU)가 내장된 IC 카드를 스마트 카드라 하며, 마이크로프로세서를 내장하지 않은 비접촉식 카드와 메모리 카드는 '비접촉식 IC카드, 메모리 카드'라는 별도의 명칭으로 불리어진다. 스마트 카드는 중앙 처리 장치, 응용프로그램을 저장하는 EEPROM, ROM, RAM으로 이루어져 있다. 스마트 카드가 갖고 있는 가장 기본적인 장점은 고신뢰성/보안성, 대용량 데이터의 저장, 전자지갑(E-purse) 기능과 더불어 다양한 어플리케이션을 탑재할 수 있다는 것이다. 이 스마트 카드는, 쌍방향 통신, 분산처리, 정보의 안전 보호 등 정보의 입출력이 가능해 금융, 유통, 공장 자동화, 사무 자동화, 의료, 교통, 산업, 사회보장, 이동 통신, 공중전화, 케이블 TV, 전력, 가스, 수도, 교육, 신용카드, 직불카드, 선불카드, 도시가스 관리, 정보 보안, 홈뱅킹 등으로 그 적용 분야 또한 비약적으로 발전하고 있다. 그리고, 상기와 같은 서비스들은 하나의 카드로 통합되어가고 있는 추세이다. 이러한 추세에 부응하여, 금융 결재 수단 등으로 사용되는 스마트 카드를 보다 편리하게 구비하여 사용할 수 있고, 상기 스마트 카드와 결부된 다양한 서비스를 사용자에게 보다 편리하게 제공할 수 있는 장치 및 그것을 위한 서비스 방법이 요구되고 있다.
앞서 설명된 바와 같이, 스마트 카드 내부에 저장된 데이터는 안전한 보관이 주 목적이며, 외부로 유출시에는 사용자에게나 시스템 운영자에게도 커다란 위험 인자가 된다. 특히, 스마트 카드 내부의 데이터를 알아내기 위해서 직접적인 칩 내부의 신호를 모니터링하는 경우, 치명적인 데이터의 손실로 이어지는 경우가 있다. 이러한 모니터링 방법들 중 하나는 일반적으로 칩의 표면을 덮고 있는 실리콘 산화막 (SiO2)을 제거하고 칩 표면에 노출된 메탈 라인을 오실로스코프(oscilloscope)를 이용하여 모니터링하는 방법이다. 여기서, 칩 표면의 보호막으로서 사용되는 실리콘 산화막을 제거하는 것을 "디-캡슐레이션(de-capsulation)"이라 한다. 칩 내부 신호의 모니터링을 방지하기 위해, 칩을 디-캡슐레이션하는 경우 칩의 디-캡슐레이션 사실을 알려주는 검출 장치가 필요하다. 이러한 검출 장치에는 수광 소자와 연결된 빛 노출 검출기(light exposure detector), 패시베이션 제거 검출기(passivation remove detector) 등이 있다.
다른 모니터링 방법으로는 메인 클럭 신호의 주파수를 낮추어서 데이터 전송 라인을 통해 송수신되는 데이터를 모니터링하는 것이다. 이러한 모니터링을 검출하기 위해 메인 클럭 신호의 주파수가 규정 범위를 벗어났는 지를 검출하기 위한 주파수 검출기가 사용된다.
스마트 카드는 권한이 없는 사용자에 의한 피해 방지뿐만 아니라 동작 환경에 의한 카드 손상을 방지하기 위한 장치들을 요구한다. 예컨대, 카드 판독기(card reader)로부터 공급되는 전압이 정격 범위를 벗어났을 때 발생하는 스마트 카드의 손상을 방지하기 위해 전압 검출기가 사용된다. 또, 주변 온도가 너무 높거나 너무 낮아서 정상적인 동작을 수행하지 못하는 것을 방지하기 위해 온도 검출기가 사용된다.
일반적으로 스마트 카드는, 앞서 설명한 검출기들 즉, 빛 노출 검출기, 패시베이션 제거 검출기, 주파수 검출기, 전압 검출기 그리고 온도 검출기 중 적어도 하나가 검출 신호를 출력할 때 내장된 마이크로프로세서를 비롯한 모든 회로들을 리셋(reset)해서, 외부 공격에 의한 정보 누출이나 파괴 및 변조나 비정상 상태의 동작 환경에 따른 손상을 방지한다.
스마트 카드 내에 이러한 검출기들이 장착되는 것이 널리 알려짐에 따라서 해커들은 검출기들로부터의 검출 신호가 내부 회로(로직 회로 또는 마이크로프로세서)로 전달되는 경로를 차단하고, 임의의 검출 신호를 내부 회로로 제공하는 방식으로 칩을 공격할 수 있다. 이 경우, 내부 회로는 검출기들로부터 검출 신호가 입력되지 않으므로, 비인가된 사용자에 의한 해킹 또는 손상을 알아채지 못하게 된다. 그러므로 검출기들로부터 내부 회로로 제공되는 검출 신호의 신뢰성을 보장할 수 없다.
따라서 본 발명의 목적은 검출기들로부터 내부 회로로 제공되는 검출 신호의 신뢰성을 보장할 수 있는 반도체 집적 회로를 제공하는데 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 특징에 의하면, 반도체 집적 회로는 검출기 및 보안 검사기를 포함한다. 상기 검출기는 상기 반도체 집적 회로의 동작 환경이 비정상 상태인 지를 검출하고, 검출 신호를 출력한다. 상기 보안 검사기는 상기 검출기의 정상 동작 여부를 확인하기 위한 검사 신호를 발생하고, 상기 검출 신호를 수신한다. 상기 검출기는 상기 검사 신호에 응답해서 상기 검출 신호를 활성화한다.
이 실시예에 있어서, 상기 보안 검사기는, 상기 검사 신호를 활성화한 후 상기 검출 신호가 활성화되지 않을 때 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행한다.
상기 보안 검사기는, 상기 검사 신호를 활성화한 후 소정 시간 내에 상기 검출 신호가 활성화되지 않을 때 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행한다.
이 실시예에 있어서, 상기 반도체 집적 회로는 상기 검출기 및 상기 보안 검사기로 응답 시간을 제공하는 시간 제어 유닛을 더 포함하되, 상기 검출기는 상기 검사 신호에 응답해서 상기 응답 시간이 경과한 후 상기 검출 신호를 활성화한다.
이 실시예에 있어서, 상기 보안 검사기는, 상기 검사 신호를 활성화한 후 상기 응답 시간이 경과했을 때 상기 검출 신호가 활성화되지 않으면 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행한다.
이 실시예에 있어서, 상기 시간 제어 유닛은 클럭 신호에 동기해서 동작하는 난수 발생기로 구성된다.
이 실시예에 있어서, 상기 검출기 및 상기 보안 검사기는 상기 클럭 신호에 동기해서 동작한다.
이 실시예에 있어서, 상기 보안 검사기는 소정 시간마다 상기 검사 신호를 활성화한다.
이 실시예에 있어서, 상기 보안 검사기는 외부로부터 입력되는 검사 요청에 응답해서 상기 검사 신호를 활성화한다.
이 실시예에 있어서, 상기 보안 검사기는, 상기 검사 신호가 비활성 상태인 동안 상기 검출 신호가 활성화되면 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행한다.
이 실시예에 있어서, 상기 반도체 집적 회로는 난수를 발생하는 난수 발생기를 더 포함하되, 상기 보안 검사기는 상기 난수에 대응하는 복수의 데이터 비트들을 포함하는 상기 검사 신호를 출력하고, 상기 검출기는 미리 설정된 검사값과 상기 검사 신호가 일치할 때 상기 검출 신호를 활성화한다.
본 발명의 다른 특징에 따른 도체 집적 회로는: 상기 반도체 집적 회로의 동작 환경이 비정상 상태인 지를 검출하고, 검출 신호를 출력하는 복수의 검출기들 과, 난수를 발생하는 난수 발생기, 그리고 상기 난수에 대응하는 복수의 데이터 비트들을 발생하고, 상기 복수의 검출기들로부터의 상기 검출 신호를 수신하는 보안 검사기를 포함한다. 상기 검출기들 각각은 미리 설정된 검사 비트들과 상기 데이터 비트들이 일치할 때 상기 검출 신호를 활성화한다.
이 실시예에 있어서, 상기 검출기들 각각은 서로 다른 검사 비트들을 갖는다.
이 실시예에 있어서, 상기 보안 검사기는, 상기 데이터 비트들을 출력한 후 상기 데이터 비트에 대응하는 검출기로부터의 상기 검출 신호가 활성화되지 않을 때 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행한다.
이 실시예에 있어서, 상기 난수 발생기 및 상기 보안 검사기는 클럭 신호에 동기해서 동작한다.
이 실시예에 있어서, 상기 보안 검사기는 소정 시간마다 상기 난수에 대응하는 복수의 데이터 비트들을 발생한다.
본 발명의 다른 특징에 따른 반도체 집적 회로의 동작 환경이 비정상 상태인 지를 검출하여 검출 신호를 발생하는 검출기의 정상 동작 여부를 검사하는 방법은: 검사 신호를 상기 검출기로 제공하는 단계와, 상기 검사 신호에 응답해서 상기 검출 신호가 활성화되는 지를 확인하는 단계, 그리고 상기 검출 신호가 활성화되지 않을 때 상기 반도체 집적 회로를 리셋하는 단계를 포함한다.
이 실시예에 있어서, 상기 확인 단계는, 상기 검사 신호를 제공한 후 소정 시간 내에 상기 검출 신호가 활성화되는 지를 확인한다.
이 실시예에 있어서, 상기 검사 방법은 응답 시간을 발생하는 단계를 더 포함하되, 상기 확인 단계는 상기 검사 신호를 활성화한 후 상기 응답 시간 내에 상기 검출 신호가 활성화되는 지를 확인하는 것을 포함한다.
이 실시예에 있어서, 상기 검사 신호는 주기적으로 상기 검출기로 제공된다.
본 발명의 또다른 특징에 따른 반도체 집적 회로의 동작 환경이 비정상 상태인 지를 검출하여 검출 신호를 발생하는 복수의 검출기들의 정상 동작 여부를 검사하는 방법은: 복수의 검사 신호들을 상기 검출기들 각각으로 제공하는 단계와, 상기 복수의 검사 신호들에 응답해서 상기 검출기들 각각의 상기 검출 신호가 활성화되는 지를 확인하는 단계, 그리고 상기 복수의 검사 신호들에 대응하는 검출기로부터의 상기 검출 신호가 활성화되지 않을 때 상기 반도체 집적 회로를 리셋하는 단계를 포함한다.
이 실시예에 있어서, 상기 검출기들 각각은 서로 다른 기준값을 저장하며, 상기 검출기들 각각은 저장된 기준값과 상기 복수의 검사 신호들이 일치할 때 상기 검출 신호를 활성화한다.
이 실시예에 있어서, 상기 검출기들은 동일한 기준값을 저장하며, 상기 검출기들 각각은 저장된 기준값과 상기 복수의 검사 신호들이 일치할 때 상기 검출 신호를 활성화한다.
이 실시예에 있어서, 상기 검사 방법은 난수를 발생하는 단계, 그리고 상기 난수에 대응하는 상기 복수의 검사 신호들을 발생하는 단계를 더 포함한다.
이와 같은 본 발명에 의하면, 검출기들로부터 내부 회로로 제공되는 검출 신호의 신뢰성을 보장할 수 있다. 또한, 검출기들 각각의 정상 동작 여부를 검사할 수 있으므로 집적 회로가 외부 공격을 받거나 또는 비정상 상태의 동작 환경이 되더라도 이를 검출하지 못하는 것을 방지할 수 있다.
이하 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다.
도 1은 본 발명의 바람직한 실시예에 따른 반도체 집적 회로의 구성을 보여주는 블록도이다. 도 1에 도시된 반도체 집적 회로는 CPU를 포함하는 스마트 카드이다.
도 1을 참조하면, 스마트 카드(100)는 검출기(110), 보안 컨트롤러(120), CPU(central processing unit, 130), 메모리(140), 인터페이스(150) 그리고 클럭 발생기(160)를 포함한다. 보안 컨트롤러(120), CPU(130), 메모리(140) 및 인터페이스(150)는 버스(101)를 통해 연결된다. 메모리(140)는 ROM(read only memory), RAM(random access memory), EEPROM(electrically erasable and programmable read only memory) 그리고 플래시 메모리 중 적어도 하나를 포함한다. 인터페이스(150)는 스마트 카드(100)와 외부와의 신호 입/출력을 위한 구성을 갖는다. 클럭 발생기(160)는 스마트 카드(100)의 동작에 필요한 메인 클럭 신호(MCLK) 및 클럭 신호(CLK)를 생성한다. 메인 클럭 신호(MCLK)는 CPU(130)의 동작에 필요한 신호이며, 메인 클럭 신호(MCLK) 및 클럭 신호(CLK)의 주파수는 같을 수 있으며, 필요에 따라서 두 신호의 주파수는 서로 다를 수 있다.
검출기(100)는 스마트 카드(100)의 동작 환경이 비정상 상태인 지를 검출하고, 검출 신호(xDET)를 출력하는 검출기(110)를 포함한다. 보안 제어기(120)는 검출기로부터의 검출 신호(xDET)가 스마트 카드(100)의 동작 환경이 비정상 상태임을 나타낼 때 이를 알리는 신호를 출력한다. 예컨대, 보안 제어기(120)가 스마트 카드(100)의 동작 환경이 비정상 상태임을 알리는 신호를 출력하면 CPU(130)가 리셋되거나, 스마트 카드(100)의 현재 동작을 중지시키기 위한 인터럽트(interrupt)가 발생되거나 또는 비정상 상태를 나타내는 플래그(flag)가 셋(set)된다.
특히, 본 발명의 바람직한 실시예에 따른 스마트 카드(100)에서, 보안 제어기(120)는 검출기(110)의 정상 동작 여부를 확인하기 위한 검사 신호(CHK)를 검출기(110)로 출력한다. 검출기(110)는 검사 신호(CHK)에 응답해서 검출 신호(xDET)를 활성화한다. 보안 제어기(120)는 검사 신호(CHK)를 출력한 후 검출기(110)로부터의 검출 신호(xDET)가 활성화되면 검출기(110)가 정상 동작하는 것으로 간주하나, 만일 검출 신호(xDET)가 활성화되지 않거나 그리고/또는 원하는 시점에 활성화되지 않으면 검출기(110)가 비정상 상태임을 나타내는 신호를 출력한다.
이와 같은 본 발명에 의하면, 해커들에 의해서 검출기(110)가 손상되거나 또는 검출기(110)로부터 보안 제어기(120)로 전달되는 검출 신호(xDET)가 조작되었는 지의 여부를 확인할 수 있으므로 검출기(110)로부터 출력되는 검출 신호의 신뢰성을 보장할 수 있다. 따라서 스마트 카드(100)의 보안성이 더욱 향상된다.
도 2는 도 1에 도시된 검출기(110) 및 보안 제어기(120)의 바람직한 실시예 에 따른 구성을 보여주는 블록도이다.
도 2를 참조하면, 검출기(110)는 주파수 검출기(111), 전압 검출기(112), 온도 검출기(113)를 포함하며, 보안 제어기(120)는 보안 검사기(121)를 포함한다. 주파수 검출기(111)는 메인 클럭 신호(MCLK)의 주파수를 검출하고, 검출된 주파수가 규정 범위를 벗어났을 때 검출 신호(FDET)를 출력한다. 전압 검출기(112)는 외부(예컨대, 카드 판독기)로부터 공급되는 전압의 레벨을 검출하고, 검출된 전압이 정격 범위를 벗어났을 때 검출 신호(VDET)를 출력한다. 온도 검출기(113)는 스마트 카드(100) 주변의 온도를 검출하고, 검출된 온도가 미리 설정된 범위보다 높거나 낮을 때 검출 신호(TDET)를 출력한다. 이 실시예에서는 3 개의 검출기들(111-113) 만을 도시하고 설명하나 외부 침입자에 의한 공격 및 동작 환경의 비정상 상태를 검출하기 위한 다양한 검출기들 예를 들면, 빛 검출기, 패시베이션 제거 검출기 등이 스마트 카드(100)에 더 구비될 수 있다. 또한 스마트 카드(100)에 포함되는 검출기의 종류 및 수는 다양하게 변경될 수 있다.
보안 검사기(121)는 검출기들(111, 112, 113)의 동작 상태를 검사하기 위한 검사 신호(CHK)를 검출기들(111, 112, 113)로 출력한다. 검출기들(111, 112, 113) 각각은 검사 신호(CHK)에 응답해서 검출 신호(FDET, VDET, TDET)를 활성화한다. 보안 검사기(121)는 검사 신호(CHK)를 출력 한 후 검출 신호들(FDET, VDET, TDET)이 활성화되면 검출기들(111, 112, 113)이 정상 동작 상태인 것으로 간주한다. 반면, 보안 검사기(121)는, 검출 신호들(FDET, VDET, TDET) 중 활성화되지 않는 신호가 있다면 활성화되지 않은 검출 신호에 대응하는 검출기가 비정상 상태임을 확인 하고 CPU(130)를 리셋하기 위한 리셋 플래그 신호(RES_F)를 출력한다.
다른 실시예에서, 검출 신호들(FDET, VDET, TDET) 중 활성화되지 않는 신호가 있을 때 보안 검사기(121)로부터 출력되는 신호(RES_F)는 인터럽트 신호 또는 비정상 상태를 나타내는 플래그 신호이다. 또다른 실시예에서, 보안 검사기(121)로부터 출력되는 신호(RES_F)는 검출기들(111, 112, 113)의 정상 동작 여부를 나타내는 다른 신호일 수 있다.
도 2에 도시된 보안 제어기(120)는 난수 발생기(122)를 더 포함한다. 난수 발생기(122)는 클럭 신호(CLK)에 동기해서 난수(RNUM)를 발생한다. 난수 발생기(122)에서 발생된 난수(RNUM)는 검출기들(111, 112, 113)과 보안 검사기(121)로 제공된다. 검출기들(111, 112, 113)과 보안 검사기(121)도 클럭 신호(CLK)에 동기해서 동작한다.
도 3 및 도 4는 도 2에 도시된 검출기 및 보안 제어기에서 사용되는 신호들의 타이밍도들이다.
도 3을 참조하면, 보안 검사기(121)가 난수 발생기(122)에서 발생된 난수(RNUM)에 대응하는 시점에서 검사 신호(CHK)를 출력하면, 검출기들(111, 112, 113)은 검사 신호(CHK) 및 난수(RNUM)에 응답해서 로우 레벨의 펄스 신호인 검출 신호(FDET, VDET, TDET)를 출력한다. 이 때, 로우 레벨의 검출 신호(FDET, VDET, TDET)는 유사(pseudo) 검출 신호이다.
보안 검사기(121)는 난수 발생기(122)에서 발생된 난수(RNUM='A')에 대응하는 응답 클럭 사이클(RT1)이 경과 한 후 검출기들(111, 112, 113)로부터 로우 레벨 의 펄스 신호인 검출 신호(FDET, VDET, TDET)가 입력되는 지를 확인한다. 난수 발생기(122)에서 발생되는 난수(NUM)는 최대 응답 클럭 사이클(GT1)에 대응하는 범위에서 발생된다. 보안 검사기(121)가 검사 신호(CHK)를 발생했을 때 난수 발생기(122)에서 발생된 난수(RNUM='A')가 2 클럭 사이클에 대응하면 검출기들(111, 112, 113)은 2 클럭 사이클 이후에 로우 레벨의 검출 신호들(FDET, VDET, TDET)을 출력한다. 보안 검출기(121)는 2 클럭 사이클 이후에 로우 레벨의 검출 신호들(FDET, VDET, TDET)이 수신되지 않으면 검출기들(111, 112, 113)이 비정상 상태인 것으로 간주해서 리셋 플래그 신호(RES_F)를 활성화한다.
난수 발생기(122)에서 발생되는 난수(RNUM)는 매 클럭 사이클마다 다른 값을 가지므로, 검사 신호(CHK)와 검출 신호들(FDET, VDET, TDET)의 연관성이 해커에게 노출될 가능성이 매우 낮다. 그러므로 검출기(110)가 오동작하거나 검출기(110)로부터 보안 제어기(120)로 전달되는 검출 신호(xDET)가 조작되었는 지의 여부를 더욱 정확하게 확인할 수 있다.
다른 실시예에서, 보안 검사기(121)는 난수 발생기(122)에서 발생된 난수(RNUM='A')에 대응하는 응답 클럭 사이클(RT1)이 경과 한 후 검출기들(111, 112, 113)로부터 로우 레벨의 펄스 신호인 검출 신호(FDET, VDET, TDET)가 입력된 후 소정 시간(예를 들면, 1 클럭 사이클)이후 다시 하이 레벨로 복귀하는 지의 여부를 확인한다. 만일 검출기들(111, 112, 113)이 검사 신호(CHK)에 응답해서 검출 신호(FDET, VDET, TDET)를 로우 레벨로 천이시킨 후 다시 하이 레벨로 복귀하시키지 않으면 보안 검사기(121)는 검출기들(111, 112, 113)이 비정상 상태인 것으로 판단 한다. 이러한 실시예에 의해서 더욱 정확하게 검출기들(111, 112, 113)의 정상 동작 여부가 검사될 수 있다.
도 5는 도 2에 도시된 보안 검사기(121)가 검출 신호(CHK)를 출력하는 시점을 예시적으로 보여주는 타이밍도이다.
도 5를 참조하면, 보안 검사기(121)는 CPU(130)가 리셋될 때 즉, 리셋 신호(RES)가 활성화될 때 검사 신호(CHK)를 출력한다. 또한, 보안 검사기(121)는 소정 주기(이 실시예에서는 200 클럭 사이클)마다 검사 신호(CHK)를 출력하도록 설계될 수 있다. 다른 실시예에서, 보안 검사기(121)가 검사 신호(CHK)를 출력하는 주기도 난수 발생기(122)에서 발생된 난수(RNUM)에 따라서 변경되도록 설계될 수 있다. 다른 실시예에서 보안 검사기(121)가 검사 신호(CHK)를 출력하는 주기는 소정의 패턴을 갖는 가변적 주기로 설계될 수 있다.
한편, 보안 검사기(121)는 사용자 제어에 응답해서 검사 신호(CHK)를 출력하도록 설계될 수 있다. 예컨대, 중요한 데이터의 송수신이 이루어지기 전에 또는 중요한 데이터에 대한 연산 처리 이전에 보안 검출기들(111, 112, 113)의 정상 동작 여부를 검사한다면 중요한 데이터의 유출을 방지하는데 도움이 될 수 있다. CPU(130)에서 처리될 프로그램에 의해서 CPU(130)는 사용자 제어 신호(USER_C)를 활성화하고, 보안 검사기(121)는 사용자 제어 신호(USER_C)에 응답해서 검사 신호(CHK)를 출력한다.
보안 검사기(121)는 검출기들(111, 112, 113)의 정상 동작 여부를 검사하는 구간이 아닐 때 검출기들(111, 112, 113)로부터의 검출 신호들(FDET, VDET, TDET) 중 활성화되는 신호가 있으면 스마트 카드(100)의 동작 환경이 비정상 상태이거나 또는 허가되지 않은 사용자에 의한 접근이 이루어진 것으로 간주하고, CPU(31)를 리셋하기 위한 리셋 플래그 신호(RES_F)를 출력한다.
도 6은 본 발명의 다른 실시예에 따른 검출기 및 보안 제어기의 구성을 보여주는 도면이다.
도 6에 도시된 검출기들(211, 212, 213)은 난수 발생기(222)에서 발생된 난수(222) 및 클럭 신호(CLK)를 입력받지 않고, 보안 검사기(221)로부터의 복수의 검사 신호들(CHK_B[2:0])에 응답해서 동작한다. 검출기들(211, 212, 213) 각각은 서로 다른 기준값을 저장하고, 저장된 기준값과 보안 검사기(221)로부터의 복수의 검사 신호들(CHK_B[2:0])이 일치할 때 검출 신호를 출력한다. 보안 검출기(221)는 난수 발생기(222)에서 발생된 난수(222)에 대응하는 복수의 검사 신호들(CHK_B[2:0])을 발생한다.
도 7은 도 6에 도시된 보안 검사기로부터 출력되는 검사 신호들에 응답해서 검출 신호를 활성화하는 검출기를 예시적으로 보여준다.
도 6 및 도 7을 참조하면, 주파수 검출기(211)는 검사 신호(CHK_B[2:0])가 '011'일 때 검출 신호(FDET)를 활성화한다. 전압 검출기(212)는 검사 신호(CHK_B[2:0])가 '101'일 때 검출 신호(VDET)를 활성화한다. 온도 검출기(213)는 검사 신호(CHK_B[2:0])가 '010'일 때 검출 신호(TDET)를 활성화한다. 이와 같이, 검출기들(211, 212, 213)이 클럭 신호(CLK)에 동기하지 않고 동작하도록 설계함으로써 검출기들(211, 212, 213)의 회로 구성을 간단하게 할 수 있다.
검출기들(211, 212, 213)이 모두 다른 검사 신호(CHK_B[2:0])에 응답해서 검출 신호들(FDET, VDET, TDET)을 발생하는 것은 인가되지 않은 사용자가 검출 신호들(FDET, VDET, TDET)을 조작하여 보안 검사기(221)로 제공하는 것을 어렵게 한다. 그러므로 검출기들로부터 내부 회로로 제공되는 검출 신호의 신뢰성이 향상된다.
다른 실시예에서, 보안 제어기(220)는 난수 발생기(222)를 포함하지 않고, 검사 신호(CHK_B[2:0])를 '000'부터 '111'까지 순차적으로 변화하도록 설계되거나 또는 소정의 패턴대로 검사 신호(CHK_B[2:0])를 출력하도록 설계될 수 있다.
또다른 실시예에서 검출기들(211, 212, 213)이 모두 동일한 검사 신호(CHK_B[2:0])에 응답해서 검출 신호(FDET)를 활성화하도록 설계될 수도 있다.
도 6에 도시된 보안 검사기(221)는 리셋 신호(RES)가 활성화될 때, 소정 주기마다 그리고 사용자 제어 신호 신호(USER_C)에 응답해서 검사 신호(CHK)를 출력하도록 설계될 수 있다. 검사 신호(CHK)가 출력되는 주기 또한 다양하게 변경할 수 있으며, 난수에 따라서 임의의 주기가 되도록 설계될 수 있다.
예시적인 바람직한 실시예를 이용하여 본 발명의 설명하였지만, 본 발명의 범위는 개시된 실시예들에 한정되지 않는다는 것이 잘 이해될 것이다. 오히려, 본 발명의 범위에는 다양한 변형 예들 및 그 유사한 구성들을 모두 포함될 수 있도록 하려는 것이다. 따라서, 청구범위는 그러한 변형 예들 및 그 유사한 구성들 모두를 포함하는 것으로 가능한 폭넓게 해석되어야 한다.
도 1은 본 발명의 바람직한 실시예에 따른 반도체 집적 회로의 구성을 보여주는 블록도이다.
도 2는 도 1에 도시된 검출기 및 보안 제어기의 바람직한 실시예에 따른 구성을 보여주는 블록도이다.
도 3 및 도 4는 도 2에 도시된 검출기 및 보안 제어기에서 사용되는 신호들의 타이밍도들이다.
도 5는 도 2에 도시된 보안 검사기가 검출 신호를 출력하는 시점을 예시적으로 보여주는 타이밍도이다.
도 6은 본 발명의 다른 실시예에 따른 검출기 및 보안 제어기의 구성을 보여주는 도면이다.
도 7은 도 6에 도시된 보안 검사기로부터 출력되는 검사 신호들에 응답해서 검출 신호를 활성화하는 검출기를 예시적으로 보여준다.

Claims (24)

  1. 반도체 집적 회로에 있어서:
    상기 반도체 집적 회로의 동작 환경에 기초하여 검출 신호를 출력하되, 상기 동작 환경이 비정상 상태이면 상기 검출 신호를 제 1 상태로 출력하는 검출기; 그리고
    상기 검출기의 정상 동작 여부를 확인하기 위한 검사 신호를 상기 검출기에 제공하고, 상기 검출 신호를 수신하는 보안 검사기를 포함하되;
    상기 검출기는 상기 검사 신호에 응답하여 상기 검출 신호를 제 2 상태로 출력하는 것을 특징으로 하는 반도체 집적 회로.
  2. 제 1 항에 있어서,
    상기 보안 검사기는,
    상기 검사 신호를 활성화한 후 상기 검출 신호가 제 2 상태로 출력되지 않을 때 상기 반도체 집적 회로의 비정상 상태를 나타내는 신호를 출력하는 것을 특징으로 하는 반도체 집적 회로.
  3. 제 2 항에 있어서,
    상기 보안 검사기는,
    상기 검사 신호를 활성화한 후 소정 시간 내에 상기 검출 신호가 제 2 상태로 출력되지 않을 때 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행하는 것을 특징으로 하는 반도체 집적 회로.
  4. 제 2 항에 있어서,
    상기 검출기 및 상기 보안 검사기로 응답 시간을 제공하는 시간 제어 유닛을 더 포함하되;
    상기 검출기는 상기 검사 신호에 응답해서 상기 응답 시간이 경과한 후 상기 검출 신호를 제 2 상태로 출력하는 것을 특징으로 하는 반도체 집적 회로.
  5. 제 4 항에 있어서,
    상기 보안 검사기는,
    상기 검사 신호를 활성화한 후 상기 응답 시간이 경과했을 때 상기 검출 신호가 제 2 상태로 출력되지 않으면 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행하는 것을 특징으로 하는 반도체 집적 회로.
  6. 제 4 항에 있어서,
    상기 시간 제어 유닛은 클럭 신호에 동기해서 동작하는 난수 발생기로 구성되며,
    상기 검출기 및 상기 보안 검사기는 상기 클럭 신호에 동기해서 동작하는 것을 특징으로 하는 반도체 집적 회로.
  7. 삭제
  8. 제 2 항에 있어서,
    상기 보안 검사기는 소정 시간마다 상기 검사 신호를 활성화하는 것을 특징으로 하는 반도체 집적 회로.
  9. 삭제
  10. 제 2 항에 있어서,
    상기 보안 검사기는,
    상기 검사 신호가 비활성 상태인 동안 상기 검출 신호가 제 1 혹은 제 2 상태로 출력되면 상기 반도체 집적 회로를 리셋하기 위한 제어를 수행하는 것을 특징으로 하는 반도체 집적 회로.
  11. 제 2 항에 있어서,
    난수를 발생하는 난수 발생기를 더 포함하되;
    상기 보안 검사기는 상기 난수에 대응하는 복수의 데이터 비트들을 포함하는 상기 검사 신호를 출력하고;
    상기 검출기는 미리 설정된 검사값과 상기 검사 신호가 일치할 때 상기 검출 신호를 제 2 상태로 출력하는 것을 특징으로 하는 반도체 집적 회로.
  12. 반도체 집적 회로에 있어서:
    상기 반도체 집적 회로의 동작 환경에 기초하여 검출 신호를 출력하되, 상기 동작 환경이 비정상 상태이면 상기 검출 신호를 제 1 상태로 출력하는 복수의 검출기들과;
    난수를 발생하는 난수 발생기; 그리고
    상기 난수에 대응하는 복수의 데이터 비트들을 상기 복수의 검출기들에 제공하고, 상기 복수의 검출기들로부터의 상기 검출 신호를 수신하는 보안 검사기를 포함하되;
    상기 검출기들 각각은 미리 설정된 검사 비트들과 상기 데이터 비트들이 일치할 때 상기 검출 신호를 제 2 상태로 출력하는 것을 특징으로 하는 반도체 집적 회로.
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
KR1020070103194A 2007-10-12 2007-10-12 반도체 집적 회로 및 그것의 검사 방법 KR101436982B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070103194A KR101436982B1 (ko) 2007-10-12 2007-10-12 반도체 집적 회로 및 그것의 검사 방법
US12/249,495 US8332662B2 (en) 2007-10-12 2008-10-10 Semiconductor integrated circuit and testing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070103194A KR101436982B1 (ko) 2007-10-12 2007-10-12 반도체 집적 회로 및 그것의 검사 방법

Publications (2)

Publication Number Publication Date
KR20090037714A KR20090037714A (ko) 2009-04-16
KR101436982B1 true KR101436982B1 (ko) 2014-09-03

Family

ID=40533299

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070103194A KR101436982B1 (ko) 2007-10-12 2007-10-12 반도체 집적 회로 및 그것의 검사 방법

Country Status (2)

Country Link
US (1) US8332662B2 (ko)
KR (1) KR101436982B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3026206B1 (fr) * 2014-09-23 2017-12-01 Inside Secure Procede de contremesure contre une attaque par analyse de consommation electrique pour dispositif cryptographique
JP6555486B2 (ja) 2015-01-13 2019-08-07 国立大学法人神戸大学 オンチップモニタ回路及び半導体チップ

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980083379A (ko) * 1997-05-15 1998-12-05 윤종용 자동 리셋 기능을 갖는 스마트 카드
KR20030066858A (ko) * 2002-02-05 2003-08-14 삼성전자주식회사 보안 기능을 갖는 반도체 집적 회로
KR20060012088A (ko) * 2004-08-02 2006-02-07 삼성전자주식회사 보안 기능을 갖는 반도체 집적 회로
DE102006001872A1 (de) * 2006-01-13 2007-07-19 Infineon Technologies Ag Vorrichtung und Verfahren zum Überprüfen einer Fehlererkennungsfunktionalität einer Datenverarbeitungseinrichtung

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2728369B1 (fr) * 1994-12-19 1997-01-31 Sgs Thomson Microelectronics Procede et dispositif pour accroitre la securite d'un circuit integre
DE69721127T2 (de) * 1996-05-31 2003-10-30 Hitachi Ltd Vorrichtung zum Speichern von elektronischem Geld und Chipkartenkontrollverfahren
WO2000072252A1 (de) * 1999-05-21 2000-11-30 Infineon Technologies Ag Verfahren zur verhinderung widerrechtlicher benutzung von chipkarten
US6289455B1 (en) * 1999-09-02 2001-09-11 Crypotography Research, Inc. Method and apparatus for preventing piracy of digital content
JP2002032732A (ja) 2000-07-14 2002-01-31 Dainippon Printing Co Ltd 可搬情報処理装置における擬似乱数取得方法
KR100458878B1 (ko) * 2002-05-03 2004-12-03 학교법인 경희대학교 Fec 코딩 방식에 기초한 가변길이 패킷 송수신 방법
KR100948043B1 (ko) * 2003-03-31 2010-03-19 엔디에스 리미티드 보안 요소의 클로닝을 방지하기 위한 방법 및 장치
KR20040106075A (ko) 2003-06-10 2004-12-17 삼성전자주식회사 보안 검출 정보 저장 기능을 가지는 스마트 카드 및 이에대한 보안 검출 정보 저장 방법
KR100528477B1 (ko) * 2003-07-22 2005-11-15 삼성전자주식회사 스마트카드의 해킹검지회로
KR100579053B1 (ko) * 2004-08-26 2006-05-12 삼성전자주식회사 스마트 카드와 메모리 카드간의 멀티 인터페이스 방법 및멀티 인터페이스 카드
KR101053185B1 (ko) * 2005-02-24 2011-08-01 삼성전자주식회사 스마트 카드 및 그것의 혼합모드 제어방법
KR100649882B1 (ko) * 2005-07-19 2006-11-27 삼성전자주식회사 비정상 조건 검출회로, 집적회로 카드, 및 cpu 작동방법
KR100714872B1 (ko) * 2005-08-26 2007-05-07 삼성전자주식회사 주파수 검출 회로, 주파수 검출 방법 및 상기 주파수검출회로를 포함하는 반도체 장치
KR20080059321A (ko) * 2005-10-24 2008-06-26 엔엑스피 비 브이 반도체 장치 및 이를 포함하는 스마트 카드, 공격 방어방법
DE102006048969B4 (de) * 2006-10-17 2018-08-16 Infineon Technologies Ag Schaltungsanordnung und Verfahren zum Unterbinden eines Schaltungsbetriebs

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980083379A (ko) * 1997-05-15 1998-12-05 윤종용 자동 리셋 기능을 갖는 스마트 카드
KR20030066858A (ko) * 2002-02-05 2003-08-14 삼성전자주식회사 보안 기능을 갖는 반도체 집적 회로
KR20060012088A (ko) * 2004-08-02 2006-02-07 삼성전자주식회사 보안 기능을 갖는 반도체 집적 회로
DE102006001872A1 (de) * 2006-01-13 2007-07-19 Infineon Technologies Ag Vorrichtung und Verfahren zum Überprüfen einer Fehlererkennungsfunktionalität einer Datenverarbeitungseinrichtung

Also Published As

Publication number Publication date
US20090095955A1 (en) 2009-04-16
US8332662B2 (en) 2012-12-11
KR20090037714A (ko) 2009-04-16

Similar Documents

Publication Publication Date Title
EP3050414B1 (en) Tamper protection mesh in an electronic device
US8847607B2 (en) Device for protecting a connector and a communications wire of a memory card reader
EP2573716B1 (en) Secure device anti-tampering circuit
KR100911379B1 (ko) 반도체 집적 회로의 해킹 검출기 및 그것의 검출 방법
US20070204173A1 (en) Central processing unit and encrypted pin pad for automated teller machines
US20110253788A1 (en) Monitoring current level and current into and out of the icc reader power contacts to detect a parasitic shim
CN100378742C (zh) 智能卡接口篡改的探测
KR20090043823A (ko) 외부 공격을 감지할 수 있는 메모리 시스템
US8903665B2 (en) Method and device for protecting an elecronic payment terminal
US7454629B2 (en) Electronic data processing device
US8947109B2 (en) Protection device, corresponding method and computer software product
KR101436982B1 (ko) 반도체 집적 회로 및 그것의 검사 방법
US6926204B2 (en) Secure electronic device
CN101438303A (zh) 具有电路装置的传感器
US8132721B2 (en) Device for checking the regularity of the operation of automatic payment terminals
KR100517554B1 (ko) 보안 기능을 갖는 반도체 집적 회로
KR20060012088A (ko) 보안 기능을 갖는 반도체 집적 회로
EP3460702A1 (en) Method to detect an attack by fault injection on a sensitive operation
EP3330882B1 (en) Capacitive intrusion detection on smartcard reader
KR100365726B1 (ko) 암호프로세서 패키지에서의 물리적인 해킹방지 장치
KR200478802Y1 (ko) 금융 단말기의 물리적 탐침 방지를 위한 장치의 카드 리드 모듈
EP1205068A1 (en) Apparatus and associated method for limiting access of information transferred between an electronic security device and a host device
KR20160000911U (ko) 금융 단말기의 물리적 탐침 방지를 위한 장치의 커버 디바이스
KR20160029954A (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
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180731

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190731

Year of fee payment: 6