Hardware Obfuscation of AES IP Core Using PUFs and PRNG: A Secure Cryptographic Key Generation Solution for Internet-of-Things Applications

Surbhi Chhabra,Kusum Lata
DOI: https://doi.org/10.1007/s42979-022-01194-x
2022-05-24
SN Computer Science
Abstract:Intellectual Property (IP) core has evolved into a primary component of System-on-Chip (SoC). They address and implement a wide range of hardware functionalities within a chip core logic. Hence, IP reuse plays a prominent role in enhancing performance and reducing resource utilization in SoC, used in Internet-of-Things (IoT) devices. Unfortunately, continued growth and development in IoT devices raise a severe concern about the security of these IPs and require urgent authentication and encryption. The conventional cryptography methods may not be appropriate to secure IoT devices because of the rise in malicious hardware attacks. Physical Unclonable Functions (PUFs) are a promising approach used in IoT devices that prevent the IP against reverse-engineering, insertion of malicious activities or Trojans, piracy, cloning, and other threats. In this article, in particular, we integrated PUF with the traditional approach of Key-based Hardware Obfuscation to take advantage of PUF properties by generating secret keys that are unique and unclonable. We tested the PUF in terms of reliability, uniqueness, and uniformity. We also explore PUFs as a potential seed for Pseudo-Random Number Generators (PRNGs) to maximize obfuscation while minimizing area and power overhead. Furthermore, the PUF-based obfuscated model is applied to the Advanced Encryption Standard (AES) IP core to provide enhanced authentication as well as data encryption in IoT devices. Experimental results and NIST analysis show that the proposed model is resilient against reverse-engineering and compelling SAT and side-channel attacks. The proposed model is implemented on Basys3 FPGAs with minimum resource utilization, also compared with the current approaches.
What problem does this paper attempt to address?