methods to enhance the puf reliability of key generation
play

Methods to Enhance the PUF Reliability of Key Generation from PUFs - PowerPoint PPT Presentation

Methods to Enhance the PUF Reliability of Key Generation from PUFs J.-L.Danger, F . Lozach, Z. Cherif PROOFS14, Busan, South Korea Introduction to PUF and its reliability Methods to improve the reliability Experimental results


  1. Methods to Enhance the PUF Reliability of Key Generation from PUFs J.-L.Danger, F . Lozac’h, Z. Cherif PROOFS’14, Busan, South Korea

  2. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Presentation Outline Introduction to PUF and its reliability Methods to improve the reliability Experimental results Presented by J.-L.Danger 2 27 Sept 14 Methods to Enhance the PUF Reliability

  3. Introduction to PUF and its reliability Methods to improve the reliability Experimental results PUF PUF reminder ◮ Device fingerprint ◮ Avoid Reverse engineering attack of NVM memory but ◮ Suffers from attacks and reliability problems This talk: ◮ presents methods to enhance the PUF reliability ◮ how to apply them to the “Loop PUF” ◮ presents the results from real devices (49 PUFs in ASIC 65nm) Presented by J.-L.Danger 3 27 Sept 14 Methods to Enhance the PUF Reliability

  4. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Loop PUF ◮ Set of N identical controllable delay chains of M elements forming a ring oscillator ◮ For each challenge of MxN bits, the time is measured ◮ The response is the sorting of the time obtained from the different challenges ◮ FPGA implementation presented by Cherif et al. 1 T 1 N measurement C 1 C N challenge C Figure: Example of LPUF composed of N delay chains of 1 element 1 Cherif et al. [CDGB12] Presented by J.-L.Danger 4 27 Sept 14 Methods to Enhance the PUF Reliability

  5. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Example of Key generation with the Loop PUF 1. Choose two equivalent challenges (same Hamming Weight) 2. Measure the Time T 1 with Challenge C 1 3. Measure the Time T 2 with Challenge C 2 4. The Key bit is given by KEY bit = sign ( T 1 − T 2 ) (1) Presented by J.-L.Danger 5 27 Sept 14 Methods to Enhance the PUF Reliability

  6. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Reliability issue ◮ The ∆ T = T 1 − T 2 measurement is highly dependant on the noise level, thus generating potential errors. ◮ An helper data is very useful to help correcting the errors Enrollment Use PUF ref. key noisy PUF key helper key helper correction creation Figure: Use of helpers to correct the key Presented by J.-L.Danger 6 27 Sept 14 Methods to Enhance the PUF Reliability

  7. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Studied Methods to improve the reliability 1. Selecting the challenges 2. Enlarging the PUF measurement window 3. Increasing the number of measurements 4. Removing the most unreliable bits 5. Correcting the key Presented by J.-L.Danger 7 27 Sept 14 Methods to Enhance the PUF Reliability

  8. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Selecting the challenges What are the best challenges to generate one key bit ? Answer : those having the maximum Hamming Distance Proof : as N � ∆ T = T 1 − T 2 = t i , C 1 i − t i , C 2 i (2) i = 1 Where t i , C 1 i represents the time of the elementary delay element i controlled by the challenge bit C 1 i . ⇒ The total number of elementary delays involved in ∆ T is the Hamming distance HD ( C 1 , C 2 ) between the two challenges. ⇒ For one key bit, choose two equivalent and complementary challenges (HW= N / 2, HD= N ) Presented by J.-L.Danger 8 27 Sept 14 Methods to Enhance the PUF Reliability

  9. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Selecting the challenges : all key bits The Hamming distance between complementary challenge pair and the other pairs must be as great as possible to avoid correlated key bits. references : ◮ ⇒ Use of Constant Weight Codes A ( n , d , w ) , studied in [BSR, CDG + 13, CCD + ] Table: Lower Bound of Constant Weight Codes d n/2 n/3 n/4 n/5 n/6 n/7 (n,w) (12,6) 22 132 ? - ? - (16,8) 30 - 1170 - - - (18,9) 34 424 - - ? - (20,10) 38 - ? 13452 - - (24,12) 46 2576 15906 - 151484 - (28,14) 54 - ? - - 1535756 (30,15) 58 19210 - ? ? - Presented by J.-L.Danger 9 27 Sept 14 Methods to Enhance the PUF Reliability

  10. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Enlarging the PUF measurement window ◮ Based on an increase of the measurement time. ◮ Classical methods for RO-PUF [DV13]. The noise can be reduced when enlarging the measurement window (width = mw ) ∆ T = T 1 − T 2 + n ( t ) (3) n ( t ) ∼ N ( 0 , s 2 / mw ) (4) but this can increase significantly the key generation time. Presented by J.-L.Danger 10 27 Sept 14 Methods to Enhance the PUF Reliability

  11. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Increasing the Number of Measurement ◮ The principle is to repeat the measurement of ∆ T R times. ◮ Method very similar to the Time Majority voting presented in [AMS + 10]. n ( t ) ∼ N ( 0 , s 2 / R ) (5) ◮ The difference with enlarging mw is that the repetition R of the measurement can be controlled dynamically. ◮ If ∆ T is not above a fixed threshold Th , There is a new measurement Presented by J.-L.Danger 11 27 Sept 14 Methods to Enhance the PUF Reliability

  12. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Removing the most unreliable key bits ◮ A helper data is needed in order to indicate the most unreliable bits [HB10]. ◮ the error probability depends on the probability of having | ∆ T | less than the Threshold | Th | . � | Th | � Pr ( | ∆ T | < | Th | ) = erf √ (6) σ 2 1.2 1 0.8 0.6 pdf( ∆ T)= Ν (0, σ 2 ) pdf( ∆ T 1 )= Ν (E( ∆ T 1 ),s 2 ) 0.4 0.2 0 -8 -6 -4 -2 0 2 4 6 8 -Th Th Presented by J.-L.Danger 12 27 Sept 14 Methods to Enhance the PUF Reliability

  13. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Correcting the key ◮ Well known method explained in many papers [GCvDD02], [MTV09] ◮ based on error-correction codes (ECC) to correct errors ◮ The helper indicates the code ◮ The method can take advantage of the less reliable bits knowledge (case of the Loop PUF). For instance: ◮ combine a low-cost Hamming codes ◮ and the Chase algorithm [Cha72] Presented by J.-L.Danger 13 27 Sept 14 Methods to Enhance the PUF Reliability

  14. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Setup and parameters ◮ Methods tested on ASIC prototype embedding 49 Loop PUFs. ◮ 3 result types: 1. The error rate. shows the performance of the key generation procedure in terms of reliability. 2. The Key length. depends on both the number of challenge pairs and the number of ignored unreliable bits mnib . 3. The key generation time consumption. influenced by both the measurement window mw and the number of unreliable bits mnib . Presented by J.-L.Danger 14 27 Sept 14 Methods to Enhance the PUF Reliability

  15. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Unstable bits Cartography of the 49 PUFs: Cartography of the number of unstable bits per PUF 10 6 8 5 Nb. of unreliable bits 4 6 chip row 3 4 2 1 2 0 0 0 1 2 3 4 5 6 chip column Presented by J.-L.Danger 15 27 Sept 14 Methods to Enhance the PUF Reliability

  16. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Key Generation Time Consumption mnib = 0 mnib = 1 mnib = 2 mnib = 3 mnib = 4 100 Key generation time consumption (in milliseconds) mnib = 5 mnib = 6 mnib = 7 mnib = 8 mnib = 9 mnib = 10 10 1 0xa 0xb 0xc 0xd 0xe 0xf Window width Figure: Impact of mnib and the mw on the key generation time. Presented by J.-L.Danger 16 27 Sept 14 Methods to Enhance the PUF Reliability

  17. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Error Rate Evaluation Without Correction Scheme 1 mnib = 0 mnib = 1 mnib = 2 0.1 mnib = 3 mnib = 4 mnib = 5 0.01 mnib = 6 mnib = 7 mnib = 8 0.001 mnib = 9 mnib = 10 Binary Error Rate 0.0001 1e-05 1e-06 1e-07 1e-08 <10e-9 0.001 0.01 0.1 1 Key generation time consumption (s) Figure: BER evolution without correction schemes when varying the mnib parameter. Presented by J.-L.Danger 17 27 Sept 14 Methods to Enhance the PUF Reliability

  18. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Error Rate Evaluation With Correction Scheme 1 mnib=0 mnib=1 mnib=2 0.1 mnib=3 0.01 0.001 Binary Error Rate 0.0001 1e-05 1e-06 1e-07 1e-08 <10e-9 0.01 0.1 Key generation time (s) Figure: BER evolution when varying the key length using a correction scheme. Presented by J.-L.Danger 18 27 Sept 14 Methods to Enhance the PUF Reliability

  19. Introduction to PUF and its reliability Methods to improve the reliability Experimental results Hardware Implementation Complexity Table: Hardware complexity of the error correction algorithm: number of occupied slices in Xilinx Virtex 5 technology. Loop PUF complexity 20 adaptive key quantification 97 Key correction complexity 0 235 Total complexity 117 352 10 − 9 10 − 5 BER at 10 ms 10 − 9 10 − 9 BER at 100 ms key length ≥ 56 ≥ 61 Presented by J.-L.Danger 19 27 Sept 14 Methods to Enhance the PUF Reliability

Recommend


More recommend