KR20120055218A - Apparatus for fault analysis for a security processor - Google Patents

Apparatus for fault analysis for a security processor Download PDF

Info

Publication number
KR20120055218A
KR20120055218A KR1020100116826A KR20100116826A KR20120055218A KR 20120055218 A KR20120055218 A KR 20120055218A KR 1020100116826 A KR1020100116826 A KR 1020100116826A KR 20100116826 A KR20100116826 A KR 20100116826A KR 20120055218 A KR20120055218 A KR 20120055218A
Authority
KR
South Korea
Prior art keywords
security processor
power
clock
error
control module
Prior art date
Application number
KR1020100116826A
Other languages
Korean (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 KR1020100116826A priority Critical patent/KR20120055218A/en
Publication of KR20120055218A publication Critical patent/KR20120055218A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

PURPOSE: An erroneous input sub channel analysis test device of a security processor is provided to supply a power and clock module, thereby easily testing erroneous input of the security processor. CONSTITUTION: A control unit(210) receives an erroneous input test setting value from an analysis system(110). The control unit generates a power control signal and a clock control signal. The control unit inputs an error about a security processor(240). A power control module(220) supplies normal power or erroneously input power to the security processor. A clock control module(230) supplies a normal clock and an erroneously input clock to the security processor.

Description

보안 프로세서의 오류 주입 부채널 분석 시험 장치{APPARATUS FOR FAULT ANALYSIS FOR A SECURITY PROCESSOR}Error injection side channel analysis test device of security processor {APPARATUS FOR FAULT ANALYSIS FOR A SECURITY PROCESSOR}

본 발명은 오류 주입 시험 장치에 관한 것으로, 더욱 상세하게는 다양한 보안 프로세서에 범용적으로 적용가능하며, 오류주입 기능을 쉽게 구현 테스트할 수 있는 보안 프로세서의 오류 주입 부채널 분석 시험 장치에 관한 것이다.The present invention relates to an error injection test apparatus, and more particularly, to an error injection subchannel analysis test apparatus of a security processor that can be universally applied to various security processors and can easily implement and test an error injection function.

정보화 사회의 도래와 함께, 암호 알고리즘 및 암호 프로토콜을 이용한 정보의 보호는 그 중요성을 더해가고 있다. 부채널 공격(Side Channel Attack)은 암호 알고리즘에 대한 강력한 공격 기법 중의 하나이다. 때문에, 부채널 분석 기술은 점차 보안 제품에 대한 커다란 위협 요소가 되고 있다.With the advent of the information society, the protection of information using cryptographic algorithms and cryptographic protocols is increasing in importance. Side Channel Attack is one of the powerful attack techniques for cryptographic algorithms. Because of this, side-channel analytics is becoming a huge threat to security products.

부채널 분석 기술은 통신상의 실행시간, 전력 소비, 전자기파 방사 등의 물리적 특성을 측정하며, 내부 암호 키에 관련된 정보를 부채널에서 얻는 것이다. 다시말해서, 부채널 분석 기술 중 하나는 보안 프로세서 동작 시 발생하는 전력이나 전자기파 신호를 이용하는데, 점차 임의로 오류를 프로세서 내에 주입시켜 오동작을 유발시키고, 이때 발생하는 부가 정보와 결과를 이용하여 부채널 분석을 수행하는 기술이 개발되고 있다.The subchannel analysis technique measures physical characteristics such as communication execution time, power consumption, and electromagnetic radiation, and obtains information related to the internal encryption key from the subchannel. In other words, one of the sub-channel analysis techniques uses power or electromagnetic signals generated during the operation of a secure processor, and gradually injects an error into the processor to cause a malfunction, and analyzes the sub-channel using additional information and results generated at this time. Techniques for doing this are being developed.

그러나, 보안 프로세서가 동작하는 범위 내에서 오동작을 유발시키는 오류 주입은 매우 어려움이 있으며, 특히 범용적으로 사용가능한 장치 구현에는 어려움이 있다. However, error injection that causes a malfunction within the range in which the secure processor operates is very difficult, and in particular, there is a difficulty in implementing a universally usable device.

상기와 같은 문제점을 해결하기 위한 것으로서, 본 발명의 목적은 전원 제어와 클럭 제어를 통해 오류 주입 기능을 쉽게 구현할 수 있을 뿐만 아니라 오류 주입에 따라 부채널 분석이 가능한 보안 프로세서의 오류 주입 부채널 분석 시험 장치를 제공하는데 있다.In order to solve the above problems, an object of the present invention is not only to easily implement the error injection function through the power control and clock control, but also the error injection subchannel analysis test of the security processor capable of performing subchannel analysis according to the error injection. To provide a device.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The object of the present invention is not limited to the above-mentioned object, and other objects which are not mentioned will be clearly understood by those skilled in the art from the following description.

본 발명의 일 측면에 따르면, 본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치는 암호 연산 동작을 수행하는 보안 프로세서를 구비하는 보안 프로세서의 오류 주입 부채널 분석 시험 장치로서, 분석 시스템으로부터 전원과 클럭으로 이루어진 오류 주입 시험 설정값을 입력받아 전원 제어 신호와 클럭 제어 신호를 발생시키며, 상기 보안 프로세서에 대한 오류를 입력하는 제어부와, 상기 전원 제어 신호에 따라 정상 전원 또는 오류 주입된 전원을 상기 보안 프로세서에 제공하는 전원 제어 모듈과, 상기 쿨럭 제어 신호에 따라 정상 클럭 또는 오류 주입된 클럭을 상기 보안 프로세서에 제공하는 클럭 제어 모듈을 포함하며, 상기 제어부는, 상기 클럭 제어 모듈 및 전원 제어 모듈에서 제공받은 클럭 및 전원에 따라 상기 보안 프로세서가 암호 연산을 수행할 경우 상기 보안 프로세서에 오류를 입력시키며, 상기 오류의 입력에 따라 상기 보안 프로세서가 동작할 때의 상기 보안 프로세서의 암호 연산 결과를 상기 분석 시스템에 제공하는 것을 특징으로 한다.According to an aspect of the present invention, an error injection subchannel analysis test apparatus of a security processor according to an embodiment of the present invention is an error injection subchannel analysis test apparatus of a security processor including a security processor that performs a cryptographic operation. The control unit inputs an error injection test set value consisting of a power and a clock from a system to generate a power control signal and a clock control signal, and inputs an error to the security processor, and a normal power or error injection according to the power control signal. A power control module for supplying power to the security processor, and a clock control module for providing a normal clock or an error-injected clock to the security processor in accordance with the cool-lock control signal, wherein the control unit comprises: the clock control module and the power supply; The security according to the clock and power provided from the control module When the processor performs a cryptographic operation, an error is input to the security processor, and the cryptographic operation result of the security processor when the security processor operates according to the input of the error is provided to the analysis system.

본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치에서 상기 전원 제어 모듈은, 상기 전원 제어 신호에 의거하여 저항이 변경되는 가변 저항부와, 상기 저항의 변경에 따라 가변된 전원을 공급하는 전원 레귤레이터를 포함하는 것을 특징으로 한다.In the error injection subchannel analysis test apparatus of the security processor according to an embodiment of the present invention, the power control module may include a variable resistor unit whose resistance is changed based on the power control signal, and a power source variable according to the change of the resistance. It characterized in that it comprises a power supply regulator for supplying.

본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치에서 상기 전원 제어 모듈은, 상기 가변 저항부와 연결되어 상기 전원 제어 신호에 따라 임펄스 전압을 발생시켜 상기 전원 레귤레이터에 제공하는 파워 부스트 변환부를 포함하는 것을 특징으로 한다.In the error injection subchannel analysis test apparatus of the security processor according to an embodiment of the present invention, the power control module is connected to the variable resistor unit to generate an impulse voltage according to the power control signal to provide a power boost to the power regulator It characterized in that it comprises a conversion unit.

본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치에서 상기 클럭 제어 모듈은, 상기 정상 클럭을 생성하는 오실레이터와, 상기 오류 주입 클럭인 가변 클럭을 생성하는 가변 오실레이터와, 상기 클럭 신호 신호에 따라 스위칭 동작하여 상기 정상 클럭 또는 가변 클럭을 출력하는 스위치를 포함하는 것을 특징으로 한다.In the error injection subchannel analysis test apparatus of the security processor according to an embodiment of the present invention, the clock control module includes an oscillator for generating the normal clock, a variable oscillator for generating a variable clock that is the error injection clock, and the clock signal. And a switch for outputting the normal clock or the variable clock by switching according to a signal.

본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치에서 상기 클럭 제어 모듈은, 상기 클럭 제어 신호에 따라 저항이 가변되는 가변 저항부와, 상기 가변 저항부의 가변된 저항에 따라 임펄스를 발생시키는 파워 부스트 변환부와, 상기 파워 부스트 변환부의 임펄스를 상기 클럭 제어 모듈에서 발생되는 클럭에 추가시켜 출력하는 다이오드를 포함하는 것을 특징으로 한다.In the error injection subchannel analysis test apparatus of the security processor according to an embodiment of the present invention, the clock control module may include a variable resistor unit whose resistance is changed according to the clock control signal, and an impulse according to the variable resistor of the variable resistor unit. And a diode for generating a power boost converter and adding an impulse of the power boost converter to a clock generated by the clock control module.

본 발명은 전원 및 클럭 모듈을 제공하여 보안 프로세서의 오류주입 테스트를 용이하게 수행할 수 있도록 하며, 이를 이용한 오류주입 시험 절차를 제공할 수 있을 뿐만 아니라 오류주입 시험 장치와 전원 측정 모듈을 모두 구현함으로서 보다 복잡하고 정교한 부채널 분석 시험을 가능하게 한다. The present invention provides a power supply and a clock module to easily perform an error injection test of the security processor, and can provide an error injection test procedure using the same, as well as implementing both an error injection test apparatus and a power measurement module. This allows for more complex and sophisticated subchannel analysis tests.

도 1은 본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치와 그 주변 구성을 도시한 블록도,
도 2는 본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치의 전원 제어 모듈의 세부 구성을 도시한 블록도,
도 3은 본 발명의 실시 예에 따른 전원 제어 모듈에서 출력되는 임펄스를 제어하기 위한 구성을 도시한 블록도,
도 4는 본 발명의 실시 예에 따른 클럭 제어 모듈의 세부 구성을 도시한 블록도,
도 5는 본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치를 이용하여 부채널을 분석하는 과정을 도시한 흐름도이다.
1 is a block diagram illustrating an error injection subchannel analysis test apparatus and its peripheral configuration of a security processor according to an embodiment of the present invention;
2 is a block diagram illustrating a detailed configuration of a power control module of an error injection subchannel analysis test apparatus of a security processor according to an embodiment of the present invention;
3 is a block diagram illustrating a configuration for controlling an impulse output from a power supply control module according to an embodiment of the present disclosure;
4 is a block diagram showing a detailed configuration of a clock control module according to an embodiment of the present invention;
5 is a flowchart illustrating a process of analyzing a subchannel using an error injection subchannel analysis test apparatus of a security processor according to an exemplary embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention, and methods for achieving them will be apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions in the embodiments of the present invention, which may vary depending on the intention of the user, the intention or the custom of the operator. Therefore, the definition should be based on the contents throughout this specification.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Each block of the accompanying block diagrams and combinations of steps of the flowchart may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that instructions executed through the processor of the computer or other programmable data processing equipment may not be included in each block or flowchart of the block diagram. It will create means for performing the functions described in each step. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in each block or flowchart of each step of the block diagram. Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions that perform processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions mentioned in the blocks or steps may occur out of order. For example, the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.

이하, 첨부된 도면을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;

도 1은 본 발명의 실시 예에 따른 보안 프로세서의 오류 주입 부채널 분석 시험 장치와 그 주변 구성을 도시한 블록도로서, 크게 분석 시스템(100), 오류 주입 시험 장치(200) 및 파형 측정 시스템(300) 등을 포함할 수 있다.1 is a block diagram illustrating an error injection subchannel analysis test apparatus and a peripheral configuration of a security processor according to an exemplary embodiment of the present invention. The analysis system 100, the error injection test apparatus 200, and a waveform measurement system ( 300) and the like.

분석 시스템(100)은 오류 주입 시험 설정 값, 암호 연산 제어 및 데이터를 오류 주입 시험 장치(200)에 제공하고, 파형 측정 시스템(300)으로부터 파형 측정 데이터를 제공받아 우류 주입 분석을 수행할 수 있다. 여기에서, 오류 주입 시험 설정 값은 크게 전원과 클럭으로 구분될 수 있는데, 전원은 임펄스, VDD 내에서 가변, 차단 등의 기능과 각 기능들의 동작 시작 시점과 동작 구간 등을 설정하는데 이용되며, 클럭은 동작 주파수 가변과 주파수 내에서 고임펄스 등의 기능과 각 기능들의 동작 시작 시점과 동작 구간 등을 설정하는데 이용될 수 있다.The analysis system 100 may provide the error injection test set value, the cryptographic operation control, and the data to the error injection test apparatus 200, and receive the waveform measurement data from the waveform measurement system 300 to perform a rain injection analysis. . Here, the error injection test set value can be largely divided into a power supply and a clock. The power supply is used to set functions such as an impulse, a variable within a VDD, a cutoff, an operation start point and an operation interval of each function, and a clock. May be used to set a function such as a variable high frequency and a high impulse within a frequency, an operation start time and an operation period of each function.

이러한 분석 시스템(100)은 오류 주입 시험 설정 값 내의 전원과 클럭을 조절하여 오류 주입 시험 장치(200)에 제공한 후 오류 주입 시험 장치(200)로부터 출력되는 암호 연산 결과 데이터와 파형 측정 시스템(300)으로부터 제공받은 전력 파형 측정 데이터를 기반으로 부채널에 대한 오류 주입 분석을 수행할 수 있다.The analysis system 100 adjusts the power and the clock in the error injection test set value and provides the error injection test apparatus 200 to the error injection test apparatus 200 and outputs the cryptographic calculation result data and the waveform measurement system 300. The error injection analysis for the subchannels can be performed based on the power waveform measurement data provided from

오류 주입 시험 장치(200)는 오류 주입 시험 설정 값에 따라 전원과 클럭을 제어하여 암호 연산을 수행하며, 암호 연산이 수행될 때 오류 주입 시험 설정 값에 따라 오류를 입력한 후 오류 입력에 따른 암호 연산 결과 데이터를 분석 시스템(100)에 제공하는 것으로, 이를 위해 제어부(210), 전원 제어 모듈(220), 클럭 제어 모듈(230), 보안 프로세서(240) 및 전원 측정 모듈(250) 등으로 구성될 수 있다.The error injection test apparatus 200 performs an encryption operation by controlling a power and a clock according to the error injection test setting value, and inputs an error according to the error injection test setting value when the encryption operation is performed, and then the password according to the error input. The calculation result data is provided to the analysis system 100, and for this purpose, the controller 210, the power control module 220, the clock control module 230, the security processor 240, and the power measurement module 250 are configured. Can be.

제어부(210)는 테스트할 보안 프로세서(240)와 분석 시스템(100) 사이에 암호 연산에 필요한 데이터 및 제어 등의 통신을 수행하며, 오류 주입 시험 설정 값에 따라 전원 제어 모듈(220)과 클럭 제어 모듈(230)을 제어할 수 있다.The controller 210 performs communication such as data and control necessary for cryptographic operation between the security processor 240 to be tested and the analysis system 100, and controls the power control module 220 and the clock according to the error injection test setting value. Module 230 can be controlled.

전원 제어 모듈(220)은 보안 프로세서(240)에 정상 전원, 임펄스, 기변, 차단 등의 오류 주입된 전원을 공급하기 위한 것으로, 도 2에 도시된 바와 같이 가변 저항으로 이루어진 디지털 가변 저항부(222), 정상 전원(VDD)을 제공하기 위한 전원 레귤레이터(224), 임펄스 전원을 공급하기 위한 파워 부스트 변환부(226) 등을 포함할 수 있다.The power control module 220 is for supplying error-injected power such as normal power, impulse, variable voltage, and blocking to the security processor 240. As shown in FIG. 2, the digital variable resistor unit 222 made of a variable resistor. ), A power regulator 224 for providing a normal power supply (VDD), a power boost converter 226 for supplying an impulse power, and the like.

이러한 전원 제어 모듈(220)은 디지털 가변 저항부(222)의 가변 저항을 조절하여 정상적인 전원(VDD)을 보안 프로세서(240)에 제공하거나 가변 또는 차단된 전원(VDD)을 보안 프로세서(240)에 제공할 수 있다. 여기에서, 디지털 가변 저항부(222)의 가변 저항은 제어부(210)에 의해 제어될 수 있는데, 즉 오류 주입 시험 설정 값에 따라 가변 저항 값은 변경될 수 있다.The power control module 220 adjusts the variable resistance of the digital variable resistor unit 222 to provide a normal power source (VDD) to the security processor 240 or to provide a variable or blocked power source (VDD) to the security processor 240. Can provide. Here, the variable resistance of the digital variable resistor unit 222 may be controlled by the controller 210, that is, the variable resistor value may be changed according to the error injection test set value.

한편, 전원 제어 모듈(220)은 파워 부스트 변환부(226)를 이용하여 높은 임펄스 전원을 출력하며, 출력된 임펄스를 다이오드(D)를 통해 정상 전원(VDD)에 더해 출력함으로써, 임펄스가 오류 주입된 전원을 보안 프로세서(240)에 제공할 수 있다.On the other hand, the power control module 220 outputs a high impulse power by using the power boost converter 226, by outputting the output impulse to the normal power supply (VDD) through the diode (D), impulse injection error The supplied power to the security processor 240.

