KR101742666B1 - 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법 - Google Patents

집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법 Download PDF

Info

Publication number
KR101742666B1
KR101742666B1 KR1020140064901A KR20140064901A KR101742666B1 KR 101742666 B1 KR101742666 B1 KR 101742666B1 KR 1020140064901 A KR1020140064901 A KR 1020140064901A KR 20140064901 A KR20140064901 A KR 20140064901A KR 101742666 B1 KR101742666 B1 KR 101742666B1
Authority
KR
South Korea
Prior art keywords
integrated circuit
circuit device
diagnostic data
external interface
processing unit
Prior art date
Application number
KR1020140064901A
Other languages
English (en)
Other versions
KR20150137291A (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 KR1020140064901A priority Critical patent/KR101742666B1/ko
Priority to PCT/KR2014/007423 priority patent/WO2015182822A1/ko
Priority to US14/536,213 priority patent/US9779055B2/en
Priority to CN201410638710.7A priority patent/CN105320980B/zh
Publication of KR20150137291A publication Critical patent/KR20150137291A/ko
Application granted granted Critical
Publication of KR101742666B1 publication Critical patent/KR101742666B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/442Shutdown

Abstract

집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법이 개시된다. 본 발명의 일 실시예에 따른 집적 회로 장치는, 외부 인터페이스로부터 인가되는 리셋 신호에 따라 초기화를 수행하고 상기 외부 인터페이스로 리셋 응답(ATR; Answer-To-Reset)을 송신하는 제1 처리부; 및 상기 제1 처리부의 초기화 과정에서 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하는 제2 처리부를 포함한다.

Description

집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법{INTEGRATED CIRCUIT DEVICE AND SIGNAL PROCESSING METHOD THEREOF}
본 발명의 실시예들은 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 기술과 관련된다.
ISO/IEC 7816-3은 집적 회로(IC; Integrated Circuit) 칩이 인터페이스 장치(IFD) 로부터 리셋(Reset) 신호를 인가 받았을 때의 응답에 대한 표준을 정의하고 있다. 상기 표준에 따르면 전원과 클럭(Clock)이 공급되는 상태에서 리셋 신호를 수신하면, IC 칩은 400 내지 40,000 클럭 사이클 이내에 32바이트 이내의 문자열(string)인 리셋 응답(ATR; Answer-To-Reset)을 인터페이스 장치로 송신하여야 하며, 그렇지 않을 경우 인터페이스 장치는 IC 칩과의 통신을 비활성화하게 된다.
한편, IC 칩과 같은 변경 방지 디바이스(TRD; Tamper-Resistant Device)는 속성상 내부의 비휘발성 메모리(NVM; Non-Volatile Memory)에 저장된 코드를 확인할 수 없도록 구성되어 있다. 따라서 IC 칩이 셧다운(Shutdown) 되었을 때는 그 원인을 진단하거나 주요 코드의 무결성 여부를 검증하기가 어려운 문제가 있었다. 또한 IC 칩 내부에 지적 재산권이 존재하는 특정 코드가 포함되었는지의 여부가 의심되는 경우에도, 이를 외부 인터페이스를 통해 직접 확인할 방법이 없었다.
대한민국 공개특허공보 제10-2006-0067317호 (2006. 06. 20)
본 발명의 실시예들은 집적회로 장치가 셧다운 상태인 경우, 상기 집적회로 장치로부터 상기 셧다운의 원인 또는 그 밖에 사용자가 필요로 하는 정보들을 용이하게 획득하기 위한 것이다.
본 발명의 예시적인 실시예에 따르면, 외부 인터페이스로부터 인가되는 리셋 신호에 따라 초기화를 수행하고 상기 외부 인터페이스로 리셋 응답(ATR; Answer-To-Reset)을 송신하는 제1 처리부; 및 상기 제1 처리부의 초기화 과정에서 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하는 제2 처리부를 포함하는 집적 회로 장치가 제공된다.
상기 제2 처리부는, 설정된 진단 데이터 응답 대기 시간동안 대기한 이후 상기 진단 데이터를 상기 외부 인터페이스로 송신할 수 있다.
상기 진단 데이터 응답 대기 시간은, 상기 리셋 응답의 최대 응답 허용 시간의 2배에서 10배 사이일 수 있다.
상기 진단 데이터는, 상기 집적 회로 장치의 셧다운 이유와 관련된 플래그(flag) 및 상기 집적 회로 장치에 포함된 특정 코드에 대한 무결성 검증값 중 하나 이상을 포함할 수 있다.
상기 제2 처리부는, 상기 특정 코드의 상기 집적 회로 장치 내 저장 위치에 대한 정보를 저장할 수 있다.
상기 제2 처리부는, 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산할 수 있다.
상기 제2 처리부는, 상기 집적 회로 장치에 최초 전원 인가시, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산할 수 있다.
상기 무결성 검증값은, 상기 특정 코드에 대한 해시값, 또는 상기 특정 코드를 기 설정된 대칭키 또는 공개키로 암호화한 값일 수 있다.
본 발명의 다른 예시적인 실시예에 따르면, 집적 회로 장치에서의 신호 처리 방법으로써, 외부 인터페이스로부터 리셋 신호를 수신하는 단계; 상기 집적 회로 장치가 셧다운 상태인지의 여부를 판단하는 단계; 및 상기 판단 결과 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하는 단계를 포함하는 집적 회로 장치의 신호 처리 방법이 제공된다.
상기 송신하는 단계는, 설정된 진단 데이터 응답 대기 시간동안 대기한 이후 상기 진단 데이터를 상기 외부 인터페이스로 송신할 수 있다.
상기 진단 데이터 응답 대기 시간은, 상기 리셋 응답의 최대 응답 허용 시간의 2배에서 10배 사이일 수 있다.
상기 진단 데이터는, 상기 집적 회로 장치의 셧다운 이유와 관련된 플래그(flag) 및 상기 집적 회로 장치에 포함된 특정 코드에 대한 무결성 검증값 중 하나 이상을 포함할 수 있다.
상기 송신하는 단계는, 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 특정 코드에 대한 무결성 검증값을 계산하는 단계를 더 포함할 수 있다.
상기 송신하는 단계는, 상기 집적 회로 장치에 최초 전원 인가시 계산된 상기 특정 코드에 대한 무결성 검증값을 상기 진단 데이터에 포함시켜 상기 외부 인터페이스로 송신할 수 있다.
상기 무결성 검증값은, 상기 특정 코드에 대한 해시값, 또는 상기 특정 코드를 기 설정된 대칭키 또는 공개키로 암호화한 값일 수 있다.
본 발명의 실시예들에 따르면, 집적회로 장치가 셧다운 상태인 경우, 상기 집적회로 장치로부터 별도의 진단 데이터를 송신하도록 함으로써 상기 셧다운의 원인 또는 그 밖에 사용자가 필요로 하는 정보들을 용이하게 획득할 수 있다.
또한, 본 발명의 실시예들에 따르면, 상기 진단 데이터는 정규 리셋 응답보다 충분히 느린 타이밍에서 집적회로 장치로부터 송신되므로, 기존의 프로토콜과의 호환성을 확보할 수 있는 동시에 필요한 정보를 확보할 수 있는 장점이 있다.
도 1은 본 발명의 일 실시예에 따른 집적회로 장치(100)를 설명하기 위한 블록도
도 2는 본 발명의 일 실시예에 따른 직접회로 장치의 신호 처리 방법(200)을 설명하기 위한 흐름도
도 3은 본 발명의 일 실시예에 따른 직접회로 장치의 신호 처리 방법(200)에서 히든 ATR을 송신하는 과정(230)을 상세히 설명하기 위한 흐름도
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
도 1은 본 발명의 일 실시예에 따른 집적 회로 장치(100)를 설명하기 위한 블록도이다. 도시된 바와 같이, 본 발명의 일 실시예에 따른 집적 회로 장치(100)는 제1 처리부(102) 및 제2 처리부(104)를 포함한다.
제1 처리부(102)는 외부 인터페이스(IFD)로부터 인가되는 리셋 신호에 따라 초기화를 수행하고 상기 외부 인터페이스로 리셋 응답(ATR; Answer-To-Reset)을 송신한다.
제2 처리부(104)는 제1 처리부(102)에 의한 초기화 수행 과정에서 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신한다.
상기와 같은 구성을 가지는 본 발명의 일 실시예에 따른 집적 회로 장치(100)에서의 리셋 신호 수신에 따른 구체적인 신호 처리 방법을 기술하면 다음과 같다.
도 2는 본 발명의 일 실시예에 따른 직접 회로 장치(100)의 신호 처리 방법(200)을 설명하기 위한 흐름도이다. 도시된 실시예에서는 각 단계가 시계열적인 순서를 가지는 것으로 도시되었으나, 적어도 일부의 단계들은 동시에 수행되거나 또는 순서를 바꾸어 수행될 수도 있음을 유의한다.
단계 202에서, 제1 처리부(102)는 외부 인터페이스로부터 리셋(reset) 신호를 수신한다.
단계 204에서, 제1 처리부(102)는 상기 리셋 신호에 따라 직접회로 장치(100)의 하드웨어 초기화를 수행한다.
단계 206에서, 제1 처리부(102)는 직접회로 장치(100)의 운영체제(Operating System) 등에서 관리하는 셧다운 플래그(shutdown flag)의 값을 통해 현재 상태가 셧다운 상태인지의 여부를 확인한다. 예를 들어, 상기 셧다운 플래그가 TRUE로 설정되어 있는 경우, 제1 처리부(102)는 현재 상태가 셧다운 상태임을 확인할 수 있다.
상기 단계 206에서의 판단 결과 셧다운 상태가 아닌 경우, 단계 208에서 제1 처리부(102)는 직접회로 장치(100)에 포함된 보안 모듈 등의 주요 모듈에 대한 자체 검사(self test)를 수행하고, 상기 자체 검사 결과 문제가 없는지의 여부를 판단한다.
상기 단계 208에서의 수행 결과 자체 검사에서 문제가 발생하지 않은 경우(self_test = OK), 단계 210에서 제1 처리부(102)는 소프트웨어 초기화를 수행한다.
단계 212에서, 제1 처리부(102)는 외부 인터페이스로 ATR 신호를 송신한다. 본 단계에서 송신되는 ATR 신호는 ISO/IEC 7816-3에 따른 표준 ATR 신호로서, 상기 리셋 신호 수신 시점으로부터 400 내지 40,000 클럭 사이클 이내에 송신되어야 한다.
단계 212까지의 수행이 문제없이 수행되는 경우, 직접 회로 장치(100)는 초기화(reset)에 성공한 것으로 판단하고, 정상적으로 외부로부터의 명령을 수신한 뒤(Receive_Command()) 이를 처리하고(Process_Command(()), 결과값을 회신(Transmit_Response())하는 과정을 반복하게 된다(단계 214 내지 218).
그러나 만약 상기 단계 208의 판단 결과 자체 검사에서 문제가 발생한 경우, 단계 220에서 제1 처리부(102)는 카운트(fail_count)를 1 증가시킨다.
예를 들어, 제1 처리부(102)는 자체 검사 결과 기 설정된 보안 영역의 접근 제어가 해제되어 있거나, 또는 비휘발성 메모리에 대한 비정상적인 쓰기 작업(write)이 발생하거나 하는 경우 문제가 발생한 것으로 판단할 수 있다.
단계 222에서, 제1 처리부(102)는 상기 카운트(fail_count)가 기 설정된 한계치(UPPER_LIMIT)에 도달했는지의 여부를 판단한다. 만약 상기 단계 222의 판단 결과 상기 카운트(fail_count)가 기 설정된 한계치(UPPER_LIMIT)에 도달한 경우, 단계 226에서 제1 처리부(102)는 운영 체제 상의 셧다운 플래그를 TRUE로 설정하고, 단계 228에서 시스템을 셧다운하게 된다.
이와 같이 시스템이 셧다운되면, 직접 회로 장치(100)는 셧다운 플래그가 TRUE로 설정된 상태로 재시작되며, 이에 따라 전술한 단계 206에서 제1 처리부(102)는 현재 셧다운 상태인 것으로 판단하게 된다. 이 경우에는 단계 212와 같은 표준 ATR은 송신되지 않으며, 단계 230에서 제2 처리부(104)는 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하게 된다. 본 발명의 실시예들에서, 상기 진단 데이터는 일종의 히든 ATR(HIDDEN_ATR)로서, 표준 ATR이 송신되지 않을 경우 이를 대신하여 송신됨으로써 외부의 인터페이스로 셧다운의 이유 또는 그 밖에 필요한 정보를 송신하기 위한 것이다.
도 3은 본 발명의 일 실시예에 따른 직접회로 장치의 신호 처리 방법(200)에서 히든 ATR을 송신하는 과정(230)을 상세히 설명하기 위한 흐름도이다.
단계 302 및 304에서, 제2 처리부(104)는, 설정된 진단 데이터 응답 대기 시간이 경과할 때 까지 대기한다. 이때 상기 응답 대기 시간은 리셋 신호 수신 후 ATR이 송신되기 위한 최대 응답 허용 시간의 2배 이상일 수 있다. 예를 들어, 상기 최대 응답 허용 시간이 40,000 클럭인 경우, 상기 응답 대기 시간은 80,000 클럭 이상일 수 있다. 이와 같이 최대 응답 허용 시간 이후 충분한 딜레이 타임을 두는 이유는 외부 인터페이스에서 수신되는 ATR이 표준 ATR인지 또는 히든 ATR인지를 명확하게 구분할 수 있도록 하기 위해서이다. 다시 말해, 제2 처리부(104)는 표준 ATR 응답 허용 시간 경과 이후 충분한 딜레이 타임이 흐른 뒤 히든 ATR을 송신함으로써 기준의 ATR 응답과 관련된 표준과의 호환성을 훼손하지 않으면서 상기 히든 ATR을 송신하도록 구성할 수 있다.
또한, 제2 처리부(104)는 상기 진단 데이터 응답 대기 시간의 최대값을 설정할 수 있다. 예를 들어 상기 최대값은 상기 최대 응답 허용 시간의 10배일 수 있다. 이 경우 외부 인터페이스는 상기 최대값에 해당하는 시간까지 대기한 경우에도 상기 히든 ATR이 수신되지 않는 경우 직접 회로 장치(100)가 정상적으로 동작하지 않는 것으로 판단할 수 있다.
단계 306에서, 송신할 진단 데이터를 버퍼(Buffer)에 기록한다. 일 실시예에서, 상기 진단 데이터는 집적 회로 장치(100)의 셧다운 이유와 관련된 플래그(flag) 및 집적 회로 장치(100)에 포함된 특정 코드에 대한 무결성 검증값 중 하나 이상을 포함할 수 있다.
셧다운 이유와 관련된 플래그(flag)는 집적 회로 장치(100)의 셧다운 이유 별로 할당된 짧은 길이의 문자열이다. 상기 플래그의 길이는 대략 1바이트 이내로 설정하는 것이 바람직하다. 그 이유는 직접 회로 장치(100)의 셧다운 시점과 외부 인터페이스와의 통신이 비활성화될 때까지의 시간이 매우 짧으므로, 2바이트 이상의 값을 설정하고자 할 경우는 전력 공급이 불충분하여 실패할 가능성이 있기 때문이다.
또한, 상기 무결성 검증값은 집적 회로 장치(100) 내에 변경이 발생해서는 안되는 코드, 또는 지적 재산권으로 보호되고 있는 코드의 바이너리 시퀀스가 변경되었는지의 여부를 판단하기 위한 검증값이다. 일 실시예에서 제2 처리부(104)는 무결성 검증이 필요한 코드의 집적 회로 장치(100) 내 저장 위치의 시작 지점 및 오프셋(offset) 값을 미리 저장해 두었다가, 필요한 경우 해당 위치에서 코드를 읽은 뒤 이로부터 무결성 검증값을 계산할 수 있다. 예를 들어, 제2 처리부(104)는 상기 코드에 대하여 일방향 해시함수(예를 들어, SHA-1, SHA-224, SHA-256등) 등을 이용하여 계산된 해시값, 대칭키(예를 들어, DES, AES, SEED, ARIA 등) 기반의 MAC(Message Authentication Code), 또는 공개키(이를테면, RSA, DSA, ECDSA, KCDSA, KCECDSA 등) 기반의 전자서명 등을 계산한 값을 상기 무결성 검증값으로 설정할 수 있다.
일 실시예에서, 이때, 무결성 검증 데이터 값을 IC Chip 내부에서 연산하는 과정을 최소한 1번 수행해야 하는데 예를 들면, 전원이 최초로 인가된 시점에 그 암호 연산을 수행할 수 있다. 이것은 IC Chip의 목적과 활용 사례를 고려하여 결정할 수 있을 것이다.
제2 처리부(104)는, 집적 회로 장치(100)가 셧다운 상태인 것으로 판단되는 경우, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산할 수 있다. 또는, 실시예에 따라 제2 처리부(104)는 집적 회로 장치(100)에 최초 전원 인가시, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산하도록 구성될 수도 있다. 상기 무결성 검증값의 계산 시점은, 집적 회로 장치(100)의 활용예 등을 고려하여 적절하게 설정될 수 있다.
단계 308에서, 제2 처리부(104)는 상기 버퍼에 저장된 상기 진단 데이터를 외부 인터페이스로 송신한다.
본 발명의 실시예들에 따를 경우, 제2 처리부(104)는 집적 회로 장치(100)가 셧다운 되었을 때, 정규 ATR보다 충분히 느린 타이밍에 각종 진단 정보를 포함하고 있는 히든 ATR을 송신하게 된다. 이에 따라 외부 인터페이스는 이를 읽어들여 셧다운의 원인을 진단할 수 있으며, 주요 코드의 무결성(integrity) 검증 데이터 값을 확인함으로써 지적 재산권이 있는 특정 코드의 사용 여부를 탐지할 수 있다. 이때 상기 히든 ATR은 표준 IFD로는 인식되지 않으므로, 일반적인 사용자들은 히든 ATR의 존재 여부를 인식할 수 없으며 기존 표준과도 충돌되지 않는다. 또한, 집적회로 장치(100)가 사용자에게 발급된 이후에는 내부의 비휘발성 메모리에 저장된 코드를 수정할 수 없으므로 주요 코드의 무결성 검증 데이터 값 확인을 통해 지적 재산권 침해 여부에 대한 탐지가 가능하게 된다.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 플로피 디스크와 같은 자기-광 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: 집적 회로 장치
102: 제1 처리부
104: 제2 처리부

Claims (15)

  1. 외부 인터페이스로부터 인가되는 리셋 신호에 따라 초기화를 수행하고 상기 외부 인터페이스로 리셋 응답(ATR; Answer-To-Reset)을 송신하는 제1 처리부; 및
    상기 제1 처리부의 초기화 수행 과정에서 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하는 제2 처리부를 포함하며,
    상기 제2 처리부는, 상기 리셋 신호를 수신한 때로부터 설정된 진단 데이터 응답 대기 시간 동안 대기한 이후 상기 진단 데이터를 상기 외부 인터페이스로 송신함으로써 상기 외부 인터페이스가 대기 시간을 통해 상기 리셋 응답을 수신한 것인지, 또는 상기 진단 데이터를 수신한 것인지 여부를 판단하는, 집적 회로 장치.
  2. 삭제
  3. 청구항 1에 있어서,
    상기 진단 데이터 응답 대기 시간은, 상기 리셋 응답의 최대 응답 허용 시간의 2배에서 10배 사이인, 집적 회로 장치.
  4. 청구항 1에 있어서,
    상기 진단 데이터는, 상기 집적 회로 장치의 셧다운 이유와 관련된 플래그(flag) 및 상기 집적 회로 장치에 포함된 특정 코드에 대한 무결성 검증값 중 하나 이상을 포함하는, 집적 회로 장치.
  5. 청구항 4에 있어서,
    상기 제2 처리부는, 상기 특정 코드의 상기 집적 회로 장치 내 저장 위치에 대한 정보를 저장하는, 집적 회로 장치.
  6. 청구항 5에 있어서,
    상기 제2 처리부는, 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산하는, 집적 회로 장치.
  7. 청구항 5에 있어서,
    상기 제2 처리부는, 상기 집적 회로 장치에 최초 전원 인가시, 상기 저장 위치에 저장된 상기 특정 코드에 대한 무결성 검증값을 계산하는, 집적 회로 장치.
  8. 청구항 4에 있어서,
    상기 무결성 검증값은,
    상기 특정 코드에 대한 해시값, 또는
    상기 특정 코드를 기 설정된 대칭키 또는 공개키로 암호화한 값인, 집적 회로 장치.
  9. 집적 회로 장치에서의 신호 처리 방법으로써,
    외부 인터페이스로부터 리셋 신호를 수신하는 단계;
    상기 집적 회로 장치가 셧다운 상태인지의 여부를 판단하는 단계; 및
    상기 판단 결과 상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 집적 회로 장치에 대한 진단 데이터를 상기 외부 인터페이스로 송신하는 단계를 포함하며,
    상기 송신하는 단계는, 상기 리셋 신호를 수신한 때로부터 설정된 진단 데이터 응답 대기 시간동안 대기한 이후 상기 진단 데이터를 상기 외부 인터페이스로 송신함으로써 상기 외부 인터페이스가 대기 시간을 통해 상기 리셋 신호에 대한 리셋 응답을 수신한 것인지, 또는 상기 진단 데이터를 수신한 것인지 여부를 판단하는, 집적 회로 장치의 신호 처리 방법.
  10. 삭제
  11. 청구항 9에 있어서,
    상기 진단 데이터 응답 대기 시간은, 상기 리셋 응답의 최대 응답 허용 시간의 2배에서 10배 사이인, 집적 회로 장치의 신호 처리 방법.
  12. 청구항 9에 있어서,
    상기 진단 데이터는, 상기 집적 회로 장치의 셧다운 이유와 관련된 플래그(flag) 및 상기 집적 회로 장치에 포함된 특정 코드에 대한 무결성 검증값 중 하나 이상을 포함하는, 집적 회로 장치의 신호 처리 방법.
  13. 청구항 12에 있어서,
    상기 송신하는 단계는,
    상기 집적 회로 장치가 셧다운 상태인 것으로 판단되는 경우, 상기 특정 코드에 대한 무결성 검증값을 계산하는 단계를 더 포함하는, 집적 회로 장치의 신호 처리 방법.
  14. 청구항 12에 있어서,
    상기 송신하는 단계는,
    상기 집적 회로 장치에 최초 전원 인가시 계산된 상기 특정 코드에 대한 무결성 검증값을 상기 진단 데이터에 포함시켜 상기 외부 인터페이스로 송신하는, 집적 회로 장치의 신호 처리 방법.
  15. 청구항 12에 있어서,
    상기 무결성 검증값은,
    상기 특정 코드에 대한 해시값, 또는
    상기 특정 코드를 기 설정된 대칭키 또는 공개키로 암호화한 값인, 집적 회로 장치의 신호 처리 방법.
KR1020140064901A 2014-05-29 2014-05-29 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법 KR101742666B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020140064901A KR101742666B1 (ko) 2014-05-29 2014-05-29 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법
PCT/KR2014/007423 WO2015182822A1 (ko) 2014-05-29 2014-08-11 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법
US14/536,213 US9779055B2 (en) 2014-05-29 2014-11-07 Integrated circuit device and signal processing method in integrated circuit device
CN201410638710.7A CN105320980B (zh) 2014-05-29 2014-11-07 集成电路装置及所述集成电路装置中的信号处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140064901A KR101742666B1 (ko) 2014-05-29 2014-05-29 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법

Publications (2)

Publication Number Publication Date
KR20150137291A KR20150137291A (ko) 2015-12-09
KR101742666B1 true KR101742666B1 (ko) 2017-06-15

Family

ID=54699132

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140064901A KR101742666B1 (ko) 2014-05-29 2014-05-29 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법

Country Status (4)

Country Link
US (1) US9779055B2 (ko)
KR (1) KR101742666B1 (ko)
CN (1) CN105320980B (ko)
WO (1) WO2015182822A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3074933B1 (fr) * 2017-12-07 2021-05-21 Algodone Systeme et procede de licence et de mesure d'utilisation d'un bloc ip

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030163765A1 (en) * 1998-12-29 2003-08-28 Donald J. Eckardt Method and apparatus for providing diagnosis of a processor without an operating system boot
US20120290870A1 (en) * 2010-11-05 2012-11-15 Interdigital Patent Holdings, Inc. Device validation, distress indication, and remediation

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6134665A (en) * 1998-01-20 2000-10-17 Digital Equipment Corporation Computer with remote wake up and transmission of a status packet when the computer fails a self test
US6286111B1 (en) * 1998-09-01 2001-09-04 International Business Machines Corporation Retry mechanism for remote operation failure in distributed computing environment
US7032056B2 (en) * 2003-05-08 2006-04-18 International Business Machines Corporation Encoding of message onto strobe signals
EP1882229B1 (en) * 2005-04-27 2014-07-23 Privasys, Inc. Electronic cards and methods for making same
JP2007317170A (ja) * 2006-04-28 2007-12-06 Renesas Technology Corp Icモジュールおよび携帯電話
JP5601696B2 (ja) * 2009-03-23 2014-10-08 ローム株式会社 電源装置
US8861228B2 (en) * 2009-12-07 2014-10-14 Durr Systems Gmbh High voltage controller with improved monitoring and diagnostics
KR20120134169A (ko) * 2011-06-01 2012-12-12 삼성전자주식회사 전압-온도 센서 및 이를 포함하는 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030163765A1 (en) * 1998-12-29 2003-08-28 Donald J. Eckardt Method and apparatus for providing diagnosis of a processor without an operating system boot
US20120290870A1 (en) * 2010-11-05 2012-11-15 Interdigital Patent Holdings, Inc. Device validation, distress indication, and remediation

Also Published As

Publication number Publication date
CN105320980A (zh) 2016-02-10
WO2015182822A1 (ko) 2015-12-03
KR20150137291A (ko) 2015-12-09
CN105320980B (zh) 2018-04-20
US9779055B2 (en) 2017-10-03
US20150347346A1 (en) 2015-12-03

Similar Documents

Publication Publication Date Title
JP6030925B2 (ja) 半導体装置及び情報処理システム
US11003781B2 (en) Root key processing method and associated device
EP2715598B1 (en) Method and apparatus for authenticating a non-volatile memory device
US20130275775A1 (en) Storage device, protection method, and electronic device
WO2002099742A1 (fr) Carte memoire
KR102395258B1 (ko) 부트 메모리 버스의 경로 절체 기능을 이용한 시큐어 부팅 방법 및 이를 이용한 장치
US20200065528A1 (en) Storage device and program
EP2503482A1 (en) Electronic device with flash memory component
US9842214B2 (en) System and method to secure on-board bus transactions
US11003801B2 (en) Functional device and control apparatus
US20120278598A1 (en) Disabling communication ports
TWI393006B (zh) 用於碼傾印保護之安全系統及安全方法
US9092619B2 (en) Data processing apparatus
JP2002024046A (ja) マイクロコンピュータ及びそのメモリ内容変更システム並びにメモリ内容変更方法
KR101742666B1 (ko) 집적 회로 장치 및 상기 집적 회로 장치에서의 신호 처리 방법
JP2010165206A (ja) メモリコントローラおよび不揮発性記憶装置
JP2007004456A (ja) 携帯可能電子装置及び携帯可能電子装置のデータ出力方法
CN111783120A (zh) 一种数据的交互方法、计算设备、bmc芯片及电子设备
CN112199740B (zh) 一种加密锁的实现方法及加密锁
JP2018022486A5 (ko)
CN113343215A (zh) 嵌入式软件的授权和认证方法及电子设备
CA2887937C (en) Method for deactivating a payment module, corresponding computer program product, storage medium and payment module
JP2007293593A (ja) メモリセルフテスト回路及びそれを備えた半導体装置及びicカード並びにメモリセルフテスト方法
KR20230133060A (ko) 보안 기능을 제공하는 전자 장치 및 그의 동작 방법
CN117272409A (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