KR20210107999A - IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법 - Google Patents

IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법 Download PDF

Info

Publication number
KR20210107999A
KR20210107999A KR1020200022636A KR20200022636A KR20210107999A KR 20210107999 A KR20210107999 A KR 20210107999A KR 1020200022636 A KR1020200022636 A KR 1020200022636A KR 20200022636 A KR20200022636 A KR 20200022636A KR 20210107999 A KR20210107999 A KR 20210107999A
Authority
KR
South Korea
Prior art keywords
control
iot device
access control
iot
blockchain
Prior art date
Application number
KR1020200022636A
Other languages
English (en)
Other versions
KR102335171B1 (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 KR1020200022636A priority Critical patent/KR102335171B1/ko
Publication of KR20210107999A publication Critical patent/KR20210107999A/ko
Application granted granted Critical
Publication of KR102335171B1 publication Critical patent/KR102335171B1/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/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0892Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
    • 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/102Entity profiles
    • 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/104Grouping of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/1082Resource delivery mechanisms involving incentive schemes
    • 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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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
    • H04L67/125Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템 및 방법에 관한 것이다. 본 시스템은, 사용자의 제어 명령 요청에 따라 사용자 식별자 및 명령 데이터를 송신하는 IoT 기기, 상기 IoT 기기로부터 전송된 상기 사용자 식별자 및 명령 데이터와 블록체인 플랫폼으로부터 동기화된 접근 제어 데이터에 기반하여, 제어 명령을 요청한 사용자가 상기 IoT 기기에 대한 제어 권한이 있는지 판단하여 인증 및 인가를 처리하는 접근 제어 장치와, 상기 접근 제어 장치에 주기적으로 동기화 및 갱신시키는 블록체인 플랫폼을 포함하고, 상기 접근 제어 장치는, 인가 가능한 사용자 식별자와 각 사용자별 설정된 제어 명령을 포함하는 상기 접근 제어 데이터를, 블록체인으로부터 주기적으로 수신하여 동기화하여 갱신하고 저장하며, 상기 IoT 기기의 제어 명령은, 다수의 기능별 제어 명령을 가지며, 각 제어 명령별로 정책 데이터를 가지고, 각 정책 데이터는 적어도 하나의 규칙 데이터를 가지며, 상기 접근 제어 데이터는 하나의 IoT 기기에 대해 다수의 제어 명령과, 각 제어 명령과 연관된 정책 데이터 그룹과 상기 정책 데이터 그룹과 연관된 규칙 데이터 그룹을 포함하는 것을 특징으로 한다. 이에 의하여, 접근 제어 장치에 의해, IoT 기기의 제어를 원하는 사용자의 인증, 인가 및 제어 처리를 수행하기 때문에 IoT 기기의 실시간 정밀 제어가 가능하게 되고, 블록체인 플랫폼에 접근 제어 데이터를 저장함으로써 데이터 무결성을 확보할 수 있다.

Description

IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법{BLOCKCHAIN-BASED RAPID ACCESS CONTROL SYSTEMS AND METHODS FOR THE IOT DEVICE}
본 발명은 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템에 관한 것으로서, 보다 상세하게는, 사용자로부터 IoT 기기의 제어 요청시, 블록체인에 저장된 IoT 기기 제어 가능자 정보에 기초하여 인증을 수행하는 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템 및 방법에 관한 것이다.
블록체인은 특정 암호화 기능을 사용해 중앙관리자 없이 데이터를 모든 참여자가 공유 및 업데이트하는 기술로서, 데이터 조작을 방지하며 거래의 투명화가 가능하다. 블록체인(Blockchain)은 공공 거래 장부라고도 부르며 가상 화폐로 거래할 때 발생할 수 있는 해킹을 막는 기술이다. 기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용하는 탈 중앙화적 특징을 갖는다. 이에 따라 블록체인은 중앙 관리 기관이 없이 블록체인 네트워크 상에서 장부를 분산 저장하는 방식으로 임의의 사용자가 데이터를 위변조하는 것을 불가능하게 하여 거래의 무결성을 유지한다. 또한, 탈 중앙화적 특징을 갖는 블록체인에서 기 저장된 조건을 만족하는 거래요청이 획득되는 경우, 자동으로 거래를 수행하는 것을 의미하는 스마트 컨트랙트가 다양한 분야에 활용되고 있다.
기존 금융 회사의 경우 중앙 집중형 서버에 거래 기록을 보관하는 반면, 블록체인은 거래에 참여하는 모든 사용자에게 거래 내역을 보내 주며 거래 때마다 이를 대조해 데이터 위조를 막는 방식을 사용하는 탈 중앙화적 특징을 갖는다. 예를 들어, 블록체인은 대표적인 온라인 가상 화폐인 비트코인에 적용되어 있다. 비트코인은 누구나 열람할 수 있는 장부에 거래 내역을 투명하게 기록하며, 비트코인을 사용하는 여러 컴퓨터가 10분에 한 번씩 이 기록을 검증하여 해킹을 막는다.
최근에는 비트코인이 가진 단점을 해결하기 위해 다양한 코인들이 개발 및 제공되고 있으며, 플랫폼적 기능을 갖는 코인의 등장으로 다양한 토큰들이 가상화폐로서 기능하고 있다.
한편, 각종 디바이스, 객체들이 네트워크 등을 통해 서로 연결된 사물 인터넷(Internet of Things)이 확산됨에 따라, 다양한 사물 인터넷 디바이스가 출시 및 이용되고 있다. 종래에 사용자에 의해 수동적으로 운용되거나 또는 네트워크와의 연결 없이 자체의 운용 시스템에 의해 제어/관리되었던 디바이스들이, 네트워크와 연결된 사물 인터넷 디바이스로 운용됨에 따라, 사용자는 보다 편리하게 디바이스를 제어할 수 있고, 각 사물 인터넷 디바이스로부터 획득된 정보를 이용하여 새로운 다양한 서비스를 제공하는 것이 가능해졌다.
종래에는, 블록체인에 사물의 식별정보를 저장해놓고 인증요청이 왔을 때 장치의 식별정보를 블록체인에 조회 요청해서 이 장치에 대한 식별자가 맞는지 블록체인에서 인증 정보를 갖고 와서 비교해서 옳은지 여부를 판단한다.
기존의 블록체인의 인증 시스템에서는 인증 데이터를 저장한 블록체인 플랫폼에 인증 처리 트랜잭션을 발생시킨 후 블록체인 상에서 정상적으로 처리가 완료되면 인증 처리를 수행한다.
블록체인에 인증 처리 트랜잭션이 발생되고 해당 트랜잭션이 포함된 블록 생성되어 확정된 후에야 인증 처리를 수행하기 때문에 지연 시간이 발생된다. 또한, 인증 처리만 수행시 기기의 정밀한 제어가 어렵다.
또한, 종래에는 인증된 사용자가 IoT 기기의 특정 기능만 제어를 하고자 해도, IoT 기기의 모든 기능을 점유하게 되므로 인증받은 사용자가 사용을 완료해야만 다음 사용자가 IoT 기기의 사용이 가능하다.
따라서, 본 발명은 상기한 문제점을 해결하기 위해 창안된 것으로, IoT 시스템에 대한 접근 제어 데이터를 블록체인에 저장하여 접근 제어 데이터의 무결성을 확보하며, 별도의 접근 제어 장치를 통한 인증, 인가 및 제어 프로세스 처리를 수행함으로써 실시간 IoT 기기 제어가 가능한 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템 및 방법을 제공하는 것이다.
상기의 목적을 달성하기 위한 본 발명의 제1양태에 따른 구성은, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템으로서, 사용자의 제어 명령 요청에 따라 사용자 식별자 및 명령 데이터를 송신하는 IoT 기기와, 상기 IoT 기기로부터 전송된 상기 사용자 식별자 및 명령 데이터와 블록체인과 동기화된 접근 제어 데이터에 기반하여, 제어 명령을 요청한 사용자가 상기 IoT 기기에 대한 제어 권한이 있는지 판단하여 인증 및 인가를 처리하는 접근 제어 장치와, 상기 접근 제어 장치가 주기적으로 접근 제어 데이터를 동기화하여 갱신시키는 블록체인을 포함하는 것을 특징으로 한다.
여기서, 상기 접근 제어 장치는, 인가 가능한 사용자 식별자와 각 사용자별 설정된 제어 명령을 포함하는 상기 접근 제어 데이터를, 블록체인으로부터 주기적으로 수신하여 저장하고 갱신한다.
여기서, 상기 IoT 기기는 다른 IoT 기기 또는 상기 IoT 기기에 연결된 센서를 제어한다.
블록체인 기반 고속 인증 제어 시스템에서, 상기 IoT 기기의 제어 명령은, 다수의 기능별 제어 명령을 가지며, 각 제어 명령별로 정책 데이터를 가지고, 각 정책 데이터는 적어도 하나의 규칙 데이터를 가지며, 상기 접근 제어 데이터는 하나의 IoT 기기에 대해 다수의 제어 명령과, 각 제어 명령과 연관된 정책 데이터 그룹과 상기 정책 데이터 그룹과 연관된 규칙 데이터 그룹을 포함한다.
블록체인 기반 고속 인증 제어 시스템에서, 상기 하나의 IoT의 복수의 제어 명령에 대한 권한을 가진 사용자는 각각 할당됨으로써, 각 사용자들은 해당 기기의 복수의 제어를 동시에 수행하고, 동일 제어인 경우에는 인증된 사용자의 제어가 완료된 후에 해당 기기의 제어를 순차적으로 수행한다.
블록체인 기반 고속 인증 제어 시스템에서, 상기 접근 제어 장치는 상기 IoT 기기로부터의 사용자 인증 및 인가 요청에 대한 처리 결과를 최우선 순위로 처리하여 상기 IoT 기기에 전송하고, 상기 IoT 기기 사용에 대한 토큰 보상 처리를 후순위로 별도 처리한다.
블록체인 기반 고속 인증 제어 시스템에서, 상기 접근 제어 장치는 상기 IoT 기기 사용에 대한 토큰 보상을 위한 트랜잭션을 발생하여 상기 블록체인에 전송하고, 상기 블록체인은 상기 트랜잭션에 대해, IoT 기기 사용을 요청한 사용자의 블록체인 계정에서 상기 IoT 기기 소유자의 블록체인 계정으로 보상 토큰을 전송하는 처리를 수행한다.
블록체인 기반 고속 인증 제어 시스템에서, IoT 기기 소유권자 및 기기 제어 인가자는 상기 블록체인에 스마트 컨트랙트 트랜잭션을 발생시켜 상기 접근 제어 데이터를 갱신한다.
블록체인 기반 고속 인증 제어 시스템에서, 상기 다수의 IoT 기기가 일정 개수 이상인 경우, 복수의 그룹으로 나눠지고, 각 그룹별로 각 접근 제어 장치들이 해당 IoT 기기들의 인증을 분산하여 처리한다.
블록체인 기반 고속 인증 제어 시스템에서, 하나의 IoT 인증 제어 시스템 내에서 상기 다수의 접근 제어 장치는 단일의 블록체인 플랫폼에 연결되어 접근 제어 데이터를 동기화하며, 다수의 IoT 인증 제어 시스템들 내 접근 제어 장치들은 서로 연결되어 해당 접근 제어 장치에 연결된 IoT 기기 상태 정보 및 제어 명령 등을 서로 송수신하여 처리한다.
상기의 목적을 달성하기 위한 본 발명의 제1양태에 따른 구성은, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법으로서, IoT 기기가 사용자의 제어 명령 요청에 따라 사용자 식별자 및 명령 데이터를 송신하는 제1단계; 접근 제어 장치가 상기 IoT 기기로부터 전송된 상기 사용자 식별자 및 명령 데이터와 블록체인 플랫폼으로부터 동기화된 접근 제어 데이터에 기반하여, 제어 명령을 요청한 사용자가 상기 IoT 기기에 대한 제어 권한이 있는지 판단하여 인증 및 인가를 처리하는 제2단계를 포함하는 것을 특징으로 한다.
본 블록체인 기반 고속 인증 제어 방법은, 상기 IoT 기기 소유자, 사용자 및 인가자에 의해, 블록체인 플랫폼에 상기 접근 제어 데이터를 저장하는 단계와; 상기 접근 제어 장치가 인가 가능한 사용자 식별자와 각 사용자별 설정된 제어 명령을 포함하는 상기 접근 제어 데이터를, 상기 블록체인 플랫폼으로부터 주기적으로 동기화하여 갱신하는 단계를 더 포함한다.
본 블록체인 기반 고속 인증 제어 방법에서, 상기 사용자가 제어 요청하는 IoT 기기는 다른 IoT 기기 또는 상기 IoT 기기에 연결된 센서, 구동부를 제어한다.
본 블록체인 기반 고속 인증 제어 방법에서, 상기 IoT 기기의 제어 명령은, 다수의 기능별 제어 명령을 가지며, 각 제어 명령별로 정책 데이터를 가지고, 각 정책 데이터는 적어도 하나의 규칙 데이터를 가지며, 상기 접근 제어 데이터는 하나의 IoT 기기에 대해 다수의 제어 명령과, 각 제어 명령과 연관된 정책 데이터 그룹과 상기 정책 데이터 그룹과 연관된 규칙 데이터 그룹을 포함한다.
본 블록체인 기반 고속 인증 제어 방법에서, 상기 하나의 IoT의 복수의 제어 명령에 대한 권한을 가진 사용자는 각각 할당되어 각 사용자들이 해당 기기의 복수의 제어를 동시에 수행하고, 동일 제어인 경우에는 인증된 사용자의 제어가 완료된 후에 해당 기기의 제어를 순차적으로 수행한다.
본 블록체인 기반 고속 인증 제어 방법에서, 상기 제2단계는, 상기 접근 제어 장치가 상기 IoT 기기로부터의 사용자 인증 및 인가 요청에 대한 처리 결과를 최우선 순위로 처리하여 상기 IoT 기기에 전송하고, 상기 IoT 기기 사용에 대한 토큰 보상 처리를 후순위로 별도 처리한다.
본 블록체인 기반 고속 인증 제어 방법은, 상기 접근 제어 장치가 상기 IoT 기기 사용에 대하여, 토큰 보상을 위한 트랜잭션을 발생시켜 상기 블록체인 플랫폼에 전송하는 단계와; 상기 블록체인 플랫폼이 상기 트랜잭션에 대해, IoT 기기 사용을 요청한 사용자의 블록체인 계정에서 상기 IoT 기기 소유자의 블록체인 계정으로 보상 토큰을 전송하는 처리를 수행하는 단계를 더 포함한다.
본 블록체인 기반 고속 인증 제어 방법에서, IoT 기기의 소유권자, 사용자 및 인가자는 상기 블록체인 플랫폼에 스마트 컨트랙트 트랜잭션을 발생시켜 상기 접근 제어 데이터를 갱신한다.
본 블록체인 기반 고속 인증 제어 방법은, 다수의 IoT 기기가 일정 개수 이상인 경우, 복수의 그룹으로 나누고, 각 그룹별로 각 접근 제어 장치들이 제어하도록 구성하는 단계; 상기 다수의 접근 제어 장치가 해당 IoT 기기들의 인증/인가를 분산하여 처리하는 단계를 더 포함한다.
본 블록체인 기반 고속 인증 제어 방법에서, 하나의 IoT 인증 제어 시스템 내에서 상기 다수의 접근 제어 장치는 단일의 블록체인 플랫폼에 연결되어 접근 제어 데이터를 동기화하며, 다수의 IoT 인증 시스템들 내 접근 제어 장치들은 서로 연결되어 해당 접근 제어 장치에 연결된 IoT 기기 상태 정보 및 제어 명령 등을 서로 송수신하여 처리한다.
상기의 구성으로 이루어진 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템 및 방법에 따르면, IoT 시스템에 대한 접근 제어 데이터를 블록체인에 저장하여 접근 제어 데이터의 무결성을 확보하며, 별도의 접근 제어 장치를 통한 인증, 인가 및 제어 프로세스 처리를 고속으로 수행할 수 있으며, 이에 따라 실시간 IoT 기기 제어를 수행한다.
도 1은 본 발명의 일실시예에 따른, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 구성도,
도 2는 도 1의 각 구성의 기능 블록도,
도 3은 도 1의 접근 제어 장치가 IoT 기기 인증/인가를 위해 사용하는 접근 제어 데이터의 구조도,
도 4a는 본 발명의 제2실시예에 따른, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 분산 네트워크 구성도,
도 4b는 본 발명의 제3실시예에 따른, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 분산 네트워크 구성도,
도 5는 본 발명의 일 실시예에 따른 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 데이터 흐름도,
도 6은 본 발명의 다른 실시예에 따른 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 데이터 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 통해 설명될 것이다. 그러나 본 발명은 여기에서 설명되는 실시예들에 한정되지 않고 다른 형태로 구체화될 수도 있다. 단지, 본 실시예들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여 제공되는 것이다.
도면들에 있어서, 본 발명의 실시예들은 도시된 특정 형태로 제한되는 것이 아니며 명확성을 기하기 위하여 과장된 것이다. 또한, 명세서 전체에 걸쳐서 동일한 참조번호로 표시된 부분들은 동일한 구성요소를 나타낸다. 본 명세서에서 "및/또는"이란 표현은 전후에 나열된 구성요소들 중 적어도 하나를 포함하는 의미로 사용된다. 또한, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 또한, 명세서에서 사용되는 "포함한다" 또는 "포함하는"으로 언급된 구성요소, 단계, 동작 및 소자는 하나 이상의 다른 구성요소, 단계, 동작, 소자 및 장치의 존재 또는 추가를 의미한다.
본 발명에서는, 블록체인 기반의 IoT 기기에 대한 인증, 인가 및 제어 방법을 제안한다. 블록체인 트랜잭션 처리에 대한 지연 시간없이 실시간 IoT 기기 제어가 가능하고, 각 IoT 기기의 제어 명령들을 다수의 사용자가 동시 접근하여 각 제어 명령을 실행한다.
IoT 시스템에 대한 접근 제어 데이터를 블록체인에 저장하여 접근 제어 데이터의 무결성을 확보가능하며, 별도의 접근 제어 장치를 통한 인증, 인가 및 제어 프로세스 처리를 수행함으로써 실시간 IoT 기기 제어를 가능하게 한다.
이하에서, 본 발명의 바람직한 실시 예가 첨부된 도면들을 참조하여 본 발명을 구체적으로 설명한다. 본 발명을 설명함에 있어서 관련된 공지기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도 1은 본 발명의 일실시예에 따른, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 구성도이고, 도 2는 도 1의 각 구성의 세부 블록도이다.
IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템은, 도 1에 보인 바와 같이, IoT 기기(20)에 기능 제어 요청을 하는 사용자, 사용자로부터 전송된 사용자 식별자 정보와 제어 명령 데이터를 송신하는 IoT 기기(20), IoT 기기(20)로부터의 사용자 식별자 정보와 제어 명령 데이터와 미리 저장된 접근 제어 데이터 구조에 기초하여, IoT 기기 제어를 요청한 사용자가 인증 및 인가 가능한지 판단하여 인증 및 인가 처리를 우선 수행하고 인가된 사용자의 IoT 기기 제어에 대한 비용으로서 블록체인에 토큰 전송을 요청하는 접근 제어 장치(30), IoT 기기(20)에 대한 접근 제어 데이터를 저장하고 있으며 접근 제어 장치와 동기화하여 접근 제어 데이터를 전송하는 블록체인(40), 블록체인(40)에 접근 제어 데이터를 전송하여 갱신하는 기기 제어 인가 관리자(50)를 포함한다.
사용자(또는 사용자 단말)가 IoT 기기(20)에 제어 요청을 하면, 해당 IoT 기기(20)는 접근 제어 장치에 인증 및 인가 처리를 요청하며, 접근 제어 장치는 접근 제어 데이터를 조회하여 사용자에게 인증 및 인가 여부를 결정한 뒤 그 결과를 IoT 기기(20)에 전송한다. 인증 및 제어 권한을 부여받은 사용자는 그 즉시 IoT 기기(20)를 제어할 수 있다.
본 발명에 따른 IoT 기기(20)의 기능은 다음과 같다.
IoT 기기(20)는 사용자(또는 사용자 단말)로부터 IoT 기기(20)에 대한 제어 요청 명령을 수신하면, 사용자의 식별자 및 제어 명령 데이터를 접근 제어 장치(30)로 전송하여 사용자 인증, 인가 및 제어가 가능함을 확인한 후 사용자에게 IoT 장치를 제어할 수 있게 한다.
또한, IoT 기기(20)는 접근 제어 데이터에 기반하여 다른 IoT 기기 또는 센서를 제어할 수 있다.
또한, IoT 기기(20)는 여러 종류의 기능을 가질 수 있으며 그에 따라 여러 종류의 제어 명령을 처리할 수 있다.
IoT 기기(20)는 접근 제어 장치로부터 사용자의 인증 및 인가 여부 결과를 수신 받고, 인증된 사용자는 해당 IoT 기기(20)의 특정 명령을 실행하여 제어할 수 있다. IoT 기기(20)의 제어 명령들에 대하여 각 사용자들의 권한이 다를 수 있으며, IoT 기기(20)의 각 제어 명령에 대한 권한을 가진 사용자는 IoT 기기(20)의 기능별로 각각 할당될 수 있다. 이에 따라, 각 사용자들은 IoT 기기(20)에 동시 접근하여 명령을 수행하거나 또는 다른 사용자의 제어가 완료된 후에 순차적으로 제어할 수 있다.
사용자가 IoT 기기에 입력하는 사용자 식별자와 제어 명령은 IoT 기기(20)의 입력부를 통해 직접 입력할 수도 있으나, 본 실시예에서는, 별도의 사용자 단말(10)을 통해 입력되는 것으로 설명한다.
본 실시예에서, 접근 제어 장치(30)는 인증 처리 작업을 최우선 순위로 처리한다. 그리고, 접근 제어 장치(30)의 토큰 전송 요청부(34d)는 블록체인 플랫폼에 스마트 컨트랙트 트랜잭션을 발생시켜 사용자 계정에서 IoT 기기(20) 소유자 계정으로 IoT 기기 제어 비용만큼의 토큰을 전송시키는 작업을 후순위로 처리한다.
이와 같이, 접근 제어 장치가 비용 지불 트랜잭션을 별도로 처리하기 때문에, 사용자의 인증, 인가 및 제어 처리가 지연되지 않고 실시간으로 처리된다. 또한, 접근 제어 장치(30)가 인증/인가 처리를 수행함으로써 IoT 기기(20)의 정밀한 제어가 가능하다.
접근 제어 장치(30)는 블록체인 플랫폼으로부터 접근 제어 데이터를 주기적으로 동기화하여 최신의 상태를 유지한다. 여기서, 접근 제어 장치(30)가 블록체인과 연결하여 데이터를 동기화하는 방법은, 일반적인 기술이므로, 상세한 설명은 생략한다.
블록체인(40)은 IoT 기기 소유자 단말(50)로부터 접근 제어 데이터를 입력받아 저장하고, 사용자의 IoT 기기 사용에 대한 비용으로써 사용자 계정에서 IoT 기기 소유자의 계정으로 토큰을 이체하는 기능을 수행한다.
한편, 본 발명에 따른 블록체인 기반 인증 제어 시스템에서, 블록체인 플랫폼은 IoT 기기(20)에 대한 접근 제어 데이터를 저장하고 있다. 접근 제어 데이터는 블록체인 플랫폼에 저장되어 있으므로 무결성을 확보할 수 있다.
여기서, 사용자, IoT 기기(20) 소유권자, 또는 인가 관리자가 블록체인 플랫폼에 스마트 컨트랙트 트랜잭션을 발생시켜 새로운 접근 제어 데이터를 갱신한다. 그리고, 접근 제어 장치는 블록체인 플랫폼으로부터 새로운 접근 제어 데이터를 동기화한다. 즉, 접근 제어 장치는 블록체인 플랫폼으로부터 접근 제어 데이터를 주기적으로 동기화하여 최신의 상태를 유지한다.
도 2에서는, IoT 기기(20), 접근 제어 장치(30), 블록체인(40)이 본 발명에서 수행하는 각각의 기능을 세분화하여 세부 기능 블록을 가지는 것으로 나타내어 설명한다. 그러나, 도 2는 일실시예일 뿐이며, 발명을 구현하는 당시의 기술을 반영하여 다양한 형태로 구현가능하다. 그리고, 본 발명의 다양한 실시예들을 설명함에 있어서, '~부'라고 명명된 구성 요소들은 물리적으로 구분되는 요소들이라고 하기보다 기능적으로 구분되는 요소들로 이해되어야 한다. 따라서 각각의 구성요소는 다른 구성요소와 선택적으로 통합되거나 각각의 구성요소가 제어 로직(들)의 효율적인 실행을 위해 서브 구성요소들로 분할될 수 있다. 구성요소들이 통합 또는 분할되더라도 기능의 동일성이 인정될 수 있다면 통합 또는 분할된 구성요소들도 본 발명의 범위 내에 있다고 해석되어야 함은 당업자에게 자명하다.
사용자 단말(10)은 도 2에 보인 바와 같이, 입력부(11), 통신부(12), 표시부(13), 사용자 식별자 및 제어 명령을 설정하기 위한 IoT 기기 제어앱 구동부(14a), 분산 네트워크 상의 IoT 기기 정보 관리 및 요청부(14b), 저장부(15), 제어부(16)를 포함한다.
사용자 단말(10)에서 IoT 기기 제어앱 구동부(14a)를 구동하여, 표시부(13)에 표시되는 앱에서, 사용자 식별자와 제어 명령을 입력부(11)를 통해 입력한다.
도 2의 IoT 기기(20)는 사용자 단말(10)로부터 전송된 사용자의 제어 요청 명령을 통신부(12)를 통해 수신하여, 사용자의 식별자 및 명령 데이터를 접근 제어 장치(30)에 전송한다.
접근 제어 장치(30)는 도 2에 보인 바와 같이, 입력부(31), 통신부(32), 접근 제어 데이터 동기화부(34a), 인증/인가 처리부(34b), 토큰 잔고 확인부(34c), 토큰 전송 요청부(34d), IoT 기능별 사용자 점유 정보 생성부(34e), 저장부(35), 각 구성을 제어하는 제어부(36)를 포함한다.
도 2의 접근 제어 장치(30)의 접근 제어 데이터 동기화부(34a)는 제어부(36)의 제어에 의해, 주기적으로 접근 제어 데이터가 저장되어 있는 블록체인(40)으로부터 접근 제어 데이터를 동기화하여 최신 상태를 유지한다.
도 2에서, 접근 제어 장치(30)의 인증/인가 처리부(34b)는 블록체인 플랫폼으로부터 동기화한 접근 제어 데이터에 기반하여 사용자의 제어 요청 명령에 대한 인증 및 인가 여부를 처리한다.
도 2의 접근 제어 장치(30)의 제어부(36)는 인증/인가 처리부(34b)에 의해, 저장부(35)에 저장된 접근 제어 데이터를 조회하여 사용자에게 인증 및 인가 여부를 결정하고, 제어부(36)는 그 결과를 통신부(32)를 통해 IoT 기기(20)에 전송한다.
보다 구체적으로, 접근 제어 장치(30)의 제어부(36)는 저장부(35)에 저장하고 있는 최신의 접근 제어 데이터에 기반하여, 인증/인가 처리부(34b)에 의해, 사용자 단말(10)이 요청한 IoT 기기 제어에 대한 권한이 있는지 확인하고, 토큰 잔고 확인부(34c)에 의해, 해당 제어에 대한 비용에 준하는 토큰 잔고를 보유하고 있는지 확인하여, 최종 인증 여부 결과를 IoT 기기(20)로 즉시 전송한다.
접근 제어 장치(30)의 토큰 잔고 확인부(34c)는 저장부(35)에 저장된 최신의 접근 제어 데이터에 기반하여, IoT 기기(20) 사용료에 해당하는 토큰 보유 여부를 확인하여, 그 결과를 제어부(36)에 제공하고, 제어부(36)는 IoT 기기(20)에게 사용자의 인증, 인가 및 제어 가능 여부 결과를 통신부(32)를 통해 IoT 기기(20)에 최우선 순위로 전송한다.
접근 제어 장치(30)의 토큰 전송 요청부(34d)는 제어부(36)의 제어에 따라, IoT 기기 제어에 따른 비용 지불을 위한 트랜잭션을 발생시켜 통신부(32)를 통해 블록체인(40)에 전송한다. 이에 따라, 블록체인(40)의 토큰 이체부(44d)는 사용자가 IoT 기기(20)를 제어하기 위한 비용을 지불하도록, 블록체인 상의 사용자 계정에서 IoT 기기(20)의 소유자 계정으로 토큰을 이체한다.
접근 제어 장치는 IoT 기기(20) 사용에 대한 토큰 보상 이벤트를 별도로 저장한 다음, 후순위로 블록체인 플랫폼에 트랜잭션을 발생시켜서 사용자의 계정에서 IoT 기기(20) 소유자 계정으로 IoT 기기(20) 사용에 대한 보상 토큰을 전송한다.
블록체인은 도 4에 보인 바와 같이, 입력부(41), 통신부(42), 접근 제어 데이터 생성부(44a), 계정 관리부(44b), 사용자별 IoT 제어비용 관리부(44c), 토큰 이체부(44d), 저장부(45), 제어부(46)를 포함한다.
블록체인(40)의 제어부(46)은 스마트 컨트랙트에 의해, IoT 기기 소유자 단말(50)로부터 전송된 접근 제어 데이터를 저장부(45)에 저장한다. 블록체인(40)의 접근 제어 데이터 관리부(44a)는 저장부(45)에 저장된 접근 제어 데이터가 갱신되도록, IoT 기기(20) 소유자에게 요청하는 등의 관리를 수행한다.
블록체인(40)의 계정 관리부(44b)는 사용자별 토큰 계정 및 토큰 잔고를 관리하며, 접근 제어 장치(30)의 토큰 잔고 확인부(34b)의 요청에 따라, 소정 사용자의 계정의 토큰 잔고가 IoT 기기 제어가능한 상태인지 또는 부족한 상태인지 확인한다.
IoT 제어비용 관리부(44c)는 IoT 기기의 각종 기능 제어에 대한 비용을 데이터베이스화하여 저장부(45)에 저장하여 관리한다.
블록체인(40)의 토큰 이체부(44d)는 접근 제어 장치(30)의 토큰 전송 요청부(34d)의 요청에 따라, IoT 기기 제어 비용으로써 토큰을 이체한다.
스마트 컨트랙트는 블록체인을 구성하는 다수의 노드(서버, 컴퓨터 등)에 설치되는 프로그램으로서, 실행 가능한 바이트 코드로 컴파일되어 블록체인 플랫폼 상에서 실행된다.
스마트 컨트랙트가 지정된 기능을 수행하기 위해 노드 또는 다른 단말간에 정보를 송수신하는 상세 방법은 공지된 기술이므로 상세한 설명은 생략한다.
또한, 본 발명에서, 스마트 컨트랙트는 블록체인에 기 저장된 조건에 따라 거래가 수행되는 것을 의미하며, 예를 들어, 기 저장된 조건을 만족하는 거래요청이 획득되는 경우, 자동으로 거래를 수행하는 것을 의미할 수 있다.
도 3은 도 1의 접근 제어 장치가 IoT 기기 인증/인가를 위해 사용하는 접근 제어 데이터의 구조도이다.
접근 제어 데이터는 도 3에 보인 바와 같이, 각 제어 명령에 대한 정책 데이터(60)와, 정책 데이터를 구성하는 규칙 데이터(70)로 조직화된다.
접근 제어 데이터는 도 3에 도시된 접근 제어 데이터 구조에 기반하여 인증 및 인가 데이터가 구성된다.
한편, 여러 종류의 기능을 갖는 IoT 장치는 예를 들면, 카메라, 프린터기 등을 포함할 수 있다.
IoT 장치가 카메라인 경우, 다양한 속도의 스트리밍 기능, 오디오 음성 출력 기능을 포함할 수 있다. IoT 장치가 카메라인 경우, 스트리밍으로 다운받을 때, 예를 들어 5명까지 다운받을 수 있다. 보다 구체적으로, IoT 장치가 지하철역내의 카메라의 경우, 각 카메라에, 여러 사용자(예를 들어, 관제센터)가 접속해서, 카메라가 촬영한 데이터를 볼 수 있는데, 접속할 수 있는 관제센터의 수는 한정되어 있다.
한편, IoT 장치가 프린터의 경우, 여러 사용자가 특정 프린터의 여러 기능 중 팩스기능, 복사기능, 스캔 기기 등등을 나누어 쓸 수 있다.
도 3의 접근 제어 데이터 구조와 연결하여 구체적으로 설명한다. IoT 기기(20)로서 카메라 제어를 예로 들면, 제어 명령어는 “카메라 영상 보기 기능”이고 해당하는 정책 데이터명은 “카메라 영상 보기 기능 정책”이며, 이를 구성하는 규칙 데이터는“인가된 사용자 식별자”“스트리밍 화질 정보”“최대 접속 가능 수”“사용 비용”등으로 구성할 수 있다. 규칙 데이터 중 “인가된 사용자 식별자”는 인증 데이터로 사용될 것이며, 권한 부여에 대한 인가 데이터는“스트리밍 화질 정보”“최대 접속 가능 수”등이 사용될 것이다. 이러한 접근 제어 데이터를 구성하는 인증 및 인가 데이터는 블록체인 상에 저장되어 무결성이 확보되며 접근 제어 장치는 블록체인 플랫폼으로부터 접근 제어 데이터를 주기적으로 동기화하여 최신의 상태를 유지한다.
도 4a는 본 발명의 제2실시예에 따른, IoT 기기(20) 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 분산 네트워크 구성도이고, 도 4b는 본 발명의 제3실시예에 따른, IoT 기기(20) 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 분산 네트워크 구성도이다.
인증 제어할 IoT 기기(20)들이 하나의 접근 제어 장치(30)가 효율적으로 인증/인가 처리가능한 일정 개수보다 많은 경우에는, 도 4a에 보인 바와 같이, 다수의 IoT 기기(20)들은 그룹별로 나뉘어 각 그룹에 하나의 접근 제어 장치를 연결한다. 즉, 다수의 IoT 기기(20)들은 그룹별로 구분되며 그룹별로 각 접근 제어 장치가 해당 IoT 기기(20)들의 인증을 분산 처리한다.
도 4a와 같이, IoT 기기(20)들의 인증 제어 처리를 분산처리를 위해, 제1 접근 제어 장치에 다수의 IoT 기기(20-1,...,20-n)들이 연결되고, 제2 접근 제어 장치에 다수의 IoT 기기(20a-1,...,20a-n)들이 연결된다.
여기서, 도 4a의 다수의 접근 제어 장치들(30a, 30b)은 하나의 블록체인 플랫폼(40)에 연결되어 접근 제어 데이터를 동기화하고 IoT 기기(20)의 실시간 인증을 분산 처리한다. 이때, 다수의 접근 제어 장치(30a, 30b)는 블록체인 플랫폼으로부터 접근 제어 데이터를 주기적으로 동기화하여 실시간 인증을 분산 처리한다.
한편, 다수의 IoT 기기(20)들을 서로 다른 네트워크로 구성하고, 서로 다른 네트워크에 연결되어 있는 IoT 기기(20)들의 인증 제어 처리를 하는 경우는 다음과 같다.
도 4b에 보인 바와 같이, 다수의 IoT 기기(20A-1,..,20A-n))의 인증 제어 처리하는 제1 접근 제어 장치(30A)와 제1블록체인(40A)이 제1 IoT 인증 제어 시스템(1A)을 형성하고, 다수의 IoT 기기(20B-1,...,20B-n)의 인증 제어 처리하는 제2 접근 제어 장치(30B)와 제2 블록체인(40B)이 제2 IoT 인증 제어 시스템(1B)을 형성함으로써, 다수의 IoT 인증 제어 시스템을 형성한다.
이러한, 다수의 IoT 인증 제어 시스템들은, 접근 제어 장치들을 통하여 서로 연결되어 서로 간의 IoT 기기(20) 상태 정보 및 제어 명령 등을 송수신하여 처리한다.
도 4b에서, 제1 IoT 인증 제어 시스템(1A)내의 소정 IoT 기기(20A-1)에 사용자 단말(10)이 IoT 기기 사용을 요청(제어 명령 발생)하면, IoT 기기(20A-1)는 사용자 식별자와 제어 명령을 제1 접근 제어 장치(30A)로 전송하고, 제1 접근 제어 장치(30A)가 네트워크(2)를 통해 사용자 식별자와 제어 명령을 제2 IoT 인증 제어 시스템(2B) 내의 제2 접근 제어 장치(30B)로 전달한다. 그러면, 제2 접근 제어 장치(30B)가 자신이 저장하고 있는 접근 제어 데이터에 기초하여 사용자를 인증/인가 처리를 하고, 인증/인가 처리 결과를 네트워크(2)를 통해 제1 접근 제어 장치(30A)에 전송하고, 제1 접근 제어 장치(30A)가 제어 명령을 요청한 사용자 단말(10)에게 통지한다.
이에 따라, 제1 IoT 인증 제어 시스템(1A)내의 사용자 단말(10)은 제2 IoT 인증 제어 시스템(1B)의 IoT 기기(20B-1)의 기능을 제어 할 수 있다.
이러한 방식을 실제예에 적용하면 다음과 같다. 제1 IoT 인증 제어 시스템(1A)이 강남 지역의 아파트 단지에 구성되어 있고, 제2 IoT 인증 제어 시스템(1B)이 강북 지역의 아파트 단지에 구성되어 있는 경우, 강남 지역의 아파트 단지의 사용자가 강북 지역의 아파트 단지에 거주하는 가족, 지인 등의 아파트에 설치된 IoT 기기(20B-1)(예를 들어, CCTV 등)를 제어하고자 하는 경우에 적용할 수 있다.
여기서, 제1 IoT 인증 제어 시스템(1A)의 접근 제어 장치(30A)와 제2 IoT 인증 제어 시스템(1B)의 접근 제어 장치(30B)는 자신이 관리하는 IoT 기기들의 정보를 공유할 수 있다.
도 4a 및 도 4b에 나타낸 바와 같이, 적어도 하나의 접근 제어 장치는 블록체인 플랫폼에 연결되어 하나의 IoT 인증 제어 시스템을 이루고, 다수의 IoT 인증 제어 시스템들이 접근 제어 장치들을 통하여 서로 연결되어, 서로 간의 IoT 기기의 상태 정보 및 제어 명령 등을 송수신하여 처리한다.
도 5는 본 발명의 일 실시예에 따른 IoT 기기(20) 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 데이터 흐름도이다.
IoT 기기(20)와 접근 제어 장치 및 블록체인 사이의 데이터 송수신 과정은 다음과 같다.
도 5에 보인 바와 같이, IoT 기기(20)의 제어에 대한 인증/인가 과정을 수행하기 위해, 먼저 다음 과정이 수행된다. IoT 기기(20) 소유자 또는 IoT 기기(20) 제어 인가 관리자(50)는 접근 제어 데이터의 초기 전송 또는 갱신을 위한 스마트 컨트랙트 트랜잭션을 블록체인(40)에 전송하고(S1), 블록체인(40)은 접근 제어 데이터를 저장 또는 갱신한다(S2).
접근 제어 장치(30)와 블록체인(40)이 동기화(S3)되어, 블록체인(40)에 저장된 접근 제어 데이터가 접근 제어 장치(30)에 저장된다(S4).
접근 제어 장치(30)는 주기적으로 블록체인(40)으로부터 최신의 접근 제어 데이터를 수신하여 기저장된 접근 제어 데이터를 갱신한다(S5).
그다음, 사용자 단말(10)이 앱을 통해, IoT 기기(20)에 특정 기능의 제어를 요청할 시, 사용자 단말(10)은 자신의 사용자 식별자와 제어 명령을 IoT 기기(20)에 전송한다(S6).
해당 IoT 기기(20)는 사용자 식별자와 제어 명령을 접근 제어 장치(30)에 전송하여 인증 및 인가 처리를 요청한다(S7).
접근 제어 장치(30)는 접근 제어 데이터에 기반하여, IoT 기기(20)로부터 전송된 사용자 식별자가 제어 권한이 있는지 확인하고(S8), 제어 명령을 요청한 사용자가 제어 명령의 처리 비용을 지불 가능한 토큰 잔고를 보유하는지 여부를 블록체인과 동기화하여 저장해둔 정보에 기초하여 확인한 후(S9), 인증/인가 처리를 우선 수행한다.
접근 제어 장치(30)가 인증/인가 결과를 IoT 기기(20)에 전송하고(S10), IoT 기기(20)는 인증/인가 결과를 사용자 단말(10)에 전송한다(S11). 이와 동시에, 접근 제어 장치(30)가 인가된 사용자 식별자가 사용하는 IoT 기기의 제어 명령에 따른 IoT 기기의 기능 정보를 데이터베이스화하여 저장한다(S12).
이후에, 사용자 단말(10)이 IoT 기기의 기능을 제어한다(S13).
그리고, 접근 제어 장치(30)는 인가된 사용자 식별자가 사용하는 IoT 기기 제어 명령에 대한 토큰 전송 처리를 블록체인(40)에 요청한다(S14).
블록체인(40)은 제어 명령 요청자의 토큰 잔고에서 IoT 기기 소유자의 토큰 잔고로 제어명령 사용 비용만큼 IoT 기기 소유자의 계정으로 이체한다(S15).
도 6은 본 발명의 다른 실시예에 따른 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템의 데이터 흐름도이다.
도 6의 실시예는, 다수의 IoT 기기를 복수의 그룹으로 나누어 각 그룹에 구성한 접근 제어 장치에 의해 IoT 기기의 제어 명령을 인증/인가하는 것을 분산 처리하는 구성이다. 도 6의 구성에서, 제1 그룹의 IoT 기기의 사용자가 제2 그룹의 IoT 기기의 특정 기능을 제어하고자, 제어 명령을 전송하여, 인증/인가 처리하는 과정을 설명한다.
IoT 기기(20) 소유자 또는 IoT 기기(20)의 제어 인가 관리자(50)는 접근 제어 데이터의 초기 전송 또는 갱신을 위한 스마트 컨트랙트 트랜잭션을 제1블록체인(40A) 및 제2블록체인(40B)에 전송하고(T1), 제1블록체인(40A) 및 제2블록체인(40B)은 접근 제어 데이터를 저장 또는 갱신한다(T2).
제1 접근 제어 장치(30A)/ 제2 접근 제어 장치(30B)와 제1 블록체인(40A)/ 제2블록체인(40B)이 동기화(T3)되어, 제1 블록체인(40A)/ 제2블록체인(40B)의 접근 제어 데이터가 제1 접근 제어 장치(30A)/제2 접근 제어 장치(30B)에 저장된다(T4).
제1 접근 제어 장치(30A)/제2 접근 제어 장치(30B)는 주기적으로 제1블록체인(40A)/제1블록체인(40B)으로부터 최신의 접근 제어 데이터를 수신하여 기저장된 접근 제어 데이터를 갱신한다(T5).
그다음, 제1 IoT 인증 제어 시스템내의 IoT 기기-1(20A)에 접속한 사용자 단말(10)이 사용자 식별자 정보를 전송하고 제2 IoT 인증 제어 시스템내의 IoT 기기-2(20B)에게 제어를 요청할 시(T6), IoT기기-1(20A)가 사용자 식별자 정보와 IoT 기기-2(20B)에 대한 제어 명령을 제1 접근 제어 장치(30A)에 전송한다(T7). 그리고, 제1 IoT 인증 제어 시스템내의 제1접근 제어 장치(30A)가, IoT기기-1(20A)로부터 전송된 사용자 식별자 정보와 IoT 기기-2(20B)에 대한 제어 명령을 네트워크를 통해 제2 IoT 인증 제어 시스템의 제2 접근 제어 장치(30B)에 전송한다(T8).
제2 접근 제어 장치(30B)는 제2블록체인(40B)과 동기화되어 저장된 접근 제어 데이터와 현재 저장된 제2 IoT 인증 제어 시스템 내의 IoT 기기들의 기능 점유 정보 데이터베이스에 기초하여, IoT 기기-2(20B) 제어의 인가 가능 여부를 확인한다(T9).
제2 접근 제어 장치(30B)는 제어 명령을 요청한 사용자가 제어 명령의 처리 비용에 상응하는 토큰 잔고를 보유하는지 여부를 미리 저장된 정보에 기초하여 확인함으로써, 인증/인가 처리를 우선 수행한다. 처리결과, 제2 접근 제어 장치(30B)가 제1그룹의 제1 접근 제어 장치(30A)에 인가를 전송하고, 제1 접근 제어 장치(30A)는 인가 가능 정보를 제1그룹 IoT 기기(20A)에 전송하고, 사용자 단말(10)에 전송한다(T11).
이와 동시에, 제2 접근 제어 장치(30)는 인가된 사용자 식별자가 사용하는 IoT 기기의 제어 명령에 따른 IoT 기기의 기능 점유 정보를 데이터베이스화하여 저장한다(T12).
이에 따라, 사용자 단말(10)은, 제2 IoT 인증 제어 시스템내의 IoT 기기(20B)의 기능을 제어할 수 있게 된다(T13).
그 다음, 제2 접근 제어 장치(30)는 인가된 사용자 식별자가 사용하는 제어 명령에 대해 토큰 전송 처리를 제2 블록체인(40B)에 요청한다(T14).
제2블록체인(40B)은 제2그룹의 IoT 기기의 제어 명령을 요청한 사용자의 계정으로부터 IoT 기기 소유자의 계정으로, 제어명령 처리 비용에 해당하는 토큰 만큼을 이체한다(T15).
상술한 본 발명의 일 실시예에서 사용되는 통신방법은, 유선 통신이나 무선 통신과 같은 통신 양태를 가리지 않고 구성될 수 있으며, 근거리 통신망(LAN; Local Area Network), 도시권 통신망(MAN; Metropolitan Area Network), 광역통신망(WAN; Wide Area Network) 등 다양한 통신망으로 구성될 수 있다. 바람직하게는, 본 명세서에서 말하는 통신망은 공지의 인터넷 또는 월드와이드웹(WWW; World Wide Web)일 수 있다. 그러나, 통신망은, 굳이 이에 국한될 필요 없이, 공지의 유무선 데이터 통신망, 공지의 전화망 또는 공지의 유무선 텔레비전 통신망을 그 적어도 일부에 있어서 포함할 수도 있다.
예를 들면, 통신망은 무선 데이터 통신망으로서, 무선주파수(RF; Radio Frequency) 통신, 와이파이(WiFi) 통신, 셀룰러(LTE 등) 통신, 블루투스 통신(더 구체적으로는, 저전력 블루투스(BLE; Bluetooth Low Energy)), 적외선 통신, 초음파 통신 등과 같은 종래의 통신 방법을 적어도 그 일부분에 있어서 구현하는 것일 수 있다.
또한, 블록체인(스마트 컨트랙트)은, 강력한 컴퓨터 또는 컴퓨터들의 클러스터를 포함할 수 있다.
상술한 본 발명은 다음과 같은 효과를 가진다.
블록체인 플랫폼에 접근 제어 데이터를 저장함으로써 데이터 무결성을 확보할 수 있다. 그리고, IoT 기기의 제어를 원하는 사용자의 인증, 인가 및 제어 처리 수행 시 블록체인 트랜잭션 처리 완료를 기다리지 않고, 접근 제어 장치에 의해, 즉시 인증, 인가 및 제어 처리를 수행하기 때문에 IoT 기기의 실시간 정밀 제어가 가능하게 된다.
즉, 접근 제어 장치가 사용자의 인증, 인가 및 제어 처리와 비용 지불 트랜잭션을 별개로 처리하기 때문에, 사용자의 인증, 인가 및 제어 처리가 지연되지 않고 실시간으로 처리할 수 있게 되고, 인증/인가 과정이 실시간으로 처리된다.
또한, 스마트 컨트랙트를 이용하여 사용자 계정의 토큰을 IoT 기기 소유자 계정으로 전송함으로써 기기 사용에 대한 보상을 신뢰성 있게 처리할 수 있다.
상기는 본 발명의 예시로서, 한정적으로 해석되어야 하는 것은 아니다. 본 발명의 몇 가지 예시적인 실시 형태에 대해 설명했지만, 본 발명의 신규 교시 및 이점으로부터 현저하게 일탈하지 않고, 많은 변경이 예시적인 실시 형태에 있어서 가능한 것을 당업자라면 용이하게 이해할 것이다. 따라서 모든 그러한 변경은 특허청구의 범위에서 정의되는 본 발명의 범위 내에 포함되는 것이 의도된다. 따라서 상기가 본 발명의 예시이며, 공개된, 또는 본 명세서에 공개되는 발명에 있어서 특정의 실시 형태에 한정되는 것으로서 해석되어서는 안 되며, 개시된 실시 형태로의 변경 및 다른 실시 형태가 본 명세서에 개시되는 발명의 범위 내에 포함되는 것으로 이해해야 할 것이다.
1 : IoT 고속 인증 제어 시스템
10 : 사용자 단말 20, 20A, 20B : IoT 기기
30, 30A, 30B : 접근 제어 장치 40, 40A, 40B : 블록체인(스마트 컨트랙트)
60 : 정책 데이터 그룹 70 : 규칙 데이터 그룹

Claims (20)

  1. IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템으로서,
    사용자의 제어 명령 요청에 따라 사용자 식별자 및 명령 데이터를 송신하는 IoT 기기와,
    상기 IoT 기기로부터 전송된 상기 사용자 식별자 및 명령 데이터와 블록체인 플랫폼으로부터 동기화된 접근 제어 데이터에 기반하여, 제어 명령을 요청한 사용자가 상기 IoT 기기에 대한 제어 권한이 있는지 판단하여 인증 및 인가를 처리하는 접근 제어 장치와,
    상기 접근 제어 장치에 주기적으로 동기화 및 갱신시키는 블록체인 플랫폼을 포함하는 것을 특징으로 하는 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  2. 제1항에 있어서,
    상기 접근 제어 장치는, 인가 가능한 사용자 식별자와 각 사용자별 설정된 제어 명령을 포함하는 상기 접근 제어 데이터를, 블록체인 플랫폼으로부터 주기적으로 수신하여 동기화하여 갱신하고 저장하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  3. 제1항 또는 제2항에 있어서,
    상기 IoT 기기는 다른 IoT 기기 또는 상기 IoT 기기에 연결된 센서를 제어하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  4. 제2항에 있어서,
    상기 IoT 기기의 제어 명령은, 다수의 기능별 제어 명령을 가지며, 각 제어 명령별로 정책 데이터를 가지고, 각 정책 데이터는 적어도 하나의 규칙 데이터를 가지며,
    상기 접근 제어 데이터는 하나의 IoT 기기에 대해 다수의 제어 명령과, 각 제어 명령과 연관된 정책 데이터 그룹과 상기 정책 데이터 그룹과 연관된 규칙 데이터 그룹을 포함하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  5. 제1항에 있어서,
    상기 하나의 IoT 기기의 복수의 제어 명령에 대한 권한을 가진 사용자는 각각 할당됨으로써, 각 사용자들은 해당 기기의 복수의 제어를 동시에 수행하고, 동일 제어인 경우에는 인증된 사용자의 제어가 완료된 후에 해당 기기의 제어를 순차적으로 수행하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  6. 제1항에 있어서,
    상기 접근 제어 장치는 상기 IoT 기기로부터의 사용자 인증 및 인가 요청에 대한 처리 결과를 최우선 순위로 처리하여 상기 IoT 기기에 전송하고,
    상기 IoT 기기 사용에 대한 토큰 보상 처리를 후순위로 별도 처리하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  7. 제6항에 있어서,
    상기 접근 제어 장치는 상기 IoT 기기 사용에 대한 토큰 보상을 위한 트랜잭션을 발생하여 상기 블록체인 플랫폼에 전송하고, 상기 블록체인 플랫폼은 상기 트랜잭션에 대해, IoT 기기 사용을 요청한 사용자의 블록체인 계정에서 상기 IoT 기기 소유자의 블록체인 계정으로 보상 토큰을 전송하는 처리를 수행하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  8. 제1항에 있어서,
    IoT 기기 소유권자, 사용자 및 인가자는 상기 블록체인 플랫폼에 스마트 컨트랙트 트랜잭션을 발생시켜 상기 접근 제어 데이터를 갱신하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  9. 제1항에 있어서,
    상기 다수의 IoT 기기가 일정 개수 이상인 경우, 복수의 그룹으로 나눠지고, 각 그룹별로 각 접근 제어 장치들이 해당 IoT 기기들의 인증을 분산하여 처리하는 , IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  10. 제9항에 있어서,
    하나의 IoT 인증 제어 시스템 내에서 상기 다수의 접근 제어 장치는 단일의 블록체인 플랫폼에 연결되어 접근 제어 데이터를 동기화하며, 다수의 IoT 인증 제어 시스템들 내 접근 제어 장치들은 서로 연결되어 해당 접근 제어 장치에 연결된 IoT 기기 상태 정보 및 제어 명령 등을 서로 송수신하여 처리하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 시스템.
  11. IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법으로서,
    IoT 기기가 사용자의 제어 명령 요청에 따라 사용자 식별자 및 명령 데이터를 송신하는 제1단계;
    접근 제어 장치가 상기 IoT 기기로부터 전송된 상기 사용자 식별자 및 명령 데이터와 블록체인 플랫폼으로부터 동기화된 접근 제어 데이터에 기반하여, 제어 명령을 요청한 사용자가 상기 IoT 기기에 대한 제어 권한이 있는지 판단하여 인증 및 인가를 처리하는 제2단계를 포함하는 것을 특징으로 하는 IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  12. 제11항에 있어서,
    상기 IoT 기기 소유자, 사용자 및 인가자에 의해, 블록체인 플랫폼에 상기 접근 제어 데이터를 저장하는 단계와;
    상기 접근 제어 장치가 인가 가능한 사용자 식별자와 각 사용자별 설정된 제어 명령을 포함하는 상기 접근 제어 데이터를, 상기 블록체인 플랫폼으로부터 주기적으로 동기화하여 갱신하는 단계를 더 포함하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  13. 제11항에 있어서,
    상기 사용자가 제어 요청하는 IoT 기기는 다른 IoT 기기 또는 상기 IoT 기기에 연결된 센서, 구동부를 제어하는 것인, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  14. 제11항에 있어서,
    상기 IoT 기기의 제어 명령은, 다수의 기능별 제어 명령을 가지며, 각 제어 명령별로 정책 데이터를 가지고, 각 정책 데이터는 적어도 하나의 규칙 데이터를 가지며,
    상기 접근 제어 데이터는 하나의 IoT 기기에 대해 다수의 제어 명령과, 각 제어 명령과 연관된 정책 데이터 그룹과 상기 정책 데이터 그룹과 연관된 규칙 데이터 그룹을 포함하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  15. 제14항에 있어서,
    상기 하나의 IoT의 복수의 제어 명령에 대한 권한을 가진 사용자는 각각 할당되어 각 사용자들이 해당 기기의 복수의 제어를 동시에 수행하고, 동일 제어인 경우에는 인증된 사용자의 제어가 완료된 후에 해당 기기의 제어를 순차적으로 수행하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  16. 제15항에 있어서,
    상기 제2단계는,
    상기 접근 제어 장치가 상기 IoT 기기로부터의 사용자 인증 및 인가 요청에 대한 처리 결과를 최우선 순위로 처리하여 상기 IoT 기기에 전송하고,
    상기 IoT 기기 사용에 대한 토큰 보상 처리를 후순위로 별도 처리하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  17. 제16항에 있어서,
    상기 접근 제어 장치가 상기 IoT 기기 사용에 대하여, 토큰 보상을 위한 트랜잭션을 발생시켜 상기 블록체인 플랫폼에 전송하는 단계와;
    상기 블록체인 플랫폼이 상기 트랜잭션에 대해, IoT 기기 사용을 요청한 사용자의 블록체인 계정에서 상기 IoT 기기 소유자의 블록체인 계정으로 보상 토큰을 전송하는 처리를 수행하는 단계를 더 포함하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  18. 제11항에 있어서,
    IoT 기기의 소유권자, 사용자 및 인가자는 상기 블록체인 플랫폼에 스마트 컨트랙트 트랜잭션을 발생시켜 상기 접근 제어 데이터를 갱신하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  19. 제11항에 있어서,
    다수의 IoT 기기가 일정 개수 이상인 경우, 복수의 그룹으로 나누고, 각 그룹별로 각 접근 제어 장치들이 제어하도록 구성하는 단계;
    상기 다수의 접근 제어 장치가 해당 IoT 기기들의 인증/인가를 분산하여 처리하는 단계를 더 포함하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
  20. 제19항에 있어서,
    하나의 IoT 인증 제어 시스템 내에서 상기 다수의 접근 제어 장치는 단일의 블록체인 플랫폼에 연결되어 접근 제어 데이터를 동기화하며, 다수의 IoT 인증 시스템들 내 접근 제어 장치들은 서로 연결되어 해당 접근 제어 장치에 연결된 IoT 기기 상태 정보 및 제어 명령 등을 서로 송수신하여 처리하는, IoT 기기 제어를 위한 블록체인 기반 고속 인증 제어 방법.
KR1020200022636A 2020-02-25 2020-02-25 IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법 KR102335171B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200022636A KR102335171B1 (ko) 2020-02-25 2020-02-25 IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200022636A KR102335171B1 (ko) 2020-02-25 2020-02-25 IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20210107999A true KR20210107999A (ko) 2021-09-02
KR102335171B1 KR102335171B1 (ko) 2021-12-06

Family

ID=77794495

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200022636A KR102335171B1 (ko) 2020-02-25 2020-02-25 IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR102335171B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062319A (ko) * 2004-12-03 2006-06-12 삼성에스디에스 주식회사 사용자별 권한 할당 및 접속을 관리하는 홈네트워크게이트웨이 및 그 제어방법
KR101778768B1 (ko) * 2017-04-21 2017-09-18 (주)케이사인 IoT 기기 제어 방법 및 시스템
KR20200003306A (ko) * 2018-06-18 2020-01-09 삼성전자주식회사 블록체인 기반의 사물 인터넷 시스템 및 그 제어방법
KR20200007349A (ko) * 2018-07-13 2020-01-22 문석민 블록체인 기반의 무선 네트워크 운영 방법 및 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060062319A (ko) * 2004-12-03 2006-06-12 삼성에스디에스 주식회사 사용자별 권한 할당 및 접속을 관리하는 홈네트워크게이트웨이 및 그 제어방법
KR101778768B1 (ko) * 2017-04-21 2017-09-18 (주)케이사인 IoT 기기 제어 방법 및 시스템
KR20200003306A (ko) * 2018-06-18 2020-01-09 삼성전자주식회사 블록체인 기반의 사물 인터넷 시스템 및 그 제어방법
KR20200007349A (ko) * 2018-07-13 2020-01-22 문석민 블록체인 기반의 무선 네트워크 운영 방법 및 시스템

Also Published As

Publication number Publication date
KR102335171B1 (ko) 2021-12-06

Similar Documents

Publication Publication Date Title
CN100563248C (zh) 当用户连接至ip网络时在本地管理区域内用于管理用户接入授权的方法和系统
CN108959621B (zh) 一种区块链网络的实现方法、装置、设备及存储介质
US20140344460A1 (en) Brokering network resources
CN102947797B (zh) 使用横向扩展目录特征的在线服务访问控制
CN112541758A (zh) 基于区块链的多轮投票式容错排序共识机制与方法
JP6245949B2 (ja) 認可サーバーシステム、その制御方法、およびそのプログラム。
CN107835195B (zh) 一种分布式网络应用节点集成管理方法
CN101073239A (zh) 安全信息存储装置与至少一个第三方之间的通信方法和系统、相应实体、装置和第三方
CN103404103A (zh) 将访问控制系统与业务管理系统相结合的系统和方法
CN106559389A (zh) 一种服务资源发布、调用方法、装置、系统及云服务平台
CN116980163A (zh) 基于可信执行环境的数据处理方法、装置、设备及介质
US10867326B2 (en) Reputation system and method
KR102027403B1 (ko) 송금 기반 결제 처리 방법 및 그를 수행하기 위한 서버
KR102335171B1 (ko) IoT 기기 제어용 블록체인 기반 고속 인증 제어 시스템 및 방법
CN1649299B (zh) 应用程序综合管理系统、综合通话管理服务器
KR102140453B1 (ko) 모임 관리 방법 및 이를 이용한 모임 관리 시스템
CN116775267A (zh) 资源配额方法、装置、设备及存储介质
KR20060054591A (ko) 티켓 예매 시스템 및 방법
CN103491109A (zh) 一种nfc终端数据交换方法
US11263711B2 (en) Revocable certificates for guestroom access and guestroom controls by mobile devices
KR20210061541A (ko) 가상 공간 관리 시스템, 가상 공간 가입 방법 및 가상 공간 구입 방법
CN110266657A (zh) 认证处理方法及装置、资源访问方法及装置、存储介质
KR20230071320A (ko) 하나 이상의 블록체인 환경에서의 자산 거래 시스템, 자산 거래 방법 및 장치
US11798358B2 (en) Casino decentralized management to collect and share player credit data
US11778454B2 (en) Service provider independent mobile phone number-based service delivery

Legal Events

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