## 1 Introduction  
### Study Background and Motivation  
Internet of Things (IoT) refers to intelligent technology and service whereby various sensors and communication technologies such as Bluetooth, Wi-Fi, LTE, Zigbee, and NFC are built-in in a system that can identify physical objects (things) to exchange information between thing and thing,and human and thing by linking data in real time based on the Internet [1]. Low-power wireless communication is applied to IoT for wireless connection and efficient energy consumption in various areas such as wearable devices, smart homes, and power plants in order to send and receive data and control the environment [2; 3].  
However, as the IoT technology has advanced and the services have expanded, the security issue has become more important. Unlike computer online systems, IoT has the security problem of cyber-physical system (CPS) [4]. CPS security is important because security damages in the virtual space such as computer online system hacking damages can extend to the real physical system. In the worst case, security problems of IoT can be a threat to human lives based on incorrect sensor data values and device controls [5; 6].  
Identification and authentication of devices are important for the security of IoT. Device identification refers to reliable authentication that can identify corresponding devices and determine their authenticity for safe operation of various devices participating in a network [7; 8]. Threat of device identification/authentication can cause problems such as data tampering and malicious control based on unauthorized access to the devices. When identifying and authenticating devices in IoT environment, the most important factor is encryption key technology. Application of a vulnerable encryption key technology leads to a threat to device identification/authentication, causing vulnerability in the whole system security [9; 10] the same technology used in the existing computer system is used for the encryption key technology between devices in the IoT environment [7]. Encryption keys are classified into symmetric keys and asymmetric keys depending on whether the encryption and the decryption key are identical or different. In general, when an identical level of security is provided, a symmetric key is used for encryption and decryption because the computing speed using symmetric key is fast [11]. In the IoT environment that requires real-time operation, the symmetric key method is used because of computing performance and computational speed. Furthermore, static symmetric encryption key method is often used whereby a key, once loaded on the device, does not change [11]. However, because such a static key method is used without changing the key, the encryption pattern is continuously exposed and consequently, a possibility exists that the key values can be computed through reverse engineering using the encrypted data. Moreover, if the encryption key is stolen or exposed through the agent that manages the encryption key, the security between the devices becomes futile [12].  
Dynamic encryption key technology is required to prevent this. Dynamic encryption key is a method of periodically generating and using new encryption keys by both ends of communication [12]. When the dynamic encryption key method is used, backtracking of the encryption key values is difficult because the key is generated periodically; furthermore, even if the current key is stolen, the key generated next cannot be predicted. If such a dynamic encryption key technology is applied between IoT devices, the security improves compared to the static key method [13; 14; 15].