KR102575304B1 - System and method for authenticating drone and apparatus for executing the system - Google Patents
System and method for authenticating drone and apparatus for executing the system Download PDFInfo
- Publication number
- KR102575304B1 KR102575304B1 KR1020210049476A KR20210049476A KR102575304B1 KR 102575304 B1 KR102575304 B1 KR 102575304B1 KR 1020210049476 A KR1020210049476 A KR 1020210049476A KR 20210049476 A KR20210049476 A KR 20210049476A KR 102575304 B1 KR102575304 B1 KR 102575304B1
- Authority
- KR
- South Korea
- Prior art keywords
- drone
- information
- flight
- pseudonym
- control terminal
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 42
- 239000000284 extract Substances 0.000 claims abstract description 6
- 238000012795 verification Methods 0.000 claims description 34
- 238000010801 machine learning Methods 0.000 claims description 18
- 238000011084 recovery Methods 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 47
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 8
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical group C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000010200 validation analysis Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000009529 body temperature measurement Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G5/00—Traffic control systems for aircraft, e.g. air-traffic control [ATC]
- G08G5/0047—Navigation or guidance aids for a single aircraft
- G08G5/0069—Navigation or guidance aids for a single aircraft specially adapted for an unmanned aircraft
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64C—AEROPLANES; HELICOPTERS
- B64C39/00—Aircraft not otherwise provided for
- B64C39/02—Aircraft not otherwise provided for characterised by special use
- B64C39/024—Aircraft not otherwise provided for characterised by special use of the remote controlled vehicle type, i.e. RPV
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/0011—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G06Q50/30—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/40—Business processes related to the transportation industry
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3247—Cryptographic 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 digital signatures
- H04L9/3257—Cryptographic 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 digital signatures using blind signatures
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B64—AIRCRAFT; AVIATION; COSMONAUTICS
- B64U—UNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR
- B64U2201/00—UAVs characterised by their flight controls
- B64U2201/20—Remote controls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/84—Vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Automation & Control Theory (AREA)
- Theoretical Computer Science (AREA)
- Tourism & Hospitality (AREA)
- Human Resources & Organizations (AREA)
- Traffic Control Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Operations Research (AREA)
- Economics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
Abstract
드론 인증 시스템, 방법 및 이를 수행하기 위한 장치가 개시된다. 본 발명의 일 실시예에 따른 드론 인증 시스템, 방법 및 이를 수행하기 위한 장치는 조종사가 소지한 복수의 조종 단말 및 복수의 드론에 대하여 각각 가명(假名)을 생성하고, 상기 복수의 드론 중 상기 조종사가 비행하고자 하는 제1 드론에 대한 제1 드론 가명을 추출하고, 상기 복수의 조종 단말 중 상기 비행하고자 하는 제1 드론을 조종하는 제1 조종 단말에 대한 제1 조종 단말 가명을 추출하며, 추출한 제1 드론 가명 및 제1 조종 단말 가명을 상기 제1 조종 단말로 전송하는 가명 생성 장치, 상기 제1 조종 단말로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명을 수신하고, 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 대하여 각각 인증서를 생성하는 발급 서버 및 상기 제1 조종 단말로부터 상기 조종자에 의해 생성된 비행 승인 요청 정보를 수신하고, 상기 비행 승인 요청 정보를 기반으로 상기 제1 드론의 비행을 승인하는 비행 승인 정보를 생성하는 승인 서버를 포함한다.A drone authentication system, method, and apparatus for performing the same are disclosed. A drone authentication system, method, and apparatus for performing the same according to an embodiment of the present invention generate pseudonyms for each of a plurality of pilot terminals and a plurality of drones possessed by a pilot, and among the plurality of drones, the pilot extracts the first drone pseudonym for the first drone to fly, extracts the first pilot terminal pseudonym for the first control terminal that controls the first drone to fly among the plurality of control terminals, and extracts the extracted first drone pseudonym 1 a pseudonym generating device for transmitting a drone pseudonym and a first piloting terminal pseudonym to the first manipulating terminal, receiving the first manipulating terminal pseudonym and the first drone pseudonym from the first manipulating terminal, and the first manipulating terminal pseudonym; and receiving flight approval request information generated by the operator from an issuing server and the first control terminal that generate certificates for each of the pseudonyms of the first drone, and flight of the first drone based on the flight approval request information. and an approval server for generating flight approval information for approving the flight approval.
Description
본 발명의 실시예들은 드론 인증 기술과 관련된다.Embodiments of the present invention relate to drone authentication technology.
일반적으로 무인 비행체는 사람이 직접 탑승하지 않고 무선 전파의 유도에 의해서 비행하는 비행기 또는 헬리콥터 모양의 비행체로서, 드론(drone)이라고도 한다. 이러한, 드론은 최근 다양한 산업 분야에 활용되고 있다. 상용화 초기에는 주로 군용 및 여가용으로 사용되었으나, 최근 운송업, 영화, 방송 산업 등에 이르기까지 그 활용 범위가 매우 넓어지고 있으며, 활용 목적에 따라 다양한 크기와 성능을 가진 비행체들이 활발히 개발되고 있다. 특히, 정글이나 오지, 화산 지역, 자연재해지역, 원자력 발전소 사고지역 등 인간이 접근할 수 없는 지역에 드론이 투입되어 운용되기도 한다.In general, an unmanned air vehicle is an airplane or helicopter-shaped air vehicle that flies by induction of radio waves without a person directly boarding, and is also referred to as a drone. These drones have recently been used in various industrial fields. In the early days of commercialization, it was mainly used for military and leisure purposes, but recently, the range of its use has been very wide, ranging from transportation, film, and broadcasting industries, and various sizes and performance vehicles are being actively developed for different purposes. In particular, drones are sometimes put into and operated in areas inaccessible to humans, such as jungles, remote areas, volcanic areas, natural disaster areas, and nuclear power plant accident areas.
또한, 드론은 미리 설정된 경로를 따라 자유롭고 신속하게 이동하여 탑재된 카메라나 센서를 통해 특정 지역에 대한 원격 감시를 할 수 있다. 드론은 조종 장치로부터 전송되는 명령에 따라 비행, 사진촬영 등의 기능을 수행하여 특정 지역을 감시를 할 수 있다. 여기서, 조종 장치를 통한 드론에 대한 제어는 수백 미터 내외의 근거리나 LTE통신 등을 활용한 비가시권에서도 이루어질 수 있다.In addition, the drone can freely and quickly move along a pre-set route and remotely monitor a specific area through a camera or sensor mounted on it. Drones can monitor a specific area by performing functions such as flying and taking pictures according to commands transmitted from the controller. Here, the control of the drone through the control device can be performed in a short distance of about several hundred meters or in an invisible area using LTE communication.
이와 같이, 드론은 사람이 직접 할 수 없거나 하기 힘든 작업을 신속하게 수행할 수 있는 장점을 가지나, 수많은 드론이 무분별하게 보급되면서, 조종사가 보안시설, 발전소, 군사시설과 같은 통제가 요구되는 지역에서 드론을 무단으로 비행시키거나, 사유지에 침범시켜 사진 또는 영상을 불법 촬영하는 문제가 발생되고 있다. 이에 드론이 불법 행위에 악용되는 것을 방지하기 위하여 드론의 비행 허가제가 시행되었지만, 허가되지 않은 드론의 비행 사례도 발생하고 있다.In this way, drones have the advantage of being able to quickly perform tasks that cannot or are difficult for humans to do directly, but as numerous drones are indiscriminately distributed, pilots operate in areas where control is required, such as security facilities, power plants, and military facilities. There is a problem of illegally taking pictures or videos by flying drones without permission or invading private land. In order to prevent drones from being abused for illegal activities, the drone flight permit system has been implemented, but unauthorized drone flight cases have also occurred.
따라서, 인증된 드론 및 조종사에게 드론 비행을 허가하고, 드론의 비행 중에도 드론 및 조종사에 대한 인증을 지속적으로 수행할 수 있는 드론 인증 시스템이 요구된다. 또한, 인증된 조종사가 목적에 따라 다수의 드론 및 드론 조종기를 가지는 경우, 다수의 드론 및 드론 조종기로부터 수집되는 데이터를 따로 관리하여 각각 인증되도록 할 수 있는 드론 인증 시스템이 요구된다.Therefore, there is a need for a drone authentication system capable of permitting drone flight to authorized drones and pilots and continuously performing authentication of the drones and pilots even during drone flight. In addition, when a certified pilot has a plurality of drones and drone controllers according to a purpose, a drone authentication system capable of separately managing data collected from the plurality of drones and drone controllers so that each can be authenticated is required.
본 발명의 실시예들은 인증된 드론 및 조종 단말에 드론 비행을 허가하고, 드론의 비행 중에도 드론 및 조종 단말에 대한 인증을 지속적으로 수행하기 위한 것이다.Embodiments of the present invention are intended to permit drone flight to an authenticated drone and control terminal, and to continuously perform authentication of the drone and control terminal during flight of the drone.
또한, 본 발명의 실시예들은 인증된 조종사가 목적에 따라 다수의 드론 및 조종 단말을 가지는 경우, 다수의 드론 및 조종 단말로부터 수집되는 데이터를 따로 관리하여 각각 인증되도록 하기 위한 것이다.In addition, the embodiments of the present invention are intended to separately manage data collected from the plurality of drones and control terminals in case the certified pilot has a plurality of drones and control terminals according to the purpose, so that each is authenticated.
본 발명의 예시적인 실시예에 따르면, 조종사가 소지한 복수의 조종 단말 및 복수의 드론에 대하여 각각 가명(假名)을 생성하고, 상기 복수의 드론 중 상기 조종사가 비행하고자 하는 제1 드론에 대한 제1 드론 가명을 추출하고, 상기 복수의 조종 단말 중 상기 비행하고자 하는 제1 드론을 조종하는 제1 조종 단말에 대한 제1 조종 단말 가명을 추출하며, 상기 추출한 제1 드론 가명 및 제1 조종 단말 가명을 상기 제1 조종 단말로 전송하는 가명 생성 장치, 상기 제1 조종 단말로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명을 수신하고, 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 대하여 각각 인증서를 생성하는 발급 서버 및 상기 제1 조종 단말로부터 상기 조종자에 의해 생성된 비행 승인 요청 정보를 수신하고, 상기 비행 승인 요청 정보를 기반으로 상기 제1 드론의 비행을 승인하는 비행 승인 정보를 생성하는 승인 서버를 포함하는 드론 인증 시스템이 제공된다.According to an exemplary embodiment of the present invention, a pseudonym is generated for each of a plurality of control terminals and a plurality of drones possessed by a pilot, and a first drone for a first drone that the pilot intends to fly among the plurality of drones 1 drone pseudonym is extracted, and a first control terminal pseudonym for a first control terminal that controls the first drone to fly is extracted from among the plurality of control terminals, and the extracted first drone pseudonym and first control terminal pseudonym a pseudonym generator for transmitting to the first manipulation terminal, receiving the first manipulation terminal pseudonym and the first drone pseudonym from the first manipulation terminal, and the first manipulation terminal pseudonym and the first drone pseudonym, respectively Receiving flight approval request information generated by the operator from an issuing server generating a certificate and the first control terminal, and generating flight approval information for authorizing flight of the first drone based on the flight approval request information A drone authentication system including an approval server is provided.
발급 서버는 상기 제1 조종 단말로부터 수신한 제1 조종 단말 가명에 블라인드 서명(Blind Signature)을 수행하여 상기 제1 조종 단말 가명에 대한 제1 조종 단말 가명 인증서를 생성하며, 상기 제1 조종 단말로부터 수신한 제1 드론 가명에 블라인드 서명을 수행하여 상기 제1 드론 가명에 대한 제1 드론 가명 인증서를 생성할 수 있다.The issuing server performs a blind signature on the pseudonym of the first manipulation terminal received from the first manipulation terminal to generate a first manipulation terminal pseudonym certificate for the pseudonym of the first manipulation terminal. A blind signature may be performed on the received first drone pseudonym to generate a first drone pseudonym certificate for the first drone pseudonym.
상기 제1 조종 단말 가명 및 상기 제1 드론 가명은 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성되며, 상기 승인 서버는 상기 발급 서버로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 사용된 공개키를 수신하여 상기 비행 승인 요청 정보에 포함된 상기 조종 단말 가명 인증서 및 상기 드론 가명 인증서의 유효성을 확인하고, 상기 유효성이 확인되면 상기 제1 드론의 비행을 승인할 수 있다.The first pilot terminal pseudonym and the first drone pseudonym are formed of a plurality of key pairs composed of a public key and a private key, and the approval server obtains information from the issuing server used for the first pilot terminal pseudonym and the first drone pseudonym. The public key is received to check the validity of the pilot terminal pseudonym certificate and the drone pseudonym certificate included in the flight approval request information, and if the validity is confirmed, the flight of the first drone can be approved.
상기 승인 서버는 상기 제1 조종 단말로부터 수신한 비행 승인 요청 정보 및 기 저장된 암호키를 바탕으로 조종 단말 식별 정보 및 드론 식별 정보를 생성하고, 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 상기 제1 조종 단말로 전송하며, 상기 제1 조종 단말은 상기 제1 드론으로 상기 드론 식별 정보 및 상기 비행 승인 정보를 전송하며, 상기 드론 인증 시스템은 상기 승인 서버로부터 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 수신하고, 상기 제1 조종 단말 및 상기 제1 드론에 대한 등록을 수행하는 인증 서버를 더 포함할 수 있다.The approval server generates pilot terminal identification information and drone identification information based on the flight approval request information received from the first pilot terminal and the pre-stored encryption key, and the pilot terminal identification information, the drone identification information, and the flight approval information is transmitted to the first control terminal, the first control terminal transmits the drone identification information and the flight approval information to the first drone, and the drone authentication system transmits the control terminal identification information from the approval server; An authentication server receiving the drone identification information and flight approval information and registering the first pilot terminal and the first drone may be further included.
상기 제1 드론은 상기 제1 조종 단말로부터 수신한 조종 정보에 따라 비행하여 비행 기록 정보를 생성하고, 생성한 상기 비행 기록 정보를 상기 인증 서버로 전송하며, 상기 인증 서버는 상기 제1 드론을 조종하는 상기 제1 조종 단말로부터 기 설정된 주기마다 상기 조종 단말 식별 정보 및 조종 정보를 수신하고, 상기 제1 드론으로부터 상기 드론 식별 정보 및 상기 비행 기록 정보를 수신하며, 상시 수신한 조종 단말 식별 정보, 조종 정보, 드론 식별 정보 및 비행 기록 정보를 기반으로 상기 제1 조종 단말 및 상기 제1 드론에 대한 검증을 수행할 수 있다.The first drone flies according to the control information received from the first control terminal to generate flight record information, transmits the generated flight record information to the authentication server, and the authentication server controls the first drone. receives the control terminal identification information and control information at predetermined intervals from the first control terminal, and receives the drone identification information and flight record information from the first drone; Verification of the first control terminal and the first drone may be performed based on information, drone identification information, and flight record information.
상기 인증 서버는 제1 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 조종 단말 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 조종 단말의 조종 패턴 정보를 생성하고, 제2 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 드론 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 드론의 비행 패턴 정보를 생성하며, 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 생성된 제1 조종 단말의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 상기 제1 조종 단말에 대한 검증을 수행하고, 상기 생성된 제1 드론의 비행 패턴 정보와 생성된 제1 드론의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교하여 상기 제1 드론에 대한 검증을 수행할 수 있다.The authentication server generates steering pattern information of the first control terminal from the control terminal identification information and the flight record information received at predetermined intervals through a first machine learning model, and is preset through a second machine learning model. Flight pattern information of the first drone is generated from the drone identification information and the flight record information received every period, and the generated control pattern information of the first control terminal and the generated control pattern information of the first control terminal The corresponding pre-stored control pattern information for each control terminal is compared to verify the first control terminal, and the pre-stored flight pattern information corresponding to the generated flight pattern information of the first drone and the generated flight pattern information of the first drone is verified. The first drone may be verified by comparing flight pattern information for each drone.
상기 인증 서버는 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 상기 생성된 제1 드론의 비행 패턴 정보와 상기 기 저장된 드론별 비행 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하며, 상기 제1 조종 단말에 대한 오차 범위 및 상기 제1 드론에 대한 오차 범위 중 적어도 하나가 기 설정된 오차 범위를 초과하는 경우, 드론 회수 정보를 생성할 수 있다.The authentication server compares the generated control pattern information of the first control terminal with the pre-stored control pattern information for each control terminal to determine whether it is within a preset error range, and compares the generated flight pattern information of the first drone with the control pattern information It compares stored flight pattern information for each drone to determine whether it is within a preset error range, and if at least one of the error range for the first pilot terminal and the error range for the first drone exceeds the preset error range, the drone Recovery information can be created.
본 발명의 다른 예시적인 실시예에 따르면, 가명 생성 장치에서, 조종사가 소지한 복수의 조종 단말 및 복수의 드론에 대하여 각각 가명(假名)을 생성하고, 상기 복수의 드론 중 상기 조종사가 비행하고자 하는 제1 드론에 대한 제1 드론 가명을 추출하고, 상기 복수의 조종 단말 중 상기 비행하고자 하는 제1 드론을 조종하는 제1 조종 단말에 대한 제1 조종 단말 가명을 추출하며, 상기 추출한 제1 드론 가명 및 제1 조종 단말 가명을 상기 제1 조종 단말로 전송하는 단계, 발급 서버에서, 상기 제1 조종 단말로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명을 수신하고, 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 대하여 각각 인증서를 생성하는 단계 및 승인 서버에서, 상기 제1 조종 단말로부터 상기 조종자에 의해 생성된 비행 승인 요청 정보를 수신하고, 상기 비행 승인 요청 정보를 기반으로 상기 제1 드론의 비행을 승인하는 비행 승인 정보를 생성하는 단계를 포함하는 드론 인증 방법이 제공된다.According to another exemplary embodiment of the present invention, in the pseudonym generating device, a pseudonym is generated for a plurality of control terminals and a plurality of drones possessed by a pilot, respectively, and among the plurality of drones, the pilot wants to fly Extracting a first drone pseudonym for the first drone, extracting a first piloting terminal pseudonym for a first control terminal controlling the first drone to fly among the plurality of control terminals, and extracting the extracted first drone pseudonym and transmitting the first manipulation terminal pseudonym to the first manipulation terminal, an issuing server receiving the first manipulation terminal pseudonym and the first drone pseudonym from the first manipulation terminal, and the first manipulation terminal pseudonym and Generating certificates for each pseudonym of the first drone, and in an approval server, receiving flight approval request information generated by the operator from the first control terminal, and based on the flight approval request information, the first drone There is provided a drone authentication method including the step of generating flight approval information authorizing the flight of.
상기 인증서를 생성하는 단계는 상기 발급 서버에서, 상기 제1 조종 단말로부터 수신한 제1 조종 단말 가명에 블라인드 서명(Blind Signature)을 수행하여 상기 제1 조종 단말 가명에 대한 제1 조종 단말 가명 인증서를 생성하는 단계, 및 상기 발급 서버에서, 상기 제1 조종 단말로부터 수신한 제1 드론 가명에 블라인드 서명을 수행하여 상기 제1 드론 가명에 대한 제1 드론 가명 인증서를 생성하는 단계를 포함할 수 있다.The generating of the certificate may include, in the issuing server, performing a blind signature on the pseudonym of the first manipulation terminal received from the first manipulation terminal to obtain a first manipulation terminal pseudonym certificate for the pseudonym of the first manipulation terminal. generating, and generating, in the issuing server, a first drone pseudonym certificate for the first drone pseudonym by performing a blind signature on the first drone pseudonym received from the first pilot terminal.
상기 제1 조종 단말 가명 및 상기 제1 드론 가명은 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성되며, 상기 비행 승인 정보를 생성하는 단계는 상기 승인 서버에서, 상기 발급 서버로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 사용된 공개키를 수신하여 상기 비행 승인 요청 정보에 포함된 상기 조종 단말 가명 인증서 및 상기 드론 가명 인증서의 유효성을 확인하는 단계, 및 상기 승인 서버에서 상기 유효성이 확인되면 상기 제1 드론의 비행을 승인하는 단계를 더 포함할 수 있다.The first control terminal pseudonym and the first drone pseudonym are formed of a plurality of key pairs composed of a public key and a private key, and the step of generating the flight approval information is performed by the approval server and the first control terminal from the issuance server. Receiving a pseudonym and a public key used for the first drone pseudonym to verify validity of the pilot terminal pseudonym certificate and the drone pseudonym certificate included in the flight approval request information, and when the validation server confirms the validity The method may further include authorizing flight of the first drone.
상기 비행 승인 정보를 생성하는 단계는 상기 승인 서버에서, 상기 제1 조종 단말로부터 수신한 비행 승인 요청 정보 및 기 저장된 암호키를 바탕으로 조종 단말 식별 정보 및 드론 식별 정보를 생성하고, 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 상기 제1 조종 단말로 전송하는 단계를 더 포함하며, 상기 드론 인증 방법은 상기 제1 조종 단말에서, 상기 제1 드론으로 상기 드론 식별 정보 및 상기 비행 승인 정보를 전송하는 단계, 및 인증 서버에서, 상기 승인 서버로부터 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 수신하고, 상기 제1 조종 단말 및 상기 제1 드론에 대한 등록을 수행하는 단계를 더 포함할 수 있다.In the generating of the flight approval information, the approval server generates control terminal identification information and drone identification information based on the flight approval request information received from the first control terminal and a pre-stored encryption key, and the control terminal identification information, the drone identification information, and the flight approval information, and transmitting the drone identification information and the flight approval information from the first control terminal to the first drone. Transmitting approval information, and in an authentication server, receiving the control terminal identification information, drone identification information, and flight approval information from the approval server, and registering the first control terminal and the first drone. It may further include steps to do.
상기 드론 인증 방법은 상기 제1 드론에서, 상기 제1 조종 단말로부터 수신한 조종 정보에 따라 비행하여 비행 기록 정보를 생성하고, 생성한 상기 비행 기록 정보를 상기 인증 서버로 전송하는 단계를 더 포함하며, 상기 등록을 수행하는 단계는 상기 인증 서버에서, 상기 제1 드론을 조종하는 상기 제1 조종 단말로부터 기 설정된 주기마다 상기 조종 단말 식별 정보 및 조종 정보를 수신하고, 상기 제1 드론으로부터 상기 드론 식별 정보 및 상기 비행 기록 정보를 수신하는 단계, 및 상기 인증 서버에서, 상시 수신한 조종 단말 식별 정보, 조종 정보, 드론 식별 정보 및 비행 기록 정보를 기반으로 상기 제1 조종 단말 및 상기 제1 드론에 대한 검증을 수행하는 단계를 더 포함할 수 있다.The drone authentication method further includes generating flight record information by flying in the first drone according to the control information received from the first control terminal, and transmitting the generated flight record information to the authentication server; , In the step of performing the registration, the authentication server receives the control terminal identification information and control information from the first control terminal that controls the first drone at predetermined intervals, and identifies the drone from the first drone. information and the flight record information, and the authentication server for the first pilot terminal and the first drone based on the constantly received pilot terminal identification information, pilot information, drone identification information, and flight record information. A verification step may be further included.
상기 등록을 수행하는 단계는 상기 인증 서버에서, 제1 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 조종 단말 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 조종 단말의 조종 패턴 정보를 생성하고, 제2 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 드론 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 드론의 비행 패턴 정보를 생성하는 단계, 및 상기 인증 서버에서, 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 생성된 제1 조종 단말의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 상기 제1 조종 단말에 대한 검증을 수행하고, 상기 생성된 제1 드론의 비행 패턴 정보와 생성된 제1 드론의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교하여 상기 제1 드론에 대한 검증을 수행하는 단계를 더 포함할 수 있다.The performing of the registration may include generating, in the authentication server, control pattern information of the first control terminal from the control terminal identification information and the flight record information received at predetermined intervals through a first machine learning model; and 2 Generating flight pattern information of the first drone from the drone identification information and flight record information received at predetermined intervals through a machine learning model, and controlling the generated first control terminal in the authentication server Verification of the first control terminal is performed by comparing the pattern information with pre-stored control pattern information for each control terminal corresponding to the generated control pattern information of the first control terminal, and the generated flight pattern information of the first drone The method may further include verifying the first drone by comparing flight pattern information for each drone previously stored corresponding to the generated flight pattern information of the first drone.
상기 등록을 수행하는 단계는 상기 인증 서버에서, 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 상기 생성된 제1 드론의 비행 패턴 정보와 상기 기 저장된 드론별 비행 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하는 단계, 및 상기 인증 서버에서, 상기 제1 조종 단말에 대한 오차 범위 및 상기 제1 드론에 대한 오차 범위 중 적어도 하나가 기 설정된 오차 범위를 초과하는 경우, 드론 회수 정보를 생성하는 단계를 더 포함할 수 있다.In the performing of the registration, the authentication server compares the generated control pattern information of the first control terminal with the pre-stored control pattern information for each control terminal, determines whether or not it is within a preset error range, and Comparing the flight pattern information of the drone with the flight pattern information of each drone stored in advance to determine whether or not it is within a preset error range, and in the authentication server, the error range for the first pilot terminal and the error for the first drone When at least one of the ranges exceeds a preset error range, the method may further include generating drone recovery information.
본 발명의 실시예들에 따르면, 인증된 드론 및 조종 단말에 드론 비행을 허가하고, 드론의 비행 중에도 드론 및 조종 단말에 대한 인증을 지속적으로 수행함으로써, 드론이 불법 행위에 악용되는 것을 방지하고, 드론에 대한 공격(해킹)을 방지할 수 있다.According to the embodiments of the present invention, drone flight is permitted to the authenticated drone and control terminal, and authentication of the drone and control terminal is continuously performed even during the flight of the drone, thereby preventing the drone from being abused for illegal activities, Attacks (hacking) on drones can be prevented.
또한, 본 발명의 실시예들에 따르면, 다수의 드론 및 조종 단말로부터 수집되는 데이터를 따로 관리하여 각각 인증되도록 함으로써, 조종사가 목적에 따라 다수의 드론 및 조종 단말을 가지는 경우에도 조종사에 대한 인증을 정확하게 수행할 수 있다. In addition, according to the embodiments of the present invention, data collected from a plurality of drones and control terminals is separately managed and each is authenticated, so that even when a pilot has a plurality of drones and control terminals according to the purpose, pilot authentication is performed. can be done accurately.
도 1은 본 발명의 일 실시예에 따른 드론 인증 시스템을 설명하기 위한 구성도
도 2는 본 발명의 일 실시예에 따른 드론을 설명하기 위한 블록도
도 3은 본 발명의 일 실시예에 따른 발급 서버를 설명하기 위한 블록도
도 4는 본 발명의 일 실시예에 따른 승인 서버를 설명하기 위한 블록도
도 5는 본 발명의 일 실시예에 따른 인증 서버를 설명하기 위한 블록도
도 6은 본 발명의 일 실시예에 따른 드론 인증 시스템에서 인증서 발급 방법을 나타낸 흐름도
도 7은 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행에 대한 승인 방법을 나타낸 흐름도
도 8은 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행을 위한 인증 방법을 나타낸 흐름도
도 9는 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행 중 검증 방법을 나타낸 흐름도
도 10은 도 9의 검증 정보 생성 단계의 일 실시예를 설명하기 위한 흐름도
도 11은 도 9의 검증 정보 생성 단계의 다른 실시예를 설명하기 위한 흐름도
도 12는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도1 is a configuration diagram for explaining a drone authentication system according to an embodiment of the present invention
2 is a block diagram for explaining a drone according to an embodiment of the present invention;
Figure 3 is a block diagram for explaining the issuing server according to an embodiment of the present invention
Figure 4 is a block diagram for explaining an approval server according to an embodiment of the present invention
5 is a block diagram for explaining an authentication server according to an embodiment of the present invention.
6 is a flowchart showing a certificate issuance method in a drone authentication system according to an embodiment of the present invention.
7 is a flowchart showing a drone flight approval method of a drone authentication system according to an embodiment of the present invention.
8 is a flowchart illustrating an authentication method for drone flight of a drone authentication system according to an embodiment of the present invention.
9 is a flowchart illustrating a drone in-flight verification method of a drone authentication system according to an embodiment of the present invention.
10 is a flowchart for explaining an embodiment of the verification information generation step of FIG. 9
11 is a flowchart for explaining another embodiment of the verification information generating step of FIG. 9
12 is a block diagram illustrating and describing a computing environment including a computing device suitable for use in example embodiments.
이하, 도면을 참조하여 본 발명의 구체적인 실시형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.Hereinafter, specific embodiments of the present invention will be described with reference to the drawings. The detailed descriptions that follow are provided to provide a comprehensive understanding of the methods, devices and/or systems described herein. However, this is only an example and the present invention is not limited thereto.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.In describing the embodiments of the present invention, if it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. In addition, terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of a user or operator. Therefore, the definition should be made based on the contents throughout this specification. Terminology used in the detailed description is only for describing the embodiments of the present invention and should in no way be limiting. Unless expressly used otherwise, singular forms of expression include plural forms. In this description, expressions such as "comprising" or "comprising" are intended to indicate any characteristic, number, step, operation, element, portion or combination thereof, one or more other than those described. It should not be construed to exclude the existence or possibility of any other feature, number, step, operation, element, part or combination thereof.
한편, 본 발명의 실시예는 본 명세서에서 기술한 방법들을 컴퓨터상에서 수행하기 위한 프로그램, 및 상기 프로그램을 포함하는 컴퓨터 판독 가능 기록매체를 포함할 수 있다. 상기 컴퓨터 판독 가능 기록매체는 프로그램 명령, 로컬 데이터 파일, 로컬 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나, 또는 컴퓨터 소프트웨어 분야에서 통상적으로 사용 가능한 것일 수 있다. 컴퓨터 판독 가능 기록매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광 기록 매체, 및 롬, 램, 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성 된 하드웨어 장치가 포함된다. 상기 프로그램의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.Meanwhile, embodiments of the present invention may include a program for performing the methods described in this specification on a computer, and a computer readable recording medium including the program. The computer readable recording medium may include program instructions, local data files, local data structures, etc. alone or in combination. The media may be specially designed and configured for the present invention, or may be commonly available in the field of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and specially configured to store and execute program instructions such as ROM, RAM, and flash memory. hardware devices included. Examples of the program may include not only machine language codes generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter.
한편, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 드론(120)을 제어하기 위한 컨트롤러가 조종 단말(무선 통신을 사용할 수 있는 스마트 폰, 태블릿 PC 등)인 것을 일 예로 하여 설명하기로 한다. 또한, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 조종사가 목적에 따라 복수의 조종 단말(120) 및 복수의 드론(130)을 소지하는 것을 일 예로 하여 설명하기로 한다.Meanwhile, in the drone authentication system 100 according to an embodiment of the present invention, the controller for controlling the drone 120 is a control terminal (smart phone, tablet PC, etc. that can use wireless communication) as an example to explain do it with In addition, the drone authentication system 100 according to an embodiment of the present invention will be described as an example in which a pilot possesses a plurality of control terminals 120 and a plurality of drones 130 according to a purpose.
도 1은 본 발명의 일 실시예에 따른 드론 인증 시스템을 설명하기 위한 구성도이고, 도 2는 본 발명의 일 실시예에 따른 드론을 설명하기 위한 블록도이며, 도 3은 본 발명의 일 실시예에 따른 발급 서버를 설명하기 위한 블록도이며, 도 4는 본 발명의 일 실시예에 따른 승인 서버를 설명하기 위한 블록도이며, 도 5는 본 발명의 일 실시예에 따른 인증 서버를 설명하기 위한 블록도이다.1 is a configuration diagram for explaining a drone authentication system according to an embodiment of the present invention, FIG. 2 is a block diagram for explaining a drone according to an embodiment of the present invention, and FIG. 3 is an embodiment of the present invention. It is a block diagram for explaining an issuing server according to an example, FIG. 4 is a block diagram for explaining an approval server according to an embodiment of the present invention, and FIG. 5 is a block diagram for explaining an authentication server according to an embodiment of the present invention. It is a block diagram for
도 1 내지 도 5에 도시된 바와 같이, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 가명 생성 장치(110), 복수의 조종 단말(120), 복수의 드론(130), 발급 서버(140), 승인 서버(150) 및 인증 서버(160)를 포함할 수 있다. 1 to 5, the drone authentication system 100 according to an embodiment of the present invention includes a pseudonym generating device 110, a plurality of control terminals 120, a plurality of drones 130, an issuance server (140), an approval server 150 and an authentication server 160 may be included.
가명 생성 장치(110), 복수의 조종 단말(120), 복수의 드론(130), 발급 서버(140), 승인 서버(150) 및 인증 서버(160)는 각각 통신 네트워크를 사용하여 연결됨에 따라, 통신가능할 수 있다.As the pseudonym generator 110, the plurality of control terminals 120, the plurality of drones 130, the issuance server 140, the approval server 150, and the authentication server 160 are each connected using a communication network, communication may be possible.
몇몇 실시 예들에서, 통신 네트워크는 인터넷, 하나 이상의 로컬 영역 네트워크(local area networks), 광역 네트워크(wire area networks), 셀룰러 네트워크, 모바일 네트워크, 그 밖에 다른 종류의 네트워크들, 또는 이러한 네트워크들의 조합을 포함할 수 있다.In some embodiments, the communication network includes the Internet, one or more local area networks, wire area networks, cellular networks, mobile networks, other types of networks, or combinations of these networks. can do.
가명 생성 장치(110)는 조종사가 소지한 복수의 조종 단말(120) 및 복수의 드론(130)에 대하여 각각 가명(假名)(가상의 ID)을 생성할 수 있다. 여기서, 가상의 ID는 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성될 수 있다. 가명 생성 장치(110)는 인터넷 또는 모바일 접속용 단말로, 예를 들어, 데스크톱, 노트북 등의 PC, 스마트폰, 태블릿 등의 휴대 단말 등을 포함하여, 인터넷 또는 모바일 접속이 가능한 모든 장치를 포함할 수 있다.The pseudonym generating device 110 may generate pseudonyms (virtual IDs) for each of the plurality of control terminals 120 and the plurality of drones 130 possessed by the pilot. Here, the virtual ID may be formed of a plurality of key pairs composed of a public key and a private key. The pseudonym generating device 110 is a terminal for Internet or mobile access, and may include, for example, all devices capable of Internet or mobile access, including PCs such as desktops and laptops, mobile terminals such as smartphones and tablets, etc. can
또한, 가명 생성 장치(110)는 복수의 조종 단말(120)에 대하여 각각 생성된 조종 단말 가명을 각각의 조종 단말(120)로 전송할 수 있다. 또한, 가명 생성 장치(110)는 복수의 드론(130)에 대하여 각각 생성된 드론 가명을 복수의 조종 단말(120)로 각각 전송할 수 있다. 예를 들어, 가명 생성 장치(110)는 복수의 드론(130) 중 조종사가 비행하고자 하는 드론(제1 드론)에 대한 드론 가명을 추출하고, 복수의 조종 단말(120) 중 비행하고자 하는 드론을 조종하는 조종 단말(제1 조종 단말)에 대한 조종 단말 가명을 추출할 수 있다. 또한, 가명 생성 장치(110)는 추출한 드론 가명 및 조종 단말 가명을 비행하고자 하는 드론을 조종하는 조종 단말로 전송할 수 있다.Also, the pseudonym generating device 110 may transmit the pseudonyms of the control terminals respectively generated for the plurality of control terminals 120 to each control terminal 120 . In addition, the pseudonym generating device 110 may transmit drone pseudonyms generated for each of the plurality of drones 130 to the plurality of control terminals 120 , respectively. For example, the pseudonym generating device 110 extracts a drone pseudonym for a drone (first drone) that a pilot wants to fly among a plurality of drones 130, and selects a drone to fly among a plurality of control terminals 120. A pseudonym of the controlling terminal for the controlling terminal (first controlling terminal) may be extracted. Also, the pseudonym generating device 110 may transmit the extracted drone pseudonym and control terminal pseudonym to a control terminal that controls a drone to fly.
한편, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 가명 생성 장치(110) 및 조종 단말(120) 각각의 기능을 독립적으로 수행하는 형태로 하지만, 가명 생성 장치(110) 및 조종 단말(120) 각각의 기능을 하나의 장치에서 수행할 수 있다.Meanwhile, the drone authentication system 100 according to an embodiment of the present invention is in the form of independently performing the functions of the pseudonym generator 110 and the control terminal 120, but the pseudonym generator 110 and the control terminal (120) Each function can be performed in one device.
복수의 조종 단말(120)은 드론을 조종하고자 하는 조종사의 단말기들일 수 있다. 조종 단말(120)은 인터넷 또는 모바일 접속용 단말로, 예를 들어, 데스크톱, 노트북 등의 PC, 스마트폰, 태블릿 등의 휴대 단말 등을 포함하여, 인터넷 또는 모바일 접속이 가능한 모든 장치를 포함할 수 있다. 복수의 조종 단말(120)은 가명 생성 장치(110), 복수의 드론(130), 발급 서버(140), 승인 서버(150) 및 인증 서버(160)와 무선 통신을 이용하여 데이터 통신을 수행할 수 있다.The plurality of control terminals 120 may be terminals of pilots who want to control the drone. The control terminal 120 is a terminal for internet or mobile access, and may include, for example, any device capable of accessing the internet or mobile, including PCs such as desktops and laptops, portable terminals such as smart phones and tablets, and the like. there is. The plurality of control terminals 120 perform data communication with the pseudonym generator 110, the plurality of drones 130, the issuance server 140, the approval server 150, and the authentication server 160 using wireless communication. can
또한, 복수의 조종 단말(120)은 드론 인증 서비스를 제공하기 위한 어플리케이션이 각각 설치될 수 있다. 상기 어플리케이션은 조종 단말(120)의 컴퓨터 판독 가능 저장 매체에 저장될 수 있다. 상기 어플리케이션은 조종 단말(120)의 프로세서에 의해 실행 가능한 명령어의 소정의 집합을 포함한다. 상기 명령어는 조종 단말(120)의 프로세서로 하여금 예시적인 실시예에 따른 동작을 수행하게 할 수 있다. 조종 단말(120)의 컴퓨터 판독 가능 저장 매체는 조종 단말(120) 상에서 상기 어플리케이션과 같은 명령어 집합을 실행하기 위한 운영 체제의 컴포넌트들을 포함한다. 예를 들어, 이러한 운영 체제는 애플(Apple) 사의 iOS 또는 구글(Google) 사의 Android 일 수 있다.In addition, an application for providing a drone authentication service may be installed in each of the plurality of control terminals 120 . The application may be stored in a computer readable storage medium of the control terminal 120 . The application includes a predetermined set of commands executable by the processor of the control terminal 120 . The command may cause the processor of the control terminal 120 to perform an operation according to an exemplary embodiment. The computer readable storage medium of the control terminal 120 includes components of an operating system for executing a set of instructions such as the application on the control terminal 120 . For example, such an operating system may be Apple's iOS or Google's Android.
여기서, 드론 인증 서비스를 제공하기 위한 어플리케이션은 조종사가 드론(130)을 비행하기 위하여 비행 승인 요청 정보를 입력할 수 있는 입력 인터페이스(예를 들어, 다수의 메뉴 중 선택, 키 입력)을 제공할 수 있다. 예를 들어, 비행 승인 요청 정보는 조종 단말 정보, 드론 정보 및 비행 계획 정보를 포함할 수 있다. 조종 단말 정보는 조종 단말 가명, 조종 단말 가명 인증서, 비행 이력, 조종 단말의 모델명 등을 포함할 수 있다. 드론 정보는 드론의 모델명, 규격, 제작사, 드론 가명 및 드론 가명 인증서를 포함할 수 있다. 비행 계획 정보는 드론 조종 위치(출발 위치, 도착 위치), 드론 조종 시간 등을 포함할 수 있다.Here, the application for providing the drone authentication service may provide an input interface (eg, selection from a plurality of menus, key input) through which the pilot may input flight approval request information to fly the drone 130. there is. For example, the flight approval request information may include control terminal information, drone information, and flight plan information. The pilot terminal information may include a pilot terminal pseudonym, a pilot terminal pseudonym certificate, a flight history, a model name of the pilot terminal, and the like. The drone information may include the model name, specifications, manufacturer, drone pseudonym, and drone pseudonym certificate of the drone. The flight plan information may include a drone control position (departure position, arrival position), drone control time, and the like.
또한, 조종 단말(120)은 가명 생성 장치(110)로부터 조종 단말 가명을 수신할 수 있다. 조종 단말(120)은 조종 단말 가명을 발급 서버(140)로 전송할 수 있으며, 발급 서버(140)로부터 조종 단말 가명에 대한 조종 단말 가명 인증서를 수신할 수 있다.Also, the control terminal 120 may receive the control terminal pseudonym from the pseudonym generating device 110 . The control terminal 120 may transmit the control terminal pseudonym to the issuance server 140 and may receive a control terminal pseudonym certificate for the control terminal pseudonym from the issuance server 140 .
또한, 조종 단말(120)은 가명 생성 장치(110)로부터 복수의 드론 가명을 수신할 수 있다. 조종 단말(120)은 복수의 드론 가명 중 비행하고자 하는 드론의 가명(제1 드론 가명)을 발급 서버(140)로 전송할 수 있으며, 발급 서버(140)로부터 제1 드론 가명에 대한 제1 드론 가명 인증서를 수신할 수 있다.Also, the control terminal 120 may receive a plurality of drone pseudonyms from the pseudonym generating device 110 . The control terminal 120 may transmit the pseudonym (first drone pseudonym) of a drone to be flown among a plurality of drone pseudonyms to the issuing server 140, and the first drone pseudonym for the first drone pseudonym from the issuing server 140 You can receive a certificate.
또한, 조종 단말(120)은 비행 승인 요청 정보를 승인 서버(150)로 전송하고, 승인 서버(150)로부터 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 수신할 수 있다. 또한, 조종 단말(120)은 드론 식별 정보 및 비행 승인 정보를 드론(130)으로 전송할 수 있다. 여기서, 조종 단말 식별 정보는 조종 단말(120)에 할당되어 조종 단말(120)을 식별할 수 있는 고유 정보일 수 있다. 드론 식별 정보는 드론(130)에 할당되어 드론(130)을 식별할 수 있는 고유 정보일 수 있다. 조종 단말 식별 정보 및 드론 식별 정보는 승인 서버(150)에서 비행 승인 요청 정보 및 암호키를 이용하여 조종 단말 정보 및 드론 정보가 각각 암호화된 해쉬 함수(hash function)일 수 있다. 비행 승인 정보는 비행 계획 정보를 포함할 수 있다.In addition, the control terminal 120 may transmit flight approval request information to the approval server 150 and receive control terminal identification information, drone identification information, and flight approval information from the approval server 150 . In addition, the control terminal 120 may transmit drone identification information and flight approval information to the drone 130 . Here, the control terminal identification information may be unique information that is allocated to the control terminal 120 and can identify the control terminal 120 . The drone identification information may be unique information for identifying the drone 130 by being assigned to the drone 130 . The pilot terminal identification information and the drone identification information may be a hash function in which the pilot terminal information and the drone information are each encrypted using flight approval request information and an encryption key in the approval server 150 . Flight approval information may include flight plan information.
또한, 조종 단말(120)은 인증 서버(160)로 조종 단말 식별 정보를 전송할 수 있으며, 인증 서버(160)로부터 인증 정보를 수신할 수 있다. 또한, 조종 단말(120)은 드론(130)을 조종하고자 하는 조종사의 조작에 의하여 조종 정보를 드론(130)으로 전송하여 드론(130)을 조종할 수 있다. 조종 단말(120)은 조종 정보를 저장하고, 기 설정된 주기마다 조종 단말 식별 정보 및 조종 정보를 인증 서버(160)로 전송할 수 있다. 여기서, 조종 정보는 드론(130)의 이륙, 착륙, 고도 제어, 방향 제어, 속도 제어 등을 포함할 수 있다.Also, the control terminal 120 may transmit identification information of the control terminal to the authentication server 160 and may receive authentication information from the authentication server 160 . In addition, the control terminal 120 may control the drone 130 by transmitting control information to the drone 130 by manipulation of a pilot who wants to control the drone 130 . The control terminal 120 may store control information and transmit the control terminal identification information and control information to the authentication server 160 at predetermined intervals. Here, the steering information may include take-off, landing, altitude control, direction control, and speed control of the drone 130 .
드론(130)은 사람의 탑승 없이 원격으로 조종 가능한 무인 비행체로서, 통신부(131), 저장부(132), 비행 제어부(133) 및 비행 기록 생성부(134)을 포함할 수 있다.The drone 130 is an unmanned aerial vehicle that can be controlled remotely without a human being on board, and may include a communication unit 131, a storage unit 132, a flight control unit 133, and a flight record generator 134.
한편, 본 실시예에서 드론(130)은 통신부(131), 저장부(132), 비행 제어부(133) 및 비행 기록 생성부(134)만을 포함하는 것으로 기재하고 있으나, 이는 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 드론(130)에 포함되는 구성 요소에 대하여 다양하게 수정 및 변형하여 적용 가능할 것이다. Meanwhile, in this embodiment, the drone 130 is described as including only the communication unit 131, the storage unit 132, the flight control unit 133, and the flight record generation unit 134, but this is the technical concept of the present embodiment. This is merely illustrative, and those skilled in the art to which this embodiment pertains apply various modifications and variations to the components included in the drone 130 to the extent that does not deviate from the essential characteristics of this embodiment. It will be possible.
개시되는 실시예에서, 드론(130)은 본 발명이 속한 기술 분야에서 일반적으로 널리 알려져 있는 무인 비행체를 이용할 수 있다. 무인 비행체의 상세 구성은 본 발명이 속한 기술 분야에서 널리 알려져 있는바 이에 대한 자세한 설명은 생략하도록 한다. In the disclosed embodiment, the drone 130 may use an unmanned air vehicle generally known in the art to which the present invention belongs. Since the detailed configuration of the unmanned air vehicle is widely known in the art to which the present invention belongs, a detailed description thereof will be omitted.
통신부(131)는 조종 단말(120)과 네트워크를 통하여 데이터 통신을 수행할 수 있으며, 조종 단말(120)로부터 조종 정보, 비행 승인 정보 및 드론 식별 정보를 수신할 수 있다. The communication unit 131 may perform data communication with the control terminal 120 through a network, and may receive control information, flight approval information, and drone identification information from the control terminal 120 .
통신부(131)는 인증 서버(160)와 네트워크를 통하여 데이터 통신을 수행할 수 있다. 통신부(131)는 인증 서버(160)로 드론 식별 정보 및 비행 승인 정보를 전송할 수 있으며, 인증 서버(160)로부터 인증 정보를 수신할 수 있다. 또한, 통신부(131)는 인증 서버(160)로 기 설정된 주기마다 드론 식별 정보 및 비행 기록 정보를 전송할 수 있다. 또한, 통신부(131)는 인증 서버(160)로부터 드론 회수 정보를 수신할 수 있다.The communication unit 131 may perform data communication with the authentication server 160 through a network. The communication unit 131 may transmit drone identification information and flight approval information to the authentication server 160 and may receive authentication information from the authentication server 160 . In addition, the communication unit 131 may transmit drone identification information and flight record information to the authentication server 160 at predetermined intervals. Also, the communication unit 131 may receive drone collection information from the authentication server 160 .
저장부(132)는 통신부(131)를 통하여 수신한 드론 식별 정보 및 비행 승인 정보를 저장할 수 있다. 또한, 저장부(132)는 비행 기록 생성부(134)에서 생성된 비행 기록 정보를 저장할 수 있다. The storage unit 132 may store drone identification information and flight approval information received through the communication unit 131 . Also, the storage unit 132 may store flight record information generated by the flight record generator 134 .
비행 제어부(133)는 조종 단말(120)로부터 수신되는 조종 정보에 따라 드론(130)의 비행(예를 들어, 이륙, 착륙, 고도 제어, 방향 제어, 속도 제어) 및 기능(예를 들어, 영상 촬영, 온도 측정, 물체 포획등)을 제어할 수 있다. 이를 위해, 비행 제어부(133)는 드론(130)의 동작 전원을 공급하는 전원부, 드론(130)의 비행을 제어하기 위한 구동부, 기능 수행을 위한 기능 제어부 등을 포함할 수 있다. 여기서, 구동부는 복수의 모터들 및 프로펠러들을 포함할 수 있으며, 각 모터는 조종 정보에 의해 정해지는 속도로 해당 프로펠러를 회전시킬 수 있다. The flight controller 133 controls flight (eg, take-off, landing, altitude control, direction control, speed control) and functions (eg, video) of the drone 130 according to the control information received from the control terminal 120. shooting, temperature measurement, object capture, etc.) can be controlled. To this end, the flight control unit 133 may include a power supply unit for supplying operational power to the drone 130, a driving unit for controlling flight of the drone 130, and a function control unit for performing functions. Here, the drive unit may include a plurality of motors and propellers, and each motor may rotate a corresponding propeller at a speed determined by steering information.
또한, 비행 제어부(133)는 인증 서버(160)로부터 드론 회수 정보를 수신하면, 기 저장된 장소(예를 들어, 드론 스테이션 등)로 드론(130)이 이동하도록 제어할 수 있다.In addition, upon receiving drone retrieval information from the authentication server 160, the flight control unit 133 may control the drone 130 to move to a pre-stored location (eg, a drone station, etc.).
비행 기록 생성부(134)는 드론(130)이 비행한 비행 기록 정보를 생성할 수 있다. 예를 들어, 비행 기록부는 비행 지역, 방위, 속도, 가속도, 회전각, 이륙, 착륙, 비행경로, 비행 방향 및 고도 중 적어도 하나를 포함할 수 있다. 이를 위해, 비행 기록 생성부(134)는 가속도 센서, 자이로 센서, 지자계 센서 및 고도계 센서를 포함하는 IMU(Inertial Measurement Unit), 글로벌항법위성시스템(GNSS; lobal Navigation Satellite System) 모듈 등을 포함할 수 있다. 비행 기록 생성부(134)는 드론(130)의 속도, 가속도, 회전각, 위치 및 고도 중 적어도 하나를 측정하여 비행 기록 정보를 생성할 수 있다.The flight record generating unit 134 may generate flight record information of the drone 130 flying. For example, the flight recorder may include at least one of flight area, bearing, speed, acceleration, turn angle, takeoff, landing, flight path, flight direction, and altitude. To this end, the flight record generating unit 134 may include an inertial measurement unit (IMU) including an acceleration sensor, a gyro sensor, a geomagnetic sensor, and an altimeter sensor, a global navigation satellite system (GNSS) module, and the like. can The flight record generation unit 134 may generate flight record information by measuring at least one of speed, acceleration, rotation angle, position, and altitude of the drone 130 .
발급 서버(140)는 제1 통신 모듈(141), 제1 저장 모듈(142) 및 서명 모듈(143)을 포함할 수 있다.The issuance server 140 may include a first communication module 141 , a first storage module 142 and a signature module 143 .
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예건대, 상기 "모듈"은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아니다.In this specification, a module may mean a functional and structural combination of hardware for implementing the technical idea of the present invention and software for driving the hardware. For example, the "module" may refer to a logical unit of predetermined codes and hardware resources for executing the predetermined codes, and does not necessarily mean physically connected codes or one type of hardware. .
제1 통신 모듈(141)은 조종 단말(120)과 네트워크를 통하여 데이터 통신을 수행할 수 있으며, 복수의 조종 단말(120)로부터 조종 단말 가명 및 특정 드론 가명(조종사가 조종 단말을 통하여 비행하고자 하는 제1 드론)을 수신할 수 있다. 제1 통신 모듈(141)은 조종 단말(120)로 조종 단말 가명에 대한 조종 단말 가명 인증서를 전송할 수 있다. 또한, 제1 통신 모듈(141)은 조종 단말(120)로 특정 드론 가명에 대한 드론 가명 인증서를 전송할 수 있다. 또한, 제1 통신 모듈(141)은 저장된 공개키를 승인 서버(150)로 전송할 수 있다.The first communication module 141 may perform data communication with the control terminal 120 through a network, and from the plurality of control terminals 120, the pilot terminal pseudonym and a specific drone pseudonym (the pilot wants to fly through the pilot terminal) 1st drone) may be received. The first communication module 141 may transmit the control terminal pseudonym certificate for the control terminal pseudonym to the control terminal 120 . In addition, the first communication module 141 may transmit a drone pseudonym certificate for a specific drone pseudonym to the control terminal 120 . Also, the first communication module 141 may transmit the stored public key to the approval server 150 .
제1 저장 모듈(142)은 복수의 조종 단말(120)로부터 수신한 조종 단말 가명 및 드론 가명을 저장할 수 있다. 또한, 제1 저장 모듈(142)은 조종 단말 가명 및 드론 가명에 사용된 공개키를 저장할 수 있다.The first storage module 142 may store the pseudonyms of the control terminals and the pseudonyms of the drones received from the plurality of control terminals 120 . In addition, the first storage module 142 may store the public key used for the pilot terminal pseudonym and the drone pseudonym.
서명 모듈(143)은 조종 단말 가명에 블라인드 서명을 수행하여 조종 단말 가명에 대한 조종 단말 가명 인증서를 생성할 수 있다. 또한, 서명 모듈(143)은 드론 가명에 블라인드 서명을 수행하여 드론 가명에 대한 드론 가명 인증서를 생성할 수 있다.The signature module 143 may perform a blind signature on the pseudonym of the controlling terminal to generate a pseudonymous certificate of the controlling terminal for the pseudonym of the controlling terminal. In addition, the signature module 143 may generate a drone pseudonym certificate for the drone pseudonym by performing a blind signature on the drone pseudonym.
승인 서버(150)는 제2 통신 모듈(151), 제2 저장 모듈(152), 확인 모듈(153), 암호화 모듈(154) 및 드론 비행 승인 모듈(155)을 포함할 수 있다.The approval server 150 may include a second communication module 151, a second storage module 152, a confirmation module 153, an encryption module 154, and a drone flight approval module 155.
제2 통신 모듈(151)은 조종 단말(120)과 네트워크를 통하여 데이터 통신을 수행할 수 있으며, 조종 단말(120)로부터 비행 승인 요청 정보를 수신할 수 있다. 제2 통신 모듈(151)은 조종 단말(120)로 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 전송할 수 있다.The second communication module 151 may perform data communication with the control terminal 120 through a network, and may receive flight approval request information from the control terminal 120 . The second communication module 151 may transmit control terminal identification information, drone identification information, and flight approval information to the control terminal 120 .
제2 통신 모듈(151)은 인증 서버(160)와 네트워크를 통하여 데이터 통신을 수행할 수 있으며, 인증 서버(160)로 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 전송할 수 있다.The second communication module 151 may perform data communication with the authentication server 160 through a network, and transmit pilot terminal identification information, drone identification information, and flight approval information to the authentication server 160 .
제2 저장 모듈(152)은 조종 단말(120)로부터 수신한 비행 승인 요청정보를 저장할 수 있다. 제2 저장 모듈(152)은 암호화 모듈(154)로부터 생성된 조종 단말 식별 정보 및 드론 식별 정보를 저장할 수 있다.The second storage module 152 may store flight approval request information received from the control terminal 120 . The second storage module 152 may store pilot terminal identification information and drone identification information generated from the encryption module 154 .
확인 모듈(153)은 비행 승인 요청 정보에 포함된 조종 단말 가명 인증서 및 드론 가명 인증서를 확인할 수 있다. 예를 들어, 확인 모듈(153)은 발급 서버(140)로부터 수신한 공개키를 이용하여 조종 단말 가명 인증서 및 드론 가명 인증서의 유효성을 확인할 수 있다. The verification module 153 may check the pilot terminal pseudonym certificate and drone pseudonym certificate included in the flight approval request information. For example, the verification module 153 may check validity of the pilot terminal pseudonym certificate and the drone pseudonym certificate using the public key received from the issuing server 140 .
암호화 모듈(154)은 조종 단말(120)로부터 수신한 비행 승인 요청 정보 및 암호키를 바탕으로 조종 단말 정보 및 드론 정보를 각각 암호화하여 조종 단말 식별 정보 및 드론 식별 정보를 생성할 수 있다. 예를 들어, 암호화 모듈(154)은 조종 단말 식별 정보 및 드론 식별 정보를 암호화하기 위하여 해쉬 함수를 사용할 수 있다. 암호화 모듈(154)은 조종 단말 정보를 암호키를 이용한 해쉬함수를 통하여 해쉬화(비행 경력∥조종 단말의 모델명∥조종 단말 가명)된 조종 단말 식별 정보를 생성할 수 있다. 암호화 모듈(154)은 드론 정보를 암호키를 이용한 해쉬함수를 통하여 해쉬화(모델명∥규격∥제작사∥드론 가명)된 드론 식별 정보를 생성할 수 있다.The encryption module 154 may generate control terminal identification information and drone identification information by encrypting the control terminal information and the drone information, respectively, based on the flight approval request information and the encryption key received from the control terminal 120 . For example, the encryption module 154 may use a hash function to encrypt pilot terminal identification information and drone identification information. The encryption module 154 may generate control terminal identification information in which control terminal information is hashed (flight career │ model name of the control terminal │ control terminal pseudonym) through a hash function using an encryption key. The encryption module 154 may generate drone identification information obtained by hashing drone information (model name, standard, manufacturer, and drone pseudonym) through a hash function using an encryption key.
드론 비행 승인 모듈(155)은 비행 승인 요청 정보에 포함된 비행 계획 정보를 기반으로 해당 드론(130)의 비행을 승인하는 비행 승인 정보를 생성할 수 있다. 드론 비행 승인 모듈(155)은 비행 계획 정보를 기반으로 드론 조종 위치를 중심에 포함하는 지도상에 비행 제한 구역이 존재하는지 검색하고, 검색된 비행 제한 구역이 드론 조종 위치를 중심으로 하는 특정 반경내에 위치하는지 판단하여 드론(130)의 비행을 승인할 수 있다. 이 때, 비행 제한 구역이 비행 금지 구역 또는 고도 제한 구역일 수 있다. 예를 들어, 비행 금지 구역은 군사 시설 , 정부기관 등이 위치하는 구역일 수 있고, 고도 제한 구역은 도로, 인도, 고압선, 빌딩 등이 위치하는 구역일 수 있다.The drone flight approval module 155 may generate flight approval information for approving the flight of the corresponding drone 130 based on the flight plan information included in the flight approval request information. Based on the flight plan information, the drone flight approval module 155 searches whether a flight restriction area exists on the map including the drone control position at the center, and the searched flight restriction area is located within a specific radius centered on the drone control position. flight of the drone 130 may be approved by determining whether the At this time, the flight restriction area may be a no-fly area or a height restriction area. For example, the no-fly zone may be an area where military facilities and government agencies are located, and the height restriction zone may be an area where roads, sidewalks, high-tension lines, buildings, and the like are located.
또한, 드론 비행 승인 모듈(155)은 조종 단말 가명 인증서 및 드론 가명 인증서의 유효성이 확인되면 드론(130)의 비행을 승인하는 비행 승인 정보를 생성할 수 있다.In addition, the drone flight approval module 155 may generate flight approval information for authorizing flight of the drone 130 when validity of the pilot terminal pseudonym certificate and the drone pseudonym certificate is confirmed.
인증 서버(160)는 제3 통신 모듈(161), 제3 저장 모듈(162), 드론 비행 인증 모듈(163) 및 드론 비행 검증 모듈(164)을 포함할 수 있다.The authentication server 160 may include a third communication module 161, a third storage module 162, a drone flight authentication module 163, and a drone flight validation module 164.
한편, 블록체인(blockchain security technology)은 공공 거래 장부라고도 부르며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다. 기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용한다. 블록체인은 대표적인 온라인 가상 화폐인 비트코인에 적용되어 있는데, 비트코인은 누구나 열람할 수 있는 장부에 거래 내역을 투명하게 기록하며, 비트코인을 사용하는 여러 컴퓨터가 10분에 한 번씩 이 기록을 검증하여 해킹을 막는다. 거래 명세가 담긴 블록이 사슬처럼 이어져 있는 블록체인(blockchain) 기술을 기반으로 하며 인터넷만 연결되어 있으면 어디서든 전송이 가능하다. 본 발명에서는 인증 서버(160)가 블록체인(blockchain) 기술을 기반으로 하여 데이터를 기록, 저장할 수 있다.On the other hand, blockchain security technology, also called public transaction ledger, is a technology that prevents hacking that may occur when trading with virtual currency. In the case of existing financial companies, transaction records are stored in a centralized server, whereas blockchain sends transaction details to all users participating in transactions and uses a method to prevent data forgery by comparing them for each transaction. Blockchain is applied to Bitcoin, a representative online virtual currency. Bitcoin transparently records transaction details in a ledger that anyone can view, and several computers using Bitcoin verify this record once every 10 minutes. to prevent hacking. It is based on blockchain technology in which blocks containing transaction details are connected like a chain, and can be transmitted anywhere as long as there is an Internet connection. In the present invention, the authentication server 160 can record and store data based on blockchain technology.
제3 통신 모듈(161)은 승인 서버(150)와 네트워크를 통하여 데이터 통신을 수행할 수 있으며, 승인 서버(150)로부터 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 수신할 수 있다.The third communication module 161 may perform data communication with the approval server 150 through a network, and may receive control terminal identification information, drone identification information, and flight approval information from the approval server 150 .
제3 통신 모듈(161)은 조종 단말(120) 및 드론(130)과 네트워크를 통하여 데이터 통신을 수행할 수 있다. 제2 통신 모듈(161)은 조종 단말(120)로부터 조종 단말 식별 정보를 수신할 수 있으며, 조종 단말(120)로부터 기 설정된 주기마다 조종 단말 식별 정보 및 조종 정보를 수신할 수 있다. 제3 통신 모듈(161)은 드론(130)으로부터 드론 식별 정보 및 비행 승인 정보를 수신할 수 있으며, 드론(130)으로부터 기 설정된 주기마다 드론 식별 정보 및 비행 기록 정보를 수신할 수 있다. 제3 통신 모듈(161)은 조종 단말(120) 및 드론(130)으로 인증 정보를 전송할 수 있다. 또한, 제3 통신 모듈(161)은 드론(130)으로 드론 회수 정보를 전송할 수 있다.The third communication module 161 may perform data communication with the control terminal 120 and the drone 130 through a network. The second communication module 161 may receive control terminal identification information from the control terminal 120 and receive control terminal identification information and control information from the control terminal 120 at predetermined intervals. The third communication module 161 may receive drone identification information and flight approval information from the drone 130, and may receive drone identification information and flight record information from the drone 130 at predetermined intervals. The third communication module 161 may transmit authentication information to the control terminal 120 and the drone 130 . Also, the third communication module 161 may transmit drone retrieval information to the drone 130 .
제3 저장 모듈(162)은 승인 서버(150)로부터 수신한 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 저장할 수 있다. 또한, 제3 저장 모듈(162)은 드론 비행 검증 모듈(164)에서 생성된 조종 단말별 조종 패턴 정보 및 드론별 비행 패턴 정보를 저장할 수 있다.The third storage module 162 may store control terminal identification information, drone identification information, and flight approval information received from the approval server 150 . In addition, the third storage module 162 may store control pattern information for each control terminal and flight pattern information for each drone generated in the drone flight verification module 164 .
드론 비행 인증 모듈(163)은 드론(130)을 비행하기 전에 조종 단말(120) 및 드론(130)에 대한 인증을 수행할 수 있다. 구체적으로, 드론 비행 인증 모듈(163)은 기 저장된 조종 단말 식별 정보(승인 서버(150)로부터 수신한 조종 단말 식별 정보) 중에서 조종 단말(120)로부터 수신한 조종 단말 식별 정보와 일치하는 조종 단말 식별 정보가 존재하는지 확인할 수 있다. 또한, 드론 비행 인증 모듈(163)은 기 저장된 드론 식별 정보(승인 서버(150)로부터 수신한 드론 식별 정보) 중에서 드론(130)으로부터 수신한 드론 식별 정보와 일치하는 드론 식별 정보가 존재하는지 확인할 수 있다. 또한, 드론 비행 인증 모듈(163)은 조종 단말(120)로부터 수신한 조종 단말 식별 정보와 일치하는 조종 단말 식별 정보가 존재하고, 드론(130)으로부터 수신한 드론 식별 정보와 일치하는 드론 식별 정보가 존재하는 경우, 인증 정보를 생성하고, 조종 단말(120) 및 드론(130)으로 인증 정보를 전송할 수 있다.The drone flight authentication module 163 may perform authentication on the control terminal 120 and the drone 130 before flying the drone 130 . Specifically, the drone flight authentication module 163 identifies a control terminal matching the control terminal identification information received from the control terminal 120 among pre-stored control terminal identification information (control terminal identification information received from the approval server 150). You can check if the information exists. In addition, the drone flight authentication module 163 may check whether there is drone identification information matching the drone identification information received from the drone 130 among pre-stored drone identification information (drone identification information received from the approval server 150). there is. In addition, the drone flight authentication module 163 has control terminal identification information that matches the control terminal identification information received from the control terminal 120, and drone identification information that matches the drone identification information received from the drone 130. If present, authentication information may be generated and the authentication information may be transmitted to the control terminal 120 and the drone 130.
드론 비행 검증 모듈(164)은 드론 비행 중에 조종 단말(120)로부터 기 설정된 주기마다 수신된 조종 단말 식별 정보 및 조종 정보와 드론(130)으로부터 기 설정된 주기마다 수신된 드론 식별 정보 및 비행 기록 정보를 기반으로 조종 단말(120) 및 드론(130)에 대한 검증을 수행할 수 있다. 구체적으로, 드론 비행 검증 모듈(164)은 기 저장된 조종 단말 식별 정보 및 조종 정보를 기반으로 조종 단말별 조종 패턴 정보를 생성하여 제2 저장 모듈(162)에 저장할 수 있다. 또한, 드론 비행 검증 모듈(164)은 기 저장된 드론 식별 정보 및 비행 기록 정보를 기반으로 드론별 비행 패턴 정보를 생성하여 제2 저장 모듈(162)에 저장할 수 있다. 여기서, 조종 패턴 정보는 조종 정보로부터 산출된 다이나믹스(Dynamics)일 수 있다. 또한, 비행 패턴 정보는 비행 기록 정보로부터 산출된 다이나믹스일 수 있다.The drone flight verification module 164 checks the control terminal identification information and control information received from the control terminal 120 at predetermined intervals during drone flight and the drone identification information and flight record information received from the drone 130 at predetermined intervals. Based on this, verification of the control terminal 120 and the drone 130 can be performed. Specifically, the drone flight verification module 164 may generate pilot pattern information for each pilot terminal based on pre-stored pilot terminal identification information and pilot information, and store the generated pilot pattern information in the second storage module 162 . In addition, the drone flight verification module 164 may generate flight pattern information for each drone based on pre-stored drone identification information and flight record information and store them in the second storage module 162 . Here, the steering pattern information may be dynamics calculated from steering information. Also, flight pattern information may be dynamics calculated from flight record information.
예시적인 실시예에서, 드론 비행 검증 모듈(164)은 머신러닝(Machine Learning) 기반 기술을 사용하여 조종 정보를 입력 받고, 조종 정보를 기반으로 조종 패턴 정보를 생성하도록 학습되는 제1 머신러닝 모델을 포함할 수 있다. 제1 머신러닝 모델은 조종 정보가 입력되는 경우, 드론(130)의 이륙, 착륙, 고도 제어, 방향 제어 및 속도 제어를 기반으로 다이나믹스(역학관계)를 산출하여 조종 패턴 정보를 생성하도록 학습될 수 있다. 또한, 드론 비행 검증 모듈(164)은 머신러닝 기반 기술을 사용하여 비행 기록 정보를 입력받고, 비행 기록 정보를 기반으로 비행 패턴 정보를 생성하도록 학습되는 제2 머신러닝 모델을 포함할 수 있다. 제2 머신러닝 모델은 비행 기록 정보가 입력되는 경우, 드론(130)의 속도, 가속도, 회전각, 위치 및 고도를 기반으로 다이나믹스(역학관계)를 산출하여 비행 패턴 정보를 생성하도록 학습될 수 있다.In an exemplary embodiment, the drone flight verification module 164 receives steering information using a machine learning-based technology, and generates a first machine learning model that is trained to generate steering pattern information based on the steering information. can include When steering information is input, the first machine learning model can be learned to generate steering pattern information by calculating dynamics based on take-off, landing, altitude control, direction control, and speed control of the drone 130. there is. In addition, the drone flight verification module 164 may receive flight record information using a machine learning-based technology and may include a second machine learning model trained to generate flight pattern information based on the flight record information. The second machine learning model may be trained to generate flight pattern information by calculating dynamics (dynamics) based on the speed, acceleration, rotation angle, position, and altitude of the drone 130 when flight record information is input. .
드론 비행 검증 모듈(164)은 제1 머신러닝 모델을 통해 기 설정된 주기마다 수신한 조종 단말 식별 정보 및 조종 정보로부터 조종 단말(130)의 조종 패턴 정보를 생성할 수 있다. 드론 비행 검증 모듈(164)은 생성된 조종 단말(130)의 조종 패턴 정보와 생성된 조종 단말(130)의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교할 수 있다. 드론 비행 검증 모듈(164)은 생성된 조종 단말(130)의 조종 패턴 정보와 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 기 설정된 오차 범위 이내인 경우에는 해당 조종 단말(120)이 검증된 것으로 판단하고, 기 설정된 오차 범위를 초과하는 경우에는 해당 조종 단말(120)이 검증되지 않은 것으로 판단할 수 있다.The drone flight verification module 164 may generate control pattern information of the control terminal 130 from control terminal identification information and control information received at predetermined intervals through the first machine learning model. The drone flight verification module 164 may compare the generated control pattern information of the control terminal 130 with pre-stored control pattern information for each control terminal corresponding to the generated control pattern information of the control terminal 130 . The drone flight verification module 164 compares the generated control pattern information of the control terminal 130 with the previously stored control pattern information for each control terminal to determine whether it is within a preset error range, and if it is within the preset error range, the corresponding control When it is determined that the terminal 120 is verified and exceeds a preset error range, it may be determined that the corresponding control terminal 120 is not verified.
또한, 드론 비행 검증 모듈(164)은 제2 머신러닝 모델을 통해 기 설정된 주기마다 수신한 드론 식별 정보 및 비행 기록 정보로부터 드론(130)의 비행 패턴 정보를 생성할 수 있다. 드론 비행 검증 모듈(164)은 생성된 드론(130)의 비행 패턴 정보와 생성된 드론(130)의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교할 수 있다. 드론 비행 검증 모듈(164)은 생성된 드론(130)의 비행 패턴 정보와 기 저장된 드론별 비행 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 기 설정된 오차 범위 이내인 경우에는 해당 드론(130)이 검증된 것으로 판단하고, 기 설정된 오차 범위를 초과하는 경우에는 해당 드론(130)이 검증되지 않은 것으로 판단할 수 있다.In addition, the drone flight verification module 164 may generate flight pattern information of the drone 130 from drone identification information and flight record information received at predetermined intervals through a second machine learning model. The drone flight verification module 164 may compare generated flight pattern information of the drone 130 with pre-stored flight pattern information for each drone corresponding to the generated flight pattern information of the drone 130 . The drone flight verification module 164 compares the generated flight pattern information of the drone 130 with pre-stored flight pattern information for each drone to determine whether it is within a preset error range, and if it is within a preset error range, the drone 130 ) is determined to be verified, and if it exceeds a preset error range, it may be determined that the corresponding drone 130 is not verified.
드론 비행 검증 모듈(164)은 조종 단말(120) 또는 드론(130) 중 적어도 하나가 검증되지 않은 것으로 판단되는 경우, 드론 회수 정보를 생성할 수 있다. 여기서, 드론 회수 정보는 드론(130)이 기 저장된 장소(예를 들어, 드론 스테이션등)으로 이동하도록 설정된 주행 정보일 수 있다.The drone flight verification module 164 may generate drone retrieval information when it is determined that at least one of the control terminal 120 and the drone 130 has not been verified. Here, the drone retrieval information may be driving information set so that the drone 130 moves to a pre-stored location (eg, a drone station).
또한, 드론 비행 검증 모듈(164)은 기 설정된 주기마다 수신한 드론 식별 정보 및 비행 기록 정보와 기 저장된 비행 승인 정보를 비교할 수 있다. 드론 비행 검증 모듈(164)은 수신한 드론의 비행 기록 정보과 기 저장된 해당 드론의 비행 승인 정보에 포함된 비행 계획 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 기 설정된 오차 범위 이내인 경우에는 해당 드론(130)이 검증된 것으로 판단하고, 기 설정된 오차 범위를 초과하는 경우에는 해당 드론(130)이 검증되지 않은 것으로 판단할 수 있다.In addition, the drone flight verification module 164 may compare drone identification information and flight record information received at predetermined intervals with pre-stored flight approval information. The drone flight verification module 164 compares the received flight record information of the drone with the flight plan information included in the previously stored flight approval information of the corresponding drone to determine whether it is within a preset error range, and if it is within the preset error range, When it is determined that the drone 130 is verified and exceeds a preset error range, it may be determined that the corresponding drone 130 is not verified.
드론 비행 검증 모듈(164)은 드론(130)이 검증되지 않은 것으로 판단되는 경우, 드론 회수 정보를 생성할 수 있다. 여기서, 드론 회수 정보는 드론(130)이 기 저장된 장소(예를 들어, 드론 스테이션등)으로 이동하도록 설정된 주행 정보일 수 있다.When it is determined that the drone 130 has not been verified, the drone flight verification module 164 may generate drone retrieval information. Here, the drone retrieval information may be driving information set so that the drone 130 moves to a pre-stored location (eg, a drone station).
따라서, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 인증된 조종 단말(120) 및 드론(130)에게 드론 비행을 허가하고, 드론(130)의 비행 중에도 조종 단말(120) 및 드론(130)에 대한 인증을 지속적으로 수행함으로써, 드론(130)이 불법 행위에 악용되는 것을 방지하고, 드론(130)에 대한 공격(해킹)을 방지할 수 있다.Therefore, the drone authentication system 100 according to an embodiment of the present invention permits drone flight to the authenticated control terminal 120 and the drone 130, and allows the control terminal 120 and the drone even while the drone 130 is in flight. By continuously performing authentication on the drone 130, it is possible to prevent the drone 130 from being abused for illegal activities and to prevent an attack (hacking) on the drone 130.
또한, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 다수의 조종 단말(120) 및 드론(130)으로부터 수집되는 데이터를 따로 관리하여 각각 인증되도록 함으로써, 인증된 조종사가 목적에 따라 다수의 조종 단말(120) 및 드론(130)을 가지는 경우에도 조종사에 대한 인증을 정확하게 수행할 수 있다. In addition, the drone authentication system 100 according to an embodiment of the present invention separately manages data collected from a plurality of pilot terminals 120 and drones 130 to authenticate each, so that a plurality of certified pilots can be assigned according to the purpose. Even in the case of having the pilot terminal 120 and the drone 130, authentication for the pilot can be accurately performed.
한편, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 발급 서버(140), 승인 서버(150) 및 인증 서버(160) 각각의 기능을 독립적으로 수행하는 형태로 개시하지만, 발급 서버(140), 승인 서버(150) 및 인증 서버(160) 각각의 기능을 하나의 서버에서 수행할 수 있다.Meanwhile, the drone authentication system 100 according to an embodiment of the present invention is initiated in the form of independently performing the functions of the issuing server 140, the approval server 150, and the authentication server 160, but the issuing server ( 140), the approval server 150 and the authentication server 160, each function can be performed by one server.
도 6은 본 발명의 일 실시예에 따른 드론 인증 시스템에서 인증서 발급 방법을 나타낸 흐름도이다. 도 6에 도시된 방법은 예를 들어, 전술한 드론 인증 시스템에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.6 is a flowchart illustrating a method for issuing a certificate in a drone authentication system according to an embodiment of the present invention. The method shown in FIG. 6 may be performed by, for example, the aforementioned drone authentication system. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.
발급 서버(140)는 드론(130)을 비행하고자 하는 조종사의 조종 단말(120)로부터 가명 생성 장치(110)에서 생성된 조종 단말 가명 및 드론 가명을 수신한다(S610, S620, S630). 조종 단말 가명 및 드론 가명은 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성될 수 있다.The issuing server 140 receives the pilot terminal pseudonym and the drone pseudonym generated by the pseudonym generating device 110 from the pilot terminal 120 of the pilot who wants to fly the drone 130 (S610, S620, S630). The pilot terminal pseudonym and the drone pseudonym may be formed of a plurality of key pairs composed of a public key and a private key.
그 다음, 발급 서버(140)는 조종 단말 가명 및 드론 가명에 블라인드 서명을 수행하여 가명에 대한 가명 인증서를 생성한다(S640). 구체적으로, 발급 서버(140)는 조종 단말 가명에 블라인드 서명을 수행하여 조종 단말 가명에 대한 조종 단말 가명 인증서를 생성할 수 있다. 또한, 발급 서버(140)는 드론 가명에 블라인드 서명을 수행하여 드론 가명에 대한 드론 가명 인증서를 생성할 수 있다.Next, the issuing server 140 performs a blind signature on the pseudonym of the pilot terminal and the pseudonym of the drone to generate a pseudonym certificate for the pseudonym (S640). In detail, the issuing server 140 may perform a blind signature on the pseudonym of the controlling terminal to generate the pseudonymous certificate of the controlling terminal for the pseudonym of the controlling terminal. In addition, the issuing server 140 may generate a drone pseudonym certificate for the drone pseudonym by performing a blind signature on the drone pseudonym.
마지막으로, 발급 서버(140)는 생성된 조종 단말 가명 인증서 및 드론 가명 인증서를 조종 단말(130)로 전송한다(S650). 이 때, 발급 서버(140)는 조종 단말 가명 및 드론 가명에 사용된 공개키를 승인 서버(150)로 전송할 수 있다.Finally, the issuing server 140 transmits the generated pilot terminal pseudonym certificate and drone pseudonym certificate to the pilot terminal 130 (S650). At this time, the issuing server 140 may transmit the public key used for the pilot terminal pseudonym and the drone pseudonym to the approval server 150.
따라서, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 드론(130)을 비행하고자 하는 조종사가 소유한 다수의 조종 단말(120) 및 드론(130)으로부터 수집되는 데이터를 따로 관리할 수 있다.Therefore, the drone authentication system 100 according to an embodiment of the present invention can separately manage a plurality of control terminals 120 owned by a pilot who wants to fly the drone 130 and data collected from the drone 130. there is.
도 7은 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행에 대한 승인 방법을 나타낸 흐름도이다. 도 7에 도시된 방법은 예를 들어, 전술한 드론 인증 시스템에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.7 is a flowchart illustrating a drone flight approval method of a drone authentication system according to an embodiment of the present invention. The method shown in FIG. 7 may be performed by, for example, the drone authentication system described above. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.
승인 서버(150)는 드론(130)을 비행하고자 하는 조종사의 조종 단말(120)로부터 비행 승인 요청 정보를 수신한다(S710).The approval server 150 receives flight approval request information from the control terminal 120 of a pilot who wants to fly the drone 130 (S710).
그 다음, 승인 서버(150)는 조종 단말(120)로부터 수신한 비행 승인 요청 정보에 포함된 조종 단말 가명 인증서 및 드론 가명 인증서를 확인한다(S720).Next, the approval server 150 checks the pilot terminal pseudonym certificate and the drone pseudonym certificate included in the flight approval request information received from the pilot terminal 120 (S720).
그 다음, 승인 서버(150)는 조종 단말(120)로부터 수신한 비행 승인 요청 정보 및 암호키를 바탕으로 조종 단말 정보 및 드론 정보를 각각 암호화하여 조종 단말 식별 정보 및 드론 식별 정보를 생성한다(S730). 이 때, 승인 서버(150)는 비행 승인 요청 정보에 포함된 비행 계획 정보를 기반으로 드론(130)의 비행을 승인하는 비행 승인 정보를 생성할 수 있다.Next, the approval server 150 encrypts the control terminal information and the drone information based on the flight approval request information and the encryption key received from the control terminal 120 to generate control terminal identification information and drone identification information (S730). ). At this time, the approval server 150 may generate flight approval information for authorizing the flight of the drone 130 based on the flight plan information included in the flight approval request information.
그 다음, 승인 서버(150)는 생성된 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 조종 단말(120)에 전송한다(S740). 이 때, 조종 단말(120)은 수신한 드론 식별 정보 및 비행 승인 정보를 드론(130)으로 전송할 수 있다(S760).Then, the approval server 150 transmits the generated control terminal identification information, drone identification information, and flight approval information to the control terminal 120 (S740). At this time, the control terminal 120 may transmit the received drone identification information and flight approval information to the drone 130 (S760).
마지막으로, 승인 서버(150)는 생성된 조종 단말 식별 정보, 드론 식별 정보 및 비행 승인 정보를 인증 서버(160)에 전송한다(S750).Finally, the approval server 150 transmits the generated control terminal identification information, drone identification information, and flight approval information to the verification server 160 (S750).
따라서, 본 발명의 일 실시예에 따른 드론 인증 시스템은 드론을 비행하고자 하는 조종사의 조종 단말(120) 및 드론(130)을 승인 서버(150)에 등록하고, 비행에 대한 승인을 받을 수 있다.Accordingly, the drone authentication system according to an embodiment of the present invention registers the control terminal 120 and the drone 130 of a pilot who wants to fly a drone in the approval server 150, and can obtain flight approval.
도 8은 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행을 위한 인증 방법을 나타낸 흐름도이다. 도 8에 도시된 방법은 예를 들어, 전술한 드론 인증 시스템에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.8 is a flowchart illustrating an authentication method for drone flight in a drone authentication system according to an embodiment of the present invention. The method shown in FIG. 8 may be performed by, for example, the aforementioned drone authentication system. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.
인증 서버(160)는 드론 비행을 인증하려는 조종사의 조종 단말(120)로부터 조종 단말 식별 정보를 수신하고(S810), 드론(130)으로부터 드론 식별 정보 및 비행 승인 정보를 수신한다(S820).The authentication server 160 receives control terminal identification information from the control terminal 120 of a pilot who wants to authenticate drone flight (S810), and receives drone identification information and flight approval information from the drone 130 (S820).
그 다음, 인증 서버(160)는 조종 단말(120) 및 드론(130)에 대한 인증을 수행한다(S830). 구체적으로, 인증 서버(160)는 기 저장된 조종 단말 식별 정보(승인 서버(150)로부터 수신한 조종 단말 식별 정보) 중에서 조종 단말(120)로부터 수신한 조종 단말 식별 정보와 일치하는 조종 단말 식별 정보가 존재하는지 확인할 수 있다. 또한, 인증 서버(160)는 기 저장된 드론 식별 정보(승인 서버(150)로부터 수신한 드론 식별 정보) 중에서 드론(130)으로부터 수신한 드론 식별 정보와 일치하는 드론 식별 정보가 존재하는지 확인할 수 있다. 또한, 인증 서버(160)는 조종 단말(120)로부터 수신한 조종 단말 식별 정보와 일치하는 조종 단말 식별 정보가 존재하고, 드론(130)으로부터 수신한 드론 식별 정보와 일치하는 드론 식별 정보가 존재하는 경우, 인증 정보를 생성할 수 있다.Next, the authentication server 160 performs authentication on the control terminal 120 and the drone 130 (S830). Specifically, the authentication server 160 provides control terminal identification information that matches the control terminal identification information received from the control terminal 120 among pre-stored control terminal identification information (control terminal identification information received from the approval server 150). You can check if it exists. In addition, the authentication server 160 may check whether there is drone identification information matching the drone identification information received from the drone 130 among pre-stored drone identification information (drone identification information received from the approval server 150). In addition, the authentication server 160 determines that there is pilot terminal identification information that matches the pilot terminal identification information received from the pilot terminal 120 and drone identification information that matches the drone identification information received from the drone 130 exists. In this case, authentication information can be generated.
마지막으로, 인증 서버(160)는 조종 단말(120) 및 드론(130)으로 인증 정보를 전송한다(S840, S850). Finally, the authentication server 160 transmits authentication information to the control terminal 120 and the drone 130 (S840 and S850).
따라서, 본 발명의 일 실시예에 따른 드론 인증 시스템은 승인 서버(150)에 등록된 조종 단말(120)의 드론 비행을 허가함으로써, 드론(130)의 무분별한 비행을 방지할 수 있다.Therefore, the drone authentication system according to an embodiment of the present invention can prevent the drone 130 from flying indiscriminately by allowing the control terminal 120 registered in the approval server 150 to fly the drone.
도 9는 본 발명의 일 실시예에 따른 드론 인증 시스템의 드론 비행 중 검증 방법을 나타낸 흐름도이다. 도 9에 도시된 방법은 예를 들어, 전술한 드론 인증 시스템에 의해 수행될 수 있다. 도시된 흐름도에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.9 is a flowchart illustrating a drone in-flight verification method of a drone authentication system according to an embodiment of the present invention. The method shown in FIG. 9 may be performed by, for example, the aforementioned drone authentication system. In the illustrated flowchart, the method is divided into a plurality of steps, but at least some of the steps are performed in reverse order, combined with other steps, performed together, omitted, divided into detailed steps, or not shown. One or more steps may be added and performed.
인증 서버(160)는 드론 비행을 조종하는 조종 단말(120)로부터 기 설정된 주기마다 조종 단말 식별 정보 및 조종 정보를 수신한다(S910).The authentication server 160 receives control terminal identification information and control information from the control terminal 120 that controls drone flight at predetermined intervals (S910).
그 다음, 인증 서버(160)는 비행하는 드론(130)으로부터 기 설정된 주기마다 드론 식별 정보 및 비행 기록 정보를 수신한다(S920).Next, the authentication server 160 receives drone identification information and flight record information from the flying drone 130 at predetermined intervals (S920).
그 다음, 인증 서버(160)는 조종 단말(120) 및 드론(130)에 대한 검증을 수행한다(S930).Next, the authentication server 160 performs verification on the control terminal 120 and the drone 130 (S930).
마지막으로, 인증 서버(160)는 드론 회수 정보가 생성된 경우, 드론(130)으로 드론 회수 정보를 전송할 수 있다(S940).Finally, when the drone retrieval information is generated, the authentication server 160 may transmit the drone retrieval information to the drone 130 (S940).
도 10은 도 9의 검증 정보 생성 단계의 일 실시예를 설명하기 위한 흐름도이다.10 is a flowchart illustrating an embodiment of the verification information generating step of FIG. 9 .
인증 서버(160)는 기 설정된 주기마다 조종 단말 식별 정보, 조종 정보, 드론 식별 정보 및 비행 기록 정보를 수신한다(S1010).The authentication server 160 receives control terminal identification information, control information, drone identification information, and flight record information at predetermined intervals (S1010).
그 다음, 인증 서버(160)는 제1 머신 러닝 모델을 통해 조종 단말의 조종 패턴 정보를 생성한다(S1020).Next, the authentication server 160 generates steering pattern information of the steering terminal through the first machine learning model (S1020).
그 다음, 인증 서버(160)는 생성된 조종 단말의 조종 패턴 정보와 생성된 조종 단말의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교하여(S1030), 기 설정된 오차 범위 이내인지 판단한다(S1040).Next, the authentication server 160 compares the generated control pattern information of the control terminal with the previously stored control pattern information for each control terminal corresponding to the generated control terminal information (S1030), and determines whether or not it is within a preset error range. It is judged (S1040).
그 다음, 인증 서버(160)는 기 설정된 오차 범위 이내인 것으로 판단되는 경우, 제2 머신 러닝 모델을 통해 드론의 비행 패턴 정보를 생성한다(S1050). 이 때, 인증 서버(160)는 기 설정된 오차 범위를 초과하는 것으로 판단되는 경우, 드론 회수 정보를 생성한다(S1080).Then, when it is determined that the authentication server 160 is within a preset error range, the flight pattern information of the drone is generated through the second machine learning model (S1050). At this time, if it is determined that the authentication server 160 exceeds a preset error range, it generates drone collection information (S1080).
그 다음, 인증 서버(160)는 생성된 드론(130)의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교하여(S1060), 기 설정된 오차 범위 이내인지 판단한다(S1070). 이 때, 인증 서버(160)는 기 설정된 오차 범위를 초과하는 것으로 판단되는 경우, 드론 회수 정보를 생성한다(S1080).Next, the authentication server 160 compares flight pattern information for each drone previously stored corresponding to the generated flight pattern information of the drone 130 (S1060), and determines whether it is within a preset error range (S1070). At this time, if it is determined that the authentication server 160 exceeds a preset error range, it generates drone collection information (S1080).
인증 서버(160)는 기 설정된 오차 범위 이내인 것으로 판단되는 경우에는 드론(130)이 비행하는 동안 S1010 내지 S1070을 반복적으로 수행할 수 있다.When it is determined that the authentication server 160 is within a preset error range, the authentication server 160 may repeatedly perform S1010 to S1070 while the drone 130 is in flight.
도 11은 도 9의 검증 정보 생성 단계의 다른 실시예를 설명하기 위한 흐름도이다.11 is a flowchart for explaining another embodiment of the verification information generating step of FIG. 9 .
인증 서버(160)는 기 설정된 주기마다 드론 식별 정보 및 비행 기록 정보를 수신한다(S1110).The authentication server 160 receives drone identification information and flight record information at predetermined intervals (S1110).
그 다음, 인증 서버(160)는 비행 기록 정보와 기 저장된 비행 승인 정보에 포함된 비행 계획 정보를 비교하여(S1120), 기 설정된 오차 범위 이내인지 판단한다(S1130).Then, the authentication server 160 compares the flight plan information included in the flight record information and the pre-stored flight approval information (S1120), and determines whether it is within a preset error range (S1130).
인증 서버(160)는 기 설정된 오차 범위 이내인 것으로 판단되는 경우에는 드론(130)이 비행하는 동안 S1110 내지 S1130을 반복적으로 수행할 수 있다. 이 때, 인증 서버(160)는 기 설정된 오차 범위를 초과하는 것으로 판단되는 경우, 드론 회수 정보를 생성한다(S1140).When it is determined that the authentication server 160 is within a preset error range, the authentication server 160 may repeatedly perform S1110 to S1130 while the drone 130 is in flight. At this time, when it is determined that the authentication server 160 exceeds a preset error range, drone collection information is generated (S1140).
따라서, 본 발명의 일 실시예에 따른 드론 인증 시스템(100)은 드론(130)의 비행 중에도 조종 단말(120) 및 드론(130)에 대한 인증을 지속적으로 수행함으로써, 드론(130)이 불법 행위에 악용되는 것을 방지하고, 드론(130)에 대한 공격(해킹)을 방지할 수 있다.Therefore, the drone authentication system 100 according to an embodiment of the present invention continuously performs authentication of the control terminal 120 and the drone 130 even while the drone 130 is in flight, so that the drone 130 does not act illegally. , and an attack (hacking) on the drone 130 can be prevented.
도 12는 예시적인 실시예들에서 사용되기에 적합한 컴퓨팅 장치를 포함하는 컴퓨팅 환경을 예시하여 설명하기 위한 블록도이다. 도시된 실시예에서, 각 컴포넌트들은 이하에 기술된 것 이외에 상이한 기능 및 능력을 가질 수 있고, 이하에 기술된 것 이외에도 추가적인 컴포넌트를 포함할 수 있다.12 is a block diagram illustrating and describing a computing environment including a computing device suitable for use in example embodiments. In the illustrated embodiment, each component may have different functions and capabilities other than those described below, and may include additional components other than those described below.
도시된 컴퓨팅 환경(10)은 컴퓨팅 장치(12)를 포함한다. 일 실시예에서, 컴퓨팅 장치(12)는 가명 생성 장치(110)일 수 있다. 또한, 컴퓨팅 장치(12)는 조종 단말(120)일 수 있다. 또한, 컴퓨팅 장치(12)는 드론(130)일 수 있다. 또한, 컴퓨팅 장치(12)는 발급 서버(140)일 수 있다. 또한, 컴퓨팅 장치(12)는 승인 서버(150)일 수 있다. 또한, 컴퓨팅 장치(12)는 인증 서버(160)일 수 있다. The illustrated computing environment 10 includes a computing device 12 . In one embodiment, computing device 12 may be pseudonym generator 110 . Also, the computing device 12 may be a control terminal 120 . Additionally, computing device 12 may be drone 130 . Additionally, computing device 12 may be issuing server 140 . Computing device 12 may also be authorization server 150 . Computing device 12 may also be authentication server 160 .
컴퓨팅 장치(12)는 적어도 하나의 프로세서(14), 컴퓨터 판독 가능 저장 매체(16) 및 통신 버스(18)를 포함한다. 프로세서(14)는 컴퓨팅 장치(12)로 하여금 앞서 언급된 예시적인 실시예에 따라 동작하도록 할 수 있다. 예컨대, 프로세서(14)는 컴퓨터 판독 가능 저장 매체(16)에 저장된 하나 이상의 프로그램들을 실행할 수 있다. 상기 하나 이상의 프로그램들은 하나 이상의 컴퓨터 실행 가능 명령어를 포함할 수 있으며, 상기 컴퓨터 실행 가능 명령어는 프로세서(14)에 의해 실행되는 경우 컴퓨팅 장치(12)로 하여금 예시적인 실시예에 따른 동작들을 수행하도록 구성될 수 있다.Computing device 12 includes at least one processor 14 , a computer readable storage medium 16 and a communication bus 18 . Processor 14 may cause computing device 12 to operate according to the above-mentioned example embodiments. For example, processor 14 may execute one or more programs stored on computer readable storage medium 16 . The one or more programs may include one or more computer-executable instructions, which when executed by processor 14 are configured to cause computing device 12 to perform operations in accordance with an illustrative embodiment. It can be.
컴퓨터 판독 가능 저장 매체(16)는 컴퓨터 실행 가능 명령어 내지 프로그램 코드, 프로그램 데이터 및/또는 다른 적합한 형태의 정보를 저장하도록 구성된다. 컴퓨터 판독 가능 저장 매체(16)에 저장된 프로그램(20)은 프로세서(14)에 의해 실행 가능한 명령어의 집합을 포함한다. 일 실시예에서, 컴퓨터 판독 가능 저장 매체(16)는 메모리(랜덤 액세스 메모리와 같은 휘발성 메모리, 비휘발성 메모리, 또는 이들의 적절한 조합), 하나 이상의 자기 디스크 저장 디바이스들, 광학 디스크 저장 디바이스들, 플래시 메모리 디바이스들, 그 밖에 컴퓨팅 장치(12)에 의해 액세스되고 원하는 정보를 저장할 수 있는 다른 형태의 저장 매체, 또는 이들의 적합한 조합일 수 있다.Computer-readable storage medium 16 is configured to store computer-executable instructions or program code, program data, and/or other suitable form of information. Program 20 stored on computer readable storage medium 16 includes a set of instructions executable by processor 14 . In one embodiment, computer readable storage medium 16 includes memory (volatile memory such as random access memory, non-volatile memory, or a suitable combination thereof), one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, other forms of storage media that can be accessed by computing device 12 and store desired information, or any suitable combination thereof.
통신 버스(18)는 프로세서(14), 컴퓨터 판독 가능 저장 매체(16)를 포함하여 컴퓨팅 장치(12)의 다른 다양한 컴포넌트들을 상호 연결한다.Communications bus 18 interconnects various other components of computing device 12, including processor 14 and computer-readable storage medium 16.
컴퓨팅 장치(12)는 또한 하나 이상의 입출력 장치(24)를 위한 인터페이스를 제공하는 하나 이상의 입출력 인터페이스(22) 및 하나 이상의 네트워크 통신 인터페이스(26)를 포함할 수 있다. 입출력 인터페이스(22) 및 네트워크 통신 인터페이스(26)는 통신 버스(18)에 연결된다. 입출력 장치(24)는 입출력 인터페이스(22)를 통해 컴퓨팅 장치(12)의 다른 컴포넌트들에 연결될 수 있다. 예시적인 입출력 장치(24)는 포인팅 장치(마우스 또는 트랙패드 등), 키보드, 터치 입력 장치(터치패드 또는 터치스크린 등), 음성 또는 소리 입력 장치, 다양한 종류의 센서 장치 및/또는 촬영 장치와 같은 입력 장치, 및/또는 디스플레이 장치, 프린터, 스피커 및/또는 네트워크 카드와 같은 출력 장치를 포함할 수 있다. 예시적인 입출력 장치(24)는 컴퓨팅 장치(12)를 구성하는 일 컴포넌트로서 컴퓨팅 장치(12)의 내부에 포함될 수도 있고, 컴퓨팅 장치(12)와는 구별되는 별개의 장치로 컴퓨팅 장치(12)와 연결될 수도 있다.Computing device 12 may also include one or more input/output interfaces 22 and one or more network communication interfaces 26 that provide interfaces for one or more input/output devices 24 . An input/output interface 22 and a network communication interface 26 are connected to the communication bus 18 . Input/output device 24 may be coupled to other components of computing device 12 via input/output interface 22 . Exemplary input/output devices 24 include a pointing device (such as a mouse or trackpad), a keyboard, a touch input device (such as a touchpad or touchscreen), a voice or sound input device, various types of sensor devices, and/or a photographing device. input devices, and/or output devices such as display devices, printers, speakers, and/or network cards. The exemplary input/output device 24 may be included inside the computing device 12 as a component constituting the computing device 12, or may be connected to the computing device 12 as a separate device distinct from the computing device 12. may be
이상에서 본 발명의 대표적인 실시예들을 상세하게 설명하였으나, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 상술한 실시예에 대하여 본 발명의 범주에서 벗어나지 않는 한도 내에서 다양한 변형이 가능함을 이해할 것이다. 그러므로 본 발명의 권리범위는 설명된 실시예에 국한되어 정해져서는 안 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.Although representative embodiments of the present invention have been described in detail above, those skilled in the art will understand that various modifications are possible to the above-described embodiments without departing from the scope of the present invention. . Therefore, the scope of the present invention should not be limited to the described embodiments and should not be defined, and should be defined by not only the claims to be described later, but also those equivalent to these claims.
100 : 드론 인증 시스템
110 : 가명 생성 장치
120 : 조종 단말
130 : 드론
131 : 통신부
132 : 저장부
133 : 비행 제어부
134 : 비행 기록 생성부
140 : 발급 서버
141 : 제1 통신 모듈
142 : 제1 저장 모듈
143 : 서명 모듈
150 : 승인 서버
151 : 제2 통신 모듈
152 : 제2 저장 모듈
153 : 확인 모듈
154 : 암호화 모듈
155 : 드론 비행 승인 모듈
160 : 인증 서버
161 : 제3 통신 모듈
162 : 제3 저장 모듈
163 : 드론 비행 인증 모듈
164 : 드론 비행 검증 모듈100: drone authentication system
110: pseudonym generator
120: control terminal
130: drone
131: Communication Department
132: storage unit
133: flight control
134: flight record generation unit
140: issuing server
141: first communication module
142: first storage module
143: signature module
150: approval server
151: second communication module
152: second storage module
153: confirmation module
154: encryption module
155: drone flight approval module
160: authentication server
161: third communication module
162: third storage module
163: drone flight authentication module
164: drone flight verification module
Claims (15)
상기 제1 조종 단말로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명을 수신하고, 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 대하여 각각 인증서를 생성하는 발급 서버; 및
상기 제1 조종 단말로부터 상기 조종사에 의해 생성된 비행 승인 요청 정보를 수신하고, 상기 비행 승인 요청 정보를 기반으로 상기 제1 드론의 비행을 승인하는 비행 승인 정보를 생성하는 승인 서버를 포함하며,
상기 발급 서버는,
상기 제1 조종 단말로부터 수신한 제1 조종 단말 가명에 블라인드 서명(Blind Signature)을 수행하여 상기 제1 조종 단말 가명에 대한 제1 조종 단말 가명 인증서를 생성하며, 상기 제1 조종 단말로부터 수신한 제1 드론 가명에 블라인드 서명을 수행하여 상기 제1 드론 가명에 대한 제1 드론 가명 인증서를 생성하며,
상기 비행 승인 요청 정보는, 제1 조종 단말 정보, 제1 드론 정보 및 비행 계획 정보를 포함하며,
상기 제1 조종 단말 정보는, 상기 제1 조종 단말 가명, 상기 제1 조종 단말 가명 인증서, 비행 이력, 상기 제1 조종 단말의 모델명을 포함하며,
상기 제1 드론 정보는, 상기 제1 드론 가명, 상기 제1 드론 가명 인증서 및 상기 제1 드론의 모델명, 규격 및 제작사를 포함하며,
상기 제1 조종 단말 가명 및 상기 제1 드론 가명은, 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성되며,
상기 승인 서버는,
상기 발급 서버로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 사용된 공개키를 수신하고, 상기 수신한 공개키를 이용하여 상기 제1 조종 단말 가명 인증서 및 상기 제1 드론 가명 인증서의 유효성을 확인하며, 상기 유효성이 확인되면 상기 제1 드론의 비행을 승인하는, 드론 인증 시스템.
Generate pseudonyms for each of a plurality of control terminals and a plurality of drones possessed by a pilot, extract a first drone pseudonym for a first drone that the pilot intends to fly among the plurality of drones, and A pseudonym for extracting a first control terminal pseudonym for a first control terminal that controls the first drone to fly from among control terminals, and transmitting the extracted first drone pseudonym and first control terminal pseudonym to the first control terminal generating device;
an issuance server that receives the first manipulation terminal pseudonym and the first drone pseudonym from the first manipulation terminal, and generates certificates for the first manipulation terminal pseudonym and the first drone pseudonym; and
An approval server for receiving flight approval request information generated by the pilot from the first control terminal and generating flight approval information for authorizing flight of the first drone based on the flight approval request information;
The issuing server,
performing a blind signature on the pseudonym of the first control terminal received from the first control terminal to generate a first control terminal pseudonym certificate for the pseudonym of the first control terminal; 1 performing a blind signature on the drone pseudonym to generate a first drone pseudonym certificate for the first drone pseudonym;
The flight approval request information includes first control terminal information, first drone information, and flight plan information,
The first control terminal information includes the first control terminal pseudonym, the first control terminal pseudonym certificate, flight history, and a model name of the first control terminal;
The first drone information includes the first drone pseudonym, the first drone pseudonym certificate, and the model name, standard, and manufacturer of the first drone;
The first pilot terminal pseudonym and the first drone pseudonym are formed of a plurality of key pairs composed of a public key and a private key,
The approval server,
receiving the first pilot terminal pseudonym and the public key used for the first drone pseudonym from the issuing server, and validating the first pilot terminal pseudonym certificate and the first drone pseudonym certificate using the received public key; and, if the validity is confirmed, authorizing the flight of the first drone.
상기 승인 서버는,
상기 제1 조종 단말로부터 수신한 비행 승인 요청 정보 및 기 저장된 암호키를 바탕으로 조종 단말 식별 정보 및 드론 식별 정보를 생성하고, 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 상기 제1 조종 단말로 전송하며,
상기 제1 조종 단말은,
상기 제1 드론으로 상기 드론 식별 정보 및 상기 비행 승인 정보를 전송하며,
상기 드론 인증 시스템은,
상기 승인 서버로부터 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 수신하고, 상기 제1 조종 단말 및 상기 제1 드론에 대한 등록을 수행하는 인증 서버를 더 포함하는, 드론 인증 시스템.
The method of claim 1,
The approval server,
Control terminal identification information and drone identification information are generated based on the flight approval request information received from the first control terminal and the pre-stored encryption key, and the control terminal identification information, the drone identification information, and the flight approval information are stored in the first control terminal. 1 transmitted to the control terminal,
The first control terminal,
Transmitting the drone identification information and the flight approval information to the first drone;
The drone authentication system,
and an authentication server that receives the pilot terminal identification information, the drone identification information, and the flight approval information from the approval server, and registers the first pilot terminal and the first drone.
상기 제1 드론은,
상기 제1 조종 단말로부터 수신한 조종 정보에 따라 비행하여 비행 기록 정보를 생성하고, 생성한 상기 비행 기록 정보를 상기 인증 서버로 전송하며,
상기 인증 서버는,
상기 제1 드론을 조종하는 상기 제1 조종 단말로부터 기 설정된 주기마다 상기 조종 단말 식별 정보 및 조종 정보를 수신하고, 상기 제1 드론으로부터 상기 드론 식별 정보 및 상기 비행 기록 정보를 수신하며,
상시 수신한 조종 단말 식별 정보, 조종 정보, 드론 식별 정보 및 비행 기록 정보를 기반으로 상기 제1 조종 단말 및 상기 제1 드론에 대한 검증을 수행하는, 드론 인증 시스템.
The method of claim 4,
The first drone,
generating flight record information by flying according to the control information received from the first control terminal, and transmitting the generated flight record information to the authentication server;
The authentication server,
Receiving the control terminal identification information and control information at predetermined intervals from the first control terminal that controls the first drone, and receiving the drone identification information and the flight record information from the first drone;
A drone authentication system that performs verification of the first control terminal and the first drone based on the constantly received control terminal identification information, control information, drone identification information, and flight record information.
상기 인증 서버는,
제1 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 조종 단말 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 조종 단말의 조종 패턴 정보를 생성하고, 제2 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 드론 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 드론의 비행 패턴 정보를 생성하며,
상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 생성된 제1 조종 단말의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 상기 제1 조종 단말에 대한 검증을 수행하고, 상기 생성된 제1 드론의 비행 패턴 정보와 생성된 제1 드론의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교하여 상기 제1 드론에 대한 검증을 수행하는, 드론 인증 시스템.
The method of claim 5,
The authentication server,
Control pattern information of the first control terminal is generated from the control terminal identification information and the flight record information received at predetermined intervals through a first machine learning model, and received at predetermined intervals through a second machine learning model. generating flight pattern information of the first drone from the drone identification information and the flight record information;
verifying the first control terminal by comparing the generated control pattern information of the first control terminal with pre-stored control pattern information for each control terminal corresponding to the generated control pattern information of the first control terminal; A drone authentication system that performs verification of the first drone by comparing flight pattern information of the generated first drone with pre-stored flight pattern information for each drone corresponding to the generated flight pattern information of the first drone.
상기 인증 서버는,
상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 상기 생성된 제1 드론의 비행 패턴 정보와 상기 기 저장된 드론별 비행 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하며,
상기 제1 조종 단말에 대한 오차 범위 및 상기 제1 드론에 대한 오차 범위 중 적어도 하나가 기 설정된 오차 범위를 초과하는 경우, 드론 회수 정보를 생성하는, 드론 인증 시스템.
The method of claim 6,
The authentication server,
The generated control pattern information of the first control terminal is compared with the previously stored control pattern information for each control terminal to determine whether it is within a preset error range, and the generated flight pattern information of the first drone and the previously stored flight pattern information for each drone are determined. Compare the pattern information to determine whether it is within a preset error range,
and generating drone recovery information when at least one of the error range for the first pilot terminal and the error range for the first drone exceeds a preset error range.
발급 서버에서, 상기 제1 조종 단말로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명을 수신하고, 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 대하여 각각 인증서를 생성하는 단계; 및
승인 서버에서, 상기 제1 조종 단말로부터 상기 조종사에 의해 생성된 비행 승인 요청 정보를 수신하고, 상기 비행 승인 요청 정보를 기반으로 상기 제1 드론의 비행을 승인하는 비행 승인 정보를 생성하는 단계를 포함하며,
상기 인증서를 생성하는 단계는,
상기 발급 서버에서, 상기 제1 조종 단말로부터 수신한 제1 조종 단말 가명에 블라인드 서명(Blind Signature)을 수행하여 상기 제1 조종 단말 가명에 대한 제1 조종 단말 가명 인증서를 생성하는 단계; 및
상기 발급 서버에서, 상기 제1 조종 단말로부터 수신한 제1 드론 가명에 블라인드 서명을 수행하여 상기 제1 드론 가명에 대한 제1 드론 가명 인증서를 생성하는 단계를 포함하며,
상기 비행 승인 요청 정보는, 제1 조종 단말 정보, 제1 드론 정보 및 비행 계획 정보를 포함하며,
상기 제1 조종 단말 정보는, 상기 제1 조종 단말 가명, 상기 제1 조종 단말 가명 인증서, 비행 이력, 상기 제1 조종 단말의 모델명을 포함하며,
상기 제1 드론 정보는, 상기 제1 드론 가명, 상기 제1 드론 가명 인증서 및 상기 제1 드론의 모델명, 규격 및 제작사를 포함하며,
상기 제1 조종 단말 가명 및 상기 제1 드론 가명은, 공개키 및 비밀키로 구성된 다수의 키 쌍들로 형성되며,
상기 비행 승인 정보를 생성하는 단계는,
상기 승인 서버에서, 상기 발급 서버로부터 상기 제1 조종 단말 가명 및 상기 제1 드론 가명에 사용된 공개키를 수신하여 상기 비행 승인 요청 정보에 포함된 상기 조종 단말 가명 인증서 및 상기 드론 가명 인증서의 유효성을 확인하는 단계; 및
상기 승인 서버에서, 상기 유효성이 확인되면 상기 제1 드론의 비행을 승인하는 단계를 더 포함하는, 드론 인증 방법.
In the pseudonym generating device, pseudonyms are generated for a plurality of pilot terminals and a plurality of drones, respectively, and a first drone pseudonym for a first drone that the pilot intends to fly is extracted from among the plurality of drones. and extracts a first control terminal pseudonym for a first control terminal that controls the first drone to fly from among the plurality of control terminals, and uses the extracted first drone pseudonym and the first control terminal pseudonym for the first control terminal. transmitting to a terminal;
In an issuing server, receiving the first manipulation terminal pseudonym and the first drone pseudonym from the first manipulation terminal, and generating certificates for the first manipulation terminal pseudonym and the first drone pseudonym, respectively; and
In an approval server, receiving flight approval request information generated by the pilot from the first control terminal, and generating flight approval information for authorizing flight of the first drone based on the flight approval request information. and
To generate the certificate,
generating, at the issuing server, a first manipulation terminal pseudonym certificate for the pseudonym of the first manipulation terminal by performing a blind signature on the pseudonym of the first manipulation terminal received from the first manipulation terminal; and
generating, in the issuing server, a first drone pseudonym certificate for the first drone pseudonym by performing a blind signature on the first drone pseudonym received from the first control terminal;
The flight approval request information includes first control terminal information, first drone information, and flight plan information,
The first control terminal information includes the first control terminal pseudonym, the first control terminal pseudonym certificate, flight history, and a model name of the first control terminal;
The first drone information includes the first drone pseudonym, the first drone pseudonym certificate, and the model name, standard, and manufacturer of the first drone;
The first pilot terminal pseudonym and the first drone pseudonym are formed of a plurality of key pairs composed of a public key and a private key,
Generating the flight approval information,
In the approval server, the first pilot terminal pseudonym and the public key used for the first drone pseudonym are received from the issuing server, and validity of the pilot terminal pseudonym certificate and the drone pseudonym certificate included in the flight approval request information is verified. checking; and
The method of authenticating drones further comprising, at the approval server, approving flight of the first drone when the validity is confirmed.
상기 비행 승인 정보를 생성하는 단계는,
상기 승인 서버에서, 상기 제1 조종 단말로부터 수신한 비행 승인 요청 정보 및 기 저장된 암호키를 바탕으로 조종 단말 식별 정보 및 드론 식별 정보를 생성하고, 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 상기 제1 조종 단말로 전송하는 단계를 더 포함하며,
상기 드론 인증 방법은,
상기 제1 조종 단말에서, 상기 제1 드론으로 상기 드론 식별 정보 및 상기 비행 승인 정보를 전송하는 단계; 및
인증 서버에서, 상기 승인 서버로부터 상기 조종 단말 식별 정보, 상기 드론 식별 정보 및 상기 비행 승인 정보를 수신하고, 상기 제1 조종 단말 및 상기 제1 드론에 대한 등록을 수행하는 단계를 더 포함하는, 드론 인증 방법.
The method of claim 8,
Generating the flight approval information,
The approval server generates pilot terminal identification information and drone identification information based on the flight approval request information received from the first pilot terminal and the pre-stored encryption key, and the pilot terminal identification information, the drone identification information, and the flight Further comprising transmitting approval information to the first control terminal;
The drone authentication method,
Transmitting the drone identification information and the flight approval information from the first control terminal to the first drone; and
In an authentication server, receiving the pilot terminal identification information, the drone identification information, and the flight approval information from the approval server, and performing registration for the first pilot terminal and the first drone. authentication method.
상기 드론 인증 방법은,
상기 제1 드론에서, 상기 제1 조종 단말로부터 수신한 조종 정보에 따라 비행하여 비행 기록 정보를 생성하고, 생성한 상기 비행 기록 정보를 상기 인증 서버로 전송하는 단계를 더 포함하며,
상기 등록을 수행하는 단계는,
상기 인증 서버에서, 상기 제1 드론을 조종하는 상기 제1 조종 단말로부터 기 설정된 주기마다 상기 조종 단말 식별 정보 및 조종 정보를 수신하고, 상기 제1 드론으로부터 상기 드론 식별 정보 및 상기 비행 기록 정보를 수신하는 단계; 및,
상기 인증 서버에서, 상시 수신한 조종 단말 식별 정보, 조종 정보, 드론 식별 정보 및 비행 기록 정보를 기반으로 상기 제1 조종 단말 및 상기 제1 드론에 대한 검증을 수행하는 단계를 더 포함하는, 드론 인증 방법.
The method of claim 11,
The drone authentication method,
In the first drone, generating flight record information by flying according to the control information received from the first control terminal, and transmitting the generated flight record information to the authentication server;
The step of performing the registration is,
In the authentication server, the control terminal identification information and control information are received at predetermined intervals from the first control terminal that controls the first drone, and the drone identification information and the flight record information are received from the first drone. doing; and,
In the authentication server, verifying the first control terminal and the first drone based on the constantly received control terminal identification information, control information, drone identification information, and flight record information, further comprising drone authentication. method.
상기 등록을 수행하는 단계는,
상기 인증 서버에서, 제1 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 조종 단말 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 조종 단말의 조종 패턴 정보를 생성하고, 제2 머신러닝 모델을 통해 기 설정된 주기마다 수신한 상기 드론 식별 정보 및 상기 비행 기록 정보로부터 상기 제1 드론의 비행 패턴 정보를 생성하는 단계; 및
상기 인증 서버에서, 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 생성된 제1 조종 단말의 조종 패턴 정보에 대응하는 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 상기 제1 조종 단말에 대한 검증을 수행하고, 상기 생성된 제1 드론의 비행 패턴 정보와 생성된 제1 드론의 비행 패턴 정보에 대응하는 기 저장된 드론별 비행 패턴 정보를 비교하여 상기 제1 드론에 대한 검증을 수행하는 단계를 더 포함하는, 드론 인증 방법.
The method of claim 12,
The step of performing the registration is,
In the authentication server, steering pattern information of the first control terminal is generated from the control terminal identification information and the flight record information received at predetermined intervals through a first machine learning model, and the control pattern information is generated through a second machine learning model. generating flight pattern information of the first drone from the drone identification information and the flight record information received at each set period; and
The verification server verifies the first control terminal by comparing the generated control pattern information of the first control terminal with pre-stored control pattern information for each control terminal corresponding to the generated control pattern information of the first control terminal. and verifying the first drone by comparing the generated flight pattern information of the first drone with pre-stored flight pattern information for each drone corresponding to the generated flight pattern information of the first drone. Including, drone authentication method.
상기 등록을 수행하는 단계는,
상기 인증 서버에서, 상기 생성된 제1 조종 단말의 조종 패턴 정보와 상기 기 저장된 조종 단말별 조종 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하고, 상기 생성된 제1 드론의 비행 패턴 정보와 상기 기 저장된 드론별 비행 패턴 정보를 비교하여 기 설정된 오차 범위 이내인지 판단하는 단계; 및
상기 인증 서버에서, 상기 제1 조종 단말에 대한 오차 범위 및 상기 제1 드론에 대한 오차 범위 중 적어도 하나가 기 설정된 오차 범위를 초과하는 경우, 드론 회수 정보를 생성하는 단계를 더 포함하는, 드론 인증 방법.
The method of claim 13,
The step of performing the registration is,
The authentication server compares the generated control pattern information of the first control terminal with the previously stored control pattern information for each control terminal to determine whether it is within a preset error range, and compares the generated flight pattern information of the first drone with the control pattern information of the first drone Comparing pre-stored flight pattern information for each drone to determine whether it is within a preset error range; and
In the authentication server, generating drone recovery information when at least one of the error range for the first pilot terminal and the error range for the first drone exceeds a preset error range, further comprising drone authentication. method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210049476A KR102575304B1 (en) | 2021-04-15 | 2021-04-15 | System and method for authenticating drone and apparatus for executing the system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210049476A KR102575304B1 (en) | 2021-04-15 | 2021-04-15 | System and method for authenticating drone and apparatus for executing the system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220142883A KR20220142883A (en) | 2022-10-24 |
KR102575304B1 true KR102575304B1 (en) | 2023-09-06 |
Family
ID=83805901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210049476A KR102575304B1 (en) | 2021-04-15 | 2021-04-15 | System and method for authenticating drone and apparatus for executing the system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102575304B1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102212287B1 (en) * | 2020-11-11 | 2021-02-03 | 세종대학교산학협력단 | System and method for authenticating drone and computing device for executing the system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140137826A (en) | 2013-05-24 | 2014-12-03 | 한국항공우주산업 주식회사 | Ground Control standard working system of Unmanned Aerial Vehicles |
KR20180057468A (en) * | 2016-11-21 | 2018-05-30 | 고려대학교 산학협력단 | Hybrid pki-based drone authentication system and drone management server |
US10439825B1 (en) * | 2018-11-13 | 2019-10-08 | INTEGRITY Security Services, Inc. | Providing quality of service for certificate management systems |
-
2021
- 2021-04-15 KR KR1020210049476A patent/KR102575304B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102212287B1 (en) * | 2020-11-11 | 2021-02-03 | 세종대학교산학협력단 | System and method for authenticating drone and computing device for executing the system |
Non-Patent Citations (1)
Title |
---|
IOD 환경에서 MEC를 활용한 U2U 인증에서 보안 취약점 분석 |
Also Published As
Publication number | Publication date |
---|---|
KR20220142883A (en) | 2022-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102212287B1 (en) | System and method for authenticating drone and computing device for executing the system | |
JP7391424B2 (en) | System for verifying the integrity of unmanned aircraft | |
Zhi et al. | Security and privacy issues of UAV: A survey | |
EP3672841B1 (en) | Passenger and vehicle mutual authentication | |
US10979415B2 (en) | Unmanned vehicle message exchange | |
US11117664B2 (en) | Authentication of users for securing remote controlled devices | |
US11006277B2 (en) | Method and system for security and authentication of aircraft data transmissions | |
US11209815B2 (en) | Drone control registration | |
CN107533331B (en) | Geo-fencing device with dynamic characteristics | |
US10291764B2 (en) | Method and system to dynamically and intelligently enable access to UAVs in any location | |
US20180365676A1 (en) | Online transaction processor to enable location-based restricted device usage | |
US20230041987A1 (en) | Techniques for location access management in a movable object environment | |
US20230379403A1 (en) | Video kiosk inmate assistance system | |
US11206254B2 (en) | Unmanned vehicle management systems and methods | |
US11431712B2 (en) | System and method for personalized passenger auditing in aircrafts | |
KR102575304B1 (en) | System and method for authenticating drone and apparatus for executing the system | |
KR101827101B1 (en) | Method for verifying status of drone | |
KR20220057074A (en) | System for rental a drone | |
WO2022209040A1 (en) | Moving body authentication device, moving body authentication system, moving body authentication method, and non-transitory computer-readable medium | |
KR20240025344A (en) | Drone, traffic management server, drone registration server and drone control system using the same | |
JP7480071B2 (en) | Information Processing System | |
Kim et al. | UAV arming Authorization using DIM and Flight Authorization Code | |
KR102522599B1 (en) | Electronic device for providing location-based bidirectional key exchange protocol and operating method thereof | |
KR102565422B1 (en) | Method, computer apparatus, and computer program for providing authentication data | |
KR20220164265A (en) | Method, System and Program of Drone Control, Pilot Certification and Drone Identification |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |