KR102577260B1 - Unmanned delivery system based on user certification method and user certification - Google Patents

Unmanned delivery system based on user certification method and user certification Download PDF

Info

Publication number
KR102577260B1
KR102577260B1 KR1020210120733A KR20210120733A KR102577260B1 KR 102577260 B1 KR102577260 B1 KR 102577260B1 KR 1020210120733 A KR1020210120733 A KR 1020210120733A KR 20210120733 A KR20210120733 A KR 20210120733A KR 102577260 B1 KR102577260 B1 KR 102577260B1
Authority
KR
South Korea
Prior art keywords
customer device
code
delivery
otp
user authentication
Prior art date
Application number
KR1020210120733A
Other languages
Korean (ko)
Other versions
KR20230037775A (en
Inventor
남승엽
박유나
양성은
Original Assignee
영남대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 영남대학교 산학협력단 filed Critical 영남대학교 산학협력단
Priority to KR1020210120733A priority Critical patent/KR102577260B1/en
Publication of KR20230037775A publication Critical patent/KR20230037775A/en
Application granted granted Critical
Publication of KR102577260B1 publication Critical patent/KR102577260B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0835Relationships between shipper or supplier and carriers
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/0088Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping
    • G06Q10/0832Special goods or special handling procedures, e.g. handling of hazardous or fragile goods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic 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 using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic 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 using cryptographic hash functions

Abstract

본 발명의 서버, 주문고객장치, 배달원고객장치 및 자율주행 배송차량을 포함하는 무인배송 시스템에서 수행되는 사용자 인증 방법은, 상기 서버가, 상기 주문고객장치로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 상기 배달원고객장치 및 상기 주문고객장치에게 전송하는 단계; 상기 배달원고객장치가, 상기 세션 키에 기초하여 OTP(One-Time Password)를 생성하는 OTP 생성단계; 상기 배달원고객장치가, 상기 OTP에 해쉬함수를 기설정된 횟수만큼 적용하는 제1 적용단계; 상기 배달원고객장치가, 상기 상기 제1 적용단계에서 생성된 OTP를 기설정된 횟수만큼 상기 해쉬함수를 추가적용하는 제2 적용단계; 상기 배달원고객장치가, 상기 제2 적용단계에서 생성된 OTP에 기초하여 제1 QR 코드를 생성하는 제1 QR 코드 생성단계를 포함한다. The user authentication method performed in an unmanned delivery system including a server, an ordering customer device, a delivery person customer device, and an autonomous delivery vehicle of the present invention includes the server providing a session key based on order information received from the ordering customer device. Generating and transmitting the generated session key to the delivery person customer device and the ordering customer device; An OTP generation step in which the delivery person customer device generates an OTP (One-Time Password) based on the session key; A first application step in which the delivery person customer device applies a hash function to the OTP a preset number of times; A second application step in which the delivery person customer device additionally applies the hash function to the OTP generated in the first application step a preset number of times; It includes a first QR code generation step in which the delivery person customer device generates a first QR code based on the OTP generated in the second application step.

Description

사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템{UNMANNED DELIVERY SYSTEM BASED ON USER CERTIFICATION METHOD AND USER CERTIFICATION}User authentication method and unmanned delivery system based on user authentication {UNMANNED DELIVERY SYSTEM BASED ON USER CERTIFICATION METHOD AND USER CERTIFICATION}

본 발명은 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템에 관한 것으로 보다 상세하게는 해킹을 방지할 수 있는 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템에 관한 것이다.The present invention relates to a user authentication method and an unmanned delivery system based on user authentication. More specifically, it relates to a user authentication method and an unmanned delivery system based on user authentication that can prevent hacking.

COVID-19로 인해 대면접촉을 피하는 사회적 분위기가 조성되고 있다. 이에 맞추어 배달 방식 또한 변화하고 있으며, 특히 고객과 배달원 간의 불필요한 접촉을 최소화하고 배송 편의 향상을 위해 자율주행 배송 시스템에 대한 요구가 증대되고 있다. Due to COVID-19, a social atmosphere is being created to avoid face-to-face contact. Accordingly, delivery methods are also changing, and in particular, demand for autonomous delivery systems is increasing to minimize unnecessary contact between customers and delivery workers and improve delivery convenience.

이에 배송수행이 가능한 무인 배송차량이 개발되고 있으나, 종래의 자율주행 배송차량에는 사용자의 휴대전화번호 뒷자리 4자리 또는 사용자가 직접 지정한 비밀번호를 입력한 후, 물품을 찾아가는 방식의 인증 시스템을 사용하고 있다. Accordingly, unmanned delivery vehicles that can perform delivery are being developed, but conventional self-driving delivery vehicles use an authentication system that retrieves the goods after entering the last 4 digits of the user's mobile phone number or a password designated by the user. .

하지만 이러한 방식은 사용자의 휴대전화번호를 알고 있는 사람이라면 누구나 물품을 수령할 수 있어 해킹(중간자 공격)의 위험성이 존재할 뿐 아니라 편리성을 보장받지 못한다는 문제가 있다.However, this method has the problem that anyone who knows the user's mobile phone number can receive the goods, so there is a risk of hacking (man-in-the-middle attack) and convenience is not guaranteed.

한국공개특허공보 제10-2020-0132431호Korean Patent Publication No. 10-2020-0132431

본 발명은 상기와 같은 문제를 해결하기 위해 안출된 것으로, 본 발명의 목적은 실내 자율주행 배송 시스템에서 OTP(One Time Password), 해쉬(Hash), 암호화 알고리즘 등을 사용해 강화된 사용자 인증 기반의 무인배송시스템을 구성하여 해킹(중간자 공격)의 위험을 방지할 수 있는 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템을 제공하는 것이다.The present invention was created to solve the above problems, and the purpose of the present invention is to provide unmanned user authentication based on strengthened user authentication using OTP (One Time Password), hash, encryption algorithm, etc. in an indoor autonomous delivery system. By configuring the delivery system, we provide a user authentication method that can prevent the risk of hacking (man-in-the-middle attack) and an unmanned delivery system based on user authentication.

그리고 본 발명의 다른 목적은, 시간 기반의 OTP(One Time Password) 방식을 사용하여 Key 값의 재사용성과 중복성을 제거하여 매번 다른 키 값을 활용하고, 보안성이 보장된 Hash 함수에서 해킹(중간자 공격)을 당하더라도 역으로 계산할 수 없도록 하여 데이터의 무결성을 보장할 수 있는 무인배송을 위한 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템을 제공하는 것이다. Another purpose of the present invention is to utilize a different key value each time by eliminating the reusability and redundancy of the key value by using the time-based OTP (One Time Password) method, and to use a hash function with guaranteed security for hacking (man-in-the-middle attack). ) is to provide a user authentication method for unmanned delivery and an unmanned delivery system based on user authentication that can guarantee the integrity of data by preventing reverse calculations even if the data is compromised.

또한 본 발명의 또 다른 목적은, 사용자간 개인 키를 활용하여 암호화와 복호화를 통해 데이터의 보안성을 높이고, QR 인증 방식을 기반으로 하여 사용자가 보다 간편하고 빠르게 본인 인증을 진행하고 물품을 용이하게 수령할 수 있는 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템을 제공하는 것이다.In addition, another purpose of the present invention is to increase the security of data through encryption and decryption using private keys between users, and to enable users to more simply and quickly authenticate themselves and purchase goods based on the QR authentication method. It provides a user authentication method for receiving and an unmanned delivery system based on user authentication.

상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 서버, 주문고객장치, 배달원고객장치 및 자율주행 배송차량을 포함하는 무인배송 시스템에서 수행되는 사용자 인증 방법은, 상기 서버가, 상기 주문고객장치로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 상기 배달원고객장치 및 상기 주문고객장치에게 전송하는 세션 키 전송단계; 상기 배달원고객장치가, 상기 세션 키에 기초하여 OTP(One-Time Password)를 생성하는 OTP 생성단계; 상기 배달원고객장치가, 상기 OTP에 해쉬함수를 기설정된 횟수만큼 적용하는 제1 적용단계; 상기 배달원고객장치가, 상기 제1 적용단계에서 생성된 OTP에 상기 해쉬함수를 기설정된 횟수만큼 추가적용하는 제2 적용단계; 및 상기 배달원고객장치가, 상기 제2 적용단계에서 생성된 OTP에 기초하여 제1 QR 코드를 생성하는 제1 QR 코드 생성단계를 포함한다. A user authentication method performed in an unmanned delivery system including a server, an ordering customer device, a deliveryman customer device, and an autonomous delivery vehicle according to an embodiment of the present invention to achieve the above object includes the server, the ordering customer device A session key transmission step of generating a session key based on order information received from and transmitting the generated session key to the delivery person customer device and the ordering customer device; An OTP generation step in which the delivery person customer device generates an OTP (One-Time Password) based on the session key; A first application step in which the delivery person customer device applies a hash function to the OTP a preset number of times; A second application step in which the delivery person customer device additionally applies the hash function to the OTP generated in the first application step a preset number of times; And a first QR code generation step in which the delivery person customer device generates a first QR code based on the OTP generated in the second application step.

여기서 상기 배달원고객장치가, 상기 제1 적용단계에서 생성된 OTP를 암호화하여 비밀키를 생성하는 비밀키 생성단계; 및 상기 배달원고객장치가, 상기 생성된 비밀키를 상기 서버를 통해 상기 주문고객장치로 전송하는 비밀키 전송단계를 더 포함할 수 있다. Here, a secret key generation step in which the delivery person customer device encrypts the OTP generated in the first application step to generate a secret key; And it may further include a secret key transmission step in which the delivery person customer device transmits the generated secret key to the ordering customer device through the server.

그리고, 상기 주문고객장치가, 상기 세션 키를 이용해 상기 암호화된 비밀키를 복호화하여 상기 제1 QR 코드와는 다른 제2 QR 코드를 생성하는 제2 QR 코드 생성단계를 더 포함할 수 있다. In addition, the ordering customer device may further include a second QR code generation step of decrypting the encrypted secret key using the session key to generate a second QR code different from the first QR code.

또한, 상기 자율주행 배송차량이, 상기 제1 QR 코드 및 상기 제2 QR 코드를 인식하고 일치 여부를 판단하는 사용자 인증단계를 더 포함할 수 있다. In addition, the self-driving delivery vehicle may further include a user authentication step in which the first QR code and the second QR code are recognized and whether they match is determined.

그리고 상기 사용자 인증단계는, 상기 자율주행 배송차량이, 상기 제2 QR 코드에 포함되어 있는, 상기 제1 적용단계에서 생성된 OTP에 상기 해쉬함수를 기설정된 횟수만큼 추가적용하는 제3 적용단계를 포함하고, 상기 제3 적용단계에서 생성된 OTP와, 상기 제1 QR 코드에 포함되어 있는 OTP를 비교하여 일치여부를 판단하는 단계일 수 있다. And the user authentication step includes a third application step in which the self-driving delivery vehicle additionally applies the hash function a preset number of times to the OTP generated in the first application step and included in the second QR code. It may be a step of comparing the OTP generated in the third application step and the OTP included in the first QR code to determine whether they match.

한편 상기 다른 목적을 달성하기 위한 본 발명의 일 실시예에 따른 서버, 주문고객장치, 배달원고객장치 및 자율주행 배송차량을 포함하는 사용자 인증 기반의 무인배송 시스템은, 상기 주문고객장치로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 상기 주문고객장치 및 상기 배달원고객장치로 전송하는 서버; 상기 세션 키에 기초하여 제1 QR 코드를 생성하고, 생성된 제1 QR 코드를 상기 자율주행 배송차량에 인식시키는 배달원고객장치; 상기 세션 키에 기초하여 상기 제1 QR 코드와는 다른 제2 QR 코드를 생성하는 주문고객장치; 및 상기 제1 QR 코드에 포함된 목적지 좌표에 기초하여 목적지까지 자율주행하고, 상기 제2 QR 코드를 상기 주문고객장치로부터 인식하여 사용자 인증이 완료되면 도어를 개방하는 자율주행 배송차량을 포함한다. Meanwhile, an unmanned delivery system based on user authentication including a server, an ordering customer device, a delivery person customer device, and a self-driving delivery vehicle according to an embodiment of the present invention to achieve the above other object is an order received from the ordering customer device. A server that generates a session key based on information and transmits the generated session key to the ordering customer device and the delivery person customer device; a delivery customer device that generates a first QR code based on the session key and recognizes the generated first QR code in the autonomous delivery vehicle; an ordering customer device that generates a second QR code different from the first QR code based on the session key; and an autonomous delivery vehicle that autonomously drives to the destination based on the destination coordinates included in the first QR code, recognizes the second QR code from the ordering customer device, and opens the door when user authentication is completed.

여기서 상기 배달원고객장치는, 상기 세션 키에 기초하여 OTP(One-Time Password)를 생성하고, 상기 OTP에 해쉬함수를 N번 적용하고, 상기 해쉬함수에 N번 적용된 OTP를 암호화한 비밀키를 생성하여 상기 서버를 통해 상기 주문고객장치로 전송할 수 있다. Here, the delivery customer device generates an OTP (One-Time Password) based on the session key, applies a hash function to the OTP N times, and generates a secret key that encrypts the OTP applied to the hash function N times. This can be transmitted to the ordering customer device through the server.

그리고, 상기 배달원고객장치는, 상기 해쉬함수에 N번 적용된 OTP를, 상기 해쉬함수에 M번 추가적용하고, 상기 해쉬함수에 M번 추가적용된 OTP에 기초하여 상기 제1 QR 코드를 생성할 수 있다. And, the delivery person customer device may additionally apply the OTP applied to the hash function N times, M times, and generate the first QR code based on the OTP additionally applied to the hash function M times. .

또한, 상기 주문고객장치는, 상기 세션 키를 이용해 상기 암호화된 비밀키를 복호화하여 상기 제2 QR 코드를 생성할 수 있다. Additionally, the ordering customer device may generate the second QR code by decrypting the encrypted secret key using the session key.

그리고 상기 자율주행 배송차량은, 상기 제1 QR 코드 및 상기 제2 QR 코드의 일치여부를 판단하여 사용자 인증을 수행할 수 있다. And the self-driving delivery vehicle can perform user authentication by determining whether the first QR code and the second QR code match.

여기서 상기 자율주행 배송차량은, 상기 제2 QR 코드에 포함되어 있는 상기 해쉬함수에 N번 적용된 OTP를, 상기 해쉬함수에 M번 추가적용하고, 상기 해쉬함수에 M번 추가적용된 OTP와 상기 제1 QR 코드에 포함되어 있는 OTP를 비교하여 일치여부를 판단할 수 있다. Here, the autonomous delivery vehicle applies the OTP applied N times to the hash function included in the second QR code, additionally applies the OTP M times to the hash function, and applies the OTP additionally applied M times to the hash function and the first OTP. You can compare the OTP included in the QR code to determine whether they match.

상술한 본 발명에 따른 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템에 의해 실내 자율주행 배송 시스템에서 OTP(One Time Password), Hash, 암호화 알고리즘 등을 사용해 강화된 사용자 인증 기반의 무인배송 시스템을 구성하여 해킹(중간자 공격)의 위험을 방지할 수 있다. By using the user authentication method and user authentication-based unmanned delivery system according to the present invention described above, an unmanned delivery system based on user authentication that is strengthened using OTP (One Time Password), Hash, encryption algorithm, etc. is constructed in an indoor autonomous delivery system. This can prevent the risk of hacking (man-in-the-middle attack).

그리고 본 발명에 따른 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템에 의해 시간 기반의 OTP(One Time Password) 방식을 사용하여 Key 값의 재사용성과 중복성을 제거하여 매번 다른 키 값을 활용하고, 보안성이 보장된 Hash 함수에서 해킹(중간자 공격)을 당하더라도 역으로 계산할 수 없도록 하여 데이터의 무결성을 보장할 수 있다. In addition, the user authentication method and user authentication-based unmanned delivery system according to the present invention uses a time-based OTP (One Time Password) method to eliminate reusability and redundancy of key values, utilizing different key values each time, and improving security. In this guaranteed Hash function, the integrity of the data can be guaranteed by preventing reverse calculations even if hacked (man-in-the-middle attack) occurs.

또한 본 발명에 따른 사용자 인증 방법 및 사용자 인증 기반의 무인배송 시스템에 의해 사용자간 개인 키를 활용하여 암호화와 복호화를 통해 데이터의 보안성을 높이고, QR 인증 방식을 기반으로 하여 사용자가 보다 간편하고 빠르게 본인 인증을 진행하고 물품을 용이하게 수령할 수 있다.In addition, the user authentication method and the user authentication-based unmanned delivery system according to the present invention improve data security through encryption and decryption using private keys between users, and enable users to use the QR authentication method more simply and quickly. You can verify your identity and easily receive the goods.

도 1은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템의 개략도,
도 2는 본 발명의 일 실시예에 따른 서버의 구성을 설명하기 위한 블록도,
도 3은 본 발명의 일 실시예에 따른 배달원고객장치의 구성을 설명하기 위한 블록도,
도 4는 본 발명의 일 실시예에 따른 주문고객장치의 구성을 설명하기 위한 블록도,
도 5는 본 발명의 일 실시예에 따른 자율주행 배송차량의 구성을 설명하기 위한 블록도,
도 6은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템에서 송수신하는 비밀키를 설명하기 위한 개략도, 그리고,
도 7은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템에서 수행되는 사용자 인증 방법의 흐름도이다.
1 is a schematic diagram of an unmanned delivery system based on user authentication according to an embodiment of the present invention;
Figure 2 is a block diagram for explaining the configuration of a server according to an embodiment of the present invention;
Figure 3 is a block diagram for explaining the configuration of a delivery man customer device according to an embodiment of the present invention;
Figure 4 is a block diagram for explaining the configuration of a customer ordering device according to an embodiment of the present invention;
Figure 5 is a block diagram for explaining the configuration of an autonomous delivery vehicle according to an embodiment of the present invention;
Figure 6 is a schematic diagram illustrating a secret key transmitted and received in an unmanned delivery system based on user authentication according to an embodiment of the present invention, and
Figure 7 is a flowchart of a user authentication method performed in an unmanned delivery system based on user authentication according to an embodiment of the present invention.

후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The detailed description of the present invention described below refers to the accompanying drawings, which show by way of example specific embodiments in which the present invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different from one another but are not necessarily mutually exclusive. For example, specific shapes, structures and characteristics described herein may be implemented in one embodiment without departing from the spirit and scope of the invention. Additionally, it should be understood that the location or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the invention. Accordingly, the detailed description that follows is not intended to be taken in a limiting sense, and the scope of the invention is limited only by the appended claims, together with all equivalents to what those claims assert, if properly described. Similar reference numbers in the drawings refer to identical or similar functions across various aspects.

이하에서는 도면들을 참조하여 본 발명의 바람직한 실시예들을 보다 상세하게 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the drawings.

도 1은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템의 개략도이다. 1 is a schematic diagram of an unmanned delivery system based on user authentication according to an embodiment of the present invention.

본 발명에 따른 구성요소들은 물리적인 구분이 아니라 기능적인 구분에 의해서 정의되는 구성요소들로서 각각이 수행하는 기능들에 의해서 정의될 수 있다. 각각의 구성요소들은 하드웨어 또는 각각의 기능을 수행하는 프로그램 코드 및 프로세싱 유닛으로 구현될 수 있을 것이며, 두 개 이상의 구성요소의 기능이 하나의 구성요소에 포함되어 구현될 수도 있을 것이다. 따라서 이하의 실시예에서 구성요소에 부여되는 명칭은 각각의 구성요소를 물리적으로 구분하기 위한 것이 아니라 각각의 구성요소가 수행되는 대표적인 기능을 암시하기 위해서 부여된 것이며, 구성요소의 명칭에 의해서 본 발명의 기술적 사상이 한정되지 않는 것임에 유의하여야 한다.The components according to the present invention are components defined by functional division rather than physical division, and can be defined by the functions each performs. Each component may be implemented as hardware or program code and processing units that perform each function, and the functions of two or more components may be included and implemented in one component. Therefore, the names given to the components in the following embodiments are not intended to physically distinguish each component, but are given to suggest the representative function performed by each component, and the names of the components refer to the present invention. It should be noted that the technical idea is not limited.

본 실시예에 따른 사용자 인증 기반의 무인배송 시스템은 강화된 사용자 인증을 통해 중간자 공격, 즉 해킹의 위험을 방지하여 안전한 물품배송이 가능하도록 하기 위해 마련된다. The unmanned delivery system based on user authentication according to this embodiment is designed to enable safe product delivery by preventing the risk of man-in-the-middle attacks, that is, hacking, through strengthened user authentication.

이를 위해 본 사용자 인증 기반의 무인배송 시스템은 서버(100), 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)을 포함하여 마련된다. 이러한 서버(100), 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)에는 사용자 인증 방법을 수행하기 위한 소프트웨어(어플리케이션)가(이) 각각 설치되어 실행될 수 있으며, 각 장치들의 구성은 사용자 인증 방법을 수행하기 위한 소프트웨어에 의해 제어될 수 있다. To this end, this user authentication-based unmanned delivery system is prepared including a server 100, an order customer device 300, a delivery person customer device 200, and an autonomous delivery vehicle 400. Software (application) for performing a user authentication method may be installed and executed on these server 100, order customer device 300, delivery person customer device 200, and self-driving delivery vehicle 400, respectively. The configuration of each device can be controlled by software to perform a user authentication method.

먼저 서버(100)는, 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)과 네트워크를 통해 연동되고, 주문고객장치(300)로부터 수신된 주문정보에 기초하여, 배송될 물품을 제공할 수 있는 배달원고객장치(200)를 지정할 수 있다. First, the server 100 is linked with the ordering customer device 300, the delivery man customer device 200, and the self-driving delivery vehicle 400 through a network, and based on the order information received from the ordering customer device 300, A delivery customer device 200 that can provide goods to be delivered can be designated.

그리고 서버(100)는 물품을 제공할 배달원고객장치(200)가 지정되면 배달원고객장치(200)를 사용하는 배달원의 위치로 자율주행 배송차량(400)이 이동하도록 할 수 있다. 또한 서버(100)는 복수의 자율주행 배송차량(400)을 식별하는 식별정보를 저장하고 관리하고, 복수의 자율주행 배송차량(400)의 위치를 모니터링할 수 있다. And when the delivery person customer device 200 to provide the goods is designated, the server 100 can cause the autonomous delivery vehicle 400 to move to the location of the delivery person using the delivery person customer device 200. Additionally, the server 100 may store and manage identification information identifying a plurality of self-driving delivery vehicles 400 and monitor the locations of the plurality of self-driving delivery vehicles 400.

그리고 서버(100)는 주문고객장치(300)로부터 주문정보가 수신되면 주문정보가 수신된 시간에 기초하여 세션 키를 생성할 수 있다. 이러한 서버(100)에 대한 구체적인 내용은 도 2에서 후술하기로 한다. And when order information is received from the customer order device 300, the server 100 may generate a session key based on the time the order information was received. Detailed information about this server 100 will be described later with reference to FIG. 2 .

한편 배달원고객장치(200)는 주문고객장치(300)가 주문한 물품을 배송하는 배달원이 소지하는 단말기이고, 배달원을 식별할 수 있는 식별정보를 입력받을 수 있다. 그리고 배달원고객장치(200)는 서버(100)를 통해 주문정보를 전달받으면 주문정보의 수신완료를 확인하는 체크메시지를 포함하는 주문확인 정보를 생성하여 서버(100)로 전송할 수 있다. Meanwhile, the delivery person customer device 200 is a terminal carried by the delivery person who delivers the goods ordered by the order customer device 300, and can receive identification information that can identify the delivery person. And when the delivery person customer device 200 receives order information through the server 100, it can generate order confirmation information including a check message confirming completion of receipt of the order information and transmit it to the server 100.

그리고 배달원고객장치(200)는 서버(100)로부터 수신되는 세션 키에 기초하여 제1 QR 코드를 생성하고, 생성된 제1 QR 코드를 자율주행 배송차량(400)에 인식시킬 수 있다. 이를 통해 자율주행 배송차량(400)이 보관된 물품을 수령할 수 있는 주문고객장치(300)를 확인할 수 있게 되어 안전한 물품배송이 가능해질 수 있다. 이러한 배달원고객장치(200)에 대한 구체적인 내용은 도 3에서 후술하기로 한다. Additionally, the delivery person customer device 200 can generate a first QR code based on the session key received from the server 100 and cause the autonomous delivery vehicle 400 to recognize the generated first QR code. Through this, the self-driving delivery vehicle 400 can check the ordering customer device 300 that can receive stored goods, making safe delivery of goods possible. Specific details about this delivery person customer device 200 will be described later with reference to FIG. 3 .

한편 주문고객장치(300)는 물품을 주문하는 주문고객이 소지하는 장치로, 주문고객을 식별할 수 있는 식별정보를 입력받을 수 있다. 그리고 주문고객장치(300)는 주문고객이 제공받고자 하는 배송물품에 대한 주문정보를 입력하면 주문정보를 서버(100)로 전송할 수 있다. Meanwhile, the ordering customer device 300 is a device possessed by a customer who orders a product, and can receive identification information that can identify the ordering customer. In addition, the ordering customer device 300 can transmit the ordering information to the server 100 when the ordering customer inputs ordering information for the delivery product he or she wishes to receive.

그리고 주문고객장치(300)는 서버(100)로부터 수신되는 세션 키에 기초하여 제2 QR 코드를 생성하고, 생성된 제2 QR 코드를 자율주행 배송차량(400)에 인식시킬 수 있고, 이를 통해 자율주행 배송차량(400)에 보관된 물품을 수령할 수 있게 된다. And the customer ordering device 300 can generate a second QR code based on the session key received from the server 100 and recognize the generated second QR code on the autonomous delivery vehicle 400, through which It is possible to receive goods stored in the self-driving delivery vehicle 400.

또한 주문고객장치(300)는 서버(100)로부터 배송물품의 배송시작시간 및 도착예정시간과 같은 배송물품의 배송현황정보를 수신할 수 있다. 주문고객장치(300)에 대한 구체적인 내용은 도 4에서 후술하기로 한다.Additionally, the ordering customer device 300 can receive delivery status information of the delivered product, such as the delivery start time and estimated arrival time of the delivered product, from the server 100. Specific details about the customer order device 300 will be described later in FIG. 4.

한편 자율주행 배송차량(400)은 서버(100)에 의해 관리되며, 배달원고객장치(200)를 소지한 배달원이 제공하는 물품을 보관하고, 보관된 물품이 주문고객장치(300)를 소지한 주문고객이 위치한 목적지까지 이동하여 주문고객이 물품을 제공받을 수 있도록 하기 위해 마련된다. Meanwhile, the self-driving delivery vehicle 400 is managed by the server 100, stores goods provided by a delivery person holding a delivery person customer device 200, and the stored goods are ordered by a customer having an order customer device 300. It is designed to move to the customer's destination so that the ordering customer can receive the goods.

이를 위해 자율주행 배송차량(400)은 배달원고객장치(200)로부터 인식된 제1 QR 코드를 저장하고, 목적지에서 주문고객장치(300)로부터 인식된 제2 QR코드와 배달원고객장치(200)로부터 인식되면 저장된 제1 QR 코드를 비교하여 일치여부를 판단하는 사용자 인증을 수행하게 된다. To this end, the self-driving delivery vehicle 400 stores the first QR code recognized by the delivery person customer device 200, and stores the second QR code recognized by the order customer device 300 and the delivery person customer device 200 at the destination. Once recognized, user authentication is performed by comparing the stored first QR code to determine whether it matches.

그리고 자율주행 배송차량(400)은 제1 및 제2 QR 코드가 서로 일치하는 것으로 확인되면 자율주행 배송차량(400)은 주문고객이 물품을 제공받을 수 있도록 도어를 개방할 수 있다. And when the self-driving delivery vehicle 400 confirms that the first and second QR codes match each other, the self-driving delivery vehicle 400 can open the door so that the ordering customer can receive the product.

이러한 자율주행 배송차량(400)에는 물품을 보관할 수 있는 공간과, 공간을 개폐하는 도어를 포함할 수 있으며, 자율주행 배송차량(400)은 도시된 바와 같이 자동차로 마련될 수 있지만, 이에 한정되는 것은 아니며 물품을 이동시킬 수 있는 로봇, 카트, 선반 등을 포함하는 이동가능한 장치일 수 있다. This self-driving delivery vehicle 400 may include a space for storing goods and a door for opening and closing the space, and the self-driving delivery vehicle 400 may be provided as a car as shown, but is limited thereto. It may not be a mobile device, but may be a movable device including a robot, cart, shelf, etc. that can move items.

이러한 서버(100)를 통해 주문고객으로부터 주문정보를 수신하고, 수신된 주문정보에 따라 배달원을 특정하며, 배달원이 제공하는 물품을 이동시키는 구체적인 배송에 대해서는 일반적인 기술로 충분히 유추가능하므로 본 실시예에서는 구체적인 설명은 생략하기로 한다. Since order information is received from the ordering customer through this server 100, a delivery person is specified according to the received order information, and the specific delivery of moving the goods provided by the delivery person can be sufficiently inferred using general technology, in this embodiment Detailed explanation will be omitted.

본 발명에서는 사용자 인증 기반의 무인배송 시스템을 구성하는 서버(100), 배달원고객장치(200), 주문고객장치(300) 및 자율주행 배송차량(400) 간의 인증방식을 중점적으로 설명하기로 한다. In the present invention, we will focus on explaining the authentication method between the server 100, the delivery person customer device 200, the order customer device 300, and the autonomous delivery vehicle 400, which constitute the user authentication-based unmanned delivery system.

도 2는 본 발명의 일 실시예에 따른 서버(100)의 구성을 설명하기 위한 블록도이다. Figure 2 is a block diagram for explaining the configuration of the server 100 according to an embodiment of the present invention.

상술한 바와 같이 서버(100)는 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)과 연동하고, 주문고객장치(300)와 배달원고객장치(200) 간의 중간 매개체로 데이터를 안전하게 전달하기 위해 마련된다. As described above, the server 100 is linked with the ordering customer device 300, the delivery person customer device 200, and the self-driving delivery vehicle 400, and acts as an intermediary between the ordering customer device 300 and the delivery person customer device 200. It is designed to safely transmit data.

그리고 서버(100)는 주문고객장치(300)로부터 수신한 주문정보에 기초하여 주문고객장치(300)와 배달원고객장치(200)를 1대1로 매칭시킬 수 있다. In addition, the server 100 can match the ordering customer device 300 and the delivery person customer device 200 on a one-to-one basis based on the order information received from the ordering customer device 300.

이를 위해 서버(100)는 통신부(110), 관리부(130) 및 데이터베이스부(120)를 포함하여 마련된다. For this purpose, the server 100 is provided including a communication unit 110, a management unit 130, and a database unit 120.

통신부(110)는 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)과 네트워크를 통해 각종 정보를 송수신하기 위해 마련되며, 통신부(110)를 통해 수신된 정보가 데이터베이스부(120)에 저장되도록 할 수 있다. The communication unit 110 is provided to transmit and receive various information through a network with the order customer device 300, the delivery person customer device 200, and the self-driving delivery vehicle 400, and the information received through the communication unit 110 is stored in a database. It can be stored in unit 120.

그리고 통신부(110)는 세션 키 관리부(133)에서 생성되는 세션 키를 주문고객장치(300) 및 배달원고객장치(200)로 전송할 수 있으며, 배달원고객장치(200)로부터 암호화된 비밀키가 수신되면, 수신된 비밀키를 주문고객장치(300)로 전달할 수 있다. And the communication unit 110 can transmit the session key generated in the session key management unit 133 to the ordering customer device 300 and the delivery person customer device 200, and when the encrypted secret key is received from the delivery person customer device 200 , the received secret key can be transmitted to the ordering customer device 300.

한편 데이터베이스부(120)는 서버(100)가 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)과 송수신하는 정보를 저장하기 위해 마련되는 것으로 이러한 데이터베이스부(120)에는 주문고객을 식별할 수 있는 주문고객 식별정보, 배달원을 식별할 수 있는 배달원 식별정보, 자율주행 배송차량(400)을 식별할 수 있는 자율주행 배송차량 식별정보, 맵 정보 중 적어도 하나가 저장될 수 있다. Meanwhile, the database unit 120 is provided to store information that the server 100 transmits and receives with the order customer device 300, the delivery person customer device 200, and the self-driving delivery vehicle 400. This database unit 120 At least one of ordering customer identification information that can identify the ordering customer, delivery person identification information that can identify the delivery person, self-driving delivery vehicle identification information that can identify the self-driving delivery vehicle 400, and map information will be stored. You can.

그리고 데이터베이스부(120)는 주문고객장치(300) 및 배달원고객장치(200) 중 적어도 하나의 구성으로부터 주문정보, 배송 현황 및 배송에 관한 정보를 저장 및 관리할 수도 있다. In addition, the database unit 120 may store and manage order information, delivery status, and information about delivery from at least one of the order customer device 300 and the delivery person customer device 200.

또한 데이터베이스부(120)에는 사용자 인증 방법을 수행하기 위한 소프트웨어(어플리케이션)가 저장될 수 있으며, 배달원고객장치(200)로부터 수신되는 비밀키를 저장할 수도 있다. Additionally, the database unit 120 may store software (application) for performing a user authentication method, and may also store a secret key received from the delivery person customer device 200.

관리부(130)는 주문고객장치(300), 배달원고객장치(200) 및 자율주행 배송차량(400)과 송수신되는 정보를 생성하고 제어하기 위해 마련되며, 고객 관리부(131) 및 세션 키 관리부(133)를 포함할 수 있다. The management unit 130 is provided to generate and control information transmitted and received with the order customer device 300, the delivery person customer device 200, and the self-driving delivery vehicle 400, and the customer management unit 131 and session key management unit 133 ) may include.

고객 관리부(131)는 주문고객장치(300)로부터 주문정보가 수신되면, 수신된 주문정보에 포함된 물품을 제공할 수 있는 배달원고객장치(200)를 특정하여 주문고객장치(300)와 배달원고객장치(200)가 매칭되도록 할 수 있다. When order information is received from the order customer device 300, the customer management unit 131 specifies the delivery person customer device 200 that can provide the goods included in the received order information and connects the order customer device 300 and the delivery person customer. Device 200 can be matched.

고객 관리부(131)는 수신된 주문정보에 포함된 주문고객의 위치와 가장 근접한 위치에 있는 배달원고객장치(200)로 주문정보를 전송하고, 주문정보를 전송한 배달원고객장치(200)로부터 주문정보의 수신을 확인하는 체크메시지, 주문고객의 주소를 포함하는 주문확인 정보를 수신하면, 해당 배달원고객장치(200)와 주문고객장치(300)가 매칭되도록 한다. The customer management unit 131 transmits the order information to the delivery person customer device 200 located closest to the location of the ordering customer included in the received order information, and receives order information from the delivery person customer device 200 that transmitted the order information. Upon receiving a check message confirming receipt of and order confirmation information including the address of the ordering customer, the corresponding delivery person customer device 200 and the ordering customer device 300 are matched.

그리고 고객 관리부(131)는 매칭된 배달원고객장치(200)의 위치와 가장 근접한 위치에 대기중인 자율주행 배송차량(400)을 특정하여, 특정된 자율주행 배송차량(400)이 배달원고객장치(200)의 위치로 이동할 수 있도록 할 수도 있다. And the customer management unit 131 specifies the autonomous delivery vehicle 400 waiting at the location closest to the location of the matched delivery customer device 200, and the specified autonomous delivery vehicle 400 is connected to the delivery customer device 200. ) can also be moved to the location.

한편, 세션 키 관리부(133)는 세션 키(session key)를 생성하기 위해 마련된다. 세션 키 관리부(133)는 배달원고객장치(200)와 주문고객장치(300) 간의 매칭이 완료되면, 주문정보에 포함된 주문 시각을 기준으로 세션 키를 랜덤으로 생성할 수 있다. 그리고 이렇게 생성된 세션 키는 통신부(110)를 통해 주문고객장치(300) 및 배달원고객장치(200)로 각각 전달될 수 있도록 한다. Meanwhile, the session key management unit 133 is provided to generate a session key. When matching between the delivery person customer device 200 and the order customer device 300 is completed, the session key management unit 133 may randomly generate a session key based on the order time included in the order information. And the session key generated in this way can be transmitted to the customer ordering device 300 and the customer delivery device 200 through the communication unit 110, respectively.

세션 키 관리부(133)가 세션 키를 생성하는 방식은 하기 [의사 코드 1]과 같이 정의될 수 있다. The method by which the session key management unit 133 generates a session key can be defined as follows [pseudo code 1].

[의사 코드 1] [pseudocode 1]

그리고 세션 키 관리부(133)에서는 배달원고객장치(200)로부터 암호화된 비밀키가 수신되면, 비밀키를 전송한 배달원고객장치(200)와 매칭된 주문고객장치(300)로 비밀키가 전송될 수 있도록 통신부(110)를 제어할 수 있다. And when the session key management unit 133 receives the encrypted secret key from the delivery person customer device 200, the secret key can be transmitted to the ordering customer device 300 matched with the delivery person customer device 200 that transmitted the secret key. The communication unit 110 can be controlled so that

한편 도 3은 본 발명의 일 실시예에 따른 배달원고객장치(200)의 구성을 설명하기 위한 블록도이다. Meanwhile, Figure 3 is a block diagram for explaining the configuration of the delivery man customer device 200 according to an embodiment of the present invention.

배달원고객장치(200)는 서버(100)로부터 수신한 주문정보에 포함된 물품을 제공하기 위한 배달원이 소지하는 장치로, 자율주행 배송차량(400)을 통해 물품이 안전하게 주문고객에게 제공될 수 있도록 하는 비밀키를 생성하기 위해 마련될 수 있다. 이를 위해 배달원고객장치(200)는 배송 통신부(210), 배송 저장부(220), 배송 제어부(230) 및 배송 입출력부(240)를 포함하여 마련될 수 있다. The delivery person customer device 200 is a device carried by the delivery person to provide the goods included in the order information received from the server 100, so that the goods can be safely provided to the ordering customer through the self-driving delivery vehicle 400. It can be prepared to generate a secret key. To this end, the delivery person customer device 200 may be provided including a delivery communication unit 210, a delivery storage unit 220, a delivery control unit 230, and a delivery input/output unit 240.

배송 통신부(210)는 서버(100)와 각종 정보를 송수신하기 위해 마련되며, 배송 통신부(210)를 통해 송수신되는 정보가 배송 저장부(220)에 저장되도록 할 수 있다. The delivery communication unit 210 is provided to transmit and receive various information with the server 100, and can allow information transmitted and received through the delivery communication unit 210 to be stored in the delivery storage unit 220.

그리고 배송 저장부(220)는 배달원을 식별하기 위한 식별정보, 배달원의 주소, 사용자 인증 방법을 수행하기 위한 소프트웨어(어플리케이션)을 저장할 수 있다. 또한 배송 저장부(220)에는 서버(100)로부터 수신한 세션 키에 기초하여 OTP 값을 생성하기 위한 정보, 생성된 OTP 값에 적용되는 해쉬함수에 대한 정보 및 해쉬함수가 적용된 OTP를 암호화하기 위한 정보를 저장할 수 있다. Additionally, the delivery storage unit 220 may store identification information for identifying the delivery person, the delivery person's address, and software (application) for performing a user authentication method. Additionally, the delivery storage unit 220 contains information for generating an OTP value based on the session key received from the server 100, information on a hash function applied to the generated OTP value, and information for encrypting the OTP to which the hash function is applied. Information can be stored.

한편 배송 제어부(230)는 주문확인 정보를 생성하고, 서버(100)로부터 수신되는 세션 키에 기초하여 제1 QR 코드를 생성하기 위해 마련되는 것으로, 주문 확인부(221), OTP 생성부(223), 암호화부(225), 제1 QR 코드 생성부(227)를 포함할 수 있다. Meanwhile, the delivery control unit 230 is provided to generate order confirmation information and generate a first QR code based on the session key received from the server 100, and includes an order confirmation unit 221 and an OTP generation unit 223. ), an encryption unit 225, and a first QR code generation unit 227.

이러한 배송 제어부(230)는 배송 저장부(220)에 저장되어있는 어플리케이션에 따라 제어될 수 있으며, 배달원에게 배달원의 아이디(ID)와 비밀번호(password)를 입력하는 공란과 함께 로그인 버튼이 배송 입출력부(240)에서 출력되도록 할 수 있다. This delivery control unit 230 can be controlled according to the application stored in the delivery storage unit 220, and a login button along with a blank space for the delivery person to enter the delivery person's ID and password is provided in the delivery input/output unit. It can be output at (240).

그리고 배송 제어부(230)는 배송 입출력부(240)를 통해 배달원으로부터 해당 아이디와 비밀번호가 입력되고 로그인 버튼이 클릭되면 서버(100)에게 배달원의 정보를 전송할 수 있다. 이후 배송 제어부(230)는 배달원의 로그인이 완료되면 배송 입출력부(240)에서 배달원의 주소입력란, 주문내역확인 버튼 및 인증하기 버튼이 출력되도록 제어할 수 있다. 배달원의 주소입력란은 배송 저장부(220)에 사전에 저장된 배달원의 주소가 자동으로 입력되도록 설정될 수 있다. Additionally, the delivery control unit 230 can transmit the delivery person's information to the server 100 when the corresponding ID and password are entered by the delivery person through the delivery input/output unit 240 and the login button is clicked. Afterwards, the delivery control unit 230 can control the delivery input/output unit 240 to output the delivery person's address input field, order details confirmation button, and authentication button when the delivery person's login is completed. The delivery person's address input field can be set to automatically input the delivery person's address previously stored in the delivery storage unit 220.

한편, 주문 확인부(221)는 서버(100)로부터 주문정보를 수신하면 주문정보를 수신하였음을 확인하는 체크메시지, 배달원의 주소를 포함하는 주문확인 정보를 생성하기 위해 마련된다. 이러한 주문확인 정보는 배송 입출력부(240)에 출력된 화면에서 배달원이 주문내역확인 버튼을 클릭하면 생성될 수 있다. 그리고 주문 확인부(221)는 생성된 주문확인 정보가 서버(100)로 전송되도록 한다. Meanwhile, the order confirmation unit 221 is provided to generate order confirmation information including a check message confirming receipt of the order information and the address of the delivery person when order information is received from the server 100. Such order confirmation information can be generated when the delivery person clicks the order details confirmation button on the screen printed on the delivery input/output unit 240. And the order confirmation unit 221 causes the generated order confirmation information to be transmitted to the server 100.

OTP 생성부(223)는 OTP를 생성하기 위해 마련되는 것으로, 서버(100)에서 생성된 세션 키가 수신되면, 수신된 세션 키에 기초하여 OTP 값을 생성할 수 있다. The OTP generator 223 is provided to generate an OTP. When the session key generated by the server 100 is received, it can generate an OTP value based on the received session key.

이러한 OTP 값의 생성은 배달원고객장치(200)가 서버(100)로부터 세션 키를 수신한 이후에 배달원이 배송 입출력부(240)에서 출력된 인증하기 버튼을 클릭하면 생성될 수 있다. 이렇게 OTP 생성부(223)에서 생성된 OTP 값은 OTP 시드(seed) 값이며, 생성된 OTP 값은 암호화부(225)로 전달될 수 있다.This OTP value can be generated when the delivery person clicks the authenticate button output from the delivery input/output unit 240 after the delivery person customer device 200 receives the session key from the server 100. The OTP value generated in this way by the OTP generation unit 223 is an OTP seed value, and the generated OTP value can be transmitted to the encryption unit 225.

한편 암호화부(225)는 OTP 생성부(223)에서 생성된 OTP 값에 배송 저장부(220)에 저장된 해쉬함수(SHA-256)를 기설정된 횟수인 N번 적용한다. 그리고 암호화부(225)는 해쉬함수가 기설정된 횟수인 N번 적용된 OTP 값에 대칭키 암호화 알고리즘을 적용시켜 암호화한 비밀키를 생성하고, 생성된 비밀키가 서버(100)를 통해 주문고객장치(300)로 전달될 수 있도록 한다. 예컨대, 암호화부(225) 는 비밀키를 생성하기 위해, Vigenere 암호화 알고리즘을 사용할 수 있으나, 이에 한정되지 않는다.Meanwhile, the encryption unit 225 applies the hash function (SHA-256) stored in the delivery storage unit 220 to the OTP value generated by the OTP generation unit 223 N times, which is a preset number of times. And the encryption unit 225 generates an encrypted secret key by applying a symmetric key encryption algorithm to the OTP value to which the hash function has been applied N times, which is a preset number of times, and the generated secret key is sent to the order customer device ( 300). For example, the encryption unit 225 may use the Vigenere encryption algorithm to generate a secret key, but is not limited to this.

또한 암호화부(225)는 비밀키가 서버(100)로 전송되도록 한 이후에 해쉬함수를 N번 적용한 OTP 값에 해당 해쉬함수를 기설정된 횟수인 M번 더 추가적용할 수 있다. 그리고 암호화부(225)는 해쉬함수가 N+M번 적용된 OTP 값을 제1 QR 코드 생성부(227)로 전달할 수 있다. Additionally, after the secret key is transmitted to the server 100, the encryption unit 225 may additionally apply the hash function M times, which is a preset number of times, to the OTP value to which the hash function has been applied N times. And the encryption unit 225 may transmit the OTP value to which the hash function has been applied N+M times to the first QR code generator 227.

여기서 N 및 M은 모두 1 이상의 정수이고, N과 M은 사전에 배송 저장부(220)에 설정될 수 있을 것이다. 만약 N과 M이 1인 경우를 가정하여 설명하면 암호화부(225)는 OTP 생성부(223)에서 생성된 OTP 값에 해쉬함수를 1번 적용시킨 후 1번 해쉬함수가 적용된 OTP 값을 암호화하여 비밀키를 생성하여 서버(100)로 전송한다. 그 이후 다시 암호화부(225)는 1번 해쉬함수가 적용된 OTP 값을 1번 더 추가로 해쉬함수를 적용시켜 해쉬함수가 총 2번 적용된 OTP 값은 별도의 암호화없이 제1 QR 코드 생성부(227)로 전달하는 것일 수 있다. Here, N and M are both integers of 1 or more, and N and M may be set in advance in the delivery storage unit 220. If we assume that N and M are 1, the encryption unit 225 applies a hash function once to the OTP value generated by the OTP generation unit 223, and then encrypts the OTP value to which the hash function has been applied once. A secret key is generated and transmitted to the server 100. After that, the encryption unit 225 applies the hash function again to the OTP value to which the hash function has been applied one more time, and the OTP value to which the hash function has been applied a total of two times is sent to the first QR code generator (227) without additional encryption. ) may be transmitted.

따라서 암호화부(225)에서는 OTP 시드 값을 해쉬함수를 N번 적용한 OTP 값과 해쉬함수를 N+M번 적용한 OTP값을 각각 생성할 수 있다. Therefore, the encryption unit 225 can generate an OTP value by applying a hash function to the OTP seed value N times and an OTP value by applying the hash function N+M times.

제1 QR 코드 생성부(227)는 자율주행 배송차량(400)에 인식시키는 제1 QR 코드를 생성하기 위해 마련되는 것으로, 제1 QR 코드 생성부(227)는 암호화부(225)에서 해쉬함수가 N+M번 적용된 OTP 값을 전달받고, 해쉬함수가 N+M번 적용된 OTP 값을 이용해 제1 QR 코드를 생성할 수 있다. 그리고 제1 QR 코드 생성부(227)는 생성된 제1 QR 코드를 배송 입출력부(240)로 전달할 수 있다. 상술한 예를 들면 해쉬함수가 2번 적용된 OTP 값을 이용해 제1 QR 코드를 생성하는 것이다. 이러한 제1 QR 코드에는 물품이 배송되는 주소 정보와 OTP 시드 값이 포함될 수 있으며, 제1 QR 코드 데이터의 제일 앞 4자리에는 물품이 배송되는 주소정보인 목적지 정보가 배열될 수 있다. The first QR code generator 227 is provided to generate a first QR code to be recognized by the autonomous delivery vehicle 400. The first QR code generator 227 uses a hash function in the encryption unit 225. The OTP value to which the hash function has been applied N+M times is received, and the first QR code can be generated using the OTP value to which the hash function has been applied N+M times. And the first QR code generator 227 may transmit the generated first QR code to the delivery input/output unit 240. In the above example, the first QR code is generated using the OTP value to which the hash function has been applied twice. This first QR code may include address information to which the product is delivered and an OTP seed value, and destination information, which is address information to which the product is delivered, may be arranged in the first four digits of the first QR code data.

한편 배송 입출력부(240)는 제1 QR 코드 생성부(227)로부터 전달받은 제1 QR 코드를 출력할 수 있으며, 배송 입출력부(240)에서 출력된 제1 QR 코드를 배달원이 자율주행 배송차량(400)에 마련된 웹 카메라에 센싱되도록 하여 자율주행 배송차량(400)에 인식시킬 수 있다. Meanwhile, the delivery input/output unit 240 may output the first QR code received from the first QR code generator 227, and the delivery person may use the first QR code output from the delivery input/output unit 240 to use the self-driving delivery vehicle. It can be sensed by a web camera provided in 400 and recognized by the self-driving delivery vehicle 400.

그리고 배송 입출력부(240)는 배달원으로부터 각종 정보를 입력받거나, 배송 통신부(210) 및 배송 제어부(230)를 통해 전달받은 정보를 출력하기 위해 마련될 수 있다. 이를 위해 배송 입출력부(240)는 입력과 출력을 동시에 수행할 수 있는 터치스크린으로 구현될 수 있으나, 이에 한정되는 것은 아니며 입력부와 출력부가 각각 마련될 수도 있을 것이다. Additionally, the delivery input/output unit 240 may be provided to receive various types of information from the delivery person or to output information received through the delivery communication unit 210 and the delivery control unit 230. To this end, the delivery input/output unit 240 may be implemented as a touch screen that can perform input and output simultaneously, but is not limited to this, and an input unit and an output unit may be provided separately.

배송 입출력부(240)는 상술한 바와 같이 배송 제어부(230)에 의해 제어되고 배달원의 아이디 및 비밀번호를 입력하는 공란과 함께 로그인 버튼이 출력될 수 있다. 그리고 아이디 및 비밀번호가 입력되고 로그인 버튼이 클릭되어 로그인이 완료되면 배달원의 주소입력란, 주문내역확인 버튼 및 인증하기 버튼이 출력될 수 있다. 배송 입출력부(240)에 출력되는 화면은 어플리케이션에 포함된 사용자 인터페이스(UI, User Interface)에 기초하여 출력될 수 있을 것이다. As described above, the delivery input/output unit 240 is controlled by the delivery control unit 230, and a login button may be output along with a blank space for entering the delivery person's ID and password. And when the ID and password are entered and the login button is clicked to complete login, the delivery person's address input field, order details confirmation button, and authentication button may be displayed. The screen displayed on the delivery input/output unit 240 may be output based on the user interface (UI) included in the application.

한편, 도 4는 본 발명의 일 실시예에 따른 주문고객장치(300)의 구성을 설명하기 위한 블록도이다. Meanwhile, Figure 4 is a block diagram for explaining the configuration of the customer ordering device 300 according to an embodiment of the present invention.

주문고객장치(300)는 주문고객이 소지한 장치로 주문고객이 제공받고자 하는 물품을 주문하고, 자율주행 배송차량(400)으로부터 물품 수령을 위한 제2 QR 코드를 생성하기 위해 마련된다. 이러한 주문고객장치(300)는 주문 통신부(310), 주문 저장부(320), 주문 제어부 및 주문 입출력부(340)를 포함할 수 있다. The ordering customer device 300 is a device possessed by the ordering customer and is provided to order the product the ordering customer wants to receive and generate a second QR code for receiving the product from the self-driving delivery vehicle 400. This order customer device 300 may include an order communication unit 310, an order storage unit 320, an order control unit, and an order input/output unit 340.

주문 통신부(310)는 서버(100)와 각종 정보를 송수신하기 위해 마련될 수 있다. The order communication unit 310 may be provided to transmit and receive various information with the server 100.

주문 저장부(320)는 주문고객을 식별하기 위한 식별정보, 주문고객의 주소를 저장하고, 주문 통신부(310)에서 수신된 정보를 저장할 수 있으며, 사용자 인증 방법을 수행하기 위한 소프트웨어가 저장될 수 있다. The order storage unit 320 may store identification information for identifying the ordering customer, the address of the ordering customer, and may store information received from the order communication unit 310, and may store software for performing a user authentication method. there is.

그리고 주문 저장부(320)에는 서버(100)로부터 수신하는 세션 키와, 서버(100)로부터 수신하는 비밀키가 저장될 수 있다. Additionally, the order storage unit 320 may store a session key received from the server 100 and a secret key received from the server 100.

한편 주문 제어부(330)는 주문고객으로부터 입력되는 정보에 기초하여 주문정보를 생성하고, 배송되는 물품을 수령할 때 필요한 제2 QR 코드를 생성하기 위해 마련되며, 주문 제어부(330)는 주문부(331), 복호화부(333) 및 제2 QR 코드 생성부(335)를 포함할 수 있다. Meanwhile, the order control unit 330 is provided to generate order information based on information input from the ordering customer and generate a second QR code required when receiving the delivered product, and the order control unit 330 is an order unit ( 331), a decoding unit 333, and a second QR code generating unit 335.

주문 제어부(330)는 주문 저장부(320)에 저장되어있는 어플리케이션에 따라 제어될 수 있으며, 주문고객에게 주문고객의 아이디와 비밀번호를 입력하는 공란과 함께 로그인 버튼이 주문 입출력부(340)에서 출력되도록 할 수 있다. The order control unit 330 can be controlled according to the application stored in the order storage unit 320, and a login button is output from the order input/output unit 340 along with a blank space for the ordering customer to enter the ordering customer's ID and password. It can be done as much as possible.

그리고 주문 제어부(330)는 주문 입출력부(340)를 통해 주문고객으로부터 해당 아이디와 비밀번호가 입력되고 로그인 버튼이 클릭되면 서버(100)에게 주문고객의 정보를 전송할 수 있다. 이후 주문 제어부(330)는 주문고객의 로그인이 완료되면 주문 입출력부(340)에서 주문고객의 주소입력란, 주문하기 버튼 및 인증하기 버튼이 출력되도록 제어할 수 있다. 주문고객의 주문입력란은 주문 저장부(320)에 사전에 저장된 주문고객의 주소가 자동으로 입력되도록 설정될 수 있으며, 자동으로 입력된 주문고객의 주소는 필요에 따라 주문고객에 의해 수정입력될 수도 있음은 물론이다. In addition, the order control unit 330 can transmit the ordering customer's information to the server 100 when the ordering customer enters the corresponding ID and password through the order input/output unit 340 and the login button is clicked. Afterwards, the order control unit 330 can control the order customer's address input field, order button, and authentication button to be output from the order input/output unit 340 when the order customer's login is completed. The order input field of the ordering customer can be set to automatically input the address of the ordering customer pre-stored in the order storage unit 320, and the automatically entered address of the ordering customer may be modified and entered by the ordering customer as necessary. Of course it exists.

주문부(331)는 주문 입출력부(340)를 통해 주문고객에 의해 입력된 주문고객이 필요로 하는 물품에 대한 정보, 주문고객의 주소를 포함하는 주문정보를 생성하기 위해 마련된다. 이러한 주문정보는 어플리케이션(소프트웨어) 구동을 통해 주문 입출력부(340)에서 출력된 화면에서 주문고객이 주문하기 버튼을 클릭하면 생성될 수 있다. 그리고 주문부(331)는 생성된 주문정보가 서버(100)로 전송되도록 한다. The order unit 331 is provided to generate order information including information about the product needed by the ordering customer and the address of the ordering customer entered by the ordering customer through the order input/output unit 340. This order information can be generated when the ordering customer clicks the order button on the screen output from the order input/output unit 340 by running the application (software). And the order unit 331 causes the generated order information to be transmitted to the server 100.

주문부(331)에서 생성된 주문정보가 서버(100)로 전송된 이후 주문 제어부(330)는 서버(100)로부터 세션 키를 수신받을 때까지 대기하고, 서버(100)로부터 세션 키를 수신하면 수신된 세션 키를 복호화부(333)로 전달할 수 있다. 이러한 세션 키는 배달원고객장치(200)로부터 전달받은 비밀키의 복호화에 키(key)로 쓰이게 된다. After the order information generated in the order unit 331 is transmitted to the server 100, the order control unit 330 waits until it receives the session key from the server 100, and when it receives the session key from the server 100, the order control unit 330 waits. The received session key may be transmitted to the decryption unit 333. This session key is used as a key to decrypt the secret key received from the delivery person customer device 200.

그리고 주문 제어부(330)는 세션 키를 수신받은 후 서버(100)로부터 도착 알림 메시지를 받을 때까지 대기할 수 있으며, 서버(100)로부터 도착 알림 메시지를 받음과 동시에 배달원고객장치(200)로부터 생성된 암호화가 된 패킷, 즉 비밀키를 서버(100)를 통해 전달받을 수 있다. 여기서 도착 알림 메시지는 "5분 뒤 배송물품이 도착합니다."와 같은 알림일 수 있으며, 이러한 도착 알림 메시지는 서버(100)가 배달원고객장치(200)로부터 수신한 주문확인 정보에 기초하여 생성한 메시지일 수 있으나, 이에 한정되는 것은 아니며 배달원고객장치(200)가 배달원이 입력한 예상도착시간을 주문확인 정보에 포함시켜 서버(100)로 전송하고, 서버(100)는 전달만 할 수도 있다. In addition, the order control unit 330 may wait until receiving an arrival notification message from the server 100 after receiving the session key, and generate the arrival notification message from the delivery person customer device 200 at the same time as receiving the arrival notification message from the server 100. The encrypted packet, that is, the secret key, can be delivered through the server 100. Here, the arrival notification message may be a notification such as “The delivery item will arrive in 5 minutes,” and this arrival notification message is generated by the server 100 based on the order confirmation information received from the delivery person customer device 200. It may be a message, but is not limited to this, and the delivery person customer device 200 may include the estimated arrival time entered by the delivery person in the order confirmation information and transmit it to the server 100, and the server 100 may only deliver the message.

복호화부(333)는 비밀키를 복호화하기 위해 마련된다. 구체적으로 복호화부(333)는 서버(100)로부터 비밀키를 전달받은 이후 주문고객이 주문 입출력부(340)를 통해 출력된 인증하기 버튼을 클릭하면, 서버(100)로부터 전달받은 세션 키를 이용해 비밀키의 복호화를 수행할 수 있다. 복호화부(333)에서 복호화된 해쉬함수가 N번 적용된 OTP 값은 제2 QR 코드 생성부(335)로 전달될 수 있다. The decryption unit 333 is provided to decrypt the secret key. Specifically, after receiving the secret key from the server 100, when the ordering customer clicks the authenticate button output through the order input/output unit 340, the decryption unit 333 uses the session key received from the server 100. Decryption of the private key can be performed. The OTP value to which the hash function decrypted in the decryption unit 333 has been applied N times may be transmitted to the second QR code generator 335.

제2 QR 코드 생성부(335)는 자율주행 배송차량(400)에 인식시키는 제2 QR 코드를 생성하기 위해 마련되는 것으로, 제2 QR 코드 생성부(335)는 복호화부(333)에서 해쉬함수가 N번 적용된 OTP 값을 전달받고, 해쉬함수가 N번 적용된 OTP 값을 이용해 제2 QR 코드를 생성할 수 있다. The second QR code generator 335 is provided to generate a second QR code that is recognized by the autonomous delivery vehicle 400. The second QR code generator 335 uses a hash function in the decoder 333. The OTP value to which the hash function has been applied N times is received, and a second QR code can be generated using the OTP value to which the hash function has been applied N times.

즉 제2 QR 코드는 해쉬함수가 N번 적용된 OTP 값에 기초한 QR 코드이고, 제1 QR 코드는 해쉬함수가 N+M번 적용된 OTP 값에 기초한 QR 코드로써, 제1 QR 코드와 제2 QR 코드는 서로 다른 QR 코드이다. 결과적으로 배달원의 제1 QR 코드와 주문고객의 제2 QR 코드 데이터의 원본은 같지만, 해쉬함수의 적용 횟수가 다름으로 인해 다른 형태를 띄고 있으므로, 해킹(중간자 공격)의 방지가 가능할 수 있다. That is, the second QR code is a QR code based on the OTP value to which the hash function has been applied N times, and the first QR code is a QR code based on the OTP value to which the hash function has been applied N+M times. The first QR code and the second QR code are are different QR codes. As a result, the original data of the delivery person's first QR code and the ordering customer's second QR code are the same, but have different forms due to the different number of times the hash function is applied, so it may be possible to prevent hacking (man-in-the-middle attack).

그리고 제2 QR 코드 생성부(335)는 생성된 제2 QR 코드를 주문 입출력부(340)로 전달할 수 있다. 이러한 제2 QR 코드에는 주소 정보와 OTP 시드값이 포함될 수 있으며, 제2 QR 코드 데이터의 제일 앞 4자리에는 자율주행 배송차량(400)이 배송을 완료한 이후에 이동되어야 하는 홈(home) 주소정보인 홈 정보가 배열될 수 있다. And the second QR code generator 335 may transmit the generated second QR code to the order input/output unit 340. This second QR code may include address information and an OTP seed value, and the first four digits of the second QR code data include the home address to which the self-driving delivery vehicle 400 should be moved after completing delivery. Home information, which is information, can be arranged.

한편 주문 입출력부(340)는 제2 QR 코드 생성부(335)로부터 전달받은 제2 QR 코드를 출력할 수 있으며, 주문 입출력부(340)에서 출력된 제2 QR 코드를 주문고객이 자율주행 배송차량(400)에 마련된 웹 카메라에 센싱되도록 하여 자율주행 배송차량(400)에 인식시킬 수 있다. Meanwhile, the order input/output unit 340 can output the second QR code received from the second QR code generator 335, and the ordering customer autonomously delivers the second QR code output from the order input/output unit 340. It can be sensed by a web camera provided in the vehicle 400 and recognized by the self-driving delivery vehicle 400.

그리고 주문 입출력부(340)는 주문고객으로부터 각종 정보를 입력받거나, 주문 통신부(310) 및 주문 제어부(330)를 통해 전달받은 정보를 출력하기 위해 마련될 수 있다. 이를 위해 주문 입출력부(340)는 입력과 출력을 동시에 수행할 수 있는 터치스크린으로 구현될 수 있으나, 이에 한정되는 것은 아니며 입력부와 출력부가 각각 마련될 수도 있을 것이다. Additionally, the order input/output unit 340 may be provided to receive various information from ordering customers or to output information received through the order communication unit 310 and the order control unit 330. To this end, the order input/output unit 340 may be implemented as a touch screen that can perform input and output simultaneously, but is not limited to this, and an input unit and an output unit may be provided separately.

주문 입출력부(340)는 상술한 바와 같이 주문 제어부(330)에 의해 제어되고 주문 고객의 아이디 및 비밀번호를 입력하는 공란과 함께 로그인 버튼이 출력될 수 있다. 그리고 아이디 및 비밀번호가 입력되고 로그인 버튼이 클릭되어 로그인이 완료되면 주문고객의 주소입력란, 주문하기 버튼 및 인증하기 버튼이 출력될 수 있다. 주문 입출력부(340)에 출력되는 화면은 어플리케이션에 포함된 사용자 인터페이스(UI, User Interface)에 기초하여 출력될 수 있을 것이다. The order input/output unit 340 is controlled by the order control unit 330 as described above, and a login button may be output along with a blank space for entering the ordering customer's ID and password. And when the ID and password are entered and the login button is clicked to complete login, the ordering customer's address input field, order button, and authentication button may be displayed. The screen displayed on the order input/output unit 340 may be output based on the user interface (UI) included in the application.

도 5는 본 발명의 일 실시예에 따른 자율주행 배송차량(400)의 구성을 설명하기 위한 블록도이다. 본 실시예에 따른 자율주행 배송차량(400)은 배달원에 제공하는 물품을 주문고객이 위치한 장소까지 배송해주기 위해 마련될 수 있다. 이러한 자율주행 배송차량(400)에는 배송되는 물품을 실을 수 있는 공간과 모터를 통해 개폐되는 도어가 마련될 수 있다. 이러한 자율주행 배송차량(400)은 차량 통신부(410), 차량 센서부(420), 차량 저장부(430) 및 차량 제어부(440)를 포함하여 마련될 수 있다. 그리고 도면에는 미도시되었으나 물품의 출입이 가능하도록 하는 도어를 더 포함할 수 있다. Figure 5 is a block diagram for explaining the configuration of an autonomous delivery vehicle 400 according to an embodiment of the present invention. The self-driving delivery vehicle 400 according to this embodiment may be prepared to deliver goods provided to the delivery person to the location where the ordering customer is located. This self-driving delivery vehicle 400 may be provided with a space for loading delivered goods and a door that opens and closes using a motor. This autonomous delivery vehicle 400 may be provided including a vehicle communication unit 410, a vehicle sensor unit 420, a vehicle storage unit 430, and a vehicle control unit 440. In addition, although not shown in the drawing, a door that allows entry and exit of goods may be further included.

차량 통신부(410)는 서버(100)와 각종 정보를 송수신하기 위해 마련되며, 차량 통신부(410)를 통해 송수신되는 정보가 차량 저장부(430)에 저장되도록 할 수 있다. The vehicle communication unit 410 is provided to transmit and receive various information with the server 100, and can allow information transmitted and received through the vehicle communication unit 410 to be stored in the vehicle storage unit 430.

차량 센서부(420)는 배달원고객장치(200)에서 생성된 제1 QR 코드 또는 주문고객장치(300)에서 생성된 제2 QR 코드를 인식하기 위해 마련되는 것으로, 본 실시예의 차량 센서부(420)는 웹 카메라로 마련될 수 있으나, 이에 한정되는 것은 아니다. The vehicle sensor unit 420 is provided to recognize the first QR code generated by the delivery person customer device 200 or the second QR code generated by the order customer device 300, and the vehicle sensor unit 420 of this embodiment ) may be provided as a web camera, but is not limited to this.

차량 센서부(420)는 제1 QR 코드 또는 제2 QR 코드가 인식되면 차량 제어부(440)로 전달할 수 있다. When the first QR code or the second QR code is recognized, the vehicle sensor unit 420 can transmit it to the vehicle control unit 440.

한편 차량 저장부(430)는 자율주행 배송차량(400)을 식별하기 위한 식별정보, 맵 정보, 사용자 인증 방법을 수행하기 위한 소프트웨어(어플리케이션)가 저장될 수 있다. 그리고 이러한 차량 저장부(430)에는 제1 QR 코드와 제2 QR 코드 간의 일치여부를 확인하기 위해 배달원고객장치(200)에 저장된 해쉬함수에 대한 정보가 동일하게 저장될 수 있다. Meanwhile, the vehicle storage unit 430 may store identification information for identifying the self-driving delivery vehicle 400, map information, and software (application) for performing a user authentication method. And in this vehicle storage unit 430, information about the hash function stored in the delivery person customer device 200 may be equally stored in order to check whether the first QR code matches the second QR code.

차량 제어부(440)는 자율주행 배송차량(400)이 배송하는 물품이 올바르게 배송될 수 있도록 사용자 인증을 수행하고, 보관된 물품을 주문한 주문고객이 맞으면 주문고객이 물품을 수령할 수 있도록 도어를 개방하도록 제어할 수 있으며, 이러한 차량 제어부(440)는 사용자 인증부(441) 및 개폐장치 제어부(443)를 포함하여 마련될 수 있다. The vehicle control unit 440 performs user authentication so that the goods delivered by the self-driving delivery vehicle 400 can be delivered correctly, and if it is the customer who ordered the stored goods, it opens the door so that the customer can receive the goods. The vehicle control unit 440 may be provided to include a user authentication unit 441 and an opening/closing device control unit 443.

사용자 인증부(441)는 차량 센서부(420)에서 인식된 제1 QR 코드와 제2 QR 코드를 비교하여 일치여부를 판단하기 위해 마련될 수 있다. 이를 위해 사용자 인증부(441)는 목적지에 도착한 이후 주문고객장치(300)로부터 인식된 제2 QR 코드를 배송시작 전에 배달원고객장치(200)로부터 인식된 제1 QR 코드와 비교한다. The user authentication unit 441 may be provided to compare the first QR code and the second QR code recognized by the vehicle sensor unit 420 to determine whether they match. To this end, the user authentication unit 441 compares the second QR code recognized from the ordering customer device 300 after arriving at the destination with the first QR code recognized from the delivery person customer device 200 before delivery begins.

이 때 사용자 인증부(441)는 제2 QR 코드에 포함되어있는 해쉬함수가 N번 적용된 OTP 값을 차량 저장부(430)에 저장된 해쉬함수를 이용하여 다시 M번 더 추가로 해쉬함수를 적용할 수 있다. At this time, the user authentication unit 441 may apply the hash function M more times to the OTP value to which the hash function included in the second QR code has been applied N times using the hash function stored in the vehicle storage unit 430. You can.

그리고 사용자 인증부(441)는 제2 QR 코드에 M번의 해쉬함수를 적용한 OTP 값과 배달원고객장치(200)로부터 수신한 제1 QR 코드에 포함된 N+M번의 해쉬함수가 적용된 OTP값을 비교하여 데이터 간의 일치 여부를 판단할 수 있다. 이에 사용자 인증부(441)는 두 데이터가 일치하는 것으로 판단되면 개폐신호를 생성하여 개폐장치 제어부(443)로 전달할 수 있다. And the user authentication unit 441 compares the OTP value obtained by applying the M hash function to the second QR code and the OTP value applied by the N+M hash function included in the first QR code received from the delivery person customer device 200. Thus, it is possible to determine whether there is a match between the data. Accordingly, if the user authentication unit 441 determines that the two data match, it can generate an opening/closing signal and transmit it to the opening/closing device control unit 443.

한편 개폐장치 제어부(443)는 자율주행 배송차량(400)에 마련된 개폐장치, 즉 도어를 개폐하기 위한 도어를 제어하기 위해 마련된다. 이러한 개폐장치 제어부(443)는 사용자 인증부(441)로부터 개폐신호를 전달받으면 개폐신호에 기초하여 모터를 제어해 도어가 열리거나 닫히도록 할 수 있다. Meanwhile, the opening and closing device control unit 443 is provided to control the opening and closing device provided in the autonomous delivery vehicle 400, that is, the door for opening and closing the door. When the opening/closing device control unit 443 receives an opening/closing signal from the user authentication unit 441, it can control the motor based on the opening/closing signal to open or close the door.

이러한 사용자 인증부(441) 및 개폐장치 제어부(443)를 포함하는 차량 제어부(440)는 제1 QR 코드 또는 제2 QR 코드에 포함된 주소 정보에 기초하여 자율주행을 수행할 수 있다. The vehicle control unit 440 including the user authentication unit 441 and the switch control unit 443 can perform autonomous driving based on address information included in the first QR code or the second QR code.

차량 제어부(440)는 배달원고객장치(200)로부터 제1 QR 코드가 인식된 경우에는 제1 QR 코드 데이터의 제일 앞 4자리에 포함된 목적지 정보를 가져오고, 해당 목적지 정보를 차량 저장부(430)에 저장된 맵에서 조회한 후 목적지 좌표 값을 얻어 해당 위치로 주행을 시작하도록 제어할 수 있다. When the first QR code is recognized by the delivery person customer device 200, the vehicle control unit 440 retrieves the destination information included in the first four digits of the first QR code data, and stores the destination information in the vehicle storage unit 430. ), you can obtain the destination coordinates and control the vehicle to start driving to that location.

그리고 차량 제어부(440)는 배달원고객장치(200)로부터 제2 QR 코드가 인식되고 최종적으로 물품이 주문고객에게 제공되고 난 이후에는 제2 QR 코드 데이터의 제일 앞 4자리에 포함된 홈 정보를 가져오고, 해당 홈 정보를 차량 저장부(430)에 저장된 맵에 조회한 후 홈 좌표 값을 얻어 해당 위치로 주행을 시작하도록 제어할 수 있다. 또한 차량 제어부(440)는 이와는 달리 사전에 차량 저장부(430)에 자율주행 배송차량(400)이 회귀해야 하는 장소인 기본위치 정보가 저장되어 있는 경우에는, 제2 QR 코드에 홈 정보가 포함되어 있더라도 이와는 무관하게 사전에 설정된 기본위치 정보에 기초하여 해당 위치로 주행을 수행할 수도 있다. And after the second QR code is recognized by the delivery person customer device 200 and the product is finally provided to the ordering customer, the vehicle control unit 440 retrieves the home information included in the first four digits of the second QR code data. After coming, the home information can be searched on the map stored in the vehicle storage unit 430, and the home coordinate value can be obtained and controlled to start driving to the corresponding location. Also, unlike this, the vehicle control unit 440 includes home information in the second QR code when basic location information, which is the place where the autonomous delivery vehicle 400 should return, is stored in advance in the vehicle storage unit 430. Regardless of this, driving to the corresponding location may be performed based on preset basic location information.

도 6은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템에서 송수신하는 비밀키를 설명하기 위한 개략도로써, 도 6에서는 상술한 도 2 내지 도 5에서 설명한 내용 중 각 구성들 간의 구체적인 설명은 생략하고, 서버(100), 배달원고객장치(200), 주문고객장치(300) 및 자율주행 배송차량(400) 간에 비밀키가 송수신되는 구성에 대해서만 설명하기로 한다. FIG. 6 is a schematic diagram illustrating a secret key transmitted and received in an unmanned delivery system based on user authentication according to an embodiment of the present invention. In FIG. 6, a detailed description of each component among the contents described in FIGS. 2 to 5 is provided. will be omitted, and only the configuration in which the secret key is transmitted and received between the server 100, the delivery person customer device 200, the order customer device 300, and the autonomous delivery vehicle 400 will be described.

먼저 배달원고객장치(200)와 주문고객장치(300)가 매칭되면 서버(100)는 세션 키(Session key(Ks))를 생성하여 배달원고객장치(200)와 주문고객장치(300)에 생성된 세션 키((Session key(Ks))를 각각 전송한다. First, when the delivery person customer device 200 and the order customer device 300 are matched, the server 100 generates a session key (Session key (Ks)) and generates a session key (Ks) Each session key ((Session key(Ks)) is transmitted.

이후 배달원고객장치(200)는 수신된 세션 키(Session key(Ks))를 기초로 OTP 값을 생성하고, 생성된 OTP 값에 해쉬함수를 N번 적용한다. 이때, 해쉬함수에 적용되는 값은 OTP의 Seed 값이며, 이러한 OTP의 Seed 값은 아래와 같이 정의될 수 있다.Thereafter, the delivery person customer device 200 generates an OTP value based on the received session key (Session key (Ks)) and applies a hash function to the generated OTP value N times. At this time, the value applied to the hash function is the OTP Seed value, and this OTP Seed value can be defined as follows.

<수학식 1><Equation 1>

Seed=Nonce||Time Seed=Nonce||Time

여기서, Nonce 는 중복이 되지 않는 난수임. Here, Nonce is a random number that does not overlap.

이후, 배달원고객장치(200)는 N번 해쉬함수를 적용한 OTP 값을 암호화하여 암호화된 비밀키(Ks(hN(Seed)))를 서버(100)로 전송한다. Afterwards, the delivery customer device 200 encrypts the OTP value by applying the N hash function and transmits the encrypted secret key (Ks(h N (Seed))) to the server 100.

또한 배달원고객장치(200)는 N번 해쉬함수를 적용한 OTP 값에 추가적으로 해쉬함수를 M번 적용한다. 이렇게 해쉬함수가 N+M번 적용된 OTP 값(hN+M(Seed))을 자율주행 배송차량(400)에 전송하게 된다. 이때 해쉬함수가 N+M번 적용된 OTP 값(hN+M(Seed))은 상술한 바와 같이 QR 코드의 형태로 변환되어 제1 QR 코드로 자율주행 배송차량(400)에 인식시킬 수 있게 된다. Additionally, the delivery person customer device 200 additionally applies the hash function M times to the OTP value to which the N hash function has been applied. In this way, the OTP value (h N+M (Seed)) to which the hash function has been applied N+M times is transmitted to the autonomous delivery vehicle 400. At this time, the OTP value (h N+M (Seed)) to which the hash function has been applied N+M times is converted into the form of a QR code as described above and can be recognized by the autonomous delivery vehicle 400 as the first QR code. .

한편, 서버(100)는 배달원고객장치(200)로부터 수신한 암호화된 비밀키(Ks(hN(Seed))) 를 주문고객장치(300)로 전송한다. Meanwhile, the server 100 transmits the encrypted secret key (Ks(h N (Seed))) received from the delivery customer device 200 to the ordering customer device 300.

그러면 주문고객장치(300)는 서버(100)로부터 수신한 암호화된 비밀키(Ks(hN(Seed)))를 세션 키(Session key(Ks))를 이용해 복호화를 수행할 수 있다. 그리고 복호화된 해쉬함수가 N번 적용된 OTP값 (hN(Seed))를 자율주행 배송차량(400)으로 전송할 수 있다. 이때 복호화된 해쉬함수가 N번 적용된 OTP값 (hN(Seed))은 상술한 바와 같이 QR 코드의 형태로 변환되어 제2 QR 코드의 데이터로써 자율주행 배송차량(400)에 인식시킬 수 있다. Then, the ordering customer device 300 can decrypt the encrypted secret key (Ks(h N (Seed))) received from the server 100 using a session key (Session key (Ks)). And the OTP value (h N (Seed)) to which the decrypted hash function has been applied N times can be transmitted to the autonomous delivery vehicle 400. At this time, the OTP value (h N (Seed)) to which the decrypted hash function has been applied N times is converted into the form of a QR code as described above and can be recognized by the autonomous delivery vehicle 400 as data of the second QR code.

이후 자율주행 배송차량(400)은 배달원고객장치(200)로부터 수신한 해쉬함수가 N+M번 적용된 OTP 값(hN+M(Seed))과 주문고객장치(300)로부터 수신한 복호화된 해쉬함수가 N번 적용된 OTP값 (hN(Seed))을 비교할 수 있다. Afterwards, the self-driving delivery vehicle 400 receives the OTP value (h N+M (Seed)) to which the hash function received from the delivery customer device 200 has been applied N+M times and the decrypted hash received from the ordering customer device 300. You can compare the OTP value (h N (Seed)) where the function is applied N times.

구체적으로 자율주행 배송차량(400)은 주문고객장치(300)로부터 수신한 복호화된 해쉬함수가 N번 적용된 OTP값 (hN(Seed))에 해쉬함수를 M번 더 추가적용하게 된다. 이렇게 생성된 hM(hN(Seed))과 배달원고객장치(200)로부터 수신한 해쉬함수가 N+M번 적용된 OTP 값(hN+M(Seed))이 일치하는지를 판단하는 것이다. Specifically, the autonomous delivery vehicle 400 additionally applies the hash function M times to the OTP value (h N (Seed)) to which the decrypted hash function received from the ordering customer device 300 has been applied N times. It is determined whether h M (h N (Seed)) generated in this way and the hash function received from the delivery customer device 200 match the OTP value (h N + M (Seed)) applied N + M times.

즉 본 실시예에 따른 사용자 인증 기반의 무인배송 시스템에서는 배달원고객장치(200)의 제1 QR 코드와 주문고객장치(300)의 제2 QR 코드가 다르기 때문에, 배달원 또는 주문고객이 아닌 제3자인 중간자가 중간에 QR 코드를 가로채더라도 배송물품을 수령할 수 없게 되며, 최종적으로 해킹(중간자 공격)을 할 수 없으며, 이러한 QR 코드는 일회성으로 매번 다른 형태로 생성되기 때문에 재사용성과 중복성의 위험성 또한 없다. That is, in the user authentication-based unmanned delivery system according to this embodiment, the first QR code of the delivery person customer device 200 and the second QR code of the ordering customer device 300 are different, so a third party other than the delivery person or ordering customer Even if an intermediary intercepts the QR code, you will not be able to receive the delivery, and ultimately, hacking (man-in-the-middle attack) will not be possible, and since these QR codes are one-time and generated in a different form each time, there is also a risk of reusability and redundancy. does not exist.

한편, 도 7은 본 발명의 일 실시예에 따른 사용자 인증 기반의 무인배송 시스템에서 수행되는 사용자 인증 방법의 흐름도로써, 도 7에서는 상술한 도 2 내지 도 5를 통해 충분히 유추가능하거나 중복되는 내용은 생략하기로 한다. Meanwhile, Figure 7 is a flowchart of a user authentication method performed in an unmanned delivery system based on user authentication according to an embodiment of the present invention. In Figure 7, the content that can be sufficiently inferred or overlapped with Figures 2 to 5 described above is Decided to omit it.

본 실시예에 따른 사용자 인증 방법은, 세션 키 전송단계(S710), OTP 생성단계(S720), 제1 적용단계(S730), 제2 적용단계(S760), 제1 QR 코드 생성단계(S770)를 포함할 수 있다. The user authentication method according to this embodiment includes a session key transmission step (S710), an OTP generation step (S720), a first application step (S730), a second application step (S760), and a first QR code generation step (S770). may include.

세션 키 전송단계(S770)는 서버(100)가 주문고객장치(300)로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 배달원고객장치(200) 및 주문고객장치(300)에게 전송하는 단계일 수 있다. In the session key transmission step (S770), the server 100 generates a session key based on the order information received from the ordering customer device 300, and sends the generated session key to the delivery person customer device 200 and the ordering customer device 300. ) may be the step of transmitting to.

상술한 바와 같이 서버(100)는 주문고객장치(300)로부터 주문정보를 수신하면 주문정보에 포함된 시각에 기초하여 랜덤으로 세션 키를 생성할 수 있다. 이후 이렇게 생성된 세션 키를 배달원고객장치(200)와 주문고객장치(300)로 각각 전송할 수 있다. As described above, when the server 100 receives order information from the customer order device 300, it can randomly generate a session key based on the time included in the order information. Thereafter, the session key generated in this way can be transmitted to the delivery person customer device 200 and the order customer device 300, respectively.

OTP 생성단계(S720)는 배달원고객장치(200)가 세션 키에 기초하여 OTP(One-Time Password)를 생성하는 단계일 수 있다. 이러한 OTP의 생성은 배달원고객장치(200)에서 배달원에 의해 인증하기 버튼이 클릭됨에 따라 수행될 수 있다. The OTP generation step (S720) may be a step in which the delivery person customer device 200 generates an OTP (One-Time Password) based on the session key. The generation of this OTP can be performed by clicking the authentication button by the delivery person on the delivery person customer device 200.

그리고 제1 적용단계(S730)는 배달원고객장치(200)가, OTP 생성단계(S720)에서 생성된 OTP에 사전에 저장된 해쉬함수를 기설정된 횟수만큼 적용하는 단계일 수 있다. And the first application step (S730) may be a step in which the delivery person customer device 200 applies a pre-stored hash function to the OTP generated in the OTP generation step (S720) a preset number of times.

이 때 본 실시예에 따른 사용자 인증 방법은 비밀키 생성단계(S740)와 비밀키 전송단계(S750)를 더 포함할 수 있다. At this time, the user authentication method according to this embodiment may further include a secret key generation step (S740) and a secret key transmission step (S750).

비밀키 생성단계(S740)는 배달원고객장치(200)가 제1 적용단계(S730)에서 생성된 OTP를 암호화하여 비밀키를 생성하는 단계로, 암호화된 비밀키는 제1 적용단계(S760)에서 생성된 OTP를 대칭키 암호화 알고리즘에 적용하여 암호화하여 생성될 수 있다. The secret key generation step (S740) is a step in which the delivery person customer device 200 generates a secret key by encrypting the OTP generated in the first application step (S730). The encrypted secret key is used in the first application step (S760). It can be generated by encrypting the generated OTP by applying a symmetric key encryption algorithm.

이후 비밀키 전송단계(S750)에서는 비밀키 생성단계(S740)에서 생성된 암호화된 비밀키를 서버(100)를 통해 주문고객장치(300)로 전송할 수 있다. Afterwards, in the secret key transmission step (S750), the encrypted secret key generated in the secret key generation step (S740) can be transmitted to the ordering customer device 300 through the server 100.

한편 제2 적용단계(S760)는, 배달원고객장치(200)가 제1 적용단계(S730)에서 생성된 OTP에 해쉬함수를 기설정된 횟수만큼 추가적용하는 단계일 수 있다. 구체적으로 상술한 바와 같이 기설정된 횟수인 N번만큼 해쉬함수가 적용된 OTP에 다시 한번 기설정된 횟수인 M번 만큼 해쉬함수를 추가적용하는 것이다. Meanwhile, the second application step (S760) may be a step in which the delivery person customer device 200 additionally applies a hash function to the OTP generated in the first application step (S730) a preset number of times. Specifically, as described above, the hash function is additionally applied a preset number of times, M, to the OTP to which the hash function has been applied a preset number of times, N times.

그리고 제1 QR 코드 생성단계(S770)는 배달원고객장치(200)가 제2 적용단계(S760)에서 생성된 OTP에 기초하여 제1 QR 코드를 생성하는 단계일 수 있다. 이렇게 생성된 제1 QR 코드는 제1 QR 코드 인식단계(S780)에서 자율주행 배송차량(400)의 웹 카메라에 인식될 수 있으며, 제1 QR 코드 인식단계(S780)에서 자율주행 배송차량(400)에서 인식된 제1 QR 코드는 사용자 인증을 위해 사용될 수 있다. And the first QR code generation step (S770) may be a step in which the delivery person customer device 200 generates a first QR code based on the OTP generated in the second application step (S760). The first QR code generated in this way can be recognized by the web camera of the self-driving delivery vehicle 400 in the first QR code recognition step (S780), and the self-driving delivery vehicle 400 in the first QR code recognition step (S780) ) The first QR code recognized can be used for user authentication.

또한 본 실시예에 따른 사용자 인증 방법은, 제2 QR 코드 생성단계(S790) 및 사용자 인증단계(S820)를 더 포함할 수도 있다. Additionally, the user authentication method according to this embodiment may further include a second QR code generation step (S790) and a user authentication step (S820).

제2 QR 코드 생성단계(S790)는 주문고객장치(300)가 서버(100)로부터 수신한 세션 키를 이용해 암호화된 비밀키를 복호화하여 제1 QR 코드와는 다른 제2 QR 코드를 생성하는 단계일 수 있다. 구체적으로 암호화된 비밀키에는 제1 적용단계(S730)에서 생성된 OTP가 포함된다. 따라서 제2 QR 코드는 해쉬함수를 기설정된 횟수만큼 적용한 OTP에 대한 정보가 포함된다. 반면 제1 QR 코드는 제2 적용단계(S760)에서 생성된 OTP가 포함되므로 결과적으로 제1 QR 코드와 제2 QR 코드는 코드의 형태가 다르게 생성될 수 있다. The second QR code generation step (S790) is a step in which the ordering customer device 300 decrypts the encrypted secret key using the session key received from the server 100 to generate a second QR code different from the first QR code. It can be. Specifically, the encrypted secret key includes the OTP generated in the first application step (S730). Therefore, the second QR code includes information about the OTP to which the hash function has been applied a preset number of times. On the other hand, since the first QR code includes the OTP generated in the second application step (S760), the first QR code and the second QR code may be generated in different code forms.

그리고 제2 QR 코드 생성단계(S790) 이후에는 주문고객장치(300)에 출력된 제2 QR 코드가 자율주행 배송차량(400)의 웹 카메라에 인식되는 제2 QR 코드 인식단계(S800)가 수행될 수 있다. And after the second QR code generation step (S790), a second QR code recognition step (S800) is performed in which the second QR code output on the ordering customer device 300 is recognized by the web camera of the autonomous delivery vehicle 400. It can be.

한편 사용자 인증단계(S820)는 자율주행 배송차량(400)이 제1 QR 코드와 제2 QR 코드를 인식하고 일치 여부를 판단하는 단계일 수 있다. 이러한 사용자 인증단계(S820)는 제3 적용단계(S810)를 포함할 수 있다. Meanwhile, the user authentication step (S820) may be a step in which the self-driving delivery vehicle 400 recognizes the first QR code and the second QR code and determines whether they match. This user authentication step (S820) may include a third application step (S810).

제3 적용단계(S810)는 자율주행 배송차량(400)이 제2 QR 코드에 포함되어 있는, 제1 적용단계(S730)에서 생성된 OTP에 해쉬함수를 기설정된 횟수만큼 추가적용하는 단계이다. The third application step (S810) is a step in which the autonomous delivery vehicle 400 additionally applies a hash function to the OTP generated in the first application step (S730) included in the second QR code a preset number of times.

이러한 제3 적용단계(S810)를 수행한 이후 사용자 인증단계(S820)에서는 제3 적용단계(S810)에서 생성된 OTP와 제1 QR 코드에 포함되어 있는 OTP를 비교하여 일치여부를 판단함으로써, 제1 및 제2 QR 코드에 포함되어 있는 원본 데이터가 동일하면 일치하여 인증이 완료되면 도어를 개방하는 과정을 수행할 수 있게 된다. After performing this third application step (S810), in the user authentication step (S820), the OTP generated in the third application step (S810) is compared with the OTP included in the first QR code to determine whether they match, If the original data included in the first and second QR codes are identical, the process of opening the door can be performed once the authentication is completed.

이를 통해 본 실시예에 따른 사용자 인증 방법은 배달원고객장치(200)의 제1 QR 코드와 주문고객장치(300)의 제2 QR 코드가 서로 다르기 때문에 중간에 누군가의 QR 코드가 가로채임 당하더라도 자율주행 배송차량(400)이 배송중인 물품을 수령할 수 없게 된다. 또한 QR 코드의 경우에는 일회성으로 매번 다른 QR 코드가 생성되기 때문에 재사용성과 중복성의 위험성 또한 없다. 그리고 보안 채널 서버(100)를 통해 데이터를 주고받음으로 신뢰성을 보장하는 데이터를 전달할 수 있으며, 배달원 또는 주문고객은 자율주행 배송차량(400)의 웹 카메라에 QR 코드만 인식시켜주면 되므로 어려움 없이 간편하게 배송물품을 보관하거나 수령할 수 있다는 장점이 있다. Through this, the user authentication method according to this embodiment is autonomous even if someone's QR code is intercepted in the middle because the first QR code of the delivery person customer device 200 and the second QR code of the order customer device 300 are different from each other. The driving delivery vehicle 400 cannot receive the goods being delivered. Additionally, in the case of QR codes, there is no risk of reusability or redundancy because a different QR code is generated each time as a one-time use. In addition, data that guarantees reliability can be delivered by exchanging data through the secure channel server 100, and the delivery person or ordering customer only needs to recognize the QR code on the web camera of the self-driving delivery vehicle 400, so it can be easily and conveniently processed. It has the advantage of being able to store or receive delivered goods.

이와 같은 본 발명의 무인배송을 위한 사용자 인증 방법은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. The user authentication method for unmanned delivery of the present invention can be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, data structures, etc., singly or in combination.

상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. The program instructions recorded on the computer-readable recording medium may be those specifically designed and configured for the present invention, or may be known and usable by those skilled in the computer software field.

컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD 와 같은 광기록 매체, 플롭티컬 디스크(flOTPical disk)와 같은 자기-광 매체(magneto-OTPical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다.Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tapes, optical recording media such as CD-ROMs and DVDs, and magneto-optical media such as flOTPical disks. media), and hardware devices specifically configured to store and perform program instructions, such as ROM, RAM, flash memory, etc.

프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.Examples of program instructions include not only machine language code such as that created by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform processing according to the invention and vice versa.

이상에서는 본 발명의 다양한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.Although various embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and may be used in the technical field to which the invention pertains without departing from the gist of the invention as claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be understood individually from the technical idea or perspective of the present invention.

100 : 서버 200 : 주문고객장치
300 : 배달원고객장치 400 : 자율주행 배송차량
100: Server 200: Order customer device
300: Delivery person customer device 400: Self-driving delivery vehicle

Claims (11)

서버, 주문고객장치, 배달원고객장치 및 자율주행 배송차량을 포함하는 무인배송 시스템에서 수행되는 사용자 인증 방법에 있어서,
상기 서버가, 상기 주문고객장치로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 상기 배달원고객장치 및 상기 주문고객장치에게 전송하는 세션 키 전송단계;
상기 배달원고객장치가, 상기 세션 키에 기초하여 OTP(One-Time Password)를 생성하는 OTP 생성단계;
상기 배달원고객장치가, 상기 OTP에 해쉬함수를 기설정된 횟수만큼 적용하는 제1 적용단계;
상기 배달원고객장치가, 상기 제1 적용단계에서 생성된 OTP를 기설정된 횟수만큼 해쉬함수에 추가적용하는 제2 적용단계;
상기 배달원고객장치가, 상기 제2 적용단계에서 생성된 OTP에 기초하여 제1 QR 코드를 생성하는 제1 QR 코드 생성단계를 포함하고,
상기 배달원고객장치가, 생성된 제1 QR 코드를 상기 자율주행 배송차량에 인식시키는 단계;
상기 주문고객장치가, 상기 세션 키에 기초하여 상기 제1 QR 코드와는 다른 제2 QR 코드를 생성하는 제2 QR 코드 생성단계; 및
상기 자율주행 배송차량이, 상기 제1 QR 코드에 포함된 목적지 좌표에 기초하여 목적지까지 자율주행하는 단계를 더 포함하는 사용자 인증 방법.
In the user authentication method performed in an unmanned delivery system including a server, order customer device, delivery person customer device, and autonomous delivery vehicle,
A session key transmission step in which the server generates a session key based on order information received from the ordering customer device and transmits the generated session key to the delivery person customer device and the ordering customer device;
An OTP generation step in which the delivery person customer device generates an OTP (One-Time Password) based on the session key;
A first application step in which the delivery person customer device applies a hash function to the OTP a preset number of times;
A second application step in which the delivery person customer device additionally applies the OTP generated in the first application step to a hash function a preset number of times;
A first QR code generation step in which the delivery person customer device generates a first QR code based on the OTP generated in the second application step,
Recognizing, by the delivery person customer device, the generated first QR code to the self-driving delivery vehicle;
A second QR code generation step in which the ordering customer device generates a second QR code different from the first QR code based on the session key; and
A user authentication method further comprising the step of autonomously driving the self-driving delivery vehicle to a destination based on destination coordinates included in the first QR code.
제1항에 있어서
상기 배달원고객장치가, 상기 제1 적용단계에서 생성된 OTP를 암호화하여 비밀키를 생성하는 비밀키 생성단계; 및
상기 배달원고객장치가, 상기 생성된 비밀키를 상기 서버를 통해 상기 주문고객장치로 전송하는 비밀키 전송단계를 더 포함하는 것을 특징으로 하는 사용자 인증 방법.
In paragraph 1
A secret key generation step in which the delivery person customer device encrypts the OTP generated in the first application step to generate a secret key; and
A user authentication method further comprising a secret key transmission step in which the delivery person customer device transmits the generated secret key to the ordering customer device through the server.
제2항에 있어서,
상기 제2 QR 코드 생성단계에서는,
상기 주문고객장치가, 상기 세션 키를 이용해 상기 암호화된 비밀키를 복호화하여 상기 제2 QR 코드를 생성하는 것을 특징으로 하는 사용자 인증 방법.
According to paragraph 2,
In the second QR code generation step,
A user authentication method characterized in that the ordering customer device decrypts the encrypted secret key using the session key to generate the second QR code.
제3항에 있어서,
상기 자율주행 배송차량이, 상기 제1 QR 코드 및 상기 제2 QR 코드를 인식하고 일치 여부를 판단하는 사용자 인증단계를 더 포함하는 것을 특징으로 하는 사용자 인증 방법.
According to paragraph 3,
A user authentication method further comprising a user authentication step in which the self-driving delivery vehicle recognizes the first QR code and the second QR code and determines whether they match.
제4항에 있어서,
상기 사용자 인증단계는,
상기 자율주행 배송차량이, 상기 제2 QR 코드에 포함되어 있는, 상기 제1 적용단계에서 생성된 OTP를 상기 해쉬함수에 기설정된 횟수만큼 추가적용하는 제3 적용단계; 및
상기 제3 적용단계에서 생성된 OTP와, 상기 제1 QR 코드에 포함되어 있는 OTP를 비교하여 일치여부를 판단하는 단계를 포함하는 것을 특징으로 하는 사용자 인증 방법.
According to paragraph 4,
The user authentication step is,
A third application step in which the self-driving delivery vehicle additionally applies the OTP generated in the first application step and included in the second QR code to the hash function a preset number of times; and
A user authentication method comprising comparing the OTP generated in the third application step and the OTP included in the first QR code to determine whether they match.
서버, 주문고객장치, 배달원고객장치 및 자율주행 배송차량을 포함하는 사용자 인증 기반의 무인배송 시스템에 있어서,
상기 주문고객장치로부터 수신된 주문정보에 기초하여 세션 키를 생성하고, 생성된 세션 키를 상기 주문고객장치 및 상기 배달원고객장치로 전송하는 서버;
상기 세션 키에 기초하여 제1 QR 코드를 생성하고, 생성된 제1 QR 코드를 상기 자율주행 배송차량에 인식시키는 배달원고객장치;
상기 세션 키에 기초하여 상기 제1 QR 코드와는 다른 제2 QR 코드를 생성하는 주문고객장치; 및
상기 제1 QR 코드에 포함된 목적지 좌표에 기초하여 목적지까지 자율주행하고, 상기 제2 QR 코드를 상기 주문고객장치로부터 인식하여 사용자 인증이 완료되면 도어를 개방하는 자율주행 배송차량을 포함하는 사용자 인증 기반의 무인배송 시스템.
In an unmanned delivery system based on user authentication that includes a server, order customer device, delivery person customer device, and self-driving delivery vehicle,
A server that generates a session key based on the order information received from the ordering customer device and transmits the generated session key to the ordering customer device and the delivery person customer device;
a delivery customer device that generates a first QR code based on the session key and recognizes the generated first QR code in the autonomous delivery vehicle;
an ordering customer device that generates a second QR code different from the first QR code based on the session key; and
User authentication including a self-driving delivery vehicle that autonomously drives to a destination based on the destination coordinates included in the first QR code, recognizes the second QR code from the ordering customer device, and opens the door when user authentication is completed. based unmanned delivery system.
제6항에 있어서,
상기 배달원고객장치는,
상기 세션 키에 기초하여 OTP(One-Time Password)를 생성하고, 상기 OTP에 해쉬함수를 N번 적용하고, 상기 해쉬함수를 N번 적용한 OTP를 암호화한 비밀키를 생성하여 상기 서버를 통해 상기 주문고객장치로 전송하는 것을 특징으로 하는 사용자 인증 기반의 무인배송 시스템.
According to clause 6,
The delivery person customer device is,
Generate an OTP (One-Time Password) based on the session key, apply a hash function to the OTP N times, generate a secret key that encrypts the OTP to which the hash function has been applied N times, and place the order through the server. A user authentication-based unmanned delivery system characterized by transmission to customer devices.
제7항에 있어서,
상기 배달원고객장치는,
상기 해쉬함수를 N번 적용한 OTP에, 상기 해쉬함수를 M번 추가적용하고, 상기 해쉬함수에 M번 추가적용된 OTP에 기초하여 상기 제1 QR 코드를 생성하는 것을 특징으로 하는 사용자 인증 기반의 무인배송 시스템.
In clause 7,
The delivery person customer device is,
Unmanned delivery based on user authentication, characterized by additionally applying the hash function M times to an OTP to which the hash function has been applied N times, and generating the first QR code based on the OTP to which the hash function has been additionally applied M times. system.
제8항에 있어서,
상기 주문고객장치는,
상기 세션 키를 이용해 상기 암호화된 비밀키를 복호화하여 상기 제2 QR 코드를 생성하는 것을 특징으로 하는 사용자 인증 기반의 무인배송 시스템.
According to clause 8,
The order customer device is,
An unmanned delivery system based on user authentication, characterized in that the second QR code is generated by decrypting the encrypted secret key using the session key.
제9항에 있어서,
상기 자율주행 배송차량은,
상기 제1 QR 코드 및 상기 제2 QR 코드의 일치여부를 판단하여 사용자 인증을 수행하는 것을 특징으로 하는 사용자 인증 기반의 무인배송 시스템.
According to clause 9,
The self-driving delivery vehicle,
An unmanned delivery system based on user authentication, characterized in that user authentication is performed by determining whether the first QR code and the second QR code match.
제10항에 있어서,
상기 자율주행 배송차량은,
상기 제2 QR 코드에 포함되어 있는, 상기 해쉬함수를 N번 적용한 OTP에, 상기 해쉬함수를 M번 추가적용하고,
상기 해쉬함수를 M번 추가적용한 OTP와 상기 제1 QR 코드에 포함되어 있는 OTP를 비교하여 일치여부를 판단하는 것을 특징으로 하는 사용자 인증 기반의 무인배송 시스템.
According to clause 10,
The self-driving delivery vehicle,
The hash function is additionally applied M times to the OTP included in the second QR code, to which the hash function has been applied N times,
An unmanned delivery system based on user authentication, characterized in that it compares the OTP to which the hash function is additionally applied M times and the OTP included in the first QR code to determine whether they match.
KR1020210120733A 2021-09-10 2021-09-10 Unmanned delivery system based on user certification method and user certification KR102577260B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210120733A KR102577260B1 (en) 2021-09-10 2021-09-10 Unmanned delivery system based on user certification method and user certification

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210120733A KR102577260B1 (en) 2021-09-10 2021-09-10 Unmanned delivery system based on user certification method and user certification

Publications (2)

Publication Number Publication Date
KR20230037775A KR20230037775A (en) 2023-03-17
KR102577260B1 true KR102577260B1 (en) 2023-09-11

Family

ID=85872200

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210120733A KR102577260B1 (en) 2021-09-10 2021-09-10 Unmanned delivery system based on user certification method and user certification

Country Status (1)

Country Link
KR (1) KR102577260B1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101541359B1 (en) * 2013-10-21 2015-08-03 동국대학교 산학협력단 Method and system for unmanned delivery service
KR20200132431A (en) 2019-05-17 2020-11-25 이재용 System and method for delivery service using autonomous delivery vehicle
KR20210096719A (en) * 2020-01-28 2021-08-06 한양대학교 에리카산학협력단 Travel information system for self driving cars

Also Published As

Publication number Publication date
KR20230037775A (en) 2023-03-17

Similar Documents

Publication Publication Date Title
US10680808B2 (en) 1:N biometric authentication, encryption, signature system
US8930700B2 (en) Remote device secure data file storage system and method
US7111172B1 (en) System and methods for maintaining and distributing personal security devices
US9858401B2 (en) Securing transactions against cyberattacks
US11776348B2 (en) Contactless card personal identification system
CN107358419A (en) Airborne Terminal pays method for authenticating, device and system
CN1921395B (en) Method for improving security of network software
US20100228987A1 (en) System and method for securing information using remote access control and data encryption
CN113114668A (en) Information transmission method, mobile terminal, storage medium and electronic equipment
CN110533417B (en) Digital asset management device, issuing method and system
WO2015168878A1 (en) Payment method and device and payment factor processing method and device
US10574452B2 (en) Two-step central matching
CN110098925A (en) Based on unsymmetrical key pond to and random number quantum communications service station cryptographic key negotiation method and system
KR102577260B1 (en) Unmanned delivery system based on user certification method and user certification
TWI652594B (en) Authentication method for login
JP2024506833A (en) System and method for authenticating access tokens
US11838422B1 (en) User authentication method and unmanned delivery system based on user authentication
KR102087287B1 (en) Chatbot system server capable of executing events based on interactive messaging and operating method thereof
KR101705293B1 (en) Authentication System and method without secretary Password
US20220405766A1 (en) Systems and methods for contactless card communication and key pair cryptographic authentication using distributed storage
JP7293491B2 (en) Method and system for secure transactions
JP4293084B2 (en) Hybrid identity verification system, reception terminal, identity verification terminal, hybrid identity verification method and program
US11949772B2 (en) Optimized authentication system for a multiuser device

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant