A distributed IoT security authentication method, system and smart terminal device

By building a common attribute set and other attribute distribution vectors in the distributed environment of the Internet of Things, and selecting attributes with good distinction for encryption, the problems of wasted computing resources and low communication efficiency in traditional attribute encryption methods are solved, and efficient and secure data transmission is achieved.

CN119135454BActive Publication Date: 2025-03-04DAQING SUOFU ELECTRONIC TECH DEV CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411620372.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-14
Publication Date
2025-03-04
Estimated Expiration
2044-11-14

AI Technical Summary

Technical Problem

In the distributed environment of the Internet of Things, traditional attribute encryption methods require the use of a large number of common attributes for encryption, resulting in wasting computing resources during encryption and decryption, and the system communication efficiency decreased.

Method used

By obtaining the common attribute set of the current node and the target node, and constructing other attribute distribution vectors based on the trustworthiness and attribute distribution vectors of known nodes, generating reference attribute distribution vectors based on data similarity, selecting attributes with good distinction for encryption, reducing the number of attributes used during encryption.

Benefits of technology

It improves the accuracy of the selection of encryption attributes, reduces the number of attributes used in the encryption process, improves communication efficiency, and ensures the security of data transmission.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119135454B_ABST
    Figure CN119135454B_ABST
Patent Text Reader

Abstract

The present application relates to the field of Internet of Things security access technology, and specifically to a distributed IoT security authentication method, system and smart terminal device, which specifically includes: obtaining the attributes common to the current node and the target node to construct a common attribute set, and constructing the credibility of each known node based on the frequency of the node receiving information and the most recent communication time of the known node; constructing other attribute distribution vectors in combination with the appearance of the attributes of the known nodes in the common attribute set; constructing a reference attribute distribution vector based on the similarity between the data that the current node needs to transmit and the data transmitted by the known node to the current node, and combining the credibility; obtaining the attributes used for encryption based on other reference attribute distribution vectors and the security level of the target node, and performing security authentication through attribute encryption. While improving the reliability of security authentication, compared with traditional attribute encryption, the attributes used in encryption are reduced, and communication efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of Internet of Things security access technology, and specifically to a distributed IoT security authentication method, system and smart terminal device. Background Art

[0002] IoT (Internet of Things) is a network based on information carriers such as the Internet and traditional telecommunications networks, which enables all common physical objects that can be independently addressed to be interconnected. In the IoT, data is stored in each node in a distributed manner. When the nodes of the IoT communicate with each other, identity authentication is required to avoid information leakage.

[0003] Attribute-based encryption is an encryption method that can customize access to fine-grained information. The encryptor can customize a set of attributes when encrypting, and the decryptor can only decrypt the ciphertext when it has all the attributes in the set of attributes. When the Internet of Things transmits data, nodes can define the encryption attributes of the transmitted data so that the data can only be decrypted by the target node, achieving the effect of security authentication during data transmission.

[0004] When attribute encryption is used in distributed IoT, due to the large number of nodes in the IoT, it is necessary to consider how to assign the correct attributes to the plaintext of the current node so that the target node can decrypt while other nodes cannot. The traditional attribute assignment method is to find all common attributes of the current node and the target node, and use the common attributes as the assigned attributes. However, there are too many attributes involved in the common attributes, and too many attributes will cause the nodes to spend more computing resources when encrypting and decrypting, resulting in a decrease in system communication efficiency. Summary of the invention

[0005] In order to solve the above technical problems, the purpose of this application is to provide a distributed IoT security authentication method, system and smart terminal device. The technical solutions adopted are as follows:

[0006] In a first aspect, an embodiment of the present application provides a distributed IoT security authentication method, the method comprising the following steps:

[0007] Obtain the attribute information shared by the current node and all target nodes through the IoT terminal, combine them to obtain a common attribute set, and obtain known nodes from other nodes; determine the most recent communication time, known attribute set and digital fingerprint of each known node based on the data transmitted by each known node to the current node; determine the security level of the node based on the frequency of the node receiving information;

[0008] Based on the distance between the most recent communication time and the current time, combined with the corresponding security level, the credibility of each known node is constructed; based on the appearance of the attributes in the known attribute set in the common attribute set, the attribute distribution vector of each known node is constructed, and other attribute distribution vectors are constructed in combination with the credibility;

[0009] Obtaining the digital fingerprint of the data that the current node needs to transmit through a fingerprint generation algorithm; constructing the data similarity between the current node and each known node based on the similarity between the digital fingerprints of the current node and the known nodes in combination with the credibility; obtaining a reference attribute distribution vector based on the attribute distribution vector and the data similarity in the same manner as other attribute distribution vectors;

[0010] Based on the element sizes in other attribute distribution vectors and reference attribute distribution vectors, combined with the security levels of all target nodes, the attributes used for encryption when the current node performs data transmission are obtained; based on the attributes used for encryption, IoT security authentication is performed through attribute encryption.

[0011] In one embodiment, the known node is:

[0012] The node that needs to transmit data is regarded as the current node, the node that receives data is regarded as the target node, the nodes other than the current node and the target node are regarded as other nodes, and the other nodes that have transmitted data to the current node are regarded as known nodes.

[0013] In one embodiment, the most recent communication time, known attribute set and digital fingerprint of each known node are:

[0014] The time when each known node last transmitted data to the current node is recorded as the most recent communication time, and the set of attributes involved in the corresponding transmission data is taken as the known attribute set of each known node; the digital fingerprint of the data transmitted by each known node at the most recent communication time is obtained through the fingerprint generation algorithm.

[0015] In one embodiment, the process of obtaining the security level is as follows:

[0016] The normalized value of the frequency at which each node in the Internet of Things receives information is multiplied by the preset highest security level and then rounded up to obtain the security level of each node.

[0017] In one embodiment, the process of obtaining the credibility of each known node is as follows:

[0018] The difference between the most recent communication time of each known node and the current time is recorded as the first difference;

[0019] The credibility of each known node is positively correlated with the security level of each known node, and negatively correlated with the first difference.

[0020] In one embodiment, the process of obtaining the other attribute distribution vector is as follows:

[0021] Assume the number of elements in the common attribute set is K; set an initial vector of length K, where the initial value of each element is 0;

[0022] For each known node, all attributes in the known attribute set of the known node are traversed. If the traversed attribute is consistent with the kth attribute in the common attribute set, the kth element of the initial vector is added by 1; the initial vector obtained after traversing all attributes in the known attribute set of the known node is recorded as the attribute distribution vector of the known node; the credibility of the known node is multiplied by the attribute distribution vector, and the obtained vector is recorded as the weighted attribute distribution vector;

[0023] The vector obtained by summing the weighted attribute distribution vectors of all known nodes is recorded as the attribute sum vector; the sum of the credibility of the attribute distribution vectors of all known nodes is recorded as the first sum; the ratio of each element in the attribute sum vector to the first sum is recorded as the first ratio, and the vector composed of the first ratios of all elements in the attribute sum vector is recorded as other attribute distribution vectors.

[0024] In one embodiment, the process of obtaining the data similarity is:

[0025] The similarity between the digital fingerprints of the current node and each known node is obtained through a similarity algorithm, and the fusion value of the similarity and the credibility of each known node is used as the data similarity between each known node and the current node.

[0026] In one embodiment, the process of obtaining the attribute for encryption is:

[0027] Taking the inverse of all elements in the other attribute distribution vector, and then summing them with the reference attribute distribution vector, the obtained vector is recorded as the allocation reference vector; each element in the allocation reference vector is used as the allocation reference value of the corresponding common attribute;

[0028] Calculate the average of the security levels of all target nodes, and use the ratio of the average to the highest security level as the security level of the data to be transmitted by the current node; multiply the security level of the data to be transmitted by the total number of common attributes and then round down, and record the rounded result as the first number;

[0029] All common attributes are arranged from large to small according to the assigned reference values, and the first first number of common attributes are used as the attributes for encryption.

[0030] In a second aspect, the embodiment of the present application further provides a distributed IoT security authentication system, including:

[0031] Data collection and preprocessing module: obtain the attribute information shared by the current node and all target nodes through the IoT terminal, combine them to obtain the common attribute set, and obtain the known nodes in other nodes; determine the most recent communication time, known attribute set and digital fingerprint of each known node based on the data transmitted by each known node to the current node; determine the security level of the node based on the frequency of the node receiving information;

[0032] Other attribute analysis module: based on the distance between the most recent communication time and the current time, combined with the corresponding security level, construct the credibility of each known node; based on the appearance of the attributes in the known attribute set in the common attribute set, construct the attribute distribution vector of each known node, and construct other attribute distribution vectors in combination with the credibility;

[0033] Reference attribute generation module: obtains the digital fingerprint of the data that the current node needs to transmit through a fingerprint generation algorithm; based on the similarity between the digital fingerprints of the current node and the known nodes, combined with the credibility, constructs the data similarity between the current node and each known node; based on the attribute distribution vector and the data similarity, obtains the reference attribute distribution vector in the same way as other attribute distribution vectors;

[0034] Security authentication module: Based on the element sizes in other attribute distribution vectors and reference attribute distribution vectors, combined with the security levels of all target nodes, obtain the attributes of the current node used for encryption; perform security authentication through attribute encryption based on the attributes used for encryption.

[0035] In a third aspect, an embodiment of the present application also provides a distributed IoT security authentication smart terminal device, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the processor implements the steps of any one of the above methods when executing the computer program.

[0036] The embodiments of the present application have at least the following beneficial effects:

[0037] The present application constructs a common attribute set by acquiring the attributes that the current node and the target node have in common, and acquires the data information transmitted to the current node by known nodes in other nodes; constructs the credibility of each known node based on the frequency of receiving information by the node and the most recent communication time of the known node, and uses the credibility as a weight to increase the proportion of data information of reliable known nodes, which is conducive to improving the accuracy of subsequent acquisition of attributes with poor distinguishability; constructs the attribute distribution vector of each known node based on the appearance of the attributes of the known nodes in the common attribute set, and constructs other attribute distribution vectors in combination with the credibility, and evaluates the suitability of each attribute in the common attribute set for selection as an attribute used for encryption; and constructs the attribute distribution vector based on the data that the current node needs to transmit and the data transmitted by the known node to the current node. The similarity between the two common attributes is measured, and a reference attribute distribution vector is constructed in combination with the credibility and the attribute distribution vector, so as to further evaluate the suitability of each common attribute, which is beneficial to improving the accuracy of selecting attributes for encryption; based on other attribute distribution vectors, reference attribute distribution vectors and the security level of all target nodes, the attribute used for encryption when the current node transmits data is obtained; security authentication is performed through attribute encryption based on the attribute used for encryption; since the attributes ranked top in the assigned reference sorting are attributes with good distinguishing properties, selecting these attributes can ensure that only the target node can decrypt the transmitted ciphertext, and other nodes cannot decrypt it, thereby ensuring the reliability of security authentication; at the same time, compared with traditional attribute encryption, the attributes used in encryption are reduced, thereby improving communication efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] In order to more clearly illustrate the technical solutions and advantages in the embodiments of the present application or the prior art, the drawings required for use in the embodiments or the prior art descriptions are briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0039] Figure 1 A flowchart of a distributed IoT security authentication method provided by one embodiment of the present application;

[0040] Figure 2 It is a safety authentication flow chart;

[0041] Figure 3 A structural diagram of a distributed IoT security authentication system. DETAILED DESCRIPTION

[0042] In order to further explain the technical means and effects adopted by this application to achieve the predetermined invention purpose, the following is a detailed description of the specific implementation method, structure, features and effects of a distributed IoT security authentication method, system and smart terminal device proposed in this application in combination with the accompanying drawings and preferred embodiments. In the following description, different "one embodiment" or "another embodiment" does not necessarily refer to the same embodiment. In addition, specific features, structures or characteristics in one or more embodiments may be combined in any suitable form.

[0043] Unless defined otherwise, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs.

[0044] The following is a detailed description of a distributed IoT security authentication method, system, and specific solutions for smart terminal devices provided by the present application in conjunction with the accompanying drawings.

[0045] See also Figure 1 , which shows a flow chart of the steps of a distributed IoT security authentication method provided by an embodiment of the present application, the method comprising the following steps:

[0046] Step S1, taking the node that needs to transmit data as the current node, obtaining the attribute information shared by the current node and all target nodes through the Internet of Things terminal, and constructing a common attribute set; determining the known nodes among other nodes.

[0047] When transmitting distributed IoT data, attribute encryption can be used to assign attributes to the data, and the target nodes that can decrypt the ciphertext can be limited by attributes to complete the security identity authentication of the target node.

[0048] Each attribute information of each IoT node is collected through the IoT terminal, such as the device type of the IoT node, the data storage capacity of the IoT, and the installation time of the IoT node. Each attribute information of the IoT node can be used as an attribute of the IoT node.

[0049] In the traditional attribute encryption method, the current node sends a query request to the IoT terminal, which contains the target node information. The IoT terminal obtains the attributes shared by the current node and the target node through the locally stored attribute information and target node information, and completes attribute encryption through these common attributes. The encryption process is:

[0050] First, the IoT node generates a private key through common attributes and sends it to the current node. The current node encrypts the plaintext with the private key to obtain the ciphertext and uploads it to the network. When any node wants to decrypt the ciphertext, it selects a part of its own attributes and sends a public key request to the IoT terminal. The public key request contains the attributes selected by the node. The IoT terminal generates a public key based on the attributes selected by the node and sends it to the node. The node uses the public key to decrypt the ciphertext. If the decryption is successful, the security authentication is passed, otherwise the security authentication fails.

[0051] (1) When acquiring data, the node that needs to transmit data is regarded as the current node, the node that receives data is regarded as the target node, the nodes other than the current node and the target node are regarded as other nodes, and the other nodes that have transmitted data to the current node are regarded as known nodes. Specifically:

[0052] (1.1) First, take node A as an example, set node A as the current node, and record the data that needs to be encrypted at node A as .

[0053] (1.2) Furthermore, node A needs to transmit data to multiple target nodes. Assume that there are N target nodes, where the nth target node is denoted as .

[0054] (1.3) Finally, get the known nodes among other nodes:

[0055] In the Internet of Things, there are other nodes besides the current node and the target node. Therefore, the nodes besides the current node and the target node are regarded as other nodes. The ciphertext transmitted by node A may pass through other nodes, but it is not hoped that other nodes can obtain the plaintext through the ciphertext. Therefore, when node A encrypts the plaintext, it needs to select attributes that other nodes do not have as much as possible for attribute encryption.

[0056] Due to the large number of nodes in the Internet of Things, node A may not be able to know all other nodes when performing attribute encryption; at the same time, since the attributes of nodes in the Internet of Things will change according to transmission requirements, node A cannot determine the specific attributes of other nodes. Therefore, traditional attribute encryption will use all attributes shared by node A and all target nodes as data. However, too many encryption attributes will lead to waste of encryption resources and affect communication efficiency.

[0057] This application obtains the attribute information of some known nodes from the historical transmission data of node A. The attribute information of other nodes can be inferred through the attribute information of these nodes. Specifically:

[0058] The other nodes that have transmitted data with node A as the target node in the past are regarded as the known nodes of node A among other nodes. Assuming that there are M known nodes, the mth known node is recorded as .

[0059] (2) When data needs to be transmitted , the attribute information shared by node A and all target nodes is obtained through the IoT terminal:

[0060] Node A sends a query request to the IoT terminal, which returns the attributes shared by node A and all target nodes, and forms a common attribute set with these attributes. Assume that there are K elements in the common attribute set, and the kth element is the kth common attribute.

[0061] Step S2, based on the historical communication data of each known node, determine the most recent communication time and known attribute set of each known node, and construct a data signature of each known node; determine the security level of each node based on the frequency of receiving information of each node.

[0062] (1) Based on the historical communication log, obtain the known node information and construct the data signature of each known node:

[0063] Get the mth known node The time when the data was last transmitted to node A is recorded as the most recent communication time. ;

[0064] Obtain the attributes involved in the data transmitted by the m-th known node at the most recent communication moment to form a known attribute set of the m-th known node;

[0065] The mth known node The data transmitted at the most recent communication moment is used as the input of the SHA-256 algorithm, and the output string is a digital fingerprint, which is recorded as the data signature of the mth known node. The SHA-256 algorithm is a well-known technology, and the specific process is not repeated here. It should be noted that for the mth known node The fingerprint generation of the data transmitted at the most recent communication moment. This application only provides a digital fingerprint generation method. There are many existing fingerprint generation methods. The implementer can also use other fingerprint generation algorithms to perform the mth known node The fingerprint generation of the data transmitted at the most recent communication moment is not specifically limited in this application.

[0066] (2) Set the security level of the node:

[0067] A corresponding security level can be obtained for node A, all target nodes, and all known nodes. The security level is assigned according to the importance of the node. The higher the security level, the more the relevant data of the node needs to be kept confidential.

[0068] The security level in this application is an integer from 1 to G. Preferably, in the embodiment of this application, the highest security level G is set to 12. In other embodiments of this application, the implementer can set the highest security level G according to actual conditions.

[0069] The more frequently a node receives information, the more likely it is to be a central node in the Internet of Things, the more likely it is to receive sensitive data, and the higher its security level. Therefore, the frequency of information reception for each node in the Internet of Things is obtained, in units of times per minute; the frequency of receiving information for all nodes is further linearly normalized to obtain the security factor; finally, the security factor of each node is multiplied by the highest security level G and then rounded up to obtain the security level of each node.

[0070] Step S3, calculate the credibility of each known node based on the security level of each known node and the most recent communication time, construct the attribute distribution vector of each known node based on the occurrence of the attributes of each known node in the common attribute set, and construct other attribute distribution vectors of all known nodes based on the attribute distribution vectors and credibility of all known nodes.

[0071] Traditional attribute encryption directly selects all attributes in the common attribute set and assigns them to the data. ,This will result in too much encrypted ciphertext, and it will take a lot of time to decrypt the data at the target node.

[0072] This application infers the attribute distribution of other nodes based on the attribute distribution of known nodes, and compares the attribute distribution of other nodes with the attribute distribution of the target node to find attributes that have a low probability of appearing in other attribute distributions but a high probability of appearing in the attribute distribution of the target node. These attributes can better distinguish the target node from other nodes and are common attributes with good distinguishability.

[0073] Since the common attributes exist in the attributes of the target node, this application only obtains the distribution of other attributes.

[0074] When performing attribute encryption, select common attributes with good distinguishability to replace all common attributes, which can improve encryption efficiency and effectively prevent the ciphertext from being cracked by other nodes. The specific method is:

[0075] (1) Calculate the credibility of each known node based on its security level and the most recent communication time:

[0076] Since the properties of nodes in the Internet of Things will change according to actual needs, it is known that nodes and the current moment The larger the time difference, the more known nodes The more likely the attribute of a node is to have changed, the less credible the corresponding known attribute set data is. The lower the security level, the more likely the data it transmits is to be attacked, and the less credible its corresponding known attribute set is.

[0077] Calculate the difference between the most recent communication time of each known node and the current time, and record it as the first difference;

[0078] The credibility of each known node is positively correlated with the security level of each known node, and negatively correlated with the first difference.

[0079] It can be understood that the positive correlation and negative correlation in this application refer to the relationship between the independent variable and the dependent variable. The positive correlation means that the independent variable increases (decreases) as the dependent variable increases (decreases); the negative correlation means that the independent variable decreases (increases) as the dependent variable increases (decreases); the specific positive correlation and negative correlation can be determined according to actual conditions during the application process, and this application does not impose any special restrictions.

[0080] Preferably, in one embodiment of the present application, the calculation expression of the credibility of each known node can be: , where Is a known node credibility, Is a known node The safety level, Is a known node Last communication time , is the current moment, and z is a constant to prevent the denominator from being 0. Preferably, in the embodiment of the present application, the value of z is set to 1. In other embodiments of the present application, the implementer can set the value of z according to the actual situation.

[0081] In other embodiments of the present application, the calculation expression of the credibility of each known node can be: , where It is an exponential function with the natural constant e as its base.

[0082] Among them, the known nodes The higher the security level, the smaller the time difference between the most recent communication time and the current time, and the known nodes The greater the credibility, the more known the node is. The more credible the set of known attributes is.

[0083] (2) Construct the attribute distribution vector of each known node based on the occurrence of the attribute of each known node in the common attribute set, and construct other attribute distribution vectors of all known nodes based on the attribute distribution vectors and credibility of all known nodes:

[0084] Although it is difficult for node A to directly obtain the attributes of all nodes in the Internet of Things at the current moment, it can infer the attribute distribution of other nodes based on the known attribute set.

[0085] When obtaining other attribute distribution vectors through a known attribute set, other attribute distribution vectors should be obtained through a known attribute set of a known node with high credibility to obtain a more accurate attribute distribution result.

[0086] First, an initial vector of length K is set, wherein the initial values ​​of the K elements are 0; the K elements correspond one-to-one to the K common attributes in the common attribute set.

[0087] Furthermore, for the mth known node , traverse all the attributes in its known attribute set. If the traversed attribute is consistent with the kth common attribute in the common attribute set, then add 1 to the kth element of the initial vector; the initial vector obtained after traversing all the attributes of the known attribute set is recorded as the attribute distribution vector of the mth known node;

[0088] Furthermore, the known nodes The credibility of the known node is used as the first weight of the attribute distribution vector of the known node. The credibility of is multiplied by the attribute distribution vector of the known node, and the obtained vector is recorded as the weighted attribute distribution vector;

[0089] Furthermore, the vector obtained by summing the weighted attribute distribution vectors of all known nodes is recorded as the attribute sum vector;

[0090] For example, there are two known nodes, whose attribute distribution vectors are (1,0,1,1) and (0,1,0,1), and the corresponding first weights are 0.2 and 0.3, respectively. Then the weighted attribute distribution vector is calculated as: .

[0091] The kth element in the attribute and vector represents the frequency of occurrence of the attribute corresponding to the kth element in the set of all known attributes, with the credibility of the known node as the first weight.

[0092] Finally, the sum of the first weights of the attribute distribution vectors of all known nodes is calculated and recorded as the first sum; the ratio of each element in the attribute sum vector to the first sum is recorded as the first ratio, and the vector composed of the first ratios of K elements in the attribute sum vector is recorded as other attribute distribution vectors.

[0093] The kth element in the other attribute distribution vector can achieve the effect of inferring other node attributes through known node attributes. The larger the value of the kth element, the greater the probability of the kth common attribute appearing in other nodes after inference, which means that the kth common attribute is less distinguishable and is less likely to be selected during attribute encryption.

[0094] Step S4, obtain the data signature of the current node A, based on the similarity between the data signatures of node A and the known nodes, combined with the credibility of the known nodes, construct the data similarity between the current node A and each known node, and calculate the reference attribute distribution vector.

[0095] At known nodes When transmitting data to node A, attribute encryption is also used to achieve security authentication. Data transmitted to node A and data Similar, then The more likely the target node is to be connected to the data The more similar the target nodes are, the more likely the attributes involved in data transmission can be used as data. Reference for attribute selection.

[0096] Since the known nodes may have node information that node A does not have, so if the data With known nodes The more similar the data being transmitted is, the more The more you refer to a known node The more attributes are selected at that time, the more the attributes selected by node A can distinguish the target node from other nodes, and the better the security authentication effect can be obtained.

[0097] Therefore, this application combines data similarity to calculate the reference attribute distribution vector, using known nodes The attribute selected when transferring data is data For reference.

[0098] (1) First, the data As the input of the SHA-256 algorithm, the output string is a digital fingerprint, which is recorded as the data signature of node A. It should be noted that for data Fingerprint generation, this application only provides a digital fingerprint generation method, there are many existing fingerprint generation methods, implementers can also use other fingerprint generation algorithms to perform data This application does not impose any specific restrictions on fingerprint generation.

[0099] (2) Further, for the data signature of node A and known nodes Digital signature , both digital fingerprints are a hash string of length 256, and their data storage form is a vector, where the element value of the rth element is the encoding of the rth bit position of the hash string;

[0100] So the data is signed and digital signature As the input of the cosine similarity algorithm, similarity calculation is performed, and the output is the cosine similarity between the two data signatures. The cosine similarity is summed with the natural number 1 to complete the non-negative processing of the cosine similarity, and the sum result is recorded as the first similarity. Among them, the cosine similarity algorithm is a well-known technology, and the specific process is not repeated here.

[0101] It should be noted that for data signature and digital signature The present embodiment only provides a similarity calculation method. There are many existing similarity calculation methods. The implementer can also use other similarity algorithms to perform data signing. and digital signature The similarity calculation between them is not specifically limited in this application.

[0102] (3) Further, the first similarity is compared with the known nodes The fusion value of the credibility of the known node Transferring data to and from The data similarity between . Data similarity The larger the value, the more similar the two data are. It should be noted that the fusion described in this application is to combine multiple variables. The specific fusion method can be determined according to the actual situation during the application process, and this application does not make any special restrictions.

[0103] Preferably, in one embodiment of the present application, the data similarity The first similarity with the known node The product of the credibility.

[0104] In other embodiments of the present application, the data similarity Can be a known node The normalized value of the credibility and the sum of the first similarity.

[0105] (4) Further, the known nodes The data similarity of is used as the second weight of the attribute distribution vector of the known node, that is, the known node The data similarity is multiplied by the attribute distribution vector of the known node, and the obtained vector is recorded as the weighted reference vector; the vector obtained by summing the weighted reference vectors of all known nodes is recorded as the reference sum vector.

[0106] (5) Finally, calculate the sum of the second weights of the attribute distribution vectors of all known nodes, recorded as the second sum; record the ratio of each element in the reference sum vector to the second sum as the second ratio, and record the vector composed of the second ratios of K elements in the attribute sum vector as the reference attribute distribution vector. The kth element represents the reference value of the kth common attribute in M ​​known nodes. The larger the value, the more consistent with the data. In similar data, the greater the probability of the kth common attribute appearing, the more distinguishing the kth common attribute is, and the more this attribute should be selected during attribute encryption.

[0107] Step S5, obtaining the encryption attribute of the current node based on the element sizes in other attribute distribution vectors and the reference attribute distribution vector.

[0108] By calculating the distribution vectors of other attributes and the reference attribute, we can select common attributes with good discrimination. When assigning attributes, selecting attributes with good differentiation can improve the communication efficiency of the system while ensuring the security of identity authentication. Therefore, this application combines the security level of the node and the two attribute distributions to provide a Assign attributes.

[0109] For data , obtain the corresponding other attribute distribution vectors and reference attribute distribution vectors. Both attribute distributions are in vector form, and the kth element in the vector corresponds to the kth common attribute.

[0110] First, the data Take the opposite number of each element in the other attribute distribution vectors, and then sum it with the reference attribute distribution vector to obtain a vector of length K, recorded as the allocation reference vector, where the kth element is recorded as the allocation reference value of the kth common attribute. The larger the value, the better the distinguishability of the kth common attribute, and the more likely it is that the kth common attribute should be selected to encrypt data. .

[0111] The K common attributes are further sorted from large to small according to the allocation reference value, and the resulting sorting is recorded as the allocation reference sorting. The later the sorting, the smaller the allocation reference value, and the less distinguishable the common attribute is, the less likely it is to be selected for encryption data.

[0112] Furthermore, the security levels of all target nodes are obtained and the average is calculated, and then the average is divided by the highest security level G as data The data security level of The higher the security level of the target node to which the data is transmitted, the The more important the data is, the more encryption resources should be consumed.

[0113] Then, use the data The data security level is multiplied by the total number of common attributes K and then rounded down to get the number of common attribute selections L. The larger the value, the higher the data security level. The more important the data is, the more encryption resources are allocated to it, and more common attributes are selected for encryption.

[0114] Finally, according to the allocation reference sorting, the first L attributes are selected as data The encryption attribute of the data Encryption is performed.

[0115] Step S6, using the assigned attributes and attribute encryption to achieve a security authentication effect.

[0116] Security certification process such as Figure 2 As shown, the data As input, the attribute encryption algorithm is used, the necessary parameters are the selected attributes, and the selected L attributes are used as the selected attributes in this application, and the output is data Attribute encryption is a well-known technology, and the specific process will not be described in detail.

[0117] Further, node A sends data The ciphertext is uploaded to the network, and all nodes that receive the ciphertext can Since any one of the target nodes has all the selected L attributes, and any one of the other nodes lacks some attributes, only the target node has passed the security authentication and can obtain the plaintext data through decryption. .

[0118] This completes the security authentication method of distributed IoT.

[0119] See also Figure 3 , Figure 3 Schematic diagram of the structure of a distributed IoT security authentication system provided by an embodiment of the present application. The units included in the terminal in the present application are used to execute the steps in the embodiment corresponding to a distributed IoT security authentication method. Figure 3 , the security authentication system includes:

[0120] Data collection and preprocessing module: obtain the attribute information shared by the current node and all target nodes through the IoT terminal, combine them to obtain the common attribute set, and obtain the known nodes in other nodes; determine the most recent communication time, known attribute set and digital fingerprint of each known node based on the data transmitted by each known node to the current node; determine the security level of the node based on the frequency of the node receiving information;

[0121] Other attribute analysis module: based on the distance between the most recent communication time and the current time, combined with the corresponding security level, construct the credibility of each known node; based on the appearance of the attributes in the known attribute set in the common attribute set, construct the attribute distribution vector of each known node, and construct other attribute distribution vectors in combination with the credibility;

[0122] Reference attribute generation module: obtains the digital fingerprint of the data that the current node needs to transmit through a fingerprint generation algorithm; based on the similarity between the digital fingerprints of the current node and the known nodes, combined with the credibility, constructs the data similarity between the current node and each known node; based on the attribute distribution vector and the data similarity, obtains the reference attribute distribution vector in the same way as other attribute distribution vectors;

[0123] Security authentication module: Based on the element sizes in other attribute distribution vectors and reference attribute distribution vectors, combined with the security levels of all target nodes, obtain the attributes of the current node used for encryption; perform security authentication through attribute encryption based on the attributes used for encryption.

[0124] Based on the same inventive concept as the above method, an embodiment of the present application also provides a distributed IoT security authentication smart terminal device, including a memory, a processor, and a computer program stored in the memory and running on the processor, and when the processor executes the computer program, it implements the steps of any one of the above-mentioned distributed IoT security authentication methods.

[0125] In summary, the embodiment of the present application provides a distributed IoT security authentication method, which constructs a common attribute set by acquiring the attributes shared by the current node and the target node, and acquires data information transmitted by known nodes in other nodes to the current node; constructs the credibility of each known node based on the frequency of the node receiving information and the most recent communication time of the known node, and uses the credibility as a weight to increase the proportion of data information of reliable known nodes, which is beneficial to improving the accuracy of subsequent acquisition of attributes with poor distinguishability; constructs an attribute distribution vector of each known node based on the appearance of the attributes of the known nodes in the common attribute set, and constructs other attribute distribution vectors in combination with the credibility, and evaluates the suitability of each attribute in the common attribute set for selection as an attribute used for encryption; based on the data that the current node needs to transmit The similarity between the data transmitted from the known node to the current node is combined with the credibility and the attribute distribution vector to construct a reference attribute distribution vector, and the suitability of each common attribute is further evaluated, which is beneficial to improving the accuracy of selecting attributes for encryption; based on other attribute distribution vectors, reference attribute distribution vectors and the security level of all target nodes, the attribute used for encryption when the current node transmits data is obtained; security authentication is performed through attribute encryption based on the attribute used for encryption; since the attributes ranked top in the assigned reference sorting are attributes with good distinguishing properties, selecting these attributes can ensure that only the target node can decrypt the transmitted ciphertext, and other nodes cannot decrypt it, thereby ensuring the reliability of security authentication; at the same time, compared with traditional attribute encryption, the attributes used in encryption are reduced, thereby improving communication efficiency.

[0126] It should be noted that the above-mentioned sequence of the embodiments of the present application is only for description and does not represent the advantages and disadvantages of the embodiments. The above-mentioned specific embodiments of the present application are described. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0127] The various embodiments in the present application are described in a progressive manner, and the same or similar parts between the various embodiments can be referenced to each other, and each embodiment focuses on the differences from other embodiments.

[0128] The above description is only a preferred embodiment of the present application and is not intended to limit the present application. Any modifications, equivalent substitutions, improvements, etc. made within the principles of the present application should be included in the protection scope of the present application.

Claims

1. A distributed IoT security authentication method, characterized in that: The method comprises the following steps: Obtain the attribute information shared by the current node and all target nodes through the IoT terminal, combine them to obtain a common attribute set, and obtain known nodes from other nodes; determine the most recent communication time, known attribute set and digital fingerprint of each known node based on the data transmitted by each known node to the current node; determine the security level of the node based on the frequency of the node receiving information; Based on the distance between the most recent communication time and the current time, combined with the corresponding security level, the credibility of each known node is constructed; based on the appearance of the attributes in the known attribute set in the common attribute set, the attribute distribution vector of each known node is constructed, and other attribute distribution vectors are constructed in combination with the credibility; Obtaining the digital fingerprint of the data that the current node needs to transmit through a fingerprint generation algorithm; constructing the data similarity between the current node and each known node based on the similarity between the digital fingerprints of the current node and the known nodes in combination with the credibility; obtaining a reference attribute distribution vector based on the attribute distribution vector and the data similarity in the same manner as other attribute distribution vectors; Based on the element sizes in other attribute distribution vectors and reference attribute distribution vectors, combined with the security levels of all target nodes, the attributes used for encryption when the current node performs data transmission are obtained; based on the attributes used for encryption, IoT security authentication is performed through attribute encryption.

2. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The known nodes are: The node that needs to transmit data is regarded as the current node, the node that receives data is regarded as the target node, the nodes other than the current node and the target node are regarded as other nodes, and the other nodes that have transmitted data to the current node are regarded as known nodes.

3. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The most recent communication time, known attribute set and digital fingerprint of each known node are: The time when each known node last transmitted data to the current node is recorded as the most recent communication time, and the set of attributes involved in the corresponding transmission data is taken as the known attribute set of each known node; the digital fingerprint of the data transmitted by each known node at the most recent communication time is obtained through the fingerprint generation algorithm.

4. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The process of obtaining the security level is as follows: The normalized value of the frequency at which each node in the Internet of Things receives information is multiplied by the preset highest security level and then rounded up to obtain the security level of each node.

5. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The process of obtaining the credibility of each known node is as follows: The difference between the most recent communication time of each known node and the current time is recorded as the first difference; The credibility of each known node is positively correlated with the security level of each known node, and negatively correlated with the first difference.

6. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The acquisition process of the other attribute distribution vectors is as follows: Assume the number of elements in the common attribute set is K; set an initial vector of length K, where the initial value of each element is 0; For each known node, all attributes in the known attribute set of the known node are traversed. If the traversed attribute is consistent with the kth attribute in the common attribute set, the kth element of the initial vector is added by 1; the initial vector obtained after traversing all attributes in the known attribute set of the known node is recorded as the attribute distribution vector of the known node; the credibility of the known node is multiplied by the attribute distribution vector, and the obtained vector is recorded as the weighted attribute distribution vector; The vector obtained by summing the weighted attribute distribution vectors of all known nodes is recorded as the attribute sum vector; the sum of the credibility of the attribute distribution vectors of all known nodes is recorded as the first sum; the ratio of each element in the attribute sum vector to the first sum is recorded as the first ratio, and the vector composed of the first ratios of all elements in the attribute sum vector is recorded as other attribute distribution vectors.

7. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The process of obtaining the data similarity is as follows: The similarity between the digital fingerprints of the current node and each known node is obtained through a similarity algorithm, and the fusion value of the similarity and the credibility of each known node is used as the data similarity between each known node and the current node.

8. A distributed IoT security authentication method as claimed in claim 1, characterized in that: The process of obtaining the attribute used for encryption is: Taking the inverse of all elements in the other attribute distribution vector, and then summing them with the reference attribute distribution vector, the obtained vector is recorded as the allocation reference vector; each element in the allocation reference vector is used as the allocation reference value of the corresponding common attribute; Calculate the average security level of all target nodes, and use the ratio of the average to the highest security level as the security level of the data to be transmitted by the current node; Multiplying the security level of the data to be transmitted by the total number of common attributes and rounding down, and recording the rounded-down result as a first number; All common attributes are arranged from large to small according to the assigned reference values, and the first first number of common attributes are used as the attributes for encryption.

9. A distributed IoT security authentication system, comprising: Data collection and preprocessing module: obtain the attribute information shared by the current node and all target nodes through the IoT terminal, combine them to obtain the common attribute set, and obtain the known nodes in other nodes; determine the most recent communication time, known attribute set and digital fingerprint of each known node based on the data transmitted by each known node to the current node; determine the security level of the node based on the frequency of the node receiving information; Other attribute analysis module: based on the distance between the most recent communication time and the current time, combined with the corresponding security level, construct the credibility of each known node; based on the appearance of the attributes in the known attribute set in the common attribute set, construct the attribute distribution vector of each known node, and construct other attribute distribution vectors in combination with the credibility; Reference attribute generation module: obtains the digital fingerprint of the data that the current node needs to transmit through a fingerprint generation algorithm; based on the similarity between the digital fingerprints of the current node and the known nodes, combined with the credibility, constructs the data similarity between the current node and each known node; Based on the attribute distribution vector and the data similarity, a reference attribute distribution vector is obtained in the same manner as other attribute distribution vectors; Security authentication module: Based on the element sizes in other attribute distribution vectors and reference attribute distribution vectors, combined with the security levels of all target nodes, obtain the attributes of the current node used for encryption; perform security authentication through attribute encryption based on the attributes used for encryption.

10. A distributed IoT security authentication smart terminal device, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.

Citation Information

Patent Citations

  • Cloud computing distributed commutative encryption method

    CN104683393A

  • Decentralized Internet of Things security authentication system, equipment registration and identity authentication method

    CN109768988A