KR20200063283A - Slam 데이터 저장 및 제공 장치 및 그 방법 - Google Patents
Slam 데이터 저장 및 제공 장치 및 그 방법 Download PDFInfo
- Publication number
- KR20200063283A KR20200063283A KR1020180141615A KR20180141615A KR20200063283A KR 20200063283 A KR20200063283 A KR 20200063283A KR 1020180141615 A KR1020180141615 A KR 1020180141615A KR 20180141615 A KR20180141615 A KR 20180141615A KR 20200063283 A KR20200063283 A KR 20200063283A
- Authority
- KR
- South Korea
- Prior art keywords
- information
- slam
- data
- vehicle
- data storage
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 55
- 230000004807 localization Effects 0.000 title claims abstract description 10
- 238000013507 mapping Methods 0.000 title claims abstract description 9
- 238000013500 data storage Methods 0.000 claims abstract description 153
- 230000005540 biological transmission Effects 0.000 claims abstract description 23
- 206010039203 Road traffic accident Diseases 0.000 claims description 13
- 230000003068 static effect Effects 0.000 claims description 12
- 230000005856 abnormality Effects 0.000 claims description 11
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000010276 construction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012423 maintenance Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
- G05D1/0278—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/10—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
- B60W40/105—Speed
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2520/00—Input parameters relating to overall vehicle dynamics
- B60W2520/10—Longitudinal speed
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2552/00—Input parameters relating to infrastructure
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Transportation (AREA)
- Mechanical Engineering (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
본 발명은 SLAM 데이터 저장 및 제공 장치 및 그 방법이 개시된다. 본 발명의 SLAM 데이터 저장 및 제공 장치 및 그 방법은, 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장하는 사용자 블록체인; 블록체인에 참여한 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장하는 GPS 정보 블록체인; 다수의 사용자 중 제2사용자의 제2차량이 제1사용자의 제1차량에 SLAM(Simultaneous Localization And Mapping) 정보를 요청하면, GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성하는 SLAM 정보 블록체인; 및 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하고, 전송 블록 데이터를 제2차량에 전달하는 SLAM 데이터 저장정보 블록체인;을 포함하는 것을 특징으로 한다.
Description
본 발명은 SLAM 데이터 저장 및 제공 장치 및 그 방법에 관한 것으로서, 보다 상세하게는 블록체인 기술을 사용하여 분산제어 방식의 광범위 SLAM(Simultaneous Localization And Mapping) 맵을 구축하는 SLAM 데이터 저장 및 제공 장치 및 그 방법에 관한 것이다.
일반적으로, SLAM은 Simultaneous Localization And Map-building 또는 Simultaneous Localization And Mapping을 의미하는 것으로, 로봇이 미지의 환경을 돌아다니면서 로봇에 부착되어 있는 센서만으로 외부의 도움 없이 환경에 대한 정확한 지도를 작성하는 작업이며 자율주행을 위한 핵심기술이다. 다시 말해, SLAM은 이동로봇이 현재시간 동안 자신의 위치를 계측(측정)하면서 동시에 주변 환경의 지도를 작성하는 기술이다.
상기 SLAM은 모바일 디바이스(예를 들어, 스마트폰)를 통해 즉시 생성되고 추적될 수 있다. 그러나 모바일 디바이스는, 특히 강력한 고정식 설치 서버 시스템들에 비해서 제한된 저장소와 프로세싱을 가질 수 있다. 따라서 상세한 맵을 정확하고 독립적으로 결정하는 모바일 디바이스의 능력이 제한될 수 있다.
이에, 대형 맵들을 국부적으로(locally) 저장하기 위해서, 모바일 디바이스는 서버에 있는 맵들에 액세스하게 되는데, 이 과정에서 맵 확장 및 도로 혼잡도에 따른 딜레이 시간이 발생하는 문제가 있었다.
또한, 종래에는 각각의 노드들이 중앙 제어 방식으로 동작하여, 각 노드의 작업부하(workload)가 상당하였으며, 보안에 있어서도 취약한 문제가 있었다. 이에 분산 제어 방식의 블록체인 기술이 다양하게 적용되고 있다.
한편, 블록체인은 공공 거래 장부라고도 부르며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다. 기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용한다.
이러한 블록체인은 여러 데이터를 보관하는 데에도 적용할 수 있으며, 데이터베이스(DB)의 유지 보수와 보안에 따른 막대한 비용을 줄일 수 있는 효과를 가진 기술이다.
블록체인 기술은 네트워크로 전달되는 트랜잭션을 수신하는 누구나가 블록을 생성할 수 있으나, 그 중에서 가장 빠르게 블록을 생성한 노드의 블록이 채택되는 형태를 가지고 있다. 이처럼 기존의 블록체인의 경우는 블록체인 네트워크에 포함된 임의의 피어에서 블록을 생성할 수 있어, 동시에 여러 블록이 생성될 수 있고, 그 중에서 하나의 블록이 최종 선택되는 방법으로 블록을 생성하기 때문에, 블록을 생성하는데 자원의 낭비가 초래되며, 동시에 생성된 블록의 동기화를 위한 자원의 낭비 또한 초래하게 된다.
본 발명의 배경기술로는 대한민국 공개특허공보 제10-2018-0094463호(공개일 : 2018.08.23.공개)인 "SLAM 지도 저장 및 로드 방법"이 있다.
본 발명의 일 측면에 따르면, 본 발명은 상기와 같은 문제점들을 개선하기 위하여 창안된 것으로, 블록체인 기술을 사용하여 광범위 SLAM(Simultaneous Localization And Mapping) 맵을 구축함으로써, 분산 제어를 수행하는 SLAM 데이터 저장 및 제공 장치 및 그 방법을 제공하는 것을 목적으로 한다.
본 발명의 일 측면에 따른 SLAM 데이터 저장 및 제공 장치는, 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장하는 사용자 블록체인; 블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장하는 GPS 정보 블록체인; 상기 다수의 사용자 중 제2사용자의 제2차량이 제1사용자의 제1차량에 SLAM 정보를 요청하면, 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성하는 SLAM 정보 블록체인; 및 상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하고, 상기 전송 블록 데이터를 상기 제2차량에 전달하는 SLAM 데이터 저장정보 블록체인;을 포함하는 것을 특징으로 한다.
본 발명에서, 상기 GPS 정보 블록체인은, 상기 제1차량에서 GPS 정보 데이터를 주기적으로 생성하여 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후 데이터 저장 서버에 전송하면, 상기 데이터 저장 서버로부터 상기 암호화된 GPS 정보 데이터에 기초한 GPS 정보 블록 데이터를 입력받아 등록하고, 상기 제1차량 및 데이터 저장 서버에 등록 결과를 리턴하여 상기 GPS 정보 블록 데이터를 검증하는 것을 특징으로 한다.
본 발명에서, 상기 SLAM 정보를 요청하는 제2차량은, 경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버에 전송하면서 SLAM 정보를 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 경로 계획 정보를 기준으로 하여 제1설정거리 이내의 해당 차량들의 해쉬화된 GPS 정보를 상기 GPS 정보 블록체인에 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 속도가 일정 범위 이상인 경우, 상기 제2차량을 기준으로 하여 제2설정거리 이내의 교통사고 현황, 도로 이상 상태 및 정적 객체 정보를 포함하는 SLAM 정보를 상기 제1차량에 요청하고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제2차량을 기준으로 하여 제3설정거리 이내의 교통사고 현황, 도로 이상 상태, 차량을 제외한 동적 객체 정보, 정적 객체 정보 및 동적 객체의 수를 포함하는 SLAM 정보를 상기 제1차량에 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 네트워크 상태가 기준치 이상이고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제1차량에 모든 SLAM 정보를 요청하는 것을 특징으로 한다.
본 발명에서, 상기 SLAM 정보 블록체인은, 상기 데이터 저장 서버로부터 SLAM 데이터를 요청받은 사용자들이 네트워크 상태에 따라 SLAM 정보를 결정하고 암호화하여 전송하면 SLAM 저장 정보 블록 데이터를 등록하고, 상기 데이터 저장 서버 및 제1차량에 등록 결과를 리턴하여 상기 SLAM 저장 정보 블록 데이터를 검증하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량이 SLAM 정보를 받을 수 있도록 데이터 크기, 위치 및 해쉬키를 포함하는 수신 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인에 전송하는 것을 특징으로 한다.
본 발명에서, 상기 제2차량은, 상기 SLAM 데이터 저장정보 블록체인으로부터 전송 블록 데이터를 입력받고, 상기 전송 블록 데이터를 복호화하여 데이터 저장 서버 내에 필요한 데이터를 얻기 위한 데이터 크기, 위치 및 해쉬키를 포함하는 관련정보를 요청하고, 상기 관련정보가 입력되면 상기 데이터 저장 서버와 통신하여 상기 SLAM 정보 블록체인으로부터 필요 데이터를 수신받는 것을 특징으로 한다.
본 발명에서, 각 블록체인 노드는, 일정시간 이상 요청하는 블록이 없는 경우 데이터 저장서버의 요청에 의해서 블록을 삭제하는 것을 특징으로 한다.
본 발명의 다른 측면에 따른 SLAM 데이터 저장 및 제공 방법은, 사용자 블록체인이 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장하는 단계; GPS 정보 블록체인이 블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장하는 단계; 상기 다수의 사용자 중 제2사용자의 제2차량이 제1사용자의 제1차량에 SLAM 정보를 요청하면, SLAM 정보 블록체인이 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성하는 단계; SLAM 데이터 저장정보 블록체인이 상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하는 단계; 및 상기 SLAM 데이터 저장정보 블록체인으로부터 상기 전송 블록 데이터가 상기 제2차량에 전달되는 단계;를 포함하는 것을 특징으로 한다.
본 발명의 상기 GPS 정보 블록 데이터를 저장하는 단계에서, 상기 GPS 정보 블록체인은, 상기 제1차량에서 GPS 정보 데이터를 주기적으로 생성하여 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후 데이터 저장 서버에 전송하면, 상기 데이터 저장 서버로부터 상기 암호화된 GPS 정보 데이터에 기초한 GPS 정보 블록 데이터를 입력받아 등록하고, 상기 제1차량 및 데이터 저장 서버에 등록 결과를 리턴하여 상기 GPS 정보 블록 데이터를 검증하는 것을 특징으로 한다.
본 발명에서, 상기 SLAM 정보를 요청하는 제2차량은, 경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버에 전송하면서 SLAM 정보를 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 경로 계획 정보를 기준으로 하여 제1설정거리 이내의 해당 차량들의 해쉬화된 GPS 정보를 상기 GPS 정보 블록체인에 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 속도가 일정 범위 이상인 경우, 상기 제2차량을 기준으로 하여 제2설정거리 이내의 교통사고 현황, 도로 이상 상태 및 정적 객체 정보를 포함하는 SLAM 정보를 상기 제1차량에 요청하고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제2차량을 기준으로 하여 제3설정거리 이내의 교통사고 현황, 도로 이상 상태, 차량을 제외한 동적 객체 정보, 정적 객체 정보 및 동적 객체의 수를 포함하는 SLAM 정보를 상기 제1차량에 요청하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량의 네트워크 상태가 기준치 이상이고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제1차량에 모든 SLAM 정보를 요청하는 것을 특징으로 한다.
본 발명에서, 상기 SLAM 정보 블록체인은, 상기 데이터 저장 서버로부터 SLAM 데이터를 요청받은 사용자들이 네트워크 상태에 따라 SLAM 정보를 결정하고 암호화하여 전송하면 SLAM 저장 정보 블록 데이터를 등록하고, 상기 데이터 저장 서버 및 제1차량에 등록 결과를 리턴하여 상기 SLAM 저장 정보 블록 데이터를 검증하는 것을 특징으로 한다.
본 발명에서, 상기 데이터 저장 서버는, 상기 제2차량이 SLAM 정보를 받을 수 있도록 데이터 크기, 위치 및 해쉬키를 포함하는 수신 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인에 전송하는 것을 특징으로 한다.
본 발명의 상기 SLAM 데이터 저장정보 블록체인으로부터 상기 전송 블록 데이터가 상기 제2차량에 전달되는 단계에서, 상기 제2차량은, 상기 SLAM 데이터 저장정보 블록체인으로부터 전송 블록 데이터를 입력받고, 상기 전송 블록 데이터를 복호화하여 데이터 저장 서버 내에 필요한 데이터를 얻기 위한 데이터 크기, 위치 및 해쉬키를 포함하는 관련정보를 요청하고, 상기 관련정보가 입력되면 상기 데이터 저장 서버와 통신하여 상기 SLAM 정보 블록체인으로부터 필요 데이터를 수신받는 것을 특징으로 한다.
본 발명은, 각 블록체인 노드가 일정시간 이상 요청하는 블록이 없는 경우 데이터 저장서버의 요청에 의해서 블록을 삭제하는 단계;를 더 포함하는 것을 특징으로 한다.
본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치 및 그 방법은, 블록체인 기술을 기반으로 광범위 SLAM(Simultaneous Localization And Mapping) 맵을 구축하여 분산 제어를 수행함으로써, 각 노드의 작업부하를 감소시킬 수 있고, 보안을 강화시킬 수 있는 효과가 있다.
또한, 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치 및 그 방법은, 서버의 역할을 최소화하여 서버 용량 감소에 따른 서버 구축 및 유지비용을 감소시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치를 설명하기 위한 블록구성도이다.
도 2는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 사용자 등록 및 인증 과정을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 GPS 정보 업데이트 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 SLAM 데이터 획득 과정을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법을 설명하기 위한 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 사용자 등록 및 인증 과정을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 GPS 정보 업데이트 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 SLAM 데이터 획득 과정을 설명하기 위한 도면이다.
이하, 첨부된 도면들을 참조하여 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치 및 그 방법을 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다.
또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치를 설명하기 위한 블록구성도로서, 이를 참조하여 SLAM 데이터 저장 및 제공 장치를 설명하면 다음과 같다.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치는, 차량(10), 블록체인(20) 및 데이터 저장 서버(30)를 포함한다.
본 실시예에서, 차량(10)은 클라이언트이고, 블록체인(20)은 각각의 노드들을 포함할 수 있다. 클라이언트는 트랜잭션을 생성하고 거래 내역을 확인하는 역할을 하며, 노드는 트랜잭션 내역을 보관하고 트랜잭션 승인 및 분산합의의 역할을 한다. 다시 말해, 사용자 관점에서는 블록체인의 노드는 일반적인 서비스의 백엔드(Backend) 역할을 하고 블록체인 클라이언트는 클라이언트 역할을 한다. 클라이언트가 새로운 트랜잭션을 발생시키면 노드들은 트랜잭션을 분산합의 과정을 통해 공유하고 트랜잭션을 실행할 수 있다. 클라이언트는 트랜잭션의 결과를 확인할 수 있다.
그리고 본 실시예에서, 차량(10)은 제1차량(11), 제2차량(12) 및 제3차량(13)을 포함할 수 있다. 제1차량(11)은 SLAM 데이터를 생산하는 사용자의 차량을 의미하며, 제2차량(12)은 SLAM 데이터를 의뢰하는 사용자의 차량을 의미한다. 또한 제3차량(13)은 상기 제1차량(11)에서 생산한 SLAM 데이터를 공유 받는 사용자의 차량일 수 있다. 다만, 이에 한정되지 않으며 제1차량(11), 제2차량(12) 및 제3차량(13) 모두 생산자, 의뢰자 또는 공유받는 사용자의 차량이 될 수 있다.
또한 본 실시예에서, 해쉬키(hash key)는 블록체인 네트워크상에서 사용자를 식별할 때 사용하는 값이다. 해쉬키는 다양한 방법을 통해 생성될 수 있다. 대표적인 해쉬키 생성 알고리즘은 MD5, SHA-256 등이 있다. 해쉬키는 특정 사용자에 대하여 유일하게 존재하는 값이다. 그리고 해쉬키는 다양한 길이의 문자열로 구성되는 키이다.
공개키와 암호키(encryption key)는 블록체인 네트워크상에서 데이터를 암호화하여 전송하기 위한 키이다. 공개키와 암호키는 소위 공개키 방식의 암호화에 사용되는 키이다. 공개키 범위는 데이터를 암호화하는 키이고, 암호키는 암호화된 데이터를 복호하는 키이다. 공개키와 암호키는 서로 짝을 이루고 다양한 공개키 암호화 방법(예컨대, RSA, 타원곡선암호 등)을 이용하여 무작위로 생산될 수 있다.
블록체인은 관리 대상 데이터를 '블록'이라고 하는 소규모 데이터들이 P2P 방식을 기반으로 생성된 체인 형태의 연결고리 기반 분산 데이터 저장환경을 의미한다. 블록체인 네트워크는 블록체인을 구성하는 네트워크 구성요소를 의미한다.
본 실시예는, 복수의 블록체인을 사용하여 SLAM 정보를 안전하게 수신하는 것에 관한 것으로, 사용자 인증 단계, GPS 정보 블록체인 생성 단계, SLAM 정보 요청 단계, SLAM 정보 블록체인 생성 단계, SLAM 데이터 저장정보 블록체인 생성 및 의뢰 노드의 SLAM 데이터 획득 단계 및 블록체인의 불필요한 데이터 블록을 삭제하는 단계의 과정으로 이루어질 수 있다.
사용자 블록체인(21)은 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장한다. 즉, 사용자 블록체인(21)은 블록체인 노드들의 공개키 및 해쉬키 정보를 저장하기 위해 블록 데이터 형태로 생성하고 필요 시 필요한 노드들의 해쉬키와 공개키를 토큰 형태로 제공할 수 있다.
도 3을 참조하면, 제1차량(11)은 사용자 공개키, 암호키를 생성하고, 사용자 정보 기반 사용자 해쉬키를 생성한다. 그리고 제1차량(11)은 사용자 공개키, 암호키 및 사용자 해쉬키를 저장하고 사용자 공개키로 사용자 정보를 암호화한다. 그리고 제1차량(11)은 상기 암호화한 사용자 정보와 사용자 공개키 및 사용자 해쉬키를 결합하여 사용자 블록 데이터를 생성하고, 사용자 정보 블록체인(21)에 전송할 수 있다.
사용자 정보 블록체인(21)은 암호화된 사용자 정보, 사용자 공개키 및 사용자 해쉬키를 포함하는 사용자 블록 데이터를 등록할 수 있다. 이때, 제2차량(12)이 사용자 해쉬키를 입력하면 사용자 정보 블록체인(21)에서 상기 제2차량(12)의 사용자 해쉬키를 입력받아 사용자 해쉬키 및 사용자 공개키를 조회하고, 상기 사용자 공개키를 암호화한 인증토큰을 생성한다. 그리고 사용자 정보 블록체인(21)에서 제2차량(12)에 암호화한 인증토큰을 전송하고, 상기 제2차량(12)에서는 인증토큰을 입력받아 복호 및 저장한다.
이러한 과정을 통해 블록체인 노드들은 최종적으로 자신들이 수집하는 SLAM 정보를 신뢰할 수 있다.
GPS 정보 블록체인(22)은 블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장한다.
즉, 블록체인을 구성하기로 약속한 각 노드가 주기적으로 GPS 정보 데이터를 생성하고 데이터 저장 서버(30)와 GPS 정보 블록체인(22)에 등록 및 검증을 수행하게 된다.
다시 말해, 블록체인에 참여한 노드들이 GPS 정보 데이터를 주기적으로 생성하여 암호화한 후 데이터 저장 서버(30)에 전송하면, 데이터 저장 서버(30)는 이를 블록 데이터로 생성하여 GPS 정보 블록체인(22)에 전송하고 이 결과를 리턴 받아 검증할 수 있다.
즉, 제1차량(11)이 GPS 정보 데이터를 생성하고, 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후, 데이터 저장 서버(30)에 상기 암호화된 GPS 정보 데이터를 전송하면, 데이터 저장 서버(30)는 GPS 정보 블록체인(22)에 GPS 저장 정보 블록 데이터를 전송한다. GPS 정보 블록체인(22)은 상기 GPS 저장 정보 블록 데이터를 입력받아 블록 데이터를 등록하고, 상기 데이터 저장 서버(30) 및 제1차량(11)에 결과를 송신함으로써 검증을 수행할 수 있다.
이때, GPS 정보만을 저장하는 이유는 SLAM 데이터는 상대적으로 방대하여, 의뢰하는 노드가 있을 때만 SLAM 정보를 생성하기 위함이다. 또한 GPS 정보만을 저장하는 이유는 이후 단계에서 요청되는 SLAM 정보는 경로 계획(path planning) 기반으로 이루어지기 때문에 해당 경로(path)와 관련 있는 노드들만 SLAM 정보를 탐색하기 위함이다.
SLAM 정보 블록체인(23)은 다수의 사용자 중 제2사용자의 제2차량(12)이 제1사용자의 제1차량(11)에 SLAM 정보를 요청하면, 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성한다.
즉, 특정 블록체인 노드가 SLAM 정보를 데이터 저장 서버(30)로 요청하여, 데이터 저장 서버(30)가 해당되는 복수의 블록체인 노드들의 GPS 정보를 찾고 해당 노드들에게 SLAM 정보들을 요청할 수 있다. 그리고 해당 노드들은 정해진 네트워크 정책에 따라 SLAM 정보들을 암호화하여 SLAM 저장 블록 데이터를 생성하고, 결과가 데이터 저장 서버(30)와 노드에 피드백 되도록 할 수 있다.
이때, SLAM 정보를 요청하는 제2차량(12)은 경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버(30)에 전송하면서 SLAM 정보를 요청할 수 있다. 이후 제2차량(12)에 해당하는 노드는 상기 정보들을 바탕으로 GPS 정보 블록체인(23)에 해당되는 차량들의 GPS 정보들을 요청하고 이를 수신하여, 해당되는 노드들에게 SLAM 정보를 요청할 수 있다.
다시 말해, 데이터 저장 서버(30)는 제2차량(12)의 경로 계획 정보를 기준으로 하여 제1설정거리 이내의 해당 차량들의 해쉬화된 GPS 정보를 상기 GPS 정보 블록체인(23)에 요청할 수 있다. 이때, 제1설정거리는 20m로 설정할 수 있으나 한정되지는 않는다. 즉, 20m 이내의 노드를 대상으로 SLAM 정보 요청을 수행할 수 있다.
그리고, 데이터 저장 서버(30)는 제2차량(12)의 속도가 일정 범위 이상인 경우, 상기 제2차량(12)을 기준으로 하여 제2설정거리 이내의 교통사고 현황, 도로 이상 상태 및 정적 객체 정보를 포함하는 SLAM 정보를 상기 제1차량(11)에 요청하고, 상기 제2차량(12)의 속도가 일정 범위 이하인 경우, 상기 제2차량(12)을 기준으로 하여 제3설정거리 이내의 교통사고 현황, 도로 이상 상태, 차량을 제외한 동적 객체 정보, 정적 객체 정보 및 동적 객체의 수를 포함하는 SLAM 정보를 상기 제1차량에 요청할 수 있다. 여기서 제2설정거리는 10km로 설정되고, 제3설정거리는 1km로 설정될 수 있으나 이에 한정되지는 않는다.
보다 구체적으로는, 의뢰 차량인 제2차량(12)의 속도가 빠른 경우 보다 넓은 범위의 랜드마크 또는 도로 상태 이상, 교통사고 정보와 같은 주요 정보를 SLAM 정보 수집 목적으로 하고, 제2차량(12)의 속도가 느릴 경우에는 가까운 거리에서 검출된 물체의 수 도로내 자전거와 같은 특수 객체 정보 등 구체적인 데이터 취득을 목적을 한다.
다음으로, 데이터 저장 서버(30)는 제2차량(12)의 네트워크 상태가 기준치 이상이고, 상기 제2차량(12)의 속도가 일정 범위 이하인 경우, 상기 제1차량(11)에 모든 SLAM 정보를 요청할 수 있다. 즉, 네트워크 상태가 아주 좋고 차량의 속도가 고속인 경우에는 똑같이 주요 랜드 마크 및 도로 이상 상태 정보만 전송하며, 네트워크 상태가 좋으면서 차량의 속도가 저속인 경우에는 가능한 모든 SLAM 정보를 전송할 수 있다. 그러나 네트워크 상태가 좋지 않은 경우에는 제2차량(12)이 속도에 따라 각각 정해진 우선순위에 따라서 가능한 SLAM 정보만을 전송할 수 있다.
이때, 의뢰 차량인 제2차량(12)이 고속인 경우, 교통사고 현환, 도로 이상 상태(공사현장 등) 및 정적 물체 중 튀어나와 있는 폴(pole)대 등의 순서로 우선순위가 설정되며, 제2차량(12)이 저속인 경우에는 교통사고 현황, 도로 이상 상태, 동적 객체 중 차량을 제외한 2륜차량(two-wheel vehicle) 및 보행자의 위치, 정적 물체 및 동적 물체의 수의 순서로 우선순위가 설정될 수 있다.
그리고 SLAM 정보를 요청받은 노드들은 자신들의 네트워크 상태에 따라 전송할 SLAM 정보를 결정하고 암호화하여 SLAM 정보 블록체인(23)에 블록을 전송하여 블록체인을 생성한다. 이렇게 생성된 결과를 다시 피드백 하여 데이터 저장 서버(30)는 정상인지를 검증할 수 있다.
다시 설명하면, 제2차량(12)에서 경로 계획을 포함하여 SLAM 정보를 요청하면, 데이터 저장 서버(30)에서 상기 SLAM 정보를 입력받아 GPS 정보 블록체인(22)에 해당되는 차량들의 해쉬화된 GPS 정보를 요청한다. GPS 정보 블록체인(22)은 저장 정보를 데이터 저장 서버(30)에 전송하고, 데이터 저장 서버(30)는 제1차량(11)에 SLAM 정보를 요청한다. 그리고 제1차량(11)은 암호화된 SLAM 정보 데이터를 데이터 저장 서버(30)에 전송하고, 데이터 저장 서버(30)는 SLAM 정보 블록체인(23)에 SLAM 저장 정보 블록 데이터를 전송하고 결과를 리턴받아 검증할 수 있다.
다음으로, SLAM 데이터 저장정보 블록체인(24)은 상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버(30)에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하고, 상기 전송 블록 데이터를 상기 제2차량(12)에 전달할 수 있다.
즉, 데이터 저장 서버(30)가 전송블록의 데이터 생성을 확인하고 제2차량(12)에게 데이터 전송을 SLAM 데이터 저장정보 블록체인(24)을 통하여 의뢰한 제2차량(12)에게 서버 내 요청 정보를 획득할 수 있는 관련정보를 제공할 수 있다.
다시 말해, 데이터 저장 서버(30)는 제2차량(12)이 SLAM 정보를 받을 수 있도록, 수신 정보(데이터 크기, 위치 및 해쉬키) 관련 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인(24)에 전송한다. 이후 SLAM 데이터 저장 정보 블록체인(24)은 제2차량(12)에게 해당 블록을 전달하며, 제2차량(12)은 블록 데이터를 복호화하여 데이터 저장 서버(30) 내에 필요한 데이터를 갖기 위한 관련정보(데이터 크기, 위치 및 해쉬키)들을 찾는다. 그리고 필요한 노드 수만큼의 정보가 들어오면 데이터 저장 서버(30)와 통신하여 SLAM 정보 블록체인(23)으로부터 필요 데이터를 가져올 수 있다.
보다 구체적으로는, 데이터 저장 서버(30)에서 전송 블록 데이터를 생성하고 SLAM 데이터 저장 정보 블록체인(24)에 전송 블록 데이터를 전송하면, SLAM 데이터 저장 정보 블록체인(24)은 블록 데이터를 등록하고 암호화된 저장 정보를 제2차량(12)에 전송한다. 제2차량(12)은 저장 정보 복호 및 확인 후, 데이터 저장 서버(30)에 SLAM 정보 데이터를 요청하고, 데이터 저장 서버(30)는 SLAM 정보 블록체인(23)에 SLAM 정보 등록을 요청한다. 이에 SLAM 정보 블록체인(23)은 SLAM 정보 블록을 제2차량(12)에 전송하고, 제2차량(12)에서는 SLAM 정보 블록 데이터를 복호화하고 확인할 수 있다.
한편, 블록체인 내에 불필요한 정보로 블록체인의 크기가 무한정 커지는 것을 막기 위하여 각 블록체인은 일정시간 이상 요청하는 블록이 없으면 데이터 저장 서버(30)의 요청에 의해서 블록이 삭제된다.
도 2는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법을 설명하기 위한 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 사용자 등록 및 인증 과정을 설명하기 위한 도면이며, 도 4는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 GPS 정보 업데이트 과정을 설명하기 위한 도면이고, 도 5는 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법의 SLAM 데이터 획득 과정을 설명하기 위한 도면으로서, 이를 참조하여 SLAM 데이터 저장 및 제공 방법을 설명하면 다음과 같다.
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 방법은, 먼저 사용자 정보 블록체인(21)을 통해 사용자 등록 및 인증을 수행한다(S10).
여기서, 사용자 블록체인(21)은 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장한다. 즉, 사용자 블록체인(21)은 블록체인 노드들의 공개키 및 해쉬키 정보를 저장하기 위해 블록 데이터 형태로 생성하고 필요 시 필요한 노드들의 해쉬키와 공개키를 토큰 형태로 제공할 수 있다.
도 3을 참조하면, 제1차량(11)은 사용자 공개키, 암호키를 생성하고(S101, 사용자 정보 기반 사용자 해쉬키를 생성한다(S111). 그리고 제1차량(11)은 사용자 공개키, 암호키 및 사용자 해쉬키를 저장하고(S112), 사용자 공개키로 사용자 정보를 암호화한다(S121). 그리고 제1차량(11)은 상기 암호화한 사용자 정보와 사용자 공개키 및 사용자 해쉬키를 결합하여 사용자 블록 데이터를 생성하고(S131), 사용자 정보 블록체인(21)에 전송할 수 있다(S132).
그리고, 사용자 정보 블록체인(21)은 암호화된 사용자 정보, 사용자 공개키 및 사용자 해쉬키를 포함하는 사용자 블록 데이터를 등록할 수 있다(S133). 이때, 제2차량(12)이 사용자 해쉬키를 입력하면(S141), 사용자 정보 블록체인(21)에서 상기 제2차량(12)의 사용자 해쉬키를 입력받아 사용자 해쉬키 및 사용자 공개키를 조회하고(S151), 상기 사용자 공개키를 암호화한 인증토큰을 생성한다(S161). 그리고 사용자 정보 블록체인(21)에서 제2차량(12)에 암호화한 인증토큰을 전송하고(S162), 상기 제2차량(12)에서는 인증토큰을 입력받아 복호화 및 저장한다(S171).
이러한 과정을 통해 블록체인 노드들은 최종적으로 자신들이 수집하는 SLAM 정보를 신뢰할 수 있다.
다시 도 2를 살펴보면, GPS 정보 블록체인(22)을 통해 GPS 정보 데이터 요청을 수행한다(S20).
여기서, GPS 정보 블록체인(22)은 블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장한다.
즉, 블록체인을 구성하기로 약속한 각 노드가 주기적으로 GPS 정보 데이터를 생성하고 데이터 저장 서버(30)와 GPS 정보 블록체인(22)에 등록 및 검증을 수행하게 된다. 다시 말해, 블록체인에 참여한 노드들이 GPS 정보 데이터를 주기적으로 생성하여 암호화한 후 데이터 저장 서버(30)에 전송하면, 데이터 저장 서버(30)는 이를 블록 데이터로 생성하여 GPS 정보 블록체인(22)에 전송하고 이 결과를 리턴 받아 검증할 수 있다.
도 4에 도시된 바를 참조하면, 제1차량(11)이 GPS 정보 데이터를 생성하고(S201), 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후(S202), 데이터 저장 서버(30)에 상기 암호화된 GPS 정보 데이터를 전송하면(S203), 데이터 저장 서버(30)는 GPS 정보 블록체인(22)에 GPS 저장 정보 블록 데이터를 전송한다(S204).
그리고 GPS 정보 블록체인(22)은 상기 GPS 저장 정보 블록 데이터를 입력받아 블록 데이터를 등록하고(S205), 상기 데이터 저장 서버(30) 및 제1차량(11)에 결과를 송신함으로써 검증을 수행할 수 있다(S206).
다시 도 2를 살펴보면, SLAM 정보 블록체인(23)을 통해 SLAM 정보 요청을 수행할 수 있다(S30).
여기서, SLAM 정보 블록체인(23)은 다수의 사용자 중 제2사용자의 제2차량(12)이 제1사용자의 제1차량(11)에 SLAM 정보를 요청하면, 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성한다.
즉, 특정 블록체인 노드가 SLAM 정보를 데이터 저장 서버(30)로 요청하여, 데이터 저장 서버(30)가 해당되는 복수의 블록체인 노드들의 GPS 정보를 찾고 해당 노드들에게 SLAM 정보들을 요청할 수 있다. 그리고 해당 노드들은 정해진 네트워크 정책에 따라 SLAM 정보들을 암호화하여 SLAM 저장 블록 데이터를 생성하고, 결과가 데이터 저장 서버(30)와 노드에 피드백 되도록 할 수 있다.
이때, SLAM 정보를 요청하는 제2차량(12)은 경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버(30)에 전송하면서 SLAM 정보를 요청할 수 있다. 이후 제2차량(12)에 해당하는 노드는 상기 정보들을 바탕으로 GPS 정보 블록체인(23)에 해당되는 차량들의 GPS 정보들을 요청하고 이를 수신하여, 해당되는 노드들에게 SLAM 정보를 요청할 수 있다.
그리고 SLAM 정보를 요청받은 노드들은 자신들의 네트워크 상태에 따라 전송할 SLAM 정보를 결정하고 암호화하여 SLAM 정보 블록체인(23)에 블록을 전송하여 블록체인을 생성한다. 이렇게 생성된 결과를 다시 피드백 하여 데이터 저장 서버(30)는 정상인지를 검증할 수 있다.
도 4를 참조하면, 제2차량(12)에서 경로 계획을 포함하여 SLAM 정보를 요청하면(S301), 데이터 저장 서버(30)에서 상기 SLAM 정보를 입력받아 GPS 정보 블록체인(22)에 해당되는 차량들의 해쉬화된 GPS 정보를 요청한다(S302).
그리고 GPS 정보 블록체인(22)은 저장 정보를 데이터 저장 서버(30)에 전송하고(S303), 데이터 저장 서버(30)는 제1차량(11)에 SLAM 정보를 요청한다(S304). 그 다음 제1차량(11)은 암호화된 SLAM 정보 데이터를 데이터 저장 서버(30)에 전송하고(S401), 데이터 저장 서버(30)는 SLAM 정보 블록체인(23)에 SLAM 저장 정보 블록 데이터를 전송하고(S402), 상기에 대한 결과를 리턴받아 검증할 수 있다(S403).
다시 도 2를 살펴보면, SLAM 데이터 저장정보 블록체인(24)을 통해 SLAM 정보 데이터 전송을 수행할 수 있다(S40).
여기서, SLAM 데이터 저장정보 블록체인(24)은 상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버(30)에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하고, 상기 전송 블록 데이터를 상기 제2차량(12)에 전달할 수 있다.
즉, 데이터 저장 서버(30)가 전송블록의 데이터 생성을 확인하고 제2차량(12)에게 데이터 전송을 SLAM 데이터 저장정보 블록체인(24)을 통하여 의뢰한 제2차량(12)에게 서버 내 요청 정보를 획득할 수 있는 관련정보를 제공할 수 있다.
다시 말해, 데이터 저장 서버(30)는 제2차량(12)이 SLAM 정보를 받을 수 있도록, 수신 정보(데이터 크기, 위치 및 해쉬키) 관련 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인(24)에 전송한다. 이후 SLAM 데이터 저장 정보 블록체인(24)은 제2차량(12)에게 해당 블록을 전달하며, 제2차량(12)은 블록 데이터를 복호화하여 데이터 저장 서버(30) 내에 필요한 데이터를 갖기 위한 관련정보(데이터 크기, 위치 및 해쉬키)들을 찾는다. 그리고 필요한 노드 수만큼의 정보가 들어오면 데이터 저장 서버(30)와 통신하여 SLAM 정보 블록체인(23)으로부터 필요 데이터를 가져올 수 있다.
보다 구체적으로는, 도 4를 참조하면, 데이터 저장 서버(30)에서 전송 블록 데이터를 생성하고(S501), SLAM 데이터 저장 정보 블록체인(24)에 전송 블록 데이터를 전송하면(S502), SLAM 데이터 저장 정보 블록체인(24)은 블록 데이터를 등록하고(S503), 암호화된 저장 정보를 제2차량(12)에 전송한다(S504). 제2차량(12)은 저장 정보 복호 및 확인 후(S505), 데이터 저장 서버(30)에 SLAM 정보 데이터를 요청하고(S506), 데이터 저장 서버(30)는 SLAM 정보 블록체인(23)에 SLAM 정보 등록을 요청한다(S507). 이에 SLAM 정보 블록체인(23)은 SLAM 정보 블록을 제2차량(12)에 전송하고(S508), 제2차량(12)에서는 SLAM 정보 블록 데이터를 복호화하고 확인할 수 있다(S509).
한편, 다시 도 2를 살펴보면, S40단계 이후, 데이터의 변경이 있거나 별도 변경이 발생하는 경우(S50), 변경된 내용에 따른 정보 공유 또는 정보를 삭제할 수 있다(S60).
즉, 본 실시예에서는, 블록체인 내에 불필요한 정보로 블록체인의 크기가 무한정 커지는 것을 막기 위하여 각 블록체인은 일정시간 이상 요청하는 블록이 없으면 데이터 저장 서버(30)의 요청에 의해서 블록이 삭제된다.
상술한 바와 같이, 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치 및 그 방법은, 블록체인 기술을 기반으로 광범위 SLAM(Simultaneous Localization And Mapping) 맵을 구축하여 분산 제어를 수행함으로써, 각 노드의 작업부하를 감소시킬 수 있고, 보안을 강화시킬 수 있는 효과가 있다.
또한, 본 발명의 일 실시예에 따른 SLAM 데이터 저장 및 제공 장치 및 그 방법은, 서버의 역할을 최소화하여 서버 용량 감소에 따른 서버 구축 및 유지비용을 감소시킬 수 있다.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.
따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.
10 : 차량
11 : 제1차량
12 : 제2차량
13 : 제3차량
20 : 블록체인
21 : 사용자 정보 블록체인
22 : GPS 정보 블록체인
23 : SLAM 정보 블록체인
24 : SLAM 데이터 저장정보 블록체인
30 : 데이터 저장 서버
11 : 제1차량
12 : 제2차량
13 : 제3차량
20 : 블록체인
21 : 사용자 정보 블록체인
22 : GPS 정보 블록체인
23 : SLAM 정보 블록체인
24 : SLAM 데이터 저장정보 블록체인
30 : 데이터 저장 서버
Claims (20)
- 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장하는 사용자 블록체인;
블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장하는 GPS 정보 블록체인;
상기 다수의 사용자 중 제2사용자의 제2차량이 제1사용자의 제1차량에 SLAM(Simultaneous Localization And Mapping) 정보를 요청하면, 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성하는 SLAM 정보 블록체인; 및
상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하고, 상기 전송 블록 데이터를 상기 제2차량에 전달하는 SLAM 데이터 저장정보 블록체인;을 포함하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
상기 GPS 정보 블록체인은,
상기 제1차량에서 GPS 정보 데이터를 주기적으로 생성하여 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후 데이터 저장 서버에 전송하면, 상기 데이터 저장 서버로부터 상기 암호화된 GPS 정보 데이터에 기초한 GPS 정보 블록 데이터를 입력받아 등록하고, 상기 제1차량 및 데이터 저장 서버에 등록 결과를 리턴하여 상기 GPS 정보 블록 데이터를 검증하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
상기 SLAM 정보를 요청하는 제2차량은,
경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버에 전송하면서 SLAM 정보를 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 3항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 경로 계획 정보를 기준으로 하여 제1설정거리 이내의 해당 차량들의 해쉬화된 GPS 정보를 상기 GPS 정보 블록체인에 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 3항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 속도가 일정 범위 이상인 경우, 상기 제2차량을 기준으로 하여 제2설정거리 이내의 교통사고 현황, 도로 이상 상태 및 정적 객체 정보를 포함하는 SLAM 정보를 상기 제1차량에 요청하고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제2차량을 기준으로 하여 제3설정거리 이내의 교통사고 현황, 도로 이상 상태, 차량을 제외한 동적 객체 정보, 정적 객체 정보 및 동적 객체의 수를 포함하는 SLAM 정보를 상기 제1차량에 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 3항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 네트워크 상태가 기준치 이상이고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제1차량에 모든 SLAM 정보를 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
상기 SLAM 정보 블록체인은,
상기 데이터 저장 서버로부터 SLAM 데이터를 요청받은 사용자들이 네트워크 상태에 따라 SLAM 정보를 결정하고 암호화하여 전송하면 SLAM 저장 정보 블록 데이터를 등록하고, 상기 데이터 저장 서버 및 제1차량에 등록 결과를 리턴하여 상기 SLAM 저장 정보 블록 데이터를 검증하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량이 SLAM 정보를 받을 수 있도록 데이터 크기, 위치 및 해쉬키를 포함하는 수신 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인에 전송하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
상기 제2차량은,
상기 SLAM 데이터 저장정보 블록체인으로부터 전송 블록 데이터를 입력받고, 상기 전송 블록 데이터를 복호화하여 데이터 저장 서버 내에 필요한 데이터를 얻기 위한 데이터 크기, 위치 및 해쉬키를 포함하는 관련정보를 요청하고, 상기 관련정보가 입력되면 상기 데이터 저장 서버와 통신하여 상기 SLAM 정보 블록체인으로부터 필요 데이터를 수신받는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 제 1항에 있어서,
각 블록체인 노드는,
일정시간 이상 요청하는 블록이 없는 경우 데이터 저장서버의 요청에 의해서 블록을 삭제하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 장치.
- 사용자 블록체인이 다수의 사용자별로 사용자 정보, 공유키 및 해쉬키를 포함하는 사용자 블록 데이터를 저장하는 단계;
GPS 정보 블록체인이 블록체인에 참여한 상기 다수의 사용자들이 주기적으로 생성한 GPS 정보 데이터에 기초하여 GPS 정보 블록 데이터를 저장하는 단계;
상기 다수의 사용자 중 제2사용자의 제2차량이 제1사용자의 제1차량에 SLAM(Simultaneous Localization And Mapping) 정보를 요청하면, SLAM 정보 블록체인이 상기 GPS 정보 블록 데이터에 기초하여 SLAM 저장 정보 블록 데이터를 생성하는 단계;
SLAM 데이터 저장정보 블록체인이 상기 SLAM 저장 정보 블록 데이터를 저장한 적어도 하나의 데이터 저장 서버에 대한 저장 정보를 포함하는 전송 블록 데이터를 저장하는 단계; 및
상기 SLAM 데이터 저장정보 블록체인으로부터 상기 전송 블록 데이터가 상기 제2차량에 전달되는 단계;를 포함하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
상기 GPS 정보 블록 데이터를 저장하는 단계에서, 상기 GPS 정보 블록체인은,
상기 제1차량에서 GPS 정보 데이터를 주기적으로 생성하여 사용자 공개키 및 해쉬키로 GPS 정보를 암호화한 후 데이터 저장 서버에 전송하면, 상기 데이터 저장 서버로부터 상기 암호화된 GPS 정보 데이터에 기초한 GPS 정보 블록 데이터를 입력받아 등록하고, 상기 제1차량 및 데이터 저장 서버에 등록 결과를 리턴하여 상기 GPS 정보 블록 데이터를 검증하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
상기 SLAM 정보를 요청하는 제2차량은,
경로 계획 정보(path planning), 자차량의 속도 및 네트워크 상태 정보 중 적어도 하나 이상을 상기 데이터 저장 서버에 전송하면서 SLAM 정보를 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 13항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 경로 계획 정보를 기준으로 하여 제1설정거리 이내의 해당 차량들의 해쉬화된 GPS 정보를 상기 GPS 정보 블록체인에 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 13항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 속도가 일정 범위 이상인 경우, 상기 제2차량을 기준으로 하여 제2설정거리 이내의 교통사고 현황, 도로 이상 상태 및 정적 객체 정보를 포함하는 SLAM 정보를 상기 제1차량에 요청하고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제2차량을 기준으로 하여 제3설정거리 이내의 교통사고 현황, 도로 이상 상태, 차량을 제외한 동적 객체 정보, 정적 객체 정보 및 동적 객체의 수를 포함하는 SLAM 정보를 상기 제1차량에 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 13항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량의 네트워크 상태가 기준치 이상이고, 상기 제2차량의 속도가 일정 범위 이하인 경우, 상기 제1차량에 모든 SLAM 정보를 요청하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
상기 SLAM 정보 블록체인은,
상기 데이터 저장 서버로부터 SLAM 데이터를 요청받은 사용자들이 네트워크 상태에 따라 SLAM 정보를 결정하고 암호화하여 전송하면 SLAM 저장 정보 블록 데이터를 등록하고, 상기 데이터 저장 서버 및 제1차량에 등록 결과를 리턴하여 상기 SLAM 저장 정보 블록 데이터를 검증하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
상기 데이터 저장 서버는,
상기 제2차량이 SLAM 정보를 받을 수 있도록 데이터 크기, 위치 및 해쉬키를 포함하는 수신 정보를 담은 전송 정보 블록 데이터를 생성하여 SLAM 데이터 저장 정보 블록체인에 전송하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
상기 SLAM 데이터 저장정보 블록체인으로부터 상기 전송 블록 데이터가 상기 제2차량에 전달되는 단계에서, 상기 제2차량은,
상기 SLAM 데이터 저장정보 블록체인으로부터 전송 블록 데이터를 입력받고, 상기 전송 블록 데이터를 복호화하여 데이터 저장 서버 내에 필요한 데이터를 얻기 위한 데이터 크기, 위치 및 해쉬키를 포함하는 관련정보를 요청하고, 상기 관련정보가 입력되면 상기 데이터 저장 서버와 통신하여 상기 SLAM 정보 블록체인으로부터 필요 데이터를 수신받는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
- 제 11항에 있어서,
각 블록체인 노드가 일정시간 이상 요청하는 블록이 없는 경우 데이터 저장서버의 요청에 의해서 블록을 삭제하는 단계;를 더 포함하는 것을 특징으로 하는 SLAM 데이터 저장 및 제공 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180141615A KR102558367B1 (ko) | 2018-11-16 | 2018-11-16 | Slam 데이터 저장 및 제공 장치 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180141615A KR102558367B1 (ko) | 2018-11-16 | 2018-11-16 | Slam 데이터 저장 및 제공 장치 및 그 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200063283A true KR20200063283A (ko) | 2020-06-05 |
KR102558367B1 KR102558367B1 (ko) | 2023-07-21 |
Family
ID=71088572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180141615A KR102558367B1 (ko) | 2018-11-16 | 2018-11-16 | Slam 데이터 저장 및 제공 장치 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102558367B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3255460A1 (en) * | 2016-06-08 | 2017-12-13 | The Boeing Company | On-board backup and anti-spoofing gps system |
KR101880175B1 (ko) * | 2018-02-13 | 2018-07-19 | 주식회사 마크로젠 | 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템 |
KR20180094463A (ko) * | 2017-02-15 | 2018-08-23 | 한양대학교 산학협력단 | Slam 지도 저장 및 로드 방법 |
-
2018
- 2018-11-16 KR KR1020180141615A patent/KR102558367B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3255460A1 (en) * | 2016-06-08 | 2017-12-13 | The Boeing Company | On-board backup and anti-spoofing gps system |
KR20180094463A (ko) * | 2017-02-15 | 2018-08-23 | 한양대학교 산학협력단 | Slam 지도 저장 및 로드 방법 |
KR101880175B1 (ko) * | 2018-02-13 | 2018-07-19 | 주식회사 마크로젠 | 복수의 블록체인에 기반을 둔 생명정보 데이터 제공 방법, 생명정보 데이터 저장 방법 및 생명정보 데이터 전송 시스템 |
Also Published As
Publication number | Publication date |
---|---|
KR102558367B1 (ko) | 2023-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111684760B (zh) | 用于管理数字证书的密码方法和系统 | |
Dwivedi et al. | Blockchain-based secured event-information sharing protocol in internet of vehicles for smart cities | |
CN109219940B (zh) | 私有节点以及私有节点中的处理方法 | |
US11483298B2 (en) | Information masking using certificate authority | |
CN111149324A (zh) | 用于管理具有链接值的数字证书的密码学方法和系统 | |
KR20200123484A (ko) | 인증된 D2D(Device to Device) 통신을 위한 동적 도메인 키 교환 | |
Shi et al. | Blockchain-based multimedia sharing in vehicular social networks with privacy protection | |
US11436873B2 (en) | Encrypted communication system and method for controlling encrypted communication system | |
EP3738272B1 (en) | Cryptographic methods and systems using activation codes for digital certificate revocation | |
KR101780634B1 (ko) | 가상 화폐를 이용하여 주식을 발행하여 분배하고 발행된 주식의 소유권을 이전하는 방법 및 서버 | |
US11456874B2 (en) | Vehicle control system for cybersecurity and financial transactions | |
KR101803651B1 (ko) | 차량 클라우드 서비스 접속을 위한 인증 방법 | |
Gnanajeyaraman et al. | VANET security enhancement in cloud navigation with Internet of Things-based trust model in deep learning architecture | |
CN116561820B (zh) | 可信数据处理方法及相关装置 | |
KR20200050150A (ko) | 블록체인 기반의 교통 정보 처리 방법 및 시스템 | |
CN108141462B (zh) | 数据库查询的方法和系统 | |
CN117555946A (zh) | 一种数据查询方法、装置、计算机设备和存储介质 | |
Guo et al. | A privacy preserving CP-ABE-based access control on data sharing in VANETs | |
Ni et al. | Privacy-preserving data forwarding in VANETs: A personal-social behavior based approach | |
KR102558367B1 (ko) | Slam 데이터 저장 및 제공 장치 및 그 방법 | |
EP4393111A1 (en) | Secure computation using multi-party computation and a trusted execution environment | |
JP6939313B2 (ja) | 分散認証システム | |
Hegde et al. | Secure search scheme for encrypted data in the VANET cloud with random query trapdoor | |
Zhang et al. | Privacy-Preserving AGV Collision-Resistance at the Edge Using Location-Based Encryption | |
Guo et al. | FPAP: Fast pre-distribution authentication protocol for v2i |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |