KR101393806B1 - Multistage physical unclonable function system - Google Patents

Multistage physical unclonable function system Download PDF

Info

Publication number
KR101393806B1
KR101393806B1 KR1020130036430A KR20130036430A KR101393806B1 KR 101393806 B1 KR101393806 B1 KR 101393806B1 KR 1020130036430 A KR1020130036430 A KR 1020130036430A KR 20130036430 A KR20130036430 A KR 20130036430A KR 101393806 B1 KR101393806 B1 KR 101393806B1
Authority
KR
South Korea
Prior art keywords
puf
response
basic
puf system
challenge
Prior art date
Application number
KR1020130036430A
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 KR1020130036430A priority Critical patent/KR101393806B1/en
Application granted granted Critical
Publication of KR101393806B1 publication Critical patent/KR101393806B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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]

Abstract

When a physical unclonable function (PUF) system, which includes a plurality of PUF cells and in which the length of an inputted challenge bit and a created response bit is fixed is called a basic PUF system, a multistage PUF system of the present invention includes: a control unit which generates a control signal required for the operation of the multistage PUF system; a random number generating unit which includes one or more basic PUF systems and is configured in multistage in a manner of allowing a first basic PUF system to receive a challenge bit and create a response bit and of allowing a second basic PUF system to receive the response bit, created by the first basic PUF system, and create a response bit; and a selection unit which selects either a response bit or a challenge bit created by the last step of a basic PUF system in the random number generating unit and provides the selected one as an input to the first basic PUF system, according to a control signal of the control unit.

Description

다단계 물리적 복제 불가 함수 시스템 {Multistage Physical Unclonable Function System}{Multistage Physical Unclonable Function System}

본 발명은 물리적 복제 불가 함수(Physical Unclonable Function, PUF)에 관한 것으로서, 더욱 상세하게는 하나의 장치가 외부의 공격으로 비밀 키가 공개되었을 때, 공격당한 그 장치를 제외하고 다른 장치에서 공개된 비밀 키로 사용할 수 없도록 하는 물리적 복제 불가 함수 시스템에 관한 것이다.
The present invention relates to a physical unclonable function (PUF), and more particularly, to a method and apparatus for preventing unauthorized disclosure of a secret key from a device Quot; < RTI ID = 0.0 > and / or < / RTI >

정보통신 네트워크, 즉 인터넷 및 네트워크의 발전으로 보안의 중요성이 지속적으로 증가되고 있다. 또한, 인터넷 뱅킹,인터넷 쇼핑 및 공공기관의 증명서 등 네트워크상에서 금전 및 개인 정보가 거래되고 활용되기 때문에, 이와 같은 주요정보를 보호해야하는 보안 시스템이 요구되고 있다. 따라서 주민등록증과 지문처럼 개인 식별이 가능한 칩이 만들어질 필요가 있다.With the development of information communication networks, that is, the Internet and networks, the importance of security is continuously increasing. In addition, since money and personal information are traded and utilized in networks such as Internet banking, Internet shopping, and public institution certificates, a security system that protects such important information is required. Therefore, it is necessary to make a chip that can be personally identifiable like a personal identification card and a fingerprint.

보통 보안 기술은 소프트웨어 및 하드웨어를 이용하여 구성된다. 두 경우 모두 비밀 키를 사용하고 비밀 키를 안전하게 보관하여야 한다. 비밀 키가 외부의 공격으로 공개되었을 때 이 키는 다른 장치에서 그대로 사용될 수 있다. 이러한 경우에 대비한 보안 기술로서, 물리적 복제 불가 함수(Physical Unclonable Function, PUF)가 있다.Usually security technology is configured using software and hardware. In both cases, the secret key must be used and the secret key must be kept secure. When a secret key is exposed as an external attack, this key can be used as is on other devices. As a security technique against such cases, there is a physical unclonable function (PUF).

Physical Unclonable Function(PUF)는 물리적으로 복제가 불가능하도록 구현하여 보안 성능을 높이는 기술로서, 물리적 복제방지 기능을 수행한다. PUF는 인간의 지문처럼 각 소자 고유의 인식정보를 생성시키는 것이다. 고유 인식정보는 하나의 장치가 외부의 공격으로 비밀 키가 공개되더라도 공격당한 장치를 제외하고 다른 장치는 공개된 비밀 키를 사용할 수 없게 한다. PUF를 이용하면 지문의 효과를 각 소자마다 디지털 형식으로 제공할 수 있다. Physical Unclonable Function (PUF) is a technology that improves the security performance by implementing physical replication impossible, and performs physical copy protection function. PUF is to generate recognition information inherent to each device like human fingerprint. Unique identification information makes it impossible for other devices to use the public secret key except for the attacked device even if the secret key is disclosed by one attack by an external device. With PUF, the effect of fingerprint can be provided in digital form for each device.

PUF회로는 기존의 반도체 공정을 활용하여 작은 면적의 회로로 만들 수 있다. PUF 회로는 회로구조가 동일한 셀(cell) 들로 구성되고 같은 제조 공정으로 만들어지지만 제조 공정 편차에 따라 셀(cell) 들이 미세하게 서로 다른 값들을 출력한다. 이처럼, PUF 회로는 여러 셀들마다 미세한 차이를 검출하여 지문처럼 사용하는 것이다. The PUF circuit can be made into a small area circuit by utilizing the existing semiconductor process. The PUF circuit is made up of cells of the same circuit structure and made in the same manufacturing process, but the cells output different values according to manufacturing process variation. As such, the PUF circuit detects a small difference in every cell and uses it as a fingerprint.

PUF 회로에 입력신호인 챌린지(challenge) 비트(bit)를 입력하면 PUF 셀(cell) 각각은 고유한 리스판스(response) 비트(bit)를 출력한다. 즉, PUF 회로에서는 같은 셀(cell) 회로를 반복하여 동일한 공정으로 제조하여도 다른 리스판스(response) 발생능력을 갖는 것이다. 이러한 성질이 PUF 회로에서 물리적인 복제불가의 특성을 갖게 한다.When a challenge bit is input to the PUF circuit, each PUF cell outputs a unique response bit. That is, even if the same cell circuit is repeatedly manufactured in the same process in the PUF circuit, it has a different response generating capability. This property makes the physical non-reproducible characteristic in the PUF circuit.

PUF 시스템은 PUF 셀(cell)이 모여 구성되며 이 시스템의 입력 값과 출력 값은 각각 챌린지(challenge)와 리스판스(response)로 나타낸다. PUF 셀의 리스판스(response) 비트(bit)는 PUF 셀 각각 모두 고유한 값을 갖고 있기 때문에, PUF 시스템은 동일한 챌린지(challenge) 비트(bit)를 입력 받더라도 각각 고유한 리스판스(response) 비트(bit) 값을 갖게 된다. The PUF system consists of PUF cells, and the input and output values of the system are represented by a challenge and a response, respectively. Since the response bits of the PUF cell each have a unique value in each of the PUF cells, the PUF system receives unique challenge bits (even if the same challenge bits are input) bit) value.

