A Defense Method Against Inter-Domain SDN Topology Pollution Attacks Based on Blockchain
By adopting blockchain consensus verification and aggregation signature mechanism in the inter-domain SDN network, the problem of lack of security authentication in topology discovery is solved, and fast and secure topology discovery and malicious controller identification are achieved to prevent topology pollution and large traffic attacks.
Patent Information
- Application Number
- CN202310267113.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-20
- Publication Date
- 2025-07-25
- Estimated Expiration
- 2043-03-20
AI Technical Summary
The existing technology lacks a targeted security authentication system in topology discovery, cannot effectively defend against topological pollution attacks, and fails to identify malicious controllers in a timely manner, resulting in insufficient network security.
The blockchain-based inter-domain SDN topology pollution attack defense method is adopted, and messages are collected through various domain controllers and transaction blocks are formed. The blockchain consensus verification and aggregation signature mechanism is used to achieve fast and secure network topology discovery, identify and defend against malicious controllers.
It realizes fast and secure network topology discovery, reduces the number of communications between nodes and signature verification overhead, and can promptly identify and defend against malicious controllers, avoid topological pollution and large traffic attacks.
Smart Images

Figure CN116346451B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of network security technology, and in particular to a method for defending against inter-domain SDN topology pollution attacks based on blockchain. Background Art
[0002] In topology discovery, since many services in the application plane have a high dependence on the topology, it is necessary to prevent attackers from posing threats in topology discovery as early as possible to avoid greater damage to the network.
[0003] The invention patent "A method and system for defending against topology pollution attacks" with the patent number CN108632267A listens to Packet In messages received by the SDN controller, records hosts in the network, and determines whether the host is a real host. The real host refers to the host that sends host traffic using its own IP and MAC addresses; by listening to the flow table entry signal sent by the SDN controller and the flow table entry deletion message uploaded by the SDN switch, a record table of flow table entries for each switch port is maintained, and whether the host on a certain port has left the network is judged through this table to prevent traffic hijacking attacks; by adding a random string as a verification field to the LLDP packet sent by the SDN controller and checking the LLDP packet received by the SDN controller, attacks using the LLDP packet to forge links are prevented.
[0004] The above-mentioned invention patent "A method and system for defending against topology pollution attacks" does not have a set of targeted security authentication systems for deception, tampering, and replay attacks, does not consider tracing the origin of attacks and taking preventive measures in advance, has low security, and does not consider the situation where the host information table is tampered with. Summary of the Invention
[0005] The technical problem to be solved by the present invention is to provide a method for defending against inter-domain SDN topology pollution attacks based on blockchain in view of the above-mentioned deficiencies of the prior art. By integrating some security policies in the controller using the idea of blockchain and enhancing the security of the packet authentication mechanism, fast and secure network topology discovery is achieved.
[0006] To solve the above technical problem, the technical solution adopted by the present invention is:
[0007] A method for defending against inter-domain SDN topology pollution attacks based on blockchain, where each domain controller collects all messages within the domain, extracts key information from the messages and forms a block in the form of a transaction. When the controller triggers a block generation request, all transaction information within the block needs to be consensus-verified by other domain controllers; any transaction between nodes needs to be consensus-verified by other nodes. The nodes use the method of aggregated signature to perform unified security authentication on each transaction, and the primary node responsible for creating the block is randomly generated through a secure hash function.
[0008] The specific steps are as follows:
[0009] Step 1: Initialize all controller nodes, the number of rounds, and the primary node for the first time;
[0010] Step 2: The primary node stores the in-domain messages collected as transactions in the block. When the transaction threshold is reached, it proposes to generate a block, signs the Pre-prepare message requesting the generation of the block, and then broadcasts it to the entire network;
[0011] Step 3: The follower nodes receive the Pre-prepare message from the primary node and verify it. If the verification is successful, they broadcast the signed Prepare message as a response;
[0012] Step 4: After receiving the Prepare message, the primary node verifies the node identity. If it is legal, it sends the signed Commit message as a response; otherwise, it does not reply;
[0013] Step 5: After each node receives the Commit message, it verifies the received message; if the identity verification of each node is legal, the requested block reaches a consensus, and the primary node writes the block into the blockchain and re-selects the primary node for the next round of the consensus process; if there are illegal nodes, it means there are malicious controllers, and the block that cannot pass the consensus mechanism will be discarded by the network.
[0014] Further, the specific method for Step 1 is as follows:
[0015] Step 1.1: Initialize all controller nodes c1, c2…c n , where n is the total number of controller nodes, and initialize the number of rounds r;
[0016] Step 1.2: Initialize the primary node. Any node can construct a block, and the primary node for each round of the consensus process is randomly selected according to formula (1);
[0017] Node r+1 =H(Node r ||σ r ) (1)
[0018] where r represents the number of rounds of consensus, σ r represents the aggregated signature value for the r-th round, and Node r represents the primary node used to create the block during the r-th round of the consensus process; the primary node Node r+1 for the next round is selected based on the result of the hash calculation of the aggregated signature value and the primary node during this round of the consensus process, and the SHA-3 hash function is used.
[0019] Further, the specific method of step 3 is as follows:
[0020] Step 3.1: After the slave node receives the broadcast message Prepare signed by the master node, generate a key and sign the message.
[0021] Step 3.2: Verify according to the signature information to determine whether the identity is reliable.
[0022] If the verification is successful, broadcast the signed Prepare message as a response.
[0023] Further, the specific method of step 4 is as follows:
[0024] Step 4.1: The master node receives the Prepare message and judges the number of messages.
[0025] Step 4.2: The total number of input nodes is 3f + 1, and the number of malicious nodes is f. If the number of messages is greater than 2f + 1, after collecting the digital signature values {σ1, σ2…σ n-1} and public keys {p1, p2…p n-1} from each node, it will aggregate them into a single signature information. According to the aggregated single signature σ r ′ and public key p r ′, uniformly authenticate each node. Each node needs to perform three operations: key generation, message signing, and signature verification. The signature process will generate an aggregated signature value and a public key value.
[0026] Step 4.3: Combine the aggregated signature value and the public key value to judge the legality of the node. If the identities of all nodes are legal, send a signed Commit message as a response; otherwise, do not reply.
[0027] Further, in step 4.2, the key generation adopts the distributed key generation technology DKG that does not need to ensure that all nodes are legal nodes. DKG will generate a key pair (si, pi) for each node.
[0028] Further, in step 4.2, the signature of each node for the information is as follows:
[0029]
[0030] Among them, the nodes are denoted as {c1, c2…c n}, and the publicly known private keys of each node are denoted as {s1, s2…s n}; Under normal circumstances, any subset of all nodes can reconstruct the private key s according to Lagrange interpolation method, so as to calculate the aggregated public key p; if the private key s value cannot be reconstructed, it is determined that there are malicious nodes. If the private key s value can be reconstructed, first calculate the aggregated public key p according to formulas (3) and (4), and then calculate the value of the aggregated signature σ according to formula (5);
[0031]
[0032] p = g s , g ∈ G R (4)
[0033]
[0034] Among them, the set (s1, s2…s n ) is called the threshold key sharing value of the private key s within the range of (2f, n), that is, the private keys publicly disclosed by each node; only when any 2f + 1 values in the input set (s1, s2…s n ) are input, can the private key s be effectively output, and any k ≤ 2f values in this set cannot analyze information about the private key s, G R is a multiplicative cyclic group of order q, and g represents the generator of the group; L i is the coefficient of the Lagrange set R.
[0035] Further, the specific method of step 5 is as follows:
[0036] Step 5.1: After each node receives the Commit message, use the same aggregated signature method as in step 4 to perform unified authentication on each node;
[0037] Step 5.2: If the authentication of each node is legal, the requested block obtains consensus, and the master node writes the block into the blockchain; if the authentication fails, there is a malicious controller, and the block that cannot pass the consensus will be discarded by the network;
[0038] Step 5.3: Re-select the master node for the next round of consensus process according to formula (1).
[0039] The beneficial effects of adopting the above technical solutions are as follows: The method for defending against inter-domain SDN topology pollution attacks based on blockchain provided by the present invention requires consensus verification by other nodes for any transaction between nodes. Nodes use the method of aggregated signature to uniformly authenticate each transaction, and the primary node responsible for creating blocks is randomly generated through a secure hash function. By integrating some security policies in the controller using the idea of blockchain and enhancing the security of the packet authentication mechanism, fast and secure network topology discovery is achieved. This method reduces the communication times between nodes and the signature verification overhead, can promptly identify malicious controllers, and avoid topology pollution and large traffic attacks on the entire network. Brief Description of the Drawings
[0040] Figure 1 It is a schematic diagram of the communication process of SPBFT provided by an embodiment of the present invention;
[0041] Figure 2 It is a comparison chart of the consensus time of different security solutions provided by an embodiment of the present invention. Detailed Embodiment
[0042] The following combines the drawings and embodiments to further describe in detail the specific implementation manners of the present invention. The following embodiments are used to illustrate the present invention, but are not used to limit the scope of the present invention.
[0043] In order to prevent malicious hosts from launching cross-domain attacks and malicious controllers from polluting the neighborhood, based on the idea of path security authentication, this embodiment provides a method for defending against inter-domain SDN topology pollution attacks based on blockchain, adopts a defense mechanism based on the blockchain distributed consensus algorithm, and proposes an improved consensus algorithm, namely the Simplified Practical Byzantine Fault Tolerance (SPBFT) consensus algorithm. The communication process of this algorithm is as Figure 1 shown. In this algorithm, any transaction between nodes requires consensus verification by other nodes. Nodes use the method of aggregated signature to uniformly authenticate each transaction, and the primary node responsible for creating blocks is randomly generated through a secure hash function.
[0044] In this method, each domain controller collects all messages within the domain, extracts the key information in the messages, and forms blocks in the form of transactions. When the controller triggers a block generation request, all transaction information within the block needs to be consensus-verified by other domain controllers. The specific method is as follows.
[0045] Step 1: Initialize all controller nodes, rounds, and the primary node for the first time; the specific method is as follows:
[0046] Step 1.1: Initialize all controller nodes c1, c2…cn , where n is the total number of controller nodes, and r is the initial number of rounds;
[0047] Step 1.2: Initialize the primary node. Any node can construct a block, and the primary node for each round of the consensus process is randomly selected according to formula (1);
[0048] Node r+1 = H(Node r ||σ r ) (1)
[0049] where r represents the number of rounds of consensus, σ r represents the aggregated signature value in the r-th round, and Node r represents the primary node used to create a block in the r-th round of the consensus process; the primary node Node r+1 for the next round is selected based on the result of the hash calculation of the aggregated signature value and the primary node in the current round of the consensus process, and the SHA-3 hash function is used.
[0050] This random selection method is secure and efficient. The security is mainly reflected in that the aggregated signature value σ r can only be calculated by legitimate controller nodes at the end of the current consensus process. Therefore, malicious parties cannot predict the primary node for the next round in advance to launch an attack on it; the efficiency is reflected in that this method is different from the traditional consensus process based on interactive voting. The host node in the next round of the consensus process is determined before the start of the consensus, and no additional time overhead will be generated.
[0051] Step 2: The primary node stores the in-domain messages collected as transactions in the block. When the transaction threshold is reached, it proposes to generate a block, signs the Pre-prepare message requesting the generation of the block, and then broadcasts it to the entire network;
[0052] Step 3: The slave nodes receive the Pre-prepare message from the primary node and verify it. If the verification is successful, they broadcast the signed Prepare message as a response; the specific method is as follows:
[0053] Step 3.1: When the slave node receives the broadcast message Prepare signed by the primary node, it generates a key and signs the message;
[0054] Step 3.2: Verify according to the signature information to determine whether the identity is reliable;
[0055] Step 3.3: If the verification is successful, broadcast the signed Prepare message as a response.
[0056] Step 4: After the primary node receives the Prepare message, it verifies the node identity. If it is legitimate, it sends a signed Commit message as a response; otherwise, it does not reply. The specific method is as follows:
[0057] Step 4.1: The primary node receives the Prepare message and judges the number of messages;
[0058] Step 4.2: The total number of input nodes is 3f + 1, and the number of malicious nodes is f. If the number of messages is greater than 2f + 1, after collecting the digital signature values {σ1, σ2…σ n-1} and public keys {p1, p2…p n-1} from each node, it will aggregate them into a single signature information. According to the aggregated single signature σ r ′ and public key p r ′, it uniformly verifies the identity of each node. Each node needs to perform three operations: key generation, message signature, and signature verification. The signature process will generate an aggregated signature value and a public key value. The key generation uses the distributed key generation (DKG) technology that does not need to ensure that all nodes are legitimate nodes. DKG will generate a key pair (s i , p i ) for each node. The signature of each node's information is as follows:
[0059]
[0060] Among them, the nodes are denoted as {c1, c2…c n}, and the publicly disclosed private keys of each node are denoted as {s1, s2…s n}; under normal circumstances, any subset of all nodes can reconstruct the private key s according to the Lagrange interpolation method, so as to calculate the aggregated public key p; if the private key s value cannot be reconstructed, it is judged that there are malicious nodes. If the private key s value can be reconstructed, first calculate the aggregated public key o according to formula (3) and formula (4), and then calculate the value of the aggregated signature σ according to formula (5);
[0061]
[0062] p = g s , g ∈ G R (4)
[0063]
[0064] Among them, the set (s1, s2…s n ) is called the threshold key sharing value of the private key s within the range of (2f, n), that is, the publicly disclosed private keys of each node; only the input set (s1, s2…s nThe private key s can be effectively output only when any 2f + 1 values in ( ) are used, and any k ≤ 2f values in this set cannot reveal information about the private key s, G R is a multiplicative cyclic group of order q, and g represents the generator of the group; L i is the coefficient of the Lagrangian set R.
[0065] Step 4.3: Combine the aggregated signature value and the public key value to judge the legitimacy of the nodes. If the identities of all nodes are legal, send the signed Commit message as a response; otherwise, do not reply.
[0066] Step 5: After each node receives the Commit message, verify the received message; if the identity verification of each node is legal, the requested block obtains consensus, and the master node writes the block into the blockchain and re - selects the master node for the next round of the consensus process. If there are illegal nodes, it means that there is a malicious controller, and the block that cannot pass the consensus mechanism will be discarded by the network. The specific method is as follows:
[0067] Step 5.1: After each node receives the Commit message, use the same aggregated signature method as in Step 4 to uniformly verify the identities of each node;
[0068] Step 5.2: If the identity verification of each node is legal, the requested block obtains consensus, and the master node writes the block into the blockchain; if the identity verification fails, there is a malicious controller, and the block that cannot pass the consensus will be discarded by the network;
[0069] Step 5.3: Re - select the master node for the next round of the consensus process according to formula (1).
[0070] As Figure 2 shown, it is a comparison of the consensus time of the traditional consensus algorithm Practical Byzantine Fault Tolerance (PBFT), the ISAVA scheme, and the SPBFT method of the present invention. The abscissa represents the number of controller nodes, and the ordinate represents the consensus time.
[0071] From the curve of PBFT, it can be seen that as the number of participating nodes increases, the consensus time required by the traditional Byzantine consensus algorithm PBFT will quickly reach 20s and even increase to 70s. This is because the operation of message broadcasting among nodes in the traditional consensus mechanism makes its scalability very poor, and the multi - point - to - multi - point interaction method will cause the number of communication times to increase continuously.
[0072] The ISAVA solution reduces the consensus time to a certain extent. However, when the number of nodes reaches 10, the rate of increase in the consensus time will become larger. This is mainly because it needs to first establish a trust alliance between domains and then perform signature and verification operations between domains by sharing key tags for data packet headers. This method will result in a large communication overhead and is only applicable to the case of a small number of network nodes.
[0073] From the SPBFT curve in the comparison graph, it can be seen that the SPBFT solution designed in the present invention requires the minimum consensus time and has the best effect. This is because the verification method based on aggregated signatures in SPBFT reduces the operations of nodes for verifying each message, simplifies the complex voting mechanism during the original primary node election, and reduces the primary node election time at the beginning of the consensus. The technical solution SPBFT proposed in the present invention is compared with traditional consensus solutions based on blockchain and defense solutions based on encryption authentication between domains in terms of the consensus time index, which proves that this solution can quickly complete the consensus process between nodes and can detect malicious controllers as early as possible, and has relatively good defense effects.
[0074] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit them. Although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that they can still modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements for some or all of the technical features. However, such modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope defined by the claims of the present invention.
Claims
1. A method for defending against inter-domain SDN topology pollution attacks based on blockchain, characterized in that: Each domain controller collects all messages within the domain, extracts the key information in the messages and forms blocks in the form of transactions. When the controller triggers a block generation request, all transaction information within the block needs to be consensus-verified by other domain controllers; any transaction between nodes requires consensus verification by other nodes. Nodes use the method of aggregate signature to perform unified security authentication on each transaction, and the primary node responsible for creating the block is randomly generated by a secure hash function. The specific steps of the defense method are as follows: Step 1: Initialize all controller nodes, the number of rounds, and the primary node for the first time. Step 2: The primary node stores the messages within the domain collected as transactions in the block. When the transaction threshold is reached, it proposes to generate a block, signs the Pre-prepare message requesting the generation of the block, and then broadcasts it to the entire network. Step 3: The slave nodes receive the Pre-prepare message from the primary node and verify it. If the verification is successful, they broadcast the signed Prepare message as a response. Step 4: After the primary node receives the Prepare message, it verifies the node identity. If it is legal, it sends the signed Commit message as a response; otherwise, it does not reply. The specific method is as follows: Step 4.1: The primary node receives the Prepare message and judges the number of messages. Step 4.2: The total number of input nodes is 3f + 1, and the number of malicious nodes is f. If the number of messages is greater than 2f + 1, after collecting the digital signature values {σ1, σ2…σ n-1} and public keys {p1, p2…p n-1}, they will be aggregated into a single signature information. According to the aggregated single signature σ r ′ and public key p r ′, the identities of each node will be uniformly authenticated. Each node needs to perform three operations: key generation, message signature, and signature verification. The signature process will generate an aggregated signature value and a public key value; Among them, the signature of each node for the information is as follows: Among them, the nodes are denoted as {c1, c2…c n}, and the private keys publicly disclosed by each node are denoted as {s1, s2…s n}; if the private key s value cannot be reconstructed, it is determined that there is a malicious node. If the private key s value can be reconstructed, first calculate the aggregated public key p according to formulas (3) and (4), and then calculate the value of the aggregated signature σ according to formula (5); p = g s , g ∈ G R (4) Among them, the set (s1, s2…s n ) is called the threshold key sharing value of the private key s within the range of (2f, n), that is, the private keys publicly disclosed by each node; only when any 2f + 1 values in the input set (s1, s2…s n ) are input, can the private key s be effectively output, and any k ≤ 2f values in this set cannot analyze information about the private key s. G R is a multiplicative cyclic group of order q, and g represents the generator of the group; L i is the coefficient of the Lagrangian set R.
2. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 1, wherein: This method also includes the following steps: Step 5: After each node receives the Commit message, it verifies the received message. If the identity verification of each node is legal, the requested block obtains consensus, and the primary node writes the block into the blockchain and reselects the primary node for the next round of consensus process. If there are illegal nodes, it means there are malicious controllers, and the block that cannot pass the consensus mechanism will be discarded by the network.
3. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 2, characterized in that: The specific method of Step 1 is as follows: Step 1.1: Initialize all controller nodes c1, c2…c n , where n is the total number of controller nodes, and initialize the round number r; Step 1.2: Initialize the primary node. Any node can construct a block, and the primary node for each round of consensus process is randomly selected according to formula (1). Node r+1 = H(Node r || σ r ) (1) Among them, r represents the round of consensus, and σ r represents the aggregated signature value in the r-th round, and Node r represents the primary node used to create a block during the r-th round of consensus; the primary node Node r+1 in the next round is selected based on the result of the hash calculation using the aggregated signature value and the primary node during the current round of consensus process, and the SHA-3 hash function is adopted.
4. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 3, wherein: The specific method of Step 3 is as follows: Step 3.1: When the slave node receives the broadcast message Prepare signed by the primary node, it generates a key and signs the message. Step 3.2: Verify according to the signature information to judge whether the identity is reliable. Step 3.3: If the verification is successful, broadcast the signed Prepare message as a response.
5. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 4, wherein: Step 4 also includes the following steps: Step 4.3: Combine the aggregate signature value and the public key value to judge the node legality. If the identities of all nodes are legal, send the signed Commit message as a response; otherwise, do not reply.
6. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 5, wherein: In step 4.2, the key generation uses the distributed key generation technology DKG that does not need to ensure that all nodes are legal nodes. DKG generates a set of key pairs (s i , p i ) for each node.
7. The method for defending against inter-domain SDN topology pollution attacks based on blockchain according to claim 6, characterized in that: The specific method of Step 5 is as follows: Step 5.1: After each node receives the Commit message, it uses the same aggregate signature method as in Step 4 to perform unified identity verification on each node. Step 5.2: If the identity verification of each node is legal, the requested block obtains consensus, and the primary node writes the block into the blockchain. If the identity verification fails, there are malicious controllers, and the block that cannot pass the consensus will be discarded by the network. Step 5.3: Re-select the primary node for the next round of consensus process according to formula (1).
Citation Information
Patent Citations
Topological pollution attack defense method and system
CN108632267A
Method and device for determining consensus of blocks in block chain network and storage medium
CN110943838A
Blockchain-based trusted software defined network construction method
CN113301149A