## 2 Related Work  
### Conventional PUF and Memristor-Based PUF  
Subsequent to the introduction of PUFs, various PUF structures have been proposed [30; 31; 32; 33], analyzed, and implemented. Conventional PUFs like arbiter PUFs [30], ring oscillator PUFs [31], SRAM PUFs [32], and latch PUFs [33] seem attractive for their easy construction. However, as manufacturing technology trends toward smaller feature size, those structures are likely to face future physical limitations on scaling down [34]. Thus, emerging nanoelectronic devices such as memristor [35], PCM [36], and STT-MRAM [37] have been suggested. In particular, memristors are expected to be a suitable candidate for PUF implementation owing to their high fabrication process sensitivity and their compatibility with modern CMOS fabrication processes. The two-terminal memristor enables ultra-high integration density at low cost when organized into a cross-point array architecture. Many studies [38; 39; 40] that take advantage of memristors have been conducted to build reliable and secure PUFs. In [38; 39], each memristor has a random 1 or 0 logic state at the same write time because each memristor has a different write time as a result of fabrication variations. In [40], the PUF sets the operating condition at a switching probability of 50%. Building a novel PUF relies on key extraction from the circuit implementation of the architecture. Applications of memristor-based PUFs have some challenges to resolve. One of challenges is that the number of CRPs increases in proportion to the number of unit cells and ultimately in proportion to the array size. Consequently, several PUF architectures have been introduced and employed to obtain as many CRPs as possible with a limited array size. To construct a practical and secure PUF, methods have been proposed to evaluate PUF performance using performance metrics such as randomness, diffuseness, uniqueness, and steadiness which are defined as follows [41]:  
* **Randomness**: Randomness indicates the frequency of 0 and 1 in the responses of a PUF instance. An ideal PUF should have these frequencies in balance; the ideal value of randomness is 1.
* **Diffuseness**: Diffuseness indicates the probability of identical responses from different challenges applied to the same PUF instance. Diffuseness can be calculated from the intra-Hamming distance (intra-HD) of all possible responses from a PUF instance. An ideal value of diffuseness is 1.
* **Uniqueness**: Uniqueness is the degree of response difference from a same challenge applied to different PUF instances. Uniqueness can be calculated from the inter-Hamming distance (inter-HD) of responses from different PUF instances. The ideal value of uniqueness is 1.
* **Steadiness**: Steadiness indicates whether the PUF operates stably enough to expect the same response over several challenges when subjected to environmental changes.  
In general, the attacker collects a very large number of CRPs, determines the correlation between the challenge and the response, and performs a modeling attack. In earlier research, CRP has been obfuscated or a security protocol has been applied to prevent such attacks. By applying the random hash function to the challenge and response of PUF, the CRP of the actual PUF is hidden [8], and [PERSON] et al. [42] selected the substring of a response to minimize the exposure of the response. [PERSON] et al. [43] proposed an isolated primitive that the security agent monitors the CRP request growth rate and separates the DoS attackers requesting a large amount of CRP into a gray/blacklist to delay or completely block response transmission. The optimal time delay algorithm (OTDA) [44] significantly improves PUF reliability under various operating conditions. OTDA has been shown to more efficiently enhance of dynamic Ring Oscillator PUF(d-ROPUF) ability to generate a fairly large set of trusted secret keys to protect PUF structures from new cyberattacks, including machine learning and modeling attacks.