# US 2017/0255503 A1 · Method for controlling error rate of device-specific information and program for controlling error rate of device-specific information

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2017/0255503 A1
- Document ID: US20170255503A1
- Status: Published application
- Kind: A1
- Application number: 15/507,105
- Filed: 2015-08-20
- Published: 2017-09-07
- Earliest claimed: 2014-08-29
- Assignees: National Institute of Advanced Industrial Science and Technology
- Applicants: National Institute of Advanced Industrial Science and Technology
- Inventors: Yohei Hori; Kazukuni Kobara; Toshihiro Katashita; Toshihiro Matsui
- Web page: https://patentgrep.com/patent/US20170255503A1

## CPC

- G06F 11/076: {by exceeding a count or rate limit, e.g. word- or bit count limit}
- G06F 11/0736: {in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function (testing or monitoring of automated control systems G05B23/02)}
- G06F 11/079: {Root cause analysis, i.e. error or fault diagnosis (in a hardware test environment G06F11/22; in a software test environment G06F11/36)}
- G09C 1/00: Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system (cryptographic typewriters G09C3/00)
- H03K 19/003: Modifications for increasing the reliability {for protection}
- H04L 9/10: with particular housing, physical features or manual controls
- H04L 9/32: 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}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09C: CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- H03K: PULSE TECHNIQUE (measuring pulse characteristics G01R; modulating sinusoidal oscillations with pulses H03C; transmission of digital information H04L; discriminator circuits detecting phase difference between two signals by counting or integrating cycles of oscillation H03D3/04; automatic control, starting, synchronisation or stabilisation of generators of electronic oscillations or pulses where the type of generator is irrelevant or unspecified H03L; coding, decoding or code conversion, in general H03M)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method and a program capable of controlling an error rate of device-specific information are provided. Provided is the method for controlling an error rate of device-specific information, including a step S1 of: inputting each of i (i is an arbitrary natural number) challenges, j times (j is an arbitrary natural number), into a PUF mounted chip; leaving j responses intact (j′=j) or processing j responses into j′ pieces (0<j′<j); and registering them in the database beforehand in association with each piece of the input data, a step S2 of inputting i challenges into the database, a step S3 of: reading j′ responses corresponding to the respective i challenges from the database; concatenating the j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (0<k′≦k, and k is an arbitrary natural number, but is a natural number of 2 or more if the i and the j are both 1); obtaining the concatenated (j′×k′) responses for each piece of the input data; and further concatenating them also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate reference data, a step S4 of: inputting i challenges, k times, for each challenge into the PUF mounted chip; leaving obtained k responses intact as k′=k or processing the obtained k responses into k′ pieces (0<k′<k); concatenating obtained k′ responses by j′ repetitions for each response; further concatenating them for all of the k′ responses; further concatenating concatenated (j′×k′) responses also for different input data; and obtaining concatenated (i×j′×k′) responses to generate synthesized output data, and a step S5 of deciding whether or not the synthesized output data matches the reference data (specifically, whether a Hamming distance between both data is a threshold value or less), and the method determines whether or not the error rate of the synthesized output data is within a preset range based on the decision result in step S5, and changes at least one of i, j, j′, k, and k′ to repeat steps S1 to S5 until the error rate falls within the preset range if the error rate is determined not to be within the preset range.

## Claims

### Claim 1

A method for controlling an error rate of device-specific information, the method comprising:
a first step of: inputting each of i (i is an arbitrary natural number) pieces of input data, j times (j is an arbitrary natural number), into a physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a second step of: inputting the i pieces of the input data into the storage means; reading the j′ responses corresponding to the respective i pieces of the input data from the storage means to concatenate the obtained j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1); and further concatenating the obtained data for i pieces for different input data to generate reference data;
a third step of: inputting the i pieces of the input data, k times, for each piece of the input data into the physically unclonable circuit; processing the obtained k responses into k′ pieces to concatenate each of the obtained k′ pieces of the responses by j′ repetitions; further concatenating the j′ responses for all of the k′ pieces to obtain (j′×k′) responses for each piece of the input data; and further concatenating the (j′×k′) responses for each piece of the input data also for different input data; and generating synthesized output data including (i×j′×k′) responses;
a fourth step of deciding whether or not the synthesized output data is in a same range as the reference data; and
a fifth step of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fourth step,
wherein if the error rate is determined not to be within the preset range in the fifth step, at least one of the i, j, j′, k, and k′ is changed to repeat the first through fifth steps until the error rate falls within the preset range.

### Claim 2 (depends on 1)

The method for controlling an error rate of device-specific information according to claim 1, wherein if the j′ is a natural number of 2 or more in the first step, the j′ responses are compressed into information indicating parts different from each other to be stored in the storage means.

### Claim 3 (depends on 2)

The method for controlling an error rate of device-specific information according to claim 2, wherein only any one or two of the i, j, and k are a constant 1.

### Claim 4

A method for controlling an error rate of device-specific information, the method comprising:
a first step of initially setting input data into a physically unclonable circuit;
a second step of: inputting each of i (i is an arbitrary natural number) pieces of the initially set input data, j times (j is an arbitrary natural number), into the physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a third step of: inputting the i pieces of input data into the storage means; reading the j′ responses corresponding to the respective i pieces of the input data from the storage means to concatenate the j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1) to obtain the (j′×k′) responses concatenated for each piece of the input data; and further concatenating the obtained responses also for different input data to obtain (i×j′×k′) concatenated responses and thereby generate reference data;
a fourth step of: inputting the i pieces of input data, k times, for each piece of the input data into the physically unclonable circuit; processing the obtained k responses into k′ pieces; concatenating the obtained k′ responses by j′ repetitions for each of the responses; further concatenating them for all of the k′ pieces; further concatenating the concatenated (j′×k′) responses also for different input data; and obtaining concatenated (i×j′×k′) responses to generate synthesized output data;
a fifth step of deciding whether or not the synthesized output data is in a same range as the reference data; and
a sixth step of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fifth step,
wherein if the error rate is determined not to be within the preset range in the sixth step, the input data is changed to repeat the first to sixth steps until the error rate falls within the preset range.

### Claim 5

A program for controlling an error rate of device-specific information for causing a computer to perform:
a first procedure of: inputting each of i (i is an arbitrary natural number) pieces of input data, j times (j is an arbitrary natural number), into a physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a second procedure of: inputting the i pieces of input data into the storage means; reading the j′ responses corresponding to the respective i pieces of the input data from the storage means; concatenating the j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1); obtaining the (j′×k′) responses concatenated for each piece of the input data; and further concatenating the obtained responses also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate reference data;
a third procedure of: inputting the i pieces of input data, k times, for each piece of the input data into the physically unclonable circuit; processing obtained k responses into k′ pieces; concatenating the obtained k′ responses by j′ repetitions for each the responses; further concatenating them for all of the k′ pieces; and further concatenating the concatenated (j′×k′) responses also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate synthesized output data;
a fourth procedure of deciding whether or not the synthesized output data is in a same range as the reference data; and
a fifth procedure of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fourth procedure,
wherein if the error rate is determined not to be within the preset range in the fifth procedure, at least one of the i, j, j′, k, and k′ is changed to repeat the first through fifth procedures until the error rate falls within the preset range.

### Claim 6 (depends on 5)

The program for controlling an error rate of device-specific information according to claim 5, wherein if the j′ is a natural number of 2 or more in the first procedure, the j′ responses are compressed into information indicating parts different from each other to be stored in the storage means.

### Claim 7 (depends on 6)

The program for controlling an error rate of device-specific information according to claim 6, wherein only any one or two of the i, j, and k are a constant 1.

### Claim 8

A program for controlling an error rate of device-specific information for causing a computer to perform:
a first procedure of initially setting input data into a physically unclonable circuit;
a second procedure of: inputting each of i pieces (i is an arbitrary natural number) of the initially set input data, j times (j is an arbitrary natural number), into the physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a third procedure of: inputting the i pieces of input data into the storage means; reading j′ responses corresponding to the respective i pieces of the input data from the storage means; concatenating the j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1); obtaining the concatenated (j′×k′) responses for each piece of the input data; and further concatenating the obtained responses also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate reference data;
a fourth procedure of: inputting the i pieces of input data, k times, for each piece of the input data into the physically unclonable circuit; processing obtained k responses into k′ pieces; concatenating obtained k′ responses by j′ repetitions for each of the responses; further concatenating them for all of the k′ pieces; further concatenating the concatenated (j′×k′) responses also for different input data; and obtaining concatenated (i×j′×k′) responses so as to generate synthesized output data;
a fifth procedure of deciding whether or not the synthesized output data is in a same range as the reference data; and
a sixth procedure of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fifth procedure,
wherein if the error rate is determined not to be within the preset range in the sixth procedure, the input data is changed to repeat the first to sixth procedures until the error rate falls within the preset range.

### Claim 9

A method for controlling an error rate of device-specific information, the method comprising:
a first step of: inputting each of i (i is an arbitrary natural number) pieces of input data, j times (j is an arbitrary natural number), into a physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a second step of: inputting the i pieces of the input data into the storage means; reading the j′ responses corresponding to the respective i pieces of the input data from the storage means to concatenate the obtained j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1); and further concatenating the obtained data for i pieces for different input data to generate reference data;
a third step of: inputting the i pieces of the input data, k times, for each piece of the input data into the physically unclonable circuit; processing the obtained k responses into k′ pieces to concatenate each of the obtained k′ pieces of the responses by j′ repetitions; further concatenating the j′ responses for all of the k′ pieces to obtain (j′×k′) responses for each piece of the input data; and further concatenating the (j′×k′) responses for each piece of the input data also for different input data; and generating synthesized output data including (i×j′×k′) responses;
a fourth step of deciding whether or not the synthesized output data is in a same range as the reference data; and
a fifth step of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fourth step,
wherein if the error rate is determined not to be within the preset range in the fifth step, at least one of the i, j, j′, k, and k′ is changed to repeat the first through fifth steps until the error rate falls within the preset range, and
only any one or two of the i, j, and k are a constant 1.

### Claim 10

A program for controlling an error rate of device-specific information for causing a computer to perform:
a first procedure of: inputting each of i (i is an arbitrary natural number) pieces of input data, j times (j is an arbitrary natural number), into a physically unclonable circuit; processing j responses into j′ pieces (j′ is an arbitrary natural number, and 0<j′≦j); and storing them in a storage means beforehand in association with each piece of the input data;
a second procedure of: inputting the i pieces of input data into the storage means; reading the j′ responses corresponding to the respective i pieces of the input data from the storage means; concatenating the j′ responses for each piece of the input data; further concatenating the concatenated data by k′ repetitions (k′ is an arbitrary natural number and 0<k′≦k, where k is an arbitrary natural number, and k is 2 or more when the i and the j are both 1); obtaining the (j′×k′) responses concatenated for each piece of the input data; and further concatenating the obtained responses also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate reference data;
a third procedure of: inputting the i pieces of input data, k times, for each piece of the input data into the physically unclonable circuit; processing obtained k responses into k′ pieces; concatenating the obtained k′ responses by j′ repetitions for each the responses; further concatenating them for all of the k′ pieces; and further concatenating the concatenated (j′×k′) responses also for different input data to obtain concatenated (i×j′×k′) responses and thereby generate synthesized output data;
a fourth procedure of deciding whether or not the synthesized output data is in a same range as the reference data; and
a fifth procedure of determining whether or not an error rate of the synthesized output data is within a preset range as a result of the decision in the fourth procedure,
wherein if the error rate is determined not to be within the preset range in the fifth procedure, at least one of the i, j, j′, k, and k′ is changed to repeat the first through fifth procedures until the error rate falls within the preset range, and
only any one or two of the i, j, and k are a constant 1.

### Claim 11 (depends on 1)

The method for controlling an error rate of device-specific information according to claim 1, wherein only any one or two of the i, j, and k are a constant 1.

### Claim 12 (depends on 5)

The program for controlling an error rate of device-specific information according to claim 5, wherein only any one or two of the i, j, and k are a constant 1.
