Field Programmable Gate Array (FPGA) has been seen as the intersection between cost and design time when compared to ASIC and DSP. Many of the security risks present in the supply chain apply to FPGA devices, and as such, there exists a need for FPGA-based security measures. Physically Unclonable Functions (PUFs) have shown to be a promising method for authenticating and validating devices. Current works have utilized FPGAs as a method for testing ASIC PUFs or do not utilize the FPGA architecture to the benefit of the PUF, limiting its potential application.
In this work, we propose an FPGA-based PUF that takes advantage of the FPGA architecture to increase entropy. We propose a PUF that utilizes different design templates to switch out the method of entropy used to generate the PUF response. We also propose using the routing and placement constraints to further increase the entropy generated. By doing so, we can create a hybrid, strong memory-based PUF, where the placement, routing, and templates act as input challenges.
To evaluate our PUF, we analyze the responses provided by a set of different templates to evaluate their uniqueness, robustness, and uniformity. Additionally, we evaluate the entropy provided by the templates and compare it to other templates and when mapped to different areas of the FPGA. We also evaluate the security benefits of our system and provide techniques for better leveraging the performance of our PUF.