WO2017078426A1 - 식별 키 생성 장치 및 방법 - Google Patents

식별 키 생성 장치 및 방법 Download PDF

Info

Publication number
WO2017078426A1
WO2017078426A1 PCT/KR2016/012583 KR2016012583W WO2017078426A1 WO 2017078426 A1 WO2017078426 A1 WO 2017078426A1 KR 2016012583 W KR2016012583 W KR 2016012583W WO 2017078426 A1 WO2017078426 A1 WO 2017078426A1
Authority
WO
WIPO (PCT)
Prior art keywords
value
identification key
output
predetermined condition
event
Prior art date
Application number
PCT/KR2016/012583
Other languages
English (en)
French (fr)
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 EP16862442.7A priority Critical patent/EP3373186B1/en
Priority to US15/773,492 priority patent/US11095441B2/en
Priority to CN201680077686.1A priority patent/CN108780489B/zh
Publication of WO2017078426A1 publication Critical patent/WO2017078426A1/ko
Priority to US17/374,626 priority patent/US11849034B2/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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
    • 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/73Protecting 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 creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/588Random number generators, i.e. based on natural stochastic processes
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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
    • 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]

Definitions

  • It relates to a device and a method for generating an identification key, and more particularly to a method of increasing the reliability of an identification key provided by a physically unclonable function (PUF).
  • PEF physically unclonable function
  • PUF may provide an unpredictable digital value. Individual PUFs are given the correct manufacturing process, and even if manufactured in the same process, the digital values provided by the individual PUFs are different. PUF may be referred to as Physical One-Way Function practically impossible to be duplicated (POWF).
  • PUF Physical One-Way Function practically impossible to be duplicated
  • This non-replicable characteristic of the PUF may be used to generate an identifier of the device for security and / or authentication.
  • PUF may be used to provide a unique key to distinguish devices from one another.
  • Korean Patent Registration No. 10-1139630 (hereinafter referred to as '630 Patent) and Korean Patent Registration No. 10-0926214 (hereinafter referred to as' 214 Patent)
  • '630 Patent proposes a method in which a process variation of a semiconductor is used to probabilistically determine whether an inter-layer contact or a via is formed between conductive layers of the semiconductor. It became.
  • the '214 patent proposes a method of implementing PUF using the fact that the current driving capability or threshold voltage of two electronic devices designed and manufactured in the same manner is not exactly the same due to process variation.
  • an identification key generating device includes a generator for providing a random event resulting from semiconductor process variation; An accumulator that accumulates the event and provides a cumulative result value; And a reading unit configured to provide an identification key corresponding to the generation unit by determining the accumulated result value as a binary value which is one of 0 or 1 according to a predetermined criterion.
  • the event here is related to the electrical characteristic difference.
  • an electrical characteristic value or a difference between characteristic values may be accumulated.
  • the binary value according to the event is not provided as an identification key as it is, the result of the event is accumulated, and the result may be provided according to the accumulated value.
  • the accumulation may be a discrete iteration and a cumulative result.
  • the accumulation may be a continuation of the result accumulation over a time interval.
  • the random event includes an event in which the first device of the two devices that are designed and manufactured in the same manner has a larger electrical characteristic value than the second device.
  • the first device and the second device may include a capacitor, and the electrical characteristic value may include a capacitance.
  • the accumulator generates an amount of charge proportional to a difference between a first capacitance corresponding to the first element and a second capacitance corresponding to the second element.
  • the accumulator may include an accumulator for accumulating the charge amount on the output. The accumulator repeats the trial of accumulating the charge amount on the output a plurality of times until a predetermined condition is satisfied.
  • the integrator provides the value of the output after the multiple iterations.
  • the accumulator may be a fully differential integrator.
  • the totalizer may be a one-ended integrator.
  • the predetermined condition includes that the value of the output is greater than or equal to a threshold. According to another embodiment, however, the predetermined condition may be repetition for a fixed k times, where k is a natural number.
  • the first device and the second device include a resistor, and the electrical characteristic value includes a resistance value.
  • the accumulator may include an accumulator that accumulates a current proportional to the difference in the resistance value at the output.
  • the integrator performs a current integration that accumulates at the output a current proportional to the difference between the first resistance value corresponding to the first element and the second resistance value corresponding to the second element. The integrator can then continue current integration until a predetermined condition is met and then provide the output value at that time.
  • the predetermined condition includes that the value of the output is greater than or equal to a threshold.
  • the predetermined condition may be to perform the current integration for a predetermined fixed time length.
  • the generation unit including a first element having a different electrical characteristic value than other elements of the same design-depending on whether the electrical characteristic value of the first element is greater than the reference value Electrical value is output; An accumulator that accumulates the electrical values and provides accumulated result values; And a reading unit which provides an identification key corresponding to the generation unit by using the accumulated result value.
  • the electrical characteristic value includes a resistance value.
  • the accumulator may include an accumulator that accumulates a current based on the resistance value at an output.
  • the integrator continues the current integration for accumulating a current in proportion to the difference between the first resistance value corresponding to the first element and the reference value at the output until a predetermined condition is satisfied and the condition is met. You can provide a value for the output.
  • the predetermined condition comprises performing the voltage integration for a predetermined length of time.
  • an operation method of generating, by an identification key generation device, an identification key includes generating a random event generated by a generation unit due to a semiconductor process variation; Accumulating the result of the event in a predetermined method and providing a result value of accumulating the result of the event; And reading the identification key corresponding to the identification key generation device by using the accumulated result value.
  • the random event includes an event in which a first element of two elements in the identification key generation device, which are designed and manufactured in the same manner, has a larger electrical characteristic value than the second element.
  • the first device and the second device may include a capacitor, and the electrical characteristic value may include a capacitance.
  • the accumulation generates an amount of charge proportional to a difference between a first capacitance corresponding to the first element and a second capacitance corresponding to the second element, and when an implementation of accumulating the amount of charge on the output is satisfied. It may include repeating a plurality of times.
  • the first device and the second device may include a resistor, and the electrical characteristic value may include a resistance value.
  • the accumulation satisfies a predetermined condition in which a current integral for accumulating a current proportional to a difference between a first resistance value corresponding to the first element and a second resistance value corresponding to the second element is accumulated in the output. It can include a process that lasts until.
  • the predetermined condition may be to perform the voltage integration for a predetermined fixed length of time.
  • the condition further includes continuing to accumulate until the value of the output is above a threshold.
  • FIG. 1 is a block diagram illustrating an apparatus for generating an identification key according to an embodiment.
  • FIG. 2 is a circuit diagram illustrating an example of an apparatus for generating an identification key according to an embodiment.
  • 3 to 5B are diagrams illustrating a process of providing an identification key by accumulating difference of electrical characteristics in the embodiment of FIG. 2.
  • FIG. 6 is a circuit diagram illustrating an example of an apparatus for generating an identification key according to another exemplary embodiment.
  • FIG. 7A to 9 are diagrams illustrating a process of providing an identification key by accumulating difference of electrical characteristics in the embodiment of FIG. 6.
  • FIG. 10 is a circuit diagram illustrating an example of an apparatus for generating an identification key according to another exemplary embodiment.
  • 11A and 11B are diagrams illustrating a process of providing an identification key by accumulating difference of electrical characteristic values in the embodiment of FIG. 10.
  • FIG. 12 is a flowchart of a method of operating an apparatus for generating an identification key, according to an exemplary embodiment.
  • the apparatus 100 for generating identification keys includes a generator 101 for providing a random event resulting from semiconductor process variation.
  • the event here is related to the electrical characteristic difference.
  • the electrical characteristics may be illustratively, but not limited to, resistance values of resistors, which are passive elements, capacitances of capacitors, current driving capability of active devices such as transistors, or threshold voltages.
  • the generator 101 may provide such an electrical characteristic or a difference in electrical characteristic values between the device and the device intrinsically. This difference in electrical property values may be due to semiconductor process variations.
  • the difference in the electrical property value may be a very small value. Therefore, the electrical characteristic value may be changed by various environmental factors such as thermal noise, aging of the device, and disturbances such as electromagnetic waves. If the value of the PUF creates a unique identification key (including any digital value such as a secret key for authentication, a private key, or a device's unique ID) using the electrical property value or the characteristic value difference between the elements, Changes caused by these environmental factors may have undesirable consequences. If the identification key changes, this poses a challenge to the authenticity of the PUF or security device containing such a PUF. Therefore, it is necessary to ensure time invariability that the identification key, which is a PUF value, does not change over time.
  • a unique identification key including any digital value such as a secret key for authentication, a private key, or a device's unique ID
  • the apparatus 100 includes an accumulator 102 that accumulates the events provided by the generator 101 and provides the accumulated result values.
  • the difference between the electrical characteristic values or the characteristic values may be accumulated. Accumulation in this embodiment means that analog electrical characteristics (charge, current, potential difference, etc.) are integrated in the electrical circuit.
  • the charge amount / current integration by such an electric circuit is only a few examples.
  • the binary value according to the event is not provided as an identification key as it is, the result of the event is accumulated, and the result may be provided according to the accumulated value.
  • the accumulation may be a discrete iteration and the accumulation of the results.
  • results may be cumulative over an interval of time.
  • the reading unit 103 determines the accumulated result value as a binary value, which is either 0 or 1, according to a predetermined criterion, and provides the value as an identification key corresponding to the generating unit 101. If the previous PUF was used as the PUF value by reading the event inherently provided by the generation unit 101, the device 100 according to the embodiment accumulates the electrical characteristics or the characteristic difference value generated by the generation unit 101 The unit 102 accumulates, and the reading unit 103 provides the identification key by using the accumulated result.
  • specific examples of the generation unit 101 and the accumulation unit 102 will be described with reference to the drawings.
  • the event includes an event in which the first device has a larger electrical characteristic value than the second device among two devices designed and manufactured in the same manner.
  • the first device and the second device may include a capacitor, and the electrical characteristic value may include a capacitance.
  • the generator 210 illustrated in FIG. 2 includes a capacitor Ca as a first element and a capacitor Cb as a second element.
  • a voltage is applied to the generator 210, an amount of charge proportional to the difference between the first capacitance of Ca and the second capacitance of Cb is accumulated in the accumulator 220.
  • the reader 230 provides a PUF value (binary value) according to the accumulated result value using the comparator. A detailed operation method will be described below with reference to FIG. 3.
  • 3 to 5B are diagrams illustrating a process of accumulating difference of electrical characteristic values in the embodiment of FIG. 2.
  • the accumulator 220 includes a fully differential integrator.
  • the circuit shown is only one example of a fully differential integrator and other structures of integrators are possible.
  • each voltage of VINP, VINN, VOUTP, VOUTN, and VREF has the same value. Then, all the charges charged in the capacitor CF are discharged.
  • the process of closing the reset switch 224 may be understood as a process of initializing the circuit before the cumulative operation.
  • the reset switch 224 is off. Then, the voltages of VINP, VINN, and VREF have the same value, and the capacitor CF accumulates an amount of charge proportional to the capacitance difference between the capacitor Ca as the first element and the capacitor Cb as the second element.
  • the amount of charge accumulated in the capacitor CF is represented by the voltage values of the output voltages VOUTP and VOUTN.
  • the voltage difference of VEX When VEX is applied to the first element Ca, The amount of charge Qa corresponding to the magnitude of the product of VEX and the first capacitance of the first element Ca is equal to that of the first element Ca. It is charged to a node in the direction in which VEX is applied. Since the opposite amounts of charges having different polarities are charged to both nodes of the first device Ca, the negative charges Qa are charged to the nodes in the VINP direction. Corresponding to the voltage difference of VEXB in FIG.
  • + Q causes different operation of the output voltage in the common mode and differential mode depending on the operation of the differential amplifier. Changes in common-mode do not affect differential operation. In the case of the change in the differential mode, the values of the output voltages VOUTP and VOUTN change to satisfy the charge amount corresponding to the change.
  • VOUTP is + The half value of Q is divided by the amount of capacitance of the capacitor of CF, and VOUTN is- The half of Q is divided by the amount of capacitance of the capacitor of CF.
  • the change value of the output voltage corresponds to the output of the accumulator 220 in FIGS. 2, 3, and 4A.
  • FIG. 5A and 5B which is a voltage difference of VEX of FIG. 5B-
  • a negative charge amount Qa corresponding to the product of VEX and the first capacitance of the first element Ca is charged to the node Node in the VEX direction of the first element Ca. Since the opposite amounts of charges having different polarities are charged to both nodes of the first device Ca, the positive charges Qa are charged to the nodes in the VINP direction.
  • VEXB of FIG. 4B Voltage difference of VEXB of FIG. 4B If you walk like VEX Qb, which is a positive charge amount corresponding to the product of VEX and the second capacitance of the second element Cb, is charged to the node Node in the VEXB direction of the second element Cb. Since the opposite amounts of charges having different polarities are charged to both nodes of the second device Cb, the positive charges Qb are charged to the nodes in the VINP direction. This results in a change in the total charge of the node in the VINP direction.
  • Q corresponds to the value of Qa-Qb.
  • the value of Q VEX is a value obtained by multiplying the capacitance of the first element Ca by the size of the second minus the value of the second capacitance of the second element Cb, Will have the size of.
  • the total charge amount of both nodes of the capacitor of CF is With the value of- Will change by Q.
  • - Q causes different operation of the output voltage in common-mode and differential mode depending on the operation of the differential amplifier. The change in common-mode does not affect the differential operation.
  • the values of the output voltages VOUTP and VOUTN change to satisfy the charge amount corresponding to the change.
  • VOUTP is +
  • the half value of Q is divided by the amount of capacitance of the capacitor of CF
  • VOUTN is-
  • the half of Q is divided by the amount of capacitance of the capacitor of CF.
  • the change value of the output voltage may correspond to the output of the accumulator 220 in FIGS. 2, 3, and 5A.
  • the totalizer was a fully differential integrator, but according to another embodiment, the totalizer may be a one-ended integrator.
  • 6 is a circuit diagram illustrating an example of an apparatus for generating an identification key according to another exemplary embodiment. In this embodiment, the totalizer may be a one-ended integrator.
  • the accumulation point of the electrical characteristic by the capacitance difference between the capacitor Ca and the capacitor Cb in the generator 310 is similar to that described above.
  • the illustrated accumulator 320 may include switches 321 and 322 for selection of phases in order for the output to increase or decrease in one direction. When On, it may include a reset switch 324 which performs an operation of initializing a circuit by discharging all the charges charged in the CF.
  • the structure of the accumulator 320 illustrated in FIG. 1 corresponds to one example of implementing a single-ended integrator, and another structure of the single-ended integrator may be replaced.
  • the reader 330 compares the accumulated result with VREF and reads out the final identification key.
  • FIG. 7A to 9 are diagrams illustrating a process of providing an identification key by accumulating difference of electrical characteristics in the embodiment of FIG. 6.
  • the switch sw1 321 is in a closed state (on)
  • the switch sw2 322 is in an open state (off)
  • the reset switch sw3 324 is in a closed state (on).
  • the switch sw2 322 is in an open state (Off) even if there is a change in the amount of charge charged in the first element Ca and the second element Cb according to the voltage change of VEX and VEXB corresponding to the voltage.
  • Voltage changes of VEX and VEXB may be transmitted to Vref through the switch sw1 321 instead of being transferred to an amplifier.
  • the voltage change applied to VEX and VEXB respectively is + VEX,- On VEXB
  • the voltage difference at the time of 1 (Phase1).
  • the amount of charge accumulated in the capacitor of the CF may be discharged through the reset switch 324.
  • the switch sw1 321 is in an open state
  • the switch sw2 322 is in a closed state
  • the reset switch sw3 324 is in an open state.
  • a change in the amount of charge charged in the first element Ca and the second element Cb occurs according to the change in the voltage of VEX and VEXB corresponding to the voltage.
  • the change of each charge amount is the magnitude of Qa and Qb.
  • the amount of polarity is equal to the value of the amount of charges charged in the first element Ca minus Qb, the amount of charges charged in the second element Cb.
  • the opposite change in charge occurs in the capacitor of the CF.
  • the value obtained by subtracting Qb which is the charge amount charged to the second element Cb from Qa which is the charge amount charged to the first element Ca is + Q is- The amount of charge as Q is charged to the node in the direction connected to the VINN of CF, + to the node in the VOUT direction in the opposite direction + The amount of charge as much as Q is charged. + Charged to Node in VOUT direction
  • the value obtained by dividing the difference between the first capacitance and the second capacitance of the first element Ca and the second element Cb by the capacitance of the capacitor of CF is the voltage VEX. The voltage change by the amount multiplied by and occurs at the node of VOUT.
  • the change value of the output voltage corresponds to the output of the accumulator 320 in FIGS. 6, 7A, and 8A.
  • the voltage change applied to VEX and VEXB respectively is + To VEX, -VEXB
  • the voltage difference at the time of 2 Phase2.
  • the predetermined condition includes the value of the accumulated output being greater than or equal to a preset threshold.
  • the threshold here is large enough to ensure that the PUF value does not change despite environmental factors such as noise or internal factors such as aging of the device.
  • the predetermined condition may be repetition for a fixed k times, where k is a natural number. The number of repetitions k may be determined according to the process and / or according to a specific device or device specification, and an optimal value may be found through repeated execution by those skilled in the art.
  • the 10 is a circuit diagram illustrating an example of an apparatus for generating an identification key according to another exemplary embodiment.
  • the first element and the second element to which the electrical characteristic values are compared are resistors.
  • the generator 410 is designed and manufactured with the same size, but includes resistors RA and RB whose resistance values cannot be exactly the same due to process variations.
  • the electrical characteristic value being compared is the resistance value.
  • the accumulator 420 may include an accumulator that accumulates a current proportional to the difference in the resistance value at the output.
  • the integrator performs a current integration that accumulates at the output a current that is proportional to the difference between the first resistance value of RA and the second resistance value of RB.
  • the integrator can then continue current integration until a predetermined condition is met and then provide the output value at that time.
  • the read unit 430 provides a PUF value (binary value) according to the accumulated result value using the comparator.
  • the predetermined condition includes that the value of the accumulated output is greater than or equal to a threshold.
  • the threshold here is large enough to ensure that the PUF value does not change despite environmental factors such as noise or internal factors such as aging of the device.
  • the predetermined condition may be to perform the current integration for a predetermined fixed time length. The fixed length of time can be determined by the process and / or by the specific device or device specification, and the optimal value can be found through repeated trials by those skilled in the art.
  • FIGS. 11A and 11B are diagrams illustrating a process of providing an identification key by accumulating difference of electrical characteristic values in the embodiment of FIG. 10.
  • the reset switch 424 When the reset switch 424 is closed (on), all the charges charged in the capacitor CF are discharged to initialize the circuit.
  • the current flowing through the capacitor CF of the accumulator 420 is proportional to the differential value of the voltage difference across the CF with respect to time.
  • the constant current flowing through the capacitor CF means that the derivative value with respect to the time of the voltage difference across the CF has a constant value.
  • the derivative value with respect to the time of the voltage difference across the CF changes. Since the input voltage of the amplifier in the accumulator 420 maintains the voltage VREF value by the operation of the negative feedback, the derivative value with respect to the time of the voltage difference between the two ends of the capacitor of the CF is output. This occurs at voltages VOUTP and VOUTN. Over time, changes in output voltage values continue to accumulate.
  • the change value of the output voltage may correspond to the output of the accumulator 420 in FIGS. 10 and 11A.
  • 11B illustrates that the output voltages VOUTP and VOUTN of the accumulator 420 accumulate according to the operation of the identification key generator of FIG. 11A.
  • the current flowing through the capacitor CF does not affect the output voltages VOUTP and VOUTN in the common mode, and a current difference occurs in the differential mode, resulting in a change in the output voltages VOUTP and VOUTN.
  • the slope of the change of VOUTP and VOUTN in FIG. 11B is half of the current difference value due to the difference in resistance caused by the process variation of the resistors of RA and RB in FIG. 10. Corresponds to the size divided by the capacitance value of.
  • an operation method of generating, by an identification key generation device, an identification key includes the steps of generating (501) a random event attributable to a semiconductor process variation; Accumulating the result of the event in a predetermined method and providing a result of accumulating the result of the event; And reading the identification key corresponding to the identification key generation device by using the accumulated result value (503).
  • a difference in electrical characteristics between devices or between devices is generated due to process variation.
  • a first element of two elements in the identification key generation device that are designed and manufactured in the same manner may have a larger electrical characteristic value than the second element.
  • the first device and the second device may include a capacitor, and the electrical characteristic value may include a capacitance.
  • This electrical characteristic or characteristic difference is then accumulated 502 as a result. This accumulation may satisfy a predetermined condition of generating a charge amount proportional to a difference between a first capacitance corresponding to the first element and a second capacitance corresponding to the second element, and accumulating the charge amount on an output. This may include repeating a plurality of times.
  • the first device and the second device may include a resistor, and the electrical characteristic value may include a resistance value.
  • the predetermined condition may be to perform the voltage integration for a predetermined fixed length of time.
  • the condition further includes continuing to accumulate until the value of the output is above a threshold.
  • the apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components.
  • the devices and components described in the embodiments may be, for example, processors, controllers, arithmetic logic units (ALUs), digital signal processors, microcomputers, field programmable arrays (FPAs), It may be implemented using one or more general purpose or special purpose computers, such as a programmable logic unit (PLU), microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system.
  • the processing device may also access, store, manipulate, process, and generate data in response to the execution of the software.
  • OS operating system
  • the processing device may also access, store, manipulate, process, and generate data in response to the execution of the software.
  • processing device includes a plurality of processing elements and / or a plurality of types of processing elements. It can be seen that it may include.
  • the processing device may include a plurality of processors or one processor and one controller.
  • other processing configurations are possible, such as parallel processors.
  • the software may include a computer program, code, instructions, or a combination of one or more of the above, and configure the processing device to operate as desired, or process it independently or collectively. You can command the device.
  • Software and / or data may be any type of machine, component, physical device, virtual equipment, computer storage medium or device in order to be interpreted by or to provide instructions or data to the processing device. Or may be permanently or temporarily embodied in a signal wave to be transmitted.
  • the software may be distributed over networked computer systems so that they may be stored or executed in a distributed manner.
  • Software and data may be stored on one or more computer readable recording media.
  • the method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium.
  • the computer readable medium may include program instructions, data files, data structures, etc. alone or in combination.
  • the program instructions recorded on the media may be those specially designed and constructed for the purposes of the embodiments, or they may be of the kind well-known and available to those having skill in the computer software arts.
  • Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks.
  • Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.
  • the hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Charge And Discharge Circuits For Batteries Or The Like (AREA)

Abstract

반도체 공정 편차에서 기인하는 무작위 이벤트에 따라 식별 키가 생성되는 PUF가 제시된다. PUF는 소자의 전기적 차이에 따른 결과로 식별 키를 제공할 수 있다. 일실시예에 따르면 PUF는 전기적 차이에 의한 순시 값을 이용하여 식별 키를 생성하지 않고 상기 전기적 차이 및/또는 상기 순시 값을 누적할 수 있다. 상기 누적은 이산적 반복 시행과 그 결과의 누적일 수 있다. 그러나 다른 실시예에서는 상기 누적은 시간 구간 동안의 결과 누적의 계속일 수 있다.

Description

식별 키 생성 장치 및 방법
식별 키를 생성하는 장치 및 방법에 연관되며, 보다 특정하게는 PUF (Physically Unclonable Function)가 제공하는 식별 키의 신뢰도를 높이는 방법에 연관된다.
PUF는 예측 불가능한 (unpredictable) 디지털 값을 제공할 수 있다. 개개의 PUF들은 정확한 제조 공정이 주어지고, 동일한 공정에서 제조되더라도, 상기 개개의 PUF들이 제공하는 디지털 값은 다르다. PUF는 복제가 불가능한 POWF (Physical One-Way Function practically impossible to be duplicated)로 지칭될 수도 있다.
이러한 PUF의 복제 불가능한 특성은 보안 및/또는 인증을 위한 기기의 식별자(identifier)를 생성하는 데에 이용될 수 있다. 이를테면, 디바이스를 다른 디바이스와 구별하기 위한 유니크 키(unique key to distinguish devices from one another)를 제공하기 위해 PUF가 이용될 수 있다.
한국 등록특허 10-1139630호(이하 '630 특허)와 한국 등록특허 10-0926214호(이하 '214 특허)에서는 PUF를 구현하는 방법들이 제시되었다. '630 특허에서는 반도체의 공정 편차(process variation)를 이용하여 반도체의 전도성 레이어들 사이의 인터-레이어 콘택(inter-layer contact) 또는 비아(via)의 생성 여부가 확률적으로 결정되도록 한 방법이 제시되었다. 그리고 '214 특허에는 동일하게 설계되어 제조된 두 전자 소자의 전류 구동 능력 또는 임계 전압이 공정 편차로 인해 완전히 동일하지 못하다는 점을 이용해 PUF를 구현하는 방법이 제시되었다.
일측에 따르면, 식별키 생성 장치가 제공된다. 장치는 반도체 공정 편차에서 기인하는 무작위 이벤트를 제공하는 생성부; 상기 이벤트를 누적하여, 누적된 결과 값을 제공하는 누적부; 및 상기 누적된 결과 값을 미리 지정된 기준에 따라 0 또는 1 중 어느 하나인 바이너리 값으로 결정함으로써 상기 생성부에 대응하는 식별 키를 제공하는 독출부를 포함한다. 여기서 상기 이벤트는 전기적 특성 차이에 연관된다. 일실시예에 따르면 전기적 특성 값 또는 특성 값들 간의 차이가 누적될 수 있다. 그러나 예시적으로, 한정되지 않게, 다른 일실시예에 따르면 이벤트에 따라 생성된 바이너리 값이 누적되는 것도 가능하다. 이 경우에 이벤트에 따른 바이너리 값이 그대로 식별 키로 제공되지 않고 이벤트에 의한 결과가 누적되어, 그 누적된 값에 따라 결과가 제공될 수 있다. 일실시예에 따르면 상기 누적은 이산적 반복 시행과 그 결과의 누적일 수 있다. 그러나 다른 실시예에서는 상기 누적은 시간 구간 동안의 결과 누적의 계속일 수 있다.
일실시예에 따르면 상기 무작위 이벤트는 동일하게 설계되어 제조되는 두 소자 중 제1 소자가 제2 소자보다 전기적 특성 값이 큰 이벤트를 포함한다.
일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함할 수 있다. 이 경우, 상기 누적부는 상기 제1 소자에 대응하는 제1 커패시턴스와 상기 제2 소자에 대응하는 제2 커패시턴스의 차이에 비례하는 전하량을 발생시킨다. 그리고, 누적부는 상기 전하량을 출력에 누적시키는 적산기를 포함할 수 있다. 상기 적산기는 전하량을 출력에 누적시키는 시행을 미리 지정된 조건을 만족할 때까지 복수 회 반복한다. 그리고 상기 적산기는 상기 복수 회 반복 후의 상기 출력의 값을 제공한다. 일실시예에 따르면 상기 적산기는 완전 차동 적산기(fully differential integrator)일 수 있다. 다른 일실시예에 따르면 상기 적산기는 일단 적산기 (one-ended integrator)일 수도 있다.
한편, 일실시예에 따르면 상기 미리 지정된 조건은, 상기 출력의 값이 임계치 이상인 것을 포함한다. 그러나 다른 일실시예에 따르면 상기 미리 지정된 조건은, 고정된 k 회 - 단, k는 자연수임 - 동안의 반복일 수 있다.
또 다른 일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 저항을 포함하고, 상기 전기적 특성 값은 저항 값을 포함한다. 본 실시예에서 상기 누적부는 상기 저항 값의 차이에 비례한 전류를 출력에 누적시키는 적산기를 포함할 수 있다. 상기 적산기는 상기 제1 소자에 대응하는 제1 저항 값과 상기 제2 소자에 대응하는 제2 저항 값의 차이에 비례하는 전류를 출력에 누적시키는 전류 적분을 수행한다. 그리고 적산기는 미리 지정된 조건을 만족할 때까지 전류 적분을 지속한 다음 그 때의 출력 값을 제공할 수 있다.
일실시예에 따르면 상기 미리 지정된 조건은, 상기 출력의 값이 임계치 이상인 것을 포함한다. 그러나 이러한 조건은 이에 한정되지 않는다. 이를테면 다른 실시예에서 상기 미리 지정된 조건은, 미리 지정되는 고정된 시간 길이 동안 상기 전류 적분을 수행하는 것일 수 있다.
다른 일측에 따르면, 반도체 공정 편차에서 기인하여, 동일하게 설계된 다른 소자들과는 다른 전기적 특성 값을 갖는 제1 소자를 포함하는 생성부 - 상기 제1 소자의 전기적 특성 값이 기준 값보다 큰 지의 여부에 따라 전기적인 값이 출력됨 -; 상기 전기적인 값을 누적하여, 누적된 결과 값을 제공하는 누적부; 및 상기 누적된 결과 값을 이용하여 상기 생성부에 대응하는 식별 키를 제공하는 독출부를 포함하는 식별 키 생성 장치가 제공된다.
일실시예에 따르면 상기 전기적 특성 값은 저항 값을 포함한다. 그리고 상기 누적부는 상기 저항 값에 따른 전류를 출력에 누적하는 적산기를 포함할 수 있다. 상기 적산기는 상기 제1 소자에 대응하는 제1 저항 값과 상기 기준 값 차이에 비례하는 전류를 출력에 누적시키는 전류 적분을 미리 지정된 조건이 만족될 때까지 지속하여, 그 조건을 만족하는 경우의 상기 출력의 값을 제공할 수 있다. 여기서 상기 미리 지정된 조건은, 미리 지정되는 시간 길이 동안 상기 전압 적분을 수행하는 것을 포함한다.
또 다른 일측에 따르면, 식별 키 생성 장치가 식별 키를 생성하는 동작 방법이 제공된다. 상기 방법은, 생성부가 반도체 공정 편차에서 기인하는 무작위 이벤트를 발생시키는 단계; 상기 이벤트 결과를 미리 지정된 방법으로 누적하여, 상기 이벤트에 의한 결과 값을 누적한 결과 값을 제공하는 단계; 및 상기 누적된 결과 값을 이용하여 상기 식별 키 생성 장치에 대응하는 식별 키를 독출하는 단계를 포함할 수 있다. 일실시예에 따르면 상기 무작위 이벤트는 동일하게 설계되어 제조되는 상기 식별 키 생성 장치 내의 두 소자 중 제1 소자가 제2 소자보다 전기적 특성 값이 큰 이벤트를 포함한다.
일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함할 수 있다. 여기서 상기 누적은 상기 제1 소자에 대응하는 제1 커패시턴스와 상기 제2 소자에 대응하는 제2 커패시턴스의 차이에 비례하는 전하량을 발생시키고, 상기 전하량을 출력에 누적시키는 시행을 미리 지정된 조건을 만족할 때까지 복수 회 반복하는 과정을 포함할 수 있다.
다른 일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 저항을 포함하고, 상기 전기적 특성 값은 저항 값을 포함할 수 있다. 본 실시예에서 상기 누적은 상기 제1 소자에 대응하는 제1 저항 값과 상기 제2 소자에 대응하는 제2 저항 값의 차이에 비례하는 전류를 출력에 누적시키는 전류 적분을 미리 지정된 조건을 만족할 때까지 지속하는 과정을 포함할 수 있다. 여기서 상기 미리 지정된 조건은, 미리 지정되는 고정된 시간 길이 동안 상기 전압 적분을 수행하는 것일 수 있다. 나아가 다른 실시예에서는 상기 조건이 상기 출력의 값이 임계치 이상이 될 때까지 상기 누적을 계속하는 것을 포함한다.
도 1은 일실시예에 따른 식별 키 생성 장치를 도시하는 블록도이다.
도 2는 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다.
도 3 내지 도 5b는 도 2의 실시예에서 전기적 특성 값 차이가 누적되어 식별 키가 제공되는 과정을 설명하는 도면이다.
도 6은 다른 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다.
도 7a 내지 도 9는 도 6의 실시예에서 전기적 특성 값 차이가 누적되어 식별 키가 제공되는 과정을 설명하는 도면이다.
도 10은 또 다른 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다.
도 11a 및 도 11b는 도 10의 실시예에서 전기적 특성 값 차이가 누적되어 식별 키가 제공되는 과정을 설명하는 도면이다.
도 12는 일실시예에 따른 식별 키 생성장치의 동작 방법을 나타내는 흐름도이다.
이하에서, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 권리범위는 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
아래 설명에서 사용되는 용어는, 연관되는 기술 분야에서 일반적이고 보편적인 것으로 선택되었으나, 기술의 발달 및/또는 변화, 관례, 기술자의 선호 등에 따라 다른 용어가 있을 수 있다. 따라서, 아래 설명에서 사용되는 용어는 기술적 사상을 한정하는 것으로 이해되어서는 안 되며, 실시예들을 설명하기 위한 예시적 용어로 이해되어야 한다.
또한 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세한 그 의미를 기재할 것이다. 따라서 아래 설명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미와 명세서 전반에 걸친 내용을 토대로 이해되어야 한다.
도 1은 일실시예에 따른 식별 키 생성 장치(100)를 도시하는 블록도이다. 일실시예에 따른 식별 키 생성 장치(100)는 반도체 공정 편차에서 기인하는 무작위 이벤트를 제공하는 생성부(101)를 포함한다. 여기서 상기 이벤트는 전기적 특성 차이에 연관된다. 전기적 특성은 예시적으로, 그러나 한정되지 않게, 수동 소자인 저항의 저항 값, 커패시터의 커패시턴스, 트랜지스터와 같은 능동 소자의 전류 구동 능력이나 임계 전압 등 여러가지가 있을 수 있다. 생성부(101)에서는 이러한 전기적 특성, 또는 소자와 소자 간의 전기적 특성 값 차이를 내재적으로(intrinsic) 제공할 수 있다. 이러한 전기적 특성 값의 차이는 반도체 공정 편차 때문에 발생하는 것일 수 있다.
그런데, 이러한 전기적 특성 값의 차이는 매우 작은 값일 수 있다. 따라서 열 잡음, 소자의 에이징(aging), 전자기파 같은 외란 등 여러 환경적 요인에 의해 그 전기적 특성 값은 달라질 수 있다. 만약 PUF의 값이 전기적 특성 값 또는 소자 간의 특성 값 차이를 이용하여 고유의 식별 키 (인증을 위한 비밀 키, 개인 키, 기기의 고유 아이디 등 여하 간의 디지털 값을 포함한다, 이하 같다)를 만든다면 이러한 환경적 요인에 의한 변화는 원치 않는 결과를 야기할 수도 있다. 식별 키가 변한다면 이는 PUF 또는 이러한 PUF를 포함하는 보안 기기의 신뢰성에 대한 도전이 된다. 따라서 PUF 값인 식별 키가 시간의 경과에도 변하지 않는 시불변성이 보장될 필요가 있다.
이러한 점에서 장치(100)는 생성부(101)가 제공하는 이벤트를 누적하여(accumulate), 누적된 결과 값을 제공하는 누적부(102)를 포함한다. 일실시예에 따르면 상기한 전기적 특성 값 또는 특성 값들 간의 차이가 누적될 수 있다. 이러한 실시예에서의 누적은 아날로그 적인 전기적 특성 (전하량, 전류, 전위차 등)이 전기적 회로에서 적분(integrate) 되는 것을 의미한다.
그러나 이러한 전기적 회로에 의한 전하량/전류 적분 등은 일부 예에 불과하다. 다른 일실시예에 따르면 이벤트에 따라 미리 결정된 방법으로 생성된 디지털 값 (바이너리 값)이 누적되는 것도 가능하다. 이 경우에 이벤트에 따른 바이너리 값이 그대로 식별 키로 제공되지 않고 이벤트에 의한 결과가 누적되어, 그 누적된 값에 따라 결과가 제공될 수 있다. 한편, 상기 누적은 이산적 반복 시행과 그 결과의 누적일 수 있다. 그러나 이산적 반복 시행과 그 결과의 누적뿐만 아니라, 계속적(analogous)으로 어떤 시간 구간 동안 결과가 누적되는 것일 수도 있다.
독출부(103)는 이렇게 누적된 결과 값을 미리 지정된 기준에 따라 0 또는 1 중 어느 하나인 바이너리 값으로 결정하고, 그 값을 생성부(101)에 대응하는 식별 키로서 제공한다. 종전의 PUF는 생성부(101)에서 내재적으로 제공하는 이벤트를 그대로 독출하여 PUF 값으로 사용하였다면, 실시예들에 따른 장치(100)는 생성부(101)가 만드는 전기적 특성 또는 특성 차이 값을 누적부(102)가 누적하고, 이렇게 누적된 결과를 이용하여 독출부(103)가 식별 키를 제공하는 것이다. 이하에서는 생성부(101), 누적부(102)의 구체적인 예시들을 도면을 참조하여 설명하기로 한다.
도 2는 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다. 일실시예에 따르면 상기 이벤트는 동일하게 설계되어 제조되는 두 소자 중 제1 소자가 제2 소자보다 전기적 특성 값이 큰 이벤트를 포함한다. 일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함할 수 있다.
도 2에 도시된 생성부(210)는 제1 소자인 커패시터 Ca와 제2 소자인 커패시터 Cb를 포함한다. 생성부(210)에 전압이 인가되면 Ca의 제1 커패시턴스와 Cb의 제2 커패시턴스의 차이에 비례하는 전하량이 누적부(220)에서 누적된다. 그리고 독출부(230)는 비교기를 이용하여 누적된 결과 값에 따라 PUF 값 (바이너리 값)을 제공한다. 상세한 동작 방법은 도 3 이하를 참조하여 설명한다.
도 3 내지 도 5b는 도 2의 실시예에서 전기적 특성 값 차이가 누적되는 과정을 설명하는 도면이다. 도 2의 실시예에서는 누적부(220)에 완전 차동 적산기(fully differential integrator)가 포함되었다. 도시된 회로는 완전 차동 적산기의 하나의 예에 불과하며 다른 구조의 적산기도 가능하다.
도 3을 참조하면, 리셋 스위치(224)가 연결되어 닫히는(on) 경우 VINP, VINN, VOUTP, VOUTN, VREF 의 각 전압이 같은 값을 갖게 된다. 그러면 커패시터 CF에 충전되어 있는 전하량이 모두 방전된다. 리셋 스위치(224)가 닫히는 과정은 누적 동작 이전에 회로가 초기화 되는 과정으로 이해될 수 있다.
도 4a를 참조하면, 리셋 스위치(224)가 열린다(off). 그러면 VINP, VINN, VREF의 각 전압이 같은 값을 갖게 되며, 커패시터 CF에는 제1 소자인 커패시터 Ca와 제2 소자인 커패시터 Cb의 커패시턴스(Capacitance) 차이에 비례하는 전하량이 누적된다. 커패시터 CF에 누적되는 전하량은 출력 전압인 VOUTP, VOUTN 의 전압 값으로 나타나게 된다.
도 4b를 도 4a와 함께 참조하면, VEX의 전압차이인
Figure PCTKR2016012583-appb-I000001
VEX가 제1 소자(Ca) 에 인가되면,
Figure PCTKR2016012583-appb-I000002
VEX 와 제1 소자(Ca)의 제1 캐패시턴스의 곱의 크기에 해당하는 양의 전하량인 Qa 가 제1 소자(Ca)의
Figure PCTKR2016012583-appb-I000003
VEX 를 인가한 방향의 노드(Node)에 충전된다. 제1 소자(Ca)의 양 방향 노드(Node)에는 동일한 크기로 극성이 다른 전하량이 충전되어야 하므로 VINP 방향의 노드(Node)에 음의 전하량인 Qa가 충전된다. 도 4b의 VEXB의 전압차이에 대응하는 -
Figure PCTKR2016012583-appb-I000004
VEX 를 제2 소자(Cb)에 인가하면
Figure PCTKR2016012583-appb-I000005
VEX 와 제2 소자(Cb)의 제2 커패시턴스의 곱의 크기에 해당하는 음의 전하량인 Qb 가 제2 소자(Cb)의 VEXB 방향의 노드(Node)에 충전된다. 제2 소자(Cb)의 양 방향 노드(Node)에는 동일한 크기로 극성이 다른 전하량이 충전되어야 하므로 VINP 방향의 노드(Node)에 양의 전하량인 Qb가 충전된다. 이로 인해 VINP 방향의 노드(Node)의 총 전하량 변화인 -
Figure PCTKR2016012583-appb-I000006
Q는 -(Qa-Qb)의 값에 해당하게 된다. 즉
Figure PCTKR2016012583-appb-I000007
Q의 값은
Figure PCTKR2016012583-appb-I000008
VEX 에 제1 소자(Ca)의 제1 커패시턴스에서 제2 소자(Cb)의 제2 커패시턴스 값을 뺀 크기를 곱한 값 즉,
Figure PCTKR2016012583-appb-I000009
의 크기를 갖게 된다. 이 때 VINP 의 총 전하를 0의 값으로 유지하기 위해 CF의 축전기(Capacitor)의 양 방향 노드(Node)의 총 전하량은
Figure PCTKR2016012583-appb-I000010
의 값을 갖는 +
Figure PCTKR2016012583-appb-I000011
Q 만큼 변화하게 된다.
+
Figure PCTKR2016012583-appb-I000012
Q는 차동 증폭기(Differential Amplifier)의 동작에 따라 커먼 모드(Common-mode)와 디퍼런셜 모드(Differential mode)에서 출력 전압의 다른 동작을 유발하게 된다. Common-mode의 변화는 차동(Differential) 동작에 영향을 미치지 않는다. Differential-mode의 변화의 경우, 그 변화에 해당하는 전하량을 만족시킬 수 있도록 출력 전압인 VOUTP, VOUTN의 값이 변화하게 된다. VOUTP는 +
Figure PCTKR2016012583-appb-I000013
Q의 절반 값을 CF의 축전기(Capacitor)의 커패시턴스(Capacitance)의 크기만큼 나눈 값으로 변화하게 되고 VOUTN은 -
Figure PCTKR2016012583-appb-I000014
Q의 절반 값을 CF의 축전기(Capacitor)의 커패시턴스(Capacitance)의 크기만큼 나눈 값으로 변화하게 된다. 이러한 출력 전압의 변화 값이 도 2, 도 3 및 도 4a에서 누적부(220)의 출력에 해당하게 된다.
도 5a와 도 5b를 참조하면, 도 5b의 VEX의 전압차이인 -
Figure PCTKR2016012583-appb-I000015
VEX 만큼 제1 소자(Ca)에 인가하면 -
Figure PCTKR2016012583-appb-I000016
VEX 와 제1 소자(Ca)의 제1 캐패시턴스의 곱의 크기에 해당하는 음의 전하량인 Qa 가 제1 소자(Ca)의 VEX 방향의 노드(Node)에 충전된다. 제1 소자(Ca)의 양 방향 노드(Node)에는 동일한 크기로 극성이 다른 전하량이 충전되어야 하므로 VINP 방향의 노드(Node)에 양의 전하량인 Qa가 충전된다.
도 4b의 VEXB의 전압차이를
Figure PCTKR2016012583-appb-I000017
VEX 만큼 걸어주게 되면
Figure PCTKR2016012583-appb-I000018
VEX 와 제2 소자(Cb)의 제2 커패시턴스의 곱의 크기에 해당하는 양의 전하량인 Qb 가 제2 소자(Cb)의 VEXB 방향의 노드(Node)에 충전된다. 제2 소자(Cb)의 양 방향 노드(Node)에는 동일한 크기로 극성이 다른 전하량이 충전되어야 하므로 VINP 방향의 노드(Node)에 음의 전하량인 Qb가 충전된다. 이로 인해 VINP 방향의 노드(Node)의 총 전하량 변화인
Figure PCTKR2016012583-appb-I000019
Q는 Qa-Qb 의 값에 해당하게 된다. 다시 말해,
Figure PCTKR2016012583-appb-I000020
Q의 값은
Figure PCTKR2016012583-appb-I000021
VEX 에 제1 소자(Ca)의 커패시턴스에서 제2 소자(Cb)의 제2 커패시턴스의 값을 뺀 크기를 곱한 값인,
Figure PCTKR2016012583-appb-I000022
의 크기를 갖게 된다.
그러면 VINP 의 총 전하를 0의 값으로 유지하기 위해 CF의 축전기(Capacitor)의 양 방향 노드(Node)의 총 전하량은
Figure PCTKR2016012583-appb-I000023
의 값을 갖는 -
Figure PCTKR2016012583-appb-I000024
Q 만큼 변화하게 된다. -
Figure PCTKR2016012583-appb-I000025
Q는 차동 증폭기(Differential Amplifier)의 동작에 따라 Common-mode와 Differential mode에서 출력 전압의 다른 동작을 유발하게 된다. Common-mode의 변화는 차동(Differential) 동작에 영향을 미치지 않는다고 할 수 있다.
Differential-mode의 변화의 경우, 그 변화에 해당하는 전하량을 만족시킬 수 있도록 출력 전압인 VOUTP, VOUTN의 값이 변화하게 된다. VOUTP는 +
Figure PCTKR2016012583-appb-I000026
Q의 절반 값을 CF의 축전기(Capacitor)의 커패시턴스(Capacitance)의 크기만큼 나눈 값으로 변화하게 되고 VOUTN은 -
Figure PCTKR2016012583-appb-I000027
Q의 절반 값을 CF의 축전기(Capacitor)의 커패시턴스(Capacitance)의 크기만큼 나눈 값으로 변화하게 된다. 이러한 출력 전압의 변화 값이 도 2, 도 3 및 도 5a에서 누적부(220)의 출력에 해당될 수 있다.
한편, 이상의 실시예에서 적산기는 완전 차동 적산기(fully differential integrator)였으나, 다른 일실시예에 따르면 상기 적산기는 일단 적산기 (one-ended integrator)일 수도 있다. 도 6은 다른 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다. 본 실시예에서 적산기는 일단 적산기 (one-ended integrator)일 수도 있다.
생성부(310)에서 커패시터 Ca와 커패시터 Cb의 커패시턴스 차이에 의해 전기적 특성 값이 누적되는 점은 위에서 설명한 내용과 유사하다. 도시된 누적부(320)는 출력이 한 방향으로 증가 또는 감소하도록 하기 위하여 위상(phase)의 선택을 위한 스위치(321, 322)를 포함할 수 있다. On되는 경우 CF에 충전되어 있는 전하량을 모두 방전시켜 회로를 초기화시키는 동작을 수행하는 리셋 스위치(324)를 포함할 수 있다. 또한, 도시된 누적부(320)의 구조는 Single-ended integrator를 구현하는 한 가지 예에 해당하며, 다른 구조의 Single-ended integrator도 이에 대체될 수 있다. 누적부(320)가 커패시터 Ca와 커패시터 Cb의 커패시턴스 차이에 의한 전하량을 결과 값으로 누적하면 독출부(330)는 누적된 결과를 VREF 와 비교하여 최종 식별키를 독출한다.
도 7a 내지 도 9는 도 6의 실시예에서 전기적 특성 값 차이가 누적되어 식별 키가 제공되는 과정을 설명하는 도면이다. 도 7a 및 도 7b를 함께 참조하면, 스위치 sw1(321)이 닫힌 상태(on)이고 스위치 sw2(322)가 열린 상태(off)이며, 리셋 스위치 sw3(324)는 닫힌 상태(on)이다. 이 경우, 전압에 해당하는 VEX, VEXB의 각 전압 변화에 따라 제1 소자(Ca)와 제2 소자(Cb)에 충전되는 전하량의 변화가 있더라도 스위치 sw2(322)가 열린 상태(Off)이기 때문에 VEX, VEXB의 전압 변화가 증폭기(Amplifier)에 전달되지 않고 스위치 sw1(321)을 통해 Vref로 전달될 수 있다. 이 때, VEX와 VEXB에 각각 가해지는 전압 변화는 도 7b에서 +
Figure PCTKR2016012583-appb-I000028
VEX, -
Figure PCTKR2016012583-appb-I000029
VEXB에
Figure PCTKR2016012583-appb-I000030
1(Phase1)의 시점의 전압차이다. CF의 축전기(Capacitor)에 누적되어 있던 전하량은 리셋 스위치(324)를 통해서 모두 방전될 수 있다.
도 8a와 도 8b를 함께 참조하면, 스위치 sw1(321)이 열린 상태(off)이고 스위치 sw2(322)가 닫힌 상태(on)이며, 리셋 스위치 sw3(324)은 열린 상태(off)이다. 이 경우, 전압에 해당하는 VEX, VEXB의 각 전압 변화에 따라 제1 소자(Ca)와 제2 소자(Cb)에 충전되는 전하량의 변화가 발생하게 된다. 이 때, 각각의 전하량의 변화를 Qa, Qb의 크기라고 가정한다. VINN의 노드(Node)에서의 총 전하량을 0으로 유지시키기 위하여 제1 소자(Ca)에 충전된 전하량인 Qa에서 제2 소자(Cb)에 충전된 전하량인 Qb를 뺀 값과 동일한 크기이며 극성은 반대인 전하량의 변화가 CF의 축전기(Capacitor)에 발생하게 된다.
여기서, 제1 소자(Ca)에 충전된 전하량인 Qa에서 제2 소자(Cb)에 충전된 전하량인 Qb를 뺀 값을 +
Figure PCTKR2016012583-appb-I000031
Q 라고 하면, -
Figure PCTKR2016012583-appb-I000032
Q만큼의 전하량이 CF의 VINN과 연결된 방향의 노드(Node)에 충전되고, 반대 방향인 VOUT 방향의 노드(Node)에 +
Figure PCTKR2016012583-appb-I000033
Q의 크기만큼의 전하량이 충전된다. VOUT 방향의 노드(Node)에 충전된 +
Figure PCTKR2016012583-appb-I000034
Q의 전하량에 의해, 제1 소자(Ca), 제2 소자(Cb)의 각 제1 커패시턴스와 제2 커패시턴스의 차이를 CF의 축전기(Capacitor)의 커패시턴스(Capacitance) 크기로 나눈 값을 전압인 VEX와 곱한 값의 크기만큼의 전압 변화가 VOUT의 노드(node)에 발생하게 된다. 이러한 출력 전압의 변화 값이 도 6, 도 7a 및 도 8a에서 누적부(320)의 출력에 대응한다. 이 때, VEX와 VEXB에 각각 가해지는 전압 변화는 도 7b에서 +
Figure PCTKR2016012583-appb-I000035
VEX, -VEXB에
Figure PCTKR2016012583-appb-I000036
2(Phase2)의 시점의 전압차이다.
도 9를 참조하면,
Figure PCTKR2016012583-appb-I000037
1(Phase1) 일 때에는 도 6의 식별 키 생성 장치의 누적부(320)에서 누적 동작이 발생하지 않는다고 볼 수 있으며,
Figure PCTKR2016012583-appb-I000038
2(Phase2)일 때에만 반복적으로 식별 키 생성 장치의 누적부(320)에서의 누적 동작이 발생할 수 있다. 이 때, 누적되는 크기는 제1 소자(Ca), 제2 소자(Cb)의 각 제1 커패시턴스와 제2 커패시턴스의 차이인 (Ca-Cb) 의 크기에 따라서 달라지며, 이는 공정 편차의 크기에 대응할 수 있다.
한편, 이러한 전하량의 누적은 미리 지정된 조건이 만족되는 동안 반복 및/또는 지속될 수 있다. 일실시예에 따르면 상기 미리 지정된 조건은, 상기 누적된 출력의 값이 미리 설정된 임계치 이상인 것을 포함한다. 여기서의 임계치는 노이즈 등 환경적 외부적 요인이나 소자의 에이징 등 내부적 요인에도 불구하고 PUF 값이 바뀌지 않는 것을 보장할 정도로 충분한 크기이다. 그러나 다른 일실시예에 따르면 상기 미리 지정된 조건은, 고정된 k 회 - 단, k는 자연수임 - 동안의 반복일 수 있다. 반복 회수 k는 공정에 따라 및/또는 특정 소자나 소자 스펙에 따라 결정될 수 있으며, 최적의 값은 당업자의 반복 시행을 통해 찾아질 수 있다.
도 10은 또 다른 일실시예에 따른 식별 키 생성 장치의 구현 예를 나타내는 회로도이다. 본 실시예에서 전기적 특성 값이 비교되는 제1 소자 및 상기 제2 소자는 저항이다. 생성부(410)에서는 동일한 크기로 디자인 되어 제조되었으나, 공정 편차로 인해 저항 값이 완전히 같을 수는 없는 저항 RA와 RB 을 포함한다. 비교되는 전기적 특성 값은 저항 값이다. 누적부(420)는 이 저항 값의 차이에 비례한 전류를 출력에 누적시키는 적산기를 포함할 수 있다. 적산기는 RA의 제1 저항 값과 RB의 제2 저항 값의 차이에 비례하는 전류를 출력에 누적시키는 전류 적분을 수행한다. 그리고 적산기는 미리 지정된 조건을 만족할 때까지 전류 적분을 지속한 다음 그 때의 출력 값을 제공할 수 있다. 그리고 독출부(430)는 비교기를 이용하여 누적된 결과 값에 따라 PUF 값 (바이너리 값)을 제공한다.
한편, 일실시예에 따르면 상기 미리 지정된 조건은, 상기 누적된 출력의 값이 임계치 이상인 것을 포함한다. 여기서의 임계치는 노이즈 등 환경적 외부적 요인이나 소자의 에이징 등 내부적 요인에도 불구하고 PUF 값이 바뀌지 않는 것을 보장할 정도로 충분한 크기이다. 그러나 다른 일실시예에 따르면 상기 미리 지정된 조건은, 미리 지정되는 고정된 시간 길이 동안 상기 전류 적분을 수행하는 것일 수 있다. 고정된 시간 길이는 공정에 따라 및/또는 특정 소자나 소자 스펙에 따라 결정될 수 있으며, 최적의 값은 당업자의 반복 시행을 통해 찾아질 수 있다.
도 11a 및 도 11b는 도 10의 실시예에서 전기적 특성 값 차이가 누적되어 식별 키가 제공되는 과정을 설명하는 도면이다. 리셋 스위치(424)가 닫히면(on) 커패시터 CF에 충전되어 있던 전하량은 모두 방전되어 회로가 초기화된다. 도 11a 및 도 11b를 함께 참조하면, 누적부(420)의 커패시터 CF에 흐르는 전류는 CF 양단의 전압차이를 시간에 대해 미분한 값에 비례하게 된다. 이때, 커패시터 CF에 대해 일정한 전류가 흐른다는 것은 CF 양단의 전압차이의 시간에 대한 미분 값이 일정한 값을 갖는다는 것을 의미한다.
생성부(410)의 저항 RA와 RB의 크기에 비례하여 발생되는 전류가 누적부(420)의 커패시터 CF에 흐르게 되면, CF 양단의 전압차이의 시간에 대한 미분 값이 변화하게 된다. 누적부(420)에서 증폭기(Amplifier)의 입력전압은 음성 피드백(Negative Feedback)의 동작으로 전압인 VREF 값을 유지하기 때문에 CF의 축전기(Capacitor)의 양단의 전압차이의 시간에 대한 미분 값은 출력전압인 VOUTP, VOUTN에 발생하게 된다. 시간이 지나면서 출력전압 값의 변화가 계속 누적된다. 이러한 출력 전압의 변화 값이 도 10 및 도 11a 에서 누적부(420)의 출력에 해당하게 될 수 있다. 도 11b는 도 11a에서의 식별키 생성장치의 동작에 따라 누적부(420)의 출력 전압인 VOUTP, VOUTN 의 값이 누적되는 것을 나타낸다.
도 11a 에서 커패시터 CF에 흐르는 전류는 Common-mode에서는 출력 전압인 VOUTP, VOUTN 에 영향을 미치지 않으며, Differential-mode 에서의 전류 차이가 발생하게 되어 출력 전압인 VOUTP, VOUTN 의 변화를 가져올 수 있다. 도 11b에서 VOUTP, VOUTN 의 변화의 기울기는 도 10 에서 RA, RB의 각 저항(Resistor)의 공정 편차로 발생하는 저항(Resistance)의 크기 차이에 의한 전류 차이 값의 절반을 CF의 축전기(Capacitor)의 커패시턴스(Capacitance) 값으로 나눈 크기에 해당한다.
도 12는 일실시예에 따른 식별 키 생성장치의 동작 방법을 나타내는 흐름도이다. 일실시예에 따르면 식별 키 생성 장치가 식별 키를 생성 하는 동작 방법이 제공된다. 상기 방법은, 생성부가 반도체 공정 편차에서 기인하는 무작위 이벤트를 발생시키는 단계(501); 상기 이벤트 결과를 미리 지정된 방법으로 누적하여, 상기 이벤트에 의한 결과 값을 누적한 결과 값을 제공하는 단계(502); 및 상기 누적된 결과 값을 이용하여 상기 식별 키 생성 장치에 대응하는 식별 키를 독출하는 단계(503)를 포함할 수 있다.
단계(501)에서는 공정 편차에 기인하여 소자의 전기적 특성 또는 소자 간의 전기적 특성 차이가 발생된다. 이를테면, 동일하게 설계되어 제조되는 상기 식별 키 생성 장치 내의 두 소자 중 제1 소자가 제2 소자보다 전기적 특성 값이 클 수 있다. 예시적으로, 상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함할 수 있다. 그러면, 이러한 전기적 특성 또는 특성 차이는 결과 값으로 누적된다(502). 이러한 누적은 상기 제1 소자에 대응하는 제1 커패시턴스와 상기 제2 소자에 대응하는 제2 커패시턴스의 차이에 비례하는 전하량을 발생시키는 과정과, 상기 전하량을 출력에 누적시키는 시행을 미리 지정된 조건을 만족할 때까지 복수 회 반복하는 과정이 포함될 수 있다.
한편, 다른 일실시예에 따르면 상기 제1 소자 및 상기 제2 소자는 저항을 포함하고, 상기 전기적 특성 값은 저항 값을 포함할 수 있다. 이 경우에는 상기 제1 소자에 대응하는 제1 저항 값과 상기 제2 소자에 대응하는 제2 저항 값의 차이에 비례하는 전류가 출력에 누적시키는 전류 적분을 미리 지정된 조건을 만족할 때까지 지속하는 과정이 단계(502)에서 수행될 수 있다. 여기서 상기 미리 지정된 조건은, 미리 지정되는 고정된 시간 길이 동안 상기 전압 적분을 수행하는 것일 수 있다. 나아가 다른 실시예에서는 상기 조건이 상기 출력의 값이 임계치 이상이 될 때까지 상기 누적을 계속하는 것을 포함한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (18)

  1. 반도체 공정 편차에서 기인하는 무작위 이벤트 - 상기 이벤트는 전기적 특성 차이에 연관됨 - 를 제공하는 생성부;
    상기 이벤트를 누적하여, 누적된 결과 값을 제공하는 누적부; 및
    상기 누적된 결과 값을 미리 지정된 기준에 따라 0 또는 1 중 어느 하나인 바이너리 값으로 결정함으로써 상기 생성부에 대응하는 식별 키를 제공하는 독출부
    를 포함하는 식별 키 생성 장치.
  2. 제1항에 있어서,
    상기 무작위 이벤트는 동일하게 설계되어 제조되는 두 소자 중 제1 소자가 제2 소자보다 상기 전기적 특성 값이 큰 이벤트를 포함하는 식별 키 생성 장치.
  3. 제2항에 있어서,
    상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함하는 식별 키 생성 장치.
  4. 제3항에 있어서,
    상기 누적부는 상기 제1 소자에 대응하는 제1 커패시턴스와 상기 제2 소자에 대응하는 제2 커패시턴스의 차이에 비례하는 전하량을 발생시키고, 상기 전하량을 출력에 누적시키는 시행을 미리 지정된 조건을 만족할 때까지 복수 회 반복하여, 상기 복수 회 반복 후의 상기 출력의 값을 제공하는 적산기를 포함하는 식별 키 생성 장치.
  5. 제4항에 있어서,
    상기 미리 지정된 조건은, 상기 출력의 값이 임계치 이상인 것을 포함하는 식별 키 생성 장치.
  6. 제4항에 있어서,
    상기 미리 지정된 조건은, 미리 지정되는 k 회 - 단, k는 자연수임 - 동안 반복하는 것을 포함하는 식별 키 생성 장치.
  7. 제2항에 있어서,
    상기 제1 소자 및 상기 제2 소자는 저항을 포함하고, 상기 전기적 특성 값은 저항 값을 포함하는 식별 키 생성 장치.
  8. 제7항에 있어서,
    상기 누적부는 상기 제1 소자에 대응하는 제1 저항 값과 상기 제2 소자에 대응하는 제2 저항 값의 차이에 비례한 전류를 출력에 누적시키는 전류 적분을 미리 지정된 조건을 만족할 때까지 지속하여, 상기 미리 지정된 조건을 만족하는 경우의 상기 출력의 값을 제공하는 적산기를 포함하는 식별 키 생성 장치.
  9. 제8항에 있어서,
    상기 미리 지정된 조건은, 상기 출력의 값이 임계치 이상인 것을 포함하는 식별 키 생성 장치.
  10. 제8항에 있어서,
    상기 미리 지정된 조건은, 미리 지정되는 시간 길이 동안 상기 전류 적분을 수행하는 것을 포함하는 식별 키 생성 장치.
  11. 반도체 공정 편차에서 기인하여, 동일하게 설계된 다른 소자들과는 다른 전기적 특성 값을 갖는 제1 소자를 포함하는 생성부 - 상기 제1 소자의 전기적 특성 값이 기준 값보다 큰 지의 여부에 따라 전기적인 값이 출력됨 -;
    상기 전기적인 값을 누적하여, 누적된 결과 값을 제공하는 누적부; 및
    상기 누적된 결과 값을 이용하여 상기 생성부에 대응하는 식별 키를 제공하는 독출부
    를 포함하는 식별 키 생성 장치.
  12. 제11항에 있어서,
    상기 전기적 특성 값은 저항 값을 포함하는 식별 키 생성 장치.
  13. 제12항에 있어서,
    상기 누적부는 상기 제1 소자에 대응하는 제1 저항 값과 상기 기준 값의 비율에 따라 전원 전압을 전압 분배하고, 상기 제1 저항 값과 상기 기준 값의 차이에 비례한 전류를 출력에 누적시키는 전류 적분을 미리 지정된 조건을 만족할 때까지 지속하여, 상기 미리 지정된 조건을 만족하는 경우의 상기 출력의 값을 제공하는 적산기를 포함하는 식별 키 생성 장치.
  14. 제13항에 있어서,
    상기 미리 지정된 조건은, 미리 지정되는 시간 길이 동안 상기 전류 적분을 수행하는 것을 포함하는 식별 키 생성 장치.
  15. 식별 키 생성 장치가 식별 키를 생성하는 동작 방법에 있어서, 상기 방법은:
    생성부가 반도체 공정 편차에서 기인하는 무작위 이벤트를 발생시키는 단계;
    상기 이벤트 결과를 미리 지정된 방법으로 누적하여, 상기 이벤트에 의한 결과 값을 누적한 결과 값을 제공하는 단계; 및
    상기 누적된 결과 값을 이용하여 상기 식별 키 생성 장치에 대응하는 식별 키를 독출하는 단계
    를 포함하는 식별 키 생성 장치의 동작 방법.
  16. 제15항에 있어서,
    상기 무작위 이벤트는 동일하게 설계되어 제조되는 상기 식별 키 생성 장치 내의 두 소자 중 제1 소자가 제2 소자보다 전기적 특성 값이 큰 이벤트를 포함하는 식별 키 생성 장치의 동작 방법.
  17. 제16항에 있어서,
    상기 제1 소자 및 상기 제2 소자는 커패시터를 포함하고, 상기 전기적 특성 값은 커패시턴스를 포함하는 식별 키 생성 장치의 동작 방법.
  18. 제17항에 있어서,
    상기 누적은 상기 제1 소자에 대응하는 제1 커패시턴스와 상기 제2 소자에 대응하는 제2 커패시턴스의 차이에 비례하는 전하량을 발생시키고, 상기 전하량을 출력에 누적시키는 시행을 미리 지정된 조건을 만족할 때까지 복수 회 반복하는 과정을 포함하는 식별 키 생성 장치의 동작 방법.
PCT/KR2016/012583 2015-11-03 2016-11-03 식별 키 생성 장치 및 방법 WO2017078426A1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP16862442.7A EP3373186B1 (en) 2015-11-03 2016-11-03 Apparatus and method for generating identification key
US15/773,492 US11095441B2 (en) 2015-11-03 2016-11-03 Apparatus and method for generating identification key
CN201680077686.1A CN108780489B (zh) 2015-11-03 2016-11-03 识别密钥生成装置及方法
US17/374,626 US11849034B2 (en) 2015-11-03 2021-07-13 Apparatus and method for generating identification key

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20150154054 2015-11-03
KR10-2015-0154054 2015-11-03

Related Child Applications (2)

Application Number Title Priority Date Filing Date
US15/773,492 A-371-Of-International US11095441B2 (en) 2015-11-03 2016-11-03 Apparatus and method for generating identification key
US17/374,626 Continuation US11849034B2 (en) 2015-11-03 2021-07-13 Apparatus and method for generating identification key

Publications (1)

Publication Number Publication Date
WO2017078426A1 true WO2017078426A1 (ko) 2017-05-11

Family

ID=58662397

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/012583 WO2017078426A1 (ko) 2015-11-03 2016-11-03 식별 키 생성 장치 및 방법

Country Status (5)

Country Link
US (2) US11095441B2 (ko)
EP (1) EP3373186B1 (ko)
KR (1) KR101890575B1 (ko)
CN (1) CN108780489B (ko)
WO (1) WO2017078426A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017092885A (ja) * 2015-11-17 2017-05-25 ソニー株式会社 信号処理回路および方法
KR102516190B1 (ko) * 2017-10-13 2023-03-31 삼성전자주식회사 보안 키를 생성하는 반도체 장치, 보안 키 생성 방법, 및 보안 키 등록 방법
KR102272750B1 (ko) 2019-01-23 2021-07-05 한국전자통신연구원 비밀 정보 생성 장치 및 그것의 동작 방법
CN110490286B (zh) * 2019-08-07 2021-04-13 杭州未名信科科技有限公司 物理不可复制功能标签产生电路及方法
CN110633777B (zh) * 2019-08-07 2021-06-15 杭州未名信科科技有限公司 一种物理不可复制功能标签产生方法及电路
US11240047B2 (en) * 2019-12-16 2022-02-01 Analog Devices International Unlimited Company Capacitor based physical unclonable function
US11516028B2 (en) 2019-12-24 2022-11-29 CERA Licensing Limited Temperature sensing physical unclonable function (PUF) authentication system
GB201919297D0 (en) 2019-12-24 2020-02-05 Aronson Bill Temperature sensing physical unclonable function (puf) authenication system
US11734459B2 (en) * 2020-08-05 2023-08-22 Analog Devices International Unlimited Company Monitoring a physical unclonable function
KR102688616B1 (ko) * 2021-07-19 2024-07-25 한양대학교 산학협력단 공정 편차에 기초한 식별 키 생성 방법 및 회로
KR102459306B1 (ko) * 2022-05-31 2022-10-26 엘아이지넥스원 주식회사 신뢰도를 이용한 물리적 복제방지 기능 기반의 보안 장치 및 그를 위한 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080106605A1 (en) * 2004-10-18 2008-05-08 Koninklijke Philips Electronics, N.V. Secure Sensor Chip
US20110299678A1 (en) * 2010-06-07 2011-12-08 Alexander Roger Deas Secure means for generating a specific key from unrelated parameters
KR101169172B1 (ko) * 2011-03-31 2012-08-03 한양대학교 산학협력단 공정편차를 이용한 식별 키 생성 장치 및 방법
US20150006601A1 (en) * 2013-06-27 2015-01-01 Selim Aissi Random number generator in a virtualized environment
US20150092939A1 (en) * 2013-09-27 2015-04-02 Kevin Gotze Dark bits to reduce physically unclonable function error rates

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997004376A1 (en) * 1995-07-20 1997-02-06 Dallas Semiconductor Corporation Secure module with microprocessor and co-processor
US6831980B1 (en) * 1996-10-09 2004-12-14 Activcard Ireland Limited Random number generator and method for same
GB9803055D0 (en) * 1998-02-12 1998-04-08 Nycomed Amersham Plc Method of and apparatus for generating random numbers
US7613756B1 (en) * 2005-01-11 2009-11-03 Sun Microsystems, Inc. Random number generation apparatus and method
KR100926214B1 (ko) 2009-04-23 2009-11-09 한양대학교 산학협력단 공정편차를 이용한 디지털 값 생성 장치 및 방법
US8468186B2 (en) * 2009-08-05 2013-06-18 Verayo, Inc. Combination of values from a pseudo-random source
KR101139630B1 (ko) 2010-12-09 2012-05-30 한양대학교 산학협력단 식별키 생성 장치 및 방법
DK2693370T3 (en) * 2011-03-31 2016-09-26 Ictk Co Ltd Device and method for generation of a digital value
JP5420114B2 (ja) 2011-06-02 2014-02-19 三菱電機株式会社 鍵情報生成装置及び鍵情報生成方法
JPWO2013088939A1 (ja) * 2011-12-13 2015-04-27 日本電気株式会社 識別情報生成装置及び識別情報生成方法
JP5831202B2 (ja) * 2011-12-20 2015-12-09 富士通株式会社 個体別情報生成装置及び個体別情報生成方法
US9018972B1 (en) * 2012-06-04 2015-04-28 Sandia Corporation Area-efficient physically unclonable function circuit architecture
US9459833B2 (en) * 2012-09-28 2016-10-04 Maxim Integrated Products, Inc. System and method with specific ordered execution over physical elements
US8861736B2 (en) * 2012-11-19 2014-10-14 International Business Machines Corporation Reliable physical unclonable function for device authentication
US9088278B2 (en) * 2013-05-03 2015-07-21 International Business Machines Corporation Physical unclonable function generation and management
EP2833287B1 (en) * 2013-07-29 2017-07-19 Nxp B.V. A puf method using and circuit having an array of bipolar transistors
US20150188717A1 (en) * 2013-12-26 2015-07-02 Wei Wu Physically unclonable function redundant bits
US9628272B2 (en) * 2014-01-03 2017-04-18 William Marsh Rice University PUF authentication and key-exchange by substring matching
US9279850B1 (en) * 2014-02-14 2016-03-08 Altera Corporation Physically unclonable functions with enhanced margin testing
US9529570B2 (en) * 2014-03-19 2016-12-27 Seagate Technology Llc Random number generation using pulsed programming parameters
US10218517B2 (en) * 2014-03-25 2019-02-26 Carnegie Mellon University Methods for generating reliable responses in physical unclonable functions (PUFs) and methods for designing strong PUFs
US9787481B2 (en) * 2014-08-28 2017-10-10 The Regents Of The University Of Michigan Physical unclonable function using augmented memory for challenge-response hashing

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080106605A1 (en) * 2004-10-18 2008-05-08 Koninklijke Philips Electronics, N.V. Secure Sensor Chip
US20110299678A1 (en) * 2010-06-07 2011-12-08 Alexander Roger Deas Secure means for generating a specific key from unrelated parameters
KR101169172B1 (ko) * 2011-03-31 2012-08-03 한양대학교 산학협력단 공정편차를 이용한 식별 키 생성 장치 및 방법
US20150006601A1 (en) * 2013-06-27 2015-01-01 Selim Aissi Random number generator in a virtualized environment
US20150092939A1 (en) * 2013-09-27 2015-04-02 Kevin Gotze Dark bits to reduce physically unclonable function error rates

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3373186A4 *

Also Published As

Publication number Publication date
EP3373186A4 (en) 2019-07-10
KR101890575B1 (ko) 2018-08-22
EP3373186A1 (en) 2018-09-12
CN108780489A (zh) 2018-11-09
US20210344490A1 (en) 2021-11-04
US11095441B2 (en) 2021-08-17
US11849034B2 (en) 2023-12-19
EP3373186B1 (en) 2020-12-30
US20190028274A1 (en) 2019-01-24
CN108780489B (zh) 2022-09-30
KR20170052506A (ko) 2017-05-12

Similar Documents

Publication Publication Date Title
WO2017078426A1 (ko) 식별 키 생성 장치 및 방법
Meng et al. On global leader-following consensus of identical linear dynamic systems subject to actuator saturation
Yu et al. Adaptive consensus of multi-agents in networks with jointly connected topologies
Song et al. Impulsive effects on stability of discrete-time complex-valued neural networks with both discrete and distributed time-varying delays
Fiaz et al. A port-Hamiltonian approach to power network modeling and analysis
Meguerdichian et al. Device aging-based physically unclonable functions
Qin et al. Exponential consensus of general linear multi-agent systems under directed dynamic topology
Xu et al. Necessary and sufficient conditions for distributed containment control of multi‐agent systems without velocity measurement
WO2015066453A1 (en) Computing architecture for operating on sequential data
Farkhani et al. A low-power high-speed spintronics-based neuromorphic computing system using real-time tracking method
Zhang et al. Consensus acceleration in a class of predictive networks
Cui et al. Adaptive leaderless consensus control of uncertain multiagent systems with unknown control directions
US9590592B2 (en) Configurable capacitor arrays and switched capacitor circuits
Yazdani et al. Sampled‐data leader–follower algorithm for flocking of multi‐agent systems
US20180181230A1 (en) Sensing devices for sensing electrical characteristics
KR20140014538A (ko) 부정합 부하 저항 소자 기반 물리적 복제 불가 함수 시스템
WO2017126900A1 (ko) 식별키 생성 장치 및 그 관리 방법
Chen et al. Output consensus of multi‐agent systems with delayed and sampled‐data
Wu et al. Cluster synchronization in community networks with nonidentical nodes via edge-based adaptive pinning control
Yu et al. Masked AES PUF: a new PUF against hybrid SCA/MLAs
Yu et al. Exploiting multi-phase on-chip voltage regulators as strong PUF primitives for securing IoT
Wang et al. Exponential synchronization in complex networks with a single coupling delay
Chu et al. Self-organized motion in a class of anisotropic swarms: convergence vs oscillation
Xiaoping Local disturbance decoupling of nonlinear singular systems
Trenn et al. Switched behaviors with impulses-a unifying framework

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16862442

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016862442

Country of ref document: EP