Identity authentication method for drones based on blockchain

By introducing fog nodes into the drone network, auxiliary drones can register and authenticate on the blockchain, solving the problem of blockchain lacking effective separate authentication in drone equipment identity authentication, and ensuring the security of drone communications.

CN114884664BActive Publication Date: 2025-04-08HENAN UNIVERSITY
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202210433960.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-04-24
Publication Date
2025-04-08
Estimated Expiration
2042-04-24

AI Technical Summary

Technical Problem

In the existing research on drone network security, blockchain lacks effective separate authentication in drone equipment identity authentication, making communication security difficult to ensure.

Method used

By introducing fog nodes, auxiliary drones can register and authenticate on the blockchain, and use non-singular elliptic curve encryption algorithms and smart contracts to achieve the anonymity, confidentiality and undeniability of drones.

Benefits of technology

It effectively protects the communication security of the drone system, prevents simulated attacks, modified attacks, replay attacks, and man-in-the-middle attacks, and ensures the security and reliability of the drone's identity information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114884664B_ABST
    Figure CN114884664B_ABST
Patent Text Reader

Abstract

The purpose of the present invention is to design an identity authentication method for drones based on blockchain, including: (1) system initialization stage, mainly fog nodes to select algorithms, select parameters and save them; (2) drone registration stage on blockchain, this stage is mainly to determine whether the drone identity information exists on the chain and register drones that do not exist; (3) drone chain authentication based on fog nodes, this stage is mainly to authenticate drones that have been registered on the chain. The present invention effectively protects the communication security of the drone system through fog nodes, ensures the confidentiality, anonymity and non-repudiation of the drone's identity information, can effectively prevent simulation attacks, modification attacks, replay attacks, man-in-the-middle attacks, prevent malicious attacks from causing drones to be kidnapped, and ensure the communication security of drones.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of drone security technical issues, and specifically relates to a process method for registering a drone on a blockchain through a fog node and performing identity authentication with the drone. Background Art

[0002] With the development of drone technology, drones have gradually become an important tool for people to improve their quality of life due to their advantages in coverage, detection capabilities, and intelligence levels. Since drones are deployed in open environments and their communications are wireless in nature, the potential risks and security issues of drones have gradually become prominent. They are vulnerable to multiple security threats and are more vulnerable to malicious attacks. The security threats to drones come from other aircraft and some sensor command devices on the ground. In the blockchain system, since there is no centralized organization to process and maintain data, all transactions in the system are open and transparent so that each node can quickly reach a consensus. The user's address in the blockchain is the hash value of its public key, which can avoid the exposure of the IP address of the transaction entity.

[0003] In the current research on drone network security, the relevant work of blockchain is mainly carried out from two aspects: information security architecture and security authentication of drone networks. In terms of authentication, existing research mainly builds peer-to-peer networks through devices that support blockchain deployment, such as gateway nodes, edge nodes, and fog nodes, to form blockchain networks, and implements the identity authentication of drone devices through blockchain. At the same time, blockchain is an open distributed ledger that can permanently record transactions. Smart contracts facilitate the negotiation of untrusted transactions by supporting automatic payments. It is currently being applied to various business applications. In the need to establish secure and reliable drone communications, if access control is only performed without separate authentication, the progress of applications in various fields will be limited.

[0004] Fog nodes are mainly located near the location of drones, such as deployed on road nodes such as red lights, to reduce system latency and response time and maintain the operation of the blockchain. Each fog node has a pair of public and private keys and a unique Ethereum address. Each fog node is responsible for managing a group of drones flying within a certain radius. Fog nodes are mainly used by users to query the ticket structure in the chain, verify the identity of drone devices registered to the blockchain in the area, and assist in mutual authentication between drones in the area. Summary of the invention

[0005] The purpose of this invention is to design a blockchain-based drone identity authentication method that can effectively protect the communication security of the drone system.

[0006] The technical solution adopted by the present invention is:

[0007] A blockchain-based drone identity authentication method includes the following steps:

[0008] S1: System initialization phase, the fog nodes mainly select non-singular elliptic curves, select parameters (public key, private key, hash function) and save them;

[0009] S2: The registration stage of drones on the blockchain. This stage mainly determines whether the drone identity information exists on the chain and registers drones that do not exist;

[0010] S3: On-chain authentication of drones based on fog nodes. This stage mainly authenticates drones that have been registered on the chain.

[0011] The method of initializing the system in S1 is mainly executed by fog nodes. The execution operations include selecting curve parameters, selecting system public keys, private keys, and three hash functions.

[0012] The registration phase of drones on the blockchain in S2 is mainly assisted by fog nodes. Each fog node has a unique Ethereum address generated by a public key, and drones in the same area are uniformly registered by fog nodes in the area. The hash value of the drone's pseudo-identity and the hash value of the address number in the area are written into the blockchain;

[0013] S2.1: UAV i Pick a random number And calculate its private key SK i , calculated as: SK i =h1(ID i ||SK pub ||m), public key PK i , calculated as: PK i =SK i P, and the anonymous identity AID i , calculated as:

[0014] S2.2: U i Save your private key as a password and choose a random number As a private dynamic parameter, calculate a public dynamic parameter D i =d i ·P, and upload this dynamic parameter to the authentication identity ledger through the fog node to prepare for subsequent identity authentication.

[0015] S2.3: The fog node first generates an address number adsID=keccak256 (number fog ,Eads T), where ID fog is the identity of the fog node, Eads T The Ethereum address of the blockchain management center.

[0016] S2.4: The fog node creates a transaction information Tra1 through the elliptic curve encryption algorithm, which is calculated as Tra1 = Enc(adsID, AID i ). The transaction information is shared among users in the blockchain. When the blockchain management center receives the identity request of the fog node, it first uses the private key to decrypt the transaction information Dec(Tra1)=(adsID,AID i ), thereby obtaining adsID and AID i .

[0017] S2.5: Verify the existence of the address number and the drone's identity. First, verify the drone's identity AID i If AID i If it exists, it means that the drone has been registered, and the registration process is terminated; if AID i If it does not exist, but adsID exists, it means that the drone is not registered. The blockchain will create a new block and broadcast Tra1 in the block to achieve message sharing.

[0018] S2.6: The fog node generates a ticket for the drone device through the smart contract function And send the ticket to the blockchain management center, where t is the time limit of the ticket.

[0019] S2.7: The blockchain management center will hash the value of the bill Write to the blockchain through the contract function, create transaction information Tra2 and share it with the fog node. The fog nodes share Tra2 with the drones in their area.

[0020] In S3, drone chain authentication is based on fog nodes. When a drone device initiates an authentication request, the fog node will query whether there is a drone that initiates the request on the chain through transaction information.

[0021] The selection of curves and drone parameters in the initialization phase described in step S1 include:

[0022] The fog node selects a large prime number n and defines a non-singular elliptic curve E(n). The curve consists of n points forming an additive group G of order q, where P is the generator.

[0023] The registration phase of the drone on the blockchain in step S2 is mainly to determine whether the drone identity information exists on the chain and register the drone that does not exist. The steps of this phase include the following:

[0024] The drone’s identity registration phase on the blockchain through the fog node includes: the drone calculates its own public key, private key, and anonymous identity AID i , and calculate a common parameter D i ; The fog node generates an address number adsID in its area and creates a transaction information Tra1=Enc(adsID,AID i ), the transaction information is shared among users within the blockchain; when the blockchain center receives the registration request of the fog node, it will first decrypt the transaction information through the decryption algorithm Dec() Dec(Tra1) = (adsID, AID i ), thereby obtaining the address number of the area and the anonymous identity of the drone; the blockchain center uses the address number and the anonymous identity of the drone to find out whether the drone has been registered on the blockchain. If the query is successful, the registration is terminated, otherwise the blockchain will create a new block and publish the transaction information Tra1 in the blockchain system.

[0025] The drone chain authentication based on fog nodes in step S3 is mainly to authenticate the drones that have been registered on the chain, and its authentication steps include the following:

[0026] When the fog node receives the drone’s authentication information M i When the timestamp T is fresh, first check whether it is fresh to determine whether the message is fresh. Then obtain the drone's public key and public parameters from the on-chain account book to determine whether the authentication formula is valid. If so, the correct address number and token are obtained; determine whether the address number exists. If the address number does not exist, the authentication fails. If the address number exists, the integrity of the token needs to be verified. Through the comparison on the chain, if the comparison is successful, the drone's identity authentication is successful.

[0027] The present invention assists drones in registering and authenticating on a blockchain by constructing edge fog nodes. Since drones cannot directly perform operations on a blockchain, when the drone applies to register through a blockchain, the fog node acts as an auxiliary node to register the drone's information on the chain; when the drone applies to authenticate its identity with a node registered on the chain, the fog node acts as an intermediate node to query the registered drone information on the blockchain. The present invention effectively protects the communication security of the drone system, ensures the confidentiality, anonymity, and non-repudiation of the drone's identity information, can effectively prevent simulation attacks, modification attacks, replay attacks, and man-in-the-middle attacks, prevents malicious attacks from causing the drone to be kidnapped, and ensures the communication security of the drone. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1A blockchain-based drone authentication model;

[0029] Figure 2 The relationship between entities on the chain of the drone of the embodiment of the present invention;

[0030] Figure 3 This is the process of initializing and registering the drone according to the embodiment of the present invention;

[0031] Figure 4 This is the identity authentication process of the drone in the embodiment of the present invention;

[0032] Figure 5 It is the experimental cost curve diagram of the present invention and the existing method. DETAILED DESCRIPTION

[0033] The technical solutions in the embodiments of the present invention will be described clearly and completely below in conjunction with the accompanying drawings in the embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0034] Figure 1 This is the event scenario on which the present invention is based, with the main participants being drones, fog nodes, and blockchain.

[0035] Figure 2 It is the description of the drone chain implemented by the present invention, mainly the description of the operation of the drone on the blockchain through the fog node.

[0036] Figure 3 It is the key part of the present invention, the system initialization and the on-chain registration process of the drone, in which the fog node mainly generates ticket information for the registered drone and saves the drone's identity information on the blockchain.

[0037] Figure 4 This is the core part of the present invention, the authentication process of drones on the blockchain. The fog node verifies the drone's ticket information to determine the drone's identity, thereby ensuring the success of drone authentication.

[0038] Based on the immutability and confidentiality of blockchain, the present invention designs a drone identity authentication scheme relying on fog nodes, which includes the following steps:

[0039] S1: System initialization phase, the fog nodes mainly select non-singular elliptic curves, select parameters (public key, private key, hash function) and save them;

[0040] The specific steps in S1 are as follows:

[0041] S1.1: The fog node selects a large prime number n and defines a non-singular elliptic curve E(n). The curve consists of n points forming an additive group G of order q, where P is the generator.

[0042] S1.2: Fognode selects a As the private key, and calculate the public key PK pub =SK pub ·P.

[0043] S1.3: Fognode selects three hash functions: h2:{0,1} * →{0,1} l , h3:{0,1} * →{0,1} k . where l is the length of the identity and k is the encryption key length.

[0044] S1.4: Fognode is responsible for storing private keys and publishing public parameters: {n,q,P,PK pub ,H1,H2,H3}.

[0045] S2: The registration stage of drones on the blockchain. This stage mainly determines whether the drone identity information exists on the chain and registers drones that do not exist;

[0046] The specific steps of S2 are as follows:

[0047] S2.1: UAV i Pick a random number And calculate its private key SK i , calculated as: SK i =h1(ID i ||SK pub ||m), public key PK i , calculated as: PK i =SK i P, and the anonymous identity AID i , calculated as:

[0048] S2.2: U i Save your private key as a password and choose a random number As a private dynamic parameter, calculate a public dynamic parameter D i =d i ·P, and upload this dynamic parameter to the authentication identity ledger through the fog node to prepare for subsequent identity authentication.

[0049] S2.3: The fog node first generates an address number adsID=keccak256 (number fog ,Eads T ), where ID fog is the identity of the fog node, Eads T The Ethereum address of the blockchain management center.

[0050] S2.4: The fog node creates a transaction information Tra1 through the elliptic curve encryption algorithm, which is calculated as Tra1 = Enc(adsID, AID i ). The transaction information is shared among users in the blockchain. When the blockchain management center receives the identity request of the fog node, it first uses the private key to decrypt the transaction information Dec(Tra1)=(adsID,AID i ), thereby obtaining adsID and AID i .

[0051] S2.5: Verify the existence of the address number and the drone's identity. First, verify the drone's identity AID i If AID i If it exists, it means that the drone has been registered, and the registration process is terminated; if AID i If it does not exist, but adsID exists, it means that the drone is not registered. The blockchain will create a new block and broadcast Tra1 in the block to achieve message sharing.

[0052] S2.6: The fog node generates a ticket for the drone device through the smart contract function And send the ticket to the blockchain management center, where t is the time limit of the ticket.

[0053] S2.7: The blockchain management center will hash the value of the bill Write to the blockchain through the contract function, create transaction information Tra2 and share it with the fog node. The fog nodes share Tra2 with the drones in their area.

[0054] The real identity of the drone and the transaction ticket are encrypted and hidden through the hash function. If the attacker wants to obtain the drone's private key, he must crack the discrete logarithm problem, but the probability of all cracking is negligible. Therefore, by generating its own anonymous identity and registering the drone's identity on the blockchain, the drone's identity can be doubly protected from malicious attacks and kidnapping.

[0055] S3: On-chain authentication of drones based on fog nodes. This stage mainly authenticates drones that have been registered on the chain.

[0056] The specific steps of S3 are as follows:

[0057] S3.1 When preparing to i Send message M i , M i ={AID i ||T||M i ||f}, first confirm the identity of the drone. The drone will first receive the ticket information sent by the fog node and message M i , create a token through the contract function, And calculate the hash value of the token

[0058] S3.2 U i Calculate f i =d i +SK i h1(PID i ||T||M i ), where T is the current timestamp. And it will be sent to the fog node.

[0059] S3.3 When a fog node receives a message, it first checks whether the timestamp T is fresh, so as to determine whether M i The freshness.

[0060] S3.4 The fog node obtains U through the authentication ledger on the blockchain i PK i and D i , to determine the formula f·P=D i +h1(AID i ||t||M i )·PK i If it fails, it means the information is wrong; if the formula is established, then U i The identity authentication is passed. Then the correct address number adsID and token are obtained The judgment formula is:

[0061] S3.5 If adsID does not exist, authentication fails; if adsID exists, the drone token needs to be verified In Completeness of calculation Hash value The same as written into the blockchain during registration For comparison, if This means that the drone identity authentication is successful. The blockchain management center returns the authentication result to the drone through the fog node.

[0062] S3.6 After the drone identity is successfully confirmed, the fog node will generate a blockchain ticket BTicket through the smart contract function T =BTicket T (adsID,Eads T ,T), calculate its hash value h3(BTicket T ) and write it into the blockchain. Create transaction Tra3, Tra3 = h3 (BTicket T ) and shared in the blockchain.

[0063] In the solution process of the present invention, there are three transaction information Tra1, Tra2, and Tra3 written into the blockchain. Among them, Tra1 = Enc (adsID, AID i ) is an operation transaction that encrypts the drone's address number and pseudo identity; It is the transaction information after the ticket of the drone equipment is encrypted; Tra3 = h3 (BTicket T ) is the transaction information of the blockchain ticket generated after the drone passes the authentication. The storage overhead of the Enc() encryption operation is 256 bits; the hash operation h3() converts the blockchain ticket data of any length into a binary number with a fixed length of 32 bits. Therefore, the storage space occupied by the three transactions in the blockchain is shown in Table 1.

[0064] Table 1 Storage overhead of blockchain

[0065]

[0066] The solution of the present invention is mainly based on the UAV self-organizing network communication scenario. By introducing edge fog nodes, the UAV can be assisted in the registration and authentication work on the chain. Compared with other existing solutions, the blockchain can better guarantee the privacy information of the UAV; at the same time, the blockchain can be more efficient when performing batch authentication. Figure 5 Compared with the solutions in references [1] and [2], for scenarios with 1-10 drones, the computational overhead of this solution is very low regardless of the number of drones. In the special environment of drone networks, the lower the computational overhead, the higher the security of the entire system. Therefore, this solution has more reliable security.

[0067] [1]Semal B,Markantonakis K,Akram R NA certificateless group authenticated key agreement protocol for secure communication in untrustedUAV networks[C].2018 IEEE / AIAA 37th Digital Avionics Systems Conference(DASC).IEEE,2018:1-8.

[0068] [2]Tan Y, Wang J, Liu J, et al. Blockchain-Assisted Distributed and Lightweight Authentication Service for Industrial Unmanned Aerial Vehicles[J]. IEEE Internet of Things Journal, 2022.

[0069] It should be noted that the terms "including" and "having" and any variations thereof in the specification and claims of the present application are intended to cover non-exclusive inclusions. For example, a process, method, system, product or apparatus comprising a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units that are not explicitly listed or inherent to these processes, methods, products or apparatuses.

[0070] Note that the above are only preferred embodiments of the present invention and the principles of the application technology. Those skilled in the art will understand that the present invention is not limited to the specific embodiments described herein, and that various obvious changes, readjustments and substitutions can be made by those skilled in the art without departing from the scope of protection of the present invention. Therefore, although the present invention is described in more detail through the above embodiments, the present invention is not limited to the specific embodiments described herein, and may include more other effective embodiments without departing from the concept of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims

1. The drone identity authentication method based on blockchain is characterized by: The method steps include: S1: In the system initialization phase, the fog node selects a non-singular elliptic curve, selects parameters, and saves them. The parameters include public key, private key, and hash function. S2: The registration stage of drones on the blockchain. This stage mainly determines whether the drone identity information exists on the chain and registers drones that do not exist; S3: On-chain authentication of drones based on fog nodes. This stage mainly authenticates drones that have been registered on the chain. Step S3 specifically includes the following steps: S3.1 When preparing to U i Send message M i , M i ={AID i ||T||M i ||f}, first confirm the identity of the drone with each other; the drone will first receive the ticket information sent by the fog node and message M i , create a token through the contract function, And calculate the hash value of the token AID i is the anonymous ID of the drone, and T refers to the timestamp; S3.2 U i Calculate f i =d i +SK i h1(AID i ||T||M i ), where T is the current timestamp and will be sent to the fog node; di represents a random number, SK i It represents the private key of drone i. S3.3 When a fog node receives a message, it first checks whether the timestamp T is fresh, so as to determine whether M i Freshness; S3.4 The fog node obtains U through the authentication ledger on the blockchain i PK i and D i , and use this to determine the formula f·P=D i +h1(AID i ||t||M i )·PK i Is it true? If it fails, it means the information is wrong. If the formula is true, then U i If the identity authentication is passed, the correct address number adsID and token will be obtained. The judgment formula is: D i represents the public dynamic parameter, P is a generator of the additive group G; S3.5 If adsID does not exist, authentication fails; if adsID exists, the drone token needs to be verified In integrity; calculation Hash value The same as written into the blockchain during registration For comparison, if This means that the drone identity authentication is successful; the blockchain management center returns the authentication result to the drone through the fog node; S3.6 After the drone identity is successfully confirmed, the fog node will generate a blockchain ticket BTicket through the smart contract function T =BTicket T (adsID,Eads T ,T), calculate its hash value h3(BTicket T ) and write it into the blockchain, creating transaction Tra3, Tra3 = h3 (BTicket T ) and shared in the blockchain.

2. The blockchain-based drone identity authentication method according to claim 1, characterized in that: The specific steps in S1 are as follows: S1.1: The fog node Fognode selects a large prime number n and defines a non-singular elliptic curve E(n); the curve consists of n points forming an additive group G of order q, where P is the generator; S1.2: Fognode selects a As the private key, and calculate the public key PK pub =SK pub ·P; S1.3: Fognode selects three hash functions: h2:{0,1} * →{0,1} l , h3:{0,1} * →{0,1} k ; where l is the length of the identity and k is the encryption key length; S1.4: Fognode is responsible for storing the private key and publishing the public parameters: {n,q,P,PK pub ,h1,h2,h3}.

3. The blockchain-based drone identity authentication method according to claim 1, characterized in that: The registration phase of drones on the blockchain in S2 is mainly performed by fog nodes; each fog node has a unique Ethereum address generated by a public key. Drones in the same area are uniformly registered by fog nodes in the area, and the hash value of the drone's pseudo-identity and the hash value of the address number in the area are written into the blockchain; the details are as follows: the drone calculates its own public key, private key and anonymous identity AID i , and calculate a common parameter D i ; The fog node generates an address number adsID in its area and creates a transaction information Tra1=Enc(adsID,AID i ), the transaction information is shared among users within the blockchain; when the blockchain center receives the registration request of the fog node, it will first decrypt the transaction information through the decryption algorithm Dec() Dec(Tra1) = (adsID, AID i ), thereby obtaining the address number of the area and the anonymous identity of the drone; the blockchain center uses the address number and the anonymous identity of the drone to find out whether the drone has been registered on the blockchain. If the query is successful, the registration is terminated, otherwise the blockchain will create a new block and publish the transaction information Tra1 in the blockchain system.

4. The blockchain-based drone identity authentication method according to claim 1, characterized in that: In S3, drone chain authentication is based on fog nodes. When a drone device initiates an authentication request, the fog node will query whether there is a drone that initiates the authentication request on the chain through transaction information; The authentication steps include the following: When the fog node receives the drone’s authentication information M i When receiving a message, first check whether the timestamp T is fresh to determine whether the message is fresh; then obtain the drone's public key and public parameters from the on-chain account book to determine whether the authentication formula is valid. If so, the correct address number and token are obtained; determine whether the address number exists. If the address number does not exist, the authentication fails. If the address number exists, the integrity of the token needs to be verified. Through the comparison on the chain, if the comparison is successful, the drone's identity authentication is successful.

5. The blockchain-based drone identity authentication method according to claim 3 is characterized in that: The step S2 specifically includes the following steps: S2.1: UAV i Pick a random number And calculate its private key SK i , calculated as: SK i =h1(ID i ||SK pub ||m), public key PK i , calculated as: PK i =SK i P, and the anonymous identity AID i , calculated as: S2.2: U i Save your private key as a password and choose a random number As a private dynamic parameter, calculate a public dynamic parameter D i =d i P, and upload this dynamic parameter to the authentication identity ledger through the fog node to prepare for subsequent identity authentication; S2.3: The fog node first generates an address number adsID=keccak256 (number fog ,Eads T ), where ID fog is the identity of the fog node, Eads T The Ethereum address of the blockchain management center; S2.4: The fog node creates a transaction information Tra1 through the elliptic curve encryption algorithm, which is calculated as Tra1 = Enc(adsID, AID i ); The transaction information is shared among users in the blockchain. When the blockchain management center receives the identity request of the fog node, it first uses the private key to decrypt the transaction information Dec(Tra1)=(adsID,AID i ), thereby obtaining adsID and AID i ; S2.5: Verify the existence of the address number and the drone's identity: First verify the drone's identity AID i : If AID i If it exists, it means that the drone has been registered, and the registration process is terminated; if AID i If it does not exist, but adsID exists, it means that the drone is not registered; the blockchain will create a new block and broadcast Tra1 in the block to achieve message sharing; S2.6: The fog node generates a ticket for the drone device through the smart contract function And send the ticket to the blockchain management center, where t is the time limit of the ticket; S2.7: The blockchain management center will hash the value of the bill Write to the blockchain through the contract function, create transaction information Tra2 and share it with the fog node. The fog nodes share Tra2 with the drones in their area.