Distributed network trust evaluation method and device based on fuzzy system

Through a fuzzy system to evaluate node trust in distributed networks, use confirmation retransmission and watchdog mechanisms to obtain trust factors, and combine historical trust values ​​to correct them, the problem of low recognition accuracy of malicious nodes in the existing technology is solved, and more efficient trust evaluation is achieved.

CN120238339APending Publication Date: 2025-07-01SHANGHAI INST OF MICROSYSTEM & INFORMATION TECH CHINESE ACAD OF SCI
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510325071.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-19
Publication Date
2025-07-01

AI Technical Summary

Technical Problem

The existing distributed network trust evaluation method is difficult to effectively identify multiple malicious nodes, and it is impossible to accurately evaluate the trust value of nodes, resulting in low detection accuracy.

Method used

A distributed network trust evaluation method based on fuzzy system is adopted, and the data packet reception, transmission and tampering of nodes is obtained by confirming the retransmission mechanism and watchdog mechanism. The fuzzy system is used to calculate the node's reception rate, forwarding rate and tampering rate, and trust correction and comprehensive trust calculation are performed based on historical trust values.

Benefits of technology

It improves the detection accuracy and recognition ability of malicious nodes, can recognize more types of malicious attacks, and the calculation of trust value is more in line with human logic, improving the recognition accuracy of the algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120238339A_ABST
    Figure CN120238339A_ABST
Patent Text Reader

Abstract

The invention relates to a distributed network trust evaluation method and device based on a fuzzy system, and the method comprises the steps: obtaining the receiving condition, the sending condition and the tampering condition of a data packet of a next-hop node through a confirmation retransmission mechanism and a watchdog mechanism, and calculating a node receiving rate, a node forwarding rate and a node tampering rate; inputting the node receiving rate, the node forwarding rate and the node tampering rate into a first fuzzy system to obtain a current direct trust value of a next hop node; inputting the difference between the current direct trust value and the historical direct trust value into a second fuzzy system to obtain a trust correction value; correcting the current direct trust value by using the trust correction value, and calculating a direct trust value based on the corrected current direct trust value and the historical direct trust value; and carrying out weighted average on the direct trust value and the indirect trust value to obtain the comprehensive trust of the next hop node. According to the method, the malicious node detection precision can be improved, and the identified malicious attack types can be increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of Internet of Things security, and particularly to a distributed network trust evaluation method and device based on a fuzzy system. Background Art

[0002] The trust model in a distributed network is a mechanism for establishing and managing trust relationships in a distributed system, which ensures that nodes can interact and cooperate safely and reliably in an open and dynamic network environment. Han Youjia et al. proposed a secure routing protocol TSRP, and the designed trust model therein is mainly used to identify malicious nodes. The trust evaluation block diagram of TSRP is as Figure 1 shown. In terms of trust factor selection, this model judges the packet acceptance situation and channel situation of a node according to the sending and receiving of packets, and calculates the current direct trust of the node by weighted summation. During the process of direct trust update, it is proposed to use a volatility factor to improve the convergence of node identification. During the calculation process of comprehensive trust, TSRP combines direct trust, indirect trust and energy trust. Research shows that the TSRP protocol has good performance in terms of packet loss rate, end-to-end delay and remaining energy. However, TSRP considers fewer trust factors and fails to identify various types of malicious nodes. The volatility factor used by TSRP is a function of time rather than a function of trust value, and it cannot be proved from the formula and experiments that it can improve the convergence of the algorithm. The high convergence of TSRP is due to the result of considering less historical record. At the same time, energy should be considered more in routing selection rather than when calculating the trust value of a node. Summary of the Invention

[0003] The technical problem to be solved by the present invention is to provide a distributed network trust evaluation method and device based on a fuzzy system, which can improve the accuracy of detecting malicious nodes and increase the types of malicious attacks identified.

[0004] The technical solution adopted by the present invention to solve its technical problems is: to provide a distributed network trust evaluation method based on a fuzzy system, including the following steps:

[0005] After sending a data packet to the next-hop node, obtain the packet reception situation, sending situation and tampering situation of the next-hop node through an acknowledgment retransmission mechanism and a watchdog mechanism, and calculate the node reception rate, node forwarding rate and node tampering rate based on the packet reception situation, sending situation and tampering situation;

[0006] At the end of one round of iteration, input the node reception rate, node forwarding rate and node tampering rate into the first fuzzy system to obtain the current direct trust value of the next-hop node;

[0007] Input the difference between the current direct trust value and the historical direct trust value into the second fuzzy system to obtain a trust correction value;

[0008] Use the trust correction value to correct the current direct trust value, and calculate the direct trust value based on the corrected current direct trust value and the historical direct trust value;

[0009] Perform a weighted average of the direct trust value and the indirect trust value to obtain the comprehensive trust of the next-hop node.

[0010] The node reception rate is obtained by calculation, where RR is the node reception rate, sr is the number of data packets received by the next-hop node, and s is the number of data packets sent by the next-hop node.

[0011] The node forwarding rate is obtained by calculation, where FR is the node forwarding rate, sr is the number of data packets received by the next-hop node, and sf is the number of successful forwarded data packets by the next-hop node.

[0012] The node tampering rate is obtained by calculation, where MFR is the node tampering rate, sr is the number of data packets received by the next-hop node, and mf is the number of tampered data packets by the next-hop node.

[0013] The first fuzzy system uses trapezoidal functions as membership functions of linguistic variables. The linguistic values of each input variable are divided into "low", "medium", "high", and "very high". The fuzzy rules of the first fuzzy system are as follows: When the input node forwarding rate is "low", and there is no node reception rate and node tampering rate, the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is low, the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "high", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "very high", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "very high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "very high", the output is "high"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "very high", the output is "low";When the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "high", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "very high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "very high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "high", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "very high", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node receiving rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "high", and the node tampering rate is "medium", the output is "high";When the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "very high", the output is "very high".;

[0014] The second fuzzy system uses trigonometric functions as the membership functions of the linguistic variables. The linguistic variables are expressed as "negative 10", "negative 9", "negative 8", "negative 7", "negative 6", "negative 5", "negative 4", "negative 3", "negative 2", "negative 1", "0", "positive 1", "positive 2", "positive 3", "positive 4", "positive 5", "positive 6", "positive 7", "positive 8", "positive 9", "positive 10", and their meaning is the degree to which the difference is close to a specific value. The fuzzy rules of the second fuzzy system are as follows: when the difference between the current direct trust value and the historical direct trust value of the input is "negative 10", the output is "negative 5"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 9", the output is "negative 4"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 8", the output is "negative 4"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 7", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 6", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 5", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 4", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 3", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 2", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 1", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "0", the output is "0"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 1", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 2", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 3", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 4", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 5", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 6", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 7", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 8", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 9", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 10", the output is "positive 3".

[0015] The direct trust value is calculated by DT = ω * HDT + (1 - ω) * CDT′, where DT is the direct trust value, HDT is the historical direct trust value, and CDT′ is the corrected current direct trust value, expressed as: CDT′ = CDT - Δ1 + Δ2, CDT is the current direct trust value, Δ1 is the difference between the current direct trust value and the historical direct trust value, and Δ2 is the trust correction value.

[0016] The technical solution adopted by the present invention to solve its technical problems is to provide a distributed network trust evaluation device based on a fuzzy system, including:

[0017] An acquisition and calculation module, configured to, after sending a data packet to the next-hop node, obtain the data packet reception situation, transmission situation, and tampering situation of the next-hop node through an acknowledgment retransmission mechanism and a watchdog mechanism, and calculate a node reception rate, a node forwarding rate, and a node tampering rate based on the data packet reception situation, transmission situation, and tampering situation;

[0018] A current direct trust value determination module, configured to, at the end of one round of iteration, input the node reception rate, the node forwarding rate, and the node tampering rate into a first fuzzy system to obtain the current direct trust value of the next-hop node;

[0019] A trust correction value determination module, configured to input the difference between the current direct trust value and the historical direct trust value into a second fuzzy system to obtain a trust correction value;

[0020] A correction calculation module, configured to correct the current direct trust value using the trust correction value, and calculate a direct trust value based on the corrected current direct trust value and the historical direct trust value;

[0021] A comprehensive trust calculation module, configured to perform a weighted average on the direct trust value and the indirect trust value to obtain the comprehensive trust of the next-hop node.

[0022] The technical solution adopted by the present invention to solve its technical problems is to provide an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, and when the processor executes the computer program, the steps of the above-mentioned distributed network trust evaluation method based on a fuzzy system are implemented.

[0023] The technical solution adopted by the present invention to solve its technical problems is to provide a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the above-mentioned distributed network trust evaluation method based on a fuzzy system are implemented.

[0024] Beneficial effects

[0025] Due to the above technical solution, compared with the prior art, the present invention has the following advantages and positive effects: The present invention considers more trust factors to identify more attacks, and at the same time uses a fuzzy system to calculate the trust value, ensuring that the acquisition of the direct trust value is more in line with human logic. By designing a fuzzy system for updating the direct trust, the recognition accuracy of the algorithm can be effectively controlled. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] Figure 1 is the trust evaluation logic diagram of TSRP in the prior art;

[0027] Figure 2 is the evaluation framework diagram of the distributed network trust evaluation method based on the fuzzy system in the first embodiment of the present invention;

[0028] Figure 3 is the structural schematic diagram of the fuzzy system;

[0029] Figure 4 is the correction curve diagram of trust update;

[0030] Figure 5 is the change curve diagram of the packet loss rate and tampering rate of different models with the number of iteration rounds;

[0031] Figure 6 is the comparison diagram of the false positive rate under different malicious node proportions and attacks. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0032] The following further elaborates the present invention in conjunction with specific embodiments. It should be understood that these embodiments are only used to illustrate the present invention and not to limit the scope of the present invention. In addition, it should be understood that after reading the content taught by the present invention, those skilled in the art can make various changes or modifications to the present invention, and these equivalent forms also fall within the scope defined by the appended claims of this application.

[0033] The first embodiment of the present invention relates to a distributed network trust evaluation method based on a fuzzy system, as Figure 2 shown, including the following steps:

[0034] Step 1, after sending a data packet to the next-hop node, obtain the data packet reception situation, sending situation, and tampering situation of the next-hop node through the confirmation retransmission mechanism and the watchdog mechanism, and calculate the node reception rate, node forwarding rate, and node tampering rate based on the data packet reception situation, sending situation, and tampering situation.

[0035] The selection of trust factors is one of the core aspects of constructing a trust theory. As the basis for trust evaluation, trust factors reflect the attributes, states, and behavioral information of entities. When defending against various attacks, the selection of trust factors is very important. To defend against black hole attacks, selective forwarding attacks, SSF attacks, and SMF attacks, this embodiment selects the node reception rate RR, the node forwarding rate FR, and the node modification rate MFR as trust factors. Let the sending node be i and the receiving node be j. The number of data packets sent by node i is s, the number of data packets received by receiving node j is sr, the number of successful transmissions by node j is sf, the number of failed transmissions is usf, where usf = sr - sf, and the number of modified data packets is mf. Based on the above settings, the definitions of the node forwarding rate FR, the node reception rate RR, and the node modification rate MFR are as follows:

[0036]

[0037]

[0038] According to the definitions, FR, RR, MFR ∈ [0, 1].

[0039] The sending node can determine the data packet reception and transmission conditions of the next-hop node through the acknowledgment retransmission mechanism (ACK) and the watchdog mechanism, which are relatively common forms. The sending node combines the watchdog mechanism and end-to-end integrity verification to obtain the modification situation of the next-hop node. For example, when the sending node sends a data packet, it calculates the hash value of the data at the same time and attaches it to the data packet. When the next-hop node receives and forwards the data packet, the sending node can receive the forwarded data packet at the same time. The sending node will recalculate the hash value of the received data packet and compare it with the received hash value to determine whether the next-hop node has committed a modification behavior.

[0040] Step 2: At the end of one round of iteration, input the node reception rate, the node forwarding rate, and the node modification rate into the first fuzzy system to obtain the current direct trust value of the next-hop node.

[0041] Fuzzy theory has unique advantages in trust modeling. First of all, obtaining the credibility of nodes depends not only on mathematical models and observational data, but also on professional knowledge. Since trust is full of uncertainty, using fuzzy sets and membership functions, fuzzy logic can quantify trust and perform reasonable reasoning on it, effectively dealing with the ambiguity of trust. Secondly, the process of fuzzy reasoning simulates the reasoning of the human brain and the judgment of uncertainty. In the trust model, fuzzy logic can better simulate the reasoning complexity of humans when dealing with trust relationships. In addition, when dealing with information loss caused by environmental impacts, fuzzy logic can use linguistic variables and membership functions to conduct qualitative analysis on data and obtain qualitative conclusions through fuzzy rules. Finally, fuzzy theory allows the use of different membership functions and fuzzy rules to describe and process trust relationships, which provides greater flexibility and scalability for the trust model. The trust model can be customized and adjusted according to specific application scenarios and requirements. Therefore, using fuzzy theory for trust modeling is of great significance for improving the performance of the trust model.

[0042] A fuzzy system is also known as a fuzzy inference system. Fuzzy systems were proposed because people are unable to accurately describe problems in the complex world and humans want to combine human knowledge with mathematical models, sensory measurements, etc. to solve engineering problems. A fuzzy system is essentially a non-linear mapping based on fuzzy sets. The basic idea of a fuzzy system is to introduce fuzzy logic to handle uncertainty and ambiguity and simulate the fuzzy reasoning process in human thinking. It models the system through fuzzy sets, membership functions, and fuzzy rules to achieve effective processing and decision-making of fuzzy and inaccurate data. Common fuzzy systems are divided into three categories: (1) pure fuzzy systems; (2) TSK (Takagi-Sugeno-Kang) fuzzy systems; (3) fuzzy systems with a fuzzifier and a defuzzifier. The inputs and outputs of pure fuzzy systems are both fuzzy sets or linguistic variables, which are not applicable to engineering based on numerical values. The inputs and outputs of TSK fuzzy systems are both numerical values, which have great limitations in expressing human knowledge and applications. Currently, the more commonly used one is the fuzzy system with a fuzzifier and a defuzzifier, that is, the fuzzy system used in this embodiment, and its structure is as Figure 3 shown.

[0043] When calculating the direct trust value through the fuzzy system, this embodiment selects the node forwarding rate FR, the node reception rate RR, and the node tampering rate MFR as the inputs of the first fuzzy system, and selects the current direct trust value as the output of the first fuzzy system. To prevent the occurrence of the "curse of dimensionality", this embodiment selects "low (L)", "medium (M)", "high (H)", and "very high (VH)" as the linguistic values of the variables of each input. Considering the limited computing power of the sensor nodes and the requirements for the calculation accuracy of the trust value, this embodiment selects the trapezoidal function as the membership function of the linguistic variable. The determination of fuzzy rules is a key link in the design of the fuzzy system. The determination of fuzzy rules is usually divided into an experience-based method and a data-based method. The experience-based method is obtained based on the actual experience and knowledge of the operators. After the rule design, the rules are usually adjusted and optimized according to the data. In the data-based method, it is necessary to analyze and summarize the data of the system input and output. This method is more objective, but requires a large amount of data support. Most of the literature adopts the experience-based method, and this embodiment also adopts the experience-based method to design fuzzy rules. The fuzzy rule design is shown in Table 1.

[0044] Table 1 Fuzzy Rules for Calculating the Current Direct Trust

[0045]

[0046]

[0047] Fuzzy inference is the process of obtaining a fuzzy output from a fuzzy input. Let be the universe of discourse of X (X = FR, RR, MFR), and be the universe of discourse of the current direct trust value CDT. The fuzzy rule base can be expressed as:

[0048]

[0049] where and B l are fuzzy sets on and respectively. Here, the values of and B l are L, M, H, VH, x = (FR, RR, MFR) T ∈U and y (y = CDT) ∈V are the input and output of the fuzzy system respectively.

[0050] Determination of the fuzzy relationship of the input. Let the membership functions of the linguistic values and be respectively. Then constitutes U = U FR×U RR ×U MFR a fuzzy relation of, U = U FR ×U RR ×U MFR The expression is as follows:

[0051]

[0052] where, ★ represents an arbitrary t-norm operator, X FR , X RR , X MFR represent the values corresponding to the node forwarding rate, node reception rate, and node tampering rate.

[0053] Determination of the implication relationship. The implication "→" represents a logical reasoning relationship, that is, the process of reasoning the result from the cause. The abstract form of a fuzzy rule is IF <FP1>, THEN <FP2>, where both FP1 and FP2 are fuzzy propositions. The implication is the process of "FP1 → FP2". There are multiple meanings for fuzzy complement, fuzzy union, and fuzzy intersection operators, so there are multiple interpretations for fuzzy IF-THEN rules. In this embodiment, the Mamadani meaning is selected, so the implication is expressed as follows:

[0054]

[0055] where, By determining the input fuzzy relation and the implication relationship, the fuzzy relation of a fuzzy rule can be expressed as

[0056]

[0057] where, Y CDT represents the output variable, that is, the current direct trust.

[0058] Determination of the fuzzy output of a single fuzzy rule. For a single fuzzy set A' on U, the output fuzzy set B of each rule is determined according to the generalized modus ponens theorem . That is, when l = 1, 2,..., M, there is l .

[0059]

[0060] where, x0 = [x FR0 , x RR0 , x MFR0 represents a specific trust factor vector.

[0061] The final output of the fuzzy inference engine. The output of the fuzzy inference engine is the result of the combined action of M rules. There are mainly two views on the relationship between the final output and individual fuzzy rules: combined inference and independent inference. In combined inference, all the rules in the fuzzy rule base are combined into a single fuzzy relation in U×V, and this fuzzy relation is regarded as a separate fuzzy IF-THEN rule. In independent inference, each rule in the fuzzy rule base determines an output fuzzy set, and the output of the entire fuzzy inference engine is the combination of M independent fuzzy sets. In the fuzzy inference engine, independent inference is the commonly used method and is implemented through the union. The mathematical representation of this independent inference is as follows:

[0062]

[0063] where represents the s-norm operator.

[0064] Combining the implication relation and independent inference, the final output of the fuzzy inference engine can be obtained as

[0065]

[0066] Defuzzification. The defuzzifier is the process of converting the fuzzy variable value into a clear numerical value. There are various types of defuzzifiers, including the centroid defuzzifier, the center-average defuzzifier, and the maximum defuzzifier, etc. Among them, the centroid defuzzifier is the most commonly used defuzzifier and is also the defuzzifier selected in this embodiment. Its expression is:

[0067]

[0068] Step 3: Input the difference between the current direct trust value and the historical direct trust value into the second fuzzy system to obtain a trust correction value.

[0069] Step 4: Use the trust correction value to correct the current direct trust value, and calculate the direct trust value based on the corrected current direct trust value and the historical direct trust value.

[0070] Due to the complexity of the network environment, the heterogeneity of nodes, and the diversity of their interaction behaviors, the trust relationship between nodes will continuously evolve over time and with the changes in behavioral interactions. Therefore, in order to ensure the stability, security, and effectiveness of the network, it is necessary to update the trust values of nodes regularly or under specific conditions. This process not only needs to consider the historical interaction data between nodes, but also comprehensively consider the real-time behavioral performance, changes in the network topology structure, and the influence of the external environment. By dynamically adjusting the trust degree of nodes, potential malicious nodes can be detected in a timely manner, and the network's resistance to unreliable behaviors can be enhanced, thereby ensuring the robustness and reliability of the entire system.

[0071] In order to effectively control the recognition rate of nodes, this embodiment designs a direct trust update method. In this embodiment, the evaluation node is compared to a judge. The design idea is that if the value of the current direct trust suddenly decreases, the evaluation node expresses a "suspicion" about the behavior of the evaluated node. At the same time, referring to the numerical difference between the current direct trust and the historical direct trust, this gap is reduced to represent this "suspicion". If the evaluated node continuously maintains malicious behavior, the smaller the trust difference between the current direct trust and the historical direct trust, the more certain the evaluation node is that the node is a malicious node and no longer maintains this "suspicion", and thus no longer adjusts this trust difference. At the same time, when the current direct trust of the evaluated node suddenly increases, the evaluation node flexibly adjusts the trust difference between the current direct trust and the historical direct trust according to the amount of increase, so that this trust difference decreases, thereby ensuring that the evaluated node needs more good behaviors to improve the node's trust. This meets the characteristic of "decreasing easily and increasing difficultly" for trust. Let the input Δ1 = CDT - HDT, that is, the difference between the current direct trust value CDT and the historical direct trust value HDT, and the output Δ2 represents the trust correction value that the current direct trust value CDT needs to be corrected. Among them, Δ1, Δ2 ∈ [-1, 1]. The calculation method of the trust correction value Δ2 is Δ2 = fuzzy(Δ1), where fuzzy(x) represents the second fuzzy system. The corrected current direct trust value is CDT' = CDT - Δ1 + Δ2. Combining the historical direct trust and the corrected current direct trust, the update expression of the direct trust value DT is as follows:

[0072] DT = ω * HDT + (1 - ω) * CDT'.

[0073] The design of the second fuzzy system fuzzy(x) is the key to this method. In the second fuzzy system fuzzy(x), the input is the difference Δ1 between the current direct trust value and the historical direct trust value, the output is the trust correction value Δ2, and the linguistic variables are Δ1 and Δ2. To ensure a more detailed comparison of the difference between historical trust and current trust, this model selects 21 linguistic values for Δ1, which are "negative 10", "negative 9", "negative 8", "negative 7", "negative 6", "negative 5", "negative 4", "negative 3", "negative 2", "negative 1", "0", "positive 1", "positive 2", "positive 3", "positive 4", "positive 5", "positive 6", "positive 7", "positive 8", "positive 9", "positive 10", and their meanings are the degree of the difference approaching a specific value. For example, "negative 5" means the degree of the difference approaching -0.5. Since it is a single-input single-output system, these 21 linguistic values will not increase the complexity of the second fuzzy system. This model selects trigonometric functions as the membership functions of each linguistic value to simplify the computational complexity. The design of the fuzzy rules is shown in Table 2. During the trust update process, the maximum value inference engine and the centroid defuzzifier are selected as the methods for fuzzy inference and defuzzification. The relationship between Δ1 and Δ2 obtained through fuzzy(x) is asFigure 4 as shown

[0074] Table 2 Fuzzy Rules Related to the Update of Direct Trust

[0075] IF THEN IF THEN negative 10 negative 5 positive 1 positive 1 negative 9 negative 4 positive 2 positive 1 negative 8 negative 4 positive 3 positive 1 negative 7 negative 3 positive 4 positive 1 negative 6 negative 3 positive 5 positive 2 negative 5 negative 3 positive 6 positive 2 negative 4 negative 3 positive 7 positive 2 negative 3 negative 1 positive 8 positive 3 negative 2 negative 1 positive 9 positive 3 negative 1 negative 1 positive 10 positive 3 0 0

[0076] Step 5: Perform weighted averaging on the direct trust value and the indirect trust value to obtain the comprehensive trust of the next-hop node.

[0077] To verify the effectiveness of this embodiment, the packet loss rate, false positive rate, and data fabrication rate are selected as evaluation indicators. The packet loss ratio (PLR) is defined as the ratio of the packets lost in the network to the packets sent by the sending node. The false positive ratio (FPR) refers to the ratio of the number of normal nodes misjudged as malicious nodes by the system to the total number of normal nodes. The data fabrication ratio (DFR) is defined as the ratio of the non-fabricated packets or information to the total transmitted packets in the network.

[0078] Under the conditions that the black hole attack, selective forwarding attack, SSF attack, and SMF attack account for 2%, 2%, 1%, and 5% respectively, the packet loss rates of AODV, TSRP, and the method of this embodiment are verified, as Figure 5 shown in (a) of Figure 5 As can be seen from (a) of Figure 5Among them, (b) is the verification of the data tampering rate of AODV, TSRP, and the method of this embodiment when the black hole attack, selective forwarding attack, SSF attack, and SMF attack account for 2%, 2%, 1%, and 5% respectively. It can be seen that since AODV and TSRP cannot identify the SMF attack, a large number of tampered data packets exist in the network. At the same time, since the SMF nodes continuously converge the data packets of surrounding nodes and send a large number of tampered data packets, these nodes are exhausted first, resulting in a gradual decrease in the data tampering rate. For the method of this embodiment, since it takes time to identify at the beginning stage, it slightly causes an increase in the tampering rate. As the SMF attack nodes are continuously identified and excluded from the network, there are almost no SMF attack nodes in the network. As more and more data packets are sent, the data tampering rate gradually decreases. Figure 6 The false positive rate of the model was tested when the black hole attack nodes, selective forwarding attack nodes, and SSF attack nodes each accounted for 10% of the network node scale. The main reason for the false positive rate caused by TSRP is that there is less interaction between nodes and there are cases where data reception is unsuccessful. When there are fewer malicious nodes, the proportion of normal nodes is larger and the nodes are denser. There are multiple choices during the routing selection process of nodes, resulting in more cases where there is little interaction between nodes and their neighbor nodes. Therefore, TSRP is prone to misjudgment and has a relatively large false positive rate in the absence of a large amount of data. When there are more malicious nodes, as more and more malicious nodes are identified, the normal nodes become sparser. During routing selection, there are fewer available routes for nodes, which increases the number of interactions with the same neighbor node, thus reducing the misjudgment rate. For the method of this embodiment, when the current direct trust value of a node suddenly decreases because the node is temporarily unable to receive data packets, the node has a "hesitation period", and by adjusting the fuzzy rules for trust update, the trust value of the node will not drop too low. However, since the situation of less interaction and inability to receive data packets is not continuous in time, the behavior of the node is normal in most cases, thus enabling the trust value of the node to return to the normal level. When more nodes are deleted, blocking too many malicious nodes causes dynamic changes in the network. There are more dynamic routing selections for nodes, less interaction, and the duration of the situation of being unable to receive data packets increases, resulting in a slight increase in the misjudgment rate. Generally speaking, the method of this embodiment reduces the false positive rate by about 30%.

[0079] The second embodiment of the present invention relates to a distributed network trust evaluation device based on a fuzzy system, including:

[0080] An acquisition and calculation module, configured to, after sending a data packet to the next-hop node, obtain the data packet reception situation, transmission situation, and tampering situation of the next-hop node through an acknowledgement retransmission mechanism and a watchdog mechanism, and calculate a node reception rate, a node forwarding rate, and a node tampering rate based on the data packet reception situation, transmission situation, and tampering situation;

[0081] A direct trust value determination module, configured to input the node reception rate, the node forwarding rate, and the node tampering rate into a first fuzzy system at the end of one round of iteration to obtain the current direct trust value of the next-hop node;

[0082] A trust correction value determination module, configured to input the difference between the current direct trust value and the historical direct trust value into a second fuzzy system to obtain a trust correction value;

[0083] A correction calculation module, configured to correct the current direct trust value by using the trust correction value, and calculate a direct trust value based on the corrected current direct trust value and the historical direct trust value;

[0084] An integrated trust calculation module, configured to perform weighted averaging on the direct trust value and the indirect trust value to obtain the integrated trust of the next-hop node.

[0085] The acquisition and calculation module calculates the node reception rate through where RR is the node reception rate, sr is the number of data packets received by the next-hop node, and s is the number of data packets sent by the next-hop node.

[0086] The acquisition and calculation module calculates the node forwarding rate through where FR is the node forwarding rate, sr is the number of data packets received by the next-hop node, and sf is the number of successful times of forwarding data packets by the next-hop node.

[0087] The acquisition and calculation module calculates the node tampering rate through where MFR is the node tampering rate, sr is the number of data packets received by the next-hop node, and mf is the number of data packets tampered by the next-hop node.

[0088] The first fuzzy system uses a trapezoidal function as the membership function of the linguistic variable. The linguistic values of each input variable are divided into "low", "medium", "high", and "very high". The fuzzy rules of the first fuzzy system are as follows: When the input node forwarding rate is "low", and there is no node reception rate and node tampering rate, the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is low, the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "high", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "very high", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "medium", and the node tampering rate is "very high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; When the input node forwarding rate is "medium", the node reception rate is "very high", and the node tampering rate is "very high", the output is "high"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "low", the output is "low"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "high", the output is "medium"; When the input node forwarding rate is "high", the node reception rate is "low", and the node tampering rate is "very high", the output is "low";When the input node forwarding rate is "high", the node reception rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node reception rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node reception rate is "medium", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "high", the node reception rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "low", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "low", and the node tampering rate is "high", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "low", and the node tampering rate is "very high", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "very high", the node reception rate is "medium", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "medium", the output is "high";When the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "very high", the output is "very high".;

[0089] The second fuzzy system uses trigonometric functions as the membership functions of the linguistic variables. The linguistic variables are expressed as "negative 10", "negative 9", "negative 8", "negative 7", "negative 6", "negative 5", "negative 4", "negative 3", "negative 2", "negative 1", "0", "positive 1", "positive 2", "positive 3", "positive 4", "positive 5", "positive 6", "positive 7", "positive 8", "positive 9", "positive 10", and their meanings are the degrees to which the difference is close to a specific value. The fuzzy rules of the second fuzzy system are as follows: When the difference between the current direct trust value and the historical direct trust value of the input is "negative 10", the output is "negative 5"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 9", the output is "negative 4"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 8", the output is "negative 4"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 7", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 6", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 5", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 4", the output is "negative 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 3", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 2", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "negative 1", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "0", the output is "0"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 1", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 2", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 3", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 4", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 5", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 6", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 7", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 8", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 9", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value of the input is "positive 10", the output is "positive 3".

[0090] The direct trust value is calculated by DT = ω * HDT + (1 - ω) * CDT′, where DT is the direct trust value, HDT is the historical direct trust value, and CDT′ is the corrected current direct trust value, expressed as: CDT′ = CDT - Δ1 + Δ2, CDT is the current direct trust value, Δ1 is the difference between the current direct trust value and the historical direct trust value, and Δ2 is the trust correction value.

[0091] It is not difficult to find that the present invention considers more trust factors to identify more attacks. At the same time, a fuzzy system is used to calculate the trust value, ensuring that the acquisition of the direct trust value is more in line with human logic. By designing a fuzzy system for direct trust update, the recognition accuracy of the algorithm can be effectively controlled.

[0092] The third embodiment of the present invention relates to an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the steps of the distributed network trust evaluation method based on a fuzzy system in the first embodiment are implemented.

[0093] The fourth embodiment of the present invention relates to a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the distributed network trust evaluation method based on a fuzzy system in the first embodiment are implemented.

[0094] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.

[0095] The present application is described with reference to the flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, as well as the combination of flows and / or blocks in the flowcharts and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, so that the instructions executed by the processor of the computer or other programmable data processing devices generate means for implementing the functions specified in one Figure 1 one flow or multiple flows and / or blocks Figure 1 one block or multiple blocks.

[0096] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to operate in a particular manner, such that the instructions stored in the computer-readable memory produce a manufacture including an instruction method that implements the functions specified in one or more of the processes and / or blocks Figure 1 one or more of the processes and / or blocks Figure 1 specified in the block or blocks.

[0097] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process, whereby the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions specified in one or more of the processes and / or blocks Figure 1 one or more of the processes and / or blocks Figure 1 specified in the block or blocks.

[0098] As described above, only the specific embodiments of the present invention are provided, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily conceive of changes or substitutions within the technical scope disclosed by the present invention, and all such changes or substitutions should be covered by the protection scope of the present invention. Therefore, the protection scope of the present invention shall be subject to the protection scope of the claims.

Claims

1. A distributed network trust evaluation method based on fuzzy system, characterized in that: The following steps are involved: After sending a data packet to the next-hop node, the next-hop node’s data packet reception, transmission, and tampering status are obtained through the confirmation retransmission mechanism and the watchdog mechanism, and the node reception rate, node forwarding rate, and node tampering rate are calculated based on the data packet reception, transmission, and tampering status. At the end of a round of iteration, the node reception rate, node forwarding rate and node tampering rate are input into the first fuzzy system to obtain the current direct trust value of the next hop node; Inputting the difference between the current direct trust value and the historical direct trust value into a second fuzzy system to obtain a trust correction value; amending the current direct trust value using the trust amendment value, and calculating a direct trust value based on the amended current direct trust value and the historical direct trust value; The direct trust value and the indirect trust value are weighted averaged to obtain the comprehensive trust of the next-hop node.

2. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The node reception rate is It is calculated as follows: RR is the node reception rate, sr is the number of packets received by the next-hop node, and s is the number of packets sent by the next-hop node.

3. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The node forwarding rate is It is calculated as follows: FR is the node forwarding rate, sr is the number of packets received by the next-hop node, and sf is the number of times the next-hop node successfully forwards packets.

4. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The node tampering rate is It is calculated as follows: MFR is the node tampering rate, sr is the number of data packets received by the next-hop node, and mf is the number of data packets tampered by the next-hop node.

5. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The first fuzzy system adopts trapezoidal function as the membership function of the language variable, and the language value of each input variable is divided into "low", "medium", "high" and "very high". The fuzzy rules of the first fuzzy system are as follows: when the input node forwarding rate is "low", and there is no node reception rate and node tampering rate, the output is "low"; when the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is low, the output is "low"; when the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "high", the output is "low"; when the input node forwarding rate is "medium", the node reception rate is "low", and the node tampering rate is "high", the output is "low"; When the input node forwarding rate is "medium", the node receiving rate is "low", and the node tampering rate is "very high", the output is "low"; when the input node forwarding rate is "medium", the node receiving rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "medium", the node receiving rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "medium", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "medium", and the node tampering rate is "very high", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "low" , the output is "low"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "medium", the node receiving rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "medium", the node receiving rate is "very high", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "medium", the node receiving rate is "high", and the node tampering rate is "medium", the output is "medium"; When the input node forwarding rate is "very high" and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "medium", the node receiving rate is "very high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "low", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "low", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "low", and the node tampering rate is "very high", the output is "low";When the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "high", the output is "medium"; when the input node forwarding rate is "high", the node receiving rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "High", the node reception rate is "high", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "high", the node reception rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "high" and the node reception rate is "high", the output is "high"; When the input node forwarding rate is "very high" and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "high", the node receiving rate is "very high", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "medium", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is low, and the node tampering rate is "high", the output is "low". The output is low; when the input node forwarding rate is "very high", the node receiving rate is "low", and the node tampering rate is "very high", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "medium", the output is "medium"; when the input node forwarding rate is "very high", the node receiving rate is "medium", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high" , when the node reception rate is "medium", and the node tampering rate is "very high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "high", and the node tampering rate is When the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "low", the output is "low"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "medium", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "high", the output is "high"; when the input node forwarding rate is "very high", the node reception rate is "very high", and the node tampering rate is "very high", the output is "very high".

6. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The second fuzzy system uses trigonometric functions as membership functions of linguistic variables, and the linguistic variables are expressed as "negative 10", "negative 9", "negative 8", "negative 7", "negative 6", "negative 5", "negative 4", "negative 3", "negative 2", "negative 1", "0", "positive 1", "positive 2", "positive 3", "positive 4", "positive 5", "positive 6", "positive 7", "positive 8", "positive 9", and "positive 10", which means the degree to which the difference is close to a specific value; the fuzzy rules of the second fuzzy system are as follows: when the difference between the current direct trust value and the historical direct trust value input is "negative 10", the output is "negative 5"; when the difference between the current direct trust value and the historical direct trust value input is "negative 9", the output is "Negative 4"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 8", the output is "Negative 4"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 7", the output is "Negative 3"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 6", the output is "Negative 3"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 5", the output is "Negative 3"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 4", the output is "Negative 3"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 3", the output is "Negative 1"; when the difference between the current direct trust value input and the historical direct trust value is "Negative 3", the output is "Negative 1"; When the difference between the current direct trust value and the historical direct trust value is "negative 2", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value is "negative 1", the output is "negative 1"; when the difference between the current direct trust value and the historical direct trust value is "0", the output is "0"; when the difference between the current direct trust value and the historical direct trust value is "positive 1", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value is "positive 2", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value is "positive 3", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value is "positive When the difference between the current direct trust value and the historical direct trust value is "positive 4", the output is "positive 1"; when the difference between the current direct trust value and the historical direct trust value is "positive 5", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value is "positive 6", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value is "positive 7", the output is "positive 2"; when the difference between the current direct trust value and the historical direct trust value is "positive 8", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value is "positive 9", the output is "positive 3"; when the difference between the current direct trust value and the historical direct trust value is "positive 10", the output is "positive 3".

7. The distributed network trust evaluation method based on fuzzy system according to claim 1 is characterized in that: The direct trust value is calculated by DT=ω*HDT+(1-ω)*CDT′, wherein DT is the direct trust value, HDT is the historical direct trust value, CDT′ is the corrected current direct trust value, expressed as: CDT′=CDT-Δ1+Δ2, CDT is the current direct trust value, Δ1 is the difference between the current direct trust value and the historical direct trust value, and Δ2 is the trust correction value.

8. A distributed network trust evaluation device based on a fuzzy system, characterized in that: include: The acquisition calculation module is used to obtain the data packet reception, transmission and tampering status of the next hop node through the confirmation retransmission mechanism and the watchdog mechanism after sending the data packet to the next hop node, and calculate the node reception rate, node forwarding rate and node tampering rate based on the data packet reception, transmission and tampering status; The current direct trust value determination module is used to input the node reception rate, node forwarding rate and node tampering rate into the first fuzzy system at the end of one round of iteration to obtain the current direct trust value of the next hop node; A trust correction value determination module, used for inputting the difference between the current direct trust value and the historical direct trust value into a second fuzzy system to obtain a trust correction value; a correction calculation module, configured to correct the current direct trust value using the trust correction value, and calculate a direct trust value based on the corrected current direct trust value and the historical direct trust value; The comprehensive trust calculation module is used to perform weighted average of the direct trust value and the indirect trust value to obtain the comprehensive trust of the next-hop node.

9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the distributed network trust evaluation method based on a fuzzy system as claimed in any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the distributed network trust evaluation method based on a fuzzy system as claimed in any one of claims 1 to 7 are implemented.