KR101677249B1 - 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법 - Google Patents

사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법 Download PDF

Info

Publication number
KR101677249B1
KR101677249B1 KR1020150084418A KR20150084418A KR101677249B1 KR 101677249 B1 KR101677249 B1 KR 101677249B1 KR 1020150084418 A KR1020150084418 A KR 1020150084418A KR 20150084418 A KR20150084418 A KR 20150084418A KR 101677249 B1 KR101677249 B1 KR 101677249B1
Authority
KR
South Korea
Prior art keywords
control
request
user
pairing
token
Prior art date
Application number
KR1020150084418A
Other languages
English (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 KR1020150084418A priority Critical patent/KR101677249B1/ko
Application granted granted Critical
Publication of KR101677249B1 publication Critical patent/KR101677249B1/ko

Links

Images

Classifications

    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • H04L9/3213Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority using tickets or tokens, e.g. Kerberos

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

보안 처리 장치 및 방법이 개시된다. 일 실시예에 따른 보안 처리 장치는 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰에 생성된 제어 전문에 대한 제어 암호문 생성을 요청하며, 사용자 토큰으로부터 제어 암호문을 수신하여 사물 인터넷 제어 장치에 전송하는 사용자 단말 및 사용자 단말로부터 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하고, 생성된 제어 암호문을 사용자 단말에 전송하는 사용자 토큰을 포함할 수 있다.

Description

사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법{Security Apparatus and Method for Controlling Internet of Things Device Using User Token}
사물 인터넷 제어 기술에 관한 것으로 특히, 사물 인터넷 장치를 제어하기 위하여 암호화 기능을 구비한 사용자 토큰을 이용하는 보안 처리 장치 및 방법에 관한 것이다.
최근에 각종 사물에 센서와 통신 기능을 내장하여 인터넷에 연결하는 사물 인터넷 기술이 연구되고 있다. 여기서 사물이란 시스템적으로 인지할 수 있는 객체로서 가전제품, 모바일 장비, 웨어러블 컴퓨터 등 다양한 임베디드 시스템이 될 수 있다.
사물 인터넷 장치는 외부 환경으로부터의 데이터 취득을 위해 센서를 내장할 수 있으며, 무선 통신을 기반으로 장치간 데이터를 송수신하여 사물로부터 정보를 얻거나 제어를 할 수 있다. 그러나 모든 사물이 개방형 인터넷에 연결되는 경우 해킹 등의 대상이 될 수 있으며, 이에 따라 사물 인터넷의 발달과 함께 강력한 보안이 요구되고 있다.
대한민국특허공개번호 20150035971호(2015.04.07)
사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 사용자 요청을 암호화하는 보안 처리 장치 및 방법을 제공하는데 목적이 있다.
일 양상에 따르면, 사물 인터넷 장치의 제어를 위한 보안 처리 장치는 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰에 생성된 제어 전문에 대한 제어 암호문 생성을 요청하며, 사용자 토큰으로부터 제어 암호문을 수신하여 사물 인터넷 제어 장치에 전송하는 사용자 단말 및 사용자 단말로부터 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하고, 생성된 제어 암호문을 사용자 단말에 전송하는 사용자 토큰을 포함할 수 있다.
다른 양상에 따르면, 사용자 단말은 사용자로부터 사물 인터넷 장치를 제어하기 위한 사용자 토큰의 등록 요청을 수신하는 요청 수신부, 등록 요청이 수신되면 사용자 토큰에 공개키를 요청하는 공개키 요청부, 사용자 토큰으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성하는 등록 전문 생성부 및 사물 인터넷 제어 장치에 생성된 등록 전문을 전송하여 공개키의 등록을 요청하는 등록 요청부를 포함할 수 있다.
또 다른 양상에 따르면, 사용자 단말은 사물 인터넷 장치에 대응하는 마스터 토큰의 존재 여부를 판단하는 마스터 토큰 판단부 및 판단 결과 마스터 토큰이 존재하면, 마스터 토큰에 생성된 등록 전문에 대한 등록 암호문 생성을 요청하는 암호문 생성 요청부를 더 포함할 수 있으며, 등록 요청부는 마스터 토큰으로부터 등록 암호문이 수신되면, 수신된 등록 암호문을 사물 인터넷 제어 장치에 전송하여 공개키의 등록을 요청할 수 있다.
또 다른 양상에 따르면, 사용자 단말은 사용자로부터 사물 인터넷 장치와의 패어링 체결 또는 해제 요청을 수신하는 요청 수신부, 패어링 체결 또는 해제 요청이 수신되면, 사용자 토큰의 식별자를 사물 인터넷 제어 장치에 전송하는 식별자 전송부, 사물 인터넷 제어 장치로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신하는 암호문 수신부 및 수신된 패어링 암호문을 사용자 토큰에 전송하여 패어링 체결 또는 해제를 요청하는 패어링 요청부를 포함할 수 있다.
또 다른 양상에 따르면, 사용자 토큰은 사용자 단말로부터 패어링 체결 또는 해제 요청을 수신하는 요청 수신부, 사용자 단말로부터 패어링 체결 또는 해제 요청이 수신되면, 패어링 암호문을 개인키로 복호화하는 복호화부 및 패어링 체결 요청에 따라 상기 사물 인터넷 장치 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 기초로 사물 인터넷 장치와의 패어링 체결을 수행하고, 패어링 해제 요청에 따라 사물 인터넷 장치 ID 및 장치 난수 중의 적어도 하나에 기초하여 패어링을 해제하는 패어링 제어부를 포함할 수 있다.
또 다른 양상에 따르면, 패어링 제어부는 사용자 단말의 제어 암호화 요청에 따라 제어 암호문을 생성할 때마다 제어 암호문 생성 시간을 로깅하고, 로깅된 제어 암호문 생성 시간에 기초하여 다른 사물 인터넷 장치와의 패어링 체결을 제어할 수 있다.
또 다른 양상에 따르면, 사용자 토큰은 사용자 단말로부터 사물 인터넷 장치에 대한 메시지 인증 코드(Message Authentication Code; MAC) 생성 요청을 수신하는 요청 수신부, 메시지 인증 코드 생성 요청이 수신되면, 사물 인터넷 장치에 대한 장치 난수를 이용하여 메시지 인증 코드를 생성하는 메시지 인증 코드 생성부 및 생성된 메시지 인증 코드를 사용자 단말에 전송하는 통신부를 포함하며, 사용자 단말은 생성된 제어 전문에 메시지 인증 코드를 첨부하여 사물 인터넷 제어 장치에 전송할 수 있다.
일 양상에 따르면, 사물 인터넷 장치의 제어를 위한 보안 처리 방법은 사용자 단말이 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰에 생성된 제어 전문에 대한 제어 암호문 생성을 요청하는 단계, 사용자 토큰이 사용자 단말로부터 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하는 단계, 사용자 토큰이 생성된 제어 암호문을 사용자 단말에 전송하는 단계 및 사용자 단말이 사용자 토큰으로부터 제어 암호문을 수신하여 사물 인터넷 제어 장치에 전송하는 단계를 포함할 수 있다.
다른 양상에 따르면, 보안 처리 방법은 사용자 단말이 사용자로부터 사물 인터넷 장치를 제어하기 위한 사용자 토큰의 등록 요청을 수신하는 단계, 사용자 단말이 등록 요청이 수신되면 사용자 토큰에 공개키를 요청하는 단계, 사용자 단말이 사용자 토큰으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성하는 단계 및 사용자 단말이 사물 인터넷 제어 장치에 생성된 등록 전문을 전송하여 공개키의 등록을 요청하는 단계를 더 포함할 수 있다.
또 다른 양상에 따르면, 보안 처리 방법은 사용자 단말이 사용자로부터 사물 인터넷 장치와의 패어링 체결 또는 해제 요청을 수신하는 단계, 사용자 단말이 패어링 체결 또는 해제 요청이 수신되면, 사용자 토큰의 식별자를 사물 인터넷 제어 장치에 전송하는 단계, 사용자 단말이 사물 인터넷 제어 장치로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신하는 단계 및 사용자 단말이 수신한 패어링 암호문을 사용자 토큰에 전송하여 패어링 체결 또는 해제를 요청하는 단계를 더 포함할 수 있다.
사물 인터넷 장치를 제어하기 위한 사용자의 요청을 암호화 하여 전송함으로 서 사용자의 접근을 인증할 수 있으며, 사용자 요청의 위·변조를 방지할 수 있다.
도 1은 일 실시예에 따른 사물 인터넷 시스템의 구성도이다.
도 2는 일 실시예에 따른 사용자 단말의 구성도이다.
도 3은 일 실시예에 따른 제어 처리부의 구성도이다.
도 4는 일 실시예에 따른 등록 처리부의 구성도이다.
도 5는 일 실시예에 따른 패어링 처리부의 구성도이다.
도 6은 일 실시예에 따른 사용자 토큰의 구성도이다.
도 7은 일 실시예에 따른 사용자 요청에 따른 제어 전문 전송 방법을 도시한 흐름도이다.
도 8은 일 실시예에 따른 사용자 토큰의 등록 방법을 도시한 흐름도이다.
도 9는 일 실시예에 따른 패어링 체결 및 해제 방법을 도시한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 보안 처리 장치 및 방법의 실시예들을 도면들을 참고하여 자세히 설명한다.
도 1은 일 실시예에 따른 사물 인터넷 시스템의 구성도이다.
도 1을 참조하면, 사물 인터넷 시스템은 보안 처리 장치(10) 및 사물 인터넷 제어 장치(300)를 포함할 수 있다. 또한, 보안 처리 장치(10)는 사용자 단말(100) 및 사용자 토큰(200)을 포함할 수 있다.
일 양상에 따르면, 보안 처리 장치(10)는 사물 인터넷 제어 장치(300)와 유선 또는 무선 통신을 수행할 수 있다. 사물 인터넷 제어 장치(300)는 사물 인터넷 장치 자체로서 또는 적어도 하나 이상의 사물 인터넷 장치(미도시)와 연결되어 사물 인터넷 장치를 제어하고, 사물 인터넷 장치로부터 상태 정보 등을 수신할 수 있다. 이때, 사물 인터넷 제어 장치(300)는 보안 처리 장치(10)로부터 제어 신호를 수신하여 사물 인터넷 장치를 제어할 수 있으며, 사물 인터넷 장치의 상태 정보 등을 수신하여 보안 처리 장치(10)로 전송하여 사용자에게 제공할 수 있다.
일 예에 따르면, 사물 인터넷 장치는 냉/난방기기, 텔레비전 등과 같은 가전기기, 도어락, 감시카메라 등의 보안기기, 스마트 위치, 스마트 안경 등 웨어러블 기기 및 자동차, 사무용 기기, 전자서적 등 모든 종류의 사물이 될 수 있다.
일 예에 따르면, 사물 인터넷 제어 장치(300)는 게이트웨이, 서버 등 사용자 단말(100)로부터 수신한 사용자 요청의 인증을 수행하고, 사용자 토큰(200)의 등록 및 페어링을 수행하며, 사용자 요청에 따라 사물 인터넷 장치를 제어하기 위한 인터페이스, 메모리 및 프로세서를 포함하는 모든 형태의 전자기기가 될 수 있다.
일 양상에 따르면, 사용자 단말(100)은 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰(200)에 생성된 제어 전문에 대한 제어 암호문 생성을 요청하며, 사용자 토큰(200)으로부터 제어 암호문을 수신하여 사물 인터넷 제어 장치(300)에 전송할 수 있다.
일 예를 들어, 사용자 단말(100)은 사용자로부터 장치를 제어하기 위한 요청을 수신할 수 있다. 이 때, 사용자의 요청은 제어할 사물 인터넷 장치를 선택 또는 사물 인터넷 장치의 동작을 선택하는 것일 수 있다. 사용자 단말(100)은 사용자로부터 제어 요청을 수신하면, 사물 인터넷 장치의 식별자 및 제어 동작 내용이 포함된 제어 전문을 생성할 수 있다. 또한, 생성된 제어 전문을 사용자 토큰(200)에 전송하여 사용자 토큰(200)이 구비하고 있는 사용자 토큰 개인키를 이용하여 제어 전문을 암호화하도록 요청할 수 있다.
이 경우, 사용자 토큰(200)은 사용자 단말(100)로부터 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하고, 생성된 제어 암호문을 사용자 단말(100)에 전송할 수 있다. 일 예에 따르면, 사용자 토큰(200)은 IC칩을 구비하고 있는 전자신분증 또는 신용카드, 통신이 가능한 OTP(One Time Password) 장치 및 사용자 단말(200)과 별개의 디지털 단말 중 어느 하나가 될 수 있으며, 사용자 토큰(200)은 사용자 단말과 접촉식 또는 비접촉식 통신을 할 수 있는 기능을 수행할 수 있다. 이를 위하여 사용자 토큰(200)은 RFID 통신 또는 NFC 통신을 수행할 수 있다. 그러나 이러한 예는 권리범위를 한정하지 않는다.
사용자 단말(100)은 사용자 토큰(200)으로부터 암호문을 수신하여 전문 헤더와 병합시킬 수 있으며, 암호문과 전문 헤더가 병합된 전문을 사물 인터넷 제어 장치(300)로 전송할 수 있다.
도 2는 일 실시예에 따른 사용자 단말(100)의 구성도이다.
도 2를 참조하면, 사용자 단말(100)은 요청 수신부(110), 제어 처리부(130), 등록 처리부(150), 패어링 처리부(170), 저장부(180) 및 송수신부(190)를 포함할 수 있다.
일 예에 따르면, 요청 수신부(110)는 사용자로부터 사물 인터넷 장치를 제어하기 위한 요청을 수신할 수 있다. 이 때, 사용자의 요청은 사물 인터넷 장치를 제어하기 위한 사물 인터넷 장치의 선택 및 동작선택 정보를 포함하는 제어 요청, 사용자 토큰(200)을 등록시키기 위한 등록 요청 및 사물 인터넷 장치와 사용자 토큰을 패어링하기 위한 패어링 요청 중 어느 하나일 수 있다.
제어 처리부(130)는 요청 수신부(110)가 사용자로부터 제어 요청을 수신하는 경우, 해당 제어 요청에 포함된 정보를 기초로 제어 전문을 생성하고, 송수신부(190)를 통하여 사용자 토큰(200)에 제어 전문에 대한 제어 암호문 생성을 요청할 수 있다. 제어 처리부(130)는 송수신부(190)가 사용자 토큰으로부터 제어 암호문을 수신하면 제어 전문 헤더와 제어 암호문을 병합하여 사물 인터넷 제어 장치(300)에 전송할 수 있다.
등록 처리부(150)는 요청 수신부(110)가 사용자로부터 새로운 사용자 토큰(200)의 등록 요청을 수신하는 경우, 등록할 사용자 토큰(200)에 공개키를 요청하며, 등록 요청에 포함된 정보와 사용자 토큰의 공개키를 기초로 등록전문을 생성하여 사물 인터넷 제어 장치(300)에 사용자 토큰의 등록을 요청할 수 있다. 또한, 등록 처리부(150)는 사물 인터넷 제어 장치(300)로부터 등록 결과를 수신할 수 있으며, 사용자 토큰(200)이 등록된 경우 사용자 토큰과 사물 인터넷 장치의 패어링을 위하여 사용자 토큰의 식별자를 저장부(180)에 저장할 수 있다.
패어링 처리부(170)는 요청 수신부(110)가 사용자로부터 패어링 체결 또는 해제 요청을 수신하는 경우, 저장부(180)부로부터 패어링을 수행할 사용자 토큰의 식별자를 독출하고, 독출된 사용자 토큰의 식별자를 사물 인터넷 제어 장치(300)에 전송하여 패어링 체결 또는 해제를 요청할 수 있다.
일 예에 따르면, 사용자 토큰의 식별자는 IC칩 고유 번호 또는 사용자 토큰의 공개키의 해시값 중 적어도 하나가 될 수 있다.
사물 인터넷 제어 장치(300)는 사용자 단말(100)로부터 패어링 체결 요청이 수신되면, 패어링 체결을 수행하고자 하는 사물 인터넷 장치의 장치 ID, 페어링 시간 및 사물 인터넷 장치 난수 중의 어느 하나 이상을 패어링을 체결할 사용자 토큰의 공개키로 암호문을 생성 할 수 있다. 또한, 사물 인터넷 제어 장치(300)는 사용자 단말(200)의 패어링 해제 요청에 따라 패어링 해제를 수행하고자 하는 사물 인터넷 장치의 장치 ID 및 사물 인터넷 장치 난수 중의 어느 하나 이상을 패어링을 체결할 사용자 토큰의 공개키로 암호문을 생성 할 수 있다.
패어링 처리부(170)는 사물 인터넷 제어 장치(300)로부터 패어링 체결 또는 해제에 필요한 암호문을 수신하여 사용자 토큰(200)에 전송하여 패어링의 체결 또는 해제를 요청할 수 있다.
일 실시예에 따르면, 저장부(180)는 사용자 토큰(200)을 등록한 후 사용자 토큰(200)의 식별자를 저장할 수 있으며, 저장된 식별자는 패어링을 체결하는 경우 이용될 수 있다.
일 실시예에 따르면, 송수신부(190)는 사용자 토큰(200)과 접촉식 또는 비접촉식 통신을 수행할 수 있다. 이를 위하여, 송수신부(190)는 근거리 무선 통신을 수행할 수 있으며, 일 예로서 RFID 통신 또는 NFC 통신을 수행할 수 있다. 그러나, 본 발명의 권리범위가 이에 한정되지 않는다.
도 3은 일 실시예에 따른 제어 처리부(130)의 구성도이다.
도 3을 참조하면, 제어 처리부(130)는 제어 전문 생성부(131), 암호문 생성 요청부(133) 및 제어 요청부(135)를 포함할 수 있다.
제어 전문 생성부(131)는 사용자로부터 제어 요청을 수신하는 경우, 해당 제어 요청에 포함된 정보를 기초로 제어 전문을 생성할 수 있다. 이때, 사용자의 제어 요청은 제어할 사물 인터넷 장치의 종류, 제어하고자 하는 동작을 선택하는 요청이 될 수 있다. 예를 들어, 사용자가 도어락을 여는 동작을 수행하고 싶은 경우, 사용자는 사물 인터넷 장치 중 도어락을 선택할 수 있으며, 도어락이 동작할 수 있는 동작 중 여는 동작을 선택하여 제어하도록 요청할 수 있다. 이러한 경우 제어 전문 생성부(131)는 현재 시간, 사물 인터넷 장치의 ID, 제어하고자 하는 동작의 동작 코드를 포함하는 제어 전문을 생성할 수 있다.
암호문 생성 요청부(133)는 사용자 토큰(200)에 생성된 제어 전문의 제어 암호문 생성을 요청할 수 있다. 이를 위하여 암호문 생성부(133)는 생성된 제어 전문을 송수신부(190)에 전달하여 사용자 토큰(200)에 전송할 수 있다.
제어 요청부(135)는 사용자 토큰(200)으로부터 수신한 제어 암호문에 제어 전문 헤더를 병합하여 사물 인터넷 제어 장치(300)에 전송할 수 있다.
도 4는 일 실시예에 따른 등록 처리부(150)의 구성도이다.
도 4를 참조하면, 등록 처리부(150)는 공개키 요청부(151), 등록 전문 생성부(153), 등록 요청부(155), 마스터 토큰 판단부(157) 및 암호문 생성 요청부(159)를 포함할 수 있다.
공개키 요청부(151)는 등록 요청이 수신되면 사용자 토큰(200)에 공개키를 요청할 수 있다. 일 예에 따르면, 사용자가 새로운 사용자 토큰(200)의 등록을 요청하는 경우, 공개키 요청부(151)는 사물 인터넷 제어 장치(300)가 이후 사용자 토큰(200)이 생성한 암호문을 해석하는데 사용하기 위한 사용자 토큰(200)의 공개키를 사용자 토큰(200)에 요청할 수 있다. 다른 예에 따르면, 사용자는 사물 인터넷 제어 장치(300)가 관리하고 있는 하나 이상의 사물 인터넷 장치 중 전부 또는 일부를 선택하여 해당 사물 인터넷 장치를 제어하는데 사용할 사용자 토큰(200)의 등록을 요청할 수 있다. 또 다른 예에 따르면, 복수의 사용자 토큰(200)이 동일한 사물 인터넷 장치를 제어하는데 사용될 수 있도록 등록을 요청할 수 있다.
등록 전문 생성부(153)는 사용자 토큰(200)으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성할 수 있다. 일 예에 따르면, 등록 전문 생성부(153)는 등록하고자 하는 사용자 토큰(200)의 식별자 및 공개키를 이용하여 등록 전문을 생성할 수 있다. 다른 예에 따르면, 등록 전문 생성부(153)는 사물 인터넷 제어 장치(300)가 사용자 토큰(200)을 등록하는 경우 그 식별자는 저장부(180)에 저장할 수 있다.
등록 요청부(155)는 사물 인터넷 제어 장치에 생성된 등록 전문을 전송하여 공개키의 등록을 요청할 수 있다. 예를 들어, 등록 요청부(155)는 등록 전문에 전문 헤더를 병합하여 사물 인터넷 제어 장치(300)에 전송하여 공개키의 등록을 요청할 수 있다.
마스터 토큰 판단부(157)는 사물 인터넷 장치에 대응하는 마스터 토큰(미도시)의 존재 여부를 판단할 수 있다. 마스터 토큰은 특정한 사물 인터넷 장치만을 제어하기 위하여 사물 인터넷 장치와 함께 제공되는 토큰일 수 있다. 예를 들어, 사물 인터넷 장치가 도어락인 경우, 해당 도어락과 함께 제공되어 도어락의 제어에 사용되는 카드키가 될 수 있다.
일 예에 따라, 사물 인터넷 장치에 대응되는 마스터 토큰이 존재하는 경우, 당해 사물 인터넷 장치를 제어하기 위한 사용자 토큰(200)을 등록하기 위하여 별도의 절차가 요구될 수 있다. 이에 따라, 마스터 토큰 판단부(157)는 사물 인터넷 제어 장치(300)가 관리하는 사물 인터넷 장치 중 대응되는 마스터 토큰이 존재하는지 여부를 판단할 수 있다. 일 예에 따르면, 마스터 토큰 판단부(157)는 사물 인터넷 제어 장치(300)로부터 마스터 토큰의 존재 여부에 대한 정보를 수신하여 판단하거나, 사용자로부터 직접 마스터 토큰의 존재 여부에 대한 정보를 수신하여 판단할 수 있다.
일 예에 따라 마스터 토큰을 이용하여 사용자 토큰(200)을 등록하도록 하는 경우, 해커 등의 제3자가 사용자 단말(100)을 공격하여 임의의 사용자 토큰을 등록하는 행위 및 이를 이용하여 사물 인터넷 장치를 제어하는 행위를 방지할 수 있다.
암호문 생성 요청부(159)는 판단 결과 마스터 토큰이 존재하면, 마스터 토큰에 생성된 등록 전문에 대한 등록 암호문 생성을 요청할 수 있다. 예를 들어, 마스터 토큰이 존재하는 경우, 등록 전문 생성부(153)가 생성한 등록 전문을 마스터 토큰에 전송하여 마스터 토큰의 개인키를 이용한 암호문 생성을 요청할 수 있다.
도 5는 일 실시예에 따른 패어링 처리부(170)의 구성도이다. 패어링은 일정 시간동안 하나의 사용자 토큰(200)과 하나의 사물 인터넷 장치간 체결될 수 있으며, 이러한 경우 패어링이 체결된 사물 인터넷 장치는 패어링 된 사용자 토큰에 의해서만 제어를 할 수 있다. 이는 사용자 토큰(200)이 사용되는 동안 하나의 사물 인터넷 장치만을 제어하도록 함으로써 등록된 사용자 토큰을 이용하여 다른 사물 인터넷 장치를 제어하는 것을 방지할 수 있으며, 이로써 해커 등 제3자의 악용을 방지할 수 있다.
도 5를 참조하면, 패어링 처리부(170)는 식별자 전송부(171), 암호문 수신부(173) 및 패어링 요청부(175)를 포함할 수 있다.
일 실시예에 따르면, 식별자 전송부(171)는 패어링 체결 또는 해제 요청이 수신되면, 사용자 토큰의 식별자를 사물 인터넷 제어 장치(300)에 전송할 수 있다. 일 예에 따르면, 사용자로부터 패어링 체결을 요청받은 경우, 식별자 전송부(171)는 저장부(180)로부터 패어링을 체결할 사용자 토큰의 식별자를 독출할 수 있다. 일 예에 따르면, 사용자 토큰의 식별자는 IC칩 고유 번호 또는 사용자 토큰의 공개키의 해시값 중 적어도 하나가 될 수 있다. 식별자 전송부(171)는 독출된 사용자 토큰의 식별자를 사물 인터넷 제어 장치(300)로 전송하여 패어링을 요청할 수 있다.
다른 예에 따르면, 패어링은 하나의 사용자 토큰(200)과 하나의 사물 인터넷 장치간 패어링일 수 있다. 이 경우 패어링이 체결되면, 해당 사용자 토큰(200)은 패어링 체결된 사물 인터넷 장치만을 제어할 수 있게 된다. 다시 말하면, 사물 인터넷 제어 장치(300)는 다음 패어링 요청이 있을 때까지 패어링된 사용자 토큰(200)으로 암호화된 요청만을 허용할 수 있다.
또 다른 예에 따르면, 사물 인터넷 제어 장치(300)는 패어링 체결 요청을 수신하면, 패어링을 체결할 사물 인터넷 장치의 장치 난수를 생성하며, 패어링을 체결할 사물 인터넷 장치의 ID, 장치 난수 및 패어링 시간 중 적어도 하나를 패어링을 체결할 사용자 토큰의 공개키로 암호문을 생성할 수 있다. 이후, 사물 인터넷 제어 장치(300)는 생성된 암호문을 사용자 단말(100)로 전송할 수 있다.
일 예를 들어, 사물 인터넷 장치의 ID는 사물 인터넷 장치를 제조 및 생산하는 회사를 식별하기 위한 제조사 ID, 사물 인터넷 장치 제품 모델번호를 식별하기 위한 제품 모델 ID, 사물 인터넷 장치 제품 시리얼번호를 식별하기 위한 제품 시리얼 ID, 객체 식별자를 부여 받지 못한 사물인터넷 디바이스를 식별하기 위한 확장형 ID 중 적어도 하나를 포함할 수 있다.
다른 예를 들어, 사용자로부터 도어락에 대한 패어링 요청을 수신하는 경우, 식별자 전송부(171)는 도어락과 패어링을 체결할 사용자 토큰(200)의 식별자를 사물 인터넷 제어 장치(300)에 전송하며, 사물 인터넷 제어 장치(300)는 해당 도어락의 ID와 패어링 시간 및 도어락의 장치 난수를 생성하여 사용자 토큰(200)의 공개키로 암호문을 생성할 수 있다.
이때, 패어링 시간은 사물 인터넷 제어 장치(300)의 현재 시간 및 사물 인터넷 장치와의 패어링을 수행할 기간 정보 중의 하나 이상을 포함할 수 있다.
일 실시예로, 사물 인터넷 제어 장치(300)는 사물 인터넷 장치의 특성에 따라 사물 인터넷 장치별로 패어링 시간, 즉 패어링을 수행할 기간을 관리할 수 있다.
사물 인터넷 제어 장치(300)는 도어락과의 패어링 요청을 수신하면, 현재 시간 및 도어락(장치 ID: B)과 패어링을 수행할 시간(예: 10분) 중의 적어도 하나를 포함하도록 패어링 암호문을 생성할 수 있다.
암호문 수신부(173)는 사물 인터넷 제어 장치(300)로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신할 수 있다. 패어링 요청부(175)는 수신된 패어링 암호문을 사용자 토큰(200)에 전송하여 패어링 체결 또는 해제를 요청할 수 있다. 이때, 패어링 요청부(175)는 암호문에 현재 시간 정보를 첨부하여 사용자 토큰(200)에 전송할 수 있다.
도 6은 일 실시예에 따른 사용자 토큰(200)의 구성도이다.
도 6을 참조하면, 사용자 토큰(200)은 요청 수신부(210), 암호문 생성부(220), 공개키 처리부(230), 복호화부(240), 패어링 제어부(250), 인증 코드 생성부(260), 통신부(270) 및 저장부(280)을 포함할 수 있다.
일 예에 따르면, 요청 수신부(210)는 사용자 단말로부터 암호문 생성 요청, 패어링 체결 또는 해제 요청 또는 사용자 단말로부터 사물 인터넷 장치에 대한 메시지 인증 코드(Message Authentication Code; MAC) 생성 요청을 수신할 수 있다.
암호문 생성부(220)는 사용자 단말(100)로부터 제어 전문에 대한 암호문 요청을 수신하면, 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성할 수 있다. 일 실시예에 따르면, 암호문 생성부(220)는 비대칭 암호화를 이용하여 제어 암호문을 생성할 수 있다. 비대칭 암호화는 공개키와 개인키를 이용하며, 공개 키는 누구나 알 수 있는 키로서 사용자 토큰(200)이 등록 시 사물 인터넷 제어 장치(300)에 제공하며, 개인키는 키의 소유자인 사용자 토큰(200)만이 알고 있는 키이다.
공개키 처리부(230)는 사용자 단말(100)로부터 공개키를 요청받으면 공개키를 저장부(280)로부터 독출하여 사용자 단말(100)에 전송할 수 있다. 예를 들어, 비대칭 암호화를 사용하기 위해서는 사물 인터넷 제어 장치(300)는 사용자 토큰(200)의 공개키를 알아야 한다. 따라서, 사용자 토큰(200)을 등록시키는 경우 사용자 단말(100)은 사용자 토큰(200)에 공개키를 요청하게 되며, 공개키 처리부(230)는 공개키를 저장부(280)로부터 자신이 가지고 있는 개인키에 대응하는 공개키를 독출하여 사용자 단말(100)에 전송할 수 있다.
복호화부(240)는 사용자 단말로부터 패어링 체결 또는 해제 요청이 수신되면, 패어링 암호문을 개인키로 복호화할 수 있다. 일 예에 따르면, 패어링을 체결 또는 해제하는 경우 사용자 단말(100)은 사물 인터넷 제어 장치(300)에 패어링 체결 또는 해지 요청을 하며, 사물 인터넷 제어 장치(300)는 패어링 체결 또는 해제에 필요한 정보를 사용자 토큰(200)의 공개키로 암호화 하여 사용자 단말(100)에 제공한다. 이후, 사용자 단말(100)은 수신 받은 정보를 사용자 토큰(200)에 전송하여 패어링 체결 또는 해제를 요청하게 된다. 이 경우, 복호화부(240)는 가지고 있는 개인키를 이용하여 수신한 암호문을 복호화하여 패어링 체결 또는 해제 정보를 획득할 수 있다.
패어링 제어부(250)는 패어링 체결 요청에 따라 사물 인터넷 장치 ID 및 패어링 시간 중의 적어도 하나를 기초로 사물 인터넷 장치와의 패어링 체결을 수행하고, 패어링 해제 요청에 따라 사물 인터넷 장치 ID 및 장치 난수 중의 적어도 하나에 기초하여 패어링을 해제할 수 있다. 일 예에 따르면, 패어링 체결 요청을 수신한 경우 패어링 제어부(250)는 복호화부(240)에서 복호화한 사물 인터넷 장치의 ID, 장치 난수 및 패어링 시간을 저장부(280)에 저장하여 패어링을 체결할 수 있다.
예를 들어, 패어링 제어부(250)는 패어링 시간을 이용하여 패어링 체결 요청의 유효성을 검사할 수 있다. 즉, 사용자 단말(100)로부터 수신한 암호문에 포함된 패어링 시간에 현재 시간 정보가 존재하는 경우, 그 현재 시간 정보를 이용하여 패어링 체결의 유효성을 검사할 수 있다.
예컨대, 패어링 제어부(250)는 사용자 단말(100)로부터 수신한 패어링 암호문의 패어링 시간에 현재 시간 정보가 포함되어 있고, 사용자 단말(100)에 의해 패어링 암호문에 사용자 단말의 현재 시간 정보가 첨부된 경우, 패어링 제어부(250)는 사물 인터넷 제어 장치(300)에서 생성된 현재 시간과 사용자 단말(100)에서 생성된 현재 시간을 비교하여, 두 시간의 차이가 일정 시간 이내인 경우 패어링 요청이 유효한 것으로 판단하여 패어링을 체결할 수 있다.
다른 예를 들어, 패어링 시간에 패어링을 수행할 기간 정보가 포함된 경우, 사용자 토큰 A는 사물 인터넷 장치인 도어락(장치 ID: B)을 패어링 시간 10분간 패어링 하도록 제어할 수 있다. 이러한 경우, 패어링이 체결된 10분 동안은 사용자 토큰 A는 도어락 B만을 제어를 할 있게 된다.
또 다른 예에 따르면, 패어링 제어부(250)는 패어링 해제 요청을 수신한 경우 복호화부로부터 사물 인터넷 장치의 ID 및 장치 난수를 수신하여 저장부에 저정되어 있는 사물 인터넷 장치의 ID 및 장치 난수와 비교를 하며, 정보가 일치하는 경우 패어링을 해제할 수 있다.
일 예를 들면, 패어링 제어부(250)는 패어링을 해제 한 후 일정한 시간 동안 추가적인 패어링 요청을 거부할 수 있다. 이때, 패어링 제어부(250)는 패어링 해제 시 해제 시간을 로깅할 수 있으며, 로깅한 시간으로부터 미리 설정된 짧은 시간(예: 10초, 20초) 동안 다른 패어링 요청을 거부할 수 있다. 예를 들어, 패어링 제어부(250)는 사용자 단말(100)로부터 패어링 요청이 수신되면, 수신된 패어링 암호문의 패어링 시간에 포함된 현재 시간과 로깅된 패어링 해제 시간을 비교하여 미리 설정된 시간 이내인 경우 패어링 요청을 거부할 수 있다.
또 다른 예에 따르면, 패어링 제어부(250)는 사용자 단말의 제어 암호화 요청에 따라 제어 암호문을 생성할 때마다 제어 암호문 생성 시간을 로깅하고, 로깅된 제어 암호문 생성 시간에 기초하여 다른 사물 인터넷 장치와의 패어링 체결을 제어할 수 있다.
일 예를 들면, 패어링 제어부(250)는 암호문 생성부(220)에서 암호문을 생성할 때 마다 사용자 단말(100)에서 전송된 제어 전문, 등록 전문 등에 포함된 현재 시간 정보를 기초로 암호문 생성 시간을 로깅할 수 있다. 패어링 제어부(250)는 이후 로깅된 시간과 패어링 시간의 현재 시간 정보를 이용하여, 최근 로깅된 시간으로부터 미리 설정된 시간(예: 10분, 20분) 이내에 패어링이 요청되었는지를 판단할 수 있다. 판단 결과, 현재 미리 설정된 시간 이내에 다른 사물 인터넷 장치와의 패어링이 요청된 경우, 사용자 단말(100)로부터 수신된 패어링 암호문의 패어링 시간에 패어링을 수행할 기간 정보가 포함된 경우, 패어링 제어부(250)는 그 사물 인터넷 장치에 대하여 마지막 로깅 시간으로부터 기산하여 그 패어링을 수행할 기간 동안 계속해서 패어링이 유지되도록 하고, 그 기간 동안 다른 사물 인터넷 장치와의 패어링 요청을 거부할 수 있다.
다른 예를 들면, 패어링 제어부(250)는 패어링 시간을 로깅하여 미래 시간으로 패어링 체결 또는 해지 후 현재 시간으로 다시 패어링을 체결하는 것을 방지할 수 있다. 예를 들어 00시 00분에 패어링이 설정되어 현재 00시 05분인 경우, 제3자 등이 패어링이 거부되는 시간인 00시 10분 이후인 00시 15분으로 패어링 해제 명령을 만들어 패어링을 해제한 후, 현재 시간인 00시 05분에 패어링 체결을 요청하는 경우, 패어링 제어부(250)는 현재 시간을 기준으로 패어링의 체결을 거부할 수 있다.
인증 코드 생성부(260)는 메시지 인증 코드 생성 요청이 수신되면, 사물 인터넷 장치에 대한 장치 난수를 이용하여 메시지 인증 코드를 생성할 수 있다. 일 예에 따르면, 사용자 토큰(200)은 패어링이 체결된 경우 사용자 단말(100)로부터 메시지 인증 코드의 생성 요청을 수신하는 경우, 패어링된 사물 인터넷 장치의 ID를 검사할 수 있다. 이후, 인증 코드 생성부(260)는 개인키를 이용하여 암호문을 생성하는 것을 대신하여 패어링이 체결된 사물 인터넷 장치의 장치 난수를 이용하여 메시지 인증 코드를 생성할 수 있다. 생성된 메시지 인증 코드는 통신부(270)를 통하여 사용자 단말에 전송할 수 있다.
저장부(280)는 사용자 토큰의 개인키 및 공개키를 저장할 수 있으며, 사물 인터넷 장치의 ID, 장치 난수 및 패어링 시간을 저장할 수 있다.
도 7은 일 실시예에 따른 사용자 요청에 따른 제어 전문 전송 방법을 도시한 흐름도이다.
도 7을 참조하면, 사용자 단말(100)은 사용자로부터 제어 요청을 수신할 수 있다(710). 사용자 단말은 사용자로부터 제어 요청을 수신하면, 해당 제어 요청에 포함된 정보를 기초로 제어 전문을 생성할 수 있다(720). 이때, 사용자의 제어 요청은 제어할 사물 인터넷 장치의 종류, 제어하고자 하는 동작을 선택하는 요청이 될 수 있다. 예를 들어, 사용자가 도어락을 여는 동작을 수행하고 싶은 경우, 사용자는 사물 인터넷 장치 중 도어락을 선택할 수 있으며, 도어락이 동작할 수 있는 동작 중 여는 동작을 선택하여 제어하도록 요청할 수 있다. 이러한 경우 제어 전문 생성부(131)는 사물 인터넷 장치의 ID, 제어하고자 하는 동작의 동작 코드를 이용하여 제어 전문을 생성할 수 있다.
사용자 단말(100)은 제어 전문을 생성한 후, 사용자 토큰(200)에 해당 제어 전문의 암호문 생성을 요청한다. 사용자 토큰(200)은 사용자 단말(100)로부터 제어 전문에 대한 암호문 요청을 수신하면, 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성할 수 있다(740). 일 실시예에 따르면, 사용자 토큰(200)은 비대칭 암호화를 이용하여 제어 암호문을 생성할 수 있다. 비대칭 암호화는 공개키와 개인키를 이용하며, 공개 키는 누구나 알 수 있는 키로서 사용자 토큰(200)이 등록 시 사물 인터넷 제어 장치(300)에 제공하며, 개인키는 키의 소유자인 사용자 토큰(200)만이 알고 있는 키이다.
암호문이 생성되면, 사용자 토큰(200)은 생성된 암호문을 사용자 단말(100)로 전송한다(750). 이후 사용자 단말(100)은 사용자 토큰으로부터 수신한 제어 암호문에 제어 전문 헤더를 병합하여 사물 인터넷 제어 장치(300)에 전송한다(770).
도 8은 일 실시예에 따른 사용자 토큰의 등록 방법을 도시한 흐름도이다.
도 8을 참조하면, 사용자 단말(100)은 사용자로부터 새로운 사용자 토큰의 등록을 요청 받을 수 있다(810). 등록 요청이 수신되면 사용자 단말(100)은 사용자 토큰(200)에 공개키를 요청할 수 있다(820). 사용자 단말(100)로부터 등록 요청을 수신하면, 사용자 토큰(200)은 사진의 공개키를 독출하며(830), 독출된 공개키를 사용자 단말(100)에 전송할 수 있다(840). 예를 들어, 비대칭 암호화를 사용하기 위해서는 사물 인터넷 제어 장치(300)는 사용자 토큰(200)의 공개키를 알아야 한다. 따라서, 사용자 토큰(200)을 등록시키는 경우 사용자 단말(100)은 사용자 토큰(200)에 공개키를 요청하게 되며, 사용자 토큰(200)은 자신이 가지고 있는 개인키에 대응하는 공개키를 독출하여 사용자 단말(100)에 전송할 수 있다.
이후, 사용자 단말(100)은 사용자 토큰(200)으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성한다(850). 일 예에 따르면, 사용자 단말(100)은 등록하고자 하는 사용자 토큰(200)의 식별자 및 공개키를 이용하여 등록 전문을 생성할 수 있다.
등록 전문이 생성되면, 사용자 단말은 사물 인터넷 제어 장치(300)가 관리하는 사물 인터넷 장치에 대응하는 마스터 토큰이 존재하는지 여부를 판단한다(860). 예를 들어, 사물 인터넷 장치에 대응되는 마스터 토큰이 존재하는 경우, 당해 사물 인터넷 장치를 제어하기 위한 사용자 토큰(200)을 등록하기 위하여 별도의 절차가 요구될 수 있다. 이에 따라, 사용자 단말(100)은 사물 인터넷 제어 장치(300)가 관리하는 사물 인터넷 장치 중 대응되는 마스터 토큰이 존재하는지 여부를 판단할 수 있다. 일 예에 따르면, 사용자 단말(100)은 사물 인터넷 제어 장치(300)로부터 마스터 토큰의 존재 여부에 대한 정보를 수신하여 판단하거나, 사용자로부터 직접 마스터 토큰의 존재 여부에 대한 정보를 수신하여 판단할 수 있다.
일 예에 따라, 마스터 토큰이 존재하지 않는 경우, 사용자 단말(100)은 생성된 등록 전문을 별도의 암호화를 하지 않고 전문 헤더와 전문을 병합하며(870), 병합된 전문을 사물 인터넷 제어 장치(300)에 전송하여 공개키의 등록을 요청한다(880).
다른 예에 따라, 마스터 토큰이 존재하는 경우, 사용자 단말(100)은 마스터 토큰(400)에 등록 전문 암호화를 요청한다(890). 이러한 경우 마스터 토큰(400)은 자신이 가지고 있는 마스터 토큰의 개인키를 이용하여 등록 전문의 암호문을 생성한다(981). 이후, 마스터 토큰(400)은 생성된 암호문을 사용자 단말(100)에 전송하며(893), 사용자 단말은 암호문과 전문 헤더를 병합하고(895), 병합된 암호문을 사물 인터넷 제어 장치(300)에 전송하여 공개키 등록을 요청한다(897).
도 9는 일 실시예에 따른 패어링 체결 및 해제 방법을 도시한 흐름도이다.
도 9를 참조하면, 사용자 단말(100)은 사용자로부터 사용자 토큰의 패어링 체결 또는 해제 요청 받을 수 있다(910). 패어링 체결 또는 해제 요청이 수신되면 사용자 단말(100)은 자신이 가지고 있는 사용자 토큰의 식별자를 독출한다(920). 일 예에 따르면, 사용자 토큰의 식별자는 IC칩 고유 번호 또는 사용자 토큰의 공개키의 해시값 중 적어도 하나가 될 수 있다.
이후, 사용자 단말(100)은 독출된 사용자 토큰의 식별자를 사물 인터넷 제어 장치(300)로 전송하여 패어링의 체결 또는 해제를 요청할 수 있다(930). 이러한 경우 사물 인터넷 제어 장치(300)는 패어링 체결 요청을 수신하면, 패어링을 체결할 사물 인터넷 장치의 장치 난수를 생성하며, 패어링을 체결할 사물 인터넷 장치의 ID, 장치 난수 및 패어링 시간 중 적어도 하나를 패어링을 체결할 사용자 토큰의 공개키로 암호문을 생성할 수 있다(940). 이후, 사물 인터넷 제어 장치(300)는 생성된 암호문을 사용자 단말(100)로 전송할 수 있다(950).
사용자 단말(100)이 사물 인터넷 제어 장치(300)로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신하면, 사용자 단말(100)은 수신된 패어링 암호문을 사용자 토큰에 전송하여 패어링 체결 또는 해제를 요청할 수 있다(960).
이러한 경우, 사용자 토큰(200)은 패어링 암호문을 개인키로 복호화 하여 패어링 체결 또는 해제 정보를 획득하며, 패어링 체결 요청에 따라 사물 인터넷 장치 ID 및 패어링 시간 중의 적어도 하나를 기초로 사물 인터넷 장치와의 패어링 체결을 수행하고, 패어링 해제 요청에 따라 사물 인터넷 장치 ID 및 장치 난수 중의 적어도 하나에 기초하여 패어링을 해제할 수 있다(970).
본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 작성되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
10: 보안 처리 장치 100: 사용자 단말
110: 요청 수신부 130: 제어 처리부
150: 등록 처리부 170: 패어링 처리부
180: 저장부 190: 송수신부
200: 사용자 토큰 210: 요청 수신부
220: 암호문 생성부 230: 공개키 처리부
240: 복호화부 250: 패어링 제어부
260: 인증 코드 생성부 270: 통신부
280: 저장부 300: 사물 인터넷 제어 장치

Claims (10)

  1. 사물 인터넷 장치의 제어를 위한 보안 처리 장치에 있어서,
    상기 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰에 상기 생성된 제어 전문에 대한 제어 암호문 생성을 요청하며, 사용자 토큰으로부터 상기 제어 암호문을 수신하여 사물 인터넷 제어 장치에 전송하는 사용자 단말; 및
    접촉식 또는 근거리 통신을 이용하여 사용자 단말로부터 상기 제어 전문을 수신하고, 상기 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하고, 상기 생성된 제어 암호문을 사용자 단말에 전송하는 사용자 토큰; 을 포함하고,
    상기 사용자 토큰은 사용자 단말과 별개의 단말 장치로서 전자 신분증, 신용카드, 및 OTP(One Time Password) 장치 중 어느 하나인 보안 처리 장치.
  2. 제1항에 있어서,
    상기 사용자 단말은
    사용자로부터 사물 인터넷 장치를 제어하기 위한 사용자 토큰의 등록 요청을 수신하는 요청 수신부;
    상기 등록 요청이 수신되면 사용자 토큰에 공개키를 요청하는 공개키 요청부;
    사용자 토큰으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성하는 등록 전문 생성부; 및
    상기 사물 인터넷 제어 장치에 상기 생성된 등록 전문을 전송하여 상기 공개키의 등록을 요청하는 등록 요청부; 를 포함하는 보안 처리 장치.
  3. 제2항에 있어서,
    상기 사용자 단말은
    상기 사물 인터넷 장치에 대응하는 마스터 토큰의 존재 여부를 판단하는 마스터 토큰 판단부; 및
    상기 판단 결과 마스터 토큰이 존재하면, 마스터 토큰에 상기 생성된 등록 전문에 대한 등록 암호문 생성을 요청하는 암호문 생성 요청부를 더 포함하고,
    상기 등록 요청부는
    마스터 토큰으로부터 등록 암호문이 수신되면, 수신된 등록 암호문을 사물 인터넷 제어 장치에 전송하여 상기 공개키의 등록을 요청하는 보안 처리 장치.
  4. 제1항에 있어서,
    상기 사용자 단말은
    사용자로부터 사물 인터넷 장치와의 패어링 체결 또는 해제 요청을 수신하는 요청 수신부;
    상기 패어링 체결 또는 해제 요청이 수신되면, 사용자 토큰의 식별자를 사물 인터넷 제어 장치에 전송하는 식별자 전송부;
    사물 인터넷 제어 장치로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신하는 암호문 수신부; 및
    상기 수신된 패어링 암호문을 사용자 토큰에 전송하여 패어링 체결 또는 해제를 요청하는 패어링 요청부; 를 포함하는 보안 처리 장치.
  5. 제4항에 있어서,
    상기 사용자 토큰은
    사용자 단말로부터 패어링 체결 또는 해제 요청을 수신하는 요청 수신부;
    사용자 단말로부터 패어링 체결 또는 해제 요청이 수신되면, 상기 패어링 암호문을 개인키로 복호화하는 복호화부; 및
    패어링 체결 요청에 따라상기 사물 인터넷 장치 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 기초로 상기 사물 인터넷 장치와의 패어링 체결을 수행하고, 패어링 해제 요청에 따라 상기 사물 인터넷 장치 ID 및 장치 난수 중의 적어도 하나에 기초하여 패어링을 해제하는 패어링 제어부를 포함하는 보안 처리 장치.
  6. 제5항에 있어서,
    상기 패어링 제어부는
    사용자 단말의 제어 암호화 요청에 따라 제어 암호문을 생성할 때마다 제어 암호문 생성 시간을 로깅하고, 상기 로깅된 제어 암호문 생성 시간에 기초하여 다른 사물 인터넷 장치와의 패어링 체결을 제어하는 보안 처리 장치.
  7. 제1항에 있어서,
    상기 사용자 토큰은
    상기 사용자 단말로부터 사물 인터넷 장치에 대한 메시지 인증 코드(Message Authentication Code; MAC) 생성 요청을 수신하는 요청 수신부;
    상기 메시지 인증 코드 생성 요청이 수신되면, 상기 사물 인터넷 장치에 대한 장치 난수를 이용하여 메시지 인증 코드를 생성하는 메시지 인증 코드 생성부; 및
    상기 생성된 메시지 인증 코드를 사용자 단말에 전송하는 통신부를 포함하고,
    상기 사용자 단말은
    상기 생성된 제어 전문에 상기 메시지 인증 코드를 첨부하여 사물 인터넷 제어 장치에 전송하는 보안 처리 장치.
  8. 사물 인터넷 장치의 제어를 위한 보안 처리 방법에 있어서,
    사용자 단말이 상기 사물 인터넷 장치의 제어를 위한 제어 전문을 생성하고, 사용자 토큰에 상기 생성된 제어 전문에 대한 제어 암호문 생성을 요청하는 단계;
    사용자 토큰이 접촉식 또는 근거리 통신을 이용하여 사용자 단말로부터 제어 전문을 수신하는 단계;
    상기 수신한 제어 전문을 개인키로 암호화하여 제어 암호문을 생성하는 단계;
    사용자 토큰이 상기 생성된 제어 암호문을 사용자 단말에 전송하는 단계; 및
    사용자 단말이 상기 사용자 토큰으로부터 상기 제어 암호문을 수신하여 사물 인터넷 제어 장치에 전송하는 단계; 를 포함하고,
    상기 사용자 토큰은 사용자 단말과 별개의 단말 장치로서 전자 신분증, 신용카드, 및 OTP(One Time Password) 장치 중 어느 하나인 보안 처리 방법.
  9. 제8항에 있어서,
    상기 보안 처리 방법은
    사용자 단말이 사용자로부터 사물 인터넷 장치를 제어하기 위한 사용자 토큰의 등록 요청을 수신하는 단계;
    사용자 단말이 등록 요청이 수신되면 사용자 토큰에 공개키를 요청하는 단계;
    사용자 단말이 사용자 토큰으로부터 공개키가 수신되면, 수신된 공개키에 기초하여 등록 전문을 생성하는 단계; 및
    사용자 단말이 사물 인터넷 제어 장치에 상기 생성된 등록 전문을 전송하여 상기 공개키의 등록을 요청하는 단계; 를 더 포함하는 보안 처리 방법.
  10. 제8항에 있어서,
    상기 보안 처리 방법
    사용자 단말이 사용자로부터 사물 인터넷 장치와의 패어링 체결 또는 해제 요청을 수신하는 단계;
    사용자 단말이 상기 패어링 체결 또는 해제 요청이 수신되면, 사용자 토큰의 식별자를 사물 인터넷 제어 장치에 전송하는 단계;
    사용자 단말이 사물 인터넷 제어 장치로부터 사물 인터넷 장치의 ID, 패어링 시간 및 사물 인터넷 장치 난수 중의 적어도 하나를 사용자 토큰의 공개키로 암호화한 패어링 암호문을 수신하는 단계; 및
    상기 사용자 단말이 상기 수신한 패어링 암호문을 사용자 토큰에 전송하여 패어링 체결 또는 해제를 요청하는 단계; 를 더 포함하는 보안 처리 방법.
KR1020150084418A 2015-06-15 2015-06-15 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법 KR101677249B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150084418A KR101677249B1 (ko) 2015-06-15 2015-06-15 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150084418A KR101677249B1 (ko) 2015-06-15 2015-06-15 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법

Publications (1)

Publication Number Publication Date
KR101677249B1 true KR101677249B1 (ko) 2016-11-17

Family

ID=57542159

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150084418A KR101677249B1 (ko) 2015-06-15 2015-06-15 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101677249B1 (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018143510A1 (ko) * 2017-02-02 2018-08-09 주식회사 시옷 사물 인터넷 보안 모듈
KR20210090379A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 디바이스 접근 제어 방법
KR20210090372A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 게이트웨이의 인증 및 해지 방법
KR20210090375A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 디바이스의 인증 및 해지 방법
CN116318899A (zh) * 2023-02-17 2023-06-23 深圳市创势互联科技有限公司 数据加密解密的处理方法、***、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040012824A (ko) * 2001-05-14 2004-02-11 마츠시타 덴끼 산교 가부시키가이샤 전자기기 제어장치
KR20060058789A (ko) * 2004-11-25 2006-06-01 한국전자통신연구원 홈 네트워크 시스템에서의 데이터 보안 방법 및 장치
KR101491730B1 (ko) * 2013-12-09 2015-02-09 에스케이 텔레콤주식회사 M2m 암호화 서비스 제공 방법 및 그를 위한 장치
KR20150035971A (ko) 2015-03-18 2015-04-07 문종섭 사물인터넷에서 스마트 디바이스 또는 스마트 센서와 네트워크 게이트웨이 사이의 안전한 데이터 전달을 위한 통신 프로토콜

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040012824A (ko) * 2001-05-14 2004-02-11 마츠시타 덴끼 산교 가부시키가이샤 전자기기 제어장치
KR20060058789A (ko) * 2004-11-25 2006-06-01 한국전자통신연구원 홈 네트워크 시스템에서의 데이터 보안 방법 및 장치
KR101491730B1 (ko) * 2013-12-09 2015-02-09 에스케이 텔레콤주식회사 M2m 암호화 서비스 제공 방법 및 그를 위한 장치
KR20150035971A (ko) 2015-03-18 2015-04-07 문종섭 사물인터넷에서 스마트 디바이스 또는 스마트 센서와 네트워크 게이트웨이 사이의 안전한 데이터 전달을 위한 통신 프로토콜

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018143510A1 (ko) * 2017-02-02 2018-08-09 주식회사 시옷 사물 인터넷 보안 모듈
KR20210090379A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 디바이스 접근 제어 방법
KR20210090372A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 게이트웨이의 인증 및 해지 방법
KR20210090375A (ko) 2020-01-10 2021-07-20 동서대학교 산학협력단 블록체인을 기반으로 한 IoT 디바이스의 인증 및 해지 방법
CN116318899A (zh) * 2023-02-17 2023-06-23 深圳市创势互联科技有限公司 数据加密解密的处理方法、***、设备及介质
CN116318899B (zh) * 2023-02-17 2023-10-17 深圳市创势互联科技有限公司 数据加密解密的处理方法、***、设备及介质

Similar Documents

Publication Publication Date Title
US20160277933A1 (en) Secure Data Communication system between IoT smart devices and a Network gateway under Internet of Thing environment
JP4647903B2 (ja) 情報通信装置、通信システム及びデータ伝送制御プログラム
JP4545197B2 (ja) 無線ネットワークシステム及びこれを用いる通信方法
CN107659406B (zh) 一种资源操作方法及装置
KR101677249B1 (ko) 사용자 토큰을 이용하여 사물 인터넷 장치를 제어하기 위한 보안 처리 장치 및 방법
US20080109654A1 (en) System and method for RFID transfer of MAC, keys
JP4803145B2 (ja) 鍵共有方法、鍵配信システム
JP2017514421A (ja) 認証装置及び方法
JP2011511350A (ja) アクセス制御の管理方法および装置
KR20100071209A (ko) 디바이스 태그 기반의 디바이스 인증 장치 및 방법
KR20120072032A (ko) 모바일 단말의 상호인증 시스템 및 상호인증 방법
US10805276B2 (en) Device and methods for safe control of vehicle equipment secured by encrypted channel
KR101482938B1 (ko) 인증 메시지 보안 방법, 이를 수행하는 인증 메시지 보안 서버 및 사용자 단말
KR20190038632A (ko) 제 2 통신 장치를 이용한 제 1 통신 장치의 프로비저닝 방법
US10511946B2 (en) Dynamic secure messaging
KR102322605B1 (ko) 사물인터넷 환경에서의 비밀키 설정 및 상호 기기 인증 방법
US11178137B2 (en) System for IoT devices communicating with server using a tentative common key
KR101745482B1 (ko) 스마트홈 시스템에서의 통신 방법 및 그 장치
KR20150005788A (ko) 사용자 키 값을 이용한 사용자 인증 방법
JP2017108237A (ja) システム、端末装置、制御方法、およびプログラム
JP7141723B2 (ja) 無線通信システムを介してアクチュエータを制御するための装置、システムおよび方法
WO2018172776A1 (en) Secure transfer of data between internet of things devices
KR20190115489A (ko) 보안기술을 활용한 iot기기 보안인증 시스템
US11003744B2 (en) Method and system for securing bank account access
KR101790121B1 (ko) 전자 기기 인증 방법 및 시스템

Legal Events

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

Payment date: 20191002

Year of fee payment: 4