KR101762013B1 - Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법 - Google Patents

Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법 Download PDF

Info

Publication number
KR101762013B1
KR101762013B1 KR1020150136640A KR20150136640A KR101762013B1 KR 101762013 B1 KR101762013 B1 KR 101762013B1 KR 1020150136640 A KR1020150136640 A KR 1020150136640A KR 20150136640 A KR20150136640 A KR 20150136640A KR 101762013 B1 KR101762013 B1 KR 101762013B1
Authority
KR
South Korea
Prior art keywords
random number
management server
object device
psk
user terminal
Prior art date
Application number
KR1020150136640A
Other languages
English (en)
Other versions
KR20170037270A (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 KR1020150136640A priority Critical patent/KR101762013B1/ko
Publication of KR20170037270A publication Critical patent/KR20170037270A/ko
Application granted granted Critical
Publication of KR101762013B1 publication Critical patent/KR101762013B1/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/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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • 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/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • 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/3271Cryptographic 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 using challenge-response
    • H04L9/3273Cryptographic 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 using challenge-response for mutual authentication

Abstract

본 발명에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법은, 사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기가 사물기기의 식별값 및 사물기기에 의해 생성된 제1난수를 비접촉 근거리 통신을 이용하여 사용자 단말로 전송하는 단계, 사용자 단말이 관리 서버와 공유하는 보안키로 상기 식별값 및 상기 제1난수를 암호화한 제1-1암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계, 관리 서버가 미리 설정된 연산자로 제1-1암호화 메시지로부터 획득한 제1난수 및 관리 서버가 생성한 제2난수를 연산하여 PSK(Pre Shared Key)를 생성하고, 보안키로 PSK와 제2난수를 암호화한 제1-2암호화 메시지를 생성하여 사용자 단말로 전송하는 단계, 사용자 단말이 PSK를 비접촉 근거리 통신을 이용하여 사물기기로 전송하는 단계, 관리 서버가 PSK로 식별값 및 제1난수를 암호화한 제2암호화 메시지를 인터넷 소켓 통신을 이용하여 사물기기로 전송하는 단계 및 사물기기가 PSK로 제2암호화 메시지를 복호화하여 식별값 및 제1난수를 획득하고, 획득된 식별값 및 제1난수를 전송한 식별값 및 제1난수와 비교하여 관리 서버를 인증하는 단계를 포함한다.

Description

TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법{METHOD FOR REGISTERING DEVICE AND SETTING SECRET KEY USING TWO FACTOR COMMUNACATION CHANNEL}
본 발명은 사물인터넷 서비스 제공을 위한 사물기기에 관한 것으로서, 보다 구체적으로 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법에 관한 것이다.
사물인터넷(Internet of Things, IoT) 기술은 기존의 통신에서 주류를 이루던 사람과 사람, 사람과 사물 간의 통신에서 나아가 생활 속 모든 것들을 상호 연결시키려는 기술이다. 최근 들어, 센서나 액츄에이터와 같은 소형의 경량 장치들까지 인터넷에 직접 연결하여 정보를 주고 받을 수 있는 사물인터넷 기술에 대한 관심이 높아지고 있다.
사물인터넷 환경에서는 보안이 적용 환경에 따라 단순한 정보 보호의 차원을 넘어 사람의 생명에 직결될 수 있기 때문에 보안에 대한 신뢰성이 반드시 보장되어야 한다. 그러나 사물인터넷 환경은 이종의 장치들과 이종의 네트워크 기술이 혼재되어 있으며, 특히 소형의 경량 장치는 컴퓨팅 자원이 제한되기 때문에 적합한 보안 기술을 개발하는 것이 쉽지 않다. 따라서, 보안 기술에 대한 경량화가 필요한 상황이다.
PSK(Pre Shared Key)를 기반으로 하는 통신은 계산 시간과 자원 사용 등의 장점으로 인해 다양한 보안 시스템에 적용되고 있다. 특히, PSK 방식은 공개키 알고리즘을 기반으로 보안키를 공유하는 방식에 비해서 적은 비용으로 보안 세션을 구축할 수 있어서 경량 장치들로 구성되는 사물인터넷 환경에 적합한 것으로 판단되어 폭넓게 이용되고 있다.
그러나, 종래 PSK 방식이 적용된 사물인터넷 환경은 아래와 같은 문제가 있었다.
구체적으로, 종래의 사물인터넷 환경에서 동작하는 센서나 액츄에이터와 같은 경량 장치는 입력장치나 출력장치가 포함되어 있지 않아 PSK를 직접 설정하는 것이 용이하지 않기 때문에, 제조사의 공장에서 출고될 당시의 기본값을 그대로 이용하거나 경량 장치를 설치하는 설치자가 PSK를 설정하고 이를 관리 서버에 전달하는 방식으로 PSK에 대한 초기 설정이 수행되고 있었다. 그리고, 이러한 PSK가 안전하게 설정되었다고 가정하고 경량 장치와 관리 서버를 포함하는 시스템이 설계되고 있었다.
그러나, 사물인터넷 환경이나 응용 서비스에 따라 다수의 제조사와 설치자가 관여될 수 있는데 이들 모두를 신뢰한다는 것은 현실적으로 불가능하다는 문제가 있었다.
이를 해결하기 위해서는 경량 장치가 사물인터넷 환경에 처음 등록될 때 일반 사용자가 PSK를 직접 설정하는 것이 바람직하지만, 일반 사용자는 보안에 관한 전문지식이 없어서 복잡한 보안 함수 값을 설정하거나 PSK를 설정하는 것이 용이하지 않았기 때문에, 사용자의 조작없이 간단하게 사물기기와 같은 경량 장치를 사물인터넷 환경에 등록하고 비밀키를 설정하는 기술에 대한 필요성이 증가하고 있었다.
본 발명의 배경이 되는 기술은 대한민국 공개특허공보 제10-2014-0045829호(발명의 명칭: 사물 인터넷을 위한 인증 방법과 그를 위한 디바이스 및 인증 장치, 2014.04.17. 공개)에 개시되어 있다.
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 사물기기를 사물인터넷 환경에 처음 등록할 때, 사용자의 직접적인 관여를 최소화하면서 사용자 단말을 통해서 사물기기를 관리 서버에 등록하고 사물기기와 관리 서버 간의 통신에 이용할 PSK 및 네트워크 정보를 설정함으로써, 신뢰성이 확보된 PSK를 설정하는 것을 목적으로 한다.
또한, 본 발명은 컴퓨팅 자원이 제한적인 사물기기와 사용자 단말 간의 통신으로 10cm 이내의 통신 반경 안에서만 데이터 송수신이 가능한 NFC와 같은 비접촉 단거리 통신 방식을 사용함으로써, 암호화하지 않은 데이터에 대한 악의적 공격자의 가로채기 공격에 대응이 가능한 것을 목적으로 한다.
또한, 본 발명은 경량 장치에 해당하는 사물기기가 암호화를 수행하지 않도록 함으로써, 암호화를 수행하기 위한 계산 시간이나 자원 사용을 줄이는 것을 목적으로 한다.
상술한 문제점을 해결하기 위한 본 발명의 일 측면에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법은, 사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기가 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 사용자 단말로 전송하는 단계; 상기 사용자 단말이 관리 서버와 공유하는 보안키로 상기 식별값 및 상기 제1난수를 암호화한 제1-1암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계; 상기 관리 서버가 미리 설정된 연산자로 상기 제1-1암호화 메시지로부터 획득한 상기 제1난수 및 상기 관리 서버가 생성한 제2난수를 연산하여 PSK(Pre Shared Key)를 생성하고, 상기 보안키로 상기 PSK와 상기 제2난수를 암호화한 제1-2암호화 메시지를 생성하여 상기 사용자 단말로 전송하는 단계; 상기 사용자 단말이 상기 PSK를 상기 사물기기로 전송하는 단계; 상기 관리 서버가 상기 PSK로 상기 식별값 및 상기 제1난수를 암호화한 제2암호화 메시지를 상기 사물기기로 전송하는 단계; 및 상기 사물기기가 상기 PSK로 상기 제2암호화 메시지를 복호화하여 상기 식별값 및 제1난수를 획득하고, 상기 획득된 식별값 및 제1난수를 상기 전송한 식별값 및 제1난수와 비교하여 상기 관리 서버를 인증하는 단계를 포함한다.
본 발명의 또 다른 측면에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법은, 사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기가 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 상기 사용자 단말로 전송하는 단계; 상기 사물기기가 상기 사용자 단말로부터 PSK(Pre Shared Key)를 수신하는 단계; 상기 관리 서버로부터 상기 PSK로 상기 식별값 및 제1난수를 암호화한 암호화 메시지를 수신하는 단계; 및 상기 PSK로 상기 암호화 메시지를 복호화하여 상기 식별값 및 제1난수를 획득하고, 상기 획득된 식별값 및 제1난수를 상기 전송한 식별값 및 제1난수와 비교하여 상기 관리 서버를 인증하는 단계를 포함한다.
본 발명의 또 다른 측면에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법은, 사용자 단말이 사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기로부터 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 수신하는 단계; 상기 사용자 단말이 관리 서버와 공유하는 보안키로 상기 식별값 및 제1난수를 암호화한 제1-1암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계; 상기 사용자 단말이 상기 관리 서버로부터 PSK(Pre Shared Key)와 상기 관리 서버에 의해 생성된 제2난수를 암호화한 제1-2암호화 메시지를 수신하는 단계; 및 상기 PSK를 상기 사물기기로 전송하는 단계를 포함한다.
본 발명에 따르면, 사물기기를 사물인터넷 환경에 처음 등록할 때 PSK를 설정 또는 갱신함으로써 사물기기와 관리 서버가 신뢰성 높은 PSK를 공유하게 되어 보안 성능을 향상시킬 수 있다.
또한, 키보드와 같은 입력장치 및 디스플레이와 같은 출력장치의 설치가 제한되는 사물기기의 초기 설정 과정을 소프트웨어로 자동화하여 수행함으로써 사용자의 부담을 최소화하면서 안전하게 설정할 수 있다.
또한, 본 발명에 따르면, PSK를 설정하는 과정에서 핸드쉐이킹과 같이 상대적으로 더 많은 자원이 요구되는 동작은 사용자 단말과 관리 서버를 통해 수행함으로써 사물인터넷 환경의 성능을 향상시킬 수 있다.
또한, 본 발명에 따르면, 보안 통신 개설을 위해 요구되는 핸드쉐이킹의 많은 메시지를 사물기기가 전송할 필요가 없으므로 데이터 전송에 필요한 전력을 감소시켜, 배터리에 의존하는 사물기기가 효율적으로 전력을 사용할 수 있는 효과가 있다.
도 1은 본 발명의 실시예에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 시스템의 구성을 개략적으로 보여주는 도면이다.
도 2는 발명의 실시예에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법의 구현 과정을 개략적으로 나타내는 플로우차트이다.
도 3은 도 2의 구현 과정을 사물기기, 사용자 단말 및 관리 서버 측면에서 상세하게 나타내는 플로우차트이다.
도 4는 도 3의 사용자 단말과 관리 서버 간의 핸드쉐이킹 과정을 나타내는 플로우차트이다.
본 명세서에서 각 도면의 구성요소들에 참조번호를 부가함에 있어서 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 번호를 가지도록 하고 있음에 유의하여야 한다.
한편, 본 명세서에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 정의하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다.
"포함하다" 또는 "가지다" 등의 용어는 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
"적어도 하나"의 용어는 하나 이상의 관련 항목으로부터 제시 가능한 모든 조합을 포함하는 것으로 이해되어야 한다. 예를 들어, "제1 항목, 제2 항목 및 제 3 항목 중에서 적어도 하나"의 의미는 제1 항목, 제2 항목, 또는 제3 항목 각각 뿐만 아니라 제1 항목, 제2 항목, 및 제3 항목 중에서 2개 이상으로부터 제시될 수 있는 모든 항목의 조합을 의미한다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들에 대해 설명한다.
도 1은 본 발명의 실시예에 따른 안전한 사물인터넷 서비스 제공을 위한 사물기기의 초기 등록 및 비밀키 설정 시스템의 구성을 개략적으로 보여주는 도면이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 안전한 사물인터넷 서비스 제공을 위한 사물기기의 초기 등록 및 비밀키 설정 시스템은 사물기기(100), 사용자 단말(200) 및 관리 서버(300)를 포함한다.
구체적으로, 사물인터넷 환경의 네트워크는 크게 LLN(Low-power and Lossy Network) 영역과 인터넷(I) 영역으로 구분되고, 본 실시예에 따른 안전한 사물인터넷 서비스 제공을 위한 사물기기의 초기 등록 및 비밀키 설정 시스템은 LLN 영역에서 동작하는 경량화 장치에 해당하는 사물기기(100), LLN 환경과 인터넷(I) 환경을 연동하여 사물기기(100)를 인터넷에 연결하는 6LowPAN 게이트웨이(10), 인터넷(I) 영역에서 동작하는 사용자 단말(200)과 관리 서버(300), 및 사용자 단말(200)과 관리 서버(300)를 인터넷에 각각 연결하는 게이트웨이(20, 30)를 포함한다.
사물기기(100)는 사물인터넷 환경에서 동작하는 경량(Lightweight) 장치로서, 센서, 액츄에이터, 또는 복수개의 센서와 액츄에이터를 갖는 소형 장치일 수 있다.
특히, 사물기기(100)는 제1난수 생성부(110), LLN 통신 모듈(120) 및 NFC 통신 모듈(130)을 포함한다. 본 발명의 실시예에서 LLN 통신 모듈은 IEEE 802.15.4(Zigbee)와 같은 저전력 통신 모듈일 수 있으나 이에 한정되는 것은 아니다.
제1난수 생성부(110)는 관리 서버(300)에서 PSK(Pre Shared Key)를 생성하는데 이용되는 제1난수를 생성한다. 본 발명의 실시예에서 제1난수는 128bit의 랜덤 숫자일 수 있으나 이에 한정되는 것은 아니다.
LLN 통신 모듈(120)은 6LowPAN 게이트웨이(10)를 통해 인터넷(I)에 접속함으로써, 관리 서버(300)를 통해 생성된 경량화된 PSK를 이용하여 관리 서버(300)와 통신한다.
NFC 통신 모듈(130)은 사물기기(100)의 초기 설정을 위한 중재 역할을 담당하는 사용자 단말(200)의 NFC 통신 모듈(210)과 NFC와 같은 비접촉 근거리 통신 방식으로 통신하여, 사물기기(100)의 식별값, 및 제1난수 생성부(110)가 생성한 제1난수를 사용자 단말(200)로 전송한다.
NFC(Near Field Communication)는 RFID의 하나이나 13.56MHz의 주파수 대역을 사용하는 비접촉식 근거리 통신 방식으로서, 10cm 이내의 가까운 거리에서 다양한 데이터를 주고 받을 수 있는 통신 모드를 제공한다.
전술한 바와 같이, 본 발명에서는 사물기기와 관리 서버가 출고시 또는 설치자의 초기 설정으로 공유하는 비밀키 즉, PSK 자체가 안전하지 않을 수 있다는 문제를 해결할 수 있도록 사물기기의 초기 등록 시에 안전하게 PSK를 설정하거나 재설정하는 것을 목적으로 한다.
그러나, 자원이 제한적인 사물기기(100)를 통해서 새롭게 PSK를 공유하는 동작을 수행하는 것이 불가능하므로, 본 발명의 실시예에서는 NFC와 같은 비접촉식 근거리 통신을 통해 PSK 생성에 필요한 정보로서 상기의 식별값 및 제1난수를 전송한다.
특히, 본 발명의 실시예에서 사물기기(100)와 사용자 단말(200)은 NFC의 P2P(Peer To Peer) 모드로 동작함으로써 사물기기(100)와 사용자 단말(200)이 각각의 메시지를 송수신할 수 있다.
이 때, 사용자가 사물기기(100)로부터 NFC 통신이 가능한 소정 거리 이내로 사용자 단말(200)을 위치시켜야 상기의 식별값 및 제1난수를 전송할 수 있기 때문에, 중간자 공격(Man In The Middle Attack) 유무가 육안으로 확인이 되므로 NFC 통신의 신뢰성이 담보될 수 있다.
사용자 단말(200)은 사물기기(100) 및 관리 서버(300)와 통신이 가능한 단말로서 관리 서버(300)와의 통신을 통해 PSK 설정에 필요한 정보를 주고 받고 이를 사물기기(100)로 전달할 수 있는 구성은 무엇이든 포함할 수 있다. 특히, 고정 설치되는 사물기기(100)와 NFC 통신을 수행하는 경우를 대비하여 이동이 자유롭고 NFC 통신 모듈이 장착된 스마트폰 또는 스마트패드 등을 포함할 수 있을 것이다.
특히, 사용자 단말(200)은 NFC 통신 모듈(210), 인터넷 통신 모듈(220) 및 네트워크 구성 정보 할당 모듈(230)을 포함한다.
NFC 통신 모듈(210)은 사물기기(100)의 NFC 통신 모듈(130)과 NFC와 같은 비접촉 근거리 통신 방식으로 통신하여, 사물기기(100)의 식별값 및 제1난수를 수신하고, 관리 서버(300)가 생성한 PSK를 사물기기(100)로 전송한다.
전술한 바와 같이, 본 발명의 실시예에서 사물기기(100)와 사용자 단말(200)은 NFC 방식으로 통신하기 때문에 상기의 식별값 및 제1난수, 또는 PSK에 대한 암호화 없이 전송이 가능하다.
인터넷 통신 모듈(220)은 LLN 환경에 비해서 자원의 제한이 거의 없는 인터넷 환경에서 통신 주체의 종단간 암호화된 메시지를 전송하고, TLS(Transport Layer Security) 또는 DTLS(Datagram Transport Layer Security)와 같은 표준 프로토콜을 이용할 수 있다.
네트워크 구성 정보 할당 모듈(230)은 사물기기(100)와 관리 서버(300)가 인터넷을 통해 직접 연결될 수 있도록 네트워크 구성 정보를 할당한다. 네트워크 구성 정보는 아이피(IP) 주소와 포트(Port) 번호를 포함하는 소켓 정보를 의미한다. 즉, 인터넷 영역에서 서로 연결되기 위해서는 어느 일방의 소켓 정보를 알아야 하는데 사물기기(100)는 현재 관리 서버(300)에 등록하는 단계이기 때문에 할당된 소켓 정보가 없다. 따라서, 본 발명의 실시예에서 네트워크 구성 정보 할당 모듈(230)은 사물기기(100)에 대한 아이피 주소와 포트 번호를 포함하는 소켓 정보를 할당하고, 해당 소켓 정보를 사물기기(100)와 관리 서버(300)에 각각 전송함으로써 해당 소켓 정보를 이용하여 서로 인터넷 연결이 가능하도록 한다.
구체적으로 네트워크 구성 정보 할당 모듈(230)은 동적 호스트 구성 프로토콜(Dynamic Host Configuration Protocol, DHCP)을 통해 댁내의 AP(Access Point) 등으로부터 네트워크 구성 정보를 할당받아 전달하는 방식으로 사물기기(100)에 대한 아이피 주소와 포트 번호를 포함하는 소켓 정보를 할당할 수 있다.
관리 서버(300)는 사용자 단말(200)과의 암호화된 통신을 통해 사물기기(100)의 식별값 및 제1난수를 획득하고, 획득된 정보를 통해 사물기기(100)와의 암호화된 통신을 위한 PSK를 생성하여 사용자 단말(200)과 공유한다.
그리고, 관리 서버(300)는 사물기기(100)와의 인터넷 연결을 통해 PSK를 이용한 암호화된 통신을 수행함으로써 사물기기(100)를 등록한다. 사물기기(100)를 등록하는 보다 구체적인 구현 과정에 대한 설명은 후술하기로 한다.
특히, 관리 서버(300)는 인터넷 통신 모듈(310), 제2난수 생성부(320) 및 PSK 생성부(330)를 포함한다.
인터넷 통신 모듈(310)은 사용자 단말(200)의 인터넷 통신 모듈(220)과 동일하게 TLS 또는 DTLS와 같은 표준 프로토콜을 통해 인터넷 환경에서 통신 주체의 종단간 암호화된 메시지 전송을 수행한다.
제2난수 생성부(320)는 PSK를 생성하는데 이용되는 제2난수를 생성한다. 본 발명의 실시예에서 제2난수는 128bit의 랜덤 숫자일 수 있으나 이에 한정되는 것은 아니다.
PSK 생성부(330)는 미리 설정된 연산자로 사물기기(100)가 생성한 제1난수와 관리 서버(300)의 제2난수를 연산하여 PSK를 생성한다. 이 때, 사물기기(100)와 관리 서버(300)는 미리 설정된 연산자를 서로 알고 있도록 설계하고, 사물기기(100)가 해당 연산자를 이용하여 사용자 단말(200)을 통해 수신되는 PSK를 검증할 수 있다.
특히, 본 실시예에서 PSK 생성부(330)는 제1난수와 제2난수를 배타적 논리합(eXclusive OR, XOR) 연산자로 연산하여 PSK를 생성할 수 있으나, 사용되는 연산자는 이에 한정되는 것은 아니므로 다양한 연산자를 이용할 수 있다.
상기와 같이 본 발명의 실시예에 따른 안전한 사물인터넷 서비스 제공을 위한 사물기기의 초기 등록 및 비밀키 설정 시스템에서는, NFC와 같은 비접촉 근거리 통신 방식을 통해 외부로부터 침입을 차단한 상태에서 사물기기(100)에 대한 정보를 사용자 단말(200)로 전송하고, 사용자 단말(200)이 관리 서버(300)와 해당 정보를 포함하는 암호화 메시지를 송수신함으로써 사물기기(100)와 관리 서버(300)의 암호화된 통신을 위한 PSK를 공유할 수 있다.
즉, 컴퓨팅 자원이 제한되는 사물기기(100)는 별도의 암호화 과정을 수행할 필요 없이 NFC 방식으로 PSK 생성에 필요한 정보를 사용자 단말(200)로 전송하고, 컴퓨팅 자원에 제한이 없는 사용자 단말(200)이 관리 서버(300)와 암호화된 채널을 형성하여 PSK를 공유하고 사물기기(100)로 전달함으로써, 사물기기(100)를 관리 서버(300)에 안전하게 등록할 수 있다.
이하에서는 본 발명의 실시예에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법에 대해 보다 구체적으로 살펴보기로 한다.
도 2는 발명의 실시예에 따른 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법의 구현 과정을 개략적으로 나타내는 플로우차트이다.
도 3은 도 2의 구현 과정을 사물기기, 사용자 단말 및 관리 서버 측면에서 상세하게 나타내는 플로우차트이다.
도 4는 도 3의 사용자 단말과 관리 서버 간의 핸드쉐이킹 과정을 나타내는 플로우차트이다.
도 2에 도시된 바와 같이, 사용자 단말(200) 및 관리 서버(300)는 사물인터넷 환경에서 동작하는 사물기기(100)의 식별값 및 사물기기(100)의 제1난수를 암호화한 제1암호화 메시지를 송수신하여 사물기기(100)와 관리 서버(300) 간의 암호화된 통신을 위한 PSK를 공유한다(S100).
구체적으로, 도 3에 도시된 바와 같이, 상기의 단계(S100)는 사물기기(100)에 대한 사용자 조작이 입력되고(S11), 사물기기(100)와 사용자 단말(200)의 통신이 연결되면(S12), 사물기기(100)가 식별값 및 제1난수를 NFC 통신을 이용하여 사용자 단말(200)로 전송하는 단계(S20)를 포함한다.
즉, 사물기기(100)는 버튼 형태의 간단한 입력부(미도시)를 포함할 수 있고, 사용자는 새로운 사물기기(100)를 관리 서버(300)에 등록하고자 할 경우 사물기기(100)의 버튼만을 간단하게 조작하면 된다. 따라서, 사용자의 조작이 입력되면 사물기기(100)는 사용자 단말(200)과의 통신 대기 상태로 진입한다.
그리고, S12 단계에서 사물기기(100)와 사용자 단말(200)은 NFC와 같은 비접촉 근거리 통신 방식으로 통신하는 것을 특징으로 한다. 이러한 특징을 구체적으로 살펴보면, 와이파이(Wi-fi) 또는 블루투스(Bluetooth) 방식의 통신은 통신 반경이 상대적으로 넓어서 사용자의 시야 밖에 있는 공격자가 전송 중인 메시지를 가로챌 수 있기 때문에, 이러한 통신을 이용할 경우 안전한 메시지 송수신을 위해 사물기기(100)의 메시지를 암호화하여 전송해야 한다.
그러나 컴퓨팅 자원이 제한되는 사물기기(100)는 공개키 알고리즘을 이용하여 통신에 이용할 보안키를 설정하는 과정을 수행하기 어렵기 때문에, 본 발명의 실시예에서 사물기기(100)는 NFC 방식을 이용하여 PSK 설정에 필요한 정보를 안전하게 사용자 단말(200)로 전송할 수 있다.
즉, NFC 방식의 통신 반경은 수 cm에 불과하여 사용자는 사용자 단말(200)을 사물기기(100)에 접촉시킨 이후에 공격자에 의한 접근이 있는지를 육안으로 확인하고, 공격자에 의한 접근이 발생하면 사물기기(100)와 사용자 단말(200)의 접촉을 해제 즉, NFC 통신 연결을 끊을 수 있기 때문에 PSK 설정에 필요한 정보 전송에 대한 안전성이 확보될 수 있다.
또한, 상기의 단계(S100)는 사용자 단말(200)과 관리 서버(300)가 TLS나 DTLS 프로토콜의 핸드쉐이킹(Handshaking)을 통해 상호 간의 인증을 수행하고 보안키를 공유하는 단계(S30)를 포함한다.
즉, PSK를 설정하기 위한 보안 통신을 하기 위해서는 핸드쉐이킹을 통해 통신 대상이 되는 상대에 대한 인증 및 보안키를 생성하여 공유하는 과정을 수행해야 하는데, 이러한 동작은 많은 컴퓨팅 자원을 요구하므로 본 발명의 실시예에서는 S12 단계를 통해 사물기기(100)와 연결된 사용자 단말(200)이 사물기기(100)를 대신하여 핸드쉐이킹을 수행함으로써 보안키를 공유한다.
본 발명의 실시예에서 사용자 단말(200)과 관리 서버(300)는 상기 보안키를 설정하기 위해 대칭키 알고리즘 또는 비대칭키 알고리즘 중 어느 알고리즘이든 이용할 수 있다. 다만 대칭키 알고리즘을 통해 보안키를 생성한 경우에는 단순한 암호 기술이 아닌 암호, 데이터 무결성, 일대일 데이터 송신 인증 제공까지 수행할 수 있는 인증-암호 기술(Authenticated Encription, 예로서 AES의 CCM)을 이용하여 메시지의 송신을 검증하는 것이 타당할 것이다.
도 4를 통해 사용자 단말(200)과 관리 서버(300)가 DTLS 프로토콜을 통해 핸드쉐이킹을 수행하는 구체적인 과정을 살펴보면, DTLS 프로토콜을 통한 핸드쉐이킹시에 사용자 단말(200)과 관리 서버(300)는 6개의 flight(S31 내지 S36)을 주고 받는다.
즉, 사용자 단말(200)과 관리 서버(300)는 상대방의 통신 가능 여부를 확인하는 1차 헬로우 메시지와 서비스 거부 공격에 대응하기 위한 1차 헬로우 메시지에 대한 검증 요청 메시지, 1차 헬로우 메시지에 대한 검증용 데이터가 포함된 2차 헬로우 메시지와 2차 헬로우 메시지에 대한 응답과 사용자 단말(200)과 관리 서버(300)의 인증서 또는 공개키를 포함하는 제1인증 메시지, 및 상기 인증서 또는 상기 공개키로 암호화된 키 정보를 포함하는 제2인증 메시지와 협상된 보안 방식으로 암호화할 것을 알리는 암호화 개시 메시지의 송수신을 통해 핸드쉐이킹을 수행한다.
구체적으로, 본 발명의 실시예는 사물기기(100)의 등록을 위해 사용자 단말(200)이 관리 서버(300)로 핸드쉐이킹을 요청한 경우이므로, 우선 사용자 단말(200)은 관리 서버(300)의 통신 가능 여부를 확인하기 위한 1차 헬로우(사용자 단말 Hello) 메시지를 관리 서버(300)로 전송하고(S31), 그에 따라 관리 서버(300)는 서비스 거부 공격에 대응할 수 있도록 상기 1차 헬로우 메시지의 검증을 요청(HelloVerifyRequest)한다(S32).
그리고 사용자 단말(200)은 다시 1차 헬로우 메시지에 대한 검증용 데이터가 포함된 2차 헬로우 메시지를 관리 서버(300)로 전송하고(S33), 관리 서버(300)는 2차 헬로우 메시지에 대한 응답으로 사용자 단말(200)의 통신 가능 여부를 확인하기 위한 헬로우(관리 서버 Hello) 메시지로 응답한다(S34-1).
이어서 관리 서버(300)는 관리 서버(300)에 대한 인증이 가능하도록 사용자 단말(200)로 인증서(Certificate)를 전송하고(S34-2), 추가로 필요한 경우(예를 들어 관리 서버(300)가 인증서를 가지고 있지 않거나, 인증서가 서명 전용인 경우) 관리 서버(300)는 관리 서버 키 교환(관리 서버KeyExchange) 메시지를 사용자 단말(200)로 전송하고(S34-3), 사용자 단말(200)이 신뢰할 수 있는 대상인지 확인하기 위해 사용자 단말(200) 의 인증서(CertificateRequest)를 요청할 수 있다(S34-4).
그리고, 관리 서버(300)는 메시지 전송이 완료되었음을 알리는 관리 서버 헬로우 완료(관리 서버 HelloDone) 메시지를 전송한다(S34-5).
다음으로 사용자 단말(200)은 관리 서버(300)의 요청에 따라 보유하고 있는 인증서 중 하나를 선택하여 관리 서버(300)로 전송하고(S35-1), 관리 서버(300)의 인증서에 포함되어 있는 공개키로 암호화하여 키 교환에 사용할 예비 키(사용자 단말 KeyExchange)를 전송하는 한편(S35-2), 사용자 단말(200)의 서명용 개인키로 서명된 서명값(CertificateVerify)을 관리 서버(300)로 전송한다(S35-3).
그리고 사용자 단말(200)은 상기의 과정에서 협상된 보안 방식을 다음 메시지 전송부터 적용할 것임을 알리고(ChangeCipherSpec, Finished)(S35-4, S35-5), 관리 서버(300)는 수신한 인증서에 포함된 공개키를 이용하여 사용자 단말(200)의 서명값을 복호화함으로써 사용자 단말(200)을 검증하며, 사용자 단말(200)이 적법한 것으로 판단되면 전술한 단계(S35-4, S35-5)에 대한 응답으로 암호화 개시 메시지를 전송한다(ChangeCipherSpec, Finished)(S36-1, S36-2).
전술한 과정은 DTLS 프로토콜을 이용한 경우이며, 본 발명의 실시예는 이에 한정되지 않으므로 사용자 단말(200)과 관리 서버(300)가 TLS 프로토콜을 통해 핸드쉐이킹할 경우에는 도 4의 S31과 S32 과정을 생략한 4개의 flight을 통해 상호 간의 인증 및 보안키 생성을 수행할 수 있다.
다시, 도 3을 참고하면, 상기의 단계(S100)에서 사용자 단말(200)은 상기 공유키로 사물기기(100)의 식별값 및 제1난수를 암호화한 제1-1암호화 메시지를 생성하고(S40), 네트워크 구성 정보를 할당하여 사물기기(100)로 전송하고(S52), 제1-1암호화 메시지를 관리 서버(300)로 전송한다(S54).
S40 단계에서, 사용자 단말(200)은 다수의 사물기기(100)를 대상으로 초기 설정을 수행할 수 있으므로, 각 사물기기(100)와의 트랜젝션을 구별하기 위한 트랜젝션 아이디(Transation ID, TID), 리플레이 공격(Replay Attack)을 막기 위한 시간 정보(Time Stamp, TS), 및 네트워크 구성 정보로서 아이피(IP) 주소와 포트(Port) 정보를 포함하는 소켓 정보를 추가로 포함하여 제1-1암호화 메시지를 생성할 수 있다.
이와 같이, 사용자 단말(200)은 상기의 정보를 식별값 및 제1난수와 함께 암호화하여 전송하기 때문에 관리 서버(300)는 트랜젝션 아이디를 통해 해당 암호화 메시지가 현재 트랜젝션에 해당하는 것인지 판단할 수 있고, 시간 정보를 통해 제1-1암호화 메시지가 생성되어 전송된 시간을 확인하여 공격자의 리플레이 공격을 막을 수 있고, 네트워크 구성 정보에 기초하여 사물기기(100)와 인터넷으로 연결될 네트워크 정보를 확인할 수 있다.
S52단계에서, 사용자 단말(200)은 아이피 주소와 포트 정보를 포함하는 소켓 정보를 사물기기(100)로 전송하기 때문에, 사물기기(100)는 해당 네트워크 구성 정보에 기초하여 관리 서버(300)와 인터넷으로 연결될 네트워크 정보를 설정할 수 있다.
즉, 사물기기(100)는 현재 관리 서버(300)에 초기 등록하는 과정이기 때문에 할당된 소켓 정보가 없다. 따라서 본 발명의 실시예에서는 사용자 단말(200)이 동적 호스트 구성 프로토콜과 같은 방식을 통해 소켓 정보를 할당받아 사물기기(100)로 전송함으로써, 사물기기(100)와 관리 서버(300)가 직접 접속할 수 있는 네트워크 환경을 설정하도록 할 수 있다.
이어서, 관리 서버(300)는 제1-1암호화 메시지를 복호화하여 사물기기(100)의 식별값, 제1난수, 트랜젝션 아이디, 시간 정보 및 네트워크 구성 정보를 획득하고, 제2난수 및 PSK를 생성하며(S61), 보안키로 제2난수 및 PSK를 암호화한 제1-2암호화 메시지를 생성하고(S62), 생성된 제1-2암호화 메시지를 사용자 단말(200)로 전송한다(S70).
S61단계에서, 구체적으로 관리 서버(300)는 임의의 제2난수를 생성하고, 미리 설정된 연산자로 제1난수와 제2난수를 연산하는 방식으로 PSK를 생성한다. 특히, 본 실시예에서 연산자는 배타적 논리합(eXclusive OR, XOR) 연산자일 수 있으나, 이에 한정되는 것은 아니므로 다양한 연산자를 이용할 수 있다.
또한, S62단계에서, 관리 서버(300)는 트랜젝션 아이디 및 시간 정보를 추가로 포함하여 제1-2암호화 메시지를 생성할 수 있다.
따라서, 사용자 단말(200)은 제1-2암호화 메시지에 포함된 트랜젝션 아이디와 S54 단계에서 전송한 제1암호화 메시지에 포함된 트랜젝션 아이디를 비교하여 해당 암호화 메시지가 현재 트랜젝션에 해당하는 것인지 판단할 수 있고, 시간 정보를 통해 공격자의 리플레이 공격을 막을 수 있다.
특히, 본 발명의 실시예에서 사용자 단말(200)과 관리 서버(300)는 시간 정보 뒤에 일련번호를 추가하여 암호화 메시지를 생성할 수 있다.
즉, 사용자 단말(200)과 관리 서버(300)가 암호화 메시지를 송수신하는 짧은 시간 사이에 공격자가 리플레이 공격을 수행할 수 있는데, 이 경우 사용자 단말(200)은 리플레이 공격에 의한 암호화 메시지를 정상으로 판단하게 될 수 있다. 따라서, 본 발명의 실시예에서 사용자 단말(200)은 시간 정보의 뒤에 일련번호를 추가하여 제1-1암호화 메시지를 생성하고, 관리 서버(300)는 일련번호를 증가시켜서 제1-2암호화 메시지를 생성함으로써, 사용자 단말(200)이 제1-2암호화 메시지를 검증할 수 있도록 한다.
이어서, 사용자 단말(200)은 보안키로 제1-2암호화 메시지를 복호화하여 트랜젝션 아이디, 시간 정보, 제2난수 및 PSK를 획득한다(S80).
이와 같이, 상기의 단계(S100)를 통해 사용자 단말(200)과 관리 서버(300)는 사물기기(100)와 관리 서버(300)의 통신을 위한 PSK를 공유하게 되고, S52 및 S54를 통해 사물기기(100)와 관리 서버(300)는 인터넷을 통해 연결될 수 있는 네트워크 구성 정보를 공유하게 된다.
다시 도 2 및 도 3을 참고하면, 사용자 단말(200)은 S80을 통해 획득된 제2난수 및 PSK를 사물기기(100)로 전송한다(S200).
이 때, 사용자 단말(200)은 S20의 단계에서와 마찬가지로 NFC와 같은 비접촉 근거리 통신 방식으로 통신함으로써 별도의 암호화없이 제2난수 및 PSK를 전송할 수 있다.
또한, 사물기기(100)는 수신된 제2난수 및 PSK에 기초하여 PSK를 검증할 수 있다. 구체적으로 사물기기(100)와 관리 서버(300)는 상기 PSK를 연산하기 위해 미리 설정된 연산자를 서로 알고 있으므로, 사물기기(100)는 해당 연산자를 통해 제2난수 및 PSK를 연산함으로써 PSK를 검증할 수 있다.
특히, 본 발명의 실시예에서 미리 설정된 연산자는 배타적 논리합 연산자일 수 있고, 이 경우 PSK는 배타적 논리합 연산자로 제1난수와 제2난수를 연산한 값이므로, 배타적 논리합 연산자로 제2난수와 PSK를 연산할 경우 제1난수가 생성되어야 한다. 따라서 사물기기(100)는 배타적 논리합 연산자로 제2난수 및 PSK를 연산한 값과 제1난수를 비교한 결과에 기초하여 PSK를 검증할 수 있다.
이어서, 관리 서버(300)는 PSK로 사물기기(100)의 식별값 및 제1난수를 암호화한 제2암호화 메시지를 생성하고(S310), 제2암호화 메시지를 사물기기(100)로 전송한다(S320).
S310단계에서, 관리 서버(300)는 해당 PSK의 유효 기간(Valid Time, VT)을 더 포함하여 제2암호화 메시지를 생성할 수 있다.
또한, S320단계에서, 관리 서버(300)는 S54단계에서 전송된 제1-1암호화 메시지에 포함된 소켓 정보에 기초하여 사물기기(100)로 직접 제2암호화 메시지를 전송한다.
즉, 사용자 단말(200)이 S100 단계를 통해 할당된 소켓 정보를 사물기기(100)로 전송하였으므로, 사물기기(100)는 해당 소켓 정보에 기초하여 메시지 수신 대기 상태에 있을 수 있고, 관리 서버(300)는 해당 소켓 정보로 접근하여 제2암호화 메시지를 전송할 수 있다.
이어서, 사물기기(100)는 S200 단계에서 수신된 PSK로 제2암호화 메시지를 복호화하고, 복호화하여 획득된 메시지에 기초하여 관리 서버(300)를 인증한다(S400).
구체적으로 사물기기(100)는 PSK로 제2암호화 메시지를 복호화하여 식별값 및 제1난수를 획득하고, 획득된 식별값 및 제1난수를 S20단계에서 사용자 단말(200)로 전송한 식별값 및 제1난수와 비교하는 방식으로 관리 서버(300)를 인증할 수 있다.
상기의 비교 결과, 획득된 식별값 및 제1난수가 전송한 식별값 및 제1난수와 동일한 경우, 사물기기(100)는 PSK를 정상적으로 수신하였다는 의미로 PSK로 식별값 및 S200 단계에서 수신한 제2난수를 암호화한 제3암호화 메시지를 생성하고(S500), 제3암호화 메시지를 관리 서버(300)로 전송한다(S600).
S600 단계에서, 사물기기(100)는 S320 단계에서와 마찬가지로 할당된 소켓 정보에 기초하여 관리 서버(300)와 인터넷 연결되어, 제3암호화 메시지를 전송할 수 있다.
이어서, 관리 서버(300)는 PSK로 제3암호화 메시지를 복호화하여 식별값 및 제2난수를 획득하고, 제2난수가 S61 단계에서 직접 생성한 제2난수와 동일하면 정당한 사물기기(100)로부터 메시지가 전송된 것으로 판단하여 상기 식별값으로 사물기기(100)를 등록한다(S700).
전술한 바와 같이, 본 발명의 실시예에서는 사물기기(100)와 사용자 단말(200) 간의 채널, 및 사물기기(100)와 관리 서버(300) 간의 채널이 분리된 2 채널을 통해 사물기기(100)에 대한 등록 및 PSK 설정이 수행된다. 즉, 사물기기(100)와 사용자 단말(200) 간의 채널에서는 NFC 통신을 이용하여 메시지가 송수신되고, 사물기기(100)와 관리 서버(300) 간의 채널에서는 TCP/IP 기반의 인터넷 소켓 통신을 이용하여 메시지가 송수신된다. 그리고, 사용자 단말(200)은 NFC와 인터넷 소켓 통신 모두를 이용하여 사물기기(100)와 관리 서버(300) 사이의 등록 및 PSK 설정을 돕는 중재 장치의 역할을 수행한다.
또한, 본 발명의 실시예에서는 S20단계에서 사물기기(100)가 식별값 및 제1난수를 사용자 단말(200)로 전송하는 것으로 기재하였으나, 본 발명은 이에 한정되지 않으므로 초기에 설정된 임시 PSK가 있는 경우 임시 PSK를 함께 사용자 단말(200)로 전송하는 것도 가능하다.
즉, 사물기기에 따라서 공장 출고 당시에 임시 PSK가 설정되어 있을 수 있으므로, 이 경우에 본 발명에서는 S54 단계에서 임시 PSK를 함께 관리 서버(300)로 전송한다. 그리고 S62단계에서 관리 서버(300)는 생성한 PSK를 임시 PSK로 암호화하고, 사용자 단말(200)과 공유하는 보안키로 상기 암호화 메시지를 다시 암호화한 암호화 메시지를 사용자 단말(200)로 전송하게 된다. 이어서, 사물기기(100)는 이를 수신하고 임시 PSK로 복호화하여 PSK를 획득하는 방식으로, 임시 PSK를 획득된 PSK로 갱신하는 것도 가능하다.
본 발명이 속하는 기술분야의 당업자는 상술한 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다.
그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100: 사물기기 110: 제1난수 생성부
120: LLN 통신 모듈 130, 210: NFC 통신 모듈
200: 사용자 단말 220, 310: 인터넷 통신 모듈
230: 네트워크 구성 정보 할당 모듈 300: 관리 서버
320: 제2난수 생성부 330: PSK 생성부

Claims (11)

  1. 비접촉 근거리 통신 및 인터넷 소켓 통신을 포함하는 TWO FACTOR 통신 채널을 활용하여 사물기기를 관리 서버에 등록하고 사물기기의 비밀키를 설정하는 방법으로서,
    사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기가 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 비접촉 근거리 통신을 이용하여 사용자 단말로 전송하는 단계;
    상기 사용자 단말이 관리 서버와 공유하는 보안키로 상기 식별값 및 상기 제1난수를 암호화한 제1-1암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계;
    상기 사물기기가 상기 사용자 단말이 할당받은 상기 사물기기의 아이피(IP) 주소와 포트(Port) 번호를 포함하는 소켓 정보인 네트워크 구성 정보를 수신하는 단계;
    상기 관리 서버가 미리 설정된 연산자로 상기 제1-1암호화 메시지로부터 획득한 상기 제1난수 및 상기 관리 서버가 생성한 제2난수를 연산하여 PSK(Pre Shared Key)를 생성하고, 상기 보안키로 상기 PSK를 암호화한 제1-2암호화 메시지를 생성하여 상기 사용자 단말로 전송하는 단계;
    상기 사용자 단말이 상기 PSK를 상기 비접촉 근거리 통신을 이용하여 상기 사물기기로 전송하는 단계;
    상기 관리 서버가 상기 PSK로 상기 식별값 및 상기 제1난수를 암호화한 제2암호화 메시지를 인터넷 소켓 통신을 이용하여 상기 사물기기로 전송하는 단계; 및
    상기 사물기기가 상기 PSK로 상기 제2암호화 메시지를 복호화하여 상기 식별값 및 제1난수를 획득하고, 상기 획득된 식별값 및 제1난수를 상기 사물기기가 상기 사용자 단말로 전송한 식별값 및 제1난수와 비교하여 상기 관리 서버를 인증하는 단계를 포함하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  2. 제1항에 있어서,
    상기 관리 서버는 상기 제1-2암호화 메시지에 상기 제2난수를 포함시켜 상기 사용자 단말로 전송하고,
    상기 사용자 단말은 상기 제2난수를 추가로 상기 비접촉 근거리 통신을 이용하여 상기 사물기기로 전송하고,
    상기 사물기기는 상기 미리 설정된 연산자로 상기 PSK 및 제2난수를 연산하고, 연산 결과와 상기 제1난수를 비교하여 상기 PSK를 검증하는 단계를 더 포함하는 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  3. 비접촉 근거리 통신 및 인터넷 소켓 통신을 포함하는 TWO FACTOR 통신 채널을 활용하여 사물기기를 관리 서버에 등록하고 사물기기의 비밀키를 설정하는 방법으로서,
    사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기가 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 관리 서버로 전송하도록 비접촉 근거리 통신을 이용하여 사용자 단말로 전송하는 단계;
    상기 사물기기가 상기 사용자 단말이 할당받은 상기 사물기기의 아이피(IP) 주소와 포트(Port) 번호를 포함하는 소켓 정보인 네트워크 구성 정보를 수신하는 단계;
    상기 사물기기가 상기 비접촉 근거리 통신을 이용하여 상기 사용자 단말로부터 관리 서버와의 통신을 위한 PSK(Pre Shared Key)를 수신하는 단계;
    상기 사물기기가 상기 관리 서버로부터 상기 PSK로 상기 식별값 및 제1난수를 암호화한 암호화 메시지를 인터넷 소켓 통신을 이용하여 수신하는 단계; 및
    상기 사물기기가 상기 PSK로 상기 암호화 메시지를 복호화하여 상기 식별값 및 제1난수를 획득하고, 상기 획득된 식별값 및 제1난수를 상기 사물기기가 상기 사용자 단말로 전송한 식별값 및 제1난수와 비교하여 상기 관리 서버를 인증하는 단계를 포함하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  4. 제3항에 있어서,
    상기 암호화 메시지는 상기 네트워크 구성 정보를 기초로 한 인터넷 소켓 통신을 이용하여 상기 사물기기로 전송되는 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  5. 제1항 또는 제3항에 있어서,
    상기 관리 서버의 인증이 성공하면, 상기 사물기기가 상기 PSK로 상기 식별값 및 제2난수를 복호화한 제3암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계를 더 포함하는 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  6. 제3항에 있어서,
    상기 PSK를 수신하는 단계에서, 상기 사물기기는 상기 관리 서버가 생성한 제2난수를 추가로 수신하고,
    상기 사물기기는 미리 설정된 연산자로 상기 PSK 및 제2난수를 연산하고, 연산 결과와 상기 제1난수를 비교하여 상기 PSK를 검증하는 단계를 더 포함하는 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  7. 비접촉 근거리 통신 및 인터넷 소켓 통신을 포함하는 TWO FACTOR 통신 채널을 활용하여 사물기기를 관리 서버에 등록하고 사물기기의 비밀키를 설정하는 방법으로서,
    사용자 단말이 사물인터넷(Internet of Things, IoT) 환경에서 동작하는 사물기기로부터 상기 사물기기의 식별값 및 상기 사물기기에 의해 생성된 제1난수를 비접촉 근거리 통신을 이용하여 수신하는 단계;
    상기 사용자 단말이 상기 사물기기의 아이피(IP) 주소와 포트(Port) 번호를 포함하는 소켓 정보인 네트워크 구성 정보를 할당받아 상기 사물기기 및 관리 서버로 전송하는 단계;
    상기 사용자 단말이 관리 서버와 공유하는 보안키로 상기 식별값 및 제1난수를 암호화한 제1-1암호화 메시지를 생성하여 상기 관리 서버로 전송하는 단계;
    상기 사용자 단말이 상기 관리 서버로부터 PSK(Pre Shared Key)를 암호화한 제1-2암호화 메시지를 수신하는 단계; 및
    상기 PSK를 상기 비접촉 근거리 통신을 이용하여 상기 사물기기로 전송하는 단계를 포함하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  8. 제1항, 제3항 및 제7항 중 어느 한 항에 있어서,
    상기 비접촉 근거리 통신은 NFC(Near Field Communication)인 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  9. 삭제
  10. 제7항에 있어서,
    상기 제1-1암호화 메시지는 트랜젝션을 구별하기 위한 트랜젝션 아이디(Transaction ID, TID), 리플레이 공격(Replay Attack)을 막기 위한 시간 정보(Time Stamp, TS), 및 상기 네트워크 구성 정보를 더 포함하여 암호화된 메시지인 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
  11. 제10항에 있어서,
    상기 제1-2암호화 메시지는 상기 트랜젝션 아이디 및 시간 정보를 더 포함하여 암호화된 메시지인 것을 특징으로 하는 TWO FACTOR 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법.
KR1020150136640A 2015-09-25 2015-09-25 Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법 KR101762013B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150136640A KR101762013B1 (ko) 2015-09-25 2015-09-25 Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150136640A KR101762013B1 (ko) 2015-09-25 2015-09-25 Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법

Publications (2)

Publication Number Publication Date
KR20170037270A KR20170037270A (ko) 2017-04-04
KR101762013B1 true KR101762013B1 (ko) 2017-07-26

Family

ID=58588543

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150136640A KR101762013B1 (ko) 2015-09-25 2015-09-25 Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법

Country Status (1)

Country Link
KR (1) KR101762013B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277330A1 (ko) * 2021-06-29 2023-01-05 삼성전자 주식회사 가전기기, 그 제어 방법, 및 가전기기와 통신하는 모바일 장치 제어 방법
WO2023008697A1 (ko) * 2021-07-30 2023-02-02 삼성전자 주식회사 가전기기 및 가전기기의 동작 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101987843B1 (ko) * 2017-08-16 2019-06-11 덕성여자대학교 산학협력단 사물인터넷 환경에서 기기 사이의 대역외 채널의 안전도를 고려한 비밀키 설정 방법
KR101987848B1 (ko) * 2017-08-17 2019-06-11 덕성여자대학교 산학협력단 사물인터넷 환경에서 서로 다른 대역외 채널을 사용하는 기기 사이의 비밀키 설정 방법
KR101976583B1 (ko) * 2017-08-22 2019-05-09 덕성여자대학교 산학협력단 서로 다른 안전도와 서로 다른 대역외 채널을 사용하는 사물인터넷 경량 기기 사이의 비밀키 설정 방법
CN108964912B (zh) * 2018-10-18 2022-02-18 深信服科技股份有限公司 Psk生成方法、装置、用户设备、服务器和存储介质
KR102255468B1 (ko) * 2018-12-11 2021-05-24 (주)드림시큐리티 2단계 인증을 이용한 사물 인터넷 기기의 암호 키 발급 장치 및 방법
US10986677B2 (en) 2019-03-05 2021-04-20 Dialog Semiconductor Korea Inc. Method and apparatus for connecting to access point in WLAN network
KR102161647B1 (ko) * 2020-03-06 2020-10-05 주식회사그린존시큐리티 IoT 디바이스의 데이터 전송을 보안하기 위한 장치 및 이를 위한 방법
CN114172724A (zh) * 2021-12-07 2022-03-11 深圳供电局有限公司 一种基于低成本物联网智能设备的双重加密方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483187B1 (ko) * 2008-12-16 2015-01-16 주식회사 케이티 랜덤 값의 교환을 통한 수신 제한 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101483187B1 (ko) * 2008-12-16 2015-01-16 주식회사 케이티 랜덤 값의 교환을 통한 수신 제한 시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023277330A1 (ko) * 2021-06-29 2023-01-05 삼성전자 주식회사 가전기기, 그 제어 방법, 및 가전기기와 통신하는 모바일 장치 제어 방법
WO2023008697A1 (ko) * 2021-07-30 2023-02-02 삼성전자 주식회사 가전기기 및 가전기기의 동작 방법

Also Published As

Publication number Publication date
KR20170037270A (ko) 2017-04-04

Similar Documents

Publication Publication Date Title
KR101762013B1 (ko) Two factor 통신 채널을 활용한 사물기기의 등록 및 비밀키 설정 방법
US11765172B2 (en) Network system for secure communication
US8694782B2 (en) Wireless authentication using beacon messages
US10567165B2 (en) Secure key transmission protocol without certificates or pre-shared symmetrical keys
KR102021213B1 (ko) 엔드 투 엔드 서비스 계층 인증
TWI647941B (zh) 用於向網路登記客戶端設備的方法、設備、及電腦程式產品
CN107659406B (zh) 一种资源操作方法及装置
US8327143B2 (en) Techniques to provide access point authentication for wireless network
US10516654B2 (en) System, apparatus and method for key provisioning delegation
KR102062162B1 (ko) 보안 인증 방법, 구성 방법 및 관련 기기
US10009760B2 (en) Providing network credentials
CN104980928A (zh) 一种用于建立安全连接的方法、设备及系统
KR20070067734A (ko) 모바일 디바이스 인증 방법 및 장치
CN111527762A (zh) 用于设备到设备通信网络中端到端安全通信的系统和方法
KR20160058491A (ko) 사용자 기기의 식별자에 기반하여 서비스를 제공하는 방법 및 장치
WO2014127751A1 (zh) 无线终端配置方法及装置和无线终端
Suomalainen Smartphone assisted security pairings for the Internet of Things
WO2017091987A1 (zh) 一种终端间的安全交互方法及装置
KR102322605B1 (ko) 사물인터넷 환경에서의 비밀키 설정 및 상호 기기 인증 방법
CN109995723B (zh) 一种域名解析系统dns信息交互的方法、装置及系统
CN111866881A (zh) 无线局域网认证方法与无线局域网连接方法
US20190379655A1 (en) Data communication system
JP2009104509A (ja) 端末認証システム、端末認証方法
KR101878713B1 (ko) 네트워크망에 사용자 단말기를 접속하기 위한 방법 및 시스템

Legal Events

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