March 30,2020

NeoPUF, A Reliable and Non-traceable Quantum Tunneling PUF

By Charles Hsu (Chairman of eMemory and PUFsecurity) and Meng-Yi Wu (PUFsecurity, the subsidiary of eMemory)

PUF stands for “Physically Unclonable Function” and is a physically derived “fingerprint” that serves as a unique identity for semiconductor devices. Their properties depend on the uniqueness and randomness of the physical factors induced during the manufacturing stage of a chip. These physical variations are unpredictable and unclonable; that’s why PUFs are suitable to serve as a root of trust with security functions in devices. In practice, we could transfer those microvariations of PUFs into sequences that consists of 0 and 1 in order to be used as keys, identities, or nonce for advanced security functions.

Since there are many ways to produce PUFs, there will also be many differences in its performance. Generally, PUFs can be evaluated by four dimensions including randomness, uniqueness, robustness and traceability as defined below:

  • Randomness: PUFs depend on random physical factors introduced during manufacturing. The value derived from each PUF should be unpredictable, or at the very least, very hard to predict. Statistically, an ideal PUF will have a hamming weight of 50%, meaning that there is an equal number of 0’s and 1’s in the set of values, which make the sequence the hardest one to guess.
  • Uniqueness: PUFs depend on the uniqueness of physical microstructure, which are expected to be different from each other, or have the lowest chance of collision. Similarly, we use hamming distance to measure the difference between two sets of values in strings of the same length. For an ideal PUF, a 50% hamming distance indicates that between any two strings, half of the numbers remain the same while the rest are different. That would lower the chances of collision between any two strings.
  • Robustness: PUFs need to be very stable and reliable to retain its number for the whole lifetime. This means that PUFs can maintain their stability so that the 0 and 1 in a sequence won’t be reversed even under drastic environmental changes. In other words, an ideal PUF should have a bit-error rate of 0% to prove its stability.
  • Non-traceability: As the root of trust, PUF needs to be resilient to physical attacks. Non-traceability is the important feature for an ideal PUF. That is, the random number in the PUF should not be detected and extracted by any means, such as reverse engineering, charge residue measurement, etc.

SRAM PUF vs. NeoPUF: Mechanism and Performance Comparison

Here is an example of the comparison between two well-known PUFs in the current market: SRAM PUF (Intrinsic ID) and NeoPUF (PUFsecurity/eMemory).

An SRAM PUF is enabled by the local mismatch between the threshold voltage in a pair of MOSFETs to generate a positive feedback loop. The slight differences caused by the mismatch characteristics will be amplified and divided into 0 or 1 and stored in SRAM. A random value of either 0 or 1 results from the variations of the threshold voltage in the MOSFETs.

However, the stability of an SRAM PUF’s extracted random value is seriously impacted by the following factors:

  • The degree of mismatch: As semiconductor process technology continues to advance, the degree of mismatch in a pair of MOSFETs becomes smaller, causing the latched position (random value 0 or 1) in the SRAM to be flipped over easily when the SRAM is reset.
  • Variations of ambient conditions: Variations in ambient conditions such as temperature, noise, voltage and interference will possibly cause changes in the random values extracted from the SRAM....more