Lightweight dynamic security authentication method and system implemented based on PUF (Physical Unclonable Function)
By introducing PUF technology into the IoT security authentication protocol, lightweight dynamic security authentication is achieved, and the existing protocol's large resource overhead and poor flexibility are solved, providing strong security protection and flexibility, suitable for diversified IoT equipment.
Patent Information
- Application Number
- CN202411486113.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-23
- Publication Date
- 2025-02-07
AI Technical Summary
The existing IoT security authentication protocols have problems such as high resource overhead, inability to deal with emerging security threats and poor flexibility, especially when IoT device resources are limited and attack methods are diversified.
Using a lightweight dynamic security authentication method based on PUF, a unique response is generated through the PUF structure, device identity authentication is realized, and combining dynamic authentication credential updates and lightweight encryption operations to improve security and flexibility.
It significantly reduces the time, computing and storage overhead of the protocol, provides sufficient security protection, can effectively deal with attacks such as memory reading, device cloning, etc., and is suitable for different IoT devices.
Smart Images

Figure CN119402205A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of Internet of Things security authentication, and in particular to a lightweight dynamic security authentication method and system based on PUF (Physically Unclonable Function). Background Art
[0002] In network communication, in order to ensure the authenticity and legitimacy of the identity of the participants and to ensure the confidentiality, integrity and reliability of the communication content, the participation of identity authentication protocols is required. As an extension of the Internet, the Internet of Things (IoT) can establish communication between things. Compared with the security of traditional Internet networks, the security issues in the IoT are more complicated. IoT network communications not only face the security issues of traditional Internet networks, but also face the threats of side channel and device theft attacks. The secure exchange of information in the network is usually closely related to identity authentication, so identity authentication can be used to verify the identity of users or entities. In the IoT scenario, identity authentication must not only complete the authentication of the legitimate identity of the user, but also the authentication of the legitimate identity of the device.
[0003] In the existing technology, the security authentication of the Internet of Things is usually implemented by using traditional protocols based on asymmetric encryption systems, which may have the following problems:
[0004] (1) Excessive resource overhead: Protocols based on asymmetric encryption systems often require large overhead. However, due to the openness of IoT communication channels and the resource constraints of the devices themselves, they are not suitable for resource-constrained application scenarios. Traditional identity authentication protocols cannot meet the high availability requirements of IoT applications. In the protocol method based on symmetric encryption, the key is secure by default, but the key information stored in the actual device is easy to be stolen and vulnerable to device capture attacks and guessing attacks.
[0005] (2) Unable to cope with emerging security threats: With the development of attack methods such as device cloning and device memory reading, traditional protocols are unable to cope with the above threats, thus creating new attack risks.
[0006] (3) Poor protocol flexibility: Since IoT devices are highly flexible and different IoT devices often have different specifications, a protocol that works for one device may not work for another. This results in poor flexibility of traditional protocols and their inability to work for all IoT devices.
[0007] Some practitioners have proposed to implement IoT device authentication based on physically unclonable functions (PUFs). However, this type of PUF-based protocol method assumes an idealized PUF hardware by default, but there is no actual PUF hardware involved. In addition, a simple authentication credential update method is usually used, which cannot ensure that the parameters transmitted through the channel are one-time dynamic parameters and is vulnerable to guessing and tracking attacks. Summary of the invention
[0008] The technical problem to be solved by the present invention is: in response to the technical problems existing in the prior art, the present invention provides a PUF-based lightweight dynamic security authentication method and system which has a simple implementation method, low resource overhead, strong flexibility and can cope with various security threats, thereby achieving secure and reliable authentication.
[0009] In order to solve the above technical problems, the technical solution proposed by the present invention is:
[0010] A lightweight dynamic security authentication method based on PUF, comprising the following steps:
[0011] Step S1, registration phase: the server collects the information to be registered and generates a random challenge C i As well as auxiliary information, the IoT device receives the challenge C generated by the PUF structure i The corresponding response R i After that, store the pseudonymous FID of the registered user in a secure database i , private key PRK and CRP of the user device <C i , R i >, and update the registered user table in the database to complete the information registration of the IoT device embedded with PUF to the server;
[0012] Step S2, identity authentication and key negotiation phase: When the server receives the authentication request generated by the IoT device after logging in, it initializes the authentication request. During the initialization process, it verifies the legitimacy of the user and uses the current authentication challenge C i Generate the challenge C for the next round of authentication i+1 and CRP will be used for the next round of challenge C i+1 After hiding, it is sent to the IoT device end; after receiving the data packet sent by the IoT device end, the server end verifies the identity of the IoT device, using the response R stored in the security database i Verify the verification information V2 generated by the IoT device, and generate the session key SK in the same way as the IoT device, so as to complete the server's verification of the IoT device's identity and negotiate the current session key SK;
[0013] Step S3, dynamic authentication credential update phase: Update the next round of pseudonym FID on the server side according to the same rules as the IoT device side i+1 , and the server generates the next round of challenge C i+1 CRP i+1 , R i+1 >, and send it to the IoT device after being hidden.
[0014] Furthermore, in step S1, the information to be registered collected by the server includes the device identity information ID of the IoT device. e And the corresponding user password PW e The server collects the information to be registered and generates a random challenge C i The steps include:
[0015] The server queries the registry to see whether there is the device identity information ID currently being registered e , and is the device identity information ID to be registered e Generate pseudonymous FID i ;
[0016] The server generates a private key of SM2 for the IoT device to be registered, and sends the corresponding public key to the IoT device.
[0017] The server generates a random challenge C for the IoT device to be registered i It will be used as one of the credentials for subsequent authentication.
[0018] Furthermore, step S1 also includes generating a challenge C on the IoT device side. i The corresponding response R i And store auxiliary information, including:
[0019] The IoT device receives the user pseudonym FID distributed by the server i , Random Challenge C i After obtaining the public key PUK of SM2, it first uses its own PUF structure to obtain the server-specified challenge C i The response R i ;
[0020] IoT devices will specify Challenge C i The response R i Send to the server and store the user verification information V in the local storage unit e 、User pseudonym FID i And use the user password PW e The hidden public key PK, where the user verification information V e The generation of the hidden public key PK is implemented using hash and XOR operations, expressed as:
[0021] V e =h(ID e ∥PW e )
[0022]
[0023] Among them, h represents the hash operation, Represents the exclusive OR operation.
[0024] Furthermore, in step S2, the step of initializing the authentication request includes:
[0025] After receiving the authentication request sent by the IoT device, the server first generates a timestamp TS2 to verify the timestamp TS1 and decrypts the random number R1 obtained in the authentication request. The timestamp TS1 and the random number R1 are generated by the IoT device after completing the user's login operation and verifying the user's legitimacy on the IoT device side;
[0026] Retrieve the user's pseudonym FID from the local secure database i If the current user pseudonym to be authenticated is legal, read the corresponding private key PRK and CRP pair <C i , R i >;
[0027] The server generates a random number R2;
[0028] The server will use the challenge C of this round of authentication i Used as the seed of the true random number generator to generate the challenge C used in the next round of authentication i+1 , and use the random number R1, timestamp TS2 and response to generate verification information V1, and send CRP to the next round of challenge C i+1 After being hidden, it is sent to the IoT device.
[0029] Furthermore, the server generates the next round of authentication challenge C according to the following formula: i+1 As well as the effect of CRP on i+1 Hidden operations:
[0030] V1=h(R1∥R i ∥TS2)
[0031]
[0032] C i+1 =TRNG(C i )
[0033]
[0034] Among them, h represents the hash operation, Represents the exclusive OR operation.
[0035] Furthermore, step S2 also includes verifying the server identity on the IoT device side, the steps include:
[0036] After receiving the data packet sent by the server, the IoT device first generates timestamp TS3 to verify timestamp TS2;
[0037] Use the locally generated random number R1 to obtain the challenge C i And the next round of challenges C i+1 , and generates the corresponding response R through its own PUF structure i ;
[0038] Verify the verification information V1. After the verification passes, the device completes the authentication of the server's legal identity.
[0039] The IoT device recovers the random number R2 generated by the server and responds to the random number R1 generated locally. i Calculate and generate a session key SK;
[0040] The IoT device uses the random number R2 and response R generated by the restored server i Generate verification information V2.
[0041] Further, in step S2, after receiving the data packet sent by the IoT device, the server verifies the identity of the IoT device, including:
[0042] After receiving the data packet sent by the device, the server first checks the timestamp TS3;
[0043] Using the response R stored in the secure database i And the random number R2 generated by the server verifies the verification information V2;
[0044] After the verification is passed, the server completes the authentication of the legal identity of the device.
[0045] Furthermore, in step S3, the update is performed according to the following formula:
[0046] FID i+1 =h(FID i ∥R2)
[0047]
[0048] R i+1 =PUF(C i+1 )
[0049]
[0050] Among them, FID i+1 FID is the next round of authentication pseudonyms for IoT devices i C is the current round of authentication pseudonym for IoT devices. i+1 For the next round of challenges, R i+1 For the next round of response, TS2 is the timestamp generated by the IoT device after the device receives the data packet sent by the server.
[0051] A computer system comprises a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to execute the computer program to perform the above method.
[0052] A computer-readable storage medium storing a computer program, wherein the computer program implements the above method when executed by a processor.
[0053] Compared with the prior art, the advantages of the present invention are as follows: the present invention introduces the hardware security primitive PUF into the protocol, and realizes security authentication in the IoT scenario based on the lightweight dynamic identity authentication protocol of PUF. The present invention can utilize the security characteristics of PUF itself to significantly reduce the time, calculation and storage overhead of the protocol, and provide strong enough security protection for the situation of end node loss. It can effectively deal with the threats of emerging attacks such as memory reading and device cloning. Combined with the dynamic update process of authentication credentials, it can also provide effective forward / backward security and non-traceability. At the same time, combined with lightweight encryption operations, it can meet the low resource overhead limitation of IoT devices, and can also be applied to different IoT devices through configurable methods. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] Figure 1 It is a schematic diagram of the implementation flow of the server side in the lightweight dynamic security authentication method based on PUF in this embodiment.
[0055] Figure 2 It is a schematic diagram of the principle of the registration stage of this embodiment.
[0056] Figure 3 It is a schematic diagram of the principle of the identity authentication and key negotiation stage in this embodiment. DETAILED DESCRIPTION
[0057] The present invention is further described below in conjunction with the accompanying drawings and specific preferred embodiments, but the protection scope of the present invention is not limited thereby.
[0058] For ease of understanding, the relevant background of the present invention is first exemplarily described.
[0059] In order to provide higher security performance, protocol design in the existing technology often requires the participation of an asymmetric encryption system. However, computational complexity and high overhead are characteristics that the asymmetric encryption system cannot solve. This leads to the fact that the existing technology is unable to meet the needs of IoT end node devices with limited resources during security authentication using protocols based on asymmetric encryption mechanisms.
[0060] PUF (Physically Unclonable Function) is a cryptographic technology based on physical properties. It uses the tiny differences inherent in a chip or device to generate a unique identifier that is unique to each chip or device. As an emerging hardware security primitive, PUF has the characteristics of unpredictability, non-replicability, verifiability, and real-time performance.
[0061] In order to negotiate session keys or confirm user passwords, the protocol design in the prior art needs to store relevant secret information in the end node device, but the secret information stored in the end node device is easily stolen, resulting in the leakage of secret information, and cannot cope with the problem of emerging security threats. Although the use of PUF can improve the ability to cope with emerging security threats, the current protocol methods based on PUF implementation all default to an idealized PUF hardware, but in fact there is no design for related PUF hardware, and it is not suitable for IoT devices without PUF, and lacks a thorough dynamic update mechanism, which makes authentication credentials, user information, etc. static for a long time or permanently, resulting in insufficient forward / backward security and anonymity.
[0062] The present invention introduces hardware security primitive PUF into the protocol, and realizes security authentication in the Internet of Things scenario based on PUF lightweight dynamic identity authentication protocol. For Internet of Things devices, the secret information generated based on PUF does not need to be stored and cannot be tampered with, and can be used to verify the identity of the device and reduce the time overhead of the process. It can use the security characteristics of PUF itself to significantly reduce the time, calculation and storage overhead of the protocol, and provide strong enough security protection for the loss of end nodes. It can effectively deal with the threats of emerging memory reading, device cloning and other attacks. In combination with the dynamic update process of authentication credentials, it can also provide effective forward / backward security and non-traceability. At the same time, combined with lightweight encryption operations, it can meet the low resource overhead restrictions of Internet of Things devices, and can also be applied to different Internet of Things devices through configurable methods. That is, the present invention forms an efficient security mechanism through the design of a lightweight dynamic identity authentication protocol based on PUF, which can solve the problem of excessive resource overhead of the current protocol, improve the availability of the protocol, and provide new security protection capabilities in combination with PUF hardware security primitives. It can deal with emerging security threats such as memory reading. At the same time, through the reasonable design of the security protocol, it can provide more flexible applications, and combined with the configuration function, it can be applied to non-PUF devices.
[0063] In this embodiment, the protocol authentication process mainly includes a registration phase, a login phase, an identity authentication and key negotiation phase, and a dynamic authentication credential update phase. Among them, the registration phase is performed by the trusted party (such as a server) in a secure environment by default, and the purpose is to record device-related information for subsequent authentication; the login phase, the identity authentication and key negotiation phase, and the dynamic authentication credential update phase are all performed in an open public channel, and the communication data may be stolen, cloned, tampered with, etc. The purpose of authentication is to complete the identification of the legitimate identities of the communicating parties and negotiate the session key.
[0064] The asymmetric encryption system and symmetric encryption system in the protocol are specifically the SM2 encryption system and the AES-256 encryption system respectively. The HASH function used is the SM3 cryptographic hash algorithm. The protocol symbol table is shown in Table 1 below.
[0065] Table 1 Protocol symbol table
[0066]
[0067] The technical terms involved in this embodiment are explained as follows:
[0068] Identity authentication is the process of confirming the authenticity and legitimacy of a person or entity, usually involving verifying the identity information provided by the individual to ensure that the identity they claim to be consistent with the actual identity.
[0069] Authentication factors are different types of information or features used in the identity authentication process to confirm the authenticity and legitimacy of the user's identity.
[0070] Forward security (Perfect Forward Secrecy, PFS) is a security attribute of a communication protocol, which mainly refers to the fact that the leakage of a long-term master key will not lead to the leakage of past session keys.
[0071] Backward security (Perfect Backward Secrecy, PBS) is another security attribute of the communication protocol, which mainly means that after a certain point in time, even if the long-term master key is leaked, future session keys will not be leaked.
[0072] Anonymity means that in a certain context, an individual's identity or personal information can be hidden or blurred, so that it cannot be accurately identified or tracked. In the field of network and information systems, anonymity usually means that when a user conducts online activities, his or her real identity can be concealed and cannot be easily obtained by others.
[0073] like Figure 1 As shown, the steps of the lightweight dynamic security authentication method implemented based on PUF in this embodiment include:
[0074] Step S1, registration phase: the server collects the information to be registered and generates a random challenge C i As well as auxiliary information, the IoT device receives the challenge C generated by the PUF structure i The corresponding response R i After that, store the pseudonymous FID of the registered user in a secure database i , private key PRK and CRP of the user device <C i , R i >, and update the registered user table in the database to complete the information registration of the IoT device embedded with SRAM PUF to the server.
[0075] In this embodiment, the registration phase of the protocol is performed by the trusting party in a secure and trusted environment, that is, completed before the device leaves the factory.
[0076] In this embodiment, the information to be registered collected by the server includes the device identity information ID of the IoT device. e And the corresponding user password PW e , the server collects the information to be registered and generates a random challenge C i The steps include:
[0077] Step S101: The server queries the registration table to see whether the device identity information ID currently to be registered exists. e , and is the device identity information ID to be registered e Generate pseudonymous FID i ;
[0078] Step S102: The server generates a private key SM2 for the IoT device to be registered, and sends the corresponding public key to the IoT device.
[0079] Step S103: The server generates a random challenge C for the IoT device to be registered. i It will be used as one of the credentials for subsequent authentication.
[0080] In this embodiment, it also includes generating a challenge C on the IoT device side. i The corresponding response R i And store auxiliary information, the steps include:
[0081] The IoT device receives the user pseudonym FID distributed by the server i , Random Challenge C i After obtaining the public key PUK of SM2, it first uses its own PUF structure to obtain the server-specified challenge C i The response R i ;
[0082] IoT devices will specify Challenge Ci The response R i Send to the server and store the user verification information V in the local storage unit e 、User pseudonym FID i And use the user password PW e The hidden public key PK, where the user verification information V e The generation of the hidden public key PK is implemented using hash and XOR operations, expressed as:
[0083] V e =h(ID e ∥PW e )
[0084]
[0085] Among them, h represents the hash operation, Represents the exclusive OR operation.
[0086] Step S2, identity authentication and key negotiation phase: When the server receives the authentication request generated by the IoT device after logging in, it initializes the authentication request. During the initialization process, it verifies the legitimacy of the user and uses the current authentication challenge C i Generate the challenge C for the next round of authentication i+1 and will CRP and the next round of challenges C i+1 After hiding, it is sent to the IoT device end; after receiving the data packet sent by the IoT device end, the server end verifies the identity of the IoT device, using the response R stored in the security database i Verify the verification information V2 generated by the IoT device, and generate the session key SK in the same way as the IoT device, so as to complete the server's verification of the IoT device's identity and negotiate the current session key SK;
[0087] In this embodiment, the steps of initializing the authentication request include:
[0088] Step S201: After receiving the authentication request sent by the IoT device, the server first generates a timestamp TS2 to verify the timestamp TS1 and decrypts the random number R1 obtained in the authentication request. The timestamp TS1 and the random number R1 are generated by the IoT device after completing the user's login operation and verifying the legitimacy of the user on the IoT device.
[0089] Step S202: Retrieve the user pseudonym FID from the local security database i If the current user pseudonym to be authenticated is legal, read the corresponding private key PRK and CRP pair <C i , R i >;
[0090] Step S203, the server generates a random number R2;
[0091] Step S204: The server will use the challenge C of this round of authentication i Used as the seed of the true random number generator to generate the challenge C used in the next round of authentication i+1 , and use the random number R1, timestamp TS2 and response to generate verification information V1, and send CRP to the next round of challenge C i+1 After being hidden, it is sent to the IoT device.
[0092] In this embodiment, the server identity is also verified on the IoT device side, and the steps include:
[0093] After receiving the data packet sent by the server, the IoT device first generates timestamp TS3 to verify timestamp TS2;
[0094] Use the locally generated random number R1 to obtain the challenge C i And the next round of challenges C i+1 , and generates the corresponding response R through its own PUF structure i ;
[0095] Verify the verification information V1. After the verification passes, the device completes the authentication of the server's legal identity.
[0096] The IoT device recovers the random number R2 generated by the server and responds to the random number R1 generated locally. i Calculate and generate a session key SK;
[0097] The IoT device uses the random number R2 and response R generated by the restored server i Generate verification information V2.
[0098] In this embodiment, after receiving the data packet sent by the IoT device, the server verifies the identity of the IoT device, including:
[0099] Step S211: After receiving the data packet sent by the device, the server first checks the timestamp TS3;
[0100] Step S212: Using the response R stored in the security database i And the random number R2 generated by the server verifies the verification information V2;
[0101] Step S213: After the verification is passed, the server completes the authentication of the legal identity of the device.
[0102] This embodiment uses the key negotiation mechanism combined with identity authentication to complete key negotiation between participants at the same time as identity authentication. The user anonymity and two-factor user authentication mechanism can provide anonymity while providing the user authentication function.
[0103] Step S3, dynamic authentication credential update phase: Update the next round of pseudonym FID on the server side according to the same rules as the IoT device side i+1 , and the server generates the next round of challenge C i+1 CRP i+1 , R i+1 >, and send it to the IoT device after being hidden.
[0104] After the current round of authentication is completed, in order to provide higher security, this embodiment updates the authentication credentials of both parties. At this stage, the device updates the next round of authentication pseudonym FID. i+1 , update the next round of pseudonym FID on the server side i+1 and CRP<C i+1 , R i+1 >. Among them, the next round of pseudonym FID i+1 Both parties update locally according to the same rules, and the next round of challenge C ii1 It is generated independently by the server and sent to the device after being hidden. The new round of challenge C i+1 The corresponding response R i+1 It is generated by the device and hidden before being sent to the server. i+1 The data has already been obtained by the device when it verifies the server's identity.
[0105] This embodiment can achieve a thorough dynamic credential update by adopting the above-mentioned credential dynamic update method, synchronously complete the credential update during the protocol authentication phase, and provide forward / backward non-traceability.
[0106] This embodiment can make full use of the security and physical properties of PUF. The relevant secret information of the authentication process and the subsequent communication process is dynamically generated in the authentication structure, which can provide defense capabilities against secret information leakage and theft attacks. At the same time, combined with a thorough dynamic update mechanism, the authentication credentials are updated simultaneously with the progress of the authentication process, which can provide stronger forward / backward non-traceability and anonymity.
[0107] The present invention adopts the above method and utilizes the "challenge-response" mechanism of PUF to complete the authentication of legitimate devices, and designs a two-way authentication mechanism on this basis. During the authentication process, the device will first complete the authentication of the legitimate identity of the server. If the device authentication server is a legitimate server, it will use the "challenge" given by the server to provide a "response", so that the server can authenticate the legitimacy of the device identity, and the PUF device does not need to store secret information. Combined with the non-replicability and non-tamperability of PUF, it can effectively solve the security threat problem faced by the end node devices in the Internet of Things authentication.
[0108] The present invention is further described below by taking the complete process of implementing security authentication on the server side and the device side using the above method of the present invention as an example, and the detailed steps are as follows:
[0109] The registration phase of the protocol is performed by the trusting party in a secure and trusted environment, that is, before the device leaves the factory. Figure 2 As shown. In the device registration phase, the IoT device embedded with SRAM PUF completes the registration of relevant information to the server and the server collects the device's output response to the specified challenge. The specific process of the i-th round of authentication is as follows:
[0110] Step 1: The server collects information and generates a random challenge and other auxiliary information.
[0111] The server needs to collect the information to be registered, including the device identity information ID e And the corresponding user password PW e Etc. First, the server queries the registry to see if there is an ID to be registered. e And the user identification information ID e Generate pseudonymous FID i At the same time, the server will generate a private key of SM2 for the device and then send the corresponding public key to the device. Then, the server will generate a random challenge C i As one of the credentials for subsequent authentication. This step can be mainly completed at the corresponding software level of the device.
[0112] Step 2: The device generates a response corresponding to the challenge and stores other auxiliary information. i , Random Challenge C i After obtaining the public key PUK of SM2, this stage is carried out. In this step, the device needs to first use its own PUF structure to obtain the server-specified challenge C i The response R i The device will then specify the challenge C i The response R iSend to the server and store the user verification information V in the local storage unit e 、User pseudonym FID i And use the user password PW e The hidden public key PK. The user verification information V e The generation of the hidden public key PK is mainly achieved by hash and XOR operations.
[0113] Step 3: The server stores the relevant information. The server receives the response R sent by the device. i Afterwards, store the registered user's pseudonymous FID in a secure database i , private key PRK and CRP of the user device <C i , R i >. After that, the registered user table is updated in the database. At this point, the registration phase is completed and the device can be put into use after registration.
[0114] The authentication phase of the protocol is a communication conducted on an insecure public channel. The messages transmitted during the process may be monitored, intercepted, tampered with, etc. Figure 3 As shown in the figure, in this stage, the main task is to complete the mutual recognition of the legal identity between the device and the server, and secretly negotiate the session key for subsequent secure communication. The specific process is as follows:
[0115] Step 1: Initialize the authentication request. The device first completes the user's login operation and verifies whether it is a legitimate user. When the user passes the legitimacy check, the device will generate a random number R1 and a timestamp TS1, then use the recovered public key to encrypt the random number and generate an authentication request, which is sent to the server together with the locally stored user pseudonym. After receiving the authentication request, the server first generates a timestamp TS2 to verify the timestamp TS1. Then, the user pseudonym FID is retrieved from the local security database. i If the current user pseudonym to be authenticated is legal, read the corresponding private key PRK and CRP pair <C i , R i >. After that, the server generates a random number R2. At the same time, the server will use the challenge C of this round of authentication i As the seed of the true random number generator to generate the challenge C used in the next round of authentication i+1 , and use the decrypted random number R1, timestamp TS2 and response generated by the device to generate verification information V1, and send CRP to the next round of challenge C i+1 After being hidden, it is sent to the device.
[0116] The server generates the next round of authentication challenge C according to the following formula i+1 As well as the effect of CRP on i+1Hidden operations:
[0117] V1=h(R1∥R i ∥TS2)
[0118]
[0119] C i+1 =TRNG(C i )
[0120]
[0121] Among them, h represents the hash operation, Represents the exclusive OR operation.
[0122] Step 2: The device verifies the server identity. After the device receives the data packet sent by the server, it first generates a timestamp TS3 to verify the timestamp TS2. Then, it uses the locally generated random number R1 to obtain the challenge C i And the next round of challenges C i+1 , and generates the corresponding response R through its own PUF structure i After that, the verification information V1 is verified. If it passes, the device completes the authentication of the server's legal identity. After that, the device recovers the random number R2 generated by the server and responds to the server based on the random number R1 generated locally and the response R i The session key SK is calculated. Then, the device uses the random number R2 generated by the recovered server and the response R i Generate verification information V2. The process of generating the session key SK and verification information V2 is as follows:
[0123]
[0124] R i =PUF(C i )
[0125]
[0126] SK=h(R1∥R i ∥R2)
[0127] V2=h(R i ∥R2∥TS3)
[0128] Step 3: The server verifies the device identity. After receiving the data packet sent by the device, the server first verifies the timestamp TS3. Then, it uses the response R stored in the security database to verify the device identity. iThe random number R2 generated by the server verifies the verification information V2. If passed, the server completes the authentication of the legal identity of the device. Subsequently, the server generates the session key SK in the same way as the device. The specific update process is as follows:
[0129] FID i+1 =h(FID i ∥R2)
[0130]
[0131] R i+1 =PUF(C i+1 )
[0132]
[0133] Among them, FID i+1 FID is the next round of authentication pseudonyms for IoT devices i C is the current round of authentication pseudonym for IoT devices. i+1 For the next round of challenges, R i+1 For the next round of response, TS3 is the timestamp generated by the IoT device after the device receives the data packet sent by the server.
[0134] In response to the demand for IoT security authentication, the present invention introduces the physical structure of PUF into the identity authentication protocol, and implements security authentication in the IoT scenario based on a lightweight security authentication protocol based on PUF. The PUF characteristics are used to replace the asymmetric encryption authentication method, and the fast-response physical process is used to replace the complex encryption calculation. Combined with lightweight encryption primitives such as XOR and Hash, the protocol has sufficient provable security performance while having lower resource overhead, so that the security characteristics of PUF itself can be fully utilized to significantly reduce the time, calculation and resource storage overhead of the protocol. PUF is used to make the device do not need to store preset secret information. At the same time, the security characteristics of PUF such as non-replicability provide protection against device cloning attacks and provide strong enough security protection for the case of end node loss. The present invention breaks the security premise of idealized hardware in traditional methods and carries out actual PUF hardware design work. The security characteristics based on PUF can better realize lightweight security authentication and improve the usability of the protocol. At the same time, through the configurable method based on hardware PUF, it can be applied to different Internet of Things devices to improve the flexibility of the protocol. In addition, the use of one-time pseudonyms and dynamic credential update design can also ensure the anonymity and forward / backward security of the protocol, and can also improve the security of the protocol.
[0135] Furthermore, the authentication protocol of the present invention may also use multiple authentication factors, such as passwords, biometrics, and other authentication factors, to further provide higher security.
[0136] This embodiment further provides a computer system, including a processor and a memory, wherein the memory is used to store a computer program, and the processor is used to execute the computer program to perform the above method.
[0137] It is understandable that the above method of this embodiment can be executed by a single device, such as a computer or server, etc., and can also be applied to a distributed scenario and completed by multiple devices in cooperation with each other. In the case of a distributed scenario, one of the multiple devices can only execute one or more steps in the above method of this embodiment, and multiple devices interact to complete the above method. The processor can be implemented in the form of a general-purpose CPU, a microprocessor, an application-specific integrated circuit, or one or more integrated circuits, etc., for executing related programs to implement the above method of this embodiment. The memory can be implemented in the form of a read-only memory ROM, a random access memory RAM, a static storage device, and a dynamic storage device. The memory can store an operating system and other applications. When the above method of this embodiment is implemented by software or firmware, the relevant program code is stored in the memory and called and executed by the processor.
[0138] This embodiment further provides a computer-readable storage medium storing a computer program, and when the computer program is executed by a processor, the above method is implemented.
[0139] Those skilled in the art should understand that the above-mentioned embodiments of the present application can be provided as methods, systems, or computer program products. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present application can take the form of a computer program product implemented on one or more computer-readable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code. The present application is described with reference to the flowcharts and / or block diagrams of the methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each process and / or box in the flowchart and / or block diagram, as well as the combination of the processes and / or boxes in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the functions in the process. Figure 1 A process or multiple processes and / or boxes Figure 1These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing device to work in a specific way, so that the instructions stored in the computer-readable memory produce a product including an instruction device, which implements the functions specified in the process. Figure 1 A process or multiple processes and / or boxes Figure 1 These computer program instructions can also be loaded onto a computer or other programmable data processing device, so that a series of operation steps are executed on the computer or other programmable device to produce a computer-implemented process, so that the instructions executed on the computer or other programmable device provide for implementing the process in the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.
[0140] The above is only a preferred embodiment of the present invention, and does not limit the present invention in any form. Although the present invention has been disclosed as a preferred embodiment, it is not intended to limit the present invention. Therefore, any simple modification, equivalent change and modification made to the above embodiment according to the technical essence of the present invention without departing from the content of the technical solution of the present invention shall fall within the scope of protection of the technical solution of the present invention.
Claims
1. A lightweight dynamic security authentication method based on PUF, characterized in that the steps include: Step S1, registration phase: the server collects the information to be registered and generates a random challenge C i As well as auxiliary information, the IoT device receives the challenge C generated by the PUF structure i The corresponding response R i After that, store the pseudonymous FID of the registered user in a secure database i , private key PRK and CRP of the user device <C i , R i >, and update the registered user table in the database to complete the information registration of the IoT device embedded with PUF to the server; Step S2, identity authentication and key negotiation phase: When the server receives the authentication request generated by the IoT device after logging in, it initializes the authentication request. During the initialization process, it verifies the legitimacy of the user and uses the current authentication challenge C i Generate the challenge C for the next round of authentication i+1 and will CRP and the next round of challenges C i+1 After hiding, it is sent to the IoT device end; after receiving the data packet sent by the IoT device end, the server end verifies the identity of the IoT device, using the response R stored in the security database i Verify the verification information V2 generated by the IoT device, and generate the session key SK in the same way as the IoT device, so as to complete the server's verification of the IoT device's identity and negotiate the current session key SK; Step S3, dynamic authentication credential update phase: Update the next round of pseudonym FID on the server side according to the same rules as the IoT device side i+1 , and the server generates the next round of challenge C i+1 CRP <C i+1 , R i+1 >, and send it to the IoT device after being hidden.
2. The lightweight dynamic security authentication method based on PUF according to claim 1 is characterized in that: In step S1, the information to be registered collected by the server includes the device identity information ID of the IoT device e And the corresponding user password PW e The server collects the information to be registered and generates a random challenge C i The steps include: The server queries the registry to see whether there is the device identity information ID currently being registered e , and is the device identity information ID to be registered e Generate pseudonymous FID i ; The server generates a private key of SM2 for the IoT device to be registered, and sends the corresponding public key to the IoT device. The server generates a random challenge C for the IoT device to be registered i It will be used as one of the credentials for subsequent authentication.
3. The lightweight dynamic security authentication method based on PUF according to claim 1 is characterized in that: Step S1 also includes generating a challenge C on the IoT device side. i The corresponding response R i And store auxiliary information, including: The IoT device receives the user pseudonym FID distributed by the server i , Random Challenge C i After obtaining the public key PUK of SM2, it first uses its own PUF structure to obtain the server-specified challenge C i The response R i ; IoT devices will specify Challenge C i The response R i Send to the server and store the user verification information V in the local storage unit e 、User pseudonym FID i And use the user password PW e The hidden public key PK, where the user verification information V e The generation of the hidden public key PK is implemented using hash and XOR operations, expressed as: V e =h(ID e ||PW e ) Among them, h represents the hash operation, Represents the exclusive OR operation.
4. The lightweight dynamic security authentication method based on PUF according to claim 1 is characterized in that: In step S2, the steps of initializing the authentication request include: After receiving the authentication request sent by the IoT device, the server first generates a timestamp TS2 to verify the timestamp TS1 and decrypts the random number R1 obtained in the authentication request. The timestamp TS1 and the random number R1 are generated by the IoT device after completing the user's login operation and verifying the user's legitimacy on the IoT device side; Retrieve the user's pseudonym FID from the local secure database i If the current user pseudonym to be authenticated is legal, read the corresponding private key PRK and CRP pair. <C i , R i > The server generates a random number R2; The server will use the challenge C of this round of authentication i Used as the seed of the true random number generator to generate the challenge C used in the next round of authentication i+1 , and use the random number R1, timestamp TS2 and response to generate verification information V1, and send CRP to the next round of challenge C i+1 After being hidden, it is sent to the IoT device.
5. The lightweight dynamic security authentication method based on PUF according to claim 4 is characterized in that: The server generates the next round of authentication challenge C according to the following formula i+1 As well as the effect of CRP on i+1 Hidden operations: V1=h(R1||R i ||TS2) C i+1 =TRNG(C i ) Among them, h represents the hash operation, Represents the exclusive OR operation.
6. The lightweight dynamic security authentication method based on PUF according to claim 4 is characterized in that: Step S2 also includes verifying the server identity on the IoT device side, including: After receiving the data packet sent by the server, the IoT device first generates timestamp TS3 to verify timestamp TS2; Use the locally generated random number R1 to obtain the challenge C i And the next round of challenges C i+1 , and generates the corresponding response R through its own PUF structure i ; Verify the verification information V1. After the verification passes, the device completes the authentication of the server's legal identity. The IoT device recovers the random number R2 generated by the server and responds to the random number R1 generated locally. i Calculate and generate a session key SK; The IoT device uses the random number R2 and response R generated by the restored server i Generate verification information V2.
7. The lightweight dynamic security authentication method based on PUF according to any one of claims 1 to 6, characterized in that: In step S2, after receiving the data packet sent by the IoT device, the server verifies the identity of the IoT device, including: After receiving the data packet sent by the device, the server first checks the timestamp TS3; Using the response R stored in the secure database i And the random number R2 generated by the server verifies the verification information V2; After the verification is passed, the server completes the authentication of the legal identity of the device.
8. The lightweight dynamic security authentication method based on PUF according to any one of claims 1 to 6, characterized in that: In step S3, update is performed according to the following formula: FID i+1 =h(FID i ||R2) R i+1 =PUF(C i+1 ) Among them, FID i+1 FID is the next round of authentication pseudonyms for IoT devices i C is the current round of authentication pseudonym for IoT devices. i+1 For the next round of challenges, R i+1 For the next round of response, TS3 is the timestamp generated by the IoT device after the device receives the data packet sent by the server.
9. A computer system comprising a processor and a memory, wherein the memory is used to store a computer program, wherein: The processor is configured to execute the computer program to perform the method according to any one of claims 1 to 8.
10. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Cited By
SRAM PUF-based Internet of Things equipment data security transmission method
CN120090803A
Method for Secure Data Transmission of Internet of Things Devices Based on SRAM PUF
CN120090803B
Bidirectional authentication method and related equipment
CN120185945A
In-band non-inductive authentication method and system for power system
CN120263535A
Star flash chip isolation and end-to-end encryption Internet of Things management system
CN120263552A