KR101621254B1 - Payment method, computer readable recording medium and system using virtual number based on otp - Google Patents

Payment method, computer readable recording medium and system using virtual number based on otp Download PDF

Info

Publication number
KR101621254B1
KR101621254B1 KR1020150078752A KR20150078752A KR101621254B1 KR 101621254 B1 KR101621254 B1 KR 101621254B1 KR 1020150078752 A KR1020150078752 A KR 1020150078752A KR 20150078752 A KR20150078752 A KR 20150078752A KR 101621254 B1 KR101621254 B1 KR 101621254B1
Authority
KR
South Korea
Prior art keywords
card
virtual
server
payment
authentication
Prior art date
Application number
KR1020150078752A
Other languages
Korean (ko)
Other versions
KR20160036471A (en
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
Priority to KR1020140112458 priority Critical
Priority to KR20140112458 priority
Application filed by 유한회사 실릭스 filed Critical 유한회사 실릭스
Publication of KR20160036471A publication Critical patent/KR20160036471A/en
Application granted granted Critical
Publication of KR101621254B1 publication Critical patent/KR101621254B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING 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/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING 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/401Transaction verification

Abstract

본 발명은 오티피(OTP; One Time Password) 기반의 가상 번호 결제 방법, 컴퓨터 판독가능한 기록 매체 및 시스템에 관한 것으로서, 가상 번호 결제 방법은 클라이언트 단말기 상에서, 클라이언트 앱을 구동하는 단계, 클라이언트 앱 구동 시 비밀번호를 입력하면, 오티피를 생성하는 단계, 클라이언트 단말기가 인증 서버에 가상 번호 생성 요청을 전송하는 단계, 인증 서버는 상기 가상 번호 생성 요청에 포함된 오티피를 암호화 키로 가상 번호를 생성하는 단계, 인증 서버가 생성된 가상 번호를 상기 클라이언트 단말기에 전송하는 단계, 클라이언트 단말기가 상기 가상 번호를 수신하여, 상기 가상 번호 및 결제 정보를 포함하는 결제 요청을 송신하는 단계, 인증 서버가 상기 결제 요청을 송신하여, 상기 가상 번호에 대응되는 실제 카드 번호를 추출하는 단계, 및 인증 서버가 카드사 서버와 연동하여 상기 실제 카드 번호에 기반한 결제 승인을 처리하는 단계를 포함한다.The present invention relates to a virtual number settlement method based on an OTP (One Time Password), a computer readable recording medium and a system, and a virtual number settlement method includes a step of operating a client application on a client terminal, Generating a virtual number by using an encryption key included in the virtual number creation request; and transmitting the virtual number to the authentication server. Transmitting a virtual number generated by the authentication server to the client terminal, receiving a virtual number from the client terminal, and transmitting a payment request including the virtual number and the payment information, Extracting an actual card number corresponding to the virtual number, And the authentication server processing the payment approval based on the actual card number in cooperation with the card issuer server.
Figure 112015053751180-pat00001

Description

오티피 기반의 가상 번호 결제 방법, 컴퓨터 판독가능한 기록매체 및 시스템{PAYMENT METHOD, COMPUTER READABLE RECORDING MEDIUM AND SYSTEM USING VIRTUAL NUMBER BASED ON OTP}TECHNICAL FIELD [0001] The present invention relates to a virtual number settlement method, a computer readable recording medium and a computer readable recording medium,
본 발명은 오티피(이하, OTP; One Time Password) 기반의 가상 번호 결제 방법, 컴퓨터 판독가능한 기록매체 및 시스템에 관한 것으로서, 오티피를 이용하여 가상 번호를 생성하고, 결제 시 오티피를 복호화키로 이용하여 실제 결제카드 번호를 추출하는 방법 및 시스템에 관한 것이다.The present invention relates to a virtual number payment method based on One Time Password (OTP), a computer readable recording medium and a system, and more particularly, And to a system and a system for extracting an actual payment card number by using the same.
컴퓨터, 스마트폰과 같은 디지털 기기의 활용이 증가함에 따라, 디지털 기기를 이용한 전자 상거래가 다양한 분야에서 광범위하게 이용되고 있다. 특히, 스마트폰(Smart Phone)과 같은 휴대 단말기는 사용자들이 항상 휴대하고 다닌다는 이점을 갖고 있어, 다양한 금융 관련 어플리케이션이 출시되어 사용자들의 편의를 도모하고 있다.With the increasing use of digital devices such as computers and smart phones, electronic commerce using digital devices has been widely used in various fields. In particular, mobile terminals such as smart phones have advantages that users always carry around, and various financial related applications are released to facilitate users' convenience.
이러한 스마트폰을 포함한 다양한 컴퓨팅 디바이스를 이용한 금융 거래(예컨대, 계좌 이체)에 있어서, 기존의 보안카드를 대체하여 보안 및 인증의 기능으로서 일회용 비밀번호인 오티피 입력 방식이 상용화되고 있다. 그러나 오티피는 단순히 비밀번호 또는 인증번호로 사용되어 그 용도가 매우 한정적이다.In financial transactions (for example, bank transfer) using various computing devices including smartphones, an off-chip input method, which is a one-time password, has been commercialized as a function of security and authentication in place of an existing security card. However, otipi is simply used as a password or an authentication number and its use is very limited.
한편, 기존 결제 방식에서는 사용자의 휴대전화번호, 카드 번호 등은 중요한 개인정보임에도 불구하고, 직접적으로 송수신되는 바 유출되거나 악용되지 않도록 보호할 필요성이 대두되고 있다. 나아가, 데이터 송수신 과정에서 중요정보가 노출되거나 탈취되더라고 사용할 수 없도록 데이터를 보호하는 방안이 필요하다.On the other hand, in the existing payment method, even though the user's mobile phone number and card number are important personal information, there is a need to protect the user from being leaked or abused directly. Furthermore, it is necessary to protect the data so that it can not be used even when important information is exposed or captured in the data transmission / reception process.
선행문헌으로서, 한국 공개특허 제10-2008-0044029호의 '가상카드 번호를 이용한 홈 쇼핑 결제 시스템'은 홈 쇼핑 결제 진행 시 가상카드 번호를 생성하여 결제용으로 사용하는 기술을 개시하고 있으나, 선행문헌은 결제서버가 가상카드 번호 생성기를 통해 가상카드 번호를 조회하여 대응하는 신용카드 번호를 조회하는 기술에 불과하며, 송수신 시 데이터를 보호하는 방법에 대한 해결책 제시가 나타나 있지 않다. 따라서, 결제 서버가 가상카드 번호를 직접 복호화할 수 없으며, 항상 가상카드 번호 생성기를 통해 대응되는 신용카드정보를 조회해야하는 번거로움이 있다. 또한 가상카드 번호 생성기가 해킹될 경우 실제 신용카드정보의 유출 위험도 있다.As a prior art, Korean Patent Laid-Open No. 10-2008-0044029 discloses a technique of generating a virtual card number and using the virtual card number for settlement when a home shopping payment process is performed in a home shopping payment system using a virtual card number, Is a technology in which the payment server inquires the virtual card number through the virtual card number generator and inquires the corresponding credit card number, and does not show a solution to the method of protecting data in transmission and reception. Therefore, the payment server can not directly decode the virtual card number, and always has to search for the corresponding credit card information through the virtual card number generator. Also, if the virtual card number generator is hacked, there is also a risk of leakage of real credit card information.
한국 공개특허 제10-2008-0044029호(2008. 5. 20. 공개)Korean Patent Publication No. 10-2008-0044029 (disclosed on May 20, 2008)
본 발명에서는 상기 문제점들을 해결하기 위한, 오티피를 이용한 가상 번호 생성 방법 및 시스템을 제공하는 것을 목적으로 한다.In order to solve the above problems, it is an object of the present invention to provide a virtual number generation method and system using an OTF.
본 발명의 제1 측면은, 오티피(OTP; One Time Password)를 이용한 가상 번호 생성 방법으로서, 클라이언트 단말기 상에서, 보안 운영체제에서 동작하는 클라이언트 앱을 구동하는 단계; 클라이언트 앱 구동 시 비밀번호를 입력하면, 오티피를 생성하는 단계; 보안 운영체제에 의한 보안 영역 또는 일반 영역으로부터 미리 저장된 카드 번호를 자동으로 인식하는 단계; 및 생성된 상기 오티피를 이용하여, 상기 카드 번호를 암호화한 가상 번호를 생성하는 단계를 포함한다.According to a first aspect of the present invention, there is provided a virtual number generation method using an OTP (One Time Password), the method comprising: driving a client application operating in a secure operating system on a client terminal; Inputting a password when the client application is activated; generating an audiope; Automatically recognizing a card number previously stored from a security area or a general area by a security operating system; And generating a virtual number by encrypting the card number using the generated atopy.
본 발명의 제2 측면은, 가상 번호 생성 시스템으로서, 온라인 가맹점에 대한 결제를 진행하는 클라이언트 PC; 상기 클라이언트 PC로부터 결제 진행 및 결제에 필요한 정보를 입력받아 결제를 요청하는 온라인 가맹점 서버; 상기 온라인 가맹점 서버로부터 결제 요청을 수신하여 인증사에 전달하는 카드결제 대행사 서버; 푸쉬 방식으로 클라이언트 단말기상에서 클라이언트 앱을 구동하고, 오티피 서버와 연동하여 오티피를 발급 및 관리하는 인증 서버; 및 상기 클라이언트 앱을 구동하여 제1 오티피를 생성하고, 기 저장된 카드 번호를 인식하여, 상기 제1 오티피를 이용하여 상기 카드 번호를 암호화한 가상 번호를 생성하는 클라이언트 단말기를 포함하고, 클라이언트 앱은 상기 클라이언트 단말기 상에서 보안 운영체제에서 동작하고, 상기 카드 번호는 상기 보안 운영체제에 의한 보안 영역에 미리 저장되어 있거나, 암호화된 형태로 일반 영역에 미리 저장되어 있는 것을 특징으로 한다.According to a second aspect of the present invention, there is provided a virtual number generation system comprising: a client PC for making a payment for an online merchant; An online merchant server for receiving payment information from the client PC and requesting settlement; A card settlement agency server for receiving a settlement request from the online merchant server and delivering the settlement request to an authentication company; An authentication server that runs a client app on a client terminal in a push-type manner and issues and manages an opportunistic file in cooperation with an opportunistic server; And a client terminal for generating the first api by driving the client app, recognizing the previously stored card number, and generating a virtual number obtained by encrypting the card number using the first api, Is operated in the security operating system on the client terminal, and the card number is previously stored in the security area by the security operating system, or is stored in advance in the general area in an encrypted form.
본 발명의 제3 측면은, 다른 실시예에 의한 가상 번호 생성 시스템으로서, 온라인 가맹점에 대한 결제를 진행하는 클라이언트 PC; 클라이언트 앱을 구동하여 제1 오티피를 생성하고, 기 저장된 카드 번호를 인식하여, 상기 제1 오티피를 이용하여 상기 카드 번호를 암호화한 가상 번호를 생성하는 클라이언트 단말기; 클라이언트 PC로부터 상기 가상 번호 및 전화번호를 입력받아 결제를 요청하는 온라인 가맹점 서버; 온라인 가맹점 서버로부터 결제 요청을 수신하여 인증사에 전달하는 카드결제 대행사 서버; 및 오티피 서버와 연동하여 오티피를 발급 및 관리하는 인증 서버를 포함하고, 상기 클라이언트 앱은 상기 클라이언트 단말기 상에서 보안 운영체제에서 동작하고, 상기 카드 번호는 상기 보안 운영체제에 의한 보안 영역에 미리 저장되어 있거나, 암호화된 형태로 일반 영역에 미리 저장되어 있는 것을 특징으로 한다.According to a third aspect of the present invention, there is provided a virtual number generation system according to another embodiment, comprising: a client PC for making a payment for an online merchant; A client terminal for generating a first octet by driving a client app, recognizing a previously stored card number, and generating a virtual number obtained by encrypting the card number using the first orthopy; An online merchant server for receiving the virtual number and the telephone number from the client PC and request payment; A card settlement agency server for receiving a settlement request from an online merchant server and delivering the settlement request to an authentication company; And an authentication server for issuing and managing an authentication ticket in cooperation with an authentication server, wherein the client application operates in the security operating system on the client terminal, and the card number is stored in advance in the secure area by the secure operating system , And is stored in advance in the general area in an encrypted form.
선택적으로, 가상 번호 생성 시스템은 카드결제 대행사 서버로부터 결제 요청 및 결제 정보를 제공받아 발급 은행 서버와 연동하여 결제를 처리하는 카드사 서버를 더 포함하고, 결제 정보는 가상 번호, 전화번호 및 거래 내역을 포함하고,카드사 서버가 상기 제1 오티피를 복호화 키값으로 하여 상기 가상 번호를 복호화하여 상기 카드 번호를 추출해내도록 구현할 수 있다.Alternatively, the virtual number generation system may further include a card issuer server that receives payment request and payment information from the card settlement agency server and processes the payment in cooperation with the issuing bank server, and the payment information includes a virtual number, a telephone number, And the card issuer server decrypts the virtual number using the first off-chip as a decryption key value, and extracts the card number.
본 발명의 제 4 측면은, 가상 번호 결제 방법은 클라이언트 단말기 상에서, 클라이언트 앱을 구동하는 단계, 클라이언트 앱 구동 시 비밀번호를 입력하면, 오티피를 생성하는 단계, 클라이언트 단말기가 인증 서버에 가상 번호 생성 요청을 전송하는 단계, 인증 서버는 상기 가상 번호 생성 요청에 포함된 오티피를 암호화 키로 가상 번호를 생성하는 단계, 인증 서버가 생성된 가상 번호를 상기 클라이언트 단말기에 전송하는 단계, 클라이언트 단말기가 상기 가상 번호를 수신하여, 상기 가상 번호 및 결제 정보를 포함하는 결제 요청을 송신하는 단계, 인증 서버가 상기 결제 요청을 송신하여, 상기 가상 번호에 대응되는 실제 카드 번호를 추출하는 단계, 및 인증 서버가 카드사 서버와 연동하여 상기 실제 카드 번호에 기반한 결제 승인을 처리하는 단계를 포함한다.A fourth aspect of the present invention is a virtual number payment method comprising the steps of: driving a client app on a client terminal; generating an api when a password is input when the client app is running; The authentication server generating a virtual number using an encryption key included in the virtual number creation request, transmitting the virtual number generated by the authentication server to the client terminal, Transmitting a payment request including the virtual number and the payment information, extracting an actual card number corresponding to the virtual number by transmitting the payment request to the authentication server, And processing the settlement approval based on the actual card number in cooperation with the step It includes.
본 발명의 제 5 측면은, 클라이언트 단말기로부터 결제 진행 및 결제에 필요한 정보를 입력받아 결제를 요청하는 가맹점 서버; 상기 가맹점 서버로부터 결제 요청을 수신하여 인증사에 전달하는 카드결제 대행사 서버; 상기 클라이언트 단말기상에서 클라이언트 앱을 구동하여 결제 프로세스를 진행하도록 지원하는 결제 인증 서버 및 오티피를 발급 및 관리하는 오티피 서버를 포함하는 인증 서버; 및 상기 클라이언트 앱을 구동하여 오티피를 생성하고, 상기 결제 인증 서버에 상기 오티피를 포함한 가상 번호 생성 요청을 송신하는 클라이언트 단말기를 포함하고, 상기 결제 인증 서버는 상기 가상 번호 생성 요청을 수신하여 결제 비밀번호를 인증한 후, 상기 가상 번호 생성 요청을 상기 오티피 서버에 전달하고, 상기 오티피 서버는 상기 가상 번호 생성 요청에 포함된 상기 오티피를 검증하고, 상기 오티피를 암호화 키값으로 한 가상 번호를 생성하여 상기 클라이언트 단말기에 전송하는 것을 특징으로 한다.According to a fifth aspect of the present invention, there is provided a merchant server for receiving payment information from a client terminal, A card settlement agency server for receiving a settlement request from the merchant server and transmitting the settlement request to an authentication company; An authentication server including a payment authentication server for supporting the client application on the client terminal to proceed with a payment process and an authentication server for issuing and managing an authentication; And a client terminal for generating an auth type by driving the client app, and transmitting a virtual number generation request including the atopy to the payment authentication server, wherein the payment authentication server receives the virtual number generation request, After authenticating the password, the authentication server transmits the virtual number creation request to the atopy server. The atopy server verifies the atopy included in the virtual number creation request, and creates a virtual number And transmits the generated information to the client terminal.
본 발명의 오티피를 이용한 가상 번호 생성 방법 및 시스템은, 최근 이슈화되고 있는 개인정보 유출 문제를 방지하는 해결책이 될 수 있다. 또한, 일회용 비밀번호인 오티피를 복호화 키값으로 활용하여 가상 번호를 생성함으로써, 결제 또는 인증 프로세스 상에서 안전한 거래가 가능하도록 지원한다. The virtual number generation method and system using the OTF of the present invention can be a solution for preventing the problem of leakage of personal information, which has recently become an issue. In addition, a virtual number is generated by using an opportunistic password as a decryption key value, so that a secure transaction can be supported in a payment or authentication process.
이처럼, 본 발명은 데이터 송수신 시 가상 번호를 활용함으로써 결제에 필요한 데이터 송수신 과정에서 실제 카드 번호 또는 휴대전화번호와 같은 개인정보가 유출되지 않도록 방지하고, 유출되더라도 정보가 노출되지 않도록 보호가능하다는 이점을 갖는다.As described above, the present invention utilizes a virtual number when transmitting and receiving data, thereby preventing personal information such as an actual card number or a mobile phone number from being leaked during data transmission and reception required for settlement, and protecting the information from being exposed even if it is leaked. .
도 1은 본 발명의 일 실시형태에 따른 오티피를 이용한 가상 번호 생성 시스템(100)을 도시한 것이다.
도 2는 본 발명의 일 실시형태에 따른 오티피 생성에 이용되는 클라이언트 단말기(10)의 운영체제를 도시한 것이다.
도 3의 (a)는 본 발명의 일 실시형태에 따른 클라이언트 단말기에서의 일반적인 동작을 도시한 것이고, (b)는 본 발명의 다른 실시형태에 따른 오티피 이용 시의 동작을 비교하여 도시한 것이고, (c)는 본 발명의 일 실시형태에 따른 보안 UI의 구현예를 도시한 것이다.
도 4는 본 발명의 일 실시형태에 따른 클라이언트 단말기 상에서 오티피를 이용한 가상 번호 생성 방법을 도시한 순서도이다.
도 5는 본 발명의 일 실시형태에 따른 오티피를 이용한 가상 번호 생성 방법을 도시한 것이다.
도 6은 본 발명의 다른 실시형태에 따른 오티피를 이용한 가상 번호 생성 방법을 도시한 것이다.
도 7은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 가입 절차를 설명하기 위한 흐름도이다.
도 8은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 가입 절차를 구현한 스크린샷을 도시한 것이다.
도 9는 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 이용 절차를 설명하기 위한 흐름도이다.
도 10은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 중 온라인 결제 서비스 절차를 구현한 스크린 샷이다.
도 11은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 중 오프라인 결제 서비스 절차를 구현한 스크린 샷이다.
도 12는 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스의 결제 취소 절차를 설명하기 위한 흐름도이다.
다양한 도면에서 동일한 참조번호와 기호는 동일한 구성요소를 나타낸다.
FIG. 1 shows a virtual number generation system 100 using an orthopyxis according to an embodiment of the present invention.
2 shows an operating system of the client terminal 10 used for generating an opportunistic packet according to an embodiment of the present invention.
Fig. 3 (a) shows a general operation in a client terminal according to an embodiment of the present invention, Fig. 3 (b) shows a comparison of operations at the time of using an OTF according to another embodiment of the present invention (c) illustrate an embodiment of a security UI according to an embodiment of the present invention.
4 is a flowchart illustrating a virtual number generation method using an OTFT on a client terminal according to an embodiment of the present invention.
FIG. 5 illustrates a virtual number generation method using an OTFT according to an embodiment of the present invention.
6 illustrates a virtual number generation method using an OTFT according to another embodiment of the present invention.
FIG. 7 is a flowchart illustrating a virtual number-based payment service registration procedure according to an embodiment of the present invention.
FIG. 8 is a screen shot illustrating a virtual number-based payment service registration procedure according to an embodiment of the present invention.
9 is a flowchart illustrating a procedure of using a virtual number based payment service according to an embodiment of the present invention.
10 is a screen shot illustrating an online settlement service procedure among a virtual number based settlement service according to an embodiment of the present invention.
FIG. 11 is a screen shot illustrating an offline settlement service procedure among virtual number based settlement services according to an embodiment of the present invention.
12 is a flowchart illustrating a payment cancellation procedure of a virtual number-based payment service according to an embodiment of the present invention.
In the various drawings, the same reference numerals and symbols denote the same elements.
이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명의 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 실시 예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다. 본 명세서에서, 어떤 부분이 어떤 구성요소를 포함한다고 언급되는 경우에, 이는 그 외의 다른 구성요소를 더 포함할 수도 있다는 것을 의미한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference symbols as possible even if they are shown in different drawings. In the following description of the embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the difference that the embodiments of the present invention are not conclusive. In this specification, when it is mentioned that a certain element includes an element, it means that it may further include other elements.
도 1은 본 발명의 일 실시형태에 따른 오티피를 이용한 가상 번호 생성 시스템(100)을 도시한 것이다. 시스템(100)은 클라이언트 단말기(10), 클라이언트 PC(20), 온라인 가맹점 서버(30), 카드결제 대행사(VAN사) 서버(40), 인증 서버(50), 카드사 서버(60), 및 발급은행 서버(70)를 포함하고, 구성요소들(10, 20, 30, 40, 50, 60, 70)은 유무선 네트워크를 통해 상호 통신 가능하다. 본 도면에서는 구성요소들(40, 50, 60, 70)을 분리하여 도시하였으나, 일부 또는 전부가 서로 결합된 형태로도 구현될 수 있다. FIG. 1 shows a virtual number generation system 100 using an orthopyxis according to an embodiment of the present invention. The system 100 includes a client terminal 10, a client PC 20, an online merchant server 30, a card settlement agency (VAN company) server 40, an authentication server 50, a card issuer server 60, A bank server 70 and the components 10, 20, 30, 40, 50, 60 and 70 are capable of communicating over a wired or wireless network. Although the components 40, 50, 60, and 70 are shown separately in the figure, some or all of them may be combined.
클라이언트 PC(20)는 본 발명에서 제안하는 가상 번호를 이용한 결제 또는 인증 프로세스를 수행할 수 있는 랩탑, 데스크탑, 워크스테이션, 또는 다른 적절한 컴퓨터들과 같이 다양한 디지털 컴퓨터뿐만 아니라, 인터넷 프로토콜을 이용한 IPTV 등 통신이 가능한 디지털 디바이스를 모두 포함한다. The client PC 20 may be a variety of digital computers such as a laptop, a desktop, a workstation, or other suitable computers capable of performing a payment or authentication process using the virtual number proposed in the present invention, an IPTV And digital devices capable of communicating.
클라이언트 단말기(10)는 본 발명에서 제안하는 클라이언트 어플리케이션(이하, '클라이언트 앱'이라 함)을 구동가능하고, 인증 서버(50) 또는 클라이언트 PC(20)와 접속가능한 통신기기로서, 금융 거래 및 상거래가 가능한 하드웨어 및 소프트웨어를 탑재한 모바일 컴퓨팅 디바이스를 말한다. 사용자의 클라이언트 단말기(10)는 개인용 휴대 단말기(PDA), 셀룰러 전화, 스마트폰 등 다양한 형태의 모바일 디바이스일 수 있다. 본 발명에 대한 설명에서, 클라이언트 단말기(10)는 컴퓨터에 버금가는 성능과 이동성을 겸비한 스마트폰을 중심으로 설명하나, 이에 한정되는 것은 아니다.The client terminal 10 is a communication device capable of driving a client application (hereinafter referred to as a "client application") proposed by the present invention and connectable to the authentication server 50 or the client PC 20, Refers to a mobile computing device equipped with hardware and software capable of running on a computer. The user's client terminal 10 can be any type of mobile device, such as a personal digital assistant (PDA), a cellular phone, a smart phone, and the like. In the description of the present invention, the client terminal 10 will be described with reference to a smart phone having a performance comparable to that of a computer and mobility, but is not limited thereto.
참고로, 어플리케이션은 운영 체제(Operating System, OS) 상에서 동작하는 일종의 소프트웨어로서, 사용자 또는 타 응용프로그램에 대해 특정기능을 직접 수행하도록 설계된 프로그램을 말한다. 본 발명의 실시에 따른 스마트폰과 같은 사용자 휴대용 단말기에서 이용되는 보안 어플리케이션은 모바일 기기에 적용되도록 제작된 모바일 어플리케이션일 수 있으며, 모바일 어플리케이션은 웹에 접속하는 브라우저 기반의 어플리케이션, 단말기 운영체제에 의존하여 단말기에 따라 제작되는 네이티브(native) 어플리케이션, 또는 이들을 조합한 하이브리드 어플리케이션 등의 형태로 구현될 수 있다. 컴퓨터로 판독 가능한 기록매체에는 어플리케이션 데이터, 시스템 데이터 등이 소정의 프로그래밍 언어(예컨대, C언어 또는 자바(JAVA))로 기록, 저장되어 있다. 어플리케이션 데이터는 사용자와의 상호작용이 가능하도록 구현되는 각종 프로그램 기능(예컨대, 디스플레이 화면을 통해 사용자의 터치를 인식하여 화면 전환)을 가진 데이터로서, 풀 모드(full mode) 데이터라고도 한다. 시스템 데이터는 어플리케이션 관리 정보, 스타트업 정보 등을 포함하는 데이터를 말하며 어플리케이션 데이터를 재생하기 위한 속성 및 동작 정보이다. 그 밖의 추가적인 기능을 구현하기 위한 정보를 기록매체에 저장할 수 있다. For reference, an application is a kind of software operating on an operating system (OS), and is a program designed to directly perform a specific function with respect to a user or another application program. A security application used in a user portable terminal such as a smart phone according to an embodiment of the present invention may be a mobile application that is adapted to be applied to a mobile device. The mobile application may be a browser-based application that accesses the web, A native application manufactured in accordance with the present invention, or a hybrid application combining the applications. Application data, system data, and the like are recorded and stored in a predetermined programming language (for example, C language or Java (JAVA)) on a computer-readable recording medium. The application data is data having various program functions (for example, screen switching by recognizing a user's touch through a display screen) implemented so as to enable interaction with a user, and is also referred to as full mode data. System data refers to data including application management information, start-up information, and the like, and attribute and operation information for reproducing application data. And information for implementing other additional functions can be stored in the recording medium.
본 발명의 클라이언트 단말기(10)는 단말기 상에서 다양한 어플리케이션을 동작할 수 있는 하드웨어 및 소프트웨어를 구비하고, 특히, 본 발명에서는 보안 어플리케이션(즉, 클라이언트 앱)을 이용한 인증, 금융 거래 및 결제 진행이 가능한 어플리케이션을 동작시키는 보안 OS(운영체제)를 구동하기 위한 프로세서를 구비한다. The client terminal 10 according to the present invention includes hardware and software capable of operating various applications on a terminal. In particular, the present invention provides an application capable of performing authentication using a security application (i.e., a client application) And a processor for operating a security OS (operating system) for operating the security OS.
본 발명의 클라이언트 단말기(10)는 금융 거래 시, 클라이언트 단말기(10)의 일반적인 어플리케이션 실행에 이용되는 일반 OS와는 달리 독립적으로 구동하는 보안 OS를 이용하여 금융 거래를 실시하는 것을 특징으로 한다. 이처럼 클라이언트 단말기(10) 내에서 보안 OS 및 보안 어플리케이션이 동작하는 환경을 트러스트존(Trust Zone)이라고 명명하며, 본 발명은 트러스트존 기반의 금융 거래에 관한 것이다. 트러스트존 기반의 동작에 대해서는 도 2 및 3을 참조하여 더 상세히 설명한다. The client terminal 10 of the present invention performs a financial transaction using a security OS independently operated, unlike a general OS used for executing a general application of the client terminal 10 during a financial transaction. The environment in which the security OS and the security application operate in the client terminal 10 is referred to as a trust zone. The present invention relates to a trust zone-based financial transaction. The operation of the trust zone based will be described in more detail with reference to FIGS. 2 and 3. FIG.
본 발명의 클라이언트 단말기(10)는 보안 영역인 트러스트존에 카드 정보를 저장하고, 필요 시 카드 번호를 암호화하여 가상 번호로 생성 후 외부로 송수신하도록 구현할 수 있다. 즉, 실제 카드 번호 자체를 데이터 송수신 하지 않기 때문에 카드 번호와 같은 중요 개인정보의 유출을 막을 수 있다. 일 실시예로서, 카드 정보는 트러스트존(TZ) 또는 USIM과 같은 보안 영역에 저장되거나, 또는 카드 정보가 암호화된 형태로 일반 영역에 저장될 수 있다. 일반 영역은 일반 운영체제에 의해 구동 및 관리되고, 접근에 제한이 없는 영역을 말한다.The client terminal 10 of the present invention can store the card information in the trust zone, which is a security area, and generate a virtual number by encrypting the card number if necessary, and transmit / receive the virtual number to the outside. That is, since the actual card number itself is not transmitted or received, it is possible to prevent the leakage of important personal information such as the card number. In one embodiment, the card information may be stored in a security zone such as a trust zone (TZ) or a USIM, or the card information may be stored in a general area in an encrypted form. A general area is an area that is operated and managed by a general operating system and has no restriction on access.
또한, 본 발명의 오티피는, 클라이언트 단말기(10) 상에서 독립적으로 구동하는 보안 OS를 이용하여 클라이언트 앱 상에서 생성될 수 있다. 본 발명의 오티피 생성 방법은, 구체적으로, 시간과 OTP 키를 기반으로 한 시간 기반 OTP 생성 알고리즘(예컨대, RFC 6238 표준에 의한 OTP 생성 알고리즘), 내부적인 카운터 값과 시간, OTP 키를 기반으로 한 이벤트 기반 OTP 생성 알고리즘(RFC 4226과 RFC 6238 표준에 의한 OTP 생성 알고리즘), 또는 시간과 클라이언트/서버 간 랜덤값, OTP 키를 기반으로 하는 첼린지-리스판스(Challenge-Response) OTP 생성 알고리즘(RFC 6287 표준에 의한 OTP 생성 알고리즘)이 이용될 수 있다.In addition, the inventive entity can be created on the client application using a secure OS that runs independently on the client terminal 10. Specifically, the OTTP generation method of the present invention is based on a time-based OTP generation algorithm based on time and an OTP key (for example, an OTP generation algorithm according to the RFC 6238 standard), an internal counter value and time, and an OTP key Challenge-Response OTP generation algorithm based on one event-based OTP generation algorithm (OTP generation algorithm according to RFC 4226 and RFC 6238 standard) or random value between time and client / server and OTP key ( An OTP generation algorithm according to the RFC 6287 standard) can be used.
본 발명의 일 실시예에 따르면, 클라이언트 PC(20) 및 클라이언트 단말기(10)는 예컨대, 은행 업무와 같은 일반 금융거래 및 가맹점 사이트나 온라인 쇼핑몰을 이용한 상거래에서도 활용될 수 있다. 클라이언트 PC(20) 및 클라이언트 단말기(10)는 네트워크를 통해 인증 서버(50), 또는 온라인 가맹점 서버(30)와 접속할 수 있고, 안내에 따라 결제 또는 인증 프로세스를 진행하게 된다. 일 실시예로서, 클라이언트 PC(20)에서 온라인 가맹점 서버(30)와 접속하여 결제 프로세스를 진행하고, 클라이언트 단말기(10)가 클라이언트 앱을 실행하여 인증 서버(50)와 연동하여 가상 번호를 생성할 수 있다. 이 때, 구성요소들간의 접속을 돕는 네트워크는 임의 형태나 매체의 디지털 데이터 통신(예, 통신 네트워크)으로 구현될 수 있고, 통신 네트워크의 예에는 근거리통신망(LAN), 광역 통신망(WAN) 및 인터넷 등이 있으며, 3G, WiFi, LTE 등 다양한 무선 통신의 형태를 포함하여 다양한 모바일 네트워크로 이용가능하다.According to an embodiment of the present invention, the client PC 20 and the client terminal 10 can be utilized in, for example, general financial transactions such as banking, and commerce using merchant sites or online shopping malls. The client PC 20 and the client terminal 10 can access the authentication server 50 or the online merchant server 30 through the network and proceed with the payment or authentication process according to the guidance. In one embodiment, the client PC 20 accesses the online merchant server 30 and proceeds with the payment process. When the client terminal 10 executes the client application and generates a virtual number in cooperation with the authentication server 50 . At this time, the network that facilitates connection between the components may be implemented in any form or medium of digital data communication (e.g., a communication network), examples of which include a local area network (LAN), a wide area network And can be used in various mobile networks including various forms of wireless communication such as 3G, WiFi, and LTE.
온라인 가맹점 서버(30)는 PG(Payment Gateway) 서버라고도 하며, 클라이언트 PC(20) 또는 클라이언트 단말기(10)를 이용하여 전자 상거래 시, 인터넷 결제 업무를 대행하여 결제 또는 인증 프로세스를 지원하는 서버이며, 해당 온라인 가맹점에서 제공하는 웹페이지 또는 앱을 통해 결제 또는 진행 프로세스를 안내할 수 있다.The online merchant server 30 is also referred to as a PG (Payment Gateway) server. The online merchant server 30 is a server that supports the settlement or authentication process on behalf of the Internet settlement service when performing electronic commerce using the client PC 20 or the client terminal 10, You can guide the payment or progress process through the web page or app provided by the online merchant.
카드결제 대행사(VAN사) 서버(40)는 여러 카드사의 카드 결제를 대행해주는 서버로서, 온라인 가맹점 서버(30) 및 인증 서버(50)와 연동하여 결제 또는 인증에 필요한 정보를 카드사(60)에 전달한다.The card payment agency (VAN company) server 40 is a server for payment of card payment by a plurality of card companies. The server 40 interworks with the online merchant server 30 and the authentication server 50 to send information necessary for settlement or authentication to the card company 60 .
인증 서버(50)는 클라이언트 단말기(10)상에서 클라이언트 앱을 구동시키고, 클라이언트 앱을 통한 가상 번호 생성 시 필요한 정보(오티피)를 제공 및 관리한다. 또한 일 실시예로서, 인증 서버(50)가 발급한 오티피를 이용하여 가상 번호를 복호화할 수 있고, 다른 실시예로 오티피를 카드사(60) 또는 카드결제 대행사(40)로 전달하여 복호화를 진행하도록 지원할 수 있다. 인증 서버(50)는 별도의 오티피 서버와 연동하여 동작하거나, 오티피 서버를 포함하여 오티피 발급 및 관리를 수행할 수 있다.The authentication server 50 operates the client application on the client terminal 10 and provides and manages the information (orthape) necessary for generating the virtual number through the client application. In an embodiment, the virtual number can be decrypted using the authentication issued by the authentication server 50. In another embodiment, the authentication is transmitted to the card company 60 or the card settlement agency 40 to decrypt You can support to proceed. The authentication server 50 may operate in conjunction with a separate authentication server or may perform authentication and management including an authentication server.
카드사 서버(60) 및 발급은행 서버(70)는 카드결제 대행사 서버(40)로부터 전달된 정보를 이용하여 결제 또는 인증을 처리할 수 있다. 다른 실시예로서, 카드사 서버(60)가 가상 번호를 전달받고, 오티피를 제공받아 가상 번호를 복호화하고 결제를 진행하도록 구현할 있다. 여기서, 카드사 서버(60)는 결제용 카드를 발급하여 해당 카드로 결제를 처리하는 카드사의 서버를 말하며, 발급은행 서버(70)는 본 발명에서 이용하는 오티피를 발급한 은행 서버를 말한다. 카드사 서버(60)는 발급은행 서버(70)와 연동하여 결제용 카드의 결제계좌에 대한 결제 처리 요청 및 그에 대한 응답을 수신할 수 있다. 예를 들어, 체크카드를 이용한 결제의 경우 발급은행 서버(70)와 실시간 연동하여 출금처리를 수행하고, 신용카드의 경우 카드사 서버(60)에서 승인 처리 후 결제 시점에 발급은행 서버(70)와 연동하여 하나 이상의 결제 건들에 대한 출금 처리를 수행할 수 있다.The card issuer server 60 and the issuing bank server 70 can process payment or authentication using the information transmitted from the card settlement agency server 40. [ In another embodiment, the card issuer server 60 receives a virtual number, receives an opportunistic, decrypts the virtual number, and proceeds with settlement. Herein, the card issuer server 60 refers to a server of a card issuer that issues a payment card and processes settlement with the card, and the issuance bank server 70 refers to a bank server that issued the apex used in the present invention. The card issuer server 60 can receive a payment processing request and a response to the payment transaction of the payment card in cooperation with the issuing bank server 70. [ For example, in the case of payment using a check card, the issuance processing is performed in real time in cooperation with the issuing bank server 70. In the case of a credit card, the issuer server 70 And can perform the withdrawal processing for one or more payment terms in interlocking manner.
본 발명은 이러한 구성요소들(10, 20, 30, 40, 50, 60, 70)을 이용하여, 전자 상거래 시, 클라이언트 단말기(10)에서 구동하는 클라이언트 앱을 통해 오티피를 이용한 가상 번호를 생성하고, 가상 번호를 이용한 결제 및 인증 프로세스를 진행하는 것을 특징으로 한다.
The present invention utilizes these components (10, 20, 30, 40, 50, 60, 70) to generate a virtual number using an OTF through a client app running on the client terminal 10 And proceeds with the settlement and authentication process using the virtual number.
도 2는 본 발명의 일 실시형태에 따른 오티피 생성에 이용되는 클라이언트 단말기(10)의 운영체제를 도시한 것이다. 본 발명의 클라이언트 단말기(10)는 일반 OS(114) 및 일반 어플리케이션(112)을 구동하는 일반 환경(Normal World; 110)을 구비하고, 이와 독립적으로 동작하는 보안 환경(Secure World 또는 Trust Zone; 130)을 구비한다. 보안 환경인 트러스트존(130) 내에서는 보안 OS(Trust OS; 134) 및 보안 어플리케이션(Trusted App; 132)이 일반 OS(114), 일반 어플리케이션(112)과는 독립적으로 구동하되, 도 2에 도시된 것처럼, 사용자 인터페이스(120)의 일부 또는 전부를 공유할 수 있다. 또한 클라이언트 단말기(10)는 트러스트존(130)과 일반 환경(110)을 선택적으로 동작가능한 트러스트존 기술 기반의 단말기 프로세서(150)(예컨대, ARM 프로세서)를 포함한다.2 shows an operating system of the client terminal 10 used for generating an opportunistic packet according to an embodiment of the present invention. The client terminal 10 of the present invention includes a normal environment 110 for driving the general OS 114 and the general application 112 and a secure environment 130 ). The Trust OS 134 and the Trusted App 132 operate independently of the normal OS 114 and the general application 112 in the Trust Zone 130 which is a security environment, May share some or all of the user interface 120, as shown. The client terminal 10 also includes a terminal processor 150 (e.g., an ARM processor) based on trust zone technology capable of selectively operating the trust zone 130 and the general environment 110.
트러스트존(130)은 보안 환경을 지원하는 보안 OS(134) 및 보안 OS에 의해 동작하는 보안 어플리케이션(132)을 포함한다. 트러스트존(130)은 스마트 기기와 같은 클라이언트 단말기의 모바일 CPU(AP)를 일반 영역과 보안 영역으로 논리적으로 분리한 후, 보안 영역으로의 접근을 제한하도록 구현하는 하드웨어 기반의 보안실행환경(TEE) 기술이다. 보안 영역은 일반 환경(110)과 논리적으로 분리되어 있으며, 사전에 정의된 통신을 위해 정의된 인터페이스(120) 및 공유 메모리를 제외하고는 서로 접근할 수 없도록 구현하여 사전 정의된 인터페이스를 통해서만 통신이 가능하며, 그 외의 접근은 차단된다. 또한 트러스트존(130)은 TSM(Trusted Service Manager)이 인가한 사업자만 어플리케이션을 설치, 사용할 수 있도록 제한하고, 별도의 영역에서 완전히 분리되어 운용될 뿐만 아니라, 부팅 시에도 일반 OS보다 우선권을 갖는 특징이 있다. 이처럼, 완전히 분리된 보안 영역의 구현을 통해, E2E용 키, 개인 키 등을 저장할 경우에도 안전한 저장이 가능하다. 일 실시예로서, 트러스트존(130)에서 보안 어플리케이션(132)을 이용하여 저장된 데이터는 암호화된 형태로서 일반 환경(110)에 저장될 수 있지만, 일반 환경에서 복호화가 불가하며, 동일 단말기의 다른 보안 어플리케이션에서도 복호화가 불가하도록 구현된다. 다른 실시예로서, 보안 어플리케이션(132)과 동일한 종류의 어플리케이션이더라도 다른 기기에서는 복호화가 불가하도록 구현된다.The trust zone 130 includes a secure OS 134 supporting a secure environment and a secure application 132 operated by a secure OS. The trust zone 130 is a hardware-based security execution environment (TEE) that logically separates a mobile CPU (AP) of a client terminal such as a smart device into a general area and a security area and then implements access to the security area, Technology. The security zone is logically separated from the general environment 110. The security zone is implemented such that it can not access each other except for the interface 120 and the shared memory defined for the predefined communication, And other access is blocked. In addition, the trust zone 130 restricts installation and use of applications only by a service provider authorized by the Trusted Service Manager (TSM), and operates in a completely separated manner in a separate area, . In this way, secure storage is possible even when storing the E2E key, private key, etc. through the implementation of the completely separated security zone. In one embodiment, data stored using the secure application 132 in the trust zone 130 may be stored in the general environment 110 as an encrypted form, but it is not decryptable in a normal environment, It is implemented so that decoding is not possible in the application. As another embodiment, even if an application of the same kind as that of the security application 132 is used, it can not be decrypted by another device.
이처럼, 트러스트존(130)은 논리적으로 완전히 분리되고 독립적으로 구동하므로, 사용자 클라이언트 단말기(10)를 이용한 금융 거래 및 상거래 시 금융 관련 정보를 안전하게 저장 및 처리할 수 있다. 트러스트존 기반의 보안 어플리케이션(132)은 보안 인증, 보안 로그인을 구현하고, 본 발명에서 제안하는 오티피 및 가상 번호를 생성하며, 나아가, 공인 인증서 등 보안이 필요한 정보를 암호화하여 저장할 수 있다.As such, the trust zone 130 is logically completely separated and driven independently, so that it is possible to safely store and process information related to financial transactions using the user client terminal 10 and financial information related to commercial transactions. The trust zone-based security application 132 implements security authentication and secure login, generates the authentication and virtual numbers proposed in the present invention, and further encrypts and stores information requiring security such as a public certificate.
특히, 트러스트존 기반의 보안 어플리케이션(132)은 보안 인증, 보안 로그인을 구현하기 위하여 보안 UI(Trust UI)를 구현함으로써, 보안 영역에서의 안전한 오티피의 생성을 실현하고, 본 발명에서 제안하는 오티피를 생성하며, 공인 인증서 등 보안이 필요한 정보를 안전하게 처리할 수 있다. 나아가, 보안 영역에서 보안 UI와 후술하는 E2E 암호화 방식을 결합한 신 기술을 구현함으로써, 해킹 불가능한 거래연동 오티피의 구현이 가능해진다. 보안 UI에 대해서는 도 3을 참조하여 더 상세히 설명한다.In particular, the trust zone-based security application 132 implements a secure UI (Trust UI) to implement security authentication and secure login, thereby realizing safe authentication in the security domain, And can securely process information requiring security such as an official certificate. Furthermore, by implementing a new technology that combines a security UI with the E2E encryption method described later in the security domain, it becomes possible to implement a non-hackable transaction-oriented authentication. The security UI will be described in more detail with reference to FIG.
본 발명의 클라이언트 앱, 즉 보안 어플리케이션(132)은 금융거래 또는 일반 상거래 시 트러스트존으로부터 저장된 카드 번호를 자동으로 인식하고, 인증 서버(50)로부터 오티피를 발급받거나 자체 생성하여, 가상 번호 생성에 이용함으로써, 보안성 및 데이터 안정성을 향상시키고, 본 발명의 오티피는 IoT(Internet of things; 사물 인터넷) 등에도 인증 수단으로서 활용할 수 있다진다. 본 발명에서 제안하는 거래연동 오티피는 실질적으로 물리적 매체 없이 생성되기 때문에, 사용자가 반드시 은행 등 기관을 직접 방문하지 않고도 온라인상에서 용이하게 발급받을 수 있다는 이점이 있다(예컨대, 인터넷전문은행 등의 온라인 기관을 활용하여 발급하도록 구현할 수 있다).
The client application of the present invention, that is, the security application 132, automatically recognizes the stored card number from the financial transaction or general commercial transaction trust zone, receives an authentication ticket from the authentication server 50 or generates it, The security and the data stability are improved, and the authentication of the present invention can be utilized as an authentication means in IoT (Internet of things). Since the transaction-related authentication proposed in the present invention is generated substantially without a physical medium, there is an advantage that a user can be easily issued online without visiting a bank or the like (for example, an online bank And can be implemented so as to be issued.
도 3의 (a)는 본 발명의 일 실시형태에 따른 클라이언트 단말기(10)에서의 일반적인 동작을 도시한 것이고, (b)는 본 발명의 다른 실시형태에 따른 트러스트존(130)에서의 동작을 비교하여 도시한 것이고, (c)는 보안 UI의 구현예를 도시한 것이다.3 (a) shows a general operation in the client terminal 10 according to an embodiment of the present invention, and FIG. 3 (b) shows an operation in the trust zone 130 according to another embodiment of the present invention (C) shows an implementation example of the security UI.
도 2를 참조하여 상술한 것처럼, 일반 환경(110)과 트러스트존(130)은 논리적으로 분리되어 있으며, 일반 어플리케이션(112) 실행 시 일반 OS(114)가 동작을 지원하고, 디스플레이부(170)를 통해 일반 UI(User Interface, 사용자 인터페이스; 116)를 표시한다(도 3의 (a)). 2, the general environment 110 and the trust zone 130 are logically separated, and when the general application 112 is executed, the general OS 114 supports the operation, and the display unit 170 displays, (UI) 116 (FIG. 3 (a)).
반면, 보안 어플리케이션(132) 실행 시에는, 보안 OS(Trust OS; 134)가 그 동작을 지원하고, 디스플레이부(170)를 통해 보안 UI(136; Trusted User Interface, 'TUI'라 함)를 표시한다(도 3의 (b)). 도 3의 (c)에 도시된 것처럼, 보안 UI(136)는 최우선 권한으로 일반 UI 보다 상위에 표시되므로 일반 환경(110)에서 접근이 불가능하고, 화면 터치 좌표 등을 일반 환경(110)에서 알 수 없도록 구현되므로, 트러스트존(130)을 통해 실행되는 금융 거래 또는 상거래의 안전성을 도모할 수 있다.On the other hand, at the time of execution of the security application 132, the security OS 134 supports the operation thereof and displays a security UI 136 ('TUI') through the display unit 170 (Fig. 3 (b)). As shown in FIG. 3 (c), since the security UI 136 is displayed with higher priority than the general UI, the security UI 136 can not be accessed in the normal environment 110, It is possible to secure the safety of financial transaction or commerce executed through the trust zone 130. [
특히, 보안 UI(136)가 구동되면, 입출력되는 모든 정보들은 외부 탈취가 불가능해진다. 보안화면이 구동되면 보안 영역이 CPU를 독점해서 사용하게 되어 일반 영역의 모든 연산 및 동작은 일시 중지되고, 별도의 OS(즉, 보안 OS)를 기반으로 한 트러스트존의 앱이 실행되기 때문에 공격자의 접근 자체를 차단한다. 이 때, 입력을 위한 키패드를 제외하고, 홈버튼, back 버튼 등 하드웨어 조작키 조차도 실행되지 않도록 구현함으로써 캡쳐나 녹화와 같은 하드웨어적인 데이터 송출을 막을 수 있으며, 일반 환경으로 돌아가기 위해서는 보안 UI에서 제공하는 SW Back 버튼을 통해서만 가능하도록 구현할 수 있다. 일례로, 트러스트존이 설치된 스마트폰을 PC와 연결하고, PC 화면을 프로젝터를 통해 보여줄 경우, 스마트폰에서 TZ OTP를 구동하게 되면, 보안 UI 화면이 실행되는 순간부터 스마트폰에서는 화면이 변경되지만, 출력포트가 차단되어 PC와 프로젝터 화면에서는 아무것도 보이지 않게 된다.Particularly, when the security UI 136 is activated, all input / output information can not be captured outside. When the security screen is activated, the security zone uses the CPU exclusively. Therefore, all operations and operations of the general area are suspended, and the application of the trust zone based on the separate OS (ie, security OS) It blocks access itself. At this time, it is possible to prevent hardware data transmission such as capturing and recording by implementing not to execute even hardware operation keys such as home button and back button except input keypad. In order to return to the normal environment, It can be implemented only through the SW Back button. For example, if a smartphone with a trust zone is connected to a PC and the PC screen is displayed through a projector, if the smartphone is running TZ OTP, the screen changes on the smartphone from the moment when the security UI screen is executed, The output port is blocked and nothing is displayed on the PC and projector screen.
보안 UI 실행 시 화면입출력의 모든 권한을 보안 영역이 취득하여 데이터의 입출력을 차단할 수 있고, 출력된 화면에 대한 캡쳐 또는 녹화도 불가하다. 예컨대, 기존의 소프트웨어 보안 방식을 통해서는 보안 화면을 구현하더라도 클라이언트 기기의 하드웨어 캡쳐 방식(예컨대, 홈 키와 전원 키를 동시에 누르면 화면이 캡쳐되는 방식)에 의한 화면 캡쳐를 차단할 방법이 없었다. 그러나 본 발명에서 구현하는 보안 UI(136)를 구동할 경우 화면 캡쳐 행위로도 캡쳐나 녹화가 이루어지지 않도록 차단함으로써, 기존 보안 방법의 취약점을 보완하였다. 또한 화면에 입력되는 모든 좌표값에 대해서도 외부에서 탈취가 불가하여 데이터 위변조를 막을 수 있다. 이러한 본 발명의 보안 UI를 구동할 경우, 기존의 가상키보드와 같은 추가적인 보안장치가 불필요하므로, 별도의 보안 솔루션 없이도 위변조가 방지되고, 키보드, 좌표값 보안도 가능해져 경제적이라는 이점도 갖는다.When the security UI is executed, all rights of the screen input / output can be acquired by the security area, and data input / output can be blocked. Capture or recording of the output screen is also impossible. For example, there is no way to block the screen capture by a hardware capture method (for example, a method of capturing a screen by pressing the home key and the power key at the same time) even if a security screen is implemented through an existing software security method. However, when the security UI 136 implemented in the present invention is operated, it is prevented from capturing or recording by a screen capture action, thereby completing the weakness of the existing security method. In addition, all coordinate values input on the screen can not be deodorized from the outside, and data forgery can be prevented. When the security UI according to the present invention is driven, additional security devices such as a virtual keyboard are unnecessary. Therefore, it is possible to prevent forgery and falsification without a separate security solution, and also to provide a keyboard and coordinate value security.
보안 UI(136)는 OTP PIN번호 입력 화면, OTP 생성 결과 화면에 이용되고, PIN번호 인증 후 OTP 생성값까지 보안UI 화면을 통해 해킹의 위험으로부터 안전하게 보호가 가능하다.The security UI 136 is used in the OTP PIN number input screen and the OTP generation result screen, and it is possible to safely protect the OTP generation value after the PIN number authentication from the risk of hacking through the security UI screen.
도 4는 본 발명의 일 실시형태에 따른 클라이언트 단말기(10) 상에서 오티피를 이용한 가상 번호 생성 방법을 도시한 순서도이다. 도 4의 가상 번호 생성 방법은 클라이언트 단말기(10) 상에서 클라이언트 앱을 구동하는 프로세스를 도시한 것이다.4 is a flowchart showing a virtual number generation method using an OTFT on the client terminal 10 according to an embodiment of the present invention. The virtual number generation method of FIG. 4 shows a process of driving a client application on the client terminal 10. [
본 발명의 가상 번호 생성 방법을 구동하기 전에, 클라이언트 단말기(10)는 어플리케이션 스토어(예컨대, 앱스토어)를 통해 클라이언트 앱을 다운받아 설치할 수 있다. 상술한 것처럼, 클라이언트 앱은 트러스트존 내에서 동작하도록 설치된다. 클라이언트 앱이 설치되면, 트러스트존을 이용한 오티피 기반 서비스(TZ OTP 서비스)를 위한 약관 동의 절차를 거치고, TZ OTP 기반의 결제 진행 시 이용할 카드 정보를 미리 입력하여, 유효성 검증 후 카드를 등록할 수 있다. 카드 정보는 실제 카드 번호, 유효기간, 이름, 비밀번호, 및 CVC 번호 등을 포함할 수 있고, 카드 정보의 일부 또는 전부를 이용하여 유효성 검증을 수행하고, 카드 정보 및 휴대전화번호와 같은 개인정보를 보안 영역에 저장할 수 있다. 이 때, 카드 정보가 여러개인 경우 구분이 용이하도록 카드 닉네임을 설정할 수 있고, 카드 정보 디스플레이 시 외부로 노출되지 않도록 카드 번호의 일부 또는 닉네임만 디스플레이하여 보여지도록 구현할 수 있다. 다른 실시예로서, 카드 정보 및 휴대전화번호화 같은 개인정보는 암호화된 데이터 형태로 일반 영역에 저장될 수도 있다. 암호화된 개인정보는 필요시에만 복호화를 거쳐 이용되거나 전송될 수 있고, 또는 암호화된 데이터 그대로 전송될 수도 있다.Before driving the virtual number generation method of the present invention, the client terminal 10 may download and install the client application through an application store (for example, an application store). As described above, the client app is installed to operate within the trust zone. When the client application is installed, the user can enter the card information to be used for the TZ OTP-based payment in advance, and then register the card after validation by following the agreement procedure for the OTF-based service (TZ OTP service) using the trust zone have. The card information may include an actual card number, an expiration date, a name, a password, and a CVC number. The card information may be validated using part or all of the card information, and personal information such as card information and mobile phone number Can be stored in the security area. At this time, a card nickname can be set so that it is easily distinguished when there are a plurality of card information, and only a part or a nickname of the card number can be displayed and displayed so as not to be exposed to the outside when displaying the card information. In another embodiment, card information and personal information such as cellular phone number may be stored in the general area in the form of encrypted data. The encrypted private information may be used or transmitted only through decryption, if necessary, or may be transmitted as encrypted data.
클라이언트 PC(20)가 온라인 가맹점 서버(30)와의 접속을 통해 결제를 진행하는 경우, 결제 요청에 따라 인증 서버(50)를 통해 클라이언트 단말기(10)에 푸쉬 방식으로 클라이언트 앱을 자동으로 구동하거나, 사용자가 수동으로 클라이언트 앱을 구동할 수 있다(410 단계). 본 명세서에서는, 클라이언트 PC(20)에서 온라인 결제를 진행하고, 클라이언트 단말기(10)에서 클라이언트 앱을 구동하여 가상 번호를 생성하는 실시예를 위주로 설명하지만, 모바일 결제의 경우 클라이언트 단말기(10) 상에서 온라인 가맹점 서버(30)와의 결제를 진행하고, 클라이언트 앱을 실행하여 가상 번호 생성 후 결제 프로세스를 진행할 수 있다. 즉, 결제 프로세스의 진행이 클라이언트 PC(20)에 한정되는 것은 아니며, 클라이언트 단말기(10)를 통해 웹 또는 앱 상에서 온라인/모바일 결제 진행이 가능하다.When the client PC 20 proceeds the settlement through the connection with the online merchant server 30, the client PC automatically pushes the client app 10 to the client terminal 10 through the authentication server 50 according to the payment request, The user can manually run the client app (step 410). In the present specification, an embodiment in which the client PC 20 proceeds with the online settlement and the client terminal 10 operates the client app to generate the virtual number will be described. However, in the case of the mobile settlement, The payment with the merchant server 30 is performed, the client application is executed, and the billing process is performed after the virtual number is generated. That is, the progress of the payment process is not limited to the client PC 20, and online / mobile settlement can be performed on the web or the app through the client terminal 10. [
클라이언트 앱은 보안 어플리케이션의 일종으로서, 구동 시 비밀번호의 입력을 요구할 수 있다(420 단계). 비밀번호의 입력을 통해 사용자의 본인 확인이 가능하며, 비밀번호 입력 시 자동으로 오티피가 발생하도록 구현할 수 있다(430 단계). 본 발명의 오티피는 클라이언트 앱을 이용하여 직접 생성될 수 있고, 오티피 서버와 연동하는 인증 서버(50)를 통해 비밀번호 입력 시 실시간으로 발급받을 수도 있다.The client application is a kind of security application, and may request input of a password at operation (step 420). It is possible to confirm the identity of the user through the input of the password and to automatically generate the atype when the password is input (operation 430). The authenticity of the present invention can be directly generated using a client application, and can be issued in real time when a password is input through an authentication server 50 interlocked with an opportunistic server.
오티피가 발생함과 동시에 또는 전후로, 클라이언트 앱은 보안 영역(TZ 또는 USIM)에 미리 저장되어 있거나 또는 일반 영역에 암호화된 형태로 미리 저장되어 있던 카드 번호를 인식할 수 있다(440 단계). 카드가 여러 장인 경우에는 사용자의 선택에 의해 1개의 카드를 선택하여 인식하도록 구현할 수 있다. 이 때, 카드 번호는 번호의 일부 또는 닉네임만 디스플레이된다.At step 440, the client app can recognize the card number that is stored in advance in the security area (TZ or USIM) or that has been stored in the encrypted form in the general area at the same time as or after the occurrence of the atopy. When there are a plurality of cards, one card can be selected and recognized by the user's choice. At this time, only the part of the number or the nickname is displayed on the card number.
클라이언트 앱은 카드 번호가 인식되면 미리 정의된 암호화 방식을 이용하여 카드 번호를 암호화한 가상 번호를 생성한다(450 단계). 예를 들어, 본 발명은 FPE(Format Preserving Encryption) 방식을 적용하여 가상 번호를 생성할 수 있다. FPE는 기존 데이터의 속성을 유지하기 위해, 같은 속성을 지닌 임의의 값으로 치환 또는 변환하는 것이 아닌 대칭키 암호 알고리즘을 이용한 순수 암호화 기술이며, 이는 당업자에게 이미 알려진 암호화 기술로서 이에 대한 상세한 설명은 본 명세서에서 생략한다. 클라이언트 앱은 FPE 방식을 통해 오티피를 이용한 가상 번호(예컨대, 가상 카드 번호(One Time Card Number, OTC))를 생성한다. 본 명세서에서는 FPE를 이용하여 암호화를 수행하는 경우에 대해 주로 설명하였으나, 암호화 방식이 이에 한정되는 것은 아니며 다른 암호화 방식이 본 발명에 적용될 수 있다.When the card number is recognized, the client app generates a virtual number by encrypting the card number using a predefined encryption method (operation 450). For example, the present invention can generate a virtual number by applying a Format Preserving Encryption (FPE) scheme. FPE is a pure encryption technique using a symmetric key encryption algorithm instead of substituting or transforming it with any value having the same property in order to maintain the property of the existing data. This is a known encryption technique by a person skilled in the art, Are omitted from the specification. The client application generates a virtual number (e.g., a one-time card number (OTC)) using an OTF via the FPE method. In this specification, the case where encryption is performed using FPE has been mainly described, but the encryption method is not limited thereto and other encryption methods can be applied to the present invention.
클라이언트 PC(20) 또는 클라이언트 단말기(10)를 통한 온라인 결제를 진행하는 경우에는, 생성한 가상 번호(OTC)를 전송하여 결제를 진행한다(470 단계). 일 실시예로서, 클라이언트 앱을 통해 인증 서버(30)에 전송하여, 인증 서버(30) 또는 카드사 서버(60)에서 복호화 및 결제를 진행하도록 구현할 수 있다. 다른 실시예로서, 클라이언트 PC(20)로 결제를 진행하는 경우 클라이언트 단말기(10)에 생성된 가상 번호를 클라이언트 PC(20)에 입력(직접 입력 또는 전송)하여, 클라이언트 PC(20)를 통해 온라인 가맹점 서버(30)로 전송하도록 구현할 수 있다. 클라이언트 단말기(10)에서 모바일 결제를 진행하는 경우에는 해당 웹페이지 또는 앱으로 가상 번호가 입력되도록 구현하여, 온라인 가맹점 서버(30)로 전송할 수 있다.In the case of conducting online settlement through the client PC 20 or the client terminal 10, the generated virtual number OTC is transmitted to proceed with settlement (step 470). In an embodiment, the authentication server 30 or the card issuing server 60 may transmit the decryption key to the authentication server 30 through the client application, and decrypt and settle the decryption key. The virtual number generated in the client terminal 10 may be input (directly input or transmitted) to the client PC 20 and the virtual number generated in the client PC 20 may be transmitted to the client PC 20 via the client PC 20 To the merchant server 30. When the mobile terminal 10 proceeds with the mobile payment, the virtual number is input to the web page or the application, and the virtual number is inputted to the online merchant server 30.
온라인 결제 시에는 사용자의 ID 값 확인을 위해 추가로 휴대전화번호를 입력 및 전송하도록 구현할 수 있으며, 가상 번호 전송 시 휴대전화번호를 함께 전송할 수 있다.At the time of online payment, the mobile phone number can be further inputted and transmitted for checking the ID value of the user, and the mobile phone number can be transmitted together with the virtual number transmission.
오프라인 결제 시에는 가상 번호를 결제 코드로 변환할 수 있다(480 단계). 즉, 오프라인 매장의 결제 단말기를 통해 인식가능하도록 일련의 숫자, 바코드 또는 QR 코드를 변환하여 생성할 수 있고, 결제 단말기가 NFC와 같은 근거리 통신을 통해 결제 코드를 인식하여 결제를 진행할 수 있다. 다른 실시예로서, 결제 코드는 가상 번호 및 휴대전화번호를 기반으로 생성되어, 결제 요청 시 가상 번호 및 휴대전화번호가 함께 전송되도록 구현될 수 있다.At the time of offline payment, the virtual number can be converted into a payment code (step 480). That is, a series of numbers, bar codes or QR codes can be converted and generated so as to be recognized by the payment terminal of the offline store, and the payment terminal can recognize the payment code through local communication such as NFC and proceed payment. In another embodiment, the payment code may be generated based on a virtual number and a mobile phone number, and may be implemented so that a virtual number and a mobile phone number are transmitted together when a payment is requested.
가상 번호 및 휴대전화번호는 인증 서버(50) 또는 카드사 서버(60)에서 오티피를 복호화 키값으로 이용하여 복호화되어 실제 카드 번호 및 휴대전화번호를 추출할 수 있다. 이처럼, 데이터 송수신 중에 온라인 가맹점 서버(30) 또는 카드결제 대행사 서버(40)단에서는 가상 번호를 복호화할 수 없도록 구현함으로써, 데이터 안정성 및 보안성을 향상시킬 수 있고, 일회성 번호인 오티피의 활용성을 더 높일 수 있다.
The virtual number and the mobile phone number can be decrypted using the authentication key in the authentication server 50 or the card issuer server 60 to extract the actual card number and the mobile phone number. As described above, during the data transmission / reception, the virtual merchant server 30 or the card settlement agency server 40 can not decode the virtual number, thereby improving the data stability and security, and can improve the utilization of the one- Can be increased.
도 5는 본 발명의 일 실시형태에 따른 오티피를 이용한 가상 번호 생성 방법을 도시한 것이다. 본 발명의 가상 번호 생성 방법은 클라이언트 단말기(10), 클라이언트 PC(20), 온라인 가맹점 서버(30), 카드결제 대행사 서버(40) 및 인증 서버(50) 간의 데이터 송수신을 통해 구현가능하며, 카드결제 대행사 서버(40)가 카드사 서버(60)와 연동하여 결제를 처리한다.FIG. 5 illustrates a virtual number generation method using an OTFT according to an embodiment of the present invention. The virtual number generation method of the present invention can be implemented by transmitting and receiving data between the client terminal 10, the client PC 20, the online merchant server 30, the card settlement agency server 40 and the authentication server 50, The settlement agency server 40 interlocks with the card issuer server 60 and processes the settlement.
본 실시예에서는, 클라이언트 PC(20)가 온라인 가맹점 서버(30)에 접속하여 결제를 진행하는 경우에 대해 설명하나, 실시예가 이에 한정되는 것은 아니며 클라이언트 단말기(10)를 통한 모바일 결제를 진행하는 경우 클라이언트 단말기(10)가 온라인 가맹점 서버(30)와 접속하여 결제를 진행할 수 있다.In the present embodiment, a case where the client PC 20 connects to the online merchant server 30 to proceed with settlement will be described. However, the present invention is not limited to this embodiment. In the case of proceeding with mobile settlement through the client terminal 10 The client terminal 10 can connect with the online merchant server 30 and proceed with settlement.
본 실시예는 클라이언트 단말기(10)를 통해 가상 번호를 전송하고, 카드사 서버(60)는 복호화를 진행하는 경우에 대해 설명한다.The present embodiment describes a case where a virtual number is transmitted through the client terminal 10 and the card issuer server 60 proceeds to decryption.
클라이언트 PC(20)는 온라인 가맹점 서버(30)와 접속하여 온라인 가맹점 서버(30)의 안내에 따라 온라인 결제 프로세스를 진행한다(510 단계). 상술한 것처럼, 온라인 결제 진행 시 사용자 ID 값 확인을 위해 휴대전화번호를 추가 입력할 수 있다. 휴대전화번호의 입력이 요청되는 경우, 클라이언트 PC(20) 상에서 휴대전화번호를 입력하고 온라인 가맹점 서버(30)로 전송한다(520 단계).The client PC 20 connects with the online merchant server 30 and proceeds to the online payment process according to the guidance of the online merchant server 30 (step 510). As described above, the mobile phone number can be additionally input for confirming the user ID value at the time of online settlement. When the input of the mobile phone number is requested, the mobile phone number is inputted on the client PC 20 and transmitted to the online merchant server 30 (step 520).
온라인 가맹점 서버(30)는 휴대전화번호를 수신하여, 카드결제 대행사(40)로 결제 요청을 송신하고, 수신한 휴대전화번호를 함께 전송한다(530 단계). 이 때, 휴대전화번호 외 결제 내역과 같은 거래 정보를 함께 송신할 수 있다. 카드결제 대행사(40)는 인증 서버(50)에 결제 요청을 송신하면서 휴대전화번호 및 결제 내역을 포함한 거래정보를 송신할 수 있다(540 단계). The online merchant server 30 receives the mobile phone number, transmits a payment request to the card settlement agency 40, and transmits the received mobile phone number together (step 530). At this time, transaction information such as payment details other than the mobile phone number can be transmitted together. The card settlement agency 40 may transmit the transaction information including the mobile phone number and the payment details while transmitting a payment request to the authentication server 50 (step 540).
인증 서버(50)는 결제 요청에 포함된 휴대전화번호를 이용하여, 해당 클라이언트 단말기(10)에 푸쉬 방식으로 클라이언트 앱이 실행되도록 한다(550 단계). 이 때, 클라이언트 앱이 설치되어 있지 않은 경우에는 클라이언트 앱 설치 페이지에 대한 링크를 전송할 수 있다. 클라이언트 앱이 미리 설치되어 있는 경우에는, 결제 진행 전에 클라이언트 앱 설치시 인증 서버(50)에 클라이언트 정보(예컨대, 클라이언트 앱 실행을 위한 비밀번호)를 미리 저장해둘 수 있다. The authentication server 50 causes the client terminal 10 to execute the client application in a push manner using the mobile phone number included in the payment request (step 550). At this time, if the client app is not installed, you can send a link to the client app install page. When the client application is installed in advance, the client information (for example, a password for executing the client application) can be stored in advance in the authentication server 50 when the client application is installed before proceeding with the payment.
클라이언트 단말기(10) 상에서 클라이언트 앱이 푸쉬에 의해 구동되면, 클라이언트 앱은 비밀번호 입력에 따라 클라이언트 앱의 실행여부를 판단할 수 있다(560 단계). 비밀번호 입력값이 등록된 비밀번호와 일치하는 경우에 클라이언트 앱을 실행할 수 있고, 동시에 인증 서버와 연동하여 오티피를 생성할 수 있다. 예컨대, 오티피는 인증 서버(50)로부터 실시간 발급되거나 클라이언트 앱을 통해 자체 생성되도록 구현될 수 있다. When the client app is pushed by the push on the client terminal 10, the client app can determine whether to execute the client app according to the input of the password (step 560). The client application can be executed when the password input value coincides with the registered password, and at the same time, an authentication can be generated in cooperation with the authentication server. For example, the authentication may be implemented in real time from the authentication server 50 or generated through the client app itself.
또한 클라이언트 앱은 보안 영역(TZ) 또는 USIM에 미리 저장되어 있던 카드 번호를 자동으로 인식할 수 있다(562 단계). 이 때, 카드 번호 전부가 디스플레이되는 것이 아니라 카드 번호의 일부 숫자 또는 닉네임만 출력되도록 한다. 카드 번호가 여러개인 경우에는 사용자의 선택에 의해 하나의 카드 번호가 선택될 수 있다. 인식된 하나의 카드 또는 선택된 하나의 카드 번호에 대하여, 클라이언트 앱은 오티피를 이용한 가상 번호(OTC)를 생성한다(564 단계). 클라이언트 앱은 미리 결정된 암호화 방식을 이용하여 가상 번호를 생성할 수 있다. 본 발명은 FPE 방식을 이용하여 오티피를 암호화 키값으로 가상 번호를 생성한다.In addition, the client application can automatically recognize the card number previously stored in the security zone (TZ) or the USIM (step 562). At this time, not all of the card number is displayed, but only some number or nickname of the card number is outputted. If there are several card numbers, one card number can be selected by the user's choice. For one recognized card or one selected card number, the client app creates an OTC (virtual number) using the atype (step 564). The client app can generate a virtual number using a predetermined encryption method. The present invention generates a virtual number using an encryption key value of an oppy using the FPE method.
클라이언트 단말기(10)는 생성된 가상 번호(OTC) 값을 인증 서버(50)에 자동 또는 수동으로 전송할 수 있다(570 단계). 이후에, 인증 서버(50)는 수신한 가상 번호를 카드결제 대행사 서버(40)로 전송하고(575 단계), 카드결제 대행사 서버(40)는 카드사 서버(60)에 전화번호, 가상 번호 및 거래 내역을 포함한 결제 요청을 송신할 수 있다(577 단계). The client terminal 10 may automatically or manually transmit the generated virtual number (OTC) value to the authentication server 50 (step 570). Thereafter, the authentication server 50 transmits the received virtual number to the card settlement agency server 40 (step 575), and the card settlement agency server 40 transmits the received virtual number to the card issuer server 60, (Step 577).
카드사 서버(60)는 카드결제 대행사(40)로부터 결제 요청을 수신한 후, 오티피 서버에 오티피 번호를 요청하여 오티피 번호를 조회 및 수신하고(예컨대, 전화번호 전송을 통한 오티피 조회), 수신한 오티피 키 값을 복호화 키로 이용하여 가상 번호(OTC)를 복호화하여 실제 카드 번호를 추출할 수 있다(580, 582 단계). 카드사 서버는 추출한 실제 카드 번호를 이용하여 해당 카드의 결제 계좌를 보유한 발급은행 서버(70)와 연동함으로써 결제를 처리한다(584 단계). 예를 들어, 체크카드를 이용한 결제의 경우 발급은행 서버(70)와 실시간 연동하여 출금처리를 수행하고, 신용카드의 경우 카드사 서버(60)에서 승인 처리 후 결제 시점에 발급은행 서버(70)와 연동하여 하나 이상의 결제 건들에 대한 출금 처리를 수행할 수 있다.After receiving the settlement request from the card settlement agency 40, the card issuer server 60 inquires of the nottip server for the nottip number, inquires and receives the nottifunit number (for example, (Step 580, step 582). In step 580, the virtual key number (OTC) is decoded using the received key value as a decryption key. In step 584, the card company server processes the payment by interworking with the issuing bank server 70 having the payment account of the card using the extracted card number. For example, in the case of payment using a check card, the issuance processing is performed in real time in cooperation with the issuing bank server 70. In the case of a credit card, the issuer server 70 And can perform the withdrawal processing for one or more payment terms in interlocking manner.
카드사 서버(60)는 발급은행으로부터 출금처리에 대한 응답을 수신하거나, 자체적인 승인처리를 수행하여 카드 결제 대행사(40)로 결제 응답을 송신하고(590 단계), 카드 결제 대행사 서버(40)는 온라인 가맹점으로 결제 응답을 전달한다(592 단계). 온라인 가맹점 서버(30)는 클라이언트 PC(20)에 주문 완료 메시지를 전달할 수 있다(594 단계). 예컨대, 온라인 가맹점 서버(30)에서 운영하는 결제 웹페이지를 주문 완료 페이지로 전환하여 주문 완료 메시지를 전달할 수 있다.The card issuer server 60 receives a response to the withdrawal processing from the issuing bank or performs a self approval process and transmits a settlement response to the card settlement agency 40 in step 590. The card settlement agency server 40 The payment response is delivered to the online merchant (step 592). The online merchant server 30 can forward the order completion message to the client PC 20 (Step 594). For example, the payment web page operated by the online merchant server 30 may be transferred to the order completion page to deliver the order completion message.
이렇게 카드사 서버(60)에서 복호화를 진행하는 경우, E2E(End to End) 방식으로 결제를 진행하는 클라언트(20)와 카드사 서버(60) 외 중간 결제 과정에서 카드 번호가 전혀 노출되지 않기 때문에 암호화된 데이터 전송을 실현하고, 보안성 및 데이터 안전성이 강화되는 효과를 갖는다.
In this case, since the card number is not exposed at all during the interim settlement process other than the client 20 and the card issuer server 60 that make the settlement in the E2E (End to End) manner, Thereby realizing data transmission and enhancing security and data security.
한편, 도 5를 참조한 본 실시예는 카드사 서버(60)에서 복호화를 수행하는 실시예에 대해 설명하였으나, 다른 실시예로서 인증 서버(50)에서 복호화 과정을 수행할 수 있다. 예를 들어, 클라이언트 PC(10)와 온라인 가맹점 서버(30)에서 결제를 진행하고 카드결제 대행사 서버(40)가 인증 서버(50)로 결제 요청을 보내면, 클라이언트 단말기(10)에서 클라이언트 앱을 통해 가상 번호를 생성하고 인증 서버(50)로 전송하는 프로세스는 상술한 실시예와 동일하다.Meanwhile, although the embodiment of FIG. 5 has been described with respect to the embodiment in which the card issuer server 60 performs decoding, in another embodiment, the authentication server 50 may perform a decoding process. For example, if the client PC 10 and the online merchant server 30 proceed to settle payment and the card settlement agency server 40 sends a payment request to the authentication server 50, The process of generating the virtual number and transmitting it to the authentication server 50 is the same as the above-described embodiment.
이후에, 인증 서버(50)는 가상 번호를 수신한 후, 오티피 서버(도시되지 않음)와 연동하여 오티피를 조회하고 해당 클라이언트 단말기(10)에 발급 또는 생성된 오티피를 수신할 수 있다. 인증 서버(50)는 오티피를 복호화 키값으로 이용하여 가상 번호를 복호화하고 실제 카드 번호를 추출해낸다. Thereafter, after receiving the virtual number, the authentication server 50 may inquire of the atype and may receive the issued or generated api to the corresponding client terminal 10 in cooperation with the api server (not shown) . The authentication server 50 decrypts the virtual number using the authentication key as the decryption key value, and extracts the actual card number.
인증 서버(50)는 추출한 카드 번호를 카드결제 대행사 서버(40)에 전송하고, 카드결제 대행사 서버(40)는 카드사 서버(60)에 결제 요청을 송신한다. 이 때, 카드결제 대행사 서버(40)는 인증 서버(50)로부터 수신한 실제 카드 번호 및 거래내역을 함께 카드사 서버(60)로 송신할 수 있다.The authentication server 50 transmits the extracted card number to the card settlement agency server 40 and the card settlement agency server 40 transmits a settlement request to the card issuer server 60. [ At this time, the card settlement agency server 40 can transmit the actual card number and transaction details received from the authentication server 50 to the card issuer server 60 together.
결제 요청을 수신한 카드사 서버(60)는 결제 처리 서버 및 결제 내역 관리 서버를 포함할 수 있고, 결제 처리 서버가 발급 은행 서버(70)로 카드 번호 및 결제 내역이 포함된 결제 요청을 송신하고, 발급 은행 서버(70)로부터 결제 처리에 대한 응답을 수신한다. 카드사 서버(60)는 결제 응답을 수신하여 결제 내역 관리 서버에 저장할 수 있고, 카드결제 대행사 서버(40)에 결제 응답을 송신한다. 카드결제 대행사 서버(40)는 결제 응답을 온라인 가맹점 서버(30)에 전달하고, 온라인 가맹점 서버(30)는 클라이언트 PC(20)에 주문 완료 메시지를 전달할 수 있다.The card company server 60 having received the payment request may include a payment processing server and a payment history management server. The payment processing server transmits a payment request including the card number and payment details to the issuing bank server 70, And receives a response to the settlement processing from the issuing bank server 70. The card issuer server 60 can receive the settlement response, store it in the settlement history management server, and transmit the settlement response to the card settlement agency server 40. [ The card settlement agency server 40 delivers the payment response to the online merchant server 30 and the online merchant server 30 can deliver the order completion message to the client PC 20. [
이처럼, 본 발명의 오티피를 이용한 가상 번호 생성 방법에 의하면, 최근 이슈화되고 있는 개인정보 유출 문제를 해결하고, 일회용 비밀번호인 오티피를 복호화 키 값으로 활용하여 가상 번호를 생성함으로써, 결제 또는 인증 프로세스 상에서 안전한 거래가 가능하도록 지원할 수 있다.
As described above, according to the virtual number generation method using the orthophile of the present invention, the issue of personal information leaked recently can be solved, and a virtual number can be generated by utilizing the one-time password as the decryption key value, To enable safe transactions on the Internet.
도 6은 본 발명의 다른 실시형태에 따른 오티피를 이용한 가상 번호 생성 방법을 도시한 것이다. 본 실시예는 클라이언트 단말기(10)를 통해 가상 번호를 온라인 가맹점 서버(30)로 전송하고, 카드사 서버(60)에서 복호화를 진행하는 경우에 대해 설명한다.6 illustrates a virtual number generation method using an OTFT according to another embodiment of the present invention. The present embodiment describes a case where the virtual number is transmitted to the online merchant server 30 through the client terminal 10 and the decryption is proceeded by the card issuer server 60. [
본 실시예에서는, 클라이언트 단말기(10)를 이용한 모바일 결제 시 클라이언트 단말기(10)가 온라인 가맹점 서버(30)에 접속하여 결제를 진행하는 경우에 대해 설명하나, 실시예가 이에 한정되는 것은 아니며 클라이언트 PC(20)를 통한 온라인 결제를 진행하는 경우 도 5에서 설명한 실시예처럼 클라이언트 PC(20)가 온라인 가맹점 서버(30)와 접속하여 결제를 진행할 수 있다.In this embodiment, a case where the client terminal 10 accesses the online merchant server 30 and proceeds with settlement during the mobile settlement using the client terminal 10 will be described. However, the present invention is not limited thereto, 20, the client PC 20 can access the online merchant server 30 and proceed with settlement as in the embodiment described with reference to FIG.
클라이언트 단말기(10)는 온라인 가맹점 서버(30)와 접속하여 결제를 진행할 수 있다(610 단계). 이와 동시에 또는 전후로, 사용자가 클라이언트 단말기(10)의 클라이언트 앱을 구동할 수 있다(630 단계). 예컨대, 온라인 가맹점 서버(30)에서 제공하는 결제 페이지 상에서 안내를 통해 클라이언트 단말기(10)의 클라이언트 앱을 수동으로 구동하도록 안내하거나, 온라인 가맹점 서버(10)와 연동하여 클라이언트 단말기(10) 상에서 푸쉬로 클라이언트 앱을 자동 구동되도록 구현할 수 있다.The client terminal 10 can proceed with the payment by connecting with the online merchant server 30 (step 610). At the same time or at the same time, the user can start the client application of the client terminal 10 (step 630). For example, it is possible to guide the client application of the client terminal 10 manually through the guidance on the payment page provided by the online merchant server 30, or to push the client appa- ratus 10 by pushing on the client terminal 10 in cooperation with the online merchant server 10 You can implement client apps to run automatically.
클라이언트 단말기(10) 상에서 클라이언트 앱이 구동되면, 클라이언트 앱은 비밀번호 입력에 따라 클라이언트 앱의 실행여부를 판단할 수 있다(630 단계). 비밀번호 입력값이 등록된 비밀번호와 일치하는 경우에 클라이언트 앱을 실행할 수 있고, 동시에 인증 서버와 연동하여 오티피를 생성할 수 있다. 예컨대, 오티피는 인증 서버(50)로부터 실시간 발급되거나 클라이언트 앱을 통해 자체 생성되도록 구현될 수 있다. When the client application is activated on the client terminal 10, the client application can determine whether to execute the client application according to the input of the password (operation 630). The client application can be executed when the password input value coincides with the registered password, and at the same time, an authentication can be generated in cooperation with the authentication server. For example, the authentication may be implemented in real time from the authentication server 50 or generated through the client app itself.
또한 클라이언트 앱은 보안 영역(TZ) 또는 USIM에 미리 저장되어 있던 카드 번호를 자동으로 인식할 수 있다(632 단계). 이 때, 카드 번호 전부가 디스플레이되는 것이 아니라 카드 번호의 일부 숫자 또는 닉네임만 출력되도록 한다. 카드 번호가 여러개인 경우에는 사용자의 선택에 의해 하나의 카드 번호가 선택될 수 있다. 인식된 하나의 카드 또는 선택된 하나의 카드 번호에 대하여, 클라이언트 앱은 오티피를 이용한 가상 번호(OTC)를 생성한다(634 단계). 클라이언트 앱은 미리 결정된 암호화 방식을 이용하여 가상 번호를 생성할 수 있다. 본 발명은 FPE 방식을 이용하여 오티피를 암호화 키값으로 가상 번호를 생성한다. 여기서, 클라이언트 앱은 인증사와의 통신 없이 자체적으로 USIM 또는 TZ에 저장된 카드 번호를 오티피로 암호화하여 가상 번호를 생성할 수 있고, 인증사와의 통신을 통해 가상 번호를 생성할 수도 있다.Also, the client application can automatically recognize the card number previously stored in the security zone (TZ) or the USIM (step 632). At this time, not all of the card number is displayed, but only some number or nickname of the card number is outputted. If there are several card numbers, one card number can be selected by the user's choice. For one recognized card or one selected card number, the client app generates an OTC (virtual number) using an OTF (step 634). The client app can generate a virtual number using a predetermined encryption method. The present invention generates a virtual number using an encryption key value of an oppy using the FPE method. Here, the client app can generate the virtual number by encrypting the card number stored in the USIM or TZ by means of OTF without communication with the authentication server, and can generate the virtual number through communication with the authentication server.
클라이언트 단말기(10)는 생성된 가상 번호(OTC) 값을 온라인 가맹점 서버(30)에서 제공하는 결제 페이지에 자동 또는 수동으로 입력할 수 있고, 결제시 ID 확인을 위해 전화번호를 추가 입력할 수 있다. 클라이언트 단말기(10)는 입력받은 가상 번호 및 전화번호를 온라인 가맹점 서버(30)에 전달한다(650 단계). 온라인 가맹점 서버(30)는 전화번호, 가상 번호, 거래내역을 포함한 결제 요청을 카드결제 대행사 서버(40)에 송신하여 결제를 요청한다(660 단계).The client terminal 10 can automatically or manually input the generated virtual number (OTC) value to the payment page provided by the online merchant server 30, and can additionally input a telephone number for ID confirmation at the time of settlement. The client terminal 10 transmits the inputted virtual number and telephone number to the online merchant server 30 (operation 650). The online merchant server 30 transmits a payment request including a telephone number, a virtual number, and transaction details to the card settlement agency server 40 to request payment (step 660).
카드결제 대행사 서버(40)는 카드사 서버(60)에 전화번호, 가상 번호 및 거래 내역을 포함한 결제 요청을 송신할 수 있다(670 단계). 카드사 서버(60)는 결제 요청을 수신한 후, 오티피 서버(도시되지 않음)에 오티피 번호를 요청하여 오티피 번호를 조회 및 수신하고(예컨대, 전화번호 전송을 통한 오티피 조회), 수신한 오티피 키 값을 복호화 키로 이용하여 가상 번호를 복호화하여 실제 카드 번호를 추출할 수 있다(680, 682 단계). The card settlement agency server 40 may transmit a settlement request including the telephone number, the virtual number, and the transaction details to the card issuer server 60 (step 670). After receiving the settlement request, the card issuer server 60 requests and inquires of the nottip number to the nottip server (not shown) to inquire and receive the nottifnum number (for example, An actual card number can be extracted by decoding a virtual number using a correct key value as a decryption key (steps 680 and 682).
일 실시예로서, 카드사 서버(60)는 가상 번호와 실제 카드 번호의 매칭 테이블을 저장할 수 있다. 카드사 서버(60)는 결제 승인 시 매칭 테이블을 필수적으로 이용하지 않지만, 추후 취소 처리 등의 절차 시 신속하고 용이한 처리를 위해 가상 번호와 실제 카드 번호의 매칭 테이블을 생성하여 저장할 수 있다.In one embodiment, the card issuer server 60 may store a matching table of a virtual number and an actual card number. The card issuer server 60 does not necessarily use a matching table at the time of payment approval, but can generate and store a matching table of a virtual number and an actual card number for quick and easy processing at a later cancellation processing and the like.
카드사 서버(60)는 복호화를 통해 실제 카드 번호를 추출하여 발급 은행 서버(70)와 연동하여 해당 카드의 결제 계좌에 대해 결제를 처리하고 카드결제 대행사 서버(40)를 통해 결제 응답을 전송한다(684 단계). 예를 들어, 체크카드를 이용한 결제의 경우 발급은행 서버(70)와 실시간 연동하여 출금처리를 수행하고, 신용카드의 경우 카드사 서버(60)에서 승인 처리 후 결제 시점에 발급은행 서버(70)와 연동하여 하나 이상의 결제 건들에 대한 출금 처리를 수행할 수 있다. 카드사 서버(60)는 발급은행 서버(70)로부터 결제 응답을 수신하거나 결제 승인여부를 처리하여 결제 내역 관리 서버에 저장할 수 있고, 카드결제 대행사 서버(40)에 결제 응답을 송신한다(692 단계). The card issuer server 60 extracts the actual card number through decryption, processes the payment account of the corresponding card in cooperation with the issuing bank server 70, and transmits the settlement response through the card settlement agency server 40 684). For example, in the case of payment using a check card, the issuance processing is performed in real time in cooperation with the issuing bank server 70. In the case of a credit card, the issuer server 70 And can perform the withdrawal processing for one or more payment terms in interlocking manner. The card issuer server 60 can receive the settlement response from the issuing bank server 70 or process the settlement approval process and store it in the settlement history management server and transmit the settlement response to the card settlement agency server 40 (step 692) .
카드결제 대행사 서버(40)는 결제 응답을 온라인 가맹점 서버(30)에 전달하고, 온라인 가맹점 서버(30)는 클라이언트 PC(20)에 주문 완료 메시지를 전달할 수 있다(692, 694 단계). 예컨대, 온라인 가맹점 서버(30)에서 운영하는 결제 웹페이지를 주문 완료 페이지로 전환하여 주문 완료 메시지를 전달할 수 있다.The card settlement agency server 40 delivers the payment response to the online merchant server 30 and the online merchant server 30 can deliver the order completion message to the client PC 20 in steps 692 and 694. [ For example, the payment web page operated by the online merchant server 30 may be transferred to the order completion page to deliver the order completion message.
이렇게 카드사 서버(60)에서 복호화를 진행하는 경우, E2E 방식의 암호화된 전송을 통해 중간 결제 과정에서 실제 카드 번호가 전혀 노출될 염려가 없어 보안성 및 데이터 안전성이 더욱 향상된다는 이점이 있다.
In this way, when the decryption is performed by the card issuer server 60, there is no fear that the actual card number is exposed at all during the intermediate settlement through the encrypted transmission of the E2E scheme, thereby improving security and data security.
한편, 도 6을 참조한 본 실시예는 카드사 서버(60)에서 복호화를 수행하는 실시예에 대해 설명하였으나, 다른 실시예로서 인증 서버(50)에서 복호화 과정을 수행할 수 있다. 예를 들어, 클라이언트 PC(10)와 온라인 가맹점 서버(30)에서 결제를 진행하고 클라이언트 단말기(10)에서 클라이언트 앱을 통해 가상 번호를 생성하여 클라이언트 PC(10)에 입력한 후 온라인 가맹점 서버(30)를 통해 카드결제 대행사 서버(40)로 전송하는 프로세스는 상술한 실시예와 동일하다. 이후에, 인증 서버(50)에 전화번호 및 가상 번호를 전송하여 인증을 요청한다. 인증 서버(50)는 인증 요청을 수신한 후, 오티피 서버(도시되지 않음)와 연동하여 오티피를 조회하고 해당 클라이언트 단말기(10)에 발급 또는 생성된 오티피를 수신할 수 있다. 인증 서버(50)는 오티피를 복호화 키값으로 이용하여 가상 번호를 복호화하고 실제 카드 번호를 추출해낸다. Meanwhile, although the embodiment of FIG. 6 has been described with respect to the embodiment in which the card issuer server 60 performs decoding, in another embodiment, the authentication server 50 may perform a decoding process. For example, the client PC 10 and the online merchant server 30 proceed to settlement, the client terminal 10 generates a virtual number through the client app, inputs the virtual number to the client PC 10, ) To the card settlement agency server 40 via the network 40 is the same as the above-described embodiment. Then, the authentication server 50 transmits a telephone number and a virtual number to request authentication. After receiving the authentication request, the authentication server 50 can inquire the authentication and can receive the issued or generated authentication to the corresponding client terminal 10 in cooperation with an authentication server (not shown). The authentication server 50 decrypts the virtual number using the authentication key as the decryption key value, and extracts the actual card number.
인증 서버(50)는 추출한 카드 번호를 카드결제 대행사 서버(40)에 전송하고, 카드결제 대행사 서버(40)는 카드사 서버(60)에 결제 요청을 송신한다. 이 때, 카드결제 대행사 서버(40)는 인증 서버(50)로부터 수신한 실제 카드 번호 및 거래내역을 함께 카드사 서버(60)로 송신할 수 있다.The authentication server 50 transmits the extracted card number to the card settlement agency server 40 and the card settlement agency server 40 transmits a settlement request to the card issuer server 60. [ At this time, the card settlement agency server 40 can transmit the actual card number and transaction details received from the authentication server 50 to the card issuer server 60 together.
결제 요청을 수신한 카드사 서버(60)는 결제 처리 서버 및 결제 내역 관리 서버를 포함할 수 있고, 결제 처리 서버가 발급 은행 서버(70)로 카드 번호 및 결제 내역이 포함된 결제 요청을 송신하고, 발급 은행 서버(70)로부터 결제 처리에 대한 응답을 수신한다. 카드사 서버(60)는 결제 응답을 수신하여 결제 내역 관리 서버에 저장할 수 있고, 카드결제 대행사 서버(40)에 결제 응답을 송신한다. 카드결제 대행사 서버(40)는 결제 응답을 온라인 가맹점 서버(30)에 전달하고, 온라인 가맹점 서버(30)는 클라이언트 PC(20)에 주문 완료 메시지를 전달할 수 있다.The card company server 60 having received the payment request may include a payment processing server and a payment history management server. The payment processing server transmits a payment request including the card number and payment details to the issuing bank server 70, And receives a response to the settlement processing from the issuing bank server 70. The card issuer server 60 can receive the settlement response, store it in the settlement history management server, and transmit the settlement response to the card settlement agency server 40. [ The card settlement agency server 40 delivers the payment response to the online merchant server 30 and the online merchant server 30 can deliver the order completion message to the client PC 20. [
이처럼, 본 발명은 오티피 값을 이용하여 실제 카드 번호를 암호화함으로써 오티피 값의 활용성을 넓히고, 데이터 송수신 시 가상 번호를 활용함으로써 실제 카드 번호 또는 휴대전화번호와 같은 개인정보가 유출되지 않도록 방지하고, 유출되더라도 정보가 노출되지 않도록 보호한다.
As described above, the present invention extends the utility of the authentication value by encrypting the actual card number using the authentication value, and prevents the personal information such as the actual card number or the mobile phone number from being leaked by utilizing the virtual number when transmitting and receiving data. And protects the information from exposure even if it is leaked.
이하에서는, 도 7 내지 도 12를 참조하여, 본 발명의 다른 실시예에 따른 가상 번호 결제 서비스의 등록, 결제 및 취소 프로세스에 대해 설명하도록 한다.Hereinafter, the registration, payment and cancellation processes of the virtual number settlement service according to another embodiment of the present invention will be described with reference to FIGS. 7 to 12. FIG.
도 7은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 가입 절차를 설명하기 위한 흐름도이다. 서비스 가입 절차는 클라이언트 단말기(10), 인증 서버(50), 카드사 서버(60) 및 본인 인증을 위한 본인인증기관(예컨대, 통신사) 서버 간에 실시될 수 있다. FIG. 7 is a flowchart illustrating a virtual number-based payment service registration procedure according to an embodiment of the present invention. The service subscription procedure may be implemented between the client terminal 10, the authentication server 50, the card issuer server 60, and a self certification authority (e.g., a communication company) server for authentication.
먼저, 카드사 서버(60)는 사용자 정보 및 등록 정보를 추출하여, 마케팅 메시지에 동의한 사용자를 추출해내고, 각 카드별로 가입 메시지를 생성하여 발송한다(710, 715 단계). 적어도 하나의 카드사가 각각 등록된 사용자 정보를 이용하여 SMS 메시지를 발송할 수 있고, SMS 메시지는 SMS에 한정되지 않고 이메일, 메신저를 통한 메시지 등 다양한 메시지 형태로 구현될 수 있다. 여기서, SMS 메시지는 암호화된 카드 정보 및 보안 코드를 포함한다. 본 실시예에서는, 카드사가 카드별로 메시지를 송신함에 따라 하나의 카드 정보만이 암호화되어 포함되는 실시예를 중점적으로 설명한다. 그러나 다른 실시예로서 해당 카드사에 가입된 사용자의 모든 카드 정보를 암호화하여 메시지에 포함할 수도 있고, 사용자가 미리 설정한 대표 카드를 추출하여 대표 카드 정보만을 암호화하여 메시지에 포함시킬 수도 있다. 또한 보안 코드는 메시지에 포함되나 사용자에게 출력되지는 않도록 구현될 수 있다.First, the card issuer server 60 extracts user information and registration information, extracts users who agree with the marketing message, and generates and sends a subscription message for each card (steps 710 and 715). At least one card company may send an SMS message using the registered user information, and the SMS message is not limited to SMS but may be implemented in various message formats such as e-mail and messenger. Here, the SMS message includes encrypted card information and security code. In this embodiment, an embodiment in which only one piece of card information is encrypted and included as the card company transmits a message for each card will be mainly described. However, in another embodiment, all the card information of the user subscribed to the card company may be encrypted and included in the message, or only the representative card information may be extracted and included in the message by extracting the representative card preset by the user. The security code may also be implemented so that it is included in the message but not output to the user.
클라이언트 단말기(10)는 SMS 메시지에 포함된 링크 또는 안내에 따라, 클라이언트 앱 및 OTP 클라이언트를 설치할 수 있다. 클라이언트 단말기(10)는 서비스 가입을 위해 클라이언트 앱(예컨대, 도 8의 결제 앱)을 실행하고, 결제 앱에 출력된 이용약관 동의 여부를 입력한다. 약관 동의에 따라, 클라이언트 앱은 클라이언트 단말기(10)의 IMEI(International Mobile Equipment Identity, 국제 모바일 단말기 식별 코드), ICCID(Integrated Circuit Card Identifier, 유심 시리얼 번호)를 포함한 단말기 정보를 수집하여 결제 인증 서버(510)에 송신할 수 있다(725 단계). 다음으로, 클라이언트 단말기(10)는 본인 인증을 위한 정보를 입력하여 통신사를 통한 본인 인증 조회 절차를 수행하는 통신사 인증 단계를 수행할 수 있다(730 단계). 통신사 인증이 완료되면, 카드 인증을 실시한다(735 내지 748 단계). SMS 메시지를 수신한 경우, 클라이언트 앱은 SMS 메시지에 포함된 암호화된 보안 코드를 추출하고, 카드번호 뒤 4자리 및 카드 정보를 카드 등록 창에 자동 입력한다. 사용자는 비밀번호 앞 2자리만 직접 입력하도록 구현할 수 있다. SMS 메시지를 미수신한 경우, 클라이언트 앱은 사용자가 직접 카드정보를 입력할 수 있도록 제공한다. 카드 정보가 입력되면 카드사 서버에 카드 인정 요청을 송신하고(742 단계), 카드사 서버(60)가 요청에 따라 카드 인증을 수행한 후 인증 결과를 결제 인증 서버(510)에 전달한다(746, 748 단계).The client terminal 10 can install the client app and the OTP client according to the link or the guidance included in the SMS message. The client terminal 10 executes a client application (for example, the payment application shown in FIG. 8) for service subscription, and inputs whether or not to agree to the terms and conditions output to the payment application. The client application collects the terminal information including the International Mobile Equipment Identity (IMEI) of the client terminal 10, the ICCID (Integrated Circuit Card Identifier), and the payment authentication server 510) (step 725). Next, in step 730, the client terminal 10 may perform an authentication process of authenticating the authentication of the user through the communication company by inputting information for authentication of the user. When the communication company authentication is completed, the card authentication is performed (steps 735 to 748). When receiving the SMS message, the client application extracts the encrypted security code included in the SMS message, and automatically inputs the 4-digit number of the card number and the card information into the card registration window. The user can directly input only the first two digits of the password. If the SMS message is not received, the client app provides the user with the ability to enter card information directly. When the card information is inputted, a card authentication request is transmitted to the card company server (step 742), and the card company server 60 performs card authentication according to the request, and then transmits the authentication result to the payment authentication server 510 (746, 748 step).
카드사(60)를 통한 카드 인증이 완료되면, 결제 인증 서버(510)는 카드사 서버(60)에 카드 등록 현황을 요청하여, 사용자가 보유한 카드 정보를 수신할 수 있다(750, 755 단계). 결제 인증 서버(510)는 카드 등록 현황 조회에 따른 적어도 하나의 카드 정보를 클라이언트 앱에 출력하고, 사용자가 등록 가능한 카드를 선택하도록 함으로써, 등록할 카드 목록을 직접 구성하도록 제공한다(760 단계). 결제 인증 서버(510)는 사용자가 선택한 카드 목록을 저장한다(765 단계). 클라이언트 단말기(10)는 오프라인 결제 시 필요한 서명 이미지를 입력 및 저장할 수 있고, 결제 비밀번호를 설정할 수 있고(770, 775 단계), 카드 등록이 완료된다.When the card authentication through the card issuer 60 is completed, the payment authentication server 510 requests the card issuer server 60 for the card registration status and receives the card information held by the user (steps 750, 755). In step 760, the payment authentication server 510 outputs at least one card information according to the card registration status inquiry to the client app, and allows the user to select a card that can be registered by the payment authentication server 510 (step 760). The payment authentication server 510 stores the card list selected by the user (Step 765). The client terminal 10 can input and store a signature image required for offline payment, and can set a payment password (steps 770 and 775), and the card registration is completed.
다음으로, OTP 발급 절차를 진행한다. 클라이언트 단말기(10)가 결제 인증 서버(510)에 OTP 등록을 요청하면, 결제 인증 서버(510)가 OTP 서버(520)에 OTP 키 및 시리얼을 요청하고, OTP 서버(520)가 요청을 수신하여 OTP 키를 발급 및 저장한다(780, 782, 784 단계). OTP 서버(%20)는 클라이언트 단말기에 OTP 키 및 시리얼을 전송하고, 클라이언트 단말기(10)가 이를 수신하여 안전한 공간(예컨대, USIM 또는 TZ)에 저장함으로써 OTP 발급 절차를 완료한다.Next, proceed with the OTP issue procedure. When the client terminal 10 requests OTP registration to the payment authentication server 510, the payment authentication server 510 requests the OTP server 520 for the OTP key and the serial, and the OTP server 520 receives the request OTP key is issued and stored (steps 780, 782 and 784). The OTP server 20 transmits the OTP key and the serial to the client terminal 10, and the client terminal 10 completes the OTP issuance procedure by receiving it and storing it in a secure space (e.g., USIM or TZ).
도 8은 도 7에서 설명한 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 가입 절차를 구현한 스크린샷을 구체적으로 도시한 것이다. 먼저 카드사 서버(60)측에서 마케팅 메시지 수신에 동의한 사용자를 추출해내고, 각 카드별로 미리 결정된 기준에 따라 가입 안내 SMS 메시지를 발송하도록 설정할 수 있다(810).FIG. 8 is a detailed screen shot illustrating a virtual number-based payment service registration procedure according to an embodiment of the present invention illustrated in FIG. First, the card issuer server 60 may extract a user who has agreed to receive the marketing message, and may set up to send a subscription guidance SMS message according to a predetermined criterion for each card (810).
클라이언트 단말기(10)는 카드사 서버(60)로부터 암호화된 보안 코드 및 카드 정보를 포함하는 메시지를 수신한다(820). 상술한 것처럼, 메시지는 클라이언트 앱 설치에 대한 링크 및 안내를 포함할 수 있다. 사용자가 앱 설치를 원할 경우, 어플리케이션 마켓(예컨대, 구글 플레이, 앱스토어 등)으로 이동하고(830), 사용자가 설치(835) 버튼을 클릭함으로써 설치를 시작할 수 있다.The client terminal 10 receives a message including the encrypted security code and card information from the card issuer server 60 (820). As described above, the message may include a link to and guidance for client application installation. If the user wants to install the app, he can go to the application market (e.g., Google Play, App Store, etc.) (830) and the user can start the installation by clicking the install (835) button.
클라이언트 단말기가 클라이언트 앱(도 8의 결제 앱)을 실행하면, 서비스 가입에 대한 안내 메시지 및 카드 등록 안내를 출력한다(840). 사용자가 서비스 가입을 진행하면, 약관 동의 여부를 입력받고(850), 통신사 인증을 위한 본인 확인 정보를 입력받는다(860). 통신사를 통한 인증이 완료되면, 카드 등록을 진행한다. 사용자가 카드사로부터 메시지를 수신하여 카드 등록을 진행하는 경우(870)에는, 카드명, 카드버호, 유효기간, CVC와 같은 카드 정보가 메시지로부터 추출되어 자동 입력되고, 사용자는 비밀번호 앞 2자리(875)만 입력하도록 구현할 수 있다. 사용자가 카드사로부터의 메시지를 수신하지 않고 클라이언트 앱을 통해 카드 등록을 진행하는 경우(880)에는, 카드 등록을 위한 카드 정보를 직접 입력하도록 안내한다.When the client terminal executes the client application (the payment application of FIG. 8), it displays a service registration message and card registration guide (840). When the user subscribes to the service, he or she accepts the agreement (850), and receives the identification information for the communication company authentication (860). When the authentication through the communication company is completed, the card registration proceeds. When the user receives the message from the card company and proceeds to card registration (870), card information such as the card name, card number, validity period, and CVC is extracted from the message and automatically input. ). ≪ / RTI > If the user does not receive a message from the card company and proceeds to register the card through the client application (880), the user is guided to directly input card information for card registration.
입력된 카드 정보를 카드사 서버(60)에 송신하여 카드 인증이 완료되면, 결제 인증 서버(510)가 사용자가 보유한 카드 목록을 출력하고, 사용자는 등록할 카드 목록 및 주카드를 설정할 수 있다(885). 이후에, 결제 비밀번호(PIN) 6자리를 설정하고, 오프라인 결제 시 필요한 서명을 설정한다(890, 892). 이처럼, 본 발명의 결제 서비스 가입 절차는, 통신사 인증, 카드 인증 및 카드 등록 절차를 수행하여 등록을 완료하고, 사용자에게 출력되지는 않으나, 등록 완료 시 OTP 발급 절차를 진행한다. 상술한 것처럼, 클라이언트 단말기(10)가 카드 등록 완료 시 결제 인증 서버(510)를 거쳐 OTP 서버(520)에 OTP 발급 요청을 송신하고, OTP 키 및 시리얼을 발급받아 저장할 수 있다.When the card authentication is completed by sending the inputted card information to the card company server 60, the payment authentication server 510 outputs the card list held by the user, and the user can set the card list and the main card to be registered (885 ). Thereafter, six digits of the settlement password (PIN) are set, and a signature necessary for offline settlement is set (890, 892). As described above, the payment service subscription procedure of the present invention performs registration of the carrier, authentication of the card, card authentication and card registration, and outputs the OTP to the user. As described above, when the client terminal 10 completes the card registration, it can send an OTP issuance request to the OTP server 520 via the payment authentication server 510, and can issue and store the OTP key and serial.
이처럼, 본 발명의 결제 서비스 가입은 메시지를 통해 가입을 유도하고, 메시지에 포함된 카드 정보를 자동 입력하는 방식으로 카드 인증을 실시하는 바, 기존의 가입 절차에 비해 사용자 편의를 더하였다.As described above, the subscription of the payment service of the present invention induces subscription through a message, and card authentication is performed by automatically inputting the card information included in the message, thereby adding convenience to the existing subscription procedure.
도 9는 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 이용 절차를 설명하기 위한 흐름도이다. 클라이언트 단말기(10)는 온라인 가맹점(30)이 운영하는 웹페이지 또는 별도의 어플리케이션을 통해 특정 물품 또는 서비스에 대한 결제를 요청할 수 있고, 결제 요청시 온라인 가맹점은 결제 창을 출력한다(910, 915 단계). 본 실시예는 온라인 결제를 위주로 설명한 것이지만, 이에 한정되는 것은 아니며, 오프라인 가맹점에서의 결제도 구현 가능하다. 또한 인증 서버와 카드사 서버가 분리된 구성요소로 구현되는 실시예를 설명하고 있으나, 인증사와 카드사가 일체된 주체에 의해 운영되거나 통합된 하나의 서버 형태로 구현될 수 있다. 또 다른 실시예로서, 카드사 서버가 인증 서버의 기능을 모두 수행하여, 카드사 서버가 오티피 인증 및 가상 번호 발급 기능을 수행하도록 구현될 수 있다.9 is a flowchart illustrating a procedure of using a virtual number based payment service according to an embodiment of the present invention. The client terminal 10 can request payment for a specific article or service through a web page operated by the online merchant 30 or a separate application and the online merchant outputs a settlement window at the time of the payment request (steps 910, 915, ). Although the present embodiment is described mainly for online settlement, the present invention is not limited to this, and payment at an offline merchant can also be implemented. In addition, although the authentication server and the card issuer server are implemented as separate components, the authentication server and the card company may be implemented as a single entity or a single server integrated with each other. In another embodiment, the card issuer server performs all of the functions of the authentication server, and the card issuer server can be implemented to perform the authty authentication and the virtual number issuance function.
클라이언트 단말기(10)는 출력된 결제 창에서 결제 수단(예컨대, 신용카드), 카드 종류, 할부 개월, 결제 종류를 선택할 수 있고, 본 발명의 가상 번호를 이용한 결제(OTC 결제)를 선택할 수 있다. 클라이언트 단말기(10)가 OTC 결제 선택 시, 자동 또는 수동으로 클라이언트 앱을 구동한다(920 단계).The client terminal 10 can select a settlement means (e.g., a credit card), a card type, a installment month, and a settlement type in the output settlement window, and can select a settlement (OTC settlement) using the virtual number of the present invention. When the client terminal 10 selects OTC payment, the client application is automatically or manually operated in step 920.
클라이언트 앱이 구동되면, 결제 카드를 선택할 수 있다(922 단계). 결제 카드는 사용자가 미리 설정한 기준(예컨대, 금액, 카테고리에 따른 카드 설정, 또는 주 카드 설정)에 따라 선정된 카드를 선택한다. 결제할 카드를 확인 후, 사용자가 결제를 진행하면 결제 비밀번호(PIN)을 입력한다(924 단계).When the client app is running, the payment card can be selected (step 922). The payment card selects a card selected in accordance with a criterion previously set by the user (for example, a card setting according to amount, category, or main card setting). After confirming the card to be paid out, if the user proceeds to settle the payment, the payment password (PIN) is input (step 924).
결제 비밀번호가 입력되면, 클라이언트 앱은 OTP를 발급하고(930 단계), 결제 인증 서버(510)에 가상 번호(OTC)의 생성을 요청한다(932 단계). 여기서, OTP는 IMEI와 같은 단말 정보에 기초하여 생성되거나, 다른 기준에 의해 생성될 수 있으며, 가상 번호 생성 요청 시 회사 코드, OTP 값, PIN 값, 카드 선택 정보를 포함한 요청 정보를 송신할 수 있다. 결제 인증 서버(510)는 요청을 수신하여 PIN을 인증하고(934 단계), OTP 서버(520)에 OTP 시리얼, 회사 코드, OTP 값, 카드 선택정보를 포함한 요청을 전달한다. OTP 서버(520)는 OTP 값을 검증하고(936 단계), OTP를 이용하여 가상 번호를 발급한다(938 단계). 상술한 것처럼, OTP 서버는 FPE 방식을 통해 오티피를 암호화키로 이용하여 가상 번호를 생성할 수 있으며, 이에 한정되는 것은 아니다.When the payment password is input, the client application issues an OTP (step 930), and requests the payment authentication server 510 to generate a virtual number (OTC) (step 932). Here, the OTP may be generated based on terminal information such as IMEI, or may be generated according to another criterion, and the request information including the company code, the OTP value, the PIN value, and the card selection information may be transmitted upon generation of the virtual number . The payment authentication server 510 receives the request, authenticates the PIN (step 934), and transmits a request including the OTP serial, company code, OTP value, and card selection information to the OTP server 520. The OTP server 520 verifies the OTP value (step 936), and issues a virtual number using the OTP (step 938). As described above, the OTP server can generate the virtual number by using the oppy as an encryption key through the FPE method, but is not limited thereto.
일 실시예로서, 카드사 서버(60) 또는 인증 서버(50)는 가상 번호와 실제 카드 번호의 매칭 테이블을 저장할 수 있다. 카드사 서버(60) 또는 인증 서버(50)는 결제 승인 시 매칭 테이블을 필수적으로 이용하지 않지만, 추후 취소 처리 등의 절차 시 신속하고 용이한 처리를 위해 가상 번호와 실제 카드 번호의 매칭 테이블을 생성하여 저장할 수 있다.In one embodiment, the card issuer server 60 or the authentication server 50 may store a matching table of the virtual number and the actual card number. The card issuer server 60 or the authentication server 50 does not necessarily use the matching table at the time of payment approval but creates a matching table of the virtual number and the actual card number for quick and easy processing in the procedure such as cancellation processing Can be stored.
OTP 서버(520)가 가상 번호를 발급하여 클라이언트 단말기(10)에 전송하면(940 단계), 클라이언트 단말기(10)는 OTP의 인증의 완료됨을 확인함과 동시에, 출력된 가상 번호를 확인할 수 있다. 실시 예로서, 온라인, 오프라인 결제 모두 양식의 통일을 위해 가상 번호 출력 시 바코드 및 서명 정보를 함께 출력할 수 있다.The OTP server 520 issues a virtual number to the client terminal 10 (step 940), and the client terminal 10 confirms the completion of the authentication of the OTP and confirms the output virtual number. As an embodiment, the barcode and the signature information can be output together with the output of the virtual number for the unification of the forms of both online and offline payment.
사용자는 가상 번호를 결제 창에 자동 또는 수동으로 입력하고(950 단계), 입력된 가상 번호는 온라인 가맹점(30)에 전송된다(955 단계). 온라인 가맹점(30)은 수신한 가상 번호 및 주문 정보를 포함하여 카드 결제 대행사로 결제 승인 요청을 송신하고, 카드 결제 대행사는 결제 인증 서버(510)에 결제 승인 요청을 전달한다(960, 965 단계). 결제 인증 서버(510)는 결제 승인 요청을 수신하여 가상 번호에 매칭된 실제 카드 번호를 추출하고, 실제 카드 번호에 기초한 결제 승인 요청을 카드사 서버(60)에 송신한다(970, 975 단계). 여기서, 실제 카드 번호의 추출은 OTP 값을 복호화 키 값으로 이용하여 가상 번호에 매칭된 실제 카드 번호를 추출할 수 있다.The user inputs the virtual number into the payment window automatically or manually (step 950), and the inputted virtual number is transmitted to the online merchant 30 (step 955). The online merchant 30 transmits a payment approval request to the card settlement agency including the received virtual number and order information, and the card payment agency transmits a settlement approval request to the payment authentication server 510 (steps 960 and 965) . The payment authentication server 510 receives the payment approval request, extracts the actual card number matched with the virtual number, and transmits a payment approval request based on the actual card number to the card issuing server 60 (steps 970 and 975). Here, the extraction of the actual card number can extract the actual card number matched to the virtual number by using the OTP value as the decryption key value.
카드사 서버(60)는 실제 카드 번호에 기초하여 결제 승인 여부를 결정하고(980 단계), 승인 결과를 온라인 가맹점에 전달하여 결제가 완료된다(982, 984, 986, 990 단계). 결제 인증 서버(510)는 클라이언트 앱 상에 승인 결과에 따라 영수증을 출력할 수 있다(995 단계).The card issuer server 60 determines whether or not to approve the payment based on the actual card number (step 980), and transmits the approval result to the online merchant to complete the payment (steps 982, 984, 986, and 990). The payment authentication server 510 may output the receipt on the client app according to the approval result (Step 995).
도 10은 도 9를 참조하여 설명한 가상 번호 기반의 결제 서비스 중 온라인 결제 서비스 절차를 구현한 스크린 샷이고, 도 11은 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스 중 오프라인 결제 서비스 절차를 구현한 스크린 샷이다. 클라이언트 단말기(10)가 접속한 온라인 가맹점에서 결제 진행 시 가맹점 결제 창(1300)을 출력하고, 결제 창(1300)은 주문 정보, 배송 정보, 결제 수단 선택에 대한 정보를 포함할 수 있다. 본 실시예에서는, 클라이언트 단말기(10)를 이용한 모바일 결제를 예로 들어 설명하였으나, 사용자가 클라이언트 단말기 외 다른 컴퓨팅 디바이스(예컨대, PC)를 이용하여 온라인 결제를 진행하고 결제 창을 출력할 수 있다.FIG. 10 is a screen shot illustrating an online settlement service procedure among the virtual number based settlement services described with reference to FIG. 9, FIG. 11 is a flowchart illustrating an offline settlement service procedure of a virtual number based settlement service according to an embodiment of the present invention. It is a screenshot that I implemented. The merchant payment window 1300 is displayed at the online merchant terminal connected to the client terminal 10 and the payment window 1300 may include information on order information, delivery information, and payment means selection. In this embodiment, the mobile payment using the client terminal 10 has been described as an example. However, the user can make an online payment using a computing device (e.g., PC) other than the client terminal and output a payment window.
사용자가 결제 창(1300)에서 가상 번호 결제(OTC 결제; 1305)를 선택하면, 클라이언트 단말기(10)상에서 클라이언트 앱(도 10의 결제 앱)이 자동으로 구동된다(1310). 다른 실시예로서, 다른 컴퓨팅 디바이스로 온라인 결제 진행 시에는 사용자가 수동으로 클라이언트 앱을 구동하거나, 푸시 메시지 또는 근거리 무선 통신 등의 방법을 이용하여 자동으로 구동되도록 구현할 수도 있다.When the user selects virtual number payment (OTC payment) 1305 in the payment window 1300, the client application (the payment application of FIG. 10) is automatically activated on the client terminal 10 (1310). In another embodiment, the user may manually operate the client application, or may be automatically driven using a push message or a short-range wireless communication method, when the online payment is made to another computing device.
클라이언트 앱이 구동되면, 미리 설정된 기준에 의해 결제할 카드가 출력되고(1320), 사용자가 결제 진행 시 결제 비밀번호를 입력받는다(1330). 결제 비밀번호가 입력되면, OTP가 발급되고, 결제 인증 서버(510)에 가상 번호 생성 요청이 전송된다. 요청 시 전송되는 정보는 회사코드, OTP 값, PIN 값, 카드 선택 정보를 포함한다. OTP 서버(520)로부터 가상 번호가 발급되면 클라이언트 단말기(10)에 전달되어 출력된다(1340). 클라이언트 앱(1340)은 OTP의 인증 완료 결과를 포함하고, 가상 번호(1345)와 그에 대응되는 바코드를 포함할 수 있고, 미리 저장한 서명 정보를 함께 출력할 수 있다. When the client application is activated, a card to be paid is printed according to a preset reference (1320), and the user receives a payment password (1330) when the payment is proceeding. When the payment password is input, an OTP is issued, and a request for generating a virtual number is transmitted to the payment authentication server 510. The information transmitted upon request includes the company code, OTP value, PIN value, and card selection information. When the virtual number is issued from the OTP server 520, the virtual number is transmitted to the client terminal 10 and outputted (1340). The client application 1340 includes the authentication completion result of the OTP, and may include the virtual number 1345 and the corresponding barcode, and may output the pre-stored signature information together.
이후에 사용자는 가맹점 결제창에 자동 또는 수동으로 가상 번호를 입력하고(1350), 온라인 가맹점(30)은 결제 승인 요청을 보낸다. 결제 인증 서버(520)는 결제 승인 요청에 포함된 가상 번호로부터 실제 카드 번호를 추출하여, 카드사(60)로부터 결제 승인 결과를 전달받고, 결제가 완료됨에 따라 클라이언트 앱에 구매 정보, 승인 번호, 가맹점 번호 및 구매 일시를 포함한 영수증(1360)을 출력할 수 있다.Thereafter, the user automatically or manually enters the virtual number into the merchant payment window (1350), and the online merchant 30 sends a payment approval request. The payment authentication server 520 extracts the actual card number from the virtual number included in the payment approval request, receives the payment approval result from the card company 60, and transmits the purchase information, approval number, And a receipt 1360 including the date and time of purchase.
도 11의 오프라인 결제의 경우, 사용자 측이 아닌, 가맹점에 구비된 결제 단말기(예컨대, POS 단말기, 바코드 리더기를 포함하는 결제 단말기) 상에 결제 창이 출력될 수 있고, 결제자의 선택에 따라 결제를 진행할 수 있다.11, a payment window can be displayed on a payment terminal (for example, a POS terminal or a payment terminal including a barcode reader) provided at an affiliate shop rather than the user side, and payment can be made according to the selection of the payer .
사용자는 자동(예컨대, 근거리 무선 통신) 또는 수동으로 클라이언트 앱을 구동하여(1400), 결제할 카드를 확인하고(1410), 결제 비밀번호를 입력한다(1420). 결제 비밀번호 입력 시 OTP가 발급되고, 온라인 결제와 마찬가지로 결제 인증 서버(510)에 가상 번호의 생성을 요청한다. 요청 시 전송되는 정보는 회사코드, OTP 값, PIN 값, 카드 선택 정보를 포함한다. 가상 번호가 생성되면, 클라이언트 앱에 출력되고(1430), 출력 페이지(1430)는 OTP 인증 결과, 가상 번호 및 이에 대응되는 바코드(1435)와 서명 정보를 포함한다.The user may activate the client app 1400, automatically identify the card to be paid 1410, and enter the payment password 1420, either automatically (e.g., near field wireless communication) or manually. OTP is issued when a payment password is input, and requests generation of a virtual number to the payment authentication server 510 as in the case of online payment. The information transmitted upon request includes the company code, OTP value, PIN value, and card selection information. When the virtual number is generated, it is output 1430 to the client app, and the output page 1430 includes the OTP authentication result, the virtual number and the corresponding barcode 1435 and signature information.
가맹점측의 결제 단말기(도 11의 오프라인 결제 터미널)는 바코드 리더기를 이용하여 바코드를 인식함으로써 가상 번호를 입력받거나, 클라이언트 단말기(10)에 출력된 가상 번호를 결제자가 직접 입력할 수도 있다. 고객이 서명을 수행하면(1450), 가맹점으로부터 결제 인증 서버(520)에 승인 요청이 전달되고(1460), 결제 인증 서버(520)는 실제 카드 번호를 추출하여 카드사(60)에 승인 요청을 전달한다. 카드사(60)로부터 결제 승인이 이루어지면 승인 결과가 클라이언트 단말기(10) 및 결제 단말기에 전송될 수 있다(1470). 또한 클라이언트 앱 상에 영수증이 출력될 수 있다(1480).The payment terminal (offline payment terminal in FIG. 11) of the merchant can receive the virtual number by recognizing the barcode using the barcode reader, or the purveyor directly inputs the virtual number output to the client terminal 10. [ When the customer performs the signature (1450), the approval request is transmitted from the merchant to the payment authentication server 520 (1460), and the payment authentication server 520 extracts the actual card number and transmits an approval request to the card company 60 do. If the payment approval is made from the card company 60, the approval result may be transmitted to the client terminal 10 and the payment terminal 1470. A receipt may also be printed on the client app (1480).
이러한 가상 번호를 이용한 온라인, 오프라인 결제의 경우, OTP를 암호화키로 생성한 가상 번호를 결제에 이용하되, 인증사(50)가 결제 절차를 중개하는 과정에서 가상 번호를 실제 카드번호를 복호화하여 카드사측에 전달하는 바, 카드사에서는 실제 카드 번호를 기반으로 신속하고 용이하게 결제 승인 처리가 가능해지며, 기존에 구축된 인프라의 변경없이도 보안성이 강화된 결제 서비스의 이용이 가능하다는 이점이 있다.In the case of on-line and off-line settlement using the virtual number, the virtual number generated by the encryption key is used for settlement. In the process of intermediating the settlement procedure by the authentication company 50, the virtual number is decoded, The credit card company can quickly and easily perform payment approval processing based on the actual card number, and it is possible to use the payment service with enhanced security without changing the existing infrastructure.
도 12는 본 발명의 일 실시형태에 따른 가상 번호 기반의 결제 서비스의 결제 취소 절차를 설명하기 위한 흐름도이다. 결제 승인 절차와 마찬가지로, 결제 취소 절차에서도 가상 번호를 이용한 취소 요청이 가능하다.12 is a flowchart illustrating a payment cancellation procedure of a virtual number-based payment service according to an embodiment of the present invention. As with the payment authorization procedure, the cancellation request using the virtual number is also possible in the payment cancellation procedure.
사용자가 온라인, 모바일 또는 오프라인 결제 건에 대한 결제 취소 요청을 가맹점(30)에 요청하면(1010), 가맹점(30)은 카드 결제 대행사를 거쳐 인증사(50)에 결제 취소 요청을 전달한다. 이 때, 결제 취소 요청은 거래 번호, 승인 번호 및 가상 번호(OTC) 정보를 포함할 수 있다. 인증사(50)는 수신한 가상번호로부터 실제 카드번호를 추출할 수 있고, 카드사(60)에 거래 번호, 승인 번호 및 질제 카드번호를 포함한 결제 취소 요청을 전달한다(1050).When the user requests the merchant 30 for a payment cancellation request for online, mobile or offline payment 1010, the merchant 30 transmits a settlement cancellation request to the authentication company 50 via the card settlement agency. At this time, the payment cancellation request may include transaction number, approval number, and virtual number (OTC) information. The authentication company 50 extracts the actual card number from the received virtual number and transmits a payment cancellation request including the transaction number, the approval number, and the question card number to the card company 60 (1050).
카드사는 결제 취소를 처리하고(1060), 결제 취소 결과를 인증사(50)에 전달한다(1070). 인증사(50)는 카드 결제 대행사(40), 가맹점(30)에 결제 취소 결과를 전달하고, 가맹점에 결제 취소 결과를 출력할 수 있다(1080, 1090, 1100). 사용자 측에서도 카드사로부터의 SMS 메시지 또는 클라이언트 앱 등의 다양한 경로를 통해 결제 취소 결과를 확인할 수 있다(1200).The card company processes the payment cancellation 1060, and transmits the payment cancellation result to the authentication company 50 (1070). The authentication company 50 can deliver the settlement cancellation result to the card settlement agency 40 and the merchant 30 and output the settlement cancellation result to the merchant 1080, 1090, 1100. On the user side, the payment cancellation result can be confirmed through various routes such as an SMS message from a credit card company or a client application (1200).
이처럼, 본 발명이 제안하는 결제 및 취소 프로세스는 가상 번호를 이용하여 이루어지는 바, 중간에 실제 카드 정보가 노출될 위험이 없고, 데이터의 탈취, 위변조의 문제를 해결할 수 있다.
As described above, the payment and cancellation process proposed by the present invention is performed by using the virtual number, and there is no risk that the actual card information is exposed in the middle, and the problem of data deception and forgery can be solved.
이상에서, 본 발명은 이해를 돕기 위해 상기 구체적인 예에 대해서만 상세히 설명되었으므로 본 명세서에서 나타낸 구성요소, 그들의 접속 및 관계, 및 그들의 기능들은 단지 예시적인 것을 의미한다. 본 발명에 있어서, 각 구성요소들은 필요에 따라 물리적으로 분리된 형태 또는 하나 이상의 구성요소가 통합된 형태로도 구현될 수 있다.While the present invention has been described in detail in the foregoing for the purpose of illustration, it is to be understood that the components, their connections and relationships, and their functions are merely exemplary. In the present invention, each component may be implemented as a physically separated form or as an integrated form of one or more components as needed.
본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. The present invention is not necessarily limited to these embodiments, as all the constituent elements constituting the embodiment of the present invention are described as being combined or operated in one operation. That is, within the scope of the present invention, all of the components may be selectively coupled to one or more of them.
또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Furthermore, the terms "comprises", "comprising", or "having" described above mean that a component can be implanted unless otherwise specifically stated, But should be construed as including other elements. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used terms, such as predefined terms, should be interpreted to be consistent with the contextual meanings of the related art, and are not to be construed as ideal or overly formal, unless expressly defined to the contrary.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The foregoing description is merely illustrative of the technical idea of the present invention, and various changes and modifications may be made by those skilled in the art without departing from the essential characteristics of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate rather than limit the scope of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed according to the following claims, and all technical ideas within the scope of equivalents should be construed as falling within the scope of the present invention.
10: 클라이언트 단말기
20: 클라이언트 PC
30: 온라인 가맹점 서버
40: 카드결제 대행사 서버
50: 인증 서버
60: 카드사 서버
70: 발급 은행 서버
10: Client terminal
20: Client PC
30: Online Merchant Server
40: Card payment agency server
50: Authentication server
60: Card issuer server
70: Issuing bank server

Claims (17)

  1. 오티피(OTP; One Time Password) 기반의 가상 번호 결제 방법으로서,
    클라이언트 단말기 상에서, 클라이언트 앱을 구동하는 단계;
    상기 클라이언트 앱 구동 시 비밀번호를 입력하면, 상기 클라이언트 단말기의 USIM 또는 보안 영역(Trust Zone)에 저장된 카드 정보 및 단말 정보 중 적어도 하나의 정보를 이용하여 오티피를 생성하는 단계;
    상기 클라이언트 단말기가 인증 서버에 가상 번호 생성 요청을 전송하는 단계;
    상기 인증 서버는 상기 가상 번호 생성 요청에 포함된 오티피를 암호화 키로 가상 번호를 생성하는 단계;
    상기 인증 서버가 생성된 가상 번호를 상기 클라이언트 단말기에 전송하는 단계;
    상기 클라이언트 단말기가 상기 인증 서버로부터 상기 가상 번호를 수신하여, 상기 가상 번호 및 결제 정보를 포함하는 결제 승인 요청 정보를 생성하고, 상기 결제 승인 요청 정보를 상기 인증 서버에 송신하는 단계;
    상기 인증 서버가 상기 클라이언트 단말기로부터 상기 결제 승인 요청 정보를 수신하여, 상기 오티피를 복호화 키 값으로 이용하여 상기 가상 번호를 복호화하고 실제 카드 번호를 추출하는 단계; 및
    상기 인증 서버가 카드사 서버와 연동하여 상기 실제 카드 번호에 기반한 결제 승인을 처리하는 단계를 포함하고,
    상기 클라이언트 앱은 결제 프로세스를 수행하는 전체 또는 일부 과정에서 보안 UI를 구동하고, 상기 보안 UI가 구동되면 상기 클라이언트 단말기의 보안 운영 체제가 CPU를 독점 사용하게 되어 일반 영역의 모든 연산 및 동작은 중지되고, 보안 UI 실행 시 화면 입출력의 모든 권한을 상기 보안 영역이 취득하여 외부로의 데이터 송출, 화면 캡쳐 및 녹화 기능 조작이 불가하고, 상기 보안 UI를 통해 입출력되는 정보의 외부 입출력이 불가하며, 상기 보안 UI에서 제공하는 SW Back 버튼을 통해서만 일반 환경으로 돌아가도록 허용되고,
    상기 가상 번호 생성 요청은 회사 코드, 상기 오티피 값, PIN 값 및 카드 선택 정보 중 적어도 하나를 포함하며,
    상기 결제 승인을 처리하는 단계는, 상기 카드사 서버가 상기 인증 서버로부터 상기 오티피를 복호화 키 값으로 이용하여 상기 가상 번호를 복호화하여 추출된 상기 실제 카드 번호를 수신하여 실제 카드 번호를 이용한 결제 승인을 처리하고, 상기 인증 서버에 결제 승인 결과를 송신하며,
    상기 가상 번호와 상기 실제 카드 번호의 매칭 테이블을 생성하여 저장하는 것을 특징으로 하는 가상 번호 결제 방법.
    A virtual number settlement method based on an OTP (One Time Password)
    Operating a client app on a client terminal;
    Generating an audiope using at least one of a USIM of the client terminal or at least one of card information and terminal information stored in a security zone when the password is input when the client application is operated;
    The client terminal transmitting a virtual number generation request to an authentication server;
    The authentication server generating a virtual number using an encryption key included in the virtual number creation request;
    Transmitting the virtual number generated by the authentication server to the client terminal;
    The client terminal receiving the virtual number from the authentication server, generating payment approval request information including the virtual number and payment information, and transmitting the payment approval request information to the authentication server;
    Receiving, by the authentication server, the payment approval request information from the client terminal, decrypting the virtual number using the atopy as a decryption key value, and extracting an actual card number; And
    And the authentication server processing payment approval based on the actual card number in cooperation with a card issuer server,
    When the security UI is activated, the security operating system of the client terminal exclusively uses the CPU, so that all operations and operations of the general area are suspended , The security area acquires all rights of the screen input / output at the time of execution of the security UI, operation of data transmission, screen capture and recording functions to the outside is impossible, external input / output of information input / output through the security UI is impossible, It is allowed to return to the normal environment only through the SW Back button provided in the UI,
    Wherein the virtual number generation request includes at least one of a company code, an opportunistic value, a PIN value, and card selection information,
    The step of processing the payment approval may include receiving the extracted actual card number by decrypting the virtual number using the atopy as a decryption key value from the authentication server and receiving a payment approval using the actual card number And transmits a payment approval result to the authentication server,
    And generating and storing a matching table of the virtual number and the actual card number.
  2. 제 1 항에 있어서,
    상기 가상 번호는 미리 정의된 암호화 방식으로 암호화되는 것을 특징으로 하는 가상 번호 결제 방법.
    The method according to claim 1,
    Wherein the virtual number is encrypted by a predefined encryption method.
  3. 제 1 항에 있어서,
    상기 실제 카드 번호를 추출하는 단계는 상기 인증 서버에서 상기 오티피를 복호화 키값으로 하여 상기 가상 번호를 복호화하여 추출하는 것을 특징으로 하는 가상 번호 결제 방법.
    The method according to claim 1,
    Wherein the step of extracting the actual card number decrypts and extracts the virtual number with the authentication key as the decryption key value in the authentication server.
  4. 삭제delete
  5. 제 1 항에 있어서,
    상기 클라이언트 앱을 구동하기 전, 결제 서비스에 가입하는 단계를 더 포함하고,
    상기 결제 서비스에 가입하는 단계는, 상기 카드사 서버로부터 가입 안내 메시지를 수신하는 단계, 상기 클라이언트 앱을 설치하는 단계, 통신사와 연동하여 본인 인증을 수행하는 단계, 카드 인증을 수행하는 단계, 카드 등록 단계 및 오티피 발급 단계를 포함하는 것을 특징으로 하는 가상 번호 결제 방법.
    The method according to claim 1,
    Further comprising the step of subscribing to a payment service before driving the client app,
    The step of subscribing to the payment service may include receiving a subscription announcement message from the card company server, installing the client app, performing authentication in cooperation with a communication company, performing card authentication, And issuing an authentication ticket.
  6. 제 5 항에 있어서,
    상기 카드사 서버로부터 가입 안내 메시지를 수신하는 단계에서, 상기 가입 안내 메시지는 암호화 정보를 포함하고,
    상기 카드 인증을 수행하는 단계는 상기 암호화 정보를 추출하여 카드 정보를 자동 입력하는 것을 특징으로 하는 가상 번호 결제 방법.
    6. The method of claim 5,
    In the step of receiving the subscription information message from the card company server, the subscription information message includes encryption information,
    Wherein the step of performing the card authentication includes extracting the encryption information and automatically inputting the card information.
  7. 제 5 항에 있어서,
    상기 인증 서버는 결제 인증 서버 및 오티피 서버를 포함하고,
    상기 오티피 발급 단계는, 상기 오티피 서버에 오티피 등록 요청을 송신하고, 상기 오티피 서버가 오티피 키를 발급 및 저장하고, 상기 오티피 서버가 상기 클라이언트 단말기에 상기 오티피 키 및 시리얼 값을 전송하는 것을 특징으로 하는 가상 번호 결제 방법.
    6. The method of claim 5,
    Wherein the authentication server includes a payment authentication server and an authentication server,
    Wherein the atopy server issues an atopy registration request to the atopy server, the atopy server issues and stores the atopy key, and the atopy server sends the at least one authentication key and the serial value And transmits the virtual number payment method.
  8. 제 7 항에 있어서,
    상기 오티피 키 및 시리얼은 USIM 또는 보안 영역(Trust Zone)에 저장되는 것을 특징으로 하는 가상 번호 결제 방법.
    8. The method of claim 7,
    Wherein the authentication key and the serial are stored in a USIM or a Trust Zone.
  9. 제 1 항에 있어서,
    상기 가상 번호는 일회성 번호로서, 유효 시간 경과 후 재사용이 불가한 것을 특징으로 하는 가상 번호 결제 방법.
    The method according to claim 1,
    Wherein the virtual number is a one-time number and can not be reused after a lapse of an effective time.
  10. 제 1 항 내지 제 3 항, 제 5 항 내지 제 9 항 중 어느 한 항의 가상 번호 결제 방법을 상기 클라이언트 단말기 상에서 수행하는 상기 클라이언트 앱을 저장한 컴퓨터 판독가능한 기록매체.A computer-readable recording medium storing the client application, which performs the virtual number payment method of any one of claims 1 to 3 and 5 to 9 on the client terminal.
  11. 클라이언트 단말기로부터 결제 진행 및 결제에 필요한 정보를 입력받아 결제를 요청하는 가맹점 서버;
    상기 가맹점 서버로부터 결제 요청을 수신하여 인증 서버에 전달하는 카드결제 대행사 서버;
    상기 클라이언트 단말기상에서 클라이언트 앱을 구동하여 결제 프로세스를 진행하도록 지원하는 결제 인증 서버 및 오티피를 발급 및 관리하는 오티피 서버를 포함하는 인증 서버; 및
    상기 클라이언트 앱을 구동하여 상기 클라이언트 단말기의 USIM 또는 보안 영역(Trust Zone)에 저장된 카드 정보 및 단말 정보 중 적어도 하나의 정보를 이용하여 오티피를 생성하고, 상기 결제 인증 서버에 상기 오티피를 포함한 가상 번호 생성 요청을 송신하는 클라이언트 단말기를 포함하고,
    상기 결제 인증 서버는 상기 가상 번호 생성 요청을 수신하여 결제 비밀번호를 인증한 후, 상기 가상 번호 생성 요청을 상기 오티피 서버에 전달하고,
    상기 오티피 서버는 상기 가상 번호 생성 요청에 포함된 상기 오티피를 검증하고, 상기 오티피를 암호화 키값으로 한 가상 번호를 생성하여 상기 클라이언트 단말기에 전송하고,
    상기 클라이언트 앱은 결제 프로세스를 수행하는 전체 또는 일부 과정에서 보안 UI를 구동하고, 상기 보안 UI가 구동되면 상기 클라이언트 단말기의 보안 운영 체제가 CPU를 독점 사용하게 되어 일반 영역의 모든 연산 및 동작은 중지되고, 보안 UI 실행 시 화면 입출력의 모든 권한을 상기 보안 영역이 취득하여 외부로의 데이터 송출, 화면 캡쳐 및 녹화 기능 조작이 불가하고, 상기 보안 UI를 통해 입출력되는 정보의 외부 입출력이 불가하며, 상기 보안 UI에서 제공하는 SW Back 버튼을 통해서만 일반 환경으로 돌아가도록 허용되고,
    상기 가상 번호 생성 요청은 회사 코드, 상기 오티피 값, PIN 값 및 카드 선택 정보 중 적어도 하나를 포함하며,
    카드 결제의 승인 처리를 수행하는 카드사 서버를 더 포함하고,
    상기 인증 서버는 상기 오티피를 복호화 키값으로 하여 상기 가상 번호를 복호화하여 실제 카드 번호를 추출하고, 상기 실제 카드 번호를 상기 카드사 서버에 전달하여 결제 승인을 요청하고,
    상기 카드사 서버는 상기 실제 카드 번호를 수신하여 실제 카드 번호를 이용한 결제 승인을 처리하고, 상기 인증 서버에 결제 승인 결과를 송신하며,
    상기 가상 번호와 상기 실제 카드 번호의 매칭 테이블을 생성하여 저장하는 것을 특징으로 하는 가상 번호 결제 시스템.
    A merchant server for receiving payment information from a client terminal and requesting settlement;
    A card settlement agency server for receiving a settlement request from the merchant server and delivering the settlement request to an authentication server;
    An authentication server including a payment authentication server for supporting the client application on the client terminal to proceed with a payment process and an authentication server for issuing and managing an authentication; And
    The client application is activated to generate an atype using at least one of the USIM of the client terminal or at least one of the card information and the terminal information stored in a security zone of the client terminal, A client terminal sending a number generation request,
    Wherein the payment authentication server receives the virtual number generation request, authenticates the payment password, and transmits the virtual number generation request to the atopy server,
    Wherein the atopy server verifies the atopy included in the virtual number generation request, generates a virtual number having the atype as an encryption key value, and transmits the virtual number to the client terminal,
    When the security UI is activated, the security operating system of the client terminal exclusively uses the CPU, so that all operations and operations of the general area are suspended , The security area acquires all rights of the screen input / output at the time of execution of the security UI, operation of data transmission, screen capture and recording functions to the outside is impossible, external input / output of information input / output through the security UI is impossible, It is allowed to return to the normal environment only through the SW Back button provided in the UI,
    Wherein the virtual number generation request includes at least one of a company code, an opportunistic value, a PIN value, and card selection information,
    Further comprising a card issuer server for performing authorization processing for card payment,
    The authentication server extracts an actual card number by decrypting the virtual number using the oppy as a decryption key value, transmits the actual card number to the card company server to request payment approval,
    The card company server receives the actual card number, processes the payment approval using the actual card number, transmits the payment approval result to the authentication server,
    And a matching table of the virtual number and the actual card number is generated and stored.
  12. 제 11 항에 있어서,
    상기 가상 번호는 미리 정의된 암호화 방식으로 암호화되는 것을 특징으로 하는 가상 번호 결제 시스템.
    12. The method of claim 11,
    Wherein the virtual number is encrypted by a predefined encryption method.
  13. 삭제delete
  14. 제 11 항에 있어서,
    상기 클라이언트 단말기는 상기 카드사 서버로부터 가입 안내 메시지를 수신하여 상기 클라이언트 앱을 설치하고,
    상기 가입 안내 메시지는 암호화 정보를 포함하고,
    상기 클라이언트 앱은 카드 인증 시 상기 암호화 정보를 추출하여 카드 정보를 자동 입력하는 것을 특징으로 하는 가상 번호 결제 시스템.
    12. The method of claim 11,
    Wherein the client terminal receives the subscription announcement message from the card issuer server to install the client app,
    The subscription information message including encryption information,
    Wherein the client application extracts the encryption information upon card authentication and automatically inputs card information.
  15. 제 11 항에 있어서,
    상기 오티피 서버는 서비스 가입 시 상기 클라이언트 단말기로부터 오티피 발급을 요청받아 오티피 키를 발급 및 저장하고, 상기 클라이언트 단말기에 상기 오티피 키 및 시리얼 값을 전송하는 것을 특징으로 하는 가상 번호 결제 시스템.
    12. The method of claim 11,
    Wherein the atopy server issues a request for issuing an authentication ticket from the client terminal upon issuance of a service, issues and stores an authentication key, and transmits the authentication key and the serial value to the client terminal.
  16. 제 15 항에 있어서,
    상기 오티피 키 및 시리얼 값은 USIM 또는 보안 영역(Trust Zone)에 저장되는 것을 특징으로 하는 가상 번호 결제 시스템.
    16. The method of claim 15,
    Wherein the authentication key and the serial value are stored in a USIM or a Trust Zone.
  17. 제 11 항에 있어서,
    상기 가상 번호는 일회성 번호로서, 유효 시간 경과 후 재사용이 불가한 것을 특징으로 하는 가상 번호 결제 시스템.
    12. The method of claim 11,
    Wherein the virtual number is a one-time number and can not be reused after an expiration time has elapsed.
KR1020150078752A 2014-08-27 2015-06-03 Payment method, computer readable recording medium and system using virtual number based on otp KR101621254B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140112458 2014-08-27
KR20140112458 2014-08-27

Publications (2)

Publication Number Publication Date
KR20160036471A KR20160036471A (en) 2016-04-04
KR101621254B1 true KR101621254B1 (en) 2016-05-31

Family

ID=55799777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150078752A KR101621254B1 (en) 2014-08-27 2015-06-03 Payment method, computer readable recording medium and system using virtual number based on otp

Country Status (1)

Country Link
KR (1) KR101621254B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031627A1 (en) * 2017-08-09 2019-02-14 주식회사 센스톤 Virtual code providing system, virtual code generation device, virtual code verification device, virtual code providing method and virtual code providing program

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031716A2 (en) * 2017-08-09 2019-02-14 주식회사 센스톤 Virtual token-based settlement providing system, virtual token generation apparatus, virtual token verification server, virtual token-based settlement providing method, and virtual token-based settlement providing program
WO2019031717A1 (en) * 2017-08-09 2019-02-14 주식회사 센스톤 Intra-store communication network-based payment system, portable terminal comprising intra-store communication network-based payment function, method for providing intra-store communication network-based payment service, and program for performing same
KR101978812B1 (en) * 2017-08-09 2019-05-15 주식회사 센스톤 System, method and program for providing financial transaction by vritual card number, vritual card number generator and vritual card number verification device
KR101877966B1 (en) * 2017-11-09 2018-07-12 넷마블 주식회사 Appatus and method for providing game service
WO2020032498A1 (en) * 2018-08-09 2020-02-13 주식회사 센스톤 User authentication method and system using virtual authentication code
WO2020032517A1 (en) * 2018-08-09 2020-02-13 주식회사 센스톤 Virtual code generating and providing smart card, method therefor, and program therefor
KR102005549B1 (en) * 2018-08-09 2019-07-30 주식회사 센스톤 System, method and program for providing financial transaction by virtual code, vritual code generator and vritual code verification device
WO2020032344A1 (en) * 2018-08-09 2020-02-13 주식회사 센스톤 Concreteness-based virtual code verification method, apparatus, and system
KR102176013B1 (en) * 2018-10-24 2020-11-06 동서대학교 산학협력단 card information providing method using OTP
KR102191501B1 (en) * 2018-11-15 2020-12-15 (주)한우리아이티 Method for mediating card payment using biometric data
CN109274838B (en) * 2018-11-21 2019-12-03 恒宝股份有限公司 Generation and application method and secret communication system based on SIM card virtual-number
KR102099973B1 (en) * 2019-02-15 2020-04-10 주식회사 센스톤 System, method and program for providing virtual code, vritual code generator and vritual code verification device
KR102078501B1 (en) * 2019-03-13 2020-04-07 김용구 Adult certification system of unmanned store and method thereof
WO2021040462A1 (en) * 2019-08-30 2021-03-04 주식회사 센스톤 Method, program and system for providing virtual corporate card-based financial transaction
WO2021040444A1 (en) * 2019-08-30 2021-03-04 주식회사 센스톤 Virtual code-based transaction system, method and program
WO2021040243A1 (en) * 2019-08-30 2021-03-04 주식회사 센스톤 Virtual card number-based financial transaction device, virtual card number-based financial transaction provision method, and virtual card number-based financial transaction provision program
KR102177461B1 (en) * 2020-04-06 2020-11-11 주식회사 센스톤 System, method and program for providing virtual code, vritual code generator and vritual code verification device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019031627A1 (en) * 2017-08-09 2019-02-14 주식회사 센스톤 Virtual code providing system, virtual code generation device, virtual code verification device, virtual code providing method and virtual code providing program

Also Published As

Publication number Publication date
KR20160036471A (en) 2016-04-04

Similar Documents

Publication Publication Date Title
US10592872B2 (en) Secure registration and authentication of a user using a mobile device
US10755274B2 (en) Virtualization and secure processing of data
AU2018202542B2 (en) Automated account provisioning
US20180247309A1 (en) Payment system
AU2015219276B2 (en) Methods, devices, and systems for secure provisioning, transmission, and authentication of payment data
AU2017206119B2 (en) Systems and methods for device push provisioning
AU2016220072B2 (en) Secure authentication of user and mobile device
KR101820573B1 (en) Mobile-merchant proximity solution for financial transactions
CN105684346B (en) Ensure the method for air communication safety between mobile application and gateway
RU2663476C2 (en) Remote payment transactions protected processing, including authentication of consumers
EP2701416B1 (en) Mobile Electronic Device And Use Thereof For Electronic Transactions
US20160019536A1 (en) Secure processing of data
US9642005B2 (en) Secure authentication of a user using a mobile device
CN104145297B (en) Radial personal identification number verification
AU2012303620B2 (en) System and method for secure transaction process via mobile device
JP5964499B2 (en) System and method for enabling secure transactions with mobile devices
US9521548B2 (en) Secure registration of a mobile device for use with a session
US8827154B2 (en) Verification of portable consumer devices
JP5959410B2 (en) Payment method, payment server for executing the method, program for executing the method, and system for executing the same
CN105046479B (en) Trusted service manager architecture and method
US20170017957A1 (en) Authentication system and method for server-based payments
KR100860628B1 (en) A mobile phone for wireless computing device authenticable transactions, a computer system and a method thereof
US9390413B2 (en) System and method for making electronic payments from a wireless mobile device
CN102103778B (en) Mobile payment system, mobile terminal and method for realizing mobile payment service
US10135614B2 (en) Integrated contactless MPOS implementation

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee