KR102400646B1 - 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템 - Google Patents

블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템 Download PDF

Info

Publication number
KR102400646B1
KR102400646B1 KR1020200117380A KR20200117380A KR102400646B1 KR 102400646 B1 KR102400646 B1 KR 102400646B1 KR 1020200117380 A KR1020200117380 A KR 1020200117380A KR 20200117380 A KR20200117380 A KR 20200117380A KR 102400646 B1 KR102400646 B1 KR 102400646B1
Authority
KR
South Korea
Prior art keywords
new
iot device
manufacturer
new firmware
firmware update
Prior art date
Application number
KR1020200117380A
Other languages
English (en)
Other versions
KR20220035538A (ko
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 KR1020200117380A priority Critical patent/KR102400646B1/ko
Publication of KR20220035538A publication Critical patent/KR20220035538A/ko
Application granted granted Critical
Publication of KR102400646B1 publication Critical patent/KR102400646B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/107Network architectures or network communication protocols for network security for controlling access to devices or network resources wherein the security policies are location-dependent, e.g. entities privileges depend on current location or allowing specific operations only from locally connected terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Medical Informatics (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에 관한 것으로, 사물인터넷장치와, 상기 사물인터넷장치에 대응하는 신규 펌웨어를 저장하고, 신규 펌웨어 업데이트의 요청에 따라 상기 신규 펌웨어를 전송하는 제조업체저장소와, 제조업체노드 및 사물인터넷노드를 포함하되, 상기 제조업체노드를 통해 상기 신규 펌웨어에 대응하는 신규 스마트 계약을 생성, 배포 및 검증하고, 상기 사물인터넷노드를 통해 상기 스마트 계약을 수신 및 실행하는 블록체인네트워크와, 상기 사물인터넷노드를 통해 상기 블록체인네트워크와 연결되면서 상기 사물인터넷장치와 연결되어 사물인터넷장치 정보를 저장하며, 상기 신규 스마트 계약을 수신하여 상기 사물인터넷장치 정보에 따라 상기 블록체인네트워크를 통해 상기 제조업체저장소로 상기 신규 펌웨어 업데이트를 요청하는 게이트웨이와, 상기 제조업체저장소로부터 전송되는 상기 신규 펌웨어를 업데이트하도록 상기 사물인터넷장치로 전송하는 드론을 포함함으로써, 펌웨어 파일의 위변조를 방지하여 보안성을 향상시킬 수 있으며, 네트워크와 게이트웨이의 부하를 감소시킬 수 있다.

Description

블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템{BLOCK-CHAIN BASED FIRMWARE UPDATE SYSTEM USING DRONE}
본 발명은 블록체인을 기반으로 하여 펌웨어를 드론을 이용하여 사물인터넷 장치의 펌웨어를 업데이트함으로써, 펌웨어 파일의 위변조를 방지하여 보안성을 향상시킬 수 있으며, 네트워크와 게이트웨이의 부하를 감소시킬 수 있는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에 관한 것이다.
잘 알려진 바와 같이, 사물인터넷(IoT : internet of things)은 인터넷을 기반으로 모든 사물을 연결하여 사람과 사물, 사물과 사물 간의 정보를 상호 소통하는 지능형 기술 및 서비스를 의미한다.
이러한 사물인터넷은 일부 장치에 국한되고, 사람의 판단에 의지하는 유비쿼터스 센서 네트워크(USN : ubiqutos sensor network)와 달리, 인터넷을 통해 모든 장치를 연결하고, 장치간의 소통을 통해 정보처리를 수행하는 지능형 장치로의 완성을 지향하고 있다.
이에 따라, 사물인터넷의 하위 장치들은 장치가 인터넷을 통해 네트워크에 참여할 수 있도록 이를 위한 처리장치와 통신장치를 포함하여 구성되도록 하고 있으며, 이를 운영하기 위한 펌웨어가 설치될 수 있다.
그리고, 사물인터넷은 참여하는 장치들이 유비쿼터스 센서 네트워크와 달리 다양하기 때문에, 낮은 컴퓨팅 파워, 적은 리소스를 가지는 장치의 네트워크 참여가 가능해야 하며, 비교적 개방된 형태의 네트워크를 무선으로 연결할 수 있다.
이러한 사물인터넷은 시스템의 특성상 중앙에서 집중적으로 장치들을 관리하기 힘들고, 펌웨어의 업데이트를 위해 무선으로 데이터를 전달하여 진행하게 되며, 이로 인해, 외부 침임이 용이하고, 해킹 공격에 취약한 문제점이 있다.
이러한 보안 취약점을 해소하기 위해 일부 장치에서 업데이트를 위한 데이터를 검증하도록 하는 기술이 제안되고 있는데, 예를 들어 보안키와 전자서명을 이용하여 데이터를 검증하도록 하는 방법이 제안되었으나, 이를 위해 사용하는 보안키가 장치의 메모리에 저장되고, 장치메모리 외부 접속에 의해 접근 가능한 메모리에 저장되어 침입에 의해 노출될 가능성이 높아 보안상 취약한 문제점이 있다.
1. 한국등록특허 제10-101083547호(2011.11.08.등록)
본 발명은 블록체인을 기반으로 하여 펌웨어를 드론을 이용하여 사물인터넷 장치의 펌웨어를 업데이트함으로써, 펌웨어 파일의 위변조를 방지하여 보안성을 향상시킬 수 있으며, 네트워크와 게이트웨이의 부하를 감소시킬 수 있는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템을 제공하고자 한다.
또한, 본 발명은 사물인터넷장치에 대응하는 신규 펌웨어에 대한 신규 스마트 계약에 따라 신규 펌웨어 업데이트를 요청할 경우 제조업체저장소로부터 전송되는 신규 펌웨어를 드론으로 전송한 후에, 드론을 통해 신규 펌웨어를 사물인터넷장치로 전송함으로써, 게이트웨이에서 업데이트하고자 하는 신규 펌웨어의 변경 가능성을 미연에 차단할 수 있을 뿐만 아니라 드론을 이용하여 신규 펌웨어를 업데이트할 수 있어 네트워크 부하를 현저하게 감소시킬 수 있는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템을 제공하고자 한다.
본 발명의 실시예들의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 실시예에 따르면, 사물인터넷장치와, 상기 사물인터넷장치에 대응하는 신규 펌웨어를 저장하고, 신규 펌웨어 업데이트의 요청에 따라 상기 신규 펌웨어를 전송하는 제조업체저장소와, 제조업체노드 및 사물인터넷노드를 포함하되, 상기 제조업체노드를 통해 상기 신규 펌웨어에 대응하는 신규 스마트 계약을 생성, 배포 및 검증하고, 상기 사물인터넷노드를 통해 상기 스마트 계약을 수신 및 실행하는 블록체인네트워크와, 상기 사물인터넷노드를 통해 상기 블록체인네트워크와 연결되면서 상기 사물인터넷장치와 연결되어 사물인터넷장치 정보를 저장하며, 상기 신규 스마트 계약을 수신하여 상기 사물인터넷장치 정보에 따라 상기 블록체인네트워크를 통해 상기 제조업체저장소로 상기 신규 펌웨어 업데이트를 요청하는 게이트웨이와, 상기 제조업체저장소로부터 전송되는 상기 신규 펌웨어를 업데이트하도록 상기 사물인터넷장치로 전송하는 드론을 포함하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 제조업체저장소는, 상기 신규 펌웨어에 대응하는 신규 펌웨어 바이너리 파일 및 신규 펌웨어 버전 정보를 저장하고, 상기 제조업체노드에 신규 펌웨어 업데이트에 대응하는 상기 신규 스마트 계약을 요청하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 제조업체 노드는, 신규 펌웨어 정보, 업데이트 대상 장치 정보 및 암호화를 위한 공개키를 포함하는 신규 스마트 계약 정보를 장부에 저장하고, 상기 신규 스마트 계약을 생성하여 상기 블록체인네트워크에 포함된 다른 제조업체 노드들을 통해 펌웨어 업데이트 블록을 검증하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 블록체인네트워크는, 상기 펌웨어 업데이트 블록의 검증이 완료될 경우 상기 펌웨어 업데이트 블록을 블록체인 원장에 저장하고, 상기 제조업체노드 및 사물인터넷노드에 상기 펌웨어 업데이트 블록의 저장을 전파하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 게이트웨이는, 상기 사물인터넷노드로부터 상기 신규 펌웨어 업데이트에 대한 알림을 수신하고, 상기 신규 펌웨어 업데이트가 필요한지의 여부에 대해 수신된 상기 신규 스마트 계약과 저장된 상기 사물인터넷장치 정보를 비교하여 판단하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 게이트웨이는, 상기 신규 스마트 계약 및 사물인터넷장치 정보의 비교 결과, 상기 신규 펌웨어 업데이트가 필요한 경우 상기 사물인터넷노드에 상기 사물인터넷장치 정보와 함께 상기 신규 펌웨어 업데이트를 요청하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 사물인터넷노드는, 상기 신규 펌웨어 업데이트 요청에 따라 상기 사물인터넷장치 정보가 상기 신규 스마트 계약의 요구사항과 일치하는 경우 상기 신규 스마트 계약에 대응하는 공개키를 상기 게이트웨이를 통해 상기 사물인터넷장치에 전송한 후, 상기 제조업체저장소에 상기 신규 펌웨어 업데이트를 요청하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 제조업체저장소는, 상기 신규 펌웨어 업데이트의 요청에 따라 상기 사물인터넷장치 정보를 확인한 후, 상기 신규 펌웨어 바이너리 파일을 개인키를 이용하여 암호화하고, 암호화된 상기 신규 펌웨어 바이너리 파일을 상기 사물인터넷장치 정보와 함께 상기 드론에 저장하도록 전송하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 드론은, 상기 사물인터넷장치 정보에 포함된 위치정보에 따라 상기 사물인터넷장치의 위치로 이동한 후, 상기 공개키 및 개인키를 이용하여 상기 사물인터넷장치와 통신하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 본 발명의 실시예에 따르면, 상기 사물인터넷장치는, 상기 공개키를 이용하여 상기 드론으로부터 전송되는 상기 신규 펌웨어 바이너리 파일을 복호화하여 상기 신규 펌웨어 업데이트를 수행하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템이 제공될 수 있다.
또한, 사물인터넷장치와, 상기 사물인터넷장치에 대응하는 신규 펌웨어를 저장하고, 신규 펌웨어 업데이트의 요청에 따라 상기 신규 펌웨어를 전송하는 제조업체저장소와, 제조업체노드 및 사물인터넷노드를 포함하되, 상기 제조업체노드를 통해 상기 신규 펌웨어에 대응하는 신규 스마트 계약을 생성, 배포 및 검증하고, 상기 사물인터넷노드를 통해 상기 스마트 계약을 수신 및 실행하는 블록체인네트워크와, 상기 사물인터넷노드를 통해 상기 블록체인네트워크와 연결되면서 상기 사물인터넷장치와 연결되어 사물인터넷장치 정보를 저장하며, 상기 신규 스마트 계약을 수신하여 상기 사물인터넷장치 정보에 따라 상기 블록체인네트워크를 통해 상기 제조업체저장소로 상기 신규 펌웨어 업데이트를 요청하는 게이트웨이와, 상기 제조업체저장소로부터 전송되는 상기 신규 펌웨어를 업데이트하도록 상기 사물인터넷장치로 전송하는 드론과, 상기 제조업체저장소는, 상기 신규 펌웨어에 대응하는 신규 펌웨어 바이너리 파일 및 신규 펌웨어 버전 정보를 저장하고, 상기 제조업체노드에 신규 펌웨어 업데이트에 대응하는 상기 신규 스마트 계약을 요청하며, 상기 제조업체 노드는, 신규 펌웨어 정보, 업데이트 대상 장치 정보 및 암호화를 위한 공개키를 포함하는 신규 스마트 계약 정보를 장부에 저장하고, 상기 신규 스마트 계약을 생성하여 상기 블록체인네트워크에 포함된 다른 제조업체 노드들을 통해 펌웨어 업데이트 블록을 검증하고, 상기 게이트웨이는, 상기 신규 스마트 계약 및 사물인터넷장치 정보의 비교 결과, 상기 신규 펌웨어 업데이트가 필요한 경우 상기 사물인터넷노드에 상기 사물인터넷장치 정보와 함께 상기 신규 펌웨어 업데이트를 요청하고, 상기 제조업체저장소는, 상기 신규 펌웨어 업데이트의 요청에 따라 상기 사물인터넷장치 정보를 확인한 후, 상기 신규 펌웨어 바이너리 파일을 개인키를 이용하여 암호화하고, 암호화된 상기 신규 펌웨어 바이너리 파일을 상기 사물인터넷장치 정보와 함께 상기 드론에 저장하도록 전송하고, 상기 드론은, 상기 사물인터넷장치 정보에 포함된 위치정보에 따라 상기 사물인터넷장치의 위치로 이동한 후, 상기 공개키 및 개인키를 이용하여 상기 사물인터넷장치와 통신하는 것을 특징으로 한다.
본 발명은 블록체인을 기반으로 하여 펌웨어를 드론을 이용하여 사물인터넷 장치의 펌웨어를 업데이트함으로써, 펌웨어 파일의 위변조를 방지하여 보안성을 향상시킬 수 있으며, 네트워크와 게이트웨이의 부하를 감소시킬 수 있다.
또한, 본 발명은 사물인터넷장치에 대응하는 신규 펌웨어에 대한 신규 스마트 계약에 따라 신규 펌웨어 업데이트를 요청할 경우 제조업체저장소로부터 전송되는 신규 펌웨어를 드론으로 전송한 후에, 드론을 통해 신규 펌웨어를 사물인터넷장치로 전송함으로써, 게이트웨이에서 업데이트하고자 하는 신규 펌웨어의 변경 가능성을 미연에 차단할 수 있을 뿐만 아니라 드론을 이용하여 신규 펌웨어를 업데이트할 수 있어 네트워크 부하를 현저하게 감소시킬 수 있다.
도 1은 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템을 예시한 도면이고,
도 2는 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에서 펌웨어 업데이트 블록을 생성하는 과정을 예시한 도면이며,
도 3은 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에서 펌웨어 업데이트 과정을 예시한 도면이다.
본 발명의 실시예들에 대한 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
도 1 내지 도 3은 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템을 예시한 도면이고, 도 2는 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에서 펌웨어 업데이트 블록을 생성하는 과정을 예시한 도면이며, 도 3은 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템에서 펌웨어 업데이트 과정을 예시한 도면이다.
도 1을 참조하면, 본 발명의 실시예에 따른 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템은 사물인터넷장치(110), 제조업체저장소(120), 블록체인네트워크(130), 게이트웨이(140), 드론(150) 등을 포함할 수 있다.
사물인터넷장치(110)는 각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 기술(즉, 무선 통신을 통해 각종 사물을 연결하는 기술)이 적용된 장치를 의미하는데, 인터넷망으로 연결된 사물들이 데이터를 주고받아 스스로 분석하고 학습한 정보를 사용자에게 제공하거나 사용자가 이를 원격 조정할 수 있는 인공지능 기술이 적용된 장치이다. 여기에서, 사물이란 가전제품, 모바일 장비, 웨어러블 디바이스 등 다양한 임베디드 시스템이 포함될 수 있다.
이러한 사물인터넷에 연결되는 사물들은 자신을 구별할 수 있는 유일한 아이피를 가지고 인터넷망으로 연결되어야 하며, 외부 환경으로부터의 데이터 취득을 위해 센서를 내장할 수 있다.
그리고, 사물인터넷장치(110)는 블록체인네트워크(131)에 포함되는 사물인터넷노드(132)로부터 게이트웨이(140)를 통해 전송되는 공개키를 이용하여 드론(150)으로부터 전송되는 신규 펌웨어 바이너리 파일을 복호화하여 신규 펌웨어 업데이트를 수행할 수 있다.
상술한 바와 같은 사물인터넷장치(110)는 본 발명에서 하나의 장치로 하여 설명하였지만, 하나의 게이트웨이(140)에 대응하는 하나의 그룹으로 하여 복수개가 구비될 수 있음은 물론이다.
제조업체저장소(120)는 사물인터넷장치(110)에 대응하는 신규 펌웨어를 저장하고, 신규 펌웨어 업데이트의 요청에 따라 신규 펌웨어를 전송할 수 있는데, 신규 펌웨어에 대응하는 신규 펌웨어 바이너리 파일 및 신규 펌웨어 버전 정보를 저장하고, 블록체인네트워크(130)에 포함되는 제조업체노드(131)에 신규 펌웨어 업데이트에 대응하는 신규 스마트 계약을 요청할 수 있다.
그리고, 제조업체저장소(120)는 게이트웨이(140)로부터 블록체인네트워크(130)를 통해 전송되는 신규 펌웨어 업데이트의 요청에 따라 사물인터넷장치 정보를 확인한 후, 신규 펌웨어 바이너리 파일을 개인키를 이용하여 암호화하고, 암호화된 신규 펌웨어 바이너리 파일을 사물인터넷장치 정보와 함께 드론(150)에 저장하도록 전송할 수 있다.
여기에서, 사물인터넷장치 정보는 예를 들어 장치모델, 펌웨어버전, 위치정보 등을 포함할 수 있다.
상술한 바와 같은 제조업체저장소(120)는 본 발명에서 하나의 장치로 하여 설명하였지만, 복수개가 구비될 수 있음은 물론이다.
한편, 제조업체저장소(120)는 제조업체에서 등록할 수 있는데, 제조업체에서 블록체인네트워크(130)에 제조업체저장소(120)의 등록을 요청할 수 있고, 회사명, 사물인터넷장치, 개인키, 공개키 등을 함께 등록할 수 있다.
그리고, 제조업체에서 신규 펌웨어를 개발한 경우 제조업체저장소(120)에 저장한 후, 이를 블록체인네트워크(130)에 신규 펌웨어 등록을 요청할 수 있다. 여기에서, 제조업체저장소(120)에서는 회사명, 대상장치, 펌웨어버전 등과 같은 펌웨어 정보를 함께 등록할 수 있으며, 이는 개인키를 이용하여 검증할 수 있다.
한편, 제조업체저장소(120)에서는 블록체인네트워크(130)로부터 전송되는 사물인터넷장치 정보와 신규 펌웨어 업데이트 요청에 따라 요청된 사물인터넷장치 정보를 리스트로 작성하고, 작성된 리스트와 해당 신규 펌웨어 파일, 개인키 등을 드론(150)에 저장하도록 전송함면서 해당 사물인터넷장치(110)에 전송하여 업데이트하도록 요청할 수 있다.
블록체인네트워크(130)는 장치 제조업체가 소유하여 제조업체저장소(120)와 연결되는 제조업체노드(131) 및, 블록체인네크워크(130)와 게이트웨이(140)를 연결하는 사물인터넷노드(132)를 포함하되, 제조업체노드(131)를 통해 신규 펌웨어에 대응하는 신규 스마트 계약을 생성, 배포 및 검증하고, 사물인터넷노드(132)를 통해 스마트 계약을 수신 및 실행할 수 있다.
여기에서, 제조업체 노드(131)는 신규 펌웨어 정보, 업데이트 대상 장치 정보 및 암호화를 위한 공개키를 포함하는 신규 스마트 계약 정보를 장부에 저장하고, 신규 스마트 계약을 생성하여 블록체인네트워크(130)에 포함된 다른 제조업체노드들을 통해 펌웨어 업데이트 블록을 검증할 수 있다.
그리고, 블록체인네트워크(130)는 펌웨어 업데이트 블록의 검증이 완료될 경우 펌웨어 업데이트 블록을 블록체인 원장에 저장하고, 제조업체노드(131) 및 사물인터넷노드(132)에 펌웨어 업데이트 블록의 저장을 전파할 수 있다.
한편, 사물인터넷노드(132)는 게이트웨이(140)로부터 전송되는 신규 펌웨어 업데이트 요청에 따라 사물인터넷장치 정보가 신규 스마트 계약의 요구사항과 일치하는 경우 신규 스마트 계약에 대응하는 공개키를 게이트웨이(140)를 통해 사물인터넷장치(110)에 전송한 후, 블록체인네트워크(130)를 통해 제조업체저장소(120)에 신규 펌웨어 업데이트를 요청할 수 있다.
상술한 바와 같은 블록체인네트워크(130)에 포함되는 제조업체노드(131) 및 사물인터넷노드(132)는 본 발명에서 하나의 장치로 하여 설명하였지만, 제조업체, 사물인터넷장치 등에 대응하여 각각 복수개가 구비될 수 있음은 물론이다.
한편, 블록체인네트워크(130)에서는 제조업체의 요청에 따라 제조업체 정보를 확인한 후 이전에 등록한 제조업체가 아닌 경우 블록체인네트워크(130)에 구비되는 벤더맵(vender map)에 추가할 수 있으며, 이 후 제조업체저장소(120)는 등록한 공개키를 이용하여 검증할 수 있다.
그리고, 블록체인네트워크(130)에서는 제조업체저장소(120)로부터 신규 펌웨어 등록이 요청될 경우 펌웨어 정보를 확인한 후, 올바른 파일일 경우 신규 펌웨어를 등록하고, 블록체인네트워크(130)에 연결된 모든 게이트웨이(140)에 신규 펌웨어에 대응하는 펌웨어 정보를 전파할 수 있다.
한편, 블록체인네트워크(130)에서는 게이트웨이(140)로부터 전송되는 사물인터넷장치 정보와 신규 펌웨어 업데이트 요청에 따라 이를 제조업체저장소(120)로 전송할 수 있다.
게이트웨이(140)는 사물인터넷장치(110)와의 연결지점을 의미하며, 예를 들어 Wifi 라우터, Zigbee 게이트웨이, Lora 게이트웨이 등을 포함할 수 있는데, 사물인터넷노드(132)를 통해 블록체인네트워크(130)와 연결되면서 사물인터넷장치(110)와 연결되어 사물인터넷장치 정보를 저장하며, 블록체인네트워크(130)로부터 신규 스마트 계약을 수신하여 사물인터넷장치 정보에 따라 블록체인네트워크(130)를 통해 제조업체저장소(120)로 신규 펌웨어 업데이트를 요청할 수 있다.
여기에서, 게이트웨이(140)는 사물인터넷노드(132)로부터 신규 펌웨어 업데이트에 대한 알림을 수신하고, 신규 펌웨어 업데이트가 필요한지의 여부에 대해 수신된 신규 스마트 계약과 저장된 사물인터넷장치 정보를 비교하여 판단할 수 있다.
또한, 게이트웨이(140)는 신규 스마트 계약 및 사물인터넷장치 정보의 비교 결과, 신규 펌웨어 업데이트가 필요한 경우 사물인터넷노드(132)에 사물인터넷장치 정보와 함께 신규 펌웨어 업데이트를 요청할 수 있다.
상술한 바와 같은 게이트웨이(140)는 본 발명에서 하나의 장치로 하여 설명하였지만, 적어도 하나의 사물인터넷장치(110)를 각각 포함하는 복수의 그룹과 각각 매칭되는 복수개로 구비될 수 있다.
한편, 게이트웨이(140)에서는 연결된 모든 사물인터넷장치(110)에 대한 사물인터넷장치 정보(예를 들면, 장치명, 펌웨어버전, 위치정보 등)를 디바이스맵(device map)에 저장하는데, 블록체인네트워크(130)로부터 신규 펌웨어에 대한 펌웨어 정보가 전파될 경우 사물인터넷장치 정보가 저장된 디바이스맵과 비교한 후, 펌웨어 업데이트가 필요한 장치를 확인하고, 업데이트가 필요한 장치가 있는 경우 해당 장치의 사물인터넷장치 정보를 블록체인네트워크(130)로 전송하여 신규 펌웨어 업데이트를 요청할 수 있다.
그리고, 게이트웨이(140)에서는 신규 펌웨어를 업데이트하는 드론(150)에 대해 개인키를 이용하여 검증한 후에, 그룹키를 드론(150)에 전송하여 해당 게이트웨이(140)에 포함된 사물인터넷장치(110)의 신규 펌웨어 업데이트를 수행할 수 있으며, 이 그룹키는 보안 향상을 위해 일회용 그룹키를 이용할 수 있다.
드론(150)은 무인항공기를 의미하는 것으로, 제조업체저장소(120)로부터 전송되는 신규 펌웨어를 업데이트하도록 사물인터넷장치로 전송할 수 있다.
여기에서, 드론(150)은 사물인터넷장치 정보에 포함된 위치정보에 따라 사물인터넷장치(110)의 위치로 이동한 후, 공개키 및 개인키를 이용하여 사물인터넷장치(110)와 통신할 수 있으며, 이를 통해 신규 펌웨어 바이너리 파일을 사물인터넷장치(110)로 전송할 수 있다.
따라서, 본 발명은 블록체인을 기반으로 하여 펌웨어를 드론을 이용하여 사물인터넷 장치의 펌웨어를 업데이트함으로써, 펌웨어 파일의 위변조를 방지하여 보안성을 향상시킬 수 있으며, 네트워크와 게이트웨이의 부하를 감소시킬 수 있다.
또한, 본 발명은 사물인터넷장치에 대응하는 신규 펌웨어에 대한 신규 스마트 계약에 따라 신규 펌웨어 업데이트를 요청할 경우 제조업체저장소로부터 전송되는 신규 펌웨어를 드론으로 전송한 후에, 드론을 통해 신규 펌웨어를 사물인터넷장치로 전송함으로써, 게이트웨이에서 업데이트하고자 하는 신규 펌웨어의 변경 가능성을 미연에 차단할 수 있을 뿐만 아니라 드론을 이용하여 신규 펌웨어를 업데이트할 수 있어 네트워크 부하를 현저하게 감소시킬 수 있다.
이상의 설명에서는 본 발명의 다양한 실시예들을 제시하여 설명하였으나 본 발명이 반드시 이에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능함을 쉽게 알 수 있을 것이다.
110 : 사물인터넷장치
120 : 제조업체저장소
130 : 블록체인네트워크
140 : 게이트웨이
150 : 드론

Claims (10)

  1. 사물인터넷장치와,
    상기 사물인터넷장치에 대응하는 신규 펌웨어를 저장하고, 신규 펌웨어 업데이트의 요청에 따라 상기 신규 펌웨어를 전송하는 제조업체저장소와,
    제조업체노드 및 사물인터넷노드를 포함하되, 상기 제조업체노드를 통해 상기 신규 펌웨어에 대응하는 신규 스마트 계약을 생성, 배포 및 검증하고, 상기 사물인터넷노드를 통해 상기 스마트 계약을 수신 및 실행하는 블록체인네트워크와,
    상기 사물인터넷노드를 통해 상기 블록체인네트워크와 연결되면서 상기 사물인터넷장치와 연결되어 사물인터넷장치 정보를 저장하며, 상기 신규 스마트 계약을 수신하여 상기 사물인터넷장치 정보에 따라 상기 블록체인네트워크를 통해 상기 제조업체저장소로 상기 신규 펌웨어 업데이트를 요청하는 게이트웨이와,
    상기 제조업체저장소로부터 전송되는 상기 신규 펌웨어를 업데이트하도록 상기 사물인터넷장치로 전송하는 드론과,
    상기 제조업체저장소는, 상기 신규 펌웨어에 대응하는 신규 펌웨어 바이너리 파일 및 신규 펌웨어 버전 정보를 저장하고, 상기 제조업체노드에 신규 펌웨어 업데이트에 대응하는 상기 신규 스마트 계약을 요청하며,
    상기 제조업체 노드는, 신규 펌웨어 정보, 업데이트 대상 장치 정보 및 암호화를 위한 공개키를 포함하는 신규 스마트 계약 정보를 장부에 저장하고, 상기 신규 스마트 계약을 생성하여 상기 블록체인네트워크에 포함된 다른 제조업체 노드들을 통해 펌웨어 업데이트 블록을 검증하고,
    상기 게이트웨이는, 상기 신규 스마트 계약 및 사물인터넷장치 정보의 비교 결과, 상기 신규 펌웨어 업데이트가 필요한 경우 상기 사물인터넷노드에 상기 사물인터넷장치 정보와 함께 상기 신규 펌웨어 업데이트를 요청하고,
    상기 제조업체저장소는, 상기 신규 펌웨어 업데이트의 요청에 따라 상기 사물인터넷장치 정보를 확인한 후, 상기 신규 펌웨어 바이너리 파일을 개인키를 이용하여 암호화하고, 암호화된 상기 신규 펌웨어 바이너리 파일을 상기 사물인터넷장치 정보와 함께 상기 드론에 저장하도록 전송하고,
    상기 드론은, 상기 사물인터넷장치 정보에 포함된 위치정보에 따라 상기 사물인터넷장치의 위치로 이동한 후, 상기 공개키 및 개인키를 이용하여 상기 사물인터넷장치와 통신하는 것을 특징으로 하는
    블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템.
  2. 삭제
  3. 삭제
  4. 청구항 1에 있어서,
    상기 블록체인네트워크는, 상기 펌웨어 업데이트 블록의 검증이 완료될 경우 상기 펌웨어 업데이트 블록을 블록체인 원장에 저장하고, 상기 제조업체노드 및 사물인터넷노드에 상기 펌웨어 업데이트 블록의 저장을 전파하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템.
  5. 청구항 4에 있어서,
    상기 게이트웨이는, 상기 사물인터넷노드로부터 상기 신규 펌웨어 업데이트에 대한 알림을 수신하고, 상기 신규 펌웨어 업데이트가 필요한지의 여부에 대해 수신된 상기 신규 스마트 계약과 저장된 상기 사물인터넷장치 정보를 비교하여 판단하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템.
  6. 삭제
  7. 청구항 5에 있어서,
    상기 사물인터넷노드는, 상기 신규 펌웨어 업데이트 요청에 따라 상기 사물인터넷장치 정보가 상기 신규 스마트 계약의 요구사항과 일치하는 경우 상기 신규 스마트 계약에 대응하는 공개키를 상기 게이트웨이를 통해 상기 사물인터넷장치에 전송한 후, 상기 제조업체저장소에 상기 신규 펌웨어 업데이트를 요청하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템.
  8. 삭제
  9. 삭제
  10. 청구항 7에 있어서,
    상기 사물인터넷장치는, 상기 공개키를 이용하여 상기 드론으로부터 전송되는 상기 신규 펌웨어 바이너리 파일을 복호화하여 상기 신규 펌웨어 업데이트를 수행하는 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템.
KR1020200117380A 2020-09-14 2020-09-14 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템 KR102400646B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200117380A KR102400646B1 (ko) 2020-09-14 2020-09-14 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200117380A KR102400646B1 (ko) 2020-09-14 2020-09-14 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템

Publications (2)

Publication Number Publication Date
KR20220035538A KR20220035538A (ko) 2022-03-22
KR102400646B1 true KR102400646B1 (ko) 2022-05-19

Family

ID=80991689

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200117380A KR102400646B1 (ko) 2020-09-14 2020-09-14 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템

Country Status (1)

Country Link
KR (1) KR102400646B1 (ko)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101083547B1 (ko) 2010-08-16 2011-11-14 웹싱크 주식회사 펌웨어 업데이트 방법 및 이를 위한 시스템

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Alexander Yohan 외 1인, "An Over-the-Blockchain Firmware Update Framework for IoT Devices", IEEE Conference (DSC) (2018.12.)*
손민성 외 1인, "하이브리드 블록체인 기반의 안전한 펌웨어 배포 시스템", 인터넷정보학회논문지 제20권 (2019.)*

Also Published As

Publication number Publication date
KR20220035538A (ko) 2022-03-22

Similar Documents

Publication Publication Date Title
US11240222B2 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
US10951630B2 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
US11076290B2 (en) Assigning an agent device from a first device registry to a second device registry
CN106875518B (zh) 智能锁的控制方法、装置及智能锁
US9860235B2 (en) Method of establishing a trusted identity for an agent device
CN101573936B (zh) 使用可信处理技术的数字版权管理
US8051489B1 (en) Secure configuration of a wireless sensor network
KR102177794B1 (ko) 사물인터넷 블록체인 환경에서의 디바이스 분산 인증 방법 및 이를 이용한 디바이스 분산 인증 시스템
US8069470B1 (en) Identity and authentication in a wireless network
JP4803145B2 (ja) 鍵共有方法、鍵配信システム
EP3528468B1 (en) Profile information sharing
WO2015056009A1 (en) Method of establishing a trusted identity for an agent device
CN106961334A (zh) 控制器和附件之间的安全无线通信
CN110463137A (zh) 减少带宽的握手通信
US20190349347A1 (en) Registry apparatus, agent device, application providing apparatus and corresponding methods
CN106416187B (zh) 使用短程通信的网络节点安全
JP2024503055A (ja) 鍵確立のためのシステムおよび方法
KR102162018B1 (ko) Intel SGX를 사용한 투명하고 안전한 IoT 게이트웨이 연결법
KR102219018B1 (ko) 블록체인 기반의 사물인터넷 데이터 전송 방법
KR102400646B1 (ko) 블록체인을 기반으로 하는 드론을 이용한 펌웨어 업데이트 시스템
KR102161116B1 (ko) IoT기기 원격제어 시스템
JP7458470B2 (ja) 通信制御装置
KR102028392B1 (ko) 스마트 홈 구축을 위한 IoT 장치 간 인증 및 세션 키의 분배 방법
KR102135727B1 (ko) 토큰을 활용한 IoT 블록체인 시스템 및 이를 이용한 다단계 인증 방법
US20210092109A1 (en) Systems and methods for protecting drone-to-ground communications

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant