Next Article in Journal
M-SAC-VLADNet: A Multi-Path Deep Feature Coding Model for Visual Classification
Previous Article in Journal
Entropy in Nanofluids
Previous Article in Special Issue
Polar Codes for Covert Communications over Asynchronous Discrete Memoryless Channels
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure and Reliable Key Agreement with Physical Unclonable Functions †

1
Chair of Communications Engineering, Technical University of Munich, 80333 Munich, Germany
2
Associate Professorship of Line Transmission Technology, Technical University of Munich, 80333 Munich, Germany
3
Huawei Technologies Duesseldorf GmbH, 80992 Munich, Germany
4
Information Theory and Applications Chair, Technische Universität Berlin, 10587 Berlin, Germany
*
Author to whom correspondence should be addressed.
Parts of this paper were presented at the 2016 IEEE Global Conference on Signal and Information Processing (Washington, DC, USA, 7–9 December 2016) and 2017 IEEE International Conference on Communications (Paris, France, 21–25 May 2017).
Entropy 2018, 20(5), 340; https://doi.org/10.3390/e20050340
Submission received: 25 March 2018 / Revised: 17 April 2018 / Accepted: 27 April 2018 / Published: 3 May 2018
(This article belongs to the Special Issue Information-Theoretic Security)

Abstract

:
Different transforms used in binding a secret key to correlated physical-identifier outputs are compared. Decorrelation efficiency is the metric used to determine transforms that give highly-uncorrelated outputs. Scalar quantizers are applied to transform outputs to extract uniformly distributed bit sequences to which secret keys are bound. A set of transforms that perform well in terms of the decorrelation efficiency is applied to ring oscillator (RO) outputs to improve the uniqueness and reliability of extracted bit sequences, to reduce the hardware area and information leakage about the key and RO outputs, and to maximize the secret-key length. Low-complexity error-correction codes are proposed to illustrate two complete key-binding systems with perfect secrecy, and better secret-key and privacy-leakage rates than existing methods. A reference hardware implementation is also provided to demonstrate that the transform-coding approach occupies a small hardware area.

1. Introduction

Secret keys stored in a device can provide intellectual property protection, and device authentication and identification. Non-volatile memory (NVM) is the traditional storage medium for secret keys. Securing the NVM is expensive due to its susceptibility to physical attacks [1,2,3]. A cheap and safe alternative to the NVM is to use physical identifiers as a source of randomness by applying the concept of one-way functions [4] to physical systems.
Invasive (physical) attacks to physical identifiers permanently change the identifier output so that an attacker cannot learn the secret key by using an invasive attack [4]. This property eliminates the need for continuous hardware protection [5]. Physical identifiers, such as physical unclonable functions (PUFs), e.g., the random start-up value of an uninitialized static random access memory (SRAM) [6] or fine variations of ring oscillator (RO) outputs [7], are considered to be random sources with high entropy [8]. Security applications that use a secret key stored in a NVM can alternatively use a PUF for the same purpose. Thus, we can use PUFs for low-complexity key storage in, e.g., internet of things (IoT) applications like securing a surgical robot against hacking.
There are multiple key-generation, or generated-secret (GS), and key-binding, or chosen-secret (CS), methods to reconstruct secret keys from noisy PUF outputs, where the key is generated from the PUF outputs or bound to them, respectively. Code-offset fuzzy extractors [9] are examples of key-generation methods and the fuzzy commitment scheme [10] is a key-binding method. Code constructions based on Wyner-Ziv (WZ) coding are illustrated in [11] to asymptotically achieve the information-theoretic limits for the GS and CS models. These constructions might have high complexity, which is undesired for, e.g., IoT applications. In addition, since a key should be stored in a secure database for both models, it is more practical to allow a trusted entity to choose the secret key bound to a PUF output. Thus, in this paper, we aim at further improving reliability, privacy, secrecy, and hardware cost performance of a transform-coding algorithm, explained next, that is applied to PUF outputs in combination with the fuzzy commitment scheme.
PUFs have similar features to biometric identifiers like fingerprints. Both identifier types have correlated and noisy outputs due to surrounding environmental conditions [12]. Correlation in PUF outputs leaks information about the secret key, which causes secrecy leakage, and about the PUF output, causing privacy leakage [13,14,15]. Moreover, noise reduces reliability of PUF outputs and error-correction codes are needed to satisfy the reliability requirements. The transform-coding approach [16,17] in combination with a set of scalar quantizers has made its way into secret-key binding with continuous-output identifiers. This approach allows to reduce the output correlation and to adjust the effective noise at the PUF output. For instance, the discrete cosine transform (DCT) is the building block in [17] to generate a uniformly distributed bit sequence from RO outputs under varying environmental conditions. Efficient post-processing steps are applied to obtain more reliable PUF outputs rather than changing the hardware architecture, so standard components can be used. This transform-coding approach improves on the existing approaches in terms of the reliability under varying environmental conditions and maximum key length [17,18]. We apply this algorithm to PUF outputs with further significant improvements by designing the transformation and error-correction steps jointly.
Information-theoretic limits for the fuzzy commitment scheme are given in [19]. We use these information-theoretic limits to compare error-correction codes proposed for the transform-coding algorithm with the limits. Similar analyses were conducted for biometric identifiers in [20], but their assumptions such as independent and identically distributed (i.i.d.) identifier outputs and maximum block-error probability constraint P B = 10 2 are not realistic. We therefore consider highly correlated RO outputs with the constraint P B 10 9 , which are realistic for security applications that use PUFs [21].

1.1. Summary of Contributions and Organization

We improve the DCT-based algorithm of [17] by using different transforms and reliability metrics. We also propose error-correction codes that achieve better (secret-key, privacy-leakage) rate tuples than previous code designs. A summary of the main contributions is as follows.
  • We compare a set of transforms to improve the performance of the transform coding algorithm in terms of the maximum secret-key length, decorrelation efficiency, uniqueness and security of the extracted bit sequence, and computational complexity.
  • Two quantization methods with different reliability metrics are proposed to address multiple design objectives for PUFs. One method aims at maximizing the length of the bit sequence extracted from a fixed number of ROs, whereas the second method provides reliability guarantees for each output in the transform domain by fixing the decoding capability of a decoder used for error correction.
  • We give a reference hardware design for the transform with the smallest computational complexity, among the set of transforms considered, in combination with the second quantization method to illustrate that our algorithm occupies a small hardware area. Our results are comparable to hardware area results of previous RO PUF designs.
  • Error-correction codes that satisfy the block-error probability constraints for practical PUF systems are proposed for both quantization methods to illustrate complete key-binding systems with perfect secrecy. The proposed codes operate at better rate tuples than previously proposed codes for the fuzzy commitment scheme. Our quantizer designs also allow us to significantly reduce the gap to the optimal (secret-key, privacy-leakage) rate point achieved by the fuzzy commitment scheme.
This paper is organized as follows. In Section 2, we define the fuzzy commitment scheme that uses PUF outputs as the randomness source. The transform-coding algorithm proposed to extract a reliable bit sequence from RO PUFs is explained in Section 3. We propose two different quantization methods with different reliability metrics in Section 4. In Section 5, we illustrate the small hardware area of the proposed algorithm with a reference hardware design, and the gains in terms of reliability, security, and maximum secret-key length as compared to the existing methods. Our proposed error-correction codes, and their secrecy and privacy performance are described in Section 6. Section 7 concludes the paper.

1.2. Notation

Upper case letters represent random variables and lower case letters their realizations. A letter with superscript denotes a string of variables, e.g., X N = X 1 X i X N , and a subscript denotes the position of a variable in the string. A random variable X has probability mass P X or probability density f X . Calligraphic letters such as X denote sets, and set sizes are denoted as | X | . Bold letters such as H represent matrices. Enc ( · ) is an encoder mapping and Dec ( · ) is a decoder mapping. X Y Z indicates a Markov chain. H b ( x ) = x log 2 x ( 1 x ) log 2 ( 1 x ) is the binary entropy function. The ∗-operator is defined as p * x = p ( 1 x ) + ( 1 p ) x . The operator ⊕ represents the element-wise modulo-2 summation. A binary symmetric channel (BSC) with crossover probability p is denoted by BSC(p). X n Bern n ( α ) denotes that X n is an i.i.d. binary sequence of random variables with Pr [ X i = 1 ] = α for i = 1 , 2 , , n . Unif [ 1 : | X | ] represents a uniform distribution over the integers from 1 to | X | . A linear error-correction code C with parameters ( n , k , d ) has block length n, dimension k, and minimum distance d so that it can correct up to d 1 2 errors.

2. System Model and the Fuzzy Commitment Scheme

Consider an RO as a source that generates a real-valued symbol x ˜ . Systematic variations in RO outputs in a two-dimensional array are less than the systematic variations in one-dimensional ROs [22]. We thus consider a two-dimensional RO array of size L = r × c and represent the array as a vector random variable X ˜ L . Suppose there is a single PUF circuit, i.e., a single two-dimensional RO array, in each device with the same circuit design, and it emits an output X ˜ L according to a probability density f X ˜ L . Each RO output is disturbed by mutually-independent additive white Gaussian noise (AWGN) and the vector noise is denoted as Z ˜ L . Define the noisy RO outputs as Y ˜ L = X ˜ L + Z ˜ L . Observe that X ˜ L and Y ˜ L are correlated. A secret key can thus be agreed by using these outputs of the same RO array [13,14,23,24].
One needs to extract random sequences with i.i.d. symbols from X ˜ L and Y ˜ L to employ available information-theoretic results for secret-key binding with identifiers. We propose an algorithm that extracts nearly i.i.d. binary and uniformly distributed random vectors X N , Y N from X ˜ L and Y ˜ L , respectively. For such X N and Y N , we can define a binary error vector as E N = X N Y N . The random sequence E N corresponds to a sequence of i.i.d. Bernoulli random variables with parameter p, i.e., E N Bern n ( p ) . The channel P Y | X is thus a BSC ( p ) .
The fuzzy commitment scheme reconstructs a secret key by using correlated random variables without leaking any information about the secret key [10]. The fuzzy commitment scheme is depicted in Figure 1, where an encoder Enc embeds a secret key, uniformly distributed according to Unif [ 1 : | S | ] , into a binary codeword C N that is added modulo-2 to the binary PUF-output sequence X N during enrollment. The resulting sequence is the public helper data M , which is sent through an authenticated and noiseless channel. The modulo-2 sum of the helper data M and Y N gives the result
R N = M Y N = C N E N
which is later mapped to an estimate S ^ of the secret key by the decoder Dec during reconstruction.
Definition 1.
A secret-key vs. privacy-leakage rate pair R s , R l is achievable by the fuzzy commitment scheme with perfect secrecy, i.e., zero secrecy leakage, if, given any ϵ > 0 , there is some N 1 and an encoder and decoder for which R s = log 2 | S | N and
Pr [ S S ^ ] ϵ ( reliability )
I S ; M = 0 ( perfect secrecy )
1 N I X N ; M R l + ϵ ( privacy ) .
Theorem 1.
([19]) The achievable secret-key vs. privacy-leakage rate region for the fuzzy commitment scheme with a channel P Y | X that is a BSC ( p ) , uniformly distributed X and Y, and zero secrecy leakage is
R = { R s , R l : 0 R s 1 H b ( p ) , R l 1 R s } .
The region R suggests that any (secret-key, privacy-leakage) rate pair that sums up to 1 bit/source-bit is achievable with the constraint that the secret-key rate is at most the channel capacity of the BSC. Furthermore, smaller secret-key rates and greater privacy-leakage rates than these rates are also achievable.
The fuzzy commitment scheme is a particular realization of the CS model. The region R cs of all achievable (secret-key, privacy-leakage) rate pairs for the CS model with a negligible secrecy-leakage rate, where a generic encoder is used to confidentially transmit an embedded secret key to a decoder that observes Y N and the helper data M, is given in [13] as
R cs = P U | X { R s , R l : 0 R s I ( U ; Y ) , R l I ( U ; X ) }
where U X Y forms a Markov chain and the alphabet U of the auxiliary random variable U can be limited to have the size | U | | X | + 1 . The fuzzy commitment scheme is optimal, i.e., it achieves a boundary point of R cs , for a BSC P Y | X with crossover probability p, only at the point ( R s * , R l * ) = ( 1 H b ( p ) , H b ( p ) ) [19]. This point corresponds to the highest achievable secret-key rate. Note that the region R cs gives an outer bound for the perfect-secrecy case (see [13] for discussions).

3. Transform Coding Steps

The aim of transform coding is to reduce the correlations between RO outputs by using a linear transformation. We propose a transform-coding algorithm that extends the work in [16,17]. Optimizations of the quantization and error-correction parameters to maximize the security and reliability performance, and a simple method to decrease storage are its main steps. The output of these post-processing steps is a bit sequence X N (or its noisy version Y N ) used in the fuzzy commitment scheme. We consider the same post-processing steps for the enrollment and reconstruction. The difference is that during enrollment the design parameters are chosen as a function of the source statistics by the device manufacturer. It thus suffices to discuss only the enrollment steps. Figure 2 shows the post-processing steps that include transformation, histogram equalization, quantization, bit assignment, and bit-sequence concatenation.
RO outputs X ˜ L in an array are correlated due to, e.g., the surrounding logic [25]. A transform T r × c ( · ) of size r × c is applied to an array of RO outputs to reduce correlations. Decorrelation performance of a transform depends on the source statistics. We model each real-valued output T in the transform domain, called transform coefficient, obtained from a RO-output dataset in [26] by using the corrected Akaike information criterion (AICc) [27] and the Bayesian information criterion (BIC) [28]. These criteria suggest that a Gaussian distribution can be fitted to each transform coefficient T for the discrete cosine transform (DCT), discrete Walsh-Hadamard transform (DWHT), discrete Haar transform (DHT), and Karhunen-Loève transform (KLT), which are common transforms considered in the literature for image processing, digital watermarking, etc. [29]. We use maximum-likelihood estimation [30] to derive unbiased estimates for the parameters of Gaussian distributions.
The histogram equalization step in Figure 2 converts the probability density of the i-th coefficient T i into a standard normal distribution such that T ^ i = T i μ i σ i , where μ i is the mean and σ i is the standard deviation of the i-th transform coefficient for all i = 1 , 2 , , L . Quantization steps for all transform coefficients are thus the same. Without histogram equalization, we need a different quantizer for each transform coefficient. Therefore, the histogram equalization step reduces the storage for the quantization steps. Transformed and equalized coefficients T ^ i are independent if the transform T r × c ( · ) decorrelates the RO outputs perfectly and the transform coefficients T i are jointly Gaussian. One can thus use a scalar quantizer for all coefficients without a performance loss. We propose scalar quantizer and bit extraction methods that satisfy the security and reliability requirements of the fuzzy commitment scheme with the independence assumption, in combination with a correlation-thresholding approach, as discussed below.

4. Quantizer and Code Designs

The aim of the post-processing steps in Figure 2 is to extract a uniformly-random bit sequence X N . We use a quantizer Q ( · ) with quantization-interval values k = 1 , 2 , , 2 K i , where K i is the number of bits we extract from the i-th coefficient T ^ i for i = 1 , 2 , , L . We have
Q ( t ^ i ) = k if b k 1 < t ^ i b k
and we choose b k = Φ 1 k 2 K i , where Φ 1 ( · ) is the quantile function of the standard normal distribution. The quantizer output k is assigned to a bit sequence of length K i . The chosen permutation of assigned bit sequences does not affect the security performance. However, the most likely error event when we quantize T ^ i is a jump to a neighboring quantization step due to zero-mean noise. We thus apply a Gray mapping when we assign bit sequences of length K i to the integers k = 1 , 2 , , 2 K i so that neighboring bit sequences change only in one bit position.
We next propose two different reliability metrics for joint quantizer and code designs. The first metric results in BSC measurements of each extracted bit with approximately the same crossover probability. This method extracts a different number of bits from each transform coefficient. The code design is then done for a fixed crossover probability of the BSCs. The second method fixes the maximum number of erroneous transform coefficients and considers an error-correction code that can correct all error patterns with up to a fixed number of errors.

4.1. Quantizer Design with Fixed Measurement Channels

Observe that with the quantizer in (7) and a Gray mapping, one can model the channel between a bit extracted from the enrollment outputs X ˜ L and the corresponding bit extracted from the reconstruction outputs Y ˜ L as a BSC with a fixed average crossover probability p b . Our algorithm thus fixes an average crossover probability p b such that the error-correction step in the fuzzy commitment scheme can satisfy the maximum block-error probability of 10 9 . The algorithm enforces that each output t ^ i results in an average bit error probability as close as possible to, but not greater than, p b by adapting the number of bits K i ( p b ) extracted from the i-th coefficient T ^ i for all i = 1 , 2 , , L . We use the average fractional Hamming distance D ( K ) between the quantization intervals assigned to the original and noisy coefficients as a metric to determine K i ( p b ) . Define
D i ( K ) = 1 K k = 1 2 K Pr [ Q ( t ^ + n ^ ) = k ] HD k ( t ^ ) · f T ^ i ( t ^ ) f N ^ i ( n ^ ) d t ^ d n ^
where HD k ( t ^ ) is the Hamming distance between the bit sequences assigned to the k-th quantization interval and to the interval Q ( t ^ ) , and N ^ i represents the Gaussian noise in the i-th coefficient after histogram equalization. We then determine K i ( p b ) as the greatest number of bits K such that D i ( K ) p b .
The first coefficient, i.e., DC coefficient, T ^ 1 is not used since its value is a scaled version of the mean of the RO outputs in the array, which is generally known by an eavesdropper. Ambient-temperature and supply-voltage variations have a highly-linear effect on the RO outputs, so the DC coefficient is the most affected coefficient, which is another reason not to use the DC coefficient [18]. Therefore, the total number N ( p b ) of extracted bits from all transform coefficients for a fixed p b is
N ( p b ) = i = 2 L K i ( p b ) .
We calculate the maximum secret-key length S max by using (5) for a BSC ( p b ) with the maximum secret-key rate R s * = 1 H b ( p b ) as
S max = ( 1 H b ( p b ) ) · N ( p b )
which is used to compare different transforms and to decide whether one can use an RO PUF with fixed number of ROs and p b for secret-key binding. For instance, for the advanced encryption standard (AES), the minimum secret-key length is 128 bits. However, the rate region R in (5) is valid for large N. One thus needs to consider the rate loss due to a finite block length for a system design.

4.2. Quantizer Design with Fixed Number of Errors

We now propose a conservative approach, based on the assumption that either all bits extracted from a transform coefficient are correct or they all flip, to provide reliability guarantees. The correctness probability P c of a transform coefficient is defined to be the probability that all bits associated with this coefficient are correct. We use this metric to determine the number of bits extracted from each coefficient such that there is an encoder and a bounded minimum distance decoder (BMDD) that satisfy the block-error probability constraint P B 10 9 . This approach results in reliability guarantees for the random-output RO arrays.
For a K-bit quantizer and the quantization boundaries b k as in (7) for an equalized (i.e., standard) Gaussian transform coefficient T ^ , we obtain the correctness probability
P c ( K ) = k = 0 2 K 1 b k b k + 1 Q b k t ^ σ n ^ Q b k + 1 t ^ σ n ^ f T ^ ( t ^ ) d t ^
where σ n ^ 2 is the noise variance and f T ^ is the probability density of the standard Gaussian distribution.
Suppose our channel decoder can correct all errors in up to C max transform coefficients. Suppose further that coefficient errors occur independently and that the correctness probability P c , i ( K ) of the i-th coefficient T ^ i for i = 1 , 2 , , L is at least P ¯ c ( C max ) . A sufficient condition for satisfying the block-error probability constraint P B 10 9 is that P ¯ c ( C max ) satisfies the inequality
c = C max + 1 L L c ( 1 P ¯ c ( C max ) ) c P ¯ c ( C max ) L c 10 9 .
We thus determine the number K i of bits extracted from the i-th transform coefficient as the maximum value K such that P c , i ( K ) P ¯ c ( C max ) . Similar to Section 4.1, we choose K 1 = 0 so that the total number N ( C max ) of extracted bits is
N ( C max ) = i = 2 L K i .
In the worst case, the coefficients in error are the coefficients from which the greatest number of bits is extracted. We sort the numbers K i of bits extracted from all coefficients in descending order such that K i K i + 1 for all i = 1 , 2 , , L 1 . The channel decoder thus must be able to correct up to
e ( C max ) = i = 1 C max K i
bit errors, which can be satisfied by using a block code with minimum distance d min 2 e ( C max ) + 1 .
Suppose a key bound to physical identifiers in a device is used in the AES with a uniformly-distributed secret-key with a length of 128 bits. The block code used in the fuzzy commitment scheme should thus have a code length of at most N ( C max ) bits, code dimension of at least 128 bits, and minimum distance of d min 2 e ( C max ) + 1 for a fixed C max . The code rate should be as high as possible to operate close to the optimal (secret-key, privacy-leakage) rate point of the fuzzy commitment scheme. This optimization problem is hard to solve. We illustrate by an exhaustive search over a set of C max values and over a selection of algebraic codes that there is a channel code that satisfies these constraints with a reliability guarantee for each extracted bit. Restricting our search to codes that admit low-complexity encoders and decoders is desired for IoT applications, for which complexity is the bottleneck.
Note that the listed conditions are conservative. For a given transform coefficient, the correctness probability can be significantly greater than the correctness threshold P ¯ c ( C max ) . Secondly, due to Gray mapping, it is more likely that less than K i bits are in error when the i-th coefficient is erroneous. Thirdly, it is also unlikely that the bit errors always occur in the transform coefficients from which the greatest number of bits is extracted. Therefore, even if a channel code cannot correct all error patterns with up to e ( C max ) errors, it can still be the case that the block-error probability constraint is satisfied. We illustrate such a case in the next section.

5. Performance Evaluations

Suppose the device output X ˜ L is a vector random variable with the autocovariance matrix C X ˜ X ˜ . Consider RO arrays of sizes 8 × 8 and 16 × 16. Autocovariance matrix elements of such RO array outputs and noise are estimated from the dataset in [26]. We compare the DCT, DWHT, DHT, and KLT in terms of their decorrelation efficiency, maximum secret-key length, complexity, uniqueness, and security.

5.1. Decorrelation Performance

One should eliminate correlations between the RO outputs and make them independent to extract uniform bit sequences by treating each transform coefficient separately. We use the decorrelation efficiency η c [31] as a decorrelation performance metric. Consider the autocovariance matrix C TT of the transform coefficients, so η c of a transform is
η c = 1 a = 0 L b = 0 L | C TT ( a , b ) | 𝟙 { a b } a = 0 L b = 0 L | C X ˜ X ˜ ( a , b ) | 𝟙 { a b }
where the indicator function 𝟙 { a b } takes on the value 1 if a b and 0 otherwise. The decorrelation efficiency of the KLT is 1, which is optimal [31]. We list the average decorrelation efficiency results of other transforms in Table 1. All transforms have similar and good decorrelation efficiency performance for the RO outputs in the dataset in [26]. The DCT and DHT have the highest efficiency for 8 × 8 RO arrays, whereas for 16 × 16 RO arrays, the best transform is the DWHT. Table 1 indicates that increasing the array size improves η c .

5.2. Maximum Secret-Key Length

The maximum number of bits extracted with the method given in Section 4.2 depends on the fixed number of transform coefficients that are in error. Moreover, the method uses a conservative metric. However, for the method given in Section 4.1, we can optimize the number of bits extracted from each coefficient to maximize the secret-key length. We therefore consider only the method in Section 4.1 for maximum key-length comparisons.
The secret key S should satisfy the length constraints of the cryptographic primitives that use it. Consider again the AES with a 128-bit secret key. We compare different transforms by calculating the maximum secret-key lengths S max , defined in (10), for various crossover probabilities p b that can be obtained by applying the post-processing steps in Figure 2. For RO array dimensions 8 × 8 , we show S max results of the considered transforms in Figure 3. For p b 0.05 , R s * is high but N ( p b ) is small, so S max is mainly determined by N ( p b ) , as depicted in Figure 3. For p b 0.07 , N ( p b ) is high but R s * mainly determines S max , which is small.
The DHT, DWHT, and DCT have similar S max results and the KLT has worse performance than the others, which is mainly determined by the signal-to-noise ratio (SNR) in the transform domain. This illustrates that a transform’s η c performance for the estimated RO output distribution and its S max performance for the estimated RO output and noise distributions can be different. We determine a crossover probability range P = [ 0.05 , 0.07 ] such that the secret-key length of all transforms are close to their maximum and greater than 128. For a BSC with crossover probability p P , we design error-correction codes such that P B 10 9 is satisfied. The crossover probability range considered in [21] is [ 0.12 , 0.14 ] , while 0.14 is the only value considered in [32] for the same P B constraint. Considering a set of crossover values rather than a single value provides more flexibility in designing error-correction codes. Our crossover probability range also allows us to use higher-rate codes than the codes for the range [ 0.12 , 0.14 ] since the maximum key rate R s * of the fuzzy commitment scheme increases with decreasing p b . The proposed transform-coding algorithm with the first quantizer method is thus beneficial for code design due to smaller crossover probability p b .
The maximum number of extracted bits, which corresponds to N in (9), for an 8 × 8 RO array is 16 bits for the 1-out-of-8 masking scheme [7], 32 bits for the non-overlapping RO pairs [7], and 64 bits for the regression-based distillers [33]. Even if one assumes no errors, i.e., R s * = 1 , for these methods, their S max results are much smaller than the S max results of our algorithm, as shown in Figure 3.

5.3. Transform Complexity

We measure the complexity of a transform in terms of the number of operations required to compute the transform and the hardware area required to implement it in a field-programmable gate array (FPGA). We are first interested in a computational-complexity comparison for RO arrays of sizes r = c = 8 and r = c = 16 , which are powers of 2, so that fast algorithms are available for the DCT, DWHT, and DHT. We then present an RO PUF hardware design for the transform with the minimum computational complexity.
The computational complexity of the KLT for r = c = N is O ( N 3 ) , while it is O ( N 2 log 2 N ) for the DCT and DWHT, and O ( N 2 ) for the DHT [29]. There are efficient implementations of the DWHT without multiplications [34]. The DWHT is thus a good candidate for RO PUF designs for, e.g., internet of things (IoT) applications.
We now give a reference FPGA implementation for the DWHT without multiplications to illustrate that the hardware area occupied by the transform-coding algorithm is small and the processing time is significantly better than previous RO PUF designs.

5.3.1. FPGA Implementation

We use a Xilinx ZC706 evaluation board with a Zynq-7000 XC7Z045 system-on-chip (SoC) to evaluate our DWHT design. A high level overview of the design is depicted in Figure 4. The Zynq SoC consists of an FPGA part and an ARM Cortex-A9 dual-core processor, connected with memory-mapped AXI4 buses [35]. The ARM processor is connected to three components: the RO array, DWHT, and quantizer. The RO array is connected via a bi-directional memory-mapped AXI bus, and the other components are connected via AXI streaming buses [36]. We first measure RO outputs with counters, give the counter values as input to the DWHT, and then quantize the transform coefficients to assign bits. This is an implementation of the transform-coding algorithm given in Figure 2.
We use a standard RO array of size 16 × 16 . All ROs in a row are connected to a counter and ROs in the same row can be measured serially by using the counter. There is an additional counter that stops the counting operations after a specified time. For the FPGA we use, it is practically necessary to use at least five inverters for each RO since using three inverters results in oscillation frequencies of about 1GHz, which violates the timing constraints of the FPGA. Our RO designs with five inverters operate reliably and give oscillation frequencies in the range [ 400 , 500 ] MHz. Furthermore, we use 16-bit counters so that the minimum duration T min to have an overload in a counter is
T min = 2 16 1 500 MHz = 131 μ s .
We therefore count each RO output for a duration of 100 μ s, which is less than T min to avoid overloads. This results in a total counting duration of 1.6 ms for all 16 columns of the RO array, which is compared below with the previous RO PUF designs.
We next implement an extended version of the algorithm, proposed for an 8 × 8 array, in [34] to calculate the two-dimensional (2D) 16 × 16 DWHT without multiplications. The main block we use is the 4-point (4P)-2D DWHT [34] that takes four inputs [ x 0 , x 1 , x 2 , x 3 ] and calculates
y 0 y 1 y 2 y 3 = 1 2 x 0 + x 1 + x 2 + x 3 x 0 x 1 + x 2 x 3 x 0 + x 1 x 2 x 3 x 0 x 1 x 2 + x 3 .
We successively apply the 4P-2D DWHT to the 16 × 16 RO array according to an extension of the input-selection algorithm proposed in [34]. We implement a finite state machine (FSM) to control the input and output AXI streaming interfaces as well as the input-selection algorithm. The building blocks of our DWHT implementation is depicted in Figure 5, which includes
  • a data random access memory (RAM) to store all array elements,
  • a 32-bit index read-only memory (ROM), where each word stores four 8-bit array-element addresses,
  • a multiplexer (MUX) to select the RAM address to be accessed,
  • a second MUX to select the ROM input,
  • a register for each input to convey different RAM words to different ports.
We first store all RO outputs in the data RAM. Then, the first word of the index ROM is fetched. This word holds the addresses of four array elements to be loaded. These array elements are passed to the 4P-2D DWHT’s input registers by selecting the corresponding port in the address MUX and register bank. After evaluating the 4P-2D DWHT, the new array elements [ y 0 , y 1 , y 2 , y 3 ] are written back to the locations from where the inputs [ x 0 , x 1 , x 2 , x 3 ] were fetched. The FSM performs the same steps for all remaining ROM words and conveys the 2D DWHT coefficients to the AXI output port.
The addition and subtraction operations on four numbers in each 4P-2D DWHT evaluation requires at most two additional bits, while the subsequent bit shift to implement the division by 2 in (17) removes one bit. Since the 4P-2D DWHT is applied in total four times to each RAM location, the transform requires 20-bit operations and storage in order to process the 16-bit signed numbers used for counter values.
The quantizer contains AXI stream ports, an FSM, and one ROM. The ROM holds 2 K i 1 quantization boundaries for the i-th transform coefficient. We remark that the histogram equalization step in Figure 2 is useful when the number of bits K i extracted are large, but we choose K i = K = 1 for all used transform coefficients, which is illustrated in combination with an error-correction code design in Section 6.2. Therefore, we do not apply the histogram equalization step for this case, so the ROM contains 255 words and is of size 638 Bytes ( 255 × 20 bits) in total. The FSM compares the quantizer input with the corresponding quantization boundary to assign a bit 1 for transform-coefficient values greater than the quantization boundary, and the bit 0 otherwise. The assigned bits are then conveyed to the output port.

5.3.2. Hardware Design Comparisons

We now compare our results with another RO PUF hardware design given in [21] in terms of the hardware area and processing times. The number of lookup tables (LUTs), registers, and MUXs used in [21] are not available. However, our results can be compared with their slice-count and processing-delay results since the FPGA (Spartan-6) used in [21] also has 4 LUTs, 8 registers and 3 MUXes in each slice, the same as the FPGA used in this work. In addition, the quantizer and DWHT clock rate is 54MHz, as in [21]. There are alternative RO PUF designs in [37,38], but their secret-key lengths are smaller than 128 bits, which makes a comparison with our scheme difficult. Therefore, we list in Table 2 the hardware area occupied by individual components of our RO PUF design and by the RO PUF design of [21].
Table 2 illustrates that the RO array causes the highest hardware cost and uses approximately 82 % of all occupied LUTs, 62 % of registers, and 86 % of slices. We do not include the area for RAMs and ROMs, because we use Block RAM slices that are available in the FPGA. However, we include the control logic area required to control the Block RAM slices. Our DWHT-based design occupies an approximately 11 % smaller RO PUF hardware area than the RO PUF design proposed in [21] in terms of the number of slices used. This result can be improved if we re-use the same area for different ROs, which might increase correlations in the RO outputs. In addition, the DWHT and quantizer constitute approximately 14 % of the total slice count of our RO PUF design. These results illustrate that the transform-coding approach occupies a small hardware area.
The total counter duration of 1.6 ms is a result of the calculation given in (16) to avoid overloads in the counters, and the choice of this value depends mainly on the number of inverters used for each RO and counter bit width. The overall processing time of the proposed design is approximately 1.68 ms, which is significantly better than the processing delay of the RO PUF design in [21].

5.4. Uniqueness and Security

The bit sequence extracted from a physical identifier should consist of uniformly distributed bits so that the rate region R in (5) is valid. A common measure, called uniqueness, for checking randomness of a bit sequence is the average fractional Hamming distance between the bit sequences extracted from different RO PUFs [17]. We obtain similar uniqueness results for all transforms, where the mean Hamming distance is 0.500 and Hamming distance variance is approximately 7 × 10 4 . All transforms thus provide close to optimal uniqueness results due to their high decorrelation efficiencies and equipartitioned quantization intervals. These results are significantly better than the results 0.462 [7] and 0.473 [26].
The National Institute of Standards and Technology (NIST) provides a set of randomness tests that check whether a bit sequence can be differentiated from a uniformly random bit sequence [39]. We apply these tests to evaluate the randomness of the generated sequences. We observe that the bit sequences generated from ROs in the dataset [26] with the DWHT pass most of the applicable tests for short lengths for both reliability metrics, which is considered to be an acceptable result [39]. We also conclude that the KLT performs the best due to its optimal decorrelation performance. One can apply a thresholding approach such that the reliable transform coefficients from which the bits are extracted do not have high correlations, which further improves the security performance [18].

6. Privacy and Secrecy Analysis of Proposed Error-Correction Codes

Suppose that extracted bit sequences are uniformly distributed so that the secrecy leakage is zero. We propose different codes for the transform-coding algorithm according to the two proposed reliability metrics.

6.1. Codes for the Quantizer Design with Fixed Measurement Channels

For the first quantizer method given in Section 4.1, fix an average crossover probability p b = 0.06 to obtain the highest maximum secret-key length, as shown in Figure 3. We illustrate that there are efficient error-correction codes for the fuzzy commitment scheme with P B 10 9 and a small privacy-leakage rate. Recall that the code dimension has to be at least 128 bits, a requirement of the AES, so the block length is in the short block-length regime for error-correction codes with high rates and k = 128 . We expect a rate loss in our code designs due to the small block-error probability constraint and short block length. One needs finite-length bounds for the fuzzy commitment scheme, which are not available in the literature. We thus compare the performance of our codes with the region R given in (5). The basic approach to design codes for small block-error probabilities and reasonable decoding complexity is to use concatenated codes. Since the hardware complexity of a code design should be small for IoT applications, we minimize also the field sizes of the codes.
Remark 1.
It would be natural to use iterative decoders in combination with high-performance codes like low density parity check (LDPC) and turbo codes. However, hardware complexity might increase and it is a difficult task to simulate these codes for P B 10 9 . We thus use concatenated algebraic codes so that we can find analytical bounds on P B without simulations for the outer code.
The first construction uses a Reed-Muller (RM) code C ( 32 , 6 , 16 ) as the inner code and a Reed-Solomon (RS) code C ( 28 , 22 , 7 ) that operates with symbols from the Galois field F 2 6 as the outer code of a concatenated code. Every symbol of the RS code can be represented by 6 bits and the code takes 22 symbols as input, which corresponds to 132 input bits that is greater than 128 bits. The majority logic decoder (MLD) of the inner RM code transforms the BSC with crossover probability p b = 0.06 into a channel with errors and erasures by declaring an erasure if there are two codewords with equal distances to a received vector and makes an error if a wrong codeword is selected. Simulation results show that the erasure probability after the MLD of the inner code is about 6.57 × 10 5 and the error probability is about 4.54 × 10 6 . The BMDD for the outer code correctly reconstructs the codeword if 2 × e + ν < d , where e is the number of errors and ν is the number of erasures in the received vector [40]. The block-error probability after decoding the outer RS code is approximately P B 1.37 × 10 11 . The key and leakage rates of this code are R s = 0.1473 and R l = 0.8527 bits/source-bit, respectively.
An alternative concatenated code is a binary extended Bose-Chaudhuri-Hocquenghem (BCH) code C ( 256 , 132 , 36 ) as the outer code and a repetition code C ( 3 , 1 , 3 ) as the inner code. The maximum-likelihood decoder for the inner code transforms the BSC with crossover probability p b = 0.06 into a BSC with p b = 0.0104 so that the BMDD for the outer BCH code results in P B = 3.48 × 10 10 . The key-leakage rate pair R s , R l for this code is 0.1719 , 0.8281 bits/source-bit, which gives better rates than the RM+RS concatenation above and the best generalized-concatenated-code (GCC) design with the fuzzy commitment scheme in [32] with the key-leakage rate pair 0.1260 , 0.8740 bits/source-bit, which is shown to be better than the previous results in [21]. The significant improvement in the rates with a low-complexity code is due to the decrease in p b by using our transform-coding algorithm.
The fuzzy commitment scheme can asymptotically achieve the maximum secret-key rate R s * = 0.6726 bits/source-bit and corresponding minimum privacy-leakage rate R l * = 0.3274 bits/source-bit for a BSC ( p b = 0.06 ) . Better key-leakage rate pairs are thus possible, e.g., by using GCCs or by improving the decoder for the outer code. However, these constructions would result in increased hardware complexity, which is not desired for IoT applications.

6.2. Codes for the Quantizer Design with Fixed Number of Errors

We now select a channel code according to Section 4.2 to store a secret key of length 128 bits. The correctness probabilities defined in (11) for the transform coefficients T with the three highest and three smallest probabilities are plotted in Figure 6. The indices of the 16 × 16 transform coefficients follow the order in the dataset [26], where the coefficient index at the first row and first column is 1, and it increases columnwise up to 16 so that the second row starts with the index 17, the third row with the index 33, etc. The most reliable transform coefficients are the low-frequency coefficients, which are in our case at the upper-left corner of the 2D transform-coefficient array with indices such as 1 , 2 , 3 , 17 , 18 , 19 , 33 , 34 , 35 . The low-frequency transform coefficients therefore have the highest SNRs for the source and noise statistics obtained from the RO dataset in [26]. The least reliable coefficients are observed to be spatially away from the transform coefficients at the upper-left or lower-right corners of the 2D transform-coefficient array. These results indicate that the SNR-packing efficiency, which can be defined similarly as the energy-packing efficiency, of a transform follows a more complicated scan order than the classic zig-zag scan order used for the energy-packing efficiency metric [41]. Observe from Figure 6 that increasing the number of extracted bits decreases the correctness probability for all coefficients since the quantization boundaries get closer so that errors due to noise become more likely, i.e., the probability P c ( K ) defined in (11) decreases with increasing K.
We fix the maximum number C max of transform coefficients T allowed to be in error and calculate the correctness threshold P ¯ c ( C max ) using (12), the total number N ( C max ) of extracted bits using (13), and the number e ( C max ) of errors the block code should be able to correct using (14). We observe that if C max 10 , P ¯ c ( C max ) is so large that P c , i ( K = 1 ) P ¯ c ( C max ) for all i = 2 , , L . If 11 C max 15 , N ( C max ) is less than the required code dimension of 128 bits. Increasing C max results in a smaller correctness threshold P ¯ c ( C max ) so that the maximum of the number K max ( C max ) = K 1 ( C max ) of bits extracted among the L 1 used coefficients increases. This approach can increase hardware complexity. We thus do not consider the cases where C max > 20 . Table 3 shows P ¯ c ( C max ) , N ( C max ) , and e ( C max ) for the remaining range of C max values, which are used for channel-code selection.
Consider again binary (extended) BCH and RS codes, which have good minimum-distance properties. An exhaustive search does not provide a code with dimension of at least 128 bits and with parameters satisfying any of the ( N ( C max ) , e ( C max ) ) pairs in Table 3. However, the correctness threshold analysis leading to Table 3 is conservative. We therefore choose a BCH code with parameters as close as possible to a ( N ( C max ) , e ( C max ) ) pair and then prove that even if the number e BCH of errors the chosen BCH code can correct is less than e ( C max ) , the block-error probability constraint is satisfied. Consider therefore the BCH code with the block length 255, code dimension 131, and a capability of correcting all error patterns with e BCH = 18 or less errors.
We now show that the proposed code satisfies the block-error probability constraint. First, we impose the condition that exactly one bit is extracted from each coefficient, i.e., K i = 1 for all i = 2 , 3 , , L , so that in total N = L 1 = 255 bits are obtained. Note that this results in independent bit errors E i . It follows from this condition that the chosen block code should be able to correct all error patterns with up to e = 20 bit errors rather than e ( 20 ) = 25 bit errors, which is still greater than the error-correction capability e BCH = 18 of the considered BCH code.
The block error probability P B for the BCH code C ( 255 , 131 , 37 ) with a BMDD corresponds to the probability of having more than 18 errors in the codeword, i.e.,
P B = j = 19 255 [ A F j i A ( 1 P c , i ) · i A c P c , i ]
where P c , i is the correctness probability of the i-th transform coefficient T ^ i defined in (11) for i = 2 , 3 , , 256 , F j is the set of all size-j subsets of the set { 2 , 3 , , 256 } , and A c denotes the complement of the set A. The correctness probabilities P c , i are different and they represent probabilities of independent events due to the independence assumption for the transform coefficients.
One needs to consider j = 0 18 255 j 1.90 × 10 27 different cases to calculate (18), which is not practical. We thus use the discrete Fourier transform - characteristic function (DFT-CF) method [42] to calculate the block-error probability and obtain the result P B 1.26 × 10 11 < 10 9 . The block-error probability constraint is thus satisfied by using the BCH code C ( 255 , 131 , 37 ) with a BMDD although the conservative analysis suggests that it would not be satisfied.
We now compare the BCH code C ( 255 , 131 , 37 ) with previous codes proposed for binding keys to physical identifiers with the fuzzy commitment scheme and a secret-key length of 128 bits such that P B 10 9 is satisfied. The (secret-key, privacy-leakage) rate pair for this proposed code is ( R s , R l ) = ( 131 255 , 1 131 255 ) ( 0.514 , 0.486 ) bits/source-bit. This pair is significantly better than our previous results in Section 6.1 proposed for a BSC ( p b = 0.06 ) . The main reason for obtaining a better (secret-key, privacy-leakage) rate pair is that the quantizer in Section 4.2 allows us to exploit higher identifier-output reliability by decreasing the number of bits extracted from each transform coefficient.
We compare the secret-key and privacy-leakage rates of the BCH code C ( 255 , 131 , 37 ) with the region of all achievable rate pairs for the CS model and the fuzzy commitment scheme for a BSC P Y | X with crossover probability p b = 1 1 L 1 i = 2 L P c , i ( K i = 1 ) 0.0097 , i.e., the probability of being in error averaged over all used transform coefficients with the quantizer in Section 4.2. We compute the boundary points of the region R cs by using Mrs. Gerber’s lemma [43], which gives the optimal auxiliary random variable U in (6) when P Y | X is a BSC. We plot the regions of all rate pairs achievable with the fuzzy commitment scheme and CS model, the maximum secret-key rate point, the (secret-key, privacy-leakage) rate pair of the proposed code, and a finite-length bound [44] for the block length of N = 255 bits and P B = 10 9 in Figure 7.
The maximum secret-key rate is R s * 0.922 bits/source-bit with a corresponding minimum privacy-leakage rate of R l * 0.079 bits/source-bit. There is a gap between the secret-key rate of the proposed code and the only operation point where the fuzzy commitment scheme is optimal. Part of this rate loss can be explained by the short block length of the code and the small block-error probability constraint. The finite-length bound given in ([44], Theorem 52) establishes that the rate pair ( R s , R l ) = ( 0.691 , 0.309 ) bits/source-bit is achievable by using the fuzzy commitment scheme, as depicted in Figure 7. One can therefore further improve the rate pairs by using better codes and decoders with higher hardware complexity, but this may not be possible for IoT applications. Figure 7 also illustrates that there exist other code constructions, e.g., the WZ-coding construction in [11], that reduce the privacy-leakage rate for a fixed secret-key rate.

7. Conclusions

The reliability, uniqueness, security, computational-complexity, and key-length performance of various transforms was compared to select the best transforms for reliable secret-key binding for RO PUFs by using the fuzzy commitment scheme. The DWHT and DHT perform best in terms of computational-complexity, maximum key length, and reliability. All transforms give close to optimal uniqueness and good security results. A reference hardware design with the DWHT showed that the hardware area required by the transform-coding approach is small and less than required by the existing RO PUF designs. Low-complexity concatenated codes with high secret-key and small privacy-leakage rates, which are better than previous results, are proposed for a realistic block-error probability of 10 9 .
We further improved the transform-coding algorithm applied to physical identifiers by designing quantizers with reliability guarantees. This alternative quantizer converts the block-error probability constraint P B 10 9 into a constraint on the number of transform coefficients allowed to be in error. We proposed a BCH code C ( 255 , 131 , 37 ) with a higher code rate than our previously proposed codes. Comparisons with the region of all achievable (secret-key, privacy-leakage) rate pairs for the fuzzy commitment scheme show that there is still a gap between the optimal rate pairs and the proposed code. This gap can be closed by using other channel codes and decoders at the cost of higher hardware complexity or by designing codes for other CS model constructions. In future work, we will apply an extension of water-filling techniques to the transform-coefficients in order to improve the reliability and security performance.

Author Contributions

O.G., O.İ., and G.K. conceived the study; O.G., O.İ., T.K., and V.S. designed and performed the experiments; All authors analyzed the data and a joint effort improved the algorithms presented; R.F.S. contributed further analysis tools; All authors contributed to the writing of the paper.

Acknowledgments

Onur Günlü thanks Anes Belkacem and Bernhard C. Geiger for their contributions to one of the conference papers used in this work. Onur Günlü was supported by the German Research Foundation (DFG) through the project HoliPUF under the grant KR3517/6-1. Vladimir Sidorenko is on leave from the Institute for Information Transmission Problems, Russian Academy of Science. Gerhard Kramer was supported by an Alexander von Humboldt Professorship endowed by the German Federal Ministry of Education and Research.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Günlü, O.; İşcan, O.; Sidorenko, V.; Kramer, G. Reliable secret-key binding for physical unclonable functions with transform coding. In Proceedings of the 2016 IEEE Global Conference on Signal and Information Processing (GlobalSIP), Washington, DC, USA, 7–9 December 2016; pp. 986–991. [Google Scholar]
  2. Günlü, O.; Belkacem, A.; Geiger, B.C. Secret-key binding to physical identifiers with reliability guarantees. In Proceedings of the 2017 IEEE International Conference on Communications (ICC), Paris, France, 21–25 May 2017; pp. 1–6. [Google Scholar]
  3. Suh, G.E.; Clarke, D.; Gassend, B.; Dijk, M.V.; Devadas, S. AEGIS: Architecture for tamper-evident and tamper-resistant processing. In Proceedings of the 17th Annual International Conference on Supercomputing, San Francisco, CA, USA, 23–26 June 2003; pp. 160–171. [Google Scholar]
  4. Pappu, R. Physical One-Way Functions. Ph.D. Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2001. [Google Scholar]
  5. Böhm, C.; Hofer, M. Physical Unclonable Functions in Theory and Practice; Springer: New York, NY, USA, 2013. [Google Scholar]
  6. Guajardo, J.; Kumar, S.S.; Schrijen, G.J.; Tuyls, P. FPGA intrinsic PUFs and their use for IP protection. In Cryptographic Hardware and Embedded Systems; Paillier, P., Verbauwhede, I., Eds.; Springer-Verlag: Berlin/Heidelberg, Germany, 2007; pp. 63–80. [Google Scholar]
  7. Suh, G.E.; Devadas, S. Physical unclonable functions for device authentication and secret key generation. In Proceedings of the ACM/IEEE Design Automation Conference, San Diego, CA, USA, 4–6 June 2007; pp. 9–14. [Google Scholar]
  8. Gassend, B. Physical Random Functions. Master’s Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2003. [Google Scholar]
  9. Dodis, Y.; Ostrovsky, R.; Reyzin, L.; Smith, A. Fuzzy extractors: How to generate strong keys from biometrics and other noisy data. Soc. Ind. Appl. Math. J. Comp. 2008, 38, 97–139. [Google Scholar] [CrossRef]
  10. Juels, A.; Wattenberg, M. A fuzzy commitment scheme. In Proceedings of the 6th ACM Conference on Computer and Communications Security, Kent Ridge Digital Labs, Singapore, 1–4 November 1999; ACM: New York, NY, USA, 1999; pp. 28–36. [Google Scholar]
  11. Günlü, O.; İşcan, O.; Sidorenko, V.; Kramer, G. Wyner-Ziv coding for physical unclonable functions and biometric secrecy systems. arXiv, 2017; arXiv:1709.00275. [Google Scholar]
  12. Maes, R. Physically Unclonable Functions; Springer-Verlag: Berlin/Heidelberg, Germany, 2013. [Google Scholar]
  13. Ignatenko, T.; Willems, F. Biometric systems: Privacy and secrecy aspects. IEEE Trans. Inf. Forensics Secur. 2009, 4, 956–973. [Google Scholar] [CrossRef]
  14. Lai, L.; Ho, S.W.; Poor, H.V. Privacy-security trade-offs in biometric security systems—Part I: Single use case. IEEE Trans. Inf. Forensics Secur. 2011, 6, 122–139. [Google Scholar] [CrossRef]
  15. Günlü, O.; Kramer, G. Privacy, secrecy, and storage with noisy identifiers. arXiv, 2016; arXiv:1601.06756. [Google Scholar]
  16. Günlü, O. Design and Analysis of Discrete Cosine Transform Based Ring Oscillator Physical Unclonable Functions. Master’s Thesis, Industrial University Munich, Munich, Germany, 2013. [Google Scholar]
  17. Günlü, O.; İşcan, O. DCT based ring oscillator physical unclonable functions. In Proceedings of the 2014 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Florence, Italy, 4–9 May 2014; pp. 8198–8201. [Google Scholar]
  18. Günlü, O.; İşcan, O.; Kramer, G. Reliable secret key generation from physical unclonable functions under varying environmental conditions. In Proceedings of the 2015 IEEE International Workshop on Information Forensics and Security (WIFS), Rome, Italy, 16–19 November 2015; pp. 1–6. [Google Scholar]
  19. Ignatenko, T.; Willems, F.M. Information leakage in fuzzy commitment schemes. IEEE Trans. Inf. Forensics Secur. 2010, 5, 337–348. [Google Scholar] [CrossRef]
  20. Ignatenko, T.; Willems, F.M. Privacy-leakage codes for biometric authentication systems. In Proceedings of the 2014 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Florence, Italy, 4–9 May 2014; pp. 1601–1605. [Google Scholar]
  21. Maes, R.; Herrewege, A.V.; Verbauwhede, I. PUFKY: A fully functional PUF-based cryptographic key generator. In Cryptographic Hardware and Embedded Systems; Springer-Verlag: Berlin/Heidelberg, Germany, 2012; pp. 302–319. [Google Scholar]
  22. Maiti, A.; Schaumont, P. Improved ring oscillator PUF: An FPGA-friendly secure primitive. J. Cryptol. 2011, 24, 375–397. [Google Scholar] [CrossRef]
  23. Ahlswede, R.; Csiszár, I. Common randomness in information theory and cryptography—Part I: Secret sharing. IEEE Trans. Inf. Theory 1993, 3, 1121–1132. [Google Scholar] [CrossRef]
  24. Maurer, U. Secret key agreement by public discussion from common information. IEEE Trans. Inf. Theory 1993, 39, 2733–2742. [Google Scholar] [CrossRef]
  25. Eiroa, S.; Baturone, I. An analysis of ring oscillator PUF behavior on FPGAs. In Proceedings of the 2011 International Conference on Field-Programmable Technology (FPT), New Delhi, India, 12–14 December 2011; pp. 1–4. [Google Scholar]
  26. Maiti, A.; Casarona, J.; McHale, L.; Schaumont, P. A large scale characterization of RO-PUF. In Proceedings of the 2010 IEEE International Symposium on Hardware-Oriented Security and Trust (HOST), Anaheim, CA, USA, 13–14 June 2010; pp. 94–99. [Google Scholar]
  27. Sugiura, N. Further analysis of the data by Akaike’s information criterion and the finite corrections. Commun. Stat. Theory Methods 1978, 7, 13–26. [Google Scholar] [CrossRef]
  28. Schwarz, G. Estimating the dimension of a model. Ann. Stat. 1978, 6, 461–464. [Google Scholar] [CrossRef]
  29. Wang, R. Introduction to Orthogonal Transforms: With Applications in Data Processing and Analysis; Cambridge University Press: Cambridge, UK, 2012. [Google Scholar]
  30. Bishop, C.M. Pattern Recognition and Machine Learning; Springer: New York, NY, USA, 2006; Volume 1. [Google Scholar]
  31. Ohm, J.R. Multimedia Signal Coding and Transmission; Springer-Verlag: Berlin/Heidelberg, Germany, 2015. [Google Scholar]
  32. Puchinger, S.; Mueelich, S.; Bossert, M.; Hiller, M.; Sigl, G. On error correction for physical unclonable functions. In Proceedings of the 10th International ITG Conference on Systems, Communications and Coding, Hamburg, Germany, 2–5 February 2015; pp. 1–6. [Google Scholar]
  33. Yin, C.E.; Qu, G. Improving PUF security with regression-based distiller. In Proceedings of the 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), Austin, TX, USA, 29 May–7 June 2013; pp. 1–6. [Google Scholar]
  34. Komatsu, K.; Sezaki, K. Lossless 2D discrete Walsh-Hadamard transform. In Proceedings of the 2001 IEEE International Conference on Acoustics, Speech, and Signal Processing, Salt Lake City, UT, USA, 7–11 May 2001; Volume 3, pp. 1917–1920. [Google Scholar]
  35. AMBA AXI and ACE Protocol Specification AXI3, AXI4, AXI5, ACE and ACE5. 2017. Available online: developer.arm.com/docs/ihi0022/latest/amba-axi-and-ace-protocol-specification-axi3-axi4-axi5-ace-and-ace5 (accessed on 17 April 2018).
  36. AMBA AXI4-Stream Protocol Specification v1.0. 2010. Available online: https://developer.arm.com/docs/ihi0051/latest/amba-axi4-stream-protocol-specification-v10 (accessed on 17 April 2018).
  37. Sahoo, D.P.; Mukhopadhyay, D.; Chakraborty, R.S. Design of low area-overhead ring oscillator PUF with large challenge space. In Proceedings of the 2013 International Conference on Reconfigurable Computing and FPGAs (ReConFig), Cancun, Mexico, 9–11 December 2013; pp. 1–6. [Google Scholar]
  38. Parrilla, L.; Castillo, E.; Morales, D.P.; García, A. Hardware activation by means of PUFs and elliptic curve cryptography in field-programmable devices. Electronics 2016, 5, 5. [Google Scholar] [CrossRef]
  39. Bassham, L.E.; Rukhin, A.L.; Soto, J.; Nechvatal, J.R.; Smid, M.E.; Barker, E.B.; Leigh, S.D.; Levenson, M.; Vangel, M.; Banks, D.L.; et al. A Statistical Test Suite for Random and Pseudorandom Number Generators for Cryptographic Applications; Technical Report; National Institute of Standards and Technology: Gaithersburg, MD, USA, 2010. Available online: https://csrc.nist.gov/publications/detail/sp/800-22/rev-1a/final (accessed on 17 April 2018).
  40. Lin, S.; Costello, D.J. Error Control Coding; Prentice-Hall: Englewood Cliffs, NJ, USA, 2004. [Google Scholar]
  41. Chen, W.H.; Pratt, W. Scene adaptive coder. IEEE Trans. Commun. 1984, 32, 225–232. [Google Scholar] [CrossRef]
  42. Hong, Y. On Computing the Distribution Function for the Sum of Independent and Nonidentical Random Indicators; Technical Report; Department of Statistics, Virginia Tech: Blacksburg, VA, USA, 2011. [Google Scholar]
  43. Wyner, A.D.; Ziv, J. A theorem on the entropy of certain binary sequences and applications: Part I. IEEE Trans. Inf. Theory 1973, 19, 769–772. [Google Scholar] [CrossRef]
  44. Polyanskiy, Y.; Poor, H.V.; Verdú, S. Channel coding rate in the finite blocklength regime. IEEE Trans. Inf. Theory 2010, 56, 2307–2359. [Google Scholar] [CrossRef]
Figure 1. The fuzzy commitment scheme.
Figure 1. The fuzzy commitment scheme.
Entropy 20 00340 g001
Figure 2. Transform-coding steps.
Figure 2. Transform-coding steps.
Entropy 20 00340 g002
Figure 3. The maximum key lengths S max for 8 × 8 RO arrays.
Figure 3. The maximum key lengths S max for 8 × 8 RO arrays.
Entropy 20 00340 g003
Figure 4. Hardware design overview.
Figure 4. Hardware design overview.
Entropy 20 00340 g004
Figure 5. Building blocks for the DWHT implementation.
Figure 5. Building blocks for the DWHT implementation.
Entropy 20 00340 g005
Figure 6. The correctness probabilities for transform coefficients.
Figure 6. The correctness probabilities for transform coefficients.
Entropy 20 00340 g006
Figure 7. The operation point of the proposed BCH code C ( 255 , 131 , 37 ) , regions of achievable rate pairs according to (5) and (6), the maximum secret-key rate point, and a finite-length bound for N = 255 bits, P B = 10 9 , and BSC ( 0.0097 ) .
Figure 7. The operation point of the proposed BCH code C ( 255 , 131 , 37 ) , regions of achievable rate pairs according to (5) and (6), the maximum secret-key rate point, and a finite-length bound for N = 255 bits, P B = 10 9 , and BSC ( 0.0097 ) .
Entropy 20 00340 g007
Table 1. The average RO output decorrelation-efficiency results.
Table 1. The average RO output decorrelation-efficiency results.
DCTDWHTDHT
η c for 8 × 8 0.99780.99770.9978
η c for 16 × 16 0.99870.99880.9986
Table 2. Hardware area and processing delays for RO PUF designs.
Table 2. Hardware area and processing delays for RO PUF designs.
BlocksLUTsRegistersMUXesRAM & ROM (Byte)SlicesDuration ( μ s)
Proposed-ROs16323976507291600
Proposed-DWHT326200016649966
Proposed-Quantizer433906382114
Proposed Total (ROPUF)20016366523028491680
PUFKY Total (ROPUF) [21]n.a.n.a.n.a.n.a.9524611
Table 3. Code-parameter constraints.
Table 3. Code-parameter constraints.
C max 1617181920
P ¯ c 0.9902 0.9889 0.9875 0.9860 0.9844
K max 33333
N 144224250255259
e 1820212325

Share and Cite

MDPI and ACS Style

Günlü, O.; Kernetzky, T.; İşcan, O.; Sidorenko, V.; Kramer, G.; Schaefer, R.F. Secure and Reliable Key Agreement with Physical Unclonable Functions. Entropy 2018, 20, 340. https://doi.org/10.3390/e20050340

AMA Style

Günlü O, Kernetzky T, İşcan O, Sidorenko V, Kramer G, Schaefer RF. Secure and Reliable Key Agreement with Physical Unclonable Functions. Entropy. 2018; 20(5):340. https://doi.org/10.3390/e20050340

Chicago/Turabian Style

Günlü, Onur, Tasnad Kernetzky, Onurcan İşcan, Vladimir Sidorenko, Gerhard Kramer, and Rafael F. Schaefer. 2018. "Secure and Reliable Key Agreement with Physical Unclonable Functions" Entropy 20, no. 5: 340. https://doi.org/10.3390/e20050340

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop