Resumen
A physically unclonable function is a hardware device whose instances have several unique parameters and characteristics, i.e. it is impossible to create two instances with identical values of these characteristics due to the properties of the physical production process. We can assume that these characteristics take on random values. This kind of physical randomness can be used in various cryptographic protocols and mechanisms. Physically unclonable functions require few resources, so they are promising for use in devices with limited resources such as RFID tags. The paper investigates the possibility of using physically unclonable functions in cryptographic protocols to solve the following problems: generating random values, identification and authentication.The advantage of using physically unclonable functions to generate random parameters is that the obtained values do not need to be stored in memory, because parameters can be regenerated on the fly. This is an excellent advantage since protocol parameters often need to be stored in secure memory, which is an expensive resource. However, some measurement errors often occur while obtaining physical devices' characteristics, so it is necessary to use some form of error-correction. The paper describes the basic constructions used for these purposes.Today many authentication protocols based on physically unclonable functions have been proposed. They can be divided into two classes: password authentication protocols with key generation based on physically unclonable functions and authentication protocols based on challenge-response pairs. The article discusses the existing authentication protocols, their advantages and disadvantages.The paper also considers the possibility of creating a mathematical model of physically unclonable functions. Modern machine learning methods allow us to create a mathematical "clone" of a device instance. This fact is a significant disadvantage of physically unclonable functions. As a result, we conclude that physically unclonable functions are promising for use in devices with limited resources. At the same time, most of the currently proposed designs have a few practical disadvantages and are vulnerable to attacks based on machine learning methods. This fact suggests that it is too early to consider physically unclonable functions as a structural element of cryptographic mechanisms and protocols.