각각의 PUF 시스템은 동일한 챌린지(challenge)를 입력받아도 서로 다른 리스판스(response)를 출력한다. 따라서 각각의 PUF 시스템은 각각 챌린지(challenge)와 리스판스(response)의 쌍으로 이루어진다. 그러므로 PUF 시스템을 갖는 장치들은 챌린지(challenge)에 따라 리스판스(response)가 모두 다르기 때문에 고유한 장치 식별이 가능하다. 이러한 특성으로 챌린지(challenge)와 리스판스(response)쌍을 이용하여 전자지문 및 암호화 장치에 사용할 수 있다. Each PUF system outputs different responses even when the same challenge is input. Each PUF system therefore consists of a pair of challenge and response, respectively. Therefore, devices having a PUF system can distinguish unique devices because their responses are different according to a challenge. These characteristics can be used in electronic fingerprinting and encryption devices using a challenge and a response pair.

종래 PUF 시스템에서는 챌린지(challenge)와 리스판스(response) 쌍이 노출될 수 있는 문제점이 있다. 그리고 종래 PUF 시스템에서는 하나의 챌린지(challenge)를 입력받아 고정된 리스판스(response) 비트(bit) 길이만 출력하며, 하나의 챌린지를 입력받아 비선형 임의의 값을 갖는 챌린지를 재 생성하여 고정된 리스판스 비트 이상의 길이를 갖는 리스판스(response) 비트(bit)를 출력하는 것이 불가능하다.
In the conventional PUF system, there is a problem that a challenge and a response pair can be exposed. In the conventional PUF system, one challenge is received and only a fixed length of response bits is output. One challenge is received and a challenge having a non-linear random value is regenerated to generate a fixed lease It is impossible to output a response bit having a length equal to or greater than the predetermined number of bits.

본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 하나의 챌린지(challege)를 입력받아 하나 또는 하나 이상의 리스판스(response)를 생성할 수 있도록 PUF(Physical Unclonabel Function) 셀(cell)을 다단으로 구성하고 반복 수행하여 새로운 리스판스를 생성하는 다단계 PUF 시스템을 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been conceived to solve the above-mentioned problems, and it is an object of the present invention to provide a PUF (Physical Unclonelabe Function) cell for receiving one challege and generating one or more responses, The present invention is directed to a multi-stage PUF system that generates a new response by repeating the steps of FIG.

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

이와 같은 목적을 달성하기 위한 본 발명은 다수의 물리적 복제 불가 함수(Physical Unclonable Function, PUF) 셀(cell) 들을 포함하고, 입력되는 챌린지(challenge) 비트와 생성되는 리스판스(response) 비트의 길이가 고정되어 있는 PUF 시스템을 기본 PUF 시스템이라고 할 때, 다단계 물리적 복제 불가 함수 시스템의 동작에 필요한 제어신호를 발생시키는 제어부, 하나 이상의 기본 PUF 시스템을 포함하여 이루어지며, 첫번째 기본 PUF 시스템에서 챌린지 비트를 입력받아 리스판스 비트를 생성하고, 두번째 기본 PUF 시스템에서는 첫번째 기본 PUF 시스템에서 생성된 리스판스 비트를 입력으로 하여 리스판스 비트를 생성하는 방식으로 다단계로 구성되는 난수 생성부 및 상기 제어부의 제어신호에 따라, 상기 난수 생성부에서 마지막 단계의 기본 PUF 시스템에서 생성된 리스판스 비트와 상기 챌린지 비트 중에서 하나를 선택하여 상기 첫번째 기본 PUF 시스템의 입력에 제공하는 선택부를 포함한다.In order to accomplish the above object, the present invention provides a method of controlling a mobile station including a plurality of physical unclonable function (PUF) cells, the length of an incoming challenge bit and a generated response bit A controller for generating a control signal required for operation of the multi-stage physical non-reproducible function system when the fixed PUF system is a basic PUF system, and at least one basic PUF system, wherein the first basic PUF system inputs a challenge bit A second basic PUF system generates a response bit in response to the first basic PUF system generated by the first basic PUF system, and generates a response bit in response to a control signal of the control unit Number generated by the basic PUF system at the last stage in the random number generation unit, Select one of the scan bit and the bit to the challenge includes a selecting section provided to an input of the first base system PUF.

상기 난수 생성부에서 각각의 기본 PUF 시스템에서 생성되는 각 리스판스와 입력된 데이터를 논리적 배타합(exclusive OR, XOR)하여 암호화된 데이터를 생성하는 암호화부를 더 포함할 수 있다.And an encryption unit for generating encrypted data by performing logical exclusive exclusive OR (XOR) on the input data and each list generated by each basic PUF system in the random number generation unit.

상기 난수 생성부에서 각각의 기본 PUF 시스템에서 생성되는 각 리스판스가 각 디바이스에 입력될 수 있다.The random number generation unit may input each list generated by each basic PUF system to each device.

상기 제어부의 제어에 따라 상기 난수 생성부에서 마지막 단계의 기본 PUF 시스템에서 생성된 리스판스들을 선택하여, 각 디바이스의 입력에 제공하기 위한 제2 선택부를 더 포함할 수 있다.
And a second selector for selecting the responses generated in the basic PUF system of the last stage in the random number generator according to the control of the controller and providing the selected responses to the inputs of the respective devices.

본 발명에 의하면 하나의 챌린지(challenge)를 가지고 다수의 리스판스(response)를 생성하는 다단계 PUF 시스템을 제공함으로써, 기존의 PUF 시스템에서 구현되는 방식보다 간단하게 스마트카드, RFID, 보안 키 등에 적용할 수 있으며, 높은 보안 수준을 유지할 수 있도록 하는 효과가 있다. 따라서 현대의 인터넷 및 네트워크와 같이 온라인에서 이루어지는 정보의 안정성을 높이고 활용성을 높이는데 기여할 것으로 기대된다. According to the present invention, by providing a multi-stage PUF system that generates a plurality of responses with a single challenge, it can be applied to a smart card, an RFID, a security key, etc. more easily than a method implemented in the existing PUF system And it is effective to maintain high security level. Therefore, it is expected that it will contribute to enhance the stability of information and enhance the utilization of online information such as modern Internet and network.

본 발명의 PUF 시스템은 기존의 PUF 시스템에서 챌린지에 고정되어 있는 리스판스를 하나 이상의 리스판스들로 구성할 수 있으며, 이를 이용하여 리스판스의 길이를 임의로 조절할 수 있다. 따라서, 본 발명의 PUF 시스템은 기존의 PUF 시스템에서 생성하는 인증코드 및 비밀 키보다 더 효율적이고 보안 성능이 뛰어난 인증코드 및 비밀 키를 생성할 수 있는 효과가 있다. 또한 하나의 챌린지를 가지고 하나 이상의 리스판스를 생성하여 하나 이상의 장치에 적용할 수 있다.The PUF system of the present invention can constitute one or more recesses fixed to the challenge in the existing PUF system, and can arbitrarily adjust the length of the recess by using the recess. Therefore, the PUF system of the present invention has an effect of generating an authentication code and a secret key that are more efficient than the authentication code and secret key generated in the existing PUF system and have excellent security performance. It is also possible to create more than one response with one challenge and apply it to more than one device.

본 발명은 기존의 PUF 시스템을 확장하여 입력 챌린지에 리스판스를 다단계로 입력시켜 새로운 다수의 리스판스를 생성하는 방법으로 활용성을 높이며, 챌린지와 리스판스의 쌍이 드러나지 않고, PUF의 특성에 의해 리스판스를 가지고 역으로 챌린지를 추측할 수 없다는 장점이 있다. The present invention proposes a method of generating a plurality of new responses by inputting a response to an input challenge in a multi-step manner by extending an existing PUF system and enhancing the usability. There is an advantage that you can not infer a challenge with a piece.

또한, 본 발명에 의하면 하나의 챌린지로 여러 개의 리스판스를 생성할 수 있으며, 이러한 특징을 스트림암호, 단방향해쉬함수 등에 응용할 수 있다. 예를 들어, 본 발명의 PUF 시스템은 하나의 챌린지 입력으로 리스판스를 무제한으로 발생시킬 수 있으며, 이 리스판스를 스트림 암호의 키로 사용함으로써 간단한 회로 구조를 통하여 매우 높은 보안 성능을 갖는 암호모듈을 만들 수 있다.
In addition, according to the present invention, a plurality of responses can be generated with one challenge, and such a feature can be applied to a stream cipher, a one-way hash function or the like. For example, the PUF system of the present invention can generate an unlimited number of responses with a single challenge input, and by using this response as the key of the stream cipher, a cryptographic module with very high security performance .

도 1은 본 발명의 제1 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 2는 본 발명의 제2 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 3은 본 발명의 제1 실시예에 따른 PUF 시스템에서 장치를 연결한 모습을 보여주는 블록도이다.
도 4는 본 발명의 제3 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 5는 본 발명의 제4 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 6은 본 발명의 제5 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 7은 본 발명의 제6 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
도 8은 본 발명의 제7 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.
1 is a block diagram showing the structure of a PUF system according to a first embodiment of the present invention.
2 is a block diagram showing the structure of a PUF system according to a second embodiment of the present invention.
FIG. 3 is a block diagram showing a device connected to the PUF system according to the first embodiment of the present invention.
4 is a block diagram showing the structure of a PUF system according to a third embodiment of the present invention.
5 is a block diagram illustrating the structure of a PUF system according to a fourth embodiment of the present invention.
6 is a block diagram showing the structure of a PUF system according to a fifth embodiment of the present invention.
7 is a block diagram illustrating the structure of a PUF system according to a sixth embodiment of the present invention.
8 is a block diagram showing the structure of a PUF system according to a seventh embodiment of the present invention.

이하, 첨부된 도면을 참조해서 본 발명의 실시예를 상세히 설명하면 다음과 같다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 명세서 전반에 걸쳐서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있다는 것을 의미한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the drawings, the same reference numerals are used for the same reference numerals even though they are shown in different drawings. 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. Also, throughout this specification, when a component is referred to as "comprising ", it means that it can include other components, aside from other components, .

본 발명은 물리적 복제 불가 함수(Physical Unclonable Function, 이하 'PUF'라 함) 시스템에 관한 것이다. The present invention relates to a physical unclonable function (PUF) system.

PUF 시스템은 PUF 셀(cell) 들이 모여 구성되어 있다. 본 발명은 PUF 셀(cell)들로 구성된 PUF 시스템을 하나 또는 하나 이상을 이용하여 구성되는 다단계 PUF 시스템이다. 다단계 PUF 시스템은 하나의 챌린지(challenge) 신호를 입력받아 다수의 리스판스(response) 신호를 출력한다. The PUF system consists of PUF cells. The present invention is a multi-stage PUF system configured by using one or more PUF systems composed of PUF cells. The multi-stage PUF system receives a single challenge signal and outputs a plurality of response signals.

기본 PUF 시스템에서는 챌린지(challenge)와 리스판스(response)는 PUF 시스템을 구성하는 PUF 셀(cell)의 개수에 의해 결정되고, 챌린지(challenge)와 리스판스(response)의 비트(bit)의 길이는 동일하거나 서로 다르게 구성될 수 있으며, 한번 결정된 PUF 시스템의 챌린지(challenge)와 리스판스(response)의 비트(bit) 길이는 고정된다. In the basic PUF system, the challenge and the response are determined by the number of PUF cells constituting the PUF system, and the length of the bits of the challenge and response is And the bit length of the challenge and response of the PUF system once determined may be fixed.

본 발명의 다단계 PUF 시스템은 챌린지와 리스판스의 비트 길이가 고정된 기본 PUF 시스템을 하나 또는 하나 이상으로 구성하고 반복하는 다단계 PUF 시스템이다. 본 발명의 다단계 PUF 시스템은 기본 PUF 시스템의 챌린지를 입력받아 하나이상의 리스판스를 출력한다. 기존의 PUF 시스템은 기본 PUF 시스템의 챌린지를 입력받아 고정된 리스판스의 비트 길이 이상으로 출력하는 것이 불가능하다. 이에 반해, 본 발명의 다단계 PUF 시스템은 기본 PUF 시스템의 리스판스의 비트 길이 이상의 출력이 가능하다.The multi-stage PUF system of the present invention is a multi-stage PUF system in which one or more basic PUF systems with fixed bit lengths of challenge and response are constructed and repeated. The multi-stage PUF system of the present invention receives the challenge of the basic PUF system and outputs one or more responses. The conventional PUF system can not receive the challenge of the basic PUF system and output it beyond the bit length of the fixed response. In contrast, the multi-stage PUF system of the present invention is capable of outputting more than the bit length of the response of the basic PUF system.

도 1은 본 발명의 제1 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.1 is a block diagram showing the structure of a PUF system according to a first embodiment of the present invention.

도 1에서 보는 바와 같이, 본 발명은 하나 또는 하나 이상의 기본 PUF 시스템으로 구성되어 있으며, 기본 PUF 시스템이 n개로 구성되어 있다. As shown in FIG. 1, the present invention consists of one or more basic PUF systems, and n basic PUF systems.

도 1을 참조하면, 본 발명은 물리적 복제가 불가능한 다단계 PUF 시스템을 제안한다. 본 발명의 제1 실시예에서 다단계 PUF 시스템은 선택부(110), 제어부(120), 난수 생성부(130)를 포함한다. Referring to FIG. 1, the present invention proposes a multi-stage PUF system in which physical replication is not possible. In the first embodiment of the present invention, the multi-stage PUF system includes a selection unit 110, a control unit 120, and a random number generation unit 130.

난수 생성부(130)는 다수의 기본 PUF 시스템으로 구성된다. The random number generation unit 130 is composed of a plurality of basic PUF systems.

선택부(110)는 제어부의 제어에 따라 챌린지 비트와 제어부(120)의 제어에 따라 마지막 단계의 PUF 시스템(PUF#n)에서 생성된 리스판스 비트 중에서 하나를 선택하여 출력한다. The selection unit 110 selects one of the response bits generated in the last stage PUF system PUF # n according to the control of the controller 120 and the challenge bit according to the control of the controller.

제어부(120)는 챌린지 비트와 제어부(120)의 제어에 따라 마지막 단계의 PUF 시스템(PUF#n)에서 생성된 리스판스 비트 중에서 하나를 선택하는 제어 신호를 생성하고, 반복되는 횟수를 결정한다.The control unit 120 generates a control signal for selecting one of the response bits generated in the last stage PUF system PUF # n according to the control of the controller 120, and determines the number of repetitions.

도 1의 실시예에서, 첫 번째 동작은 최초 챌린지 비트(challenge bits)가 입력되면 n개의 PUF 시스템에서 각각 리스판스(R'0, R'1, …, R'n)들을 출력하는 것이다. In the embodiment of FIG. 1, the first operation is to output respans (R'0, R'1, ..., R'n) in n PUF systems, respectively, when the first challenge bits are input.

첫번째 PUF 시스템(PUF #0)은 챌린지(challenge)를 입력받아 리스판스(response)를 출력한다. PUF #1부터 PUF #n-1까지는 전단의 리스판스(response)를 입력으로 받아 리스판스(response)를 생성하여 출력한다. The first PUF system (PUF # 0) receives a challenge and outputs a response. From PUF # 1 to PUF # n-1, a response is generated by receiving a response of the previous stage and outputting a response.

두 번째 동작은 난수생성부(130)의 PUF #n에서 출력된 리스판스(response)를 제어부(120)의 제어에 따라 선택부(110)에서 선택하여 PUF #0에 입력으로 제공한다. 마찬가지로, PUF #1부터 PUF #n-1까지는 전단의 리스판스(response)를 입력으로 받아 새로운 리스판스(response)를 생성하여 출력한다. The second operation selects the response output from the PUF #n of the random number generation unit 130 according to the control of the control unit 120 and provides the selected response to the PUF # 0. Likewise, from PUF # 1 to PUF # n-1, a new response is generated by receiving the response of the previous stage and outputted.

이와 같은 방식으로 세 번째 동작이 반복적으로 이루어진다. 따라서 본 발명의 다단계 PUF 시스템에서는 하나의 입력 챌린지(challenge)에 출력 리스판스(response)를 무제한으로 생성할 수 있다.In this way, the third operation is repeated. Therefore, in the multi-stage PUF system of the present invention, an output response can be generated in an unlimited manner in one input challenge.

도 1의 다단계 PUF 시스템에서 챌린지(challenge)가 입력되면 첫 번째 PUF 시스템(PUF#0)에 챌린지 비트(challenge bits)가 입력된다. 그리고 두 번째 PUF 시스템(PUF#1)에는 이전 PUF 시스템(PUF#0)의 출력 리스판스(response)가 입력된다. 이런 식으로, 마지막 단계 PUF 시스템(PUF#n)의 리스판스(response)는 제어부(120)의 제어신호에 따라 첫 번째 PUF 시스템(PUF#0)의 입력으로 입력된다. When a challenge is input in the multi-stage PUF system of FIG. 1, challenge bits are input to the first PUF system (PUF # 0). In the second PUF system (PUF # 1), the output response of the previous PUF system (PUF # 0) is input. In this way, the response of the last stage PUF system (PUF # n) is input to the input of the first PUF system (PUF # 0) according to the control signal of the controller 120.

이처럼 본 발명의 다단계 PUF 시스템에서는 하나의 챌린지(challenge) 입력으로 기본 PUF 시스템의 개수만큼 리스판스의 출력이 가능하다. 또한 마지막 단계 PUF 시스템(PUF#n)의 리스판스(response)가 첫 번째 기본 PUF 시스템(PUF#0)에 입력되면서 또 다른 리스판스가 기본 PUF 개수만큼 생성된다. 그러므로 본 발명의 다단계 PUF 시스템에서는 하나의 챌린지(challenge) 신호를 이용하여 무한대의 리스판스를 생성할 수 있다.
As described above, in the multi-stage PUF system of the present invention, it is possible to output a response as many times as the number of basic PUF systems with one challenge input. In addition, the response of the last stage PUF system (PUF # n) is input to the first basic PUF system (PUF # 0), and another response is generated by the number of basic PUFs. Therefore, in the multi-stage PUF system of the present invention, it is possible to generate an infinite response using a single challenge signal.

도 2는 본 발명의 제2 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다. 2 is a block diagram showing the structure of a PUF system according to a second embodiment of the present invention.

도 2를 참조하면, 제2 실시예에 따른 다단계 PUF 시스템은 제1 실시예의 다단계 PUF 시스템에서 암호화부(240)가 추가된 구성이다. Referring to FIG. 2, the multi-stage PUF system according to the second embodiment is a configuration in which the encryption unit 240 is added in the multi-stage PUF system of the first embodiment.

암호화부(240)에서는 난수생성부(130)에서 생성된 리스판스와 데이터를 배타적 논리합(exclusive OR, XOR)(242)하는 방식으로 암호화한다. 즉, 암호화부(240)에서는 챌린지(challenge)를 입력받아 생성된 리스판스( R'0, R'1, R'2, …, R'n)들과 데이터를 XOR하여 데이터 Di를 D'0, D'1, …, D'n 으로 암호화 한다.The encryption unit 240 encrypts the data generated by the random number generation unit 130 and the data using an exclusive OR (XOR) operation 242. That is, the encryption unit 240 XORs the data with the responses (R'0, R'1, R'2, ..., R'n) generated by receiving the challenge and outputs the data Di as D'0 , D'1, ... , D'n.

도 2에서 보는 바와 같이, 본 발명에서는 스트림암호(stream cipher) 블록으로 사용할 수 있다. As shown in FIG. 2, the present invention can be used as a stream cipher block.

참고로 스트림 암호(stream cipher)는 선형 시프트 레지스터를 이용한 이진 수열 발생기로 평문을 일련의 비트열로 취급하여 한 번에 1비트씩 또는 바이트(byte) 단위로 암호화시키는 암호 시스템을 말한다. 스트림 암호는 빠르게 디자인될 수 있고 실제로 어떠한 블록 암호보다도 빠르다. 블록 암호는 큰 블록 데이터를 사용하지만 스트림 암호는 일반적으로 평문의 작은 단위인 비트를 사용한다. 스트림 암호에서 암호화는 일반적으로 비트 단위 배타적 논리합(XOR) 연산으로 평문과 키 스트림과의 결합을 통해서 생성된다.A stream cipher is a cipher system that treats a plaintext as a sequence of bits with a binary shift register using a linear shift register and encrypts it in 1-bit or byte-at-a-time. Stream ciphers can be designed quickly and are actually faster than any block ciphers. Block ciphers use large block data, but stream ciphers generally use bits that are small units of plaintext. Encryption in a stream cipher is generally a bitwise exclusive-or (XOR) operation that is generated by combining plain text with a key stream.

본 발명에서 스트림 암호는 비밀 키와 데이터를 XOR하여 구성된다. In the present invention, a stream cipher is configured by XORing a secret key and data.

도 2는 도 1의 회로에 XOR하여 데이터를 암호화하는 스트림 암호 블록을 예시한 구성도이다. 도 2의 실시예에서 도 1의 리스판스(response)들은 스트림 암호의 비밀 키로 사용된다. FIG. 2 is a block diagram illustrating a stream cipher block for XORing data in the circuit of FIG. 1 to encrypt data. FIG. In the embodiment of Figure 2, the responses of Figure 1 are used as the secret key of the stream cipher.

기본 PUF의 리스판스(response) 길이는 고정되어 있으나, 본 발명의 다단계 PUF 시스템은 기본 PUF 시스템의 개수와 반복 횟수에 의해 리스판스(response) 길이의 제한이 없다. 따라서 스트림 암호의 비밀 키로 사용되는 리스판스의 비트 길이가 제한이 없으므로, 스트림 암호의 비밀 키의 길이는 무한대라고 볼 수 있다.Although the response length of the basic PUF is fixed, the multi-stage PUF system of the present invention has no limitation on the response length by the number of the basic PUF systems and the number of repetitions. Therefore, since the bit length of the response used as the secret key of the stream cipher is unlimited, the length of the secret key of the stream cipher can be regarded as infinite.

스트림 암호는 비밀 키의 길이가 보안 성능을 좌우한다. 스트림 암호의 비밀 키의 길이가 데이터의 길이와 같으면 거의 완전한 암호라고 한다. 하지만 비밀 키의 길이가 길면 이 비밀 키를 보호하기 어렵다. In stream ciphers, the length of the secret key determines security performance. If the length of the secret key of the stream cipher is equal to the length of the data, it is said to be almost complete. However, it is difficult to protect this secret key if the length of the secret key is long.

본 발명에서 제안하는 다단계 PUF 시스템은 챌린지 하나를 입력받아 다수의 리스판스(response)를 생성한다. 생성된 리스판스들은 스트림 암호로 사용되고 이를 생성하는 챌린지(challenge)의 길이는 비교적 짧기 때문에 비밀 키를 보호하는데 매우 효과적이다. 따라서 본 발명에서 제안하는 다단계 PUF 시스템을 사용한 스트림 암호는 비밀 키의 길이가 무한하기 때문에 보안성능이 매우 뛰어나다고 할 수 있다.
The multi-stage PUF system proposed in the present invention receives a challenge and generates a plurality of responses. The generated responses are used as stream ciphers, and the length of the challenge to generate them is relatively short, which is very effective in protecting the secret key. Therefore, the stream cipher using the multi-stage PUF system proposed in the present invention has an excellent security performance because the length of the secret key is infinite.

도 3은 본 발명의 제1 실시예에 따른 PUF 시스템에서 장치를 연결한 모습을 보여주는 블록도이다. FIG. 3 is a block diagram showing a device connected to the PUF system according to the first embodiment of the present invention.

도 3은 제1 실시예의 다단계 PUF 시스템과 다수의 디바이스들로 구성된다.Fig. 3 shows a multi-stage PUF system of the first embodiment and a plurality of devices.

제1 실시예에서의 다단계 PUF 시스템에서 생성된 리스판스들(R'0, R'1, …, R'n)은 각 디바이스(디바이스#0, 디바이스#1, ..., 디바이스 #n)들의 인증코드 및 비밀 키 입력으로 사용된다. 예를 들면 디바이스(device)들이 암호프로세서일 때, 다단계 PUF 시스템에서 생성된 리스판스들을 이용하여 암호프로세서의 비밀 키를 모두 다르게 입력시킬 수 있다. 이때, 리스판스(R'0, R'1, R'2, …, R'n)들은 모두 예측 불가능하고 서로 다르기 때문에 보안성능 향상에 기여한다.(R'0, R'1, ..., R'n) generated in the multi-stage PUF system in the first embodiment are stored in the respective devices (device # 0, device # 1, Are used as the authentication code and the secret key input. For example, when the devices are cryptographic processors, all secret keys of the cryptographic processor can be input differently using the responses generated in the multi-stage PUF system. At this time, since the respanses (R'0, R'1, R'2, ..., R'n) are all unpredictable and different from each other, they contribute to improving the security performance.

도 3을 참조하면, 하나의 챌린지 비트(challenge bits)를 입력받아 서로 다른 리스판스(response)들을 생성하고 생성된 리스판스(response)를 각기 서로 다른 디바이스(디바이스#0, 디바이스#1, ..., 디바이스 #n)에 입력하여 장치인증 및 암호화 등을 수행하는 것을 나타낸다. 예를 들면 다수의 암호프로세서가 있을 때, 본 발명의 다단계 PUF 시스템에서는 각각의 암호프로세서에 예측이 불가한 비밀키를 인가할 수 있다.
Referring to FIG. 3, one challenge bit is input to generate different responses, and a generated response is transmitted to each of different devices (device # 0, device # 1, ...). ., Device #n) to perform device authentication and encryption. For example, when there are a plurality of cryptographic processors, it is possible to apply a secret key that can not be predicted to each cryptographic processor in the multi-stage PUF system of the present invention.

도 4는 본 발명의 제3 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.4 is a block diagram showing the structure of a PUF system according to a third embodiment of the present invention.

도 4를 참조하면, 본 발명의 제3 실시예에 따른 다단계 PUF 시스템은 선택부(410), 제어부(420), 난수 생성부(430)를 포함하여 이루어진다.4, the multi-stage PUF system according to the third exemplary embodiment of the present invention includes a selection unit 410, a control unit 420, and a random number generation unit 430. Referring to FIG.

본 발명의 제3 실시예에 따른 다단계 PUF 시스템에서 첫 번째 동작은 최초 챌린지(challenge)를 입력받아 n개의 PUF 시스템을 통해 리스판스(response)들을 출력하는 것이다. 즉, PUF #0은 챌린지(challenge)를 입력받아 리스판스(response)를 출력한다. 그리고, PUF #1부터 PUF #n-1까지는 전단의 리스판스(response)를 입력으로 받아 리스판스(R'j)를 출력한다. The first operation in the multistage PUF system according to the third embodiment of the present invention is to output the responses through the n PUF systems by receiving the initial challenge. That is, PUF # 0 receives a challenge and outputs a response. Then, from PUF # 1 to PUF # n-1, the response of the previous stage is inputted and the response R'j is outputted.

두 번째 동작은 난수생성부(430)의 PUF #n에서 출력된 리스판스(R'j)를 제어부(420)의 제어에 따라 선택부(410)에서 선택하여 PUF #0에 입력으로 들어가도록 하고, PUF #1부터 PUF #n-1까지는 전단의 리스판스(response)를 입력으로 받아 리스판스response(R'j)를 출력한다. 이러한 방식으로 두 번째 동작이 반복적으로 이루어진다. 따라서 본 발명의 제3 실시예에 따른 다단계 PUF 시스템에서는 하나의 입력 챌린지(challenge)로 무제한의 출력 리스판스(R'j)를 생성할 수 있게 된다.In the second operation, the selection unit 410 selects the response R'j output from the PUF #n of the random number generation unit 430 under the control of the control unit 420 and inputs the selected response R'j to the PUF # 0 , And outputs a response response (R'j) from PUF # 1 to PUF # n-1 as an input of a response at the previous stage. In this way, the second operation is repeated. Therefore, in the multi-stage PUF system according to the third embodiment of the present invention, an unlimited output response R'j can be generated by one input challenge.

도 4는 다수의 기본 PUF 시스템에서 마지막 기본 PUF 시스템(PUF #n)의 출력 리스판스(response)만을 사용하고, 그 출력 리스판스(response)를 다시 첫 번째 기본 PUF 시스템(PUF #0)에 입력시키는 방식으로 반복하여 리스판스(response)를 생성하는 시스템이다. 4 illustrates a case where only the output response of the last basic PUF system (PUF #n) is used in a plurality of basic PUF systems and the output response thereof is input again to the first basic PUF system (PUF # 0) And generates a response in a repetitive manner.

도 4에 도시된 제3 실시예에 따른 다단계 PUF 시스템이 도 1에 도시된 제1 실시예에 따른 다단계 PUF 시스템과 다른 점은 마지막 기본 PUF 시스템(PUF #n)의 리스판스만을 사용한다는 점이다.
The multi-stage PUF system according to the third embodiment shown in FIG. 4 is different from the multi-stage PUF system according to the first embodiment shown in FIG. 1 in that it uses only the rest of the last basic PUF system (PUF #n) .

도 5는 본 발명의 제4 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.5 is a block diagram illustrating the structure of a PUF system according to a fourth embodiment of the present invention.

도 5를 참조하면, 제4 실시예에 따른 다단계 PUF 시스템은 제3 실시예의 다단계 PUF 시스템에서 암호화부(440)가 추가된 구성이다. Referring to FIG. 5, the multi-stage PUF system according to the fourth embodiment is a configuration in which the encryption unit 440 is added in the multi-stage PUF system according to the third embodiment.

난수 생성부(430)에서 생성된 리스판스(R'j)와 데이터 Di를 XOR(442)하여 암호화하여 D'i의 암호문을 생성한다. 결국, 도 5의 실시예에서 다단계 PUF 시스템은 하나의 챌린지(challenge)를 입력받아 생성된 리스판스(R'j)와 데이터 Di를 XOR하여 D'i로 암호화한다.
The response R'j generated by the random number generator 430 and the data Di are XOR'ed 442 to generate a ciphertext of D'i. As a result, in the embodiment of FIG. 5, the multi-stage PUF system receives a challenge and XORs the generated response R'j and data Di to encrypt it with D'i.

도 6은 본 발명의 제5 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다. 제5 실시예에 따른 다단계 PUF 시스템은 제1 선택부(610), 제어부(620), 난수 생성부(630), 제2 선택부(640)를 포함하여 이루어진다.6 is a block diagram showing the structure of a PUF system according to a fifth embodiment of the present invention. The multi-stage PUF system according to the fifth embodiment includes a first selector 610, a controller 620, a random number generator 630, and a second selector 640.

도 6의 제5 실시예에 따른 다단계 PUF 시스템은 제3 실시예의 구성에서 제2 선택부(640)가 추가되고, 제2 선택부(640)에 다수의 디바이스(디바이스 #0, ..., 디바이스 #n)가 연결된 예이다.6, the second selecting unit 640 is added to the configuration of the third embodiment, and a plurality of devices (devices # 0, ..., Device #n) is connected.

제5 실시예에 따른 다단계 PUF 시스템은 생성된 리스판스 R'j를 각 디바이스의 인증코드 및 비밀 키 입력으로 사용하도록 제공한다. 예를 들면 디바이스(디바이스 #0, ..., 디바이스 #n)들이 암호 프로세서일 때, 다단계 PUF 시스템은 제어부(620)의 제어에 따라 제2 선택부(640)를 통하여 각 디바이스 별로 각각 다른 비밀 키를 제공하여 입력되도록 한다. 이 때 출력된 리스판스(R'j)들은 모두 예측불가능하고 서로 다르기 때문에 보안성능 향상에 기여한다.
The multi-stage PUF system according to the fifth embodiment provides the generated response R'j to be used as the authentication code and secret key input of each device. For example, when the devices (device # 0, ..., device #n) are cryptographic processors, the multi-stage PUF system controls each of the devices via the second selector 640 according to the control of the controller 620 Key to be input. At this time, the outputs R'j are all unpredictable and different from each other, which contributes to an improvement in security performance.

도 7은 본 발명의 제6 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다.7 is a block diagram illustrating the structure of a PUF system according to a sixth embodiment of the present invention.

도 7을 참조하면, 본 발명의 제6 실시예에 따른 다단계 PUF 시스템은 첫 번째 리스판스(response)를 입력받아 새로운 임의의 수를 발생시키는 부호화부(736)를 갖는 다단계 PUF 시스템이다. Referring to FIG. 7, the multi-stage PUF system according to the sixth embodiment of the present invention is a multi-stage PUF system having a coding unit 736 for receiving a first response and generating a new arbitrary number.

부호화부(736)는 생성할 리스판스의 수 만큼 임의의 수를 발생시키고, 그 임의의 수를 PUF 시스템의 입력으로 사용하여 리스판스(response)를 생성한다. 그리고 생성된 리스판스와, 리스판스를 생성하기 위해 사용한 임의의 수를 XOR하여 최종 리스판스를 생성한다. The encoding unit 736 generates an arbitrary number of the number of misses to be generated and generates a response using the arbitrary number as an input to the PUF system. Then, XORs the generated listener and any number used to generate the response to generate the final response.

도 7의 본 발명의 제6 실시예에 따른 다단계 PUF 시스템은 제1 선택부(710), 제어부(720), 난수 생성부(730)를 포함하여 이루어진다. The multilevel PUF system according to the sixth embodiment of the present invention includes a first selector 710, a controller 720, and a random number generator 730.

난수 생성부(730)는 PUF(732), 제2 선택부(734), 부호화부(736), XOR(738)를 포함하여 이루어진다. The random number generation unit 730 includes a PUF 732, a second selection unit 734, an encoding unit 736, and an XOR 738.

난수생성부(730)의 PUF(732)는 하나 또는 하나 이상의 기본 PUF 시스템을 나타내며, 도 4와 같이 PUF #0에서 PUF #n까지 구성될 수 있다. The PUF 732 of the random number generation unit 730 represents one or more basic PUF systems, and may be configured from PUF # 0 to PUF #n as shown in FIG.

제6 실시예에 따른 다단계 PUF 시스템에서 첫 번째 동작은 최초 입력되는 챌린지 신호를 제어부(720)의 제어에 따라 제1 선택부(710)에서 선택한다. In the first stage of the multi-stage PUF system according to the sixth embodiment, the first selecting unit 710 selects the first challenge signal under the control of the controller 720.

PUF(732)는 챌린지(challenge) Ci를 입력받아 리스판스(response)를 출력한다. PUF(732)에서 출력된 최초의 리스판스(response)는 R_init이다. The PUF 732 receives a challenge Ci and outputs a response. The first response output from the PUF 732 is R_init.

부호화부(736)는 R_init을 입력받아 RN을 생성한다. RN의 bit 길이는 챌린지 비트(challenge bit_ 길이와 동일하다. 그리고 RN은 필요한 출력 리스판스(response)의 수만큼 생성된다. 즉, RN은 R_init을 입력받아 부호화부(736)에서 생성된 임의의 수이고, RN의 개수는 필요로 하는 출력 리스판스(response)의 수만큼 생성된다. 생성된 RN들의 값은 서로 다르다. The encoding unit 736 receives the R_init and generates an RN. The RN is generated by the number of output responses required, that is, the RN receives the R_init and receives an arbitrary number of bits generated by the encoding unit 736 , And the number of RNs is generated by the number of required output responses. The values of the generated RNs are different from each other.

두 번째 동작은 생성된 RN을 제1 선택부(710)를 통해 PUF(732)의 입력으로 사용한다. 그리고 PUF(732)의 출력은 제2 선택부(734)를 통해 리스판스 R'j를 출력하고, 출력된 R'j는 부호화부(736)로부터 입력된 RN과 XOR(738)하여 비밀 키(R_key) 또는 인증 키(I_key)를 리스판스 비트로 출력한다. The second operation uses the generated RN as input to the PUF 732 through the first selector 710. The output of the PUF 732 outputs a response R'j via the second selector 734 and the output R'j is XORed 738 with the RN input from the encoder 736 to generate a secret key R_key) or an authentication key (I_key) as response bits.

세 번째 동작은 두 번째 동작에서 수행된 동작이 반복되며, 이때 RN의 값은 최초 R_init을 이용하여 부호화부(736)에서 생성되는 임의의 수이고, 이 값은 반복될 때마다 이전의 RN 값과 다른 임의의 값이다.
In the third operation, the operation performed in the second operation is repeated. In this case, the value of RN is an arbitrary number generated by the encoding unit 736 using the initial R_init. Other arbitrary value.

도 8은 본 발명의 제7 실시예에 따른 PUF 시스템의 구조를 보여주는 블록도이다. 도 8의 제7 실시예에 따른 PUF 시스템은 도 2와 같이 암호화 블록이 추가되어 동작하는 것을 나타낸다.8 is a block diagram showing the structure of a PUF system according to a seventh embodiment of the present invention. The PUF system according to the seventh embodiment of FIG. 8 shows that an encryption block is added and operated as shown in FIG.

도 2를 참조하면, 제2 실시예에 따른 다단계 PUF 시스템은 제1 실시예의 다단계 PUF 시스템에서 암호화부(240)가 추가된 구성이다. Referring to FIG. 2, the multi-stage PUF system according to the second embodiment is a configuration in which the encryption unit 240 is added in the multi-stage PUF system of the first embodiment.

도 8을 참조하면, 제7 실시예에 따른 다단계 PUF 시스템은 도 7에 도시된 본 발명의 제6 실시예에 따른 다단계 PUF 시스템에서 암호화부(840)가 추가된 구성이다. Referring to FIG. 8, the multistage PUF system according to the seventh embodiment is a configuration in which the encryption unit 840 is added in the multistage PUF system according to the sixth embodiment of the present invention shown in FIG.

난수 생성부(730)에서 리스판스(R_key, I_key)가 생성된다.The random number generator 730 generates a response R_key, I_key.

그리고, 암호화부(840)에서는 리스판스(R_key, I_key)와 데이터 Di를 XOR(842)하여 암호화한다. 즉, 본 발명의 제7 실시예에 따른 다단계 PUF 시스템은 챌린지를 입력받아 생성된 리스판스(R_key, I_key)들과 데이터 Di를 XOR(842)하여 D'i로 암호화한다.
Then, the encryption unit 840 XORs 842 the response (R_key, I_key) and the data Di to encrypt the response. That is, in the multistage PUF system according to the seventh embodiment of the present invention, the response (R_key, I_key) generated by receiving the challenge and the data Di are XOR'ed 842 and encrypted with D'i.

이상 본 발명을 몇 가지 바람직한 실시예를 사용하여 설명하였으나, 이들 실시예는 예시적인 것이며 한정적인 것이 아니다. 본 발명이 속하는 기술분야에서 통상의 지식을 지닌 자라면 본 발명의 사상과 첨부된 특허청구범위에 제시된 권리범위에서 벗어나지 않으면서 다양한 변화와 수정을 가할 수 있음을 이해할 것이다.
While the present invention has been described with reference to several preferred embodiments, these embodiments are illustrative and not restrictive. It will be understood by those skilled in the art that various changes and modifications may be made therein without departing from the spirit of the invention and the scope of the appended claims.

110 선택부
120 제어부
130 난수 생성부
240 암호화부
242 XOR
736 부호화부
640 제2 선택부
110 selection unit
120 control unit
130 random number generation unit
240 encryption unit
242 XOR
736 encoding section
640 second selection unit

Claims (4)

다수의 물리적 복제 불가 함수(Physical Unclonable Function, PUF) 셀(cell) 들을 포함하고, 입력되는 챌린지(challenge) 비트와 생성되는 리스판스(response) 비트의 길이가 고정되어 있는 PUF 시스템을 기본 PUF 시스템이라고 할 때,
다단계 물리적 복제 불가 함수 시스템의 동작에 필요한 제어신호를 발생시키는 제어부;
하나 이상의 기본 PUF 시스템을 포함하여 이루어지며, 첫번째 기본 PUF 시스템에서 챌린지 비트를 입력받아 리스판스 비트를 생성하고, 두번째 기본 PUF 시스템에서는 첫번째 기본 PUF 시스템에서 생성된 리스판스 비트를 입력으로 하여 리스판스 비트를 생성하는 방식으로 다단계로 구성되는 난수 생성부; 및
상기 제어부의 제어신호에 따라, 상기 난수 생성부에서 마지막 단계의 기본 PUF 시스템에서 생성된 리스판스 비트와 상기 챌린지 비트 중에서 하나를 선택하여 상기 첫번째 기본 PUF 시스템의 입력에 제공하는 선택부를 포함하는 다단계 물리적 복제 불가 함수 시스템.
A PUF system including a plurality of physical unclonable function (PUF) cells and a fixed challenge bit to be generated and a response bit to be generated is defined as a basic PUF system when doing,
A control unit for generating a control signal required for operation of the multilevel physical non-duplication function system;
Wherein the first basic PUF system includes a first basic PUF system and a second basic PUF system. The first basic PUF system receives a challenge bit to generate a response bit. In a second basic PUF system, A random number generator configured to generate a random number in a plurality of stages; And
And a selector for selecting one of a response bit and a challenge bit generated in the basic PUF system of the final stage in the random number generator according to a control signal of the controller and providing the selected one to an input of the first basic PUF system, Nonreplicable function system.
제1항에 있어서,
상기 난수 생성부에서 각각의 기본 PUF 시스템에서 생성되는 각 리스판스와 입력된 데이터를 논리적 배타합(exclusive OR, XOR)하여 암호화된 데이터를 생성하는 암호화부를 더 포함하는 것을 특징으로 하는 다단계 물리적 복제 불가 함수 시스템.
The method according to claim 1,
Further comprising an encryption unit for generating encrypted data by performing logical exclusive exclusive OR (XOR) on each of the lease slots and input data generated in each basic PUF system in the random number generation unit. Function system.
제1항에 있어서,
상기 난수 생성부에서 각각의 기본 PUF 시스템에서 생성되는 각 리스판스가 각 디바이스에 입력되는 것을 특징으로 하는 다단계 물리적 복제 불가 함수 시스템.
The method according to claim 1,
Wherein the random number generation unit inputs each list generated by each basic PUF system to each device.
제1항에 있어서,
상기 제어부의 제어에 따라 상기 난수 생성부에서 마지막 단계의 기본 PUF 시스템에서 생성된 리스판스들을 선택하여, 각 디바이스의 입력에 제공하기 위한 제2 선택부를 더 포함하는 것을 특징으로 하는 다단계 물리적 복제 불가 함수 시스템.
The method according to claim 1,
Further comprising a second selector for selecting the responses generated in the basic PUF system of the last stage in the random number generator according to the control of the controller and providing the selected responses to the inputs of the respective devices, system.
KR1020130036430A 2013-04-03 2013-04-03 Multistage physical unclonable function system KR101393806B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130036430A KR101393806B1 (en) 2013-04-03 2013-04-03 Multistage physical unclonable function system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130036430A KR101393806B1 (en) 2013-04-03 2013-04-03 Multistage physical unclonable function system

Publications (1)

Publication Number Publication Date
KR101393806B1 true KR101393806B1 (en) 2014-05-12

Family

ID=50893789

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130036430A KR101393806B1 (en) 2013-04-03 2013-04-03 Multistage physical unclonable function system

Country Status (1)

Country Link
KR (1) KR101393806B1 (en)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101593166B1 (en) * 2014-06-02 2016-02-15 한국전자통신연구원 Apparatus and method for preventing puf error
KR20160039011A (en) 2014-09-30 2016-04-08 고려대학교 산학협력단 Physically unclonable function circuit using S-box of AES algorithm
KR20160085598A (en) 2015-01-08 2016-07-18 경희대학교 산학협력단 FLEXIBLE chaos nanonet device AND PUF-based SECURITY APPARATUS using FLEXIBLE CHAOS NANONET
KR101642649B1 (en) 2015-03-11 2016-07-25 경희대학교 산학협력단 Chaos nanonet device, puf-based security apparatus using nanowire
KR101642650B1 (en) 2015-03-13 2016-07-25 경희대학교 산학협력단 Chaos nanonet device and puf-based security apparatus removing ambiguity of signal
KR101642651B1 (en) 2015-03-13 2016-07-25 경희대학교 산학협력단 Chaos nanonet device and puf-based security apparatus assuring randomness of signal path
KR101642648B1 (en) 2015-03-11 2016-07-25 경희대학교 산학협력단 Flexible chaos nanonet device and puf-based security apparatus using flexible chaos nanonet
KR20180062340A (en) * 2016-11-30 2018-06-08 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 Secure communication between server device and clients utilizing strong physical unclonable functions
US10027480B2 (en) 2014-11-28 2018-07-17 Samsung Electronics Co., Ltd. Physically unclonable function circuits and methods of performing key enrollment in physically unclonable function circuits
US10574468B2 (en) 2015-01-08 2020-02-25 University-Industry Cooperation Group Of Kyung Hee University Chaos nanonet device, and chaos nanonet-based PUF security apparatus
KR102200488B1 (en) * 2019-08-13 2021-01-08 충북대학교 산학협력단 Apparatus for generating digital radom number having multiple challenge response pairs
CN113919012A (en) * 2021-08-31 2022-01-11 温州大学 Strong PUF (physical unclonable function) anti-machine learning attack method and circuit based on sequence password
WO2022075586A1 (en) * 2020-10-05 2022-04-14 엘지전자 주식회사 Physical unclonable function device, and signal processing device and image display device having same

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060271793A1 (en) 2002-04-16 2006-11-30 Srinivas Devadas Reliable generation of a device-specific value
KR101136973B1 (en) 2008-12-11 2012-04-19 한국전자통신연구원 device and method for offering integrated security
KR20120118475A (en) * 2010-01-18 2012-10-26 앵스띠뛰 텔레콩-텔레콩 파리 테끄 Integrated silicon circuit comprising a physically non-reproducible function, and method and system for testing such a circuit
KR20130016363A (en) * 2010-06-07 2013-02-14 미쓰비시덴키 가부시키가이샤 Signal processing system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060271793A1 (en) 2002-04-16 2006-11-30 Srinivas Devadas Reliable generation of a device-specific value
KR101136973B1 (en) 2008-12-11 2012-04-19 한국전자통신연구원 device and method for offering integrated security
KR20120118475A (en) * 2010-01-18 2012-10-26 앵스띠뛰 텔레콩-텔레콩 파리 테끄 Integrated silicon circuit comprising a physically non-reproducible function, and method and system for testing such a circuit
KR20130016363A (en) * 2010-06-07 2013-02-14 미쓰비시덴키 가부시키가이샤 Signal processing system

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101593166B1 (en) * 2014-06-02 2016-02-15 한국전자통신연구원 Apparatus and method for preventing puf error
US9448874B2 (en) 2014-06-02 2016-09-20 Electronics And Telecommunications Research Institute Apparatus and method for preventing error in physically unclonable function
KR20160039011A (en) 2014-09-30 2016-04-08 고려대학교 산학협력단 Physically unclonable function circuit using S-box of AES algorithm
US10027480B2 (en) 2014-11-28 2018-07-17 Samsung Electronics Co., Ltd. Physically unclonable function circuits and methods of performing key enrollment in physically unclonable function circuits
US10505728B2 (en) 2014-11-28 2019-12-10 Samsung Electronics Co., Ltd. Physically unclonable function circuits and methods of performing key enrollment in physically unclonable function circuits
KR20160085598A (en) 2015-01-08 2016-07-18 경희대학교 산학협력단 FLEXIBLE chaos nanonet device AND PUF-based SECURITY APPARATUS using FLEXIBLE CHAOS NANONET
US10574468B2 (en) 2015-01-08 2020-02-25 University-Industry Cooperation Group Of Kyung Hee University Chaos nanonet device, and chaos nanonet-based PUF security apparatus
KR101642649B1 (en) 2015-03-11 2016-07-25 경희대학교 산학협력단 Chaos nanonet device, puf-based security apparatus using nanowire
KR101642648B1 (en) 2015-03-11 2016-07-25 경희대학교 산학협력단 Flexible chaos nanonet device and puf-based security apparatus using flexible chaos nanonet
KR101642650B1 (en) 2015-03-13 2016-07-25 경희대학교 산학협력단 Chaos nanonet device and puf-based security apparatus removing ambiguity of signal
KR101642651B1 (en) 2015-03-13 2016-07-25 경희대학교 산학협력단 Chaos nanonet device and puf-based security apparatus assuring randomness of signal path
KR102049605B1 (en) * 2016-11-30 2019-11-27 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 Secure communication between server device and clients utilizing strong physical unclonable functions
KR20180062340A (en) * 2016-11-30 2018-06-08 타이완 세미콘덕터 매뉴팩쳐링 컴퍼니 리미티드 Secure communication between server device and clients utilizing strong physical unclonable functions
US11362845B2 (en) 2016-11-30 2022-06-14 Taiwan Semiconductor Manufacturing Co., Ltd. Secure communication between server device and clients utilizing strong physical unclonable functions
KR102200488B1 (en) * 2019-08-13 2021-01-08 충북대학교 산학협력단 Apparatus for generating digital radom number having multiple challenge response pairs
WO2022075586A1 (en) * 2020-10-05 2022-04-14 엘지전자 주식회사 Physical unclonable function device, and signal processing device and image display device having same
CN113919012A (en) * 2021-08-31 2022-01-11 温州大学 Strong PUF (physical unclonable function) anti-machine learning attack method and circuit based on sequence password
CN113919012B (en) * 2021-08-31 2024-03-19 温州大学 Strong PUF (physical unclonable function) machine learning attack resisting method and circuit based on sequence password

Similar Documents

Publication Publication Date Title
KR101393806B1 (en) Multistage physical unclonable function system
CN111066077B (en) Encryption device, encryption method, decryption device, and decryption method
US20160013933A1 (en) Order-preserving encryption system, device, method, and program
JP2008513811A (en) Calculation conversion method and system
KR20150093785A (en) Integrated security device and signal processing method used by integrated security device
US10567155B2 (en) Securing a cryptographic device
Rajput et al. An improved cryptographic technique to encrypt text using double encryption
US20190065759A1 (en) Method for protecting data
US20050188200A1 (en) System and method for authentication
Achuthshankar et al. A novel symmetric cryptography algorithm for fast and secure encryption
EP1661295B1 (en) Secret-key-controlled reversible circuit and corresponding method of data processing
Ajmal et al. Cloud computing platform: Performance analysis of prominent cryptographic algorithms
KR101631680B1 (en) Physically unclonable function circuit using S-box of AES algorithm
CN107592963B (en) Method and computing device for performing secure computations
CN109639423B (en) Constituent device of decryption algorithm
Azhar et al. Text encryption using pell sequence and elliptic curves with provable security
CN107078900B (en) Cryptographic system based on reproducible random sequences
EP2991266B1 (en) Encrypted text matching system, method, and computer readable medium
JP6631989B2 (en) Encryption device, control method, and program
KR101026647B1 (en) Communication security system and method of the same with key derivation cryptographic algorithm
Rajput et al. An improved cryptographic technique to encrypt images using extended hill cipher
Mushtaque et al. Implementation of new encryption algorithm with random key selection and minimum space complexity
Praveen et al. A highly secured three-phase symmetric cipher technique
Geetha et al. Survey on security mechanisms for public cloud data
US20220417012A1 (en) Method for performing cryptographic operations in a processing device, corresponding processing device and computer program product

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee