KR102593608B1 - Method and security circuit for detecting focused ion beam(fib) attack - Google Patents

Method and security circuit for detecting focused ion beam(fib) attack Download PDF

Info

Publication number
KR102593608B1
KR102593608B1 KR1020220116162A KR20220116162A KR102593608B1 KR 102593608 B1 KR102593608 B1 KR 102593608B1 KR 1020220116162 A KR1020220116162 A KR 1020220116162A KR 20220116162 A KR20220116162 A KR 20220116162A KR 102593608 B1 KR102593608 B1 KR 102593608B1
Authority
KR
South Korea
Prior art keywords
unit
data
output
control signal
attack
Prior art date
Application number
KR1020220116162A
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 KR1020220116162A priority Critical patent/KR102593608B1/en
Application granted granted Critical
Publication of KR102593608B1 publication Critical patent/KR102593608B1/en

Links

Images

Classifications

    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
    • 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/75Protecting 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 by inhibiting the analysis of circuitry or operation
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators

Abstract

본 개시는 칩의 고유한 암호화 특성을 고려한 보안 회로를 제공함으로써, 동일한 동작을 수행하는 다수의 칩에 동시에 연결하여 칩의 동작과 특성에 대하여 분석 및 파악하는 공격하는 방식에 취약한 문제를 해결하고, 높은 보안성 및 보안 비용 절감 효과를 제공하는 집속 이온빔 공격 검출 방법 및 이를 위한 보안 회로에 관한 것이다.The present disclosure solves the problem of vulnerability to attacks that analyze and determine the operation and characteristics of the chip by simultaneously connecting to multiple chips performing the same operation by providing a security circuit that takes into account the unique encryption characteristics of the chip, It relates to a focused ion beam attack detection method that provides high security and security cost savings and a security circuit for the same.

Description

집속 이온빔 공격 검출 방법 및 이를 위한 보안 회로{METHOD AND SECURITY CIRCUIT FOR DETECTING FOCUSED ION BEAM(FIB) ATTACK}Method for detecting focused ion beam attack and security circuit therefor {METHOD AND SECURITY CIRCUIT FOR DETECTING FOCUSED ION BEAM(FIB) ATTACK}

본 개시는 반도체 장치의 침투 공격 검출 장치 및 검출 방법에 관한 것이다. 보다 상세하게는, 본 개시는 집속 이온빔 공격 검출 방법 및 이를 위한 보안 회로에 관한 것이다.This disclosure relates to an apparatus and method for detecting intrusion attacks on semiconductor devices. More specifically, the present disclosure relates to a method for detecting a focused ion beam attack and a security circuit therefor.

임베디드 또는 모바일 컴퓨팅 장치는 보안이 필요한 정보를 포함하는 집적회로로 구성된다. 일반적인 집적회로 설계에 필요한 IP(Intellectual Property blocks)의 수가 증가함에 따라 DFS(Design For Security) 방법론이 점차 중요해지고 있다.Embedded or mobile computing devices are comprised of integrated circuits containing information that requires security. As the number of IP (Intellectual Property blocks) required for general integrated circuit design increases, Design For Security (DFS) methodology is becoming increasingly important.

집적회로에 가해지는 물리적인 공격은 다양한 유형이 존재하며, 침투 정도에 따라 침투 공격, 준침투 공격 및 비침투 공격으로 분류될 수 있다. 그 중에서도 침투 공격은 물리적인 접근을 통해 집적회로를 직접 관측하거나 칩 내부 구조를 분석하는 방식을 의미한다. 침투 공격은 고가의 장비 및 전문 기술이 필요하나, 각각의 소자에 직접 접근할 수 있어가장 강력한 공격으로 여겨지고 있다. 대표적인 침투 공격으로는 회로를 덮고 있는 물질을 제거한 후 칩 내부에 접근하는 디패키징(Depackaging), 프로브를 이용하여 칩 내부의 와이어에 접촉하는 마이크로프로빙(Microprobing), FIB 장비를 이용하여 이온빔을 이용하여 금속 라인을 임의적으로 단락하거나 연결하며, 칩의 일부 회로를 수정 또는 파괴함으로써 보안 회로를 무력화하거나 칩 내부 기밀 데이터에 용이한 접근 및 제어를 할 수 있는 FIB('FIB Chip Editing'이라고도 한다.), 반도체 소자를 역으로 분해하여 내부 구조, 구성 물질, 전기적 특징 및 제조 공정 등을 유추하는 리버스 엔지니어링(Reverse Engineering) 등이 있다. 이 중 FIB 공격을 방어하기 위한 보호 쉴드(Secure Shield) 기반의 침투 공격 검출 회로 연구가 활발하게 진행되고 있다.There are various types of physical attacks on integrated circuits, and depending on the degree of penetration, they can be classified into penetration attacks, semi-penetration attacks, and non-penetration attacks. Among them, infiltration attacks refer to methods that directly observe integrated circuits or analyze the internal structure of a chip through physical access. Penetration attacks require expensive equipment and specialized skills, but are considered the most powerful attacks because they allow direct access to each element. Representative penetration attacks include depackaging, which involves removing the material covering the circuit and then accessing the inside of the chip, microprobing, which uses a probe to contact wires inside the chip, and ion beams using FIB equipment. FIB (also called 'FIB Chip Editing'), which can neutralize security circuits or easily access and control confidential data inside a chip by arbitrarily shorting or connecting metal lines and modifying or destroying some circuits of the chip. There is reverse engineering, which involves disassembling a semiconductor device in reverse to infer its internal structure, constituent materials, electrical characteristics, and manufacturing process. Among these, research on intrusion attack detection circuits based on Secure Shield to prevent FIB attacks is actively underway.

그러나, 기존의 침투 공격 검출 회로의 경우 블록 암호부(Block Chipher)에서 생성되는 랜덤 비트를 이용하기 때문에 칩에 동일한 암호화 데이터를 전송하여 복제 및 다수의 칩을 이용한 보안 회로를 무력화가 가능하다는 단점이 존재한다. 따라서, 칩의 고유한 정보를 활용하여 집속 이온 빔(FIB) 침투 공격을 검출할 수 있는 보안 회로가 요구되고 있다.However, in the case of the existing intrusion attack detection circuit, since it uses random bits generated by the block chipper, it has the disadvantage of being able to neutralize security circuits using replication and multiple chips by transmitting the same encrypted data to the chip. exist. Therefore, there is a need for a security circuit that can detect focused ion beam (FIB) penetration attacks using the unique information of the chip.

공개특허공보 제10-2020-0141783호, 2020.12.21Public Patent Publication No. 10-2020-0141783, 2020.12.21

본 개시에 개시된 실시예는 칩의 고유한 암호화 특성을 고려한 보안 회로를 제공함으로써, 동일한 동작을 수행하는 다수의 칩에 동시에 연결하여 칩의 동작과 특성에 대하여 분석 및 파악하는 공격하는 방식에 취약한 문제를 해결하고, 높은 보안성 및 보안 비용 절감 효과를 제공하는데 그 목적이 있다.The embodiment disclosed in the present disclosure provides a security circuit that takes into account the unique encryption characteristics of the chip, making it vulnerable to attacks that simultaneously connect to multiple chips performing the same operation and analyze and determine the operation and characteristics of the chip. The purpose is to solve this problem and provide high security and security cost reduction effects.

본 개시가 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present disclosure are not limited to the problems mentioned above, and other problems not mentioned can be clearly understood by those skilled in the art from the description below.

상술한 기술적 과제를 달성하기 위한 본 개시에 일 측면에 따른 보안회로는, 제1 방향으로 연장되고 제1 방향과 수직한 제2 방향으로 상호 이격되어 배치되는 N개의 금속 라인들을 포함하고, N은 2보다 큰 자연수인 보호 쉴드 및 보호 쉴드와 제1 방향 및 제2 방향에 수직한 제3 방향으로 이격하여 배치되고, N개의 금속 라인들 중 적어도 일부와 전기적으로 연결되어 집속 이온 빔을 이용한 침투 공격을 감지하는 검출 회로를 포함하고, 상기 검출 회로는, 제어 신호를 생성하는 제어부, 제어부로부터 수신한 제1 제어 신호에 따라 블록 암호를 수행하는 블록 암호화 로직을 포함하는 블록 암호부, 제어부로부터 수신한 제2 제어 신호에 따라 물리적으로 복제가 불가능한 비트들을 생성하는 복제 방지부, 제어부로부터 수신한 제3 제어 신호에 따라 보호 쉴드의 금속 라인들 중 적어도 일부를 활성화하는 경로 활성부, 블록 암호부의 출력 데이터와 복제 방지부의 출력 비트들을 연산 및 저장하는 데이터 변환부, 데이터 변환부의 출력 데이터와 경로 활성부에 의해 활성화된 금속라인들로부터 수신한 데이터에 기초하여 비교 데이터를 생성하는 데이터 비교부 및 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 검출하는 공격 검출부를 포함한다.A security circuit according to an aspect of the present disclosure for achieving the above-described technical problem includes N metal lines extending in a first direction and arranged to be spaced apart from each other in a second direction perpendicular to the first direction, where N is A protective shield, which is a natural number greater than 2, is arranged to be spaced apart from the protective shield in a third direction perpendicular to the first and second directions, and is electrically connected to at least some of the N metal lines to perform a penetration attack using a focused ion beam. It includes a detection circuit that detects, wherein the detection circuit includes a control unit that generates a control signal, a block encryption unit that includes block encryption logic that performs block encryption according to the first control signal received from the control unit, and a control unit that generates a control signal. A copy protection unit that generates bits that cannot be physically copied according to a second control signal, a path activation unit that activates at least some of the metal lines of the protective shield according to a third control signal received from the control unit, and output data of the block cipher unit. and a data conversion unit that operates and stores the output bits of the copy prevention unit, a data comparison unit that generates comparison data based on the output data of the data conversion unit and data received from the metal lines activated by the path activation unit, and a data comparison unit that generates comparison data. and an attack detection unit that detects an infiltration attack using a focused ion beam.

상술한 기술적 과제를 달성하기 위한 본 개시에 일 측면에 따른, 복수의 금속 라인들을 포함하는 보호 쉴드 및 상기 금속 라인들과 전기적으로 연결되어 집속 이온 빔을 이용한 침투 공격을 감지하는 검출 회로를 포함하는 보안 회로를 이용한 침투 공격 검출 방법은, 저장부의 설정을 초기화 하는 단계, 제어부에서 제1 제어 신호, 제2 제어 신호 및 제3 제어 신호를 생성하는 단계, 블록 암호부에서 제1 제어 신호에 기초하여 암호화 데이터를 출력하는 단계, 복제 방지부에서 제2 제어 신호에 기초하여 물리적으로 복제가 불가능한 PUF 비트들을 생성하는 단계, 경로 활성부에서 제3 제어 신호에 기초하여 복수의 금속 라인들 중 적어도 일부를 활성화하는 단계, 데이터 변환부에서 암호화 데이터 및 PUF 비트들을 수신하고, 암호화 데이터 및 PUF 비트들을 연산하여 변환된 암호화 데이터를 출력하는 단계, 데이터 비교부에서 변환된 암호화 데이터와 복수의 금속 라인들을 통해 수신한 데이터를 비교하여 비교 데이터를 출력하는 단계 및 공격 검출부에서 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 감지하는 단계를 포함한다.According to one aspect of the present disclosure for achieving the above-described technical problem, a protective shield including a plurality of metal lines and a detection circuit electrically connected to the metal lines to detect an infiltration attack using a focused ion beam. The intrusion attack detection method using a security circuit includes initializing the settings of the storage unit, generating a first control signal, a second control signal, and a third control signal in the control unit, and based on the first control signal in the block encryption unit. Outputting encrypted data, generating PUF bits that cannot be physically copied based on the second control signal in the copy protection unit, and generating at least some of the plurality of metal lines based on the third control signal in the path activation unit. Activating, receiving the encrypted data and PUF bits from the data conversion unit, calculating the encrypted data and PUF bits and outputting the converted encrypted data, receiving the converted encrypted data from the data comparison unit through a plurality of metal lines. It includes a step of comparing data and outputting comparative data, and a step of detecting an intrusion attack using a focused ion beam based on the comparison data in an attack detection unit.

이 외에도, 본 개시를 구현하기 위한 실행하기 위한 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램이 더 제공될 수 있다.In addition to this, a computer program stored in a computer-readable recording medium for execution to implement the present disclosure may be further provided.

이 외에도, 본 개시를 구현하기 위한 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.In addition, a computer-readable recording medium recording a computer program for executing a method for implementing the present disclosure may be further provided.

본 개시의 전술한 과제 해결 수단에 의하면, 더 높은 보안성을 제공하면서도 내장 하드웨어 크기를 감소시킬 수 있으므로 보안에 사용되는 비용을 절감할 수 있는 효과를 제공할 수 있다.According to the means for solving the above-described problem of the present disclosure, the size of the built-in hardware can be reduced while providing higher security, thereby providing the effect of reducing the cost used for security.

본 개시의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the present disclosure are not limited to the effects mentioned above, and other effects not mentioned may be clearly understood by those skilled in the art from the description below.

도 1은 본 개시의 일 실시 예에 따른 보안 회로를 설명하기 위한 블록도이다.
도 2는 본 개시의 일 실시 예에 따른 검출 회로를 설명하기 위한 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 보안 회로의 회로도이다.
도 4는 본 개시의 일 실시 예에 따른 보안 회로의 타이밍도이다.
도 5는 본 개시의 일 실시 예에 따른 침투 공격 검출 방법의 순서도이다.
1 is a block diagram for explaining a security circuit according to an embodiment of the present disclosure.
Figure 2 is a block diagram for explaining a detection circuit according to an embodiment of the present disclosure.
3 is a circuit diagram of a security circuit according to an embodiment of the present disclosure.
4 is a timing diagram of a security circuit according to an embodiment of the present disclosure.
5 is a flowchart of a method for detecting an intrusion attack according to an embodiment of the present disclosure.

본 개시 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 개시가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 개시가 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다. Like reference numerals refer to like elements throughout this disclosure. The present disclosure does not describe all elements of the embodiments, and general content or overlapping content between the embodiments in the technical field to which the present disclosure pertains is omitted. The term 'unit, module, member, block' used in the specification may be implemented as software or hardware, and depending on the embodiment, a plurality of 'unit, module, member, block' may be implemented as a single component, or It is also possible for one 'part, module, member, or block' to include multiple components.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.Throughout the specification, when a part is said to be “connected” to another part, this includes not only direct connection but also indirect connection, and indirect connection includes connection through a wireless communication network. do.

또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Additionally, when a part "includes" a certain component, this means that it may further include other components rather than excluding other components, unless specifically stated to the contrary.

명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.Throughout the specification, when a member is said to be located “on” another member, this includes not only cases where a member is in contact with another member, but also cases where another member exists between the two members.

제1, 제2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다. Terms such as first and second are used to distinguish one component from another component, and the components are not limited by the above-mentioned terms.

단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.Singular expressions include plural expressions unless the context clearly makes an exception.

각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다. The identification code for each step is used for convenience of explanation. The identification code does not explain the order of each step, and each step may be performed differently from the specified order unless a specific order is clearly stated in the context. there is.

이하 첨부된 도면들을 참고하여 본 개시의 작용 원리 및 실시예들에 대해 설명한다.Hereinafter, the operating principle and embodiments of the present disclosure will be described with reference to the attached drawings.

본 명세서에서 '집속 이온빔 공격을 검출할 수 있는 보안 회로를 이용한 침투 공격 검출 방법'은 연산처리를 수행하여 사용자에게 결과를 제공할 수 있는 다양한 장치들을 통해 수행될 수 있다. 예를 들어, 본 개시에 따른 침투 공격 검출 방법은 컴퓨터, 서버 장치 및 휴대용 단말기를 통해 수행되거나, 또는 어느 하나를 통해 수행될 수 있다.In this specification, the 'method of detecting an intrusion attack using a security circuit capable of detecting a focused ion beam attack' can be performed through various devices that can perform computational processing and provide results to the user. For example, the intrusion attack detection method according to the present disclosure may be performed through a computer, a server device, or a portable terminal, or may be performed through any one.

여기에서, 상기 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop), 태블릿 PC, 슬레이트 PC 등을 포함할 수 있다.Here, the computer may include, for example, a laptop, desktop, laptop, tablet PC, slate PC, etc. equipped with a web browser.

상기 서버 장치는 외부 장치와 통신을 수행하여 정보를 처리하는 서버로써, 애플리케이션 서버, 컴퓨팅 서버, 데이터베이스 서버, 파일 서버, 게임 서버, 메일 서버, 프록시 서버 및 웹 서버 등을 포함할 수 있다.The server device is a server that processes information by communicating with external devices, and may include an application server, computing server, database server, file server, game server, mail server, proxy server, and web server.

상기 휴대용 단말기는 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), WiBro(Wireless Broadband Internet) 단말, 스마트 폰(Smart Phone) 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치와 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD) 등과 같은 웨어러블 장치를 포함할 수 있다.The portable terminal is, for example, a wireless communication device that guarantees portability and mobility, such as PCS (Personal Communication System), GSM (Global System for Mobile communications), PDC (Personal Digital Cellular), PHS (Personal Handyphone System), and PDA. (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), WiBro (Wireless Broadband Internet) terminal, smart phone ), all types of handheld wireless communication devices, and wearable devices such as watches, rings, bracelets, anklets, necklaces, glasses, contact lenses, or head-mounted-device (HMD). may include.

반도체 칩에 대한 다양한 물리적 공격 및 소프트웨어 공격은 반도체 칩의 보안 또는 안정성 측면에서 위협이 될수 있다. 예를 들어, 반도체 칩에 관한 공격은 중요 데이터에 관한 해킹을 가능하게 하거나 출입 보안을 해제하는 등의 현실적인 문제를 야기할 수 있다. Various physical and software attacks on semiconductor chips can pose a threat to the security or stability of semiconductor chips. For example, attacks on semiconductor chips can cause practical problems such as enabling hacking of important data or unlocking access security.

도 1은 본 개시의 일 실시 예에 따른 보안 회로를 설명하기 위한 블록도이다.1 is a block diagram for explaining a security circuit according to an embodiment of the present disclosure.

도 1을 참조하면, 보안 회로(100)는 보호 쉴드(110, Secure Shield) 및 검출 회로(120)를 포함할 수 있다.Referring to FIG. 1, the security circuit 100 may include a protective shield 110 and a detection circuit 120.

보호 쉴드(110)는 복수의 금속 라인들을 포함할 수 있다. 보호 쉴드(110)는 반도체 칩의 상부에 배치될 수 있다. 보호 쉴드(110)는 프로세서의 상부에 배치되어 프로세서를 보호할 수 있다. 보호 쉴드(110)는 복수의 금속 라인을 포함하는 액티브 쉴드(Active Shield)와 같은 형태로 구현될 수 있다. 보호 쉴드(110)는 N개의 금속 라인들을 포함할 수 있다. N은 2보다 큰 자연수일수 있다. 보호 쉴드(110)는 반도체 칩의 상부에 배치될 수 있다.The protective shield 110 may include a plurality of metal lines. The protective shield 110 may be placed on top of the semiconductor chip. The protection shield 110 may be placed on top of the processor to protect the processor. The protective shield 110 may be implemented in the form of an active shield including a plurality of metal lines. The protective shield 110 may include N metal lines. N can be a natural number greater than 2. The protective shield 110 may be placed on top of the semiconductor chip.

검출 회로(120) 보호 쉴드(110)에 포함된 N개의 금속라인들 중 적어도 일부와 전기적으로 연결될 수 있다. 검출 회로(120)는 보호 쉴드(110)의 N개의 금속라인들 중 적어도 일부와 전기적으로 연결됨으로써 집속 이온빔을 이용한 침투 공격을 감지할 수 있다. 검출 회로(120)는 보호 쉴드(110)에 배치된 N개의 금속라인의 연결 상태를 변경하여 데이터 경로를 설정할 수 있다. 검출 회로(120)는 설정된 데이터 경로에 따른 테스트 신호를 분석하여 외부의 공격을 감지할 수 있다. 이하에서는, 도 2 내지 도 4를 참조하여 검출 회로(120)에 대하여 보다 상세하게 설명한다.The detection circuit 120 may be electrically connected to at least some of the N metal lines included in the protective shield 110. The detection circuit 120 is electrically connected to at least some of the N metal lines of the protective shield 110 and can detect an intrusion attack using a focused ion beam. The detection circuit 120 can set a data path by changing the connection state of the N metal lines arranged in the protection shield 110. The detection circuit 120 can detect an external attack by analyzing a test signal according to a set data path. Below, the detection circuit 120 will be described in more detail with reference to FIGS. 2 to 4 .

도 2는 본 개시의 일 실시 예에 따른 검출 회로를 설명하기 위한 블록도이다.Figure 2 is a block diagram for explaining a detection circuit according to an embodiment of the present disclosure.

도 2를 참조하면, 검출 회로(120)는 제어부(121), 블록 암호부(122), 복제 방지부(123), 경로 활성부(124), 데이터 변환부(125), 데이터 비교부(128) 및 공격 검출부(129)를 포함할 수 있다.Referring to FIG. 2, the detection circuit 120 includes a control unit 121, a block encryption unit 122, a copy protection unit 123, a path activation unit 124, a data conversion unit 125, and a data comparison unit 128. ) and an attack detection unit 129.

제어부(121)는 제어 신호를 생성할 수 있다. 제어부는 생성한 제어 신호를 블록 암호부(122), 복제 방지부(123) 및 경로 활성부(124) 중 적어도 일부에 전송할 수 있다. 제어부는 제1 제어 신호를 블록 암호부(122)에 전송하고, 제2 제어 신호를 복제 방지부(123)에 전송하고, 제3 제어 신호를 경로 활성부(124)에 전송할 수 있다. 예를 들어, 제어부(121)는 블록 암호부(122)로 평문 및 암호화 키를 전송할 수 있다. 제어부(121)가 블록 암호부(122)로 전송하는 평문은 128 비트일 수 있다. 예를 들어, 제어부(121)는 복제 방지부(123)로 상승 펄스(rising pulse)를 전송할 수 있다. 예를 들어, 제어부(121)는 경로 활성부(124)로 펄스 신호를 전송하여 보호 쉴드(도 1의 110)의 금속 라인들 중 적어도 일부를 활성화할 수 있다. The control unit 121 may generate a control signal. The control unit may transmit the generated control signal to at least some of the block encryption unit 122, the copy prevention unit 123, and the path activation unit 124. The control unit may transmit a first control signal to the block encryption unit 122, a second control signal to the copy protection unit 123, and a third control signal to the path activation unit 124. For example, the control unit 121 may transmit the plain text and the encryption key to the block encryption unit 122. The plaintext transmitted from the control unit 121 to the block cipher unit 122 may be 128 bits. For example, the control unit 121 may transmit a rising pulse to the copy protection unit 123. For example, the control unit 121 may transmit a pulse signal to the path activation unit 124 to activate at least some of the metal lines of the protective shield (110 in FIG. 1).

제어부(121)는 유한상태머신(Finite State Machine, FSM)으로 구현될 수 있다. 제어부(121)는 공격 검출부(129)의 출력 신호에 기초하여 침투 알람을 생성할 수 있다. 예를 들어, 제어부(121)는 공격 검출부(129)의 출력 신호가 로직 하이(예를 들어 '1')인 경우 침투 알람을 생성할 수 있다.The control unit 121 may be implemented as a finite state machine (FSM). The control unit 121 may generate an intrusion alarm based on the output signal of the attack detection unit 129. For example, the control unit 121 may generate an intrusion alarm when the output signal of the attack detection unit 129 is logic high (eg, '1').

블록 암호부(122)는 블록 암호를 수행할 수 있는 블록 암호화 로직을 포함할 수 있다. 예를 들어, 상기 블록 암호화 로직은 블록 암호 엔진 또는 블록 암호 모듈일 수 있다. 블록 암호들은 데이터를 암호화 및 복호화하는데 사용되는 대칭 키를 이용한 일정한 변환(unvarying transformation)으로 블록이라 불리는 고정 길이의 비트 그룹에 대해 동작하는 결정론적 암호화 알고리즘일 수 있다. The block cipher unit 122 may include block encryption logic capable of performing block cipher. For example, the block encryption logic may be a block cipher engine or a block cipher module. Block ciphers can be deterministic encryption algorithms that operate on groups of fixed-length bits, called blocks, with an unvarying transformation using a symmetric key used to encrypt and decrypt data.

예를 들어, 블록 암호화 로직은 AES(Advanced Encryption Standard) 로직(예를 들어, AES 엔진 또는 모듈)를 포함할 수 있다. AES는 2001년 11월 26일에 발표된 미국 FIPS(Federal Information Processing Standards) PUB 197에 더욱 설명되는 미국 NIST(National Institute of Standards and Technology) 승인 암호화 알고리즘일 수 있다. 대안적으로, 다른 블록 암호화 온-다이 로직 구현 알고리즘들(예를 들어, NIST 또는 FIPS에 의해 승인된 다른 알고리즘들)이 선택적으로 AES 대신에 이용될 수 있다. For example, the block encryption logic may include Advanced Encryption Standard (AES) logic (e.g., an AES engine or module). AES may be a U.S. National Institute of Standards and Technology (NIST) approved encryption algorithm further described in the U.S. Federal Information Processing Standards (FIPS) PUB 197, published on November 26, 2001. Alternatively, other block encryption on-die logic implementation algorithms (e.g., other algorithms approved by NIST or FIPS) may optionally be used in place of AES.

블록 암호부(122)는 종류에 무관하고, 크기가 128 비트(bit)일 수 있다. 예를 들어, 블록 암호부(122)는 Block Cipher로 구현될 수 있다. 블록 암호부(122)는 암호화 데이터를 출력할 수 있다.The block cipher unit 122 is regardless of type and may have a size of 128 bits. For example, the block cipher 122 may be implemented as a Block Cipher. The block encryption unit 122 can output encrypted data.

복제 방지부(123)는 물리적으로 복제 가능하지 않은 기능(Physically Unclonable Function, PUF) 비트들을 생성할 수 있다. 복제 방지부(123)는 물리적으로 복제할 수 없는 특징을 가지고 있는 집적 회로(Integrated Circuit, IC)일 수 있고, 공격자가 복제 방지부(123)를 복제하더라도 원래 복제 방지부(123)가 지니고 있는 물리적 특성까지 복제할 수 없을 수 있다. 따라서, 공격자가 복제 방지부(123)를 복제하더라도, 복제 방지부(123)의 랜덤한 물리적 특성에 의해, 동일한 복제 방지부(123)의 출력값을 생성하는 것이 불가능할 수 있다.The copy protection unit 123 may generate physically unclonable function (PUF) bits. The copy protection unit 123 may be an integrated circuit (IC) that has characteristics that cannot be physically copied, and even if an attacker copies the copy protection unit 123, the original copy protection unit 123 retains the Even physical characteristics may not be replicable. Therefore, even if an attacker copies the copy protection unit 123, it may be impossible to generate the same output value of the copy protection unit 123 due to the random physical characteristics of the copy protection unit 123.

일 실시 예에서, 복제 방지부(123)는 반도체 제조 공정 중에서 구현하는 방식에 따라 소자 또는 회로에 발생하는 공정 편차에 의해 발생하는 지연 시간을 측정한 후 출력을 결정하는 복제 방지 소자(이하에서는, 'mismatch based PUF'로 지칭한다)로 구성될 수 있다.In one embodiment, the copy protection unit 123 is a copy protection element (hereinafter, referred to as, (referred to as 'mismatch based PUF').

일 실시 예에서, 복제 방지부(123)는 하나 또는 두 개의 전도성 와이어 사이의 물리적인 연결 상태에 기초하여 출력을 결정하는 복제 방지 소자(이하에서는, 'physical based PUF'로 지칭한다)로 구성될 수 있다.In one embodiment, the copy protection unit 123 may be composed of a copy protection element (hereinafter referred to as 'physical based PUF') that determines the output based on the physical connection state between one or two conductive wires. You can.

복제 방지부(123)는 128개의 1비트 셀을 포함할 수 있다. 복제 방지부(123)는 128개의 PUF셀을 포함할 수 있다. 복제 방지부는 물리적으로 복제가 불가능한 비트들을 생성할 수 있다. 상기 물리적으로 복제가 불가능한 비트는 'PUF 비트'로 지칭될 수 있다.The copy protection unit 123 may include 128 1-bit cells. The copy protection unit 123 may include 128 PUF cells. The copy protection unit can generate bits that are physically impossible to copy. The bits that cannot be physically copied may be referred to as 'PUF bits'.

경로 활성부(124)는 제어부(121)로부터 수신한 제어 신호에 따라 보호 쉴드(도 1의 110)의 금속 라인들 중 적어도 일부를 활성화할 수 있다. 경로 활성부(124)는 보호 쉴드(도 1의 110)의 금속 라인들 중 적어도 하나의 그룹을 활성화할 수 있고, 상기 하나의 그룹은 서로 인접하여 배치된 128개의 금속 라인을 포함할 수 있다. The path activation unit 124 may activate at least some of the metal lines of the protection shield (110 in FIG. 1) according to the control signal received from the control unit 121. The path activation unit 124 may activate at least one group of metal lines of the protective shield (110 in FIG. 1), and one group may include 128 metal lines arranged adjacent to each other.

경로 활성부(124)는 3상 인버터로 구성될 수 있다. 보안 회로(도 1의 100)가 N개의 금속 라인들을 포함할 때, 경로 활성부(124)는 N개의 3상 인버터를 포함할 수 있다.The path activation unit 124 may be configured as a three-phase inverter. When the security circuit (100 in FIG. 1) includes N metal lines, the path active unit 124 may include N three-phase inverters.

데이터 변환부(125)는 블록 암호부(122)의 출력 데이터와 복제 방지부(123)의 출력 데이터를 연산 및 저장할 수 있다. 그에 따라, 데이터 변환부(125)는 변환된 암호화 데이터를 생성 및 저장할 수 있다. 데이터 변환부(125)는 연산부(126) 및 저장부(127)를 포함할 수 있다.The data conversion unit 125 may calculate and store the output data of the block encryption unit 122 and the output data of the copy prevention unit 123. Accordingly, the data conversion unit 125 can generate and store the converted encrypted data. The data conversion unit 125 may include a calculation unit 126 and a storage unit 127.

연산부(126)는 블록 암호부(122)의 출력 데이터와 복제 방지부(123)의 출력 데이터를 연산할 수 있다. 연산부(126)는 블록 암호부(122)에서 출력된 암호화 데이터와 복제 방지부(123)에서 출력된 PUF 비트에 대하여 XOR 연산할 수 있다. 연산부(126)는 복수의 XOR 게이트를 포함할 수 있다. 예를 들어, 연산부(126)는 128개의 XOR 게이트를 포함할 수 있다. The calculation unit 126 can calculate the output data of the block encryption unit 122 and the output data of the copy prevention unit 123. The calculation unit 126 may perform an XOR operation on the encrypted data output from the block cipher unit 122 and the PUF bit output from the copy prevention unit 123. The operation unit 126 may include a plurality of XOR gates. For example, the operation unit 126 may include 128 XOR gates.

저장부(127)는 연산부(126)의 출력 데이터를 저장할 수 있다. 저장부(127)는 변환된 암호화 데이터를 저장할 수 있다. 저장부(127)는 복수의 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 복수의 D-Q 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 128개의 D-Q 플립플롭을 포함할 수 있다.The storage unit 127 may store output data of the calculation unit 126. The storage unit 127 may store converted encrypted data. The storage unit 127 may include a plurality of flip-flops. For example, the storage unit 127 may include a plurality of D-Q flip-flops. For example, the storage unit 127 may include 128 D-Q flip-flops.

저장부(127)는 저장부(127)에 저장된 데이터들을 경로 활성부(124)에 의해 활성화된 금속라인들로 동시에 출력할 수 있다. 예를 들어, 저장부(127)는 128개의 플립플롭에 저장된 각각의 데이터들을 동시에 출력할 수 있다.The storage unit 127 can simultaneously output the data stored in the storage unit 127 to metal lines activated by the path activation unit 124. For example, the storage unit 127 can simultaneously output each data stored in 128 flip-flops.

데이터 비교부(128)는 데이터 변환부(125)의 출력 데이터와 경로 활성부(124)에 의해 활성화된 금속 라인들로부터 수신한 데이터에 기초하여 비교 데이터를 생성할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터를 연산할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터에 대하여 XOR 연산할 수 있다. 데이터 비교부(128)는 복수의 XOR 게이트를 포함할 수 있다. 예를 들어, 데이터 비교부(128)는 128개의 XOR 게이트를 포함할 수 있다. 데이터 비교부(128)는 연산 결과에 기초하여 비교 데이터를 출력할 수 있다.The data comparison unit 128 may generate comparison data based on the output data of the data conversion unit 125 and data received from metal lines activated by the path activation unit 124. The data comparison unit 128 may calculate the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may perform an XOR operation on the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may include a plurality of XOR gates. For example, the data comparison unit 128 may include 128 XOR gates. The data comparison unit 128 may output comparison data based on the calculation result.

공격 검출부(129)는 데이터 비교부(128)에서 출력된 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 감지할 수 있다. 공격 검출부(129)는 OR 게이트를 포함할 수 있다. 예를 들어, 공격 검출부(129)는 집속 이온 빔을 이용한 침투 공격이 검출된 경우 '0'을 출력하고, 집속 이온 빔을 이용한 침투 공격이 검출되지 않은 경우 '1'을 출력할 수 있다.The attack detection unit 129 may detect an intrusion attack using a focused ion beam based on the comparison data output from the data comparison unit 128. The attack detection unit 129 may include an OR gate. For example, the attack detection unit 129 may output '0' when an intrusion attack using a focused ion beam is detected, and may output '1' when an intrusion attack using a focused ion beam is not detected.

도 3은 본 개시의 일 실시 예에 따른 보안 회로의 회로도이다. 제1 방향(X)과 제2 방향(Y)은 평면 상에서 서로 수직하고, 제3 방향(Z)은 제1 방향(X)과 제2 방향(Y) 모두에 대하여 수직하다. 도 3은 도 1및 도 2를 참조하여 설명하고, 동일한 구성요소는 동일한 도면 부호로 도시되며, 중복되는 설명은 생략한다.3 is a circuit diagram of a security circuit according to an embodiment of the present disclosure. The first direction (X) and the second direction (Y) are perpendicular to each other on the plane, and the third direction (Z) is perpendicular to both the first direction (X) and the second direction (Y). FIG. 3 is explained with reference to FIGS. 1 and 2 , like components are indicated by the same reference numerals, and overlapping descriptions are omitted.

도 3을 참조하면, 보호 쉴드(110)는 검출 회로(120)의 상부에 배치될 수 있다. 보호 쉴드(110)는 검출 회로(120)와 제3 방향(Z)으로 이격하여 배치될 수 있다. Referring to FIG. 3, the protective shield 110 may be disposed on top of the detection circuit 120. The protective shield 110 may be arranged to be spaced apart from the detection circuit 120 in the third direction (Z).

보호 쉴드(110)는 복수의 금속 라인들(111)을 포함할 수 있다. 복수의 금속 라인들(111)은 제1 방향(X)으로 연장될 수있고, 제2 방향(Y)으로 상호 이격하여 배치될 수 있다. 복수의 금속 라인들(111)은 N개의 금속 라인들을 포함할 수 있다. N은 2보다 큰 자연수일 수 있다. N개의 금속 라인들은 128개씩 그룹핑된 M개의 그룹으로 구성될 수 있다. M은 1이상의 자연수일 수 있다. 금속 라인들(111)은 검출 회로(120)의 경로 활성부(124)와 연결될 수 있다.The protective shield 110 may include a plurality of metal lines 111 . The plurality of metal lines 111 may extend in the first direction (X) and may be arranged to be spaced apart from each other in the second direction (Y). The plurality of metal lines 111 may include N metal lines. N may be a natural number greater than 2. N metal lines may be composed of M groups of 128 each. M may be a natural number greater than or equal to 1. The metal lines 111 may be connected to the path active portion 124 of the detection circuit 120.

검출 회로(120) 보호 쉴드(110)의 금속라인들 중 적어도 일부와 전기적으로 연결될 수 있다. 그에 따라, 검출 회로(120)는 집속 이온빔을 이용한 침투 공격을 감지할 수 있다. 검출 회로(120)는 제어부(121), 블록 암호부(122), 복제 방지부(123), 경로 활성부(124), 데이터 변환부(125), 데이터 비교부(128) 및 공격 검출부(129)를 포함할 수 있다. The detection circuit 120 may be electrically connected to at least some of the metal lines of the protective shield 110. Accordingly, the detection circuit 120 can detect an intrusion attack using a focused ion beam. The detection circuit 120 includes a control unit 121, a block encryption unit 122, a copy protection unit 123, a path activation unit 124, a data conversion unit 125, a data comparison unit 128, and an attack detection unit 129. ) may include.

제어부(121)는 제어 신호를 생성할 수 있다. 제어부는 생성한 제어 신호를 블록 암호부(122), 복제 방지부(123) 및 경로 활성부(124) 중 적어도 일부에 전송할 수 있다. 제어부는 제1 제어 신호를 블록 암호부(122)에 전송하고, 제2 제어 신호를 복제 방지부(123)에 전송하고, 제3 제어 신호를 경로 활성부(124)에 전송할 수 있다. 예를 들어, 제어부(121)는 블록 암호부(122)로 평문 및 암호화 키를 전송할 수 있다. 제어부(121)가 블록 암호부(122)로 전송하는 평문은 128 비트일 수 있다. 예를 들어, 제어부(121)는 복제 방지부(123)로 상승 펄스(rising pulse)를 전송할 수 있다. 예를 들어, 제어부(121)는 경로 활성부(124)로 펄스 신호를 전송하여 보호 쉴드(도 1의 110)의 금속 라인들 중 적어도 일부를 활성화할 수 있다. 제어부(121)는 유한상태머신(Finite State Machine, FSM)으로 구현될 수 있다. 제어부(121)는 공격 검출부(129)의 출력 신호에 기초하여 침투 알람을 생성할 수 있다. 예를 들어, 제어부(121)는 공격 검출부(129)의 출력 신호가 로직 하이(예를 들어 '1')인 경우 침투 알람을 생성할 수 있다.The control unit 121 may generate a control signal. The control unit may transmit the generated control signal to at least some of the block encryption unit 122, the copy prevention unit 123, and the path activation unit 124. The control unit may transmit a first control signal to the block encryption unit 122, a second control signal to the copy protection unit 123, and a third control signal to the path activation unit 124. For example, the control unit 121 may transmit the plain text and the encryption key to the block encryption unit 122. The plaintext transmitted from the control unit 121 to the block cipher unit 122 may be 128 bits. For example, the control unit 121 may transmit a rising pulse to the copy protection unit 123. For example, the control unit 121 may transmit a pulse signal to the path activation unit 124 to activate at least some of the metal lines of the protective shield (110 in FIG. 1). The control unit 121 may be implemented as a finite state machine (FSM). The control unit 121 may generate an intrusion alarm based on the output signal of the attack detection unit 129. For example, the control unit 121 may generate an intrusion alarm when the output signal of the attack detection unit 129 is logic high (eg, '1').

블록 암호부(122)는 블록 암호를 수행할 수 있는 블록 암호화 로직을 포함할 수 있다. 예를 들어, 상기 블록 암호화 로직은 블록 암호 엔진 또는 블록 암호 모듈일 수 있다. 블록 암호들은 데이터를 암호화 및 복호화하는데 사용되는 대칭 키를 이용한 일정한 변환(unvarying transformation)으로 블록이라 불리는 고정 길이의 비트 그룹에 대해 동작하는 결정론적 암호화 알고리즘일 수 있다. 예를 들어, 블록 암호화 로직은 AES(Advanced Encryption Standard) 로직(예를 들어, AES 엔진 또는 모듈)를 포함할 수 있다. AES는 2001년 11월 26일에 발표된 미국 FIPS(Federal Information Processing Standards) PUB 197에 더욱 설명되는 미국 NIST(National Institute of Standards and Technology) 승인 암호화 알고리즘일 수 있다. 대안적으로, 다른 블록 암호화 온-다이 로직 구현 알고리즘들(예를 들어, NIST 또는 FIPS에 의해 승인된 다른 알고리즘들)이 선택적으로 AES 대신에 이용될 수 있다. 블록 암호부(122)는 종류에 무관하고, 크기가 128 비트(bit)일 수 있다. 예를 들어, 블록 암호부(122)는 Block Cipher로 구현될 수 있다. 블록 암호부(122)는 암호화 데이터를 출력할 수 있다.The block cipher unit 122 may include block encryption logic capable of performing block cipher. For example, the block encryption logic may be a block cipher engine or a block cipher module. Block ciphers can be deterministic encryption algorithms that operate on groups of fixed-length bits, called blocks, with an unvarying transformation using a symmetric key used to encrypt and decrypt data. For example, the block encryption logic may include Advanced Encryption Standard (AES) logic (e.g., an AES engine or module). AES may be a U.S. National Institute of Standards and Technology (NIST) approved encryption algorithm further described in the U.S. Federal Information Processing Standards (FIPS) PUB 197, published on November 26, 2001. Alternatively, other block encryption on-die logic implementation algorithms (e.g., other algorithms approved by NIST or FIPS) may optionally be used in place of AES. The block cipher unit 122 is regardless of type and may have a size of 128 bits. For example, the block cipher 122 may be implemented as a Block Cipher. The block encryption unit 122 can output encrypted data.

복제 방지부(123)는 물리적으로 복제 가능하지 않은 기능(Physically Unclonable Function, PUF) 비트들을 생성할 수 있다. 복제 방지부(123)는 물리적으로 복제할 수 없는 특징을 가지고 있는 집적 회로(Integrated Circuit, IC)일 수 있고, 공격자가 복제 방지부(123)를 복제하더라도 원래 복제 방지부(123)가 지니고 있는 물리적 특성까지 복제할 수 없을 수 있다. 따라서, 공격자가 복제 방지부(123)를 복제하더라도, 복제 방지부(123)의 랜덤한 물리적 특성에 의해, 동일한 복제 방지부(123)의 출력값을 생성하는 것이 불가능할 수 있다. 복제 방지부(123)는 128개의 1비트 셀을 포함할 수 있다. 복제 방지부(123)는 128개의 PUF셀을 포함할 수 있다. 복제 방지부는 물리적으로 복제가 불가능한 'PUF 비트'들을 생성할 수 있다. 일 실시 예에서, 복제 방지부(123)는 반도체 제조 공정 중에서 구현하는 방식에 따라 소자 또는 회로에 발생하는 공정 편차에 의해 발생하는 지연 시간을 측정한 후 출력을 결정하는 'mismatch based PUF'로 구성될 수 있다. 일 실시 예에서, 복제 방지부(123)는 하나 또는 두 개의 전도성 와이어 사이의 물리적인 연결 상태에 기초하여 출력을 결정하는 'physical based PUF'로 구성될 수 있다.The copy protection unit 123 may generate physically unclonable function (PUF) bits. The copy protection unit 123 may be an integrated circuit (IC) that has characteristics that cannot be physically copied, and even if an attacker copies the copy protection unit 123, the original copy protection unit 123 retains the Even physical characteristics may not be replicable. Therefore, even if an attacker copies the copy protection unit 123, it may be impossible to generate the same output value of the copy protection unit 123 due to the random physical characteristics of the copy protection unit 123. The copy protection unit 123 may include 128 1-bit cells. The copy protection unit 123 may include 128 PUF cells. The copy protection unit can generate ‘PUF bits’ that are physically impossible to copy. In one embodiment, the copy protection unit 123 is configured as a 'mismatch based PUF' that determines the output after measuring the delay time caused by process deviations that occur in devices or circuits depending on the implementation method during the semiconductor manufacturing process. It can be. In one embodiment, the copy protection unit 123 may be configured as a 'physical based PUF' that determines the output based on the physical connection state between one or two conductive wires.

경로 활성부(124)는 제어부(121)로부터 수신한 제어 신호에 따라 금속 라인들(111) 중 적어도 일부를 활성화할 수 있다. 경로 활성부(124)는 금속 라인들(111)에 포함된 M개의 그룹 중 적어도 하나의 그룹을 활성화할 수 있고, 상기 그룹은 제2 방향(Y)으로 서로 이격하되 인접하여 배치된 128개의 금속 라인을 포함할 수 있다. 경로 활성부(124)는 3상 인버터로 구성될 수 있다. 보호 쉴드(110)가 N개의 금속 라인들을 포함할 때, 경로 활성부(124)는 N개의 3상 인버터를 포함할 수 있다.The path activation unit 124 may activate at least some of the metal lines 111 according to a control signal received from the control unit 121. The path activation unit 124 may activate at least one group among the M groups included in the metal lines 111, and the group consists of 128 metal groups arranged adjacent to each other but spaced apart from each other in the second direction (Y). Can contain lines. The path activation unit 124 may be configured as a three-phase inverter. When the protective shield 110 includes N metal lines, the path active section 124 may include N three-phase inverters.

데이터 변환부(125)는 블록 암호부(122)의 출력 데이터와 복제 방지부(123)의 출력 데이터를 연산 및 저장할 수 있다. 예를 들어, 데이터 변환부(125)는 블록 암호부(122)에서 출력된 암호화 데이터와 복제 방지부(123)에서 출력된 PUF 비트를 연산할 수 있다. 그에 따라, 데이터 변환부(125)는 변환된 암호화 데이터를 생성 및 저장할 수 있다. The data conversion unit 125 may calculate and store the output data of the block encryption unit 122 and the output data of the copy prevention unit 123. For example, the data conversion unit 125 may calculate the encrypted data output from the block encryption unit 122 and the PUF bit output from the copy prevention unit 123. Accordingly, the data conversion unit 125 can generate and store the converted encrypted data.

데이터 변환부(125)는 연산부(126) 및 저장부(127)를 포함할 수 있다. 연산부(126)는 블록 암호부(122)의 출력 데이터와 복제 방지부(123)의 출력 데이터를 연산할 수 있다. 연산부(126)는 블록 암호부(122)에서 출력된 암호화 데이터와 복제 방지부(123)에서 출력된 PUF 비트에 대하여 XOR 연산할 수 있다. 연산부(126)는 복수의 XOR 게이트를 포함할 수 있다. 예를 들어, 연산부(126)는 128개의 XOR 게이트를 포함할 수 있다. The data conversion unit 125 may include a calculation unit 126 and a storage unit 127. The calculation unit 126 can calculate the output data of the block encryption unit 122 and the output data of the copy prevention unit 123. The calculation unit 126 may perform an XOR operation on the encrypted data output from the block cipher unit 122 and the PUF bit output from the copy prevention unit 123. The operation unit 126 may include a plurality of XOR gates. For example, the operation unit 126 may include 128 XOR gates.

저장부(127)는 연산부(126)의 출력 데이터를 저장할 수 있다. 예를 들어, 저장부(127)는 연산부(126)에서 출력된 변환된 암호화 데이터를 저장할 수 있다. 저장부(127)는 복수의 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 복수의 D-Q 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 128개의 D-Q 플립플롭을 포함할 수 있다. 저장부(127)는 저장부(127)에 저장된 데이터들을 경로 활성부(124)에 의해 활성화된 금속라인들로 동시에 출력할 수 있다. 예를 들어, 저장부(127)는 128개의 플립플롭에 저장된 각각의 데이터들을 활성화된 금속라인들로 동시에 출력할 수 있다.The storage unit 127 may store output data of the calculation unit 126. For example, the storage unit 127 may store the converted encrypted data output from the calculation unit 126. The storage unit 127 may include a plurality of flip-flops. For example, the storage unit 127 may include a plurality of D-Q flip-flops. For example, the storage unit 127 may include 128 D-Q flip-flops. The storage unit 127 can simultaneously output the data stored in the storage unit 127 to metal lines activated by the path activation unit 124. For example, the storage unit 127 can simultaneously output each data stored in 128 flip-flops to activated metal lines.

데이터 비교부(128)는 데이터 변환부(125)의 출력 데이터와 경로 활성부(124)에 의해 활성화된 금속 라인들로부터 수신한 데이터에 기초하여 비교 데이터를 생성할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터를 연산할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터에 대하여 XOR 연산할 수 있다. 데이터 비교부(128)는 복수의 XOR 게이트를 포함할 수 있다. 예를 들어, 데이터 비교부(128)는 128개의 XOR 게이트를 포함할 수 있다. 데이터 비교부(128)는 연산 결과에 기초하여 비교 데이터를 출력할 수 있다.The data comparison unit 128 may generate comparison data based on the output data of the data conversion unit 125 and data received from metal lines activated by the path activation unit 124. The data comparison unit 128 may calculate the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may perform an XOR operation on the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may include a plurality of XOR gates. For example, the data comparison unit 128 may include 128 XOR gates. The data comparison unit 128 may output comparison data based on the calculation result.

공격 검출부(129)는 데이터 비교부(128)에서 출력된 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 감지할 수 있다. 공격 검출부(129)는 OR 게이트를 포함할 수 있다. 예를 들어, 공격 검출부(129)는 집속 이온 빔을 이용한 침투 공격이 검출된 경우 '0'을 출력하고, 집속 이온 빔을 이용한 침투 공격이 검출되지 않은 경우 '1'을 출력할 수 있다.The attack detection unit 129 may detect an intrusion attack using a focused ion beam based on the comparison data output from the data comparison unit 128. The attack detection unit 129 may include an OR gate. For example, the attack detection unit 129 may output '0' when an intrusion attack using a focused ion beam is detected, and may output '1' when an intrusion attack using a focused ion beam is not detected.

도 4는 본 개시의 일 실시 예에 따른 보안 회로의 타이밍도이다. 보다 상세하게는, 도 4는 도 1 내지 도 3을 참조하여 전술된 보안 회로(100)가 적용된 두 개의 칩(A, B)에서 보호 쉴드(110)로 전송하기 위해 같은 주기에서 생성되는 128 비트의 타이밍도의 일 실시예이다.4 is a timing diagram of a security circuit according to an embodiment of the present disclosure. More specifically, FIG. 4 shows 128 bits generated in the same cycle for transmission to the protection shield 110 from the two chips (A, B) to which the security circuit 100 described above with reference to FIGS. 1 to 3 is applied. This is an example of a timing diagram.

도 4를 참조하면, 보안 회로가 CSS 구조 또는 RSS 구조로 구현되는 경우에는 제어부(도 2의 121)에서 두 칩(A, B) 모두 같은 평문과 암호화 키를 전송하기 때문에 도 4의 첫번째 주기와 같이 두 칩(A, B)의 블록 암호가 동일한 값(예를 들어, 0x8AE012CF)으로 출력되나, 도 1 내지 도 3을 참조하여 전술된 보안 회로(100)가 적용된 두 개의 칩(A, B)은 각각 고유한 PUF 정보를 활용한 연산을 수행할 수 있으므로, 두 개의 칩(A, B)에 동일한 사이클에서 전송되는 블록 암호 값이 다를 수 있다.Referring to FIG. 4, when the security circuit is implemented with a CSS structure or an RSS structure, the control unit (121 in FIG. 2) transmits the same plaintext and encryption key to both chips (A and B), so that the first cycle of FIG. Likewise, the block ciphers of the two chips (A, B) are output as the same value (for example, 0x8AE012CF), but the two chips (A, B) to which the security circuit 100 described above with reference to FIGS. 1 to 3 are applied. Since each can perform operations using unique PUF information, the block cipher values transmitted in the same cycle to the two chips (A, B) may be different.

예를 들어, 제1 칩(A)의 PUF 정보는 0xA9E39441이고, 제2 칩(B)의 PUF 정보는 0x8A2648E9일 수 있다. 상기 PUF 정보를 활용한 연산 결과, 제1 칩(A) 및 제2 칩(B) 각각에 동일 사이클에서 전송되는 블록 암호 값은 0x2303868E와 0x00C65A26으로 서로 다를 수 있다.For example, the PUF information of the first chip (A) may be 0xA9E39441, and the PUF information of the second chip (B) may be 0x8A2648E9. As a result of the calculation using the PUF information, the block cipher values transmitted in the same cycle to each of the first chip (A) and the second chip (B) may be different from 0x2303868E and 0x00C65A26.

도 1 내지 도 3을 참조하여 전술된 보안 회로(100)는 복제 또는 같은 동작을 하는 다수의 칩 연결을 통한 보안 회로 무력화 공격에 대응 가능한 보안 회로를 제공할 수 있다. 도 1 내지 도 3을 참조하여 전술된 보안 회로(100)는 칩마다 고유한 정보를 활용하여 보호 쉴드에 전송되는 데이터를 복제 불가능한 블록 암호화를 구현할 수 있다. 그에 따라 보안성이 향상될 수 있다.The security circuit 100 described above with reference to FIGS. 1 to 3 can provide a security circuit capable of responding to security circuit neutralization attacks through duplication or connection of multiple chips performing the same operation. The security circuit 100 described above with reference to FIGS. 1 to 3 can implement unclonable block encryption of data transmitted to the protection shield by utilizing unique information for each chip. Accordingly, security can be improved.

도 5는 본 개시의 일 실시 예에 따른 복수의 금속 라인들을 포함하는 보호 쉴드 및 금속 라인들과 전기적으로 연결되어 집속 이온 빔을 이용한 침투 공격을 감지하는 검출 회로를 포함하는 보안 회로를 이용한 침투 공격 검출 방법의 순서도이다. 도 5의 보안 회로는 도 1 내지 도 3을 참조하여 전술한 보안 회로(100)일 수 있으며, 중복되는 설명은 생략한다.5 shows an intrusion attack using a security circuit including a protection shield including a plurality of metal lines and a detection circuit electrically connected to the metal lines to detect an intrusion attack using a focused ion beam according to an embodiment of the present disclosure. This is a flowchart of the detection method. The security circuit of FIG. 5 may be the security circuit 100 described above with reference to FIGS. 1 to 3, and redundant description will be omitted.

도 5를 참조하면, 침투 공격 검출 방법(S10)은 단계들(S11~S18)을 포함할 수 있다.Referring to FIG. 5, the intrusion attack detection method (S10) may include steps (S11 to S18).

단계(S11)에서, 저장부(도 3의 127)는 설정을 초기화할 수 있다. 예를 들어, 저장부(도 3의 127)는 저장된 데이터를 모두 리셋할 수 있다.In step S11, the storage unit (127 in FIG. 3) may initialize settings. For example, the storage unit (127 in FIG. 3) can reset all stored data.

단계(S12)에서, 제어부(도 3의 121)는 제1 제어 신호, 제2 제어 신호 및 제3 제어 신호를 생성할 수 있다. 제1 제어 신호는 평문 및 암호화 키 중 적어도 어느 하나일 수 있다. 상기 평문은 128 비트일 수 있다. 제2 제어 신호는 상승 펄스(rising pulse)일 수 있다. 제3 제어 신호는 펄스 신호일 수 있다. 제어부(도 3의 121)는 제1 제어 신호를 블록 암호부(도 3의 122)에 전송하고, 제2 제어 신호를 복제 방지부(도 3의 123)에 전송하고, 제3 제어 신호를 경로 활성부(도 3의 124)에 전송할 수 있다.In step S12, the controller (121 in FIG. 3) may generate a first control signal, a second control signal, and a third control signal. The first control signal may be at least one of plain text and an encryption key. The plaintext may be 128 bits. The second control signal may be a rising pulse. The third control signal may be a pulse signal. The control unit (121 in FIG. 3) transmits the first control signal to the block cipher (122 in FIG. 3), transmits the second control signal to the copy protection unit (123 in FIG. 3), and sends the third control signal to the path. It can be transmitted to the active unit (124 in FIG. 3).

단계(S13)에서, 블록 암호부(도 3의 122)는 제1 제어 신호에 기초하여 암호화 데이터를 출력할 수 있다. 블록 암호부(도 3의 122)는 블록 암호를 수행할 수 있는 블록 암호화 로직을 포함할 수 있다. 블록 암호부(도 3의 122)는 제1 제어 신호에 기초하여 블록 암호를 수행함으로써 암호화 데이터를 출력할 수 있다. 블록 암호들은 데이터를 암호화 및 복호화하는데 사용되는 대칭 키를 이용한 일정한 변환(unvarying transformation)으로 블록이라 불리는 고정 길이의 비트 그룹에 대해 동작하는 결정론적 암호화 알고리즘일 수 있다. 블록 암호부(122)는 종류에 무관하고, 크기가 128 비트(bit)일 수 있다. 예를 들어, 블록 암호부(122)는 Block Cipher로 구현될 수 있다. 블록 암호부(122)는 암호화 데이터를 출력할 수 있다.In step S13, the block encryption unit (122 in FIG. 3) may output encrypted data based on the first control signal. The block cipher unit (122 in FIG. 3) may include block encryption logic capable of performing block cipher. The block cipher unit (122 in FIG. 3) may output encrypted data by performing block cipher based on the first control signal. Block ciphers can be deterministic encryption algorithms that operate on groups of fixed-length bits, called blocks, with an unvarying transformation using a symmetric key used to encrypt and decrypt data. The block cipher unit 122 is regardless of type and may have a size of 128 bits. For example, the block cipher 122 may be implemented as a Block Cipher. The block encryption unit 122 can output encrypted data.

단계(S14)에서, 복제 방지부(도 3의 123)는 제2 제어 신호에 기초하여 물리적으로 복제가 불가능한 PUF 비트들을 생성할 수 있다. 복제 방지부(도 3의 123)는 128개의 1비트 셀을 포함할 수 있다. 복제 방지부(123)는 128개의 PUF셀을 포함할 수 있다. In step S14, the copy protection unit (123 in FIG. 3) may generate PUF bits that cannot be physically copied based on the second control signal. The copy protection unit (123 in FIG. 3) may include 128 1-bit cells. The copy protection unit 123 may include 128 PUF cells.

일 실시 예에서, 복제 방지부(도 3의 123)는 반도체 제조 공정 중에서 구현하는 방식에 따라 소자 또는 회로에 발생하는 공정 편차에 의해 발생하는 지연 시간을 측정한 후 출력을 결정하는 복제 방지 소자(이하에서는, 'mismatch based PUF'로 지칭한다)로 구성될 수 있다. In one embodiment, the copy protection unit (123 in FIG. 3) is a copy protection element (123 in FIG. 3) that determines the output after measuring the delay time caused by the process deviation that occurs in the device or circuit depending on the method of implementation during the semiconductor manufacturing process. Hereinafter, it may be configured as 'mismatch based PUF').

일 실시 예에서, 복제 방지부(도 3의 123)는 하나 또는 두 개의 전도성 와이어 사이의 물리적인 연결 상태에 기초하여 출력을 결정하는 복제 방지 소자(이하에서는, 'physical based PUF'로 지칭한다)로 구성될 수 있다.In one embodiment, the copy protection unit (123 in FIG. 3) is a copy protection element that determines the output based on the physical connection state between one or two conductive wires (hereinafter referred to as 'physical based PUF'). It can be composed of:

단계(S15)에서, 경로 활성부(도 3의 124)는 제3 제어 신호에 기초하여 복수의 금속 라인들(도 3의 111) 중 적어도 일부를 활성화할 수 있다. 상기 제3 제어 신호는 펄스 신호일 수 있다.In step S15, the path activation unit (124 in FIG. 3) may activate at least some of the plurality of metal lines (111 in FIG. 3) based on the third control signal. The third control signal may be a pulse signal.

단계(S16)에서, 데이터 변환부(도 3의 125)는 블록 암호부(도 3의 122)에서 출력된 암호화 데이터와 복제 방지부(도 3의 123)에서 출력된 PUF 비트들을 수신할 수 있다. 데이터 변환부(도 3의 124)는 상기 암호화 데이터 및 상기 PUF 비트들을 연산하여 변환된 암호화 데이터를 출력할 수 있다. In step S16, the data conversion unit (125 in FIG. 3) may receive the encrypted data output from the block encryption unit (122 in FIG. 3) and the PUF bits output from the copy prevention unit (123 in FIG. 3). . The data conversion unit (124 in FIG. 3) may calculate the encrypted data and the PUF bits and output the converted encrypted data.

데이터 변환부(125)는 연산부(126) 및 저장부(127)를 포함할 수 있다. 연산부(126)는 블록 암호부(122)의 출력 데이터와 복제 방지부(123)의 출력 데이터를 연산할 수 있다. 연산부(126)는 블록 암호부(122)에서 출력된 암호화 데이터와 복제 방지부(123)에서 출력된 PUF 비트에 대하여 XOR 연산할 수 있다. The data conversion unit 125 may include a calculation unit 126 and a storage unit 127. The calculation unit 126 can calculate the output data of the block encryption unit 122 and the output data of the copy prevention unit 123. The calculation unit 126 may perform an XOR operation on the encrypted data output from the block cipher unit 122 and the PUF bit output from the copy prevention unit 123.

저장부(127)는 연산부(126)의 출력 데이터를 저장할 수 있다. 저장부(127)는 연산부(126)에서 출력된 변환된 암호화 데이터를 저장할 수 있다. 저장부(127)는 복수의 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 복수의 D-Q 플립플롭들을 포함할 수 있다. 예를 들어, 저장부(127)는 128개의 D-Q 플립플롭을 포함할 수 있다.The storage unit 127 may store output data of the calculation unit 126. The storage unit 127 may store the converted encrypted data output from the calculation unit 126. The storage unit 127 may include a plurality of flip-flops. For example, the storage unit 127 may include a plurality of D-Q flip-flops. For example, the storage unit 127 may include 128 D-Q flip-flops.

저장부(127)는 저장부(127)에 저장된 데이터들을 경로 활성부(124)에 의해 활성화된 금속라인들로 동시에 출력할 수 있다. 예를 들어, 저장부(127)는 128개의 플립플롭에 저장된 각각의 데이터들을 동시에 출력할 수 있다.The storage unit 127 can simultaneously output the data stored in the storage unit 127 to metal lines activated by the path activation unit 124. For example, the storage unit 127 can simultaneously output each data stored in 128 flip-flops.

단계(S17)에서, 데이터 비교부(도 3의 128)는 저장부(도 3의 127)에서 출력된 변환된 암호화 데이터와 복수의 금속 라인들(도 3의 111)을 통해 수신한 데이터를 비교하여 비교 데이터를 출력할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터를 연산할 수 있다. 데이터 비교부(128)는 데이터 비교부(128)의 출력 데이터와 금속 라인을 통해 수신한 데이터에 대하여 XOR 연산할 수 있다. 데이터 비교부(128)는 복수의 XOR 게이트를 포함할 수 있다. 예를 들어, 데이터 비교부(128)는 128개의 XOR 게이트를 포함할 수 있다. 데이터 비교부(128)는 연산 결과에 기초하여 비교 데이터를 출력할 수 있다.In step S17, the data comparison unit (128 in FIG. 3) compares the converted encrypted data output from the storage unit (127 in FIG. 3) with the data received through a plurality of metal lines (111 in FIG. 3). You can output comparative data. The data comparison unit 128 may calculate the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may perform an XOR operation on the output data of the data comparison unit 128 and the data received through the metal line. The data comparison unit 128 may include a plurality of XOR gates. For example, the data comparison unit 128 may include 128 XOR gates. The data comparison unit 128 may output comparison data based on the calculation result.

단계(S18)에서, 공격 검출부(도 3의 129)는 상기 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 감지할 수 있다. 공격 검출부(도 3의 129)는 침투 공격을 감지함에 따라 출력 신호를 생성할 수 있다. 공격 검출부(도 3의 129)는 집속 이온 빔을 이용한 침투 공격을 검출한 경우 상기 출력신호로서 '0'을 출력하고, 집속 이온 빔을 이용한 침투 공격이 검출되지 않은 경우 상기 출력신호로서 '1'을 출력할 수 있다.In step S18, the attack detection unit (129 in FIG. 3) may detect an intrusion attack using a focused ion beam based on the comparison data. The attack detection unit (129 in FIG. 3) may generate an output signal as it detects an intrusion attack. The attack detection unit (129 in FIG. 3) outputs '0' as the output signal when an infiltration attack using a focused ion beam is detected, and '1' as the output signal when an intrusion attack using a focused ion beam is not detected. can be output.

제어부(도 3의 121)는 공격 검출부(도 3의 129)의 출력 신호에 기초하여 침투 알람을 생성할 수 있다.The control unit (121 in FIG. 3) may generate an intrusion alarm based on the output signal of the attack detection unit (129 in FIG. 3).

한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disclosed embodiments may be implemented in the form of a recording medium that stores instructions executable by a computer. Instructions may be stored in the form of program code, and when executed by a processor, may create program modules to perform operations of the disclosed embodiments. The recording medium may be implemented as a computer-readable recording medium.

컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. Computer-readable recording media include all types of recording media storing instructions that can be decoded by a computer. For example, there may be Read Only Memory (ROM), Random Access Memory (RAM), magnetic tape, magnetic disk, flash memory, optical data storage device, etc.

이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 본 개시가 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.As described above, the disclosed embodiments have been described with reference to the attached drawings. A person skilled in the art to which this disclosure pertains will understand that the present disclosure may be practiced in forms different from the disclosed embodiments without changing the technical idea or essential features of the present disclosure. The disclosed embodiments are illustrative and should not be construed as limiting.

Claims (22)

보안 회로에 관한 것으로,
검출 회로의 상부에 배치되며, 제1 방향으로 연장되고 상기 제1 방향과 수직한 제2 방향으로 상호 이격되어 배치되는 N개의 금속 라인들을 포함하고, 상기 N은 2보다 큰 자연수인 보호 쉴드; 및
상기 보호 쉴드와 상기 제1 방향 및 상기 제2 방향에 수직한 제3 방향으로 이격하여 배치되고, 상기 N개의 금속 라인들 중 적어도 일부와 전기적으로 연결되어 집속 이온 빔을 이용한 침투 공격을 감지하는 검출 회로를 포함하고,
상기 검출 회로는,
평문 및 암호화 키 중 어느 하나인 제1 제어 신호, 상승 펄스(rising pulse)인 제2 제어 신호 및 펄스 신호인 제3 제어 신호를 생성하는 제어부;
상기 제어부로부터 수신한 제1 제어 신호에 따라 블록 암호화를 수행하는 블록 암호화 로직을 포함하고, 암호화 데이터를 출력하는 블록 암호부;
상기 제어부로부터 수신한 제2 제어 신호에 따라 물리적으로 복제가 불가능한 PUF 비트들을 생성하며, 하나 또는 두 개의 전도성 와이어 사이의 물리적인 연결 상태에 기초하여 출력을 결정하는 복제 방지 소자(Physical Based PUF)로 구성되는 복제 방지부;
3상 인버터로 구성되며, 상기 제어부로부터 수신한 제3 제어 신호에 따라 상기 보호 쉴드의 금속 라인들 중 적어도 일부를 활성화하는 경로 활성부;
상기 블록 암호부의 출력 데이터와 상기 복제 방지부의 출력 비트들을 연산 및 저장하는 데이터 변환부;
상기 데이터 변환부의 출력 데이터와 상기 경로 활성부에 의해 활성화된 금속라인들로부터 수신한 데이터에 기초하여 비교 데이터를 생성하는 데이터 비교부; 및
상기 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 검출하는 공격 검출부를 포함하며,
상기 데이터 변환부는, 상기 암호화 데이터와 상기 PUF 비트에 대하여 XOR 연산하여 변환된 암호화 데이터를 출력하는 연산부; 및 상기 연산부로부터 출력된 데이터를 저장하고, 복수의 플립플롭을 포함하는 저장부를 포함하고,
상기 보안 회로는, 상기 저장된 데이터들을 상기 경로 활성부에 의해 활성화된 금속라인들로 동시에 출력하고,
상기 공격 검출부는, OR 게이트를 포함하며, 상기 집속 이온 빔을 이용한 침투 공격이 검출된 경우 출력 신호로서 '0'을 출력하고, 상기 집속 이온 빔을 이용한 침투 공격이 검출되지 않은 경우 출력 신호로서 '1'을 출력하는 것을 특징으로 하는 보안 회로.
Regarding security circuits,
a protective shield disposed above the detection circuit and including N metal lines extending in a first direction and spaced apart from each other in a second direction perpendicular to the first direction, where N is a natural number greater than 2; and
Detector is disposed to be spaced apart from the protective shield in a third direction perpendicular to the first and second directions, and is electrically connected to at least some of the N metal lines to detect an intrusion attack using a focused ion beam. Contains a circuit,
The detection circuit is,
A control unit that generates a first control signal that is one of plain text and an encryption key, a second control signal that is a rising pulse, and a third control signal that is a pulse signal;
a block encryption unit including block encryption logic that performs block encryption according to a first control signal received from the control unit, and outputting encrypted data;
It is a copy prevention element (Physically Based PUF) that generates PUF bits that cannot be physically copied according to the second control signal received from the control unit and determines the output based on the physical connection state between one or two conductive wires. A copy prevention unit configured;
a path activation unit configured as a three-phase inverter and activating at least some of the metal lines of the protective shield according to a third control signal received from the control unit;
a data conversion unit that calculates and stores the output data of the block encryption unit and the output bits of the copy prevention unit;
a data comparison unit that generates comparison data based on the output data of the data conversion unit and data received from metal lines activated by the path activation unit; and
An attack detection unit that detects an infiltration attack using a focused ion beam based on the comparison data,
The data conversion unit includes an operation unit that performs an XOR operation on the encryption data and the PUF bits and outputs converted encryption data; and a storage unit that stores data output from the calculation unit and includes a plurality of flip-flops,
The security circuit simultaneously outputs the stored data to metal lines activated by the path activation unit,
The attack detection unit includes an OR gate, and outputs '0' as an output signal when an infiltration attack using the focused ion beam is detected, and outputs '0' as an output signal when an intrusion attack using the focused ion beam is not detected. A security circuit characterized by outputting 1'.
제1항에 있어서,
상기 블록 암호부는,
블록 암호(Block Cipher)로 구현되는 것을 특징으로 하는 보안 회로.
According to paragraph 1,
The block cipher unit,
A security circuit implemented with a block cipher.
제2항에 있어서,
상기 복제 방지부는,
공정 편차에 의해 발생하는 지연 시간을 측정한 후 출력을 결정하는 복제 방지 소자(mismatch based PUF)로 구성되는 것을 특징으로 하는 보안 회로.
According to paragraph 2,
The copy protection unit,
A security circuit characterized by consisting of a copy prevention element (mismatch based PUF) that determines the output after measuring the delay time caused by process deviation.
제3항에 있어서,
상기 블록 암호부는,
상기 제어부로부터 수신한 제1 제어 신호에 따라 블록 암호화를 수행함으로써 암호화 데이터를 출력하며, 상기 블록 암호화는 데이터를 암호화 및 복호화하는데 사용되는 대칭 키를 이용한 이용한 일정한 변환(unvarying transformation)으로 블록이라 불리는 고정 길이의 비트 그룹에 대해 동작하는 결정론적 암호화 알고리즘인, 보안 회로.
According to paragraph 3,
The block cipher unit,
Encrypted data is output by performing block encryption according to the first control signal received from the control unit, and the block encryption is a fixed transformation called a block using a symmetric key used to encrypt and decrypt the data. A security circuit, a deterministic encryption algorithm that operates on groups of bits of length.
제4항에 있어서,
상기 블록 암호부는,
종류에 무관하고, 크기가 128 비트(bit)인 것을 특징으로 하는 보안 회로.
According to paragraph 4,
The block cipher unit,
A security circuit that is independent of type and has a size of 128 bits.
제5항에 있어서,
상기 복제 방지부는,
128개의 1비트 셀을 포함하는 것을 특징으로 하는 보안 회로.
According to clause 5,
The copy protection unit,
A security circuit comprising 128 1-bit cells.
삭제delete 삭제delete 삭제delete 제1항에 있어서,
상기 제어부는,
상기 공격 검출부의 상기 출력 신호에 기초하여 침투 알람을 생성하는 것을 특징으로 하는 보안 회로.
According to paragraph 1,
The control unit,
A security circuit characterized in that it generates an intrusion alarm based on the output signal of the attack detection unit.
복수의 금속 라인들을 포함하는 보호 쉴드 및 상기 금속 라인들과 전기적으로 연결되어 집속 이온 빔을 이용한 침투 공격을 감지하는 검출 회로를 포함하는 보안 회로를 이용한 침투 공격 검출 방법에 있어서,
저장부의 설정을 초기화 하는 단계;
제어부에서 평문 및 암호화 키 중 어느 하나인 제1 제어 신호, 상승 펄스(rising pulse)인 제2 제어 신호 및 펄스 신호인 제3 제어 신호를 생성하는 단계;
블록 암호화를 수행하는 블록 암호화 로직을 포함하는 블록 암호부가 상기 제1 제어 신호에 따라 암호화 데이터를 출력하는 단계;
하나 또는 두 개의 전도성 와이어 사이의 물리적인 연결 상태에 기초하여 출력을 결정하는 복제 방지 소자(Physical Based PUF)로 구성되는 복제 방지부가 상기 제2 제어 신호에 따라 물리적으로 복제가 불가능한 PUF 비트들을 생성하는 단계;
3상 인버터로 구성된 경로 활성부가 상기 제3 제어 신호에 따라 상기 복수의 금속 라인들 중 적어도 일부를 활성화하는 단계;
데이터 변환부가 상기 암호화 데이터 및 상기 PUF 비트들을 수신하고, 상기 암호화 데이터 및 상기 PUF 비트에 대하여 XOR 연산하여 변환된 암호화 데이터를 출력하는 단계;
데이터 비교부가 상기 변환된 암호화 데이터와 상기 복수의 금속 라인들을 통해 수신한 데이터를 비교하여 비교 데이터를 출력하는 단계; 및
공격 검출부가 상기 비교 데이터에 기초하여 집속 이온 빔을 이용한 침투 공격을 감지하는 단계를 포함하며,
복수의 플립플롭을 포함하는 저장부에 상기 출력된 변환된 암호화 데이터를 저장하고,
상기 저장된 데이터들을 상기 경로 활성부에 의해 활성화된 금속라인들로 동시에 출력하고,
상기 공격 검출부는 OR 게이트를 포함하며, 상기 집속 이온 빔을 이용한 침투 공격이 검출된 경우 출력 신호로서 '0'을 출력하고, 상기 집속 이온 빔을 이용한 침투 공격이 검출되지 않은 경우 출력 신호로서 '1'을 출력하는 것을 특징으로 하는 침투 공격 검출 방법.
A method for detecting an intrusion attack using a security circuit including a protective shield including a plurality of metal lines and a detection circuit electrically connected to the metal lines to detect an intrusion attack using a focused ion beam, comprising:
Initializing the settings of the storage unit;
Generating, in a control unit, a first control signal that is one of plain text and an encryption key, a second control signal that is a rising pulse, and a third control signal that is a pulse signal;
A block encryption unit including block encryption logic that performs block encryption outputs encrypted data according to the first control signal;
A copy protection unit consisting of a copy protection element (Physically Based PUF) that determines the output based on the physical connection state between one or two conductive wires generates PUF bits that cannot be physically copied according to the second control signal. step;
activating at least some of the plurality of metal lines according to the third control signal by a path activation unit composed of a three-phase inverter;
A data conversion unit receiving the encrypted data and the PUF bits, performing an XOR operation on the encrypted data and the PUF bits, and outputting converted encrypted data;
A data comparison unit comparing the converted encrypted data with data received through the plurality of metal lines and outputting comparison data; and
An attack detection unit detecting an intrusion attack using a focused ion beam based on the comparison data,
Storing the output converted encrypted data in a storage unit including a plurality of flip-flops,
Simultaneously output the stored data to metal lines activated by the path activation unit,
The attack detection unit includes an OR gate, and outputs '0' as an output signal when an infiltration attack using the focused ion beam is detected, and outputs '1' as an output signal when an intrusion attack using the focused ion beam is not detected. An intrusion attack detection method characterized by outputting '.
제11항에 있어서,
상기 블록 암호부는,
블록 암호(Block Cipher)로 구현되는 것을 특징으로 하는 침투 공격 검출 방법.
According to clause 11,
The block cipher unit,
An intrusion attack detection method characterized by being implemented with a block cipher.
제12항에 있어서,
상기 복제 방지부는,
공정 편차에 의해 발생하는 지연 시간을 측정한 후 출력을 결정하는 복제 방지 소자(mismatch based PUF)로 구성되는 것을 특징으로 하는 침투 공격 검출 방법.
According to clause 12,
The copy protection unit,
An intrusion attack detection method characterized by consisting of a copy prevention element (mismatch based PUF) that determines the output after measuring the delay time caused by process deviation.
제13항에 있어서,
상기 블록 암호부는,
상기 제어부로부터 수신한 제1 제어 신호에 따라 블록 암호화를 수행함으로써 암호화 데이터를 출력하며, 상기 블록 암호화는 데이터를 암호화 및 복호화하는데 사용되는 대칭 키를 이용한 이용한 일정한 변환(unvarying transformation)으로 블록이라 불리는 고정 길이의 비트 그룹에 대해 동작하는 결정론적 암호화 알고리즘인, 침투 공격 검출 방법.
According to clause 13,
The block cipher unit,
Encrypted data is output by performing block encryption according to the first control signal received from the control unit, and the block encryption is a fixed transformation called a block using a symmetric key used to encrypt and decrypt the data. A method for detecting intrusion attacks, a deterministic encryption algorithm that operates on groups of bits of length.
제14항에 있어서,
상기 블록 암호부는,
종류에 무관하고, 크기가 128 비트(bit)인 것을 특징으로 하는 침투 공격 검출 방법.
According to clause 14,
The block cipher unit,
An intrusion attack detection method that is independent of type and has a size of 128 bits.
제15항에 있어서,
상기 복제 방지부는,
128개의 1비트 셀을 포함하는 것을 특징으로 하는 침투 공격 검출 방법.
According to clause 15,
The copy protection unit,
An intrusion attack detection method comprising 128 1-bit cells.
삭제delete 삭제delete 삭제delete 제11항에 있어서,
상기 제어부는 상기 공격 검출부의 상기 출력 신호에 기초하여 침투 알람을 생성하는 단계를 더 포함하는 것을 특징으로 하는 침투 공격 검출 방법.
According to clause 11,
The control unit further includes the step of generating an intrusion alarm based on the output signal of the attack detection unit.
컴퓨터와 결합되어, 제11항 내지 제16항 및 제20항 중 어느 한 항의 침투 공격 검출 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 프로그램.A program coupled to a computer and stored in a computer-readable recording medium to execute the intrusion attack detection method of any one of claims 11 to 16 and 20. 컴퓨터와 결합되어, 제11항 내지 제16항 및 제20항 중 어느 한 항의 침투 공격 검출 방법을 실행시키기 위한 프로그램이 저장된 컴퓨터 판독 가능한 기록매체.A computer-readable recording medium coupled to a computer and storing a program for executing the intrusion attack detection method of any one of claims 11 to 16 and 20.
KR1020220116162A 2022-09-15 2022-09-15 Method and security circuit for detecting focused ion beam(fib) attack KR102593608B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220116162A KR102593608B1 (en) 2022-09-15 2022-09-15 Method and security circuit for detecting focused ion beam(fib) attack

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220116162A KR102593608B1 (en) 2022-09-15 2022-09-15 Method and security circuit for detecting focused ion beam(fib) attack

Publications (1)

Publication Number Publication Date
KR102593608B1 true KR102593608B1 (en) 2023-10-23

Family

ID=88508383

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220116162A KR102593608B1 (en) 2022-09-15 2022-09-15 Method and security circuit for detecting focused ion beam(fib) attack

Country Status (1)

Country Link
KR (1) KR102593608B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180050276A (en) * 2015-07-01 2018-05-14 시큐어-아이씨 에스에이에스 Embedded test circuitry for physical copy protection
JP2019097158A (en) * 2017-11-24 2019-06-20 力旺電子股▲ふん▼有限公司eMemory Technology Inc. Forgery prevention communication system
KR20200141783A (en) 2019-06-11 2020-12-21 연세대학교 산학협력단 On-Chip Security Circuit for Detecting and Protecting against Invasive Attacks
JP2022119136A (en) * 2021-02-03 2022-08-16 学校法人早稲田大学 Chip unique random number generator

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180050276A (en) * 2015-07-01 2018-05-14 시큐어-아이씨 에스에이에스 Embedded test circuitry for physical copy protection
JP2019097158A (en) * 2017-11-24 2019-06-20 力旺電子股▲ふん▼有限公司eMemory Technology Inc. Forgery prevention communication system
KR20200141783A (en) 2019-06-11 2020-12-21 연세대학교 산학협력단 On-Chip Security Circuit for Detecting and Protecting against Invasive Attacks
JP2022119136A (en) * 2021-02-03 2022-08-16 学校法人早稲田大学 Chip unique random number generator

Similar Documents

Publication Publication Date Title
KR101723006B1 (en) Device authentication using a physically unclonable functions based key generation system
US11354452B2 (en) Secure logic chip for resisting hardware trojan induced leakage in combinational logic
Milosevic et al. Malware in IoT software and hardware
CN113792297A (en) Service processing method, device and equipment
EP3584737B1 (en) Improved detection of laser fault injection attacks on cryptographic devices
KR102593608B1 (en) Method and security circuit for detecting focused ion beam(fib) attack
Rahimi et al. Trends and challenges in ensuring security for low-power and high-performance embedded SoCs
Hussain et al. A customized authentication design for traffic hijacking detection on hardware-trojan infected nocs
Irungu et al. Artificial intelligence techniques for sql injection attack detection
EP3907633B1 (en) System and method for obfuscating opcode commands in a semiconductor device
Alanwar et al. Dynamic fpga detection and protection of hardware trojan: A comparative analysis
Bu et al. SRASA: A generalized theoretical framework for security and reliability analysis in computing systems
Potestad-Ordóñez et al. Trivium stream cipher countermeasures against fault injection attacks and DFA
Soni et al. The Cybersecurity Ecosystem: Challenges, Risk and Emerging Technologies
Hur et al. Hiding Vulnerabilities of Internet of Things Software Using Anti-Tamper Technique
Dave Internet of Things Security and Forensics: Concern and Challenges for Inspecting Cyber Attacks
Yevseiev et al. A HARDWARE CRYPTOSYSTEM BASED ON A RANDOM NUMBER GENERATOR WITH TWO TYPES OF ENTROPY SOURCES
Aliyu et al. Hardware Trojan model for attack and detection techniques
Chhabra et al. Analysis of aes cryptosystem in the existence of hardware trojan
Khavya et al. Forensic analysis and security assessment in Android m-Banking applications: A survey
Bag et al. Advanced multi-step security scheme using PCA for RFID system and its FPGA implementation
US20240048354A1 (en) Electronic device using homomorphic encryption and encrypted data processing method thereof
Liu et al. Research and Implementation of Embedded Database Encryption System based on Lightweight Cryptographic Algorithms
MusabIqbal et al. A review on the security of the internet of things (IOT)
Saif et al. Providing a security layer for Man-in-the-Middle attack in fog computing

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant