Blockchain and tee-based certificateless authentication method for internet of things terminal
By introducing a certificateless authentication method using blockchain and TEE modules into IoT terminals, the issues of centralization and key management in IoT terminals are resolved, achieving a highly secure and decentralized authentication process and improving the immutability of terminal information and the effectiveness of authentication.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHONGQING UNIV OF POSTS & TELECOMM
- Filing Date
- 2023-06-01
- Publication Date
- 2026-04-28
AI Technical Summary
Existing authentication technologies for IoT terminals rely on centralized institutions, which pose risks of privacy breaches and key management issues. Furthermore, the software authentication process is vulnerable to attacks and has low security.
A certificateless authentication method based on blockchain and Trusted Execution Environment (TEE) is adopted. By storing terminal keys in the TEE module and leveraging the immutability of blockchain, the identity authentication process is designed in combination with a certificateless signature algorithm to achieve decentralized and secure computation.
It solves the key management and centralization problems in traditional authentication, improves the security of IoT terminals and the immutability of information, and enhances the security and effectiveness of authentication.
Smart Images

Figure CN117375871B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the fields of certificateless authentication and blockchain, specifically to a certificateless authentication method for IoT terminals based on blockchain and TEE. Background Technology
[0002] The internet has laid a solid foundation for the Internet of Things (IoT), but it has also brought security risks to its development. IoT terminals are vulnerable to attacks or malicious manipulation by criminals, causing economic losses to users, and even physical harm. Therefore, in order to protect the terminal security and data transmission security of IoT terminals, authentication of IoT terminals is necessary.
[0003] IoT terminal certification is mainly divided into hardware certification and software certification. Hardware certification verifies the hardware of the IoT terminal, that is, it certifies the compliance and reliability of the hardware design, such as electromagnetic compatibility and electrical safety; for example, to prevent the terminal from being attacked and tampered with, a security chip can be added to provide hardware-level protection. Software certification is the certification of terminal communication standards and protocols, firmware updates, access control, data encryption, identity authentication, and secure transmission through software.
[0004] Internationally, existing software authentication technologies for IoT terminals mainly include: ① Public Key Infrastructure (PKI)-based identity authentication schemes; ② Certificateless public key cryptography-based authentication schemes; and ③ Proxy blind signature-based authentication schemes. Among these, PKI-based identity authentication schemes require complex certificate verification processes and certificate authorities to issue certificates. This reliance on third-party institutions makes them susceptible to single points of failure, increasing the risk of privacy breaches and raising IoT costs. Certificateless public key cryptography-based authentication schemes do not rely on third-party institutions, but they are vulnerable to man-in-the-middle attacks, leading to key and identity leaks and lower security. To achieve secure IoT terminals, the entire industry chain faces serious technical bottlenecks and urgently needs a new authentication scheme. Summary of the Invention
[0005] To address the aforementioned issues, this invention provides a certificateless authentication method for IoT terminals based on blockchain and TEE, comprising constructing a certificateless cryptographic system including terminal devices, an authentication gateway, and a blockchain, wherein each terminal device is allocated a TEE module; authentication of any terminal device in the certificateless cryptographic system includes the following steps:
[0006] S1. The terminal device sends an authentication request to the authentication gateway: request = (terminal device ID, timestamp), where timestamp is the request timestamp;
[0007] S2. The authentication gateway checks whether the timestamp is valid. If it is valid, it proceeds to step S3; if it is invalid, it returns a "refuse" message to the terminal device, rejecting authentication.
[0008] S3. The authentication gateway retrieves the terminal device's public key P from the blockchain based on the terminal device's ID. A Verify public key P A If valid, return an authentication request to the terminal device and execute step S4; if invalid, return a refuse authentication to the terminal device.
[0009] S4. The terminal device calculates U = rQ in the TEE module. A And send U to the authentication gateway; where Q A The hash value is calculated based on the ID, where r is a random number;
[0010] S5. After receiving U, the authentication gateway randomly selects a challenge value. Returned to the terminal device;
[0011] S6. The terminal device calculates the authentication information V = (r + c)S in the TEE module based on the challenge value c. A And send the authentication information V to the authentication gateway; where S A The complete private key for the terminal device;
[0012] S7. The authentication gateway receives authentication information V and determines the equation e(P,V)=e(P0+P). A ,U+cQ A If the condition is met, the authentication is successful; where P is the generator of the multiplicative cyclic group G1, and P0 is the system's master key.
[0013] The beneficial effects of this invention are:
[0014] This invention employs a certificateless authentication method, resolving the key management issues and centralized nature of traditional identity authentication processes. Regarding data storage, compared to traditional cloud platforms, it introduces blockchain technology. Blockchain's immutability effectively guarantees the authenticity and immutability of terminal information. This invention also introduces a Trusted Execution Environment (TEE). During the identity authentication phase, the terminal key is stored in the TEE, effectively ensuring key security. Key computation is performed within the TEE, effectively guaranteeing the security of the execution process. This technology combines the advantages of blockchain and TEE technologies, perfectly resolving the low security of certificateless authentication and the complex centralized nature of certificate authentication. This solution can address the certificateless authentication, management, and application security of massive numbers of IoT terminals. Attached Figure Description
[0015] Figure 1 This is a diagram illustrating the overall framework of the certificateless cryptography system of the present invention.
[0016] Figure 2 A flowchart illustrating the registration process for adding a certificateless password system to a new terminal device according to an embodiment of the present invention;
[0017] Figure 3 This is a flowchart illustrating the terminal device authentication process according to an embodiment of the present invention.
[0018] Figure 4 This is a basic architecture diagram of an IoT terminal according to an embodiment of the present invention;
[0019] Figure 5 This is a flowchart illustrating the key update process according to an embodiment of the present invention. Detailed Implementation
[0020] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0021] Current authentication schemes for IoT terminals have the following problems:
[0022] A. Traditional identity authentication technology relies on centralized institutions. The right to use, manage, and control user identities is controlled by these centralized institutions. If the centralized institutions are untrustworthy or are attacked by malicious nodes, it can easily lead to the leakage of user privacy.
[0023] B. Terminal information is stored on a cloud platform, and data on the cloud platform is easily tampered with.
[0024] C. In traditional authentication schemes, code execution is not performed in a completely secure environment.
[0025] To address the aforementioned issues, this invention provides a certificateless authentication method for IoT terminals based on blockchain and TEE (Trusted Execution Environment). This method utilizes certificateless signature algorithms and terminal identity verification to design the specific authentication process, ensuring user security and resolving key escrow issues. Simultaneously, this method introduces blockchain; as an emerging technology, blockchain possesses the characteristics of anonymity, decentralization, immutability, and traceability, significantly increasing the security and authority of terminal information. Furthermore, this method also incorporates TEE, a secure computing environment used to protect sensitive data and code from malware and attackers, ensuring the confidentiality and integrity of the program's initial state and runtime. TEE provides an isolation mechanism, isolating the code and data within the TEE from the external environment, preventing external hardware and software from accessing its confidential information. TEE security is built upon multiple aspects, most importantly the isolation mechanism and encryption protection. The isolation mechanism ensures that sensitive data and code can only be accessed by authorized programs and users; while encryption protection safeguards the confidentiality and integrity of the data. To achieve these security features, TEE typically relies on hardware support and operating system cooperation. This method employs a handshake-like protocol during the authentication process, which greatly ensures the security and effectiveness of authentication.
[0026] In a certificateless authentication method for IoT terminals based on blockchain and TEE, a certificateless cryptographic system is constructed, comprising the terminal device, authentication gateway, and blockchain. For example... Figure 1 As shown, the certificateless cryptographic system mainly consists of a three-layer structure: terminal layer, gateway layer, and blockchain. The terminal layer includes multiple terminal devices, each corresponding to a TEE module. The gateway layer includes multiple intelligent authentication gateways.
[0027] Specifically, a blockchain comprises multiple data nodes, primarily used to store detailed information about terminal devices, such as the device's ID, public key, key validity period, authentication results for each authentication, and the corresponding authentication gateway ID for each authentication. The gateway layer is mainly used for forwarding messages and providing certificateless authentication services. Specifically, when a new terminal device wants to join the certificateless cryptography system, it sends a registration request to a specific authentication gateway in the gateway layer for registration. After successful registration, the authentication gateway uploads the new terminal device's relevant information to the blockchain. Similarly, when a terminal device in the certificateless cryptography system authenticates, it sends an authentication request to a specific authentication gateway in the gateway layer. After successful authentication, the authentication gateway uploads the terminal device's information to the blockchain. Terminal devices are mainly used for data collection and transmission, while the TEE module is primarily used to store the terminal device's private key and provide a secure computing environment.
[0028] Specifically, the process of building and initializing a certificateless cryptographic system includes:
[0029] Let G1 and G2 represent q-order multiplicative cyclic groups, P be a generator of G1, and q be a large prime number;
[0030] Set a bilinear mapping e: G1×G1→G2;
[0031] Select a random number Calculate and generate P0 = sP, and save P0 as the master key. Let represent a number in {1, 2, 3, ..., q-1};
[0032] Choose a hash function H1 to obtain the system parameter p(G1,G2,e,q,P,P0,H1).
[0033] Specifically, during the initialization process of the certificateless cryptography system, the IDs of all terminal devices and all authentication gateways within the system are uploaded to the blockchain. When a new terminal device wants to join the certificateless cryptography system, it will also upload its own ID to the blockchain first.
[0034] Preferably, the authentication process of any terminal device in a certificateless cryptographic system, such as Figure 3 As shown, it includes the following steps:
[0035] S1. The terminal device sends an authentication request to the authentication gateway: request = (terminal device ID, timestamp), where timestamp is the request timestamp;
[0036] S2. The authentication gateway checks whether the timestamp is valid. If it is valid, it proceeds to step S3; if it is invalid, it returns a "refuse" message to the terminal device, rejecting authentication.
[0037] S3. The authentication gateway retrieves the terminal device's public key P from the blockchain based on the terminal device's ID. A Verify public key P A If valid, return an authentication request to the terminal device and execute step S4; if invalid, return a refuse authentication to the terminal device.
[0038] S4. The terminal device calculates U = rQ in the TEE module. A Then the terminal device sends U to the authentication gateway; where Q A r is the hash value calculated based on the terminal device's ID, and r is a random number selected by the terminal device.
[0039] S5. After receiving U, the authentication gateway randomly selects a challenge value. Returned to the terminal device;
[0040] S6. The terminal device calculates the authentication information V = (r + c)S in the TEE based on the received challenge value c. A Then the terminal device sends the authentication information V to the authentication gateway; where S A The complete private key for the terminal device;
[0041] S7. The authentication gateway receives authentication information V and determines the equation e(P,V)=e(P0+P). A ,U+cQ A If the condition is met, the authentication is successful; where P is the generator of the multiplicative cyclic group G1, and P0 is the system's master key.
[0042] Specifically, in step S7, if authentication is successful, the terminal device information tx = (terminal device ID, timestamps, authentication gateway ID, authentication success information) is uploaded to the blockchain; if authentication fails, the terminal device information tx = (terminal device ID, timestamps, authentication gateway ID, authentication failure information) is uploaded to the blockchain; where timestamps is the key validity period, which is the authentication validity time.
[0043] Preferably, if the terminal device has not joined the certificateless cryptography system before executing step S1, the authentication method further includes a registration phase for the terminal device to join the system, such as... Figure 2 As shown, the specific registration process is as follows:
[0044] S11. The terminal device sends a registration application including its own ID to the authentication gateway. The authentication gateway queries the blockchain to see if the terminal device's ID is correct. If it is correct, step S12 is executed; otherwise, the registration application is rejected.
[0045] Specifically, before registering, new terminal devices will first upload their own ID to the blockchain and then send a registration application to the authentication gateway. This is to prevent malicious devices that have not uploaded their IDs from registering.
[0046] S12. The authentication gateway generates a partial private key D. A =sQ A ∈G1, Q A =H1(ID) A )∈G1, and choose a secret value. Part of the private key D is transmitted through a trusted channel. A and secret value x A Together they are returned to the terminal device; among them, ID A Indicates the ID of the terminal device;
[0047] S13. The terminal device will receive part of the private key D. AThe private key S is stored in the TEE module, and then the complete private key S is calculated and stored in the TEE module. A =(x A Q A +D A );
[0048] S14. The terminal device calculates the public key P in the TEE module. A =x A P∈G1, and the public key P A Send it to the authentication gateway, and the authentication gateway will send the public key P. A The information of the terminal device is uploaded to the blockchain to update it, and the key validity period is set.
[0049] Preferably, when the terminal device interacts with the blockchain, if the blockchain finds that the terminal device's key has expired, a key update phase is initiated, such as... Figure 5 As shown, it includes:
[0050] S21. The blockchain sends a key update operation to the terminal device through the authentication gateway;
[0051] S22. After receiving the key update operation, the terminal device sends an update request to the authentication gateway;
[0052] S23. The authentication gateway sends part of the private key D to the terminal device. A =sQ A Q A =H1(ID) A )∈G1, and a secret value selected according to the system parameter p. Send together;
[0053] S24. The terminal device deletes the original full private key in the TEE module, and then uses the partial private key D sent by the authentication gateway. A and secret value y A Recalculate the full private key S A =(y A Q A +D A And store it in the TEE module;
[0054] S25. The terminal device uses the secret value y A Recalculate public key P A =y A P∈G1 and is sent to the authentication gateway. The authentication gateway uploads the new public key to the blockchain to update the information of the terminal device and sets the key validity period.
[0055] In one embodiment, the basic architecture diagram of any terminal device in an IoT terminal without a certificate-based cryptographic system is as follows: Figure 4As shown, the terminal device mainly includes an application module interface component, a terminal application program, a Trusted Execution Environment (TEE) module, and sensors. The sensors are connected to the terminal application program through the application module interface component. The main functions of the terminal application program include receiving data collected from the sensors (temperature, humidity, light intensity, location, etc.), sensor identification (ID), terminal activation and registration, terminal authentication, and communication with the authentication gateway. The main functions of the TEE module include ID encryption, storing private keys, and communicating with the authentication gateway. The terminal application program and the TEE module communicate with the application server through the gateway interface (wired or wireless), and the application server communicates with the blockchain for on-chain operations.
[0056] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "setting," "connection," "fixing," "rotation," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal connection of two components or the interaction between two components. Unless otherwise explicitly limited, those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0057] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A certificate-free authentication method for IoT terminals based on blockchain and TEE, characterized in that, Construct a certificateless cryptographic system comprising terminal devices, an authentication gateway, and a blockchain, wherein each terminal device is allocated a TEE module; construct and initialize the certificateless cryptographic system, including: Let G1 and G2 represent a... The factorial cyclic group, where P is a generator of G1. It is a large prime number; Set a bilinear mapping e: G1×G1→G2; Select a random number Calculate P0 = sP, and store P0 as the master key, where express One of the numbers; Choose a hash function H1 to obtain the system parameters. ; Authentication of any terminal device in a certificateless cryptographic system includes the following steps: S1. The terminal device sends an authentication request to the authentication gateway, request=(terminal device ID, timestamp), where timestamp is the request timestamp; S2. The authentication gateway checks whether the timestamp is valid. If it is valid, it proceeds to step S3; if it is invalid, it returns a "refuse" message to the terminal device, rejecting authentication. S3. The authentication gateway retrieves the terminal device's public key P from the blockchain based on the terminal device's ID. A Verify public key P A If valid, return an authentication request to the terminal device and execute step S4; if invalid, return a refuse authentication to the terminal device. S4. The terminal device calculates U=rQ in the TEE module. A And send U to the authentication gateway; where Q A The hash value is calculated based on the terminal device's ID, where r is a random number; S5. After receiving U, the authentication gateway randomly selects a challenge value. Returned to the terminal device; S6. The terminal device calculates the authentication information V=(r+c)S in the TEE module based on the challenge value c. A And send the authentication information V to the authentication gateway; where S A The complete private key for the terminal device; S7. The authentication gateway receives authentication information V and determines the equation e(P,V)=e(P0+P). A ,U+cQ A If the condition is met, the authentication is successful; where P is the generator of the multiplicative cyclic group G1, and P0 is the system's master key. Before executing step S1, if the terminal device has not joined the certificateless password system, the authentication method further includes a registration phase for the terminal device to join the system. The specific registration process is as follows: S11. The terminal device sends a registration application to the authentication gateway. The authentication gateway queries the blockchain to see if the terminal device's ID is correct. If it is correct, step S12 is executed; otherwise, the registration application is rejected. S12. The authentication gateway generates a partial private key D. A =sQ A Q A =H1(ID A ), and select a secret value. Part of the private key D is transmitted through a trusted channel. A and secret value x A Together they are returned to the terminal device; among them, ID A Indicates the ID of the terminal device; S13. The terminal device will receive part of the private key D. A The private key S is stored in the TEE module, and then the complete private key S is calculated and stored in the TEE module. A =(x A Q A +D A ); S14. The terminal device calculates the public key P in the TEE module. A =x A P, and the public key P A Send it to the authentication gateway, and the authentication gateway will send the public key P. A The information of the terminal device is uploaded to the blockchain to update it, and the key validity period is set.
2. The certificateless authentication method for IoT terminals based on blockchain and TEE according to claim 1, characterized in that, In step S7, if authentication is successful, the terminal device information tx=(terminal device ID, timestamps, authentication gateway ID, authentication success information) is uploaded to the blockchain; if authentication fails, the terminal device information tx=(terminal device ID, timestamps, authentication gateway ID, authentication failure information) is uploaded to the blockchain; where timestamps is the key validity period.
3. The certificateless authentication method for IoT terminals based on blockchain and TEE according to claim 1, characterized in that, When a terminal device interacts with the blockchain, if the blockchain finds that the terminal device's key has expired, a key update is performed, including: S21. The blockchain sends a key update operation to the terminal device through the authentication gateway; S22. After receiving the key update operation, the terminal device sends an update request to the authentication gateway; S23. The authentication gateway sends part of the private key D to the terminal device. A and secret value y A ; S24. The terminal device deletes the full private key in the TEE module, and then uses the partial private key D sent by the authentication gateway. A and secret value y A The complete private key is recalculated and stored in the TEE module; S25. The terminal device uses the secret value y A The public key is recalculated and sent to the authentication gateway. The authentication gateway uploads the new public key to the blockchain to update the terminal device's information and sets the key's validity period.
4. The certificateless authentication method for IoT terminals based on blockchain and TEE according to claim 1, characterized in that, The certificateless cryptographic system has a three-layer structure: terminal layer, gateway layer, and blockchain.
5. The certificateless authentication method for IoT terminals based on blockchain and TEE according to claim 4, characterized in that, The terminal layer includes multiple terminal devices, each of which includes a TEE module, an application module interface component, a terminal application, and a sensor.
Citation Information
Patent Citations
TEE node authentication method and system based on block chain network
CN110971408A
Certificateless cloud storage data integrity public auditing method
CN113364600A