KR101801323B1 - 모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템 - Google Patents

모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템 Download PDF

Info

Publication number
KR101801323B1
KR101801323B1 KR1020170044328A KR20170044328A KR101801323B1 KR 101801323 B1 KR101801323 B1 KR 101801323B1 KR 1020170044328 A KR1020170044328 A KR 1020170044328A KR 20170044328 A KR20170044328 A KR 20170044328A KR 101801323 B1 KR101801323 B1 KR 101801323B1
Authority
KR
South Korea
Prior art keywords
authentication
information
user
server
otp
Prior art date
Application number
KR1020170044328A
Other languages
English (en)
Other versions
KR20170114990A (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 KR20170114990A publication Critical patent/KR20170114990A/ko
Application granted granted Critical
Publication of KR101801323B1 publication Critical patent/KR101801323B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/308Payment architectures, schemes or protocols characterised by the use of specific devices or networks using the Internet of Things
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3221Access to banking information through M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3223Realising banking transactions through M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3226Use of secure elements separate from M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • G06Q20/4097Device specific authentication in transaction processing using mutual authentication between devices and transaction partners
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/008
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Finance (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

통신 모듈이 탑재되는 IoT(Internet of Things) 기기에 설치되고, 해당 IoT 기기의 인증을 위한 제1 기기 인증 정보를 생성하는 기기 인증 에이전트; 상기 IoT 기기와 유선 또는 무선 통신을 통해 연결되고, 상기 IoT 기기의 인증을 위한 제2 기기 인증 정보를 생성하는 인증 서버; 및 사용자의 모바일 기기에 설치되고, 상기 IoT 기기 및 상기 인증 서버와 무선 통신을 통해 연결되며, 상기 IoT 기기로부터 전송된 상기 제1 기기 인증 정보와 상기 인증 서버로부터 전송된 상기 제2 기기 인증 정보 간의 일치 여부에 따라 상기 IoT 기기 또는 상기 IoT 기기로부터 수신된 것으로 판별되는 메시지의 진위 여부를 검증하는 모바일 에이전트를 포함하는 인증 시스템이 제공된다.

Description

모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템{METHOD AND SYSTEM FOR AUTHENTICATIING INTERNET OF THINGS DEVICE USING MOBILE DEVICE}
본 발명은 모바일 기기를 이용하여 IoT(Internet of Things) 기기를 인증하는 방법 및 시스템에 관한 것이다.
최근, 상점에서 고객이 결제를 수행하는데 있어서 카드를 사용하지 않고 고객의 스마트폰과 상점 내 위치한 IoT 기기와 클라우드 서비스를 이용하여 사용자의 스마트폰에서 안전하고 편리하게 결제 서비스가 이루어 질 수 있도록 하는 기술이 각광을 받고 있다.
기존의 카드 거래는 상점(카드 가맹점)에서 고객이 카드를 제시하면 카드리더기와 고객의 카드를 이용하여 거래데이터를 생성하고 그 거래데이터를 카드 발급사에 전송한 후, 카드정보나 거래 내용에 이상이 없을 시 거래를 승인해주는 방식으로 실행되었다. 이는 사용자가 올바른 카드 소지자라는 전제 하에서, 등록된 상점 카드리더기를 통해서 고객의 IC카드로 암호화된 카드거래 정보가 생성되었고, 안전한 폐쇄망을 통해서 카드사로 정보가 중계되는 폐쇄적인 거래승인 구조이다.
또한 스마트폰 등과 같은 모바일 기기와 NFC(Near-Field Communication)와 같은 무선데이터 통신기술이 EMV가 제정한 EMV network Tokenization 스팩과 결합되면서 애플페이나 삼성페이와 같은 모바일 사업자가 모바일에서 임시로 발급된 카드번호를 실제 카드번호로 전환시켜 신용카드 없이도 모바일 기기를 통해서 결제를 수행할 수 있게 되었다.
그러나 위와 같은 카드 기반의 거래는 상점(가맹점)에 카드거래 수수료를 유발시키기 때문에 돈을 주어야 하는 사람과 받는 사람간에 낮은 비용으로 안전하게 결제를 대체할 수 있도록 하는 다양한 서비스들이 개발되고 있다.
그럼에도 불구하고 종래의 대체 결제 기술들은 모바일 운영체제와 무관하게 모든 고객 스마트폰에서 사용될 수 있도록 스마트폰 화면을 기반으로 하는 QR 코드나 바코드 기반의 결제기술로서, 사용자가 거래를 위하여 바코드를 화면에 생성하면 상점의 POS(Point of Sales) 기기에서 해당 바코드 값을 읽게 하여 거래를 체결하는 방식이 주를 이루고 있다.
하지만 바코드 기반 결제는 바코드 발급에 따른 고객과 상점 간의 번잡한 코드값 인식 과정이 필요하고, 모바일 기기에서 발급된 바코드가 해커에 의해서 화면을 캡쳐당하는 경우 그 바코드가 발급 유효 시간 내에서 다른 곳에서 도용 될 수 있는 보안상의 허점을 갖고 있다.
따라서 상점이 고객과의 거래에서 고객의 모바일 기기를 이용하여 편리하면서도 보안성을 갖춘 지불 서비스가 수행될 수 있도록 하는 결제 기술이 필요하다. 또한 최근에 채용되고 있는 기술로서 IoT 기기를 활용하는 거래 및 결제 시스템에 있어서, 사용자의 진위는 물론 IoT 기기의 진위를 인증할 수 있어, 보다 안전한 모바일 거래 및 결제가 가능하도록 하는 신규의 방법이 요구된다.
본 발명은 상점과 고객이 카드를 사용하지 않고 상품 거래 결제를 수행하는데 있어서 고객의 모바일 기기와 상점 내 위치한 IoT 기기 및 클라우드 서비스를 이용하여 안전하고 편리하게 결제 서비스를 진행할 수 있는 방법과, 안전한 결제를 위한 전제 조건으로서 결제 주체(고객)의 진위, 결제 객체(상점 내 결제 기기로서의 IoT 기기)의 진위를 모두 검증할 수 있는 인증 방법 및 시스템을 제공하기 위한 것이다.
본 발명은 모바일 기기 및 인증 서버를 이용하여 IoT 기기의 진위 여부를 판별하기 위해 다양한 응용 분야에서 범용적으로 적용할 수 있는 인증 방법 및 시스템을 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 통신 모듈이 탑재되는 IoT(Internet of Things) 기기에 설치되고, 해당 IoT 기기의 인증을 위한 제1 기기 인증 정보를 생성하는 기기 인증 에이전트; 상기 IoT 기기와 유선 또는 무선 통신을 통해 연결되고, 상기 IoT 기기의 인증을 위한 제2 기기 인증 정보를 생성하는 인증 서버; 및 사용자의 모바일 기기에 설치되고, 상기 IoT 기기 및 상기 인증 서버와 무선 통신을 통해 연결되며, 상기 IoT 기기로부터 전송된 상기 제1 기기 인증 정보와 상기 인증 서버로부터 전송된 상기 제2 기기 인증 정보 간의 일치 여부에 따라 상기 IoT 기기 또는 상기 IoT 기기로부터 수신된 것으로 판별되는 메시지의 진위 여부를 검증하는 모바일 에이전트를 포함하는 인증 시스템이 제공된다.
일 실시예에서, 상기 인증 서버는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보를 상기 기기 인증 에이전트로 전송하며, 상기 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성하고,
상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신한 시드 정보와 상기 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성할 수 있다.
일 실시예에서, 상기 기기 인증 에이전트는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보를 상기 인증 서버로 전송하며, 상기 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성하고,
상기 인증 서버는, 상기 기기 인증 에이전트로부터 수신한 시드 정보와 상기 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성할 수 있다.
일 실시예에서, 상기 모바일 에이전트는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 생성된 시드 정보를 상기 인증 서버로 전송하며,
상기 인증 서버는, 상기 모바일 에이전트로부터 수신한 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성하고, 상기 수신한 시드 정보를 상기 기기 인증 에이전트로 전송하며,
상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신한 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성할 수 있다.
일 실시예에서, 상기 통신 모듈은 비콘 통신 모듈이고,
상기 기기 인증 에이전트는, 해당 IoT 기기의 식별에 사용 가능한 식별 정보 및 상기 제1 기기 인증 정보를 비콘 메시지에 삽입하여 무선 브로드캐스팅(wireless broadcasting)할 수 있다.
여기서, 상기 제1 기기 인증 정보는, 상기 비콘 메시지에서 비콘 고유값인 UUID가 삽입되는 데이터 필드 영역에 뒤따르는 메이저(Major) 필드 및 마이너(Minor) 필드 중 적어도 하나에 삽입될 수 있다.
또한 여기서, 상기 제1 기기 인증 정보가 상기 삽입될 데이터 필드 영역의 사이즈를 초과하는 경우, 상기 제1 기기 인증 정보는 해당 데이터 필드 영역의 사이즈를 초과하지 않는 값으로 변환 처리되어 상기 비콘 메시지에 삽입될 수 있다.
일 실시예에서, 상기 통신 모듈은 NFC(Near-Field Communication) 통신 모듈이고,
상기 기기 인증 에이전트는, NFC 핸드쉐이크(Handshake)를 통해 상기 모바일 에이전트와의 통신 세션이 활성화됨에 따라, 상기 제1 기기 인증 정보를 상기 모바일 에이전트로 전송할 수 있다.
일 실시예에서, 상기 제1 기기 인증 정보 및 상기 제2 기기 인증 정보가, 연산 조건으로서 시간을 이용하는 타임 OTP(One Time Password) 방식으로 생성되는 경우,
상기 인증 서버는, 현 시점에 생성된 당기의 제2 기기 인증 정보와 그 이전에 생성했던 전기의 제2 기기 인증 정보를 모두 상기 모바일 에이전트로 전송하고,
상기 모바일 에이전트는, 상기 제1 기기 인증 정보가 상기 당기 및 전기의 제2 기기 인증 정보 중 어느 하나와 일치하는지 여부를 판별하여 상기 진위 여부를 검증할 수 있다.
일 실시예에서, 상기 기기 인증 에이전트는, 상기 제1 기기 인증 정보를 상기 인증 서버로 전송하고,
상기 인증 서버는, 상기 기기 인증 에이전트로부터 수신된 제1 기기 인증 정보와 자체 생성한 제2 기기 인증 정보 간의 일치 여부에 따라, 상기 진위 여부를 재차 검증할 수 있다.
일 실시예에서, 상기 모바일 에이전트는, 사용자 인증을 위한 제1 사용자 인증 정보를 사전 지정된 알고리즘에 따라 생성하고, 해당 사용자의 식별에 활용 가능한 사용자 식별 정보와 상기 제1 사용자 인증 정보를 상기 인증 서버로 전송하고,
상기 인증 서버는, 상기 모바일 에이전트로부터 수신한 사용자 식별 정보에 상응하여 상기 사전 지정된 알고리즘에 따라 제2 사용자 인증 정보를 자체 생성하고, 상기 수신된 제1 사용자 인증 정보와 상기 자체 생성한 제2 사용자 인증 정보 간의 일치 여부에 따라 해당 사용자의 진위 여부를 검증하며, 해당 사용자의 진위 여부에 관한 검증 결과를 상기 기기 인증 에이전트로 전송할 수 있다.
일 실시예에서, 상기 인증 서버는, 상기 사용자 인증을 위한 사용자 인증 정보와 사전 지정된 알고리즘을 이용하여 제1 서버 검증 정보를 생성하고, 상기 제1 서버 검증 정보 및 상기 사용자 인증 정보를 상기 기기 인증 에이전트로 전송하며,
상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신된 사용자 인증 정보와 상기 사전 지정된 알고리즘을 이용하여 제2 서버 검증 정보를 생성하고, 상기 인증 서버로부터 수신된 제1 서버 검증 정보와 상기 제2 서버 검증 정보 간의 일치 여부에 따라 상기 인증 서버의 진위 여부에 관한 검증을 수행할 수 있다.
본 발명의 다른 측면에 따르면, 사용자의 모바일 기기에 설치되고, 사전 지정된 인증 절차를 수행하는 인증 애플케이션 프로그램이 구동됨에 따라, 기기 간 상호 인증에 사용될 인증 정보 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보 및 사전 지정된 알고리즘을 이용하여 제1 인증 정보를 생성하는 모바일 에이전트; 통신 모듈이 탑재되는 IoT(Internet of Things) 기기에 설치되고, 상기 모바일 에이전트와 무선 통신을 통해 연결되며, 상기 모바일 에이전트로부터 상기 시드 정보를 수신하고, 수신된 시드 정보 및 상기 사전 지정된 알고리즘을 이용하여 제2 인증 정보를 생성하는 기기 인증 에이전트; 및 상기 모바일 에이전트와 무선 통신을 통해 연결되고, 상기 IoT 기기와 유선 또는 무선 통신을 통해 연결되며, 상기 모바일 에이전트로부터 상기 시드 정보 및 상기 제1 인증 정보를 수신한 경우 상기 수신된 시드 정보 및 상기 사전 지정된 알고리즘을 이용하여 제3 인증 정보를 생성하고, 상기 기기 인증 에이전트로부터 상기 제2 인증 정보를 수신하며, 상기 수신된 제1 인증 정보와 상기 제3 인증 정보 간의 일치 여부 및 상기 수신된 제2 인증 정보와 상기 제3 인증 정보 간의 일치 여부를 중복 검증하는 인증 서버를 포함하는 인증 시스템이 제공된다.
본 발명의 실시예에 의하면, 상점과 고객이 카드를 사용하지 않고 결제를 수행하는데 있어서, 고객의 모바일 기기와 상점 내 위치한 IoT 기기와 클라우드 서비스를 이용하여 NFC 또는 Beacon을 지원하는 모든 모바일 기기에서 안전하고 편리한 결제 서비스가 이루어 질 수 있는 효과가 있다. 또한, 본 발명의 실시예에 의하면, 안전한 결제를 위한 전제 조건으로서 결제 주체(고객)의 진위, 결제 객체(상점 내 결제 기기로서의 IoT 기기)의 진위를 모두 검증할 수 있는 인증 방법 및 시스템을 제공할 수 있다.
본 발명의 실시예에 의하면, 모바일 기기 및 인증 서버를 이용하여 IoT 기기의 진위 여부를 판별하기 위해 다양한 응용 분야에서 범용적으로 적용할 수 있는 인증 방법 및 시스템을 제공할 수 있다.
도 1은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제1 실시예의 도면.
도 2는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제2 실시예의 도면.
도 3은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제3 실시예의 도면.
도 4는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제4 실시예의 도면.
도 5는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제5 실시예의 도면.
도 6은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제6 실시예의 도면.
도 7은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제1 실시예의 도면.
도 8은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제2 실시예의 도면.
도 9는 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제3 실시예의 도면.
도 10은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제4 실시예의 도면.
도 11은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제5 실시예의 도면.
도 12는 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제6 실시예의 도면.
도 13은 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제1 실시예의 도면.
도 14은 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제2 실시예의 도면.
도 15는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제3 실시예의 도면.
도 16은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제7 실시예의 도면.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하나 이상의 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있음을 의미한다. 또한 통상 모바일 앱 개발자들이 표현하는 Push ID는 Push Token을 의미하며, 푸쉬 메시지 서비스는 구글이나 애플사 등과 같은 모바일 운영체제에서 앱 별로 제공하는 메시지 서비스를 의미한다.
본 명세서에서는 모바일 결제 또는 모바일 상거래 케이스를 중심으로 본 발명의 각 실시예를 설명하지만, 이하 각 도면을 통해 설명할 인증 방법 및 시스템은 모바일 기기 및 인증 서버를 이용하여 각종 IoT 기기의 진위 여부를 판별하기 위해 다양한 응용 분야에서 범용적으로 적용할 수 있는 것임을 먼저 명확히 한다.
다만, 본 발명이 모바일 결제 또는 상거래 케이스에 적용되는 경우를 가정한다면, 본 명세서 및 각 도면에서, 'IoT 기기(100)'는 상점 내에 설치되며, 고객의 모바일 기기(예를 들어, 스마트폰)와의 통신을 통해서 모바일 결제 또는 거래와 관련된 다양한 동작(operation)(예를 들어, 거래 승인 요청 등)을 수행하는 디바이스일 수 있다. 여기서, IoT 기기(100)는 상점 내 POS(Point of Sales) 단말기와 통신 연동되는 별도의 독립적 기기일 수도 있고, POS 단말기를 대체하거나 POS 단말기와 통합화된 기기로 구현될 수도 있다. 또한 여기서, IoT 기기(100)는 비콘(Beacon) 기능 또는 NFC(Near-Field Communication) 기능이 구현될 수 있도록 하는 하드웨어 또는/및 소프트웨어가 설치될 수 있다. 위와 같은 관점에서, 본 발명이 모바일 결제 또는 상거래 케이스에 적용되는 경우를 가정한다면, 본 명세서 및 각 도면에서 '사용자 앱(200)'은 고객 소지의 스마트폰 등과 같은 모바일 기기에 설치되어, 후술할 일련의 동작들을 수행하는 애플리케이션 프로그램(즉, 본 발명에서는 이를 모바일 에이전트라 명명함)을 지시할 수 있다. 또한, 본 명세서에서는 설명의 편의상 IoT 기기(100) 자체가 각 도면에서의 역할을 수행하는 것으로 설명하겠지만, 실제로는 해당 역할을 수행하는 소프트웨어 프로그램 또는 하드웨어 모듈(본 발명에서는 이를 기기 인증 에이전트라 명명함)이 IoT 기기에 설치 또는 탑재되어, 본 발명의 각 실시예에 따른 역할을 수행할 수도 있음은 물론이다.
또한, 본 명세서에서 IoT 기기의 인증이란, IoT 기기 자체의 진위 여부에 관한 인증은 물론, 해당 IoT 기기로부터 수신된 것으로 판별되는 메시지가 해커 등에 의해서 기기 ID 등이 도용됨으로써 위변조된 메시지인지 여부를 검증하는 경우까지를 포괄하는 개념임을 먼저 명확히 해둔다.
또한 이하 설명할 도 1 ~ 도 15의 흐름도에서의 각 단계에 관한 식별번호(즉, S100, S102, S104 등)는 각 단계를 구분 설명하기 위한 것일 뿐, 절차적 순서를 정의한 것은 아님을 명확히 해둔다. 논리적으로 어느 한 단계가 실행된 이후에야 다른 단계가 실행될 수 있는 경우가 아닌 이상, 각 단계는 그 식별번호의 선후와 상관없이 병렬적으로 또는 동시에 실행될 수도 있음은 물론이다. 경우에 따라서는 그 식별번호의 선후와 다른 순서로 각 단계가 실행될 수도 있음도 자명하다. 본 발명의 핵심적 기술 특징이 충분히 반영될 수 있는 한도에서, 각 단계의 순서 또한 다양한 변형이 가능할 것이기 때문이다. 다만, 이하에서는 설명의 집중 및 편의 상, 도면에 도시된 순서에 따라 각 단계를 설명하기로 한다.
이하, 첨부된 도면들을 참조하여 본 발명의 각각의 실시예들을 상세히 설명한다.
도 1은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제1 실시예의 도면이다.
도 1을 참조하면, 상점 내에 위치하는 IoT 기기(100), 고객의 모바일 기기에 설치되는 사용자 앱(200), 인증 서버(300)를 포함하는 시스템이 개시된다. 이때, IoT 기기(100)와 사용자 앱(200) 간, 사용자 앱(200)과 인증 서버(300) 간은 무선 통신을 통해서 연결되고, IoT 기기(100)와 인증 서버(300) 간은 유선 또는 무선 통신을 통해서 연결될 수 있다. 이때, IoT 기기(100)는 비콘 메시지 송출 기능을 갖는 것으로 가정한다(도 2 ~ 도 6도 동일함).
이하, 도 1의 인증 흐름도를 설명한다. 도 1은 모바일 결제를 위한 전제로서 상점 내 위치하는 IoT 기기를 인증하는 과정을 나타낸다.
인증 서버(300)는 IoT 기기의 인증을 위한 시드(Seed) 정보로서 기기 인증 OTP Seed를 생성하고[도 1의 S100 참조], 생성된 Seed를 IoT 기기(100)로 전송하면서 IoT 기기(100)에게 기기 인증 OTP를 생성할 것을 요청한다[도 1의 S102 참조]. 또한, 인증 서버(300)는 생성된 Seed를 이용하여 기기 인증 OTP를 자체 생성한다[도 1의 S104 참조]. 위와 같은 기기 인증 OTP 생성 요청에 따라, IoT 기기(100)는 수신한 Seed에 기초하여 기기 인증 OTP를 생성한다[도 1의 S106 참조].
이때, 인증 서버(300)와 IoT 기기(100)는 사전에 공통된 기기 인증 OTP의 생성 조건, 생성 방식 또는 알고리즘을 공유할 수 있다. 일반적으로 OTP 생성 방식에는 타임 OTP 방식과 챌린지 앤드 리스폰스(Challenge & Response) 방식이 존재한다. 여기서, 타임 OTP 방식은 연산 조건으로서 생성 시간을 이용하여 OTP를 생성하는 방식이다. 이에 의할 때, OTP는 결정된 특정 OTP 생성키에 연산 조건인 생성 시간을 곱한 값을 특정 해시 함수에 따라 암호화한 값으로 생성될 수 있다. 그리고 챌린지 앤드 리스폰스 방식은 연산 조건으로서 시도 횟수를 이용하여 OTP를 생성하는 방식이다. 이에 의할 때, OTP는 결정된 특정 OTP 생성키에 연산 조건인 시도 횟수를 곱한 값을 특정 해시 함수(hash function)에 따라 암호화한 값으로 생성될 수 있다. 따라서, 타임 OTP 방식에 의할 때, 해당 OTP 값의 유효시간(예를 들어, 60초)이 경과할 때마다 새로운 OTP 값이 생성되게 된다. 반면, 챌린지 앤드 리스폰스 방식에 의할 때, 시도 횟수가 동일하다면 시간과는 무관하게 동일한 OTP 값이 유지되게 될 것이다.
또한 이때, 인증 서버(300)와 IoT 기기(100)는 OTP 생성을 위한 키 값 중 일부를 상호 간 미리 공유할 수 있다. 예를 들어, 기기 인증 OTP를 생성할 때, 해당 IoT 기기의 ID(즉, IoT ID) 혹은 IoT 기기의 키(key) 값 등을 상호 간 미리 공유해둘 수 있다. 따라서, 인증 서버(300)는 서로 공유해둔 키 값을 제외한 키 값(예를 들어, 가변값인 난수 등) 또는/및 연산 조건(예를 들어, 챌린지 앤드 리스폰스 방식이 이용되는 경우에는 시도 값(챌린지 값))을 Seed로 IoT 기기(100)로 전송할 수 있다.
상술한 바와 같은 이유로, 도 1의 S104 및 도 1의 S106에서 생성되는 기기 인증 OTP는 서로 동일한 값이 될 것이다.
이에 따라, IoT 기기(100)는 비콘 ID와 도 1의 S106에서 생성한 기기 인증 OTP를 비콘 메시지에 실어 외부로 무선 송출(브로드캐스팅)한다[도 1의 S110 참조]. 이때, 비콘 ID는 비콘 신호를 송출하는 IoT 기기를 식별하기 위한 정보이며, 기기 인증 OTP는 해당 IoT 기기의 진위를 판별하는데 사용하기 위한 정보이다.
통상적으로 비콘은 작동 방식에 따라서, 비콘의 UUID 값과 일치하는 UUID 값이 비콘 메시지에 실린 경우에만 해당 UUID의 비콘의 메이저(Major) 필드와 마이너(Minor) 필드 값을 읽어 들일 수 있도록 작동되거나(iOS의 경우), 비콘 주파수로 들어오는 모든 비콘 UUID 중 자신의 UUID만 필터하여 사용하는 방식으로 작동된다(안드로이드 OS의 경우). 또한 통상적으로 비콘은 해당 비콘에 따라 제공하는 서비스를 식별하기 위한 고유의 UUID 값 하나 이상을 선택하여 서비스 고유값으로 사용하고, 메이저/마이너 필드를 건물명 또는 지정 위치로 사용해왔다. 그러나 이렇게 사용하는 경우, 비콘 스캐너로 비콘값을 읽어들이고, 현장에 있는 것처럼 동일 비콘값을 발생시키는 비콘을 생성하여 이를 모바일 앱을 통해서 읽어들이면, 해당 비콘 위치에 방문하지 않은 사용자라 하더라도 해당 위치에 방문한 것처럼 조작할 수 있는 문제점이 있다. 왜냐하면, 비콘은 공개된 주파수를 이용하기 때문에 일반적인 모바일 기기에서 이를 스캔하면 값을 불러들일 수 있기 때문이다. 따라서 비콘을 금융거래나 방문 위치 검증 또는 방문한 장비(차량, 로봇 등) 확인과 같이 좀 더 정교한 영역에 사용하기 위해서는 비콘 주파수가 2차 제공자에 의해서 조작되지 않았음을 입증할 수 있어야 한다.
이러한 문제를 해결하기 위하여, 본 발명의 실시예에서는, 동일 서비스의 비콘 UUID 값을 하나 또는 20개 이하로 사용하도록 권장되는 경우에 있어서, UUID를 서비스 고유 식별자로 사용되되, 메이저 필드를 장비 식별자(즉, Beacon ID), 마이너 필드를 인증값(즉, 기기 인증 OTP)으로 구성하여 사용할 수 있다.
이때, 비콘 메시지는 비콘 방식(예를 들어, iBeacon, Eddystone 등) 마다 사용 가능한 데이터필드의 길이가 각기 다르지만, 일반적으로는 NFC와는 달리 전달할 수 있는 정보가 제한적이므로, 기기 인증값을 비콘 메시지에 삽입하는 방식으로는 아래와 같은 방식이 이용될 수 있다. 아래의 설명에서는 비콘 메시지 상에 메이저 필드 2 Byte와 마이너 필드 2 Byte로 구성되는 경우를 가정하여 설명하기로 한다.
시스템 구성에 따라서 하나의 서비스에 장비가 1대라면 하나의 UUID 뒤의 메이저(Major) 및 마이너(Minor)의 4 Byte 전체를 기기 인증값으로 사용할 수도 있을 것이지만, 동일 서비스에 여러 장비가 인증되어야 한다면 하나의 서비스 UUID 뒤에 메이저 필드 2 Byte를 장비 식별값으로 사용하고 마이너 필드 2 Byte를 기기 인증값으로 사용할 수 있다.
이 경우, 4 Byte 전체를 핵사 스트링(Hexa string)으로 구성하면 65,536으로 기기 인증값을 표현할 수 도 있고, 마이너 필드의 2 Byte만을 기기 인증값 삽입에 이용하는 경우라면 그 2 Byte를 Bit로 표현하였을 때의 2의 16승인 65,536으로 기기 인증값을 표현할 수 있다. 또한 경우에 따라서, 생성된 기기 인증값이 65,536을 초과하는 경우에는 기기 인증값이 65,536를 초과하지 않는 값으로 변환하거나, 또는 기기 인증값을 생성할 때 65,536 이하의 인증값으로 생성되도록 처리할 수도 있다. 이때, 서비스 구성에 따라 사용되는 비콘이 65,000개가 넘는 경우 최대 20개까지 UUID 값을 추가로 설정하여 비콘의 갯수를 늘려갈 수 있음도 물론이다.
도 1의 S110에서 송출되는 비콘 신호는 저전력 구동되어 특정 위치 범위 내에서만 타 기기에 의해 유효하게 검출되도록 신호 세기가 조절될 수도 있다. 이하, 도 1의 S110에서 송출되는 비콘 신호는 해당 IoT 기기가 설치된 상점 내에서만 유효하게 검출되도록 신호 세기가 조절되는 것으로 가정하기로 한다.
이에 따라, 해당 상점 내로 진입한 사용자(고객)이 자신이 소지한 모바일 기기에 설치된 사용자 앱(200)을 구동하게 되면[도 1의 S112 참조], IoT 기기(100)가 해당 시점에 송출한 비콘 신호를 수신할 수 있다[도 1의 S114 참조]. 도 1에서는 고객이 직접 앱을 구동하는 경우를 예시하였지만, 소정 위치 범위 내에 진입하여 비콘 신호를 수신함에 따라 앱이 자동으로 구동되도록 구현될 수도 있음은 물론이다.
IoT 기기(100)가 송출한 비콘 신호가 수신되면, 사용자 앱(200)은 해당 IoT 기기의 진위를 판별하기 위한 용도로서 인증 서버(300)로 기기 인증 OTP를 전송해줄 것을 요청한다[도 1의 S116 참조]. 이에 따라 인증 서버(300)는 앞선 자체 생성해둔 기기 인증 OTP를 사용자 앱(200)으로 전송할 수 있다[도 1의 S118 참조].
이때, 앞서 생성해둔 기기 인증 OTP가 타임 OTP 방식으로 생성된 값인 경우라면, 도 1의 S110에 따라 사용자 앱(200)에서 수신한 기기 인증 OTP 값과 도 1의 S118에 따라 사용자 앱(200)에서 수신한 기기 인증 OTP 값이 상이할 수 있다. 도 1의 S110에 따른 사용자 앱(200)에서의 기기 인증 OTP 값의 수신 시점과 도 1의 S118에 따른 사용자 앱(200)에서의 기기 인증 OTP 값의 수신 시점이 상이해지는 이유로, 경우에 따라 유효시간을 달리하는 전기의 OTP 값과 당기의 OTP 값이 수신될 수도 있기 때문이다. 따라서, 위와 같은 경우를 고려하여, 인증 서버(300)는 도 1의 S118에서 이전 시점에 생성해둔 기기 인증 OTP(즉, 전기 OTP)와 현재 생성된 기기 인증 OTP(즉, 당기 OTP)를 모두 사용자 앱(200)으로 전송해줄 수도 있다.
이에 따라, 사용자 앱(200)은 도 1의 S110을 통해 IoT 기기(100)로부터 수신한 비콘 메시지 내에 실린 기기 인증 OTP 값과 도 1의 S118을 통해 인증 서버(300)로부터 수신한 기기 인증 OTP 값 간의 일치 여부를 확인함으로써, 이를 통해 비콘 메시지를 송출한 IoT 기기(100)가 상점 내의 거래를 수행하는 진정한 기기인지 여부(즉, IoT 기기의 진위 여부 또는 위변조 여부)를 검증할 수 있다[도 1의 S120 참조].
도 2는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제2 실시예의 도면이다. 이하, 도 2의 인증 흐름도를 설명한다. 도 2 또한 모바일 결제를 위한 전제로서 상점 내 위치하는 IoT 기기를 인증하는 과정을 나타낸다. 도 2의 설명 과정에서 도 1에서와 동일한 개념의 단계들인 경우에는 앞선 설명에서와 중복되는 설명은 생략하기로 한다.
앞선 도 1에서는 기기 인증 OTP의 시드(Seed) 정보를 인증 서버(300)에서 생성하여 IoT 기기(100)로 전달하는 방식이었다면, 도 2에서는 IoT 기기(100)의 진위 여부를 판별하기 위한 기기 인증 OTP의 시드 정보를 IoT 기기(100)에서 자체 생성하는 방식에 의한다는 데에 핵심적 차이가 있다.
즉, IoT 기기(100)는 최초 기기 인증 OTP를 생성하기 위한 Seed를 생성하고[도 2의 S200 참조], 생성한 Seed를 인증 서버(300)로 전송함과 아울러 기기 인증 OTP를 생성할 것을 요청한다[도 2의 S202 참조]. 이때, IoT 기기(100)는 생성한 Seed를 이용하여 기기 인증 OTP를 자체 생성하고[도 2의 S204 참조], 인증 서버(300) 또한 수신한 Seed를 이용하여 기기 인증 OTP를 생성한다[도 2의 S206 참조].
이에 따라, IoT 기기(100)는 비콘 ID와 도 2의 S204에서 생성한 기기 인증 OTP를 비콘 메시지에 실어 외부로 무선 송출(브로드캐스팅)한다[도 2의 S210 참조]. 이때, 비콘 ID는 비콘 신호를 송출하는 IoT 기기를 식별하기 위한 정보이며, 기기 인증 OTP는 해당 IoT 기기의 진위를 판별하는데 사용하기 위한 정보임은 앞서도 설명한 바이다. 또한, 기기 인증 OTP를 비콘 메시지의 데이터필드 내에 삽입하는 방식도 앞서 설명한 바와 동일할 수 있다. 또한, 도 2의 S210에서 송출되는 비콘 신호는 해당 IoT 기기가 설치된 상점 내에서만 유효하게 검출되도록 신호 세기가 조절되는 것으로 가정함도 동일하다.
이에 따라, 해당 상점 내로 진입한 사용자(고객)이 자신이 소지한 모바일 기기에 설치된 사용자 앱(200)을 구동하게 되면[도 2의 S212 참조], IoT 기기(100)가 해당 시점에 송출한 비콘 신호를 수신할 수 있다[도 2의 S214 참조].
IoT 기기(100)가 송출한 비콘 신호가 수신되면, 사용자 앱(200)은 해당 IoT 기기의 진위를 판별하기 위한 용도로서 인증 서버(300)로 기기 인증 OTP를 전송해줄 것을 요청한다[도 2의 S216 참조]. 이에 따라 인증 서버(300)는 앞선 자체 생성해둔 기기 인증 OTP를 사용자 앱(200)으로 전송할 수 있다[도 2의 S218 참조]. 앞서도 설명한 바이지만, 이때, 기기 인증 OTP가 타임 OTP 방식으로 생성된 값이라면, 인증 서버(300)는 도 2의 S218에서 이전 시점에 생성해둔 기기 인증 OTP(즉, 전기 OTP)와 현재 생성된 기기 인증 OTP(즉, 당기 OTP)를 모두 사용자 앱(200)으로 전송해줄 수 있다.
이에 따라, 사용자 앱(200)은 도 2의 S210을 통해 IoT 기기(100)로부터 수신한 비콘 메시지 내에 실린 기기 인증 OTP 값과 도 2의 S218을 통해 인증 서버(300)로부터 수신한 기기 인증 OTP 값 간의 일치 여부를 확인함으로써, 이를 통해 비콘 메시지를 송출한 IoT 기기(100)의 진위 여부 또는 위변조 여부를 검증할 수 있다[도 2의 S220 참조].
도 3은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제3 실시예의 도면이다. 이하, 도 3의 인증 흐름도를 설명한다. 도 3 또한 모바일 결제를 위한 전제로서 상점 내 위치하는 IoT 기기를 인증하는 과정을 나타낸다. 도 3의 설명 과정에서 앞선 도면들의 설명에서와 동일한 개념의 단계들인 경우에는 그 중복되는 설명은 생략하기로 한다.
앞선 도 1에서는 기기 인증 OTP의 시드(Seed) 정보를 인증 서버(300)에서 생성하여 IoT 기기(100)로 전달하는 방식이고, 도 2에서는 IoT 기기(100)의 진위 여부를 판별하기 위한 기기 인증 OTP의 시드 정보를 IoT 기기(100)에서 자체 생성하는 방식이었다면, 도 3의 경우 기기 인증 OTP를 생성할 시드 정보를 사용자 앱(200)에서 생성하여 전달하는 방식 또는 사용자 앱(200)에서 최초 기기 인증 OTP의 생성을 요청하는 방식이라는 점에서 앞선 도 1 및 도 2와 핵심적 차이가 있다.
예를 들어, 상점 내에 진입한 사용자가 자신이 소지한 모바일 기기에 설치된 사용자 앱(200)을 구동함에 따라[도 3의 S300 참조], 사용자 앱(200)은 기기 인증 OTP Seed를 생성하고[도 3의 S302 참조], 생성한 Seed를 인증 서버(300)로 전송함과 아울러 기기 인증 OTP를 생성할 것을 요청한다[도 3의 S304 참조]. 물론 시스템 설계 방식에 따라, IoT 기기(100)가 지속적으로 브로드캐스팅하는 비콘 신호가 수신됨과 동시에 사용자 앱(200)이 자동 구동되면서 위 과정이 실행될 수도 있음은 물론이다.
사용자 앱(200)으로부터 Seed가 수신되면, 인증 서버(300)는 해당 Seed를 IoT 기기(100)에 전송하고[도 3의 S306 참조], 해당 Seed를 이용하여 기기 인증 OTP를 생성하며[도 3의 S308 참조], 생성한 기기 인증 OTP를 사용자 앱(200)으로 전송할 수 있다[도 3의 S310 참조]. 또한, IoT 기기(100)는 수신한 Seed를 이용하여 기기 인증 OTP를 생성할 수 있다. 여기서, 인증 서버(300) 및 IoT 기기(100)는 상호 간 기기 인증 OTP의 생성 방식 등을 사전에 공유해둘 수 있음은 앞서 설명한 바이다.
IoT 기기(100)는 비콘 ID와 도 3의 S312에서 생성한 기기 인증 OTP를 비콘 메시지에 실어 외부로 무선 송출(브로드캐스팅)한다[도 3의 S314 참조]. 이에 따라, 사용자 앱(200)은 도 3의 S310에서 수신한 기기 인증 OTP와 도 3의 S314에서 수신한 기기 인증 OTP 간의 일치 여부를 비교함으로써, 비콘 메시지를 송출한 IoT 기기(100)의 진위 여부 또는 위변조 여부를 검증할 수 있다[도 3의 S316 참조].
이상에서는 사용자 앱(200)이 기기 인증 OTP를 생성할 Seed를 인증 서버(300)로 전송하고 인증 서버(300)가 해당 Seed를 IoT 기기(100)에 다시 전송하는 케이스를 중심으로 설명하였지만, 이외의 다른 변형례로 존재할 수 있음은 물론이다. 예를 들어, 사용자 앱(200)은 Seed를 별도로 생성하지 않고 도 3의 S304 단계를 통해서 기기 인증 OTP 생성 요청만을 인증 서버(300)로 할 수도 있다. 이 경우, 인증 서버(300)는 자신이 기기 인증 OTP를 생성할 때 사용하였던 키값 또는 연산 조건을 Seed로 하여 도 3의 S306 단계를 통해서 IoT 기기(100)로 전송할 수도 있을 것이다. 일 예로, 인증 서버(300)는 기기 인증 OTP를 챌린지 앤드 리스폰스 방식으로 생성하는 경우, 연산 조건인 챌린지 값을 Seed로 IoT 기기(100)로 전송할 수 있다.
도 4는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제4 실시예의 도면이다.
여기서, 도 4는 사용자 측(즉, 사용자 앱(200))에서 IoT 기기(100)를 검증한 후, 인증 서버(300)가 사용자 측을 검증하는 인증 흐름도이다. 이에 따라, 도 4의 S100 ~ S120까지의 단계는 앞서 도 1에서 설명한 바와 동일하다. 도 4의 S100 ~ S120까지의 단계에 따른 사용자 측에서 IoT 기기를 검증하는 과정이 완료되면, 도 4의 S122 ~ S218까지의 단계에 따른 인증 서버가 사용자 측을 검증하는 과정이 실행된다.
IoT 기기 검증이 완료되면, 사용자 앱(200)은 사용자 인증을 위한 인증값(즉, 자신이 진정한 사용자임을 증명하기 위한 값으로서, 본 예에서는 사용자 OTP)을 생성하고[도 4의 S122 참조], 사용자 인증 정보를 인증 서버(300)로 전송한다[도 4의 S124 참조]. 이때, 사용자 인증 정보로는 해당 사용자를 식별할 수 있는 식별 정보(본 예에서는 사용자 ID)와 사용자 OTP가 인증 서버(300)로 전송될 수 있다. 여기서, 사용자 식별 정보는 본 예에서의 사용자 ID 이외에도 모바일 기기 식별값, 모바일 기기 전화번호, USIM 값, 앱 ID 등도 이용될 수 있음은 물론이다.
이에 따라, 인증 서버(300)에서는 사용자 OTP를 전송해온 해당 사용자를 식별하고, 사전에 공유된 OTP 생성 방식 또는/및 연산 조건에 따라 사용자 OTP를 자체 생성하고, 자체 생성한 사용자 OTP와 수신된 사용자 OTP 간의 일치 여부를 비교함으로써, 사용자 측의 진위 여부 또는 위변조 여부를 검증한다[도 4의 S126 참조]. 이후, 인증 서버(300)는 도 4의 S126에 따른 사용자 인증 결과를 IoT 기기(100)로 전송할 수 있다[도 4의 S128 참조].
도 5는 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제5 실시예의 도면이다.
여기서, 도 5는 앞서 설명한 도 4의 인증 흐름도에서, 도 5의 S107 및 S109 단계에 따른 IoT 기기 인증 과정이 추가된 것이다. 즉, 앞선 도 1 및 도 4에 의할 때, IoT 기기의 인증은 사용자 측(즉, 사용자 앱(200))에 의해서 수행되었지만, 도 5에서는 IoT 기기의 인증이 인증 서버(300)에서도 병행 수행됨으로써, 보다 신뢰성 높은 IoT 기기 인증이 가능한 효과가 있다. 즉, 도 5의 S106 단계에서 IoT 기기(100)가 자체 생성한 기기 인증 OTP는 인증 서버(300)로도 전송되며[도 5의 S107 참조], 이에 따라 인증 서버(300)는 도 5의 S104 단계에서 자체 생성해둔 기기 인증 OTP와 IoT 기기(100)로부터 수신한 기기 인증 OTP 간의 일치 여부를 비교함으로써, IoT 기기의 진위 또는 위변조 여부를 재검증할 수 있다.
도 6은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제6 실시예의 도면이다.
여기서, 도 6의 S100 ~ S126은 앞선 도 5에서와 동일한 절차에 의한다. 이에 추가하여, 도 6에서는, IoT 기기의 인증 및 사용자 측의 인증 과정과 함께, 인증 서버(300)의 인증도 수행된다는 점에서 기술적 특징이 있다. 인증 서버(300)의 인증은 도 6의 S130, S132, S134를 통해 수행될 수 있다.
즉, 도 6의 S100 ~ S126을 통한 IoT 기기의 인증(사용자 측 및 인증 서버 측에서 병행 인증)과 사용자 측의 인증이 완료되면, 인증 서버(300)는 자신이 진정한 인증 서버임(즉, 위변조된 인증 서버가 아님)을 증명하기 위한 인증값(본 예에서는 서버 검증 OTP)을 생성할 수 있다[도 6의 S130 참조]. 이때, 서버 인증값은 다양한 방식에 의해 생성될 수 있음은 물론이나, 본 예에서는 IoT 기기와 상호 간 공유되는 IoT key 값과 사용자 OTP를 이용하여 서버 검증 OTP를 생성하고 있다.
이후, 인증 서버(300)는 생성된 서버 검증 OTP와 사용자 OTP를 IoT 기기(100)에 전송하면서 서버 검증을 요청할 수 있다[도 6의 S132 참조]. 이 경우, IoT 기기(100)는 자신의 IoT key값과 수신된 사용자 OTP를 이용하여 서버 검증 OTP를 생성하고, 자체 생성한 서버 검증 OTP와 인증 서버(300)로부터 수신한 서버 검증 OTP 간의 일치 여부를 비교함으로써, 자신과 통신하고 있는 인증 서버(300)의 진위 여부를 검증할 수 있다[도 6의 S134 참조].
도 16은 비콘 메시지 송출 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제7 실시예의 도면이다.
도 16을 참조하면, IoT 기기(100)는 기기 인증 OTP의 Seed를 생성하고[도 16의 S1000 참조], 이에 기반하여 기기 인증 OTP를 생성한다[도 16의 S1002 참조]. 그리고 IoT 기기(100)는 비콘 ID와 생성한 기기 인증 OTP를 비콘 메시지에 실어 브로드캐스팅한다[도 16의 S1004 참조].
사용자 앱(200)의 구동에 따라 브로드캐스팅된 비콘 신호가 수신되면[도 16의 S1006 및 S1008 참조], 사용자 앱(200)은 기기 인증 OTP에 관한 검증을 인증 서버(300)로 요청할 수 있다[도 16의 S1010 참조].
이 경우, 인증 서버(300)는 IoT 기기(100)에서 기기 인증 OTP를 생성했던 방식과 동일한 방식으로 기기 인증 OTP를 생성하고, 자체 생성한 기기 인증 OTP와 사용자 앱(200)으로부터 수신한 기기 인증 OTP 간의 일치 여부를 비교함으로써, 비콘 메시지를 브로드캐스팅한 IoT 기기의 진위 여부를 검증할 수 있다[도 16의 S1014 참조]. 이때의 인증 결과는 사용자 앱(200)으로 전송될 수 있다[도 16의 S1016 참조]. 이에 따라 사용자 앱(200)은 해당 IoT 기기의 진위 여부를 확인할 수 있다.
전술한 도 16의 S1014 단계를 통해서 기기 인증 OTP를 생성함에 있어서, 인증 서버(300)는 도 16의 S1012 단계에 따라서 IoT 기기(100)로부터 수신된 Seed를 이용할 수도 있다. 일 예로, 기기 인증 OTP 생성 방식으로서 챌린지 앤드 리스폰스 방식을 이용하는 경우, 도 16의 S1012 단계를 통해서 연산 조건인 챌린지 값이 인증 서버(300)로 전송될 수 있을 것이다. 물론, 다른 Seed 값이 전송될 수도 있음은 자명하다.
다만, 경우에 따라서 도 16의 S1012 단계는 생략될 수도 있다. 예를 들어, 기기 인증 OTP의 Seed로서 도 16의 S1004를 통해 전송되는 비콘 ID가 이용되고 타임 OTP 방식으로 기기 인증 OTP를 생성하는 등의 경우라면, 도 16의 S1012 단계는 생략되어도 무방하다. 또한 도 16의 S1012에 따른 인증 서버(300)로의 기기 인증 OTP Seed의 전송은 도 16의 S1000 단계가 실행된 이후의 시점이라면 어느 시점이라도 이루어져도 무방함은 물론이다.
이상에서는 도 1의 케이스를 기준으로, 도 4의 사용자 측의 인증 과정의 추가 도입, 도 5의 인증 서버를 통한 IoT 기기의 추가 인증의 도입, 도 6의 인증 서버에 관한 인증 과정의 추가 도입을 설명하였다. 다만, 도면을 통해 명확히 도시하지는 않았지만, 위 도 4, 도 5, 도 6의 기술적 내용은, 도 2, 도 3, 또는 도 16의 케이스에도 동일 또는 유사한 방식으로 도입될 수도 있을 것임은 물론이다.
이상에서는 도 1 ~ 6 및 도 16을 참조하여, 비콘 신호 송출 기능을 갖는 IoT 기기가 상점에 설치된 경우를 가정한 인증 방법 및 시스템에 관하여 설명하였는 바, 이하 도 7 ~ 도 12에서는 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우를 가정한 인증 방법 및 시스템에 관하여 설명하기로 한다.
도 7은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제1 실시예의 도면이다.
여기서, 도 7은 앞서 설명한 도 1의 실시예와 대응될 수 있는 인증 방법 및 시스템에 관한 것으로서, IoT 기기(100)가 NFC 기능을 갖는 경우의 실시예를 나타낸다. 이를 위해, 본 실시예에서의 IoT 기기(100)는 NFC 기능을 갖기 위해서 NFC 모듈 및 이의 구동을 위한 소프트웨어가 탑재될 수 있다(이하, 도 8 ~ 도 12도 동일함).
도 7을 참조하면, 도 1의 실시예에서와 유사하게, IoT 기기(100)의 기기 인증을 위한 OTP Seed가 인증 서버(300)에서 생성되어 IoT 기기(100)로 전송되게 된다. 이하, 도 7에 따른 인증 흐름을 설명하면 다음과 같다. 도 7의 설명 과정에서 앞선 도 1의 설명에서와 동일한 기술적 특징에 대한 내용은 중복되는 설명을 생략하기로 한다.
먼저, 인증 서버(300)는 기기 인증 OTP Seed를 생성하고[도 7의 S400 참조], 생성된 Seed를 IoT 기기(100)로 전송하면서 기기 인증 OTP의 생성을 요청한다[도 7의 S402]. 이와 함께 인증 서버(300)는 해당 Seed를 이용하여 기기 인증 OTP를 자체 생성하고[도 7의 S404 참조], IoT 기기(100) 또한 수신한 Seed를 이용하여 기기 인증 OTP를 생성한다.
이후, 사용자 앱(200)이 구동되고[도 7의 S410 참조], 사용자에 의해 자신이 소지한 모바일 기기를 이용하여 IoT 기기(100)에 NFC 탭을 수행하면[도 7의 S412 참조], 사용자의 모바일 기기와 IoT 기기(100) 간에는 NFC 핸드쉐이크(Handshake)를 통한 통신 세션이 설정될 수 있다[도 7의 S414 참조].
이때, 사용자가 직접 또는 사용자 앱(200)이 자동으로 기기 인증 OTP 요청을 선택함에 따라[도 7의 S416 참조], 사용자 앱(200)은 IoT 기기(100)와 인증 서버(300)로 각각 기기 인증 OTP를 전송해줄 것을 요청할 수 있다[도 7의 S418 및 S422 참조]. 이에 대한 응답으로서 IoT 기기(100)와 인증 서버(300)로부터 각각 기기 인증 OTP가 전송되면[도 7의 S420 및 S424 참조], 사용자 앱(200)은 IoT 기기(100)로부터 수신된 기기 인증 OTP와 인증 서버(300)로부터 수신된 기기 인증 OTP 간의 일치 여부를 비교함으로써, IoT 기기(100)의 진위 여부를 판별(검증)할 수 있다[도 7의 S526 참조].
도 8은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제2 실시예의 도면이다.
여기서, 도 8은 앞서 설명한 도 2의 실시예와 대응될 수 있는 인증 방법 및 시스템에 관한 것으로서, IoT 기기(100)가 NFC 기능을 갖는 경우의 실시예를 나타낸다. 도 8을 참조하면, 도 2의 실시예에서와 유사하게, IoT 기기(100)의 기기 인증을 위한 OTP Seed가 IoT 기기(100)에서 자체 생성되어 인증 서버(300)로 전송되게 된다. 이하, 도 8에 따른 인증 흐름을 설명하면 다음과 같다. 도 8의 설명 과정에서 앞선 도 2의 설명에서와 동일한 기술적 특징에 대한 내용은 중복되는 설명을 생략하기로 한다.
IoT 기기(100)는 기기 인증 OTP Seed를 생성하고 이를 이용하여 기기 인증 OTP를 생성한다[도 8의 S500 및 S504 참조]. 이때, 생성된 Seed는 인증 서버(300)로 전송되고[도 8의 S502 참조], 인증 서버(300)는 수신한 Seed를 이용하여 기기 인증 OTP를 생성한다[도 8의 S506 참조].
이후, 사용자 앱(200)의 구동[도 8의 S510 참조], NFC 탭[도 8의 S512 참조], NFC 핸드쉐이크[도 8의 S514 참조], 기기 인증 OTP 요청의 선택[도 8의 S516 참조]이 이루어지면, 사용자 앱(200)은 IoT 기기(100)와 인증 서버(300)로 각각 기기 인증 OTP를 전송해줄 것을 요청할 수 있다[도 8의 S518 및 S522 참조]. 이에 대한 응답으로서 IoT 기기(100)와 인증 서버(300)로부터 각각 기기 인증 OTP가 전송되면[도 8의 S520 및 S524 참조], 사용자 앱(200)은 IoT 기기(100)로부터 수신된 기기 인증 OTP와 인증 서버(300)로부터 수신된 기기 인증 OTP 간의 일치 여부를 비교함으로써, IoT 기기(100)의 진위 여부를 판별(검증)할 수 있다[도 8의 S526 참조].
본 명세서에서는 IoT 기기(100)가 NFC 기능을 탑재한 케이스에 있어서, 앞서 설명한 도 3에 대응되는 실시예에 관한 도면을 별도로 도시하지는 않았지만, 도 3에서 설명한 기술적 방식과 유사한 방식이 적용될 수 있음은 물론이다.
도 9는 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제3 실시예의 도면이다.
여기서, 도 9는 앞서 설명한 도 4의 실시예와 대응될 수 있는 인증 방법 및 시스템에 관한 것으로서, IoT 기기(100)가 NFC 기능을 갖는 경우의 실시예를 나타낸다. 도 9를 참조하면, 도 4의 실시예에서와 유사하게, IoT 기기(100)에 관한 기기 인증 과정 이후에 사용자 측의 인증도 수행된다. 이하, 도 9에 따른 인증 흐름을 설명하면 다음과 같다. 도 9의 설명 과정에서 앞선 도 4의 설명에서와 동일한 기술적 특징에 대한 내용은 중복되는 설명을 생략하기로 한다.
도 9의 S400 ~ S426까지는 IoT 기기(100)의 기기 인증 과정에 관한 내용으로서 앞서 설명한 도 7에서와 동일하다. 위 과정을 통해서 IoT 기기(100)에 관한 기기 인증이 완료되면, 사용자 앱(200)은 사용자 측의 인증을 위한 인증값(본 예에서는 사용자 OTP)을 생성하고[도 9의 S428 참조], 그 사용자 인증 정보를 인증 서버(300)로 전송할 수 있다[도 9의 S430 참조].
이에 따라 인증 서버(300)는 사용자 측의 인증을 위한 인증값을 사용자 앱(200)이 해당 인증값을 생성한 방식과 동일한 방식으로 생성하고, 자체 생성한 사용자 인증값과 사용자 앱(200)으로부터 수신한 사용자 인증값 간의 일치 여부를 비교함으로써 사용자 측의 진위 여부를 인증할 수 있다[도 9의 S432 참조]. 해당 인증 결과는 IoT 기기(100)로 전송될 수 있다[도 9의 S434 참조].
도 10은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제4 실시예의 도면이다.
여기서, 도 10은 앞서 설명한 도 5의 실시예와 대응될 수 있는 인증 방법 및 시스템에 관한 것으로서, IoT 기기(100)가 NFC 기능을 갖는 경우의 실시예를 나타낸다. 도 10을 참조하면, 도 10의 S407 및 S409 단계를 제외한 모든 과정이 도 9에서와 동일하다. 다만, 도 5의 실시예에서와 유사하게, IoT 기기(100)에 관한 기기 인증 과정이 사용자 앱(200)에서 수행됨과 함께 인증 서버(300)에서도 수행된다. 여기서, 도 10의 S407 및 S409는 IoT 기기(100)에 관한 기기 인증을 인증 서버(300)에서 수행하는 케이스에 관한 단계들이다.
도 11은 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제5 실시예의 도면이다.
여기서, 도 11은 앞서 설명한 도 6의 실시예와 대응될 수 있는 인증 방법 및 시스템에 관한 것으로서, IoT 기기(100)가 NFC 기능을 갖는 경우의 실시예를 나타낸다. 도 11을 참조하면, 도 6의 실시예에서와 유사하게, IoT 기기(100)에 관한 기기 인증 과정 및 사용자 인증 과정이 완료된 이후에 인증 서버에 관한 인증도 수행된다. 이하, 도 11에 따른 인증 흐름을 설명하면 다음과 같다.
도 11의 S400 ~ S432까지는 IoT 기기(100)의 기기 인증 과정에 관한 내용으로서 앞서 설명한 도 10에서와 동일하다. 위 과정을 통해서 IoT 기기(100)에 관한 기기 인증 및 사용자 인증이 완료되면, 서버 인증 과정이 수행된다. 서버 인증 과정은 도 11의 S436, S438, S440에 의하며, 이는 본질적으로 도 6에서 설명한 내용과 동일하다.
도 12는 NFC 기능을 갖는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 인증 방법 및 시스템을 설명하기 위한 제6 실시예의 도면이다. 여기서, 제6 실시예는 인증 서버(300)가 사용자를 인증하는 방식에 관한 흐름도이다. 이하, 이에 관하여 구체적으로 설명하면 다음과 같다.
사용자 앱(200)이 구동되면[도 12의 S600 참조], 사용자 앱(200)은 사용자 OTP Seed를 생성하고 생성된 Seed를 이용하여 사용자 인증값(본 예에서는 사용자 OTP)을 생성한다[도 12의 S602 참조]. 이후, NFC 탭[도 12의 S604 참조], NFC 핸드쉐이크[도 12의 S606 참조]가 이루어지면, 사용자 앱(200)은 IoT 기기(100)로 해당 Seed를 전송하고[도 12의 S608 참조], 인증 서버(300)로 생성한 사용자 OTP 및 사용자 식별 정보(본 예에서는 사용자 ID)를 전송할 수 있다[도 12의 S610 참조].
이에 따라, 인증 서버(300)는 사용자 앱(200)이 OTP를 생성한 방식과 동일한 방식으로 사용자 OTP를 자체 생성하고, 자체 생성한 사용자 OTP와 사용자 앱(200)으로부터 수신한 사용자 OTP 간의 일치 여부를 비교함으로써, 사용자 OTP를 1차 검증할 수 있다[도 12의 S612 참조].
또한, Seed가 수신됨에 따라, IoT 기기(100)는 그 Seed를 이용하여 사용자 앱(200)이 OTP를 생성한 방식과 동일 방식으로 사용자 OTP를 자체 생성하고[도 12의 S614 참조], 생성한 사용자 OTP를 인증 서버(300)로 전송한다[도 12의 S616 참조].
이에 따라, 인증 서버(300)는 자체 생성한 사용자 OTP와 IoT 기기(100)로부터 수신된 사용자 OTP 간의 일치 여부를 비교함으로써, 사용자 OTP를 2차 검증할 수 있다[도 12의 S618 참조].
상술한 과정을 통해서, 인증 서버(300)는 사용자 측과 IoT 기기를 동시에 인증할 수 있게 된다. 즉, 전술한 사용자 OTP의 1차 검증 과정을 통해서 사용자 측의 진위 여부를 인증할 수 있고, 전술한 사용자 OTP의 2차 검증 과정을 통해서 IoT 기기의 진위 여부를 인증할 수 있다. 사용자 OTP의 2차 검증 과정은 사용자 앱(200)으로부터 수신된 Seed를 이용하여 IoT 기기(100)가 생성한 사용자 OTP를 인증 서버(300)가 검증하는 과정인 바, 이에 의하면 IoT 기기(100)의 진위 여부 또한 간접적으로 검증할 수 있기 때문이다.
이상에서는 NFC 탭 및 NFC 핸드쉐이크가 이루어진 이후에, 사용자 OTP가 인증 서버(300)로 전송되는 것과 같이 도시 및 설명하였지만, 이는 반드시 위와 같을 필요는 없다. 즉, 사용자 OTP의 인증 서버로의 전송은 도 12의 S602에 따라 OTP가 생성된 이후의 시점이라면 어느 시점이라도 이루어질 수 있음은 물론이다.
도 13은 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제1 실시예의 도면이다.
도 13의 식권 발급 시스템은, 비콘 신호 송출 기능을 갖는 IoT 기기(100), 사용자의 모바일 기기에 설치되는 사용자 앱(200), 인증 서버(300), 식권 관리 서버(400)를 포함할 수 있다. 이때, 사용자 앱(200)은 IoT 기기(100) 및 식권 관리 서버(400)은 무선 통신을 통해 통신 연결될 수 있고, 식권 관리 서버(400)는 IoT 기기(100) 및 인증 서버(300)와 유선 또는 무선 통신을 통해 통신 연결될 수 있다.
도 13을 참조할 때, IoT 기기(100)는 기기 자체의 진위 여부를 증명하기 위한 기기 인증 OTP(도 13의 IoT OTP 참조, 이하, 도 14 및 도 15도 동일함)를 생성하고[도 13의 S700 참조], 비콘 ID와 생성한 기기 인증 OTP를 비콘 메시지에 실어 외부로 브로드캐스팅할 수 있다[도 13의 S702 참조].
사용자 앱(200)이 구동됨에 따라[도 13의 S704 참조], 사용자 앱(200)은 비콘 신호를 수신할 수 있고[도 13의 S706 참조], 이에 따라 사용자 또는 해당 앱의 진위 여부를 증명하기 위한 사용자 OTP를 생성할 수 있다[도 13의 S708 참조].
이후, 사용자 앱(200)은 식권 관리 서버(400)로 식권 정보를 요청한다[도 13의 S710 참조]. 이때, 사용자 앱(200)은 식권 정보 요청 과정을 통해서 사용자 식별 정보(본 예에서는 사용자 ID), 자체 생성한 사용자 OTP, 비콘 신호를 통해 수신한 IoT 기기 정보(즉, Beacon ID, IoT OTP)를 함께 식권 관리 서버(400)로 전송할 수 있다.
식권 정보 요청을 수신한 식권 관리 서버(400)는 인증 서버(300)로 해당 사용자 및 해당 IoT 기기의 검증을 요청한다[도 13의 S712 참조]. 이를 위해, 식권 관리 서버(400)는 도 13의 S712 단계를 통해서, 사용자 앱(200)으로부터 수신한 정보(즉, 사용자 ID, 사용자 OTP, Beacon ID, IoT OTP)를 인증 서버(300)로 전송할 수 있다.
이에 따라, 인증 서버(300)는 수신한 사용자 ID 및 Beacon ID에 따라 해당 사용자 및 해당 IoT 기기를 식별하고, 사전에 공유된 OTP 생성 방식(즉, 앞서 사용자 앱(200)과 IoT 기기(100)에서 OTP를 생성한 각각의 방식과 동일한 방식)을 이용하여 사용자 OTP 및 IoT OTP를 자체 생성할 수 있다. 인증 서버(300)는 자체 생성한 사용자 OTP 및 IoT OTP와 식권 관리 서버(400)로부터 수신한 사용자 OTP 및 IoT OTP 간의 일치 여부를 비교함으로써, 해당 사용자 및 IoT 기기의 진위 여부를 검증할 수 있고[도 13의 S714 참조], 그 검증 결과를 식권 관리 서버(400)로 전송한다[도 13의 S716 참조].
수신된 검증 결과가 인증 성공인 경우, 식권 관리 서버(400)는 사용자 앱(200)으로 가맹점 정보 및 해당 가맹점이 제공하는 식권 관련 정보(본 예에서는 식권 ID, 식권 정보, 토큰값)를 전송한다[도 13의 S718 참조]. 여기서, 토큰값은 향후 식권 OTP의 생성시의 Seed 정보로 활용될 수 있다.
가맹점 정보 및 식권 관련 정보가 수신되면, 사용자 앱(200)은 그 수신된 정보에 기반하여 앱 화면을 통해 식권 정보를 표시할 수 있다[도 13의 S720 참조]. 사용자는 사용자 앱(200)의 화면 상에서 식권을 선택하고[도 13의 S722 참조], IoT 기기(100)에 탭(tap)을 하면[도 13의 S724 참조], 사용자 앱(200)은 식권 OTP를 생성한다[도 13의 S726 참조]. 이때, IoT(100) 기기는 비콘 방식으로 작동하므로, IoT 기기로의 탭은 사용자의 모바일 기기와 IoT 기기 간이 지정된 유효 거리 내에서 이루어질 때에 해당 이벤트가 정상적으로 처리되게 될 것이다. 또한 이때, 식권 OTP는 앞선 도 7의 S718을 통해 수신된 정보의 전부 또는 일부가 이용될 수 있다. 또한 식권 OTP는 거래 연동 OTP로 생성될 수도 있으며, 이러한 경우, 식권 매수, 금액 등의 거래 관련 정보도 OTP 생성의 Seed로서 더 활용될 수도 있을 것이다.
이후, 사용자 앱(200)은 식권 관리 서버(400)로 식권 사용을 요청한다[도 13의 S728 참조]. 이러한 식권 사용 요청 과정에서 사용자 ID, 식권 ID, 식권 OTP 등이 정보가 식권 관리 서버(400)로 함께 전송될 수 있다.
식권 사용 요청이 수신되면, 식권 관리 서버(400)는 인증 서버(300)로 식권 검증을 요청한다[도 13의 S730 참조]. 이러한 식권 검증 요청 과정에서 식권 ID, 식권 OTP 등의 정보가 인증 서버(300)로 함께 전송될 수 있다.
이에 따라, 인증 서버(300)는 수신된 식권 ID 등의 정보에 기초하여 식권 OTP를 자체 생성한다. 인증 서버(300)는 자체 생성한 식권 OTP와 식권 관리 서버(400)로부터 수신된 식권 OTP 간의 일치 여부를 비교함으로써, 식권 관리 서버(400)로부터 수신된(즉, 사용자 앱(200)에서 생성한) 식권 OTP의 진위 여부(혹은 유효성 여부)를 검증한다[도 13의 S732 참조]. 이러한 식권 OTP의 검증 결과는 식권 관리 서버(400)로 전송된다[도 13의 S734 참조].
식권 OTP 검증 결과가 검증 성공인 경우, 식권 관리 서버(400)는 식권 사용 내역을 갱신하고[도 13의 S736 참조], 식권 사용 결과를 IoT 기기(100)로 전송하며[도 13의 S738 참조], 식권 사용 내역을 사용자 앱(200)으로 전송할 수 있다[도 13의 S742 참조]. 이때, IoT 기기(100)는 식권 사용이 성공되었음을 알리는 성공 신호를 시각적 또는/및 청각적 방식으로 출력할 수 있다[도 13의 S740 참조].
상술한 도 13에서, S700 ~ S714 과정은 기기 인증 및 사용자 인증을 위한 절차들이다. 따라서, 도 13의 S700 ~ S714 과정은 앞서 설명한 도 1 ~ 도 12, 도 16의 절차들로 대체될 수도 있을 것임은 물론이다. 또한, 도 13의 S700 ~ S714 과정은 기기 인증과 사용자 인증을 동시에 수행하도록 구현되고 있지만, 기기 인증 과정은 도 1 ~ 도 12, 도 16에 따른 기기 인증 과정으로 대체하고, 사용자 인증 과정은 식권 OTP의 검증 과정에서 함께 이루어지도록 변형될 수도 있을 것임은 물론이다. 이는 이후 설명할 도 14 및 도 15의 경우에도 동일하다.
도 14은 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제2 실시예의 도면이다. 도 14의 식권 발급 시스템은, 비콘 신호 송출 기능을 갖는 IoT 기기(100), 사용자의 모바일 기기에 설치되는 사용자 앱(200), 인증 서버(300), 식권 관리 서버(400)를 포함할 수 있다. 도 14의 설명 과정에서 앞선 도 13에서와 중복될 수 있는 내용에 관한 설명은 생략하기로 한다.
도 14를 참조할 때, IoT 기기(100)는 기기 자체의 진위 여부를 증명하기 위한 기기 인증 OTP(도 14의 IoT OTP 참조)를 생성하고[도 14의 S800 참조], 비콘 ID와 생성한 기기 인증 OTP를 비콘 메시지에 실어 외부로 브로드캐스팅할 수 있다[도 14의 S802 참조].
사용자 앱(200)이 구동됨에 따라[도 14의 S804 참조], 사용자 앱(200)은 비콘 신호를 수신할 수 있고[도 14의 S806 참조], 이에 따라 사용자 또는 해당 앱의 진위 여부를 증명하기 위한 사용자 OTP를 생성할 수 있다[도 14의 S808 참조].
또한 이때, 사용자 앱(200)은 해당 사용자에 의한 식권 사용 시도 횟수를 확인하기 위한 일종의 일련번호 정보(본 예에서는 UUID로 표현함)를 생성할 수 있다[도 14의 S809 참조]. 비콘 신호는 브로드캐스팅되는 것으로서 해당 정보가 해커에 의해 탈취될 수도 있고, 또한 사용자 OTP 또한 해커에 의해 탈취되는 경우, 해당 OTP의 유효 시간 내에서 해커에 의해 중복되어 식권이 사용될 수 있는 가능성도 존재한다. 따라서, 도 14의 실시예에서는 식권 사용 시도 횟수를 확인할 수 있는 정보를 추가 생성하여 이와 같은 문제를 예방하고자 하는 것이다.
이후, 사용자 앱(200)은 식권 관리 서버(400)로 식권 정보를 요청한다[도 14의 S810 참조]. 이때, 사용자 앱(200)은 식권 정보 요청 과정을 통해서 사용자 ID, 자체 생성한 사용자 OTP, Beacon ID, IoT OTP, 자체 생성한 UUID 값을 함께 식권 관리 서버(400)로 전송할 수 있다.
식권 정보 요청을 수신한 식권 관리 서버(400)는 해당 사용자의 식권 사용 시도 횟수에 관한 UUID 값을 검증하고[도 14의 S812 참조], 해당 UUID 값을 저장한다[도 14의 S814 참조]. 이때, UUID 값의 저장은 사용자 OTP의 유효 시간 동안만 저장될 수 있다. 또한 식권 관리 서버(400)는 인증 서버(300)로 해당 사용자 및 해당 IoT 기기의 검증을 요청한다[도 14의 S816 참조]. 이를 위해, 식권 관리 서버(400)는 도 14의 S816 단계를 통해서, 사용자 앱(200)으로부터 수신한 정보(즉, 사용자 ID, 사용자 OTP, Beacon ID, IoT OTP)를 인증 서버(300)로 전송할 수 있다.
이에 따라, 인증 서버(300)는 수신한 사용자 ID 및 Beacon ID에 따라 해당 사용자 및 해당 IoT 기기를 식별하고, 사전에 공유된 OTP 생성 방식(즉, 앞서 사용자 앱(200)과 IoT 기기(100)에서 OTP를 생성한 각각의 방식과 동일한 방식)을 이용하여 사용자 OTP 및 IoT OTP를 자체 생성할 수 있다. 인증 서버(300)는 자체 생성한 사용자 OTP 및 IoT OTP와 식권 관리 서버(400)로부터 수신한 사용자 OTP 및 IoT OTP 간의 일치 여부를 비교함으로써, 해당 사용자 및 IoT 기기의 진위 여부를 검증할 수 있고[도 14의 S818 참조], 그 검증 결과를 식권 관리 서버(400)로 전송한다[도 14의 S820 참조].
수신된 검증 결과가 인증 성공인 경우, 식권 관리 서버(400)는 사용자 앱(200)으로 가맹점 정보 및 해당 가맹점이 제공하는 식권 관련 정보(본 예에서는 식권 ID, 식권 정보, 토큰값)를 전송한다[도 14의 S822 참조].
가맹점 정보 및 식권 관련 정보가 수신되면, 사용자 앱(200)은 그 수신된 정보에 기반하여 앱 화면을 통해 식권 정보를 표시할 수 있다[도 14의 S824 참조]. 사용자는 사용자 앱(200)의 화면 상에서 식권을 선택하고[도 14의 S826 참조], IoT 기기(100)에 탭(tap)을 한다[도 14의 S828 참조]. 이때, IoT(100) 기기는 비콘 방식으로 작동하므로, IoT 기기로의 탭은 사용자의 모바일 기기와 IoT 기기 간이 지정된 유효 거리 내에서 이루어질 때에 해당 이벤트가 정상적으로 처리되게 될 것이다.
이후, 사용자 앱(200)은 식권 관리 서버(400)로 식권 사용을 요청한다[도 14의 S830 참조]. 이러한 식권 사용 요청 과정에서 사용자 ID, 식권 ID, 토큰값 등의 정보가 식권 관리 서버(400)로 함께 전송될 수 있다.
식권 사용 요청이 수신되면, 식권 관리 서버(400)는 수신된 토큰값을 검증하고[도 14의 S832 참조], 검증이 성공한 경우, 식권 사용 내역을 갱신하고[도 14의 S834 참조], 식권 사용 결과를 IoT 기기(100)로 전송하며[도 14의 S836 참조], 식권 사용 내역을 사용자 앱(200)으로 전송할 수 있다[도 14의 S840 참조]. 이때, IoT 기기(100)는 식권 사용이 성공되었음을 알리는 성공 신호를 시각적 또는/및 청각적 방식으로 출력할 수 있다[도 14의 S838 참조].
도 14에서는 S830을 통한 식권 사용 요청 과정에서 S822를 통해 수신한 토큰값이 그대로 식권 관리 서버(400)로 전송되는 방식을 예시하고 있지만, 도 7에서와 같이 식권 OTP를 생성하여 전송하고 식권 OTP를 검증하는 방식이 이용될 수도 있음은 물론이다. 또한 도 14에서는 S832를 통해 토큰값 검증을 식권 관리 서버(400)가 수행하고 있지만, 이 또한 도 7에서와 같이 식권 OTP를 인증 서버(300)에서 검증하는 방식으로 대체할 수도 있을 것이다.
도 15는 IoT 기기가 상점 내에 설치된 경우의 모바일 결제 시스템에서의 식권 발급 방법 및 시스템을 설명하기 위한 제3 실시예의 도면이다.
도 15의 식권 발급 시스템은, NFC 기능을 갖는 IoT 기기(100), 사용자의 모바일 기기에 설치되는 사용자 앱(200), 인증 서버(300), 식권 관리 서버(400)를 포함할 수 있다. 도 15의 설명 과정에서 앞선 도 13 및 도 14에서와 중복될 수 있는 내용에 관한 설명은 생략하기로 한다.
도 15를 참조할 때, S900에 따른 IoT OTP의 생성 단계, S902에 따른 앱 구동 단계, S906에 따른 IoT 기기의 탭 단계, S910에 따른 식권 사용 선택 단계, S912에 따른 사용자 OTP의 생성 및 식권 OTP의 생성 단계, S918에 따른 사용자 및 IoT 기기의 검증 요청 단계, S920에 따른 사용자 및 IoT 기기의 검증 단계, S922에 따른 검증 결과 전송 단계, S924에 따른 식권 사용 내역 갱신 단계, S926에 따른 식권 사용 결과 전송 단계, S928에 따른 성공 신호 출력 단계는 본질적으로 전술한 도 13 또는 도 14의 실시예에서와 동일하다.
다만, NFC(Near-Field Communication) 기술은, S908의 NFC 핸드쉐이크 동작을 통해서 기기 간 양방향 통신이 가능하므로, 식권 관련 정보는 IoT 기기(100)로부터 사용자 앱(200)으로 직접 전달될 수 있다. 따라서 식권 관련 정보들은 IoT 기기(100)로부터 직접 전달되어 사용자 앱(200)의 화면을 통해 표시될 수 있고, 이에 따라 사용자는 식권 선택을 할 수 있다. 일 예로, 도 15의 S904 단계는 식권 선택 과정에서 식권 가격을 입력하는 케이스를 예시한 것이다.
또한 NFC 기술을 통한 양방향 통신을 활용하면, 사용자 앱(200)으로부터 IoT 기기(100)로 직접 식권 사용 요청을 진행할 수 있다. 도 15의 S912를 참조할 때, 사용자 앱(200)은 사용자 ID, 사용자 OTP, 식권 가격, 식권 OTP 등을 IoT 기기(100)로 전송하면서 식권 사용 요청하고 있음을 확인할 수 있다. 여기서, 식권 가격은 반드시 별도로 전송될 필요는 없으며, 식권 OTP를 생성하는 Seed 정보로서만 활용될 수도 있음을 물론이다.
본 발명의 실시예에 의할 때, 식권 사용 요청을 수신한 IoT 기기(100)는 식권 관리 서버(400)로 그 식권 사용 요청을 전달한다[도 15의 S916 참조]. 이때, IoT 기기(100)는 기기 인증을 위한 정보(도 15의 S916의 경우, IoT 기기 ID, IoT OTP 참조)를 식권 관리 서버(400)로 함께 전달할 수 있다. 이에 따라, 식권 관리 서버(400)는 사용자 인증, 기기 인증, 식권 인증을 동시에 인증 서버(300)로 요청할 수 있으며[도 15의 S918 참조], 인증 서버(300)는 이에 관한 인증을 수행하고[도 15의 S920 참조], 그 인증 결과를 식권 관리 서버(400)로 전송할 수 있다.
상술한 본 발명의 실시예에 따른 모바일 결제 시스템을 위한 인증 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.

Claims (13)

  1. 인증 시스템으로서,
    통신 모듈이 탑재되는 IoT(Internet of Things) 기기에 설치되고, 해당 IoT 기기의 인증을 위한 제1 기기 인증 정보를 생성하는 기기 인증 에이전트;
    상기 IoT 기기와 유선 또는 무선 통신을 통해 연결되고, 상기 IoT 기기의 인증을 위한 제2 기기 인증 정보를 생성하는 인증 서버; 및
    사용자의 모바일 기기에 설치되고, 상기 IoT 기기 및 상기 인증 서버와 무선 통신을 통해 연결되며, 상기 IoT 기기로부터 전송된 상기 제1 기기 인증 정보와 상기 인증 서버로부터 전송된 상기 제2 기기 인증 정보 간의 일치 여부에 따라 상기 IoT 기기 또는 상기 IoT 기기로부터 수신된 것으로 판별되는 메시지의 진위 여부를 검증하는 모바일 에이전트
    를 포함하는 인증 시스템.
  2. 제1항에 있어서,
    상기 인증 서버는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보를 상기 기기 인증 에이전트로 전송하며, 상기 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성하고,
    상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신한 시드 정보와 상기 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성하는, 인증 시스템.
  3. 제1항에 있어서,
    상기 기기 인증 에이전트는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보를 상기 인증 서버로 전송하며, 상기 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성하고,
    상기 인증 서버는, 상기 기기 인증 에이전트로부터 수신한 시드 정보와 상기 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성하는, 인증 시스템.
  4. 제1항에 있어서,
    상기 모바일 에이전트는, 기기 인증 정보의 생성을 위한 시드(Seed) 정보를 생성하고, 생성된 시드 정보를 상기 인증 서버로 전송하며,
    상기 인증 서버는, 상기 모바일 에이전트로부터 수신한 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제2 기기 인증 정보를 생성하고, 상기 수신한 시드 정보를 상기 기기 인증 에이전트로 전송하며,
    상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신한 시드 정보와 사전 지정된 알고리즘을 이용하여 상기 제1 기기 인증 정보를 생성하는, 인증 시스템.
  5. 제1항에 있어서,
    상기 통신 모듈은 비콘 통신 모듈이고,
    상기 기기 인증 에이전트는, 해당 IoT 기기의 식별에 사용 가능한 식별 정보 및 상기 제1 기기 인증 정보를 비콘 메시지에 삽입하여 무선 브로드캐스팅(wireless broadcasting)하는, 인증 시스템.
  6. 제5항에 있어서,
    상기 제1 기기 인증 정보는, 상기 비콘 메시지에서 비콘 고유값인 UUID가 삽입되는 데이터 필드 영역에 뒤따르는 메이저(Major) 필드 및 마이너(Minor) 필드 중 적어도 하나에 삽입되는, 인증 시스템.
  7. 제6항에 있어서,
    상기 제1 기기 인증 정보가 상기 삽입될 데이터 필드 영역의 사이즈를 초과하는 경우, 상기 제1 기기 인증 정보는 해당 데이터 필드 영역의 사이즈를 초과하지 않는 값으로 변환 처리되어 상기 비콘 메시지에 삽입되는, 인증 시스템.
  8. 제1항에 있어서,
    상기 통신 모듈은 NFC(Near-Field Communication) 통신 모듈이고,
    상기 기기 인증 에이전트는, NFC 핸드쉐이크(Handshake)를 통해 상기 모바일 에이전트와의 통신 세션이 활성화됨에 따라, 상기 제1 기기 인증 정보를 상기 모바일 에이전트로 전송하는, 인증 시스템.
  9. 제1항에 있어서,
    상기 제1 기기 인증 정보 및 상기 제2 기기 인증 정보가, 연산 조건으로서 시간을 이용하는 타임 OTP(One Time Password) 방식으로 생성되는 경우,
    상기 인증 서버는, 현 시점에 생성된 당기의 제2 기기 인증 정보와 그 이전에 생성했던 전기의 제2 기기 인증 정보를 모두 상기 모바일 에이전트로 전송하고,
    상기 모바일 에이전트는, 상기 제1 기기 인증 정보가 상기 당기 및 전기의 제2 기기 인증 정보 중 어느 하나와 일치하는지 여부를 판별하여 상기 진위 여부를 검증하는, 인증 시스템.
  10. 제1항에 있어서,
    상기 기기 인증 에이전트는, 상기 제1 기기 인증 정보를 상기 인증 서버로 전송하고,
    상기 인증 서버는, 상기 기기 인증 에이전트로부터 수신된 제1 기기 인증 정보와 자체 생성한 제2 기기 인증 정보 간의 일치 여부에 따라, 상기 진위 여부를 재차 검증하는, 인증 시스템.
  11. 제1항에 있어서,
    상기 모바일 에이전트는, 사용자 인증을 위한 제1 사용자 인증 정보를 사전 지정된 알고리즘에 따라 생성하고, 해당 사용자의 식별에 활용 가능한 사용자 식별 정보와 상기 제1 사용자 인증 정보를 상기 인증 서버로 전송하고,
    상기 인증 서버는, 상기 모바일 에이전트로부터 수신한 사용자 식별 정보에 상응하여 상기 사전 지정된 알고리즘에 따라 제2 사용자 인증 정보를 자체 생성하고, 상기 수신된 제1 사용자 인증 정보와 상기 자체 생성한 제2 사용자 인증 정보 간의 일치 여부에 따라 해당 사용자의 진위 여부를 검증하며, 해당 사용자의 진위 여부에 관한 검증 결과를 상기 기기 인증 에이전트로 전송하는, 인증 시스템.
  12. 제11항에 있어서,
    상기 인증 서버는, 상기 사용자 인증을 위한 사용자 인증 정보와 사전 지정된 알고리즘을 이용하여 제1 서버 검증 정보를 생성하고, 상기 제1 서버 검증 정보 및 상기 사용자 인증 정보를 상기 기기 인증 에이전트로 전송하며,
    상기 기기 인증 에이전트는, 상기 인증 서버로부터 수신된 사용자 인증 정보와 상기 사전 지정된 알고리즘을 이용하여 제2 서버 검증 정보를 생성하고, 상기 인증 서버로부터 수신된 제1 서버 검증 정보와 상기 제2 서버 검증 정보 간의 일치 여부에 따라 상기 인증 서버의 진위 여부에 관한 검증을 수행하는, 인증 시스템.
  13. 인증 시스템으로서,
    사용자의 모바일 기기에 설치되고, 사전 지정된 인증 절차를 수행하는 인증 애플케이션 프로그램이 구동됨에 따라, 기기 간 상호 인증에 사용될 인증 정보 생성을 위한 시드(Seed) 정보를 생성하고, 상기 시드 정보 및 사전 지정된 알고리즘을 이용하여 제1 인증 정보를 생성하는 모바일 에이전트;
    통신 모듈이 탑재되는 IoT(Internet of Things) 기기에 설치되고, 상기 모바일 에이전트와 무선 통신을 통해 연결되며, 상기 모바일 에이전트로부터 상기 시드 정보를 수신하고, 수신된 시드 정보 및 상기 사전 지정된 알고리즘을 이용하여 제2 인증 정보를 생성하는 기기 인증 에이전트; 및
    상기 모바일 에이전트와 무선 통신을 통해 연결되고, 상기 IoT 기기와 유선 또는 무선 통신을 통해 연결되며, 상기 모바일 에이전트로부터 상기 시드 정보 및 상기 제1 인증 정보를 수신한 경우 상기 수신된 시드 정보 및 상기 사전 지정된 알고리즘을 이용하여 제3 인증 정보를 생성하고, 상기 기기 인증 에이전트로부터 상기 제2 인증 정보를 수신하며, 상기 수신된 제1 인증 정보와 상기 제3 인증 정보 간의 일치 여부 및 상기 수신된 제2 인증 정보와 상기 제3 인증 정보 간의 일치 여부를 중복 검증하는 인증 서버
    를 포함하는 인증 시스템.
KR1020170044328A 2016-04-06 2017-04-05 모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템 KR101801323B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160042552 2016-04-06
KR1020160042552 2016-04-06

Publications (2)

Publication Number Publication Date
KR20170114990A KR20170114990A (ko) 2017-10-16
KR101801323B1 true KR101801323B1 (ko) 2017-11-24

Family

ID=60000609

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170044328A KR101801323B1 (ko) 2016-04-06 2017-04-05 모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템

Country Status (2)

Country Link
KR (1) KR101801323B1 (ko)
WO (1) WO2017176051A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756336B (zh) * 2017-11-03 2021-09-10 ***通信有限公司研究院 一种认证方法、v2x计算***及v2x计算节点
KR102400580B1 (ko) * 2018-01-22 2022-05-23 삼성전자주식회사 다른 전자 장치의 인증을 수행하는 전자 장치와 이의 동작 방법
KR102114113B1 (ko) * 2018-06-22 2020-05-22 엔에이치엔 주식회사 근거리 무선 통신을 수행하는 사용자 단말기들 및 그것과 연결되는 클라이언트 서버
KR20200000739A (ko) * 2018-06-25 2020-01-03 삼성전자주식회사 사용자 단말, 전자 장치 및 사용자 단말과 전자 장치의 제어 방법
KR102525654B1 (ko) * 2020-02-04 2023-04-25 (주)이스톰 범용 서비스 인증 방법 및 이를 위한 플랫폼
EP4016922A1 (en) 2020-12-17 2022-06-22 Telefónica Cybersecurity & Cloud Tech, S.L.U. A method for providing identity and authentication to a data-generation device and a data-generation device
CN114124451B (zh) * 2021-10-15 2023-08-22 杭州安恒信息技术股份有限公司 一种物联网设备数据处理方法、***及计算机存储介质
CN115065703B (zh) * 2022-06-17 2024-07-16 京东方科技集团股份有限公司 物联网***及其认证与通信方法、相关设备
US20240106896A1 (en) * 2022-09-23 2024-03-28 T-Mobile Innovations Llc Iot device one tap activation

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101551148B1 (ko) 2015-04-22 2015-09-07 김만이 결제 이력 관리 방법 및 그의 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101034383B1 (ko) * 2009-05-29 2011-05-16 연세대학교 산학협력단 무선 센서 네트워크에서 단대단 통신 방법 및 상기 무선 센서 네트워크에서 코디네이터 및 통신 장치 구동 방법
EP3051745B1 (en) * 2013-09-23 2020-05-06 Samsung Electronics Co., Ltd. Security management method and security management device in home network system
KR101638614B1 (ko) * 2014-01-08 2016-07-20 (주)매직에코 사물인터넷 지원 시스템
TWI590172B (zh) * 2014-01-09 2017-07-01 全宏科技股份有限公司 授權伺服器、授權方法與電腦程式產品
KR20150119598A (ko) * 2014-04-16 2015-10-26 주식회사 에이에스티소프트 사물인터넷 보안시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101551148B1 (ko) 2015-04-22 2015-09-07 김만이 결제 이력 관리 방법 및 그의 시스템

Also Published As

Publication number Publication date
KR20170114990A (ko) 2017-10-16
WO2017176051A1 (ko) 2017-10-12

Similar Documents

Publication Publication Date Title
KR101801323B1 (ko) 모바일 기기를 이용하여 IoT 기기를 인증하는 방법 및 시스템
EP3271885B1 (en) Multi-device transaction verification
CN113507377B (zh) 用于使用基于交易特定信息的令牌和密码的交易处理的装置和方法
US20230410108A1 (en) Smart device system and method of use
RU2651245C2 (ru) Защищенный электронный блок для санкционирования транзакции
CN110169035B (zh) 具有协议特性的绑定密码
EP3234893B1 (en) Securing contactless payment performed by a mobile device
CN110447213B (zh) 用于中继攻击检测的方法和***
KR102593570B1 (ko) 릴레이 공격을 방어하기 위한 시스템 및 방법
EP2779069A1 (en) Method and system for managing a transaction
US20230122422A1 (en) Hands free interaction system and method
WO2022159345A1 (en) Mobile user authentication system and method
KR102107190B1 (ko) 인증 비콘을 이용하여 사용자 및 IoT 기기를 인증하는 방법 및 시스템
KR102347417B1 (ko) 상점 인증기를 포함하는 안전한 모바일 결제 방법 및 시스템
EP4142216A1 (en) Digital identity authentication system and method
CN105580039B (zh) 用于利用智能设备提供卡支付服务的***及方法
CN114981810B (zh) 通用非接触式内核***和方法
EP3853796A1 (en) A payment authentication device, a payment authentication system and a method of authenticating payment
KR20210011040A (ko) 상점 인증기를 포함하는 안전한 모바일 결제 방법 및 시스템
WO2023229571A1 (en) Secure and privacy preserving message routing system
CN115777190A (zh) 用于基于接近度的访问装置交互的具选择性去令牌化的令牌处理

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant