[Paper Review] Using Convolutional Codes for Key Extraction in SRAM Physical Unclonable Functions
This paper proposes using soft-input Viterbi decoding, list decoding, and sequential decoding with convolutional codes to improve key reconstruction in SRAM PUFs without discarding unreliable response bits. By leveraging reliability metrics as soft inputs, it achieves a key error probability below 10⁻⁶ with a rate 1/3 code of memory length 7, reducing failure rates and eliminating the need for ROVA or bit selection.
Physical Unclonable Functions (PUFs) exploit variations in the manufacturing process to derive bit sequences from integrated circuits, which can be used as secure cryptographic keys. Instead of storing the keys in an insecure, non-volatile memory, they can be reproduced when needed. Since the reproduced sequences are not stable due to physical reasons, error correction must be applied. Recently, convolutional codes were shown to be suitable for key reproduction in PUFs based on SRAM. This work shows how to further decrease the reconstruction failure probability and PUF implementation size using codes with larger memory length and decoding concepts such as soft-information and list decoding.
Motivation & Objective
- Address the challenge of high key reconstruction failure rates in SRAM PUFs due to environmental variations and non-stable responses.
- Overcome the limitations of prior methods that discard unreliable PUF response bits or rely on ROVA for bit selection.
- Reduce PUF implementation size and complexity by avoiding bit selection and minimizing helper data overhead.
- Improve error correction performance using advanced decoding techniques such as soft-input decoding and list decoding.
- Demonstrate that using all response bits with reliability information as soft input significantly enhances key reconstruction accuracy.
Proposed method
- Apply convolutional codes with memory length μ and rate 1/2 or 1/3 to encode PUF responses for error correction.
- Use soft-input Viterbi decoding by translating individual bit reliability values into soft metrics (e.g., log-likelihood ratios) at the decoder input.
- Implement list decoding with list size ℒ to improve error correction beyond single-path Viterbi decoding.
- Employ sequential decoding using Fano’s algorithm to reduce decoding complexity for high-memory-length codes.
- Use a binary symmetric channel (BSC) model with varying crossover probabilities p_i to simulate PUF response errors.
- Compare performance across different code parameters (μ, rate, ℒ) and decoding strategies using Monte Carlo simulations with up to 10⁷ readouts.
Experimental results
Research questions
- RQ1Can soft-input Viterbi decoding reduce key reconstruction failure probability in SRAM PUFs compared to hard-decision decoding?
- RQ2Does using all PUF response bits—including unreliable ones—via soft information improve error correction performance compared to threshold-based bit rejection?
- RQ3Can list decoding with increased list size ℒ further reduce error probability without excessive complexity?
- RQ4How does sequential decoding compare to Viterbi decoding in terms of complexity and error performance for high-memory-length convolutional codes?
- RQ5Is it possible to achieve a key error probability below 10⁻⁶ with a smaller code memory length by using soft information and advanced decoding?
Key findings
- Using soft-input Viterbi decoding with a rate 1/3 convolutional code of memory length 7 achieves a key error probability of approximately 1.73×10⁻², significantly better than hard-decision decoding.
- For a rate 1/3 code with memory length 9, the key error probability drops below 10⁻⁶, achieving a failure rate of less than 1×10⁻⁷ with list decoding and 3 readouts.
- The use of soft information allows all PUF response bits to be used, eliminating the need to discard up to 1/3 of bits when using a threshold p_T ≈ 0.2.
- Sequential decoding with Fano’s algorithm reduces decoding complexity for high-memory-length codes, achieving error probabilities around 10⁻⁶ for μ = 20 and 10⁻⁷ for μ = 24.
- List decoding with list size ℒ = 3 reduces the error probability from 2.24×10⁻² (single path) to 5.70×10⁻⁵ for a (3,1,[6]) code, demonstrating significant improvement.
- The proposed method avoids ROVA (Response-Only-Verification-Algorithm) overhead, reducing implementation complexity and area requirements in PUF systems.
Better researchstarts right now
From reading papers to final review, dramatically reduce your research time.
No credit card · Free plan available
This review was created by AI and reviewed by human editors.