KR20160121775A - 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법 - Google Patents

모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법 Download PDF

Info

Publication number
KR20160121775A
KR20160121775A KR1020160008339A KR20160008339A KR20160121775A KR 20160121775 A KR20160121775 A KR 20160121775A KR 1020160008339 A KR1020160008339 A KR 1020160008339A KR 20160008339 A KR20160008339 A KR 20160008339A KR 20160121775 A KR20160121775 A KR 20160121775A
Authority
KR
South Korea
Prior art keywords
mobile terminal
iot device
authentication
information
terminal
Prior art date
Application number
KR1020160008339A
Other languages
English (en)
Other versions
KR101810150B1 (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 (주)아이씨엔캐스트
Publication of KR20160121775A publication Critical patent/KR20160121775A/ko
Application granted granted Critical
Publication of KR101810150B1 publication Critical patent/KR101810150B1/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/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
    • H04L67/16
    • 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
    • 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/3226Cryptographic 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 a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Abstract

본 발명에 따르면, 모바일 단말과 IoT기기간 제3자 보안 인증에 있어서, 제3자 보안 인증서버를 도입하여 모바일 단말의 해킹에 대비한 IoT기기 원격 제어용 어플리케이션 프로그램의 위조/변조체크, 모바일 단말-IoT기기간의 보안인증 패킷 등을 제3자가 점검하여 인증해주는 프로세스를 적용함으로써, 모바일 단말과 IoT기기간 보안 인증과정의 무결성 및 보안성을 강화할 수 있다.

Description

모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법{THIRD PARTY'S SECURITY AUTHENTICATION SYSTEM BETWEEN MOBILE DEVICE AND IoT DEVICES AND METHOD THEREOF}
본 발명은 모바일 단말을 통한 IoT(Internet of Things ;사물인터넷)기기의 원격제어 시에 모바일 단말과 IoT기기간의 보안인증기술에 관한 것으로, 모바일 단말과 IoT기기간 보안 인증과정에서 제3자 보안 인증서버를 도입하여 모바일 단말의 IoT기기 원격 제어용 어플리케이션 프로그램의 위조/변조체크 및 단말기 인증절차와, 모바일 단말-IoT기기간의 보안인증 패킷 등을 제3자가 점검하여 인증해주는 프로세스 등을 적용함으로써, 모바일 단말과 IoT기기간 보안 인증과정의 무결성 및 보안성을 강화할 수 있는 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법에 관한 것이다.
일반적으로, 기존의 모바일 단말을 이용한 IoT기기 제어를 위한 인증기술들은 1차적으로 인증 정보인 아이디, 패스워드 등을 이용하고, 2차적으로 보안카드 또는 바이오정보 (지문, 홍채 등)를 이용하고 있으나, 모바일 단말의 분실하는 경우나 모바일 단말 또는 IoT기기가 해킹을 당할 경우에는 인증키 등의 인증정보가 유출되어 재사용되거나, 프로그램의 위조/변조를 통한 보안점검 프로그램 로직이 무력화 될 수 있다는 문제점이 있다.
위와 같이 모바일 단말 또는 IoT기기가 해킹을 당할 경우에는 IoT의 무단 컨트롤로 인해 재산과 인명의 피해, 개인의 사생활 또는 기업의 기밀 등이 유출될 우려가 있다.
즉, 예를 들어 모바일 단말 자체가 해킹될 경우 보안 인증키, 모바일 단말의 물리코드 등이 탈취되어 재사용이 가능하게 되고, 프로그램의 위조/변조를 통하여 보안절차가 무력화될 수 있다. 또한, 모바일 단말과 IoT기기간의 인증 및 제어과정에서 통신패킷이 스니핑, 스푸핑, 패킷조작 등에 노출될 수 있다.
한편, 위와 같은 인증정보의 해킹을 방지하기 위해 종래에는 모바일 단말 인증시 인증카드 또는 USB등 별도의 인증기기를 사용하는 경우가 있으나, 인증카드 또는 USB등 별도의 인증기기를 사용하는 경우에는 분실 및 망실의 가능성과 구매 비용이 소요되고, 별도로 소지해야 하는 불편함이 있었다.
또한, IoT기기 제작사간에 인증 프로세스가 서로 상이하여 모바일 단말에서 IoT기기들을 제어하는데 보안상의 제약이 발생하는 문제점이 있었다.
(특허문헌)
대한민국 공개특허번호 10-2015-0035971호(공개일자 2015년 04월 07일)
대한민국 공개특허번호 10-2014-0045829호(공개일자 2014년 04월 17일)
따라서, 본 발명에서는 모바일 단말과 IoT기기 간 사용자 인증 및 통신 과정에서의 해킹에 대비하기 위하여, 모바일 단말의 IoT기기 원격 제어용 어플리케이션 프로그램의 위조/변조 및 단말기의 인증정보 탈취/재사용, 모바일 단말-IoT기기간의 통신패킷의 탈취/재사용 등을 제3자가 점검하여 인증해주는 프로세스를 적용함으로써, 모바일 단말과 IoT기기 간 사용자 인증과정의 무결성 및 보안성을 강화할 수 있는 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법을 제공하고자 한다.
상술한 본 발명은 모바일 단말과 IoT기기간 제3자 보안인증 시스템으로서, 유무선인터넷망을 통해 데이터 송수신이 가능한 IoT기기와, 유무선인터넷망을 통해 상기 IoT기기의 동작을 원격 제어하는 모바일 단말과, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우 상기 IoT기기에 대한 원격 제어를 승인하는 인증서버를 포함한다.
또한, 상기 인증서버는, 상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하며, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 난수값과 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보를 이용하여 제1 인증키(수신키)를 생성하고, 기등록 저장된 상기 모바일 단말의 단말정보와 상기 IoT기기로부터 전송된 난수값을 이용하여 생성한 제2 인증키(생성키)를 상기 IoT기기로부터 수신된 상기 제1 인증키와 상기 인증서버에서 생성된 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 판단하는 것을 특징으로 한다.
또한, 상기 인증서버는, 상기 IoT기기의 등록 시, 상기 모바일 단말의 단말정보가 상기 인증서버에 기등록된 모바일 단말의 단말정보와 일치하는지 여부를 검사하고, 상기 단말정보가 서로 일치하는 경우 상기 등록 요청한 상기 모바일 단말에 상기 IoT기기를 등록하는 것을 특징으로 한다.
또한, 상기 인증서버는, 상기 등록된 IoT기기의 정보 변경 또는 삭제 시, 상기 IoT기기의 정보 변경 또는 삭제를 요청하는 상기 모바일 단말의 단말정보가 상기 인증서버에 기등록된 모바일 단말의 단말정보와 일치하는지 여부를 검사하고, 상기 단말정보가 서로 일치하는 경우 상기 IoT기기에 대한 정보를 변경하거나 삭제하는 것을 특징으로 한다.
또한, 상기 인증서버는, 상기 모바일 단말에 설치된 상기 IoT기기의 제어용 어플리케이션의 무결성 검증키를 수신하고, 상기 무결성 검증키를 이용하여 상기 어플리케이션의 프로그램이 변경되었는지 여부를 검사한 후, 상기 어플리케이션의 프로그램이 변경되지 않은 경우 상기 모바일 단말에 상기 IoT기기를 등록하는 것을 특징으로 한다.
또한, 상기 인증서버는, 상기 모바일 단말을 상기 IoT기기에 대한 제어 권한에 따라 마스터와 패밀리로 구분하여 등록하며, 상기 패밀리로 구분된 제1 모바일 단말의 상기 등록 요청에 따라, 상기 IoT기기의 등록 시 상기 마스터로 구분된 제2 모바일 단말의 승인을 얻어 상기 제1 모바일 단말에 상기 IoT기기를 등록하는 것을 특징으로 한다.
또한, 상기 난수값은, 상기 IoT기기 또는 상기 인증서버에서 생성되어 상기 모바일 단말로 제공되는 것을 특징으로 한다.
또한, 상기 단말정보는 물리코드, 위치 및 장비 식별정보 등이 있으며, 상기 모바일 단말의 물리코드는 예를 들면 MAC 주소 정보 또는 USIM 정보 등이며, 상기 모바일 단말의 위치정보 및 단말의 식별정보는 예를 들면 IP주소, GPS정보, 전화번호 등의 정보 인 것을 특징으로 한다.
또한, 상기 무결성 검증키는, 상기 어플리케이션의 버전(version) 정보 또는 체크썸(checksum) 정보를 이용하여 생성한 키인 것을 특징으로 한다.
또한, 본 발명은 유무선인터넷망을 통해 연결되는 모바일 단말과 IoT기기, 인증서버를 포함하는 제3자 보안인증 시스템에서 제3자 보안인증 방법으로서, 상기 인증서버에서 상기 IoT기기에 대한 원격 제어를 요청하는 상기 모바일 단말을 등록하는 단계와, 상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하는 단계와, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하는 단계와, 상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 단계를 포함한다.
또한, 상기 인증하는 단계는, 상기 인증서버에서 난수값과 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보를 이용하여 제1 인증키(수신키)를 생성하는 단계와, 기등록 저장된 상기 모바일 단말의 단말정보와 상기 IoT기기로부터 전송된 난수값을 이용하여 생성한 제2 인증키(생성키)를 상기 IoT기기로부터 수신하는 단계와, 상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 인증하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명은 모바일 단말과 IoT기기간 제3자 보안인증 시스템으로서, 유무선인터넷망을 통해 데이터 송수신이 가능한 IoT기기와, 상기 유무선인터넷망을 통해 상기 IoT기기와 데이터 송수신을 수행하며, 상기 데이터 송수신을 통해 상기 IoT기기의 동작을 원격 제어하는 모바일 단말과, 상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하고, 상기 등록된 IoT기기와 모바일 단말에 대한 정보를 관리하는 어플리케이션 검증서버와, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 상기 어플리케이션 검증서버와 연동하여 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하고, 상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 인증서버를 포함한다.
또한, 상기 인증서버는, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 난수값과 상기 어플리케이션 검증서버로부터 생성된 제1 인증키(수신키)를 수신하고, 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보와 상기 난수값을 이용하여 제2 인증키(생성키)를 생성한 후, 상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 판단하는 것을 특징으로 한다.
또한, 상기 난수값은, 상기 어플리케이션 검증서버에서 생성되어 상기 인증서버와 상기 모바일 단말로 제공되는 것을 특징으로 한다.
또한, 본 발명은 유무선인터넷망을 통해 연결되는 모바일 단말, IoT기기, 어플리케이션 검증서버, 인증서버를 포함하는 제3자 보안인증 시스템에서 제3자 보안인증 방법으로서, 상기 어플리케이션 검증서버에서 상기 IoT기기에 대한 원격 제어를 요청하는 상기 모바일 단말을 등록하는 단계와, 상기 어플리케이션 검증서버에서 상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하는 단계와, 상기 어플리케이션 검증서버에서 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청을 수신하는 경우 상기 인증서버로 상기 요청을 전송하는 단계와, 상기 인증서버에서 상기 어플리케이션 검증서버와 연동하여 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하는 단계와, 상기 인증서버에서 상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 단계를 포함한다.
또한, 상기 인증하는 단계는, 상기 인증서버에서 상기 어플리케이션 검증서버로부터 난수값과 상기 난수값을 이용하여 생성된 제1 인증키(수신키)를 수신하는 단계와, 상기 인증서버에서 상기 IoT기기로부터 수신된 상기 모바일 단말의 단말정보를 수신하여 상기 단말정보와 상기 난수값을 이용하여 제2 인증키(수신키)를 생성하는 단계와, 상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 인증하는 단계를 포함하는 것을 특징으로 한다.
본 발명에 따르면, 모바일 단말과 IoT기기간 제3자 보안 인증에 있어서, 제3자 보안 인증서버를 도입하여 모바일 단말의 해킹에 대비한 IoT기기 원격 제어용 어플리케이션 프로그램의 위조/변조체크, 모바일 단말-IoT기기간의 보안인증 패킷 등을 제3자가 점검하여 인증해주는 프로세스를 적용함으로써, 모바일 단말과 IoT 기기간 보안 인증과정의 무결성 및 보안성을 강화할 수 있는 이점이 있다.
또한, IoT 원격 제어용 어플리케이션의 무결성 검증키를 이용하여 어플리케이션 프로그램에 위조/변조되지 않은 모바일 단말에 대해 원격 제어 대상이 되는 IoT기기를 등록하며, 임의의 모바일 단말로부터 IoT기기에 대한 원격 제어 요청이 있는 경우 난수값을 이용하여 모바일 단말과 인증서버에서 각각 생성한 인증키가 서로 일치하는지 여부를 검사하는 것을 통해 인증키가 일치하는 모바일 단말에 대해서만 IoT기기에 대한 원격 제어를 승인함으로써, 인증되지 않은 모바일 단말에 의한 IoT기기의 무단 제어 및 정보 변경 등의 피해가 발생하지 않도록 하는 이점이 있다.
또한, 모바일 단말과 IoT기기간의 인증 및 제어과정에서 통신패킷이 스니핑, 스푸핑, 패킷조작 등에 노출되는 것을 방지할 수 있고, 또한, 모바일 단말 인증시 종래의 인증카드 또는 USB 등 별도의 인증기기를 사용하지 않고, 모바일 단말의 단말정보 등과 같이 고유키와 난수를 조합한 1회성 인증키를 사용함으로써, 인증 카드 또는 USB 등 별도의 인증기기의 분실 위험과 사용상 불편함을 감소시키고, 보안성을 높이며, 인증 시스템 구현 비용을 절약할 수 있는 이점이 있다.
도 1은 본 발명의 첫 번째 실시 예에 따른 모바일 단말과 IoT기기간 제3자 보안인증 시스템 구성도,
도 2는 본 발명의 첫 번째 실시 예에 따른 IoT기기를 제어할 모바일 단말을 인증서버에 등록/변경/삭제하는 절차도,
도 3은 본 발명의 첫 번째 실시 예에 따른 IoT기기의 초기 구입시 모바일 단말에서 IoT기기를 등록/변경/삭제하는 절차도,
도 4는 본 발명의 첫 번째 실시 예에 따른 IoT기기를 제어할 모바일 단말(Family)을 모바일 단말(Master)에 등록/변경/삭제하는 절차도,
도 5는 본 발명의 첫 번째 실시 예에 따른 모바일 단말(Family)에 IoT기기를 등록/변경/삭제하는 절차도,
도 6 내지 도 7은 본 발명의 첫 번째 실시 예에 따른 모바일 단말과 IoT기기간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호 처리 흐름도,
도 8 내지 도 9는 본 발명의 다른 실시 예에 따른 모바일 단말과 IoT기기간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호 처리 흐름도,
도 10은 본 발명의 다른 실시 예에 따른 모바일 단말과 IoT기기간 제3자 보안인증 시스템 구성도,
도 11은 본 발명의 다른 실시 예에 따른 IoT기기를 제어한 모바일 단말을 어플리케이션 검증서버에 등록/변경/삭제하는 절차도,
도 12는 본 발명의 실시 예에 따른 IoT기기의 초기 구입시 모바일 단말에서 IoT기기를 등록/변경/삭제하는 절차도,
도 13은 본 발명의 실시 예에 따른 IoT기기를 제어할 모바일 단말(Family)을 모바일 단말(Master)에 등록/변경/삭제하는 절차도,
도 14는 본 발명의 다른 실시 예에 따른 모바일 단말(Family)에 IoT기기를 등록/변경/삭제하는 절차도,
도 15 내지 도 16는 본 발명의 다른 실시 예에 따른 모바일 단말과 IoT기기간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호 처리 흐름도.
이하, 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 본 발명의 실시 예에 따른 모바일 단말과 IoT기기간 제3자 보안인증 시스템의 구성을 도시한 것이다.
본 발명의 실시 예에 따른 제3자 보안인증 시스템에서는 인증서버(100), 모바일 단말(200), IoT기기(230) 및 유무선인터넷망 등으로 구성될 수 있으며, 단말의 그룹(유형)은 모바일 단말-IoT기기간(1:m, n:1, n:m) 단말 그룹으로 접속할 수 있다. 여기서, 유무선인터넷망은 예를 들어, 음성통신망, 데이터 통신망 및 와이파이망 등의 IoT기기와 직접 접속할 수 있는 통신망일 수 있다.
이때, IoT통신이란 USN(Ubiquitous Sensor Network), M2M(Machine to Machine)에서 진화된 형태를 말한다. 즉, M2M이 통신장비(End-Device)와 사람과의 통신이 주목적이었다면, IoT는 사물의 범위를 넓혀 보안장치, 스마트 가전, 냉난방장치, CCTV, 조명기기, 온도조절장치 등의 사물을 사람과 통신이 가능하도록 하는 통신을 말한다. 이러한, IoT 기술 안에는 센싱 기술, 통신 기술, 서비스 기술 등이 존재하며, 이를 통해 모든 사물의 정보를 유무선인터넷망과 같이 네트워크로 구축이 되며, 취득된 정보를 통해 다양한 서비스의 제공이 가능하다. 이러한, IoT는 인간과 사물, 서비스 세 가지 분산된 환경 요소에 대해 인간의 명시적 개입 없이 상호 협력적으로 센싱, 네트워킹, 정보 처리 등 지능적 관계를 형성하는 사물 공간 연결망의 개념이다. 이러한, IoT의 주요구성 요소인 사물은 유무선 네트워크에서의 통신 장비뿐만 아니라, 사람, 차량, 교량, 각종 전자장비, 문화재, 자연 환경을 구성하는 물리적 사물 등을 포함한다. 이러한, IoT는 네트워크를 이용하여 사람과 사물, 사물과 사물 간 지능 통신을 할 수 있는 M2M의 개념을 인터넷으로 확장하여 사물뿐 아니라, 현실세계 및 가상세계의 모든 정보와 상호작용한다.
이하, 위 도 1을 참조하여 본 발명의 실시 예에 따른 제3자 보안인증 시스템의 각 구성요소에서의 동작을 상세히 설명하기로 한다.
먼저, 인증서버(100)는 IoT기기(230)에 접근하여 원격 제어를 수행하는 모바일 단말(200)이 정당한 모바일 단말인지 여부를 인증하는 서버일 수 있다.
즉, 인증서버(100)는 본 발명의 실시 예에 따라 IoT기기에 접근하기 위한 모바일 단말(200)을 등록/변경/삭제하는 동작을 수행한다. 또한, 모바일 단말(200)의 등록 후, 모바일 단말(200)에서 IoT기기(230)에 접근하기 위한 인증 요청을 수신하는 경우, 모바일 단말(200)로부터 전송된 단말정보와 인증서버에 등록된 모바일 단말의 단말정보를 비교하고, IoT기기 제어용 어플리케이션 프로그램이 변경되었는지 등을 검사하여 모바일 단말(200)을 인증함으로써, 모바일 단말(200)에서 IoT기기(230)에 대한 원격 제어가 가능하도록 할 수 있다.
이러한, 인증서버(100)는 관리로그 DB(110), 인증 DB(120), 관리용 단말DB(130), 패킷탈취 방지부(112), 아이디/패스워드(ID/Password) 관리부(116), 인증부(122), 인증 어플리케이션(APP) 관리부(112), 소스코드 변조체크부(114), 모바일 단말(Master/ Family) 관리부(118), IoT기기 관리부(126), 조회 관리부(128), 로그 관리부(129) 등과 같은 모듈을 탑재할 수 있다.
관리용 단말 DB(130)는 등록된 모바일 단말(200) 및 IoT기기(230)에 대한 단말정보를 저장한다. 인증 DB(120)는 인증승인, 인증거부 및 인증에러에 대한 결과 값과 인증된 어플리케이션 및 어플리케이션 프로그램의 버전 정보와 모바일 단말 또는 IoT기기(230)에서 수신된 어플리케이션 무결성 검증키 정보를 저장한다. 관리로그 DB(110)는 인증서버(100)에서 실행하는 모든 작업의 로그(log)를 기록하여 상태 조회, 통계 등의 정보자료 관리한다.
패킷탈취 방지부(112)는 모바일 단말(200)과 인증서버(100)간 송수신되는 패킷이 탈취되는 것을 방지한다.
아이디/패스워드 관리부(116)는 인증서버(100)로 로그인하도록 모바일 단말(200)에 대해 할당된 로그인 아이디/패스워드에 대한 정보를 관리한다.
인증부(122)는 모바일 단말(200)로부터 IoT기기(230)에 대한 원격 제어 요청이 있는 경우, 해당 모바일 단말(200)이 원격 제어 권한을 가지는 정당한 모바일 단말인지 여부를 인증한다.
인증 어플리케이션 관리부(124)는 인증된 IoT기기 제어용 어플리케이션의 버전 정보와 무결성 검증키에 대한 정보를 관리한다.
IoT기기 관리부(126)는 인증서버(200)에 등록되는 IoT기기(230)에 대한 정보를 관리한다.
소스코드 변조체크부(114)는 모바일 단말(200)에 설치되는 IoT기기 제어용 어플리케이션의 위조 또는 변조 여부를 체크한다. 이때, 소스코드 변조체크부(114)는 예를 들어 모바일 단말(200)로부터 전송되는 어플리케이션의 무결성 검증키에 포함되는 어플리케이션의 체크썸(checksum) 정보 등을 이용하여 어플리케이션의 위조 또는 변조를 체크할 수 있으나, 이에 한정되는 것은 아니다.
모바일 단말(Master/ Family) 관리부(118)는 인증서버(100)에 등록된 모바일 단말(200)을 관리한다. 이때, 이러한 모바일 단말(200)은 IoT기기(230)에 대한 제어 권한에 따라 마스터로 구분되는 모바일 단말(Master)(210)과 패밀리로 구분되는 모바일 단말(Family)(220)일 수 있으며, 모바일 단말(Master)(210)는 모바일 단말(Family)(220)에서 IoT기기(230)를 등록/변경/삭제하고자 하는 경우, 이러한 등록/ 변경/삭제에 대해 승인하여 줄 수 있는 권한이 설정될 수 있다.
조회 관리부(128)는 모바일 단말(200)이 인증서버(100)에 접속하여 조회하는 정보를 관리한다. 로그 관리부(129)는 인증서버(100)에 로그인하는 모바일 단말(200)의 각종 로그 기록을 관리한다.
모바일 단말(200)은 유무선인터넷망 등을 통해 IoT기기(230)에 접속하여 IoT기기(230)를 원격 제어할 수 있는 사용자 단말장치를 말할 수 있다. 이러한, 모바일 단말(200)은 예를 들어 IoT기기(230)를 제어하기 위하여 음성통신망, 데이터 통신망 및 와이파이망 등을 사용하는 휴대 전화, 스마트폰, PAD, 테블릿 등의 단말장치가 될 수 있으나, 이에 한정되는 것은 아니다.
또한, 모바일 단말(200)은 IoT기기(230)에 대한 원격 제어를 수행하기 위해, 인증서버(100)에 등록하며, 인증서버(100)를 통한 인증절차를 통해 IoT기기(230)에 대한 원격 제어 권한을 승인받아 IoT기기(230)에 대한 원격 제어를 수행할 수 있다.
이러한, 모바일 단말(200)은 예를 들어 전송패킷 관리부(211), 아이디/패스 워드 관리부(212), 단말기 승인관리부(213), 로그인 관리부(214), 인증 관리부(215), 보안키 관리부(216), IoT기기 운영관리부(217) 등의 모듈을 탑재할 수 있다.
전송패킷 관리부(211)는 전송되는 데이터(보안키, 모바일 단말 정보 등)의 패킷 송수신을 관리한다. 아이디/패스워드 관리부(212)는 인증서버(100)와 IoT기기(230) 등으로 로그인하기 위한 아이디/패스워드 등을 관리한다. 단말기 승인관리부(213)는 IoT기기(230)에 접근하는 모바일 단말(Family)(220)에 대해 IoT기기(230)에 대한 사용승인을 관리한다.
로그인 관리부(214)는 모바일 단말(200)이 IoT기기(230) 또는 인증서버(100)에 로그인한 정보를 관리한다. 인증 관리부(215)는 모바일 단말(200)에 설치되는 IoT기기 제어용 어플리케이션의 무결성 검증키 정보를 관리한다.
보안키 관리부(216)는 모바일 단말(200)의 단말정보를 보안키로 생성하여 관리하며, 이와 같이 보안키로 생성되는 모바일 단말(200)의 단말정보는 모바일 단말(200)에 대한 인증서버(100)로의 등록과 IoT기기(230)의 원격 제어를 위한 인증 수행에 사용될 수 있다. IoT기기 운영관리부(217)는 모바일 단말(200)에 등록되는 IoT기기(230)에 대한 정보를 관리한다.
IoT기기(230)는 유무선인터넷통신이 가능한 전자기기를 말하는 것으로 각종 센서를 통제하는 보안장치, 스마트 가전, 냉난방장치, CCTV, 조명기기, 온도조절장치, 허브장비 등을 포함할 수 있다. 즉, IoT기기(230)는 통신 기능이 탑재된 댁내 각종 전자 기기 예를 들어 냉장고, 스마트 TV 등과 같은 기기가 될 수 있으며, 홈 오토메이션(home automation)으로 연결되는 각종 댁내 기기를 제어하는 홈 오토메이션 제어장치 등이 될 수도 있다.
또한, IoT기기(230)는 유무선인터넷망을 통해 모바일 단말(200)과 통신 수행이 가능하며, 인증서버(100)에서 인증된 모바일 단말(200)로부터 전송되는 원격 제어 명령을 수신하여 원격 제어 명령에 대응되는 동작을 수행할 수 있다.
이러한, IoT기기(230)는 전송패킷 관리부(231), 아이디/패스워드 관리부(232), 운영단말 등록부(233), 로그인 검증부(234), 인증 관리부(236), 보안키 관리부(237), 난수 생성부(238) 등의 모듈을 탑재한다.
전송패킷 관리부(231)는 모바일 단말(200)과의 사이에서 송수신되는 패킷과 인증서버(100)와의 사이에서 송수신되는 패킷에 대한 정보를 관리한다. 아이디/패스워드 관리부(232)는 IoT기기(230)로 로그인하도록 설정된 아이디와 패스워드를 관리한다. 운영단말 등록부(233)는 IoT기기(230)에 대한 원격 제어를 수행하도록 등록한 모바일 단말(200)에 대한 정보를 등록하고 관리한다. 로그인 검증부(234)는 IoT기기(230)로 로그인 시도하는 모바일 단말(200)에 대해 모바일 단말(200)에서 입력된 아이디/패스워드를 검사하여 로그인 시도가 정당한지 검사한다.
인증 관리부(236)는 IoT기기(230)에 설치되는 IoT기기 제어용 어플리케이션의 무결성 검증키 정보를 관리한다. 보안키 관리부(237)는 모바일 단말(200)로부터 전송되는 모바일 단말(200)의 단말정보를 이용해서 생성되는 보안키 정보를 관리 한다. 난수 생성부(238)는 모바일 단말(200)의 보안인증에 필요한 난수값을 생성 한다. 이러한 난수값은 인증서버(100)에 등록한 모바일 단말(200)이 IoT기기(230)를 원격 제어하기 위한 인증 수행 시 생성될 수 있으며, 생성된 난수값은 모바일 단말(200)과 인증서버(100)로 각각 제공될 수 있다.
한편, 위 도 1에서는 난수 생성부(238)가 IoT기기(230)에 구비되는 것을 예시 하였으나, 이는 하나의 실시예일 뿐 본 발명의 실시예가 이에 한정되는 것은 아니다. 즉, 이러한 난수 생성부(238)는 시스템 구성에 따라 IoT기기(230)가 아니라 참조번호 (132)의 난수 생성부(132)로 인증서버(100)에 구비될 수도 있다.
이때, 난수 생성부(132)가 인증서버(100)에 구비되는 경우, IoT기기(230)에 대한 원격 제어를 요청하는 모바일 단말(200)의 인증 수행 시 필요하게 되는 난수를 IoT기기(230)가 아니라 인증서버(100)에서 생성할 수 있으며, 인증서버(100)는 모바일 단말(200)의 인증 시, 모바일 단말(200)의 인증을 위한 난수값을 IoT기기(230)로부터 제공받는 것이 아니라, 난수값을 직접 생성하여 모바일 단말(200)로 제공하도록 구현할 수 있다.
보안인증 시스템내 모바일 단말(200), IoT기기(230)간 전송되는 데이터는 유무선인터넷망을 통해서 전송될 수 있고, 전송된 패킷은 모바일 단말(200), IoT기기(230) 내에 설치된 인증 어플리케이션 또는 인증 모듈을 사용해서 자체 보안체크(패킷탈취방지)가 수행되도록 하여 전송된 패킷에 대한 안전성을 확보할 수 있으며, 모바일 단말(200), IoT기기(230)간 안전한 통신을 할 수 있다.
도 2는 본 발명의 실시 예에 따른 IoT기기를 제어할 모바일 단말을 인증 서버에 등록/변경/삭제하는 절차도를 도시한 것이다.
모바일 단말(200)은 IoT기기(230)에 대한 주요한 제어 권한을 가지는 마스터 역할을 수행하는 모바일 단말(Master)(210)과 모바일 단말(Master)(210)에 등록하여 IoT기기(230)를 제어할 수 있는 모바일 단말(Family)(220)로 구분될 수 있으나 이에 한정되는 것은 아니다. 또한, 이러한 모바일 단말(Master)(210)과 모바일 단말(Family)(220)는 모두 인증서버(100)에 등록하는 것이 필요하다. 따라서, 이하, 위 도 2에 대한 설명에서는 편의상 모바일 단말(Master)(210)과 모바일 단말(Family)(220)을 모두 통칭하여 모바일 단말(200)로 명명하여 설명하도록 한다.
위 도 2를 참조하면, 인증서버(100)에 모바일 단말(200)을 등록/변경/삭제하는 등의 동작을 수행하기 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(200)에 설치하고 구동해야 한다.
먼저, 인증서버(100)의 관리용 단말DB(130)에 모바일 단말(200)을 등록하는 프로세스의 경우, 모바일 단말(200)에서 인증서버(100)로 로그인을 수행한 후, IoT기기 제어용 어플리케이션의 무결성 검증키와 모바일 단말(200)의 단말정보를 인증서버(100)로 전송한다.
이때, 무결성 검증키는 어플리케이션 프로그램이 해킹 등에 의해 위조/변조되었는지 여부를 판단하기 위한 정보로서, 예를 들어 어플리케이션의 버전(version) 정보 또는 체크썸(checksum) 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한, 모바일 단말(200)의 단말정보 중 물리코드는 인증서버(100)에서 모바일 단말(200)에 대한 인증을 위한 보안키 정보로 사용될 수 있으며, 이러한 단말정보는 예를 들어, 모바일 단말(200)의 물리코드, 위치정보 및 장비식별정보가 될 수 있다. 또한, 이러한 물리코드는 모바일 단말(200)의 MAC 주소 정보 또는 USIM 정보 등이 될 수 있으나, 이에 한정되는 것은 아니다.
이때, 인증서버(100)로 로그인을 수행함에 있어서, 모바일 단말(200)은 예를 들어 인증서버(100)에 접속하기 위해 미리 할당된 아이디(ID), 패스워드(password) 등을 사용자 등으로부터 입력받아 인증서버(100)에 로그인을 수행할 수 있다. 이러한 아이디, 패스워드 등은 등록 전에 인증서버(100)로부터 미리 할당 받아서 모바일 단말(200)의 사용자가 인지하고 있을 수 있다.
그러면, 인증서버(100)는 모바일 단말(200)의 단말정보와 어플리케이션의 무결성 검증키를 인증서버(100)의 관리용 단말 DB(130)에 등록한다.
이어, 인증서버(100)는 위와 같이 로그인하여 등록을 요청한 모바일 단말(200)에 대해 등록을 수행한 경우, 모바일 단말(200)로 모바일 단말(200)의 단말정보와 어플리케이션의 무결성 검증키가 인증 DB(120)와 관리용 단말 DB(130)에 정상적으로 등록이 완료되었음을 통지할 수 있다.
다음으로, 인증서버(100)에 등록된 모바일 단말(200)의 정보를 변경하는 프로세스의 경우, 모바일 단말(200)에서 인증서버(100)로 로그인을 수행한다.
이어, 모바일 단말(200)에서 모바일 단말(200)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(200)의 변경된 단말정보를 인증서버(100)로 전송한다. 이때, 변경된 단말정보는 모바일 단말(200)이 변경됨에 따른 새로운 모바일 단말(200)의 물리코드, 위치정보 및 장비식별정보 등이 될 수 있으며, 이러한 물리코드는 전술한 바와 같이 모바일 단말(200)의 MAC 주소 정보 또는 USIM 정보 등이 될 수 있다. 또한 위치 및 장비식별정보는 데이터 전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등이 포함된 정보가 될 수 있다.
그러면, 인증서버(100)는 모바일 단말(210)에서 받은 어플리케이션의 무결성 검증키와 기등록된 모바일 단말(200)의 어플리케이션 무결성 검증키와 비교하여 일치하는 경우, 모바일 단말(200)의 변경된 단말정보를 관리용 단말 DB(130)에 저장한다.
이어, 인증서버(100)는 위와 같이 로그인하여 정보 변경을 요청한 모바일 단말(200)에 대해 단말정보 변경을 정상적으로 수행한 경우, 모바일 단말(200)로 변경 작업완료 메시지를 전송하고 변경작업을 완료한다.
한편, 이때 만일 인증서버(100)에 대한 로그인 패스워드가 계속해서 최초에 설정되었던 디폴트(default)로 설정되어 있는 경우 인증서버(100)는 모바일 단말(200)로 패스워드 변경을 요청할 수 있다.
이에 따라, 모바일 단말(200)에서 로그인 패스워드를 변경하고, 인증서버 (100)에 전달한다. 그러면, 인증서버(100)는 로그인 패스워드를 수정하고, 수정결과를 모바일 단말(200)로 통보하고, 패스워드 변경 프로세스를 종료한다.
한편, 위 설명에서는 모바일 단말(200)의 정보 변경에 대해서만 예를 들어 설명하였으나, 모바일 단말(200)에 대한 단말정보 삭제의 경우에도 변경 절차와 동일한 과정을 통해 등록된 모바일 단말(200)에 대한 단말정보의 삭제가 가능하다.
도 3은 본 발명의 실시 예에 따른 IoT기기의 초기 구입시 모바일 단말 (200)에서 IoT기기를 등록/변경/삭제하는 절차도를 도시한 것이다. 이때, IoT기기(230)를 등록/변경/삭제하는 모바일 단말(200)은 인증서버(100)에 마스터로 등록된 모바일 단말(Master)(210)의 경우를 예를 들어 설명하기로 한다.
위 도 3을 참조하면, 모바일 단말(Master)(210)에서 IoT기기(230)를 등록/변경/삭제하는 등의 프로세스를 수행하기 위해서는 모바일 단말(200)을 인증서버(100)에 등록/변경/삭제하는 경우와 동일하게 IoT기기 제어용 어플리케이션을 모바일 단말(Master)(210)에 설치하고 구동해야 한다.
먼저, 모바일 단말(Master)(210)에 IoT기기(230)를 등록하는 프로세스의 경우, 모바일 단말(Master)(210)에서 IoT기기(230)로 로그인을 수행한 후, 모바일 단말(Master)(210)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(Master)(210)의 단말정보를 IoT기기(230)로 전송한다. 이때, 모바일 단말(Master)(210)의 단말 정보는 예를 들어 모바일 단말(Master)(210)의 물리코드, 위치정보 및 장비식별정보 등이 될 수 있다.
이때, IoT기기(230)로 로그인을 수행함에 있어서, 모바일 단말(Master)(210)은 예를 들어 IoT기기(230)의 최초 구입 시 IoT기기(230)에 할당된 아이디, 패스워드 등을 모바일 단말(Master)(210)의 사용자로부터 입력받아 IoT기기(230)에 로그인을 수행할 수 있다.
그러면, IoT기기(230)는 모바일 단말(Master)(210)의 단말정보, 모바일 단말(Master)(210)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키 및 IoT기기(230)의 정보를 인증서버(100)로 전송한다. 이때, IoT기기의 정보라 함은 예를 들어 IoT기기(230)에 부여된 운영상 휴대, 부착, 각인, 일련번호를 통해서 인식되는 고유식별 코드를 말할 수 있으나, 이에 한정되는 것은 아니다.
위와 같이, IoT기기(230)로부터 IoT기기(230)의 등록을 위한 정보를 인증서버(100)에서 수신을 할 경우 인증서버(100)는 인증서버(100)내 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키와 IoT기기(230)에서 수신된 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키를 비교한다.
위와 같은 비교결과, 무결성 검증키가 서로 일치하는 경우, 인증서버(100)는 IoT기기(230)의 정보를 관리용 단말 DB(130)에 저장하고, IoT기기(230)로 모바일 단말(Master)(210)에 IoT기기(230)가 정상적으로 등록되었음을 알리는 등록완료 메시지를 보낸다. 그러나, 비교결과 무결성 검증키가 불일치할 경우 인증서버(100)는 IoT기기(230)의 등록이 불가함을 알리는 등록 불가 메시지를 IoT기기(230)로 보낸다.
그러면, IoT기기(230)는 인증서버(100)에서 전송받은 등록완료 메시지 또는 등록 불가 메시지를 모바일 단말(Master)(210)로 전송한다.
한편, 이때 만일 IoT기기(230)에 대한 로그인 패스워드가 디폴트로 설정되어 있는 경우 모바일 단말(Master)(210)내 설치된 어플리케이션에서는 IoT기기(230)의 패스워드 변경을 요청할 수 있다.
이에 따라, 모바일 단말(Master)(210)의 사용자는 패스워드 변경 화면에서 IoT기기(230)에 디폴트로 설정되어 있던 패스워드를 변경할 수 있으며, 이와 같이 패스워드가 변경되는 경우 모바일 단말(Master)(210)에서 IoT기기(230)에 대한 패스워드를 변경하고 IoT기기(230)에 전달할 수 있다.
그러면, IoT기기(230)에서 로그인 패스워드를 변경하고, IoT기기(230)의 패스워드변경이 완료되면 패스워드 변경완료 메시지를 모바일 단말(Master)(210)로 통보하고, 패스워드 변경 프로세스를 종료한다.
한편, 모바일 단말(Master)(210)에 등록된 IoT기기(230)의 정보를 변경하는 프로세스의 경우, 모바일 단말(Master)(210)에서 IoT기기(230)로 로그인을 수행한 후, 어플리케이션의 무결성 검증키와 모바일 단말(Master)(210)의 단말정보를 IoT기기(230)로 전송한다.
이어, IoT기기(230)는 모바일 단말(Master)(210)의 단말정보와 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키와 IoT기기(230)의 변경정보를 인증서버(100)로 전송한다.
그러면, 인증서버(100)는 IoT기기(230)에서 전송받은 모바일 단말(200)의 어플리케이션의 무결성 검증키와 인증서버(100)내의 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키를 비교한다.
이어, 인증서버(100)는 비교결과 두 개의 무결성 검증키가 일치하는 경우 모바일 단말(200)에서 등록된 IoT기기(230)의 정보를 IoT기기(230)의 변경정보로 변경하고, IoT기기(230)로 IoT기기(230)의 정보 변경 절차가 완료되었음을 알리는 메시지를 전송하며, 불일치할 경우 변경불가 메시지를 IoT기기(230)로 전송한다.
그러면, IoT기기(230)는 인증서버(100)에서 전송받은 변경 절차 완료 메시지 또는 변경 불가 메시지를 모바일 단말(210)로 전송한다.
한편, 이때 만일 IoT기기(230)에 대한 로그인 패스워드가 계속해서 최초에 설정되었던 디폴트로 설정되어 있는 경우 사용자가 IoT기기(230)에 대한 로그인 패스워드를 변경할 수 있다.
이에 따라, 모바일 단말(200)에서 IoT기기(230)의 로그인 패스워드를 변경 하고, IoT기기(230)에 전달할 수 있다. 그러면, IoT기기(230)는 로그인 패스워드를 수정하고, 수정결과를 모바일 단말(200)로 통보하고, 패스워드 변경 프로세스를 종료한다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, IoT기기(230)에 대한 정보 삭제시에도 변경 절차와 동일한 과정을 통해 등록된 IoT기기(230)에 대한 정보의 삭제가 가능하다.
도 4는 본 발명의 실시 예에 따른 IoT기기(230)를 제어할 모바일 단말(Family)(220)을 모바일 단말(Master)(210)에 등록/변경/삭제하는 절차도를 도시한 것이다.
위 도 4를 참조하면, 모바일 단말(Family)(220)을 모바일 단말(Master)(210)에 등록/변경/삭제하는 동작을 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(Master)(210)과 모바일 단말(Family)(220)에 각각 설치하고 구동해야 한다.
먼저, 모바일 단말(Family)(220)을 모바일 단말(Master)(210)에 등록하는 프로세스의 경우, 모바일 단말(Master)(210)에서 모바일 단말(Family)(220)로 로그인을 수행한 후, 모바일 단말(Master)(210)의 단말정보와 모바일 단말(Master)의 IoT기기 제어용 어플리케이션의 무결성 검증키를 전송한다.
그러면, 모바일 단말(Family)(220)은 모바일 단말(Master)(210)의 단말정보와 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키와 함께 모바일 단말(Family)(220)의 단말정보와 모바일 단말(Family)(220)의 어플리케이션의 무결성 검증키를 인증서버(100)로 전송한다.
위와 같이, 인증서버(100)에서 모바일 단말(Master)(210)에 모바일 단말(Family)(220)를 등록하기 위한 정보를 수신하는 경우, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 단말정보와 모바일 단말(Family) (220)로부터 수신한 모바일 단말(Master)(210)의 단말정보를 비교한다.
위와 같은 비교결과, 두 개의 단말정보가 서로 일치하는 경우 인증서버 (100)는 관리용 단말 DB(130)에 등록된 모바일 단말(Master)(210)에 모바일 단말(Family)(220)을 등록한다.
이어, 인증 서버(100)는 모바일 단말(Family)(220)에 대한 정보가 모바일 단말(Master)(210)에 정상적으로 등록되었음을 알리는 등록완료 또는 등록이 불가함을 알리는 등록 불가 메시지를 모바일 단말(Family)(220)로 보낸다.
그러나, 비교결과 두 개의 단말정보가 불일치할 경우, 인증서버(100)는 모바일 단말(Family)(220)에 대한 등록이 불가함을 알리는 등록 불가 메시지를 모바일 단말(Family)(220)로 보낸다.
그러면, 모바일 단말(Family)(220)은 인증서버에서 전송받은 등록완료 메시지 또는 등록 불가 메시지를 모바일 단말(Master)(210)로 전송한다. 이때, 등록 완료 메시지를 수신하는 경우 모바일 단말(Master)(210)은 모바일 단말(Family)(220)로 등록승인 메시지를 전송하게 되며,
그러면, 모바일 단말(Family)(220)은 모바일 단말(Master)(210)로부터의 등록 승인 메시지에 따라 등록완료 메시지를 모바일 단말(Master)(210)로 전송하고, 모바일 단말(Family)(220)에 대한 등록 절차를 종료한다.
다음으로, 모바일 단말(Master)(210)에 등록된 모바일 단말(Family)(220)의 정보를 변경/삭제하는 프로세스의 경우에는 모바일 단말(Master)(210)은 모바일 단말(Family)(220)로 로그인을 수행한 후, 모바일 단말(Family)(220)로 모바일 단말(Master)(210)의 단말정보와 어플리케이션의 무결성 검증키와 모바일 단말(Family) (220)의 변경된 단말정보를 전송한다.
그러면, 모바일 단말(Family)(220)은 모바일 단말(Master)(210)의 단말정보와, 어플리케이션의 무결성 검증키와 함께 모바일 단말(Family)(220)의 어플리케이션의 무결성 검증키와 변경된 단말정보를 인증서버(100)로 전송한다.
이어, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 단말정보와 모바일 단말(Family)(220)에서 수신한 모바일 단말(Master)(210)의 단말정보를 비교한다.
이때, 인증서버(100)는 비교결과 두 개의 단말정보가 일치하는 경우, 관리용 단말 DB(130)에 저장된 모바일 단말(Master)(210)에 등록된 모바일 단말(Family) (220)의 단말정보를 변경 요청된 단말정보로 변경 등록한다. 이어, 인증서버(100)는 모바일 단말(Family)(220)로 변경등록 완료 또는 등록이 불가함을 알리는 등록 불가 메시지를 보낸다.
그러면, 모바일 단말(Family)(220)은 인증서버(100)에서 전송받은 변경 등록 완료 메시지 또는 변경 등록 불가 메시지를 모바일 단말(Master)(210)로 전송한다.
이때, 변경 등록 완료 메시지를 수신하는 경우 모바일 단말(Master)(210)은 모바일 단말(Family)(220)로 변경 등록승인 메시지를 전송하게 되며, 모바일 단말(Family)(220)은 모바일 단말(Master)(210)로부터의 변경 등록 승인 메시지에 따라 변경 등록 완료 메시지를 모바일 단말(Master)(210)로 전송하고 모바일 단말(Family)(220)에 대한 변경 등록 절차를 종료한다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, 모바일 단말(Family)(220)에 대한 정보 삭제 시에도 변경 절차와 동일한 과정을 통해 등록된 모바일 단말(Family)(220)에 대한 정보의 삭제가 가능하다.
도 5는 본 발명의 실시 예에 따른 모바일 단말(Family)(220)에 IoT기기(230)를 등록/ 변경/삭제하는 절차도를 도시한 것이다.
위 도 5를 참조하면, 모바일 단말(Family)(220)에 IoT기기(230)를 등록/변경/삭제하는 등의 프로세스를 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(Master)(210)과 모바일 단말(Family)(220)에 설치하고 구동해야 한다.
먼저, 모바일 단말(Family)(220)에 IoT기기(230)를 인증서버(100)에 등록하는 프로세스의 경우, 모바일 단말(Family)(220)에서 IoT기기(230)로 로그인을 수행한 후, 모바일 단말(Family)(220)의 어플리케이션의 무결성 검증키 및 모바일 단말(Family)(220)의 단말정보와, 모바일 단말(Master)(210)의 단말정보를 IoT기기(230)로 전송한다.
그러면, IoT기기(230)는 인증서버(100)로 모바일 단말(Family)(220)의 어플리케이션의 무결성 검증키, 단말정보와, 모바일 단말(Master)(210)의 단말정보, IoT기기(230)의 정보를 전송한다.
위와 같이 IoT기기(230)로부터 모바일 단말(Family)(220)에서 IoT기기(230)의 등록을 위한 정보를 인증서버(100)가 수신을 하면, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Family)(220)의 단말정보와 IoT기기(230)를 통해 수신된 모바일 단말(Family)(220)의 단말정보를 비교한다.
위와 같은 비교결과, 두 개의 단말정보가 서로 일치하는 경우 인증서버 (100)는 모바일 단말(Master)(210)로 사용 승인을 요청한다. 이때, 이러한 사용 승인은 예를 들어 모바일 단말(Family)(220)에 IoT기기(230)를 등록하는 것에 대한 승인을 의미할 수 있다.
그러면, 모바일 단말(Master)(210)은 모바일 단말(Family)(220)이 인증된 것을 확인하고, 모바일 단말(Family)(220)에 IoT기기(230)를 등록하는 것을 승인할 수 있다.
이어, 위와 같이 모바일 단말(Family)(220)에 IoT기기(230)의 등록을 승인하는 경우, 모바일 단말(Master)(210)은 등록 승인 메시지와 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키를 인증서버(100)로 전송한다.
그러면, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 어플리케이션 무결성 검증키와 모바일 단말(Master)(210)로부터 전송된 어플리케이션 무결성 검증키가 일치하는지 비교하고, 두 개의 무결성 검증키가 일치하는 경우 IoT기기(230)의 정보를 관리용 단말 DB(130)에 저장하여 IoT기기(230)를 모바일 단말(Family)(220)에 등록한다.
이어, 인증서버(100)는 모바일 단말(Master)(210)의 승인메시지를 IoT기기(230)로 전송한다. 그러면, IoT기기(230)는 모바일 단말(Family)(220)로 등록완료 메시지를 전송하면 모바일 단말(Family)(220)는 모바일 단말(Master)(210)로 등록확인 메시지를 통보하고 종료한다. 그러나 최종적으로 모바일 단말(Master)(210)가 지정된 시간내 모바일 단말(Family)(220)로부터 확인 메시지를 못 받을 경우 등록은 취소된다.
다음으로, 모바일 단말(Family)(220)에 등록된 IoT기기(230)를 변경하는 프로세스의 경우, 모바일 단말(Family)(220)에서 IoT기기(230)로 로그인을 수행한 후, 모바일 단말(Family)(220)의 단말정보 및 어플리케이션 무결성 검증키와, 모바일 단말(Master)(210)의 단말정보, IoT기기(230)의 변경정보를 IoT기기(230)로 전송한다.
이어, IoT기기(230)는 인증서버(100)로 모바일 단말(Family)(220)의 어플리케이션의 무결성 검증키와 모바일 단말(Family)(220)의 단말정보, IoT기기(230)의 변경정보를 전송한다.
그러면, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Family)(220)의 단말정보와 IoT기기(230)를 통해 수신된 모바일 단말(Family) (220)의 단말정보를 비교한다.
위와 같은 비교결과, 두 개의 단말정보가 서로 일치하는 경우 인증서버 (100)는 모바일 단말(Master)(210)로 변경 승인을 요청한다.
그러면, 모바일 단말(Master)(210)은 모바일 단말(Family)(220)이 인증된 것을 확인하고, 모바일 단말(Family)(220)에 등록된 IoT기기(230)의 정보를 변경하는 것을 승인할 수 있다.
이어, 위와 같이 모바일 단말(Family)(220)에서 등록된 IoT기기(230)의 변경이 승인되는 경우, 모바일 단말(Master)(210)은 변경 승인 메시지와 모바일 단말(Master)(210)의 어플리케이션의 무결성 검증키를 인증서버(100)로 전송한다.
그러면, 인증서버(100)는 관리용 단말 DB(130)에 기등록된 모바일 단말(Master)(210)의 어플리케이션 무결성 검증키와 모바일 단말(Master)(210)로부터 전송된 어플리케이션 무결성 검증키가 일치하는지 비교하고, 두 개의 무결성 검증 키가 일치하는 경우 IoT기기(230)의 변경 정보를 관리용 단말 DB(130)에 저장한다.
이어, 인증서버(100)는 모바일 단말(Master)(210)의 변경 승인메시지를 IoT기기(230)로 전송한다. 그러면, IoT기기(230)는 모바일 단말(Family)(220)로 변경 등록완료 메시지를 전송하면 모바일 단말(Family)(220)는 모바일 단말(Master)(210)로 등록확인 메시지를 통보하고 종료한다. 그러나 최종적으로 모바일 단말(Master)(210)가 지정된 시간내 모바일 단말(Family)(220)로부터 확인 메시지를 못 받을 경우 변경등록은 취소된다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, IoT기기에 대한 정보 삭제 시에도 변경 절차와 동일한 과정을 통해 등록된 IoT기기에 대한 정보의 삭제가 가능하다.
도 6 내지 도 7은 본 발명의 실시 예에 따른 모바일 단말(200)과 IoT기기(230)간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호 처리 흐름을 도시한 것이다.
이하, 도 1 내지 도 7을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다.
먼저, 모바일 단말(200)에서 IoT기기 제어용 어플리케이션을 구동하여 IoT기기(230)로 로그인을 수행한다(S600). 이때, IoT기기(230)에 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며 최초 인증신청단계로 가서 처음부터 인증 과정을 다시 진행하여 인증을 실패한 경우 실패횟수를 증가시켜서 실패횟수가 지정한 임계횟수를 초과하였을 때 IoT기기(230)는 인증과정을 종료한다(S603).
그러나, IoT기기(230)에 정상적으로 로그인 수행된 경우 IoT기기(230)에서 모바일 단말(200)의 로그인을 승인하며, 로그인이 승인되는 경우, 모바일 단말(200)에서 IoT기기(230)로 모바일 단말(200)의 단말정보와 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키(버전 정보, 체크썸(checksum) 등)를 전송한다(S604).
그러면, IoT기기(230)에서는 모바일 단말(200)로부터 수신된 모바일 단말의 단말정보,와 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키와 IoT기기(230)의 정보를 인증서버(100)로 전송한다(S606).
이에 따라, 인증서버(100)는 IoT기기(230)로부터 전송된 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키를 검사하여, 어플리케이션 프로그램에 이상이 없는지를 확인한다(S608). 이때, 이상이 없는지를 확인하는 것은 예를 들어, 어플리케이션 프로그램이 해킹 등을 통해 위조/변조되었는지를 검사하는 것을 의미할 수 있으나 이에 한정되는 것은 아니다.
또한, 인증서버(100)에서는 어플리케이션 프로그램의 이상 여부를 확인하는 동작에 있어서, 예를 들어 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키를 관리용 단말 DB(130)에 기등록된 모바일 단말(200)의 IoT기기 제어용 어플리케이션의 무결성 검증키와 비교한 후, 일치하는 경우 어플리케이션 프로그램에 이상이 없음을 확인할 수 있으나, 이에 한정되는 것은 아니다.
위와 같은 확인 결과, 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 있는 경우(S610), 인증서버(100)는 IoT기기(230)로 인증실패 메시지를 전송하게 되고(S634), 이러한 인증실패 메시지는 IoT기기(230)에서 다시 모바일 단말로 전송하여 인증이 실패했음이 통보된다(S636).
그러나, 확인 결과 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없는 경우(S610), 인증서버(100)는 IoT기기(230)로 모바일 단말(200)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없음을 통보한다(S612).
그러면, IoT기기(230)에서는 모바일 단말(200)의 인증을 위한 IoT기기(230)의 난수값을 생성하여 모바일 단말(200)로 전송한다(S614). 이때, 이러한 난수값의 생성을 위해 IoT기기(230)에는 난수 생성기가 포함될 수 있으나, 이에 한정되는 것은 아니다.
위와 같이 IoT기기(230)로부터 난수값이 수신되는 경우, 모바일 단말(200)에서는 난수값을 이용하여 제1 인증키(수신키)를 생성하고(S616), IoT기기(230)로 전송한다(S618).
이때, 이러한 제1 인증키는 모바일 단말(200)이 인증서버(100)에 등록된 모바일 단말인지 여부를 인증하기 위한 키를 의미할 수 있으며, 이러한 제1 인증키는 예를 들어 모바일 단말(200)의 단말정보와 난수값을 이용하여 생성된 키로 1회성 키가 될 수 있으나, 이에 한정되지는 않는다. 또한, 이러한 단말정보는 모바일 단말(200)을 식별하는 물리코드, 위치 및 장비식별정보가 될 수 있으며, 이러한 물리코드는 모바일 단말(200)의 MAC주소 정보와 USIM 정보를 포함한 정보일 수 있으나 이에 한정되는 것은 아니다. 또한 위치 및 장비식별정보는 데이터 전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
이어, IoT기기(230)에서는 모바일 단말(200)로부터 전송되는 제1 인증키를 수신하고, 이와 같이 수신된 제1 인증키, 난수값, 모바일 단말(200)의 단말정보, 및 IoT기기(230) 정보를 인증서버(100)로 전송한다(S620).
위와 같이, IoT기기(230)로부터 모바일 단말(200)에서 생성된 제1 인증키가 수신되는 경우, 인증서버(100)에서는 관리용 단말 DB(130)에 기등록된 해당 모바일 단말(200)의 단말정보와 IoT기기(230)에서 생성된 난수값을 이용하여 제2 인증키(생성키)를 생성한다(S622).
이어, 인증서버(100)는 위와 같이 생성한 제2 인증키와 제1 인증키를 비교 하여 서로 일치하는지 여부를 검사한다(S624).
이때, 제1 인증키와 제2 인증키가 서로 일치하지 않는 경우(S626), 인증서버(100)는 IoT기기(230)로 인증실패 메시지를 전송하게 되고(S634), 이러한 인증실패 메시지는 IoT기기(230)에서 다시 모바일 단말(200)로 전송되어 인증이 실패했음이 통보된다(S636).
그러나, 제1 인증키와 제2 인증키가 서로 일치하는 경우(S626), 인증서버(100)는 IoT기기(230)에 로그인한 모바일 단말(200)을 정당한 모바일 단말로 인증 하고, 인증 결과 정보 및 인증된 모바일 단말(200)의 단말정보와 IoT기기(230)의 정보를 인증 DB(120)에 등록한다(S628).
이어, 인증서버(100)는 IoT기기(230)로 인증성공 메시지를 전송하게 되고(S630), 이러한 인증 성공 메시지는 IoT기기(230)에서 다시 모바일 단말(200)로 전송되어 인증이 성공했음이 통보된다(S632). 이에 따라, 모바일 단말(200)에서 IoT기기(230)를 원격으로 제어하는 것이 가능하게 된다.
도 8 내지 도 9는 본 발명의 다른 실시 예에 따른 모바일 단말과 IoT기기간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호 처리 흐름을 도시한 것이다.
위 도 8 내지 도 9에 도시된 모바일 단말 인증에서는 도 1에 도시된 시스템 구성에서와는 달리, 난수 생성기(340)가 인증서버(300)에 위치되는 경우의 신호 처리 흐름을 도시한 것이다.
이하, 도 8 내지 도 9를 참조하여 본 발명의 다른 실시 예를 상세히 설명하기로 한다.
먼저, 모바일 단말(400)에서 IoT 제어용 어플리케이션을 구동하여 인증서버(300)로 로그인을 수행한다(S800). 이때, 인증서버(300)에서 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며 최초 인증신청단계로 가서 처음부터 인증 과정을 다시 진행하여 인증을 실패한 경우 실패횟수를 증가시켜서 실패횟수가 지정한 임계횟수를 초과하였을 때 인증서버(300)는 인증과정을 종료한다(S803).
그러나, 인증서버(300)에서 정상적으로 로그인 수행된 경우 인증서버 (300)에서 모바일 단말(400)의 로그인을 승인하며, 로그인이 승인되는 경우, 모바일 단말(400)에서 인증서버(300)로 모바일 단말(400)의 단말정보와 모바일 단말(400)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키(버전 정보, 체크썸(checksum) 등)를 전송한다(S804).
이에 따라, 인증서버(100)는 모바일 단말(400)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키를 검사하여 어플리케이션 프로그램에 이상이 없는지를 확인한다(S806). 이때, 이상이 없는지를 확인하는 것은 예를 들어, 어플리케이션 프로그램이 해킹 등을 통해 위조/변조되었는지를 검사하는 것을 의미할 수 있으나 이에 한정되는 것은 아니다.
또한, 인증서버(300)에서는 어플리케이션 프로그램의 이상 여부를 확인하는 동작에 있어서, 예를 들어 모바일 단말(400)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키를 관리용 단말 DB(330)에 기등록된 모바일 단말(400)의 IoT기기 제어용 어플리케이션의 무결성 검증키와 비교한 후, 일치하는 경우, 어플리케이션 프로그램에 이상이 없음을 확인할 수 있으나, 이에 한정되는 것은 아니다.
위와 같은 확인 결과, 모바일 단말에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 있는 경우(S808), 인증서버(300)는 모바일 단말(400)로 인증실패 메시지를 전송한다(S826).
그러나, 확인 결과 모바일 단말에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없는 경우(S808), 인증서버(300)는 모바일 단말(400)로 모바일 단말(400)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없음을 통보한다.
이어, 인증서버(300)는 모바일 단말(400)의 인증을 위한 난수값을 생성하여 모바일 단말(400)로 전송한다(S810). 이때, 이러한 난수값의 생성을 위해 인증서버(300)에는 난수 생성기(900)가 포함될 수 있으나, 이에 한정되는 것은 아니다.
그러면, 모바일 단말(400)에서는 위와 같이 난수값이 수신되는 경우, 와 수신된 난수값을 이용하여 제1 인증키(수신키)를 생성하고(S812), IoT기기(430)로 제1인증키와 모바일 단말(400)의 단말정보를 전송한다(S814).
이때, 이러한 제1 인증키는 모바일 단말(400)이 인증서버(300)에 등록된 모바일 단말인지 여부를 인증하기 위한 키를 의미할 수 있으며, 이러한 제1 인증키는 예를 들어 모바일 단말(400)의 단말정보와 난수값을 이용하여 생성된 키로 1회성 키가 될 수 있으나, 이에 한정되지는 않는다. 또한, 이러한 단말정보는 모바일 단말(400)을 식별하는 물리코드, 위치 및 장비식별정보가 될 수 있으며, 이러한 물리코드는 모바일 단말의 MAC주소 정보와 USIM 정보를 포함함 정보일 수 있으나, 이에 한정되는 것은 아니다. 또한 위치 및 장비식별정보는 데이터 전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
이어, IoT기기(430)에서는 모바일 단말(400)로부터 전송되는 제1 인증키를 수신하고, 이와 같이 수신된 제1 인증키와 모바일 단말(400)의 단말정보, IoT기기(430)의 정보를 인증서버(300)로 전송한다(S816).
위와 같이, IoT기기(430)로부터 모바일 단말(400)에서 생성된 제1 인증키와 IoT기기(430)의 정보가 수신되는 경우, 인증 서버(300)에서는 관리용 단말DB (330)에 기등록된 해당 모바일 단말(400)의 단말정보와 난수값을 이용하여 생성한 제2 인증키(생성키)와 제1 인증키를 비교한다(S818).
이때, 이러한 제2 인증키의 생성에 있어서, 인증서버(300)는 난수값을 모바일 단말기(400)로 전송한 이후, 제1 인증키와의 비교를 위해 관리용 단말 DB(330)에 기등록된 해당 모바일 단말(400)의 단말정보와 난수값을 이용하여 제1 인증키의 수신 전에 미리 생성하여(S813) 둘 수 있으나, 이에 한정되는 것은 아니다.
이어, 인증서버(300)는 위와 같이 생성한 제2 인증키와 제1 인증키를 비교 하여 서로 일치하는지 여부를 검사한다.
이때, 제1 인증키와 제2 인증키가 서로 일치하지 않는 경우(S820), 인증서버(300)는 모바일 단말(400)로 인증실패 메시지를 전송하여 인증이 실패했음을 통보 한다(S826).
그러나, 제1 인증키와 제2 인증키가 서로 일치하는 경우(S820), 인증서버(300)는 모바일 단말(400)을 정당한 모바일 단말로 인증하고, 인증 결과 정보 및 인증된 모바일 단말(400)의 단말정보와 IoT기기(430)의 정보를 인증 DB(320)에 등록한다(S822).
이어, 인증서버(300)는 모바일 단말(400)로 인증성공 메시지를 전송하여 인증이 성공했음을 통보한다(S824). 이에 따라, 모바일 단말(400)에서 IoT기기(430)를 원격으로 제어하는 것이 가능하게 된다.
도 10은 본 발명의 또 다른 실시 예에 따른 모바일 단말과 IoT기기간 제3자 보안인증 시스템의 구성을 도시한 것이다.
위 도 10을 참조하면, 본 발명의 다른 실시 예에 따른 보안인증 시스템에서는 도 1에서와는 달리, 인증서버(500), 모바일 단말(600), IoT기기(630), 어플리케이션 검증서버(700) 및 유무선인터넷망 등으로 구성될 수 있으며, 단말의 그룹(유형)은 모바일 단말-IoT기기간(1:m, n:1, n:m) 단말 그룹으로 접속할 수 있다. 여기서, 유무선인터넷망은 예를 들어 음성통신망, 데이터 통신망 및 와이파이망 등의 IoT기기와 직접 접속할 수 있는 통신망일 수 있다.
이하, 도 10을 참조하여 본 발명의 다른 실시 예에 따른 보안인증 시스템의 각 구성요소에서의 동작을 상세히 설명하기로 한다.
먼저, 인증서버(500)는 IoT기기(630)에 접근하여 원격 제어를 수행하는 모바일 단말(600)이 정당한 모바일 단말인지 여부를 인증하는 서버일 수 있다.
즉, 인증서버(500)는 본 발명의 실시 예에 따라 모바일 단말(600)에서 IoT 기기(630)에 접근하기 위한 인증 요청을 수신하는 경우, 모바일 단말(600)로부터 전송된 단말정보와 등록된 모바일 단말(600)의 단말정보를 비교하고, IoT기기 제어용 어플리케이션 프로그램이 변경되었는지 등을 검사하여 모바일 단말(600)을 인증함으로써, 모바일 단말(600)에서 IoT기기(630)에 대한 원격 제어가 가능하도록 할 수 있다.
이러한, 인증서버(500)는 관리로그 DB(510), 인증 DB(520), 패킷탈취 방지부(511), 아이디/패스워드(ID/Password) 관리부(521), 인증부(514), 모바일 단말(Master /Family) 관리부(516), IoT기기 관리부(517), 로그 관리부(518), 조회 관리부(519) 등과 같은 모듈을 탑재할 수 있다.
인증 DB(520)는 인증승인, 인증거부 및 인증에러에 대한 결과 값과 인증된 어플리케이션 및 어플리케이션 프로그램의 버전 정보관리와 모바일 단말 또는 IoT기기에서 수신된 어플리케이션 무결성 검증키 정보를 저장한다. 관리로그 DB (510)는 인증서버(500)에서 실행하는 모든 작업의 로그를 기록하여 상태 조회, 통계 등의 정보자료 관리한다.
패킷탈취 방지부(511)는 모바일 단말(600)과 인증서버(500)간 송수신되는 패킷이 탈취되는 것을 방지한다.
아이디/패스워드 관리부(512)는 인증서버(500)로 로그인하도록 모바일 단말(600)에 대해 할당된 로그인 아이디/패스워드에 대한 정보를 관리한다.
인증부(514)는 모바일 단말(600)로부터 IoT기기(630)에 대한 원격 제어 요청이 있는 경우, 해당 모바일 단말(600)이 원격 제어 권한을 가지는 정당한 모바일 단말인지 여부를 인증한다.
모바일 단말(Master/ Family) 관리부(516)는 인증 DB(520)에 등록된 모바일 단말(200)을 관리한다.
IoT기기 관리부(517)는 인증서버(500)에 등록되는 IoT기기(630)에 대한 정보를 관리한다. 로그 관리부(518)는 인증서버(500)에 로그인하는 모바일 단말 (600)의 각종 로그 기록을 관리한다. 조회 관리부(519)는 모바일 단말(600)이 인증 서버(500)에 접속하여 조회하는 정보를 관리한다.
모바일 단말(600)은 유무선인터넷망을 통해 IoT기기(630)에 접속하여 IoT기기(630)를 원격 제어할 수 있는 사용자 단말장치를 말할 수 있다. 이러한, 모바일 단말(600)은 예를 들어 IoT기기(630)를 제어하기 위하여 음성통신망, 데이터 통신망 및 와이파이망 등을 사용하는 휴대전화, 스마트폰, PAD, 테블릿 등의 단말장치가 될 수 있으나, 이에 한정되는 것은 아니다.
또한, 모바일 단말(600)은 IoT기기(630)에 대한 원격 제어를 수행하기 위해, 인증서버(500)에 등록하며, 인증서버(500)를 통한 인증절차를 통해 IoT기기(630)에 대한 원격 제어 권한을 승인받아 IoT기기(630)에 대한 원격 제어를 수행할 수 있다.
이러한, 모바일 단말(600)은 예를 들어 전송패킷 관리부(611), 아이디/패스 워드 관리부(612), 단말기 승인관리부(613), 로그인 관리부(614), 인증 관리부(615), 보안키 관리부(616), IoT기기 운영관리부(617) 등의 모듈을 탑재할 수 있다.
전송패킷 관리부(611)는 전송되는 데이터(보안키, 모바일 단말 정보 등)의 패킷 송수신을 관리한다. 아이디/패스워드 관리부(612)는 인증서버(600)와 IoT기기(630) 등으로 로그인하기 위한 아이디/패스워드 등을 관리한다. 단말기 승인관리부(613)는 IoT기기(630)에 접근하는 모바일 단말(Family)(620)에 대해 IoT기기(630)에 대한 사용승인을 관리한다.
로그인 관리부(614)는 모바일 단말(600)이 IoT기기(630) 또는 인증서버 (600)에 로그인한 정보를 관리한다. 인증 관리부(615)는 모바일 단말(600)에 설치 되는 IoT기기 제어용 어플리케이션의 무결성 검증키 정보를 관리한다.
보안키 관리부(616)는 모바일 단말(600)의 단말정보를 보안키로 생성하여 관리하며, 이와 같이 보안키로 생성되는 모바일 단말(600)의 단말정보는 모바일 단말(600)에 대한 인증서버(500)로의 등록과 IoT기기(630)의 원격 제어를 위한 인증 수행에 사용될 수 있다. IoT기기 운영관리부(617)는 모바일 단말(600)에 등록되는 IoT기기(630)에 대한 정보를 관리한다.
IoT기기(630)는 유무선 인터넷 통신이 가능한 전자기기를 말하는 것으로 각종 센서를 통제하는 보안장치, 스마트 가전, 냉난방장치, CCTV, 조명기기, 온도조절장치, 허브장비 등을 포함할 수 있다. 즉, IoT기기(630)는 통신 기능이 탑재된 댁내 각종 전자 기기 예를 들어 냉장고, 스마트 TV 등과 같은 기기가 될 수 있으며, 홈 오토메이션으로 연결되는 각종 댁내 기기를 제어하는 홈 오토메이션 제어장치 등이 될 수도 있다.
또한, IoT기기(630)는 유무선 인터넷 통신망을 통해 모바일 단말(600)과 통신 수행이 가능하며, 인증서버(500)에서 인증된 모바일 단말(600)로부터 전송되는 원격 제어 명령을 수신하여 원격 제어 명령에 대응되는 동작을 수행할 수 있다.
이러한, IoT기기(630)는 전송패킷 관리부(631), 아이디/패스워드 관리부(632), 운영단말 등록부(633), 로그인 검증부(634), 인증 관리부(636), 보안키 관리부(637) 등의 모듈을 탑재한다.
전송패킷 관리부(631)는 모바일 단말(600)과의 사이에서 송수신되는 패킷과 인증서버(500)와의 사이에서 송수신되는 패킷에 대한 정보를 관리한다. 아이디/패스워드 관리부(632)는 IoT기기(630)로 로그인하도록 설정된 아이디와 패스워드를 관리한다. 운영단말 등록부(633)는 IoT기기(630)에 대한 원격 제어를 수행하도록 등록한 모바일 단말(600)에 대한 정보를 등록하고 관리한다. 로그인 검증부(634)는 IoT기기(630)로 로그인 시도하는 모바일 단말(600)에 대해 모바일 단말(600)에서 입력된 아이디/패스워드를 검사하여 로그인 시도가 정당한지 검사한다.
인증 관리부(636)는 IoT기기(630)에 설치되는 IoT기기 제어용 어플리케이션의 무결성 검증키 정보를 관리한다. 보안키 관리부(637)는 모바일 단말(600)로부터 전송되는 모바일 단말(600)의 단말정보를 이용해서 생성되는 보안키 정보를 관리한다.
어플리케이션 검증서버(700)는 모바일 단말에 탑재되는 IoT기기 제어용 어플리케이션의 변경 여부를 검증하는 서버일 수 있다. 또한, 어플리케이션 검증서버(700)는 도 1의 인증서버(100)의 어플리케이션 검증과 장비관리등록 기능을 대신하여 모바일 단말(600)와 IoT기기(630)에 대한 등록/변경/삭제하는 등의 동작을 수행할 수 있다.
어플리케이션 검증서버(300)의 주요기능은 첫 번째로 관리용 단말 DB(710)에 등록된 모바일 단말(600) 및 IoT기기(630)에 대한 단말정보 관리운영을 수행한다. 두 번째로 난수를 발생하여 프로그램의 인증키를 생성할 수 있고, 이와 같이 생성한 인증키를 인증서버(500)에 제공한다. 세 번째로 모바일 단말(600)에 탑재되는 IoT기기 제어용 어플리케이션의 무결성 검증을 수행한다. 그 밖에 소스코드 변조체크부를 이용하여 모바일 단말(600)에 설치되는 IoT기기 제어용 어플리케이션의 위조 또는 변조 여부를 체크한다. 이때, 소스코드의 변조체크에 있어서, 어플리케이션 검증서버(700)는 예를 들어 모바일 단말(600)로부터 전송되는 어플리케이션의 무결성 검증 키에 포함되는 어플리케이션의 체크썸 정보를 이용하여 어플리케이션의 위조 또는 변조를 체크할 수 있으나, 이에 한정되는 것은 아니다.
이러한 어플리케이션 검증서버(700)는 관리용 단말 DB(710), 패킷탈취 방지부(711), 아이디/패스워드 관리부(712), 소스코드 변조체크부(713), 모바일 단말 관리부(714), 로그인 관리부(715), 조회 관리부(716), 인증 어플리케이션 관리부(717) 등과 같은 모듈을 탑재할 수 있다.
관리용 단말 DB(710)는 등록된 모바일 단말(600) 및 IoT기기(630)에 대한 단말정보를 관리한다. 패킷탈취 방지부(711)는 모바일 단말(200)과 어플리케이션 검증서버(700)간 송수신되는 패킷이 탈취되는 것을 방지한다. 아이디/패스워드 관리부(712)는 어플리케이션 검증서버(700)로 로그인하도록 모바일 단말(600)에 대해 할당된 로그인 아이디/패스워드에 대한 정보를 관리한다.
소스코드 변조체크부(713)는 모바일 단말(600)에 설치되는 IoT기기 제어용 어플리케이션의 위조 또는 변조 여부를 체크한다. 이때, 소스코드 변조체크부(713)는 예를 들어 모바일 단말(600)로부터 전송되는 어플리케이션의 무결성 검증키에 포함되는 어플리케이션의 체크썸 정보를 이용하여 어플리케이션의 위조 또는 변조를 체크할 수 있으나, 이에 한정되는 것은 아니다.
모바일 단말(Master/Family) 관리부(714)는 어플리케이션 검증서버(700)에 등록된 모바일 단말(600)을 관리한다. 이때, 이러한 모바일 단말(600)은 IoT기기(630)에 대한 제어 권한에 따라 마스터로 구분되는 모바일 단말(Master)(610)와 패밀리로 구분되는 모바일 단말(Family)(620)일 수 있으며, 모바일 단말(Master)(610)는 모바일 단말(Family)(620)에서 IoT기기(630)를 등록/변경/삭제하고자 하는 경우, 이러한 등록/변경/삭제에 대해 승인하여 줄 수 있는 권한이 설정될 수 있다.
로그인 관리부(715)는 어플리케이션 검증서버(700)로 로그인하는 모바일 단말(600)의 정보를 관리한다. 조회 관리부(716)는 모바일 단말(600)이 어플리케이션 검증서버(700)에 접속하여 조회하는 정보를 관리한다. 인증 어플리케이션 관리부(717)는 인증된 IoT기기 제어용 어플리케이션의 버전 정보와 무결성 검증키에 대한 정보를 관리한다. 난수 생성부(718)는 모바일 단말(600)의 보안인증에 필요한 난수 값을 생성한다. 이러한 난수값은 어플리케이션 검증서버(700)에 등록한 모바일 단말(600)이 IoT기기(630)를 원격 제어하기 위한 인증 수행 시 생성될 수 있으며, 생성된 난수값은 모바일 단말(600)과 인증서버(100)로 각각 제공될 수 있다.
보안인증 시스템내 모바일 단말(600), IoT기기(630)간 전송되는 데이터는 유무선인터넷망을 통해서 전송될 수 있고, 전송된 패킷은 모바일 단말(600), IoT기기(630) 내에 설치된 인증 어플리케이션 또는 인증 모듈을 사용해서 자체 보안체크(패킷탈취방지)가 수행되도록 하여 전송된 패킷에 대한 안전성을 확보할 수 있으며, 모바일 단말(600), IoT기기(630)간 안전한 통신을 할 수 있다.
도 11은 본 발명의 다른 실시 예에 따른 IoT기기를 제어하는 모바일 단말(600)을 어플리케이션 검증서버에 등록/변경/삭제하는 절차도를 도시한 것이다.
모바일 단말(600)은 IoT기기(630)에 대한 주요한 제어 권한을 가지는 마스터 역할을 수행하는 모바일 단말(Master)(610)과 모바일 단말(Master)(610)에 등록하여 IoT기기(630)를 제어할 수 있는 모바일 단말(Family)(620)로 구분될 수 있으나 이에 한정되는 것은 아니다. 또한, 이러한 모바일 단말(Master)(610)과 모바일 단말(Family)(620)는 모두 인증서버(500)에 등록하는 것이 필요하다. 따라서, 이하, 위 도 11에 대한 설명에서는 편의상 모바일 단말(Master)(610)과 모바일 단말(Family)(620)을 모두 통칭하여 모바일 단말(600)로 명명하여 설명하도록 한다.
위 도 11을 참조하면, 모바일 단말(600)을 어플리케이션 검증서버(700)의 관리용 단말 DB(710)에 등록/변경/삭제하는 등의 프로세스를 수행하기 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(600)에 설치하고 구동해야 한다.
먼저, 어플리케이션 검증서버(700)에 모바일 단말(600)을 등록하는 프로세스의 경우, 모바일 단말(600)에서 어플리케이션 검증서버(700)로 로그인을 수행한 후, 어플리케이션의 무결성 검증키와 모바일 단말(600)의 단말정보를 어플리케이션 검증서버(700)로 전송한다. 이때, 무결성 검증키는 어플리케이션 프로그램이 해킹 등에 의해 위조/변조되었는지 여부를 판단하기 위한 정보로서, 예를 들어 어플리케이션의 버전 정보 또는 체크썸(checksum) 정보 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 또한, 모바일 단말(600)의 단말정보의 일부인 물리코드는 어플리케이션 검증서버(700)에서 모바일 단말(600)에 대한 인증을 위한 보안키 정보로 사용될 수 있으며, 이러한 단말정보는 물리코드, 위치정보 및 장비식별정보가 있으며, 예를 들어 모바일 단말(600)의 물리코드가 될 수 있다. 또한, 이러한 물리코드는 모바일 단말(600)의 MAC 주소 정보 또는 USIM 정보 등이 되며, 또한 위치 및 장비식별정보는 데이터 전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있으나, 이에 한정되는 것은 아니다.
이때, 어플리케이션 검증서버(700)로 로그인을 수행함에 있어서, 모바일 단말(600)은 예를 들어 어플리케이션 검증서버(700)에 접속하기 위해 미리 할당된 아이디(ID), 패스워드(password) 등을 사용자 등으로부터 입력받아 어플리케이션 검증서버(700)에 로그인을 수행할 수 있다. 이러한 아이디, 패스워드 등은 등록 전에 어플리케이션 검증서버(700)로부터 미리 할당 받아서 모바일 단말(600)의 사용자가 인지하고 있을 수 있다.
그러면, 어플리케이션 검증서버(700)는 모바일 단말(600)의 단말정보와 어플리케이션의 무결성 검증키를 어플리케이션 검증서버(700)의 관리용 단말 DB (710)에 등록 한다.
이어, 어플리케이션 검증서버(700)는 위와 같이 로그인하여 등록을 요청한 모바일 단말(600)에 대해 등록을 수행한 경우, 모바일 단말(600)로 모바일 단말(600)의 단말정보와 어플리케이션의 무결성 검증키가 인증 DB(520)와 관리용 단말 DB(710)에 정상적으로 등록이 완료되었음을 통지한다.
다음으로, 어플리케이션 검증서버(700)에 등록된 모바일 단말(600)의 단말 정보를 변경하는 프로세스의 경우, 모바일 단말(600)에서 어플리케이션 검증서버(700)로 로그인을 수행한다.
이어, 모바일 단말(600)에서 모바일 단말(600)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(600)의 변경된 단말정보를 어플리케이션 검증서버(700)로 전송한다. 이때, 변경된 단말정보는 모바일 단말(600)이 변경됨에 따른 새로운 모바일 단말(600)의 물리코드, 위치정보 및 장비식별정보가 될 수 있으며, 물리코드는 전술한 바와 같이 모바일 단말의 MAC 주소 정보 또는 USIM 정보 등이 되며, 또한 위치 및 장비식별정보는 데이터전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
그러면, 어플리케이션 검증서버(700)는 모바일 단말(600)에서 받은 어플리케이션의 무결성 검증키와 기등록된 모바일 단말(600)의 어플리케이션 무결성 검증 키와 비교하여 일치하는 경우, 모바일 단말(600)의 변경된 단말정보를 관리용 단말 DB(710)에 저장한다.
이어, 어플리케이션 검증서버(700)는 위와 같이 로그인하여 정보 변경을 요청한 모바일 단말(600)에 대해 단말정보 변경을 정상적으로 수행한 경우, 모바일 단말(600)로 변경 작업완료 메시지를 전송하고 변경작업을 완료한다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, 모바일 단말(600)에 대한 단말정보 삭제의 경우에도 변경 절차와 동일한 과정을 통해 등록된 모바일 단말(600)에 대한 단말정보의 삭제가 가능하다.
도 12는 본 발명의 실시 예에 따른 IoT기기의 초기 구입시 모바일 단말에서 IoT기기를 등록/변경/삭제하는 절차도를 도시한 것이다. 이때, IoT기기(630)를 등록/변경/삭제하는 모바일 단말(600)은 어플리케이션 검증서버(700)에 마스터로 등록된 모바일 단말(Master)(610)의 경우를 예를 들어 설명하기로 한다.
위 도 12를 참조하면, 모바일 단말(Master)(610)에서 IoT기기(630)를 등록/변경/삭제하는 등의 프로세스를 수행하기 위해서는 모바일 단말(Master)(610)을 어플리케이션 검증서버(700)에 등록/변경/삭제하는 경우와 동일하게 IoT기기 제어용 어플리케이션을 모바일 단말(Master)(610)에 설치하고 구동해야 한다.
먼저, 모바일 단말(Master)(610)에 IoT기기(630)를 등록하는 프로세스의 경우, 모바일 단말(Master)(610)에서 IoT기기(630)로 로그인을 수행한 후, 모바일 단말(Master)(610)은 IoT기기(630)의 단말정보를 요청하고, IoT기기(630)는 단말정보를 모바일 단말(Master)(610)로 전송한다. 이때, IoT기기(630)로 로그인을 수행함에 있어서, 모바일 단말(600)은 예를 들어 IoT기기(630)의 최초 구입 시 IoT기기(630)에 할당된 아이디, 패스워드 등을 모바일 단말(600)의 사용자로부터 입력받아 IoT기기(600)에 로그인을 수행할 수 있다. 또한, 이때, IoT기기(630)의 정보라 함은 예를 들어 IoT기기(630)에 부여된 운영상 휴대, 부착, 각인, 일련번호를 통해서 인식되는 고유식별 코드를 말할 수 있으나, 이에 한정되는 것은 아니다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Master)(610)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(Master)(610)의 단말정보 및 IoT기기(630)의 단말정보를 어플리케이션 검증서버(700)로 전송한다. 이때, 모바일 단말 (600)의 단말정보는 물리코드, 위치정보 및 장비식별정보 등이고, 예를 들어 MAC주소 정보 또는 USIM 정보 등과 같은 모바일 단말(Master)(610)의 물리코드가 될 수 있고, 또한 위치 및 장비식별정보는 데이터전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
위와 같이 모바일 단말(Master)(610)로부터 IoT기기(630)의 등록을 위한 정보를 수신하는 경우 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 기등록된 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키와 수신된 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키를 비교한다.
위와 같은 비교결과, 어플리케이션의 무결성 검증키가 서로 일치하는 경우, 어플리케이션 검증서버(700)는 IoT기기(630)의 정보를 관리용 단말 DB(710)에 저장하고, 모바일 단말(Master)(610)로 모바일 단말(Master)(610)에 IoT기기(630)가 정상적으로 등록되었음을 알리는 등록완료 메시지를 보낸다. 그러나, 비교결과 어플리케이션의 무결성 검증키가 불일치할 경우 어플리케이션 검증서버(700)는 IoT기기 (630)의 등록이 불가함을 알리는 등록 불가 메시지를 모바일 단말(Master)(610)로 보낸다.
다음으로, 모바일 단말(Master)(610)에 등록된 IoT기기(630)의 정보를 변경 하는 프로세스의 경우, 모바일 단말(Master)(610)에서 IoT기기(630)로 로그인을 수행한 후, 모바일 단말(Master)(610)은 IoT기기(630)의 변경된 단말정보를 요청하고, IoT기기(630)는 변경된 단말정보를 모바일 단말(Master)(610)로 전송한다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Master)(610)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(Master)(610)의 단말정보 및 IoT기기(630)의 단말정보와 변경된 단말정보를 어플리케이션 검증서버(700)로 전송한다.
위와 같이 모바일 단말(Master)(610)로부터 IoT기기(630)의 변경을 위한 정보를 수신하는 경우 어플리케이션 검증서버(700)는 모바일 단말(Master)(610)에서 전송받은 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키와 어플리케이션 검증서버(700)내의 관리용 단말 DB(710)에 기등록된 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키를 비교한다.
이어, 어플리케이션 검증서버(700)는 비교결과 두 개의 무결성 검증키가 일치하는 경우, 어플리케이션 검증서버(700)내 해당 모바일 단말(Master)(610)에 등록된 IoT기기(630)의 정보를 IoT기기(630)의 변경정보로 변경하고, 모바일 단말(Master)(610)로 IoT기기(630)의 정보 변경 절차가 완료되었음을 알리는 메시지를 전송하며, 불일치할 경우 변경불가 메시지를 전송한다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, IoT기기(630)에 대한 정보 삭제의 경우에도 변경 절차와 동일한 과정을 통해 등록된 IoT기기(630)에 대한 정보의 삭제가 가능하다.
도 13은 본 발명의 실시 예에 따른 IoT기기를 제어할 모바일 단말(Family)을 모바일 단말(Master)에 등록/변경/삭제하는 절차도를 도시한 것이다.
위 도 13을 참조하면, 모바일 단말(Family)(620)을 모바일 단말(Master) (610)에 등록/변경/삭제하는 동작을 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(Master)(610)과 모바일 단말(Family)(620)에 설치하고 구동해야 한다.
먼저, 모바일 단말(Family)(620)을 모바일 단말(Master)(610)에 등록하는 프로세스의 경우, 모바일 단말(Master)(610)에서 모바일 단말(Family)(620)로 로그인을 수행한 후, 모바일 단말(Master)(610)은 모바일 단말(Family)(620)의 단말정보와 어플리케이션 무결성 검증키를 요청하고, 모바일 단말(Family)(620)은 단말정보와 어플리케이션 무결성 검증키를 모바일 단말(Master)(610)로 전송한다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Master)(610)의 단말정보와 어플리케이션의 무결성 검증키 및 모바일 단말(Family)(620)의 단말정보와 어플리케이션의 무결성 검증키를 어플리케이션 검증서버(700)로 전송한다.
위와 같이, 모바일 단말(Master)(610)에 모바일 단말(Family)(620)를 등록하기 위한 정보를 수신하는 경우, 어플리케이션 검증서버(700)는 관리용 단말 DB (710)에 기등록된 모바일 단말(Master)(610)의 어플리케이션 무결성 검증키와 수신된 모바일 단말(Master)(610)의 어플리케이션 무결성 검증키를 비교한다.
위와 같은 비교결과, 두 개의 무결성 검증키가 서로 일치하는 경우 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 등록된 모바일 단말(Master)(610)에 모바일 단말(Family)(620)을 등록한다.
이어, 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)에 대한 정보가 모바일 단말(Master)(610)에 정상적으로 등록되었음을 알리는 등록완료 메시지를 모바일 단말(Master)(610)로 보낸다.
그러나, 비교결과 두 개의 단말정보가 불일치할 경우, 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)에 대한 등록이 불가함을 알리는 등록 불가 메시지를 모바일 단말(Master)(610)로 전송한다.
다음으로, 모바일 단말(Master)(610)에 등록된 모바일 단말(Family)(620)의 정보를 변경하는 프로세스의 경우, 모바일 단말(Master)(610)에서 모바일 단말(Family)(620)로 로그인을 수행한 후, 모바일 단말(Master)(610)은 모바일 단말(Family)(620)의 변경된 단말정보를 요청하고, 모바일 단말(Family)(620)은 변경된 단말정보를 모바일 단말(Master)(610)로 전송한다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Master)(610)의 단말정보와 어플리케이션의 무결성 검증키 및 모바일 단말(Family)(620)의 변경된 단말정보와 어플리케이션의 무결성 검증키를 어플리케이션 검증서버(700)로 전송한다.
위와 같이, 모바일 단말(Master)(610)에 등록된 모바일 단말(Family)(620)의 정보변경을 위한 정보를 수신하는 경우, 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 기등록된 모바일 단말(Master)(610)과 모바일 단말(Family)(620)의 어플리케이션 무결성 검증키와 수신된 모바일 단말(Master)(610)과 모바일 단말(Family)(620)의 어플리케이션 무결성 검증키를 비교한다.
이어, 어플리케이션 검증서버(700)는 비교결과 무결성 검증키가 일치하는 경우, 관리용 단말 DB(710)에 저장된 모바일 단말(Master)(610)에 등록된 모바일 단말(Family)(620)의 단말정보를 변경 요청된 단말정보로 변경 등록한다. 이어, 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)로 변경등록 완료 메시지를 보낸다.
그러나, 비교결과 두 개의 단말정보가 불일치할 경우 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)의 정보 변경이 불가함을 알리는 변경 불가 메시지를 전송한다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, 모바일 단말(Family)(620)에 대한 정보 삭제시에도 변경 절차와 동일한 과정을 통해 등록된 모바일 단말(Family)(620)에 대한 정보의 삭제가 가능하다.
도 14는 본 발명의 다른 실시 예에 따른 모바일 단말(Family)에 IoT기기를 등록/변경/삭제하는 절차도를 도시한 것이다.
위 도 14를 참조하면, 모바일 단말(Family)(620)에서 IoT기기(630)를 등록/변경/삭제하는 동작을 위해서는 IoT기기 제어용 어플리케이션을 모바일 단말(Master) (610)과 모바일 단말(Family)(620)에 설치하고 구동해야 한다.
먼저, 모바일 단말(Family)(620)에서 IoT기기(630)를 어플리케이션 검증서버(700)에 등록하는 프로세스의 경우, 모바일 단말(Family)(620)에서 IoT기기(630)로 로그인을 수행한 후, 모바일 단말(Family)(620)은 IoT기기(630)의 단말정보를 요청 하고, IoT기기(630)는 IoT기기(630)의 단말정보를 모바일 단말(Family)(620)로 전송한다.
그러면, 모바일 단말(Family)(620)은 모바일 단말(Family)(620)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(Family)(620)의 단말정보, 모바일 단말(Master)(610)의 단말정보 및 IoT기기(630)의 단말정보를 어플리케이션 검증서버(700)로 전송한다. 이때, 모바일 단말(Family)(620)의 단말정보는 물리코드, 위치 및 장비식별정보를 포함한다. 예를 들어 MAC주소 정보 또는 USIM 정보 등과 같은 모바일 단말(Family)(620)의 물리코드가 될 수 있다. 또한 위치 및 장비식별정보는 데이터전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
위와 같이, 모바일 단말(Family)(620)로부터 IoT기기(630)의 등록을 위한 정보를 수신하는 경우 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 기등록된 모바일 단말(Family)(620)의 어플리케이션의 무결성 검증키와 수신된 모바일 단말(Family)(620)의 어플리케이션의 무결성 검증키를 비교한다.
위와 같은 비교결과, 두 개의 무결성 검증키가 서로 일치하는 경우 어플리케이션 검증서버(700)는 모바일 단말(Master)(610)로 등록 승인을 요청한다. 이때, 이러한 등록 승인은 예를 들어 모바일 단말(Family)(620)에 IoT기기(630)를 등록 하는 것에 대한 승인을 의미할 수 있다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Family)(620)이 인증된 것을 확인하고, 모바일 단말(Family)(620)에 IoT기기(630)를 등록하는 것을 승인할 수 있다.
이어, 위와 같이 모바일 단말(Family)(620)에 IoT기기(630)의 등록을 승인하는 경우, 모바일 단말(Master)(610)은 등록 승인 메시지와 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키를 어플리케이션 검증서버(700)로 전송한다.
그러면, 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 기등록된 모바일 단말(Master)(710)의 어플리케이션 무결성 검증키와 모바일 단말(Master) (710)로부터 전송된 어플리케이션 무결성 검증키가 일치하는지 비교하고, 두 개의 무결성 검증키가 일치하는 경우 IoT기기(630)의 정보를 관리용 단말 DB(710)에 저장하여 IoT기기(630)를 어플리케이션 검증서버(700)에 등록한다.
이어, 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)로 등록완료 메시지를 전송하면 모바일 단말(Family)(220)는 모바일 단말(Master)(210)로 등록확인 메시지를 통보하고 종료한다. 그러나 최종적으로 모바일 단말(Master)(210)가 지정된 시간내 모바일 단말(Family)(220)로부터 확인 메시지를 못 받을 경우 등록은 취소된다.
다음으로, 모바일 단말(Family)(620)에서 등록된 IoT기기(630)를 어플리케이션 검증서버(700)에 변경하는 프로세스의 경우, 모바일 단말(Family)(620)에서 IoT기기(630)로 로그인을 수행한 후, 모바일 단말(Family)(620)은 IoT기기(630)의 변경된 단말정보를 요청하고, IoT기기(630)는 변경된 단말정보를 모바일 단말(Family) (620)로 전송한다.
그러면, 모바일 단말(Family)(620)은 모바일 단말(Family)(620)에 설치된 어플리케이션의 무결성 검증키와 모바일 단말(Family)(620)의 단말정보, 모바일 단말(Master)(610)의 단말정보 및 IoT기기(630)의 변경된 단말정보를 어플리케이션 검증서버(700)로 전송한다. 이때, 모바일 단말(Family)(620)의 단말정보는 물리코드, 위치 및 장비식별정보를 포함한다. 예를 들어 MAC주소 정보 또는 USIM 정보 등과 같은 모바일 단말(Family)(620)의 물리코드가 될 수 있고, 또한 위치 및 장비식별정보는 데이터전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
위와 같이 모바일 단말(Family)(620)로부터 IoT기기(630)의 변경을 위한 정보를 수신하는 경우 어플리케이션 검증서버(700)는 관리용 단말 DB(630)에 기등록된 모바일 단말(Family)(620)의 어플리케이션의 무결성 검증키와 수신된 모바일 단말(Family)(620)의 어플리케이션의 무결성 검증키를 비교한다.
위와 같은 비교결과, 두 개의 무결성 검증키가 서로 일치하는 경우 어플리케이션 검증서버(700)는 모바일 단말(Master)(610)로 변경 등록 승인을 요청한다. 이때, 이러한 변경 등록 승인은 예를 들어 모바일 단말(Family)(620)에서 IoT기기 (630)의 정보를 변경하는 것에 대한 승인을 의미할 수 있다.
그러면, 모바일 단말(Master)(610)은 모바일 단말(Family)(620)이 인증된 것을 확인하고, 모바일 단말(Family)(620)에 IoT기기(630)의 정보를 변경 등록하는 것을 승인할 수 있다.
이어, 위와 같이 모바일 단말(Family)(620)에서 IoT기기(630)의 변경 등록을 승인하는 경우, 모바일 단말(Master)(610)은 변경 등록 승인 메시지와 모바일 단말(Master)(610)의 어플리케이션의 무결성 검증키를 어플리케이션 검증서버(700)로 전송한다.
그러면, 어플리케이션 검증서버(700)는 관리용 단말 DB(710)에 기등록된 모바일 단말(Master)(610)의 어플리케이션 무결성 검증키와 모바일 단말(Master)(610)로부터 전송된 어플리케이션 무결성 검증키가 일치하는지 비교하고, 두 개의 무결성 검증키가 일치하는 경우 IoT기기(630)의 변경정보를 관리용 단말 DB(710)에 저장하여 IoT기기(630)를 어플리케이션 검증서버(700)에 등록한다.
이어, 어플리케이션 검증서버(700)는 모바일 단말(Family)(620)로 변경 등록완료 메시지를 전송하면 모바일 단말(Family)(220)는 모바일 단말(Master)(210)로 등록확인 메시지를 통보하고 종료한다. 그러나 최종적으로 모바일 단말(Master)(210)가 지정된 시간내 모바일 단말(Family)(220)로부터 확인 메시지를 못 받을 경우 등록은 취소된다.
한편, 위 설명에서는 변경/삭제 프로세스 중 변경 프로세스에 대해서만 예를 들어 설명하였으나, IoT기기(630)에 대한 정보 삭제 시에도 변경 절차와 동일한 과정을 통해 등록된 IoT기기(630)에 대한 정보의 삭제가 가능하다.
도 15 내지 도 16는 본 발명의 다른 실시 예에 따른 모바일 단말(600)과 IoT 기기(630)간 보안인증 시스템에서 IoT기기에 접근하는 모바일 단말을 인증하는 신호처리 흐름을 도시한 것이다.
위 도 15 내지 도 16에 도시된 모바일 단말 인증에서는 도 1에 도시된 시스템 구성에서와는 달리, 인증서버(500)와 어플리케이션 검증서버(700)를 분리 하고, 난수 생성부(718)가 어플리케이션 검증서버(700)에 위치되는 경우의 신호 처리 흐름을 도시한 것이다.
이하, 도 10 내지 도 16을 참조하여 본 발명의 실시 예를 상세히 설명하기로 한다.
먼저, 모바일 단말(600)에서 IoT 제어용 어플리케이션을 구동하여 어플리케이션 검증서버(700)로 로그인을 수행한다(S900). 이때, 어플리케이션 검증서버 (700)에서 정상적으로 로그인이 수행되지 않은 경우 실패횟수를 카운딩하며, 최초 인증신청단계로 가서 처음부터 인증과정을 다시 진행하여 인증을 실패한 경우 실패횟수를 증가시켜서 실패횟수가 지정한 임계횟수를 초과하였을 때 인증과정을 종료한다.
그러나, 어플리케이션 검증서버(700)에서 정상적으로 로그인 수행된 경우(S902) 어플리케이션 검증서버(700)에서 모바일 단말(600)의 로그인을 승인하며, 로그인이 승인되는 경우 모바일 단말(600)에서 어플리케이션 검증서버(700)로 모바일 단말(600)의 단말정보와 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키(버전 정보, 체크썸(checksum) 등)를 전송한다(S904).
이에 따라, 어플리케이션 검증서버(700)는 모바일 단말(600)에 설치된 IoT 기기 제어용 어플리케이션의 무결성 검증키를 검사하여 어플리케이션 프로그램에 이상이 없는지를 확인한다(S906). 이때, 이상이 없는지를 확인하는 것은 예를 들어, 어플리케이션 프로그램이 해킹 등을 통해 위조/변조되었는지를 검사하는 것을 의미할 수 있으나 이에 한정되는 것은 아니다.
또한, 어플리케이션 검증서버(700)에서는 어플리케이션 프로그램의 이상 여부를 확인하는 동작에 있어서, 예를 들어 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션의 무결성 검증키를 관리용 단말 DB(710)에 기등록된 모바일 단말(600)의 IoT기기 제어용 어플리케이션의 무결성 검증키와 비교한 후, 일치하는 경우 어플리케이션 프로그램에 이상이 없음을 확인할 수 있으나, 이에 한정되는 것은 아니다.
위와 같은 확인 결과, 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 있는 경우 어플리케이션 검증서버(700)는 모바일 단말(600)로 인증실패 메시지를 전송한다.
그러나, 확인 결과, 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없는 경우(S908), 어플리케이션 검증서버(700)는 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없음을 통보한다(S912).
위와 같이, 어플리케이션 검증서버(700)에서 어플리케이션 프로그램에 이상이 없음이 통보되는 경우, 모바일 단말(600)에서는 IoT기기(630)로 모바일 단말(600)의 단말정보를 전송한다(S914).
그러면, IoT기기(630)에서는 모바일 단말(600)로부터 전송되는 단말정보를 수신하고, 이와 같이 수신된 단말정보와 IoT기기(630)의 정보를 인증서버(500)로 전송한다(S916).
위와 같이, IoT기기(630)로부터 모바일 단말(600)의 단말정보와 IoT기기 (630)의 정보가 수신되는 경우, 인증서버(500)에서는 수신된 모바일 단말(600)의 단말정보와 어플리케이션 검증서버(700)로부터 제공받은 난수값을 이용하여 제2 인증키를 생성한다(S918).
한편, 확인 결과, 모바일 단말(600)에 설치된 IoT기기 제어용 어플리케이션 프로그램에 이상이 없는 경우(S908), 어플리케이션 검증서버(700)에서는 난수값을 생성하고, 난수값을 이용하여 제1 인증키를 생성한다(S920).
이어, 어플리케이션 검증서버(700)는 모바일 단말(600)의 단말정보, 난수값과 제1 인증키를 인증서버(500)로 전송한다(S922). 이때, 이러한 난수값의 생성을 위해 어플리케이션 검증서버(700)에는 난수 생성부(718)가 포함될 수 있으나, 이에 한정되는 것은 아니다.
또한, 이때, 이러한 제1 인증키(수신키)는 모바일 단말(600)이 인증서버(500)에 등록된 정당한 모바일 단말인지 여부를 인증하기 위한 키를 의미할 수 있으며, 이러한 제1 인증키는 예를 들어 모바일 단말(600)의 단말정보와 난수값을 이용하여 생성된 키로 1회성 키가 될 수 있으나, 이에 한정되지 않는다. 또한, 이러한 단말정보는 모바일 단말(600)을 식별하는 물리코드, 위치정보 및 장비식별정보 등이 될 수 있으며, 이러한 물리코드는 모바일 단말(600)의 MAC주소 정보와 USIM 정보를 포함함 정보일 수 있으나 이에 한정되는 것은 아니다. 또한 위치 및 장비식별정보는 데이터 전송시 전송해야할 장비가 어디에 있는 지 및 장비가 맞는 지에 대한 확인을 하는 정보로 예를 들면 설치장소, GPS위치정보, IP주소, 모바일 단말번호(전화번호) 등을 포함한 정보가 될 수 있다.
이어, 인증서버(500)는 위와 같이 생성한 제2 인증키(생성키)와 제1 인증키를 비교 하여 서로 일치하는지 여부를 검사한다(S924).
이때, 제1 인증키와 제2 인증키가 서로 일치하지 않는 경우(S926), 인증서버(500)는 모바일 단말(600)로 인증실패 메시지를 전송하여 인증이 실패했음을 통보한다(S932).
그러나, 제1 인증키와 제2 인증키가 서로 일치하는 경우(S926), 인증서버(500)는 모바일 단말(600)을 정당한 모바일 단말(600)로 인증하고, 인증 결과 정보 및 인증된 모바일 단말(600)의 단말정보와 IoT기기(630)의 정보를 인증 DB(520)에 등록한다(S928).
이어, 인증서버(500)는 모바일 단말(600)로 인증 성공 메시지를 전송하여 인증이 성공했음을 통보한다(S930). 이에 따라, 모바일 단말(600)에서 IoT기기(630)를 원격으로 제어하는 것이 가능하게 된다.
상기한 바와 같이, 본 발명에 따르면, 모바일 단말과 IoT기기간 제3자 보안 인증에 있어서, 제3자 보안 인증서버를 도입하여 모바일 단말의 해킹에 대비한 IoT기기 원격 제어용 어플리케이션 프로그램의 위조/변조체크, 모바일 단말-IoT기기간의 보안인증 패킷 등을 제3자가 점검하여 인증해주는 프로세스를 적용함으로써, 모바일 단말과 IoT기기간 보안 인증과정의 무결성 및 보안성을 강화할 수 있다.
한편 상술한 본 발명의 설명에서는 구체적인 실시 예에 관해 설명하였으나, 여러 가지 변형이 본 발명의 범위에서 벗어나지 않고 실시될 수 있다. 따라서 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구 범위에 의해 정하여져야 한다.
100,300,500 : 인증서버 112,511 : 패킷탈취 방지부
110, 510 : 관리로그DB
114 : 소스코드 변조체크부 116,512 : 아이디/패스워드 관리부
118,516 : 모바일 단말(M/F) 관리부 120,320,520 : 인증 DB
122,514 : 인증부 124 : 인증 APP 관리부
126,517 : IoT기기 관리부 128,519 : 조회 관리부
129,518 : 로그 관리부 130,310,710 : 관리용 단말 DB
200,400 : 모바일 단말(Master/Family) 210,410 : 모바일 단말(Master)
211 : 전용 패킷 관리부 212 : 아이디/패스워드 관리부
213 : 단말기 승인 관리부 214 : 로그인 관리부
215 : 인증관리(APP 버전, PRG)부 216 : 보안키 관리부
217 : IoT기기 운용 관리부 220 : 모바일 단말(Family)
230,430 : IoT기기 231 : 전송패킷 관리부
232 : 아이디/패스워드 관리부 233 : 운영단말 등록부
234 : 로그인 검증부 236 : 인증관리(APP 버전, PRG)부
237 : 보안키 관리부 238, 132 : 난수생성부
340 : 난수 생성기
600 : 모바일 단말(Master/Family) 610 : 모바일 단말(Master)
611 : 전용 패킷 관리부 612 : 아이디/패스워드 관리부
613 : 단말기 승인 관리부 614 : 로그인 관리부
615 : 인증관리(APP 버전, PRG)부 616 : 보안키 관리부
617 : IoT기기 운용 관리부 620 : 모바일 단말(Family)
630 : IoT기기 631 : 전송패킷 관리부
632 : 아이디/패스워드 관리부 633 : 운영단말 등록부
634 : 로그인 검증부 636 : 인증관리(APP 버전, PRG)부
637 : 보안키 관리부 700 : 어플리케이션 검증서버
711 : 패킷 탈취방지부 712 : 아이디/패스워드 관리부
713 : 소스코드변조 체크부 714 : 모바일 단말(M/F)관리부
715 : 로그관리부 716 : 조회관리부
718 : 난수생성부

Claims (16)

  1. 유무선 인터넷 통신망을 통해 데이터 송수신이 가능한 IoT기기와,
    상기 유무선 인터넷 통신망을 통해 상기 IoT기기와 데이터 송수신을 수행하며, 상기 데이터 송수신을 통해 상기 IoT기기의 동작을 원격 제어하는 모바일 단말과,
    상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하며, 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하고, 상기 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT 기기에 대한 원격 제어를 승인하는 인증서버
    를 포함하는 제3자 보안인증 시스템.
  2. 제 1 항에 있어서,
    상기 인증서버는,
    상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 난수값과 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보를 이용하여 제1 인증키를 생성하고, 상기 모바일 단말에서 상기 난수값과 상기 단말정보를 이용하여 생성한 제2 인증키를 상기 IoT기기로부터 수신하여 상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 판단하는 제3자 보안인증 시스템.
  3. 제 1 항에 있어서,
    상기 인증서버는,
    상기 IoT기기의 등록 시, 상기 모바일 단말의 단말정보가 상기 인증서버에 기등록된 모바일 단말의 단말정보와 일치하는지 여부를 검사하고, 상기 단말정보가 서로 일치하는 경우 상기 등록 요청한 상기 모바일 단말에 상기 IoT기기를 등록 하는 제3자 보안인증 시스템.
  4. 제 1 항에 있어서,
    상기 인증서버는,
    상기 등록된 IoT기기의 정보 변경 또는 삭제 시, 상기 IoT기기의 정보 변경 또는 삭제를 요청하는 상기 모바일 단말의 단말정보가 상기 인증서버에 기등록된 모바일 단말의 단말정보와 일치하는지 여부를 검사하고, 상기 단말정보가 서로 일치하는 경우 상기 IoT기기에 대한 정보를 변경하거나 삭제하는 제3자 보안인증 시스템.
  5. 제 4 항에 있어서,
    상기 인증서버는,
    상기 모바일 단말에 설치된 상기 IoT기기의 제어용 어플리케이션의 무결성 검증키를 수신하고, 상기 무결성 검증키를 이용하여 상기 어플리케이션의 프로그램이 변경되었는지 여부를 검사한 후, 상기 어플리케이션의 프로그램이 변경되지 않은 경우 상기 모바일 단말에 상기 IoT기기를 등록하는 제3자 보안인증 시스템.
  6. 제 1 항에 있어서,
    상기 인증서버는,
    상기 모바일 단말을 상기 IoT기기에 대한 제어 권한에 따라 마스터(Master)와 패밀리(Family)로 구분하여 등록하며, 상기 패밀리로 구분된 제1 모바일 단말의 상기 등록 요청에 따라, 상기 IoT기기의 등록 시 상기 마스터로 구분된 제2 모바일 단말의 승인을 얻어 상기 제1 모바일 단말에 상기 IoT기기를 등록하는 제3자 보안인증 시스템.
  7. 제 2 항에 있어서,
    상기 난수값은,
    상기 IoT기기 또는 상기 인증서버에서 1회 생성되어 상기 모바일 단말로 제공되는 제3자 보안인증 시스템.
  8. 제 1 항에 있어서,
    상기 단말정보는,
    상기 모바일 단말의 MAC 주소 정보, USIM 정보, 단말의 위치정보 및 단말의 식별 정보인 제3자 보안인증 시스템.
  9. 제 1 항에 있어서,
    상기 무결성 검증키는,
    상기 어플리케이션의 버전(version) 정보 또는 소스코드의 체크썸(checksum) 정보를 이용하여 생성한 키인 제3자 보안인증 시스템.
  10. 유무선 인터넷통신망을 통해 연결되는 모바일 단말과 IoT기기, 인증서버를 포함하는 제3자 보안인증 시스템에서 제3자 보안인증 방법으로서,
    상기 인증서버에서 상기 IoT기기에 대한 원격 제어를 요청하는 상기 모바일 단말을 등록하는 단계와,
    상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하는 단계와,
    상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하는 단계와,
    상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 단계
    를 포함하는 제3자 보안인증 방법.
  11. 제 10 항에 있어서,
    상기 인증하는 단계는,
    상기 인증서버에서 1회용 난수값과 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보를 이용하여 제1 인증키를 생성하는 단계와,
    상기 모바일 단말에서 상기 난수값과 상기 단말정보를 이용하여 생성한 제2 인증키를 상기 IoT기기로부터 수신하는 단계와,
    상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 인증하는 단계
    를 포함하는 제3자 보안인증 방법.
  12. 유무선 인터넷통신망을 통해 데이터 송수신이 가능한 IoT기기와,
    상기 유무선 인터넷통신망을 통해 상기 IoT기기와 데이터 송수신을 수행하며, 상기 데이터 송수신을 통해 상기 IoT기기의 동작을 원격 제어하는 모바일 단말과,
    상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하고, 상기 등록된 IoT기기와 모바일 단말에 대한 정보를 관리하는 어플리케이션 검증 서버와,
    상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 상기 어플리케이션 검증서버와 연동하여 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하고, 상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 인증서버
    를 포함하는 제3자 보안인증 시스템.
  13. 제 12 항에 있어서,
    상기 인증서버는,
    상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청이 있는 경우, 1회용 난수값과 상기 어플리케이션 검증서버로부터 생성된 제1 인증키를 수신하고, 상기 IoT기기로부터 전송된 상기 모바일 단말의 단말정보와 상기 난수값을 이용하여 제2 인증키를 생성한 후, 상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 판단하는 제3자 보안인증 시스템.
  14. 제 13 항에 있어서,
    상기 난수값은,
    상기 어플리케이션 검증서버에서 생성되어 상기 인증서버와 상기 모바일 단말로 제공되는 제3자 보안인증 시스템.
  15. 유무선 인터넷통신망을 통해 연결되는 모바일 단말, IoT기기, 어플리케이션 검증서버, 인증서버를 포함하는 제3자 보안인증 시스템에서 제3자 보안인증 방법으로서,
    상기 어플리케이션 검증서버에서 상기 IoT기기에 대한 원격 제어를 요청하는 상기 모바일 단말을 등록하는 단계와,
    상기 어플리케이션 검증서버에서 상기 모바일 단말에 상기 원격 제어 대상이 되는 상기 IoT기기를 등록하는 단계와,
    상기 어플리케이션 검증서버에서 상기 모바일 단말로부터 상기 IoT기기에 대한 원격 제어 요청을 수신하는 경우 상기 인증서버로 상기 요청을 전송하는 단계와,
    상기 인증서버에서 상기 어플리케이션 검증서버와 연동하여 상기 모바일 단말이 상기 IoT기기의 원격 제어를 위해 등록된 정당한 모바일 단말인지를 인증하는 단계와,
    상기 인증서버에서 상기 원격 제어 요청한 모바일 단말이 상기 정당한 모바일 단말인 경우 상기 IoT기기에 대한 원격 제어를 승인하는 단계
    를 포함하는 제3자 보안인증 방법.
  16. 제 15 항에 있어서,
    상기 인증하는 단계는,
    상기 인증서버에서 상기 어플리케이션 검증서버로부터 1회용 난수값과 상기 난수값을 이용하여 생성된 제1 인증키를 수신하는 단계와,
    상기 인증서버에서 상기 IoT기기로부터 수신된 상기 모바일 단말의 단말 정보를 수신하여 상기 단말정보와 상기 난수값을 이용하여 제2 인증키를 생성하는 단계와,
    상기 제1 인증키와 상기 제2 인증키를 비교하고, 상기 제1 인증키와 제2 인증키가 일치하는 경우 상기 모바일 단말을 상기 정당한 모바일 단말로 인증하는 단계
    를 포함하는 제3자 보안인증 방법.
KR1020160008339A 2015-04-09 2016-01-22 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법 KR101810150B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020150050077 2015-04-09
KR20150050077 2015-04-09

Publications (2)

Publication Number Publication Date
KR20160121775A true KR20160121775A (ko) 2016-10-20
KR101810150B1 KR101810150B1 (ko) 2018-01-26

Family

ID=57251322

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160008339A KR101810150B1 (ko) 2015-04-09 2016-01-22 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101810150B1 (ko)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170085578A1 (en) * 2015-09-18 2017-03-23 Samsung Electronics Co., Ltd. Server and user terminal
KR20180079682A (ko) * 2017-01-02 2018-07-11 단국대학교 산학협력단 인증서 발급 방법
KR20190064392A (ko) * 2017-11-30 2019-06-10 주식회사 케이티앤씨 네트워크 보안 장비의 관리자 비밀번호 분실에 대한 대응 제어 방법
WO2019117644A1 (ko) * 2017-12-14 2019-06-20 삼성전자 주식회사 등록 세션을 제어하기 위한 전자 장치 및 그의 동작 방법, 서버 및 그의 동작 방법
KR20190095582A (ko) * 2018-01-22 2019-08-16 삼성전자주식회사 다른 전자 장치의 인증을 수행하는 전자 장치와 이의 동작 방법
KR20190130206A (ko) 2018-04-23 2019-11-22 (주)아이씨엔캐스트 분실 보안이 강화된 IoT기기 제3자 보안인증 시스템 및 방법
WO2020050474A1 (ko) * 2018-09-04 2020-03-12 김종현 스마트콘트랙트의 보안 인증 서버
KR20200028880A (ko) * 2018-09-03 2020-03-17 (주)아이씨엔캐스트 블록체인 기반의 모바일 단말 및 IoT 기기 간의 다중 보안 인증 시스템 및 방법
KR20200075085A (ko) * 2018-12-10 2020-06-26 유비벨록스(주) IoT기기 원격제어 시스템
US10938826B2 (en) 2019-05-24 2021-03-02 International Business Machines Corporation Intelligent device security
US11153309B2 (en) 2018-03-13 2021-10-19 At&T Mobility Ii Llc Multifactor authentication for internet-of-things devices
KR20220049497A (ko) * 2020-02-14 2022-04-21 주식회사 대림 세대단말기를 중심으로 하는 스마트홈 보안 강화 시스템

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140045829A (ko) 2012-10-09 2014-04-17 에스케이텔레콤 주식회사 사물 인터넷을 위한 인증 방법과 그를 위한 디바이스 및 인증 장치
KR20150035971A (ko) 2015-03-18 2015-04-07 문종섭 사물인터넷에서 스마트 디바이스 또는 스마트 센서와 네트워크 게이트웨이 사이의 안전한 데이터 전달을 위한 통신 프로토콜

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100610317B1 (ko) * 2004-01-06 2006-08-09 삼성전자주식회사 홈 네트워크를 구성하는 기기들에 대한 인증 장치 및 방법
KR100667333B1 (ko) * 2004-12-16 2007-01-12 삼성전자주식회사 홈 네트워크에서 디바이스 및 사용자 인증 시스템 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140045829A (ko) 2012-10-09 2014-04-17 에스케이텔레콤 주식회사 사물 인터넷을 위한 인증 방법과 그를 위한 디바이스 및 인증 장치
KR20150035971A (ko) 2015-03-18 2015-04-07 문종섭 사물인터넷에서 스마트 디바이스 또는 스마트 센서와 네트워크 게이트웨이 사이의 안전한 데이터 전달을 위한 통신 프로토콜

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
(특허문헌)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170085578A1 (en) * 2015-09-18 2017-03-23 Samsung Electronics Co., Ltd. Server and user terminal
US10250616B2 (en) * 2015-09-18 2019-04-02 Samsung Electronics Co., Ltd. Server and user terminal
KR20180079682A (ko) * 2017-01-02 2018-07-11 단국대학교 산학협력단 인증서 발급 방법
KR20190064392A (ko) * 2017-11-30 2019-06-10 주식회사 케이티앤씨 네트워크 보안 장비의 관리자 비밀번호 분실에 대한 대응 제어 방법
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
KR20190071383A (ko) * 2017-12-14 2019-06-24 삼성전자주식회사 등록 세션을 제어하기 위한 전자 장치 및 그의 동작 방법, 서버 및 그의 동작 방법
WO2019117644A1 (ko) * 2017-12-14 2019-06-20 삼성전자 주식회사 등록 세션을 제어하기 위한 전자 장치 및 그의 동작 방법, 서버 및 그의 동작 방법
KR20190095582A (ko) * 2018-01-22 2019-08-16 삼성전자주식회사 다른 전자 장치의 인증을 수행하는 전자 장치와 이의 동작 방법
US11153309B2 (en) 2018-03-13 2021-10-19 At&T Mobility Ii Llc Multifactor authentication for internet-of-things devices
KR20190130206A (ko) 2018-04-23 2019-11-22 (주)아이씨엔캐스트 분실 보안이 강화된 IoT기기 제3자 보안인증 시스템 및 방법
KR20200028880A (ko) * 2018-09-03 2020-03-17 (주)아이씨엔캐스트 블록체인 기반의 모바일 단말 및 IoT 기기 간의 다중 보안 인증 시스템 및 방법
US11750395B2 (en) 2018-09-03 2023-09-05 Icncast Co., Ltd System and method for blockchain-based multi-factor security authentication between mobile terminal and IoT device
WO2020050474A1 (ko) * 2018-09-04 2020-03-12 김종현 스마트콘트랙트의 보안 인증 서버
KR20200075085A (ko) * 2018-12-10 2020-06-26 유비벨록스(주) IoT기기 원격제어 시스템
US10938826B2 (en) 2019-05-24 2021-03-02 International Business Machines Corporation Intelligent device security
KR20220049497A (ko) * 2020-02-14 2022-04-21 주식회사 대림 세대단말기를 중심으로 하는 스마트홈 보안 강화 시스템

Also Published As

Publication number Publication date
KR101810150B1 (ko) 2018-01-26

Similar Documents

Publication Publication Date Title
KR20160121775A (ko) 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법
US9032493B2 (en) Connecting mobile devices, internet-connected vehicles, and cloud services
JP5052349B2 (ja) モバイル端末内の設定パラメータの更新方法
CN108667780B (zh) 一种身份认证的方法、系统及服务器和终端
JP4174535B2 (ja) 無線端末を認証する認証システム及び認証方法
JP7091187B2 (ja) 固有のマスターキーを有するデジタルドアロック及びその操作方法
US9025769B2 (en) Method of registering smart phone when accessing security authentication device and method of granting access permission to registered smart phone
US11750395B2 (en) System and method for blockchain-based multi-factor security authentication between mobile terminal and IoT device
CN103401880B (zh) 一种工业控制网络自动登录的系统及方法
US11373762B2 (en) Information communication device, authentication program for information communication device, and authentication method
KR102255468B1 (ko) 2단계 인증을 이용한 사물 인터넷 기기의 암호 키 발급 장치 및 방법
KR20190130206A (ko) 분실 보안이 강화된 IoT기기 제3자 보안인증 시스템 및 방법
US11245523B2 (en) Method for implementing client side credential control to authorize access to a protected device
CN111918263B (zh) 蓝牙连接方法、装置及物联网设备
KR101879843B1 (ko) Ip 주소와 sms를 이용한 인증 방법 및 시스템
WO2017076257A1 (zh) 一种app认证的系统和方法
CN112272089A (zh) 云主机登录方法、装置、设备及计算机可读存储介质
CN114157438A (zh) 网络设备管理方法、装置及计算机可读存储介质
KR20180135232A (ko) 전자장치, 전자장치의 제어방법 및 시스템
KR20150081387A (ko) 사용자 인증 시스템 및 방법
JP2016058035A (ja) 機器、管理モジュール、プログラムおよび制御方法
KR101757692B1 (ko) 토큰 서버 인증을 이용한 홈네트워크 기기의 원격 제어 시스템 및 방법
KR102306466B1 (ko) 복제 불가능한 인증 및 위치 측위 시스템 및 그 동작 방법
CN109617898B (zh) 远程鉴权方法及其装置、设备和存储介质
KR20220002011A (ko) 모바일 단말과 IoT기기간 제3자 보안인증 시스템 및 방법

Legal Events

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