Blockchain-based iot terminal identity authentication method

By building a blockchain-based distributed identity authentication network in the Internet of Things (IoT) system and utilizing the dynamic adjustment of edge servers and consensus nodes, the security and efficiency issues of identity authentication in the IoT system are solved, achieving efficient and reliable identity authentication.

CN113987431BActive Publication Date: 2026-01-27国网信息通信产业集团有限公司北京分公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111129771.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-26
Publication Date
2026-01-27
Estimated Expiration
2041-09-26

AI Technical Summary

Technical Problem

The lack of secure and reliable identity authentication schemes in IoT systems allows malicious attackers to forge identities, disrupting normal business processes and even causing system paralysis.

Method used

A blockchain-based identity authentication method is adopted, which constructs a blockchain network through IoT terminals, edge servers and cloud computing servers. Edge servers are used as blockchain nodes to perform distributed identity authentication, reducing the system's dependence on single points of failure, and improving authentication efficiency through dynamic adjustment of consensus nodes and candidate nodes.

Benefits of technology

It improves the accuracy and efficiency of IoT terminal identity authentication, reduces communication overhead and latency, meets the high real-time requirements of IoT systems, and enhances the reliability of authentication.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113987431B_ABST
    Figure CN113987431B_ABST
Patent Text Reader

Abstract

The present disclosure provides a kind of based on blockchain Internet of Things terminal identity authentication method, is realized by Internet of Things terminal, edge server and cloud computing server;Wherein, multiple edge servers are as blockchain node, constitute blockchain network;Internet of Things terminal is registered on cloud computing server and generates registration identification;Internet of Things terminal sends identity authentication request to edge server;Edge server obtains the identity information of Internet of Things terminal according to identity authentication request, and broadcasts identity information in blockchain network;As consensus node, edge server verifies identity information, obtains verification result, and sends verification result to the edge server corresponding to Internet of Things terminal;The edge server corresponding to Internet of Things terminal obtains the identity authentication result of Internet of Things terminal according to verification result, by the present disclosure, can accurately, efficiently carry out Internet of Things terminal identity authentication.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of Internet of Things (IoT) technology, and in particular to a blockchain-based IoT terminal identity authentication method. Background Technology

[0002] The Internet of Things (IoT) refers to connecting any object to a network through information sensing devices and according to agreed-upon protocols. Objects exchange and communicate information through communication media to achieve functions such as intelligent identification, location, tracking, and monitoring. With the development and promotion of electronic information technology, IoT technology has been applied to multiple fields such as smart homes, smart transportation, and smart grids.

[0003] However, due to the inherent instability of sensor mobility and the potential for damage from various unknown factors or deliberate deployments by administrators, the network structure of the entire IoT system is constantly evolving, requiring the handling of new device additions at any time. If the IoT system lacks a secure and reliable authentication scheme, malicious attackers can exploit this by forging identities, inevitably impacting normal business operations and potentially causing the entire system to crash. Summary of the Invention

[0004] In view of this, the purpose of this disclosure is to propose a blockchain-based method for authenticating the identity of IoT terminals.

[0005] To achieve the above objectives, this disclosure provides a blockchain-based IoT terminal identity authentication method, which is implemented through an IoT terminal, an edge server, and a cloud computing server; wherein, multiple edge servers act as blockchain nodes, forming a blockchain network; the method includes:

[0006] The IoT terminal sends a registration request to the cloud computing server;

[0007] The cloud computing server generates a registration identifier for the IoT terminal based on the registration request, and sends the registration identifier to the blockchain network;

[0008] The IoT terminal sends an identity authentication request to the edge server corresponding to the IoT terminal;

[0009] The edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the identity authentication request, and broadcasts the identity information in the blockchain network.

[0010] The blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server, which acts as the consensus node, verifies the identity information, obtains the verification result, and sends the verification result to the edge server corresponding to the IoT terminal.

[0011] The edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result.

[0012] As can be seen from the above, the blockchain-based IoT terminal identity authentication method provided in this disclosure is implemented through an IoT terminal, an edge server, and a cloud computing server. Multiple edge servers act as blockchain nodes, forming a blockchain network. The method includes: the IoT terminal sending a registration request to the cloud computing server; the cloud computing server generating a registration identifier for the IoT terminal based on the registration request and sending the registration identifier to the blockchain network; the IoT terminal sending an identity authentication request to the corresponding edge server; the corresponding edge server obtaining the IoT terminal's identity information based on the identity authentication request and broadcasting the identity information in the blockchain network; the blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server acting as a consensus node verifies the identity information, obtains the verification result, and sends the verification result to the corresponding edge server; the corresponding edge server obtains the IoT terminal's identity authentication result based on the verification result. This disclosure enables accurate and efficient IoT terminal identity authentication. Attached Figure Description

[0013] To more clearly illustrate the technical solutions in this disclosure or related technologies, the accompanying drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the accompanying drawings described below are only embodiments of this disclosure. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0014] Figure 1 This is a schematic diagram of a system architecture for implementing a blockchain-based IoT terminal identity authentication method according to an embodiment of this disclosure;

[0015] Figure 2 This is a schematic flowchart of a blockchain-based IoT terminal identity authentication method provided in an embodiment of this disclosure. Detailed Implementation

[0016] To make the objectives, technical solutions, and advantages of this disclosure clearer, the following detailed description is provided in conjunction with specific embodiments and the accompanying drawings.

[0017] It should be noted that, unless otherwise defined, the technical or scientific terms used in the embodiments of this disclosure should have the ordinary meaning understood by one of ordinary skill in the art to which this disclosure pertains. The terms "first," "second," and similar terms used in the embodiments of this disclosure do not indicate any order, quantity, or importance, but are merely used to distinguish different components. Terms such as "comprising" or "including" mean that the element or object preceding the word encompasses the elements or objects listed following the word and their equivalents, without excluding other elements or objects. Terms such as "connected" or "linked" are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. Terms such as "upper," "lower," "left," and "right" are used only to indicate relative positional relationships; when the absolute position of the described object changes, the relative positional relationship may also change accordingly.

[0018] As described in the background section, IoT systems in related technologies lack highly secure identity authentication methods. Specifically, blockchain-based identity authentication schemes treat each terminal device as a node, using consensus algorithms to determine the authenticity and reliability of newly added terminal devices. However, for IoT systems, terminal devices must meet the characteristics of small size, low power consumption, and low cost, which also limits other capabilities, resulting in limited storage, low computing power, and bandwidth. Therefore, maintaining a unified distributed ledger and performing frequent queries and modifications on terminal devices is clearly impractical.

[0019] In view of this, this disclosure proposes a blockchain-based IoT terminal identity authentication method. Compared with traditional identity authentication methods, it can reach consensus among multiple nodes in a decentralized manner, rather than relying solely on a single server for decision-making, effectively avoiding single points of failure and enhancing authentication reliability. In addition, considering the resource constraints of terminal devices, edge servers are introduced as distributed nodes to jointly maintain block information, reducing network congestion and information transmission latency that may result from system scaling.

[0020] Figure 1 This is a schematic diagram of a system architecture for implementing a blockchain-based IoT terminal identity authentication method according to an embodiment of this disclosure; the blockchain-based IoT terminal identity authentication method is implemented through an IoT terminal, an edge server, and a cloud computing server; wherein, multiple edge servers serve as blockchain nodes, forming a blockchain network.

[0021] In some embodiments, at least one Internet of Things (IoT) terminal is included.

[0022] IoT terminals are devices that connect the sensor network layer and the transmission network layer in the Internet of Things (IoT), enabling them to collect data and send data to the network layer. They perform multiple functions, including data acquisition, preliminary processing, encryption, and transmission. IoT terminal devices can generally be divided into four layers: the context awareness layer, the network access layer, the network control layer, and the application / service layer. Each layer corresponds to a control device on the network side. IoT terminals often operate in various heterogeneous network environments. To provide the best user experience, the terminal should be able to sense changes in the environment and, based on this, optimize the selection of the best service channel for the user. Terminal devices sense environmental changes through front-end RF modules or sensor modules, perform calculations, and decide on the necessary countermeasures.

[0023] The Internet of Things (IoT) terminal is basically composed of three parts: peripheral sensing interfaces, central processing modules, and external communication interfaces. It connects to sensing devices such as RFID readers, infrared sensors, and environmental sensors through peripheral sensing interfaces. The data from these sensing devices is read, processed by the central processing module, and then sent to the designated processing platform on the Ethernet through external communication interfaces such as GPRS modules, Ethernet interfaces, and WIFI, according to network protocols.

[0024] In some embodiments, multiple edge servers are included.

[0025] Edge servers have superior storage and computing capabilities compared to IoT terminals.

[0026] This disclosure enables data processing to be completed at the edge by setting up edge servers, specifically for data analysis and knowledge generation. First, this undoubtedly reduces the load on cloud computing servers. Second, it reduces the communication bandwidth between the control system and the central data center (cloud computing server), lowering transmission costs. Simultaneously, placing low-latency computer programs closer to the requester allows for faster response times, as the edge server is closer to the user, thus resolving requests at the edge, reducing latency, and improving service quality.

[0027] Multiple edge servers act as blockchain nodes, forming a blockchain network to jointly maintain the distributed ledger.

[0028] In some embodiments, a cloud computing server is included.

[0029] Cloud computing servers are typically federated servers with powerful data processing capabilities (including storage and computing power). Using a cloud computing server as the central server, all terminal devices and edge servers need to register with the cloud computing server, which then generates unique identity information for each.

[0030] Figure 2 This is a schematic flowchart of a blockchain-based IoT terminal identity authentication method provided in an embodiment of the present disclosure; the blockchain-based IoT terminal identity authentication method is implemented through an IoT terminal, an edge server, and a cloud computing server; wherein, multiple edge servers act as blockchain nodes, forming a blockchain network; the method includes:

[0031] S210, The IoT terminal sends a registration request to the cloud computing server.

[0032] As an example, take IoT terminal T i Taking registration on cloud computing server S as an example:

[0033] IoT terminal T i Generate an ID based on its own information (such as device number). i As a unique identifier, it is appended with a timestamp (Time) from the time of registration. i and random number s i After being encrypted, it is sent to the cloud computing server S as a registration request.

[0034] S220. The cloud computing server generates a registration identifier for the IoT terminal according to the registration request, and sends the registration identifier to the blockchain network.

[0035] Cloud computing server S receives IoT terminal T i After receiving the registration request, the registration information is decrypted. After verifying the registration validity based on the timestamp information, the cloud computing server S selects a hash function. For IoT terminals T i Generate Registration Identifier (PID) i =H(ID) i ||s i The cloud computing server S encrypts the registration identifier PID and returns it to the IoT terminal T. i .

[0036] For IoT terminal T i Cloud computing server S generates block address Add i and the IoT terminal T i The registration identifier is written into the blockchain network.

[0037] In some embodiments, the method by which the edge server registers with the cloud computing server is similar to the method by which the IoT terminal registers with the cloud computing server.

[0038] S230, the IoT terminal sends an identity authentication request to the edge server corresponding to the IoT terminal.

[0039] As an example, take IoT terminal T i On edge server E i Taking identity verification as an example:

[0040] IoT terminal T i Select random number s i Add its own identity ID i PID (Registered Identifier) i and timestamp information Time i After encryption, it is sent as an authentication request to the edge server E. i .

[0041] In some embodiments, each IoT terminal corresponds to a uniquely defined edge server, and one edge server can correspond to multiple IoT terminals.

[0042] S240. The edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the identity authentication request, and broadcasts the identity information in the blockchain network.

[0043] Edge Server E i After decrypting the authentication request, the IoT terminal T is constructed. i The system uses the user's identity information and timestamp information to verify the validity of the request, and then sends the terminal device's T... i The identity information is broadcast on the blockchain network.

[0044] The authentication request includes the identity identifier of the IoT terminal.

[0045] In some embodiments, S240 specifically includes:

[0046] The edge server corresponding to the IoT terminal generates the sequence number of the identity authentication request, generates the hash value of the identity identifier, generates the current view number, constructs the identity information including the sequence number, the hash value and the view number, and sends the identity information to the edge server, which acts as the consensus node in the blockchain network.

[0047] Here, a sequence number is generated for the identity authentication request, and the value of the sequence number is greater than the sequence number generated when the identity authentication request was received last time.

[0048] S250. The blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server, which acts as the consensus node, verifies the identity information, obtains the verification result, and sends the verification result to the edge server corresponding to the IoT terminal.

[0049] The blockchain nodes in the blockchain network are divided into consensus nodes and alternate nodes.

[0050] The method further includes: dividing the blockchain nodes in the blockchain network into consensus nodes and candidate nodes; specifically including:

[0051] The blockchain nodes in the blockchain network shall be no less than a first preset number as the consensus nodes; the first preset number shall be three times the number of faulty nodes in the blockchain network plus one.

[0052] Other blockchain nodes in the blockchain network besides the consensus node are designated as candidate nodes.

[0053] In some embodiments, each of the edge servers serving as blockchain nodes has a corresponding reputation value; the step of using no less than a first preset number of blockchain nodes in the blockchain network as consensus nodes includes:

[0054] The blockchain nodes in the blockchain network are sorted in descending order of their reputation values;

[0055] The consensus nodes are selected in descending order of their reputation values.

[0056] In some embodiments, S250 specifically includes:

[0057] The edge server, acting as the consensus node, verifies the identity information;

[0058] Specifically, this includes:

[0059] The edge server, acting as the consensus node, and the computing terminal device T i Identity ID in identity information i The hash value is obtained and compared with the terminal device T recorded in the block. i PID (Registered Identifier) i The comparison is performed. If they match, the verification is considered successful; otherwise, the verification is considered unsuccessful.

[0060] In response to determining that the identity information has been verified, the edge server acting as the consensus node constructs identity pre-confirmation information based on the identity information and sends the identity pre-confirmation information to the other edge servers acting as the consensus node.

[0061] The edge server, which is the consensus node, verifies the identity pre-confirmation information after receiving it.

[0062] In response to determining that the identity pre-confirmation information has passed verification, the edge server, acting as the consensus node, constructs the verification result and sends the verification result to the edge server corresponding to the IoT terminal.

[0063] Specifically, this includes:

[0064] The edge server, acting as the consensus node, determines that the identity pre-confirmation information has been verified if it has received no less than a second preset number of the identity pre-confirmation information and the content of the multiple identity pre-confirmation information is consistent; the second preset number is twice the number of the faulty nodes in the blockchain network.

[0065] S260. The edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result.

[0066] The verification results include verification pass messages and verification fail messages.

[0067] In some embodiments, S260 specifically includes:

[0068] The edge server corresponding to the IoT terminal determines that the IoT terminal has passed identity authentication upon receiving no less than a third preset number of verification pass messages; the third preset number is the number of faulty nodes in the blockchain network plus one.

[0069] In some embodiments, after determining that the IoT terminal has passed authentication, the method further includes:

[0070] The edge server corresponding to the IoT terminal writes the identity authentication result of the IoT terminal and broadcasts the identity authentication result of the IoT terminal in the blockchain network.

[0071] In some embodiments, each of the edge servers acting as blockchain nodes has a corresponding reputation value; after the edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result, the method further includes:

[0072] Update the reputation value of the edge server, which acts as the consensus node, based on the identity authentication result; specifically including:

[0073] In response to confirming that the identity authentication result and the verification result are consistent, the edge server acting as the consensus node increases the reputation value of the edge server acting as the consensus node;

[0074] In response to the confirmation that the identity authentication result and the verification result are inconsistent, the reputation value of the edge server, which is the consensus node, is reduced.

[0075] As can be seen from the above, the blockchain-based IoT terminal identity authentication method provided in this disclosure is implemented through an IoT terminal, an edge server, and a cloud computing server. Multiple edge servers act as blockchain nodes, forming a blockchain network. The method includes: the IoT terminal sending a registration request to the cloud computing server; the cloud computing server generating a registration identifier for the IoT terminal based on the registration request and sending the registration identifier to the blockchain network; the IoT terminal sending an identity authentication request to the corresponding edge server; the corresponding edge server obtaining the IoT terminal's identity information based on the identity authentication request and broadcasting the identity information in the blockchain network; the blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server acting as a consensus node verifies the identity information, obtains the verification result, and sends the verification result to the corresponding edge server; the corresponding edge server obtains the IoT terminal's identity authentication result based on the verification result. This disclosure enables accurate and efficient IoT terminal identity authentication.

[0076] This disclosure divides blockchain nodes in a blockchain network into two groups: a consensus node set and a candidate node set. Edge servers acting as consensus nodes participate in the consensus algorithm process, while edge servers acting as candidate nodes temporarily do not participate. This design reduces communication overhead in IoT systems while achieving high consensus efficiency and effectively reducing latency, meeting the high real-time requirements of IoT systems. Furthermore, the division of the consensus node set and the candidate node set is not static but dynamically adjusted. Specifically, each node corresponds to its own reputation score, which is dynamically adjusted based on its performance in the consensus algorithm process. This allows for updates to the consensus node set and the candidate node set (adding nodes with high reputation scores to the consensus node set and nodes with low reputation scores to the candidate node set), ensuring that all nodes participating in the consensus algorithm process are of high quality, thus guaranteeing the performance of IoT system authentication.

[0077] It should be noted that the method of this disclosure embodiment can be executed by a single device, such as a computer or server. The method of this embodiment can also be applied to a distributed scenario, where multiple devices cooperate to complete the task. In such a distributed scenario, one of these devices may execute only one or more steps of the method of this disclosure embodiment, and the multiple devices will interact with each other to complete the method described.

[0078] It should be noted that the above description describes some embodiments of this disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in a different order than that shown in the above embodiments and still achieve the desired result. Furthermore, the processes depicted in the drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0079] It should be noted that the embodiments of this disclosure can also be further described in the following ways:

[0080] A blockchain-based IoT terminal identity authentication method is disclosed, which is implemented through an IoT terminal, an edge server, and a cloud computing server; wherein multiple edge servers act as blockchain nodes, forming a blockchain network; the method includes:

[0081] The IoT terminal sends a registration request to the cloud computing server;

[0082] The cloud computing server generates a registration identifier for the IoT terminal based on the registration request, and sends the registration identifier to the blockchain network;

[0083] The IoT terminal sends an identity authentication request to the edge server corresponding to the IoT terminal;

[0084] The edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the identity authentication request, and broadcasts the identity information in the blockchain network.

[0085] The blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server, which acts as the consensus node, verifies the identity information, obtains the verification result, and sends the verification result to the edge server corresponding to the IoT terminal.

[0086] The edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result.

[0087] Optionally, it also includes: dividing the blockchain nodes in the blockchain network into consensus nodes and candidate nodes; specifically including:

[0088] The blockchain nodes in the blockchain network shall be no less than a first preset number as the consensus nodes; the first preset number shall be three times the number of faulty nodes in the blockchain network plus one.

[0089] Other blockchain nodes in the blockchain network besides the consensus node are designated as candidate nodes.

[0090] Optionally, the authentication request includes the identity identifier of the IoT terminal; the edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the authentication request, and broadcasts the identity information in the blockchain network, including:

[0091] The edge server corresponding to the IoT terminal generates the sequence number of the identity authentication request, generates the hash value of the identity identifier, generates the current view number, constructs the identity information including the sequence number, the hash value and the view number, and sends the identity information to the edge server, which acts as the consensus node in the blockchain network.

[0092] Optionally, the edge server, acting as the consensus node, verifies the identity information, obtains a verification result, and sends the verification result to the edge server corresponding to the IoT terminal, including:

[0093] The edge server, acting as the consensus node, verifies the identity information;

[0094] In response to determining that the identity information has been verified, the edge server acting as the consensus node constructs identity pre-confirmation information based on the identity information and sends the identity pre-confirmation information to the other edge servers acting as the consensus node.

[0095] The edge server, which is the consensus node, verifies the identity pre-confirmation information after receiving it.

[0096] In response to determining that the identity pre-confirmation information has passed verification, the edge server, acting as the consensus node, constructs the verification result and sends the verification result to the edge server corresponding to the IoT terminal.

[0097] Optionally, the edge server, acting as the consensus node, that receives the identity pre-confirmation information verifies the identity pre-confirmation information, including:

[0098] The edge server, acting as the consensus node, determines that the identity pre-confirmation information has been verified if it has received no less than a second preset number of the identity pre-confirmation information and the content of the multiple identity pre-confirmation information is consistent; the second preset number is twice the number of the faulty nodes in the blockchain network.

[0099] Optionally, the verification result includes a verification pass message and a verification failure message; the edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result, including:

[0100] The edge server corresponding to the IoT terminal determines that the IoT terminal has passed identity authentication upon receiving no less than a third preset number of verification pass messages; the third preset number is the number of faulty nodes in the blockchain network plus one.

[0101] Optionally, after determining that the IoT terminal has passed authentication, the method further includes:

[0102] The edge server corresponding to the IoT terminal writes the identity authentication result of the IoT terminal and broadcasts the identity authentication result of the IoT terminal in the blockchain network.

[0103] Optionally, each of the edge servers acting as blockchain nodes has a corresponding reputation value; after the edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result, the method further includes:

[0104] The reputation value of the edge server, which acts as the consensus node, is updated based on the identity authentication result.

[0105] Optionally, updating the reputation value of the edge server acting as the consensus node based on the identity authentication result includes:

[0106] In response to confirming that the identity authentication result and the verification result are consistent, the edge server acting as the consensus node increases the reputation value of the edge server acting as the consensus node;

[0107] In response to the confirmation that the identity authentication result and the verification result are inconsistent, the reputation value of the edge server, which is the consensus node, is reduced.

[0108] Optionally, the step of using no less than a first preset number of blockchain nodes in the blockchain network as consensus nodes includes:

[0109] The blockchain nodes in the blockchain network are sorted in descending order of their reputation values;

[0110] The consensus nodes are selected in descending order of their reputation values.

[0111] Those skilled in the art should understand that the discussion of any of the above embodiments is merely exemplary and is not intended to imply that the scope of this disclosure (including the claims) is limited to these examples; within the framework of this disclosure, the technical features of the above embodiments or different embodiments can also be combined, the steps can be implemented in any order, and there are many other variations of different aspects of the embodiments of this disclosure as described above, which are not provided in detail for the sake of brevity.

[0112] Additionally, to simplify the description and discussion, and to avoid obscuring the embodiments of this disclosure, the well-known power / ground connections to the integrated circuit (IC) chip and other components may or may not be shown in the provided drawings. Furthermore, the apparatus may be shown in block diagram form to avoid obscuring the embodiments of this disclosure, and this also takes into account the fact that the details of implementation of these block diagram apparatuses are highly dependent on the platform on which the embodiments of this disclosure will be implemented (i.e., these details should be fully understood by those skilled in the art). While specific details (e.g., circuits) have been set forth to describe exemplary embodiments of this disclosure, it will be apparent to those skilled in the art that the embodiments of this disclosure may be implemented without these specific details or with variations thereof. Therefore, these descriptions should be considered illustrative rather than restrictive.

[0113] Although this disclosure has been described in conjunction with specific embodiments thereof, many substitutions, modifications, and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may be used with the embodiments discussed.

[0114] This disclosure is intended to cover all such substitutions, modifications, and variations that fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.

Claims

1. A blockchain-based IoT terminal identity authentication method, wherein the method is implemented through an IoT terminal, an edge server, and a cloud computing server; wherein, Multiple edge servers, acting as blockchain nodes, constitute a blockchain network; The method includes: The IoT terminal sends a registration request to the cloud computing server; The cloud computing server generates a registration identifier for the IoT terminal based on the registration request, and sends the registration identifier to the blockchain network; The IoT terminal sends an identity authentication request to the edge server corresponding to the IoT terminal; The edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the identity authentication request, and broadcasts the identity information in the blockchain network. The blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes. The edge server acting as a consensus node verifies the identity information, obtains a verification result, and sends the verification result to the edge server corresponding to the IoT terminal. Specifically, the process of the edge server acting as a consensus node verifying the identity information, obtaining a verification result, and sending the verification result to the edge server corresponding to the IoT terminal includes: the edge server acting as a consensus node verifying the identity information; the edge server acting as a consensus node, in response to determining that the identity information has passed verification, constructs identity pre-confirmation information based on the identity information and sends the identity pre-confirmation information to other edge servers acting as consensus nodes; the edge server acting as a consensus node, in response to determining that it has received no less than a second preset number of identity pre-confirmation messages, and that the content of multiple identity pre-confirmation messages is consistent, determines that the identity pre-confirmation information has passed verification; the second preset number is twice the number of faulty nodes in the blockchain network; the edge server acting as a consensus node, in response to determining that the identity pre-confirmation information has passed verification, constructs the verification result and sends the verification result to the edge server corresponding to the IoT terminal. The edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result.

2. The method according to claim 1, further comprising: The blockchain nodes in the blockchain network are divided into consensus nodes and candidate nodes; Specifically, it includes: The blockchain nodes in the blockchain network shall be no less than a first preset number as the consensus nodes; the first preset number shall be three times the number of faulty nodes in the blockchain network plus one. Other blockchain nodes in the blockchain network besides the consensus node are designated as candidate nodes.

3. The method according to claim 2, wherein, The authentication request includes the identity identifier of the IoT terminal; the edge server corresponding to the IoT terminal obtains the identity information of the IoT terminal according to the authentication request, and broadcasts the identity information in the blockchain network, including: The edge server corresponding to the IoT terminal generates the sequence number of the identity authentication request, generates the hash value of the identity identifier, generates the current view number, constructs the identity information including the sequence number, the hash value and the view number, and sends the identity information to the edge server, which acts as the consensus node in the blockchain network.

4. The method according to claim 2, wherein, The verification result includes a verification pass message and a verification fail message; The edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result, including: The edge server corresponding to the IoT terminal determines that the IoT terminal has passed identity authentication upon receiving no less than a third preset number of verification pass messages. The third preset quantity is the number of faulty nodes in the blockchain network plus one.

5. The method according to claim 4, wherein, After determining that the IoT terminal has passed identity authentication, the method further includes: The edge server corresponding to the IoT terminal writes the identity authentication result of the IoT terminal and broadcasts the identity authentication result of the IoT terminal in the blockchain network.

6. The method according to claim 2, wherein, Each of the edge servers, which act as nodes in the blockchain, has a corresponding reputation value. After the edge server corresponding to the IoT terminal obtains the identity authentication result of the IoT terminal based on the verification result, the method further includes: The reputation value of the edge server, which acts as the consensus node, is updated based on the identity authentication result.

7. The method according to claim 6, wherein, Updating the reputation value of the edge server acting as the consensus node based on the identity authentication result includes: In response to confirming that the identity authentication result and the verification result are consistent, the edge server acting as the consensus node increases the reputation value of the edge server acting as the consensus node; In response to the confirmation that the identity authentication result and the verification result are inconsistent, the reputation value of the edge server, which is the consensus node, is reduced.

8. The method according to claim 6, wherein, The step of designating at least a first preset number of blockchain nodes in the blockchain network as consensus nodes includes: The blockchain nodes in the blockchain network are sorted in descending order of their reputation values; The consensus nodes are selected in descending order of their reputation values.

Citation Information

Patent Citations

  • Identity authentication method and device based on block chain

    CN111753269A

  • Transaction processing method and device applied to blockchain

    CN112883114A