Skip to main content
Log in

Novel Randomized Placement for FPGA Based Robust ROPUF with Improved Uniqueness

  • Published:
Journal of Electronic Testing Aims and scope Submit manuscript

A Correction to this article was published on 01 October 2019

This article has been updated

Abstract

The physical unclonable functions (PUFs) are used to provide software as well as hardware security for the cyber-physical systems. They have been used for performing significant cryptography tasks such as generating keys, device authentication, securing against IP piracy, and to produce the root of trust as well. However, they lack in reliability metric. We present a novel approach for improving the reliability as well as the uniqueness of the field programmable gated arrays (FPGAs) based ring oscillator PUF and derive a random number, consuming very small area (< 1%) concerning look-up tables (LUTs). We use frequency profiling method for distributing frequency variations in ring oscillators (RO), spatially placed all across the FPGA floor. We are able to spot suitable locations for RO mapping, which leads to enhanced ROPUF reliability. We have evaluated the proposed methodology on Xilinx -7 series FPGAs and tested the robustness against environmental variations, e.g. temperature and supply voltage variations, simultaneously. The proposed approach achieves significant improvement (i) in uniqueness value upto 49.90%, within 0.1% of the theoretical value (ii) in the reliability value upto 99.70%, which signifies that less than 1 bit flipping has been observed on average, and (iii) in randomness, signified by passing NIST test suite. The response generated through the ROPUF passes all the applicable relevant tests of NIST uniformity statistical test suite.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19

Similar content being viewed by others

Change history

  • 19 December 2019

    The original article unfortunately contained a mistake. Corrections provided in a list form were not carried out.

References

  1. Anandakumar NN, Hashmi MS, Sanadhya SK (2017) Compact implementations of FPGA-based PUFs with enhanced performance. In: Proceedings of 2017 30th international conference on VLSI design and 2017 16th international conference on embedded systems (VLSID), pp 161–166

  2. Arthur D, Vassilvitskii S (2007) K-means++: the advantages of careful seeding. In: Proceedings of the eighteenth annual ACM-SIAM symposium on discrete algorithms, SODA ’07. Society for Industrial and Applied Mathematics, Philadelphia, pp 1027–1035

  3. Bakiri M, Guyeux C, Couchot JF, Oudjida AK (2018) Survey on hardware implementation of random number generators on FPGA: Theory and experimental analyses. Computer Science Review 27:135–153

    Article  MathSciNet  Google Scholar 

  4. Barbareschi M, Natale GD, Bruguier F, Benoit P, Torres L (2016) Ring oscillators analysis for security purposes in Spartan-6 FPGAs. Microprocess Microsyst 47:3–10

    Article  Google Scholar 

  5. Bassham LE III, Rukhin AL, Soto J, Nechvatal JR, Smid ME, Barker EB, Leigh SD, Levenson M, Vangel M, Banks DL, Heckert NA, Dray JF, Vo S (2010) Sp 800-22 rev. 1a. A statistical test suite for random and pseudorandom number generators for cryptographic applications. Tech. rep., NIST, Gaithersburg, MD, United States

  6. Bolotnyy L, Robins G (2007) Physically unclonable function-based security and privacy in RFID systems. In: Proceedings of fifth annual IEEE international conference on pervasive computing and communications (percom’07), pp 211–220

  7. Böhm C., Hofer M, Pribyl W (2011) A microcontroller SRAM-PUF. In: Proceedings of 2011 5th international conference on network and system security, pp 269–273

  8. Chauhan AS, Sahula V, Mandal AS (2018) Novel placement bias for realizing highly reliable physical unclonable functions on FPGA. In: Proceedings of 2018 IEEE international conference on electronics, computing and communication technologies (CONECCT), pp 1–6

  9. Chauhan AS, Sahula V, Mandal AS (2019) Novel randomized biased placement for FPGA based robust random number generator with enhanced uniqueness. In: Proceedings of 2019 32nd international conference on VLSI design and 2019 18th international conference on embedded systems (VLSID), pp 353–358

  10. Daihyun L, Lee JW, Gassend B, Suh GE, van Dijk M, Devadas S (2005) Extracting secret keys from integrated circuits. IEEE Trans Very Large Scale Integr VLSI Syst 13(10):1200–1205

    Article  Google Scholar 

  11. Delvaux J, Verbauwhede I (2013) Side channel modeling attacks on 65nm arbiter PUFs exploiting CMOS device noise. In: Proceeidngs of 2013 IEEE international symposium on hardware-oriented security and trust (HOST), pp 137–142

  12. Delvaux J, Verbauwhede I (2014) Fault injection modeling attacks on 65 nm arbiter and ro sum pufs via environmental changes. IEEE Trans Circuits Syst Regul Pap 61(6):1701–1713

    Article  Google Scholar 

  13. Dempster AP, Laird NM, Rubin DB (1977) Maximum likelihood from incomplete data via the EM algorithm. J R Stat Soc Ser B 39(1):1–38

    MathSciNet  MATH  Google Scholar 

  14. Dichtl M, Golić JD (2007) High-speed true random number generation with logic gates only. In: Paillier P, Verbauwhede I (eds) Cryptographic hardware and embedded systems - CHES 2007. Springer, Berlin, pp 45–62

  15. Gan J, Zhou J, Wang N (2018) A FPGA-based RO PUF with LUT-based self-compare structure and adaptive counter time period tuning. In: Proceedings of 2018 IEEE international symposium on circuits and systems (ISCAS), pp 1–5

  16. Gassend B, Clarke D, van Dijk M, Devadas S (2002) Silicon physical random functions. In: Proceedings of the 9th ACM Conference on Computer and Communications Security, CCS ’02. ACM, New York, pp 148–160

  17. Gu C, Hanley N, O’neill M (2017) Improved reliability of FPGA-based PUF identification generator design. ACM Trans Reconfigurable Technol Syst 10(3):20:1–20:23

    Article  Google Scholar 

  18. Gu C, Liu W, Hanley N, Hesselbarth R, O’Neill M (2019) A theoretical model to link uniqueness and min-entropy for PUF evaluations. IEEE Trans Comput 68(2):287–293

    Article  MathSciNet  Google Scholar 

  19. Guajardo J, Kumar S, Schrijen G, Tuyls P (2007) FPGA intrinsic PUFs and their use for IP protection. In: Proceedings of the 9th international workshop on cryptographic hardware and embedded systems, CHES ’07. Springer, Berlin, pp 63–80

  20. Herkle A, Mandry H, Becker J, Ortmanns M (2019) In-depth analysis and enhancements of RO-PUFs with a partial reconfiguration framework on Xilinx Zynq-7000 SoC FPGAs. In: Proceeidngs of 2019 IEEE international symposium on hardware oriented security and trust (HOST), pp 238–247

  21. Hesselbarth R, Wilde F, Gu C, Hanley N (2018) Large scale RO PUF analysis over slice type, evaluation time and temperature on 28nm Xilinx FPGAs. In: Proceedings of 2018 IEEE international symposium on hardware oriented security and trust (HOST), pp 126–133

  22. Holcomb DE, Burleson WP, Fu K (2009) Power-up SRAM state as an identifying fingerprint and source of true random numbers. IEEE Trans Comput 58(9):1198–1210

    Article  MathSciNet  Google Scholar 

  23. Johnson AP, Chakraborty RS, Mukhopadhyay D (2015) A PUF-enabled secure architecture for FPGA-based IoT applications. IEEE Transactions on Multi-Scale Computing Systems 1(2):110–122

    Article  Google Scholar 

  24. Kanuparthi A, Karri R, Addepalli S (2013) Hardware and embedded security in the context of internet of things. In: Proceedings of the 2013 ACM workshop on security, privacy & dependability for cyber vehicles, CyCAR ’13. ACM, New York, pp 61–64

  25. Kodýtek F, Lórencz R, Buc̆ek J (2016) Improved ring oscillator PUF on FPGA and its properties. Microprocess Microsyst 47:55–63

    Article  Google Scholar 

  26. Kömürcü G, Pusane AE, Dündar G (2013) Dynamic programming based grouping method for RO-PUFs. In: Proceedings of the 2013 9th conference on Ph.D. research in microelectronics and electronics (PRIME), pp 329–332

  27. Kumar S, Guajardo J, Maes R, Schrijen G, Tuyls P (2008) Extended abstract: the butterfly PUF protecting IP on every FPGA. In: Proceedings of 2008 IEEE international workshop on hardware-oriented security and trust, pp 67–70

  28. Lewis TG, Payne WH (1973) Generalized feedback shift register pseudorandom number algorithm. Journal of ACM (J ACM) 20(3):456–468

    Article  Google Scholar 

  29. Ma Q, Gu C, Hanley N, Wang C, Liu W, O’Neill M (2018) A machine learning attack resistant multi-PUF design on FPGA. In: Proceedings of 2018 23rd Asia and South Pacific design automation conference (ASP-DAC), pp 97–104

  30. Maes R, Maes R, Darmstadt TU (2012) Physically unclonable functions: Constructions, properties and applications. In: Ph.D. thesis, KU Leuven (2012), Ingrid Verbauwhede (promotor)

  31. Maiti A, Casarona J, McHale L, Schaumont P (2010) A large scale characterization of RO-PUF. In: Proceedings of 2010 IEEE international symposium on hardware-oriented security and trust (HOST), pp 94–99

  32. Maiti A, Schaumont P (2011) Improved ring oscillator PUF: an FPGA-friendly secure primitive. J Cryptol 24(2):375–397

    Article  MathSciNet  Google Scholar 

  33. Maiti A, Gunreddy V, Schaumont P (2013) A systematic method to evaluate and compare the performance of physical unclonable functions. Springer, New York, pp 245–267

    Google Scholar 

  34. Nozaki Y, Yoshikawa M (2020) Security evaluation of ring oscillator PUF against genetic algorithm based modeling attack. In: Barolli L, Xhafa F, Hussain OK (eds) Innovative mobile and internet services in ubiquitous computing. Springer International Publishing, Cham, pp 338–347

    Google Scholar 

  35. Pappu R, Recht B, Taylor J, Gershenfeld N (2002) Physical one-way functions. Science 297 (5589):2026–2030

    Article  Google Scholar 

  36. Rokach L, Maimon O (2005) Clustering methods. Springer, Boston, pp 321–352

    Google Scholar 

  37. Rostami M, Koushanfar F, Karri R (2014) A primer on hardware security: models, methods, and metrics. Proc IEEE 102(8):1283–1295

    Article  Google Scholar 

  38. Rührmair U, Sehnke F, Sölter J, Dror G, Devadas S, Schmidhuber J (2010) Modeling attacks on physical unclonable functions. In: Proceedings of the 17th ACM conference on computer and communications security, CCS ’10. ACM, New York, pp 237–249

  39. Saha I, Jeldi RR, Chakraborty RS (2013) Model building attacks on physically unclonable functions using genetic programming. In: Proceedings of 2013 IEEE international symposium on hardware-oriented security and trust (HOST), pp 41–44

  40. Sahoo SR, Kumar S, Mahapatra K (2015) A modified configurable RO PUF with improved security metrics. In: Proceedings of 2015 IEEE international symposium on nanoelectronic and information systems, pp 320–324

  41. Simons P, van der Sluis E, van der Leest V (2012) Buskeeper PUFs, a promising alternative to D flip-flop PUFs. In: Proceedings of 2012 IEEE international symposium on hardware-oriented security and trust (HOST), pp 7–12

  42. Suh GE, Devadas S (2007) Physical unclonable functions for device authentication and secret key generation. In: Proceedings of 2007 44th ACM/IEEE design automation conference, pp 9–14

  43. Tang B, Lin Y, Zhang J (2014) Improving the reliability of RO PUF using frequency offset. In: Proceedings of 2014 international conference on field-programmable technology (FPT), pp 338–341

  44. Tehranipoor F, Karimian N, Yan W, Chandy JA (2017) A study of power supply variation as a source of random noise. In: Proceedings of 2017 30th international conference on VLSI design and 2017 16th international conference on embedded systems (VLSID), pp 155–160

  45. Vyas S, Dumpala NK, Tessier R, Holcomb DE (2016) Improving the efficiency of PUF-based key generation in FPGAs using variation-aware placement. In: Proceedings of 2016 26th international conference on field programmable logic and applications (FPL), pp 1–4

  46. Wang Q, Gao M, Qu G (2018) A machine learning attack resistant dual-mode PUF. In: Proceedings of the 2018 on great lakes symposium on VLSI, GLSVLSI ’18. ACM, New York, pp 177–182

  47. Xilinx-Inc (2013) Vivado design suite tcl command reference guide. https://www.xilinx.com/support/documentation/sw_manuals/xilinx2013_4/ug835-vivado-tcl-commands.pdf. Accessed 22. 07. 2019

  48. Xilinx-Inc (2013) Vivado design suite user guide using constraints. https://www.xilinx.com/support/documentation/sw_manuals/xilinx2014_4/ug903-vivado-using-constraints.pdf https://www.xilinx.com/support/documentation/sw_manuals/xilinx2014_4/ug903-vivado-using-constraints.pdf. Accessed 22 07 2019

  49. Xilinx-Inc (2013) Zynq-7000 SoC technical reference manual. https://www.xilinx.com/support/documentation/user_guides/ug585-Zynq-7000-TRM.pdf. Accessed 22 07 2019

  50. Yamamoto D, Sakiyama K, Iwamoto M, Ohta K, Takenaka M, Itoh K (2013) Variety enhancement of PUF responses using the locations of random outputting RS latches. J Cryptogr Eng 3(4):197–211

    Article  Google Scholar 

  51. Yan W, Jin C, Tehranipoor F, Chandy JA (2017) Phase calibrated ring oscillator PUF design and implementation on FPGAs. In: Proceedings of 2017 27th international conference on field programmable logic and applications (FPL), pp 1–8

  52. Yin C-E, Qu G (2009) Temperature-aware cooperative ring oscillator PUF. In: Proceedings of 2009 IEEE international workshop on hardware-oriented security and trust, pp 36–42

  53. Yin C, Qu G (2013) Improving PUF security with regression-based distiller. In: Proceedings of 2013 50th ACM/EDAC/IEEE design automation conference (DAC), pp 1–6

  54. Yin C, Qu G, Zhou Q (2013) Design and implementation of a group-based RO PUF. In: Proceedings of 2013 design, automation test in europe conference exhibition (DATE), pp 416–421

  55. Yu H, Leong PHW, Xu Q (2010) An FPGA chip identification generator using configurable ring oscillator. In: Proc. of 2010 international conference on field-programmable technology, pp 312–315

  56. Zhang Q, Liu Z, Ma C, Li C, Zhang L (2017) FROPUF: How to extract more entropy from two ring oscillators in FPGA-based PUFs. In: Deng R, Weng J, Ren K, Yegneswaran V (eds) Security and privacy in communication networks. Springer International Publishing, Cham, pp 675–693

    Google Scholar 

Download references

Acknowledgements

We also gratefully acknowledge SMDP-C2SD project (ODRC No. 1000110086) project funded by Ministry of Electronics & IT, Government of India for technical support. We are thankful to Mr Bharat Kasyap, MNIT, Jaipur to provide support for experimental setup design.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vineet Sahula.

Additional information

Responsible Editor: K. Basu

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

The original version of this article was revised: A number of corrections from the author were not carried out.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Chauhan, A.S., Sahula, V. & Mandal, A.S. Novel Randomized Placement for FPGA Based Robust ROPUF with Improved Uniqueness. J Electron Test 35, 581–601 (2019). https://doi.org/10.1007/s10836-019-05829-5

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10836-019-05829-5

Keywords

Navigation