The present invention belong to the technical field of data processing, and relate to a judgment method for edge node computing result trustworthiness based on trust evaluation.
Edge computing is introduced into industrial networks, and data processing and storage are executed in network edges, so as to solve the problems of node request delay, overburden of cloud server storage and computing, and excessive pressure of network transmission bandwidth. Edge computing extends service resources of cloud computing to network edges, solving the problems of poor mobility of cloud computing, weak perception of geographic information and high delay. However, edge computing brings new challenges of security and privacy to edge nodes in industrial edge computing networks when applied to data analysis. It is a challenge to ensure integrity of data between an industrial cloud and edge nodes and correct computing results received by a site device while meeting a requirement of high timeliness in the industrial networks. Because the edge nodes directly access the Internet outward and then an industrial site device is directly exposed to the Internet, there is a big security risk, especially a data security problem.
At present, there are few studies on ensuring information trustworthiness of communication between industrial edge nodes and the industrial cloud at home and abroad, most studies pay attention to the fact that information is not tampered during transmission, but cannot ensure that computing results of the edge nodes are trustworthy, that is, computing results output by the edge nodes are correct. To solve the technical problem, the present invention designs a solution for ensuring that edge nodes output trustworthy computing results based on trust evaluation.
in view of this, the purpose of the present invention is to provide a judgment method for edge node computing result trustworthiness based on trust evaluation.
To achieve the above purpose, the present invention provides the following technical solution:
A judgment method for edge node computing result trustworthiness based on trust evaluation, the method comprising following steps:
S1 Before Network Operation
Each edge node to be added transmits identity information IDAi to an edge proxy for registration, a security administrator sets an error rate ERAi of computing errors allowed to be caused by each edge node in an industrial production environment; the edge proxy marks evidence collected for which number of times with ε (ε=1, 2, . . . , CNτ), and marks trust associated information as a trust value computed in which round with τ (τ∈N), where τ=0 when an initial trust value is evaluated, τ≥1 when the trust value is updated; CNτ represents a total number of times of evidence collection required when the edge proxy computes a trust value in a τth round, and tτ represents time when the edge proxy starts computing the trust value in the τth round. After verifying an identity of the edge node, the edge proxy starts evaluating an initial trust value of the edge node.
S11 Evidence Collection
The edge proxy starts evaluating the initial trust value of the edge node at t0, the edge proxy randomly generates a to-be-computed data set DataB-0c-ε={a0-0ε, a1-0ε, a2-0ε, . . . , al-0ε}, and generates a result set DataB-0r-ε={b1-0ε, b2-0ε, b3-0ε, . . . , bl-0ε} after adjacent data are pairwise computed as a reference set, wherein this solution specifies that the number of times of evidence collection CN0 required for initial trust value evaluation is 3.
The edge proxy transmits a to-be-computed set to the edge node, the edge node computes and then transmits a computing result set DataAi-0r-ε={c1-0ε, c2-0ε, c3-0ε, . . . , cl-0ε} and a computing result Hash value set DataAi-0r-ε={h1-0ε, h2-0ε, h3-0ε, . . . , hl-0ε} to the edge proxy.
According to the computing result set DataAi-0r-ε from the edge node, the edge proxy computes a Hash value DataAi-0h′-ε={h1-0ε′, h2-0ε′, h3-0ε′, . . . , hl-0ε′} corresponding thereto.
The edge proxy records time tB-0s-ε when the to-be-collected set is transmitted for the εth time, time tB-0r-ε when computing is completed, and time tAi-0r-ε when a computing result of an edge node Ai is received, where i represents a number of nodes, i=1, 2, . . . , n.
S12 Evidence Processing
The edge proxy processes the collected data as follows:
When the edge proxy evaluates the initial trust value, the edge proxy computes a computing efficiency
of CN0 edge nodes and a computing efficiency
of the edge proxy according to the time tB-0s-ε when the to-be-collected set is transmitted for εth time, the time tB-0r-ε when computing of the to-be-computed set is completed, and the time tAi-0r-ε when a computing result of an edge node Ai is received, substitutes the results into formula (3), and computes to obtain timeliness of the CN0 edge nodes Ai.
When evaluating the initial trust value, the edge proxy processes evidence collected for three times by means of formula (1), formula (2) and formula (3), to obtain three values of each of accuracy, integrity and timeliness of the edge nodes Ai to be added.
S13 Initial Trust Evaluation
1) Computing Initial Trust Value
A direct trust value is a quantization value that indicates an ability of the edge node to complete a request task and is based on an interactive record history between the edge proxy and the edge node; when the edge proxy computes the initial trust value of the edge node, the edge node is in a to-be-operated state; the edge proxy conducts fuzzy evaluation on direct trust factors of edge nodes to be operated respectively, steps of computing direct trust values are as follow:
Since the edge nodes to be operated have no historical trust values and feedback scores, at this moment, the initial direct trust value is the final trust value, and the final trust value before the edge node Ai operates is TrustAi-0u=TrustAi-0cd.
2) Computing Trust Identifier
Edge node trust is divided into three levels, namely an untrustworthy level, an uncertain level and a trustworthy level.
A threshold of the untrustworthy level is βu, a threshold of the trustworthy level is βc, 0<βu<βc≤1 and βc=[1+10(ERAi)2]−1, βu=βc−0.2, where ERAi represents an error rate of computing errors allowed to be caused by each edge node Ai in an industrial production environment occasionally due to mistake, 0≤ERAi<30%, the greater the βu and βc, the sensitive the system to incorrect computing results; the security administrator sets an error rate of errors allowed to be caused by each edge node in an industrial production environment, and the edge proxy computes corresponding βu and βc according to the error rate.
The edge proxy computes a trust identifier of an edge node Ai to be operated according to a judgment result, the rules are as follows:
Initial trust associated data of the edge node Ai includes initial trust value evaluation start time t0, a node identity identifier IDAi, an accuracy membership degree mean
The edge proxy transmits the trust identifier to a site device, the site device checks the trust identifier of the edge node to be operated and transmits data to an edge node with a trust identifier greater than 0, and then the edge node is in an operating state.
S2 After Network Operation
S21 Evidence Collection
After a network operates for ΔT time, the edge proxy initiates an update trust request to the site device, the edge proxy starts to collect the collected data of the site device, a computing result of the edge node and a Hash value thereof, and a feedback score from the site device, and records response time and a historical direct trust value of the edge node. After the edge proxy initiates the trust update request, the edge proxy conducts each evidence collection in following two cases:
The edge proxy collects evidence data in the above two cases, and collects l evidence data as one evidence collection; each round of trust update requires evidence collection for CNτ times, and the edge node is in an operating state at this moment; the edge proxy records the number of times of evidence collection with ε(ε=1, 2, . . . , CNT); during the τth round of trust update, the edge proxy collects evidence for CNτ times and then conducts evidence processing and trust update operations; a time interval between every two rounds of trust update is ΔT; a computing formula of the number of times CNτ of evidence collection required for the τh round of trust update is specified as follows:
CNτ=[6×arctan[0.5×TIAi-(τ-1)]] (6)
The edge proxy computes the number of times of evidence collection CNτ required for the τth round of trust update according to the trust identifier of the (τ−1)th time; the edge proxy rapidly updates the trust value of the edge node when the trust identifier is small and the number of times of evidence collection is less; at the initial stage of network operation, the number of times of evidence collection increases with the increase of the number of trustworthy times, in order to update the trust value in time and reduce trust computing amount, the number of times of evidence collection cannot be infinitely increased, and the maximum value of the number of times of evidence collection CNτ is
1) Direct Trust Factor Collection
The site device transmits the collected data α0-τε to the edge proxy and the edge node Ai simultaneity, the site device transmits a piece of data every Δt, and the edge proxy and the edge node start processing after receiving the second collected data; the edge proxy processes a computing result of the data collected in two consecutive times as bϑ-τε, the edge node Ai processes a computing result of the data collected in two consecutive times as cϑ-τε, ϑ represents a serial number of evidence collected in each evidence collection, (ϑ=1, 2, . . . , l); during each evidence collection, the site device needs to transmit (l+1) data, and the data transmitted by the site device form a set DataD-τc-ϑ={a0-τε, a1-τε, a2-τε, . . . , a1-τε}.
At tT, the edge proxy starts the τth round of trust update, the edge proxy collects evidence for CNτ times in total, l data evidence collected for the εth time including a computing result DataB-τr-ε={b1-τε, b2-τε, . . . , bϑ-τε, . . . , b1-τε} of the edge proxy, a computing result DataAi-τr-ε={c1-τε, c2-τε, . . . , cϑ-τε, . . . , c1-τε} of the edge node Ai and a Hash value DataAi-τh-ε={h1-τε, h2-τε, . . . , hϑ-τε, . . . , h1-τε} thereof, and a corresponding Hash value DataAi-τh′-ε={h1-τε′, h2-τε′, . . . , hϑ-τε′, . . . , h1-τε′} computed by the edge proxy according to the computing result set DataAi-τh′-ε of the edge node Ai; the edge proxy records time tD-τs-ε of transmitting the first data by the site device when collecting evidence for the εth time, time tB-τr-ε computing the lth result by the edge proxy, and time tAi-τr-ε computing the lth result by the edge node Ai.
2) Historical Direct Trust Value Collection
Because trust dynamically changes with time, in order to avoid malicious acts, the edge proxy uses a historical direct trust value to correct a direct trust value, and the edge proxy uses a sliding window to store the historical direct trust value so as to reduce the influence of the old direct trust value on the new direct trust value. Each edge node has a sliding storage window, the larger the window, the more the storage and computing overhead, so a short and small sliding storage window can limit the amount of trust computing and improve the efficiency of trust evaluation.
The sliding storage window includes u panes, each pane retains a historical direct trust value, that is, a direct trust value before the τth round of trust update is stored in the sliding storage window; a direct trust value stored in the k pane is TrustAi-(τ-u+k-1)cd; only when each pane has a direct trust value, the window begins to move, and moves one pane every time; a new direct trust value is added into the window after the trust is updated, while an expired direct trust value is extruded out of the window; during the τth round of trust update, direct trust values from the (τ−u)th round of trust update to the (τ−1)th round of trust update are stored in the window, and a direct trust value of the τth round is stored in the sliding storage window after the τth round of trust update; when a trust identifier of the edge node Ai is equal to 0, the edge node is regarded as a malicious node, and the edge proxy deletes a sliding storage window thereof.
3) Feedback Score Collection
The edge proxy updates a final trust value of an edge node in an operating state and also needs to take into account a feedback score given to a computing result of the edge node by the site device; a rule of giving scores to edge nodes by the site device is as follows: if a safety accident occurs, the site device feeds back dϑ-τε=−1 regardless whether a trust update is being conducted, and the edge proxy lists an edge node corresponding to the feedback score in a blacklist; otherwise, the site device feeds back scores given to computing results: bad review dϑ-τε=0 and good review dϑ-τε=1.
The site device feeds back the scores given to the computing results to the edge proxy, during the τth round of trust update, the edge proxy collects for CNτ times and collects l feedback scores each time, and a feedback score collected by the edge proxy for the εth time is DataAi-τf-ε={d1-τε, d2-τε, . . . , dϑ-τε, . . . , dl-τε} including scores given, by the site device, to computing results directly returned by v edge nodes to the site device and scores given, by the site device, to computing results transmitted by (l−v) edge nodes to the industrial cloud for processing and then returned to the site device; a proxy signature based on elliptic curve is used to make the communication between the edge nodes and the industrial cloud trustworthy, no matter the computing results received by the site device come from the edge nodes or the industrial cloud, the objects to which the site device feeds back scores are edge nodes.
S22 Evidence Processing
1) Direct Trust Factor Processing
After collecting evidence for CNτ times, the edge proxy respectively computes accuracy, integrity and timeliness of an edge node Ai during each evidence collection in the τth round of trust update;
When conducting the τth round of trust update, the edge proxy processes the collected direct trust factors by means of formula (1), formula (2) and formula (3), to obtain CNτ values of each of accuracy, integrity and timeliness of an edge node Ai to be examined.
2) Historical Trust Value Processing
For weight factors of historical direct trust values at different time, there is a need to take into account a time factor, that is, the longer the time of the trust value, the lower the proportion; a weight of the kth pane of the sliding storage window is:
φk=e−ρ(u-k) (7)
3) Feedback Score Processing
For an edge node with a feedback score of −1, the security administrator replaces the edge node with an edge node to be added, and the edge proxy repeats an initial trust value computing step, to evaluate an initial trust value of the edge node to be added.
According to the feedback score, the edge proxy computes reward and penalty factors of the edge node Ai in the τth round of trust update; and according to a difference ΔNAi-tε=NAi-τg-ε−└l×(1−ERAi)┘ between the total number of times of good review NAi-τg-ε during evidence collection for the εth time and the minimum required number of correct computing results, the edge proxy computes a reward factor EAi-τg-ε and a penalty factor EAi-τb-ε corresponding to the evidence collection for the εth time, where NAi-τg-ε=Σϑ=1ldϑ-τε, ERAi is the error rate that the edge node is allowed to calculate in an industrial production environment.
If ΔNAi-τε≥0, the reward factor and penalty factor corresponding to the evidence collection for the εth time are EAi-τg-ε=0.3[(1+e−ΔN
The edge proxy computes a final reward or penalty factor EAi-τf according to the reward and penalty factors in the τth round of trust update:
Good feedback from the field device increases the trust value of the edge node Ai and bad feedback rapidly decreases the trust value of the edge node Ai; if there is safety accident feedback from the site device, EAi-τf appears as a penalty factor, EAi-τf=0; if there is no safety accident feedback, EAi-τf>0 represents reward, EAi-τf<0 represents penalty, and EAi-τf=0 represents neither reward nor penalty.
S23 Trust Update
According to the direct trust value, historical trust value and feedback scores, the edge proxy updates the trust value of the edge node, the edge node is in a to-be-examined state at this moment; a time interval between every two rounds of trust updates is ΔT.
1) Computing Direct Trust Value
The edge proxy repeats the step of computing a direct trust value when evaluating initial trust, and computes a direct trust value TrustAi-τcd of the edge node Ai to be examined of which the judgment result is trustworthy or uncertain in the τth round of trust update by means of formula (4); for an edge node to be examined of which the judgment result is untrustworthy, the edge proxy directly lists the edge node in a blacklist.
2) Correcting Direct Trust Value
Before computing the final trust value, the edge proxy needs to correct the direct trust value by using the weighted average historical direct trust value; the edge proxy weights and aggregates TrustAi-τcd and TrustAi-τhd of the edge node Ai to obtain a corrected direct trust value TrustAi-τd the edge node Ai in the τth round of trust update:
TrustAi-τd=δ×TrustAi-τcd+(1−δ)×TrustAi-τhd (10)
where δ is used to balance proportions of current trust and historical trust, and δ is defined as follows:
where 0<δ1<δ2<1, it is specified that δ1=0.3, δ2=0.7, the value of δ1 is small, to prevent the edge node from accumulating trust thereof quickly, and the value of δ2 is large, which reflects a penalty for a malicious act of the edge node.
3) Updating Final Trust Value
According to the reward or penalty factor computed in formula (9), the edge proxy computes a final trust value of an edge node to be examined.
A computing formula of the final trust value TrustAi-τu of the edge node Ai in the τth round of trust update is as follows:
If a certain feedback score is −1, the final trust value of the edge node Ai in the τth round of trust update is equal to 0; otherwise, the final trust value of the edge node Ai in the τth round of trust update is equal to a corrected direct trust value of the edge node Ai plus a reward or penalty factor.
4) Computing Trust Identifier
After trust update, the edge proxy compares the final trust value of the edge node to be examined with a trust threshold (trust critical value) in Table 2-trust level table, and then computes a trust identifier of the edge node Ai according to the judgment result and the final trust value, rules are as follows:
Trust associated data of the edge node Ai includes start time tτ of the τth round of trust update, a node identity identifier IDAi, an average accuracy membership degree
The edge proxy transmits the trust identifier to the site device, the site device decides whether to transmit data according to the trust identifier of the edge node, and transmits data to an edge node with a trust identifier greater than 0 rather than to an edge node with a trust identifier equal to 0.
After ΔT time, the edge proxy repeatedly executes the steps of evidence collection, evidence processing and trust update, and so on.
The present invention has the advantageous effects that: by means of the present invention, a security mechanism for trustworthiness of a computing result output by an industrial edge node is guaranteed, the industrial edge node is prevented from outputting error data, and attacks of false data of a malicious edge node are resisted, it is guaranteed that trustworthy computing results not be tampered are input in the industrial cloud, and a site device is made to receive correct computing results rather than malicious or meaningless messages, thereby improving efficiency and security of industrial production.
Other advantages, objectives and features of the present invention will be illustrated in the following description to some extent, and will be apparent to those skilled in the art based on the following investigation and research to some extent, or can be taught from the practice of the present invention. The objectives and other advantages of the present invention can be realized and obtained through the following description.
To enable the purpose, the technical solution and the advantages of the present invention to be more clear, the present invention will be preferably described in detail below in combination with the drawings, in the drawings:
Embodiments of the present invention are described below through specific embodiments. Those skilled in the art can understand other advantages and effects of the present invention easily through the disclosure of the description. The present invention can also be implemented or applied through additional different specific embodiments. All details in the description can be modified or changed based on different perspectives and applications without departing from the spirit of the present invention. It should be noted that the figures provided in the following embodiments only exemplarily explain the basic conception of the present invention, and if there is no conflict, the following embodiments and the features in the embodiments can be mutually combined.
In an industrial edge computing environment, a site device transmits collected data to an edge node at an edge side, the edge node processes the data from the site device, then the edge node returns a computing result to the site device or transmits a preliminary computing result to an industrial cloud platform for further computing and then returns to the site device. In order to ensure that the computing result of the edge node is correct and the result is not forged or tampered in the process of transmission, failed edge nodes are identified and tamper, impersonation, replay and other attacks from malicious nodes are resisted, that is, it is guaranteed that the site device receives a trustworthy computing result, this article proposes an edge computing framework with a trust evaluation function. Trust evaluation of edge nodes is completed by an edge proxy at a network edge, and at the network edge, the response time for processing trust computing is shorter, the execution efficiency is higher, and the network pressure is lower, as shown in
Assuming that the data collected by the site device is trustworthy, the communication between the site device and the edge node is trustworthy, and the communication between the site device and the edge proxy is trustworthy, the feedback of the site device is honest. In an industrial edge computing framework with a trust evaluation function, a trust evaluation method for ensuring edge node computing result trustworthiness is proposed. In the method, trust evaluation conducted on edge nodes is completed by an edge proxy according to objective analysis on computing results of the edge nodes and in conjunction with the fuzzy evaluation method and the entropy weight method. By comparing trust values of the edge nodes with a trust threshold, the edge proxy determines which edge nodes can receive computing tasks and transmit messages, thereby reducing untrustworthy data output by the edge side. In the trust evaluation method, the trust threshold is determined by an error rate of errors allowed to be caused by each edge node set by a security administrator.
After a network operates, if a computing result of an edge node needs to be further computed, in order to ensure that the interactive information between the edge node, the edge proxy and the industrial cloud platform is not tampered so that the site device can receive a trustworthy computing result, in the solution, the proxy signature scheme based on elliptic curve is used, so a preliminary computing result of a trustworthy edge node can be signed and then transmitted to the industrial cloud for further processing and then returned to the site device.
A specific trust evaluation flow of this solution is shown in
In this solution, trust is defined as evaluation conducted on edge node computing result trustworthiness by an edge proxy, and a trust value of an edge node is a quantitative form of long-term behavioral expression of the edge node. Trust evaluation consists of four modules: evidence collection, evidence processing, initial trust evaluation and trust update.
Evidence comprises information of three dimensions: three available factors for directly evaluating edge node computing results, i.e. accuracy, integrity and timeliness of edge node computing results, used to compute direct trust values of edge nodes; historical trust values, wherein the edge proxy conducts weighted average on historical trust values in sliding windows and then corrects direct trust values; feedback scores given by the site device to the edge node computing results, wherein the edge proxy obtains a penalty or reward factor according to the feedback scores, used to compute final trust values of edge nodes. The trust evaluation process is divided into computing of initial trust values before network operation and update of trust values after network operation. The edge nodes have following five states in a trust evaluation process:
1.1 Trust Evaluation Flow
1.1.1 Before Network Operation
Each edge node to be added transmits identity information IDAi to an edge proxy for registration, a security administrator sets an error rate ERAi of computing errors allowed to be caused by each edge node in an industrial production environment; the edge proxy marks evidence collected for which number of times with ε (ε=1, 2, . . . , CN), and marks trust associated information as a trust value computed in which round with τ (τ∈N), where τ=0 when an initial trust value is evaluated, τ≥1 when a trust value is updated; CN represents a total number of times of evidence collection required when the edge proxy computes a trust value in a τth round, and tτ represents time when the edge proxy starts computing the trust value in the τth round. After verifying an identity of an edge node, the edge proxy starts evaluating an initial trust value of the edge node.
1 Evidence Collection
The edge proxy starts evaluating the initial trust value of the edge node at t0, the edge proxy randomly generates a to-be-computed data set DataB-0c-ε={a0-0ε, a1-0ε, a2-0ε, . . . , al-0ε}, and generates a result set DataB-0r-ε={b1-0ε, b2-0ε, b3-0ε, . . . , bl-0ε} after adjacent data are pairwise computed as a reference set, wherein this solution specifies that the number of times of evidence collection CN0 required for initial trust value evaluation is 3.
The edge proxy transmits a to-be-computed set to the edge node, the edge node computes and then transmits a computing result set DataAi-0r-ε={c1-0ε, c2-0ε, c3-0ε, . . . , cl-0ε} and a computing result Hash value set DataAi-0r-ε={h1-0ε, h2-0ε, h3-0ε, . . . , hl-0ε} to the edge proxy.
According to the computing result set DataAi-0r-ε from the edge node, the edge proxy computes a Hash value DataAi-0r-ε={h1-0ε′, h2-0ε′, h3-0ε′, . . . , hl-0ε′} corresponding thereto.
The edge proxy records time tB-0s-ε when the to-be-collected set is transmitted for the εth time, time tB-0r-ε when computing is completed, and time tAi-0r-ε when a computing result of an edge node Ai is received, where i represents a number of nodes, i=1, 2, . . . , n.
2 Evidence Processing
The edge proxy evaluates whether computing results are trustworthy according to accuracy, integrity and timeliness of edge node computing results, these three parameters are available factors for evaluating edge node computing results, these factors can be regarded as trustworthy evidence of the edge nodes, and these evidences can be used to evaluate the edge node computing results objectively. These three data trust evidences are core dimensions for looking for trust relationships between data items and trusters.
Before the network operates, the edge proxy computes accuracy, integrity and timeliness of an edge node Ai according to a return result of an edge node Ai to be added. The edge proxy processes the collected data as follows:
When the edge proxy evaluates the initial trust value, the edge proxy computes a computing efficiency
of CN0 edge nodes and a computing efficiency
of the edge proxy according to the time tB-0s-ε when the to-be-collected set is transmitted for εth time, the time tB-0r-ε when computing of the to-be-computed set is completed, and the time tAi-0r-ε when a computing result of an edge node Ai is received, substitutes the results into formula (3), and computes to obtain timeliness of the CN0 edge nodes Ai.
When evaluating the initial trust value, the edge proxy processes evidence collected for three times by means of formula (1), formula (2) and formula (3), to obtain three values of each of accuracy, integrity and timeliness of the edge nodes Ai to be added, as shown in Table 1.
3 Initial Trust Evaluation
1) Computing Initial Trust Value
A direct trust value is a quantization value that indicates an ability of the edge node to complete a request task and is based on an interactive record history between the edge proxy and the edge node. When the edge proxy computes the initial trust value of the edge node, the edge node is in a to-be-operated state. The edge proxy conducts fuzzy evaluation on direct trust factors of edge nodes to be operated respectively, steps of computing direct trust values are as follow:
Since the edge nodes to be operated have no historical trust values and feedback scores, at this moment, the initial direct trust value is the final trust value, and the final trust value before the edge node Ai operates is TrustAi-0u=TrustAi-0cd.
2) Computing Trust Identifier
Table 2 is an edge node trust level table in which trust is divided into three levels, namely an untrustworthy level, an uncertain level and a trustworthy level.
A threshold of the untrustworthy level is βu, a threshold of the trustworthy level is βc, 0<βu<βc≤1 and βc=[1+10(ERAi)2]−1, βu=βc−0.2, where ERAi represents an error rate of computing errors allowed to be caused by each edge node Ai in an industrial production environment occasionally due to mistake, 0≤ERAi<30%, the greater the βu and βc, the sensitive the system to incorrect computing results; the security administrator sets an error rate of errors allowed to be caused by each edge node in an industrial production environment, and the edge proxy computes corresponding βu and βc according to the error rate, as shown in Table 3.
The edge proxy computes a trust identifier of an edge node Ai to be operated according to a judgment result, the rules are as follows:
The edge proxy transmits the trust identifier to a site device, the site device checks the trust identifier of the edge node to be operated and transmits data to an edge node with a trust identifier greater than 0, and then the edge node is in an operating state.
1.1.2 After Network Operation
1 Evidence Collection
After a network operates for ΔT time, the edge proxy initiates an update trust request to the site device, the edge proxy starts to collect the collected data of the site device, a computing result of the edge node and a Hash value thereof, and a feedback score from the site device, records response time and a historical direct trust value of the edge node. After the edge proxy initiates the trust update request, the edge proxy conducts each evidence collection in following two cases:
The edge proxy collects evidence data in the above two cases, and collects l evidence data as one evidence collection; each round of trust update requires evidence collection for CNτ times, and the edge node is in an operating state at this moment; the edge proxy records the number of times of evidence collection with ε(ε=1, 2, . . . , CNT); during the τth round of trust update, the edge proxy collects evidence for CNτ times and then conducts evidence processing and trust update operations; a time interval between every two rounds of trust update is ΔT; a computing formula of the number of times of evidence collection CNτ required for the τh round of trust update is specified as follows:
CNτ=[6×arctan[0.5×TIAi-(τ-1)]] (6)
The edge proxy computes the number of times of evidence collection CNτ required for the τth round of trust update according to the trust identifier of the (τ−1)th time; the edge proxy rapidly updates the trust value of the edge node when the trust identifier is small and the number of times of evidence collection is less; at the initial stage of network operation, the number of times of evidence collection increases with the increase of the number of trustworthy times, in order to update the trust value in time and reduce trust computing amount, the number of times of evidence collection cannot be infinitely increased, and the maximum value of the number of times of evidence collection
1) Direct Trust Factor Collection
The site device transmits the collected data α0-τε to the edge proxy and the edge node Ai simultaneity, the site device transmits a piece of data every Δt, and the edge proxy and the edge node start processing after receiving the second collected data; the edge proxy processes a computing result of the data collected in two consecutive times as bϑ-τε, the edge node Ai processes a computing result of the data collected in two consecutive times as cϑ-τε, ϑ represents a serial number of evidence collected in each evidence collection, (ϑ=1, 2, . . . , l); during each evidence collection, the site device needs to transmit (l+1) data, and the data transmitted by the site device form a set DataD-τc-ϑ={a0-τε, a1-τε, a2-τε, . . . , a1-τε}.
At tT, the edge proxy starts the τth round of trust update, the edge proxy collects evidence for CNτ times in total, l data evidence collected for the εth time including a computing result DataB-τr-ε={b1-τε, b2-τε, . . . , bϑ-τε, . . . , b1-τε} of the edge proxy, a computing result DataAi-τr-ε={c1-τε, c2-τε, . . . , cϑ-τε, . . . , c1-τε} of the edge node Ai and a Hash value DataAi-τh-ε={h1-τε, h2-τε, . . . , hϑ-τε, . . . , h1-τε} thereof, and a corresponding Hash value DataAi-τh′-ε={h1-τε′, h2-τε′, . . . , hϑ-τε′, . . . , h1-τε′} computed by the edge proxy according to the computing result set DataAi-τh′-ε of the edge node Ai; the edge proxy records time tD-τs-ε of transmitting the first data by the site device when collecting evidence for the εth time, time tB-τr-ε computing the lth result by the edge proxy, and time tAi-τr-ε computing the lth result by the edge node Ai.
2) Historical Direct Trust Value Collection
Because trust dynamically changes with time, in order to avoid malicious acts, the edge proxy uses a historical direct trust value to correct a direct trust value, so the direct trust value is more accurate. Therefore, the edge proxy uses a sliding window to store the historical direct trust value so as to reduce the influence of the old direct trust value on the new direct trust value. Each edge node has a sliding storage window, the larger the window, the more the storage and computing overhead, so a short and small sliding storage window can effectively limit the amount of trust computing and improve the efficiency of trust evaluation.
As shown in
3) Feedback Score Collection
The edge proxy updates a final trust value of an edge node in an operating state and also needs to take into account a feedback score given to a computing result of the edge node by the site device; a rule of giving scores to edge nodes by the site device is as follows: if a safety accident occurs, the site device feeds back dϑ-τε=−1 regardless whether a trust update is being conducted, and the edge proxy lists an edge node corresponding to the feedback score in a blacklist; otherwise, the site device feeds back scores given to computing results: bad review dϑ-τε=0 and good review dϑ-τε=1.
The site device feeds back the scores given to the computing results to the edge proxy, during the τth round of trust update, the edge proxy collects for CNτ times and collects l feedback scores each time, and a feedback score collected by the edge proxy for the εth time is DataAi-τf-ε={d1-τε, d2-τε, . . . , dϑ-τε, . . . , dl-τε} including scores given, by the site device, to computing results directly returned by v edge nodes to the site device and scores given, by the site device, to computing results transmitted by (l−v) edge nodes to the industrial cloud for processing and then returned to the site device; a proxy signature based on elliptic curve is used to make the communication between the edge nodes and the industrial cloud trustworthy, no matter the computing results received by the site device come from the edge nodes or the industrial cloud, the objects to which the site device feeds back scores are edge nodes.
2 Evidence Processing
1) Direct Trust Factor Processing
After collecting evidence for CNτ times, the edge proxy respectively computes accuracy, integrity and timeliness of an edge node Ai during each evidence collection in the τ round of trust update;
When conducting the τth round of trust update, the edge proxy processes the collected direct trust factors by means of formula (1), formula (2) and formula (3), to obtain CNτ values of each of accuracy, integrity and timeliness of an edge node Ai to be examined, as shown in Table 5.
2) Historical Trust Value Processing
Because the latest trust value has more influence than the previous trust value, for weight factors of historical direct trust values at different time, there is a need to take into account a time factor, that is, the longer the time of the trust value, the lower the proportion. A weight of the kth pane of the sliding storage window is:
φk=e−ρ(u-k) (7)
3) Feedback Score Processing
For an edge node with a feedback score of −1, the security administrator replaces the edge node with an edge node to be added, and the edge proxy repeats an initial trust value computing step, to evaluate an initial trust value of the edge node to be added.
According to the feedback score, the edge proxy computes reward and penalty factors of the edge node Ai in the τth round of trust update; and according to a difference ΔNAi-tε=NAi-τg-ε−└l×(1−ERAi)┘ between the total number of times of good review NAi-τg-ε during evidence collection for the εth time and the minimum required number of correct computing results, the edge proxy computes a reward factor EAi-τg-ε and a penalty factor EAi-τb-ε corresponding to the evidence collection for the εth time, where NAi-τg-ε=Σϑ=1ldϑ-τε, ERAi is the error rate that the edge node is allowed to calculate in an industrial production environment.
If ΔNAi-τε≥0, the reward factor and penalty factor corresponding to the evidence collection for the εth time are EAi-τg-ε=0.3[(1+e−ΔN
The edge proxy computes a final reward or penalty factor EAi-τf according to the reward and penalty factors in the τth round of trust update:
Good feedback from the field device increases the trust value of the edge node Ai and bad feedback rapidly decreases the trust value of the edge node Ai; if there is safety accident feedback from the site device, EAi-τf appears as a penalty factor, EAi-τf=0; if there is no safety accident feedback, EAi-τf>0 represents reward, EAi-τf<0 represents penalty, and EAi-τf=0 represents neither reward nor penalty.
3 Trust Update
According to the direct trust value, historical trust value and feedback scores, the edge proxy updates the trust value of the edge node, the edge node is in a to-be-examined state at this moment. Since an insider attack occurs at a given time, a trust evaluation mechanism does not require too frequent trust updates, moreover, frequent trust updates take up more transmission and computing resources. A time interval between every two rounds of trust update is ΔT.
1) Computing Direct Trust Value
The edge proxy repeats the step of computing a direct trust value when evaluating initial trust, and computes a direct trust value TrustAi-τcd the edge node Ai to be examined of which the judgment result is trustworthy or uncertain in the τth round of trust update by means of formula (4); for an edge node to be examined of which the judgment result is untrustworthy, the edge proxy directly lists the edge node in a blacklist.
2) Correcting Direct Trust Value
Before computing the final trust value, the edge proxy needs to correct the direct trust value by using the weighted average historical direct trust value; the edge proxy weights and aggregates TrustAi-τcd and TrustAi-τhd of the edge node Ai to obtain a corrected direct trust value TrustAi-τd the edge node Ai in the τth round of trust update:
TrustAi-τd=δ×TrustAi-τcd+(1−δ)×TrustAi-τhd (10)
where δ is used to balance proportions of current trust and historical trust, and δ is defined as follows:
where 0<δ1<δ2<1, it is specified that δ1=0.3, δ2=0.7, the value of δ1 is small, to prevent the edge node from accumulating trust thereof quickly, and the value of δ2 is large, which reflects a penalty for a malicious act of the edge node.
3) Updating Final Trust Value
According to the reward or penalty factor computed in formula (9), the edge proxy computes a final trust value of an edge node to be examined.
A computing formula of the final trust value TrustAi-τu of the edge node Ai in the τth round of trust update is as follows:
If a certain feedback score is −1, the final trust value of the edge node Ai in the τth round of trust update is equal to 0; otherwise, the final trust value of the edge node Ai in the τth round of trust update is equal to a corrected direct trust value of the edge node Ai plus a reward or penalty factor.
4) Computing Trust Identifier
After trust update, the edge proxy compares the final trust value of the edge node to be examined with a trust threshold (trust critical value) in Table 2-trust level table, and then computes a trust identifier of the edge node Ai according to the judgment result and the final trust value, rules are as follows:
The edge proxy transmits the trust identifier to the site device, the site device decides whether to transmit data according to the trust identifier of the edge node, and transmits data to an edge node with a trust identifier greater than 0 rather than to an edge node with a trust identifier equal to 0.
After ΔT time, the edge proxy repeatedly executes the steps of evidence collection, evidence processing and trust update, and so on, as shown in
1.2 Example
Before the network operates, this solution sets parameters, as shown in Table 7.
As shown in
Before the network operates, the edge proxy transmits a to-be-computed data set with a data amount of 10 to the edge nodes A1, A2, A3 respectively at tA for three times. After the edge proxy processes evidence, the judgment results of the edge nodes A1, A2, A3 are shown in Table 9. Initial trust values of the edge nodes A1, A2 and A3, trust identifiers and valid time thereof are shown in Table 10.
The initial trust value of A1 is greater than 0.9, in order to prevent a malicious node from cheating trust, the edge proxy replaces the trust value of A1 with 0.8, and transmits a trust identifier TIA1-0=1 to the site device. The trust level of A2 is an uncertain level, the edge proxy allocates a trust identifier TIA2-0=1 to same, and transmits the trust identifier to the site device. The judgment result of A3 is untrustworthy, then, the edge proxy repeats steps of evidence collection, evidence processing and initial trust evaluation twice. Since the judgment result is untrustworthy, A3 is a malicious or failed edge node, the identity information of A3 and a trust identifier TIA3-0=0 thereof are broadcast, and are reported to the safety administrator for replacement.
The edge proxy evaluates an initial trust value of a replaced edge node A3′ to be added, the initial trust value of the edge node A3′ is 0.65 which is greater than 0.51, the trust level is an uncertain level, the edge proxy allocates a trust identifier TIA3′-0=1 to the edge node and transmits the trust identifier to the site device, and the site device receives the trust identifier and then transmits data to the edge node.
After the network operates for 10 s, the edge proxy initiates a trust update request to the site device, and the site device transmits the collected data to the edge node and the edge proxy simultaneously. The edge proxy starts the first round of trust update, the evidence of the edge node A1, A2, A3′ needs to be collected for three times and the amount of data collected each time is 10. After the first round of trust update for 10 s, a second round of trust update is conducted. After two rounds of trust update, the final trust values of the edge nodes A1, A2, A3′ in each round of trust update are shown in Table 11.
Because trust identifiers of A1 are equal for three consecutive times, the edge proxy regards A1 as a malicious node; the edge proxy broadcasts identity information about A1 and the trust identifier 0 thereof, and reports to the security administrator for replacement. After the safety administrator replaces A1 with A1′, the edge proxy evaluates an initial trust value thereof, and the edge proxy updates final trust values of A2, A3′ after evaluating the initial trust value of A1′. Evaluation results when updating to the fourth round are shown in Table 12.
During the fourth round of trust update, a score given by the site device to A2 is −1, so the edge proxy regards A2 as a malicious node. The edge proxy broadcasts identity information about A2 and the trust identifier 0 thereof, and reports to the security administrator for replacement. After the safety administrator replaces A2 with A2′, the edge proxy evaluates an initial trust value thereof first. The edge proxy updates final trust values of A1′, A3′ after evaluating the initial trust value of A2′. Evaluation results in the fifth round of trust update are shown in Table 13.
When trust update is conducted to the tenth round, the historical direct trust values of A1′ stored in the sliding window in the edge proxy are shown in Table 14. After the fifth round of trust update, the direct trust values of A1′ are not updated.
At this moment, the historical direct trust values of A2 stored in the sliding window in the edge proxy are shown in Table 15. Weights corresponding to the first to the fifth panes are 0.30, 0.40, 0.54, 0.74, and 1.00 respectively, and a sum of the weights is 2.98. The edge proxy weighted averages the historical direct trust values, obtaining TrustA2′-10hd=0.88.
At this moment, the historical direct trust values of A3′ stored in the sliding window in the edge proxy are shown in Table 16. Weights corresponding to all panes are 0.06, 0.09, 0.12, 0.16, 0.22, 0.30, 0.40, 0.54, 0.74 and 1.00 respectively, and a sum of the weights is 3.63. The edge proxy weighted averages the historical direct trust values, obtaining TrustA3′-10hd=0.87.
Results in the tenth round of trust update are shown in Table 17.
After the fifth round of trust update, the trust identifier of the edge node A1′ is expired, however, the trust value thereof is still not updated, the edge proxy regards A1′ as a malicious node or failed node, lists same in a blacklist, broadcasts the identity and trust identifier 0 thereof, and reports to the safety administrator for replacement.
In conclusion, an edge node is a malicious or failed node in following four cases:
Finally, it should be noted that the above embodiments are only used for describing, rather than limiting the technical solution of the present invention. Although the present invention is described in detail with reference to the preferred embodiments, those ordinary skilled in the art shall understand that the technical solution of the present invention can be amended or equivalently replaced without departing from the purpose and the scope of the technical solution. The amendment or equivalent replacement shall be covered within the scope of the claims of the present invention.
Number | Date | Country | Kind |
---|---|---|---|
202010469593.1 | May 2020 | CN | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/CN2020/102198 | 7/15/2020 | WO |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2021/237898 | 12/2/2021 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
10904082 | Muhammad | Jan 2021 | B1 |
20030037128 | Beadles | Feb 2003 | A1 |
20130097056 | Sun | Apr 2013 | A1 |
20190020657 | Egner | Jan 2019 | A1 |
20190141119 | Bernat | May 2019 | A1 |
20210021609 | Smith | Jan 2021 | A1 |
20220210142 | Sohail | Jun 2022 | A1 |
20220318082 | Slinger | Oct 2022 | A1 |
Number | Date | Country |
---|---|---|
4002905 | Feb 2022 | EP |
WO 2015022336 | Feb 2015 | WO |
WO 2022115644 | Jun 2022 | WO |
Number | Date | Country | |
---|---|---|---|
20220321355 A1 | Oct 2022 | US |