KR101505735B1 - 시간 검증을 이용한 엔에프씨카드 인증 방법 - Google Patents

시간 검증을 이용한 엔에프씨카드 인증 방법 Download PDF

Info

Publication number
KR101505735B1
KR101505735B1 KR1020130089942A KR20130089942A KR101505735B1 KR 101505735 B1 KR101505735 B1 KR 101505735B1 KR 1020130089942 A KR1020130089942 A KR 1020130089942A KR 20130089942 A KR20130089942 A KR 20130089942A KR 101505735 B1 KR101505735 B1 KR 101505735B1
Authority
KR
South Korea
Prior art keywords
otp
nfc card
value
new
recorded
Prior art date
Application number
KR1020130089942A
Other languages
English (en)
Other versions
KR20150014595A (ko
Inventor
김귀현
Original Assignee
(주)에이티솔루션즈
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)에이티솔루션즈 filed Critical (주)에이티솔루션즈
Priority to KR1020130089942A priority Critical patent/KR101505735B1/ko
Publication of KR20150014595A publication Critical patent/KR20150014595A/ko
Application granted granted Critical
Publication of KR101505735B1 publication Critical patent/KR101505735B1/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Landscapes

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

Abstract

본 발명은 시간 검증을 이용한 엔에프씨카드 인증 방법에 관한 것으로, 지정된 발급사에서 사용자에게 발급한 NFC카드를 인증하는 서버에 의해 실행되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 있어서, 사용자의 NFC카드에 기록된 고유번호와 상기 NFC카드의 카드번호와 상기 NFC카드에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드에 기록된 OTP의 기록 시간 값을 저장하고, 지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드의 카드번호를 수신하고, 상기 카드번호와 연계된 NFC카드의 고유번호를 확인하여 상기 사용자의 무선단말에 구비된 프로그램으로 전송되도록 처리하고, 상기 사용자의 무선단말에 구비된 프로그램으로부터 상기 고유번호에 대응하는 NFC카드에 기록된 OTP를 수신하고, 상기 기록 시간 값과 씨드 값을 이용하여 생성된 OTP’를 통해 상기 수신된 OTP의 유효성을 인증하고, 상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하고, 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드에 기록되도록 요청하며, 상기 신규 시간 값은, 상기 NFC카드에 상기 신규 OTP가 기록된 기록 시간 값으로 갱신 저장된다.

Description

시간 검증을 이용한 엔에프씨카드 인증 방법{Method for Authenticating Near Field Communication Card by using Time Verification}
본 발명은 지정된 발급사에서 사용자에게 발급한 NFC카드를 인증하는 서버에 의해 실행되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 있어서, 사용자의 NFC카드에 기록된 고유번호와 상기 NFC카드의 카드번호와 상기 NFC카드에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드에 기록된 OTP의 기록 시간 값을 저장하고, 지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드의 카드번호를 수신하고, 상기 카드번호와 연계된 NFC카드의 고유번호를 확인하여 상기 사용자의 무선단말에 구비된 프로그램으로 전송되도록 처리하고, 상기 사용자의 무선단말에 구비된 프로그램으로부터 상기 고유번호에 대응하는 NFC카드에 기록된 OTP를 수신하고, 상기 기록 시간 값과 씨드 값을 이용하여 생성된 OTP’를 통해 상기 수신된 OTP의 유효성을 인증하고, 상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하고, 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드에 기록되도록 요청하며, 상기 신규 시간 값은, 상기 NFC카드에 상기 신규 OTP가 기록된 기록 시간 값으로 갱신 저장되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 관한 것이다.
네트워크를 개입시켜 사용자에게 지정된 거래를 제공하거나 또는 지정된 인증 절차를 수행하기 위해서는 먼저 사용자를 인증하는 절차가 필수적으로 수반되는데, 통상적으로 상기 사용자를 인증하는 인증 값으로서 사용자가 입력한 입력 값(예컨대, ID와 PW 등)이 사용된다.
그러나 사용자가 입력하는 각종 입력 값은 사용자가 이용하는 단말에 설치된 각종 악성 코드 또는 네트워크를 통해 송수신되는 데이터에 대한 해킹을 통해 언제든 노출될 수 있다. 따라서 사용자가 인증 값으로 사용될 입력 값을 입력하지 않고도 사용자 인증이 처리되어야만 보다 안전하고 신뢰할만한 사용자 인증이 제공될 수 있을 것이나, 종래의 사용자 인증 절차는 사용자로 하여금 인증 값을 입력해야 하기 때문에 언제든 악성 코드 또는 해킹에 의해 인증 값이 노출될 수 있는 문제점을 지니고 있다.

한편 사용자를 인증하는 기술 중의 하나로서 IC카드의 내부에서 OTP(One Time Password)를 생성하여 카드 일 면의 디스플레이를 통해 표시하고 이를 단말기에 입력하는 카드형 OTP 서비스가 제공되고 있다. 이와 같은 카드형 OTP는 일회성 비밀번호를 생성하고, 사용자가 OTP카드를 소지하고 있어야만 인증할 수 있다는 점에서 종래의 ID/PW 입력을 이용한 키 입력 방식의 사용자 인증보다 안전하다고 알려져 있다.

그러나 종래 카드형 OTP는 카드 내부에 OTP를 생성하기 위한 시간 값을 유지하기 위해 박막 배터리를 필수적으로 내장해야 하기 때문에 영구적으로 사용하지 못하고 3~5년 정도밖에 사용할 수 없는 문제점을 지니고 있을 뿐만 아니라, 종래 키 입력 방식의 사용자 인증과 유사하게 카드에 표시된 OTP를 직접 단말기에 입력해야 하는 불편함을 내포하고 있다.

이에, 카드형 OTP에 박막 배터리를 내장하지 않고도 NFC(Near Field Communication)를 통해 단말기로부터 시간 값을 전달받음과 동시에 NFC를 통해 단말기로부터 NFC카드의 내부에서 OTP를 생성하기 위한 동작 전원을 공급받아 OTP를 생성하는 방식이 제안되었다(특허공개공보 제10-2013-0020204호(2013.02.27)).

그러나 스마트폰 등의 단말기에 NFC기능을 제공하는 NFC모듈이 구비된 위치가 제각기 다르며, 사용자가 본인의 단말기에 구비된 NFC모듈의 위치를 인지하고 NFC카드를 NFC모듈과 최대한 근접시키지 않을 경우 NFC카드와 단말기 사이의 데이터 송수신은 가능하더라도 NFC카드 내부에서 OTP 생성 알고리즘을 구동하여 OTP를 생성하는데 시간 지연이 발생할 수 있고, 경우에 따라 동작 전원 부족이나 시간 지연 등으로 인해 NFC카드 내부에서 정상적으로 OTP를 생성하지 못할 확률이 증가하는 문제점을 지니고 있다. 게다가 종래에 NFC카드 내부에서 OTP를 생성하기 위해서는 기 발급된 비접촉식 IC카드를 활용하지 못하고, 상기 OTP 생성 알고리즘을 내장한 신규 NFC카드를 발급해야 하기 때문에 NFC 기반 OTP 서비스의 확장을 지연시키는 문제점을 지니고 있다.
상기와 같은 문제점을 해소하기 위한 본 발명의 목적은, 지정된 발급사에서 사용자에게 발급한 NFC카드를 인증하는 서버에 의해 실행되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 있어서, 사용자의 NFC카드에 기록된 고유번호와 상기 NFC카드의 카드번호와 상기 NFC카드에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드에 기록된 OTP의 기록 시간 값을 저장하는 제1 단계와 지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드의 카드번호를 수신하는 제2 단계와 상기 카드번호와 연계된 NFC카드의 고유번호를 확인하여 상기 사용자의 무선단말에 구비된 프로그램으로 전송되도록 처리하는 제3 단계와 상기 사용자의 무선단말에 구비된 프로그램으로부터 상기 고유번호에 대응하는 NFC카드에 기록된 OTP를 수신하는 제4 단계와 상기 기록 시간 값과 씨드 값을 이용하여 생성된 OTP’를 통해 상기 수신된 OTP의 유효성을 인증하는 제5 단계와 상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하는 제6 단계 및 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드에 기록되도록 요청하는 제7 단계를 포함하며, 상기 신규 시간 값은, 상기 NFC카드에 상기 신규 OTP가 기록된 기록 시간 값으로 갱신 저장되는 시간 검증을 이용한 엔에프씨카드 인증 방법을 제공함에 있다.
본 발명에 따른 시간 검증을 이용한 엔에프씨카드 인증 방법은, 지정된 발급사에서 사용자에게 발급한 NFC카드를 인증하는 서버에 의해 실행되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 있어서, 사용자의 NFC카드에 기록된 고유번호와 상기 NFC카드의 카드번호와 상기 NFC카드에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드에 기록된 OTP의 기록 시간 값을 저장하는 제1 단계와 지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드의 카드번호를 수신하는 제2 단계와 상기 카드번호와 연계된 NFC카드의 고유번호를 확인하여 상기 사용자의 무선단말에 구비된 프로그램으로 전송되도록 처리하는 제3 단계와 상기 사용자의 무선단말에 구비된 프로그램으로부터 상기 고유번호에 대응하는 NFC카드에 기록된 OTP를 수신하는 제4 단계와 상기 기록 시간 값과 씨드 값을 이용하여 생성된 OTP’를 통해 상기 수신된 OTP의 유효성을 인증하는 제5 단계와 상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하는 제6 단계 및 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드에 기록되도록 요청하는 제7 단계를 포함하며, 상기 신규 시간 값은, 상기 NFC카드에 상기 신규 OTP가 기록된 기록 시간 값으로 갱신 저장되는 것을 특징으로 한다.
본 발명에 따르면, 상기 제1 단계는 상기 NFC카드에 대한 카운트 값을 초기화하는 단계를 더 포함할 수 있다. 한편 상기 제1 단계는 상기 기록 시간 값의 초기 값을 저장하는 단계를 더 포함할 수 있다.
본 발명에 따르면, 상기 무선단말에 구비된 프로그램은, 사용자 정보를 통해 상기 발급사의 서버로 사용자 인증을 요청하고, 상기 NFC카드의 고유번호가 수신된 경우, 상기 고유번호를 통해 상기 NFC카드에 기록된 고유번호가 인증되도록 처리하고, 상기 고유번호가 인증된 경우에 상기 NFC카드에 기록된 OTP를 획득하여 전송할 수 있다.
본 발명에 따르면, 상기 NFC카드에 대한 카운트 값을 저장하는 경우, 상기 제4 단계는, 상기 NFC카드에 기록된 카운트 값을 암호 키로 사용하여 암호화된 OTP를 수신하고, 상기 제5 단계는, 상기 저장된 카운트 값을 복호 키로 사용하여 상기 암호화된 OTP를 복호화하고, 상기 수신된 OTP의 유효성이 인증된 경우에 신규 카운트 값을 계산하여 저장하는 단계를 더 포함하여 이루어지는 것을 특징으로 한다.
본 발명에 따르면, 상기 수신된 OTP는, 상기 저장된 기록 시간 값이 초기 값인 경우 상기 NFC카드에 기록된 OTP의 초기 값을 포함하고, 상기 저장된 기록 시간 값이 초기 값이 아닌 경우 이전에 상기 결정된 시간 값을 통해 생성되어 NFC카드에 기록된 이전 OTP를 포함하여 이루어지는 것을 특징으로 한다.
본 발명에 따르면, 상기 제5 단계는 상기 저장된 기록 시간 값이 초기 값인 경우 상기 수신된 OTP의 유효성이 인증된 것으로 간주하거나 또는 상기 OTP의 초기 값에 대한 인증 절차를 수행하고, 상기 저장된 기록 시간 값이 초기 값이 아닌 경우 상기 기록 시간 값과 씨드 값을 통해 인증용 OTP’를 생성한 후 상기 수신된 OTP와 비교하여 유효성을 인증할 수 있다.
본 발명에 따르면, 상기 제5 단계는 상기 NFC카드에 대한 카운트 값을 저장하는 경우, 상기 저장된 카운트 값을 통해 상기 무선단말의 프로그램으로부터 수신된 카운트 값이 인증된 경우에 상기 신규 OTP를 생성할 수 있다.
본 발명에 따르면, 상기 신규 시간 값은, 상기 신규 OTP를 생성하는 시점의 현재 시간 값, 상기 신규 OTP를 생성하기 위한 임의 시간 값 중 적어도 하나의 시간 값을 포함할 수 있다.
본 발명에 따르면, 시간 검증을 이용한 엔에프씨카드 인증 방법은, 상기 신규 OTP가 상기 NFC카드에 기록된 경우에 상기 신규 시간 값을 상기 신규 OTP의 기록 시간 값으로 갱신하여 저장하는 제8 단계를 더 포함할 수 있다.
본 발명에 따르면, 상기 신규 OTP는 신규 계산된 카운트 값을 암호 키로 사용하는 암호 방식을 통해 암호화되어 NFC카드에 기록될 수 있다.
본 발명에 따르면, 사용자를 인증하기 위한 인증 값을 사용자가 직접 입력하지 않고도, 사용자가 지정된 발급사에서 발급한 NFC카드를 실제로 점유하고 있는지 인증하여 사용자를 인증함으로써 사용자의 입력 값에 접근하는 각종 악성 코드나 해킹과 무관하게 안전하고 신뢰할만한 사용자 인증을 제공하는 이점이 있다.
도 1은 본 발명의 실시 방법에 따른 시간 검증 기반 NFC카드 인증 시스템의 구성을 도시한 도면이다.
도 2는 본 발명의 무선단말과 프로그램의 기능 구성을 도시한 도면이다.
도 3은 본 발명의 실시 방법에 따른 정보 저장 과정을 도시한 도면이다.
도 4는 본 발명의 실시 방법에 따른 NFC카드 식별 과정을 도시한 도면이다.
도 5는 본 발명의 실시 방법에 따른 시간 검증 기반의 NFC카드 인증 과정을 도시한 도면이다.
도 6은 본 발명의 실시 방법에 따른 시간 검증을 위한 신규 OTP와 시간 값을 갱신하는 과정을 도시한 도면이다.
이하 첨부된 도면과 설명을 참조하여 본 발명의 바람직한 실시예에 대한 동작 원리를 상세히 설명한다. 다만, 하기에 도시되는 도면과 후술되는 설명은 본 발명의 특징을 효과적으로 설명하기 위한 여러 가지 방법 중에서 바람직한 실시 방법에 대한 것이며, 본 발명이 하기의 도면과 설명만으로 한정되는 것은 아니다.
또한, 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서, 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 발명에서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
결과적으로, 본 발명의 기술적 사상은 청구범위에 의해 결정되며, 이하 실시예는 진보적인 본 발명의 기술적 사상을 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 효율적으로 설명하기 위한 일 수단일 뿐이다.
도면1은 본 발명의 실시 방법에 따른 시간 검증 기반 NFC카드(250) 인증 시스템의 구성을 도시한 도면이다.
보다 상세하게 본 도면1은 사용자에게 발급된 NFC(Near Field Communication)카드에 지정된 시간에 생성된 OTP(One Time Password)를 저장하고, 사용자의 무선단말을 통해 NFC카드(250)가 인식되는 경우에 상기 NFC카드(250)에 기록된 OTP가 상기 지정된 시간에 생성되어 지정된 절차에 따라 유효하게 NFC카드(250)에 기록된 OTP인지 인증하여 사용자가 NFC카드(250)를 점유하고 있는지 인증하는 시스템의 구성을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면1을 참조 및/또는 변형하여 상기 시간 검증 기반 NFC카드(250) 인증 시스템의 구성에 대한 다양한 실시 방법(예컨대, 일부 구성부가 생략되거나, 또는 세분화되거나, 또는 합쳐진 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면1에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
본 발명의 실시 방법에 따른 시간 검증 기반 NFC카드(250) 인증 시스템은, 지정된 발급사에서 사용자에게 발급한 NFC카드(250)와 NFC 기반 인터페이스를 형성하고 지정된 절차에 따라 상기 NFC카드(250)에 기록된 OTP를 획득하여 전송하는 프로그램(215)이 구비된 사용자의 무선단말과, 지정된 절차에 따라 무선단말(200)의 프로그램(215)으로 상기 NFC카드(250)의 고유번호를 제공한 후 상기 무선단말(200)의 프로그램(215)이 사용자의 NFC카드(250)로부터 획득하여 전송하는 OTP를 수신하고 상기 수신된 OTP가 지정된 시간에 생성된 OTP인지 인증하여 상기 사용자가 상기 NFC카드(250)를 실제로 점유하고 있는지 인증하는 인증 서버(100)를 포함하여 이루어진다. 상기 인증 서버(100)는 시간 검증 기반 NFC카드(250) 인증을 처리하는 적어도 하나의 서버 또는 둘 이상의 서버 조합의 형태로 구현될 수 있으며, 이를 운영하는 기관이나 서버의 물리적인 명칭에 의해 한정되지 아니한다. 예를들어, 상기 인증 서버(100)는 사용자에게 NFC카드(250)를 발급한 발급사에서 운영하는 서버일 수 있으며, 본 도면1에 도시된 바와 같이 적어도 하나의 발급사 서버(165)와 제휴된 사업자의 서버일 수 있다.
상기 NFC카드(250)는 지정된 발급사에서 사용자에게 발급한 카드형 매체 중 NFC규격의 인터페이스를 형성 가능한 카드의 총칭으로서, 바람직하게 RF태그, RF카드(예컨대, 교통카드 등), 비접촉식 IC카드 중 적어도 하나를 포함할 수 있다. 상기 NFC카드(250)는 NFC규격의 인터페이스를 형성하기 위한 칩(255)(예컨대, RF칩(255), IC칩(255) 등)과 안테나(265)가 구비되며, 상기 칩(255)은 지정된 저장영역이 할당된 메모리(260)와 프로세서(또는 논리회로)를 구비한다.
본 발명에 따르면, 상기 NFC카드(250)의 메모리(260)는 지정된 저장영역에 해당 카드를 고유하게 식별하는 고유번호와 카드번호가 기록되며, 지정된 코드체계의 OTP가 기록되는 OTP 저장영역에 할당된다. 바람직하게, 상기 고유번호는 상기 메모리(260)의 저장영역 중 읽기전용 저장영역에 기록될 수 있으며, 상기 OTP 저장영역은 읽기/쓰기 저장영역에 할당될 수 있다.
본 발명의 실시 방법에 따르면, 상기 고유번호와 카드번호는 모두 NFC카드(250)의 메모리(260)에 기록된 번호이지만, 상기 고유번호는 사용자가 인지할 수 없는 번호인 반면, 상기 카드번호는 사용자가 인지할 수 있는 번호(예컨대, 카드의 겉면에 인자된 번호 등)이다. 바람직하게, 상기 고유번호는 상기 NFC카드(250)가 제조되는 시점에 기록된 번호를 포함하고, 상기 카드번호는 상기 NFC카드(250)가 발급되는 시점에 기록된 번호를 포함할 수 있다.
본 발명의 실시 방법에 따르면, 상기 NFC카드(250)의 메모리(260)는 카운트 값이 기록되는 카운트 저장영역이 할당될 수 있다. 상기 카운트 값은 상기 NFC카드(250)의 발급 시점에 ‘0’으로 초기화되며, 상기 NFC카드(250)의 메모리(260)에 신규 OTP가 기록될 때마다 ‘+1’씩 증가되는 것이 바람직하다. 지정된 조건(또는 인증 서버(100)로부터의 명령)에 의해 상기 카운트 값은 초기화될 수 있다.
상기 사용자의 무선단말은 사용자의 NFC카드(250)와 NFC 기반 인터페이스를 형성하고 상기 NFC카드(250)의 고유번호를 이용하여 상기 NFC카드(250)에 기록된 OTP를 획득하여 전송하는 프로그램(215)이 구비된 무선통신장치의 총칭으로서, 바람직하게 사용자가 소유(또는 소지)한 휴대폰, 스마트폰, 태블릿PC 중 적어도 하나를 포함할 수 있다.
도면1을 참조하면, 상기 인증 서버(100)는, 사용자의 NFC카드(250)에 기록된 고유번호와 상기 NFC카드(250)의 카드번호와 상기 NFC카드(250)에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드(250)에 기록된 OTP의 기록 시간 값을 저장하는 정보 저장부(105)를 구비한다.
지정된 발급사에서 사용자에게 NFC카드(250)를 발급하거나, 또는 지정된 발급사로부터 기 발급되어 사용자가 소유(또는 소지)하고 있는 NFC카드(250)를 무선단말을 통해 등록 요청하는 경우, 상기 정보 저장부(105)는 발급사 서버(165), 지정된 등록단말, 사용자의 무선단말 중 적어도 하나로부터 상기 NFC카드(250)의 지정된 저장영역에 고유하게 저장된 고유번호와 카드번호를 등록받아 지정된 저장매체(110)에 저장한다. 바람직하게, 상기 저장매체(110)는 상기 인증 서버(100) 내에 구비되거나, 또는 상기 인증 서버(100)에서 접근 가능한 보안장치(예컨대, DB서버, HSM(Hardware Security Module), TSM(Trusted Service Manager) 등)에 구비될 수 있다.
상기 정보 저장부(105)는 상기 NFC카드(250)에 기록될 OTP를 생성하기 위한 하나 이상의 씨드 값을 결정하고, 상기 결정된 씨드 값을 상기 고유번호 또는 카드번호와 매핑하여 상기 저장매체(110)에 저장한다. 상기 씨드 값은 상기 NFC카드(250)의 고유번호(또는 고유번호를 가공(예컨대, 해시)한 값), 카드번호(또는 카드번호를 가공한 값), 난수 값, 상기 고유번호 또는 카드번호가 등록된 시점의 시간 값, 상기 사용자의 무선단말(또는 프로그램(215))의 고유 식별 값 중 적어도 하나를 포함할 수 있다.
상기 정보 저장부(105)는 상기 NFC카드(250)에 기록된 OTP의 기록 시간 값을 결정하고, 상기 결정된 기록 시간 값을 상기 고유번호, 카드번호, 씨드 값 중 적어도 하나와 매핑하여 상기 저장매체(110)에 저장한다. 지정된 발급사에서 사용자에게 NFC카드(250)를 발급한 경우, 또는 상기 저장매체(110)에 상기 NFC카드(250)의 고유번호 또는 카드번호가 최초 등록되는 경우, 상기 정보 저장부(105)는 상기 기록 시간 값의 초기 값(예컨대, ‘0’)을 저장할 수 있다.
한편 상기 NFC카드(250)에 카운트 값을 저장하는 저장영역에 할당된 경우, 상기 정보 저장부(105)는 상기 카운트 값의 초기 값(예컨대, ‘0’)을 상기 고유번호, 카드번호, 씨드 값 중 적어도 하나와 매핑하여 상기 저장매체(110)에 저장할 수 있다.
도면1을 참조하면, 상기 인증 서버(100)는, 지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드(250)의 카드번호를 수신하는 번호 수신부(115)와, 상기 카드번호와 연계된 NFC카드(250)의 고유번호를 확인하여 상기 사용자의 무선단말(200)에 구비된 프로그램(215)으로 전송되도록 처리하는 번호 제공부(120)를 구비한다.
사용자가 자신이 이용하는 단말을 통해 지정된 인증요청 서버(170)(예컨대, 뱅킹서버, 쇼핑몰서버, 웹서버 등)에 접속하여 거래 또는 인증을 요청하는 경우, 상기 인증요청 서버(170)는 지정된 절차에 따라 사용자가 지정된 발급사에서 발급한 NFC카드(250)를 소유(또는 소지)하고 있는 유효한 사용자인지 인증 요청한다. 상기 인증 요청에 따라 상기 사용자의 무선단말(200)에 구비된 프로그램(215)은 활성화되고, 상기 NFC카드(250)를 발급받은 사용자를 고유 식별하는 사용자 정보를 입력받거나 또는 상기 무선단말의 지정된 메모리 영역으로부터 추출하여 상기 발급사 서버(165) 또는 인증요청 서버(170)로 전송한다. 본 발명의 실시 방법에 따르면, 상기 인증요청 서버(170)와 발급사 서버(165)는 동일 기관에서 운영하는 각각의 서버이거나 또는 동일 서버일 수 있으며, 실시 방법에 따라 다른 기관에서 운영하는 다른 서버일 수 있다.
상기 발급사 서버(165) 또는 인증요청 서버(170)는 상기 사용자 정보와 상기 사용자의 NFC카드(250)에 대한 카드번호를 저장하고 있으며, 상기 사용자 정보를 통한 사용자 인증 후에 상기 사용자의 NFC카드(250)에 대한 카드번호를 상기 인증 서버(100)로 전송하는데, 상기 번호 수신부(115)는 상기 발급사 서버(165) 또는 인증요청 서버(170)로부터 상기 사용자의 NFC카드(250)에 대한 카드번호를 수신한다.
본 발명의 다른 실시 방법에 따르면, 상기 카드번호는 사용자의 무선단말(200)에 구비된 프로그램(215)으로부터 인증 서버(100)로 전송될 수 있으며, 상기 번호 수신부(115)는 상기 무선단말(200)의 프로그램(215)으로부터 상기 카드번호를 수신할 수 있다.
상기 번호 제공부(120)는 상기 저장매체(110)로부터 상기 수신된 카드번호와 매핑된 고유번호를 확인하고, 상기 확인된 고유번호를 상기 사용자의 무선단말(200)에 구비된 프로그램(215)으로 전송한다. 상기 고유번호는 상기 무선단말(200)의 프로그램(215)으로 직접 전송되거나, 또는 상기 발급사 서버(165) 또는 인증요청 서버(170)를 경유하여 전송될 수 있다.
한편 상기 번호 제공부(120)는 상기 고유번호를 지정된 암호 방식에 따라 암호화하여 전송할 수 있다. 바람직하게, 상기 번호 제공부(120)는 상기 무선단말(200)의 프로그램(215)에서 상기 NFC카드(250)에 기록된 고유번호에 대한 인증 절차를 수행할 수 있도록 암호화하여 전송할 수 있다. 예컨대, 상기 번호 제공부(120)는 상기 고유번호를 상기 무선단말(200)의 프로그램(215)에서 복호화 가능하게 암호화하여 전송하거나, 또는 상기 NFC카드(250)의 내부에 구비된 암복호모듈(예컨대, 3DES 기반 암복호모듈)을 통해 복호화 가능하게 암호화하여 전송할 수 있다. 상기 무선단말(200)의 프로그램(215)은 상기 암호화된 고유번호를 복호화한 후 상기 NFC카드(250)의 암복호모듈에 부합하게 처리하여 상기 NFC카드(250)에 대한 고유번호 인증이 처리되도록 하거나, 또는 상기 NFC카드(250)의 암복호 방식에 부합하게 암호화된 고유번호를 통해 NFC카드(250)에 대한 고유번호 인증이 처리되도록 할 수 있다. 상기 고유번호에 대한 인증 절차는 상기 NFC카드(250)의 내부에서 이루어지는 것이 바람직하다.
도면1을 참조하면, 상기 인증 서버(100)는, 상기 사용자의 무선단말(200)에 구비된 프로그램(215)으로부터 상기 고유번호에 대응하는 NFC카드(250)에 기록된 OTP를 수신하는 정보 수신부(125)와, 상기 기록 시간 값을 이용하여 상기 수신된 OTP의 유효성을 인증하는 인증 처리부(130)와, 상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하는 OTP 생성부(135)와, 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드(250)에 기록되도록 요청하는 OTP 기록 요청부(150)와, 상기 신규 OTP가 상기 NFC카드(250)에 기록되는지 검증하는 OTP 기록 검증부(155)와, 상기 NFC카드(250)에 상기 신규 OTP가 기록된 경우에 상기 신규 시간 값을 상기 신규 OTP의 기록 시간 값으로 갱신하여 저장하는 정보 갱신부(140)를 구비하며, 상기 생성된 신규 OTP를 암호화하는 암호 처리부(145)와, 상기 NFC카드(250)의 점유 인증 결과가 지정된 거래 또는 인증에 이용되도록 처리하는 결과 처리부(160)를 구비한다
상기 무선단말(200)의 프로그램(215)은 사용자로 하여금 지정된 발급사로부터 발급된 NFC카드(250)를 태깅하도록 요청하며, 상기 태깅에 의해 형성된 NFC 기반 무선 인터페이스를 통해 상기 NFC카드(250)로 상기 고유번호를 전달함으로써, 상기 NFC카드(250)로 하여금 상기 고유번호를 인증하도록 요청한다. 바람직하게, 상기 NFC카드(250)로 전달되는 고유번호는 지정된 암호화 규칙(예컨대, 3DES)로 암호화되거나 또는 암호화된 상태이며, 상기 NFC카드(250)는 상기 암호화 규칙을 기반으로 상기 고유번호를 인증한다. 한편 상기 발급사 서버(165)를 이용한 고유번호 인증은 다른 인증 방식(예컨대, PIN 인증, 또는 프로그램(215)과 NFC카드(250) 사이의 세션 키 인증 등)으로 대체될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
상기 NFC카드(250)는 지정된 카드 인증 절차의 결과로서 메모리(260)의 지정된 저장영역에 기록된 OTP를 추출하여 상기 NFC 기반 무선 인터페이스를 통해 응답하며, 상기 무선단말(200)의 프로그램(215)은 상기 NFC카드(250)에 기록된 OTP를 획득한다. 이 때 상기 획득되는 OTP는 지정된 카운트 값을 암호 키로 사용하여 암호화된 OTP일 수 있으며, 이 경우 상기 OTP의 암호화는 해당 OTP가 생성되는 시점에 인증 서버(100)를 통해 암호화되거나, 또는 상기 OTP가 NFC카드(250)에 기록되는 시점에 카드 내부에서 암호화되어 기록될 수 있다. 한편 하기와 같이 NFC카드(250)에 카운트 값이 기록되는 경우에는 상기 OTP가 응답되는 시점에 카운트 값을 통해 암호화되어 응답될 수도 있다.
본 발명의 실시 방법에 따라 상기 NFC카드(250)의 메모리(260)에 카운트 값이 기록된 경우, 상기 NFC카드(250)는 상기 NFC 기반 무선 인터페이스를 통해 상기 NFC카드(250)의 메모리(260)에 기록된 카운트 값을 응답할 수 있다. 또는 상기 NFC카드(250)는 상기 카운트 값을 암호 키로 사용하여 상기 OTP를 암호화하여 응답할 수 있다.
상기 무선단말(200)의 프로그램(215)은 상기 NFC카드(250)에 기록된 OTP를 상기 인증 서버(100)로 전송한다. 바람직하게, 상기 인증 서버(100)로 전송되는 OTP는 지정된 암호 방식으로 암호화된 상태로 전송되는 것이 바람직하며, 상기 암호 방식은 상기 카운트 값을 암호 키로 사용하는 암호 방식을 포함한다.
본 발명의 실시 방법에 따라 상기 NFC카드(250)에 기록된 카운트 값이 확인된 경우, 상기 무선단말(200)의 프로그램(215)은 상기 OTP와 함께 상기 카운트 값을 상기 인증 서버(100)로 전송할 수 있으며, 상기 카운트 값이 암호 키로 사용된 경우 상기 카운트 값을 전송하지 않더라도 전송된 것으로 간주될 수 있다.
상기 정보 수신부(125)는 상기 사용자의 무선단말로 고유번호를 전송한 세션 값, 또는 지정된 식별 값을 기반으로 상기 OTP를 전송한 무선단말(200)의 프로그램(215)을 식별할 수 있다. 상기 지정된 식별 값으로서 상기 고유번호가 이용될 수 있으며, 이 경우 상기 무선단말(200)의 프로그램(215)은 상기 OTP와 함께 고유번호를 전송할 수 있다.
상기 정보 수신부(125)는 상기 무선단말(200)의 프로그램(215)으로부터 상기 NFC카드(250)에 기록된 OTP를 수신하며, 바람직하게 상기 OTP는 지정된 암호 방식으로 암호화된 상태로 수신될 수 있다. 예를들어, 상기 OTP는 카운트 값을 암호 키로 사용하여 암호화될 수 있다. 그러나 상기 OTP의 암호화 방식이 상기 카운트 값을 암호 키로 사용하는 방식으로 한정되는 것은 아니며, 상기 카운트 값 이외에 다른 키 값을 암호 키로 사용하여 암호화될 수 있다.
본 발명의 실시 방법에 따르면, 상기 정보 수신부(125)는 상기 카운트 값을 더 수신할 수 있다. 다만, 상기 카운트 값이 상기 OTP의 암호 키로 사용된 경우에는 상기 카운트 값을 수신하지 않아도 무방하다.
상기 무선단말(200)의 프로그램(215)으로부터 카운트 값이 수신된 경우, 상기 인증 처리부(130)는 상기 저장매체(110)로부터 상기 고유번호와 매핑 저장된 카운트 값을 확인하고, 상기 고유번호와 매핑 저장된 카운트 값과 상기 무선단말(200)의 프로그램(215)으로부터 수신된 카운트 값을 비교하여 매칭되는지 인증한다.
상기 인증 처리부(130)는 상기 저장매체(110)로부터 상기 고유번호와 매핑 저장된 기록 시간 값을 확인하고, 상기 기록 시간 값이 초기 값인지 확인한다.
만약 상기 고유번호와 매핑된 기록 시간 값이 초기 값이라면 상기 NFC카드(250)에 기록된 OTP는 상기 인증 서버(100)에 의해 생성되어 기록된 OTP가 아닐 것이므로, 상기 인증 처리부(130)는 상기 수신된 OTP의 유효성이 인증된 것으로 간주할 수 있으며, 이와 같은 OTP 인증 간주는 최초 1회에 한하여 유효하다. 만약 상기 고유번호가 등록되는 시점에 상기 NFC카드(250)에 기록된 OTP의 초기 값을 확인할 수 있다면, 상기 인증 처리부(130)는 상기 OTP의 초기 값과 상기 수신된 OTP를 비교하여 상기 OTP의 유효성을 인증할 수 있다.
만약 상기 고유번호화 매핑된 기록 시간 값이 초기 값이 아니라면, 상기 인증 처리부(130)는 상기 수신된 OTP에 대한 인증 절차를 수행한다.
본 발명의 실시 방법에 따라 상기 OTP가 카운트 값을 암호 키로 사용하여 암호화된 경우, 상기 인증 처리부(130)는 상기 고유번호와 매핑 저장된 카운트 값을 확인하고, 상기 카운트 값을 복호 키로 사용하여 상기 암호화된 OTP를 복호화한다. 상기 암호화된 OTP가 다른 키 값을 통해 암호화되었다면, 상기 인증 처리부(130)는 해당 키 값을 확인하여 상기 암호화된 OTP를 복호화할 수 있다.
상기 OTP가 확인되면, 상기 인증 처리부(130)는 상기 고유번호와 매핑된 씨드 값을 확인하고, 상기 기록 시간 값과 씨드 값을 지정된 OTP 생성 알고리즘(예컨대, MD4, MD5, SHA 등)에 대입하여 인증용 OTP’를 생성한 후, 상기 무선단말(200)의 프로그램(215)으로부터 수신된 OTP와 비교하여 유효성을 인증한다.
만약 상기 기록 시간 값을 이용하여 상기 OTP의 유효성이 인증되면, 상기 정보 갱신부(140)는 상기 신규 시간 값을 상기 신규 OTP의 기록 시간 값으로 갱신하여 저장매체(110)에 저장한다.
본 발명의 실시 방법에 따라 상기 기록 시간 값을 이용한 OTP의 유효성 인증에 상기 카운트 값이 이용된 경우, 상기 정보 갱신부(140)는 상기 NFC카드(250)에 대한 신규 카운트 값을 계산(예컨대, 카운트 값 +1)하고, 상기 계산된 신규 카운트 값을 상기 NFC카드(250)의 카운트 값으로 갱신하여 저장매체(110)에 저장할 수 있다.
상기 기록 시간 값을 이용하여 상기 무선단말(200)의 프로그램(215)으로부터 수신된 OTP의 유효성이 인증되면, 상기 OTP 생성부(135)는 신규 OTP를 생성하기 위한 신규 시간 값을 결정한다. 상기 신규 시간 값은 상기 신규 OTP를 생성하는 시점에 상기 인증 서버(100)의 타이머를 통해 확인된 현재 시간 값을 포함할 수 있다. 또는 상기 신규 시간 값은 상기 신규 OTP를 생성하기 위해 임의로 선택되는 임의 시간 값을 포함할 수 있다. 즉, 본 발명의 시간 값은 OTP의 유효성 인증을 위한 검증 값에 해당함으로 반드시 현재 시간일 필요는 없으며, 시계열적으로 수행되는 인증 절차 상에서 오직 인증 서버(100)만 인지할 수 있는 시간이라는 조건만 성립되면 된다.
상기 신규 시간 값이 결정되면, 상기 OTP 생성부(135)는 상기 씨드 값과 상기 결정된 신규 시간 값을 지정된 OTP 생성 알고리즘에 대입하여 신규 OTP를 생성하고, 상기 OTP 기록 요청부(150)는 상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송함으로써, 상기 무선단말(200)의 프로그램(215)으로 하여금 상기 신규 OTP를 상기 NFC카드(250)에 기록되도록 요청한다.
본 발명의 실시 방법에 따르면, 상기 암호 처리부(145)는 상기 생성된 신규 OTP를 지정된 암호 방식에 따라 암호화할 수 있으며, 바람직하게 상기 암호 처리부(145)는 신규 계산된 신규 카운트 값을 암호 키로 사용하여 상기 신규 OTP를 암호화할 수 있다. 이 경우 상기 OTP 기록 요청부(150)는 상기 암호화된 신규 OTP를 상기 사용자의 무선단말로 전송할 수 있다.
상기 무선단말(200)의 프로그램(215)은 상기 신규 OTP를 상기 NFC카드(250)의 지정된 저장영역에 기록하고, 그 결과를 응답하는데, 상기 OTP 기록 검증부(155)는 상기 무선단말(200)의 프로그램(215)으로부터 OTP 기록 결과를 수신 및 판독함으로써 상기 신규 OTP가 사용자의 NFC카드(250)에 유효하게 기록되었는지 검증한다.
만약 상기 사용자의 NFC카드(250)에 상기 신규 OTP가 기록된 것이 검증된 경우, 상기 기록 시간 값이 갱신되지 않았다면, 상기 정보 갱신부(140)는 상기 신규 시간 값을 상기 신규 OTP의 기록 시간 값으로 갱신하여 저장매체(110)에 저장할 수 있다. 또한 상기 OTP의 유효성 인증에 상기 카운트 값이 이용된 경우, 상기 신규 카운트 값이 갱신되지 않았다면, 상기 정보 갱신부(140)는 상기 NFC카드(250)에 대한 신규 카운트 값을 계산(예컨대, 카운트 값 +1)하고, 상기 계산된 신규 카운트 값을 상기 NFC카드(250)의 카운트 값으로 갱신하여 저장매체(110)에 저장할 수 있다.
상기 결과 처리부(160)는 상기 무선단말(200)의 프로그램(215)으로부터 수신된 OTP의 유효성이 인증된 후부터 상기 OTP의 기록 결과가 확인되기 전, 중, 후의 지정된 시점에, 상기 NFC카드(250)의 점유 인증 결과를 생성하여 인증요청 서버(170)로 제공함으로써, 상기 NFC카드(250)의 점유 인증 결과가 지정된 거래 또는 인증에 이용되도록 처리한다.
도면2는 본 발명의 무선단말과 프로그램(215)의 기능 구성을 도시한 도면이다.
보다 상세하게 본 도면2는 NFC카드(250)의 고유번호를 통해 사용자의 NFC에 기록된 OTP를 획득하여 인증 서버(100)로 제공하거나 또는 상기 인증 서버(100)에 의해 지정된 시간에 생성된 OTP를 사용자의 NFC카드(250)에 기록하는 절차를 수행하는 프로그램(215)의 기능적 구성과 이를 구비한 무선단말 구성을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면2를 참조 및/또는 변형하여 상기 무선단말 기능에 대한 다양한 실시 방법을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면2에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다. 바람직하게, 본 도면2의 무선단말은 각종 스마트폰, 태블릿PC, PDA 및 휴대폰 중 적어도 하나를 포함할 수 있다.
도면2를 참조하면, 상기 무선단말은, 제어부(201)와 메모리부(211)와 화면 출력부(202)와 키 입력부(203)와 사운드 출력부(204)와 사운드 입력부(205)와 무선망 통신부(208)와 근거리 무선 통신부(207)와 NFC모듈(210)과 USIM 리더부(209) 및 USIM를 구비하며, 전원 공급을 위한 배터리(206)를 구비한다.
상기 제어부(201)는 상기 무선단말의 동작을 제어하는 구성의 총칭으로서, 적어도 하나의 프로세서와 실행 메모리를 포함하여 구성되며, 상기 무선단말에 구비된 각 구성부와 버스(BUS)를 통해 연결된다. 본 발명에 따르면, 상기 제어부(201)는 상기 프로세서를 통해 상기 무선단말에 구비되는 적어도 하나의 프로그램코드를 상기 실행 메모리에 로딩하여 연산하고, 그 결과를 상기 버스를 통해 적어도 하나의 구성부로 전달하여 상기 무선단말의 동작을 제어한다. 이하, 편의상 본 발명의 프로그램(215) 기능 구성을 본 제어부(201) 내에 도시하여 설명하기로 한다.
상기 메모리부(211)는 상기 무선단말에 구비된 비휘발성 메모리의 총칭으로서, 상기 제어부(201)를 통해 실행되는 적어도 하나의 프로그램코드와, 상기 프로그램코드가 이용하는 적어도 하나의 데이터셋트를 저장하여 유지한다. 상기 메모리부(211)는 기본적으로 상기 무선단말의 운영체제에 대응하는 시스템프로그램코드와 시스템데이터셋트, 상기 무선단말의 무선 통신 연결을 처리하는 통신프로그램코드와 통신데이터셋트 및 적어도 하나의 응용프로그램코드와 응용데이터셋트를 저장하며, 본 발명의 프로그램(215)에 대응하는 프로그램코드와 데이터셋트도 상기 메모리부(211)에 저장된다.
상기 화면 출력부(202)는 상기 무선단말에 구비된 화면출력기(예컨대, LCD(Liquid Crystal Display) 등)와 이를 구동하는 구동 모듈로 구성되며, 상기 제어부(201)와 연동되어 상기 제어부(201)의 각종 연산 결과 중 화면 출력에 대응하는 연산 결과를 상기 화면출력 장치로 출력한다.
상기 키 입력부(203)는 상기 무선단말에 구비된 하나 이상의 사용자입력기(예컨대, 버튼, 키패드, 터치패드, 화면 출력부(202)와 연동하는 터치스크린 등)와 이를 구동하는 구동 모듈로 구성되며, 상기 제어부(201)와 연동되어 상기 제어부(201)의 각종 연산을 명령하는 명령을 입력하거나, 또는 상기 제어부(201)의 연산에 필요한 데이터를 입력한다.
상기 사운드 출력부(204)는 상기 무선단말에 구비된 스피커와 이를 구동하는 구동 모듈로 구성되며, 상기 제어부(201)와 연동되어 상기 제어부(201)의 각종 연산 결과 중 사운드 출력에 대응하는 연산 결과를 상기 스피커를 통해 출력한다. 상기 구동 모듈은 상기 스피커를 통해 출력할 사운드 데이터를 디코딩(Decoding)하여 사운드 신호로 변환한다.
상기 사운드 입력부(205)는 상기 무선단말에 구비된 마이크로폰과 이를 구동하는 구동 모듈로 구성되며, 상기 마이크로폰을 통해 입력되는 사운드 데이터를 상기 제어부(201)로 전달한다. 상기 구동 모듈은 상기 마이크로폰을 통해 입력되는 사운드 신호를 엔코딩(Encoding)하여 부호화한다.
상기 무선망 통신부(208)는 상기 무선단말을 기지국을 경유하는 무선 통신망에 접속시키는 통신 구성부의 총칭으로서, 특정 주파수 대역의 무선 주파수 신호를 송수신하는 안테나, RF모듈, 기저대역모듈, 신호처리모듈을 적어도 하나 포함하여 구성되며, 상기 제어부(201)와 연결되어 상기 제어부(201)의 각종 연산 결과 중 무선 통신에 대응하는 연산 결과를 무선 통신망을 통해 전송하거나 또는 무선 통신망을 통해 데이터를 수신하여 상기 제어부(201)로 전달함과 동시에, 상기 무선 통신의 접속, 등록, 통신, 핸드오프의 절차를 수행한다. 바람직하게, 상기 무선망 통신부(208)는 CDMA/WCDMA/LTE 규격에 따라 이동 통신망에 접속, 위치등록, 호처리, 통화연결, 데이터통신, 핸드오프를 적어도 하나 수행하는 이동 통신 구성을 포함한다.
상기 근거리 무선 통신부(207)는 일정 거리 이내(예컨대, 10m)에서 무선 주파수 신호를 통신매체로 이용하여 통신세션을 연결하고 이를 기반으로 상기 무선단말을 통신망에 접속시키는 통신 구성부의 총칭으로서, 바람직하게는 와이파이 통신, 블루투스 통신, 공중무선 통신, UWB 중 적어도 하나를 통해 상기 무선단말을 통신망에 접속시킬 수 있다.
상기 NFC모듈(210)은 근접 거리(예컨대, 10cm 내외)에서 무선 주파수 신호를 통신매체로 이용하여 양방향 근접 무선 통신, 전이중 근접 무선 통신, 반이중 근접 무선 통신 중 하나 이상의 근접 무선 통신을 처리하는 구성부의 총칭으로서, 바람직하게 13.56Mz 주파수 대역의 NFC(Near Field Communication) 규격에 따라 근접 무선 통신을 처리할 수 있다.
상기 USIM 리더부(209)는 ISO/IEC 7816 규격을 기반으로 상기 무선단말에 탑재 또는 이탈착되는 범용가입자식별모듈(Universal Subscriber Identity Module)과 적어도 하나의 데이터셋트를 교환하는 구성의 총칭으로서, 상기 데이터셋트는 APDU(Application Protocol Data Unit)를 통해 반이중 통신 방식으로 교환된다.
상기 USIM은 상기 ISO/IEC 7816 규격에 따른 IC칩이 구비된 SIM 타입의 카드로서, 상기 USIM 리더부(209)와 연결되는 적어도 하나의 접점을 포함하는 입출력 인터페이스와, 적어도 하나의 IC칩용 프로그램코드와 데이터셋트를 저장하는 IC칩 메모리와, 상기 입출력 인터페이스와 연결되어 상기 무선단말로부터 전달되는 적어도 하나의 명령에 따라 상기 IC칩용 프로그램코드를 연산하거나 상기 데이터셋트를 추출(또는 가공)하여 상기 입출력 인터페이스로 전달하는 프로세서를 포함하여 이루어진다.
본 발명의 프로그램(215)은 앱 제공 서버(예컨대, 애플사의 앱스토어 등)로부터 다운로드되고, 지정된 절차에 따라 상기 무선단말에 설치되며, 지정된 절차에 따라 구동되어 본 발명의 기능 구성을 구현한다.
도면2를 참조하면, 상기 무선단말(200)의 프로그램(215)은, 사용자의 NFC카드(250)에 대한 인증 절차를 수행하는 카드 인증부(220)와, 상기 카드 인증 절차의 결과로서 상기 NFC카드(250)의 지정된 저장영역에 저장된 OTP를 획득하는 OTP 획득부(225)와, 상기 획득된 OTP를 지정된 인증 서버(100)로 전송하는 OTP 전송부(230)를 구비한다.
상기 카드 인증부(220)는 상기 NFC카드(250)를 발급받은 사용자를 고유 식별하는 사용자 정보를 입력받거나 또는 상기 무선단말의 지정된 메모리 영역으로부터 추출하여 상기 발급사 서버(165) 또는 인증요청 서버(170)로 전송한 후, 상기 도면1의 인증 서버(100)로부터 전송된 NFC카드(250)의 고유번호를 수신한다. 실시 방법에 따라 상기 카드 인증부(220)는 상기 고유번호를 수신하기 위해 상기 NFC카드(250)의 카드번호를 발급사 서버(165), 인증요청 서버(170), 인증 서버(100) 중 적어도 하나의 서버로 전송할 수 있다.
상기 카드 인증부(220)는 사용자로 하여금 지정된 발급사로부터 발급된 NFC카드(250)를 태깅하도록 요청하며, 상기 태깅을 근거로 상기 NFC모듈(210)을 통해 형성된 NFC 기반 무선 인터페이스를 통해 상기 수신된 고유번호를 전달함으로써, 상기 NFC카드(250)로 하여금 상기 고유번호를 인증하도록 요청한다. 바람직하게, 상기 발급사로부터 수신된 고유번호는 지정된 암호화 규칙(예컨대, 3DES)로 암호화되어 있으며, 상기 NFC카드(250)는 상기 암호화 규칙을 기반으로 상기 고유번호를 인증한다. 한편 상기 발급사 서버(165)를 이용한 고유번호 인증은 다른 인증 방식(예컨대, PIN 인증, 또는 프로그램(215)과 NFC카드(250) 사이의 세션 키 인증 등)으로 대체될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다.
상기 NFC카드(250)는 지정된 카드 인증 절차의 결과로서 메모리(260)의 지정된 저장영역에 기록된 OTP를 추출하여 상기 NFC 기반 무선 인터페이스를 통해 응답하며, 상기 OTP 획득부(225)는 상기 NFC모듈(210)을 통해 상기 NFC카드(250)에 기록된 OTP를 획득한다. 바람직하게, 상기 OTP는 상기 NFC카드(250)에 기록된 카운트 값을 암호 키로 사용하여 암호화된 상태로 획득될 수 있다.
본 발명의 실시 방법에 따라 상기 NFC카드(250)의 메모리(260)에 카운트 값이 기록된 경우, 상기 NFC카드(250)는 상기 NFC 기반 무선 인터페이스를 통해 상기 NFC카드(250)의 메모리(260)에 기록된 카운트 값을 응답할 수 있으며, 상기 OTP 획득부(225)는 상기 NFC모듈(210)을 통해 상기 NFC카드(250)에 기록된 OTP와 함께 상기 카운트 값을 획득할 수 있다. 상기 OTP가 상기 카운트 값을 암호 키로 사용하여 암호화된 상태로 획득되는 경우, 상기 카운트 값은 획득되지 않아도 무방하다.
상기 OTP 전송부(230)는 상기 NFC카드(250)에 기록된 OTP를 상기 인증 서버(100)로 전송한다. 본 발명의 실시 방법에 따라 상기 NFC카드(250)에 기록된 카운트 값이 확인된 경우, 상기 OTP 전송부(230)는 상기 OTP와 함께 상기 카운트 값을 상기 인증 서버(100)로 전송할 수 있다. 만약 상기 NFC카드(250)에 기록된 OTP가 상기 카운트 값을 암호 키로 사용하여 암호화된 상태라면 상기 카운트 값을 전송하지 않아도 무방하다.
도면2를 참조하면, 상기 무선단말(200)의 프로그램(215)은, 상기 인증 서버(100)로부터 지정된 시간에 신규 생성된 신규 OTP를 수신하는 OTP 수신부(235)와, 상기 수신된 신규 OTP를 상기 NFC카드(250)의 지정된 저장영역에 기록하는 OTP 기록부(240)를 구비하며, 상기 신규 OTP를 상기 NFC카드(250)에 기록한 OTP 기록 결과를 생성하여 상기 인증 서버(100)로 전송하는 결과 전송부(245)를 구비한다.
상기 인증 서버(100)에서 신규 시간 값을 결정하여 신규 OTP를 생성하여 전송하면, 상기 OTP 수신부(235)는 상기 인증 서버(100)로부터 상기 신규 생성된 신규 OTP를 수신한다. 바람직하게, 상기 신규 OTP는 신규 계산된 신규 카운트 값을 암호 키로 사용하여 암호화된 상태로 수신될 수 있다. 실시 방법에 따라 상기 신규 OTP는 신규 카운트 값을 암호 키로 사용하는 암호 방식으로 암호화되지 않은 채로 수신될 수 있다.
상기 OTP 기록부(240)는 상기 NFC모듈(210)을 통해 상기 신규 OTP를 상기 NFC카드(250)의 메모리(260)에 구비된 지정된 저장영역에 기록한다. 상기 신규 OTP가 기록되는 경우, 상기 NFC카드(250)는 내부 카운트 값을 계산(예컨대, 카운트 값 +1)하여 저장할 수 있다.
만약 상기 신규 OTP가 신규 카운트 값을 암호 키로 사용하는 암호 방식으로 암호화되지 않은 경우, 상기 NFC카드(250)는 상기 신규 OTP를 상기 계산된 신규 카운트 값을 암호 키로 사용하여 지정된 저장영역에 기록할 수 있다. 또는 상기 신규 OTP를 응답하는 시점에 상기 신규 OTP를 상기 기록된 카운트 값을 통해 암호화하여 응답하는 경우, 상기 신규 OTP는 상기 카운트 값을 암호 키로 사용하는 방식으로 암호화되지 않고 저장될 수 있다.
상기 결과 전송부(245)는 상기 NFC모듈(210)을 통해 상기 NFC카드(250)로부터 수신되는 응답 신호를 판독하여 상기 NFC카드(250)의 메모리(260)에 구비된 지정된 저장영역에 신규 OTP가 기록되었는지 확인하고, 상기 신규 OTP를 상기 NFC카드(250)에 기록한 OTP 기록 결과를 생성하여 상기 인증 서버(100)로 전송한다.
도면3은 본 발명의 실시 방법에 따른 정보 저장 과정을 도시한 도면이다.
보다 상세하게 본 도면3은 사용자에게 발급된 NFC카드(250)에 지정된 시간에 생성된 OTP를 저장하고 이를 인증하기 위해 인증 서버(100)에 사용자의 NFC카드(250)에 기록된 고유번호와 NFC카드(250)의 카드번호와 상기 NFC카드(250)에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드(250)에 기록된 OTP의 기록 시간 값을 저장하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면3을 참조 및/또는 변형하여 상기 정보 저장 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면3에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
도면3을 참조하면, 발급사 서버(165)는 사용자에게 NFC카드(250)를 발급한 후 NFC카드(250)를 발급받은 사용자 정보와 사용자에게 발급된 NFC카드(250)의 카드번호를 매핑하여 저장하고(300), 상기 사용자에게 발급한 NFC카드(250)의 카드번호를 상기 인증 서버(100)로 등록 요청할 수 있다(305). 한편 실시 방법에 따라 상기 NFC카드(250)의 카드번호는 사용자의 무선단말을 통해 상기 인증 서버(100)로 등록 요청될 수 있다(310).
상기 인증 서버(100)는 상기 사용자의 NFC카드(250)에 기록된 고유번호와 카드번호를 확인하여 지정된 저장매체(110)에 저장한다(315). 상기 카드번호는 발급사 서버(165) 또는 사용자의 무선단말로부터 수신될 수 있다. 한편 상기 인증 서버(100)가 상기 NFC카드(250)의 공급사인 경우 상기 NFC카드(250)의 고유번호를 DB화하여 저장하고, 상기 수신된 카드번호와 매칭하여 상기 고유번호를 확인할 수 있다. 또는 상기 인증 서버(100)는 상기 NFC카드(250)를 발급한 발급사 서버(165)로부터 상기 NFC카드(250)의 고유번호를 수신하거나 또는 상기 NFC모듈(210)을 통해 등록 대상 NFC카드(250)를 인식한 사용자의 무선단말로부터 상기 NFC카드(250)의 고유번호를 수신할 수 있다.
상기 인증 서버(100)는 상기 NFC카드(250)에 기록될 OTP를 생성하기 위한 하나 이상의 씨드 값을 결정한 후(320), 상기 고유번호와 카드번호 중 적어도 하나의 번호와 씨드 값을 매핑하여 상기 저장매체(110)에 저장한다(325). 상기 인증 서버(100)는 상기 NFC카드(250)에 OTP가 기록된 기록 시간 값을 초기화하여 저장매체(110)에 저장하며(330), 실시 방법에 따라 상기 NFC카드(250)의 카운트 값을 초기화하여 저장매체(110)에 저장할 수 있다(330).
도면4는 본 발명의 실시 방법에 따른 NFC카드(250) 식별 과정을 도시한 도면이다.
보다 상세하게 본 도면4는 시간 검증 기반의 NFC카드(250) 인증에 이용될 사용자의 NFC카드(250)를 식별하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면4를 참조 및/또는 변형하여 상기 NFC카드(250) 식별 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면4에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다. 본 도면4의 실시 방법은 편의상 인증요청 서버(170)와 발급사 서버(165)를 별도의 서버로 도시하여 설명하지만, 이에 의해 본 발명이 한정되는 것은 결코 아니며, 상기 인증요청 서버(170)와 발급사 서버(165)는 동일 서버이어도 무방하다.
도면4를 참조하면, 인증요청 서버(170)는 사용자의 NFC카드(250)를 이용한 인증 여부를 결정하고, 그 결과를 기반으로 사용자의 무선단말로 사용자의 NFC카드(250)를 이용한 인증을 요청한다(400). 사용자의 무선단말은 상기 인증요청 서버(170)로부터 NFC카드(250)를 이용한 인증 요청을 확인하고(405), NFC카드(250)를 발급받은 사용자 정보를 획득하고(410), 상기 용자 정보를 발급사 서버(165)로 전송하여 사용자 인증을 요청한다(415).
상기 발급사 서버(165)는 상기 사용자 정보를 이용하여 지정된 인증 절차에 따라 사용자 인증을 처리한다(420). 만약 사용자가 인증되지 않으면, 상기 발급사 서버(165)는 무선단말로 사용자 인증 오류를 제공하고, 무선단말은 이를 수신하여 출력한다(425).
한편 상기 사용자 정보를 통해 사용자가 인증되면, 상기 발급사 서버(165)는 상기 발급사 서버(165)는 상기 사용자 정보와 매핑된 카드번호를 확인하고(430), 상기 인증 서버(100)로 상기 사용자에게 발급된 NFC카드(250)의 카드번호를 전송한다(435).
상기 인증 서버(100)는 상기 사용자의 NFC카드(250)에 대한 카드번호를 수신하고(440), 저장매체(110)로부터 상기 카드번호와 매핑된 고유번호를 확인한 후(445), 상기 고유번호를 암호화하여 사용자의 무선단말로 전송하고(450), 상기 사용자의 무선단말은 상기 사용자의 NFC카드(250)에 대한 고유번호를 수신한다(455). 상기 고유번호는 상기 인증 서버(100)에서 사용자의 무선단말로 직접 전송되거나, 또는 발급사 서버(165)를 경유하여 전송될 수 있으며, 이에 의해 본 발명이 한정되지 아니한다. 실시 방법에 따라 상기 무선단말(200)의 프로그램(215)은 상기 발급사 서버(165)와 통신 가능한 프로그램(215)과 상기 인증 서버(100)와 통신 가능한 프로그램(215)이 각기 구비될 수 있으며, 이 경우 각 프로그램(215)은 상호 연동 가능한 상태를 유지한다.
도면5는 본 발명의 실시 방법에 따른 시간 검증 기반의 NFC카드(250) 인증 과정을 도시한 도면이다.
보다 상세하게 본 도면5는 상기 도면3에 도시된 과정을 통해 등록된 NFC카드(250)가 상기 도면4에 도시된 과정을 통해 식별되어 사용자의 무선단말을 통해 인식되는 경우에 상기 NFC카드(250)에 기록된 OTP가 지정된 시간에 생성된 OTP인지 인증하여 사용자가 NFC카드(250)를 점유하고 있는지 인증하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면5를 참조 및/또는 변형하여 상기 NFC카드(250) 인증 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면5에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다. 이하 편의상, 본 도면5 내지 도면6의 실시 방법은 상기 NFC카드(250)에 기록된 OTP가 카운트 값을 암호 키로 사용하여 암호화되는 실시 방법을 기준으로 본 발명의 기술적 특징으로 설명하기로 한다. 그러나 본 발명의 실시 방법이 본 도면5에 도시된 실시 방법만으로 한정되는 것은 아니며, 도면1에 설명된 다양한 실시 방법이나 이를 변형하는 실시 방법까지 포함함을 명백하게 밝혀두는 바이다.
도면5를 참조하면, 상기 도면3에 도시된 과정을 통해 등록된 NFC카드(250)가 상기 도면4에 도시된 과정을 통해 식별되어 사용자의 NFC카드(250)에 대한 고유번호가 확인되면, 상기 무선단말(200)의 프로그램(215)은 태깅된 NFC카드(250)로 상기 고유번호를 제공하여 상기 NFC카드(250)의 지정된 OTP 저장영역에 기록된 OTP를 요청한다(500).
상기 NFC카드(250)는 상기 고유번호를 수신하여 유효성을 인증한다(505). 만약 상기 고유번호가 인증되지 않으면, 상기 NFC카드(250)는 고유번호 인증 오류를 응답하며, 상기 무선단말(200)의 프로그램(215)은 상기 고유번호 인증 오류를 출력한다(510). 한편 상기 고유번호가 인증되면, 상기 NFC카드(250)는 지정된 OTP 저장영역에 지정된 카운트 값을 암호 키로 사용하여 암호화 저장된 OTP를 추출하여 응답하며(515), 실시 방법에 따라 상기 NFC카드(250)에 기록된 카운트 값을 더 응답할 수 있다(515).
상기 무선단말(200)의 프로그램(215)은 태깅된 NFC카드(250)로부터 상기 카운트 값을 암호 키로 사용하여 암호화된 OTP를 획득하고(520), 실시 방법에 따라 상기 NFC카드(250)에 기록된 카운트 값을 더 획득할 수 있다(520). 상기 무선단말(200)의 프로그램(215)은 인증 서버(100)로 상기 암호화된 OTP를 전송하며(525), 실시 방법에 따라 상기 NFC카드(250)의 카운트 값을 더 전송할 수 있다(525).
상기 인증 서버(100)는 상기 사용자의 무선단말로부터 상기 사용자의 NFC카드(250)에 기록된 OTP(예컨대, 카운트 값을 암호 키로 사용하여 암호화된 OTP)를 수신하고(530), 실시 방법에 따라 상기 NFC카드(250)의 카운트 값을 더 수신할 수 있다(530).
상기 NFC카드(250)의 카운트 값이 수신된 경우, 상기 인증 서버(100)는 상기 무선단말로 제공된 고유번호와 매핑된 카운트 값을 확인하고, 상기 무선단말(200)의 프로그램(215)으로부터 수신된 카운트 값과 상기 확인된 카운트 값을 비교하여 매칭되는지 인증한다(535). 만약 상기 카운트 값이 인증되지 않으면, 상기 인증 서버(100)는 상기 무선단말로 상기 NFC카드(250)에 대한 인증 오류를 전송하며(560), 상기 무선단말은 상기 인증 오류를 수신하여 출력한다(565).
상기 인증 서버(100)는 상기 고유번호와 매핑된 기록 시간 값을 확인하여 유효한 시간 값을 포함하고 있는지, 또는 초기 값을 포함하고 있는지 확인한다(540). 만약 상기 기록 시간 값이 초기 값이라면, 상기 인증 서버(100)는 상기 OTP가 인증된 것으로 간주하고, 도면6에 도시된 과정을 수행할 수 있다.
만약 상기 확인된 기록 시간 값이 유효한 시간 값을 포함하고 있다면, 상기 인증 서버(100)는 카운트 값을 복호 키로 사용하여 상기 암호화된 OTP를 복호화한다(545). 만약 상기 암호화된 OTP가 유효하게 복호화되지 않으면, 상기 인증 서버(100)는 상기 무선단말로 상기 NFC카드(250)에 대한 인증 오류를 전송하며(560), 상기 무선단말은 상기 인증 오류를 수신하여 출력한다(565).
만약 상기 암호화된 OTP가 복호화되면, 상기 인증 서버(100)는 상기 고유번호와 매핑된 씨드 값과 기록 시간 값을 이용하여 상기 NFC카드(250)에 기록된 OTP의 유효성을 인증한다(550). 바람직하게, 상기 인증 서버(100)는 상기 고유번호와 매핑된 씨드 값을 확인하고, 상기 기록 시간 값과 씨드 값을 지정된 OTP 생성 알고리즘(예컨대, MD4, MD5, SHA 등)에 대입하여 인증용 OTP’를 생성한 후, 상기 무선단말(200)의 프로그램(215)으로부터 수신된 OTP와 비교하여 유효성을 인증할 수 있다.
만약 상기 기록 시간 값을 통해 상기 NFC카드(250)에 기록된 OTP의 유효성이 인증되지 않으면, 상기 인증 서버(100)는 상기 무선단말로 상기 NFC카드(250)에 대한 인증 오류를 전송하며(560), 상기 무선단말은 상기 인증 오류를 수신하여 출력한다(565). 반면 상기 NFC카드(250)에 기록된 OTP의 유효성이 인증되면, 상기 인증 서버(100)는 도면6에 도시된 과정을 수행할 수 있다.
도면6은 본 발명의 실시 방법에 따른 시간 검증을 위한 신규 OTP와 시간 값을 갱신하는 과정을 도시한 도면이다.
보다 상세하게 본 도면6은 상기 도면5에 도시된 과정을 통해 시간 검증을 기반으로 NFC카드(250)에 기록된 OTP가 인증된 경우에 상기 OTP를 생성하여 NFC카드(250)에 기록된 OTP를 갱신하여 저장함과 동시에, 상기 NFC카드(250)에 신규 OTP가 기록된 기록 시간 값을 갱신하여 저장하는 과정을 도시한 것으로서, 본 발명이 속한 기술분야에서 통상의 지식을 가진 자라면, 본 도면6을 참조 및/또는 변형하여 상기 신규 OTP와 시간 값 갱신 과정에 대한 다양한 실시 방법(예컨대, 일부 단계가 생략되거나, 또는 순서가 변경된 실시 방법)을 유추할 수 있을 것이나, 본 발명은 상기 유추되는 모든 실시 방법을 포함하여 이루어지며, 본 도면6에 도시된 실시 방법만으로 그 기술적 특징이 한정되지 아니한다.
도면6을 참조하면, 상기 도면5에 도시된 과정을 통해 시간 검증을 기반으로 NFC카드(250)에 기록된 OTP가 인증되면, 상기 인증 서버(100)는 신규 OTP를 생성하기 위한 신규 시간 값을 결정한다(600). 상기 신규 시간 값은 상기 신규 OTP를 생성하는 시점에 상기 인증 서버(100)의 타이머를 통해 확인된 현재 시간 값을 포함할 수 있다. 또는 상기 신규 시간 값은 상기 신규 OTP를 생성하기 위해 임의로 선택되는 임의 시간 값을 포함할 수 있다. 즉, 본 발명의 시간 값은 OTP의 유효성 인증을 위한 검증 값에 해당함으로 반드시 현재 시간일 필요는 없으며, 시계열적으로 수행되는 인증 절차 상에서 오직 인증 서버(100)만 인지할 수 있는 시간이라는 조건만 성립되면 된다.
상기 인증 서버(100)는 상기 고유번호와 매핑된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 상기 NFC카드(250)에 기록될 신규 OTP를 생성한다(605). 보 도면6의 실시 방법에 따르면, 상기 인증 서버(100)는 카운트 값을 계산(+1)하여 신규 카운트 값을 확인하고(610), 상기 신규 카운트 값을 암호 키로 사용하여 상기 NFC카드(250)에 기록될 신규 OTP를 암호화하여 상기 무선단말로 전송한다(615). 한편 상기 신규 OTP가 상기 카운트 값을 암호 키로 사용하여 암호화되더라도, 상기 암호화 절차가 무선단말(200)의 프로그램(215) 또는 NFC카드(250) 내부에서 수행된다면, 상기 인증 서버(100)에서 상기 카운트 값을 암호 키로 사용하여 암호화하는 과정은 생략 가능하다.
상기 무선단말(200)의 프로그램(215)은 상기 인증 서버(100)를 통해 지정된 시간에 신규로 생성된 신규 OTP(예컨대, 신규 카운트 값을 암호 키로 사용하여 암호화된 신규 OTP)를 수신하고(620), NFC를 통해 상기 사용자의 NFC카드(250)에 상기 신규 OTP를 기록하도록 요청한다(625).
상기 NFC카드(250)는 지정된 OTP 저장영역에 신규 OTP를 갱신하여 기록한다(630). 실시 방법에 따라 상기 NFC카드(250)는 상기 신규 OTP가 갱신됨을 근거로 카운트 값을 갱신하여 저장할 수 있다(635). 상기 NFC카드(250)는 상기 OTP 기록 결과를 응답하며(640), 상기 무선단말(200)의 프로그램(215)은 NFC를 통해 상기 OTP 기록 결과를 확인하고(645), 상기 NFC카드(250)에 대한 신규 OTP 기록 결과를 상기 인증 서버(100)로 전송한다(650).
상기 인증 서버(100)는 상기 도면5에 도시된 과정을 통해 NFC카드(250)에 기록된 OTP의 유효성이 인증된 후부터 상기 NFC카드(250)에 대한 OTP 기록 결과가 확인되기 전, 중, 후의 지정된 시점에, 상기 결정된 신규 시간 값을 NFC카드(250)에 신규 OTP가 기록된 기록 시간 값으로 갱신하여 지정된 저장매체(110)에 저장하고(660), 실시 방법에 따라 상기 계산된 신규 카운트 값을 갱신하여 저장매체(110)에 저장할 수 있다(665).
100 : 인증 서버 105 : 정보 저장부
110 : 저장매체 115 : 번호 수신부
120 : 번호 제공부 125 : 정보 수신부
130 : 인증 처리부 135 : OTP 생성부
140 : 정보 갱신부 145 : 암호 처리부
150 : OTP 기록 요청부 155 : OTP 기록 검증부
160 : 결과 처리부 165 : 발급사 서버
170 : 인증요청 서버 200 : 무선단말
210 : NFC모듈 250 : NFC카드

Claims (11)

  1. 지정된 발급사에서 사용자에게 발급한 NFC카드를 인증하는 서버에 의해 실행되는 시간 검증을 이용한 엔에프씨카드 인증 방법에 있어서,
    사용자의 NFC카드에 기록된 고유번호와 상기 NFC카드의 카드번호와 상기 NFC카드에 기록될 OTP를 생성하기 위한 씨드 값과 상기 NFC카드에 기록된 OTP의 기록 시간 값을 저장하는 제1 단계;
    지정된 통신 경로를 통해 상기 사용자에게 발급된 NFC카드의 카드번호를 수신하는 제2 단계;
    상기 카드번호와 연계된 NFC카드의 고유번호를 확인하여 상기 사용자의 무선단말에 구비된 프로그램으로 전송되도록 처리하는 제3 단계;
    상기 사용자의 무선단말에 구비된 프로그램으로부터 상기 고유번호에 대응하는 NFC카드에 기록된 OTP를 수신하는 제4 단계;
    상기 기록 시간 값과 씨드 값을 이용하여 생성된 OTP’를 통해 상기 수신된 OTP의 유효성을 인증하는 제5 단계;
    상기 OTP의 유효성이 인증된 경우에 신규 OTP를 생성하기 위한 신규 시간 값을 결정하고 상기 저장된 씨드 값과 상기 결정된 신규 시간 값을 이용하여 신규 OTP를 생성하는 제6 단계; 및
    상기 생성된 신규 OTP를 상기 사용자의 무선단말로 전송하여 상기 NFC카드에 기록되도록 요청하는 제7 단계;를 포함하며,
    상기 신규 시간 값은, 상기 NFC카드에 상기 신규 OTP가 기록된 기록 시간 값으로 갱신 저장되는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  2. 제 1항에 있어서, 상기 제1 단계는,
    상기 NFC카드에 대한 카운트 값을 초기화하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  3. 제 1항에 있어서, 상기 제1 단계는,
    상기 기록 시간 값의 초기 값을 저장하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  4. 제 1항에 있어서, 상기 무선단말에 구비된 프로그램은,
    사용자 정보를 통해 상기 발급사의 서버로 사용자 인증을 요청하고,
    상기 NFC카드의 고유번호가 수신된 경우, 상기 고유번호를 통해 상기 NFC카드에 기록된 고유번호가 인증되도록 처리하고,
    상기 고유번호가 인증된 경우에 상기 NFC카드에 기록된 OTP를 획득하여 전송하는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  5. 제 1항에 있어서,
    상기 NFC카드에 대한 카운트 값을 저장하는 경우,
    상기 제4 단계는, 상기 NFC카드에 기록된 카운트 값을 암호 키로 사용하여 암호화된 OTP를 수신하고,
    상기 제5 단계는, 상기 저장된 카운트 값을 복호 키로 사용하여 상기 암호화된 OTP를 복호화하고,
    상기 수신된 OTP의 유효성이 인증된 경우에 신규 카운트 값을 계산하여 저장하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  6. 제 1항에 있어서, 상기 수신된 OTP는,
    상기 저장된 기록 시간 값이 초기 값인 경우 상기 NFC카드에 기록된 OTP의 초기 값을 포함하고,
    상기 저장된 기록 시간 값이 초기 값이 아닌 경우 이전에 상기 결정된 시간 값을 통해 생성되어 NFC카드에 기록된 이전 OTP를 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  7. 제 1항에 있어서, 상기 제5 단계는,
    상기 저장된 기록 시간 값이 초기 값인 경우 상기 수신된 OTP의 유효성이 인증된 것으로 간주하거나 또는 상기 OTP의 초기 값에 대한 인증 절차를 수행하고,
    상기 저장된 기록 시간 값이 초기 값이 아닌 경우 상기 기록 시간 값과 씨드 값을 통해 인증용 OTP’를 생성한 후 상기 수신된 OTP와 비교하여 유효성을 인증하는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  8. 제 1항에 있어서, 상기 제5 단계는,
    상기 NFC카드에 대한 카운트 값을 저장하는 경우,
    상기 저장된 카운트 값을 통해 상기 무선단말의 프로그램으로부터 수신된 카운트 값이 인증된 경우에 상기 신규 OTP를 생성하는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  9. 제 1항에 있어서, 상기 신규 시간 값은,
    상기 신규 OTP를 생성하는 시점의 현재 시간 값, 상기 신규 OTP를 생성하기 위한 임의 시간 값 중 적어도 하나의 시간 값을 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  10. 제 1항에 있어서,
    상기 신규 OTP가 상기 NFC카드에 기록된 경우에 상기 신규 시간 값을 상기 신규 OTP의 기록 시간 값으로 갱신하여 저장하는 제8 단계를 더 포함하여 이루어지는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
  11. 제 1항에 있어서, 상기 신규 OTP는,
    신규 계산된 카운트 값을 암호 키로 사용하는 암호 방식을 통해 암호화되어 NFC카드에 기록되는 것을 특징으로 하는 시간 검증을 이용한 엔에프씨카드 인증 방법.
KR1020130089942A 2013-07-30 2013-07-30 시간 검증을 이용한 엔에프씨카드 인증 방법 KR101505735B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130089942A KR101505735B1 (ko) 2013-07-30 2013-07-30 시간 검증을 이용한 엔에프씨카드 인증 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130089942A KR101505735B1 (ko) 2013-07-30 2013-07-30 시간 검증을 이용한 엔에프씨카드 인증 방법

Publications (2)

Publication Number Publication Date
KR20150014595A KR20150014595A (ko) 2015-02-09
KR101505735B1 true KR101505735B1 (ko) 2015-03-25

Family

ID=52571444

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130089942A KR101505735B1 (ko) 2013-07-30 2013-07-30 시간 검증을 이용한 엔에프씨카드 인증 방법

Country Status (1)

Country Link
KR (1) KR101505735B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106529952B (zh) * 2015-09-09 2021-09-17 腾讯科技(深圳)有限公司 数据转移中的验证实现方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008299386A (ja) 2007-05-29 2008-12-11 Dainippon Printing Co Ltd ワンタイムパスワード認証システム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008299386A (ja) 2007-05-29 2008-12-11 Dainippon Printing Co Ltd ワンタイムパスワード認証システム

Also Published As

Publication number Publication date
KR20150014595A (ko) 2015-02-09

Similar Documents

Publication Publication Date Title
KR101505735B1 (ko) 시간 검증을 이용한 엔에프씨카드 인증 방법
KR101853970B1 (ko) 인증번호 중계 방법
KR101628615B1 (ko) 보안운영체제를 이용한 안심서명 제공 방법
KR20150004955A (ko) 유심과 서버 사이의 종단간 인증을 이용한 서버형 인증코드 제공 방법
KR102193696B1 (ko) 카드를 이용한 일회용코드 기반 안심 로그인 방법
KR20160124336A (ko) 보안운영체제를 이용한 전자서명 제공 방법
KR101628614B1 (ko) 보안운영체제를 이용한 전자서명 처리 방법
KR102076313B1 (ko) 무선단말의 유심기반 전자서명 처리 방법
KR102358598B1 (ko) 비접촉 매체를 이용한 2채널 인증 방법
KR20150101016A (ko) 엔에프씨 기반 종단 간 상호 인증을 이용한 거래수단 제어 방법
KR101542653B1 (ko) 엔에프씨를 이용한 시간 검증 기반 오티피 생성 방법
KR102149313B1 (ko) 유심기반 전자서명 처리 방법
KR102078319B1 (ko) 통신사의 유심기반 전자서명 처리 방법
KR101505734B1 (ko) 시간 검증 기반 엔에프씨카드 인증 방법
KR20150000081A (ko) 카드와 서버 사이의 종단간 인증을 이용한 일회용코드 제공 방법
KR20140139167A (ko) 사용자의 휴대형 매체를 이용한 매체 분리 기반 서버형 일회용코드 제공 방법
KR20170010341A (ko) 보안운영체제를 이용한 인증 처리 방법
KR20150023144A (ko) 유심을 이용한 전자서명 처리 방법
KR101513434B1 (ko) 키 입력 보호 방법과 이를 위한 키 보호 모듈
KR101777044B1 (ko) 비동기식 근거리 무선 통신 기반 오티피 카드
KR101777041B1 (ko) 비동기식 근거리 무선 통신 기반 오티피 구현 방법
KR102149315B1 (ko) 금융사의 유심기반 전자서명 처리 방법
KR101777042B1 (ko) 비동기식 근거리 무선 통신 기반 전자서명 카드
KR101866031B1 (ko) 보안운영체제를 이용한 서버형 오티피 제공 방법
KR20150107019A (ko) 엔에프씨 기반 종단 간 상호 인증을 이용한 인증서 제어 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180307

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190312

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200309

Year of fee payment: 6