KR20160031533A - 반도체 장치 - Google Patents

반도체 장치 Download PDF

Info

Publication number
KR20160031533A
KR20160031533A KR1020167003754A KR20167003754A KR20160031533A KR 20160031533 A KR20160031533 A KR 20160031533A KR 1020167003754 A KR1020167003754 A KR 1020167003754A KR 20167003754 A KR20167003754 A KR 20167003754A KR 20160031533 A KR20160031533 A KR 20160031533A
Authority
KR
South Korea
Prior art keywords
circuit
clock
signal
enable
abnormality
Prior art date
Application number
KR1020167003754A
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 미쓰비시덴키 가부시키가이샤
Publication of KR20160031533A publication Critical patent/KR20160031533A/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/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/76Protecting 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 in application-specific integrated circuits [ASIC] or field-programmable devices, e.g. field-programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/004Countermeasures against attacks on cryptographic mechanisms for fault attacks
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device 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/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • 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
    • 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/34Encoding or coding, e.g. Huffman coding or error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • General Health & Medical Sciences (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Mathematical Physics (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Manipulation Of Pulses (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

클록 신호에 동기한 펄스열인 인에이블 신호를 생성하고, 보호 대상 회로(30)에 대하여 인에이블 신호를 공급하는 인에이블 생성 회로(10)와, 클록 신호와 인에이블 생성 회로에서 생성된 인에이블 신호의 비교에 근거하여, 클록 신호에 대하여 스파이크가 도입된 것에 의한 클록 타이밍의 이상을 검출하는 제 1 이상 검출 회로(20)를 구비하는 것에 의해, 국소적인 클록 이상을 검출 가능하게 하는 반도체 장치를 얻는다.

Description

반도체 장치{SEMICONDUCTOR DEVICE}
본 발명은, 인증 처리나 암호화 처리 등의 시큐리티 장치에 관련되는 것으로, 해당 장치를 대상으로 한 특정한 공격에 대책을 시행하기 위한 반도체 장치에 관한 것이다.
최근, 휴대 전화로 대표되는 내장 기기(built-in device)의 네트워크화에 따라서, 내장 기기에서 취급하는 데이터의 비닉이나 완전성의 유지 및 내장 기기 그 자체를 인증하기 위해, 내장 기기가 정보 시큐리티에 관련되는 처리를 행할 필요성이 높아지고 있다. 이들 정보 시큐리티에 관련되는 처리는, 암호화 알고리즘이나 인증 알고리즘에 의해 실현된다.
암호화 알고리즘이나 인증 알고리즘을 실행하는데 있어서 대전제가 되는 것은, 각 기기가 「안전하게」 계산을 행하는 것이다. 여기서, 「안전」이란, 그 기기를 정당하게 이용 가능한 사람 이외의 사람이, 키 정보의 읽기나 수정을 행하는 것이 곤란한 것을 가리킨다. 그것을 위해서는, 기기 그 자체에 개입하는 공격자에 대해서도, 계산 내용이 비밀로 되도록 하는 실장 방식이 요구된다.
그와 같은 공격 중에는, 해당 내장 기기에 의도적으로 계산 오류를 유발하는 것에 의해, 암호 해독을 시도하는 것이 있다(이후, 이와 같은 공격을 「폴트(fault) 공격」이라고 칭한다). 이와 같은 폴트 공격은, 물리적인 자극에 의해 대상 회로에 계산 오류를 유발시키고, 그 거동을 관찰하는 것에 의해 암호 해독을 행하는 수법이다. 오류 삽입법은, 다양하지만, 대표적인 것으로서, 회로에 입력되는 클록 신호에 스파이크(spike)를 삽입하는 것이 있다. 그와 같은, 스파이크를 포함하는 클록 신호는, 결과적으로 대상 회로의 오작동을 일으키는 것이 알려져 있다.
폴트 공격에 대해서는, 지금까지도 대책 기술이 고안되어 왔다. 대책 기술은, 크게 나누어 2개로 분류된다. 즉, (ⅰ) 계산 오류의 검지와 (ⅱ) 이상 상태의 검지이다. (ⅰ)의 계산 오류의 검지는, 검산이나 에러 검지 부호에 의해 계산 오류를 발견하고, 처리의 중단이나 정정을 행하는 수법이다. 그와 같은 수법의 일례로서는, 예컨대, 특허 문헌 1을 들 수 있다.
다른 한쪽의 (ⅱ)의 이상 상태의 검지는, 센서 등을 탑재하는 것에 의해, 계산 오류를 일으킬 가능성이 있는 이상 동작 환경을 검출하는 것이다. 클록 신호의 이상을 검출하는 것으로서는, 예컨대, 비 특허 문헌 1을 들 수 있고, 레이저 조사 등을 검출하는 것으로서는, 예컨대, 특허 문헌 2를 들 수 있다.
(선행 기술 문헌)
(특허 문헌)
(특허 문헌 1) 일본 특허 공개 2009-278576호 공보
(특허 문헌 2) 일본 특허 공개 2004-206680호 공보
(특허 문헌 3) 일본 특허 공개 소 63-310211호 공보
(비 특허 문헌)
(비 특허 문헌 1) N. Selmane, S. Bhasin, S. Guilley, T. Graba, and J.-L. Danger, "WDDL is Protected against Setup Time Violation Attacks", FDTC2009.
(비 특허 문헌 2) T. Sugawara, N. Homma, T. Aoki, and A. Satoh, "High-performance Architecture for Concurrent Error Detection for AES Processors", IEICE Trans. Fundamentals of Electronics, Communications and Computer Sciences, Vol. E94-A, No. 10, pp.1971-1980, October, 2011.
(비 특허 문헌 3) Y. Li, K. Sakiyama, S. Gomisawa, T. Fukunaga, J. Takahashi, K. Ohta: Fault Sensitivity Analysis. CHES 2010: 320-334
그렇지만, 종래 기술에는, 이하와 같은 과제가 있다.
상기와 같이, 대책 기술은 개발되어 있지만, 기존의 대책 수법으로는 다 막을 수 없는 것이 존재하는 것이 과제로서 남아 있다. (ⅰ)의 계산 오류의 검지에 대해서는, 특정한 오류를 검출할 수 없을 가능성이 있다. 일례로서, 비 특허 문헌 2에는, 연속하여 2회의 오류를 삽입하는 경우(타이밍 더블 폴트), 특허 문헌 1의 오류 검출 능력이 한정되는 것이 기술되어 있다.
또한, 예컨대, 비 특허 문헌 3에 기재된 바와 같은 「고장 감도 해석」이라고 불리는 공격법을 이용하면, 비록 검산을 한 경우에도 공격 가능하게 되는 것이 알려져 있다.
한편, (ⅱ)의 이상 상태의 검지의 방법에 대해서도, 레이저 조사 등에 의한 오류 조사에서는, 센서를 우회하는 것을 생각할 수 있다. 또한, 특허 문헌 2에 기재되어 있는 바와 같은, 광 센서 등에 의해 레이저 조사를 검출하는 수법도 존재하지만, 역시 국소적인 조사를 놓칠 가능성이 있다.
또한, 특허 문헌 3에 기재되어 있는 바와 같은, 국소적인 클록 이상을 검출하기 위한 장치도 존재하지만, 어디까지나 통상 회로의 이상계를 취급하기 위한 발명이기 때문에, 악의 있는 공격자의 폴트 삽입을 방지할 수는 없다.
종래 기술에 관한 과제를 정리하면, 이하와 같은 4개의 문제점을 들 수 있다.
(문제점 1) 검산ㆍ에러 검출 부호로는 대항할 수 없는 공격법이 존재한다(다중 고장, 고장 감도 해석 등).
(문제점 2) 센서의 우회.
(문제점 3) 양 에지를 사용할 수 없다.
(문제점 4) 스탠다드 셀을 이용하여 구성할 수 없다.
우선, 문제점 1에 대하여 설명한다. 검산ㆍ에러 검출 부호에 의한 대책에는, 2개의 과제가 있다. 1번째의 과제는, 다중 고장을 검출할 수 없을 가능성이 있는 점이다. 복수의 오류가 동시에 삽입된 경우, 보호 대상으로 하는 계산뿐만 아니라, 검산ㆍ에러 검출 부호의 계산도 동시에 실패할 가능성이 있다. 그 결과, 본래는 오류로서 검출해야 할 상황을 놓쳐, 오류 검출에 실패할 가능성이 있다.
2번째의 과제는, 고장 감도 해석을 막을 수 없는 것이다. 종래의 폴트 공격은, 오류를 포함하는 출력의 해석에 의해 공격을 행한다. 그 때문에, 오류를 검출하고, 잘못된 계산 결과의 출력을 억제하면 대처할 수 있었다.
그렇지만, 고장 감도 해석은, 계산이 잘못되었다ㆍ잘못되지 않았다고 하는 정보만을 이용하여 공격을 행한다. 그와 같은 「잘못되었다ㆍ잘못되지 않았다」고 하는 정보는, 검산ㆍ에러 검출 부호가 오류 검출에 성공한 경우에도 외부에 출력된다. 그 때문에, 검산ㆍ에러 검출 부호에 의한 대책이 존재하더라도 공격이 성립하여 버린다.
다음으로, 문제점 2에 대하여 설명한다. 센서에 의한 대책에는, 국소적인 오류를 검출할 수 없을 가능성이 있다. 즉, 센서에 영향을 주지 않고서, 대상의 회로만 오류를 일으키게 하는 오류 삽입 방법이 적용될 가능성이 있다.
이 일례로서, 클록 이상에 의한 국소적인 오류에 대하여 설명한다. 도 8은 종래 기술에 있어서, 클록 이상 검출 회로가 우회되는 메커니즘을 나타낸 설명도이다. 일반적인 회로에서는, 칩 외부로부터 공급되는 클록 신호를 클록 분배 회로(100)에 의해 증폭하여, 각 회로에 공급하고 있다. 클록 이상 검출 회로(101)는, 클록 분배 회로(100)의 단자의 하나에 설치된다. 그때, 보호 대상 회로(102)가, 클록 분배 회로(100)에서, 클록 이상 검출 회로와 상이한 단자에 접속되는 것을 생각한다.
공격자는, 레이저 조사 등의 수단에 의해, 클록 분배 회로(100)의 일부에 물리적 자극(103)을 인가한다. 그 결과, 클록 이상 검출 회로(101)에 자극을 주는 일 없이, 보호 대상 회로(102)의 클록에 이상을 일으킬 수 있다. 그때, 클록 이상 검출 회로(101)에 공급되는 클록은, 정상적이기 때문에, 이상 검지는 할 수 없게 된다.
다음으로, 문제점 3에 대하여 설명한다. 클록에 동기하여 동작하는 회로에서는, 클록 신호의 상승, 하강, 또는 그 양쪽을 검출하여 동작한다. 비 특허 문헌 1에 기재되어 있는 바와 같은, 종래의 클록 신호의 이상을 검출하는 방식으로는, 그 구성상, 클록의 상승이나 하강의 어느 한쪽에서 밖에 동작할 수 없다. 그 때문에, 클록 신호의 상승과 하강의 양쪽을 사용하는 회로에 적용할 수 없다고 하는 문제가 있었다.
다음으로, 문제점 4에 대하여 설명한다. 통상의 디지털 회로 설계에서는, 반도체 제조 업자로부터 제공된 스탠다드 셀(범용 회로 부품)을 이용하여 회로 설계를 행한다. 그렇지만, 특허 문헌 2, 특허 문헌 3에 있는 검출 회로는, 스탠다드 셀을 이용한 구성이 곤란하다. 스탠다드 셀로 구성할 수 없는 경우, 전용 설계를 행할 필요가 생기기 때문에, 결과적으로 설계 비용과 제조 비용의 상승이 문제가 된다.
본 발명은, 상기와 같은 과제를 해결하기 위해 이루어진 것이고, 국소적인 클록 이상을 검출 가능하게 하는 반도체 장치를 얻는 것을 목적으로 한다.
본 발명과 관련되는 반도체 장치는, 클록 신호에 동기한 펄스열인 인에이블 신호를 생성하고, 보호 대상 회로에 대하여 인에이블 신호를 공급하는 인에이블 생성 회로와, 클록 신호와 인에이블 생성 회로에서 생성된 인에이블 신호의 비교에 근거하여, 클록 신호에 대하여 스파이크가 도입된 것에 기인하는 클록 타이밍의 이상을 검출하는 제 1 이상 검출 회로를 구비하는 것이다.
본 발명에 의하면, 클록 신호에 동기한 인에이블 신호와, 클록 신호 자신의 논리 연산에 근거하여, 클록 신호에 도입된 스파이크를 검출 가능한 이상 검출 회로를 갖는 것에 의해, 국소적인 클록 이상을 검출 가능하게 하는 반도체 장치를 얻을 수 있다.
도 1은 본 발명의 실시의 형태 1에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다.
도 2는 본 발명의 실시의 형태 1에 있어서의 인에이블 생성 회로의 내부 구성과 동작을 설명하기 위한 도면이다.
도 3은 본 발명의 실시의 형태 1에 있어서의 클록 버퍼에 오류가 생겼을 때의 설명도이다.
도 4는 본 발명의 실시의 형태 1에 있어서의 이상 검출 회로의 내부 구성과 동작을 나타내는 도면이다.
도 5는 본 발명의 실시의 형태 2에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다.
도 6은 본 발명의 실시의 형태 3에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다.
도 7은 본 발명의 실시의 형태 4에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다.
도 8은 종래 기술에 있어서, 클록 이상 검출 회로가 우회되는 메커니즘을 나타낸 설명도이다.
이하, 본 발명의 반도체 장치의 바람직한 실시의 형태에 대하여 도면을 이용하여 설명한다.
실시의 형태 1.
도 1은 본 발명의 실시의 형태 1에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다. 본 실시의 형태 1에 있어서의 반도체 장치는, 인에이블 생성 회로(10), 이상 검출 회로(20)(제 1 이상 검출 회로에 상당)를 포함하여 구성되어 있고, 그들을 이용하여, 보호 대상 회로(30)의 오동작을 방지 또는 검출한다.
보호 대상 회로(30)는, 상승 에지에서 동작하는 레지스터(31)와, 하강 에지에서 동작하는 레지스터(32) 중 어느 하나, 또는 양쪽을 포함하는 것으로 한다. 상승 에지에서 동작하는 레지스터(31)에는, 클록 신호와 상승 인에이블 신호를 AND 게이트(3)에 통과시킨 것을 접속한다. 하강 에지에서 동작하는 레지스터(32)에는, 클록 신호와 하강 인에이블 신호를 AND 게이트(4)에 통과시킨 것을 접속한다.
상승 인에이블 신호와 하강 인에이블 신호는, 클록 신호에 동기하여 인에이블 생성 회로(10)가 생성하는 펄스열이고, 상세는 후술한다. 인에이블 생성 회로(10)와 이상 검출 회로(20)에는, 클록 버퍼(1, 2)를 통해서, 외부로부터 클록 신호가 공급된다.
다음으로, 도 1의 회로 구성에 있어서, 클록 신호에 오류가 삽입된 경우의 거동에 대하여 설명한다. 오류는, 클록 버퍼(1, 2), 또는 그 양쪽에서 생길 가능성이 있다. 클록 버퍼(1)에 스파이크가 삽입된 경우에는, AND 게이트(3, 4)에 의해 저지할 수 있을 가능성이 있다.
한편, 클록 버퍼(2)에 스파이크가 삽입된 경우에는, 이상 검출 회로(20)에 의해 검출 가능하다. 이상의 저지ㆍ검출 방법의 상세는 후술한다. 또, 클록 버퍼(1, 2)의 양쪽에, 동시에 오류가 생긴 경우도, 각각 동일한 이상 검출이 가능하다.
도 2는 본 발명의 실시의 형태 1에 있어서의 인에이블 생성 회로(10)의 내부 구성과 동작을 설명하기 위한 도면이다. 인에이블 생성 회로(10)는, 레지스터(11, 12), 지연 회로(13, 14), 및 XOR 게이트(15, 16)로 구성되어 있다. 그리고, 이와 같은 구성을 구비한 인에이블 생성 회로(10)는, 외부로부터 클록 신호를 받아서, 상승 인에이블 신호와 하강 인에이블 신호를 출력한다.
도 2의 하단의 타이밍 차트에 나타내는 바와 같이, 상승 인에이블 신호와 하강 인에이블 신호는, 클록과 동기한 펄스열이다. 이후에서는, 양쪽의 인에이블 신호가 함께 로우(low)인 구간을 무효 구간, 어느 한쪽의 인에이블 신호가 하이(high)인 구간을 유효 구간이라고 부르기로 한다. 무효 구간ㆍ유효 구간의 비율은, 지연 회로(13, 14)에 의한 지연 시간에 의해 제어된다. 지연 회로(13, 14)는, 도 2에 나타낸 바와 같이, 버퍼를 종렬 접속하여 구성할 수 있다.
그때, 접속하는 버퍼의 단수에 의해, 지연 시간을 설계할 수 있다. 지연 시간은, 다음의 요건에 따라서 설계한다. 우선, 무효 구간은, 보호 대상 회로(30)의 최대 지연 시간보다 크게 한다. 또한, 유효 구간은, 가능한 한 짧게 설계한다. 무효 구간이 보호 대상 회로(30)의 최대 지연 시간보다 큰 것에 의해, 보호 대상 회로(30)의 연산 완료 후에 유효 구간이 도래하는 것이 보증된다.
도 2의 회로는, 적은 회로 소자로 구성 가능한 점을 특징으로 하지만, 적용처의 회로에 따라서는, 별도의 용도를 위한 가변 지연 회로를 갖는 경우가 있다. 그 경우는, 가변 지연 회로에 의해 인에이블 생성 회로(10)를 대체할 수도 있다.
다음으로, 도 1의 클록 버퍼(1)에 오류가 생겼을 때의 동작에 대하여, 더 상세하게 설명한다. 도 3은 본 발명의 실시의 형태 1에 있어서의 클록 버퍼(1)에 오류가 생겼을 때의 설명도이다. 있을 수 있는 거동은, 2종류로 분류된다. 즉, 인에이블이 로우인 구간(무효 기간)에 스파이크가 삽입되는 경우와, 인에이블이 하이인 구간(유효 기간)에 스파이크가 삽입되는 경우이다.
우선, 무효 기간에 도시한 스파이크가 도입된 경우를 생각한다. 그 시점에서는, 상승 인에이블 신호는 도달하고 있지 않기 때문에, AND 게이트(3)의 출력(신호 A) 또는 AND 게이트(4)의 출력(신호 B)은, 로우인 채이다. 그 때문에, 도입된 스파이크는, AND 게이트(3, 4)의 출력에는 전파하지 않고, 소멸한다. 결과적으로, 오류 삽입은 무시되어, 계산 오류는 생기지 않는다.
다음으로, 유효 기간에 스파이크가 도입된 경우를 생각한다. 그 경우, 삽입된 클록은, AND 게이트(3, 4)에서 저지되지 않기 때문에, 스파이크는, 보호 대상 회로(30)에 도달한다. 그와 같은 스파이크는, 보호 대상 회로(30)의 타이밍 위반을 일으켜, 결과적으로, 오류 삽입이 성공하여 버린다.
그렇지만, 유효 기간을 가능한 한 작게 설계하는 것에 의해, 스파이크 도입의 정밀한 타이밍 조작을 요하는 공격(예 : 고장 감도 해석)의 실행을 곤란하게 할 수 있다. 또한, 이와 같은 유효 기간 중의 스파이크 삽입을 검출하고 싶은 경우의 대책에 대해서는, 후술하는 실시의 형태 2에 있어서 상세하게 설명한다.
도 4는 본 발명의 실시의 형태 1에 있어서의 이상 검출 회로(20)의 내부 구성과 동작을 나타내는 도면이다. 본 실시의 형태 1에 있어서의 이상 검출 회로(20)는, OR 게이트(21, 22), 레지스터(23, 24), AND 게이트(25, 26), 및 OR 게이트(27)를 포함하여 구성되어 있다. 그리고, 이상 검출 회로(20)는, 상승 인에이블 신호, 하강 인에이블 신호, 및 클록 신호를 받아서, 그들의 비교 결과에 근거하여, 경보 신호를 출력한다.
이상 검출은, 도 4의 하단에 나타낸 제약 조건의 표에 근거하여 행한다. 표 중, 정상계는 ○, 이상계는 ×로 나타내고 있다. 즉, ×가 붙은 입력은, 오류가 삽입된 경우에만 생긴다. 그 때문에, ×가 붙은 입력을 검출하는 것에 의해, 이상 입력을 검출할 수 있다. 도 4에 나타낸 이상 검출 회로(20)는, 그와 같은 검출 동작을 행하는 회로 구성의 일례이다.
또, 도 4에 나타내는 OR 게이트(21, 22)를 이용한 구성법은, 실장의 일례이고, 동등한 능력을 갖는 다른 논리 회로로도 대체할 수 있다. 또한, 레지스터(23, 24)의 출력은, 리셋시에 로우로 세트되고, 이상이 없는 한, 로우를 계속 유지한다. 이상계에서는, OR 게이트(21, 22)의 출력은 1이 되고, 그 값이 레지스터(23, 24)에 받아들여진다.
또, 레지스터(23, 24)의 출력은, 게이트(25, 26)를 통해서 레지스터(23, 24)의 클록 포트에 피드백되고 있다. 이 피드백에 의해, 레지스터(23, 24)는, 일단 하이가 받아들여지면, 리셋하지 않는 한 1을 계속 유지한다. 그 결과, 경보 신호는, 오류가 생겼을 때에 하이로 세트되고, 또한 리셋 입력을 받을 때까지 하이를 유지한다. 이 성질에 의해, 다중 오류에 의해 이상 검출 회로(20)가 오검출하여 버리는 것이 방지된다.
이상과 같이, 실시의 형태 1에 의하면, 인에이블 생성 회로에 있어서 생성된 인에이블 신호와, 클록 신호로부터, 무효 기간에 도입된 스파이크를 검출 가능한 이상 검출 회로를 구비하고 있다. 또한, 유효 기간을 가능한 한 작게 설계하는 것에 의해, 스파이크 도입의 정밀한 타이밍 조작을 요하는 공격의 실행을 곤란하게 하는 것이 가능하게 된다. 이 결과, 국소적인 클록 이상을 검출 가능한 반도체 장치를 실현할 수 있다.
실시의 형태 2.
본 실시의 형태 2에서는, 유효 기간 중의 스파이크 삽입을 검출할 수 있는 반도체 장치의 구체적인 구성에 대하여 설명한다.
도 5는 본 발명의 실시의 형태 2에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다. 본 실시의 형태 2에 있어서의 도 5의 구성은, 앞의 도 1에 나타낸 실시의 형태 1의 구성에 대하여, 이상 검출 회로(40)(제 2 이상 검출 회로에 상당)를 추가한 것으로 되어 있다. 이와 같이 이상 검출 회로(20, 40)를 복수 갖는 것에 의해, 국소적인 클록 이상 대책의 효과를 높일 수 있다. 구체적으로는, 이상 검출 회로(40)의 추가에 의해, 앞의 도 3에서 설명한 유효 기간 중의 스파이크도 검출할 수 있게 된다.
도 5의 하단에 나타낸 타이밍 차트를 이용하여, 유효 기간에 스파이크가 도입된 경우의, 본 실시의 형태 2에 있어서의 반도체 장치의 동작에 대하여 설명한다. 유효 기간에 도입된 스파이크는, 앞의 도 4에 나타낸 제약 조건의 표에 있어서의 ×의 입력 상태에 해당한다. 그 때문에, 클록 버퍼(1)(제 2 클록 버퍼에 상당)에 납입된 스파이크가, 유효 기간 내인 경우에도, 이상 검출 회로(40)에 의해, 검출이 가능하게 된다. 이상 검출 회로(40)의 출력인 경보 신호를 적절히 처리하는 것에 의해, 오류 삽입의 난이도를 높일 뿐만 아니라, 불가능하게 할 수 있다.
이상과 같이, 실시의 형태 2에 의하면, 인에이블 생성 회로에 있어서 생성된 인에이블 신호와, 인에이블 생성 회로에는 공급되지 않는 클록 신호로부터, 유효 기간에 도입된 스파이크를 검출 가능한 제 2 이상 검출 회로를 구비하고 있다. 이 결과, 국소적인 클록 이상 검출의 효과를, 앞의 실시의 형태 1보다 높이는 것이 가능한 반도체 장치를 실현할 수 있다.
실시의 형태 3.
본 실시의 형태 3에서는, 이상 검출 회로(20)(혹은 이상 검출 회로(40))의 출력인 경보 신호를, 보호 대상 회로(30)에 주는 인에이블 신호에 반영시키는 경우에 대하여 설명한다.
도 6은 본 발명의 실시의 형태 3에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다. 본 실시의 형태 3은, 경보 신호의 사용 방법의 일례를 나타내는 것이다. 도 6에 나타내는 본 실시의 형태 3의 구성에서는, 이상 검출 회로(20)(40)에, AND 게이트(5, 6)가 추가되어 있다.
AND 게이트(5, 6)는, 입력의 상승ㆍ하강 인에이블 신호를, 이상 검출 회로(20)(40)가 출력한 경보 신호로 마스킹한다. 이상 검출 회로(20)(40)가 이상을 검출한 경우, 경보 신호는, 하이로 고정된다. 그러면, AND 게이트(5, 6)의 출력인 상승 인에이블 신호'와 하강 인에이블 신호'는, 제로로 고정된다. 그 결과, 상승 인에이블 신호'와 하강 인에이블 신호'로 마스킹한 클록으로 동작하는 보호 대상 회로(30)는, 이상 검출 회로(20)(40)에 의한 이상 검출 후는, 값을 받아들일 수 없게 된다.
이 결과, 이상 검출 회로(20)(40)와 보호 대상 회로(30)는, 다시 리셋이 투입될 때까지 동작을 정지한다. 그것에 의해, 보호 대상 회로(30)의 자동 정지가 달성된다. 이와 같이, 본 실시의 형태 3에 의해, 이상 검출 회로(20)(40)가 출력하는 경보 신호를, 적은 회로(AND 게이트(5, 6))만으로 유효하게 이용할 수 있다.
이상과 같이, 실시의 형태 3에 의하면, 간단한 회로 구성에 의해, 이상 검출 회로에 의해 생성되는 경보 신호를 이용하여, 보호 대상 회로에 주는 인에이블 신호를 마스킹할 수 있는 구성을 구비하고 있다. 이 결과, 클록 신호에 대하여 스파이크가 삽입되었을 때에, 보호 대상 회로를 자동 정지시키는 것이 가능하게 된다.
실시의 형태 4.
본 실시의 형태 4에서는, 이상 검출 회로(20)를 다중화하는 것에 의해, 국소적인 클록 이상 대책의 효과를 보다 높이는 경우에 대하여 설명한다.
도 7은 본 발명의 실시의 형태 4에 있어서의 반도체 장치의 일 구성을 설명하는 도면이다. 본 실시의 형태 4에 있어서의 도 7의 구성은, 앞의 도 1에 나타낸 실시의 형태 1의 구성, 혹은 앞의 도 5에 나타낸 실시의 형태 2의 구성에 있어서, 이상 검출 회로(20)를 다중화한 경우에 상당한다.
본 실시의 형태 4에 있어서의 이상 검출 회로군(20a)은, 복수의 이상 검출 회로((20)(1)~20(N))로 구성되어 있다(N은, 2 이상의 정수). 앞의 실시의 형태 1~3에서 설명한 이상 검출 회로(20)는, 이상 상태를 검출하여, 그 결과를 레지스터에 저장한다. 그 때문에, 레지스터를 직접 변경하는 공격자이면, 그 결과를 무효화할 수 있을 가능성이 있다. 그에 비하여, 본 실시의 형태 4에서는, 이상 검출 회로군(20a)이, 복수의 이상 검출 회로((20)(1)~20(N))를 갖고 있어, 이상 검출 회로(20)가 다중화된 구성으로 되어 있다. 이 결과, 공격자는, 그 모든 이상 검출 회로에서 오류를 발생시킬 필요가 생겨, 결과적으로, 공격의 난이도를 높일 수 있다.
이상과 같이, 실시의 형태 4에 의하면, 이상 검출 회로를 다중화한 구성을 구비하고 있다. 이 결과, 레지스터를 직접 변경하는 공격자에 대해서도, 공격의 난이도를 높일 수 있고, 국소적인 클록 이상을 검출 가능한 반도체 장치를 얻을 수 있는 것과 아울러, 그 신뢰성을 향상시킬 수 있다.
또, 본 발명은, 양 에지에서 사용 가능하지만, 상승 인에이블 신호만을 이용하는 것에 의해, 한쪽 에지밖에 이용하지 않는 시스템에도 적용 가능하다. 그것에 의해, 1종류의 회로로, 복수의 보호 대상을 보호할 수 있다.
또한, 보호 대상 회로(30) 내에는, 폴트 공격의 대책으로서, 검산 기능을 갖게 할 수 있다.

Claims (6)

  1. 클록 신호에 동기한 펄스열인 인에이블 신호를 생성하고, 보호 대상 회로에 대하여 상기 인에이블 신호를 공급하는 인에이블 생성 회로와,
    상기 클록 신호와 상기 인에이블 생성 회로에서 생성된 상기 인에이블 신호의 비교에 근거하여, 상기 클록 신호에 대하여 스파이크가 도입된 것에 기인하는 클록 타이밍의 이상을 검출하는 제 1 이상 검출 회로
    를 구비하는 반도체 장치.
  2. 제 1 항에 있어서,
    상기 인에이블 생성 회로는, 레지스터와 지연 회로를 포함하여 구성되고, 입력한 상기 클록 신호에 동기하여, 소망하는 펄스폭을 갖는 펄스열로서 상기 인에이블 신호를 생성하는 반도체 장치.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 이상 검출 회로는, 상기 클록 타이밍의 이상을 검출했을 때에는, 리셋 신호를 수신할 때까지 이상 상태를 유지하는 경보 신호를 출력하는 반도체 장치.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 인에이블 발생 회로에 상기 클록 신호를 공급하기 위한 제 1 클록 버퍼와,
    상기 클록 신호를 공급하기 위해, 상기 제 1 클록 버퍼와 병렬로 마련된 제 2 클록 버퍼와,
    상기 제 2 클록 버퍼로부터 출력된 클록 신호와, 상기 인에이블 생성 회로에서 생성된 상기 인에이블 신호의 비교에 근거하여, 상기 제 2 클록 버퍼를 경유한 클록 신호에 대하여 스파이크가 도입된 것에 기인하는 클록 타이밍의 이상을 검출하는 제 2 이상 검출 회로
    를 더 구비하는 반도체 장치.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 제 1 이상 검출 회로는, 상기 클록 타이밍의 이상을 검출하는 회로가 다중화되어 구성되어 있는 반도체 장치.
  6. 제 3 항에 있어서,
    상기 인에이블 생성 회로에서 생성된 상기 인에이블 신호와, 상기 제 1 이상 검출 회로에서 생성된 상기 경보 신호의 논리곱에 의해 상기 보호 대상 회로에 공급하는 인에이블 신호를 출력하고, 상기 이상 상태가 유지되고 있는 동안은, 보호 대상 회로에 대하여 공급하는 상기 인에이블 신호를 정지시키는 AND 회로를 더 구비하는 반도체 장치.
KR1020167003754A 2013-07-16 2013-07-16 반도체 장치 KR20160031533A (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/069320 WO2015008335A1 (ja) 2013-07-16 2013-07-16 半導体装置

Publications (1)

Publication Number Publication Date
KR20160031533A true KR20160031533A (ko) 2016-03-22

Family

ID=52345831

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167003754A KR20160031533A (ko) 2013-07-16 2013-07-16 반도체 장치

Country Status (7)

Country Link
US (1) US20160253524A1 (ko)
EP (1) EP3024171A4 (ko)
JP (1) JP5976220B2 (ko)
KR (1) KR20160031533A (ko)
CN (1) CN105379174B (ko)
TW (1) TWI516981B (ko)
WO (1) WO2015008335A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7001026B2 (ja) 2018-09-05 2022-01-19 株式会社デンソー 車両用通信装置
US11321457B2 (en) * 2019-09-16 2022-05-03 Nuvoton Technology Corporation Data-sampling integrity check by sampling using flip-flops with relative delay
JP7366822B2 (ja) 2020-03-30 2023-10-23 ダイハツ工業株式会社 樹脂外板の接着構造
CN112069763B (zh) * 2020-09-29 2022-11-29 上海兆芯集成电路有限公司 修正电路的方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63310211A (ja) 1987-06-12 1988-12-19 Nec Corp クロック障害検出回路
EP1926241A3 (en) * 1998-06-03 2009-03-11 Cryptography Research Inc. Using unpredictable information to minimize leakage from smartcards and other cryptosystems
US6553496B1 (en) * 1999-02-01 2003-04-22 Koninklijke Philips Electronics N.V. Integration of security modules on an integrated circuit
FR2811164B1 (fr) * 2000-06-30 2003-08-29 St Microelectronics Sa Circuit integre avec dispositif de protection
JP4497874B2 (ja) 2002-12-13 2010-07-07 株式会社ルネサステクノロジ 半導体集積回路及びicカード
JP4748929B2 (ja) * 2003-08-28 2011-08-17 パナソニック株式会社 保護回路および半導体装置
CN100406689C (zh) * 2004-04-27 2008-07-30 三菱扶桑卡客车公司 内燃机的可变气门机构
JP2009027472A (ja) * 2007-07-19 2009-02-05 Toshiba Corp 暗号演算装置
CN101276298B (zh) * 2008-04-01 2010-06-02 中国科学院计算技术研究所 一种fpga电路故障检测装置
JP5164154B2 (ja) 2008-05-19 2013-03-13 独立行政法人産業技術総合研究所 誤り検出機能を備える、符号化又は復号処理のための回路構成
US7999559B2 (en) * 2008-12-29 2011-08-16 Infineon Technologies Ag Digital fault detection circuit and method
EP2326042B1 (fr) * 2009-11-18 2013-04-03 STMicroelectronics (Rousset) SAS Procédé de détection d'une attaque par injection de fautes
EP2369622B1 (fr) * 2010-03-24 2015-10-14 STMicroelectronics Rousset SAS Procédé et dispositif de contremesure contre une attaque par injection d'erreur dans un microcircuit électronique
KR101977733B1 (ko) * 2012-07-12 2019-05-13 삼성전자주식회사 오류 기반 공격의 검출 방법

Also Published As

Publication number Publication date
WO2015008335A1 (ja) 2015-01-22
EP3024171A4 (en) 2017-03-08
TW201504846A (zh) 2015-02-01
CN105379174A (zh) 2016-03-02
JP5976220B2 (ja) 2016-08-23
CN105379174B (zh) 2018-09-28
US20160253524A1 (en) 2016-09-01
TWI516981B (zh) 2016-01-11
EP3024171A1 (en) 2016-05-25
JPWO2015008335A1 (ja) 2017-03-02

Similar Documents

Publication Publication Date Title
Lin et al. Trojan side-channels: Lightweight hardware trojans through side-channel engineering
US9523736B2 (en) Detection of fault injection attacks using high-fanout networks
Francq et al. Introduction to hardware Trojan detection methods
Jacob et al. Hardware Trojans: current challenges and approaches
Contreras et al. Security vulnerability analysis of design-for-test exploits for asset protection in SoCs
US10013581B2 (en) Detection of fault injection attacks
US7590880B1 (en) Circuitry and method for detecting and protecting against over-clocking attacks
Cui et al. A new PUF based lock and key solution for secure in-field testing of cryptographic chips
KR20160031533A (ko) 반도체 장치
Al-Anwar et al. Hardware Trojan detection methodology for FPGA
Bedoui et al. An improvement of both security and reliability for AES implementations
Bartkewitz et al. Beware of insufficient redundancy: an experimental evaluation of code-based FI countermeasures
Saß et al. Oops..! I Glitched It Again! How to {Multi-Glitch} the {Glitching-Protections} on {ARM}{TrustZone-M}
Igarashi et al. Concurrent faulty clock detection for crypto circuits against clock glitch based DFA
Dofe et al. Strengthening SIMON implementation against intelligent fault attacks
US11636227B2 (en) Protection against fault attacks by duplication
Wang et al. Hardware trojan detection and high-precision localization in noc-based mpsoc using machine learning
Guo et al. EOP: An encryption-obfuscation solution for protecting PCBs against tampering and reverse engineering
Oya et al. In-situ Trojan authentication for invalidating hardware-Trojan functions
Moratelli et al. A cryptography core tolerant to DFA fault attacks
Loubet-Moundi et al. Static fault attacks on hardware des registers
Gbade-Alabi et al. A signature based architecture for Trojan detection
Köylü et al. Exploiting PUF variation to detect fault injection attacks
Shao et al. Fast and automatic security test on cryptographic ICs against fault injection attacks based on design for security test
Breier et al. Introduction to fault analysis in cryptography

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application