KR20190069234A - 홈 IoT 환경에서의 보안성 제공 장치 및 방법 - Google Patents

홈 IoT 환경에서의 보안성 제공 장치 및 방법 Download PDF

Info

Publication number
KR20190069234A
KR20190069234A KR1020170169752A KR20170169752A KR20190069234A KR 20190069234 A KR20190069234 A KR 20190069234A KR 1020170169752 A KR1020170169752 A KR 1020170169752A KR 20170169752 A KR20170169752 A KR 20170169752A KR 20190069234 A KR20190069234 A KR 20190069234A
Authority
KR
South Korea
Prior art keywords
token
information
authentication
user terminal
control information
Prior art date
Application number
KR1020170169752A
Other languages
English (en)
Other versions
KR102033226B1 (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 KR1020170169752A priority Critical patent/KR102033226B1/ko
Publication of KR20190069234A publication Critical patent/KR20190069234A/ko
Application granted granted Critical
Publication of KR102033226B1 publication Critical patent/KR102033226B1/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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Telephonic Communication Services (AREA)

Abstract

홈 IoT에서 보안성 제공 방법 및 장치가 개시된다.
IoT(Internet of Things) 허브에 의한 보안성 제공 방법은 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계; 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계; 상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및 상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.

Description

홈 IoT 환경에서의 보안성 제공 장치 및 방법{APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT}
아래의 설명은 홈 IoT 환경에서의 보안성 제공 장치 및 방법 에 관한 것이다.
IoT(Internet of Things)는 사물 간의 인터넷 또는 개체 간의 인터넷으로 정의되며, 고유 식별이 가능한 사물이 만들어낸 정보를 인터넷을 통해 공유하는 환경을 의미한다. IoT 환경의 다양한 사물들은 인터넷을 통해 연결될 수 있고, IoT 환경을 통해 주변 상황이 분석되고, 분석 결과에 기초하여 생성되는 명령을 통해 사물들이 제어될 수 있다.
SDN(Software Define Network)는 소프트웨어 프로그래밍을 통해 네트워크 경로 설정, 제어 및 운용 관리를 수행할 수 있는 네트워킹 기술이다. SDN을 통해서 네트워크의 데이터 평면과 제어 평면이 분리될 수 있고, 이러한 특징이 IoT 환경에 적용됨으로써 IoT 허브를 통해 홈 IoT 환경의 IoT 기기들이 제어될 수 있다.
일 실시예에 따른 IoT 허브에 의해 수행되는 보안성 제공 방법은 IoT(Internet of Things) 허브에 의한 보안성 제공 방법에 있어서, 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계; 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계; 상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및 상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.
일 실시예에 따른 보안성 제공 방법에서 상기 인증 정보는, 상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 사용자 인증을 수행하는 단계는 상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하는 단계; 및 상기 토큰 식별 정보에 기초하여 토큰을 인증하는 단계를 포함할 수 있다.
일 실시예에 따른 상기 토큰 식별 정보는 새로운 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신될 수 있다.
일 실시예에 따른 상기 토큰 식별 정보는 상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신될 수 있다.
일 실시예에 따른 상기 토큰을 변경하는 단계는 상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키는 단계; 및
상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경하는 단계를 포함할 수 있다.
일 실시예에 따른 보안성 제공 방법은 상기 토큰에 대한 인증이 실패한 경우 상기 토큰의 인증에 실패한 토큰을 삭제하는 단계; 및 새로운 토큰을 생성하는 단계를 더 포함할 수 있다.
일 실시예에 따른 사용자 단말에 의해 수행되는 보안성 제공 방법은 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송하는 단계; 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 상기 IoT 허브로부터 수신하는 단계; 및 상기 변경된 토큰에 대한 인증을 수행하는 단계를 포함할 수 있다.
일 실시예에 따른 상기 변경된 토큰은 상기 결과 정보에 기초하여 생성된 상기 사용자 단말에 대한 제어 정보를 포함하고, 미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함할 수 있다.
일 실시예에 따른 상기 인증을 수행하는 단계는 상기 변경된 토큰에 포함된 보안성 리비전 카운터 값에 기초하여 상기 변경된 토큰을 인증할 수 있다.
일 실시예에 따른 보안성 제공 장치는 사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 인증부; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 전송부; 및 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 상기 토큰을 변경하는 제어부를 포함하고, 상기 전송부는 상기 변경된 토큰을 상기 사용자 단말에 전송할 수 있다.
일 실시예에 따른 상기 인증 정보는 상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함할 수 있다.
일 실시예에 따른 상기 인증부는 상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하고, 상기 토큰 식별 정보에 기초하여 토큰을 인증할 수 있다.
일 실시예에 따른 상기 토큰 식별 정보는 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신될 수 있다.
일 실시예에 따른 상기 토큰 식별 정보는 상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신될 수 있다.
일 실시예에 따른 상기 제어부는 상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키고, 상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 상기 토큰을 변경할 수 있다.
일 실시예에 따른 보안성 제공 장치에서 상기 토큰에 대한 인증이 실패한 경우, 상기 제어부는 상기 토큰의 인증에 실패한 토큰을 삭제하고, 새로운 토큰을 생성할 수 있다.
도 1은 일 실시예에 따른 IoT 허브에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
도 2는 일 실시예에 따른 사용자 단말에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 보안 방법 제공 시스템이 강화된 보안 방법을 제공하는 전체 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 보안 방법 제공 시스템에서 사용되는 토큰의 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 보안성 제공 장치의 전체적인 구성을 도시하는 도면이다.
실시예들에 대한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 본 명세서의 범위는 개시된 실시예들의 특정한 형태로 한정되는 것이 아니라 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도와 다르게 수행될 수 있다. 예를 들어, 연속하는 두 블록들이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 해당 블록들의 순서가 뒤바뀌어 수행될 수도 있다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
SDN(Software Defined Network)환경으로 구현된 홈 IoT 시스템은 IoT 기기를 중앙에서 제어하는 IoT 허브를 통해 홈 IoT 시스템에 포함된 IoT 기기들을 제어할 수 있다. IoT 허브는 외부 사용자 단말에 설치된 어플리케이션을 통해 입력되는 사용자 입력에 기초하여 생성된 제어 정보에 기초하여 IoT 기기들을 제어할 수 있다. 홈 IoT 시스템은 토큰을 사용하여 사용자 인증을 수행함으로써, IoT 기기들을 제어함에 있어 보안성을 제공할 수 있다.
기존의 토큰을 이용한 보안성 제공 방식은 토큰에 포함된 사용자 인증 정보(예를 들어, 사용자 단말의 고유 식별 정보)를 통해 사용자 인증을 수행하고, 사용자 인증이 성공한 경우, 토큰에 포함된 제어 정보를 IoT 기기에 전달함으로써 보안성을 제공한다. 기존 방식은 제3자에 의해 토큰이 탈취되어, 토큰 자체가 위조/변조되는 경우에는 보안성을 제공할 수 없는 문제점이 있을 수 있다.
SDN환경으로 구현된 홈 IoT 시스템에 강화된 보안 방법을 제공하는 보안성 제공 시스템은 리비전 카운터(Revision Counter)를 통해 토큰에 대한 인증을 수행하고, 리비전 카운터의 값을 갱신함으로써 제3자의 토큰 탈취에도 강인한 보안 방법을 제공할 수 있다.
도 1은 일 실시예에 따른 IoT 허브에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
단계(110)에서, IoT 허브는 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신할 수 있다. 예를 들어, 토큰은 사용자 입력에 기초하여 제어하고자 하는 IoT 기기에 대한 정보, 제어 동작에 대한 정보를 포함하는 제어 정보를 포함할 수 있다. 일 실시예에 따르면, 토큰은 사용자 단말의 고유 식별 정보 및 토큰의 토큰 식별 정보를 포함하는 인증 정보를 포함할 수 있다. 예를 들어, 사용자 단말의 고유 식별 정보는 IMEI(International Mobile equipment Identity)일 수 있고, 토큰 식별 정보는 리비전 카운터(Revision Counter)일 수 있다. 일 실시예에 따르면, 인증 정보는 사용자 단말의 고유 식별 정보 및 토큰 식별 정보를 해싱(hashing)하여 생성된 해시 값의 형태일 수 있다. 토큰 식별 정보는 토큰이 변경될 때마다 미리 정의된 수치만큼 리비전 카운터 값이 변경됨으로써 지속적으로 갱신될 수 있다. 초기 리비전 카운터 값 및 변경되는 미리 정의된 수치는 알려져 있기 때문에, 리비전 카운터의 값은 예측될 수 있고, 예측된 리비전 카운터 값을 통해 토큰이 인증될 수 있다. 토큰의 인증은 토큰을 수신하는 사용자 단말 및 IoT 허브 모두에서 이루어질 수 있고, 리비전 카운터 값의 변경은 사용자 단말 및 IoT 허브 모두에서 토큰에 새로운 제어 정보를 추가할 때마다 진행될 수 있다. 예를 들어, 토큰에 포함된 리비전 카운터 값이 예측된 값과 상이한 경우, 토큰은 제3자에 의해 탈취된 것으로 판단될 수 있고, 토큰이 인증되지 않음으로써 사용자 인증은 실패한 것으로 판단될 수 있다.
단계(120)에서, IoT 허브는 토큰에 포함된 인증 정보에 기초하여 사용자 인증을 수행할 수 있다. 예를 들어, IoT 허브는 토큰에 포함된 사용자 단말의 고유 식별 정보에 기초하여 사용자 단말을 인증하고, 토큰에 포함된 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다. 예를 들어, IoT 허브는 사용자 단말의 IMEI 값과 토큰에 포함된 IMEI 값을 비교하고, 토큰에 포함된 리비전 카운터 값이 예상되는 리비전 카운터 값에 해당하는 지 여부를 판단하여 사용자 인증을 수행할 수 있다.
일 실시예에 따르면, 토큰의 토큰 식별 정보는 새로운 제어 정보에 기초하여 토큰이 변경될 때마다 갱신될 수 있다. 예를 들어, 사용자 단말이 사용자 입력에 기초하여 IoT 기기를 제어하기 위한 제어 정보를 토큰에 포함시키는 경우, 제어 정보에 기초하여 IoT 기기가 제대로 동작하였는지에 대한 정보를 사용자 단말을 통해 디스플레이하기 위한 제어 정보를 토큰에 포함시키는 경우에 토큰은 변경될 수 있고, 토큰이 변경될 때마다 토큰 식별 정보는 갱신될 수 있다. 지속적으로 갱신되는 토큰 식별 정보를 통해, 토큰이 제3자에게 탈취되었는지 여부가 식별될 수 있고, 향상된 보안성이 제공될 수 있다.
단계(130)에서, 사용자 인증이 성공된 경우, 단계(140)에서 IoT 허브는 토큰에 포함된 제어 정보를 IoT 기기에 전송할 수 있다. IoT 기기는 수신한 제어 정보에 기초하여 동작을 수행할 수 있다.
단계(150)에서, IoT 허브는 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보를 수신할 수 있다. 예를 들어, IoT 허브는 IoT 기기가 제어 정보에 따라 의도한대로 제어되었는지 여부에 대한 결과 정보를 제공받을 수 있다.
단계(160)에서, IoT 허브는 IoT 기기로부터 수신한 결과 정보에 기초하여 토큰을 변경할 수 있다. IoT 허브는 결과 정보에 기초하여 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있다. 예를 들어, IoT 허브는 결과 정보를 사용자 단말을 통해 디스플레이하기 위하여 생성된 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 토큰을 변경할 수 있다. 제시된 예시와 같이, 토큰에 포함된 리비전 카운터는 새로운 제어 정보가 토큰에 포함될 때마다 미리 정해진 수치만큼 변경될 수 있고, 변경된 리비전 카운터 값에 기초하여 토큰이 중간에 제3자에게 탈취되더라도 보안성은 유지될 수 있다.
단계(170)에서, IoT 허브는 변경된 토큰을 사용자 단말에 전송할 수 있다. 사용자 단말은 IoT 허브로부터 수신한 변경된 토큰에 포함된 제어 정보에 기초하여 결과 정보를 디스플레이할 수 있다.
일 실시예에 따르면, IoT 허브는 단계(130)에서 토큰에 대한 인증을 실패함으로써 사용자 인증이 실패한 경우, 단계(180)을 통해 인증에 실패한 토큰을 삭제하고, 단계(190)을 통해 새로운 토큰을 생성할 수 있다. 예를 들어, IoT 허브는 인증에 실패한 토큰을 제3자에 의해 위조된 토큰으로 판단할 수 있고, 인증에 실패한 토큰을 삭제한 뒤, 새로운 토큰을 생성할 수 있다. 새로운 토큰을 생성하는 과정에서, 사용자 등록 절차가 선행될 수 있고, 등록된 사용자에 대응하는 토큰이 생성될 수 있다.
도 2는 일 실시예에 따른 사용자 단말에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
단계(210)에서, 사용자 단말은 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송할 수 있다. 일 실시예에 따르면, 토큰은 사용자 입력에 기초하여 결정된, 제어하고자 하는 IoT 기기에 대한 정보, 제어 동작에 대한 정보를 포함하는 제어 정보 및 인증 정보를 포함할 수 있다. 예를 들어, 인증 정보는 IMEI와 같은 사용자 단말의 고유 식별 정보 및 리비전 카운터와 같은 토큰 식별 정보를 포함할 수 있다. 일 실시예에 따르면, 사용자 단말은 사용자 입력에 기초하여 IoT 기기를 제어하는 과정에서, 사용자 입력에 기초하여 생성된 IoT 기기에 대한 제어 정보를 토큰에 포함시킬 수 있다. 또한, 사용자 단말은 새로운 제어 정보를 토큰에 포함시킴에 따라 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있다.
단계(220)에서, 사용자 단말은 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 IoT 허브로부터 수신할 수 있다. 예를 들어, 제어 정보에 기초하여 IoT 기기가 의도한 바대로 제어되었는지 여부에 대한 결과 정보를 사용자 단말을 통해 디스플레이하기 위하여, IoT 허브는 사용자 단말을 제어하기 위한 제어 정보를 포함시켜 토큰을 변경할 수 있고, 사용자 단말은 변경된 토큰을 수신할 수 있다. 변경된 토큰은 결과 정보에 기초하여 생성된 사용자 단말에 대한 제어 정보 및 미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함할 수 있다. 예를 들어, IoT 허브는 결과 정보에 기초하여 생성된 사용자 단말에 대한 제어 정보를 토큰에 포함시킴으로써, 토큰이 변경됨에 따라 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있고, 변경된 리비전 카운터 값에 기초하여 보안성이 유지될 수 있다.
단계(230)에서, 사용자 단말은 변경된 토큰에 대한 인증을 수행할 수 있다. 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값에 기초하여 변경된 토큰을 인증할 수 있다. 예를 들어, 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값이 초기 리비전 카운터 값 및 미리 정의된 수치에 기초하여 예측되는 값에 해당하는 지 여부에 기초하여 변경된 토큰을 인증할 수 있다. 또한 사용자 단말은 사용자 단말의 고유 식별 정보에 기초한 인증을 수행할 수 있다. 사용자 단말은 인증에 성공한 경우, 변경된 토큰에 포함된 제어 정보에 기초하여 결과 정보를 디스플레이할 수 있다. 또한, 변경된 토큰에 포함된 제어 정보는 결과 정보를 디스플레이하기 위한 제어 정보 이외에도 사용자 단말의 추가적인 동작을 제어하기 위한 제어 정보를 포함할 수 있고, 해당 제어 정보에 기초하여 사용자 단말의 동작이 제어될 수 있다.
도 3은 일 실시예에 따른 보안 방법 제공 시스템이 강화된 보안 방법을 제공하는 전체 동작을 설명하기 위한 도면이다.
일 실시예에 따르면 보안 방법 제공 시스템은 사용자 단말의 제어에 기초하여 개별 IoT 기기들에 대한 중앙 집중적인 제어를 수행하는 IoT 허브를 통해 IoT 기기들을 제어할 수 있고, IoT 허브의 컴퓨팅 파워를 통해 사용자 인증을 수행함으로써 보안성을 제공할 수 있다.
도 3을 참조하면, 단계(310)에서 사용자 단말은 IoT 허브에 토큰을 전송할 수 있다. 토큰은 IoT 기기를 제어하기 위한 제어 정보, 인증 정보를 포함할 수 있다.
단계(320)에서 IoT 허브는 인증 정보에 포함된 사용자 단말의 고유 식별 정보에 기초하여 사용자 단말을 인증하고, 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다. 사용자 인증을 수행하는 방식은 도 1을 통해 설명된 방식과 동일하다.
사용자 인증이 성공한 경우 단계(330)에서 IoT 허브는 토큰에 포함된 제어 정보를 IoT 기기에 전송할 수 있다.
단계(340)에서 IoT 기기는 IoT 허브로부터 수신한 제어 정보에 기초하여 동작을 수행하고, 제어 정보를 통해 의도한 바에 따라 IoT 기기의 동작이 수행되었는지 여부에 대한 결과 정보를 IoT 허브에 전송할 수 있다.
단계(350)에서 IoT 허브는 결과 정보에 기초하여, 사용자 단말을 제어하기 위한 제어 정보를 생성하고, 생성된 제어 정보를 토큰에 포함시키고, 토큰에 포함된 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써 토큰을 변경할 수 있다.
단계(360)에서 IoT 허브는 변경된 토큰을 사용자 단말에 전송할 수 있다.
단계(370)에서 사용자 단말은 수신한 변경된 토큰에 대한 인증을 수행할 수 있다. 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값을 예측한 값과 비교함으로써 변경된 토큰을 인증할 수 있다. 추가적으로, 사용자 단말은 사용자 단말의 식별 정보에 기초하여 토큰에 대한 인증을 수행할 수 있고, 수행된 인증이 성공한 경우, 사용자 단말은 인증된 토큰에 포함된 제어 정보에 기초하여 동작을 수행할 수 있다.
도 4는 일 실시예에 따른 보안 방법 제공 시스템에서 사용되는 토큰의 동작을 설명하기 위한 도면이다.
일 실시예에 따르면 보안 방법 제공 시스템은 토큰을 통한 인증을 이용하여 시스템에 포함된 개별 장치들 간의 통신을 수행함으로써, 보안성을 제공할 수 있다.
단계(410)에서, 토큰에 기초하여 사용자 인증이 수행될 수 있다. 사용자 인증은 IoT 허브 및 사용자 단말에서 수행될 수 있고, 사용자 인증 방식은 도 1, 2를 통해 자세히 설명되었다.
단계(420)에서 토큰에 기초한 사용자 인증이 성공한 경우, 토큰에 포함된 제어 정보에 포함된 명령이 수행될 수 있다. 예를 들어, 수행되는 명령은 IoT 허브가 제어 정보를 IoT 기기에 전송하는 것일 수 있다.
단계(430)에서, 명령 수행 결과에 기초하여 생성되는 새로운 명령에 대한 제어 정보가 생성될 수 있다. 예를 들어, IoT 허브는 IoT 기기의 동작 수행 결과에 기초하여 수행할 명령에 대한 제어 정보를 생성할 수 있다.
단계(440)에서, 단계(430)에서 생성된 명령에 대한 제어 정보가 토큰에 포함됨에 따라, 토큰에 포함된 리비전 카운터가 변경될 수 있다. 리비전 카운터가 변경되는 방식은 도 1, 2를 통해 설명된 방식과 동일하다.
단계(450)에서, 리비전 카운터가 변경된 토큰은 타겟 장치에 전송될 수 있다. 예를 들어, IoT 허브를 통해 리비전 카운터가 변경된 토큰은 사용자 단말에 전송될 수 있다.
도 5는 일 실시예에 따른 보안성 제공 장치의 전체적인 구성을 도시하는 도면이다.
예를 들어, 보안성 제공 장치(500)는 도 1을 통해 설명된 IoT 허브일 수 있다.
도 5를 참조하면, 보안성 제공 장치(500)는 사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부(510), 토큰에 포함된 인증 정보에 기초하여 사용자 인증을 수행하는 인증부(530), 사용자 인증이 성공한 경우, 제어 정보를 IoT 기기에 전송하는 전송부(520), 제어 정보의 전송에 응답하여 IoT 기기로부터 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보에 기초하여 토큰을 변경하는 제어부(540) 및 사용자 인증을 위한 각종 정보를 저장하는 데이터 베이스(550)를 포함하고, 제어부(540)를 통해 변경된 토큰은 전송부(520)를 통해 사용자 단말에 전송될 수 있다.
일 실시예에 따르면, 토큰에 포함된 인증 정보는 사용자 단말의 고유 식별 정보 및 토큰의 토큰 식별 정보를 포함할 수 있고, 사용자 단말의 고유 식별 정보 및 토큰 식별 정보는 해싱을 통해 해시값의 형태로 토큰에 저장될 수 있다.
일 실시예에 따르면, 인증부(530)는 고유 식별 정보를 통해 사용자 단말을 인증하고, 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다.
토큰 식별 정보는 제어 정보에 기초하여 토큰이 변경될 때마다 갱신될 수 있다. 예를 들어, 토큰 식별 정보는 리비전 카운터일 수 있고, 새로운 제어 정보가 토큰에 포함될 때마다 리비전 카운터의 리비전 카운터 값이 미리 정의된 수치만큼 증가함으로써 토큰 식별 정보는 갱신될 수 있다.
일 실시예에 따르면, 제어부(540)는 IoT 기기로부터 수신한 IoT 기기의 제어에 대한 결과 정보에 기초하여 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써 토큰을 변경할 수 있다. 예를 들어, 제어부(540)는 제어 정보에 기초하여 IoT 기기가 제대로 동작을 수행하였는지에 대한 결과 정보를 사용자 단말에 디스플레이하기 위한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 증가시킴으로써 토큰을 변경할 수 있다.
일 실시예에 따르면, 인증부(530)를 통한 토큰에 대한 인증이 실패한 경우, 제어부(540)는 토큰의 인증에 실패한 토큰을 삭제하고, 새로운 토큰을 생성할 수 있다.
실시예들에서 설명된 구성요소들은 하나 이상의 DSP (digital signal processor), 프로세서, 컨트롤러, ASIC (application specific integrated circuit), FPGA (field programmable gate array)와 같은 프로그래머블 논리 소자, 다른 전자 기기들 및 이것들의 조합 중 하나 이상을 포함하는 하드웨어 구성 요소에 의해 구현될 수 있다. 실시예들에서 설명된 과정들 또는 기능들 중 적어도 일부는 소프트웨어에 의해 구현될 수 있고, 해당 소프트웨어는 기록 매체에 기록될 수 있다. 실시예들에서 설명된 구성요소들, 기능들 및 과정들은 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.

Claims (17)

  1. IoT(Internet of Things) 허브에 의한 보안성 제공 방법에 있어서,
    사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계;
    상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계;
    상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계;
    상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계;
    상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및
    상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계
    를 포함하는 보안성 제공 방법.
  2. 제1항에 있어서,
    상기 인증 정보는,
    상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함하는, 보안성 제공 방법.
  3. 제2항에 있어서,
    상기 사용자 인증을 수행하는 단계는,
    상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하는 단계; 및
    상기 토큰 식별 정보에 기초하여 토큰을 인증하는 단계
    를 포함하는, 보안성 제공 방법.
  4. 제2항에 있어서,
    상기 토큰 식별 정보는,
    새로운 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신되는, 보안성 제공 방법.
  5. 제4항에 있어서,
    상기 토큰 식별 정보는,
    상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신되는, 보안성 제공 방법.
  6. 제1항에 있어서,
    상기 토큰을 변경하는 단계는,
    상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키는 단계; 및
    상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경하는 단계
    를 포함하는 보안성 제공 방법.
  7. 제3항에 있어서,
    상기 토큰에 대한 인증이 실패한 경우, 상기 토큰의 인증에 실패한 토큰을 삭제하는 단계; 및
    새로운 토큰을 생성하는 단계
    를 더 포함하는 보안성 제공 방법.
  8. 사용자 단말에 의한 보안성 제공 방법에 있어서,
    인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송하는 단계;
    상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 상기 IoT 허브로부터 수신하는 단계; 및
    상기 변경된 토큰에 대한 인증을 수행하는 단계
    를 포함하는 보안성 제공 방법.
  9. 제8항에 있어서,
    상기 변경된 토큰은,
    상기 결과 정보에 기초하여 생성된 상기 사용자 단말에 대한 제어 정보를 포함하고,
    미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함하는, 보안성 제공 방법.
  10. 제8항에 있어서,
    상기 인증을 수행하는 단계는,
    상기 변경된 토큰에 포함된 리비전 카운터 값에 기초하여 상기 변경된 토큰을 인증하는, 보안성 제공 방법.
  11. 사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부;
    상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 인증부;
    상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 전송부; 및
    상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 상기 토큰을 변경하는 제어부
    를 포함하고,
    상기 전송부는,
    상기 변경된 토큰을 상기 사용자 단말에 전송하는, 보안성 제공 장치.
  12. 제11항에 있어서,
    상기 인증 정보는,
    상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함하는, 보안성 제공 장치.
  13. 제12항에 있어서,
    상기 인증부는,
    상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하고,
    상기 토큰 식별 정보에 기초하여 토큰을 인증하는, 보안성 제공 장치.
  14. 제12항에 있어서,
    상기 토큰 식별 정보는,
    제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신되는, 보안성 제공 장치.
  15. 제14항에 있어서,
    상기 토큰 식별 정보는,
    상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신되는, 보안성 제공 장치.
  16. 제11항에 있어서,
    상기 제어부는,
    상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키고,
    상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 상기 토큰을 변경하는, 보안성 제공 장치.
  17. 제11항에 있어서,
    상기 토큰에 대한 인증이 실패한 경우,
    상기 제어부는,
    상기 토큰의 인증에 실패한 토큰을 삭제하고,
    새로운 토큰을 생성하는, 보안성 제공 장치.
KR1020170169752A 2017-12-11 2017-12-11 홈 IoT 환경에서의 보안성 제공 장치 및 방법 KR102033226B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170169752A KR102033226B1 (ko) 2017-12-11 2017-12-11 홈 IoT 환경에서의 보안성 제공 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170169752A KR102033226B1 (ko) 2017-12-11 2017-12-11 홈 IoT 환경에서의 보안성 제공 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20190069234A true KR20190069234A (ko) 2019-06-19
KR102033226B1 KR102033226B1 (ko) 2019-10-16

Family

ID=67104562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170169752A KR102033226B1 (ko) 2017-12-11 2017-12-11 홈 IoT 환경에서의 보안성 제공 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102033226B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102252863B1 (ko) * 2020-06-30 2021-05-14 윤성민 사물의 동일성 인증 시스템 및 그 방법
KR102259156B1 (ko) 2020-09-28 2021-06-01 박나은 네트워크 환경 내 디바이스 인증 시스템 및 방법
KR20220067495A (ko) * 2020-11-17 2022-05-24 한국전자통신연구원 승강기 제어 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110009222A (ko) * 2008-05-09 2011-01-27 퀄컴 인코포레이티드 토큰과 검증자 사이의 인증을 위한 네크워크 헬퍼
KR101626723B1 (ko) * 2015-08-27 2016-06-13 목포대학교산학협력단 사물인터넷 기반의 서비스 게이트웨이 및 동작 방법
KR20170060598A (ko) * 2015-11-24 2017-06-01 삼성전자주식회사 스마트 홈 서비스 서버 및 그 제어방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110009222A (ko) * 2008-05-09 2011-01-27 퀄컴 인코포레이티드 토큰과 검증자 사이의 인증을 위한 네크워크 헬퍼
KR101626723B1 (ko) * 2015-08-27 2016-06-13 목포대학교산학협력단 사물인터넷 기반의 서비스 게이트웨이 및 동작 방법
KR20170060598A (ko) * 2015-11-24 2017-06-01 삼성전자주식회사 스마트 홈 서비스 서버 및 그 제어방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102252863B1 (ko) * 2020-06-30 2021-05-14 윤성민 사물의 동일성 인증 시스템 및 그 방법
WO2022005125A1 (ko) * 2020-06-30 2022-01-06 윤성민 사물인터넷허브, 사물의 동일성 인증 시스템 및 사물의 동일성 인증 방법
KR20220002085A (ko) * 2020-06-30 2022-01-06 윤성민 사물의 동일성 인증 시스템 및 그 방법
KR102259156B1 (ko) 2020-09-28 2021-06-01 박나은 네트워크 환경 내 디바이스 인증 시스템 및 방법
KR20220067495A (ko) * 2020-11-17 2022-05-24 한국전자통신연구원 승강기 제어 방법 및 장치

Also Published As

Publication number Publication date
KR102033226B1 (ko) 2019-10-16

Similar Documents

Publication Publication Date Title
US10776786B2 (en) Method for creating, registering, revoking authentication information and server using the same
CN106462674B (zh) 使用验证令牌的资源访问控制
US10990122B2 (en) Secure real-time clock update in an access control system
CN110915183A (zh) 经由硬/软令牌验证的区块链认证
CN111324672A (zh) 区块链安全处理系统及方法
US10361867B2 (en) Verification of authenticity of a maintenance means connected to a controller of a passenger transportation/access device of a building and provision and obtainment of a license key for use therein
US10721076B2 (en) Method, device, terminal, and server for a security check
CN110059089B (zh) 数据同步方法、装置、存储介质及电子设备
CN108696356B (zh) 一种基于区块链的数字证书删除方法、装置及系统
KR20190069234A (ko) 홈 IoT 환경에서의 보안성 제공 장치 및 방법
CN109815666B (zh) 基于fido协议的身份认证方法、装置、存储介质和电子设备
JP2010067184A (ja) 個別二段階認証方法およびシステム
US20210192084A1 (en) Certification and validation of data files issued by an architect or engineer
US11681513B2 (en) Controlled scope of authentication key for software update
CN111444496A (zh) 应用控制方法、装置、设备以及存储介质
KR102519627B1 (ko) 토큰 기반 레거시 서비스 인증 방법 및 이를 지원하는 플랫폼 서비스 서버
GB2567715A (en) Authentication system, method and program
CN111541649B (zh) 一种密码重置方法、装置、服务器及存储介质
CN105827625A (zh) 基于生物识别信息的认证方法和认证系统、电子设备
KR102501671B1 (ko) IoT 디바이스를 인증하며 IoT 디바이스의 무결성을 검증하는 방법 및 이를 이용한 컨트롤 디바이스
KR20200106435A (ko) 유저 인증 장치 및 방법
KR102037767B1 (ko) 인증용 통신 단말
CN114095154B (zh) 一种App登录的动态口令实现方法、装置、设备和介质
KR20180089982A (ko) Fido 도어락 및 그 동작 방법
KR102428409B1 (ko) 사용자 인증 장치, 보안 코드를 이용한 사용자 인증 방법 및 컴퓨터 프로그램

Legal Events

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