1. Introduction
PUFs derive their challenge–response behavior from uncontrollable manufacturing variations, including random deviations in device dimensions and gate oxide thickness. These unique variations generate distinct responses to specific challenges, making PUFs effective for device authentication and secure key generation [
1,
2,
3,
4,
5,
6,
7].
Arbiter PUF can generate numerous responses based on the applied challenge, while SRAM PUF and Butterfly PUF produce only a limited set of challenge-response pairs. Arbiter PUF generates challenge-response pairs using a delay-based mechanism. In contrast, SRAM PUF and Butterfly operate based on a memory-based bistable structure [
1,
2,
4,
6].
The feed-forward physically unclonable function introduces non-linearity through feed-forward loops, making the challenge-response behavior more complex and difficult to predict. This added non-linearity significantly enhances the computational effort required for attacks, thereby improving security for cryptographic key generation in applications such as IoT. Lata et al. [
6] present a comparative analysis of various PUF designs, highlighting their respective advantages as well as the challenges associated with each.
PUFs can generate unique, unclonable cryptographic keys for authentication and secure communication, making them suitable for applications in 5G networks [
5,
6,
7]. Environmental factors can lead to inaccuracies in the PUF response, resulting in a bit error rate that affects its reliability. This bit error rate can be mitigated by implementing an error correction coding technique for the PUF response [
8,
9,
10,
11,
12,
13].
Key performance metrics for a PUF design include uniqueness, reliability, randomness, bit error rate, area and power efficiency, and security against attacks. Our work focuses on error correction codes in PUFs, making reliability a critical metric that measures response consistency.
Reliability in data transmission and storage is achieved through Error Correction Coding (ECC) techniques, which identify and correct errors introduced by noise and hardware imperfections. Hamming codes, Reed-Solomon codes, LDPC, and polar codes are widely used to detect and rectify errors within communication systems [
8]. Low-Density Parity-Check (LDPC) codes can achieve error correction close to the theoretical limit with efficient decoding, making them highly effective for high-speed applications like 5G networks [
14,
15].
A wide range of approaches have been explored to apply the error correction coding scheme to physically unclonable functions [
8,
9,
16]. Hiller et al. [
8] provide a comparison of various combinations of PUF and channel coding techniques, analyzing bit error rates along with FPGA resource utilization, power consumption, and area as performance metrics. Jarvis et al. [
9] compare BCH codes and convolutional codes as error correction methods for PUF. Maes et al. [
16] implement a code-offset scheme using repetition and RM codes for SRAM PUF.
In our work, we utilize LDPC coding for reliable key production from a feed-forward arbiter PUF. The decoding process involves both bit-flipping and min-sum algorithms. The bit-flipping algorithm iteratively corrects erroneous bits based on parity check failures. While this approach is straightforward, it tends to perform poorly with high-error-rate PUF responses. Conversely, the min-sum algorithm, which serves as an approximation of belief propagation, optimizes check node updates to achieve near-Shannon-limit error correction while maintaining compact hardware utilization.
Background and related studies are discussed in
Section 2. The proposed method is outlined in
Section 3.
Section 4 presents the results and analysis, including a comparison with related work. Finally,
Section 5 addresses the challenges encountered and suggests possible future work to enhance the system.
3. Key Generation and Reconstruction
The key construction using the proposed method is shown in
Figure 5, and the key reconstruction method is shown in
Figure 6. The feed-forward PUF produces a response R with respect to an applied challenge. The reliability of feed-forward PUF is calculated by applying the same challenge multiple times. The secret key is constructed from the PUF response using the HASH (SHA 256) function.
Helper Data Generation
The helper data is computed as where R is the response from the feed-forward PUF, and C is the codeword generated by the LDPC encoder. The XOR operation is used because the LDPC code is linear, allowing the codeword to act as a mask for the noisy response. During key reconstruction, the device measures a noisy response R′. Using the stored helper data and the reconstruction algorithm, the decoder is able to recover C through the operation = = . This scheme does not increase hardware complexity and maintains a linear relationship, which is important for both security and entropy analysis. This helper data procedure is consistent with the code-offset construction in foundational fuzzy extractor designs. Helper data reduces the uncertainty of the PUF response. If H(R) represents the entropy of the puf response and H(R/P) represents the entropy of the response after observing helper data, then minimizing information leakage requires maximizing H(R/P) so that the helper data reveals as little as possible about R.
In the key reconstruction stage, the same physical unclonable function (PUF) is used to generate a response, denoted as R′, by applying the same challenge bits. However, R′ may differ from the original response R.
To recover the original information, R′ is XORed with helper data to produce a 128-bit codeword, C′. An LDPC (Low-Density Parity-Check) decoder is then utilized to retrieve the original codeword, C, from C′. The original PUF response is generated from the codeword C and the helper data. Finally, the response R is hashed to retrieve the secret keyword.
5. Conclusions and Future Work
Arbiter PUF and feed-forward PUF are designed, and reliability is measured by checking the Hamming distance of the PUF response for the same challenge bits. Our feed-forward PUF design gives a 40% reduction in switching power, a 38% increase in speed and a 43.1% decrease in area compared to earlier related work. The proposed method can handle noisy PUF responses efficiently with the help of a powerful channel coding technique (LDPC). We could achieve a reliability of 96% by using the minimum sum algorithm for decoding and 94% using the bit-flipping algorithm. LDPC encoding is performed with different code rates to observe the variation in hardware resource utilization, power and reliability. Reliability slightly decreases when the code rate is changed from 1/2 to 2/3 because the number of parity bits is decreased. We observed that increasing the codeword length results in higher power switching because a longer codeword leads to greater circuit activity.
The complex ECC decoding method consumes large amounts of power and area and this method may not be able to handle high error rates. As future work, resource-efficient error correction coding can be designed and used to increase reliability. Future research can focus on the design of decoders with optimized FPGA/ASIC implementation for IoT devices. We will incorporate complete post-layout results in our extended future work. We can use compact machine learning models to approximate complex decoding techniques. Adaptive decoding methods enhanced by machine learning methods will improve the reliability while minimizing resource utilization.