Physical unclonable function

Physical unclonable function (PUF, sometimes also called physically unclonable function) is a physical entity that is embodied in a physical structure and is easy to evaluate but hard to predict. Further, an individual PUF device must be easy to make but practically impossible to duplicate, even given the exact manufacturing process that produced it. In this respect it is the hardware analog of a one-way function. The name "physical unclonable function" might be a little misleading as some PUFs are clonable, and most PUFs are noisy and therefore do not achieve the requirements for a function.

Contents

Early references that exploit the physical properties of disordered systems for authentication purposes date back to Bauder in 1983[1] and Simmons in 1984.[2][3] Naccache and Frémanteau provided an authentication scheme in 1992 for memory cards.[4] The terms POWF (physical one-way function) and PUF (physical unclonable function) were coined in 2001[5] and 2002,[6] the latter publication describing the first integrated PUF where unlike PUFs based on optics, the measurement circuitry and the PUF are integrated onto the same electrical circuit (and fabricated on silicon).

Rather than embodying a single cryptographic key, PUFs implement challenge–response authentication. When a physical stimulus is applied to the structure, it reacts in an unpredictable (but repeatable) way due to the complex interaction of the stimulus with the physical microstructure of the device. This exact microstructure depends on physical factors introduced during manufacture which are unpredictable (like a fair coin). The applied stimulus is called the challenge, and the reaction of the PUF is called the response. A specific challenge and its corresponding response together form a challenge–response pair or CRP. The device's identity is established by the properties of the microstructure itself. As this structure is not directly revealed by the challenge-response mechanism such a device is resistant to spoofing attacks.

PUFs can be implemented with a very small hardware investment. Unlike a ROM containing a table of responses to all possible challenges, which would require hardware exponential in the number of challenge bits, a PUF can be constructed in hardware proportional to the number of challenge and response bits.

Unclonability means that each PUF device has a unique and unpredictable way of mapping challenges to responses, even if it was manufactured with the same process as a similar device, and it is infeasible to construct a PUF with the same challenge–response behavior as another given PUF because exact control over the manufacturing process is infeasible. Mathematical unclonability means that it should be very hard to compute an unknown response given the other CRPs or some of the properties of the random components from a PUF. This is because a response is created by a complex interaction of the challenge with many or all of the random components. In other words, given the design of the PUF system, without knowing all of the physical properties of the random components, the CRPs are highly unpredictable. The combination of physical and mathematical unclonability renders a PUF truly unclonable.

Different sources of physical randomness can be used in PUFs. A distinction is made between PUFs in which physical randomness is explicitly introduced and PUFs that use randomness that is intrinsically present in a physical system.

All PUFs are subject to environmental variations such as temperature, supply voltage and Electromagnetic interference, which can affect their performance. Therefore, rather than just being random, the real power of a PUF is its ability to be different between devices, but simultaneously to be the same under different environmental conditions.

This type of PUF can have a much greater ability to distinguish devices from one another and have minimal environmental variations compared to PUFs that utilize intrinsic randomness. This is due to the use of different underlying principles and the ability for parameters to be directly controlled and optimized.

Unlike PUFs that utilize explicitly-introduced randomness, PUFs using intrinsic randomness are highly attractive because they can be included in a design without modifications to the manufacturing process.

In different application it is important that the output is stable. If the PUF is used for a key in cryptographic purposes it is necessary that error correction will be done. In principle there are two basic concepts: Pre-Processing and Post-Processing Error Correction.[7][8]

Proposed PUFs are not necessarily unclonable and many have been successfully attacked in a laboratory environment.[9]

Despite being named "physical unclonable", a research team from Berlin Institute of Technology was able to clone an SRAM PUF within 20 hours using tools readily available in university failure analysis labs.[9] In this work only SRAM (Static RAM) cells of a microcontroller were read out.

From 2010 onwards till 2013, PUF gained attention in the smartcard market as a promising way to provide “silicon fingerprints”, creating cryptographic keys that are unique to individual smartcards.[10][11] However, university research has shown that delay-based PUF implementations are vulnerable to side channel attacks[12][13] and recommends that countermeasures be employed in the design to prevent this type of attack. Also, improper implementation of PUF could introduce "backdoors" to an otherwise secure system.[14][15] In June 2012, Dominik Merli, a scientist at Fraunhofer Research Institution for Applied and Integrated Security (AISEC) further claimed that PUF introduces more entry points for hacking into a cryptographic system and that further investigation into the vulnerabilities of PUFs is required before PUFs can be used in practical security-related applications.[16] The presented attacks are all on PUFs implemented in insecure systems, such as FPGA or Static RAM (SRAM). It is also important to ensure, that the environment is suitable for the needed security level.[7]