KR20230000583A - Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법 - Google Patents

Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법 Download PDF

Info

Publication number
KR20230000583A
KR20230000583A KR1020210082857A KR20210082857A KR20230000583A KR 20230000583 A KR20230000583 A KR 20230000583A KR 1020210082857 A KR1020210082857 A KR 1020210082857A KR 20210082857 A KR20210082857 A KR 20210082857A KR 20230000583 A KR20230000583 A KR 20230000583A
Authority
KR
South Korea
Prior art keywords
otp
puf
authentication value
server
user terminal
Prior art date
Application number
KR1020210082857A
Other languages
English (en)
Other versions
KR102547682B1 (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 KR1020210082857A priority Critical patent/KR102547682B1/ko
Publication of KR20230000583A publication Critical patent/KR20230000583A/ko
Application granted granted Critical
Publication of KR102547682B1 publication Critical patent/KR102547682B1/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/3236Cryptographic 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 cryptographic hash functions
    • H04L9/3242Cryptographic 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 cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • H04L9/3278Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response using physically unclonable functions [PUF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

일 실시 예에 따른 PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 동작 방법에 있어서, 사용자 단말을 통한 인증 요청에 따라 PG(Payment Gateway) 서버로부터 결제 정보를 수신하고, 결제 정보 및 PUF OTP 인증서를 사용자 단말로 전송하는 동작; 사용자 단말로부터 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신 및 복호화하는 동작 - 제1 OTP 인증값은 사용자 단말에 포함된 PUF OTP 애플릿(applet)에서 생성되고 PUF OTP 인증서로 암호화되며, 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 사용자 단말에 디스플레이됨 -; 제2 OTP 인증값을 생성하고, 복호화된 제1 OTP 인증값과 제2 OTP 인증값이 대응하는지 검증하는 동작; 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 검증 결과를 PG 서버를 통해 사용자 단말로 전송하는 동작 -제2 사용자 확인용 인증값은 상기 사용자 단말에 디스플레이됨 -;을 포함하고, PG 서버는 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 대응된다는 사용자 입력에 기초하여 인증을 완료할 수 있다.

Description

PUF기반 OTP를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법{SERVER FOR SUPPORTING USER IDENTIFICATION USING PHYSICALLY UNCLONABLE FUNCTION BASED ONETIME PASSWORD AND OPERATING METHOD THEREOF}
아래의 실시예들은 사용자 인증을 지원하는 서버 및 그 동작 방법에 관한 것으로, 보다 구체적으로는 PUF(physically unclonable function) 기반 OTP(one time password)를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법에 관한 것이다.
OTP(One Time Password)는 일회용 패스워드로써 여러 방면에 안전한 인증 방법으로 활용되고 있다. 특히 국내의 경우 안전한 전자금융 거래를 위해 거래 시 사용자의 신원을 확인하기 위한 추가 인증 요소로 활용된다.
피싱(phishing), 파밍(pharming) 등 전자 금융 거래에 대한 위협이 다양해지고 있으며, OTP는 기본적으로 단방향 함수인 해쉬 함수의 이점을 이용하여 랜덤한 값을 생성함으로써 이러한 위협에 대처한다. 다만 OTP 값을 생성하는 과정에서 소프트웨어적인 방법만 활용하기 때문에, 동일한 입력 정보만 입력한다면 같은 OTP 값을 생성할 수 있고, 공격자가 특정 목표를 대상으로 하여 개인 정보를 수집한다면 동일한 OTP 값을 생성할 수 있다.
PUF(physically unclonable function) 기술은 물리적 복제 방지 기술로, 하드웨어적 특성을 이용하여 소프트웨어 기반 보안 방식의 구조적 한계를 극복할 수 있는 기술이다.
관련 선행기술로, 한국 등록특허공보 10-1525888호(발명의 명칭: Puf를 이용한 otp 발생 기기 및 방법, 출원인: 숭실대학교 산학협력단)가 있다. 해당 등록특허공보에는 전자 금융 거래 시스템에서 사용자에 대한 인증을 하기 위한 OTP발생기가 개시된다.
일 실시 예에 따르면, PUF 기반의 OTP를 이용한 사용자 인증 과정에서, SMS 인증시 스미싱의 위험이 존재할 수 있다.
다른 실시 예에 따르면, PUF 기반 OTP 인증값의 검증 과정에서 PUF OTP 서버는 사용자 단말의 USIM 칩 내 PUF 칩으로부터 HMAC(Hash-based Message Authentication Code) key를 수신하여야 한다.
다만, 기술적 과제는 상술한 기술적 과제들로 한정되는 것은 아니며, 또 다른 기술적 과제들이 존재할 수 있다.
일 실시 예에 따르면, PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 동작 방법은, 사용자 단말을 통한 인증 요청에 따라 PG(Payment Gateway) 서버로부터 결제 정보를 수신하고, 상기 결제 정보 및 PUF OTP 인증서를 상기 사용자 단말로 전송하는 동작; 상기 사용자 단말로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신 및 복호화하는 동작 - 상기 제1 OTP 인증값은 상기 사용자 단말에 포함된 PUF OTP 애플릿(applet)에서 생성되고 상기 PUF OTP 인증서로 암호화되며, 상기 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이됨 -; 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작; 상기 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 상기 검증 결과를 상기 PG 서버를 통해 상기 사용자 단말로 전송하는 동작 - 상기 제2 사용자 확인용 인증값은 상기 사용자 단말에 디스플레이됨 -;을 포함하고, 상기 PG 서버는 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응된다는 사용자 입력에 기초하여 인증을 완료할 수 있다.
일 실시 예에 따르면, 상기 제1 OTP 인증값 및 상기 제2 OTP 인증값은 상기 PUF OTP 애플릿 및 상기 PUF OTP 서버에 의해 사전 정의된 HMAC(Hash-based Message Authentication Code) key 생성 알고리즘 및 HMAC 알고리즘에 기초하여 생성될 수 있다.
일 실시 예에 따르면, 상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM(Universal Subscriber Identify Module)이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고, 상기 PUF OTP 애플릿은, 상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호(serial number)에 기초하여 제1 HMAC key를 생성하고, 상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장할 수 있다.
일 실시 예에 따르면, 상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 사용자 단말로 상기 결제 정보 및 상기 PUF OTP 인증서가 전송되면, 상기 PUF OTP 애플릿은, 상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응되는 경우, 상기 저장된 HMAC 알고리즘, 상기 결제 정보 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송할 수 있다.
일 실시 예에 따르면, 상기 PUF OTP 서버가 상기 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작은, 상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제2 HMAC key를 생성하는 동작; 상기 HMAC 알고리즘, 상기 결제 정보 및 상기 제2 HMAC key에 기초하여 상기 제2 OTP 인증값을 생성하는 동작; 및 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 결제 정보 및 상기 PUF OTP 인증서는 심툴킷 메시지(SIM Toolkit message)를 통해 상기 PUF OTP 서버로부터 상기 사용자 단말로 전송되고, 상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값은 심툴킷 메시지(SIM Toolkit message)를 통해 상기 사용자 단말로부터 상기 PUF OTP 서버로 전송될 수 있다.
일 실시 예에 따르면, 상기 결제 정보는, 거래번호, 상품명 및 거래금액 중 적어도 어느 하나를 포함할 수 있다.
일 실시 예에 따르면, PUF(Physical Unclonable Function) OTP(One Time Password) 서버에 있어서, 사용자 단말을 통한 인증 요청에 따라 PG(Payment Gateway) 서버로부터 결제 정보를 수신하고, 상기 결제 정보 및 PUF OTP 인증서를 상기 사용자 단말로 전송하고, 상기 사용자 단말로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신하고, 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 상기 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지에 대한 검증 결과를 상기 PG 서버를 통해 상기 사용자 단말로 전송하기 위한 통신 인터페이스; 컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리; 및 상기 메모리에 억세스(access)하여 상기 명령어들을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값을 복호화하고, 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하고, 상기 제1 OTP 인증값은 상기 사용자 단말에 포함된 PUF OTP 애플릿(applet)에서 생성되고 상기 PUF OTP 인증서로 암호화되며, 상기 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이되고, 상기 제2 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이되며, 상기 PG 서버는 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응한다는 사용자 입력에 기초하여 인증을 완료할 수 있다.
일 실시 예에 따르면, 상기 제1 OTP 인증값 및 상기 제2 OTP 인증값은 상기 PUF OTP 애플릿 및 상기 PUF OTP 서버에 의해 사전 정의된 HMAC(Hash-based Message Authentication Code) key 생성 알고리즘 및 HMAC 알고리즘에 기초하여 생성될 수 있다.
일 실시 예에 따르면, 상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM(Universal Subscriber Identify Module)이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고, 상기 PUF OTP 애플릿은, 상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호(serial number)에 기초하여 제1 HMAC key를 생성하고, 상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장할 수 있다.
일 실시 예에 따르면, 상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 사용자 단말로 상기 결제 정보 및 상기 PUF OTP 인증서가 전송되면, 상기 PUF OTP 애플릿은, 상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응하는 경우, 상기 저장된 HMAC 알고리즘, 상기 결제 정보 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송할 수 있다.
일 실시 예에 따르면, 상기 프로세서는, 상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제2 HMAC key를 생성하고, 상기 HMAC 알고리즘, 상기 결제 정보 및 상기 제2 HMAC key에 기초하여 상기 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증할 수 있다.
일 실시 예에 따르면, 상기 결제 정보 및 상기 PUF OTP 인증서는 심툴킷 메시지(SIM Toolkit message)를 통해 상기 PUF OTP 서버로부터 상기 사용자 단말로 전송되고, 상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값은 심툴킷 메시지(SIM Toolkit message)를 통해 상기 사용자 단말로부터 상기 PUF OTP 서버로 전송될 수 있다.
일 실시 예에 따르면, 상기 결제 정보는, 거래번호, 상품명 및 거래금액 중 적어도 어느 하나를 포함할 수 있다.
일 실시 예에 따르면, PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 OTP 인증값 검증 방법에 있어서, 사용자 단말로부터의 인증 요청에 따라 PUF OTP 인증서를 상기 사용자 단말의 PUF OTP 애플릿(applet)으로 전송하는 동작; 상기 PUF OTP 애플릿으로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신 및 복호화하는 동작; HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM(Universal Subscriber Identify Module) 고유번호(serial number)에 기초하여 제2 HMAC key를 생성하는 동작; HMAC 알고리즘 및 상기 제2 HMAC key에 기초하여 제2 OTP 인증값을 생성하는 동작; 및 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작을 포함할 수 있다.
일 실시 예에 따르면, 상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고, 상기 PUF OTP 애플릿은, 상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제1 HMAC key를 생성하고, 상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장할 수 있다.
일 실시 예에 따르면, 상기 PUF OTP 애플릿은, 상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 PUF OTP 인증서가 수신되면, 상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응하는 경우, 상기 저장된 HMAC 알고리즘 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송할 수 있다.
일 실시 예에 따르면, 사용자 단말에 있어서, PUF(Physical Unclonable Function) OTP(One Time Password) 서버 및 PG(Payment Gateway) 서버와 통신하기 위한 통신 인터페이스; 제1 사용자 확인용 인증값 및 제2 사용자 확인용 인증값을 디스플레이하기 위한 디스플레이 모듈; 컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리; 및 상기 메모리에 억세스(access)하여 상기 명령어들을 실행하는 프로세서를 포함하고, 상기 프로세서는 PG(Payment Gateway) 서버로 인증을 요청함에 따라 상기 PUF OTP 서버로부터 결제 정보 및 PUF OTP 인증서를 수신하고, 제1 OTP 인증값을 생성하여 상기 PUF OTP 인증서로 암호화하고, 상기 제1 OTP 인증값 중 상기 제1 사용자 확인용 인증값을 디스플레이하고, 상기 암호화된 제1 OTP 인증값을 상기 PUF OTP 서버로 전송하고, 상기 PUF OTP 서버가 생성한 제2 OTP 인증값 중 상기 제2 사용자 확인용 인증값을 상기 PG 서버로부터 수신하여 디스플레이하고, 상기 PG 서버로 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응한다는 사용자 입력을 전송할 수 있다.
다양한 실시 예들에 따른 PUF OTP 서버는 사용자 단말의 소액결제 인증 과정에서 SMS(short message service) 인증 방법이 아닌 사용자 단말 USIM 내 PUF 칩을 통한 OTP 인증 방법을 제공할 수 있다.
다양한 실시 예들에 따른 PUF OTP 서버는 심툴킷(SIM Toolkit) 메시지를 통해 OTP 값이 소액 결제 웹페이지 상에 입력되게 하여 스미싱(SMS phishing) 위험이 없는 인증 방법을 제공할 수 있다.
다양한 실시 예들에 따른 PUF OTP 서버는 USIM 고유번호에 기초하여 OTP 값을 생성함으로써 사용자에 고유한 HMAC(Hash-based Message Authentication Code) key를 생성하는 방법을 제공할 수 있다.
다양한 실시 예들에 따른 PUF OTP 서버는 사용자 단말과의 HMAC key 공유 없이 OTP 값을 검증하는 방법을 제공할 수 있다.
도 1은 다양한 실시 예들에 따른 결제 인증을 위한 PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 구성도이다.
도 2는 다양한 실시 예들에 따른 PUF(Physical Unclonable Function) OTP(One Time Password)에 기초한 인증을 위한 사용자 단말의 구성도이다.
도 3는 다양한 실시 예들에 따른 PUF OTP에 기초한 결제 인증이 수행되는 흐름을 설명하기 위한 흐름도이다.
도 4는 다양한 실시 예들에 따른 PUF OTP에 기초한 결제 인증 과정에서 사용자 단말에 디스플레이되는 화면을 설명하기 위한 도면이다.
도 5는 다양한 실시 예들에 따른 PUF OTP 인증값을 검증하는 동작을 설명하기 위한 도면이다.
도 6은 다양한 실시 예들에 따른 PUF OTP 서버의 동작 방법을 설명하기 위한 흐름도이다.
도 7은 다양한 실시 예들에 따른 PUF OTP 서버의 PUF OTP 인증값 검증 방법을 설명하기 위한 흐름도이다.
실시예들에 대한 특정한 구조적 또는 기능적 설명들은 단지 예시를 위한 목적으로 개시된 것으로서, 다양한 형태로 변경되어 구현될 수 있다. 따라서, 실제 구현되는 형태는 개시된 특정 실시예로만 한정되는 것이 아니며, 본 명세서의 범위는 실시예들로 설명한 기술적 사상에 포함되는 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 해석되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 설명된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 실시예들을 첨부된 도면들을 참조하여 상세하게 설명한다. 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고, 이에 대한 중복되는 설명은 생략하기로 한다.
<PUF OTP 서버>
도 1은 다양한 실시 예들에 따른 결제 인증을 위한 PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 구성도이다.
도 1을 참조하면, PUF 기반 OTP를 이용하여 결제 시 사용자 인증을 지원하는 PUF OTP 서버가 도시된다. 일 실시 예에 따르면, PUF OTP 서버(100)는 사용자 단말(200) 및 PG(Payment Gateway) 서버(300)와의 통신을 위한 통신 인터페이스(110), PUF 기반 OTP를 이용한 인증을 지원하기 위한 컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리(130) 및 메모리(130)에 억세스(access)하여 저장된 명령어들를 실행하는 프로세서(120)를 포함할 수 있다.
일 실시 예에 따르면, USIM 칩 내 PUF 칩으로 구현되고, PUF 기반 OTP 값을 생성하기 위한 PUF OTP 애플릿(applet)(250)이 사용자 단말(200)에 포함될 수 있다. PUF OTP 애플릿(250) 및 사용자 단말(200)에 대해서는 도 2에서 상세히 설명한다.
일 실시 예에 따르면, PG 서버(300)는 결제를 수행하는 서버로, 사용자는 소액 결제를 위한 사용자 인증을 위해 사용자 단말(200)을 통해 PG 서버(300)로 인증을 요청할 수 있다.
일 실시 예에 따르면, PUF OTP 서버(100)는 통신 인터페이스(110)를 통해 PG 서버(300)로부터 결제 정보를 수신하고, 결제 정보 및 PUF OTP 인증서를 사용자 단말(200)로 전송할 수 있다. 일 실시 예에 따르면, PUF OTP 인증서는 PUF OTP 인증값을 암호화 및 복호화하기 위한 것으로, PUF OTP 서버(100)에 저장되어 있을 수 있다. 일 실시 예에 따르면, 결제정보에는 거래번호, 상품명 및 거래금액 중 적어도 어느 하나가 포함될 수 있다.
일 실시 예에 따르면, PG 서버(300)와 PUF OTP 서버(100)는 결제 서버(미도시)를 통해 정보를 전송할 수 있다. 예를 들어, PG 서버(300)는 결제 정보를 결제 서버로 전송하고, 결제 서버가 수신한 결제 정보를 PUF OTP 서버(100)로 전송할 수 있다.
일 실시 예에 따르면, PUF OTP 서버(100)는 사용자 단말(200)과 심툴킷(SIM Toolkit) 서버(미도시)를 통해 심툴킷 메시지로 정보를 송수신할 수 있다. 예를 들어 PUF OTP 서버(100)는 사용자 단말(200)로 결제 정보 및 PUF OTP 인증서를 전송할 때 심툴킷 메시지에 포함시켜 전송할 수 있고, 사용자 단말(200)은 PUF OTP 서버(100)로 암호화된 제1 OTP 인증값을 전송할 때 심툴킷 메시지에 포함시켜 전송할 수 있다. 심툴킷 메시지는 사용자 단말의 메시지함에 남지 않고 바로 PUF OTP 애플릿(250)으로 전송되므로, 스미싱의 위험이 줄어들 수 있다.
일 실시 예에 따르면, 제1 OTP 인증값은 사용자 단말(200)에 포함된 PUF OTP 애플릿(250)에서 생성되고 PUF OTP 인증서로 암호화되며, 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 사용자 단말(200)에 디스플레이될 수 있다.
일 실시 예에 따르면, PUF OTP 서버(100)는 통신 인터페이스(110)를 통해 사용자 단말(200)로부터 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신하고, 프로세서(120)는 PUF OTP 인증서로 제1 OTP 인증값을 복호화할 수 있다.
일 실시 예에 따르면, 프로세서(120)는 제2 OTP 인증값을 생성하고, 복호화한 제1 OTP 인증값과 비교하여 제1 OTP 인증값이 제2 OTP 인증값에 대응하는지 검증할 수 있다. OTP 인증값을 생성하는 방법 및 OTP 인증값을 검증하는 방법은 도 5에서 상세히 설명한다.
일 실시 예에 따르면, PUF OTP 서버(100)는 통신 인터페이스(110)를 통해 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 제1 OTP 인증값과 제2 OTP 인증값이 대응하는지에 대한 검증 결과를 PG 서버(300)로 전송할 수 있다. 이 때 전술한 바와 같이 결제 서버(미도시)를 통해 PG 서버(300)로 전송할 수 있고, 제2 사용자 확인용 인증값이 PG 인증서로 암호화되어 전송될 수 있다.
일 실시 예에 따르면, PG 서버(300)는 PG 인증서로 제2 사용자 확인용 인증값을 복호화한 후 사용자 단말(200)로 전송하고, 제2 사용자 확인용 인증값이 사용자 단말(200)에 디스플레이될 수 있다.
일 실시 예에 따르면, PG 서버(300)는 사용자 단말(200)을 통해 디스플레이된 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 대응한다는 사용자 입력을 수신하면 인증을 완료할 수 있다. 예를 들어, PG 서버(300)는 사용자 단말(200)로부터 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 동일하다는 사용자 입력을 수신하면 인증을 완료할 수 있다.
<사용자 단말>
도 2는 다양한 실시 예들에 따른 PUF(Physical Unclonable Function) OTP(One Time Password)에 기초한 인증을 위한 사용자 단말의 구성도이다.
일 실시 예에 따르면, 사용자 단말(200)은 PUF(Physical Unclonable Function) OTP(One Time Password) 서버(100) 및 PG(Payment Gateway) 서버(300)와 통신하기 위한 통신 인터페이스(210), 제1 사용자 확인용 인증값 및 제2 사용자 확인용 인증값을 디스플레이하기 위한 디스플레이 모듈(270), PUF 기반 OTP 값을 생성하고, 복호화하기 위한 컴퓨터로 컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리(230) 및 메모리(230)에 억세스(access)하여 명령어들을 실행하는 프로세서(220)를 포함할 수 있다.
일 실시 예에 따르면, 사용자 단말(200)은 사용자가 네트워크를 통해 결제를 진행할 수 있는 전자 장치로, 스마트폰, 태블릿, 스마트 TV, 노트북, PC 등일 수 있다.
일 실시 예에 따르면, 프로세서(220)는 도 1에서 설명한 PUF OTP 애플릿(250)으로, 사용자 단말(200)의 USIM 칩 내의 PUF 칩에 포함되어 있을 수 있다.
일 실시 예에 따르면, 프로세서(220)는 통신 인터페이스(210)를 통해 PG(Payment Gateway) 서버(300)로 인증을 요청하고, 이에 따라 PUF OTP 서버(100)로부터 결제 정보 및 PUF OTP 인증서를 수신할 수 있다.
일 실시 예에 따르면, 프로세서(220)는 제1 OTP 인증값을 생성하여 PUF OTP 인증서로 암호화하고, 제1 OTP 인증값 중 제1 사용자 확인용 인증값을 디스플레이하고, 암호화된 제1 OTP 인증값을 PUF OTP 서버로 전송할 수 있다.
일 실시 예에 따르면, 프로세서(120)는 PUF OTP 서버(100)가 생성한 제2 OTP 인증값 중 제2 사용자 확인용 인증값을 PG 서버(300)로부터 수신하여 디스플레이하고, 사용자로부터 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 대응하는지에 대한 입력을 수신하여 PG 서버(300)로 전송할 수 있다.
<PUF OTP 기반 인증 방법>
도 3는 다양한 실시 예들에 따른 PUF OTP에 기초한 결제 인증이 수행되는 흐름을 설명하기 위한 흐름도이다.
도 3을 참조하면, 사용자가 사용자 단말(200)을 통해 PG 서버(300)로 결제 인증을 요청(305)에 따라 PUF OTP에 기초한 결제 인증이 시작된다. PG 서버(300)는 PUF OTP 서버(100)로 결제 요청에 따른 결제 정보를 전송(310)한다. 도 1에서 설명한 바와 같이 결제정보에는 거래번호, 상품명 및 거래금액 중 적어도 어느 하나가 포함될 수 있고, PUF OTP 서버(300)는 PG 서버(300)로부터 결제 서버(미도시)를 거쳐 결제 정보를 수신할 수 있다.
PUF OTP 서버(100)는 수신한 결제 정보를 PUF OTP 인증서와 함께 사용자 단말(200)로 전송할 수 있다(310). 도 1에서 설명한 바와 같이 심툴킷 메시지 서버를 거쳐 결제 정보 및 PUF OTP 인증서는 심툴킷 메시지에 포함되어 전송될 수 있다.
일 실시 예에 따르면, 사용자 단말(200)은 결제 정보와 PUF OTP 인증서를 수신(310)한 후 PUF OTP 애플릿(250)으로 수신한 결제 정보 및 PUF OTP 인증서를 전송하며 제1 OTP 인증값을 요청(315)할 수 있다. PUF OTP 애플릿(250)은 제1 OTP 인증값 생성을 위해 사용자 인증을 요청(320)할 수 있고, 사용자 단말(200)을 통해 결제를 승인하는 사용자 입력(325)이 수신되면, 사용자 단말(200)은 PUF OTP 애플릿(250)으로 승인 결과를 전송(330)할 수 있다.
일 실시 예에 따르면, 동작 320에서 PUF OTP 애플릿(250)은 사용자 단말(200)로 제1 OTP 값 생성을 위해 결제 승인에 대한 사용자 입력을 위한 입력창 생성을 요청할 수 있고, 결제 승인을 위한 입력창은 사용자 단말(200)에서 제공하는 심툴킷(SIM Toolkit) 기능으로 별도 어플리케이션의 설치 없이 생성될 수 있다.
도 1 및 도 2에서 설명한 바와 달리 도 3에서는 사용자 단말(200)과 PUF OTP 애플릿(250) 간의 동작이 추가되었는데, 이때 사용자 단말(200)의 동작, 예를 들어 동작 315, 325, 330은 도 2의 프로세서(220)(예를 들어, PUF OTP 애플릿(250))가 아닌, 사용자 단말의 메인 프로세서(미도시)에 의해 수행될 수 있다.
일 실시 예에 따르면, PUF OTP 애플릿(250)은 제1 OTP 인증값을 생성하고, 수신한 PUF OTP 인증서로 암호화(335)하여 암호화된 제1 OTP 인증값을 결제정보와 함께 PUF OTP 서버(100)로 전송(340)할 수 있다. 이 때도 전술한 바와 같이 암호화된 인증값과 결제정보는 심툴킷 메시지로 PUF OTP 서버(100)로 전송될 수 있다. 사용자 단말(200)은 제1 OTP 인증값 중 사용자 확인을 위해 생성한 제1 사용자 확인용 인증값을 디스플레이할 수 있다.
일 실시 예에 따르면, PUF OTP 서버(100)는 PUF OTP 인증서로 제1 OTP 인증값을 복호화하고, 제2 OTP 인증값을 생성하여 제1 OTP 인증값과 제2 OTP 인증값이 대응하는지 검증할 수 있다(350). 일 실시 예에 따르면, PUF OTP 서버(100)는 제1 OTP 인증값과 제2 OTP 인증값이 동일한 경우 대응한다고 결정할 수 있다. PUF OTP 애플릿(250)에서의 제1 OTP 인증값의 생성, PUT OTP 서버(100)에서의 제2 OTP 인증값의 생성 및 PUF OTP 인증값 사이의 검증 방법은 도 5에서 상세히 설명한다.
일 실시 예에 따르면, PUF OTP 서버(100)는 제2 OTP 인증값 중 제2 사용자 확인용 인증값을 생성하여 PG 인증서로 암호화(355)하고, 암호화된 제2 사용자 인증값 및 PUF OTP 인증값 사이의 검증 결과를 PG 서버(300)로 전송(360)할 수 있다. PG 서버(300)는 PG 인증서로 제2 사용자 확인용 인증값을 복호화(365)하고, 사용자 단말(200)로 전송하여 제2 사용자 확인용 인증값이 사용자 단말(200)에 디스플레이되는 PG 결제창에 입력되고(370), 사용자 단말(200)에 디스플레이될 수 있다(375). 일 실시 예에 따르면, 제2 사용자 확인용 인증값은 사용자의 입력 없이 PG 결제창에 입력될 수 있다.
사용자 단말(200)은 디스플레이된 제1 사용자 확인용 인증값(동작 345 참조) 및 제2 사용자 확인용 인증값(동작 375 참조)이 대응하는지에 대한 사용자 입력을 PG 서버(300)로 전송(380)할 수 있다. 일 실시 예에 따르면, 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 동일한지에 대한 사용자 입력(예를 들어, '확인' 버튼에 대한 터치, 탭 등의 촉각입력 또는 "응" 등의 음성입력 등)이 PG 서버(300)로 전송될 수 있다. PG 서버(300)는 사용자 입력을 수신하면 결제에 대한 인증을 완료(385)할 수 있다.
도 4는 다양한 실시 예들에 따른 PUF OTP에 기초한 결제 인증 과정에서 사용자 단말에 디스플레이되는 화면을 설명하기 위한 도면이다.
PUF OTP 서버로부터 결제정보 및 PUF OTP 인증서를 수신(예를 들어, 도 3의 동작 310)하고, USIM 내 PUF 칩의 PUF OTP 애플릿(250)으로부터 OTP 인증값 생성을 위한 사용자 인증 요청을 수신(예를 들어, 도 3의 동작 320)한 이후 사용자 단말(200)에는 참조번호 410과 같은 화면이 디스플레이될 수 있다. 화면(410)을 참조하면, 결제 승인을 위한 화면에는 상품명, 결제금액 등 결제정보가 디스플레이될 수 있다. 도 3에서 설명한 바와 같이, 결제 승인을 위한 입력 화면(410)은 사용자 단말(200)에서 제공하는 심툴킷(SIM Toolkit) 기능을 통해 별도 어플리케이션의 설치 없이 생성될 수 있다.
화면(410)에서 결제를 승인한다는 사용자 입력이 수신되면, PUF OTP 애플릿(250)에서 제1 OTP 인증값을 생성 및 암호화(예를 들어, 도 3의 동작 335)하고, PUF OTP 서버(100)로 전송(예를 들어, 도 3의 동작 340)한 후 사용자 단말(200)에 제1 OTP 인증값 중 사용자 확인을 위한 제1 사용자 확인용 인증값이 화면(450)과 같이 디스플레이될 수 있다. 화면(450)을 참조하면, 결제 승인 번호, 상품명 및 결제 금액과 같은 결제 정보와 함께 사용자 확인용 인증값이 디스플레이될 수 있다.
일 실시 예에 따르면, PUF OTP 서버에서 제2 OTP 인증값을 생성하고 OTP 인증값 사이의 검증(예를 들어, 도 3의 동작 350) 이후 제2 OTP 인증값 중 제2 사용자 확인용 인증값이 PG 서버(300)를 거쳐 사용자 단말(200)로 전송될 수 있다. 제2 사용자 확인용 인증값 또한 화면(450) 내 제1 사용자 확인용 인증값과 같이 사용자 단말(200)의 PG서버 결제창에 디스플레이될 수 있다(미도시). 도 3의 동작 380에서 설명한 바와 같이, 사용자 단말(200)에 디스플레이된 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 대응한다(또는, 동일하다)는 사용자 입력이 PG 서버(300)로 전송되면, 인증이 완료될 수 있다.
<PUF OTP 인증값 검증 방법>
도 5는 다양한 실시 예들에 따른 PUF OTP 인증값을 검증하는 과정을 설명하기 위한 도면이다.
도 5를 참조하면, PUF OTP 인증값을 생성하고, PUF OTP 값을 검증하는 동작이 도시된다. 동작 515 내지 동작 525는 제1 OTP 인증값을 생성하기 위해 사용되는 대칭 키 값인 제1 HMAC key가 사용자 단말(200)의 유심 고유번호에 기초하여 생성되는 동작(510)이고, 동작 535 내지 동작 590은 OTP 인증 값들이 대응하는지 검증하는 동작(530)이다.
일 실시 예에 따르면, 제1 HMAC key가 생성되는 동작(510)은 OTP 인증값들을 검증하는 동작(530)보다 시간적으로 앞서 발생할 수 있다. 예를 들어, 참조번호 510의 동작들은 처음 사용자 단말(200)의 유심이 발급될 때 발생하고, 참조번호 530의 동작들은 사용자 단말(200)에서 결제가 발생하여 결제를 위한 인증을 수행할 때 발생할 수 있다. OTP 인증값을 검증하는 동작(530)은 도 3을 참조하여 설명한 제1 OTP 인증값을 복호화하고, 제2 OTP 인증값을 생성해 검증하는 동작(예: 도 3의 동작 350)에 대응할 수 있다.
일 실시 예에 따르면, 동작 515에서, 사용자 단말(200)의 USIM이 발급될 때 PUF OTP 서버(100)로부터 사용자 단말(200)에 포함된 PUF OTP 애플릿(250)으로 PUF OTP 인증서, HMAC key 생성 알고리즘 및 HMAC 알고리즘이 전송될 수 있다(515). 도 5에서는 간명한 설명을 위해 생략되었으나, PUF OTP 서버(100)는 유심 발급 장치(미도시)로 PUF OTP 인증서, HMAC key, HMAC 알고리즘을 전송할 수 있고, 유심 발급 장치는 사용자 단말(200)의 유심 고유번호(USIM serial number)를 발급함과 동시에 PUF OTP 인증서, HMAC key, HMAC 알고리즘을 전송할 수 있다. 사용자 단말(200)의 유심 칩 내의 PUF OTP 애플릿(250)은 HMAC key 생성 알고리즘에 유심 고유번호를 입력하여 제1 HMAC key를 생성할 수 있고(520), 생성한 제1 HMAC key, HMAC 알고리즘, PUF OTP 인증서를 암호화하여 저장할 수 있다(525). 일 실시 예에 따르면, 유심 고유번호에 기초하여 HMAC key가 생성되어 실제 가입자 인증 기반의 고유한 HMAC key가 생성될 수 있다.
일 실시 예에 따르면, 유심 발급 시 제1 HMAC key가 생성된 이후, 도 3에서 설명한 바와 같이 결제 인증을 위해 PUF OTP 서버로부터 PUF OTP 애플릿(250)으로 PUF OTP 인증서가 전송될 수 있다(535). 동작 535는 도 3의 동작 310에 대응할 수 있다.
일 실시 예에 따르면 동작 540에서, PUF OTP 애플릿(250)은 수신한 PUF OTP 인증서와 저장되어 있던 PUF OTP 인증서가 대응하는지(또는 동일한지) 확인하여 PUF OTP 서버(100)를 인증할 수 있다. PUF OTP 서버를 인증한 이후, 동작 550에서 저장된 HMAC 알고리즘에 서버 정보, 거래 정보 및 제1 HMAC key를 입력하여 제1 OTP 인증값을 생성하고, PUF OTP 인증서로 암호화할 수 있다. 동작 555에서, PUF OTP 애플릿(250)은 암호화된 제1 OTP 인증값을 PUF OTP 서버(100)로 전송할 수 있다. 동작 550은 도 3의 동작 335에, 동작 555는 도 3의 동작 340에 대응될 수 있다.
일 실시 예에 따르면 PUF OTP 서버(100)는 동작 560에서 제1 OTP 인증값을 PUF OTP 인증서로 복호화하고, 동작 570에서 제2 HMAC key를 생성할 수 있다. 예를 들어, PUF OTP 서버(100)는 HMAC key 생성 알고리즘에 사용자 단말(200)의 유심 고유번호를 입력하여 제2 HMAC key를 생성할 수 있다.
일 실시 예에 따르면, 제2 HMAC key는 PUF OTP 서버(100)가 미리, 예를 들어 참조번호 510에서 사용자 단말(200)이 유심을 발급받을 때 수신한 유심 고유번호에 기초하여 생성해 둔 것일 수 있다. 다른 실시 예에 따르면, PUF OTP 서버(100)가 제2 HMAC key를 생성한 적 없다면 PUF OTP 서버(100)는 가입자 정보 서버(미도시)로 사용자 단말(200)의 유심 고유번호를 요청 및 수신하고, 사용자 단말(200)의 유심 고유번호로 제2 HMAC key를 생성할 수 있다. 동일한 사용자 단말(200)의 유심 고유번호에 기초하여 생성된 제1 HMAC key 및 제2 HMAC key는 동일한 값을 가질 수 있다.
일 실시 예에 따르면, PUF OTP 서버(100)는 동작 580에서 제2 HMAC key로부터 제2 OTP 인증값을 생성하고, 동작 590에서 제1 OTP 인증값과 제2 OTP 인증값이 대응하는지 검증할 수 있다. 동일한 사용자 단말(200)에 대한 유심 고유번호에 기초하여 HMAC key가 생성되고, HMAC key에 기초하여 OTP 인증값이 생성되었으므로 제1 OTP 인증값 및 제2 OTP 인증값은 서로 대응될 수 있다. 예를 들어, 두 인증 값은 동일한 값을 가질 수 있다.
참조번호 510에서 HMAC key를 사용자 단말(200)의 유심 고유번호에 기초하여 생성함으로써, 참조번호 530의 OTP 인증 값 사이의 검증 과정에서 PUF OTP 서버(100)는 PUF OTP 애플릿(250)으로부터 HMAC key를 별도로 수신하지 않고도 유심 고유번호에 기초하여 HMAC key를 생성하고, OTP 인증값을 생성하여 OTP 인증값을 검증할 수 있다.
<PUF OTP 서버의 동작 방법>
도 6은 다양한 실시 예들에 따른 PUF OTP 서버의 동작 방법을 설명하기 위한 흐름도이다.
동작 610 내지 동작 640은 도 3을 참조하여 전술된 PUF 결제 인증 과정을 PUF OTP 서버(100)의 측면에서 바라본 것으로, 간명한 설명을 위해 도 1 내지 도 5를 참조하여 설명한 내용과 중복되는 내용은 생략될 수 있다. 일 실시 예에 따르면, 동작 610 내지 동작 640은 도 1을 참조하여 전술된 PUF OTP 서버(100)의 프로세서(120)에 의해 수행될 수 있다.
일 실시 예에 따르면, 동작 610에서 PUF OTP 서버(100)의 프로세서(120)는 PG 서버(300)로부터 결제 정보를 수신하여 PUF OTP 인증서와 함께 사용자 단말(200)로 전송할 수 있다. 동작 610은 도 3의 동작 310에 대응할 수 있다.
일 실시 예에 따르면, 사용자 단말(200)에 포함된 PUF OTP 애플릿(250)은 제1 OTP 인증값을 생성하고, PUF OTP 인증서로 암호화할 수 있다.
일 실시 예에 따르면, 동작 620에서 프로세서(120)는 사용자 단말(200)로부터 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신하고, 제1 OTP 인증값을 PUF OTP 인증서로 복호화할 수 있다. 이 때 사용자 단말(200)에서는 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 디스플레이될 수 있다.
일 실시 예에 따르면, 동작 630에서 프로세서(120)는 제2 OTP 인증값을 생성하여 제1 OTP 인증값과 대응하는지 검증할 수 있다. 동작 620 및 동작 630은 도 3의 동작 340 및 동작 350에 대응할 수 있다.
일 실시 예에 따르면, 동작 640에서 프로세서(120)는 제2 OTP 인증값으로부터 제2 사용자 확인용 인증값을 생성하고, PG 서버(300)로 전송할 수 있다. 동작 640은 도 3의 동작 355 및 동작 360에 대응할 수 있다.
일 실시 예에 따르면, 제2 사용자 확인용 인증값은 PG 인증서로 암호화될 수 있고, PG서버에서 복호화되어 사용자 단말(200)로 제2 사용자 확인용 인증값이 전송될 수 있다. 일 실시 예에 따르면, PG서버(300)는 사용자 단말(200)에 디스플레이된 제1 사용자 확인용 인증값과 제2 사용자 확인용 인증값이 대응하는지에 대한 사용자 입력에 기초하여 인증을 완료할 수 있다.
<PUF OTP 서버의 OTP 검증 방법>
도 7은 다양한 실시 예들에 따른 PUF OTP 서버의 PUF OTP 인증값 검증 방법을 설명하기 위한 흐름도이다.
동작 710 내지 동작 750은 도 5를 참조하여 전술된 PUF OTP 인증값 검증 과정을 PUF OTP 서버(100)의 측면에서 바라본 것으로, 간명한 설명을 위해 도 1 내지 도 6을 참조하여 설명한 내용과 중복되는 내용은 생략될 수 있다. 일 실시 예에 따르면, 동작 710 내지 동작 750은 도 1을 참조하여 전술된 PUF OTP 서버(100)의 프로세서(120)에 의해 수행될 수 있다.
일 실시 예에 따르면, 동작 710에서 PUF OTP 서버(100)의 프로세서(120)는 사용자 단말(200)로부터 PG 서버(300)로의 결제 인증 요청에 따라 PUF OTP 인증서를 사용자 단말(200)로 전송할 수 있다. 동작 710은 도 5의 동작 535에 대응할 수 있다.
일 실시 예에 따르면, 동작 720에서 PUF OTP 서버(100)의 프로세서(120)는 사용자 단말(200)의 PUF OTP 애플릿(250)으로부터 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신하고, PUF OTP 인증서로 복호화할 수 있다. 동작 720은 도 5의 동작 555 및 동작 560에 대응할 수 있다. 일 실시 예에 따르면, 도 5를 참조하여 설명한 바와 같이 제1 OTP 인증값은 사용자 단말(200)의 유심이 발급될 때 유심 고유번호에 기초하여 생성된 제1 HMAC key에 기초하여 사용자 단말(200)의 PUF OTP 애플릿(250)이 생성한 것일 수 있다.
일 실시 예에 따르면, 동작 730에서 프로세서(120)는 HMAC key 생성 알고리즘 및 사용자 단말(200)의 USIM 고유번호에 기초하여 제2 HMAC key를 생성할 수 있다. 도 5에서 전술한 바와 같이, 제2 HMAC key는 사용자 단말(200)이 유심을 발급받을 때 유심 발급 장치로부터 유심 고유번호를 수신하여 생성해 놓은 것일 수 있고, 또는 동작 720에서 암호화된 제1 OTP 인증값을 수신한 이후 가입자 정보 서버(미도시)로부터 사용자 단말(200)의 유심 고유번호를 수신하여 생성한 것일 수 있다. 동작 730은 도 5의 동작 570에 대응할 수 있다.
일 실시 예에 따르면, 동작 740에서 프로세서(120)는 HMAC 알고리즘 및 제2 HMAC key에 기초하여 제2 OTP 인증값을 생성할 수 있다. 동작 740은 도 5의 동작 580에 대응할 수 있다.
일 실시 예에 따르면, 동작 750에서 프로세서(120)는 복호화된 제1 OTP 인증값과 제2 OTP 인증값이 대응하는지 검증할 수 있다. 예를 들어, 제1 OTP 인증값과 제2 OTP 인증값이 동일한 경우 프로세서(120)는 OTP 인증값들이 대응된다고 결정할 수 있다. 동작 750은 도 5의 동작 590에 대응할 수 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있으며 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
위에서 설명한 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 또는 복수의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 이를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (19)

  1. PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 동작 방법에 있어서,
    사용자 단말을 통한 인증 요청에 따라 PG(Payment Gateway) 서버로부터 결제 정보를 수신하고, 상기 결제 정보 및 PUF OTP 인증서를 상기 사용자 단말로 전송하는 동작;
    상기 사용자 단말로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신 및 복호화하는 동작 - 상기 제1 OTP 인증값은 상기 사용자 단말에 포함된 PUF OTP 애플릿(applet)에서 생성되고 상기 PUF OTP 인증서로 암호화되며, 상기 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이됨 -;
    제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작;
    상기 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 상기 검증 결과를 상기 PG 서버를 통해 상기 사용자 단말로 전송하는 동작 - 상기 제2 사용자 확인용 인증값은 상기 사용자 단말에 디스플레이됨 -;
    을 포함하고,
    상기 PG 서버는 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응된다는 사용자 입력에 기초하여 인증을 완료하는,
    방법.
  2. 제1항에 있어서,
    상기 제1 OTP 인증값 및 상기 제2 OTP 인증값은 상기 PUF OTP 애플릿 및 상기 PUF OTP 서버에 의해 사전 정의된 HMAC(Hash-based Message Authentication Code) key 생성 알고리즘 및 HMAC 알고리즘에 기초하여 생성되는,
    방법.
  3. 제2항에 있어서,
    상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM(Universal Subscriber Identify Module)이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고,
    상기 PUF OTP 애플릿은,
    상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호(serial number)에 기초하여 제1 HMAC key를 생성하고,
    상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장하는,
    방법.
  4. 제3항에 있어서,
    상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 사용자 단말로 상기 결제 정보 및 상기 PUF OTP 인증서가 전송되면,
    상기 PUF OTP 애플릿은,
    상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응되는 경우,
    상기 저장된 HMAC 알고리즘, 상기 결제 정보 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송하는,
    방법.
  5. 제2항에 있어서,
    상기 PUF OTP 서버가 상기 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작은,
    상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제2 HMAC key를 생성하는 동작;
    상기 HMAC 알고리즘, 상기 결제 정보 및 상기 제2 HMAC key에 기초하여 상기 제2 OTP 인증값을 생성하는 동작; 및
    상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작
    을 포함하는,
    방법.
  6. 제1항에 있어서,
    상기 결제 정보 및 상기 PUF OTP 인증서는 심툴킷 메시지(SIM Toolkit message)를 통해 상기 PUF OTP 서버로부터 상기 사용자 단말로 전송되고,
    상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값은 심툴킷 메시지(SIM Toolkit message)를 통해 상기 사용자 단말로부터 상기 PUF OTP 서버로 전송되는,
    방법.
  7. 제1항에 있어서,
    상기 결제 정보는,
    거래번호, 상품명 및 거래금액 중 적어도 어느 하나를 포함하는,
    방법.
  8. PUF(Physical Unclonable Function) OTP(One Time Password) 서버에 있어서,
    사용자 단말을 통한 인증 요청에 따라 PG(Payment Gateway) 서버로부터 결제 정보를 수신하고, 상기 결제 정보 및 PUF OTP 인증서를 상기 사용자 단말로 전송하고, 상기 사용자 단말로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신하고, 제2 OTP 인증값 중 제2 사용자 확인용 인증값 및 상기 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지에 대한 검증 결과를 상기 PG 서버를 통해 상기 사용자 단말로 전송하기 위한 통신 인터페이스;
    컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리; 및
    상기 메모리에 억세스(access)하여 상기 명령어들을 실행하는 프로세서
    를 포함하고,
    상기 프로세서는 상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값을 복호화하고, 제2 OTP 인증값을 생성하고, 상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하고,
    상기 제1 OTP 인증값은 상기 사용자 단말에 포함된 PUF OTP 애플릿(applet)에서 생성되고 상기 PUF OTP 인증서로 암호화되며, 상기 제1 OTP 인증값 중 제1 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이되고,
    상기 제2 사용자 확인용 인증값이 상기 사용자 단말에 디스플레이되며,
    상기 PG 서버는 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응한다는 사용자 입력에 기초하여 인증을 완료하는,
    PUF OTP 서버.
  9. 제8항에 있어서,
    상기 제1 OTP 인증값 및 상기 제2 OTP 인증값은 상기 PUF OTP 애플릿 및 상기 PUF OTP 서버에 의해 사전 정의된 HMAC(Hash-based Message Authentication Code) key 생성 알고리즘 및 HMAC 알고리즘에 기초하여 생성되는,
    PUF OTP 서버.
  10. 제9항에 있어서,
    상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM(Universal Subscriber Identify Module)이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고,
    상기 PUF OTP 애플릿은,
    상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호(serial number)에 기초하여 제1 HMAC key를 생성하고,
    상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장하는,
    PUF OTP 서버.
  11. 제10항에 있어서,
    상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 사용자 단말로 상기 결제 정보 및 상기 PUF OTP 인증서가 전송되면,
    상기 PUF OTP 애플릿은,
    상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응하는 경우,
    상기 저장된 HMAC 알고리즘, 상기 결제 정보 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송하는,
    PUF OTP 서버.
  12. 제9항에 있어서,
    상기 프로세서는,
    상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제2 HMAC key를 생성하고,
    상기 HMAC 알고리즘, 상기 결제 정보 및 상기 제2 HMAC key에 기초하여 상기 제2 OTP 인증값을 생성하고,
    상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는,
    PUF OTP 서버.
  13. 제8항에 있어서,
    상기 결제 정보 및 상기 PUF OTP 인증서는 심툴킷 메시지(SIM Toolkit message)를 통해 상기 PUF OTP 서버로부터 상기 사용자 단말로 전송되고,
    상기 PUF OTP 인증서로 암호화된 상기 제1 OTP 인증값은 심툴킷 메시지(SIM Toolkit message)를 통해 상기 사용자 단말로부터 상기 PUF OTP 서버로 전송되는,
    PUF OTP 서버.
  14. 제1항에 있어서,
    상기 결제 정보는,
    거래번호, 상품명 및 거래금액 중 적어도 어느 하나를 포함하는,
    PUF OTP 서버.
  15. PUF(Physical Unclonable Function) OTP(One Time Password) 서버의 OTP 인증값 검증 방법에 있어서,
    사용자 단말로부터의 인증 요청에 따라 PUF OTP 인증서를 상기 사용자 단말의 PUF OTP 애플릿(applet)으로 전송하는 동작;
    상기 PUF OTP 애플릿으로부터 상기 PUF OTP 인증서로 암호화된 제1 OTP 인증값을 수신 및 복호화하는 동작;
    HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM(Universal Subscriber Identify Module) 고유번호(serial number)에 기초하여 제2 HMAC key를 생성하는 동작;
    HMAC 알고리즘 및 상기 제2 HMAC key에 기초하여 제2 OTP 인증값을 생성하는 동작; 및
    상기 복호화된 제1 OTP 인증값과 상기 제2 OTP 인증값이 대응하는지 검증하는 동작
    을 포함하는,
    PUF OTP 서버의 OTP 인증값 검증 방법.
  16. 제15항에 있어서,
    상기 HMAC key 생성 알고리즘 및 상기 HMAC 알고리즘은 상기 PUF OTP 인증서와 함께 상기 사용자 단말의 USIM이 발급될 때 상기 PUF OTP 서버로부터 상기 PUF OTP 애플릿으로 전송되고,
    상기 PUF OTP 애플릿은,
    상기 HMAC key 생성 알고리즘 및 상기 사용자 단말의 USIM 고유번호에 기초하여 제1 HMAC key를 생성하고,
    상기 HMAC 알고리즘, 상기 PUF OTP 인증서 및 상기 제1 HMAC key를 저장하는,
    PUF OTP 서버의 OTP 인증값 검증 방법.
  17. 제16항에 있어서,
    상기 PUF OTP 애플릿은,
    상기 사용자 단말의 인증 요청에 따라 상기 PUF OTP 서버로부터 상기 PUF OTP 인증서가 수신되면,
    상기 저장된 PUF OTP 인증서와 상기 수신한 PUF OTP 인증서가 대응하는 경우,
    상기 저장된 HMAC 알고리즘 및 상기 저장된 제1 HMAC key에 기초하여 상기 제1 OTP 인증값을 생성하고, 상기 제1 OTP 인증값을 상기 PUF OTP 인증서로 암호화하여 상기 PUF OTP 서버로 전송하는,
    방법.
  18. 사용자 단말에 있어서,
    PUF(Physical Unclonable Function) OTP(One Time Password) 서버 및 PG(Payment Gateway) 서버와 통신하기 위한 통신 인터페이스;
    제1 사용자 확인용 인증값 및 제2 사용자 확인용 인증값을 디스플레이하기 위한 디스플레이 모듈;
    컴퓨터로 실행 가능한 명령어들(computer-executable instructions)이 저장된 메모리; 및
    상기 메모리에 억세스(access)하여 상기 명령어들을 실행하는 프로세서
    를 포함하고,
    상기 프로세서는 PG(Payment Gateway) 서버로 인증을 요청함에 따라 상기 PUF OTP 서버로부터 결제 정보 및 PUF OTP 인증서를 수신하고, 제1 OTP 인증값을 생성하여 상기 PUF OTP 인증서로 암호화하고, 상기 제1 OTP 인증값 중 상기 제1 사용자 확인용 인증값을 디스플레이하고, 상기 암호화된 제1 OTP 인증값을 상기 PUF OTP 서버로 전송하고, 상기 PUF OTP 서버가 생성한 제2 OTP 인증값 중 상기 제2 사용자 확인용 인증값을 상기 PG 서버로부터 수신하여 디스플레이하고,
    상기 PG 서버로 상기 제1 사용자 확인용 인증값과 상기 제2 사용자 확인용 인증값이 대응한다는 사용자 입력을 전송하는,
    사용자 단말.
  19. 하드웨어와 결합되어 제1항 내지 제7항 및 제15항 내지 제17항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020210082857A 2021-06-25 2021-06-25 Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법 KR102547682B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210082857A KR102547682B1 (ko) 2021-06-25 2021-06-25 Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210082857A KR102547682B1 (ko) 2021-06-25 2021-06-25 Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20230000583A true KR20230000583A (ko) 2023-01-03
KR102547682B1 KR102547682B1 (ko) 2023-06-27

Family

ID=84924635

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210082857A KR102547682B1 (ko) 2021-06-25 2021-06-25 Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR102547682B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150312041A1 (en) * 2009-11-17 2015-10-29 Unho Choi Authentication in ubiquitous environment
JP6381833B2 (ja) * 2015-04-23 2018-08-29 ウノ チェ ユビキタス環境での認証

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150312041A1 (en) * 2009-11-17 2015-10-29 Unho Choi Authentication in ubiquitous environment
US20170359180A1 (en) * 2009-11-17 2017-12-14 Unho Choi Authentication in ubiquitous environment
JP6381833B2 (ja) * 2015-04-23 2018-08-29 ウノ チェ ユビキタス環境での認証
EP3288214B1 (en) * 2015-04-23 2021-03-03 Unho Choi Authentication in ubiquitous environment

Also Published As

Publication number Publication date
KR102547682B1 (ko) 2023-06-27

Similar Documents

Publication Publication Date Title
US11032075B2 (en) Methods for secure cryptogram generation
CN107210914B (zh) 用于安全凭证供应的方法
EP3280090B1 (en) User authentication method and device
US9838205B2 (en) Network authentication method for secure electronic transactions
US8601268B2 (en) Methods for securing transactions by applying crytographic methods to assure mutual identity
US20150310427A1 (en) Method, apparatus, and system for generating transaction-signing one-time password
EP4081921B1 (en) Contactless card personal identification system
US20090222383A1 (en) Secure Financial Reader Architecture
EP2098985A2 (en) Secure financial reader architecture
US20170068960A1 (en) Web based payment service providing apparatus, method, system, and non-transitory computer readable storage medium storing computer program recorded thereon
EP3662430B1 (en) System and method for authenticating a transaction
AU2020239994B2 (en) System and method for pre-authentication of customer support calls
US20220300962A1 (en) Authenticator App for Consent Architecture
US11727403B2 (en) System and method for payment authentication
KR101388935B1 (ko) 2채널 기반의 사용자 인증 장치 및 방법
JP6059788B2 (ja) カード装置を用いたネットワーク認証方法
US20240113898A1 (en) Secure Module and Method for App-to-App Mutual Trust Through App-Based Identity
KR102547682B1 (ko) Puf기반 otp를 이용하여 사용자 인증을 지원하는 서버 및 그 동작 방법
EP4123534A1 (en) Transaction security techniques
JP2024079694A (ja) 顧客サポート呼の事前認証のためのシステムおよび方法
TWM576301U (zh) Online banking system for verifying identity using push technology

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right