Physical Unclonable Function

A Physical Unclonable Function (PUF) is hardware that acts as a one-way function, whose each different instance provides different unique outputs for the same distinct input. Although recent research has demonstrated the merits of PUFs as security primitives for resource-constrained computer systems, better implementations of them need to be identified by future research, in order for them to be commercially adopted.

Table of Content [Hide]

Physical(ly) Unclon(e)able Functions (PUFs) are instances of hardware modules that ideally act as one-way functions, each of which provides different output for the same input. Therefore, each PUF instance ideally implements a unique function, making its reproduction hard to achieve and, in this way, leading to a notion of unclon(e)ability.

The implementation of PUFs is usually based on the existence of minor imperfections in hardware modules produced using the exact same manufacturing process. Such imperfections do not affect normal operation in a notic(e)able way, but introduce unique (secondary) characteristics. These characteristics are then exploited under specific conditions, being referred to as the challenge that is fed into the PUF, in order to extract a unique (binary) response from the hardware module, based on its unique imperfections and characteristics.

A number of hardware modules and characteristics have been utilised for the implementation of PUFs, such as the unique reflection of optical materials [1], the delay characteristics of arbiters [2][3] and ring oscillators [4], the capacitance of coating materials [5], the start-up values of SRAMs [6][7] and DRAMs [8] and the decay characteristics of DRAM cells [9][10][11]. The concept of a physical one-way function can also be traced in literature dating from many decades ago [12].

PUFs are usually classified into weak ones, which provide a single or very few Challenge-Response Pairs (CRPs), and strong ones, which provide such a large number of CRPs that their complete characterisation within a limited time frame is not possible [13]. Although this classification is important regarding the level of security a PUF can provide, it is also not always completely clear whether a PUF implementation can be considered as weak or strong, as well-known "strong" PUFs have proven vulnerable to modelling or machine learning attacks performed within limited time and, the number of CRPs that can be considered large enough to prevent the complete characterisation of a PUF, obviously, differs for each implementation.

PUFs have proven to be an important security primitive that can be used for cryptographic applications, especially in devices that are resource-constrained and cannot support other security mechanisms.  However, a number of attacks against them have brought their role as an adequate security mechanism into question. Therefore, current research is focused on the examination of novel PUF implementations with potentially better qualities and/or the improvement of currently available ones.

Finally, it should also be mentioned that the responses of a particular PUF for a specific challenge at different times typically incorporate a certain degree of noise. Therefore, quite often, fuzzy schemes, such as fuzzy extractors [14], are employed in order to stabilise the PUF responses and usually, at the same time, convert them to bit strings of full binary entropy, which can then be used in cryptography, either as keys or tokens etc.


  1. Pappu, Ravikanth and Recht, Ben and Taylor, Jason and Gershenfeld, Neil; Physical one-way functions. Science 2002, 297, 2026--2030, 10.1126/science.1074376.
  2. Gassend, B.; Clarke, D.; van Dijk, M.; Devadas, S. Silicon Physical Random Functions. In Proceedings of the 9th ACM Conference on Computer and Communications Security; ACM: New York, NY, USA, 2002; pp. 148–160.
  3. Gassend, B.L.P. Physical Random Functions. Master’s Thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 2003.
  4. Suh, G.E.; Devadas, S. Physical Unclonable Functions for Device Authentication and Secret Key Generation. In Proceedings of the 44th Annual Design Automation Conference, San Diego, CA, USA, 4–8 June 2007; pp. 9–14.
  5. Tuyls, P.; Schrijen, G.J.; Škorić, B.; Van Geloven, J.; Verhaegh, N.; Wolters, R. Read-Proof Hardware from Protective Coatings. In International Workshop on Cryptographic Hardware and Embedded Systems; Springer: Berlin, Germany, 2006; pp. 369–383.
  6. Guajardo, J.; Kumar, S.S.; Schrijen, G.J.; Tuyls, P. FPGA Intrinsic PUFs and their Use for IP Protection. In International Workshop on Cryptographic Hardware and Embedded Systems; Springer: Berlin, Germany, 2007; pp. 63–80.
  7. Holcomb, D.E.; Burleson, W.P.; Fu, K. Initial SRAM State as a Fingerprint and Source of True Random Numbers for RFID Tags. In Proceedings of the Conference on RFID Security, Malaga, Spain, 11–13 July 2007.
  8. Tehranipoor, F.; Karimian, N.; Xiao, K.; Chandy, J. DRAM Based Intrinsic Physical Unclonable Functions for System Level Security. In Proceedings of the Great Lakes Symposium on VLSI, Pittsburgh, PA, USA, 20–22 May 2015; pp. 15–20.
  9. Fainstein, D.; Rosenblatt, S.; Cestero, A.; Robson, N.; Kirihata, T.; Iyer, S.S. Dynamic Intrinsic Chip ID Using 32nm High-K/Metal Gate SOI Embedded DRAM. In Proceedings of the 2012 Symposium on VLSI Circuits (VLSIC), Honolulu, HI, USA, 13–15 June 2012; pp. 146–147.
  10. Okamura, T.; Minematsu, K.; Tsunoo, Y.; Iida, T.; Kimura, T.; Nakamura, K. DRAM PUF (in Japanese). In Proceedings of the 29th Symposium on Cryptography and Information Security (SCIS 2012); Institute of Electronics, Information and Communication Engineers: Tokyo, Japan, 2012.
  11. Keller, C.; Felber, N.; Gürkaynak, F.; Kaeslin, H.; Junod, P. Physically Unclonable Functions for Secure Hardware (poster); RTD 2010—QCrypt; Swiss National Science Foundation (SNSF): Bern, Switzerland; Nano-Tera.CH: Lausanne, Switzerland, 2012.
  12. Pappu, Ravikanth and Recht, Ben and Taylor, Jason and Gershenfeld, Neil; Physical one-way functions. Science 2002, 297, 2026--2030, 10.1126/science.1074376.
  13. Dodis, Y.; Reyzin, L.; Smith, A. Fuzzy Extractors: How to Generate Strong Keys from Biometrics and Other1378 Noisy Data. Advances in Cryptology - EUROCRYPT 2004; Cachin, C.; Camenisch, J.L., Eds.; Springer1379 Berlin Heidelberg: Berlin, Heidelberg, 2004; pp. 523–540. doi:10.1007/978-3-540-24676-3_31.