KR101688813B1 - Method and system for establishing relationship between iot device and owner - Google Patents

Method and system for establishing relationship between iot device and owner Download PDF

Info

Publication number
KR101688813B1
KR101688813B1 KR1020160046890A KR20160046890A KR101688813B1 KR 101688813 B1 KR101688813 B1 KR 101688813B1 KR 1020160046890 A KR1020160046890 A KR 1020160046890A KR 20160046890 A KR20160046890 A KR 20160046890A KR 101688813 B1 KR101688813 B1 KR 101688813B1
Authority
KR
South Korea
Prior art keywords
iot device
platform server
registration
key
data
Prior art date
Application number
KR1020160046890A
Other languages
Korean (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 KR1020160046890A priority Critical patent/KR101688813B1/en
Application granted granted Critical
Publication of KR101688813B1 publication Critical patent/KR101688813B1/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/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L67/16
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

In a method of establishing a relationship between an internet of things (IoT) device and an owner, a platform server generates a registration transaction handle for the IoT device based on a request from an owner terminal, binds the IoT device and the owner terminal based on the registration request of the IoT device based on the registration handle, and sets first and sharing keys with the IoT device, thereby registering the IoT device to the platform server. The IoT device generates first data by encrypting a first partial key based on the second sharing keys. The platform server verifies the first data based on the first sharing keys and encrypts a second partial key based on the first sharing keys to generate second data. The IoT device verifies the second data based on the second sharing keys and couples the first and second partial keys to set a session key, thereby authenticating the IoT device.

Description

IoT 기기와 소유자 사이의 관계 확립을 위한 방법 및 시스템{METHOD AND SYSTEM FOR ESTABLISHING RELATIONSHIP BETWEEN IOT DEVICE AND OWNER}[0001] METHOD AND SYSTEM FOR RELATIONSHIP BETWEEN IOT DEVICE AND OWNER [0002]

본 발명은 사물인터넷(Internet of Things: IoT)에 관한 것으로서, 더욱 상세하게는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법 및 상기 방법을 수행하는 시스템에 관한 것이다.The present invention relates to the Internet of Things (IoT), and more particularly to a method for establishing a relationship between an IoT device and an owner and a system for performing the method.

인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 사물인터넷(Internet of Things: IoT) 망으로 진화하고 있다. IoT를 구현하기 위해서, 센싱 기술, 유무선 통신 및 네트워크 인프라, 서비스 인터페이스 기술, 및 보안 기술 등이 요구되는데, 특히 IoT 기기를 포함하는 시스템에서 보안 기술의 중요성이 더욱 요구될 수 있다.The Internet has evolved into the Internet of Things (IoT) network, where information is exchanged between distributed components such as objects in a human-centered connection network where humans generate and consume information. In order to implement IoT, sensing technology, wired / wireless communication and network infrastructure, service interface technology, and security technology are required. Especially, the importance of security technology in a system including IoT devices may be further demanded.

본 발명의 일 목적은 IoT 기기와 상기 IoT 기기의 소유자 사이의 관계를 효율적으로 확립할 수 있는 방법을 제공하는 것이다.It is an object of the present invention to provide a method for effectively establishing a relationship between an IoT device and an owner of the IoT device.

본 발명의 다른 목적은 IoT 기기와 상기 IoT 기기의 소유자 사이의 관계를 효율적으로 확립할 수 있는 시스템을 제공하는 것이다.Another object of the present invention is to provide a system capable of efficiently establishing a relationship between an IoT device and an owner of the IoT device.

상기 일 목적을 달성하기 위해, 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법에서, 플랫폼 서버가 소유자 단말기의 요청에 기초하여 제1 사물인터넷(Internet of Things: IoT) 기기를 위한 제1 등록 트랜잭션 핸들을 생성하고, 상기 제1 IoT 기기가 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 플랫폼 서버에 등록 요청 메시지를 전송하고, 상기 플랫폼 서버가 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기와 상기 소유자 단말기를 바인딩(binding)하며, 상기 플랫폼 서버와 상기 제1 IoT 기기가 상호 연동하여 제1 공유키 및 제2 공유키를 각각 설정함으로써, 상기 플랫폼 서버에 상기 제1 IoT 기기를 등록한다. 상기 제1 IoT 기기가 제1 부분키를 발생하고 상기 제2 공유키를 기초로 상기 제1 부분키를 암호화하여 제1 데이터를 생성하고, 상기 플랫폼 서버가 제2 부분키를 발생하고 상기 제1 공유키에 기초하여 상기 제1 데이터를 검증하고 상기 제1 공유키를 기초로 상기 제2 부분키를 암호화하여 제2 데이터를 생성하고, 상기 제1 IoT 기기가 상기 제2 공유키에 기초하여 상기 제2 데이터를 검증하며, 상기 제1 부분키 및 상기 제2 부분키를 결합하여 세션키를 설정한다.In order to achieve the above object, in a method for establishing a relationship between an IoT device and an owner according to embodiments of the present invention, a platform server transmits a first Internet of Things (IoT) based on a request of an owner terminal, Wherein the first IoT device sends a registration request message to the platform server based on the first registration transaction handle and the platform server sends a registration request message to the platform server based on the registration request message, Wherein the first IoT device and the owner terminal are bound to each other and the platform server and the first IoT device interact with each other to set a first shared key and a second shared key, Register the device. Wherein the first IoT device generates a first partial key and encrypts the first partial key based on the second shared key to generate first data and the platform server generates a second partial key, Verifying the first data based on a shared key, encrypting the second partial key based on the first shared key to generate second data, and transmitting, by the first IoT device, Verifies the second data, and sets the session key by combining the first partial key and the second partial key.

일 실시예에서, 상기 제1 IoT 기기를 등록하는데 있어서, 상기 소유자 단말기는 상기 플랫폼 서버에 등록 트랜잭션 핸들 요청 메시지를 전송할 수 있다. 상기 플랫폼 서버는 상기 등록 트랜잭션 핸들 요청 메시지에 기초하여 제1 등록 트랜잭션 핸들 정보를 생성하고, 상기 소유자 단말기에 상기 제1 등록 트랜잭션 핸들을 돌려줄 수 있다. 상기 제1 등록 트랜잭션 핸들 정보는 제1 트랜잭션 ID, 상기 소유자 단말기에 대한 소유자 ID 및 상기 제1 등록 트랜잭션 핸들의 유효 시간을 나타내는 제1 시간 정보를 포함할 수 있다. 상기 제1 등록 트랜잭션 핸들은 상기 제1 트랜잭션 ID, 상기 플랫폼 서버의 위치를 나타내는 제1 URL, 및 제2 URL을 포함할 수 있다.In one embodiment, in registering the first IoT device, the owner terminal may send a registration transaction handle request message to the platform server. The platform server may generate first registration transaction handle information based on the registration transaction handle request message and return the first registration transaction handle to the owner terminal. The first registration transaction handle information may include first time information indicating a first transaction ID, an owner ID for the owner terminal, and an effective time of the first registration transaction handle. The first registration transaction handle may include the first transaction ID, a first URL indicating the location of the platform server, and a second URL.

일 실시예에서, 상기 제1 IoT 기기를 등록하는데 있어서, 상기 소유자 단말기는 상기 제1 IoT 기기에 상기 제1 등록 트랜잭션 핸들을 전송할 수 있다. 상기 제1 IoT 기기는 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 제1 IoT 기기의 제1 물리적 기기 ID를 추출하고, 상기 플랫폼 서버에 상기 제1 물리적 기기 ID 및 상기 제1 트랜잭션 ID를 포함하는 상기 등록 요청 메시지를 전송할 수 있다. 상기 플랫폼 서버는 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기의 제1 기기 ID를 생성할 수 있다.In one embodiment, in registering the first IoT device, the owner terminal may send the first registration transaction handle to the first IoT device. Wherein the first IoT device extracts a first physical device ID of the first IoT device based on the first registration transaction handle and transmits the first physical device ID and the first transaction ID to the platform server A registration request message can be transmitted. The platform server may generate the first device ID of the first IoT device based on the registration request message.

일 실시예에서, 상기 제1 IoT 기기를 등록하는데 있어서, 상기 소유자 단말기와 상기 제1 IoT 기기 사이에 제1 보안 채널이 형성되고, 상기 제1 보안 채널을 통해 상기 제1 등록 트랜잭션 핸들이 전송될 수 있다. 상기 제1 IoT 기기와 상기 플랫폼 서버 사이에 제2 보안 채널이 형성되고, 상기 제2 보안 채널을 통해 상기 등록 요청 메시지가 전송될 수 있다.In one embodiment, in registering the first IoT device, a first secure channel is formed between the owner terminal and the first IoT device, and the first registration transaction handle is transmitted over the first secure channel . A second secure channel is formed between the first IoT device and the platform server, and the registration request message can be transmitted through the second secure channel.

일 실시예에서, 상기 제1 IoT 기기를 등록하는데 있어서, 상기 플랫폼 서버는 상기 제1 물리적 기기 ID 및 상기 제1 기기 ID에 기초하여 상기 제1 공유키를 유도하고, 상기 제1 공유키를 기초로 제1 체크 데이터를 암호화하여 제2 체크 데이터를 생성하고, 상기 제1 기기 ID 및 상기 제2 체크 데이터를 상기 제1 IoT 기기에 돌려줄 수 있다. 상기 제1 IoT 기기는 상기 제1 물리적 기기 ID 및 상기 제1 기기 ID에 기초하여 상기 제2 공유키를 유도하고, 상기 제2 공유키에 기초하여 상기 제2 체크 데이터를 검증할 수 있다. 상기 제2 체크 데이터에 대한 검증 동작이 완료된 경우에, 상기 제1 IoT 기기는 상기 제1 기기 ID 및 상기 제2 공유키를 저장하고, 상기 플랫폼 서버는 상기 제1 기기 ID, 상기 소유자 ID, 상기 제1 물리적 기기 ID 및 상기 제1 공유키를 저장할 수 있다.In one embodiment, in registering the first IoT device, the platform server derives the first shared key based on the first physical device ID and the first device ID, and based on the first shared key, To generate the second check data, and to return the first device ID and the second check data to the first IoT device. The first IoT device may derive the second shared key based on the first physical device ID and the first device ID and verify the second check data based on the second shared key. Wherein the first IoT device stores the first device ID and the second shared key when the verifying operation of the second check data is completed, and the platform server stores the first device ID, the owner ID, A first physical device ID and the first shared key.

일 실시예에서, 상기 제1 IoT 기기를 등록하는데 있어서, 상기 플랫폼 서버의 공개키에 기초하여 상기 제1 IoT 기기와 상기 플랫폼 서버 사이에 제3 보안 채널이 형성될 수 있다. 상기 제1 IoT 기기는 상기 제3 보안 채널을 통해 상기 제1 기기 ID 및 상기 제1 데이터를 전송하고, 상기 플랫폼 서버는 상기 제3 보안 채널을 통해 상기 제2 데이터를 전송할 수 있다.In one embodiment, in registering the first IoT device, a third secure channel may be formed between the first IoT device and the platform server based on a public key of the platform server. The first IoT device transmits the first device ID and the first data over the third secure channel, and the platform server can transmit the second data over the third secure channel.

일 실시예에서, 상기 제1 IoT 기기를 등록하는 단계는 상기 제1 IoT 기기의 최초 구동 시에 1회 수행될 수 있다. 상기 제1 IoT 기기를 인증하는 단계는 상기 제1 IoT 기기가 수행 가능한 복수의 동작들 중 적어도 하나가 요청될 때마다 수행될 수 있다.In one embodiment, the step of registering the first IoT device may be performed once at the time of the first drive of the first IoT device. The step of authenticating the first IoT device may be performed whenever at least one of a plurality of operations that can be performed by the first IoT device is requested.

상기 다른 목적을 달성하기 위해, 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 시스템은, 제1 사물인터넷(Internet of Things: IoT) 기기, 상기 제1 IoT 기기의 등록을 제어하는 소유자 단말기, 및 상기 제1 IoT 기기의 등록 및 인증을 제어하는 플랫폼 서버를 포함한다. 상기 플랫폼 서버가 상기 소유자 단말기의 요청에 기초하여 상기 제1 IoT 기기를 위한 제1 등록 트랜잭션 핸들을 생성하고, 상기 제1 IoT 기기가 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 플랫폼 서버에 등록 요청 메시지를 전송하고, 상기 플랫폼 서버가 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기와 상기 소유자 단말기를 바인딩(binding)하며, 상기 플랫폼 서버와 상기 제1 IoT 기기가 상호 연동하여 제1 공유키 및 제2 공유키를 각각 설정함으로써, 상기 플랫폼 서버에 상기 제1 IoT 기기를 등록한다. 상기 제1 IoT 기기가 제1 부분키를 발생하고 상기 제2 공유키를 기초로 상기 제1 부분키를 암호화하여 제1 데이터를 생성하고, 상기 플랫폼 서버가 제2 부분키를 발생하고 상기 제1 공유키에 기초하여 상기 제1 데이터를 검증하고 상기 제1 공유키를 기초로 상기 제2 부분키를 암호화하여 제2 데이터를 생성하고, 상기 제1 IoT 기기가 상기 제2 공유키에 기초하여 상기 제2 데이터를 검증하며, 상기 제1 부분키 및 상기 제2 부분키를 결합하여 세션키를 설정함으로써, 상기 제1 IoT 기기를 인증한다.According to another aspect of the present invention, there is provided a system for establishing a relationship between an IoT device and an owner according to embodiments of the present invention includes a first IoT device, a first IoT device, And a platform server for controlling registration and authentication of the first IoT device. Wherein the platform server generates a first registration transaction handle for the first IoT device based on a request from the owner terminal and the first IoT device sends a registration request message to the platform server based on the first registration transaction handle, And the platform server binds the first IoT device and the owner terminal based on the registration request message, and the platform server and the first IoT device interact with each other to form a first shared key and a second shared key, 2 shared keys to register the first IoT device in the platform server. Wherein the first IoT device generates a first partial key and encrypts the first partial key based on the second shared key to generate first data and the platform server generates a second partial key, Verifying the first data based on a shared key, encrypting the second partial key based on the first shared key to generate second data, and transmitting, by the first IoT device, Authenticates the first IoT device by verifying the second data, and combining the first partial key and the second partial key to establish a session key.

상기와 같은 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법 및 시스템에서, 플랫폼 서버에 IoT 기기를 등록하고 플랫폼 서버와 통신하여 IoT 기기를 인증하는 절차에 의해 소유자가 IoT 기기를 적법하게 소유하고 있음이 보장될 수 있다. 다시 말하면, IoT 기기에 대한 신뢰성이 보장될 수 있으며, 따라서 IoT 기기를 사용하는데 있어서 효율적인 인증, 인가, 프라이버시 관리 등을 제공할 수 있다.In a method and system for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention, an IoT device is registered in a platform server, and the IoT device is authenticated by communicating with a platform server. You can be assured that you own the device legally. In other words, the reliability of the IoT device can be ensured, and therefore, it is possible to provide efficient authentication, authorization and privacy management in using the IoT device.

도 1은 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 시스템을 나타내는 블록도이다.
도 2는 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법을 나타내는 순서도이다.
도 3은 도 2의 IoT 기기를 등록하는 단계의 일 예를 나타내는 순서도이다.
도 4는 플랫폼 서버에 IoT 기기를 등록하는 동작을 설명하기 위한 도면이다.
도 5는 도 2의 IoT 기기를 인증하는 단계의 일 예를 나타내는 순서도이다.
도 6은 플랫폼 서버와의 통신에 기초하여 IoT 기기를 인증하는 동작을 설명하기 위한 도면이다.
1 is a block diagram illustrating a system for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention.
2 is a flow diagram illustrating a method for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention.
3 is a flowchart showing an example of a step of registering the IoT device of FIG.
4 is a diagram for explaining an operation of registering an IoT device on a platform server.
5 is a flowchart showing an example of the step of authenticating the IoT device of FIG.
6 is a diagram for explaining an operation of authenticating an IoT device based on communication with a platform server.

본문에 개시되어 있는 본 발명의 실시예들에 대해서, 특정한 구조적 내지 기능적 설명들은 단지 본 발명의 실시예를 설명하기 위한 목적으로 예시된 것으로, 본 발명의 실시예들은 다양한 형태로 실시될 수 있으며 본문에 설명된 실시예들에 한정되는 것으로 해석되어서는 아니 된다.For the embodiments of the invention disclosed herein, specific structural and functional descriptions are set forth for the purpose of describing an embodiment of the invention only, and it is to be understood that the embodiments of the invention may be practiced in various forms, The present invention should not be construed as limited to the embodiments described in Figs.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The present invention is capable of various modifications and various forms, and specific embodiments are illustrated in the drawings and described in detail in the text. It is to be understood, however, that the invention is not intended to be limited to the particular forms disclosed, but on the contrary, is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention.

제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms may be used for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, 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.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between. Other expressions that describe the relationship between components, such as "between" and "between" or "neighboring to" and "directly adjacent to" should be interpreted as well.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprise", "having", and the like are intended to specify the presence of stated features, integers, steps, operations, elements, components, or combinations thereof, , Steps, operations, components, parts, or combinations thereof, as a matter of principle.

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

한편, 어떤 실시예가 달리 구현 가능한 경우에 특정 블록 내에 명기된 기능 또는 동작이 순서도에 명기된 순서와 다르게 일어날 수도 있다. 예를 들어, 연속하는 두 블록이 실제로는 실질적으로 동시에 수행될 수도 있고, 관련된 기능 또는 동작에 따라서는 상기 블록들이 거꾸로 수행될 수도 있다.On the other hand, if an embodiment is otherwise feasible, the functions or operations specified in a particular block may occur differently from the order specified in the flowchart. For example, two consecutive blocks may actually be performed at substantially the same time, and depending on the associated function or operation, the blocks may be performed backwards.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

도 1은 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 시스템을 나타내는 블록도이다.1 is a block diagram illustrating a system for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention.

도 1을 참조하면, IoT 기기와 소유자 사이의 관계 확립을 위한 시스템(10)은 소유자 단말기(100), 사물인터넷(Internet of Things: IoT) 기기(200) 및 플랫폼 서버(300)를 포함한다. 소유자 단말기(100), IoT 기기(200) 및 플랫폼 서버(300)는 IoT 서비스 플랫폼을 형성할 수 있다.Referring to FIG. 1, a system 10 for establishing a relationship between an IoT device and an owner includes an owner terminal 100, an Internet of Things (IoT) device 200, and a platform server 300. The owner terminal 100, the IoT device 200, and the platform server 300 may form an IoT service platform.

본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 시스템(10)에서, 소유자 단말기(100)는 IoT 기기(200)를 가지고 있는 소유자에 의해 관리 및/또는 제어될 수 있고, IoT 기기(200)의 등록을 제어할 수 있다. 플랫폼 서버(300)는 IoT 기기(200)를 제조한 제조자 또는 제조사에 의해 관리 및/또는 제어될 수 있고, IoT 기기(200)의 등록 및 인증을 제어할 수 있다. 예를 들어, 소유자 단말기(100)에 설치된 IoT 기기 관리 어플리케이션을 통해 IoT 기기(200)의 등록이 제어될 수 있다. 상기 등록 및 인증 절차에 의해 상기 소유자가 IoT 기기(200)를 적법하게 소유하고 있음이 보장(즉, IoT 기기(200)에 대한 신뢰성이 보장)될 수 있다.In a system 10 for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention, the owner terminal 100 may be managed and / or controlled by the owner having the IoT device 200, The registration of the IoT device 200 can be controlled. The platform server 300 can be managed and / or controlled by the manufacturer or manufacturer of the IoT device 200 and can control the registration and authentication of the IoT device 200. For example, the registration of the IoT device 200 can be controlled through the IoT device management application installed in the owner terminal 100. The registration and authentication procedure ensures that the owner has legitimately owned the IoT device 200 (i.e., the reliability of the IoT device 200 is guaranteed).

일 실시예에서, IoT 기기(200)는 가정용 기기(예를 들어, TV, 냉장고, 오븐, 세탁기, 건조기 등), 전등, 화재 경보기, 계량기(예를 들어, 전기 계량기, 가스 계량기 등), 태양광 발전기, 스프링클러, 온/습도 조절 기기(예를 들어, 보일러, 가습기 등), 보안 기기(예를 들어, 보안 카메라, 보안 센서 등) 등과 같은 임의의 IoT 기기일 수 있다.In one embodiment, the IoT device 200 may be a home appliance (e.g., a TV, a refrigerator, an oven, a washer, a dryer, etc.), a light, a fire alarm, a meter (e.g., Such as a light generator, a sprinkler, an on / humidity control device (e.g., a boiler, a humidifier, etc.), a security device (e.g., a security camera, a security sensor, etc.).

일 실시예에서, 소유자 단말기(100)는 휴대폰(Mobile Phone), 스마트 폰(Smart Phone), 태블릿(Tablet) PC(Personal Computer), 노트북(Laptop Computer), 개인 정보 단말기(Personal Digital Assistant; PDA), 휴대형 멀티미디어 플레이어(Portable Multimedia Player; PMP), 디지털 카메라(Digital Camera), 음악 재생기(Music Player), 휴대용 게임 콘솔(Portable Game Console), 네비게이션(Navigation) 시스템 등과 같은 임의의 모바일 기기일 수도 있고, PC(Personal Computer), 서버 컴퓨터(Server Computer), 워크스테이션(Workstation), 디지털 TV(Digital Television), 셋-탑 박스(Set-Top Box) 등과 같은 임의의 컴퓨팅 기기일 수도 있다.In one embodiment, the owner terminal 100 may be a mobile phone, a smart phone, a tablet PC, a laptop computer, a personal digital assistant (PDA) , A portable multimedia player (PMP), a digital camera, a music player, a portable game console, a navigation system, and the like, May be any computing device such as a personal computer (PC), a server computer, a workstation, a digital television, a set-top box, and the like.

일 실시예에서, 소유자 단말기(100)와 플랫폼 서버(300), 또는 IoT 기기(200)와 플랫폼 서버(300)는, LTE(Long Term Evolution), LTE-A(Advanced), CDMA(Code Division Multiple Access), WCDMA(Wide-CDMA), UMTS(Universal Mobile Telecommunication System), WiBro, GSM(Global System for Mobile communication) 등과 같은 원거리 통신 방식에 기초하여 신호 및 데이터를 서로 주고 받을 수 있다.In one embodiment, the owner terminal 100 and the platform server 300, or the IOT device 200 and the platform server 300 are connected to each other by a long term evolution (LTE), an advanced (LTE-A) (UMTS), WiBro, GSM (Global System for Mobile communication), and the like, based on the received signal and data.

일 실시예에서, 소유자 단말기(100)와 IoT 기기(200)는, 블루투스(Bluetooth), NFC(Near Field Communication), CoAP(Constrained Application Protocol), 와이파이(WiFi), 지그비(Zigbee) 등과 같은 근거리 통신 방식 또는 상기 원거리 통신 방식에 기초하여 신호 및 데이터를 서로 주고 받을 수 있다.In one embodiment, the owner terminal 100 and the IOT device 200 are connected to each other by a local communication such as Bluetooth, Near Field Communication (NFC), Constrained Application Protocol (CoAP), WiFi, Zigbee, And can exchange signals and data based on the method or the telecommunication method.

도시하지는 않았지만, 소유자 단말기(100), IoT 기기(200) 및 플랫폼 서버(300) 각각은, 특정 계산들 또는 태스크들을 실행하는 프로세서, 상기 프로세서에 의해 처리되는 데이터를 저장하는 메모리, 외부 장치와 통신을 수행하는 통신부, 및 사용자 인터페이스를 제공하는 키패드, 터치 스크린, 디스플레이 등의 입출력 장치를 포함하여 구현될 수 있다.Although not shown, each of the owner terminal 100, the IOT device 200, and the platform server 300 includes a processor that executes specific calculations or tasks, a memory that stores data processed by the processor, And an input / output device such as a keypad, a touch screen, and a display for providing a user interface.

도 2는 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법을 나타내는 순서도이다. 도 2는 하나의 IoT 기기(200)에 대한 관계 확립 방법(예를 들어, 등록, 인증 등)을 나타낸다.2 is a flow diagram illustrating a method for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention. FIG. 2 shows a method of establishing a relationship (e.g., registration, authentication, etc.) with respect to one IoT device 200. FIG.

도 1 및 2를 참조하면, 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법에서, 소유자 단말기(100)의 요청에 기초하여 플랫폼 서버(300)에 제1 IoT 기기(200)를 등록하고(단계 S1000), 제1 IoT 기기(200)의 등록이 완료된 이후에 플랫폼 서버(300)와의 통신에 기초하여 제1 IoT 기기(200)를 인증한다(단계 S2000). 단계 S1000에 대해서는 도 3 및 4를 참조하여 상세하게 후술하도록 하고, 단계 S2000에 대해서는 도 5 및 6을 참조하여 상세하게 후술하도록 한다.Referring to Figures 1 and 2, in a method for establishing a relationship between an IoT device and an owner according to embodiments of the present invention, a first IoT device ( 200) (step S1000). After completing registration of the first IoT device 200, the first IoT device 200 is authenticated based on communication with the platform server 300 (step S2000). Step S1000 will be described later in detail with reference to Figs. 3 and 4, and step S2000 will be described later in detail with reference to Figs. 5 and 6. Fig.

일 실시예에서, 플랫폼 서버(300)에 제1 IoT 기기(200)를 등록하는 단계(S1000)는, 제1 IoT 기기(200)의 최초 구동 시에 1회 수행될 수 있다. 예를 들어, 제1 IoT 기기(200)가 상기 소유자에 의해 구매된 후 또는 제1 IoT 기기(200)가 초기화된 후 제1 IoT 기기(200)를 최초로 구동시키는 경우와 같은 상기 최초 동작 시에, 단계 S1000은 한 번만 수행될 수 있다.In one embodiment, the step S1000 of registering the first IoT device 200 in the platform server 300 may be performed once at the time of the first operation of the first IoT device 200. [ For example, in the first operation, such as when the first IoT device 200 is purchased by the owner or when the first IoT device 200 is first driven after the first IoT device 200 is initialized , Step S1000 can be performed only once.

일 실시예에서, 플랫폼 서버(300)와의 통신에 기초하여 제1 IoT 기기(200)를 인증하는 단계(S2000)는, 제1 IoT 기기(200)가 수행 가능한 복수의 동작들 중 적어도 하나가 요청될 때마다 수행될 수 있다. 예를 들어, 제1 IoT 기기(200)가 보일러이고 상기 보일러가 수행 가능한 동작들이 온/오프 및 온도 조절인 경우에, 단계 S2000은 외부의 장치 또는 단말기가 제1 IoT 기기(200)인 상기 보일러에 상기 온/오프 또는 상기 온도 조절과 같은 목표 동작을 요청할 때마다 수행될 수 있다.In one embodiment, the step S2000 of authenticating the first IoT device 200 based on the communication with the platform server 300 is performed when at least one of the plurality of operations that the first IoT device 200 can perform is a request Can be performed each time. For example, if the first IoT device 200 is a boiler and the operations that the boiler can perform are on / off and temperature control, step S2000 determines whether the external device or terminal is the first IoT device 200, Such as the on / off or the temperature control, to the target device.

일 실시예에서, 소유자 단말기(100) 또는 상기 소유자의 다른 장치 또는 단말기가 제1 IoT 기기(200)에 상기 목표 동작을 요청할 수 있다. 다른 실시예에서, 상기 소유자가 가지고 있지 않은 장치 또는 단말기(예를 들어, 사용자 단말기)가 제1 IoT 기기(200)에 상기 목표 동작을 요청할 수 있다. 다시 말하면, 제1 IoT 기기(200)를 가지고 있는 상기 소유자와 제1 IoT 기기(200)를 이용하고자 하는 사용자가 동일할 수도 있고 서로 다를 수도 있다.In one embodiment, the owner terminal 100 or another device or terminal of the owner may request the first IoT device 200 for the target action. In another embodiment, a device or terminal (e.g., a user terminal) not owned by the owner may request the first IoT device 200 for the target action. In other words, the owner having the first IoT device 200 may be the same as or different from the user who wants to use the first IoT device 200.

IoT 기기가 IoT 서비스를 제공하기 위해서는, IoT 기기의 제조 및 구매 이후에 IoT 네트워크 환경 또는 서비스 플랫폼 환경에 설치 및 등록되어야 한다. 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법 및 시스템에서, 상기 등록 및 인증 절차에 의해 상기 소유자가 IoT 기기(200)를 적법하게 소유하고 있음이 보장(즉, IoT 기기(200)에 대한 신뢰성이 보장)될 수 있으며, 따라서 IoT 기기(200)를 사용하는데 있어서 효율적인 인증, 인가, 프라이버시 관리 등을 제공할 수 있다.In order for IoT devices to provide IoT services, they must be installed and registered in the IoT network environment or service platform environment after manufacture and purchase of IoT devices. In a method and system for establishing a relationship between an IoT device and an owner in accordance with embodiments of the present invention, it is assured that the owner legally owns the IoT device 200 by the registration and authentication procedure (i.e., The reliability of the device 200 can be guaranteed), and thus it is possible to provide efficient authentication, authorization, privacy management, etc. in using the IoT device 200.

도 3은 도 2의 IoT 기기를 등록하는 단계의 일 예를 나타내는 순서도이다. 도 4는 플랫폼 서버에 IoT 기기를 등록하는 동작을 설명하기 위한 도면이다.3 is a flowchart showing an example of a step of registering the IoT device of FIG. 4 is a diagram for explaining an operation of registering an IoT device on a platform server.

도 1, 2, 3 및 4를 참조하면, 플랫폼 서버(300)에 IoT 기기를 등록하는데 있어서(단계 S1000), IoT 기기를 등록하는데 사용되는 등록 트랜잭션(transaction) 핸들이 요청 및 생성될 수 있다(단계 S1100). 예를 들어, 소유자 단말기(100)는 플랫폼 서버(300)에 제1 IoT 기기(200)를 등록하는데 사용되는 제1 등록 트랜잭션 핸들(RTH)을 요청할 수 있고(도 4의 1110), 플랫폼 서버(300)는 제1 등록 트랜잭션 핸들(RTH)을 생성할 수 있다(도 4의 1120).1, 2, 3 and 4, in registering an IoT device with the platform server 300 (step S1000), a registration transaction handle used to register the IoT device may be requested and generated Step S1100). For example, the owner terminal 100 may request a first registration transaction handle (RTH) used to register the first IoT device 200 with the platform server 300 (1110 of FIG. 4) 300) may generate a first registration transaction handle (RTH) (1120 in FIG. 4).

구체적으로, 소유자 단말기(100)는 플랫폼 서버(300)에 등록 트랜잭션 핸들 요청 메시지(RTH_REQ)를 전송할 수 있다. 플랫폼 서버(300)는 등록 트랜잭션 핸들 요청 메시지(RTH_REQ)에 기초하여 제1 IoT 기기(200)에 대한 제1 등록 트랜잭션 핸들 정보를 생성할 수 있다. 예를 들어, 상기 제1 등록 트랜잭션 핸들 정보는 제1 트랜잭션 ID(T_ID), 소유자 단말기(100)에 대한 소유자 ID(Identity 또는 Identification) 및 제1 등록 트랜잭션 핸들(RTH)의 유효 시간을 나타내는 제1 시간 정보를 포함할 수 있다. 제1 트랜잭션 ID(T_ID)는 임의의(random) 값일 수 있고, 상기 소유자 ID는 상기 소유자 및/또는 소유자 단말기(100)와 관련될 수 있다. 플랫폼 서버(300)는 상기 제1 등록 트랜잭션 핸들 정보를 트랜잭션 데이터베이스(310)에 저장할 수 있다.In particular, the owner terminal 100 may send a registration transaction handle request message (RTH_REQ) to the platform server 300. [ Platform server 300 may generate first registration transaction handle information for first IoT device 200 based on a registration transaction handle request message (RTH_REQ). For example, the first registration transaction handle information includes a first transaction ID (T_ID), an owner ID (Identity or Identification) for the owner terminal 100, and a first registration transaction handle Time information. The first transaction ID (T_ID) may be a random value, and the owner ID may be associated with the owner and / or owner terminal (100). The platform server 300 may store the first registration transaction handle information in the transaction database 310.

플랫폼 서버(300)는 등록 트랜잭션 핸들 요청 메시지(RTH_REQ)에 기초하여 제1 등록 트랜잭션 핸들(RTH)을 생성할 수 있다. 예를 들어, 제1 등록 트랜잭션 핸들(RTH)은 제1 트랜잭션 ID(T_ID), 플랫폼 서버(300)의 위치를 나타내는 제1 URL(Uniform Resource Locator)(예를 들어, 플랫폼 서버(300)의 어드레스), 및 제2 URL(예를 들어, 추후 등록 요청을 전송하기 위한 플랫폼 서버(300)의 리턴 URL)을 포함할 수 있다.Platform server 300 may generate a first registration transaction handle (RTH) based on a registration transaction handle request message (RTH_REQ). For example, the first registration transaction handle (RTH) includes a first transaction ID (T_ID), a first URL (Uniform Resource Locator) indicating the location of the platform server 300 ), And a second URL (e.g., the return URL of the platform server 300 for sending a later registration request).

소유자 단말기(100)의 요청에 대한 결과로서, 플랫폼 서버(300)는 소유자 단말기(100)에 제1 등록 트랜잭션 핸들(RTH)을 돌려줄 수 있다(return).As a result of the request of the owner terminal 100, the platform server 300 may return a first registration transaction handle (RTH) to the owner terminal 100.

상기 등록 트랜잭션 핸들의 생성 이후에, 상기 등록 트랜잭션 핸들이 전송될 수 있고(단계 S1300), IoT 기기의 등록이 요청될 수 있으며(단계 S1500), 바인딩 및 키 교환이 수행될 수 있다. 이 때, 보안 채널들이 형성될 수 있다(단계 S1200 및 S1400).After the creation of the registration transaction handle, the registration transaction handle may be transmitted (step S1300), registration of the IoT device may be requested (step S1500), and binding and key exchange may be performed. At this time, secure channels may be formed (steps S1200 and S1400).

구체적으로, 소유자 단말기(100)는 제1 IoT 기기(200)에 제1 등록 트랜잭션 핸들(RTH)을 전송할 수 있다(도 4의 1310). 제1 IoT 기기(200)는 제1 등록 트랜잭션 핸들(RTH)에 기초하여 플랫폼 서버(300)에 등록 요청 메시지(RREQ)를 전송할 수 있다(도 4의 1510). 예를 들어, 등록 요청 메시지(RREQ)는 제1 트랜잭션 ID(T_ID) 및 제1 IoT 기기(200)의 제1 물리적 기기 ID(PD_ID)(예를 들어, 제1 IoT 기기(200)의 제조 시에 부여된 시리얼 넘버)를 포함할 수 있다. 제1 IoT 기기(200)는 제1 등록 트랜잭션 핸들(RTH)에 기초하여 내재된 제1 물리적 기기 ID(PD_ID)를 추출할 수 있다. 등록 요청 메시지(RREQ)에 포함되는 제1 트랜잭션 ID(T_ID)는 제1 등록 트랜잭션 핸들(RTH)로부터 획득될 수 있다. 제1 등록 트랜잭션 핸들(RTH)에 포함되는 상기 제2 URL에 기초하여 등록 요청 메시지(RREQ)가 플랫폼 서버(300)에 전송될 수 있다.Specifically, the owner terminal 100 may send a first registration transaction handle (RTH) to the first IoT device 200 (1310 of FIG. 4). The first IoT device 200 may send a registration request message RREQ to the platform server 300 based on the first registration transaction handle RTH (1510 of FIG. 4). For example, the registration request message RREQ may include a first transaction ID (T_ID) and a first physical device ID (PD_ID) of the first IoT device 200 (e.g., The serial number assigned to the < / RTI > The first IoT device 200 may extract the embedded first physical device ID (PD_ID) based on the first registered transaction handle (RTH). The first transaction ID (T_ID) included in the registration request message (RREQ) can be obtained from the first registration transaction handle (RTH). A registration request message RREQ may be transmitted to the platform server 300 based on the second URL included in the first registration transaction handle RTH.

일 실시예에서, 소유자 단말기(100)와 제1 IoT 기기(200) 사이에 제1 보안 채널이 형성될 수 있고(도 4의 1210), 상기 제1 보안 채널을 통해 제1 등록 트랜잭션 핸들(RTH)이 전송될 수 있다. 예를 들어, 상기 제1 보안 채널은 블루투스, NFC, CoAP, 와이파이, 지그비 등과 같은 임의의 근거리 통신 방식에 기초하여 형성될 수 있다.In one embodiment, a first secure channel may be formed between the owner terminal 100 and the first IoT device 200 (1210 of FIG. 4), and a first registration transaction handle (RTH May be transmitted. For example, the first secure channel may be formed based on any short-range communication scheme such as Bluetooth, NFC, CoAP, Wi-Fi, ZigBee,

일 실시예에서, 제1 IoT 기기(200)와 플랫폼 서버(300) 사이에 제2 보안 채널이 형성될 수 있고(도 4의 1410), 상기 제2 보안 채널을 통해 등록 요청 메시지(RREQ)가 전송될 수 있다. 예를 들어, 상기 제2 보안 채널은 LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM 등과 같은 임의의 원거리 통신 방식에 기초하여 형성될 수 있다.In one embodiment, a second secure channel may be established between the first IoT device 200 and the platform server 300 (1410 of FIG. 4), and a registration request message RREQ may be sent via the second secure channel Lt; / RTI > For example, the second secure channel may be formed based on any telecommunication scheme such as LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro,

일 실시예에서, 상기 제1 및 제2 보안 채널들 각각은 익명 방식의 DTLS(Datagram Transport Layer Security) 채널일 수 있다.In one embodiment, each of the first and second secure channels may be an anonymous DTLS (Datagram Transport Layer Security) channel.

플랫폼 서버(300)는 등록 요청 메시지(RREQ)에 기초하여 제1 IoT 기기(200)와 소유자 단말기(100)를 바인딩(binding)할 수 있다(도 4의 1610).The platform server 300 may bind the first IoT device 200 and the owner terminal 100 based on the registration request message RREQ (1610 of FIG. 4).

구체적으로, 플랫폼 서버(300)는 등록 요청 메시지(RREQ)에 포함된 제1 트랜잭션 ID(T_ID)를 기초로 트랜잭션 데이터베이스(310)를 검색하여 상기 소유자 ID 및 상기 제1 시간 정보를 획득할 수 있다. 플랫폼 서버(300)는 현재 시점(즉, 등록 요청 메시지(RREQ)가 수신된 시점)이 제1 등록 트랜잭션 핸들(RTH)의 상기 유효 시간 범위 이내인지 확인하고, 상기 현재 시점이 상기 유효 시간 범위 이내인 경우에 제1 IoT 기기(200)의 제1 기기 ID(D_ID)를 생성할 수 있다. 제1 기기 ID(D_ID)는 임의의 값일 수 있다.Specifically, the platform server 300 can acquire the owner ID and the first time information by searching the transaction database 310 based on the first transaction ID (T_ID) included in the registration request message RREQ . The platform server 300 checks whether the present time (i.e., the time when the registration request message RREQ is received) is within the valid time range of the first registered transaction handle (RTH), and if the current time is within the valid time range The first device ID (D_ID) of the first IoT device 200 can be generated. The first device ID (D_ID) may be any value.

플랫폼 서버(300)와 제1 IoT 기기(200)가 상호 연동하여 제1 공유키(PSK1) 및 제2 공유키(PSK2)를 각각 설정할 수 있다(도 4의 1710).The platform server 300 and the first IoT device 200 may interwork with each other to set the first shared key PSK1 and the second shared key PSK2 respectively (1710 of FIG. 4).

구체적으로, 플랫폼 서버(300)는 등록 요청 메시지(RREQ)에 포함되는 제1 물리적 기기 ID(PD_ID) 및 새롭게 생성된 제1 기기 ID(D_ID)에 기초하여 상기 제1 공유키(PSK1)를 유도할 수 있고, 상기 제1 공유키(PSK1)를 기초로 제1 체크 데이터(NONCE)를 암호화하여 제2 체크 데이터(CHKD)를 생성할 수 있으며, 제1 기기 ID(D_ID) 및 제2 체크 데이터(CHKD)를 제1 IoT 기기(200)에 돌려줄 수 있다. 예를 들어, 상기 제1 체크 데이터(NONCE)는 임의의 값일 수 있고, 암호화된 제1 체크 데이터(EN_NONCE)는 "Encrypt(NONCE)PSK1"과 같이 정의될 수 있으며, 제2 체크 데이터(CHKD)는 "EN_NONCE + HMAC(EN_NONCE)PSK1"과 같이 정의될 수 있다. HMAC은 Hash-based Message Authentication Code의 약자이며, "HMAC(EN_NONCE)PSK1"은 암호화 과정에서 생성된 제1 해시 값일 수 있다.Specifically, the platform server 300 generates the first shared key PSK1 based on the first physical device ID (PD_ID) included in the registration request message RREQ and the newly generated first device ID D_ID And may generate the second check data CHKD by encrypting the first check data NONCE based on the first shared key PSK1 and may generate the second check data CHKD based on the first device ID D_ID and the second check data CHKD, (CHKD) to the first IoT device (200). For example, the first check data NONCE may be an arbitrary value, the encrypted first check data EN_NONCE may be defined as "Encrypt (NONCE) PSK1 & quot ;, the second check data CHKD may be & Can be defined as "EN_NONCE + HMAC (EN_NONCE) PSK1 ". HMAC is an abbreviation of Hash-based Message Authentication Code, and "HMAC (EN_NONCE) PSK1 " may be a first hash value generated in the encryption process.

제1 IoT 기기(200)는 제1 물리적 기기 ID(PD_ID) 및 리턴된 제1 기기 ID(D_ID)에 기초하여 상기 제2 공유키(PSK2)를 유도할 수 있고, 상기 제2 공유키(PSK2)에 기초하여 제2 체크 데이터(CHKD)를 검증할 수 있다. 예를 들어, 제1 IoT 기기(200)는 상기 제2 공유키(PSK2)를 기초로 제2 체크 데이터(CHKD)를 복호화할 수 있다. 제2 체크 데이터(CHKD)를 복호화하여 획득된 체크 데이터(DE_NONCE)는 "Decrypt(EN_NONCE)PSK2"와 같이 정의될 수 있다. 제1 IoT 기기(200)는 상기 제1 해시 값인 "HMAC(EN_NONCE)PSK1"과 복호화 과정에서 생성된 제2 해시 값인 "HMAC(DE_NONCE)PSK2"를 비교할 수 있고, 상기 제1 해시 값과 상기 제2 해시 값이 실질적으로 동일한 경우에 상기 공유키 설정이 완료될 수 있다. 예를 들어, 설정 완료된 상기 제1 공유키(PSK1)와 상기 제2 공유키(PSK2)는 실질적으로 동일할 수 있다.The first IoT device 200 may derive the second shared key PSK2 based on the first physical device ID PD_ID and the returned first device ID D_ID and the second shared key PSK2 The second check data CHKD can be verified. For example, the first IoT device 200 may decrypt the second check data CHKD based on the second shared key PSK2. The check data DE_NONCE obtained by decoding the second check data CHKD may be defined as "Decrypt (EN_NONCE) PSK2 ". The first IoT device 200 can compare the first hash value "HMAC (EN_NONCE) PSK1 " with the second hash value "HMAC (DE_NONCE) PSK2 " generated in the decoding process, 2 < / RTI > hash values are substantially the same. For example, the first shared key (PSK1) and the second shared key (PSK2), which have been set up, may be substantially the same.

상기 바인딩이 완료된 경우에(단계 S1600: 예), 예를 들어, 상기 소유자 ID 및 상기 제1 시간 정보가 정상적으로 획득되고 상기 현재 시점이 상기 유효 시간 범위 이내인 경우에, 그리고 상기 키 교환이 완료된 경우에(단계 S1700: 예), 예를 들어, 제2 체크 데이터(CHKD)에 대한 검증 동작이 완료(즉, 성공)된 경우에, IoT 기기의 등록이 완료될 수 있다(단계 S1800). 구체적으로, 제1 IoT 기기(200)는 제1 기기 ID(D_ID) 및 상기 제2 공유키(PSK2)를 저장할 수 있고(도 4의 1810), 제1 IoT 기기(200)는 플랫폼 서버(300)에 등록 완료 메시지(RCPL)를 전송할 수 있다. 플랫폼 서버(300)는 등록 완료 메시지(RCPL)에 기초하여 제1 기기 ID(D_ID), 상기 소유자 ID, 제1 물리적 기기 ID(PD_ID) 및 상기 제1 공유키(PSK1)를 기기 데이터베이스(320)에 저장할 수 있다. 따라서, 제1 IoT 기기(200)가 플랫폼 서버(300)에 성공적으로 등록될 수 있다.If the binding is completed (step S1600: YES), for example, if the owner ID and the first time information are normally acquired and the current time is within the valid time range, and if the key exchange is completed The registration of the IoT device can be completed (step S1800), for example, when the verification operation for the second check data CHKD is completed (i.e., succeeded) (step S1700: YES). 4). The first IoT device 200 may store the first device ID D_ID and the second shared key PSK2 (FIG. 4, 1810) (RCPL). The platform server 300 transmits the first device ID D_ID, the owner ID, the first physical device ID PD_ID and the first shared key PSK1 to the device database 320 based on the registration completion message RCPL. Lt; / RTI > Accordingly, the first IoT device 200 can be successfully registered in the platform server 300. [

상기 바인딩이 완료되지 못한 경우에(단계 S1600: 아니오), 예를 들어, 상기 소유자 ID 및 상기 제1 시간 정보가 정상적으로 획득되지 않거나 상기 현재 시점이 상기 유효 시간 범위를 초과한 경우에, 또는 상기 키 교환이 완료되지 못한 경우에(단계 S1700: 아니오), 예를 들어, 제2 체크 데이터(CHKD)에 대한 검증 동작이 실패한 경우에, IoT 기기에 대한 등록 절차(즉, 단계 S1000)가 종료될 수 있다. 도시하지는 않았지만, 상기 바인딩이 완료되지 못한 경우에(단계 S1600: 아니오), 실시예에 따라서 상기 등록 트랜잭션 핸들이 다시 요청 및 생성될 수 있고, 상기 키 교환이 완료되지 못한 경우에(단계 S1700: 아니오), 실시예에 따라서 상기 키 교환이 다시 수행될 수도 있다.If the binding is not completed (step S1600: NO), for example, if the owner ID and the first time information are not normally acquired or the current time exceeds the valid time range, If the exchange has not been completed (step S1700: NO), for example, if the verification operation for the second check data CHKD fails, the registration procedure for the IoT device (i.e., step S1000) have. If the binding is not completed (step S1600: NO), the registration transaction handle can be requested and generated again according to the embodiment, and if the key exchange is not completed (step S1700: NO) ), The key exchange may be performed again according to the embodiment.

실시예에 따라서, 트랜잭션 데이터베이스(310) 및 기기 데이터베이스(320)의 적어도 일부는 하나의 저장소로 구현되거나 분리된 저장소들로 구현될 수 있고, 플랫폼 서버(300)의 내부 또는 외부에 배치될 수 있다.Depending on the embodiment, at least some of the transactional database 310 and the instrumental database 320 may be implemented as a single repository or as separate repositories and may be located within or outside the platform server 300 .

도 5는 도 2의 IoT 기기를 인증하는 단계의 일 예를 나타내는 순서도이다. 도 6은 플랫폼 서버와의 통신에 기초하여 IoT 기기를 인증하는 동작을 설명하기 위한 도면이다.5 is a flowchart showing an example of the step of authenticating the IoT device of FIG. 6 is a diagram for explaining an operation of authenticating an IoT device based on communication with a platform server.

도 1, 2, 5 및 6을 참조하면, IoT 기기에 대한 등록 이후에, 소유자 단말기(100) 또는 사용자 단말기(미도시)로부터의 요청에 기초하여 IoT 기기에 대한 인증이 수행될 수 있다. 예를 들어, 제1 IoT 기기(200) 및 플랫폼 서버(300)는 키 교환을 수행할 수 있다(도 6의 2210). 이 때, 보안 채널이 형성될 수 있다(단계 S2100).1, 2, 5 and 6, after registration for the IoT device, authentication for the IoT device may be performed based on a request from the owner terminal 100 or a user terminal (not shown). For example, the first IoT device 200 and the platform server 300 may perform a key exchange (2210 in FIG. 6). At this time, a secure channel can be formed (step S2100).

구체적으로, 제1 IoT 기기(200)는 임의의 키인 제1 부분키(K1)를 발생할 수 있다. 예를 들어, 상기 제1 부분키(K1)는 약 128 비트의 랜덤키일 수 있다. 제1 IoT 기기(200)는 상기 등록 절차에서 저장된 상기 제2 공유키(PSK2)를 기초로 상기 제1 부분키(K1)를 암호화하여 제1 데이터(CHKDA)를 생성할 수 있고, 플랫폼 서버(300)에 제1 기기 ID(D_ID) 및 제1 데이터(CHKDA)를 전송하여 인증을 요청할 수 있다. 예를 들어, 암호화된 제1 부분키(EN_K1)는 "Encrypt(K1)PSK2"와 같이 정의될 수 있고, 제1 데이터(CHKDA)는 "EN_K1 + HMAC(EN_K1)PSK2"와 같이 정의될 수 있다.Specifically, the first IoT device 200 can generate the first partial key K1, which is an arbitrary key. For example, the first partial key K1 may be a random key of about 128 bits. The first IoT device 200 may generate the first data CHKDA by encrypting the first partial key K1 based on the second shared key PSK2 stored in the registration procedure, 300 to transmit the first device ID (D_ID) and the first data (CHKDA) to request authentication. For example, the encrypted first partial key EN_K1 may be defined as "Encrypt (K1) PSK2 " and the first data CHKDA may be defined as "EN_K1 + HMAC (EN_K1) PSK2 " .

플랫폼 서버(300)는 수신된 제1 기기 ID(D_ID)를 기초로 기기 데이터베이스(320)를 검색하여 제1 기기 ID(D_ID)와 매칭되는(matching) 상기 제1 공유키(PSK1)를 획득할 수 있다. 플랫폼 서버(300)는 상기 제1 공유키(PSK1)에 기초하여 수신된 제1 데이터(CHKDA)를 검증할 수 있다. 예를 들어, 플랫폼 서버(300)는 상기 제1 공유키(PSK1)를 기초로 제1 데이터(CHKDA)를 복호화할 수 있다. 제1 데이터(CHKDA)를 복호화하여 획득된 데이터(DE_K1)는 "Decrypt(EN_K1)PSK1"과 같이 정의될 수 있다. 플랫폼 서버(300)는 제1 IoT 기기(200)에서 수신된 해시 값 "HMAC(EN_K1)PSK2"와 복호화 과정에서 생성된 해시 값 "HMAC(DE_K1)PSK1"을 비교하여 제1 데이터(CHKDA)를 검증할 수 있다. 예를 들어, 상기 해시 값들이 실질적으로 동일한 경우에 검증이 성공될 수 있다.The platform server 300 searches the device database 320 based on the received first device ID D_ID to acquire the first shared key PSK1 matching the first device ID D_ID . The platform server 300 may verify the received first data CHKDA based on the first shared key PSK1. For example, the platform server 300 may decrypt the first data CHKDA based on the first shared key PSK1. The data DE_K1 obtained by decoding the first data CHKDA can be defined as "Decrypt (EN_K1) PSK1 ". The platform server 300 compares the first hash value received in the IoT device (200) "HMAC (EN_K1) PSK2" and the hash value generated in the decoding process, "HMAC (DE_K1) PSK1" the first data (CHKDA) Can be verified. For example, verification may be successful if the hash values are substantially the same.

플랫폼 서버(300)는 임의의 키인 제2 부분키(K2)를 발생할 수 있다. 예를 들어, 상기 제1 부분키(K1)와 동일하게, 상기 제2 부분키(K2)는 약 128 비트의 랜덤키일 수 있다. 플랫폼 서버(300)는 상기 제1 공유키(PSK1)를 기초로 상기 제2 부분키(K2)를 암호화하여 제2 데이터(CHKDB)를 생성할 수 있고, 인증 요청에 응답하여 제1 IoT 기기(200)에 제2 데이터(CHKDB)를 돌려줄 수 있다. 예를 들어, 암호화된 제2 부분키(EN_K2)는 "Encrypt(K2)PSK1"과 같이 정의될 수 있고, 제2 데이터(CHKDB)는 "EN_K2 + HMAC(EN_K2)PSK1"과 같이 정의될 수 있다.Platform server 300 may generate a second partial key K2, which is an arbitrary key. For example, like the first partial key K1, the second partial key K2 may be a random key of about 128 bits. The platform server 300 may generate the second data CHKDB by encrypting the second partial key K2 based on the first shared key PSK1 and may generate the second data CHKDB by using the first IoT device 200 to the second data (CHKDB). For example, the encrypted second partial key EN_K2 may be defined as "Encrypt (K2) PSK1 " and the second data CHKDB may be defined as "EN_K2 + HMAC (EN_K2) PSK1 " .

제1 IoT 기기(200)는 상기 제2 공유키(PSK2)에 기초하여 수신된 제2 데이터(CHKDB)를 검증할 수 있다. 예를 들어, 제1 IoT 기기(200)는 상기 제2 공유키(PSK2)를 기초로 제2 데이터(CHKDB)를 복호화할 수 있다. 제2 데이터(CHKDB)를 복호화하여 획득된 데이터(DE_K2)는 "Decrypt(EN_K2)PSK2"와 같이 정의될 수 있다. 제1 IoT 기기(200)는 플랫폼 서버(300)에서 수신된 해시 값 "HMAC(EN_K2)PSK1"과 복호화 과정에서 생성된 해시 값 "HMAC(DE_K2)PSK2"를 비교하여 제2 데이터(CHKDB)를 검증할 수 있다. 예를 들어, 상기 해시 값들이 실질적으로 동일한 경우에 검증이 성공될 수 있다. 도시하지는 않았지만, 상기 검증 동작이 완료된 경우에, 인증 완료 메시지가 전송될 수 있다.The first IoT device 200 may verify the second data (CHKDB) received based on the second shared key (PSK2). For example, the first IoT device 200 may decrypt the second data CHKDB based on the second shared key PSK2. The data DE_K2 obtained by decoding the second data CHKDB can be defined as "Decrypt (EN_K2) PSK2 ". Claim 1 IoT device 200 is a platform server 300, the hash value "HMAC (EN_K2) PSK1"" HMAC (DE_K2) PSK2" and the hash value generated in the decoding process of the second data (CHKDB) by comparing the received at Can be verified. For example, verification may be successful if the hash values are substantially the same. Although not shown, when the verification operation is completed, an authentication completion message can be transmitted.

일 실시예에서, 플랫폼 서버(300)의 공개키에 기초하여 제1 IoT 기기(200)와 플랫폼 서버(300) 사이에 제3 보안 채널이 형성될 수 있고(도 6의 2110), 상기 제3 보안 채널을 통해 제1 기기 ID(D_ID), 제1 데이터(CHKDA) 및 제2 데이터(CHKDB)가 전송될 수 있다. 예를 들어, 상기 제3 보안 채널은 LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, GSM 등과 같은 임의의 원거리 통신 방식에 기초하여 형성될 수 있다. 일 실시예에서, 상기 제3 보안 채널은 익명 방식의 DTLS 채널일 수 있다.In one embodiment, a third secure channel may be formed between the first IoT device 200 and the platform server 300 based on the public key of the platform server 300 (2110 of FIG. 6) The first device ID (D_ID), the first data (CHKDA), and the second data (CHKDB) may be transmitted through the secure channel. For example, the third secure channel may be formed based on any telecommunication scheme such as LTE, LTE-A, CDMA, WCDMA, UMTS, WiBro, In one embodiment, the third secure channel may be an anonymous DTLS channel.

상기 키 교환이 완료된 경우에(단계 S2200: 예), 예를 들어, 제1 데이터(CHKDA) 및 제2 데이터(CHKDB)에 대한 검증 동작이 모두 완료(즉, 성공)된 경우에, 상기 인증 완료 메시지에 기초하여 세션(session)키(SE_KEY)가 설정될 수 있다(단계 S2300). 구체적으로, 제1 IoT 기기(200) 및 플랫폼 서버(300) 각각은 상호 교환된 상기 제1 부분키(K1) 및 상기 제2 부분키(K2)를 결합하여 상기 세션키(SE_KEY)를 설정할 수 있다. 예를 들어, 상기 세션키(SE_KEY)는 "HASH(K1 || K2)"와 같이 정의될 수 있다. HASH는 해시 함수를 나타낼 수 있다. 상기 세션키(SE_KEY)에 기초하여 제1 IoT 기기(200)와 플랫폼 서버(300)가 통신할 수 있다. 실시예에 따라서, 상기 세션키(SE_KEY)는 상기 인증 절차가 수행될 때마다 생성될 수도 있고, 상기 인증 절차의 횟수를 카운트하여 상기 인증 절차의 횟수가 미리 정해진 횟수에 도달할 때마다 생성될 수도 있다.If the verification of the first data (CHKDA) and the verification of the second data (CHKDB) is completed (i.e., succeeded), for example, in the case where the key exchange is completed (step S2200: Yes) A session key SE_KEY may be set based on the message (step S2300). Specifically, each of the first IoT device 200 and the platform server 300 may combine the mutually exchanged first partial key K1 and the second partial key K2 to set the session key SE_KEY have. For example, the session key SE_KEY may be defined as "HASH (K1 || K2) ". HASH can represent a hash function. The first IoT device 200 and the platform server 300 can communicate based on the session key SE_KEY. According to the embodiment, the session key SE_KEY may be generated each time the authentication procedure is performed, and may be generated every time the number of times of the authentication procedure reaches a predetermined number by counting the number of times of the authentication procedure have.

상기 키 교환이 완료되지 못한 경우에(단계 S2200: 아니오), 예를 들어, 제1 데이터(CHKDA) 또는 제2 데이터(CHKDB)에 대한 검증 동작이 실패한 경우에, IoT 기기에 대한 인증 절차(즉, 단계 S2000)가 종료될 수 있다. 도시하지는 않았지만, 상기 키 교환이 완료되지 못한 경우에(단계 S2200: 아니오), 실시예에 따라서 상기 키 교환이 다시 수행될 수도 있다.If the verification of the first data (CHKDA) or the second data (CHKDB) is unsuccessful, the authentication procedure for the IoT device (i. E., Step S2200: , Step S2000) may end. Although not shown, if the key exchange has not been completed (step S2200: NO), the key exchange may be performed again according to the embodiment.

이상, 하나의 IoT 기기에 기초하여 본 발명의 실시예들에 따른 IoT 기기와 소유자 사이의 관계 확립을 위한 방법 및 시스템을 설명하였으나, 본 발명의 실시예들은 복수의 IoT 기기들을 포함하는 경우에도 적용될 수 있다. 이 때, 하나의 소유자 단말기에 의해 두 개 이상의 IoT 기기들이 제어될 수도 있다.Although the method and system for establishing the relationship between the IoT device and the owner according to the embodiments of the present invention have been described based on one IoT device, the embodiments of the present invention may be applied to a case including a plurality of IoT devices . At this time, two or more IoT devices may be controlled by one owner terminal.

본 발명의 실시예들에 포함되는 소유자 단말기(100), IoT 기기(200) 및 플랫폼 서버(300)의 일부 또는 전부는 프로그램(즉, 소프트웨어) 또는 하드웨어의 형태로 구현될 수 있다. 예를 들어, 소프트웨어의 형태로 구현되는 경우에, 소유자 단말기(100), IoT 기기(200) 및 플랫폼 서버(300) 각각은, 상술한 동작들을 수행하기 위한 프로그램 루틴들(program routines) 또는 명령어들(instructions)을 저장하는 메모리, 및 상기 프로그램 루틴들 또는 상기 명령어들의 실행을 제어하는 프로세서를 포함할 수 있다. 하드웨어의 형태로 구현되는 경우에, 소유자 단말기(100), IoT 기기(200) 및 플랫폼 서버(300)의 구성요소들의 일부 또는 전부는 프로세서에 포함될 수 있다.Some or all of the owner terminal 100, IoT device 200, and platform server 300 included in embodiments of the present invention may be implemented in the form of a program (i.e., software) or hardware. Each of the owner terminal 100, the IOT device 200 and the platform server 300 may be provided with program routines or instructions for performing the above-described operations, for example, in the form of software. a memory for storing instructions, and a processor for controlling the execution of the program routines or the instructions. When implemented in the form of hardware, some or all of the components of owner terminal 100, IoT device 200, and platform server 300 may be included in the processor.

본 발명의 실시예들은 시스템, 방법, 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터로 판독 가능한 프로그램 코드를 포함하는 제품 등의 형태로 구현될 수 있다. 상기 컴퓨터로 판독 가능한 프로그램 코드는 다양한 컴퓨터 또는 다른 데이터 처리 장치의 프로세서로 제공될 수 있다. 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 판독 가능한 신호 매체 또는 컴퓨터로 판독 가능한 기록 매체일 수 있다. 상기 컴퓨터로 판독 가능한 기록 매체는 명령어 실행 시스템, 장비 또는 장치 내에 또는 이들과 접속되어 프로그램을 저장하거나 포함할 수 있는 임의의 유형적인 매체일 수 있다.Embodiments of the present invention may be implemented in the form of a system, a method, an article of manufacture including computer readable program code stored on a computer readable medium, and the like. The computer readable program code may be provided to a processor of various computers or other data processing apparatuses. The computer-readable medium may be a computer-readable signal medium or a computer-readable recording medium. The computer-readable recording medium may be any type of medium that can store or contain a program in or in communication with the instruction execution system, equipment, or device.

본 발명은 IoT를 구현하기 위한 다양한 장치 및 시스템에 적용될 수 있으며, 만물인터넷(Internet of Everything: IoE), 센서 네트워크(Sensor Network), 사물 통신(Machine to Machine, M2M), MTC(Machine Type Communication) 등과 상기 기술을 기반으로 하는 지능형 서비스(스마트 홈, 스마트 빌딩, 스마트 시티, 스마트 카 혹은 커넥티드 카, 헬스 케어, 디지털 교육, 소매업, 보안 및 안전 관련 서비스 등)에 다양하게 활용될 수 있다.The present invention can be applied to various devices and systems for implementing IoT, and can be applied to various devices and systems for implementing IoT such as Internet of Everything (IoE), Sensor Network, Machine to Machine (M2M), Machine Type Communication (MTC) Smart home, smart building, smart city, smart car or connected car, health care, digital education, retail, security and safety related services based on the above technologies.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술분야의 숙련된 당업자는 하기의 특허청구범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims. It will be understood.

Claims (8)

플랫폼 서버가 소유자 단말기의 요청에 기초하여 제1 사물인터넷(Internet of Things: IoT) 기기를 위한 제1 등록 트랜잭션 핸들을 생성하고, 상기 제1 IoT 기기가 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 플랫폼 서버에 등록 요청 메시지를 전송하고, 상기 플랫폼 서버가 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기와 상기 소유자 단말기를 바인딩(binding)하며, 상기 플랫폼 서버와 상기 제1 IoT 기기가 상호 연동하여 제1 공유키 및 제2 공유키를 각각 설정함으로써, 상기 플랫폼 서버에 상기 제1 IoT 기기를 등록하는 단계; 및
상기 제1 IoT 기기가 제1 부분키를 발생하고 상기 제2 공유키를 기초로 상기 제1 부분키를 암호화하여 제1 데이터를 생성하고, 상기 플랫폼 서버가 제2 부분키를 발생하고 상기 제1 공유키에 기초하여 상기 제1 데이터를 검증하고 상기 제1 공유키를 기초로 상기 제2 부분키를 암호화하여 제2 데이터를 생성하고, 상기 제1 IoT 기기가 상기 제2 공유키에 기초하여 상기 제2 데이터를 검증하며, 상기 제1 부분키 및 상기 제2 부분키를 결합하여 세션키를 설정함으로써, 상기 제1 IoT 기기를 인증하는 단계를 포함하고,
상기 제1 IoT 기기를 등록하는 단계에 있어서,
상기 소유자 단말기는 상기 플랫폼 서버에 등록 트랜잭션 핸들 요청 메시지를 전송하고,
상기 플랫폼 서버는 상기 등록 트랜잭션 핸들 요청 메시지에 기초하여 제1 등록 트랜잭션 핸들 정보를 생성하고, 상기 소유자 단말기에 상기 제1 등록 트랜잭션 핸들을 돌려주며,
상기 제1 등록 트랜잭션 핸들 정보는 제1 트랜잭션 ID, 상기 소유자 단말기에 대한 소유자 ID 및 상기 제1 등록 트랜잭션 핸들의 유효 시간을 나타내는 제1 시간 정보를 포함하며,
상기 제1 등록 트랜잭션 핸들은 상기 제1 트랜잭션 ID, 상기 플랫폼 서버의 위치를 나타내는 제1 URL, 및 제2 URL을 포함하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
Wherein the platform server generates a first registration transaction handle for a first Internet of Things (IoT) device based on a request from the owner terminal, and the first IoT device generates, Wherein the platform server binds the first IoT device and the owner terminal based on the registration request message, and the platform server and the first IoT device cooperate with each other by inter- Registering the first IoT device in the platform server by setting one shared key and a second shared key, respectively; And
Wherein the first IoT device generates a first partial key and encrypts the first partial key based on the second shared key to generate first data and the platform server generates a second partial key, Verifying the first data based on a shared key, encrypting the second partial key based on the first shared key to generate second data, and transmitting, by the first IoT device, Authenticating the first IoT device by verifying the second data, and combining the first partial key and the second partial key to establish a session key,
In the step of registering the first IoT device,
The owner terminal sends a registration transaction handle request message to the platform server,
The platform server generates first registration transaction handle information based on the registration transaction handle request message and returns the first registration transaction handle to the owner terminal,
Wherein the first registration transaction handle information includes first time information indicating a first transaction ID, an owner ID for the owner terminal, and an effective time of the first registration transaction handle,
Wherein the first registration transaction handle comprises the first transaction ID, a first URL indicating the location of the platform server, and a second URL.
삭제delete 제 1 항에 있어서, 상기 제1 IoT 기기를 등록하는 단계에 있어서,
상기 소유자 단말기는 상기 제1 IoT 기기에 상기 제1 등록 트랜잭션 핸들을 전송하고,
상기 제1 IoT 기기는 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 제1 IoT 기기의 제1 물리적 기기 ID를 추출하고, 상기 플랫폼 서버에 상기 제1 물리적 기기 ID 및 상기 제1 트랜잭션 ID를 포함하는 상기 등록 요청 메시지를 전송하며,
상기 플랫폼 서버는 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기의 제1 기기 ID를 생성하는 것을 특징으로 하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
The method according to claim 1, wherein, in the step of registering the first IoT device,
The owner terminal transmits the first registration transaction handle to the first IoT device,
Wherein the first IoT device extracts a first physical device ID of the first IoT device based on the first registration transaction handle and transmits the first physical device ID and the first transaction ID to the platform server Transmits a registration request message,
Wherein the platform server generates a first device ID of the first IoT device based on the registration request message.
제 3 항에 있어서, 상기 제1 IoT 기기를 등록하는 단계에 있어서,
상기 소유자 단말기와 상기 제1 IoT 기기 사이에 제1 보안 채널이 형성되고, 상기 제1 보안 채널을 통해 상기 제1 등록 트랜잭션 핸들이 전송되고,
상기 제1 IoT 기기와 상기 플랫폼 서버 사이에 제2 보안 채널이 형성되고, 상기 제2 보안 채널을 통해 상기 등록 요청 메시지가 전송되는 것을 특징으로 하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
4. The method according to claim 3, wherein in the step of registering the first IoT device,
A first secure channel is formed between the owner terminal and the first IoT device, the first registration transaction handle is transmitted over the first secure channel,
Wherein a second secure channel is established between the first IoT device and the platform server and the registration request message is transmitted over the second secure channel.
제 3 항에 있어서, 상기 제1 IoT 기기를 등록하는 단계에 있어서,
상기 플랫폼 서버는 상기 제1 물리적 기기 ID 및 상기 제1 기기 ID에 기초하여 상기 제1 공유키를 유도하고, 상기 제1 공유키를 기초로 제1 체크 데이터를 암호화하여 제2 체크 데이터를 생성하고, 상기 제1 기기 ID 및 상기 제2 체크 데이터를 상기 제1 IoT 기기에 돌려주며,
상기 제1 IoT 기기는 상기 제1 물리적 기기 ID 및 상기 제1 기기 ID에 기초하여 상기 제2 공유키를 유도하고, 상기 제2 공유키에 기초하여 상기 제2 체크 데이터를 검증하며,
상기 제2 체크 데이터에 대한 검증 동작이 완료된 경우에, 상기 제1 IoT 기기는 상기 제1 기기 ID 및 상기 제2 공유키를 저장하고, 상기 플랫폼 서버는 상기 제1 기기 ID, 상기 소유자 ID, 상기 제1 물리적 기기 ID 및 상기 제1 공유키를 저장하는 것을 특징으로 하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
4. The method according to claim 3, wherein in the step of registering the first IoT device,
The platform server derives the first shared key based on the first physical device ID and the first device ID and encrypts the first check data based on the first shared key to generate second check data , The first device ID and the second check data to the first IoT device,
Wherein the first IoT device derives the second shared key based on the first physical device ID and the first device ID and verifies the second check data based on the second shared key,
Wherein the first IoT device stores the first device ID and the second shared key when the verifying operation of the second check data is completed, and the platform server stores the first device ID, the owner ID, The first physical device ID, and the first shared key. ≪ Desc / Clms Page number 20 >
제 5 항에 있어서, 상기 제1 IoT 기기를 인증하는 단계에 있어서,
상기 플랫폼 서버의 공개키에 기초하여 상기 제1 IoT 기기와 상기 플랫폼 서버 사이에 제3 보안 채널이 형성되고,
상기 제1 IoT 기기는 상기 제3 보안 채널을 통해 상기 제1 기기 ID 및 상기 제1 데이터를 전송하고, 상기 플랫폼 서버는 상기 제3 보안 채널을 통해 상기 제2 데이터를 전송하는 것을 특징으로 하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
6. The method of claim 5, wherein in the step of authenticating the first IoT device,
A third secure channel is formed between the first IoT device and the platform server based on the public key of the platform server,
Wherein the first IoT device transmits the first device ID and the first data over the third secure channel and the platform server transmits the second data over the third secure channel. A method for establishing a relationship between a device and an owner.
제 1 항에 있어서,
상기 제1 IoT 기기를 등록하는 단계는 상기 제1 IoT 기기의 최초 구동 시에 1회 수행되고,
상기 제1 IoT 기기를 인증하는 단계는 상기 제1 IoT 기기가 수행 가능한 복수의 동작들 중 적어도 하나가 요청될 때마다 수행되는 것을 특징으로 하는 IoT 기기와 소유자 사이의 관계 확립을 위한 방법.
The method according to claim 1,
Wherein the registering of the first IoT device is performed once at the time of the first drive of the first IoT device,
Wherein the step of authenticating the first IoT device is performed whenever at least one of a plurality of operations that can be performed by the first IoT device is requested.
제1 사물인터넷(Internet of Things: IoT) 기기;
상기 제1 IoT 기기의 등록을 제어하는 소유자 단말기; 및
상기 제1 IoT 기기의 등록 및 인증을 제어하는 플랫폼 서버를 포함하고,
상기 플랫폼 서버가 상기 소유자 단말기의 요청에 기초하여 상기 제1 IoT 기기를 위한 제1 등록 트랜잭션 핸들을 생성하고, 상기 제1 IoT 기기가 상기 제1 등록 트랜잭션 핸들에 기초하여 상기 플랫폼 서버에 등록 요청 메시지를 전송하고, 상기 플랫폼 서버가 상기 등록 요청 메시지에 기초하여 상기 제1 IoT 기기와 상기 소유자 단말기를 바인딩(binding)하며, 상기 플랫폼 서버와 상기 제1 IoT 기기가 상호 연동하여 제1 공유키 및 제2 공유키를 각각 설정함으로써, 상기 플랫폼 서버에 상기 제1 IoT 기기를 등록하며,
상기 제1 IoT 기기가 제1 부분키를 발생하고 상기 제2 공유키를 기초로 상기 제1 부분키를 암호화하여 제1 데이터를 생성하고, 상기 플랫폼 서버가 제2 부분키를 발생하고 상기 제1 공유키에 기초하여 상기 제1 데이터를 검증하고 상기 제1 공유키를 기초로 상기 제2 부분키를 암호화하여 제2 데이터를 생성하고, 상기 제1 IoT 기기가 상기 제2 공유키에 기초하여 상기 제2 데이터를 검증하며, 상기 제1 부분키 및 상기 제2 부분키를 결합하여 세션키를 설정함으로써, 상기 제1 IoT 기기를 인증하며,
상기 제1 IoT 기기를 등록하는데 있어서,
상기 소유자 단말기는 상기 플랫폼 서버에 등록 트랜잭션 핸들 요청 메시지를 전송하고,
상기 플랫폼 서버는 상기 등록 트랜잭션 핸들 요청 메시지에 기초하여 제1 등록 트랜잭션 핸들 정보를 생성하고, 상기 소유자 단말기에 상기 제1 등록 트랜잭션 핸들을 돌려주며,
상기 제1 등록 트랜잭션 핸들 정보는 제1 트랜잭션 ID, 상기 소유자 단말기에 대한 소유자 ID 및 상기 제1 등록 트랜잭션 핸들의 유효 시간을 나타내는 제1 시간 정보를 포함하며,
상기 제1 등록 트랜잭션 핸들은 상기 제1 트랜잭션 ID, 상기 플랫폼 서버의 위치를 나타내는 제1 URL, 및 제2 URL을 포함하는 IoT 기기와 소유자 사이의 관계 확립을 위한 시스템.
A first Internet of Things (IoT) device;
An owner terminal for controlling registration of the first IoT device; And
And a platform server for controlling registration and authentication of the first IoT device,
Wherein the platform server generates a first registration transaction handle for the first IoT device based on a request from the owner terminal and the first IoT device sends a registration request message to the platform server based on the first registration transaction handle, And the platform server binds the first IoT device and the owner terminal based on the registration request message, and the platform server and the first IoT device interact with each other to form a first shared key and a second shared key, And registering the first IoT device in the platform server by setting two shared keys,
Wherein the first IoT device generates a first partial key and encrypts the first partial key based on the second shared key to generate first data and the platform server generates a second partial key, Verifying the first data based on a shared key, encrypting the second partial key based on the first shared key to generate second data, and transmitting, by the first IoT device, Authenticating the first IoT device by verifying the second data, combining the first partial key and the second partial key to establish a session key,
In registering the first IoT device,
The owner terminal sends a registration transaction handle request message to the platform server,
The platform server generates first registration transaction handle information based on the registration transaction handle request message and returns the first registration transaction handle to the owner terminal,
Wherein the first registration transaction handle information includes first time information indicating a first transaction ID, an owner ID for the owner terminal, and an effective time of the first registration transaction handle,
Wherein the first registration transaction handle comprises the first transaction ID, a first URL indicating the location of the platform server, and a second URL.
KR1020160046890A 2016-04-18 2016-04-18 Method and system for establishing relationship between iot device and owner KR101688813B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160046890A KR101688813B1 (en) 2016-04-18 2016-04-18 Method and system for establishing relationship between iot device and owner

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160046890A KR101688813B1 (en) 2016-04-18 2016-04-18 Method and system for establishing relationship between iot device and owner

Publications (1)

Publication Number Publication Date
KR101688813B1 true KR101688813B1 (en) 2016-12-22

Family

ID=57723754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160046890A KR101688813B1 (en) 2016-04-18 2016-04-18 Method and system for establishing relationship between iot device and owner

Country Status (1)

Country Link
KR (1) KR101688813B1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180092542A (en) * 2017-02-10 2018-08-20 동서대학교산학협력단 IoT SERVICE SYSTEM FOR ROOM TEMPERATURE CONTROL, FIRE ALARM AND SUPRESSION USING MQTT, AND METHOD THEREOF
CN108521857A (en) * 2017-07-25 2018-09-11 北京小米移动软件有限公司 A kind of NB-IoT apparatus bounds method and a kind of Internet of Things network control system
GB2560894A (en) * 2017-03-23 2018-10-03 Taberner Neil Secure transfer of data between internet of things devices
KR20190006155A (en) 2017-07-09 2019-01-17 권형석 How to manage electronic devices and system
KR20190078701A (en) * 2017-12-14 2019-07-05 아주대학교산학협력단 Method of bootstrapping of internet of thing device
CN110519052A (en) * 2019-08-23 2019-11-29 青岛海尔科技有限公司 Data interactive method and device based on Internet of Things operating system
US11032376B2 (en) 2017-12-14 2021-06-08 Samsung Electronics Co., Ltd. Electronic device for controlling registration session, and operation method therefor; and server, and operation method therefor
KR102580639B1 (en) * 2023-03-20 2023-09-20 (주)포소드 Data system and encryption method based on key exchange cryptographic protocol using enhanced security function in network layer
WO2023219230A1 (en) * 2022-05-09 2023-11-16 삼성전자주식회사 Electronic device for controlling internet of things apparatus, and operating method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060055263A (en) * 2004-11-17 2006-05-23 삼성전자주식회사 Method for transmitting content in home network using user-binding
KR20120069037A (en) * 2010-12-20 2012-06-28 삼성전자주식회사 Method and apparatus for providing service of external network to home network device
KR20150096979A (en) * 2014-02-17 2015-08-26 한국전자통신연구원 Apparatus and Method for providing home network access control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060055263A (en) * 2004-11-17 2006-05-23 삼성전자주식회사 Method for transmitting content in home network using user-binding
KR20120069037A (en) * 2010-12-20 2012-06-28 삼성전자주식회사 Method and apparatus for providing service of external network to home network device
KR20150096979A (en) * 2014-02-17 2015-08-26 한국전자통신연구원 Apparatus and Method for providing home network access control

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180092542A (en) * 2017-02-10 2018-08-20 동서대학교산학협력단 IoT SERVICE SYSTEM FOR ROOM TEMPERATURE CONTROL, FIRE ALARM AND SUPRESSION USING MQTT, AND METHOD THEREOF
KR101985694B1 (en) * 2017-02-10 2019-06-04 동서대학교 산학협력단 IoT SERVICE SYSTEM FOR ROOM TEMPERATURE CONTROL, FIRE ALARM AND SUPRESSION USING MQTT, AND METHOD THEREOF
GB2560894B (en) * 2017-03-23 2020-04-15 Taberner Neil Secure transfer of data between internet of things devices
GB2560894A (en) * 2017-03-23 2018-10-03 Taberner Neil Secure transfer of data between internet of things devices
KR20190006155A (en) 2017-07-09 2019-01-17 권형석 How to manage electronic devices and system
US11005944B2 (en) 2017-07-25 2021-05-11 Beijing Xiaomi Mobile Software Co., Ltd. Method for binding NB-IoT device, and internet of things control system
CN108521857A (en) * 2017-07-25 2018-09-11 北京小米移动软件有限公司 A kind of NB-IoT apparatus bounds method and a kind of Internet of Things network control system
KR102024376B1 (en) * 2017-12-14 2019-09-23 아주대학교산학협력단 Method of bootstrapping of internet of thing device
KR20190078701A (en) * 2017-12-14 2019-07-05 아주대학교산학협력단 Method of bootstrapping of internet of thing device
US11032376B2 (en) 2017-12-14 2021-06-08 Samsung Electronics Co., Ltd. Electronic device for controlling registration session, and operation method therefor; and server, and operation method therefor
CN110519052A (en) * 2019-08-23 2019-11-29 青岛海尔科技有限公司 Data interactive method and device based on Internet of Things operating system
CN110519052B (en) * 2019-08-23 2022-07-05 青岛海尔科技有限公司 Data interaction method and device based on Internet of things operating system
WO2023219230A1 (en) * 2022-05-09 2023-11-16 삼성전자주식회사 Electronic device for controlling internet of things apparatus, and operating method thereof
KR102580639B1 (en) * 2023-03-20 2023-09-20 (주)포소드 Data system and encryption method based on key exchange cryptographic protocol using enhanced security function in network layer

Similar Documents

Publication Publication Date Title
KR101688813B1 (en) Method and system for establishing relationship between iot device and owner
KR101688812B1 (en) Method and system of authorizing/managing iot device based on owner's authorization server
US11258781B2 (en) Context and device state driven authorization for devices
JP6812421B2 (en) Equipment and methods for mobility procedures involving mobility management entity relocation
US10419907B2 (en) Proximity application discovery and provisioning
US9749865B2 (en) Method and apparatus for managing beacon device
US10728244B2 (en) Method and system for credential management
US9529985B2 (en) Global authentication service using a global user identifier
US11991527B2 (en) Communication method and communication device
JP6504630B2 (en) GPRS system key reinforcement method, SGSN device, UE, HLR / HSS, and GPRS system
CN105474677A (en) Securely managed location-and-tracking service access
CN111742531B (en) Profile information sharing
CA2879910C (en) Terminal identity verification and service authentication method, system and terminal
KR20160083128A (en) Method and system for encrypted communications
CN103797830A (en) Systems and methods for encoding exchanges with a set of shared ephemeral key data
EP3189643A1 (en) Proximity application discovery and provisioning
Han et al. A novel secure key paring protocol for RF4CE ubiquitous smart home systems
CN103329589A (en) System and method for issuing an authentication key for authenticating a user in a cpns environment
Gao et al. LIP‐PA: A Logistics Information Privacy Protection Scheme with Position and Attribute‐Based Access Control on Mobile Devices
CN103188229A (en) Method and equipment for secure content access
JP2014006691A (en) Device authentication method and system
Hanumanthappa et al. Privacy preserving and ownership authentication in ubiquitous computing devices using secure three way authentication
US20150180862A1 (en) Method of generating one-time password and apparatus for performing the same
WO2016035466A1 (en) Communication system, program for server device, recording medium recording this program, program for communication device, recording medium recording this program, program for terminal device, and recording medium recording this program
Wang et al. Secure and efficient control transfer for IoT devices

Legal Events

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