KR102033226B1 - APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT - Google Patents

APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT Download PDF

Info

Publication number
KR102033226B1
KR102033226B1 KR1020170169752A KR20170169752A KR102033226B1 KR 102033226 B1 KR102033226 B1 KR 102033226B1 KR 1020170169752 A KR1020170169752 A KR 1020170169752A KR 20170169752 A KR20170169752 A KR 20170169752A KR 102033226 B1 KR102033226 B1 KR 102033226B1
Authority
KR
South Korea
Prior art keywords
token
information
authentication
user terminal
identification information
Prior art date
Application number
KR1020170169752A
Other languages
Korean (ko)
Other versions
KR20190069234A (en
Inventor
김기천
진정하
이남곤
Original Assignee
건국대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 건국대학교 산학협력단 filed Critical 건국대학교 산학협력단
Priority to KR1020170169752A priority Critical patent/KR102033226B1/en
Publication of KR20190069234A publication Critical patent/KR20190069234A/en
Application granted granted Critical
Publication of KR102033226B1 publication Critical patent/KR102033226B1/en

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

Abstract

홈 IoT에서 보안성 제공 방법 및 장치가 개시된다.
IoT(Internet of Things) 허브에 의한 보안성 제공 방법은 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계; 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계; 상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및 상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.
A method and apparatus for providing security in a home IoT are disclosed.
Security providing method by the Internet of Things (IoT) hub comprises the steps of: receiving from the user terminal a token including authentication information and control information for controlling the IoT device; Performing user authentication based on the authentication information included in the token; If the user authentication is successful, transmitting the control information to the IoT device; In response to the transmission of the control information, receiving result information on the control of the IoT device performed based on the control information from the IoT device; Changing the token based on the result information; And transmitting the changed token to the user terminal.

Description

홈 IoT 환경에서의 보안성 제공 장치 및 방법{APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT}Apparatus and method for providing security in home IoT environment {APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT}

아래의 설명은 홈 IoT 환경에서의 보안성 제공 장치 및 방법 에 관한 것이다.The following description relates to an apparatus and method for providing security in a home IoT environment.

IoT(Internet of Things)는 사물 간의 인터넷 또는 개체 간의 인터넷으로 정의되며, 고유 식별이 가능한 사물이 만들어낸 정보를 인터넷을 통해 공유하는 환경을 의미한다. IoT 환경의 다양한 사물들은 인터넷을 통해 연결될 수 있고, IoT 환경을 통해 주변 상황이 분석되고, 분석 결과에 기초하여 생성되는 명령을 통해 사물들이 제어될 수 있다.The Internet of Things (IoT) is defined as the Internet between objects or the Internet between objects, and refers to an environment in which information generated by a thing that can be uniquely identified is shared through the Internet. Various things in the IoT environment may be connected through the Internet, the surroundings may be analyzed through the IoT environment, and the things may be controlled through commands generated based on the analysis result.

SDN(Software Define Network)는 소프트웨어 프로그래밍을 통해 네트워크 경로 설정, 제어 및 운용 관리를 수행할 수 있는 네트워킹 기술이다. SDN을 통해서 네트워크의 데이터 평면과 제어 평면이 분리될 수 있고, 이러한 특징이 IoT 환경에 적용됨으로써 IoT 허브를 통해 홈 IoT 환경의 IoT 기기들이 제어될 수 있다.Software Define Network (SDN) is a networking technology that enables network routing, control, and operational management through software programming. SDN can separate the data plane and the control plane of the network, and this feature is applied to the IoT environment, and IoT devices in the home IoT environment can be controlled through the IoT hub.

일 실시예에 따른 IoT 허브에 의해 수행되는 보안성 제공 방법은 IoT(Internet of Things) 허브에 의한 보안성 제공 방법에 있어서, 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계; 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계; 상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및 상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계를 포함할 수 있다.According to an embodiment, a security providing method performed by an IoT hub includes a security providing method by an Internet of Things (IoT) hub, which includes authentication information and control information for controlling an IoT device from a user terminal. Receiving a token; Performing user authentication based on the authentication information included in the token; If the user authentication is successful, transmitting the control information to the IoT device; In response to the transmission of the control information, receiving result information on the control of the IoT device performed based on the control information from the IoT device; Changing the token based on the result information; And transmitting the changed token to the user terminal.

일 실시예에 따른 보안성 제공 방법에서 상기 인증 정보는, 상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함할 수 있다.In the security providing method according to an embodiment, the authentication information may include unique identification information of the user terminal and token identification information of the token.

일 실시예에 따르면, 상기 사용자 인증을 수행하는 단계는 상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하는 단계; 및 상기 토큰 식별 정보에 기초하여 토큰을 인증하는 단계를 포함할 수 있다.According to an embodiment, the performing of the user authentication may include: authenticating the user terminal based on the unique identification information; And authenticating a token based on the token identification information.

일 실시예에 따른 상기 토큰 식별 정보는 새로운 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신될 수 있다.The token identification information may be updated whenever the token is changed based on the new control information.

일 실시예에 따른 상기 토큰 식별 정보는 상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신될 수 있다.The token identification information according to an embodiment may be updated by changing a revision counter value included in the token identification information by a predefined value.

일 실시예에 따른 상기 토큰을 변경하는 단계는 상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키는 단계; 및The changing of the token according to an embodiment may include including control information for the user terminal in the token based on the result information; And

상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경하는 단계를 포함할 수 있다.And changing a revision counter value of token identification information included in the token by a predefined value.

일 실시예에 따른 보안성 제공 방법은 상기 토큰에 대한 인증이 실패한 경우 상기 토큰의 인증에 실패한 토큰을 삭제하는 단계; 및 새로운 토큰을 생성하는 단계를 더 포함할 수 있다.According to one or more exemplary embodiments, a method of providing security may include deleting a token that fails authentication of the token when authentication of the token fails; And generating a new token.

일 실시예에 따른 사용자 단말에 의해 수행되는 보안성 제공 방법은 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송하는 단계; 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 상기 IoT 허브로부터 수신하는 단계; 및 상기 변경된 토큰에 대한 인증을 수행하는 단계를 포함할 수 있다.According to an embodiment, a security providing method performed by a user terminal may include: transmitting a token including authentication information and control information for controlling an IoT device to an IoT hub; Receiving a changed token from the IoT hub based on result information on the control of the IoT device performed based on the control information; And performing authentication on the changed token.

일 실시예에 따른 상기 변경된 토큰은 상기 결과 정보에 기초하여 생성된 상기 사용자 단말에 대한 제어 정보를 포함하고, 미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함할 수 있다.The changed token according to an embodiment may include control information for the user terminal generated based on the result information, and may include a revision counter value changed by a predetermined value.

일 실시예에 따른 상기 인증을 수행하는 단계는 상기 변경된 토큰에 포함된 보안성 리비전 카운터 값에 기초하여 상기 변경된 토큰을 인증할 수 있다.In the performing of the authentication according to an embodiment, the changed token may be authenticated based on a security revision counter value included in the changed token.

일 실시예에 따른 보안성 제공 장치는 사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부; 상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 인증부; 상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 전송부; 및 상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 상기 토큰을 변경하는 제어부를 포함하고, 상기 전송부는 상기 변경된 토큰을 상기 사용자 단말에 전송할 수 있다.According to an embodiment, an apparatus for providing security may include a receiver configured to receive a token including authentication information and control information for controlling an IoT device from a user terminal; An authenticator configured to perform user authentication based on the authentication information included in the token; A transmission unit for transmitting the control information to the IoT device when the user authentication is successful; And a control unit configured to change the token based on result information of the control of the IoT device performed based on the control information from the IoT device in response to the transmission of the control information, wherein the transmission unit comprises the changed token. May be transmitted to the user terminal.

일 실시예에 따른 상기 인증 정보는 상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함할 수 있다.The authentication information according to an embodiment may include unique identification information of the user terminal and token identification information of the token.

일 실시예에 따른 상기 인증부는 상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하고, 상기 토큰 식별 정보에 기초하여 토큰을 인증할 수 있다.The authentication unit may authenticate the user terminal based on the unique identification information, and authenticate the token based on the token identification information.

일 실시예에 따른 상기 토큰 식별 정보는 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신될 수 있다.The token identification information may be updated whenever the token is changed based on control information.

일 실시예에 따른 상기 토큰 식별 정보는 상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신될 수 있다.The token identification information according to an embodiment may be updated by changing a revision counter value included in the token identification information by a predefined value.

일 실시예에 따른 상기 제어부는 상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키고, 상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 상기 토큰을 변경할 수 있다.The control unit according to an embodiment includes the control information for the user terminal in the token based on the result information, and by changing the revision counter value of the token identification information included in the token by a predefined value, You can change the token.

일 실시예에 따른 보안성 제공 장치에서 상기 토큰에 대한 인증이 실패한 경우, 상기 제어부는 상기 토큰의 인증에 실패한 토큰을 삭제하고, 새로운 토큰을 생성할 수 있다.When the authentication for the token fails in the security providing apparatus according to an embodiment, the controller may delete the token that fails to authenticate the token and generate a new token.

도 1은 일 실시예에 따른 IoT 허브에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
도 2는 일 실시예에 따른 사용자 단말에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따른 보안 방법 제공 시스템이 강화된 보안 방법을 제공하는 전체 동작을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 보안 방법 제공 시스템에서 사용되는 토큰의 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 보안성 제공 장치의 전체적인 구성을 도시하는 도면이다.
1 is a flowchart illustrating a security providing method by an IoT hub according to an embodiment.
2 is a flowchart illustrating a security providing method by a user terminal according to an exemplary embodiment.
3 is a diagram for describing an overall operation of a security method providing system according to an embodiment of the present disclosure.
4 is a view for explaining the operation of the token used in the security method providing system according to an embodiment.
5 is a diagram illustrating an overall configuration of a security providing apparatus according to an embodiment.

실시예들에 대한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 실시될 수 있다. 따라서, 본 명세서의 범위는 개시된 실시예들의 특정한 형태로 한정되는 것이 아니라 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.The structural or functional descriptions of the embodiments are disclosed for the purpose of illustration only, and may be embodied in various forms. Accordingly, the scope of the present specification is not limited to the specific forms of the disclosed embodiments, but includes changes, equivalents, or substitutes included in the technical spirit described.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but such terms should be interpreted only for the purpose of distinguishing one component from another component. For example, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being "connected" to another component, it should be understood that there may be a direct connection or connection to that other component, but there may be other components in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly indicates otherwise. As used herein, the terms "comprise" or "have" are intended to designate that the described features, numbers, steps, acts, components, parts, or combinations thereof are present, but include one or more other features or numbers, It is to be understood that it does not exclude in advance the possibility of the presence or addition of steps, actions, components, parts or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art. Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and are not construed in ideal or excessively formal meanings unless expressly defined herein. Do not.

한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도와 다르게 수행될 수 있다. 예를 들어, 연속하는 두 블록들이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 해당 블록들의 순서가 뒤바뀌어 수행될 수도 있다.On the other hand, when an embodiment is otherwise implemented, a function or operation specified in a specific block may be performed differently from the flowchart. For example, two consecutive blocks may actually be executed substantially simultaneously, or the blocks may be reversed according to related functions or operations.

이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. In the description with reference to the accompanying drawings, the same components will be given the same reference numerals regardless of the reference numerals, and duplicate description thereof will be omitted.

SDN(Software Defined Network)환경으로 구현된 홈 IoT 시스템은 IoT 기기를 중앙에서 제어하는 IoT 허브를 통해 홈 IoT 시스템에 포함된 IoT 기기들을 제어할 수 있다. IoT 허브는 외부 사용자 단말에 설치된 어플리케이션을 통해 입력되는 사용자 입력에 기초하여 생성된 제어 정보에 기초하여 IoT 기기들을 제어할 수 있다. 홈 IoT 시스템은 토큰을 사용하여 사용자 인증을 수행함으로써, IoT 기기들을 제어함에 있어 보안성을 제공할 수 있다.A home IoT system implemented as a software defined network (SDN) environment may control IoT devices included in a home IoT system through an IoT hub that centrally controls IoT devices. The IoT hub may control IoT devices based on control information generated based on user input input through an application installed in an external user terminal. The home IoT system may provide security in controlling IoT devices by performing user authentication using a token.

기존의 토큰을 이용한 보안성 제공 방식은 토큰에 포함된 사용자 인증 정보(예를 들어, 사용자 단말의 고유 식별 정보)를 통해 사용자 인증을 수행하고, 사용자 인증이 성공한 경우, 토큰에 포함된 제어 정보를 IoT 기기에 전달함으로써 보안성을 제공한다. 기존 방식은 제3자에 의해 토큰이 탈취되어, 토큰 자체가 위조/변조되는 경우에는 보안성을 제공할 수 없는 문제점이 있을 수 있다.The existing security providing method using the token performs user authentication through user authentication information (for example, unique identification information of the user terminal) included in the token, and if the user authentication is successful, the control information included in the token is used. Deliver security by delivering to IoT devices. The existing method may have a problem in that security cannot be provided when a token is seized by a third party and the token itself is forged / modulated.

SDN환경으로 구현된 홈 IoT 시스템에 강화된 보안 방법을 제공하는 보안성 제공 시스템은 리비전 카운터(Revision Counter)를 통해 토큰에 대한 인증을 수행하고, 리비전 카운터의 값을 갱신함으로써 제3자의 토큰 탈취에도 강인한 보안 방법을 제공할 수 있다.A security provision system that provides enhanced security methods to home IoT systems implemented with SDN environments performs authentication of tokens through the revision counter and updates the value of the revision counter to take over tokens from third parties. It can provide a robust security method.

도 1은 일 실시예에 따른 IoT 허브에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.1 is a flowchart illustrating a security providing method by an IoT hub according to an embodiment.

단계(110)에서, IoT 허브는 사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신할 수 있다. 예를 들어, 토큰은 사용자 입력에 기초하여 제어하고자 하는 IoT 기기에 대한 정보, 제어 동작에 대한 정보를 포함하는 제어 정보를 포함할 수 있다. 일 실시예에 따르면, 토큰은 사용자 단말의 고유 식별 정보 및 토큰의 토큰 식별 정보를 포함하는 인증 정보를 포함할 수 있다. 예를 들어, 사용자 단말의 고유 식별 정보는 IMEI(International Mobile equipment Identity)일 수 있고, 토큰 식별 정보는 리비전 카운터(Revision Counter)일 수 있다. 일 실시예에 따르면, 인증 정보는 사용자 단말의 고유 식별 정보 및 토큰 식별 정보를 해싱(hashing)하여 생성된 해시 값의 형태일 수 있다. 토큰 식별 정보는 토큰이 변경될 때마다 미리 정의된 수치만큼 리비전 카운터 값이 변경됨으로써 지속적으로 갱신될 수 있다. 초기 리비전 카운터 값 및 변경되는 미리 정의된 수치는 알려져 있기 때문에, 리비전 카운터의 값은 예측될 수 있고, 예측된 리비전 카운터 값을 통해 토큰이 인증될 수 있다. 토큰의 인증은 토큰을 수신하는 사용자 단말 및 IoT 허브 모두에서 이루어질 수 있고, 리비전 카운터 값의 변경은 사용자 단말 및 IoT 허브 모두에서 토큰에 새로운 제어 정보를 추가할 때마다 진행될 수 있다. 예를 들어, 토큰에 포함된 리비전 카운터 값이 예측된 값과 상이한 경우, 토큰은 제3자에 의해 탈취된 것으로 판단될 수 있고, 토큰이 인증되지 않음으로써 사용자 인증은 실패한 것으로 판단될 수 있다.In operation 110, the IoT hub may receive, from the user terminal, a token including authentication information and control information for controlling the IoT device. For example, the token may include control information including information on an IoT device to be controlled and information on a control operation based on a user input. According to an embodiment, the token may include authentication information including unique identification information of the user terminal and token identification information of the token. For example, the unique identification information of the user terminal may be an International Mobile Equipment Identity (IMEI), and the token identification information may be a revision counter. According to an embodiment, the authentication information may be in the form of a hash value generated by hashing unique identification information and token identification information of the user terminal. The token identification information may be continuously updated by changing the revision counter value by a predefined value every time the token is changed. Since the initial revision counter value and the predefined numerical value that is changed are known, the value of the revision counter can be predicted and the token can be authenticated through the predicted revision counter value. Authentication of the token may be made at both the user terminal and the IoT hub that receives the token, and the change of the revision counter value may proceed every time new control information is added to the token at both the user terminal and the IoT hub. For example, if the revision counter value included in the token is different from the predicted value, the token may be determined to have been hijacked by a third party, and the user authentication may be determined to fail because the token is not authenticated.

단계(120)에서, IoT 허브는 토큰에 포함된 인증 정보에 기초하여 사용자 인증을 수행할 수 있다. 예를 들어, IoT 허브는 토큰에 포함된 사용자 단말의 고유 식별 정보에 기초하여 사용자 단말을 인증하고, 토큰에 포함된 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다. 예를 들어, IoT 허브는 사용자 단말의 IMEI 값과 토큰에 포함된 IMEI 값을 비교하고, 토큰에 포함된 리비전 카운터 값이 예상되는 리비전 카운터 값에 해당하는 지 여부를 판단하여 사용자 인증을 수행할 수 있다.In operation 120, the IoT hub may perform user authentication based on authentication information included in the token. For example, the IoT hub may perform user authentication by authenticating the user terminal based on the unique identification information of the user terminal included in the token, and authenticating the token based on the token identification information included in the token. For example, the IoT hub may perform user authentication by comparing the IMEI value of the user terminal with the IMEI value included in the token, and determining whether the revision counter value included in the token corresponds to the expected revision counter value. have.

일 실시예에 따르면, 토큰의 토큰 식별 정보는 새로운 제어 정보에 기초하여 토큰이 변경될 때마다 갱신될 수 있다. 예를 들어, 사용자 단말이 사용자 입력에 기초하여 IoT 기기를 제어하기 위한 제어 정보를 토큰에 포함시키는 경우, 제어 정보에 기초하여 IoT 기기가 제대로 동작하였는지에 대한 정보를 사용자 단말을 통해 디스플레이하기 위한 제어 정보를 토큰에 포함시키는 경우에 토큰은 변경될 수 있고, 토큰이 변경될 때마다 토큰 식별 정보는 갱신될 수 있다. 지속적으로 갱신되는 토큰 식별 정보를 통해, 토큰이 제3자에게 탈취되었는지 여부가 식별될 수 있고, 향상된 보안성이 제공될 수 있다.According to one embodiment, the token identification information of the token may be updated whenever the token is changed based on the new control information. For example, when the user terminal includes control information for controlling the IoT device based on the user input in the token, the control information for displaying, via the user terminal, information on whether the IoT device has been properly operated based on the control information. May be changed when the token is included in the token, and the token identification information may be updated each time the token is changed. Through the constantly updated token identification information, it can be identified whether the token has been hijacked to a third party, and improved security can be provided.

단계(130)에서, 사용자 인증이 성공된 경우, 단계(140)에서 IoT 허브는 토큰에 포함된 제어 정보를 IoT 기기에 전송할 수 있다. IoT 기기는 수신한 제어 정보에 기초하여 동작을 수행할 수 있다.In step 130, if the user authentication is successful, in step 140, the IoT hub may transmit control information included in the token to the IoT device. The IoT device may perform an operation based on the received control information.

단계(150)에서, IoT 허브는 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보를 수신할 수 있다. 예를 들어, IoT 허브는 IoT 기기가 제어 정보에 따라 의도한대로 제어되었는지 여부에 대한 결과 정보를 제공받을 수 있다.In operation 150, the IoT hub may receive result information about the control of the IoT device performed based on the control information. For example, the IoT hub may be provided with result information on whether the IoT device is controlled as intended according to the control information.

단계(160)에서, IoT 허브는 IoT 기기로부터 수신한 결과 정보에 기초하여 토큰을 변경할 수 있다. IoT 허브는 결과 정보에 기초하여 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있다. 예를 들어, IoT 허브는 결과 정보를 사용자 단말을 통해 디스플레이하기 위하여 생성된 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 토큰을 변경할 수 있다. 제시된 예시와 같이, 토큰에 포함된 리비전 카운터는 새로운 제어 정보가 토큰에 포함될 때마다 미리 정해진 수치만큼 변경될 수 있고, 변경된 리비전 카운터 값에 기초하여 토큰이 중간에 제3자에게 탈취되더라도 보안성은 유지될 수 있다.In operation 160, the IoT hub may change the token based on the result information received from the IoT device. The IoT hub may include the control information for the user terminal in the token based on the result information, and change the revision counter value of the token identification information included in the token by a predefined value. For example, the IoT hub includes the control information for the user terminal generated to display the result information through the user terminal in the token, and changes the revision counter value of the revision counter included in the token by a predetermined value. You can change the token. As shown in the example, the revision counter included in the token can be changed by a predetermined number each time new control information is included in the token, and the security is maintained even if the token is intercepted by a third party based on the changed revision counter value. Can be.

단계(170)에서, IoT 허브는 변경된 토큰을 사용자 단말에 전송할 수 있다. 사용자 단말은 IoT 허브로부터 수신한 변경된 토큰에 포함된 제어 정보에 기초하여 결과 정보를 디스플레이할 수 있다.In step 170, the IoT hub may transmit the changed token to the user terminal. The user terminal may display the result information based on the control information included in the changed token received from the IoT hub.

일 실시예에 따르면, IoT 허브는 단계(130)에서 토큰에 대한 인증을 실패함으로써 사용자 인증이 실패한 경우, 단계(180)을 통해 인증에 실패한 토큰을 삭제하고, 단계(190)을 통해 새로운 토큰을 생성할 수 있다. 예를 들어, IoT 허브는 인증에 실패한 토큰을 제3자에 의해 위조된 토큰으로 판단할 수 있고, 인증에 실패한 토큰을 삭제한 뒤, 새로운 토큰을 생성할 수 있다. 새로운 토큰을 생성하는 과정에서, 사용자 등록 절차가 선행될 수 있고, 등록된 사용자에 대응하는 토큰이 생성될 수 있다.According to an embodiment of the present disclosure, if the user authentication fails by failing authentication of the token in step 130, the IoT hub deletes the token that failed authentication in step 180, and creates a new token in step 190. Can be generated. For example, the IoT hub may determine the token that failed authentication as a forged token by a third party, delete the token that failed authentication, and then generate a new token. In the process of generating a new token, a user registration procedure may be preceded and a token corresponding to a registered user may be generated.

도 2는 일 실시예에 따른 사용자 단말에 의한 보안성 제공 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a security providing method by a user terminal according to an exemplary embodiment.

단계(210)에서, 사용자 단말은 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송할 수 있다. 일 실시예에 따르면, 토큰은 사용자 입력에 기초하여 결정된, 제어하고자 하는 IoT 기기에 대한 정보, 제어 동작에 대한 정보를 포함하는 제어 정보 및 인증 정보를 포함할 수 있다. 예를 들어, 인증 정보는 IMEI와 같은 사용자 단말의 고유 식별 정보 및 리비전 카운터와 같은 토큰 식별 정보를 포함할 수 있다. 일 실시예에 따르면, 사용자 단말은 사용자 입력에 기초하여 IoT 기기를 제어하는 과정에서, 사용자 입력에 기초하여 생성된 IoT 기기에 대한 제어 정보를 토큰에 포함시킬 수 있다. 또한, 사용자 단말은 새로운 제어 정보를 토큰에 포함시킴에 따라 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있다.In operation 210, the user terminal may transmit a token including authentication information and control information for controlling the IoT device to the IoT hub. According to an embodiment, the token may include information about an IoT device to be controlled, control information including information on a control operation, and authentication information determined based on a user input. For example, the authentication information may include unique identification information of the user terminal such as IMEI and token identification information such as a revision counter. According to an embodiment, in the process of controlling the IoT device based on the user input, the user terminal may include control information about the IoT device generated based on the user input in the token. In addition, the user terminal may change the revision counter value of the revision counter by a predefined value as the new control information is included in the token.

단계(220)에서, 사용자 단말은 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 IoT 허브로부터 수신할 수 있다. 예를 들어, 제어 정보에 기초하여 IoT 기기가 의도한 바대로 제어되었는지 여부에 대한 결과 정보를 사용자 단말을 통해 디스플레이하기 위하여, IoT 허브는 사용자 단말을 제어하기 위한 제어 정보를 포함시켜 토큰을 변경할 수 있고, 사용자 단말은 변경된 토큰을 수신할 수 있다. 변경된 토큰은 결과 정보에 기초하여 생성된 사용자 단말에 대한 제어 정보 및 미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함할 수 있다. 예를 들어, IoT 허브는 결과 정보에 기초하여 생성된 사용자 단말에 대한 제어 정보를 토큰에 포함시킴으로써, 토큰이 변경됨에 따라 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경할 수 있고, 변경된 리비전 카운터 값에 기초하여 보안성이 유지될 수 있다.In operation 220, the user terminal may receive a changed token from the IoT hub based on the result information on the control of the IoT device performed based on the control information. For example, in order to display the result information on whether the IoT device is controlled as intended based on the control information through the user terminal, the IoT hub may change the token by including control information for controlling the user terminal. And the user terminal may receive the changed token. The changed token may include control information for the user terminal generated based on the result information and a revision counter value changed by a predetermined value. For example, the IoT hub may include the control information for the user terminal generated based on the result information in the token, thereby changing the revision counter value of the revision counter by a predefined value as the token is changed, and the changed revision counter. Security may be maintained based on the value.

단계(230)에서, 사용자 단말은 변경된 토큰에 대한 인증을 수행할 수 있다. 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값에 기초하여 변경된 토큰을 인증할 수 있다. 예를 들어, 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값이 초기 리비전 카운터 값 및 미리 정의된 수치에 기초하여 예측되는 값에 해당하는 지 여부에 기초하여 변경된 토큰을 인증할 수 있다. 또한 사용자 단말은 사용자 단말의 고유 식별 정보에 기초한 인증을 수행할 수 있다. 사용자 단말은 인증에 성공한 경우, 변경된 토큰에 포함된 제어 정보에 기초하여 결과 정보를 디스플레이할 수 있다. 또한, 변경된 토큰에 포함된 제어 정보는 결과 정보를 디스플레이하기 위한 제어 정보 이외에도 사용자 단말의 추가적인 동작을 제어하기 위한 제어 정보를 포함할 수 있고, 해당 제어 정보에 기초하여 사용자 단말의 동작이 제어될 수 있다.In operation 230, the user terminal may perform authentication on the changed token. The user terminal may authenticate the changed token based on the revision counter value included in the changed token. For example, the user terminal may authenticate the changed token based on whether the revision counter value included in the changed token corresponds to an expected value based on the initial revision counter value and a predefined value. In addition, the user terminal may perform authentication based on the unique identification information of the user terminal. If the user terminal succeeds in authenticating, the user terminal may display the result information based on the control information included in the changed token. In addition, the control information included in the changed token may include control information for controlling additional operations of the user terminal in addition to control information for displaying the result information, and the operation of the user terminal may be controlled based on the control information. have.

도 3은 일 실시예에 따른 보안 방법 제공 시스템이 강화된 보안 방법을 제공하는 전체 동작을 설명하기 위한 도면이다.3 is a diagram for describing an overall operation of a security method providing system according to an exemplary embodiment, which provides an enhanced security method.

일 실시예에 따르면 보안 방법 제공 시스템은 사용자 단말의 제어에 기초하여 개별 IoT 기기들에 대한 중앙 집중적인 제어를 수행하는 IoT 허브를 통해 IoT 기기들을 제어할 수 있고, IoT 허브의 컴퓨팅 파워를 통해 사용자 인증을 수행함으로써 보안성을 제공할 수 있다.According to an embodiment, the security method providing system may control IoT devices through an IoT hub that performs centralized control of individual IoT devices based on control of a user terminal, and a user may use computing power of an IoT hub. Security can be provided by performing authentication.

도 3을 참조하면, 단계(310)에서 사용자 단말은 IoT 허브에 토큰을 전송할 수 있다. 토큰은 IoT 기기를 제어하기 위한 제어 정보, 인증 정보를 포함할 수 있다.Referring to FIG. 3, in operation 310, the user terminal may transmit a token to the IoT hub. The token may include control information and authentication information for controlling the IoT device.

단계(320)에서 IoT 허브는 인증 정보에 포함된 사용자 단말의 고유 식별 정보에 기초하여 사용자 단말을 인증하고, 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다. 사용자 인증을 수행하는 방식은 도 1을 통해 설명된 방식과 동일하다.In operation 320, the IoT hub may authenticate the user terminal based on the unique identification information of the user terminal included in the authentication information, and perform user authentication by authenticating the token based on the token identification information. The manner of performing user authentication is the same as that described with reference to FIG. 1.

사용자 인증이 성공한 경우 단계(330)에서 IoT 허브는 토큰에 포함된 제어 정보를 IoT 기기에 전송할 수 있다.If the user authentication is successful, in step 330, the IoT hub may transmit control information included in the token to the IoT device.

단계(340)에서 IoT 기기는 IoT 허브로부터 수신한 제어 정보에 기초하여 동작을 수행하고, 제어 정보를 통해 의도한 바에 따라 IoT 기기의 동작이 수행되었는지 여부에 대한 결과 정보를 IoT 허브에 전송할 수 있다.In operation 340, the IoT device may perform an operation based on the control information received from the IoT hub, and transmit the result information on whether the operation of the IoT device is performed to the IoT hub as intended through the control information. .

단계(350)에서 IoT 허브는 결과 정보에 기초하여, 사용자 단말을 제어하기 위한 제어 정보를 생성하고, 생성된 제어 정보를 토큰에 포함시키고, 토큰에 포함된 리비전 카운터의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써 토큰을 변경할 수 있다.In step 350, the IoT hub generates control information for controlling the user terminal based on the result information, includes the generated control information in the token, and defines a revision counter value of the revision counter included in the token in advance. You can change the token by changing the value.

단계(360)에서 IoT 허브는 변경된 토큰을 사용자 단말에 전송할 수 있다.In step 360, the IoT hub may transmit the changed token to the user terminal.

단계(370)에서 사용자 단말은 수신한 변경된 토큰에 대한 인증을 수행할 수 있다. 사용자 단말은 변경된 토큰에 포함된 리비전 카운터 값을 예측한 값과 비교함으로써 변경된 토큰을 인증할 수 있다. 추가적으로, 사용자 단말은 사용자 단말의 식별 정보에 기초하여 토큰에 대한 인증을 수행할 수 있고, 수행된 인증이 성공한 경우, 사용자 단말은 인증된 토큰에 포함된 제어 정보에 기초하여 동작을 수행할 수 있다.In operation 370, the user terminal may perform authentication on the received changed token. The user terminal may authenticate the changed token by comparing the revision counter value included in the changed token with the predicted value. In addition, the user terminal may perform authentication on the token based on the identification information of the user terminal, and if the authentication performed is successful, the user terminal may perform an operation based on the control information included in the authenticated token. .

도 4는 일 실시예에 따른 보안 방법 제공 시스템에서 사용되는 토큰의 동작을 설명하기 위한 도면이다.4 is a view for explaining the operation of the token used in the security method providing system according to an embodiment.

일 실시예에 따르면 보안 방법 제공 시스템은 토큰을 통한 인증을 이용하여 시스템에 포함된 개별 장치들 간의 통신을 수행함으로써, 보안성을 제공할 수 있다.According to an embodiment, the security method providing system may provide security by performing communication between individual devices included in the system by using authentication through a token.

단계(410)에서, 토큰에 기초하여 사용자 인증이 수행될 수 있다. 사용자 인증은 IoT 허브 및 사용자 단말에서 수행될 수 있고, 사용자 인증 방식은 도 1, 2를 통해 자세히 설명되었다.In step 410, user authentication may be performed based on the token. User authentication may be performed in an IoT hub and a user terminal, and the user authentication scheme has been described in detail with reference to FIGS. 1 and 2.

단계(420)에서 토큰에 기초한 사용자 인증이 성공한 경우, 토큰에 포함된 제어 정보에 포함된 명령이 수행될 수 있다. 예를 들어, 수행되는 명령은 IoT 허브가 제어 정보를 IoT 기기에 전송하는 것일 수 있다.If the user authentication based on the token succeeds in step 420, a command included in the control information included in the token may be performed. For example, the command performed may be that the IoT hub transmits control information to the IoT device.

단계(430)에서, 명령 수행 결과에 기초하여 생성되는 새로운 명령에 대한 제어 정보가 생성될 수 있다. 예를 들어, IoT 허브는 IoT 기기의 동작 수행 결과에 기초하여 수행할 명령에 대한 제어 정보를 생성할 수 있다.In operation 430, control information for a new command generated based on a command execution result may be generated. For example, the IoT hub may generate control information on a command to be executed based on the result of performing the operation of the IoT device.

단계(440)에서, 단계(430)에서 생성된 명령에 대한 제어 정보가 토큰에 포함됨에 따라, 토큰에 포함된 리비전 카운터가 변경될 수 있다. 리비전 카운터가 변경되는 방식은 도 1, 2를 통해 설명된 방식과 동일하다.In step 440, as the control information for the command generated in step 430 is included in the token, the revision counter included in the token may be changed. The manner in which the revision counter is changed is the same as that described with reference to FIGS.

단계(450)에서, 리비전 카운터가 변경된 토큰은 타겟 장치에 전송될 수 있다. 예를 들어, IoT 허브를 통해 리비전 카운터가 변경된 토큰은 사용자 단말에 전송될 수 있다.In step 450, the token whose revision counter is changed may be sent to the target device. For example, a token whose revision counter is changed through the IoT hub may be transmitted to the user terminal.

도 5는 일 실시예에 따른 보안성 제공 장치의 전체적인 구성을 도시하는 도면이다.5 is a diagram illustrating an overall configuration of a security providing apparatus according to an embodiment.

예를 들어, 보안성 제공 장치(500)는 도 1을 통해 설명된 IoT 허브일 수 있다.For example, the security providing apparatus 500 may be an IoT hub described with reference to FIG. 1.

도 5를 참조하면, 보안성 제공 장치(500)는 사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부(510), 토큰에 포함된 인증 정보에 기초하여 사용자 인증을 수행하는 인증부(530), 사용자 인증이 성공한 경우, 제어 정보를 IoT 기기에 전송하는 전송부(520), 제어 정보의 전송에 응답하여 IoT 기기로부터 제어 정보에 기초하여 수행된 IoT 기기의 제어에 대한 결과 정보에 기초하여 토큰을 변경하는 제어부(540) 및 사용자 인증을 위한 각종 정보를 저장하는 데이터 베이스(550)를 포함하고, 제어부(540)를 통해 변경된 토큰은 전송부(520)를 통해 사용자 단말에 전송될 수 있다.Referring to FIG. 5, the apparatus 500 for providing security may include a receiver 510 for receiving a token including authentication information and control information for controlling an IoT device from a user terminal, based on authentication information included in the token. An authentication unit 530 that performs user authentication, a transmission unit 520 that transmits control information to the IoT device when the user authentication is successful, an IoT device performed based on the control information from the IoT device in response to the transmission of the control information. A controller 540 for changing the token based on the result information for the control of the control unit; and a database 550 for storing various information for user authentication, and the changed token is transferred through the controller 540. It may be transmitted to the user terminal through.

일 실시예에 따르면, 토큰에 포함된 인증 정보는 사용자 단말의 고유 식별 정보 및 토큰의 토큰 식별 정보를 포함할 수 있고, 사용자 단말의 고유 식별 정보 및 토큰 식별 정보는 해싱을 통해 해시값의 형태로 토큰에 저장될 수 있다.According to an embodiment, the authentication information included in the token may include unique identification information of the user terminal and token identification information of the token, and the unique identification information and token identification information of the user terminal may be in the form of a hash value through hashing. Can be stored in a token.

일 실시예에 따르면, 인증부(530)는 고유 식별 정보를 통해 사용자 단말을 인증하고, 토큰 식별 정보에 기초하여 토큰을 인증함으로써 사용자 인증을 수행할 수 있다.According to an embodiment, the authenticator 530 may authenticate the user terminal through the unique identification information, and perform user authentication by authenticating the token based on the token identification information.

토큰 식별 정보는 제어 정보에 기초하여 토큰이 변경될 때마다 갱신될 수 있다. 예를 들어, 토큰 식별 정보는 리비전 카운터일 수 있고, 새로운 제어 정보가 토큰에 포함될 때마다 리비전 카운터의 리비전 카운터 값이 미리 정의된 수치만큼 증가함으로써 토큰 식별 정보는 갱신될 수 있다.The token identification information may be updated whenever the token is changed based on the control information. For example, the token identification information may be a revision counter, and each time new control information is included in the token, the token identification information may be updated by increasing the revision counter value of the revision counter by a predefined value.

일 실시예에 따르면, 제어부(540)는 IoT 기기로부터 수신한 IoT 기기의 제어에 대한 결과 정보에 기초하여 사용자 단말에 대한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써 토큰을 변경할 수 있다. 예를 들어, 제어부(540)는 제어 정보에 기초하여 IoT 기기가 제대로 동작을 수행하였는지에 대한 결과 정보를 사용자 단말에 디스플레이하기 위한 제어 정보를 토큰에 포함시키고, 토큰에 포함된 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 증가시킴으로써 토큰을 변경할 수 있다.According to an embodiment, the control unit 540 includes the control information for the user terminal in the token based on the result information on the control of the IoT device received from the IoT device, and revision counter value of the token identification information included in the token. You can change the token by changing the value by a predefined number. For example, the control unit 540 includes control information for displaying on the user terminal the result information on whether the IoT device performed properly based on the control information in the token, and a revision counter value of the identification information included in the token. You can change the token by increasing by a predefined number.

일 실시예에 따르면, 인증부(530)를 통한 토큰에 대한 인증이 실패한 경우, 제어부(540)는 토큰의 인증에 실패한 토큰을 삭제하고, 새로운 토큰을 생성할 수 있다.According to an embodiment of the present disclosure, when authentication of the token through the authentication unit 530 fails, the controller 540 may delete the token that fails to authenticate the token and generate a new token.

실시예들에서 설명된 구성요소들은 하나 이상의 DSP (digital signal processor), 프로세서, 컨트롤러, ASIC (application specific integrated circuit), FPGA (field programmable gate array)와 같은 프로그래머블 논리 소자, 다른 전자 기기들 및 이것들의 조합 중 하나 이상을 포함하는 하드웨어 구성 요소에 의해 구현될 수 있다. 실시예들에서 설명된 과정들 또는 기능들 중 적어도 일부는 소프트웨어에 의해 구현될 수 있고, 해당 소프트웨어는 기록 매체에 기록될 수 있다. 실시예들에서 설명된 구성요소들, 기능들 및 과정들은 하드웨어와 소프트웨어의 조합에 의해 구현될 수 있다.The components described in the embodiments may include one or more digital signal processors (DSPs), processors, controllers, application specific integrated circuits (ASICs), programmable logic devices such as field programmable gate arrays (FPGAs), other electronic devices and their It may be implemented by a hardware component that includes one or more of the combination. At least some of the processes or functions described in the embodiments may be implemented by software, and the software may be recorded on the recording medium. The components, functions, and processes described in the embodiments may be implemented by a combination of hardware and software.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be embodied in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. Computer-readable media may include, alone or in combination with the program instructions, data files, data structures, and the like. The program instructions recorded on the computer readable medium may be those specially designed and configured for the exemplary embodiments, or may be known and available to those skilled in computer software. Examples of computer readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the embodiments have been described with reference to the accompanying drawings, those skilled in the art may apply various technical modifications and variations based on the above. For example, the described techniques may be performed in a different order than the described method, and / or components of the described systems, structures, devices, circuits, etc. may be combined or combined in a different form than the described method, or other components. Or even if replaced or substituted by equivalents, an appropriate result can be achieved.

Claims (17)

IoT(Internet of Things) 허브에 의한 보안성 제공 방법에 있어서,
사용자 단말로부터, 인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 수신하는 단계;
상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 단계;
상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 단계;
상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보를 수신하는 단계;
상기 결과 정보에 기초하여 상기 토큰을 변경하는 단계; 및
상기 변경된 토큰을 상기 사용자 단말에 전송하는 단계
를 포함하고,
상기 인증 정보는,
상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함하고,
상기 토큰 식별 정보는,
새로운 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신되고,
상기 토큰 식별 정보는,
상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신되고,
상기 토큰을 변경하는 단계는,
상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키는 단계; 및
상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경하는 단계
를 포함하는 보안성 제공 방법.

In the security providing method by the Internet of Things hub,
Receiving a token from the user terminal, the token including authentication information and control information for controlling the IoT device;
Performing user authentication based on the authentication information included in the token;
If the user authentication is successful, transmitting the control information to the IoT device;
In response to the transmission of the control information, receiving result information on the control of the IoT device performed based on the control information from the IoT device;
Changing the token based on the result information; And
Transmitting the changed token to the user terminal
Including,
The authentication information,
Including unique identification information of the user terminal and token identification information of the token,
The token identification information,
Updated every time the token is changed based on new control information,
The token identification information,
It is updated by changing a revision counter value included in the token identification information by a predefined value,
Changing the token,
Including control information for the user terminal in the token based on the result information; And
Changing a revision counter value of token identification information included in the token by a predefined value;
Security providing method comprising a.

삭제delete 제1항에 있어서,
상기 사용자 인증을 수행하는 단계는,
상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하는 단계; 및
상기 토큰 식별 정보에 기초하여 토큰을 인증하는 단계
를 포함하는, 보안성 제공 방법.
The method of claim 1,
Performing the user authentication,
Authenticating the user terminal based on the unique identification information; And
Authenticating a token based on the token identification information
Including, security providing method.
삭제delete 삭제delete 삭제delete 제3항에 있어서,
상기 토큰에 대한 인증이 실패한 경우, 상기 토큰의 인증에 실패한 토큰을 삭제하는 단계; 및
새로운 토큰을 생성하는 단계
를 더 포함하는 보안성 제공 방법.
The method of claim 3,
If the authentication for the token fails, deleting the token that failed to authenticate the token; And
Steps to Generate a New Token
Security providing method further comprising.
사용자 단말에 의한 보안성 제공 방법에 있어서,
인증 정보 및 IoT 기기를 제어하기 위한 제어 정보를 포함하는 토큰을 IoT 허브에 전송하는 단계;
상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 변경된 토큰을 상기 IoT 허브로부터 수신하는 단계; 및
상기 변경된 토큰에 대한 인증을 수행하는 단계를 포함하고,
상기 인증 정보는,
상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함하고,
상기 토큰 식별 정보는,
새로운 제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신되고,
상기 토큰 식별 정보는,
상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신되고,
상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키고, 상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 상기 토큰은 변경되는,
보안성 제공 방법.
In the security providing method by the user terminal,
Transmitting a token including authentication information and control information for controlling the IoT device to the IoT hub;
Receiving a changed token from the IoT hub based on the result information on the control of the IoT device performed based on the control information; And
Performing authentication on the changed token;
The authentication information,
Includes unique identification information of the user terminal and token identification information of the token,
The token identification information,
Updated each time the token is changed based on new control information,
The token identification information,
It is updated by changing a revision counter value included in the token identification information by a predefined value,
The token is changed by including control information for the user terminal in the token based on the result information, and changing a revision counter value of token identification information included in the token by a predetermined value.
How to provide security.
제8항에 있어서,
상기 변경된 토큰은,
상기 결과 정보에 기초하여 생성된 상기 사용자 단말에 대한 제어 정보를 포함하고,
미리 정의된 수치만큼 변경된 리비전 카운터 값을 포함하는, 보안성 제공 방법.
The method of claim 8,
The changed token is,
Includes control information for the user terminal generated based on the result information,
A method of providing security, comprising a revision counter value changed by a predefined number.
제8항에 있어서,
상기 인증을 수행하는 단계는,
상기 변경된 토큰에 포함된 리비전 카운터 값에 기초하여 상기 변경된 토큰을 인증하는, 보안성 제공 방법.
The method of claim 8,
Performing the authentication,
And authenticating the changed token based on a revision counter value included in the changed token.
사용자 단말로부터, 인증 정보 및 IoT 기기의 제어를 위한 제어 정보를 포함하는 토큰을 수신하는 수신부;
상기 토큰에 포함된 상기 인증 정보에 기초하여 사용자 인증을 수행하는 인증부;
상기 사용자 인증이 성공한 경우, 상기 제어 정보를 상기 IoT 기기에 전송하는 전송부; 및
상기 제어 정보의 전송에 응답하여, 상기 IoT 기기로부터 상기 제어 정보에 기초하여 수행된 상기 IoT 기기의 제어에 대한 결과 정보에 기초하여 상기 토큰을 변경하는 제어부
를 포함하고,
상기 전송부는,
상기 변경된 토큰을 상기 사용자 단말에 전송하고,
상기 인증 정보는,
상기 사용자 단말의 고유 식별 정보 및 상기 토큰의 토큰 식별 정보를 포함하고,
상기 토큰 식별 정보는,
제어 정보에 기초하여 상기 토큰이 변경될 때마다 갱신되고,
상기 토큰 식별 정보는,
상기 토큰 식별 정보에 포함된 리비전 카운터(Revision Counter) 값을 미리 정의된 수치만큼 변경함으로써 갱신되고,
상기 제어부는,
상기 결과 정보에 기초하여 상기 사용자 단말에 대한 제어 정보를 상기 토큰에 포함시키고,
상기 토큰에 포함된 토큰 식별 정보의 리비전 카운터 값을 미리 정의된 수치만큼 변경함으로써, 상기 토큰을 변경하는, 보안성 제공 장치.
Receiving unit for receiving a token from the user terminal, the authentication information and the control information for controlling the IoT device;
An authenticator configured to perform user authentication based on the authentication information included in the token;
A transmission unit for transmitting the control information to the IoT device when the user authentication is successful; And
In response to the transmission of the control information, the control unit for changing the token based on the result information on the control of the IoT device performed based on the control information from the IoT device
Including,
The transmission unit,
Transmit the changed token to the user terminal,
The authentication information,
Includes unique identification information of the user terminal and token identification information of the token,
The token identification information,
Updated each time the token is changed based on control information,
The token identification information,
It is updated by changing a revision counter value included in the token identification information by a predefined value,
The control unit,
Including the control information for the user terminal in the token based on the result information,
And changing the token by changing a revision counter value of token identification information included in the token by a predefined value.
삭제delete 제11항에 있어서,
상기 인증부는,
상기 고유 식별 정보에 기초하여 상기 사용자 단말을 인증하고,
상기 토큰 식별 정보에 기초하여 토큰을 인증하는, 보안성 제공 장치.
The method of claim 11,
The authentication unit,
Authenticate the user terminal based on the unique identification information,
And authenticating the token based on the token identification information.
삭제delete 삭제delete 삭제delete 제13항에 있어서,
상기 토큰에 대한 인증이 실패한 경우,
상기 제어부는,
상기 토큰의 인증에 실패한 토큰을 삭제하고,
새로운 토큰을 생성하는, 보안성 제공 장치.
The method of claim 13,
If the authentication for the token fails,
The control unit,
Delete the token that failed the authentication of the token,
Security providing device for generating a new token.
KR1020170169752A 2017-12-11 2017-12-11 APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT KR102033226B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170169752A KR102033226B1 (en) 2017-12-11 2017-12-11 APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170169752A KR102033226B1 (en) 2017-12-11 2017-12-11 APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT

Publications (2)

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

Family

ID=67104562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170169752A KR102033226B1 (en) 2017-12-11 2017-12-11 APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT

Country Status (1)

Country Link
KR (1) KR102033226B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102252863B1 (en) * 2020-06-30 2021-05-14 윤성민 Things identity authentication system and method thereof
KR102259156B1 (en) 2020-09-28 2021-06-01 박나은 Authentication system and method for network environment
KR102611612B1 (en) * 2020-11-17 2023-12-08 한국전자통신연구원 Method and apparatus for controlling elevator

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626723B1 (en) * 2015-08-27 2016-06-13 목포대학교산학협력단 Service gateway using internet of things and operating method of the same

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8793497B2 (en) * 2008-05-09 2014-07-29 Qualcomm Incorporated Puzzle-based authentication between a token and verifiers
JP6882314B2 (en) * 2015-11-24 2021-06-02 サムスン エレクトロニクス カンパニー リミテッド Smart home service server and its control method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626723B1 (en) * 2015-08-27 2016-06-13 목포대학교산학협력단 Service gateway using internet of things and operating method of the same

Also Published As

Publication number Publication date
KR20190069234A (en) 2019-06-19

Similar Documents

Publication Publication Date Title
US11711219B1 (en) PKI-based user authentication for web services using blockchain
US10776786B2 (en) Method for creating, registering, revoking authentication information and server using the same
US9800468B2 (en) Goal-driven provisioning in IoT systems
US10990122B2 (en) Secure real-time clock update in an access control system
EP3208222A1 (en) Anonymous and ephemeral tokens to authenticate elevator calls
US10019564B2 (en) Authentication of a device
CN111324672A (en) Block chain safety processing system and method
KR102033226B1 (en) APPARATUS AND METHOD FOR PROVIDING SECURITY IN HOME IoT
US9928362B2 (en) Dynamic changing of access token types
JP2021103518A (en) Privacy data processing method, privacy data processing apparatus, device and medium
JP6967449B2 (en) Methods for security checks, devices, terminals and servers
US9369450B1 (en) Methods preserving user identities during login and related systems, devices, and machines
JP7000495B2 (en) Internet of Things devices and their authentication methods, cloud servers, processing devices, and readable media
KR102112897B1 (en) Roaming internet-accessible application state across trusted and untrusted platforms
US10979216B2 (en) Generating public/private key pairs to deploy public keys at computing devices to verify digital signatures
WO2008147086A1 (en) Apparatus and method of verifying online certificate for offline device
CN105262773A (en) A verification method and apparatus for an IOT system
US11943372B2 (en) Use right information processing device, use right information processing system, and use right information processing method, based on smart contract
US20210192084A1 (en) Certification and validation of data files issued by an architect or engineer
KR102519627B1 (en) Method for authenticating legacy service based on token and platform service server supporting the same
JP2021536695A (en) Sending and receiving messages
US10069829B1 (en) Multi-party secure global attestation
US11818574B2 (en) Provisioning devices securely using zero touch deployments
CN117501656A (en) Decentralised identity with user biometric
KR20200106435A (en) Method and apparatus for authenticating user

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