WO2020149561A1 - 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법 - Google Patents

블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법 Download PDF

Info

Publication number
WO2020149561A1
WO2020149561A1 PCT/KR2020/000310 KR2020000310W WO2020149561A1 WO 2020149561 A1 WO2020149561 A1 WO 2020149561A1 KR 2020000310 W KR2020000310 W KR 2020000310W WO 2020149561 A1 WO2020149561 A1 WO 2020149561A1
Authority
WO
WIPO (PCT)
Prior art keywords
blockchain
unmanned
unmanned mobile
management server
data
Prior art date
Application number
PCT/KR2020/000310
Other languages
English (en)
French (fr)
Inventor
강대준
김동윤
이영옥
방재웅
이대희
Original Assignee
강대준
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 강대준 filed Critical 강대준
Publication of WO2020149561A1 publication Critical patent/WO2020149561A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1042Peer-to-peer [P2P] networks using topology management mechanisms
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/0202Control of position or course in two dimensions specially adapted to aircraft
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees

Definitions

  • the present invention relates to an unmanned mobile communication control system using a blockchain and a communication method of an unmanned mobile device using the same, in detail, a secure unmanned mobile system by preventing hacking of control of the unmanned mobile system using a blockchain technology and multiple encryption protocols It relates to an invention in which communication control can be performed.
  • At least one unmanned moving object is stored at least one block containing a hash value and data;
  • a route management blockchain in which route information for the unmanned moving object is stored and distributed;
  • a traffic control information blockchain in which traffic control information for the unmanned moving object is stored and distributed;
  • a management server communicatively connected to the unmanned mobile unit and the route information blockchain and the traffic control information blockchain, and communication data transmitted and received between the management server and the unmanned mobile unit is an asymmetric key encryption method within the unmanned mobile unit.
  • a block characterized in that the first decrypted data is decrypted using the symmetric key encryption method, and a verification process is performed for each block communication between the management server and the unmanned mobile device.
  • an unmanned mobile communication control system using a chain and a communication method using the same.
  • the route management blockchain and the traffic control information blockchain are a private blockchain implemented by a hyperledger fabric (HyperLedger Fabric) and a basic agreement algorithm SBFT (Simplified Byzantine Fault Tolerance) method of the hyperledger fabric. It is characterized by being.
  • a process in which communication data transmitted and received between the management server and the unmanned mobile device is first decrypted in an asymmetric key encryption method in the unmanned mobile device is transmitted from the unmanned mobile device to the management server, and the individual Encrypting with a key, decrypting with a matching public key on the management server, or encrypting with a public key on the management server when transmitting from the management server to the unmanned mobile device, and encrypting with the private key on the unmanned mobile device, and decrypted data
  • the method of secondary decryption using the symmetric key encryption method is characterized in that the ID and password are matched.
  • the management server includes an operation processing unit, a public key storage unit, a communication unit, an encryption/decryption processing unit, an optimal path search unit, a path information storage unit, and a traffic information storage unit,
  • the unmanned mobile body is characterized by including a communication unit, a private key storage unit, a blockchain storage unit, and a control unit controlling them.
  • a step of transmitting data including a query to a management server in order to request a query for performing a task on an unmanned mobile device decrypts the received data with a public key, and receives the transmitted data.
  • the received management server decrypts the received data with a public key, and receives the transmitted data.
  • the optimal route search unit of the management server extracts the optimal route and makes this data in unit block form Propagating to the traffic control information blockchain, and the node of the traffic control blockchain receiving it and generating a block of data containing the optimal path as a formal block through consensus of each client and connecting it to the existing blockchain Wow, the management server encrypts the data related to the optimal path with the public key of the unmanned mobile device and transmits it to the unmanned mobile device, and decrypts the data using the private key held by the unmanned mobile device.
  • the decryption process is performed once again, and the data decrypted through the multiple encryption process becomes raw data that the unmanned mobile body can actually use to perform the task, and based on this, the unmanned mobile object is set to the destination. Characterized in that it performs a step of moving along the commanded path.
  • At least one unmanned moving object in which at least one block containing hash values and data is stored;
  • a route management blockchain in which route information for the unmanned mobile vehicle is stored and stored;
  • a traffic control information blockchain in which traffic control information for the unmanned vehicle is distributed and stored; and the unmanned mobile device and the route information blockchain and the traffic control information blockchain.
  • the communication method of an unmanned mobile object control system using a blockchain including a management server that is communicatively connected to, the communication data transmitted and received between the management server and the unmanned mobile device in an asymmetric key encryption method in the unmanned mobile object 1
  • It provides a communication method of an unmanned mobile control system using a blockchain, characterized in that it comprises the steps of decrypting the data; and the decrypted data being decrypted by a symmetric key encryption method.
  • each block communication between the management server and the unmanned moving object characterized in that it further comprises the step of verifying whether there is a modulation.
  • the process in which communication data transmitted and received between the management server and the unmanned mobile device is first decrypted in an asymmetric key encryption method in the unmanned mobile device is:
  • the management server includes an operation processing unit, a public key storage unit, a communication unit, an encryption/decryption processing unit, an optimal path search unit, a path information storage unit, and a traffic information storage unit, and the unmanned mobile unit is a communication unit.
  • a private key storage unit, a blockchain storage unit, and a control unit controlling them transmitting data including a query to a management server in order to request a query for performing their duties from an unmanned mobile station, and receiving
  • the received management server decrypts the received data with the public key, verifies the token validity of the transmitted data, and verifies whether the unmanned mobile is an authorized legitimate subject, and communicates with the route management blockchain to route stored in the route management blockchain Among the steps to receive the path information for finding the optimal path considering the information and environment information of the unmanned mobile object to be controlled, and considering the received path information, the unmanned mobile information, the degree of environment, the optimal path search unit of the management server , Extracting the optimal path, making this data in the form of a unit block, and propagating it to the traffic control information blockchain, and the node of the traffic control blockchain receives it and receives the data of the optimal path through the agreement of each client.
  • the unmanned mobile device can be safely protected from radio frequency hacking by using a block chain multi-encryption protocol, which is not a general transmission/reception method, and completely protected path usage information can be used.
  • FIG. 1 is a schematic diagram of a network according to the present invention.
  • Hyperledger Fabric is a type of private blockchain used in some blockchains of the present invention.
  • FIG. 3 is a schematic diagram of a Peer which is a component of the Hyperledger Fabric used in the present invention.
  • FIG. 5 is a schematic flowchart of an application process of the hyperledger fabric of the present invention.
  • FIG. 6 is a schematic diagram of a Mutiple Channel in the Hyperledger Fabric of the present invention.
  • FIG. 7 is a schematic diagram of an organization in the Hyperledger Fabric of the present invention.
  • FIG. 8 is a schematic flowchart illustrating proposals in a relationship including an orderer and a peer of the hyperledger fabric of the present invention.
  • FIG. 9 is a schematic diagram showing the results of proposal processing in a relationship including an orderer and a peer of the hyperledger fabric of the present invention.
  • FIG. 10 is a schematic diagram showing a process in which the orderer of the Hyperledger Fabric of the present invention is recorded in validation, transmission, propagation, and ledger.
  • 11 is a schematic diagram showing the relationship between the management server and each blockchain, unmanned mobile station, station, and user terminal in the present invention.
  • 12 is a block diagram showing the relationship between the management server and each blockchain, unmanned mobile station, station, and user terminal in the present invention.
  • FIG. 13 is a block diagram of a management server in the present invention.
  • FIG. 14 is a block diagram of a path management blockchain (PM blockchain) node in the present invention.
  • TC blockchain 15 is a block diagram of a traffic information blockchain (TC blockchain) node in the present invention.
  • FIG. 16 is a block diagram of a payment information blockchain (HE blockchain) node in the present invention
  • 17 is a block diagram of an unmanned moving object in the present invention.
  • 18 is a block diagram of transmission data sent from the unmanned mobile device of the present invention to the management server.
  • 19 is a block diagram of transmission data sent from the management server to the unmanned mobile body in the present invention.
  • 20 is a flowchart showing a communication process through encryption between an unmanned mobile object and a management server and a TC blockchain in the present invention.
  • 21 is a structural diagram of a TC block chain used in the present invention.
  • 22 is a control flow chart of an unmanned moving object in the present invention.
  • FIG. 23 is a structural diagram of a PM block chain used in the present invention.
  • FIG. 24 is a structural diagram of an HE block chain used in the present invention.
  • 25 is a flow chart showing a sequence of path creation and storage in the present invention.
  • 26 is a flow chart showing a control sequence of an unmanned moving object in the present invention.
  • 27 is a flow chart showing a communication control sequence of a station and an unmanned mobile body in the present invention.
  • the second component may be referred to as a first component without departing from the scope of the present invention, and similarly, the first component may also be referred to as a second component.
  • the term and/or includes a combination of a plurality of related described items or any one of a plurality of related described items.
  • FIG. 1 is a diagram schematically showing a business model based on a control system of an unmanned moving object using a blockchain according to the present invention.
  • the drone used in the present invention is a representative drone, but is not limited to this, and if it can be controlled remotely, a mobile body such as a vehicle or other mobile body is also possible.
  • the present invention is composed of three blockchains. Focused on the unmanned moving object 500 and the management server 100 for controlling and managing it, the traffic control information blockchain that stores and stores traffic control information to nodes and clients connected thereto (hereinafter,'TC Blockchain') (Referred to as') 300, a route management blockchain (hereinafter referred to as'PM blockchain') 200 that stores route information provided for the unmanned mobile device 500 to a node and a client connected thereto, and Payment information blockchain (hereinafter referred to as'HE blockchain') 400 that distributes and stores information about the overall economic circulation structure, including costs for management of the mobile body 500, battery charging, and use of route information, etc. 400 Includes.
  • the HE blockchain 400 is communicatively connected to the management server 100 and the smart contract API 400a and the station control API 710, and the station control API 710 is connected to each station 700. .
  • the station 700 controls a departure (takeoff) and arrival (landing) of an unmanned mobile vehicle in the vicinity, and is a station providing services such as repair and battery charging.
  • the TC blockchain 300 is connected to the management server 100 and the traffic view UI 300a that can view traffic conditions or control information conditions.
  • the PM block chain 200 may be connected to the management server 100 and a terminal 620 containing a route creation tool used by route writers to be described later, and a station control API 710.
  • the PM blockchain 200 and the TC blockchain 300 have the characteristics of a private blockchain
  • the HE blockchain 400 has the characteristics of a public blockchain.
  • a smart contract is a digital contract method that codes the contract conditions based on blockchain technology and fulfills the contract contents when the conditions are met. It is a kind of automated contract system.
  • the balance eg, coin
  • the PM blockchain 200 is responsible for recording geographic information. It is a private blockchain storage that stores route (path) information for unmanned moving objects and station information for unmanned moving objects 500 to take off and land and further charge batteries.
  • the path is not preset or fixed, and is composed of a set of paths created and uploaded by individual path producers.
  • Path writers pay the coin to the network including the present invention and receive the resource of'energy' as much as the payment, and the energy can be exchanged with the coin at a certain rate.
  • Efforts to create a route can be 100% confirmed, additional compensation can be made in the form of mining and airdrops, and a prescribed fee can be paid.
  • a route information is divided and stored in a certain standard unit, and the length of the route, GPS coordinate value, altitude, owner, stability, frequency of use, route score, route grade, route identification, etc. are transacted and verified to verify the PM block. It is recorded on the chain.
  • the path recorded in the PM blockchain 200 is continuously updated by the path verification process by the simulation of the management server and updated on the PM blockchain 200, and through this process, the stability and reliability of the path are increased. Can.
  • a separate side chain is provided to safely store information such as map data, terrain, geo-fence, station location, takeoff and landing location, etc. displayed on the route creation tool, and these information are stored in a separate side chain.
  • the present invention is the most basic safety device that can prevent the possibility of being used for theft, hijacking, or terrorism by stealing the above modulated signal through hacking or the like.
  • the PM blockchain 200 serves as a secure blockchain route storage that is completed by recording and updating all the series of processes for creating and verifying route data and the basic map data that builds route data.
  • the TC blockchain 300 is in charge of real-time control through the management server 100. It is a blockchain storage unit that stores statistical information of the route used by unmanned mobile objects. For example, information such as the time required when moving from area A to area B is stored, and data to obtain various statistics are stored.
  • the activity of the TC blockchain starts from the flight approval stage. Obtain permission to move, have origin and destination, and query the movement schedule to access the route.
  • the mission information of the unmanned moving object 500 that is, the approval of the flight (flight approval), the origin, the destination, the movement schedule (the flight schedule), the route (route) approach coordinates, the location, altitude of the real-time unmanned vehicle (drone), All movement information (flight information) and other states of unmanned moving objects (drones), such as the purpose of flight (flight purpose), transport items, and a modification schedule processed by the management server and big data, are generated and created like a black box. , Is transacted and stored in the TC blockchain 500.
  • Each of these information is also optimized by the management server 100 and can help to reach the destination by organically dispersing the unmanned moving objects 500.
  • unmanned moving objects eg, drones
  • safe and efficient path coordinates and altitude information are provided to the unmanned moving object 500 by a protocol of multiple encryption (sequential use of asymmetric key encryption and symmetric key encryption), which will be described later. You can send continuously.
  • the unmanned mobile body 500 decrypts the data received through wireless communication with a multi-encryption protocol to verify the state connected to the TC blockchain 300, and has only the information generated by the consensus algorithm, and cannot be modified or changed. It can be operated on the basis of data, that is, safe data that is forged and forged.
  • Blockchain multi-encryption protocols that send and receive time-sensitive control data are distributed and managed using a channel method for faster processing speed on a private blockchain created by a consensus algorithm.
  • the unmanned mobile object 500 does not verify the entire block data generated to the nodes, but also blocks data in a manner that verifies randomly encrypted block data at a specific location. You can also verify the integrity of.
  • the unmanned moving object can check the integrity of the block without becoming a full node with full block data. It can be used to exchange data as a protocol beyond the speed and limitations of blockchain.
  • the unmanned moving object 500 may have a more robust verification process, but if it operates as a full node that undergoes numerous calculation processes, there is a limit to the current battery technology.
  • Data is exchanged repeatedly every second, and it is possible to communicate securely with a light and repetitive verification process.
  • the HE blockchain 400 is responsible for the economic circulation structure in the network. This is a public blockchain that stores coin ownership and transaction information in each stakeholder's electronic wallet, and is a blockchain storage similar to Bitcoin or Ethereum.
  • Each block acts to record data such as the owner of the coin, the amount of possession, usage, time of use, and place of use, and records the transaction server, elements that provide the control server, other services (e.g., station), or main chain (TC block) Chain, PM blockchain) and side chains.
  • other services e.g., station
  • main chain (TC block) Chain e.g., PM blockchain
  • the HE blockchain 400 is an encrypted electronic money system used in the network platform according to the present invention. It is a public blockchain that is based on payment methods that are paid in exchange for performing all tasks or exchanges that occur on the network, and uses cryptocurrency electronic money and electronic wallets for economic activities associated with unmanned mobile devices.
  • This is closely related to the network system according to the present invention, and can be used for all economic activities such as shopping, delivery, purchase of a mobile vehicle, flight, charging, repair, insurance, rental, tax, and other additional services.
  • the network using the present invention is completed as one platform composed of three multi-blockchains, each containing a unique execution function for each blockchain (HE blockchain, TC blockchain, PM blockchain).
  • the network of the present invention uses a consensus algorithm called POP (Proof of Prestige) that has evolved a POS (Proof of Stake) consensus algorithm.
  • POP Proof of Prestige
  • POS Proof of Stake
  • path producers contributing to the block creation of the PM blockchain participate in using the path generation tool as the node's operating subject, and the retained stake of the POP node, the collateral secured to create the route, and the created route
  • a Presence Point is given to a node operator with a high score, and the honor scores of the blocks generated when the block is created It is an algorithm that is selected as a valid blockchain with a higher score by adding up.
  • Bitcoin the first-generation blockchain cryptocurrency
  • POW Proof of Work
  • a consensus model used by the second-generation blockchain Ethereum have a problem that requires a lot of power and CPU power for transaction verification.
  • TC blockchain (200) and PM blockchain (300), which require rapid processing of large amounts of transaction are the basic consensus algorithm of hyperledger fabric (HyperLedger Fabric) and hyperledger fabric (SBFT), which are private blockchain platforms.
  • SBFT hyperledger fabric
  • the main network is constructed using a slightly modified method in SBFT.
  • the HE blockchain 400 in charge of the currency may use a token having a Proof of Stake (POS) method or a DPOS (Delegated Proof of Stake) method in its own coin blockchain.
  • POS Proof of Stake
  • DPOS Delegated Proof of Stake
  • the POP consensus algorithm includes a list of proofs of the Prestige Point that the validators have in each block. The more Prestige Points each node has, the more permission to update blocks, and when a branch occurs, select a blockchain with a higher Prestige Point.
  • the services provided by the network according to the present invention include geographic information, altitude information, station location information, weather information, geomagnetic index information, no-fly zone information, social/institutionally agreed safe route information, automatic flight approval by country, route From receiving control data using information, automatic control of station take-off and landing, encryption of control data using blockchain multi-encryption protocol, automatic payment when using services such as charging/repair/logistics, real-time location correction and altitude correction according to route, from departure to destination Time-of-day information data statistics, automatic control using big data and AI (artificial intelligence) to correct the gap and speed between drones, correction of control data using tripac situation and accident information, prevention of non-physical anti-drone, black box function, etc. Services.
  • AI artificial intelligence
  • the communication network using the network of the present invention can use Wifi, Bluetooth, BLE, ZigBee, Z-wave, satellite communication, cellular system, LTE, 5G, and the like.
  • a drone is described as a representative example of an unmanned moving object, but the example of the unmanned moving object is not limited to this, and all types of unmanned moving objects such as an unmanned vehicle, an unmanned ship, and an unmanned aerial vehicle are applicable.
  • drones requiring route information are provided with all the services (geography, altitude, weather, traffic, no-fly zones, etc.) provided by us, so that they can fly in the promised route, and are directly controlled by the network according to the present invention. As it moves, it can monitor and directly control all information of drones to be controlled (full route usage plan, current location, delivery information, etc.) through an open API.
  • Direct control is a control method for all drones accessing the network.It applies AI, big data, and various service items to generate routes and coordinates from the source to the destination, and transmits each flight schedule data in advance. It plays a role, and additionally processes the traffic, weather, geomagnetic, and other fluidity data generated at specific coordinates on each flight path, and continuously modifies flight schedule data so that drones using the route can move quickly and organically. Do it.
  • Indirect control refers to the role of entering the origin or destination of a drone through an open API that allows you to view and manage one or a specific group of drone movement data on the network, and details such as the status and current location of the drone Can grasp
  • drones can manage all costs of charging, repairs, etc. that occur while flying.
  • the network according to the present invention is a multi-blockchain network platform composed of a public blockchain such as Bitcoin or Ethereum and a private blockchain where a minimum of three or more blockchains are combined.
  • the private blockchain is a more suitable blockchain model for the business part of the enterprise, and it can realize much faster transaction speed than the public blockchain by reducing the number of consensus nodes.
  • the HE blockchain 400 is related to payment, it is configured as a public blockchain in order to secure safety and reliability, and the TC blockchain 300 and the PM blockchain 200 are fast decisions between interested parties. And it is composed of a private blockchain in consideration of improving the speed of data movement and shortening the agreement time.
  • the private blockchain used in the present invention uses a hyperledger fabric. It is a platform for distributed ledger solutions based on a modular architecture that provides a high degree of confidentiality, resilience, flexibility and scalability. It runs on Linux Ubuntu and Docker, and aims at a speed of at least 1000TPS, so it has high processing speed.
  • the structure of the hyperledger fabric is as shown in FIG. 2, and the following functions are basically provided.
  • peer means a blockchain storage in the present invention.
  • Peer is a node of the Ledger (blockchain data, ledger) and the Hyperledger Fabric Network that owns the chaincode.
  • Each peer has a unique IP address and port number, handles direct requests from applications, and provides a response, and is the most basic element of the Hyperledger Fabric Network.
  • Principal Peer includes Principal Peer and General Peer.
  • Principal Peer is a kind of master peer concept that is a peer that directly communicates with the orderer (corresponding to the management server in the present invention) to receive new block information and propagate to the general peer in the channel through the Gossip protocol.
  • One node keeps the information of the nodes it knows around, allowing the entire network to know about the current situation.
  • Hyperledger Fabric blocks the source through authentication.
  • the orderer service sends the peers to verify and save the block after blocking.
  • step 4 the Gossip protocol is used in the process.
  • the orderer does not communicate with all peers, but if one of the representative peers is notified, this peer is gradually delivered to the whole through gossip.
  • Each peer verifies the received block (transaction bundles) and stores it in a ledger.
  • the three main functions of the gossip data propagation protocol in fabric networks are:
  • Peers on the same channel continue to receive messages, propagate to nearby peers, and sync.
  • the number of peers around is set by setting, and follows the Pull mechanism. Therefore, rather than waiting for the message to come, they are actively trying to bring it.
  • the principal peer of each organization on the channel fetches data from the orderer and starts to propagate to the peers included in their organization.
  • the orderer's network load is reduced and the overall consensus speed is increased.
  • Ledger represents blockchain data, and is composed of two types: NoSQL World State and blockchain file.
  • World State serves to store data before the block is confirmed or temporary data and SnapShot of the current blockchain
  • the blockchain file is a binary file that stores the confirmed blockchain. If inconsistency occurs, the BlockChain file is used as the standard to update the World State DB.
  • Application is an application that creates and queries blockchains using the Hyperledger Fabric blockchain network.
  • the process of application and peer is briefly summarized as follows.
  • Peer executes CHAINCODE, saves the result in Ledger's World State DB, and returns a response value to Application.
  • the application performs the consensus model of the transaction response value and delivers it to the orderer in charge of propagating blocks to request registration as a formal block.
  • the orderer creates and verifies the requested transaction every 2 seconds through the SBFT consensus model, and propagates the block asynchronously to peers in the Hyperledger Fabric Network.
  • Peer that receives the block reflects the block in its Ledger.
  • Peer transmits the result of reflecting Ledger to Application asynchronously so that Application can know the block status.
  • Channel is a function to logically group specific peers.
  • Channel function it is possible to store traffic data of an unmanned mobile station in a channel-by-channel basis for each country without storing all blocks identically to all nodes of the TC blockchain.
  • the Peer of the Hyperledger used in the present invention is basically to subscribe to the Channel, it is also possible to subscribe to more than one Channel (multi channel).
  • Peer node and Application can be grouped into a logical group called Organization. If organization is organized and managed in units such as a place or an organization that manages peer node servers, network management can be facilitated.
  • the network according to the present invention entrusts node operations to trusted organizations or organizations for each country and manages them as Organizations.
  • some Peer node servers may operate on their own network.
  • the Application creates a transaction and proposes to Peer nodes of the channel.
  • Each Peer node returns Responses R1 and R2 to the Application together with Endorsed information for each response.
  • Fig. 8 is a schematic diagram of this.
  • the executed applications deliver the response received from the peer to the orderer, request the verification process and block creation, and the orderer creates a block according to the consensus algorithm.
  • Fig. 9 shows the results.
  • the orderer (corresponding to the management server in the present invention) verifies the generated block and transmits it to the Principal Peers of the corresponding channel to propagate the block and record it in the Ledger.
  • the blockchain is recorded by communication between the application and the peer and the orderer, and a hyperledger fabric blockchain network is constructed.
  • Fig. 10 is a schematic diagram of this.
  • the network or unmanned moving object control system according to the present invention has the following configuration.
  • AI Artificial Intelligence
  • a management server 100 that communicates with and controls external unmanned mobile objects (eg, drones) 500 and stations 700 and manages their information.
  • each blockchain has two main components. One is a blockchain node and the other is a client.
  • the node of the blockchain serves as the backend of a general service, and the blockchain client acts as a client.
  • the client When the client generates a new transaction, the nodes share the transaction through a distributed agreement process and execute the transaction.
  • the PM blockchain 200 is composed of a PM blockchain node 210 and a plurality of clients 220 connected to it, where the client 220 has a path creation tool and a terminal or storage with a storage device. It can be an unmanned mobile device with a device. Or, the client may be a plurality of storage servers.
  • the TC blockchain 300 is composed of a TC blockchain node 310 and a plurality of clients 320 connected to it, where the client 320 owns an unmanned mobile entity or is a subject who has received management trust (eg, a company) , A subject, a public institution, etc., and may be a terminal having a storage device, or an unmanned mobile device having a storage device, or may be a plurality of storage servers.
  • management trust eg, a company
  • a subject a public institution, etc.
  • the TC blockchain 300 is composed of a TC blockchain node 310 and a plurality of clients 320 connected to it, where the client 320 owns an unmanned mobile entity or is a subject who has received management trust (eg, a company) , A subject, a public institution, etc., and may be a terminal having a storage device, or an unmanned mobile device having a storage device, or may be a plurality of storage servers.
  • the HE blockchain 400 is composed of a HE blockchain node 410 and a plurality of clients 420 connected thereto, where the client 420 is a terminal or storage device of a route creator having a storage device and an electronic wallet, and It can be a drone with an electronic wallet, or a storage device and a station with an electronic wallet, or a plurality of storage servers.
  • the management server (or AI system) 100 includes a calculation processing unit 101, a public key storage unit 102, a communication unit 103, an encryption/decryption processing unit 104, An optimal route search unit 105, a route information storage unit 106, and a traffic information storage unit 107 are provided.
  • the public key stored in the public key storage unit 102 forms a key pair with the private key of each unmanned mobile object used in an asymmetric encryption/decryption operation, and stores the public key used for user registration and verification, verification of data transmitted and received, and storage. It is a place to do.
  • the encryption technology includes symmetric and asymmetric encryption.
  • the symmetric encryption setting method is that the password is released when the familiar ID and password match, and the asymmetric encryption technology uses public-key and private key ( It is divided into Private-Key), which is divided into Private-Key, which has full access to the encrypted content, and Public-Key, which can verify the authenticity symmetrically with the private key.
  • the chain-based electronic wallet is made of asymmetric encryption technology.
  • Encryption/decryption in the management server 100 according to the present invention is made in an asymmetrical manner, and as described below, encryption/decryption in each unmanned mobile body 500 uses both an asymmetrical and symmetrical method.
  • the communication unit includes external terminals (eg, a route creator terminal 620, a terminal 610 of an unmanned mobile device manager) and an external unmanned mobile device (eg, a drone) 500 and an external station 700 and each blockchain It means API that can communicate with (200, 300, 400).
  • external terminals eg, a route creator terminal 620, a terminal 610 of an unmanned mobile device manager
  • an external unmanned mobile device eg, a drone
  • the communication network used by the communication unit may use Wifi, Bluetooth, BLE, ZigBee, Z-wave, satellite communication, cellular system, LTE, 5G, and the like.
  • the communication unit 103 refers to a network routing module that broadcasts a transaction to a blockchain distributed network or a gateway router connected to a pool mining node. can do.
  • the encryption/decryption processing unit 104 uses a private key provided in each unmanned mobile body 500 and a private key provided in the route creator terminal 620 and a public key stored in the public key storage unit 102. It is a component that can encrypt or decrypt information or data.
  • the encryption/decryption processing unit 104 decrypts the received data transmitted in an encrypted state from the outside in an asymmetrical manner, or externally (eg, an unmanned mobile device, or a route creator terminal, or a TC/PM/HE blockchain) It encrypts the data to be transmitted in an asymmetric manner.
  • the optimal route search unit 105 is the fastest or most efficient way to the destination in consideration of the current position, destination, altitude, weather, current traffic information situation, and valid route information (eg, flight area) of a specific unmanned mobile object to be controlled. It is a component that can search for a reachable path, and a common optimal path search algorithm is a Dijkstra Algorithm or a Uniform cost search (USC) algorithm.
  • the route information storage unit 106 is a place mainly written by authors and stores data on a route verified from the outside, and the route information storage unit 106 stores data on a past route that is moved for each unmanned moving object. It may be.
  • the data for this route is data that has been agreed upon by the nodes 210 of the PM blockchain that make up the PM blockchain 200.
  • the data stored in the route information storage unit 106 should be the same or related to the data stored in the client (eg, a route creator terminal, or a drone) 210 of the PM blockchain 200.
  • the traffic information storage unit 107 may also be referred to as a control information storage unit, and control information (departure/destination information, altitude/speed information, used route information, travel time, used station information, mission information) for each unmanned mobile vehicle is included. This is where it is stored. Data on the driving information and control information that a specific unmanned mobile vehicle has performed in the past is provided in a block form, and these blocks are connected to constitute a blockchain, and this blockchain means TC blockchain 300.
  • the PM block chain node 210 formally existing a plurality of storage devices connected to the node itself or a consensus algorithm processing unit 211 that draws an agreement between clients having such storage devices, and new spare blocks verified through consensus.
  • a storage processing unit 212 is provided to generate a new PM blockchain in addition to the PM blockchain, and to transmit it to each storage device or a client having such a storage device for storage.
  • the PM block chain node 210 is provided with a route information storage DB 213 to store data on route information received from the management server.
  • the PM block chain node 310 formally existing a plurality of storage devices connected to the node itself or a consensus algorithm processing unit 311 that draws an agreement between clients having such storage devices, and a new spare block verified through consensus. And a storage processing unit 312 for generating a new TC blockchain in addition to the TC blockchain, and transmitting it to each storage device or a client having such a storage device for storage.
  • the TC block chain node 310 may include a traffic information storage DB 313 to store data regarding traffic information or control information received from the management server 100.
  • the HE blockchain node 410 formally existing a plurality of storage devices connected to the node or a consensus algorithm processing unit 411 that draws an agreement between clients having such storage devices, and new spare blocks verified through consensus.
  • a new HE block chain is generated, and a storage processing unit 412 is transmitted to be stored in each storage device or a client having such a storage device.
  • the HE block chain node 410 may include a payment information storage DB 413 to store payment information received from the management server 413 or data related to each client's electronic wallet connected to the node.
  • 17 is a block diagram of components constituting an unmanned moving object (eg, drone) 500.
  • the unmanned mobile body 500 includes a control unit 503 that issues a control command necessary to perform a given task, and the control unit 503 communicates with the management server 100 and the station 700, the communication unit 501, and the TC block Blockchain storage unit 504 in which chain 300/PM blockchain 200/HE blockchain 400 is stored, and private key storage unit 502 in which private keys used for asymmetric encryption/decryption are stored. , Includes an electronic wallet 505 in which coins are stored.
  • asymmetric encryption and symmetric key encryption are used in multiple ways to safely protect an unmanned mobile system from forgery and alteration of data caused by hacking.
  • the management server 100 and the unmanned mobile body 500 store data transmitted and received in the form of a block chain, and verify that there is a falsification for each block communication.
  • All unattended mobile bodies 500 generate a pair of asymmetric cryptographic public and private keys when joining the network according to the present invention, and periodically update them.
  • the public key is stored in the network management server 100, and the private key is stored by the unmanned mobile device 500.
  • Data is encrypted/decrypted using the generated key value, and the management server 100 transmits data by encrypting it using the public key of the unmanned moving object, and the unmanned moving object 500 uses the private key of the data. Decrypt.
  • the decrypted data can be decrypted once again using a symmetric key encryption method constructed using a specific rule and used as final control data.
  • FIG. 18 shows the structure of data transmitted from the unmanned mobile body 500 to the management server 100
  • FIG. 19 shows the structure of data transmitted from the management server 100 to the unmanned mobile body 500
  • 20 shows a communication process between the unmanned mobile body 500 and the management server 100.
  • the data 550 generated by the unmanned moving object 500 and transmitted to the management server 100 includes an identification ID (corresponding to personal identification information PI) 551 of the unmanned moving object 500,
  • the transmission data (query related to a specific mission such as a destination or a travel path, or reporting on the completion or execution of a mission) 552, authentication token information 553 corresponding to the private key, and hash value 554 of the transmission data And these are encrypted and transmitted.
  • the hash value is a value used to identify the user on the blockchain network.
  • Hash values can be generated through various methods. Typical hash value generation algorithms include MD5 and SHA-256.
  • the hash value is the only value that exists for a specific user.
  • the data 450 transmitted from the management server 100 to the unmanned moving object 500 is also encrypted and transmitted, including transmission data (control command for the specified unmanned moving object) 451 and the transmission data hash value 452 It is encrypted with the public key and transmitted to the unmanned mobile unit 500, and is decrypted by the asymmetric key encryption method using the private key in the unmanned mobile unit 500, and then decrypted by the symmetric key encryption method.
  • data including a query (destination, route to a destination, a takeoff time, etc.) is sent to the management server 100 in order to request a query for performance of its mission from the unmanned mobile body 500. send.
  • the unmanned mobile object 500 encrypts data using a symmetric key encryption method using a private key it has and transmits it to the management server 100 (S2001).
  • the data structure transmitted at this time is as described in FIG.
  • the received management server 100 decrypts the received data with a public key, verifies the token validity of the transmitted data, and verifies whether the unattended mobile is an authorized subject (S2002, S2003).
  • the PM blockchain 200 communicates with the PM blockchain 200 and receives route information for finding an optimal route in consideration of the current location and weather conditions of the unmanned mobile object to be controlled among the routes stored in the PM blockchain 200.
  • the optimal route search unit of the management server extracts the optimal route and makes this data in the form of a unit block to the PM blockchain 200 Propagation (S2004).
  • the node of the PM blockchain 200 receives it and generates a block of data including an optimal path as a formal block through consensus of each client and connects it to the existing blockchain (S2005, S2006).
  • the management server 100 encrypts the data related to the optimal path with the public key of the corresponding unmanned mobile object and transmits it to the unmanned mobile object, and the data structure (transmission data + hash value) at that time is as described in FIG. 18 (S2007).
  • the unmanned mobile device 100 that received the data decrypts it using the private key it holds, and decrypts the data once again through a symmetric key encryption method (S2008).
  • the data decrypted through the multi-encryption process becomes raw data that can be actually used by the unmanned mobile vehicle to perform the mission, and based on this, the unmanned mobile vehicle moves along the commanded path to the set destination.
  • the unmanned mobile device 500 while performing the commanded task, it is preferable that the unmanned mobile device 500 periodically communicates with the management server 100 periodically (for example, once every 10 seconds), in this case, the unmanned mobile device 500 performs
  • the related information (current location, time required, speed, destination arrival, etc.) is encrypted with a symmetric key encryption method and transmitted to the management server 100 (S2009), and the management server 100 is the corresponding unmanned moving object 500 It is decrypted using the public key of, and the validity of the unmanned moving object is verified using the corresponding token value (S2010, S2011).
  • the data are made in a block form, transmitted to the TC blockchain 300, and connected to the TC blockchain 300 through an agreement process.
  • the N-th block becomes the last block, that is, the block connected to the N-1 primary block and connected to the end of the updated blockchain.
  • the N-th block is the hash value 301 of the N-1 block, the unmanned mobile information 302, and a nonce (a counter that allows an individual transaction to be processed only once, also referred to as a'answer value') (303) , Time stamp which is information about the created time, control data (departure, destination, optimal travel path, travel time) 304, mission performance data containing information related to current mission performance (during current mission execution or mission completion) 305.
  • a nonce a counter that allows an individual transaction to be processed only once, also referred to as a'answer value'
  • Time stamp which is information about the created time
  • control data departure, destination, optimal travel path, travel time
  • mission performance data containing information related to current mission performance (during current mission execution or mission completion) 305.
  • the management server 100 may calculate the hash value of the N-th block, and the ownership or management authority for the unmanned moving object 500 and the unmanned moving object 500 to be controlled as the calculated hash value of the N-th block. It can be transmitted to the terminal 610 of the subject.
  • the unattended mobile body 500 or the terminal 610 receiving the hash value of the N-th block may store the hash value of the N-th block.
  • the terminal 610 may modify the terminal block hash value with the hash value of the N-th block.
  • the terminal block hash value can always be maintained as the hash value of the last one block constituting the blockchain.
  • the unmanned moving object 500 can modify the block hash value of the unmanned moving object 500 with the hash value of the N-th block, and the last hash value of the block hash value of the unmanned moving object 500 always constitutes a blockchain. It can be made to keep the hash value of the block.
  • the terminal 610 and the unmanned mobile 500 of the subject having ownership or management authority over the unmanned mobile body 500 do not store all of the blockchain, the hash value of the last one block constituting the blockchain Through this, the validity can be verified by the management server.
  • Each blockchain storage device is connected to a server, and may be provided to transmit and receive data to and from the server.
  • the blockchain storage device may store each blockchain (TC blockchain 300, PM blockchain 200, HE blockchain 100), and each blockchain is shown in FIG. As described above, each block may be sequentially connected and configured.
  • the management server may generate the N-th block, and then transmit the N-th block to the blockchain storage device, and the blockchain storage device may update the blockchain by connecting the N-th block to the blockchain.
  • the block chain storage device may store a block chain to which the 1 to N-1 primary blocks are connected.
  • the N block is transmitted from the management server, the block is connected to the N block by connecting the block N to the block chain.
  • the blockchain can be updated so that the 1st to Nth blocks are connected.
  • the validity of the terminal and the unmanned moving object is verified by comparing the hash value of the last block stored in the terminal and the unmanned moving object and the hash value of the last block calculated from the blockchain stored in the blockchain storage device in the unmanned moving object control process. can do.
  • security can be enhanced because security can be secured from external attacks such as hacking that may occur in the remote control process of the unmanned moving object.
  • FIG. 22 shows a control process of an unmanned moving object according to the present invention.
  • the destination and the moving time input by the administrator terminal having the authority to control a specific unmanned moving object are transmitted through the management server, and this information is again transmitted to the unmanned moving object to be controlled.
  • a process in which the validity of the manager terminal and the unmanned mobile object is verified by the management server is performed by comparing the last hash values stored in the manager terminal and the unmanned mobile object.
  • the management server When validation is completed and judged to be a valid manager terminal and an unmanned mobile device, the management server receives the optimal movement path from the PM blockchain, and the process of consensus in the TC blockchain regarding the optimal movement path data associated with it Generated through and transmitted to the unmanned mobile object to be controlled by an asymmetric encryption method, the unmanned mobile body receives it and decrypts it using an asymmetric encryption method and a symmetric encryption method (S2201).
  • the management server extracts information about the adjacent stations included in the PM blockchain (S2208), transmits it to the unmanned moving object and specifies Command the station to move.
  • the unmanned mobile body that received this moves to the station that received the movement instruction (S2209), performs battery charging, and when charging is completed, takes off again and performs the originally instructed mission (S2210).
  • Data regarding the status of such a task is generated in the form of a block, and this block is sent to the TC blockchain through the management server, and after verification and consensus in the TC blockchain, it is continuously connected to the last block of the TC blockchain. It forms part of the TC blockchain.
  • Fig. 23 shows the configuration of the updated PM blockchain 200 by connecting the N-th block.
  • the overall connection structure of the blockchain is similar to the TC blockchain 300 shown in Fig. 21, but the detailed configuration is different.
  • the N-th block becomes the last block, that is, the block connected to the N-1 primary block and connected to the end of the updated blockchain.
  • the Nth block is a hash value 201 of the N-1th block, route author information 202, station information 203, nonce (counter that allows an individual transaction to be processed only once,'answer value') Also referred to as 204), time stamp, which is information about the generated time, and route data (optimal route between a specific origin and a specific destination or an optimal route to a specific station) 205.
  • the management server 100 may calculate the hash value of the N-th block, and may transmit the calculated hash value of the N-th block to the unmanned mobile object 500 and the management server 100 as a control target.
  • the unmanned mobile object 500 or the management server receiving the hash value of the N-th block may store the hash value of the N-th block.
  • the unmanned mobile station 500 or the management server 100 may modify the terminal block hash value with the hash value of the N-th block.
  • the terminal block hash value can always be maintained as the hash value of the last one block constituting the blockchain.
  • the unmanned moving object 500 or the management server 100 can modify the block hash value of the unmanned moving object with the hash value of the N-th block, and the block hash value of the unmanned moving object always constitutes the blockchain. It can be made to keep the hash value of the block.
  • the unmanned moving object 500 may be verified by the management server 100 through the hash value of the last one block constituting the blockchain, even if all the blockchains are not stored.
  • Each blockchain storage device is connected to the management server 100, and may be provided to transmit and receive data to and from the management server 100.
  • each block may be sequentially connected to and configured in the blockchain storage device, as illustrated in FIG. 23.
  • the management server 100 may generate the N-th block, and then transmit the N-th block to the blockchain storage device, and the blockchain storage device may update the blockchain by connecting the N-th block to the blockchain. have.
  • the block chain storage device may store a block chain to which 1 to N-1 primary blocks are connected.
  • the N block When receiving the N block from the management server, the N block is connected to the PM block chain, and the PM block
  • the blockchain can be updated so that the chain is in a form in which the 1st to Nth blocks are connected.
  • the present invention by comparing the hash value of the last block stored in the management server 100 and the unmanned moving object 500 and the hash value of the last block calculated from the PM blockchain stored in the blockchain storage device in the unmanned moving object control process You can verify the validity of the created route or the route that a specific unmanned moving object should move.
  • Fig. 24 shows the configuration of the HE block chain 400 in which the N-th block is connected and updated.
  • the overall connection structure of the block chain is similar to the TC block chain 300 shown in FIG. 21 and the PM block chain 200 shown in FIG. 23, but the detailed configuration is different.
  • the N-th block becomes the last block, that is, the block connected to the N-1 primary block and connected to the end of the updated blockchain.
  • the N-th block is the hash value 401 of the N-1 block, the unmanned mobile information 402, and a nonce (counter that allows an individual transaction to be processed only once, also referred to as a'answer value') 403 , Time stamp, information on the generated time, payment information data (history of payment at a specific station, balance information of an electronic wallet of an unmanned mobile device, amount charging information, etc.) 404.
  • the management server 100 may calculate the hash value of the N-th block, and may transmit the calculated hash value of the N-th block to the unmanned mobile object 500 and the management server 100 as a control target.
  • the hash value of the N-th block or the unmanned mobile object 500 or the management server 100 receiving the hash value of the N-th block may store the hash value of the N-th block.
  • the unmanned mobile station 500 or the management server 100 may modify the terminal block hash value with the hash value of the N-th block.
  • the terminal block hash value can always be maintained as the hash value of the last one block constituting the blockchain.
  • the unmanned mobile or management server can modify the block hash value of the unmanned mobile body with the hash value of the Nth block, and the block hash value of the unmanned mobile body is always maintained as the hash value of the last block constituting the blockchain. It can be done.
  • the unmanned moving object 500 may be verified by the management server 100 through the hash value of the last one block constituting the blockchain, even if all the blockchains are not stored.
  • Each blockchain storage device is connected to the management server 100, and may be provided to transmit and receive data to and from the management server 100.
  • each block may be sequentially connected to and configured in the blockchain storage device.
  • the management server 100 may generate the N-th block, and then transmit the N-th block to the blockchain storage device, and the blockchain storage device may update the blockchain by connecting the N-th block to the blockchain. have.
  • the block chain storage device may store a block chain to which 1 to N-1 primary blocks are connected.
  • the N block is transmitted from the management server 100
  • the N block is transmitted to the HE blockchain 400.
  • the HE blockchain 400 may update the blockchain so that the 1 to N-th block is connected.
  • the present invention by comparing the hash value of the last block stored in the management server 100 and the unmanned moving object 500 and the hash value of the last block calculated from the PM blockchain stored in the blockchain storage device in the unmanned moving object control process It is possible to verify the validity of the payment of the station usage fee or the cost of charging the battery, and implement an effect of preventing hacking of the electronic wallet.
  • a route creator who wants to create a route (eg, a drone route) for an unmanned mobile vehicle in a specific area logs in using his terminal 620 connected to a communication network (S2501)
  • a route creator who wants to create a route (eg, a drone route) for an unmanned mobile vehicle in a specific area logs in using his terminal 620 connected to a communication network (S2501)
  • the PM blockchain node receives it, decrypts it, and transmits the corresponding local route information stored in the PM blockchain storage (e.g., client) to the management server in an encryption method (e.g., asymmetric key method).
  • an encryption method e.g., asymmetric key method
  • the management server encrypts the received local route information and transmits the loading request to the route creator terminal, and the route information already written is displayed on the screen of the route creator terminal (S2506).
  • the management server Estimates the validity of the route created in consideration of surrounding situation information (eg, air ban zone, military secret zone, etc.) (S2508).
  • a new block is generated, and it is transmitted to the PM blockchain to make a storage request (S2509).
  • the PM blockchain node adds a new block including the route data written in the PM blockchain already stored in each blockchain storage through an agreement (S2510).
  • the terminal 610 of a company performing a business using a drone business or an unmanned mobile vehicle such as a logistics company creates a flight schedule or a travel schedule (departure, destination, departure time, estimated travel time, moving purpose, etc.) of the unmanned mobile vehicle. Then, it is encrypted and transmitted to the management server (S2601).
  • control signal destination, departure time, and mission information
  • the unmanned moving object encrypts the encryption process with the management server based on the information included in the control signal. After that, route information is requested (S2603).
  • the management server that receives the request encrypts the route information request to the PM blockchain node for optimal route discovery, and the PM blockchain node encrypts and manages various route information to the corresponding destination stored in the blockchain storage (e.g., client). To the server.
  • the management server constructs the optimal route to reach the destination, encrypts it and transmits it to the unmanned mobile device (S2604, S2605).
  • the unmanned mobile vehicle that has received the optimal route information starts (eg, takeoff) and starts moving (eg, flight) (S2605, S2606, S2607).
  • FIG. 27 shows a sequence for a temporary waiting, repair, or battery charging of an unmanned moving object when it is necessary to go through a station.
  • the candidate list and location of the station to be dropped are encrypted and requested to the management server (S2703).
  • the management server Upon receiving this, the management server queries the station at the optimal location for the requested unmanned mobile device, and in this case, requests the station location by encrypting the PM blockchain node (S2704).
  • the PM blockchain node provides information on the location of the station stored in the blockchain storage (e.g., client) to the management server in an encrypted manner, and the management server that receives it selects the optimal station for the unmanned mobile device based on the received information. Then, by constructing a path to reach it, information is created and encrypted, and then transmitted to the unmanned mobile device (S2705).
  • the unmanned moving object that received this moves near the optimal station selected based on the received information (S2706). Then, when a control request is made to the corresponding station, the corresponding station that receives it performs a control process with the unmanned mobile body that requested the control (S2707 ⁇ 2709).
  • the station performs necessary services (eg, battery charging, repair, etc.) (S2710, S2711).
  • necessary services eg, battery charging, repair, etc.
  • the station When the required service is completed, the station notifies this to the owning company terminal 610, and the unattended mobile pays for the service through the HE blockchain node (S2713).
  • a new temporary block is created, and the HE blockchain node verifies the validity of the transaction details of the unmanned mobile entity through the consensus process, and when the verification passes, the block related to the new payment details or transaction details is HE blockchain In addition, it is stored in the blockchain storage.
  • the unmanned mobile station departs the station and enters the control sequence mode through the management server (S2714, S2715).

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 블록체인을 이용한 무인 이동체 제어 시스템 및 이를 이용한 통신 방법에 관한 것으로서, 상세하게는 블록 체인 기술 및 다중 암호화 프로토콜을 이용하여 무인 이동체의 제어에 대한 해킹을 방지하여 안전한 무인 이동체 제어가 수행될 수 있는 발명에 관한 것이다.

Description

블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법
본 발명은 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법에 관한 것으로서, 상세하게는 블록 체인 기술 및 다중 암호화 프로토콜을 이용하여 무인 이동체의 제어에 대한 해킹을 방지하여 안전한 무인 이동체 통신 제어가 수행될 수 있는 발명에 관한 것이다.
최근 드론과 같이 무선 통신에 기반한 원격제어를 필요로 하는 무인 이동체에 대한 기술개발 및 저변확대가 지속적으로 이루어져왔다. 무인 이동체의 경우, 한국공개특허 10-2018-0054007에서 도시한 바와 같이, 기존에 주어진 주파수 대역에서 통신 패킷을 주고 받으면서 원격제어가 이루어지는바, 주파수의 간섭이 일어나면, 무인 이동체에 대한 제어가 불가능해지고, 더 나아가 악의적인 해킹에 의하여 무인 이동체의 납치, 테러에의 사용 등과 같은 문제가 발생할 수 있어서, 보안성에 취약하다는 문제점이 있었다.
본 발명은 이와 같은 문제점을 해소하기 위해서 마련된 것으로서, 블록체인 기술을 무인 이동체에 접목시켜서 무인 이동체에 대한 보안성을 개선할 수 있는 네트워크 및 제어 방식을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명은, 해시값 및 데이터가 수록된 적어도 하나 이상의 블록이 저장된 적어도 하나 이상의 무인 이동체와; 상기 무인 이동체를 위한 경로 정보가 분산 저장된 경로 관리 블록체인과; 상기 무인 이동체를 위한 트래픽 제어 정보가 분산 저장된 트래픽 제어 정보 블록체인과; 상기 무인 이동체와 상기 경로 정보 블록 체인과 상기 트래픽 제어 정보 블록체인과 통신 가능하게 연결되는 관리서버를 포함하며, 상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터는 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되고, 복호화된 데이터는 대칭키 암호화 방식으로 2차적으로 복호화 되며, 상기 관리서버와 상기 무인 이동체 간에는 매번 블록 통신시 마다, 변조가 있는지 검증과정이 수행되는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 통신방법을 제공한다.
또한, 본 발명에서 상기 경로 관리 블록체인과 트래픽 제어 정보 블록체인은 하이퍼 렛저 패브릭(HyperLedger Fabric) 및 하이페 렛저 패브릭의 기본 합의 알고리즘 SBFT(Simplified Byzantine Fault Tolerance)방식으로 구현되는 프라이빗(private)블록체인인 것을 특징으로 한다.
또한, 본 발명에서 상기 경로 관리 블록체인과 트래픽 제어 정보 블록체인에서 사용하는 합의 방식은 POP (Proof of Prestige) 합의 알고리즘인 것을 특징으로 한다.
또한, 본 발명에서 상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 과정은, 무인 이동체에서 관리서버로 송신시, 무인 이동체에서 개인키로 암호화하고, 관리서버에서 이에 매칭되는 공개키로 복호화 하거나, 관리서버에서 무인 이동체로 송신시, 관리서버에서 공개키를 이용하여 암호화 하고, 무인 이동체에서는 개인키로 암호화 하는 단계를 포함하고, 복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화되는 방식은 아이디 및 패스워드가 일치됨으로써 이루어지는 것을 특징으로 한다.
관리서버는 연산 처리부와, 공개키 저장부와, 통신부와, 암호화/복호화 처리부와, 최적 경로 탐색부와, 경로 정보 저장부와, 트래픽 정보 저장부를 구비하고,
무인 이동체는 통신부와, 개인키 저장부와, 블록체인 저장부와 이들을 제어하는 제어부를 포함하는 것을 특징으로 한다.
또한, 본 발명에서 무인 이동체에서 자신의 임무 수행을 위한 쿼리를 요청하기 위해서 관리 서버로 쿼리를 포함하는 데이터를 전송하는 단계와, 수신받은 관리 서버에서는 수신 받은 데이터를 공개키로 복호화 하고, 전송받은 데이터의 토큰 유효성을 검사하여, 무인 이동체가 인증받은 정당한 주체인지 검증하는 단계와, 경로 관리 블록체인과 통신하여 경로 관리 블록체인에 저장된 경로 중 제어 대상이 되는 무인 이동체의 정보 및 환경 정보를 고려한 최적의 경로를 찾기 위한 경로 정보를 수신받는 단계와, 수신된 경로 정보, 무인 이동체 정보, 환경 정도를 고려하여, 관리 서버의 최적 경로 탐색부가, 최적의 경로를 추출하고, 이 데이터를 단위 블록 형태로 만들어서 트래픽 제어 정보 블록체인에 전파하는 단계와, 트래픽 제어 블록체인의 노드는 이를 받아서 각 클라이언트의 합의를 통해서 최적의 경로가 포함된 데이터의 블록을 정식 블록으로 생성하고 이를 기존의 블록 체인에 연결하는 단계와, 관리 서버는 최적의 경로와 관련된 데이터를 해당 무인 이동체의 공개키로 암호화하여 무인 이동체로 송신하는 단계와, 이를 받은 무인 이동체에서는 보유하고 있는 개인키를 이용하여 이를 복호화 하고, 이렇게 복호화 된 데이터는 다시 한번 대칭키 암호화 방식을 통해서 다시 한번 복호화 과정을 거치는 단계와, 다중 암호화 과정을 통해서 복호화된 데이터가 무인 이동체가 실제로 임무 수행에 사용할 수 있는 raw 데이터가 되고, 이를 기반으로 무인 이동체가 설정된 목적지까지 지령을 받은 경로를 따라서 이동하는 단계를 수행하는 것을 특징으로 한다.
또한, 본 발명에서는 해시값 및 데이터가 수록된 적어도 하나 이상의 블록이 저장된 적어도 하나 이상의 무인 이동체와; 상기 무인 이동체를 위한 경로 정보가 분산 저장된 경로 관리 블록체인과;상기 무인 이동체를 위한 트래픽 제어 정보가 분산 저장된 트래픽 제어 정보 블록체인과;상기 무인 이동체와 상기 경로 정보 블록 체인과 상기 트래픽 제어 정보 블록체인과 통신 가능하게 연결되는 관리서버를 포함하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법에 있어서,상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 단계와;복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화 되는 단계를 포함하는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법을 제공한다.
또한, 본 발명에서 상기 관리서버와 상기 무인 이동체 간에 매번 블록 통신시 마다, 변조가 있는지 검증과정이 수행되는 단계를 더 포함하는 것을 특징으로 한다.
상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 과정은,
무인 이동체에서 관리서버로 송신시, 무인 이동체에서 개인키로 암호화하고, 관리서버에서 이에 매칭되는 공개키로 복호화 하거나, 관리서버에서 무인 이동체로 송신시, 관리서버에서 공개키를 이용하여 암호화 하고, 무인 이동체에서는 개인키로 암호화 하는 단계를 포함하고, 복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화되는 방식은 아이디 및 패스워드가 일치됨으로써 이루어지는 것을 단계인 것을 특징으로 한다.
또한, 본 발명에서 관리서버는 연산 처리부와, 공개키 저장부와, 통신부와, 암호화/복호화 처리부와, 최적 경로 탐색부와, 경로 정보 저장부와, 트래픽 정보 저장부를 구비하고,무인 이동체는 통신부와, 개인키 저장부와, 블록체인 저장부와 이들을 제어하는 제어부를 포함하되, 무인 이동체에서 자신의 임무 수행을 위한 쿼리를 요청하기 위해서 관리 서버로 쿼리를 포함하는 데이터를 전송하는 단계와, 수신받은 관리 서버에서는 수신 받은 데이터를 공개키로 복호화 하고, 전송받은 데이터의 토큰 유효성을 검사하여, 무인 이동체가 인증받은 정당한 주체인지 검증하는 단계와,경로 관리 블록체인과 통신하여 경로 관리 블록체인에 저장된 경로 중 제어 대상이 되는 무인 이동체의 정보 및 환경 정보를 고려한 최적의 경로를 찾기 위한 경로 정보를 수신받는 단계와, 수신된 경로 정보, 무인 이동체 정보, 환경 정도를 고려하여, 관리 서버의 최적 경로 탐색부가, 최적의 경로를 추출하고, 이 데이터를 단위 블록 형태로 만들어서 트래픽 제어 정보 블록체인에 전파하는 단계와, 트래픽 제어 블록체인의 노드는 이를 받아서 각 클라이언트의 합의를 통해서 최적의 경로가 포함된 데이터의 블록을 정식 블록으로 생성하고 이를 기존의 블록 체인에 연결하는 단계와, 관리 서버는 최적의 경로와 관련된 데이터를 해당 무인 이동체의 공개키로 암호화하여 무인 이동체로 송신하는 단계와, 이를 받은 무인 이동체에서는 보유하고 있는 개인키를 이용하여 이를 복호화 하고, 이렇게 복호화 된 데이터는 다시 한번 대칭키 암호화 방식을 통해서 다시 한번 복호화 과정을 거치는 단계와, 다중 암호화 과정을 통해서 복호화된 데이터가 무인 이동체가 실제로 임무 수행에 사용할 수 있는 raw 데이터가 되고, 이를 기반으로 무인 이동체가 설정된 목적지까지 지령을 받은 경로를 따라서 이동하는 단계를 수행하는 것을 특징으로 한다.
본 발명에 의하면, 무인 이동체가 안전하게 이동할 수 있는 경로(2d, 3d 정보) 및 GIS정보를 제공할 수 있다.
또한, 무인 이동체, 특히 드론 이동시 필요한 비행 규칙, 기상정보, 지자기 교란 지수 정보 등의 데이터를 제공하여 효율적인 교통 관제를 제공할 수 있다.
그리고 최적의 경로 정보를 실시간으로 제공하여 교통 트래픽을 줄일 수 있으며, 이륙, 착륙 관제시 스테이션의 위치, 상태 등의 모든 정보를 신속하게 제공할 수 있다.
게다가, 보안성을 갖춘 블록체인 기술을 접목하여 경로 정보와 교신정보를 해킹으로부터 안전하고 투명하며, 신뢰성 있게 제공하는 플랫폼을 구현할 수 있다.
특히, 본 발명에서는 일반적인 송수신 방식이 아닌, 블록체인 다중 암호화 프로토콜을 이용하여 무인 이동체를 무선 주파수 해킹으로부터 안전하게 지켜줄 수 있으며, 완벽하게 보호된 경로 이용 정보를 이용할 수 있다.
또한, 분산 네트워크 이므로 단일 서버군으로 중앙화된 관제 시스템의 보안상 허점을 블록체인으로 극복할 수 있는 장점도 있으며, 실시간으로 관제되는 모든 무인 이동체의 데이터를 블록체인에 기록하고 관리하여, 오픈된 네트워크 상의 모든 무인 이동체의 보안성 및 관리 투명성을 향상시킬 수 있다.
그리고, 일반 사용자들이 경로를 직접 작성하도록 하고, 블록체인에 저장하여 무인 이동체가 경로 작성자가 작성한 경로를 이용할 경우, 그에 대한 적절한 보상을 하여 이익을 공유할 수 있는 장점도 있다.
도1은 본 발명에 따른 네트워크의 개략도이다.
도2는 본 발명의 일부 블록체인에서 사용되는 Private 블록체인의 일종인 Hyperledger Fabric의 구조도이다.
도3은 본 발명에서 사용하는 Hyperledger Fabric의 일구성요소인 Peer의 개요도이다.
도4는 본 발명의 Hyperledger Fabric의 일구성요소인 Ledger의 개요도이다.
도5는 본 발명의 Hyperledger Fabric의 Application process의 개략적인 흐름도이다.
도6은 본 발명의 Hyperledger Fabric에서 Mutiple Channel의 개요도이다.
도7은 본 발명의 Hyperledger Fabric에서 Organization의 개요도이다.
도8은 본 발명의 Hyperledger Fabric의 Orderer와 Peer를 포함한 관계에서의 proposal이 처리되는 것을 도시한 개략적인 흐름도이다.
도9은 본 발명의 Hyperledger Fabric의 Orderer와 Peer를 포함한 관계에서의 proposal이 처리된 결과를 도시한 개요도이다.
도10은 본 발명의 Hyperledger Fabric의 Orderer가 검증(validation), 전송, 전파, ledger에 기록된 과정을 도시한 개요도이다.
도11은 본 발명에서 관리 서버와 각 블록체인, 무인이동체, 스테이션, 사용자 단말기와의 관계를 도시한 개략도이다.
도12는 본 발명에서 관리 서버와 각 블록체인, 무인이동체, 스테이션, 사용자 단말기와의 관계를 도시한 블록도이다.
도13은 본 발명에서 관리 서버의 블록도이다.
도14는 본 발명에서 경로 관리 블록체인(PM 블록체인) 노드의 블록도이다.
도15는 본 발명에서 트래픽 정보 블록체인(TC 블록체인) 노드의 블록도이다
도16은 본 발명에서 결제 정보 블록체인(HE 블록체인) 노드의 블록도이다
도17은 본 발명에서 무인 이동체의 블록도이다.
도18은 본 발명의 무인이동체에서 관리서버로 보내는 송신 데이터의 블록도이다.
도19는 본 발명에서 관리서버에서 무인 이동체로 보내는 송신 데이터의 블록도이다.
도20은 본 발명에서 무인 이동체와 관리서버와 TC블록체인 간의 암호화를 통한 통신 과정을 도시한 흐름도이다.
도21은 본 발명에서 사용되는 TC블록체인의 구조도이다.
도22는 본 발명에서 무인 이동체의 관제 흐름도이다.
도23은 본 발명에서 사용되는 PM블록체인의 구조도이다.
도24는 본 발명에서 사용되는 HE블록체인의 구조도이다.
도25는 본 발명에서 경로 작성 및 저장의 시퀀스를 나타낸 흐름도이다.
도26은 본 발명에서 무인 이동체의 관제 시퀀스를 나타낸 흐름도이다.
도27은 본 발명에서 스테이션 및 무인 이동체의 통신 관제 시퀀스를 나타내는 흐름도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소 들은 상기 용어들에 의해 한정되지는 않는다.
상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
이하, 첨부된 도면을 참조하여 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.
< 비지니스 모델의 개요 >
도1은 본 발명에 따른 블록체인을 이용한 무인 이동체의 제어 시스템에 기반한 비지니스 모델을 개략적으로 나타낸 도면이다. 본 발명에서 사용되는 무인 이동체는 드론이 대표적이나, 이에만 한정되지는 않고 원격으로 제어할 수 있는 이동체라면, 자동차와 같은 이동체나 다른 이동체도 가능하다.
도1에서 도시한 바와 같이, 본 발명은 3가지의 블록체인으로 구성된다. 무인 이동체(500) 및 이를 제어 및 관리하기 위한 관리서버(100)를 중심으로 하여, 트래픽 제어 정보를 노드와 이에 연결되는 클라이언트에 분산 저장하고 있는 트래픽 제어 정보 블록체인과( 이하, 'TC 블록체인' 이라고 한다)(300), 무인 이동체(500)를 위하여 제공되는 경로 정보를 노드와 이에 연결되는 클라이언트에 저장하고 있는 경로 관리 블록체인( 이하 'PM 블록체인'이라고 한다)(200)과, 무인 이동체(500)에 대한 관리, 배터리 충전, 경로 정보 사용 등에 소요되는 비용을 포함한 전반적인 경제순환 구조에 대한 정보를 분산 저장하는 결제 정보 블록 체인( 이하, 'HE 블록체인'이라 한다)(400)을 포함한다.
HE 블록체인(400)은 관리 서버(100) 및 스마트 컨트랙트 API(400a) 및 스테이션 관제 API(710)와 통신 가능하게 연결되며, 스테이션 관제 API(710)는 각각의 스테이션(700)들과 연결된다.
여기서 스테이션(700)은 무인이동체의 출발(이륙), 도착(착륙)을 근처에서 관제하는 한편, 수리, 배터리 충전 등의 서비스를 제공하는 정거장이다.
한편, TC 블록체인(300)은 관리 서버(100) 및 교통 상황 또는 관제 정보 상황을 볼 수 있는 트래픽 뷰 UI(300a)와 연결되어 있다. PM블록 체인(200)은 관리 서버(100) 및 후술할 경로 작성자들이 이용하는 경로 작성툴이 수록된 단말기(620), 그리고, 스테이션 관제 API(710)와 연결될 수 있다.
여기서, PM 블록체인(200)과 TC 블록체인(300)은 프라이빗 블록체인의 성격을 가지고, HE 블록체인(400)은 퍼블릭 블록체인의 성격을 가지는 것이 바람직하다.
스마트 계약(smart contract)이란 블록체인 기술을 기반으로 계약조건을 코딩하고, 조건에 부합하면 계약내용이 이행되는 디지털 계약방식을 말한다. 일종의 자동화 계약 시스템이다.
이러한 스마트 계약 체결에 의하여, 후술하겠지만, 무인 이동체(500)가 배터리 충전이나, 스테이션 이용 등을 통해서 특정한 결제 의무를 지거나, 또는 특정 경로 작성자가 작성한 경로를 이용한 경우에 지불해야 하는 통행료 또는 경로 이용료 등에 대한 결제 의무를 지는 경우, 그러한 비용이 자동적으로 지불되고, 이에 따라 각 이해 관계자의 전자 지갑에 들어 있는 잔액(예, 코인)이 자동적으로 증감된다.
구체적 각 블록체인의 특징은 아래와 같다.
<PM 블록체인(200)>
PM 블록체인(200)은 지리 정보의 기록을 담당한다. 무인 이동체가 이동할 수 있는 경로(항로) 정보와, 무인 이동체(500)가 이착륙할 수 있고 더 나아가 배터리 충전도 할 수 있는 스테이션 정보를 저장하는 프라이빗 블록체인 저장부이다.
본 발명에서, 경로(항로)는 미리 설정되거나, 고정된 것이 아니며, 개별적인 경로 작성자(path producer)들이 작성하여 업로드 한 경로의 집합으로 구성된다.
경로 작성자들은 본 발명을 포함하는 네트워크에 코인을 지불하고 지불한 만큼의 '에너지'라는 자원을 받으며, 에너지는 일정 비율로 코인과 교환될 수 있다.
경로 작성자들은 경로 작성툴이 수록된 단말기(620)를 이용하여 삼차원의 경로를 지도상에 작성할 때, 에너지를 소비하여 경로의 최소 단위 셀(cell)로 작성한다.
경로 작성에 대한 노력은 100% 확정 받을 수 있고, 채굴 및 에어드랍 형태로 추가 보상받을 수 있으며, 소정의 작성료를 지불 받을 수 있다.
경로 작성 툴에서 보상 받거나 소비 하지 않고, 이용가능한 모든 에너지는 다시 코인으로 자유롭게 교환할 수 있다.
셀이 두개 이상 모이면 선이 되고, 여러 개의 셀로 이어져 경로로 구성된다. 하나의 경로 정보는 일정한 기준 단위로 나누어 저장하고, 저장하는 항로의 길이, GPS좌표값, 고도, 소유자, 안정성, 이용 빈도, 경로 점수, 경로 등급, 경로 식별 등을 트랜잭션 하여 검증 과정을 거쳐서 PM 블록체인 상에 기록된다.
한편, PM 블록 체인(200)에 기록된 경로는 관리 서버의 시뮬레이션에 의하여 경로 검증 과정이 지속적으로 트랜잭션되어 PM블록체인(200) 상에 새롭게 업데이트 되며, 이 과정을 통해서 경로의 안정성 및 신뢰성이 높아질 수 있다.
한편, 경로 작성툴에 표시되는 맵 데이터, 지형, 지오펜스, 스테이션 위치, 이착륙 위치, 등의 정보를 안전하게 보관하기 위해서 별도의 사이드 체인이 마련되고, 이러한 정보들은 별도의 사이드 체인에 수록된다.
이를 통해서 지도 정보 변형으로 인한 심각한 피해, 항공기 납치, 테러와 같이 무인 이동체, 특히, 무인 항공기나 드론을 이용한 각종 사건, 사고, 공격을 예방할 수 있다.
예를 들면, 건물, 공항, 발전소, 군사 시설 등의 드론이 비행할 수 없는 공간, 지오펜스 또는 위치등 보호된 데이터를 범죄자나 테러 집단이 해킹으로 변형하여 무인 이동체의 이동(비행) 금지 구역을 이동(비행) 가능 구역으로 위조 할 수 있는 가능성을 원천적으로 차단한다.
본 발명은 해킹 등을 통하여 위 변조된 신호를 전송함으로써, 무인 이동체를 절도하거나, 납치, 또는 테러에 이용할 수 있는 가능성을 미연에 방지할 수 있는 가장 기초적인 안전 장치가 된다.
PM 블록체인(200)은 경로 데이터를 만들고 검증하는 일련의 모든 과정과 경로 데이터를 구축하는 기초적인 지도 데이터를 기록하고 업데이트 하여 완성되는 안전한 블록체인 경로 저장부로서의 역할을 수행한다.
<TC 블록체인(300)>
TC 블록체인(300)은 관리 서버(100)를 통해서 실시간 관제를 담당한다. 무인 이동체가 이용한 경로의 통계 정보를 저장하는 블록체인 저장부이다. 예를 들어 A지역에서 B지역까지 이동시 소요시간 등의 정보를 저장하고, 각종 통계를 획득할 수 있는 데이터 들이 저장된다.
무인 이동체(500)가 출발(예, 드론의 이륙)하여 경로(예, 항로)에 접근하기 전, 비행 승인 단계부터 TC블록체인의 활동이 시작된다. 이동 승인 권한을 획득하고, 출발지와 목적지를 가지고, 이동 스케쥴을 쿼리하여 정해진 경로로 접근한다.
이때 발생하는 무인 이동체(500)의 임무 정보, 즉, 이동승인(비행 승인), 출발지, 목적지, 이동 스케쥴(비행 스케쥴), 경로(항로) 접근 좌표, 실시간 무인 이동체(드론)의 위치, 고도, 이동 목적(비행 목적), 운송 품목, 그리고, 관리 서버와 빅데이터에 의하여 처리된 수정 스케쥴 등의 무인 이동체(드론)의 모든 이동 정보(비행 정보) 및 기타 상태들이 마치 블랙박스 처럼 차곡차곡 생성되고, 트랜잭션 되어 TC 블록체인(500)에 저장된다.
이러한 정보 역시 관리서버(100)에 의하여 각각 최적화 되어 무인 이동체(500)들을 상호 유기적으로 분산시켜 목적지까지 도달하는데 도움을 줄 수 있다.
그리고, 각종 데이터들, 이를 테면, 기상정보, 지자기 정보, 충전 상태 등의 다각적인 정보를 바탕으로 빅데이터를 생성하고, 이를 활용하여 무인 이동체(예, 드론)(500)을 효율적으로 관제하는 데이터를 안전하게 TC블록체인(300)에 기록할 수 있다. 본 발명에 따른 시스템을 활용하는 무인 이동체 관리 및 제어 네트워크에서는 후술할 다중 암호화(비대칭키 암호화 및 대칭키 암호의 순차적 사용)의 프로토콜에 의하여 무인 이동체(500)에게 안전하고 효율적인 경로 좌표와 고도 정보를 지속적으로 보낼 수 있다.
그리고, 무인 이동체(500)는 무선통신으로 수신 받은 데이터를 다중 암호화 프로토콜로 해독하여 TC 블록체인(300)에 연결된 상태를 검증받고, 합의 알고리즘에 의하여 생성된 정보만을 가지고, 처리하여 수정이나 변경 불가능한 데이터, 즉, 위변조가 방지된 안전한 데이터를 기반으로 운용될 수 있다.
시간을 중요시 하는 관제데이터를 주고 받는 블록체인 다중 암호화 프로토콜은 합의 알고리즘으로 생성된 프라이빗 블록 체인 상에서 더욱더 빠른 처리 속도를 위해서 채널이라는 기법으로 분산관리 되어 만들어 진다.
또한, 무인 이동체(500)가 블록체인 다중 암호화 프로토콜 데이터를 검증하는 과정에서 노드들에게 생성된 전체 블록 데이터를 검증하지 않고, 랜덤하게 암호화된 특정 위치에 있는 블록데이터를 함께 검증하는 방식으로 블록데이터의 무결성을 검증할수도 있다.
이와 같은 방식으로 무인 이동체는 전체 블록 데이터를 가진 풀 노드가 되지 않고도 블록의 무결성 검사를 할수 있다. 이는 블록체인이 가진 속도와 한계를 뛰어넘어 하나의 프로토콜로서 데이터를 주고 받는데 이용될 수 있다.
물론, 무인 이동체(500)가 풀 노드가 되면 더욱 탄탄한 검증 과정을 가질 수 있겠지만, 수많은 연산 과정을 거치는 풀노드로 동작하게 되면, 현재의 배터리 기술로는 한계가 있다.
매초 반복적으로 데이터를 주고 받으며, 가볍고 반복적인 검증 과정으로 충분하게 안전하게 통신이 가능하다.
< HE 블록 체인 >
HE 블록체인(400)은 네트워크에서 경제 순환 구조를 담당한다. 각 이해 관계자의 전자 지갑 내의 코인 소유 내역 및 트랙잭션 정보를 저장하는 퍼블릭 블록 체인으로서, 비트코인이나 이더리움과 유사한 블록체인 저장부이다.
각각의 블록은 코인의 소유자, 보유량, 사용량, 사용시간, 사용장소 등의 데이터를 트랜잭션 하여 기록하는 역할을 하며, 관제 서버, 기타 서비스를 제공하는 요소(예, 스테이션)이나, 메인 체인(TC 블록체인, PM 블록체인) 및 사이드 체인과 연결된다.
HE 블록체인(400)은 본 발명에 따른 네트워크 플랫폼에서 사용되는 암호화 전자화폐 시스템이다. 이는 퍼블릭 블록체인으로 네트워크 상에서 일어나는 모든 임무 수행이나 교환 등의 대가로 지불되는 결제 수단을 기초가 되며, 무인 이동체와 연관된 경제 활동을 위해서 암호화 전자 화폐와 전자 지갑을 사용한다.
이는 본 발명에 따른 네트워크 시스템과 밀접한 관련이 있으며, 쇼핑, 배송비, 이동체의 구입, 비행, 충전, 수리, 보험, 대여, 세금, 기타 부가 서비스 이용등의 모든 경제활동에 사용될 수 있다.
예를 들면, 일상 생활에서 쇼핑 시 물품의 구입비나, 배송비를 지불할때, 비행 중 드론 스스로 충전소를 방문하여 비용을 자동 결제할 때, 비행 중 이상이 발견되어 점검을 받을 때 수리비의 자동 결제, 드론 택시 등의 이용 요금을 지불할 때, 드론의 비행 허가 또는 보유시 필요한 세금 등을 자동 결제할 때, 보험에 가입하거나 보험료를 지불할 때, IOT와 연결되는 다양한 서비스 비용을 지불하거나 드론을 통한 다양한 서비스를 구축하고 자동 결제할 때도 사용될 수 있다.
이 모든 전자 지불의 트랜잭션은 탈중앙화된 퍼블릭 블록체인상에서 투명하고 안전하게 기록되고 관리되며, 1차적으로 이미 검증을 마친 이더리움 토큰을 사용한다.
본 발명을 사용하는 네트워크는 각각의 블록체인(HE 블록체인, TC블록체인, PM 블록체인)마다의 고유한 수행 기능을 담아 3개의 다중 블록체인으로 구성된 하나의 플랫폼으로 완성된다.
본 발명의 네트워크는 POS(Proof of Stake) 합의 알고리즘을 진화시킨 POP (Proof of Prestige) 라는 합의 알고리즘을 사용한다. POP 합의 알고리즘은 PM 블록체인의 블록 생성에 기여하는 경로 생성자(Path Producer) 들이 노드의 운영 주체로서 경로 생성 툴을 이용해 참여하게 되며, POP 노드의 유지 지분, 경로 작성을 위해 담보하는 지분, 작성한 경로의 길이, 이용 빈도, 경로 점수 및 관리 서버가 평가한 안정성을 바탕으로 한 신뢰도를 모두 합쳐서 높은 점수를 가진 노드 운영자에게 명예 점수(Prestige Point)를 부여하고, 블록 생성시 생성된 블록들의 명예 점수를 합산하여 보다 높은 점수를 가지는 유효한 블록체인으로 선택되는 알고리즘 이다.
< 합의 모델 >
1세대 블록체인 가상화폐인 비트코인과, 2세대 블록체인 이더리움에서 사용하는 합의 모델인 POW(Proof of Work)는 거래 검증을 위한 많은 전력 소모와 CPU파워를 필요로 하는 문제점이 있다.
또한, 많은 수의 노드들이 합의에 참여하게 되므로, 속도가 느려지게 되어 빠른 처리를 요하는 서비스에는 치명적인 단점을 갖게 된다.
따라서, 본 발명에서는 퍼블릭 블록체인만을 단독으로 네트워크에 적용하는 것은 적합하지 않으므로, 퍼블릭 블록체인의 합의모델과 프라이빗 블록체인에 적합한 합의모델 두가지를 하이브리드 형태로 사용하여 구현한다.
대량 트랙잭션의 빠른 처리가 필요한 TC블록체인(200)과 PM블록체인(300)은 프라이빗 블록체인 플랫폼인 하이퍼 렛저 패브릭(HyperLedger Fabric)과 하이페 렛저 패브릭의 기본 합의 알고리즘 SBFT(Simplified Byzantine Fault Tolerance)방식 또는 SBFT에서 약간 변형된 방식을 사용하여 메인 네트워크가 구성된다.
한편, 통화를 담당하는 HE 블록체인(400)은 자체 코인용 블록체인은 POS(Proof of Stake) 방식 또는 더 나아가서 DPOS(Delegated Proof of Stake)방식을 가진 토큰 등이 사용될 수 있다.
이후에는 네트워크 자체 POP(Proof of Prestige) 합의 알고리즘을 적용할 예정이다.
POP 합의 알고리즘은 각 블록에 검증자(Validator)들이 가지는 Prestige Point의 증명 리스트를 포함하게 된다. 각 노드가 보유하는 Prestige Point를 많이 가질수록 블록을 업데이트하는 권한이 더 많이 주어지게 되며, 분기가 발생할때는 더 높은 Prestige Point 를 가지는 블록체인을 선택한다.
그리고 POW와 마찬가지로 블록이 확정될 때, 블록확정에 참여한 노드에게 새로운 코인으로 보상이 지급된다.
본 발명에 따른 네트워크가 제공하는 서비스는 지리정보, 고도정보, 스테이션 위치정보, 기상정보, 지자기 지수 정보, 비행금지 구역 정보, 사회적/제도적으로 합의된 안전한 항로 정보, 국가별 비행 승인 자동 취득, 경로 정보를 이용한 관제 데이터 수신, 스테이션 이착륙 자동 관제에서부터, 블록체인 다중 암호화 프로토콜을 이용한 관제 데이터 암호화, 충전/수리/물류비 등의 서비스 이용시 자동 결제, 실시간 위치 보정 및 항로에 따른 고도 보정, 출발지에서 도착지까지의 소요 시간 정보 데이터의 통계, 빅데이터와 AI(인공지능)을 이용한 자동 관제로 드론 간 간격 및 속도 보정, 트리팩 상황 및 사고 정보를 이용한 관제 데이터 보정, 비물리적 안티드론 방지, 블랙박스 기능 등의 서비스도 제공한다.
그리고 본 발명의 네트워크를 사용하는 통신망은 Wifi, Bluetooth, BLE, ZigBee, Z-wave, 위성통신, 셀룰러시스템, LTE, 5G 등을 사용할 수 있다.
본 발명에 따른 서비스의 역할을 설명한다. 여기서 무인 이동체의 대표적인 예로서 드론을 들어서 설명하나 무인이동체의 예시는 이에만 한정되는 것은 아니며 무인 자동차, 무인 선박, 무인 비행기 등 여러가지 무인 이동체 종류면 모두 해당된다.
일반적으로 경로 정보가 필요한 드론들은 우리가 제공하는 모든 서비스(지리, 고도, 기상, 트래픽, 비행금지구역 등..)을 제공받아 약속된 경로에서 비행하도록 하며, 본 발명에 따른 네트워크에 의해 직접 관제되어 움직이고, 관제되는 드론들의 모든 정보(전체 경로 이용 계획, 현재 위치, 배송 정보 등)을 오픈 API를 통해 모니터링 및 직접 관제 등을 할 수 있다.
직접 관제란 네트워크에 접근하는 모든 드론들을 하나의 관제 방법으로써, AI, 빅테이터 및 각종 서비스 항목을 적용시키셔 출발지에서 목적지까지 비행하는 경로와 좌표를 생성하고, 각각의 비행스케쥴 데이터를 미리 전송하는 역할을 하고, 추가적으로 각각의 비행 경로상 특정 좌표에서 발생하는 트래픽, 기상, 지자기, 등의 유동성 데이터를 처리하여 해당 항로를 이용하는 드론들이 신속하고 유기적으로 이동할 수 있도록 계속적으로 비행 스케쥴 데이터를 수정하는 역할을 한다.
그리고, 그것들의 정보를 블록체인 다중 암호화 프로토콜로 안전하게 실시간 데이터로 처리하여 네트워크 안에서 하나의 거대한 정보를 생성하고, 그것들을 제어 및 열람하는 것을 의미한다.
간접관제란 네트워크 상에서 일어나는 하나 또는 특정 그룹의 드론 이동 데이터를 열람하고, 관리할 수 있도록 하는 오픈 API를 통해 드론의 출발지나 목적지를 입력하는 역할을 의미하며, 드론들의 상태, 현재 위치 등의 세부 정보를 파악할 수 있다.
그리고, 특정 드론들이 수행하는 미션의 상태, 예를 들면, 운송용 드론의 배송상태, 촬영 화면, 농약 살포 현황 등의 데이터를 파악할 수 있다. 또한 드론들이 비행하면서, 일어나는 각종 충전, 수리 등의 모든 비용을 관리할 수 있다.
간접관제를 통해 개인이나, 기업들은 드론들의 위치를 파악하고 드론들의 세부정보를 열람할 수 있으므로, 자유롭게 드론의 컨트롤이 가능하며, 기업만의 특별한 제어 환경을 프로그램으로 만들 수 있다.
< 통신 및 제어 구조 >
이하에서는 본 발명의 구체적인 통신 및 제어 구조 및 통신 및 제어 방법에 대해서 설명하기로 한다.
상술한 바와 같이, 본 발명에 따른 네트워크는 비트코인이나 이더리움과 같은 퍼블릭 블록체인과, 프라이빗 블록체인이 모여 최소 3개 이상의 블록체인이 복합적으로 구성된 다중 블록체인 네트워크 플랫폼이다.
프라이빗 블록체인은 기업 비지니스 부분에 조금더 적합한 블록체인 모델로서, 합의 노드 수를 줄여서 퍼블릭 블록체인 대비 훨씬 더 빠른 트랜잭션 속도를 구현할 수 있다.
상술한 바와 같이 HE블록체인(400)은 결제와 관련된 것이므로 안전성과 신뢰성 확보 차원에서 퍼블릭 블록체인으로 구성하고, TC블록체인(300)과, PM블록체인(200)은 이해 관계 당사자 간의 빠른 의사 결정 및 데이터의 이동 속도 개선, 합의 시간 단축 등을 고려하여 프라이빗 블록체인으로 구성한다.
본 발명에서 사용하는 프라이빗 블록체인은 하이퍼렛저 패브릭(Hyperledger Fabric)을 사용한다. 이는 고도의 기밀성, 탄력성, 유연성, 그리고 확장성을 제공하는 모듈러 아키텍쳐를 기반으로 하는 분산 원장 솔루션을 위한 플랫폼이다. Linux Ubuntu와 Docker 상에서 구동이 되며, 최소 1000TPS의 속도를 목표로 하기 때문에, 빠른 처리 속도를 가지고 있다.
이더리움의 스마트 계약( smart contract) 기능을 수행하는 체인코드(chanin code)가 있으며, Java/Go/NOode.js/Python 등의 언어를 이용하여 비지니스 로직을 개발할 수 있다.
스마트 계약, 디지털 자산, 저장 시스템, 분산된 합의 기반 네트워크, 플러그인 기반 합의(consensus) 알고리즘/모델, 암호보안 등의 개념을 기반으로 하고 있고, 비지니스용 블록체인 서비스를 쉽게 구현할 수 있도록 한다.
하이퍼 렛저 패브릭(Hyperledger Fabric)의 구조(structure)는 도2와 같으며, 크게 다음과 같은 기능을 기본적으로 제공하고 있다.
- Membership Services : 블록체인 네트워크 회원 인증 서비스
- Blockchain Services : HTTP/2 기반 P2P 프로토콜을 통한 분산원장 엔진
- Chaincode Services : 블록체인에 추가되는 계약사항을 구현하는 코드 기능
하이퍼 렛저 패브릭(Hyperledger Fabric)의 기본 구성요소의 설명은 아래와 같다.
우선 peer(피어)는 본 발명에서 블록체인 저장소를 의미한다고 볼 수 있다.
도3과 같이, Peer는 Ledger(블록체인 데이터, 원장)와 체인코드를 소유하고 있는 Hyperledger Fabric Network의 노드다. 각각의 Peer는 고유한 IP주소와 Port 번호를 가지고 있고 Application의 직접적인 요청을 처리하고 응답을 주는 역할을 가지고 있으며 Hyperledger Fabric Network의 가장 기본적인 요소이다.
Peer는 Principal Peer와 General Peer가 존재한다. Principal Peer는 일종의 마스터 Peer 개념으로써 Orderer(본 발명에서 관리 서버에 해당)와 직접 통신하여 새로운 블록의 정보를 수신하고 Channel내의 일반 Peer에게 Gossip 프로토콜로 전파하는 역할을 하는 Peer다.
Gossip 프로토콜의 경우, 전체 모든 peer에 전송하지 않아도 되는 편리함이 있으며, 최종 전달 목적지에 도착하는 순서가 정해져 있지 않으며, 어떤 경로가 끊어져도, 다른 경로를 통해서 전달 받을 수 있고, 중복 전달될 수도 있다.
이를 위한 룰을 보면,
- 한 노드는 다른 노드의 주소를 모두 알고 있어야 한다.
- 한 노드는 주변 연결된 노드들의 살아있는지 계속 확인 해야한다.
- 한 노드는 자기가 알고 있는 노드들의 정보를 주변에 계속 알려줘서 전체 네트워크가 현재 상황에 대해 알 수 있게 한다.
- 소문을 낼 때에는 전체노드중 몇개를 랜덤하게 정해서 소문을 퍼트린다.
- 이더리움은 거짓정보를 수용하면서 신뢰를 만들고, 하이퍼레저 패브릭은 인증을 통해서 원천봉쇄한다.
하이퍼 레저 패브릭의 워크플로우를 간단히 설명하면,
1) 사용자는 어플리케이션를 통해서 Peer 들에게 트랜잭션을 실행 시킨다.
2) Endorsement역할을 하는 이 Peer 들은 체인코드를 실행시키고 장착된 컨센서스 알고리즘에 따라서 결과를 내어 다시 사용자 쪽으로 read/write set을 전달 한다.(이 과정에서 장부를 업데이트 하지 않음)
3) 이 결과 set을 가지고 orderer 서비스에게 순서를 정해서 블록화 해달라고 요청한다.
4)orderer 서비스는 블록화 한 후에 Peer 들에게 이 블록을 검증하고 저장하라고 보내준다.
과정 중에서 Gossip 프로토콜이 이용되는것이 바로 4)번 순서에서이다.
즉 orderer 는 모든 peer과 커뮤니케이션을 하는게 아니라, 대표 peer 하나에게 알리면 이 peer 가 gossip 을 통해 점진적으로 전체로 전달되게 되는 것이다. 각 피어는 전달받은 블록(트랜잭션 뭉치들)을 검증하고 장부(ledger) 에 저장한다.
패브릭 네트워크에서 gossip 데이터 전파 프로토콜 의 주요 3가지 기능으로는 다음과 같다.
1) peer 발견 및 채널 멤버쉽을 관리한다. (이용 가능한 peer들을 계속해서 체크함)
2) 장부에 기록할 데이터들을 모든 채널 상의 peer들에 전파. 싱크가 안맞는 peer들을 확인하여 모자란 블럭 정보들을 계속해서 공급해줌.
3) 새로운 peer가 참여하면 peer to peer 로 장부 데이터들을 업데이트 해줌.
동일한 채널위의 peer들은 메세지를 계속해서 수신하고,주변 peer에 전파하며, 싱크를 맞추게 된다. 주변 peer의 갯수는 설정으로 정해져 있으며, Pull 메커니즘을 따른다. 따라서 메세지가 올 때 까지 기다리는게 아니라, 적극적으로 가지고 오려는 행동을 한다.
채널 상의 각 조직의 principal peer는 orderer 게 데이터를 가져(Pull)온 후 자신의 조직에 포함된 peer들에게 전파하기 시작한다.
즉, 모든 Peer가 Orderer에 접속하지 않고 Principal Peer를 분리 함으로써 Orderer의 네트워크 부하를 줄이고 전체적으로 합의속도를 높이게 된다.
Smart Contract 로도 알려진 CHAINCODE Node.js + javascript나 Go Language로 개발된 소스코드로서 Smart Contract 이나 비즈니스 로직을 구현하는데 사용하며 기존데이터베이스의 Stored Procedure와 비슷한 역할을 수행한다.
다음은 도4를 참조하여 렛저(ledger, 원장)에 대해서 설명한다.
Ledger는 블록체인 데이터를 나타내며 NoSQL로 이루어진 World State와 블록체인 파일 두가지로 이중화 되어 구성되어 있다. World State는 블록이 확정되기 전의 데이터나 임시 데이터 및 현재 블록체인의 SnapShot을 저장하는 역할이며, 블록체인 파일은 확정된 블록체인을 저장하는 binary file이다. 만약 불일치가 발생할 경우에는 BlockChain 파일이 기준이 되어 World State DB를 갱신하도록 되어 있다.
다음은 도5를 참조하여 Application Process에 대해서 설명한다.
Application은 Hyperledger Fabric 블록체인 네트워크를 이용해서 블록체인을 생성 및 조회하는 응용프로그램이다. Application과 Peer의 프로세스를 간략히 요약하자면 다음과 같다.
1) Hyperledger Fabric으로 개발된 Application은 하나의 Peer에 접속을 한다.
2) Application이 Peer에게 Peer가 가지고 있는 CHAINCODE 호출을 Proposal한다.
3) Peer는 CHAINCODE를 실행하고 결과를 Ledger의 World State DB에 저장한 후 Application에 응답 값을 리턴한다.
4) Application은 트랜잭션 응답 값의 합의모델을 수행하고 블록을 전파하는 역할을 담당하는 Orderer에게 전달하여 정식블록으로 등록을 요청한다.
5) Orderer는 요청받은 트랜잭션을 SBFT 합의모델을 통하여 약 2초마다 블록을 생성하고 검증하여 Hyperledger Fabric Network에 있는 Peer들에게 비동기(Asynchronous)로 블록을 전파한다.
6) 블록을 수신한 Peer는 자신의 Ledger에 블록을 반영한다.
7) Peer는 Ledger의 반영결과를 Application에 비동기(Asynchronous)로 전달하여 Application이 블록의 확정상태를 알 수 있게 한다.
다음은 channel에 대해서 설명한다.
본 발명에 의한 네트워크에서 HyperLedger Fabric에서 특히 주목하는 기능은 Channel이다. Channel은 특정 Peer들을 논리적으로 그룹화 시킬수 있는 기능이다.
Channel 기능을 사용하여 무인 이동체의 트래픽 데이터를 TC 블록체인의 전체노드에 모든 블록을 동일하게 저장하지 않고 국가별로 일정 지역을 채널 단위로 나누어 저장하도록 할 수 있다.
예컨대 미국 LA의 트래픽 데이터를 영국 런던에 있는 Peer 노드에서 저장하고 있을 필요는 없을 것이다. 왜냐하면 지리적으로 멀리 떨어져 있고 상호 연관성이 없는 대량의 데이터이기 때문이다.
따라서 각 지역에 속하는 트래픽 정보만 각각의 Channel별로 유지하게 하여 실시간으로 전송 되어야 하는 트래픽 데이터의 블록 크기를 줄이고 보다 가볍고 효율적으로 유지할 수 있다.
그리고, 도6에서 도시한 바와 같이, 본 발명에서 사용되는 Hyperledger의 Peer들은 기본적으로 Channel에 가입하게 되어 있으며 하나 이상의 Channel에 가입할 수도 있다(multi channel).
한편, 도7과 같이, Peer 노드와 Application은 Organization이라는 논리적인 그룹으로 묶을 수 있다. Peer 노드 서버들을 관리하는 장소 또는 기관 등의 단위로 Organigation을 구성하여 관리한다면 네트워크의 관리가 용이해 질 수 있다.
본 발명에 의한 네트워크는 각 국가별로 신뢰할 수 있는 기관 또는 단체에 노드운영을 위탁하고 Organization으로 관리하게 된다. 또한 일부의 Peer 노드 서버는 본 발명의 네트워크에서 자체적으로 운영할 수도 있다.
Application은 트랜잭션을 생성하여 해당 채널의 Peer노드들에게 각각 제안(Proposal)하게 된다. 각 Peer 노드는 각각 응답에 대한 보증(Endorsed) 정보와 함께 응답 R1, R2를 Application에 리턴한다. 이를 도식화 하면 도8과 같다.
실행된 Application들은 Peer에게서 받은 응답을 Orderer 에게 전달하고 검증과정 및 블록생성을 요청하고 Orderer는 합의알고리즘에 따라서 블록을 생성한다. 그 결과를 도식화 하면, 도9와 같다.
Orderer(본 발명에서 관리서버에 해당)는 생성된 블록을 검증하고 해당 채널의 Principal Peer 들에게 전송하여 블록을 전파하고 Ledger에 기록되도록 한다. 이러한 일련의 과정을 통하여 Application 및 Peer와 Orderer간의 통신으로 블록체인이 기록되며 Hyperledger Fabric 블록체인 네트워크가 구성된다. 이를 도식화 하면 도10과 같다.
도11 및 도12에서 도시한 바와 같이, 본 발명에 따른 네트워크 또는 무인 이동체 제어 시스템은 아래와 같은 구성을 갖는다.
우선, 네트워크의 중심에는 AI(인공지능)이 탑재되고 빅데이터를 활용하여 네트워크 전반을 제어 및 관리하고, 외부에 있는 단말기(예, 경로 작성 단말기(620), 무인 이동체 제어 단말기(610))와 통신하면서, 외부의 무인 이동체(예, 드론)(500), 스테이션(700)과 통신하여 제어하고 이들의 정보를 관리하는 관리서버(100)가 마련된다.
그리고, 관리 서버(100)는 상술한 PM 블록체인(200), TC블록체인(300), HE 블록체인(400)과 통신 가능하게 연결된다. 여기서 각각의 블록체인은 크게 두 가지 구성요소를 갖는다. 하나는 블록체인 노드이고, 다른 하나는 클라이언트이다.
사용자 관점에서는 블록체인의 노드는 일반적인 서비스의 백앤드(Backend)역할을 하고, 블록체인 클라이언트는 클라이언트 역할을 한다. 클라이언트가 새로운 트랜잭션을 발생시키면 노드들은 트랜잭션을 분산합의 과정을 통해 공유하고, 트랜잭션을 실행한다.
클라이언트는 트랜잭션의 결과를 확인할 수 있다. 따라서, PM블록체인(200)은 PM블록체인 노드(210)와, 이와 연결된 복수의 클라이언트(220)로 구성되는데, 여기서의 클라이언트(220)는 경로 작성 툴을 가지며, 저장장치를 갖는 단말기 또는 저장장치를 갖는 무인이동체가 될 수 있다. 아니면 클라이언트는 복수의 저장서버가 될 수 도 있다.
한편, TC블록체인(300)은 TC 블록체인 노드(310)와 이와 연결된 복수의 클라이언트(320)로 구성되는데, 여기서의 클라이언트(320)는 무인 이동체를 소유하거나 관리 위탁을 받은 주체(예, 회사, 주체, 공공기관 등)가 보유하며 저장장치를 갖는 단말기, 또는 저장장치를 갖는 무인 이동체가 될 수 있고, 아니면 복수의 저장 서버가 될 수도 있다.
그리고 HE블록체인(400)은 HE블록체인 노드(410)와 이와 연결된 복수의 클라이언트(420)로 구성되는데, 여기서의 클라이언트(420)는 저장장치 및 전자지갑을 갖는 경로 작성자의 단말기 또는 저장장치 및 전자지갑을 갖는 드론, 또는 저장장치 및 전자지갑을 갖는 스테이션, 또는 복수의 저장 서버가 될 수 있다.
도13에서 도시한 바와 같이, 관리서버(또는 AI시스템)(100)은 연산 처리부(101)와, 공개키 저장부(102)와, 통신부(103)와, 암호화/복호화 처리부(104)와, 최적 경로 탐색부(105)와, 경로 정보 저장부(106)와, 트래픽 정보 저장부(107)를 구비한다.
공개키 저장부(102)에 저장된 공개키는 비대칭 암호화/복호화 작업에서 사용되는 각 무인 이동체의 개인키와 키쌍을 이루면서, 사용자 등록과 검증, 송수신되는 데이터의 검증 및 저장에 사용되는 공개키를 저장하는 장소이다.
암호화 기술에는 대칭과 비대칭 암호화 기술이 있는데 대칭적 암호화 설정 방식은 우리에게 익숙한 아이디(ID) 와 비밀번호(Password)가 일치하면 암호가 풀리는 것이며 비대칭 암호화 기술은 공개키(Public-Key)와 개인키 (Private-Key)로 나뉘어져 암호화된 내용에 대한 전면적인 접근 권한이 있는 개인키(Private-Key)와, 개인키에 대칭하여 진위 여부를 검증할 수 있는 공개키(Public-Key)로 나뉘는데 대부분의 블록체인 기반의 전자지갑은 비대칭 암호화 기술로 되어 있다.
본 발명에 따른 관리서버(100)에서의 암호화/복호화는 비대칭 방식으로 이루어지며, 후술하는 바와 같이 각 무인 이동체(500)에서 암호화/복호화는 비대칭 방식과 대칭 방식을 모두 사용한다.
통신부는 외부의 단말기들(예, 경로 작성자 단말기(620), 무인 이동체 관리자의 단말기(610)) 및 외부의 무인 이동체(예, 드론)(500) 및 외부의 스테이션(700) 및 각각의 블록체인(200, 300, 400)과 통신할 수 있는 API를 의미한다.
여기서 통신부에서 사용하는 통신망은 Wifi, Bluetooth, BLE, ZigBee, Z-wave, 위성통신, 셀룰러시스템, LTE, 5G 등을 사용할 수 있다.
통신부(103)는 트랜잭션(Transaction)을 블록체인 분산 네트워크에 브로드캐스트(Broadcast)하는 네트워크 라우팅 모듈(Network Routing Module)이나 풀 마이닝 노드(Pool Mining Node)에 연결되는 게이트웨이 라우터 (Gateway Router) 등을 의미할 수 있다.
한편, 암호화/복호화 처리부(104)는 각 무인 이동체(500)에 마련되는 개인키 및 경로작성자 단말기(620)에 마련되는 개인키와, 공개키 저장부(102)에 저장된 공개키를 이용하여 사용자 정보나 데이터를 암호화 하거나 복호화 처리할 수 있는 구성요소이다.
암호화/복호화 처리부(104)는 외부에서 암호화 처리된 상태로 송신되어 수신된 데이터를 비대칭 방식으로 복호화 하거나, 또는 외부(예, 무인 이동체, 또는 경로 작성자 단말기, 또는 TC/PM/HE 블록체인)으로 송신할 데이터를 비대칭 방식으로 암호화 하는 작업을 수행한다.
최적 경로 탐색부(105)는 제어 대상이 되는 특정 무인 이동체의 현재위치, 목적지, 고도, 날씨, 현재 교통정보 상황, 유효한 경로 정보(예, 비행 가능 구역)를 고려하여 가장 빨리 또는 효율적으로 목적지에 도달할 수 있는 경로를 탐색할 수 있는 구성요소이며, 보통의 최적 경로 탐색 알고리즘은 다익스트라 알고리즘(Dijkstra Algorithm) 또는 균일 비용 탐색(Uniform cost search: USC) 알고리즘이 있다.
경로 정보 저장부(106)는 주로 작성자들이 작성하고, 외부로부터 검증 받은 경로에 대한 데이터가 저장된 장소이며, 경로 정보 저장부(106)에는 각 무인 이동체별로 이동한 과거의 경로에 대한 데이터가 저장될 수 도 있다.
이러한 경로에 대한 데이터는 PM블록체인(200)을 구성하는 PM블록체인의 노드(210)들의 합의 과정을 거친 데이터이다.
따라서, 경로 정보 저장부(106)에 저장되어 있는 데이터는 PM블록체인(200)의 클라이언트(예, 경로 작성자 단말기, 또는 드론)(210) 등에 저장되어 있는 데이터와 동일하거나 연관성이 있어야 한다.
트래픽 정보 저장부(107)는 관제 정보 저장부라고도 할 수 있으며, 각 무인 이동체에 대한 관제 정보(출발지/목적지 정보, 고도/속도 정보, 이용한 경로 정보, 이동 시간, 이용한 스테이션 정보, 임무정보)가 저장되어 있는 곳이다. 특정한 무인 이동체가 과거에 수행했던 운행 정보 및 관제 정보에 대한 데이터들이 블록 형태로 제공되고, 이 블록들이 연결되어 블록체인을 구성하며, 이 블록체인이 TC블록체인(300)을 의미한다.
따라서, 합의 및 검증과정을 거친 이러한 TC블록체인(300)이 존재함으로써, 특정한 무인 이동체에 대한 해킹을 방지할 수 있다.
도14는 PM 블록 체인 노드(210)에 대한 구성을 나타낸다. PM블록체인노드(210)는 노드에 연결된 복수의 저장장치 자체 또는 그러한 저장장치를 구비한 클라이언트들 간의 합의를 이끌어내는 합의 알고리즘 처리부(211)와, 합의를 통해서 검증된 신규 예비 블록을 정식으로 기존의 PM 블록체인에 추가하여 새로운 PM 블록체인을 생성하여, 각각의 저장장치 또는 그러한 저장장치를 구비한 클라이언트에 송신하여 저장되도록 하는 저장 처리부(212)를 구비한다.
또한, PM블록 체인 노드(210)는 경로정보 저장 DB(213)를 구비하여, 관리서버에서 받은 경로 정보에 관한 데이터를 저장할 수 있다.
도15은 TC 블록 체인 노드(310)에 대한 구성을 나타낸다. PM블록체인노드(310)는 노드에 연결된 복수의 저장장치 자체 또는 그러한 저장장치를 구비한 클라이언트 들 간의 합의를 이끌어내는 합의 알고리즘 처리부(311)와, 합의를 통해서 검증된 신규 예비 블록을 정식으로 기존의 TC 블록체인에 추가하여 새로운 TC 블록체인을 생성하여, 각각의 저장장치 또는 그러한 저장장치를 구비한 클라이언트에 송신하여 저장되도록 하는 저장 처리부(312)를 구비한다.
또한, TC블록 체인 노드(310)는 트래픽 정보 저장 DB(313)를 구비하여, 관리서버(100)에서 받은 트래픽 정보 또는 관제 정보에 관한 데이터를 저장할 수 있다.
도16은 HE 블록 체인 노드(410)에 대한 구성을 나타낸다. HE블록체인노드(410)는 노드에 연결된 복수의 저장장치 자체 또는 그러한 저장장치를 구비한 클라이언트 들 간의 합의를 이끌어내는 합의 알고리즘 처리부(411)와, 합의를 통해서 검증된 신규 예비 블록을 정식으로 기존의 HE 블록체인(400)에 추가하여 새로운 HE 블록체인을 생성하여, 각각의 저장장치 또는 그러한 저장장치를 구비한 클라이언트에 송신하여 저장되도록 하는 저장 처리부(412)를 구비한다.
또한, HE블록 체인 노드(410)는 결제 정보 저장 DB(413)를 구비하여, 관리서버(413)에서 받은 결제 정보 또는 노드에 연결된 각 클라이언트의 전자 지갑에 관한 데이터를 저장할 수 있다.
도17은 무인 이동체(예, 드론)(500)을 구성하는 구성요소의 블록도이다.
무인 이동체(500)는 주어진 임무를 수행하는데 필요한 제어 명령을 내리는 제어부(503)를 포함하며, 제어부(503)는 관리 서버(100) 및 스테이션(700) 등과 통신하는 통신부(501), 그리고 TC블록체인(300)/PM블록체인(200)/HE블록체인(400)이 저장되는 블록체인 저장부(504)와, 비대칭 암호화/복호화에 사용되는 개인키가 저장되는 개인키 저장부(502)와, 코인이 저장되어 있는 전자지갑(505)을 포함한다.
본 발명에 따른 네트워크에서 사용하는 '블록체인 다중 암호화 프로트콜'은 비대칭 암호화와 대칭키 암호화가 다중으로 사용되어 해킹으로 인한 데이터의 위변조로부터 무인 이동체를 안전하게 보호한다.
본 발명에서 관리서버(100)와 무인 이동체(500)는 각각 송수신 하는 데이터를 블록체인 형태로 저장하며, 매 블록 통신마다 변조가 있는지 다시 한번 상호 검증하도록 한다.
모든 무인 이동체(500)는 본 발명에 따른 네트워크 가입시에 비대칭 암호용 공개키와 개인키를 쌍으로 생성하고, 주기적으로 갱신한다. 공개키는 네트워크의 관리 서버(100)에서 보관하고, 개인키는 무인 이동체(500)가 보관한다.
이렇게 생성된 키값을 이용하여 데이터를 암호화/복호화 하는데, 관리서버(100)에서는 해당 무인 이동체의 공개키를 이용하여 암호화하여 데이터를 송신하고, 무인 이동체(500)는 자신의 개인키를 이용하여 데이터를 복호화 한다.
이렇게 복호화된 데이터는 특정 규칙을 이용하여 구성된 대칭키 암호화 방식을 통해서 다시 한번 복호화하고 최종적인 제어 데이터(raw data)로 사용할 수 있다.
무인 이동체(500)에서 관리 서버(100)로 데이터를 보낼 때는 관리서버(100)로 부터 전달받은 제한기간을 갖는 특정 토큰값과 대칭키 알고리즘을 이용하여 암호화한 다음에 서버로 데이터를 송신한다.
도18에서는 무인 이동체(500)에서 관리 서버(100)로 송신되는 데이터의 구조를 도시하고 있고, 도19에서는 관리 서버(100)에서 무인 이동체(500)로 송신되는 데이터의 구조를 도시하고 있으며, 도20에서는 무인 이동체(500)와 관리 서버(100) 간의 통신 과정을 도시하고 있다.
도18에서 도시한 바와 같이, 무인 이동체(500)서 생성되어 관리 서버(100)로 송신되는 데이터(550)는, 무인 이동체(500)의 식별ID(개인 식별 정보 PI에 해당)(551), 송신 데이터(목적지 또는 이동 경로 등 구체적인 임무과 관련되는 쿼리, 또는 임무 수행 중 또는 임무 수행 완료에 대한 보고)(552), 개인키에 해당하는 인증 토큰 정보(553), 송신 데이터 해시값(554)을 포함하며 이들은 암호화 되어 전송된다.
해쉬값은 블록체인 네트워크상에서 사용자를 식별할 때 사용하는 값이다. 해쉬값은 다양한 방법을 통해 생성될 수 있다. 대표적인 해쉬값 생성 알고리즘은 MD5, SHA-256 등이 있다. 해쉬값은 특정 사용자에 대하여 유일하게 존재하는 값이다.
한편, 관리 서버(100)에서 무인 이동체(500)로 전송되는 데이터(450)도 암호화되어 전송되는데, 송신 데이터(지정된 무인 이동체에 대한 제어 명령)(451) 및 송신 데이터 해시값(452)을 포함하며, 이는 공개키로 암호화 되어 무인 이동체(500)로 전송되고, 무인 이동체(500)에서 개인키를 이용하여 비대칭키 암호화 방식으로 복호화 되고, 이후 대칭키 암호화 방식으로 복호화 된다.
도20에서 도시한 바와 같이, 무인 이동체(500)에서 자신의 임무 수행을 위한 쿼리를 요청하기 위해서 관리 서버(100)로 쿼리(목적지, 목적지를 가기 위한 경로, 이륙 시간 등)를 포함하는 데이터를 전송한다.
이를 위해서 무인 이동체(500)는 자신이 갖고 있는 개인키를 이용하여 대칭키 암호화 방식으로 데이터를 암호화 하여 이를 관리 서버(100)에 전송한다(S2001). 이 때 전송되는 데이터 구조는 도18에서 설명한 것과 같다.
이를 수신받은 관리 서버(100)에서는 수신 받은 데이터를 공개키로 복호화 하고, 전송받은 데이터의 토큰 유효성을 검사하여, 무인 이동체가 인증받은 정당한 주체인지 검증한다(S2002, S2003).
그리고, PM블록체인(200)과 통신하여 PM블록체인(200)에 저장된 경로 중 제어 대상이 되는 무인 이동체의 현재 위치, 기상 상태 등을 고려한 최적의 경로를 찾기 위한 경로 정보를 수신받는다.
수신된 경로 정보, 현지 위치, 무인 이동체의 상태, 기상 상태 등을 고려하여, 관리 서버의 최적 경로 탐색부가, 최적의 경로를 추출하고, 이 데이터를 단위 블록 형태로 만들어서 PM블록체인(200)에 전파한다(S2004).
PM 블록체인(200)의 노드는 이를 받아서 각 클라이언트의 합의를 통해서 최적의 경로가 포함된 데이터의 블록을 정식 블록으로 생성하고 이를 기존의 블록 체인에 연결한다(S2005, S2006).
관리서버(100)는 최적의 경로와 관련된 데이터를 해당 무인 이동체의 공개키로 암호화하여 무인 이동체로 송신하는데, 그 때의 데이터 구조(송신데이터+해시값)는 도18에서 설명한 것과 같다(S2007).
이를 받은 무인 이동체(100)에서는 보유하고 있는 개인키를 이용하여 이를 복호화 하고, 이렇게 복호화 된 데이터는 다시 한번 대칭키 암호화 방식을 통해서 다시 한번 복호화 과정을 거친다(S2008).
이렇게 다중 암호화 과정을 통해서 복호화된 데이터는 무인 이동체가 실제로 임무 수행에 사용할 수 있는 raw 데이터가 되고, 이를 기반으로 무인 이동체가 설정된 목적지까지 지령을 받은 경로를 따라서 이동한다.
한편, 지령받은 임무 수행 중, 무인 이동체(500)는 주기적으로(예, 10초에 한번씩) 관리서버(100)와 통신을 하는 것이 바람직하며, 이 경우, 무인 이동체(500)는 현재 임무 수행과 관련되는 정보(현재 위치, 소요 시간, 속도, 목적지 도착 여부 등))를 대칭키 암호화 방식으로 암호화 하여 관리 서버(100)로 송신하고(S2009), 관리서버(100)는 해당 무인 이동체(500)의 공개키를 이용하여 복호화 하고, 해당 토큰값을 이용하여 무인 이동체의 유효성을 검증한다(S2010, S2011).
그리고, 그 데이터들은 블록 형태로 만들어져, TC블록체인(300)으로 송신되어, 합의 과정을 거쳐서 TC 블록체인(300)에 연결된다.
도21은 N차 블록이 연결되어 업데이트 된 TC 블록체인(300)의 구성을 도시한 것이다. 도21를 참조하면, N차 블록은 마지막 블록, 즉 N-1차 블록에 연결되어 업데이트된 블록체인의 마지막에 연결된 블록이 된다.
이때에, N차 블록은 N-1차 블록의 해시값(301), 무인 이동체 정보(302), 넌스(nonce)(개별 트랜잭션이 한번만 처리되게 하는 카운터, '해답값' 이라고도 함)(303), 생성된 시간에 대핸 정보인 타임 스탬프, 제어 데이터(출발지, 목적지, 최적 이동 경로, 이동 시간)(304), 현재 임무 수행과 관련된 정보(현재 임무 수행 중 또는 임무 완료)를 담고 있는 임무 수행 데이터(305)를 포함할 수 있다.
여기서, 관리 서버(100)는 N차 블록의 해시값을 계산할 수 있으며, 계산된 N차 블록의 해시값을 제어 대상이 되는 무인 이동체(500)와 해당 무인 이동체(500)에 대한 소유권이나 관리권한을 갖는 주체의 단말기(610)로 전송할 수 있다.
이때에, 상기 N차 블록의 해시값을 전송받은 무인 이동체(500)나 단말기(610)는 N차 블록의 해시값을 저장할 수 있다.
아울러, 단말기(610)는 N차 블록의 해시값으로 단말기블록해시값을 수정할 수 있다.
다시 말해서, 단말기 블록해시값은 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지될 수 있다.
마찬가지로, 무인 이동체(500)는 N차 블록의 해시값으로 무인 이동체(500)의 블록해시값을 수정할 수 있으며, 무인 이동체(500)의 블록해시값이 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지되도록 할 수 있다.
이를 통해서, 무인 이동체(500)에 대한 소유권이나 관리권한을 갖는 주체의 단말기(610) 및 무인 이동체(500)는 블록체인을 모두 저장하고 있지 않더라도, 블록체인을 구성하는 마지막 하나의 블록의 해시값을 통해서 관리 서버에 의해 그 유효성을 검증받을 수 있다.
각각의 블록체인 저장장치는 서버에 연결되어, 서버와 데이터의 송수신이 가능하도록 구비될 수 있다.
또한, 블록체인 저장 장치는 각각의 블록체인(TC 블록체인(300), PM블록체인(200), HE 블록체인(100))을 저장하고 있을 수 있으며, 각각의 블록체인은 도 21에서 도시하는 바와 같이, 각각의 블록이 순차적으로 연결되어 구성될 수 있다.
한편, 관리 서버는 N차 블록을 생성한 후, N차 블록을 블록체인 저장장치로 전송할 수 있으며, 블록체인 저장 장치는 블록체인에 N차 블록을 연결하여 상기 블록체인을 업데이트할 수 있다.
다시 말해서, 블록체인 저장 장치는 1내지 N-1차 블록이 연결된 블록체인을 저장하고 있을 수 있는데, 관리 서버로부터 N차 블록을 전송받으면, 블록체인에 상기 N차 블록을 연결하여, 블록체인이 1 내지 N차 블록이 연결된 형태가 되도록 상기 블록체인을 업데이트할 수 있다.
본 발명에 의하면, 단말기 및 무인 이동체에 저장된 마지막 블록의 해시값과 블록체인 저장장치에 저장된 블록체인으로부터 계산되는 마지막 블록의 해시값을 무인 이동체 제어과정에서 비교하도록 함으로써 단말기와 무인 이동체의 유효성을 검증할 수 있다.
이를 통해, 무인 이동체의 원격제어 과정에서 일어날 수 있는 해킹 등의 외부공격으로부터 안전을 담보할 수 있어 보안성이 강화될 수 있다.
도22는 본 발명에 의한 무인 이동체의 제어 과정을 도시한 것이다.
우선, 특정한 무인 이동체를 제어할 권한이 있는 관리자 단말기에 의하여 입력받은 목적지 및 이동시간이 관리서버를 통해 전송되고, 이 정보는 다시 제어 대상이 되는 무인 이동체에 전송된다.
이 경우, 관리 서버에 의하여 관리자 단말기 및 무인 이동체에 대한 유효성이 검증되는 과정이 관리자 단말기 및 무인 이동체에 저장된 마지막 해시값의 비교를 통해서 이루어진다.
유효성 검증이 완료되어 유효한 관리자 단말기 및 무인 이동체로 판단되는 경우, 관리 서버는 PM 블록체인으로부터 최적의 이동 경로를 수신 받고, 이와 관련되는 최적의 이동 경로 데이터에 대한 블록을 TC 블록체인에서의 합의 과정을 거쳐서 생성하고, 제어 대상이 되는 무인 이동체에 비대칭 암호화 방식으로 송신하면, 무인 이동체가 이를 수신하여, 비대칭 암호화 및 대칭 암호화 방식으로 복호화 한다(S2201).
이후, 최종적으로 복호화 된 제어 데이터를 바탕으로, 무인 이동체에서 GPS, 고도, 속도 조정이 일어나고, 더 나아가 다른 무인 이동체와의 충돌 감지 기능도 동작할 수 있다. 한편, 해킹에 의한 무인 이동체의 납치나 임의의 경로 변경을 방지하기 위해서 관리 서버와 무인 이동체 간에는 주기적으로 통신을 하게 되고, 통신시마다 블록이 생성되어, 유효성 검증을 거쳐서 지속적으로 TC블록체인에 연결된다(S2202, S2203).
만약에 갑자기 무인 이동체의 제어 불능상태 또는 오류 상태가 발견되면(S2204), 그러한 상황에서 무인 이동체를 보호할 수 있는 fail safe process가 발동하고(S2205), 최종적으로 정상적 운행이 이루어졌던 영역을 위주로 무인 이동체의 탐색이나 구조 프로세스가 이루어진다. 그리고, 이를 토대로 failure report 가 작성된다(S2206).
한편, 무인 이동체가 정상적으로 동작하나, 배터리의 상태가 정상적이지 않다고 판단되면(S2207), 관리서버가 PM 블록체인에 수록된 인접한 스테이션에 관한 정보를 추출하여(S2208), 이를 해당 무인 이동체에 전송하고 특정한 스테이션을 이동하라고 명령한다. 이를 받은 무인 이동체는 이동 지시를 받은 스테이션으로 이동하여(S2209), 배터리 충전을 수행하고, 충전이 완료되면, 다시 이륙하여 원래 지시받은 임무를 수행한다(S2210).
현재 제어 가능한 정상적 상태이고, 배터리도 충분하다고 판단되면, 지령받은 최적 경로를 따라서 목표지점에 도착할 때까지 주기적으로 관리 서버와 통신을 하고, 이러한 결과는 지속적으로 관리서버에서 관리자 단말기로 전송된다.
그러한 임무 수행 상태에 관한 데이터는 블록 형태로 생성되고, 이 블록은 관리서버를 통해서 TC블록체인으로 송신되어 TC블록체인에서의 검증 및 합의 과정을 거친 후, TC블록체인의 마지막 블록으로 연결되어 지속적으로 TC블록체인의 일부를 구성한다.
그리고, 최종적으로 목표지점에 도착하면, 그러한 임무 종료 상황이 관리 서버로 전송되고, 이러한 임무 완료에 대한 데이터는 블록 형태로 생성되고, 이 블록은 관리서버를 통해서 TC블록체인으로 송신되어 TC블록체인에서의 검증 및 합의 과정을 거친 후, TC블록체인의 마지막 블록으로 연결되어 지속적으로 TC블록체인의 일부를 구성한다(S2211).
도23는 N차 블록이 연결되어 업데이트 된 PM 블록체인(200)의 구성을 도시한 것이다. 블록체인의 전체적인 연결 구조는 도21에서 나타난 TC블록체인(300)과 유사하나 그 세부 구성은 차이가 있다.
도23을 참조하면, N차 블록은 마지막 블록, 즉 N-1차 블록에 연결되어 업데이트된 블록체인의 마지막에 연결된 블록이 된다.
이때에, N차 블록은 N-1차 블록의 해시값(201), 경로 작성자 정보(202), 스테이션 정보(203), 넌스(nonce)(개별 트랜잭션이 한번만 처리되게 하는 카운터, '해답값' 이라고도 함)(204), 생성된 시간에 대핸 정보인 타임 스탬프, 경로 데이터(특정 출발지와 특정 목적지 간의 최적 경로 또는 특정 스테이션으로 향하는 최적 경로)(205)를 포함할 수 있다.
여기서, 관리 서버(100)는 N차 블록의 해시값을 계산할 수 있으며, 계산된 N차 블록의 해시값을 제어 대상이 되는 무인 이동체(500)와 관리서버(100)로 전송할 수 있다.
이때에, 상기 N차 블록의 해시값을 전송받은 무인 이동체(500)나 관리서버는 N차 블록의 해시값을 저장할 수 있다.
아울러, 무인이동체(500)나 관리서버(100)는 N차 블록의 해시값으로 단말기블록해시값을 수정할 수 있다.
다시 말해서, 단말기블록해시값은 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지될 수 있다.
마찬가지로, 무인 이동체(500)나 관리서버(100)는 N차 블록의 해시값으로 무인 이동체의 블록해시값을 수정할 수 있으며, 무인 이동체의 블록해시값이 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지되도록 할 수 있다.
이를 통해서, 무인 이동체(500)는 블록체인을 모두 저장하고 있지 않더라도, 블록체인을 구성하는 마지막 하나의 블록의 해시값을 통해서 관리 서버(100)에 의해 그 유효성을 검증받을 수 있다.
각각의 블록체인 저장장치는 관리 서버(100)에 연결되어, 관리 서버(100)와 데이터의 송수신이 가능하도록 구비될 수 있다.
또한, 블록체인 저장 장치에는, 도 23에서 도시하는 바와 같이, 각각의 블록이 순차적으로 연결되어 구성될 수 있다.
한편, 관리 서버(100)는 N차 블록을 생성한 후, N차 블록을 블록체인 저장장치로 전송할 수 있으며, 블록체인 저장 장치는 블록체인에 N차 블록을 연결하여 상기 블록체인을 업데이트할 수 있다.
다시 말해서, 블록체인 저장 장치는 1내지 N-1차 블록이 연결된 블록체인을 저장하고 있을 수 있는데, 관리 서버로부터 N차 블록을 전송받으면, PM 블록체인에 상기 N차 블록을 연결하여, PM 블록체인이 1 내지 N차 블록이 연결된 형태가 되도록 상기 블록체인을 업데이트할 수 있다.
본 발명에 의하면, 관리서버(100) 및 무인 이동체(500)에 저장된 마지막 블록의 해시값과 블록체인 저장장치에 저장된 PM 블록체인으로부터 계산되는 마지막 블록의 해시값을 무인 이동체 제어과정에서 비교하도록 함으로써 작성된 경로의 유효성이나, 특정 무인 이동체가 움직여야할 경로의 유효성을 검증할 수 있다.
이를 통해, 경로의 안정성이 담보될 수 있다.
도24는 N차 블록이 연결되어 업데이트 된 HE 블록체인(400)의 구성을 도시한 것이다. 블록체인의 전체적인 연결 구조는 도21에서 나타난 TC블록체인(300) 및 도23에서 나타난 PM블록체인(200)과 유사하나 그 세부 구성은 차이가 있다.
도24를 참조하면, N차 블록은 마지막 블록, 즉 N-1차 블록에 연결되어 업데이트된 블록체인의 마지막에 연결된 블록이 된다.
이때에, N차 블록은 N-1차 블록의 해시값(401), 무인 이동체 정보(402), 넌스(nonce)(개별 트랜잭션이 한번만 처리되게 하는 카운터, '해답값' 이라고도 함)(403), 생성된 시간에 대핸 정보인 타임 스탬프, 결제 정보 데이터(특정 스테이션 등에서 결제한 이력, 무인 이동체의 전자지갑의 잔액 정보, 금액 충전 정보 등)(404)를 포함할 수 있다.
여기서, 관리 서버는(100) N차 블록의 해시값을 계산할 수 있으며, 계산된 N차 블록의 해시값을 제어 대상이 되는 무인 이동체(500)와 관리서버(100)로 전송할 수 있다.
이때에, 상기 N차 블록의 해시값을 전송받은 무인 이동체(500)나 관리서버 (100)가 N차 블록의 해시값을 저장할 수 있다.
아울러, 무인이동체(500)나 관리서버(100)는 N차 블록의 해시값으로 단말기블록해시값을 수정할 수 있다.
다시 말해서, 단말기블록해시값은 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지될 수 있다.
마찬가지로, 무인 이동체나 관리서버는 N차 블록의 해시값으로 무인 이동체의 블록해시값을 수정할 수 있으며, 무인 이동체의 블록해시값이 항상 블록체인을 구성하는 마지막 하나의 블록의 해시값으로 유지되도록 할 수 있다.
이를 통해서, 무인 이동체(500)는 블록체인을 모두 저장하고 있지 않더라도, 블록체인을 구성하는 마지막 하나의 블록의 해시값을 통해서 관리 서버(100)에 의해 그 유효성을 검증받을 수 있다.
각각의 블록체인 저장장치는 관리 서버(100)에 연결되어, 관리 서버(100)와 데이터의 송수신이 가능하도록 구비될 수 있다.
또한, 블록체인 저장 장치에는, 도 24에서 도시하는 바와 같이, 각각의 블록이 순차적으로 연결되어 구성될 수 있다.
한편, 관리 서버(100)는 N차 블록을 생성한 후, N차 블록을 블록체인 저장장치로 전송할 수 있으며, 블록체인 저장 장치는 블록체인에 N차 블록을 연결하여 상기 블록체인을 업데이트할 수 있다.
다시 말해서, 블록체인 저장 장치는 1내지 N-1차 블록이 연결된 블록체인을 저장하고 있을 수 있는데, 관리 서버(100)로부터 N차 블록을 전송받으면, HE 블록체인(400)에 상기 N차 블록을 연결하여, HE 블록체인(400)이 1 내지 N차 블록이 연결된 형태가 되도록 상기 블록체인을 업데이트할 수 있다.
본 발명에 의하면, 관리서버(100) 및 무인 이동체(500)에 저장된 마지막 블록의 해시값과 블록체인 저장장치에 저장된 PM 블록체인으로부터 계산되는 마지막 블록의 해시값을 무인 이동체 제어과정에서 비교하도록 함으로써 스테이션 사용료 또는 배터리 충전 등에 소요된 비용 지불에 대한 유효성을 검증하고 및 전자 지갑 해킹 방지 등의 효과를 구현할 수 있다.
이하에서는 위 내용을 바탕으로 한 경로작성 및 저장 시퀀스, 드론 관제 시퀀스, 드론 및 스테이션 같의 통신 관제 시퀀스에 대해서 설명하기로 하겠다.
<경로 작성 및 저장 시퀀스>
도25에서 도시한 바와 같이, 특정 지역에서의 무인 이동체를 위한 경로(예, 드론 이동 항로)를 작성하고자 하는 경로 작성자가 통신 네트워크 연결된 자신의 단말기(620)를 이용해서, 로그인을 한 후(S2501), 경로 작성을 위한 기본 정보를 받기 위해서, 해당 지역의 2D 지리정보 및 3D 지리정보, 그리고 해당 지역의 경로 정보(기 작성된 경로 정보) 로딩을 관리서버로 요청한다(S2502~S2504).
이러한 요청은 비대칭키 방식으로 암호화 되어 전송되고, 관리서버에서는 이를 수신하여 복호화한다. 그리고, 이를 토대로 PM블록체인에 해당 지역 경로 정보 조회 요청을 하며, 이러한 요청 또한 비대칭키 방식으로 암호화되어 전송된다(S2505).
PM블록체인 노드에서는 이를 수신하여, 복호화 하고, PM블록체인 저장소(예, 클라이언트)에 저장된 해당 지역 경로 정보를 암호화 방식(예, 비대칭키 방식)으로 관리서버에 전송한다.
관리 서버에서는 받은 해당 지역 경로 정보를 암호화 하여 로딩 요청을 한 경로 작성자 단말기로 전송하고, 경로 작성자 단말기의 화면에 이미 작성된 경로 정보가 표시된다(S2506).
경로 작성자가, 이미 작성된 경로가 아닌 해당 지역에서 신규 경로 작성을 하거나, 아니면 이미 작성된 경로를 수정하는 경우에, 신규 작성된 경로 또는 수정된 경로에 관한 데이터가 관리 서버로 전송되면(S2507), 관리 서버에서는 주변 상황 정보(예, 항공 금지 구역, 군사 비밀 구역 등)을 고려하여 작성된 경로의 유효성을 검증한다(S2508).
작성된 경로가 유효하다라고 판단되면, 새로운 블록을 생성하고, 이를 PM블록체인으로 송신하여 저장요청을 한다(S2509). 그리고 PM블록체인 노드에서는 합의를 거쳐서 각각의 블록체인 저장소에 기 저장된 PM블록체인에 작성된 경로 데이터를 포함하는 새로운 블록을 추가한다(S2510).
<무인 이동체(예, 드론) 관제 시퀀스>
도26을 이용하여 무인 이동체 관제 시퀀스에 대해서 설명한다.
우선 물류회사와 같이 드론 비지니스 또는 무인 이동체를 활용한 비지니스를 수행하는 회사의 단말기(610)에서는 무인 이동체의 비행스케쥴 또는 이동 스케쥴(출발지, 도착지, 출발시간, 예상 소요시간, 이동 목적 등)을 작성하고, 암호화하여 이를 관리 서버로 전송한다(S2601).
그리고, 이동될 대상이 되는 무인 이동체에 대한 제어 신호(목적지, 출발시간, 임무 정보)를 해당 무인 이동체에 내리면(S2602), 무인 이동체는 제어 신호에 포함된 정보를 바탕으로 관리서버로 암호화 과정을 거쳐서 경로 정보를 요청한다(S2603).
요청을 받은 관리 서버는 최적 경로 탐색을 위해서 경로 정보 요청을 암호화 하여 PM블록체인 노드에 하고, PM블록체인 노드에서는 블록체인 저장소(예, 클라이언트)에 저장된 해당 목적지까지의 다양한 경로 정보를 암호화 하여 관리 서버에 제공한다.
PM블록체인 노드로부터 받은 경로 정보를 바탕으로 하여 관리서버는 목적지에 도달하기 위한 최적 경로를 구성하고, 이를 암호화 하여 무인 이동체에 전송한다(S2604, S2605).
최적 경로 정보를 받은 무인 이동체는 이를 바탕으로 출발(예, 이륙)하여 이동(예, 비행)을 시작한다(S2605, S2606, S2607)
< 스테이션 통신 관제>
도27은 무인 이동체에 대한 일시 대기, 수리, 또는 배터리 충전을 위해서 스테이션을 거쳐야 하는 경우, 이에 대한 시퀀스를 도시한 것이다.
우선, 무인 이동체가 이동(예, 비행) 중에(S2702), 배터리가 부족하거나, 자가 진단을 통해서 스테이션을 거쳐야 하는 필요가 있는지 판단한다(S2703).
그러한 경우, 현재 자신의 위치를 고려하여, 들러야 할 스테이션의 후보 목록 및 위치를 암호화 하여 관리 서버에 요청한다(S2703).
이를 받은 관리 서버는 요청한 무인 이동체에 맞는 최적 위치의 스테이션을 조회하는데, 이 경우, PM블록체인 노드에 암호화하여 스테이션 위치를 요청한다(S2704).
PM블록체인 노드는 블록체인 저장소(예, 클라이언트)에 저장된 스테이션 위치에 관한 정보를 암호화 방식으로 관리 서버에 제공하고, 이를 받은 관리서버는 받은 정보를 바탕으로 해당 무인 이동체를 위한 최적의 스테이션을 선정하고 및 이에 도달하기 위한 경로를 구성하여 정보를 작성하고 암호화 하여, 해당 무인 이동체로 전송한다(S2705).
이를 받은 해당 무인 이동체는 받은 정보를 바탕으로 선정된 최적의 스테이션 근처로 이동한다(S2706). 그리고, 해당 스테이션에 대해서 관제 요청을 하면, 이를 받은 해당 스테이션은 관제 요청을 한 무인 이동체와 관제 프로세스를 수행한다(S2707~2709).
관제 프로세스에 따라서,무인 이동체가 스테이션에 도착(예, 착륙)하면, 스테이션에서 필요한 서비스(예, 배터리 충전, 수리 등)을 수행한다(S2710, S2711).
필요한 서비스가 완료되면, 스테이션에서는 소유 회사 단말기(610)로 이를 통지하고, 무인 이동체는 HE블록체인 노드를 통해서 서비스에 대한 비용을 지불한다(S2713).
이 경우, 새로운 임시 블록이 생성되고, HE블록체인 노드는 합의 과정을 통해서 해당 무인 이동체의 거래 내역의 유효성을 검증하고, 검증이 통과되면, 신규 결제 내역 또는 거래 내역과 관련되는 블록을 HE블록체인에 추가하여 블록체인 저장소에 저장한다.
비용 지불이 완료되면, 무인 이동체는 스테이션을 출발하여, 관리서버를 통한 관제 시퀀스 모드로 들어간다(S2714, S2715).
이상과 같이 본 발명을 도면에 도시한 실시예를 참고하여 설명하였으나, 이는 발명을 설명하기 위한 것일 뿐이며, 본 발명이 속하는 기술 분야의 통상의 지식을 가진 자라면 발명의 상세한 설명으로부터 다양한 변형 또는 균등한 실시예가 가능하다는 것을 이해할 수 있을 것이다.
따라서 본 발명의 진정한 권리범위는 특허청구범위의 기술적 사상에 의해 결정되어야 한다.

Claims (10)

  1. 해시값 및 데이터가 수록된 적어도 하나 이상의 블록이 저장된 적어도 하나 이상의 무인 이동체와;
    상기 무인 이동체를 위한 경로 정보가 분산 저장된 경로 관리 블록체인과;
    상기 무인 이동체를 위한 트래픽 제어 정보가 분산 저장된 트래픽 제어 정보 블록체인과;
    상기 무인 이동체와 상기 경로 정보 블록 체인과 상기 트래픽 제어 정보 블록체인과 통신 가능하게 연결되는 관리서버를 포함하며,
    상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터는 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되고, 복호화된 데이터는 대칭키 암호화 방식으로 2차적으로 복호화 되며,
    상기 관리서버와 상기 무인 이동체 간에는 매번 블록 통신시 마다, 변조가 있는지 검증과정이 수행되는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템.
  2. 제1항에 있어서,
    상기 경로 관리 블록체인과 트래픽 제어 정보 블록체인은 하이퍼 렛저 패브릭(HyperLedger Fabric) 및 하이페 렛저 패브릭의 기본 합의 알고리즘 SBFT(Simplified Byzantine Fault Tolerance)방식으로 구현되는 프라이빗(private)블록체인인 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템.
  3. 제1항에 있어서,
    상기 경로 관리 블록체인과 트래픽 제어 정보 블록체인에서 사용하는 합의 방식은 POP (Proof of Prestige) 합의 알고리즘인 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템.
  4. 제1항에 있어서,
    상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 과정은,
    무인 이동체에서 관리서버로 송신시, 무인 이동체에서 개인키로 암호화하고, 관리서버에서 이에 매칭되는 공개키로 복호화 하거나,
    관리서버에서 무인 이동체로 송신시, 관리서버에서 공개키를 이용하여 암호화 하고, 무인 이동체에서는 개인키로 암호화 하는 단계를 포함하고,
    복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화되는 방식은 아이디 및 패스워드가 일치됨으로써 이루어지는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템.
  5. 제4항에 있어서,
    관리서버는 연산 처리부와, 공개키 저장부와, 통신부와, 암호화/복호화 처리부와, 최적 경로 탐색부와, 경로 정보 저장부와, 트래픽 정보 저장부를 구비하고,
    무인 이동체는 통신부와, 개인키 저장부와, 블록체인 저장부와 이들을 제어하는 제어부를 포함하는 것을 특징으로 하는 무인 이동체 통신 제어 시스템.
  6. 제5항에 있어서,
    무인 이동체에서 자신의 임무 수행을 위한 쿼리를 요청하기 위해서 관리 서버로 쿼리를 포함하는 데이터를 전송하는 단계와,
    수신받은 관리 서버에서는 수신 받은 데이터를 공개키로 복호화 하고, 전송받은 데이터의 토큰 유효성을 검사하여, 무인 이동체가 인증받은 정당한 주체인지 검증하는 단계와,
    경로 관리 블록체인과 통신하여 경로 관리 블록체인에 저장된 경로 중 제어 대상이 되는 무인 이동체의 정보 및 환경 정보를 고려한 최적의 경로를 찾기 위한 경로 정보를 수신받는 단계와,
    수신된 경로 정보, 무인 이동체 정보, 환경 정도를 고려하여, 관리 서버의 최적 경로 탐색부가, 최적의 경로를 추출하고, 이 데이터를 단위 블록 형태로 만들어서 트래픽 제어 정보 블록체인에 전파하는 단계와,
    트래픽 제어 블록체인의 노드는 이를 받아서 각 클라이언트의 합의를 통해서 최적의 경로가 포함된 데이터의 블록을 정식 블록으로 생성하고 이를 기존의 블록 체인에 연결하는 단계와,
    관리 서버는 최적의 경로와 관련된 데이터를 해당 무인 이동체의 공개키로 암호화하여 무인 이동체로 송신하는 단계와,
    이를 받은 무인 이동체에서는 보유하고 있는 개인키를 이용하여 이를 복호화 하고, 이렇게 복호화 된 데이터는 다시 한번 대칭키 암호화 방식을 통해서 다시 한번 복호화 과정을 거치는 단계와,
    다중 암호화 과정을 통해서 복호화된 데이터가 무인 이동체가 실제로 임무 수행에 사용할 수 있는 raw 데이터가 되고, 이를 기반으로 무인 이동체가 설정된 목적지까지 지령을 받은 경로를 따라서 이동하는 단계를 수행하는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 통신 제어 시스템
  7. 해시값 및 데이터가 수록된 적어도 하나 이상의 블록이 저장된 적어도 하나 이상의 무인 이동체와;
    상기 무인 이동체를 위한 경로 정보가 분산 저장된 경로 관리 블록체인과;
    상기 무인 이동체를 위한 트래픽 제어 정보가 분산 저장된 트래픽 제어 정보 블록체인과;
    상기 무인 이동체와 상기 경로 정보 블록 체인과 상기 트래픽 제어 정보 블록체인과 통신 가능하게 연결되는 관리서버를 포함하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법에 있어서,
    상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 단계와;
    복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화 되는 단계를 포함하는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법.
  8. 제7항에 있어서,
    상기 관리서버와 상기 무인 이동체 간에 매번 블록 통신시 마다, 변조가 있는지 검증과정이 수행되는 단계를 더 포함하는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법.
  9. 제7항에 있어서,
    상기 관리서버와 상기 무인 이동체간의 송수신 되는 통신 데이터가 상기 무인 이동체 내에서 비대칭키 암호화 방식 방식으로 1차적으로 복호화 되는 과정은,
    무인 이동체에서 관리서버로 송신시, 무인 이동체에서 개인키로 암호화하고, 관리서버에서 이에 매칭되는 공개키로 복호화 하거나,
    관리서버에서 무인 이동체로 송신시, 관리서버에서 공개키를 이용하여 암호화 하고, 무인 이동체에서는 개인키로 암호화 하는 단계를 포함하고,
    복호화된 데이터가 대칭키 암호화 방식으로 2차적으로 복호화되는 방식은 아이디 및 패스워드가 일치됨으로써 이루어지는 것을 단계인 것을 특징으로하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법.
  10. 제9항에 있어서,
    관리서버는 연산 처리부와, 공개키 저장부와, 통신부와, 암호화/복호화 처리부와, 최적 경로 탐색부와, 경로 정보 저장부와, 트래픽 정보 저장부를 구비하고,
    무인 이동체는 통신부와, 개인키 저장부와, 블록체인 저장부와 이들을 제어하는 제어부를 포함하되,
    무인 이동체에서 자신의 임무 수행을 위한 쿼리를 요청하기 위해서 관리 서버로 쿼리를 포함하는 데이터를 전송하는 단계와,
    수신받은 관리 서버에서는 수신 받은 데이터를 공개키로 복호화 하고, 전송받은 데이터의 토큰 유효성을 검사하여, 무인 이동체가 인증받은 정당한 주체인지 검증하는 단계와,
    경로 관리 블록체인과 통신하여 경로 관리 블록체인에 저장된 경로 중 제어 대상이 되는 무인 이동체의 정보 및 환경 정보를 고려한 최적의 경로를 찾기 위한 경로 정보를 수신받는 단계와,
    수신된 경로 정보, 무인 이동체 정보, 환경 정도를 고려하여, 관리 서버의 최적 경로 탐색부가, 최적의 경로를 추출하고, 이 데이터를 단위 블록 형태로 만들어서 트래픽 제어 정보 블록체인에 전파하는 단계와,
    트래픽 제어 블록체인의 노드는 이를 받아서 각 클라이언트의 합의를 통해서 최적의 경로가 포함된 데이터의 블록을 정식 블록으로 생성하고 이를 기존의 블록 체인에 연결하는 단계와,
    관리 서버는 최적의 경로와 관련된 데이터를 해당 무인 이동체의 공개키로 암호화하여 무인 이동체로 송신하는 단계와,
    이를 받은 무인 이동체에서는 보유하고 있는 개인키를 이용하여 이를 복호화 하고, 이렇게 복호화 된 데이터는 다시 한번 대칭키 암호화 방식을 통해서 다시 한번 복호화 과정을 거치는 단계와,
    다중 암호화 과정을 통해서 복호화된 데이터가 무인 이동체가 실제로 임무 수행에 사용할 수 있는 raw 데이터가 되고, 이를 기반으로 무인 이동체가 설정된 목적지까지 지령을 받은 경로를 따라서 이동하는 단계를 수행하는 것을 특징으로 하는 블록체인을 이용한 무인 이동체 제어 시스템의 통신 방법.
PCT/KR2020/000310 2019-01-15 2020-01-08 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법 WO2020149561A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190005240A KR102039852B1 (ko) 2019-01-15 2019-01-15 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법
KR10-2019-0005240 2019-01-15

Publications (1)

Publication Number Publication Date
WO2020149561A1 true WO2020149561A1 (ko) 2020-07-23

Family

ID=68731503

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2020/000310 WO2020149561A1 (ko) 2019-01-15 2020-01-08 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법

Country Status (2)

Country Link
KR (1) KR102039852B1 (ko)
WO (1) WO2020149561A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112085434A (zh) * 2020-08-11 2020-12-15 同济大学 一种基于区块链的运输安全监控方法及装置
CN114531454A (zh) * 2022-02-25 2022-05-24 中发国研信息技术研究院(北京)有限公司 基于区块链的无人驾驶数据集可信测评系统
CN117390114A (zh) * 2023-09-27 2024-01-12 希维科技(广州)有限公司 基于区块链的电池护照存储方法、设备及存储介质

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102039852B1 (ko) * 2019-01-15 2019-11-26 강대준 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법
KR102228881B1 (ko) * 2019-08-19 2021-03-18 엘지전자 주식회사 자율주행시스템에서 군집주행중에 주행데이터의 수신방법 및 이를 위한 장치
KR102376113B1 (ko) * 2020-09-28 2022-03-17 한국항공대학교산학협력단 블록체인 네트워크 기반 드론 군집과 관제 장치 간의 통신 및 관제 시스템
KR102549385B1 (ko) * 2022-11-03 2023-06-29 주식회사 커먼컴퓨터 데이터 액세스 제어 제공 방법 및 시스템

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180014452A (ko) * 2016-08-01 2018-02-09 동국대학교 경주캠퍼스 산학협력단 이동체 정보 보안 시스템 및 이를 이용한 이동체 정보 보안 방법
KR20180063595A (ko) * 2016-12-02 2018-06-12 순천향대학교 산학협력단 비콘신호를 이용한 드론 자동 비행 시스템 및 방법
KR20180086679A (ko) * 2017-01-23 2018-08-01 주식회사 데일리인텔리전스 블록체인 네트워크를 이용해서 사용자를 인증하고 블록을 동기화하는 시스템 및 방법
KR102039852B1 (ko) * 2019-01-15 2019-11-26 강대준 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180014452A (ko) * 2016-08-01 2018-02-09 동국대학교 경주캠퍼스 산학협력단 이동체 정보 보안 시스템 및 이를 이용한 이동체 정보 보안 방법
KR20180063595A (ko) * 2016-12-02 2018-06-12 순천향대학교 산학협력단 비콘신호를 이용한 드론 자동 비행 시스템 및 방법
KR20180086679A (ko) * 2017-01-23 2018-08-01 주식회사 데일리인텔리전스 블록체인 네트워크를 이용해서 사용자를 인증하고 블록을 동기화하는 시스템 및 방법
KR102039852B1 (ko) * 2019-01-15 2019-11-26 강대준 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KIM, SUNGMIN ET AL.: "Non-official translation: A Study on the New Proof Method in Blockchain for the Improving Equity of New Participants: Proof-of-Probability", JOURNAL OF THE KOREA INSTITUTE OF INFORMATION SECURITY AND CRYPTOLOGY, vol. 28, no. 3, June 2018 (2018-06-01), pages 18 - 25 *
YOO, IN-DEOK ET AL.: "Blockchain Technology and Utilization Schemes in Tactical Communication Network", JOURNAL OF THE KOREA SOCIETY OF COMPUTER AND INFORMATION, vol. 23, no. 12, December 2018 (2018-12-01), pages 49 - 55 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112085434A (zh) * 2020-08-11 2020-12-15 同济大学 一种基于区块链的运输安全监控方法及装置
CN114531454A (zh) * 2022-02-25 2022-05-24 中发国研信息技术研究院(北京)有限公司 基于区块链的无人驾驶数据集可信测评系统
CN114531454B (zh) * 2022-02-25 2024-01-16 中发国研信息技术研究院(北京)有限公司 基于区块链的无人驾驶数据集可信测评系统
CN117390114A (zh) * 2023-09-27 2024-01-12 希维科技(广州)有限公司 基于区块链的电池护照存储方法、设备及存储介质

Also Published As

Publication number Publication date
KR102039852B1 (ko) 2019-11-26

Similar Documents

Publication Publication Date Title
WO2020149563A1 (ko) 블록체인을 이용한 무인 이동체 제어 시스템 및 이를 이용한 무인 이동체의 제어 방법
WO2020149561A1 (ko) 블록체인을 이용한 무인 이동체 통신 제어 시스템 및 이를 이용한 무인 이동체의 통신 방법
WO2020235782A1 (ko) 분산 환경에서의 신원 인증 방법
WO2016117978A1 (ko) 양자암호에 의한 보안 향상성을 갖는 모바일 커머스 및 인증 방법
WO2018008800A1 (ko) 블록체인을 기반으로 하는 공인인증서 인증시스템과 이를 이용한 블록체인을 기반으로 하는 공인인증서 인증방법
WO2018182198A1 (ko) V2x 통신 장치 및 그의 데이터 통신 방법
WO2016117976A1 (ko) 모바일 커머스용 양자암호 보안기능을 갖는 모바일 단말기 및 인증 방법
WO2016117977A1 (ko) 양자암호를 이용하여 보안 기능을 강화한 안전 결제 및 안전 인증 시스템
CN101361317A (zh) 消息广播计费系统和方法
WO2018101551A1 (ko) 만물 인터넷을 융합한 생활 밀착형 가상현실 비즈니스 플랫폼과 그 운영방법
CN107113177A (zh) 数据连接、传送、接收、交互的方法及系统,及存储器、飞行器
WO2023106759A1 (ko) Qr코드 스캔·셀픽형 웹중개제어로 이루어진 하이브리드식 사진인화키오스크형 오프라인 이지 결제장치 및 방법
WO2010074383A1 (ko) 물품관리방법
WO2023171887A1 (ko) 인비지블실링형 nft 이미지 거래 활성화 장치 및 방법
WO2018230833A1 (ko) V2x 통신 장치 및 그의 데이터 통신 방법
WO2019198846A9 (ko) 가챠 시스템의 확률 정보를 획득하는 방법, 장치 및 컴퓨터 프로그램
WO2016013846A1 (ko) 무선 통신 시스템에서 요청 메시지를 처리하기 위한 방법 및 이를 위한 장치
WO2019245167A1 (ko) 동적 규칙 기반의 블록 체인을 이용하는 군집 제어 장치 및 방법
WO2021261728A1 (ko) 다기능을 가지는 보안 연결을 제공하는 보안 통신 장치 및 그 동작 방법
WO2022107971A1 (ko) 프라이버시 블록체인 플랫폼 기반 물류 방법 및 물류 시스템
WO2020189800A1 (ko) 블록체인에서 생성된 데이터를 인증하는 방법 및 시스템
WO2021071116A1 (ko) 브라우저의 웹스토리지를 이용한 간편인증 방법 및 시스템
WO2020189993A1 (ko) 암호화폐 분실 방지 방법 및 시스템
WO2022065932A1 (en) System and method for privacy protection of broadcasting id in uav communication
WO2019125081A1 (ko) 블록체인을 이용한 일회성 접근 권한 부여 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20741304

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20741304

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 16/11/2021)