클럭 제어 모듈(230)은 가변 클럭이나 임펄스가 추가된 클럭을 생성한 후 이를 보안 프로세서(240)에 제공할 수 있다. 이러한 클럭 제어 모듈(230)은, 도 3에 도시된 바와 같이, 정상 클럭을 발생시키기 위한 오실레이터(232)와 가변 클럭을 발생시키기 위한 가변 오실레이터(234), 제어부(210)의 제어에 따라 스위칭 동작하는 스위치(236) 및 임펄스 클럭을 제공하기 위한 디지털 가변 저항부(237)와 파워 부스트 변환부(238) 등을 포함할 수 있다.The clock control module 230 may generate a clock to which a variable clock or an impulse is added and provide the clock to the security processor 240. As shown in FIG. 3, the clock control module 230 is switched according to the control of the oscillator 232 for generating a normal clock, the variable oscillator 234 for generating a variable clock, and the controller 210. The switch 236 may include a digital variable resistor 237, a power boost converter 238, and the like to provide an impulse clock.

클럭 제어 모듈(230)은 스위치(236)의 동작에 따라 오실레이터(232) 및 가변 오실레이터(234)의 출력 중 어느 하나를 선택하여 출력할 수 있다. 가변 클럭을 발생시키기 위한 가변 오실레이터(234)는 다수개의 오실레이터를 설치하여 이들을 스위치하거나 소켓 방식으로 오실레이터를 바꿔서 구현할 수 있다.The clock control module 230 may select and output any one of the outputs of the oscillator 232 and the variable oscillator 234 according to the operation of the switch 236. The variable oscillator 234 for generating a variable clock may be implemented by installing a plurality of oscillators and switching them or switching the oscillators in a socket manner.

한편, 클럭 제어 모듈(230)의 디지털 가변 저항부(237) 및 파워 부스트 변환부(238)를 제어하여 높은 임펄스 전원을 갖는 임펄스를 발생시킬 수 있으며, 이러한 임펄스는 다이오드(D)에 의해 클럭과 더해져서 보안 프로세서(240)에 제공될 수 있다.Meanwhile, the digital variable resistor 237 and the power boost converter 238 of the clock control module 230 may be controlled to generate an impulse having a high impulse power supply. In addition, it may be provided to the security processor 240.

보안 프로세서(240)는 전원 제어 모듈(220) 및 클럭 제어 모듈(230)에서 출력되는 전원 및 클럭에 따라 암호 동작을 수행하며, 암호 연산 결과 데이터를 제어부(210)에 제공할 수 있다. The security processor 240 performs an encryption operation according to the power and the clock output from the power control module 220 and the clock control module 230, and may provide the encryption operation result data to the controller 210.

전원 측정 모듈(250)은 보안 프로세서(240)가 암호 동작을 수행할 때 전력과 암호 동작 시 오류 주입에 따른 전력을 측정하여 파형 분석 시스템(100)에 제공할 수 있다.The power measurement module 250 may measure the power when the security processor 240 performs the cryptographic operation and the power according to the error injection during the cryptographic operation to provide the waveform analysis system 100.

파형 분석 시스템(100)은 전원 측정 모듈(250)에서 측정된 전력을 분석하여 전력 파형 데이터를 생성한 후 이를 분석 시스템(100)에 제공할 수 있다.The waveform analysis system 100 may generate the power waveform data by analyzing the power measured by the power measurement module 250 and provide the generated power waveform data to the analysis system 100.

상기와 같은 구성을 갖는 오류 주입 시험 장치가 동작하는 과정에 대해 도 4을 참조하여 설명한다.The operation of the error injection test apparatus having the above configuration will be described with reference to FIG. 4.

도 4는 본 발명의 실시 예에 따라 오류 주입 부채널 분석 시스템의 동작 과정을 도시한 흐름도이다.4 is a flowchart illustrating an operation of an error injection subchannel analysis system according to an exemplary embodiment of the present invention.

도 4에 도시된 바와 같이, 먼저 오류 주입 시험 장치(200)의 제어부(210)는 분석 시스템(100)에 의해서 생성된 오류 주입 시험 설정값을 제공받는다(S400).As shown in FIG. 4, first, the controller 210 of the error injection test apparatus 200 is provided with an error injection test set value generated by the analysis system 100 (S400).

그런 다음, 제어부(210)는 전원 제어 모듈(220)과 클럭 제어 모듈(230)의 제어를 통해 정상적인 전원과 정상 클럭을 발생시켜 보안 프로세서(240)를 동작시키며, 보안 프로세서(240)가 동작을 수행한 후 암호 연산 동작을 수행할 때 오류 주입 시험 설정값에 의거하여 전원 제어 모듈(220)과 클럭 제어 모듈(230)을 제어하여 오류 주입된 전원 및 클럭을 보안 프로세서(240)에 제공한다(S402). 여기에서, 보안 프로세서(240)는 동작 수행 후 암호 연산 동작을 시작할 때 소정의 트리거 신호를 제어부(210)에 제공할 수 있으며, 이러한 트리거 신호에 의거하여 제어부(210)는 오류 주입된 전원 및 클럭이 보안 프로세서(240)에 제공되도록 전원 제어 모듈(220)과 클럭 제어 모듈(230)을 제어할 수 있다.Thereafter, the controller 210 generates a normal power and a normal clock through the control of the power control module 220 and the clock control module 230 to operate the security processor 240, and the security processor 240 operates. After performing the cryptographic operation, the power control module 220 and the clock control module 230 are controlled based on the error injection test set value to provide the security processor 240 with the error injected power and clock ( S402). Here, the security processor 240 may provide a predetermined trigger signal to the controller 210 when the cryptographic operation is started after the operation is performed, and the controller 210 may supply an error-injected power and clock based on the trigger signal. The power control module 220 and the clock control module 230 may be controlled to be provided to the security processor 240.

본 발명의 실시 예에서는 오류 주입 시험 설정 값을 보안 프로세서(240) 동작 전에 제공받는 것으로 예를 들었지만, 보안 프로세서(240)를 정상 전원 및 클럭에 따라 동작시킨 후 보안 프로세서(240)로부터 트리거 신호가 수신될 때 분석 시스템(100)에 요청하여 제공받을 수도 있다.In an exemplary embodiment of the present invention, the error injection test set value is provided before the operation of the security processor 240. However, after the security processor 240 is operated according to a normal power source and a clock, a trigger signal from the security processor 240 is generated. When received, the request may be provided to the analysis system 100.

이후, 제어부(210)는 오류 주입 후 보안 프로세서(240)가 암호 연산 동작을 수행하는지의 여부를 판단한다(S404).Thereafter, the controller 210 determines whether the security processor 240 performs a cryptographic operation after error injection (S404).

S404의 판단 결과, 보안 프로세서(240)가 암호 연산 동작을 수행하는 경우 제어부(210)는 보안 프로세서(240)로부터 암호 연산에 따른 암호 연산 결과 데이터를 제공받아 분석 시스템(100)에 제공하고, 전원 측정 모듈(250)은 오류 주입에 따라 보안 프로세서(240) 동작 시 전력을 측정하여 파형 분석 시스템(100)에 제공한다(S406). 파형 분석 시스템(100)은 측정된 전력의 파형을 분석하여 분석 시스템(100)에 제공하며, 분석 시스템(100)은 암호 연산 결과 데이터와 전력의 파형을 근거하여 오류 주입에 따른 부채널을 분석(S408)할 수 있다.As a result of the determination in S404, when the security processor 240 performs the cryptographic operation, the controller 210 receives the cryptographic operation result data according to the cryptographic operation from the security processor 240, and provides the data to the analysis system 100. The measurement module 250 measures power during operation of the security processor 240 according to the error injection, and provides the measured power to the waveform analysis system 100 in operation S406. The waveform analysis system 100 analyzes the waveform of the measured power and provides it to the analysis system 100. The analysis system 100 analyzes the subchannels according to the error injection based on the encryption operation result data and the waveform of the power ( S408).

한편, S404의 판단 결과, 보안 프로세서(240)가 암호 연산 동작을 수행하지 않을 경우 제어부(210)는 오류 주입 시험 설정 값을 변경(S410)하여 보안 프로세서(240)에 제공하는데, 즉 변경된 오류 주입 시험 설정값에 따라 전원 제어 모듈(220)과 클럭 제어 모듈(230)을 제어하여 변경된 오류 주입 전원과 클럭을 보안 프로세서(240)에 제공한 후 S404로 진행하여 이후 단계를 수행한다.Meanwhile, as a result of the determination of S404, when the security processor 240 does not perform the cryptographic operation, the controller 210 changes the error injection test setting value (S410) and provides the security processor 240, that is, the changed error injection. After controlling the power control module 220 and the clock control module 230 according to the test setting value, the changed error injection power and the clock are provided to the security processor 240, and then the process proceeds to S404 to perform a subsequent step.

본 발명의 실시 예에 따르면, 전원 및 클럭 제어 모듈을 이용하여 보안 프로세서의 오류 주입 테스트를 용이하게 수행할 수 있도록 함으로서 보다 복잡하고 정교한 부채널 분석 시험을 수행할 수 있다.According to an embodiment of the present invention, the error injection test of the security processor can be easily performed by using the power supply and the clock control module to perform a more complicated and sophisticated subchannel analysis test.

이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 예를 들어 당업자는 각 구성요소를 적용 분야에 따라 변경하거나, 개시된 실시형태들을 조합 또는 치환하여 본 발명의 실시예에 명확하게 개시되지 않은 형태로 실시할 수 있으나, 이 역시 본 발명의 범위를 벗어나지 않는 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것으로 한정적인 것으로 이해해서는 안 되며, 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.Although the embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. I can understand that. For example, those skilled in the art can change each component according to the field of application, or combine or substitute the disclosed embodiments in a form that is not clearly disclosed in the embodiments of the present invention, but this is also within the scope of the present invention. It is not. Therefore, the above-described embodiments are to be considered in all respects as illustrative and not restrictive, and such modified embodiments should be included in the technical spirit described in the claims of the present invention.

100 : 분석 시스템
200 : 오류 주입 시험 장치
210 : 제어부
220 : 전원 제어 모듈
230 : 클럭 제어 모듈
240 : 보안 프로세서
250 : 전원 측정 모듈
300 : 파형 측정 시스템
100: Analysis System
200: error injection test device
210: control unit
220: power control module
230: clock control module
240: security processor
250: power measurement module
300: waveform measurement system

Claims (1)

암호 연산 동작을 수행하는 보안 프로세서를 구비하는 오류 주입 부채널 분석 시험 장치로서,
분석 시스템으로부터 전원과 클럭으로 이루어진 오류 주입 시험 설정값을 입력받아 전원 제어 신호와 클럭 제어 신호를 발생시키며, 상기 보안 프로세서에 대한 오류를 입력하는 제어부와,
상기 전원 제어 신호에 따라 정상 전원 또는 오류 주입된 전원을 상기 보안 프로세서에 제공하는 전원 제어 모듈과,
상기 쿨럭 제어 신호에 따라 정상 클럭 또는 오류 주입된 클럭을 상기 보안 프로세서에 제공하는 클럭 제어 모듈을 포함하며,
상기 제어부는, 상기 클럭 제어 모듈 및 전원 제어 모듈에서 제공받은 클럭 및 전원에 따라 상기 보안 프로세서가 암호 연산을 수행할 경우 상기 보안 프로세서에 오류를 입력시키며, 상기 오류의 입력에 따라 상기 보안 프로세서가 동작할 때의 상기 보안 프로세서의 암호 연산 결과를 상기 분석 시스템에 제공하는 것을 특징으로 하는
보안 프로세서의 오류 주입 부채널 분석 시험 장치.
An error injection subchannel analysis test apparatus having a security processor that performs a cryptographic operation,
A control unit which receives an error injection test set value including power and clock from an analysis system, generates a power control signal and a clock control signal, and inputs an error for the security processor;
A power control module configured to provide normal power or error-injected power to the security processor according to the power control signal;
A clock control module configured to provide a normal clock or an error-injected clock to the security processor according to the cool clock control signal,
The controller inputs an error to the security processor when the security processor performs an encryption operation according to the clock and power provided from the clock control module and the power control module, and the security processor operates according to the input of the error. Characterized in that it provides the result of the cryptographic operation of the security processor to the analysis system.
Error injection side channel analysis test device of the security processor.
KR1020100116826A 2010-11-23 2010-11-23 Apparatus for fault analysis for a security processor KR20120055218A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100116826A KR20120055218A (en) 2010-11-23 2010-11-23 Apparatus for fault analysis for a security processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100116826A KR20120055218A (en) 2010-11-23 2010-11-23 Apparatus for fault analysis for a security processor

Publications (1)

Publication Number Publication Date
KR20120055218A true KR20120055218A (en) 2012-05-31

Family

ID=46270828

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100116826A KR20120055218A (en) 2010-11-23 2010-11-23 Apparatus for fault analysis for a security processor

Country Status (1)

Country Link
KR (1) KR20120055218A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140070776A (en) * 2012-11-27 2014-06-11 한국전자통신연구원 Apparatus for analyzing a laser fault
KR102331835B1 (en) * 2020-10-28 2021-12-01 국민대학교산학협력단 Fault injection attack system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140070776A (en) * 2012-11-27 2014-06-11 한국전자통신연구원 Apparatus for analyzing a laser fault
KR102331835B1 (en) * 2020-10-28 2021-12-01 국민대학교산학협력단 Fault injection attack system

Similar Documents

Publication Publication Date Title
EP2260376B1 (en) Digital random number generator based on digitally-controlled oscillators
CN107735981B (en) Clock period randomization for protection against cryptographic attacks
US8130950B2 (en) Configurable random number generator
CN105021972B (en) aging detection circuit and method thereof
CN109194491B (en) Password evaluation test system and password evaluation test method
TWI559162B (en) Method, apparatus, and machine-readable storage medium for generating a unique identifier
US10594307B2 (en) Skew sensor with enhanced reliability
US10303149B2 (en) Intelligent function unit and programmable logic controller system
Provelengios et al. Power distribution attacks in multitenant FPGAs
US20170141912A1 (en) Method for protecting a computer system from side-channel attacks
US10289092B2 (en) Digital motor controller stability analysis tool
KR20210074247A (en) Unlocking method and device based on gesture password
WO2009002404A1 (en) Cryptographic random number generator using finite field operations
KR20120055218A (en) Apparatus for fault analysis for a security processor
Balasch et al. Design and validation of a platform for electromagnetic fault injection
US10901020B2 (en) Digital duty-cycle monitoring of a periodic signal
Rathmair et al. Hardware Trojan detection by specifying malicious circuit properties
KR101029539B1 (en) Method and device of testing side-channel
US10311232B2 (en) Embedded systems monitoring systems and methods
Fischer et al. Hardware penetration testing knocks your SoCs off
Venkatesan et al. Simulation approach on step speed control of Induction Motor using Lab View
CN114116329A (en) Control method, equipment and computer readable storage medium for fault injection test
Gnad Remote Attacks on FPGA Hardware
Puschner et al. Security Analysis of IoT Devices: From the system level to the logic level
US20230327867A1 (en) Encryption device and encryption method with clock gating unit and random-number generator

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination