{"title":"Physical unclonable functions (PUFs)","authors":"A. Sengupta, S. Mohanty","doi":"10.1049/PBCS060E_ch12","DOIUrl":null,"url":null,"abstract":"It has been the practice to store information under lock and key for safeguarding it. Even today, we use cryptographic primitives to store information securely under lock and key, encryption, and decryption. For the process of cryptography, keys are necessary for any operation. But these keys should be stored in the memory so that they can be used whenever necessary. When a key is stored in the memory, it can be stolen by the adversary using various methods. Therefore, storing it in a nonvolatile memory is not an option in this age of security threats. Physical unclonable functions (PUFs) are the promising security primitives used for generating the keys instead of storing them in the memory. These modules use the naturally occurring manufacturing variations in the fabrication process for generating the keys for cryptographic purposes. This chapter discusses different types of PUFs. Section 12.1 gives a brief introduction of PUFs. Section 12.2 discusses working principles of PUFs. Section 12.3 discusses different characteristics of a PUF design. Section 12.4 presents different classifications of PUFs. Various designs of PUF based on ring oscillators (ROs) are presented in Section 12.5, based on multiplexers and reconfigurability are presented in Section 12.6. Static random access memory (SRAM)-based PUFs are presented in Section 12.7, memristor-based PUFs are presented in Section 12.8, and diode-based PUFs are presented in Section 12.9. There are also non-silicon-based PUF designs, such as carbon PUFs, presented in Section 12.10. Microprocessors can also be used for implementing the PUF designs which are presented in Section 12.11. Magnetic material-based PUFs are presented in Section 12.12 and the FPGA implementations of PUF and security measures for FPGA are presented in Section 12.13. Some case study applications are presented in Section 12.14. Further the issues and challenges faced during the design of PUF modules are presented in Section 12.15. The conclusion and future directions are presented in Section 12.16.","PeriodicalId":14528,"journal":{"name":"IP Core Protection and Hardware-Assisted Security for Consumer Electronics","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2019-01-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"IP Core Protection and Hardware-Assisted Security for Consumer Electronics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1049/PBCS060E_ch12","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
It has been the practice to store information under lock and key for safeguarding it. Even today, we use cryptographic primitives to store information securely under lock and key, encryption, and decryption. For the process of cryptography, keys are necessary for any operation. But these keys should be stored in the memory so that they can be used whenever necessary. When a key is stored in the memory, it can be stolen by the adversary using various methods. Therefore, storing it in a nonvolatile memory is not an option in this age of security threats. Physical unclonable functions (PUFs) are the promising security primitives used for generating the keys instead of storing them in the memory. These modules use the naturally occurring manufacturing variations in the fabrication process for generating the keys for cryptographic purposes. This chapter discusses different types of PUFs. Section 12.1 gives a brief introduction of PUFs. Section 12.2 discusses working principles of PUFs. Section 12.3 discusses different characteristics of a PUF design. Section 12.4 presents different classifications of PUFs. Various designs of PUF based on ring oscillators (ROs) are presented in Section 12.5, based on multiplexers and reconfigurability are presented in Section 12.6. Static random access memory (SRAM)-based PUFs are presented in Section 12.7, memristor-based PUFs are presented in Section 12.8, and diode-based PUFs are presented in Section 12.9. There are also non-silicon-based PUF designs, such as carbon PUFs, presented in Section 12.10. Microprocessors can also be used for implementing the PUF designs which are presented in Section 12.11. Magnetic material-based PUFs are presented in Section 12.12 and the FPGA implementations of PUF and security measures for FPGA are presented in Section 12.13. Some case study applications are presented in Section 12.14. Further the issues and challenges faced during the design of PUF modules are presented in Section 12.15. The conclusion and future directions are presented in Section 12.16.