KR102293775B1 - A mobile payment method for enhancing security of cloud-based payment system and the device therefor - Google Patents

A mobile payment method for enhancing security of cloud-based payment system and the device therefor Download PDF

Info

Publication number
KR102293775B1
KR102293775B1 KR1020190121113A KR20190121113A KR102293775B1 KR 102293775 B1 KR102293775 B1 KR 102293775B1 KR 1020190121113 A KR1020190121113 A KR 1020190121113A KR 20190121113 A KR20190121113 A KR 20190121113A KR 102293775 B1 KR102293775 B1 KR 102293775B1
Authority
KR
South Korea
Prior art keywords
key
payment
user device
server
payment terminal
Prior art date
Application number
KR1020190121113A
Other languages
Korean (ko)
Other versions
KR20200143195A (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
Application filed by 주식회사 티머니 filed Critical 주식회사 티머니
Publication of KR20200143195A publication Critical patent/KR20200143195A/en
Application granted granted Critical
Publication of KR102293775B1 publication Critical patent/KR102293775B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/326Payment applications installed on the mobile devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use

Abstract

사용자기기와 결제단말기가 키를 이용하여 결제를 수행하는 결제방법을 공개한다. 이 결제방법은, 어플리케이션 프로그램을 실행하여 키 및 상기 키의 유효사용횟수 및 유효사용기간을 포함하는 제어정보를 상기 서버로부터 수신하여 획득하는 단계; 및 상기 어플리케이션 프로그램을 이용하여 상기 키를 이용하여 상기 결제단말기와 결제 프로세스를 수행하는 단계를 포함한다. 상기 사용자기기는 상기 어플리케이션 프로그램의 종료 과정에서 상기 키를 삭제하거나 무효화 하도록 되어 있다. 또한, 사용자기기는 상기 어플리케이션 프로그램이 종료되기 이전이라도, 상기 키의 사용횟수가 상기 유효사용횟수에 도달하였거나, 또는 상기 키를 수신한 이후로부터 상기 유효사용기간이 도과한 경우에는 상기 키를 삭제하거나 무효화 하도록 되어 있다.A payment method in which a user device and a payment terminal perform a payment using a key is disclosed. The payment method includes the steps of executing an application program to receive and obtain control information including a key and the number of valid uses and a valid period of use of the key from the server; and performing a payment process with the payment terminal using the key using the application program. The user device is configured to delete or invalidate the key in the process of terminating the application program. Also, even before the application program is terminated, the user device deletes or deletes the key when the number of times of use of the key reaches the number of valid uses, or when the valid period of use has elapsed after receiving the key. to be invalidated.

Figure 112019100100590-pat00001
Figure 112019100100590-pat00001

Description

클라우드 기반 지불시스템의 보안성을 강화한 모바일 결제 방법 및 이를 위한 장치{A mobile payment method for enhancing security of cloud-based payment system and the device therefor}TECHNICAL FIELD [0002] A mobile payment method for enhancing security of cloud-based payment system and the device therefor

본 발명은 사용자기기의 모바일 어플리케이션을 이용하여 수행하는 결제기술에 관한 것으로서, 특히 사용자기기에서 SE(Secure Element)를 이용하지 않더라도 보안을 유지하면서도 실패 없이 빠르게 결제할 수 있는 기술에 관한 것이다.The present invention relates to a payment technology performed using a mobile application of a user device, and more particularly, to a technology capable of quickly making a payment without failure while maintaining security even if the user device does not use a secure element (SE).

특히, 본 발명은 사용자기기의 모바일 어플리케이션을 이용하여 사용자기기와 결제단말기 간에 결제를 수행하는 기술로서, 결제 수행 시점에 원격의 다른 서버의 개입 없이 결제를 수행하면서도 강화된 보안성을 제공하며, 사용자기기에서 결제를 위해 이용하는 키(key)의 재사용을 상기 키의 재배포 없이도 가능하게 하는 기술에 관한 것이다. In particular, the present invention is a technology for performing a payment between a user device and a payment terminal using a mobile application of the user device, and provides enhanced security while performing a payment without the intervention of another remote server at the time of payment execution, It relates to a technology that enables the reuse of a key used for payment in a device without redistribution of the key.

스마트 폰과 같은 사용자기기(이하, 간단히 '모바일', '모바일 장치', '모바일 단말'이라고 지칭할 수 있음)에는 별도의 보안 메모리 영역인 SE(Secure Element) 역할을 수행하는 USIM(Universal Subscriber Identity Module)이 장착되어 있을 수 있다. SE는 물리적/논리적 보안기능을 탑재하여 내부의 거래 데이터 및 키(key) 데이터 등의 중요 데이터를 저장하고 있으며, 이러한 중요 데이터를 외부로부터 보호한다.USIM (Universal Subscriber Identity) that performs the role of SE (Secure Element), which is a separate secure memory area for user devices such as smart phones (hereinafter, may simply be referred to as 'mobile', 'mobile device', or 'mobile terminal') module) may be installed. SE is equipped with physical/logical security functions to store important data such as internal transaction data and key data, and protects these important data from the outside.

사용자기기와 결제단말기 간에 결제를 수행할 때에, 결제정보와 가치정보는 적어도 제1방식 및 제2방식의 두 가지 방식으로 저장될 수 있다. 상기 제1방식에서는, 사용자기기에 설치된 SE(Secure Element)를 이용하며, 상기 결제정보와 가치정보는 상기 사용자기기가 액세스할 수 있는 SE에 저장될 수 있다. 상기 제2방식에서는, 서버를 이용하며, 상기 결제정보와 가치정보는 서버에 저장될 수 있다. 상기 제2방식에서, 사용자기기는 상기 결제정보 및/또는 가치정보 그 자체 또는 이들과 관련된 정보 또는 이들로부터 유도된 정보를 영구적/반영구적으로 저장하지 않고, 단지 상기 서버와 상기 결제단말기 간에 결제가 이루어질 때에 이들 정보를 전달해주는 역할만 수행할 수도 있다.When performing a payment between the user device and the payment terminal, payment information and value information may be stored in at least two methods: a first method and a second method. In the first method, an SE (Secure Element) installed in the user device is used, and the payment information and value information may be stored in an SE that the user device can access. In the second method, a server is used, and the payment information and value information may be stored in the server. In the second method, the user device does not permanently/semi-permanently store the payment information and/or value information itself, or information related thereto, or information derived therefrom, but only performs payment between the server and the payment terminal. It may only play the role of delivering these information at a time.

상기 제1방식은 사용자기기와 서버가 원격으로 네트워크 통신을 실행할 필요 없이 사용자기기와 결제단말간의 근거리 유선통신 또는 근거리 무선통신에 의해 결제가 완료되므로 '오프라인 결제방식'으로 지칭될 수도 있다. The first method may be referred to as an 'offline payment method' because the payment is completed by short-range wired communication or short-range wireless communication between the user device and the payment terminal without the need for the user device and the server to perform network communication remotely.

상기 제2방식은 사용자기기와 서버가 원격으로 네트워크 통신을 실행하는 과정을 포함하며, 실제 결제 프로세스는 서버와 결제단말기 간에 수행되는 방식으로서, 상기 사용자기기는 단순히 데이터를 중계하는 기능을 한다. 따라서 상기 제2방식은 '온라인 결제방식', '클라우드 기반 결제방식', 또는 '클라우드 모드 결제방식'으로 지칭할 수도 있다. The second method includes a process in which the user device and the server remotely execute network communication, and the actual payment process is performed between the server and the payment terminal, and the user device simply relays data. Accordingly, the second method may be referred to as an 'online payment method', a 'cloud-based payment method', or a 'cloud mode payment method'.

본 명세서에서 상기 결제단말기는 지불단말기라는 명칭으로 대체될 수도 있다.In the present specification, the payment terminal may be replaced with a name of a payment terminal.

상기 제1방식에서는, 즉 전통적인 오프라인 결제방식에서는 결제정보와 대칭키 방식의 비밀키를 사용하며, 이를 기반으로 생성된 서명(Signature, Sign)을 통해 상대방의 무결성 및 정당성을 확인한다. 상기 제1방식의 경우, 상대적으로 빠른 결제속도가 요구되는 결제 지불 환경을 만족할 수 있다. 상기 제1방식에 따르면, 사용자기기와 결제단말기 간에, 사용자기기가 액세스하는 SE 및 결제단말기가 엑세스하는 SE(즉, SAM)에 저장된 영구적 키를 사용하여 오프라인 거래를 수행한다.In the first method, that is, in the traditional offline payment method, payment information and a secret key of a symmetric key method are used, and the integrity and legitimacy of the counterpart are verified through a signature (signature) generated based on this. In the case of the first method, a payment payment environment requiring a relatively fast payment speed may be satisfied. According to the first method, an offline transaction is performed between the user device and the payment terminal using the permanent key stored in the SE accessed by the user device and the SE (ie, SAM) accessed by the payment terminal.

상기 제2방식에서는, 즉, 서버를 이용한 온라인 결제방식에서는 거래정보가 모두 통신에 의해 연결되는 원격의 중앙센터에 구축된 서버 내에 가상으로 존재하는 카드시스템에서 관리되며, 사용자의 사용요청 시 사용자기기의 무선통신기능을 이용하여 결제단말기와 원격으로 통신하여 상기 거래정보를 사용한다. 서버를 이용한 결제방식으로 구현된 거래정보는 중앙센터 내부에 존재하기 때문에 외부에 대한 노출이 적으므로 상대적으로 안전하게 관리가 가능하다. In the second method, that is, in the online payment method using a server, all transaction information is managed in a card system that exists virtually in a server built in a remote central center connected by communication, and when a user requests for use, the user device The transaction information is used by remotely communicating with the payment terminal using the wireless communication function of Transaction information implemented as a payment method using a server exists inside the central center, so exposure to the outside is small, so it can be managed relatively safely.

관련 선행문헌으로서, VAN社 서버와의 키교환을 이용한 스마트폰 카드결제 시스템에 관한 대한민국 등록특허(등록번호 '10-1468626')가 있다. 상기 스마트폰 카드결제 시스템은, 제1비밀키를 VAN社 서버에 의해 발급된 인증서에 포함된 RSA 공개키를 이용하여 암호화하고, 암호화된 제1비밀키를 통해 카드정보를 암호화하는 카드리더기, 및 제2비밀키를 생성하여 RSA 공개키를 통해 제2비밀키를 암호화한 이후, 상기 암호화된 제1비밀키로 암호화된 카드정보와, 암호화된 제2비밀키로 암호화한 결제전문정보를 VAN社 서버로 전송하는 스마트폰을 포함한다. 즉, 모바일에서 제2비밀키를 생성한 후 암호화하고, 암호화된 제2비밀키로 결제전문정보를 암호화하고, 상기 제2비밀키는 일회성 데이터로서 카드결제 프로세스 종료와 함께 소멸되는 구성 및 제1비밀키를 생성하여 암호화하고, 암호화된 제1비밀키를 이용하여 카드정보를 암호화하는 구성이 공개되어 있다. 여기서 상기 제1비밀키는 상기 카드리더기가 난수발생기를 이용하여 생성한 것이다.As a related prior document, there is a Korean registered patent (registration number '10-1468626') for a smartphone card payment system using a key exchange with a VAN server. The smartphone card payment system, a card reader that encrypts the first secret key using the RSA public key included in the certificate issued by the VAN company server, and encrypts card information through the encrypted first secret key, and After generating the second secret key and encrypting the second secret key through the RSA public key, the card information encrypted with the encrypted first secret key and the payment specialized information encrypted with the encrypted second secret key are sent to the VAN server. Including a smartphone that transmits. That is, the second secret key is generated and encrypted in the mobile device, the payment specialized information is encrypted with the encrypted second secret key, and the second secret key is one-time data and is destroyed upon termination of the card payment process and the first secret A configuration for generating and encrypting a key and encrypting card information using the encrypted first secret key is disclosed. Here, the first secret key is generated by the card reader using a random number generator.

상술한 발명의 배경이 되는 기술은 본 발명의 이해를 돕기 위하여 제시한 것으로서, 발명자가 지득하여 알고 있는 내용 및 발명자가 스스로 창작하였으나 아직 공개하지 않은 내용을 포함한다. 따라서 상술한 발명의 배경이 되는 기술 전부가 본 발명의 특허출원 시에 공개된 것으로 간주되어서는 안 된다.The technology that is the background of the above-described invention is presented to help the understanding of the present invention, and includes content that the inventor has learned and knows, and content that the inventor has created by himself but has not yet been disclosed. Therefore, all of the technology underlying the above-described invention should not be considered as disclosed at the time of filing a patent application for the present invention.

상술한 제1방식, 즉 전통적인 오프라인 거래 방식에서는, 결제정보와 가치정보를 사용자기기의 SE에 저장하기 때문에, 사용자기기를 분실하거나 도난당하였을 경우 보안에 문제가 생길 수 있다. 또한, 사용자기기의 통신사 변경이나 USIM 교체가 필요할 경우 교통카드 어플리케이션 내 서비스의 변경이 없어도 모든 결제정보가 USIM에 저장되어 있으므로 결제정보를 포함한 교통카드 어플리케이션을 재발급 받아야 하는 문제가 있다.In the first method described above, that is, the traditional offline transaction method, since payment information and value information are stored in the SE of the user device, a security problem may occur if the user device is lost or stolen. In addition, when it is necessary to change the carrier of the user device or change the USIM, there is a problem that the transportation card application including payment information must be reissued because all payment information is stored in the USIM even without a change in the service in the transportation card application.

상술한 제2방식, 즉, 서버를 이용한 온라인 거래 방식에 따르면, 결제정보와 가치정보가 서버에 저장되어 있기 때문에 결제단말기와 서버가 사용자기기를 통해 원격으로 통신을 수행한다. 이때, 상기 사용자기기가 중개 역할을 하여, 사용자기기의 통신기능을 이용하여 데이터를 송수신하게 된다. 이때, 결제를 위해 중앙센터와 2~4회의 통신을 수행하게 되며, 실시간으로 결제가 이루어져야 함에도 불구하고 통신이 지연되면 결제시간도 지연된다는 문제가 있다. 또한, 통신 음영지역의 경우 정상적인 서비스가 불가능할 수 있다는 문제가 있다.According to the second method, that is, the online transaction method using the server, the payment terminal and the server communicate remotely through the user device because the payment information and the value information are stored in the server. In this case, the user device acts as an intermediary to transmit and receive data using the communication function of the user device. At this time, communication with the central center is performed 2 to 4 times for payment, and although the payment must be made in real time, if communication is delayed, there is a problem that the payment time is also delayed. In addition, in the case of a communication shadow area, there is a problem that a normal service may not be possible.

상술한 제1방식 및 제2방식에 따른 문제를 해결하기 위하여, USIM 등의 SE를 사용하지 않으며 사용자기기의 운영시스템 상에서 실행되는 어플리케이션을 이용하는 방식으로 교통카드의 사용을 고려할 수도 있다. 이 경우 상기 어플리케이션이 접근 가능한 상기 사용자기기의 메모리 내에 결제정보와 가치정보가 저장될 수 있다. 상기 사용자기기의 메모리는 상기 SE에 비하여 보안에 취약하므로, 결국 악의적 제3자에 의한 공격에 취약하다. 이러한 경우, 사용자기기가 갖는 보안 취약점에 의해 도청, 중간자 공격 등의 중요 데이터의 노출과 해킹, 탈옥 등에 의한 어플리케이션 복제 및 변경 등 도용의 위험을 갖고 있다.In order to solve the problems according to the first and second methods described above, the use of a transportation card may be considered as a method of using an application executed on the operating system of the user device without using an SE such as USIM. In this case, payment information and value information may be stored in the memory of the user device accessible to the application. Since the memory of the user device is weaker in security than the SE, it is ultimately vulnerable to an attack by a malicious third party. In this case, there is a risk of exposure of important data such as eavesdropping and man-in-the-middle attacks, and theft such as application duplication and change due to hacking and jailbreaking due to security vulnerabilities of the user device.

즉, 상술한 기술들에 따른 결제방법에 따르면, ① 사용자기기(모바일기기)의 어플리케이션을 이용하는 경우에 있어서 보안성의 저하, ② SE를 사용하는 경우에 있어서의 SE 종속에 따른 서비스의 제한, 및 ③ 서버를 이용하는 온라인 거래 방식을 사용하는 경우에 있어서 서비스 제공 실패의 가능성과 같은 문제점들이 있다.That is, according to the payment method according to the above-mentioned techniques, ① a decrease in security when using an application of a user device (mobile device), ② restriction of services due to SE dependency in the case of using an SE, and ③ In the case of using an online transaction method using a server, there are problems such as a possibility of service provision failure.

본 발명에서는, ① 사용자기기에 설치된 교통카드 어플리케이션을 이용하고, ② 사용자기기에서 액세스할 수 있는 SE의 이용을 배제하면서도, ③ 서버의 이용을 최소한으로 줄여 교통카드 지불결제 방식의 보안취약점을 개선한 사용자기기 어플리케이션 방식의 교통카드 지불결제 방법을 제공하고자 한다. In the present invention, ① using the transportation card application installed on the user device, ② while excluding the use of SE that can be accessed from the user device, ③ minimizing the use of the server to improve the security vulnerabilities of the transportation card payment method It is intended to provide a transportation card payment method of a user device application method.

본 명세서에서 결제를 위한 세션의 실행 도중에, 서버와 결제단말기가 각각 서명을 주고받는 주체가 되는 방식으로 진행하되, 서버와 결제단말기 간의 데이터 교환에 있어서 사용자기기가 중계하는 결제 방식을 온라인 결제방식 또는 클라우드 기반 결제방식이라고 지칭할 수 있다. 그리고 결제를 위한 세션의 실행 도중에, 사용자기기와 결제단말기가 각각 서명을 주고받는 주체가 되는 방식으로 진행하는 결제 방식을 오프라인 결제방식이라고 지칭할 수 있다. 본 발명의 일 관점에 따라 제공되는 오프라인 결제방식은 상술한 상기 제1방식, 즉 전통적인 오프라인 결제방식과 차이가 있을 수 있다.In the present specification, during the execution of the session for payment, the server and the payment terminal each exchange signatures, but the payment method relayed by the user device in the data exchange between the server and the payment terminal is an online payment method or It can be referred to as a cloud-based payment method. In addition, a payment method in which a user device and a payment terminal become subjects for exchanging signatures during execution of a payment session may be referred to as an offline payment method. The offline payment method provided according to an aspect of the present invention may be different from the above-described first method, that is, the traditional offline payment method.

본 발명의 일 관점에 따라 사용자기기와 결제단말기가 키를 이용하여 결제를 수행하는 결제방법을 제공할 수 있다. 상기 결제방법은, 상기 사용자기기가, 어플리케이션 프로그램을 실행하여 키(key)를 서버로부터 수신하여 획득하는 단계; 및 상기 사용자기기가, 상기 키를 이용하여 상기 결제단말기와 결제 프로세스를 수행하는 단계;를 포함하며, 상기 사용자기기는 상기 어플리케이션 프로그램의 종료 과정에서 상기 키를 삭제하거나 무효화하도록 되어 있을 수 있다.According to one aspect of the present invention, it is possible to provide a payment method in which a user device and a payment terminal perform payment using a key. The payment method may include: acquiring, by the user device, receiving a key from a server by executing an application program; and performing, by the user device, a payment process with the payment terminal using the key, wherein the user device may be configured to delete or invalidate the key in the process of terminating the application program.

이때, 상기 획득하는 단계는, 상기 사용자기기가, 상기 어플리케이션 프로그램을 이용하여 상기 서버로부터 상기 키에 대한 유효기간 및 유효횟수 중 하나 이상에 관한 정보가 포함되어 있는 제어정보를 수신하는 단계를 포함할 수 있다. 이때, 상기 사용자기기는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 키를 이용하여 상기 결제 프로세스를 진행할지 여부를 결정하도록 되어 있을 수 있다. In this case, the acquiring may include, by the user device, receiving, by the user device, control information including information on at least one of a valid period and a valid number of the key from the server using the application program. can In this case, the user device may be configured to determine whether to proceed with the payment process using the key based on the validity period or the number of validity.

이때, 상기 결제 방법은, 상기 사용자기기가, 상기 어플리케이션 프로그램을 이용하여 상기 제어정보를 상기 결제단말기에게 송신하는 단계를 더 포함할 수 있다. 이때, 상기 유효기간 또는 상기 유효횟수는, 상기 결제단말기 또는 상기 결제단말기에 설치된 SAM이 상기 제어정보에 포함되어 있는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 키를 이용하여 상기 결제 프로세스를 진행할지 여부를 결정하는 데에 사용되기 위해 제공될 수 있다.In this case, the payment method may further include, by the user device, transmitting the control information to the payment terminal using the application program. In this case, the validity period or the number of validity is determined whether the payment terminal or the SAM installed in the payment terminal proceeds with the payment process using the key based on the validity period or the number of validity included in the control information. may be provided for use in determining whether or not

이때, 상기 결제 프로세스는 상기 결제단말기 또는 상기 결제단말기에 설치된 SAM에 의해 상기 키가 생성된 이후에 실행될 수 있다.In this case, the payment process may be executed after the key is generated by the payment terminal or a SAM installed in the payment terminal.

이때, 상기 키는 상기 서버가 카드번호를 이용하여 마스터키로부터 유도한 지불키일 수 있다.In this case, the key may be a payment key derived from the master key by the server using the card number.

또는, 상기 키는 상기 서버가 마스터키로부터 유도한 세션키일 수 있다.Alternatively, the key may be a session key derived from the master key by the server.

이때, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지, 상기 키를 이용하여 상기 결제 프로세스가 복수 회 실행될 수 있도록 되어 있을 수 있다.In this case, the payment process may be executed a plurality of times by using the key from the time the application program is executed to before the end of the application program.

이때, 상기 획득하는 단계는, 상기 어플리케이션 프로그램을 이용하여 상기 서버로부터 상기 키에 대한 유효기간 및 상기 키에 대한 유효횟수 중 하나 이상에 관한 정보가 포함되어 있는 제어정보를 수신하는 단계를 포함하고, 상기 사용자기기는, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지, 상기 키에 대한 유효기간이 도과하거나 또는 상기 키에 대한 상기 유효횟수가 초과한 경우에는 상기 키를 삭제하거나 무효화하도록 되어 있을 수 있다.In this case, the acquiring includes receiving, from the server using the application program, control information including information on at least one of a valid period for the key and a valid number of times for the key, The user device may be configured to delete or invalidate the key when the validity period for the key has elapsed or the number of validity times for the key is exceeded from the time the application program is executed to before the end of the key have.

이때, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지 상기 결제 프로세스가 복수 회 실행되는 동안, 상기 사용자기기는 상기 서버로부터 다른 키를 다시 배포 받지 않을 수 있다.In this case, while the payment process is executed a plurality of times from when the application program is executed to before the end of the application program, the user device may not receive another key from the server again.

본 발명의 다른 관점에 따라 사용자기기와 결제단말기가 키를 이용하여 결제를 수행하도록 상기 키를 생성하여 제공하는 결제방법을 제공할 수 있다. 상기 결제방법은, 서버가, 사용자기기(1)로부터 상기 키의 생성 및 제공에 관한 요청 메시지를 수신하는 단계; 및 상기 서버가, 상기 키를 생성하여, 상기 생성된 키를 사용자기기(1)에게 전송하는 단계;를 포함할 수 있다. 이때, 상기 결제단말기는, 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 상기 사용자기기로부터 수신하거나 또는 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 기초로 상기 서버가 생성한 임시 카드번호를 상기 사용자기기로부터 수신하도록 되어 있을 수 있다. 그리고 상기 결제단말기는, 상기 카드번호 또는 상기 임시 카드번호를 이용하여 상기 결제단말기에 저장되어 있는 마스터키로부터 상기 키를 유도하고, 상기 유도한 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 결제 프로세스를 실행하도록 되어 있을 수 있다. 그리고 상기 사용자기기는, 상기 사용자기기가 상기 서버로부터 획득한 상기 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 상기 결제 프로세스를, 상기 사용자기기에 설치된 어플리케이션 프로그램을 이용하여 실행하도록 되어 있을 수 있다. 그리고 상기 요청 메시지의 생성은 상기 어플리케이션 프로그램에 의해 이루어지며, 상기 사용자기기는 상기 어플리케이션 프로그램의 종료 과정에서 상기 서버로부터 획득한 상기 키를 삭제하도록 되어 있을 수 있다.According to another aspect of the present invention, it is possible to provide a payment method for generating and providing the key so that the user device and the payment terminal perform payment using the key. The payment method may include: receiving, by a server, a request message regarding generation and provision of the key from the user device (1); and generating, by the server, the key and transmitting the generated key to the user device 1 . In this case, the payment terminal receives the card number specified using the information included in the request message from the user device, or the server is generated based on the card number specified using the information included in the request message. A temporary card number may be received from the user device. and the payment terminal derives the key from the master key stored in the payment terminal using the card number or the temporary card number, and uses the derived key between the payment terminal and the user device. It may be configured to execute a payment process. The user device may be configured to execute the payment process performed between the payment terminal and the user device using the key obtained by the user device from the server using an application program installed in the user device. have. In addition, the generation of the request message may be performed by the application program, and the user device may be configured to delete the key obtained from the server in the process of terminating the application program.

본 발명의 또 다른 관점에 따라 사용자기기와 결제단말기가 키를 이용하여 결제를 수행하는 결제방법을 제공할 수 있다. 상기 결제방법은, 결제단말기가, 사용자기기가 서버에게 송신한 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 상기 사용자기기로부터 수신하거나 또는 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 기초로 상기 서버가 생성한 임시 카드번호를 상기 사용자기기로부터 수신하는 단계; 상기 결제단말기가, 상기 카드번호 또는 상기 임시 카드번호를 이용하여 상기 결제단말기에 저장되어 있는 마스터키로부터 키를 유도하는 단계; 및 상기 결제단말기가, 상기 유도한 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 결제 프로세스를 실행하는 단계;를 포함할 수 있다. 이때, 상기 키의 사용을 위한 유효횟수 또는 유효기간에 관한 정보를 포함하는 제어정보를 상기 사용자기기로부터 수신하도록 되어 있으며, 상기 키의 사용횟수가 상기 유효횟수를 초과한 경우, 또는 상기 유효기간이 도과한 경우에는 상기 유도한 키를 이용하여 상기 결제 프로세스를 실행하지 않도록 되어 있을 수 있다.According to another aspect of the present invention, it is possible to provide a payment method in which a user device and a payment terminal perform payment using a key. In the payment method, the payment terminal receives, from the user device, a card number specified using information included in a request message sent by the user device to the server, or a card specified using information included in the request message. receiving a temporary card number generated by the server based on the number from the user device; deriving, by the payment terminal, a key from the master key stored in the payment terminal using the card number or the temporary card number; and executing, by the payment terminal, a payment process performed between the payment terminal and the user device using the derived key. In this case, control information including information on the number of validity times or validity period for use of the key is received from the user device, and when the number of times of use of the key exceeds the number of validity, or the validity period expires If it is exceeded, the payment process may not be executed using the derived key.

본 발명에 따르면, SE 등의 보안매체가 없는 모바일 교통카드 어플리케이션을 이용한 교통카드 지불결제 방식의 보안취약점을 개선하여 사용자기기 어플리케이션 방식의 교통카드 지불결제 방식의 보안성을 강화할 수 있다.According to the present invention, it is possible to enhance the security of the transportation card payment method of the user device application method by improving the security vulnerabilities of the transportation card payment method using the mobile transportation card application without a security medium such as SE.

본 발명에 따르면, SE를 사용하지 않고도 보안성을 유지할 수 있는 기술을 제공할 수 있으며, SE를 사용하지 않기 때문에 SE 종속성에서 탈피하여 서비스의 다양화를 도모할 수 있다.According to the present invention, it is possible to provide a technology capable of maintaining security without using SE, and since SE is not used, it is possible to break away from SE dependency and diversify services.

본 발명에 따르면, 서버와 사용자기기(모바일기기) 간의 통신이 불가능한 상황에서도 보안성을 유지하면서 결제 단말기와 상기 사용자기기 간의 오프라인 결제가 가능하다.According to the present invention, offline payment between a payment terminal and the user device is possible while maintaining security even in a situation where communication between the server and the user device (mobile device) is impossible.

또한 본 발명에 따르면, 서버가 사용자기기에게 배포하는 키(임시키)의 갱신 주기로 인해, 키의 배포를 받기 위하여 요구되는 서버의 이용을 최소한으로 줄일 수 있다. 즉, 사용자기기는 결제 시점 이전에 키를 미리 전송받을 수 있다. 이로 인해, 오프라인 방식의 결제가 가능하므로 상대적으로 빠른 결제속도가 요구되는 결제 지불 환경을 만족시킬 수 있다.Also, according to the present invention, due to the renewal cycle of the key (temporary key) distributed by the server to the user device, the use of the server required to receive the key distribution can be reduced to a minimum. That is, the user device may receive the key in advance before the time of payment. For this reason, since offline payment is possible, it is possible to satisfy a payment payment environment that requires a relatively fast payment speed.

또한 본 발명에 따르면, 상기 키에는 유효기간 및/또는 유효횟수에 관한 정보가 포함되어 있어, 결제단말기가 수신한 상기 키의 유효기간이 만료되거나 유효횟수를 초과한 경우 결제가 이루어지지 않도록 되어 있어 상기 키의 도용을 방지하는 등 보안성을 높일 수 있다. 또한, 결제단말기가 상기 키를 생성하기 위해 서버와 공유한 마스터키를 갖고 있지 않는 경우, 결제단말기가 결제를 위한 상기 키를 생성할 수 없으므로 거래가 이루어지지 않도록 할 수 있다. In addition, according to the present invention, the key includes information on the validity period and/or number of validity, so that payment is not made when the validity period of the key received by the payment terminal expires or exceeds the number of validity It is possible to improve security such as preventing theft of the key. In addition, when the payment terminal does not have the master key shared with the server to generate the key, the payment terminal cannot generate the key for payment, so that the transaction may not be made.

또한 본 발명에 따르면, 통신사 및 사용자기기의 특성을 구분하지 않고, RF 무선 통신이 가능한 사용자기기라면 누구나 사용할 수 있다. 또한, 기존의 전통적인 오프라인 결제 방식의 결제단말기라면 사용이 가능하다. 또한, 제조사의 제약 없이 서비스를 그대로 이용할 수 있다.In addition, according to the present invention, any user device capable of RF wireless communication can use it regardless of the characteristics of the communication company and the user device. In addition, it can be used if it is a payment terminal of the existing traditional offline payment method. In addition, the service can be used as it is without restrictions by the manufacturer.

또한 기존의 카드 및 USIM 방식은 카드 내 서비스의 변경 또는 확장을 위해서는 신규 카드 또는 USIM의 발급이 필요하며, 이러한 때마다 카드제작 비용 및 발급 비용 등이 중복으로 발생한다. 또한 외부공격이나 파손 등에 의한 물리적인 카드의 손상이 발생하거나 S/W 오류 및 발급 오류 등에 의해 교체가 필요한 경우도 비용이 소요된다. 그러나 본 발명에 따르면, 이러한 비용이 소요되지 않는다는 장점이 있다.In addition, the existing card and USIM methods require the issuance of a new card or USIM in order to change or expand the service within the card, and each time the card production cost and issuance cost are duplicated. In addition, if the physical card is damaged due to external attack or damage, or if replacement is required due to S/W error or issuance error, a cost is incurred. However, according to the present invention, there is an advantage that such cost is not required.

본 발명의 일 실시예에 따르면, 사용자기기가 영구적인 키를 사용하지 않기 때문에 상기 영구적인 키를 해킹당할 경우의 보안 위협에서 자유롭다는 장점이 있다. 또한 본 발명의 일 실시예에 따르면, 사용자기기가 임시적으로 사용하는 키를 1회만 사용하는 것이 아니라 미리 설정된 유효횟수만큼 사용하거나 또는 유효기간 동안 사용할 수 있도록 되어 있기 때문에, 오프라인 결제가 1회 수행될 때마다 사용자기기가 서버와 매번 통신을 하여 임시로 사용하는 키를 매번 다시 배포받아야 하는 부담을 완화시킬 수 있다는 장점이 있다.According to an embodiment of the present invention, since the user device does not use the permanent key, there is an advantage in that the user device is free from security threats when the permanent key is hacked. In addition, according to an embodiment of the present invention, since the key used temporarily by the user device is not used only once, but can be used for a preset number of times of validity or can be used during the validity period, offline payment may be performed once. The advantage is that the user device communicates with the server every time, so that the burden of having to redistribute a key that is temporarily used every time can be alleviated.

도 1a는 본 발명의 일 실시예에 따른 결제 방법을 나타낸 순서도이다.
도 1b는 도 1a에 나타낸 실시예로부터 변형된 실시예에 따른 결제 방법을 나타낸 순서도이다.
도 2a는 본 발명의 일 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.
도 2b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 지불키를 각각 획득하는 방법을 설명한 도면이다.
도 3a는 본 발명의 다른 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.
도 3b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 임시 카드키를 각각 획득하는 방법을 설명한 도면이다.
도 4a는 본 발명의 다른 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.
도 4b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 세션키를 각각 획득하는 방법을 설명한 도면이다.
도 5는 본 발명의 일 실시예에 따른 결제 순서도를 나타낸 것이다.
도 6은 본 발명의 일 실시예에 따른 사용자기기의 구성요소를 설명하기 위한 도면이다.
1A is a flowchart illustrating a payment method according to an embodiment of the present invention.
1B is a flowchart illustrating a payment method according to an embodiment modified from the embodiment shown in FIG. 1A .
2A is a diagram for explaining a payment method between a user device and a payment terminal according to an embodiment of the present invention.
FIG. 2B is a diagram illustrating a method for a user device and a payment terminal to respectively acquire a payment key, which is a type of key for performing offline payment, according to an embodiment of the present invention.
3A is a view for explaining a payment method between a user device and a payment terminal according to another embodiment of the present invention.
3B is a diagram for explaining a method for a user device and a payment terminal to obtain a temporary card key, which is a type of key for performing offline payment, respectively, according to an embodiment of the present invention.
4A is a view for explaining a payment method between a user device and a payment terminal according to another embodiment of the present invention.
4B is a diagram for explaining a method for a user device and a payment terminal to respectively acquire a session key, which is a type of key for performing offline payment, according to an embodiment of the present invention.
5 is a view showing a payment flow chart according to an embodiment of the present invention.
6 is a view for explaining the components of a user equipment according to an embodiment of the present invention.

이하, 본 발명의 실시예를 첨부한 도면을 참고하여 설명한다. 그러나 본 발명은 본 명세서에서 설명하는 실시예에 한정되지 않으며 여러 가지 다른 형태로 구현될 수 있다. 본 명세서에서 사용되는 용어는 실시예의 이해를 돕기 위한 것이며, 본 발명의 범위를 한정하고자 의도된 것이 아니다. 또한, 이하에서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다.Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. However, the present invention is not limited to the embodiments described herein and may be implemented in various other forms. The terminology used in this specification is intended to help the understanding of the embodiments, and is not intended to limit the scope of the present invention. Also, singular forms used hereinafter include plural forms unless the phrases clearly indicate the opposite.

<제1실시예><First embodiment>

이하 도 1a를 참조하여 본 발명의 일 실시예에 따른 결제 방법을 설명한다.Hereinafter, a payment method according to an embodiment of the present invention will be described with reference to FIG. 1A.

도 1a는 본 발명의 일 실시예에 따른 결제 방법을 나타낸 순서도이다.1A is a flowchart illustrating a payment method according to an embodiment of the present invention.

본 발명의 일 실시예에 따른 결제 방법에는 사용자기기(1), 서버(2), 및 결제단말기(3)가 참여할 수 있다. The user device 1, the server 2, and the payment terminal 3 may participate in the payment method according to an embodiment of the present invention.

사용자기기(1)와 서버(2)는 유무선 네트워크 통신기술, 예컨대, 4G, 5G, LTE, MAN 등을 이용하여 원격으로 서로 통신할 수 있다. The user device 1 and the server 2 may communicate with each other remotely using a wired/wireless network communication technology, for example, 4G, 5G, LTE, MAN, or the like.

사용자기기(1)와 결제단말기(3)는 근거리 무선통신기술, 예컨대, Bluetooth, NFC 등, 또는 근거리 유선통신 기술, 예컨대, USB 케이블 통신 등을 이용하여 서로 통신할 수 있다.The user device 1 and the payment terminal 3 may communicate with each other using short-range wireless communication technology, for example, Bluetooth, NFC, or the like, or short-range wired communication technology, for example, USB cable communication.

사용자기기(1)는 상기 유무선 네트워크 통신기술 및 상기 근거리 무선통신기술이 구현된 휴대용 단말기로서 예컨대, 스마트폰, 태블릿일 수 있다. 사용자기기(1)가 특정 타입의 기기로 한정되지는 않는다.The user device 1 is a portable terminal in which the wired/wireless network communication technology and the short-range wireless communication technology are implemented, and may be, for example, a smartphone or a tablet. The user device 1 is not limited to a specific type of device.

결제단말기(3)는 상기 근거리 무선통신기술 또는 근거리 유선통신기술이 구현된 장치로서 키 및 서명정보를 이용하여 결제를 처리하는 기능을 갖는 장치, 예컨대 대중교통요금 처리 단말기, POS 등일 수 있다.The payment terminal 3 is a device in which the short-range wireless communication technology or the short-range wired communication technology is implemented, and may be a device having a function of processing payment using a key and signature information, for example, a public transportation fare processing terminal, POS, and the like.

도 1a를 참조하여 설명하면, 본 발명의 일 실시예에 따른 결제 방법은 다음의 단계들을 포함할 수 있다.Referring to FIG. 1A , a payment method according to an embodiment of the present invention may include the following steps.

단계(S110)에서, 사용자기기(1)는 사용자기기(1)에 설치되어 실행되는 어플리케이션 프로그램(101)을 이용하여 서버(2)에게 키(key)의 전송을 요청할 수 있다.In step S110 , the user device 1 may request the server 2 to transmit a key using the application program 101 installed and executed in the user device 1 .

단계(S130)에서, 서버(2)는 상기 키의 전송의 요청에 대응하여 키를 생성할 수 있다. In step S130, the server 2 may generate a key in response to the request for transmission of the key.

상기 키는 서버(2)에 저장된 마스터키로부터 유도되는 것일 수 있다.The key may be derived from a master key stored in the server 2 .

단계(S160)에서, 서버(2)는 상기 생성된 키를 사용자기기(1)에게 전송할 수 있다. In step S160 , the server 2 may transmit the generated key to the user device 1 .

단계(S110) 및 단계(S160)는 상술한 유무선 네트워크 통신기술을 통해 이루어질 수 있다.Steps S110 and S160 may be performed through the above-described wired/wireless network communication technology.

단계(S500)에서, 사용자기기(1)는 상기 키를 이용하여 결제단말기(3)와 결제 프로세스를 수행할 수 있다. In step S500, the user device 1 may perform a payment process with the payment terminal 3 using the key.

단계(S160)와 단계(S500) 사이에는 상당한 시간 간격이 존재할 수 있다. 즉, 단계(S160)에서 사용자기기(1)가 획득하는 상기 키는, 언제 수행될지 알 수 없는 상기 결제 프로세스를 위하여 미리 확보한 것일 수 있다.A significant time interval may exist between steps S160 and S500. That is, the key obtained by the user device 1 in step S160 may be previously secured for the payment process of which it is unknown when it will be performed.

상기 결제 프로세스는 어플리케이션 프로그램(101)과 결제단말기(3)가 각각 세션키를 준비하여, 상기 세션키를 이용하여 서명들을 생성하고 검증하는 과정을 거쳐 수행될 수 있다. 이러한 결제 프로세스는 종래 기술에 따른 서명 검증 방법을 이용할 수 있다.The payment process may be performed through a process in which the application program 101 and the payment terminal 3 prepare a session key, respectively, and generate and verify signatures using the session key. Such a payment process may use a signature verification method according to the prior art.

여기서 상기 세션키는 단계(S160)에서 획득한 키 그 자체이거나, 또는 상기 키로부터 유도된 것일 수 있다.Here, the session key may be the key itself obtained in step S160 or may be derived from the key.

단계(S330)에서, 사용자기기(1)는 어플리케이션 프로그램(101)의 종료 과정에서 상기 키를 삭제하거나 무효화할 수 있다.In step S330 , the user device 1 may delete or invalidate the key in the process of terminating the application program 101 .

이때, 어플리케이션 프로그램(101)의 종료는, 사용자기기(1)를 사용하는 사람에 의한 사용자 입력에 의해 종료될 수도 있으며, 또는 사용자기기(1)의 운영시스템(OS)의 작동 조건에 따라 자동으로 종료될 수도 있으며, 또는 어플리케이션 프로그램(101) 자체의 작동설정에 따라 자동으로 종료될 수도 있다.In this case, the termination of the application program 101 may be terminated by a user input by a person using the user device 1 or automatically according to the operating conditions of the operating system (OS) of the user device 1 . It may be terminated, or may be automatically terminated according to the operation setting of the application program 101 itself.

일 실시예에서, 어플리케이션 프로그램(101)의 종료는 상기 결제 프로세스의 수행 이전에 실행될 수도 있다. 즉, 단계(S330)는 단계(S500)보다 먼저 수행될 수도 있다.In one embodiment, the termination of the application program 101 may be executed prior to the execution of the payment process. That is, step S330 may be performed before step S500.

단계(S110), 단계(S160), 단계(S500), 및 단계(S330)는 상기 어플리케이션 프로그램(101)의 관여 하에 실행될 수 있다.Steps (S110), (S160), (S500), and (S330) may be executed under the involvement of the application program 101 .

상술한 키(key)는 후술하는 도면들을 통해 설명하는 지불키, 임시 카드키, 세션키 중 어느 하나일 수 있다. The above-described key may be any one of a payment key, a temporary card key, and a session key, which will be described with reference to the drawings to be described later.

도 1b는 도 1a에 나타낸 실시예로부터 변형된 실시예에 따른 결제 방법을 나타낸 순서도이다.1B is a flowchart illustrating a payment method according to an embodiment modified from the embodiment shown in FIG. 1A .

도 1b의 단계(S110), 단계(S130), 및 단계(S330)은 도 1a의 단계(S110), 단계(S130), 및 단계(S330)와 동일하다.Steps S110 , S130 , and S330 of FIG. 1B are the same as steps S110 , S130 , and S330 of FIG. 1A .

도 1a에 비하여, 도 1b에서는 단계(S140) 및 단계(S200)이 추가된다.Compared to FIG. 1A , in FIG. 1B , steps S140 and S200 are added.

도 1b의 단계(S160-1) 및 단계(S500-1)은 도 1a의 단계(S160) 및 단계(S500)로부터 변형된 것이다.Steps S160-1 and S500-1 of FIG. 1B are modified from steps S160 and S500 of FIG. 1A.

이하, 도 1a에 따른 방법과 도 1b에 따른 방법 간의 차이점을 위주로 설명한다.Hereinafter, differences between the method according to FIG. 1A and the method according to FIG. 1B will be mainly described.

단계(S140)에서, 서버(2)는 제어정보를 생성할 수 있다. 상기 제어정보는 단계(S130)에서 생성된 키의 유효기간 및/또는 상기 키의 유효횟수를 포함할 수 있다. In step S140 , the server 2 may generate control information. The control information may include the validity period of the key generated in step S130 and/or the number of times the key is valid.

사용자기기(1) 내에서, 유효기간이 지나지 않았고 그리고 유효횟수를 초과하지 않은 상기 키는 유효한 상태의 키인 것으로 취급되고, 그렇지 않은 경우 상기 키는 삭제되거나, 삭제되지 않더라도 무효한 상태의 키인 것으로 취급될 수 있다.In the user equipment 1, the key whose validity period has not passed and the number of validity has not been exceeded is treated as a valid key, otherwise the key is deleted or treated as an invalid key even if not deleted can be

단계(S160-1)에서, 서버(2)는 사용자기기(1)에게 상기 키 및 상기 제어정보를 제공할 수 있다.In step S160-1, the server 2 may provide the key and the control information to the user device 1 .

단계(S200)에서, 어플리케이션 프로그램(101)은 언제라도 상기 제어정보를 확인하여, 상기 키에 대한 유효기간이 도과하였거나 또는 상기 키의 유효횟수가 초과한 경우에는 상기 키를 삭제하거나 무효화할 수 있다.In step S200, the application program 101 can check the control information at any time, and when the validity period for the key has elapsed or the number of validity times of the key is exceeded, the key can be deleted or invalidated. .

단계(S500-1)에서, 사용자기기(1)는 어플리케이션 프로그램(101)을 이용하여, 그리고 유효한 상태의 상기 키를 이용하여 결제단말기(3)와 결제 프로세스를 수행할 수 있다. In step S500-1, the user device 1 may perform a payment process with the payment terminal 3 using the application program 101 and the key in a valid state.

사용자기기(1) 내에 상기 키가 존재하지 않거나, 또는 상기 키가 존재하더라도 무효화 처리된 경우에는 상기 키를 이용하여 상기 결제 프로세스를 수행할 수 없다.If the key does not exist in the user device 1 or if the key is present and invalidated, the payment process cannot be performed using the key.

상술한 바와 같이 키(key)에 유효기간 및/또는 유효횟수가 설정되어 있는 경우, 상기 키는 영구적으로 사용되는 것이 아니라 임시로 사용되는 것으로 이해될 수 있다. 따라서 본 명세서에서 상기 키를 임시키라고 지칭할 수도 있다.As described above, when the validity period and/or the number of validity are set for a key, it may be understood that the key is used temporarily rather than permanently. Therefore, in this specification, the key may be referred to as a temporary key.

후술하는 제2실시예, 제3실시예, 및 제4실시예는 상술한 제1실시예를 더 구체화하여 제시한 다양한 실시예들이다. 상기 제1실시예에서 언급한 '키'는, 후술하는 제2실시예에서는 '지불키'로 구체화되고, 후술하는 제3실시예에서는 '임시 카드키'로 구체화되고, 후술하는 제4실시예에서는 '세션키'로 구체화될 수 있다.The second, third, and fourth embodiments to be described later are various embodiments presented in further detail of the above-described first embodiment. The 'key' mentioned in the first embodiment is embodied as a 'payment key' in the second embodiment to be described later, and embodied as a 'temporary card key' in the third embodiment to be described later, and a fourth embodiment to be described later can be embodied as a 'session key'.

<제2실시예><Second embodiment>

도 2a는 본 발명의 일 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.2A is a view for explaining a payment method between a user device and a payment terminal according to an embodiment of the present invention.

도 2b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 지불키를 각각 획득하는 방법을 설명한 도면이다.FIG. 2B is a view for explaining a method for a user device and a payment terminal to respectively acquire a payment key, which is a type of key for performing offline payment, according to an embodiment of the present invention.

이하 도 2a 및 도 2b를 함께 참조하여 설명한다.Hereinafter, it will be described with reference to FIGS. 2A and 2B together.

본 발명의 일 실시예에 따라 사용자기기와 결제단말기 간의 결제방법을 수행하기 위한 결제 시스템은, 사용자기기(1), 서버(2), 및 결제단말기(3)를 포함할 수 있다.A payment system for performing a payment method between a user device and a payment terminal according to an embodiment of the present invention may include a user device 1 , a server 2 , and a payment terminal 3 .

본 명세서에서 서버(2)는 물리적으로 서로 분리되어 있으며 네트워크 통신에 의해 서로 연결되는 복수 개의 서버들을 포괄적인 개념으로 지칭하는 것일 수 있다.In this specification, the server 2 is physically separated from each other and may refer to a plurality of servers connected to each other by network communication as a generic concept.

본 발명의 일 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 제공하기 위하여 서버(2)를 운용하는 자는 본 발명의 일 실시예에 따른 결제 서비스를 제공하기 위한 결제 서비스 플랫폼을 운용할 수 있다. 상기 결제 서비스는 서버(2), 사용자기기(1), 및 결제단말기(3)가 모두 참여하여 완성되는 서비스일 수 있다. 이를 위해 서버(2)를 운용하는 자 또는 이와 관련된 자는 상기 결제 서비스를 위해 필요한 서버용 프로그램 및/또는 사용자기기용 어플리케이션 프로그램 및/또는 결제단말기용 프로그램을 제작하여 배포할 수 있다. 상기 프로그램들은 각 장치의 주된 운영체제 상에서 동작하는 프로그램이거나 및/또는 각 장치에 설치된 SE에서 동작하는 프로그램일 수 있다. 상기 결제 서비스의 사용자는 사용자기기의 주된 운영체제 상에서 동작하는 사용자기기용 어플리케이션 프로그램을 이용하여 상기 결제 서비스 플랫폼에 로그인할 수 있다. 상기 사용자 및 결제단말기의 운용자는 사전에 상기 결제 서비스에 가입하였을 수 있다. 상기 사용자는 상기 결제 서비스를 이용하기 위하여 상기 어플리케이션 프로그램이 실행되는 사용자기기를 사용하고, 상기 결제단말기의 운용자는 상기 결제 서비스 플랫폼에 호환되는 결제단말기용 프로그램이 실행되는 결제단말기를 사용할 수 있다.A person who operates the server 2 to provide a payment method between a user device and a payment terminal according to an embodiment of the present invention may operate a payment service platform for providing a payment service according to an embodiment of the present invention . The payment service may be a service completed with the participation of the server 2 , the user device 1 , and the payment terminal 3 . For this purpose, a person operating the server 2 or a person related thereto may produce and distribute a program for a server and/or an application program for a user device and/or a program for a payment terminal necessary for the payment service. The programs may be programs running on a main operating system of each device and/or a program running on an SE installed in each device. The user of the payment service may log in to the payment service platform by using an application program for a user device that operates on a main operating system of the user device. The user and the operator of the payment terminal may have previously subscribed to the payment service. The user may use a user device on which the application program is executed to use the payment service, and the operator of the payment terminal may use a payment terminal on which a program for a payment terminal compatible with the payment service platform is executed.

상술한 결제 서비스 및 결제 서비스 플랫폼에 관한 설명은, 상술한 도 1a, 도 1b 및 후술하는 도 3a, 도 3b, 도 4a, 및 도 4b에 의해 설명되는 실시예에도 적용될 수 있다.The description of the payment service and the payment service platform described above may also be applied to the embodiment described by FIGS. 1A and 1B and FIGS. 3A, 3B, 4A, and 4B described later.

사용자기기(1)는 서버(2)로부터 결제에 필요한 제어정보 및 지불키를 전송받을 수 있다. 상기 서버(2)는 클라우드 서버로 지칭될 수도 있다. 상기 지불키는 본 발명에 따른 상기 키의 일종이다. The user device 1 may receive control information and a payment key required for payment from the server 2 . The server 2 may also be referred to as a cloud server. The payment key is a kind of the key according to the present invention.

이후, 본 명세서에서 언급되는 '지불키', '임시 거래키', '임시 카드키' 및 '세션키'는 모두 본 발명에 따른 키로 통칭될 수 있다. 본 명세서에서 상기 '키'는 '임시키' 또는 '임시 거래키'로 지칭될 수도 있다.Hereinafter, the 'payment key', 'temporary transaction key', 'temporary card key', and 'session key' mentioned in this specification may be collectively referred to as a key according to the present invention. In this specification, the 'key' may be referred to as a 'temporary key' or a 'temporary transaction key'.

바람직한 일 실시예에서 사용자기기(1)는 서버(2)로부터 제공받은 상기 제어정보를 결제단말기(3)에게 전송하지 않을 수 있다. In a preferred embodiment, the user device 1 may not transmit the control information provided from the server 2 to the payment terminal 3 .

그러나 다른 실시예에서 사용자기기(1)는 상기 제어정보를 결제단말기(3)에게 전송할 수도 있다. 이때, 사용자기기(1)는 상기 제어정보를 암호화한 이후, 상기 암호화된 제어정보를 결제단말기(3)에게 전송할 수 있다. However, in another embodiment, the user device 1 may transmit the control information to the payment terminal 3 . In this case, the user device 1 may transmit the encrypted control information to the payment terminal 3 after encrypting the control information.

여기서, 사용자기기(1)는 SE를 포함하고 있을 수도 있고, 포함하고 있지 않을 수도 있다. Here, the user device 1 may or may not include the SE.

본 발명의 바람직한 일 실시예에서, 사용자기기(1)에서 상기 제어정보 및 지불키를 관리하고, 결제단말기(3)와의 결제처리를 수행하는 어플리케이션 프로그램은 사용자기기(1)에 설치되어 있되 SE의 외부에 설치되어 있을 수 있다. In a preferred embodiment of the present invention, an application program that manages the control information and payment key in the user device 1 and performs payment processing with the payment terminal 3 is installed in the user device 1, but It may be installed outside.

그러나 본 발명의 변형된 실시예에서는, 상기 어플리케이션 프로그램이 SE의 내부에 설치되어 있을 수도 있다. 본 명세서에서 공개하는 본 발명에 의해 복수 개의 기술적 효과가 제공될 수 있다. 상기 어플리케이션 프로그램이 SE의 내부 또는 외부에 설치되는지를 막론하고, 본 발명에서 공개하는 다른 구성에 의하여 본 발명에 따른 한 개 이상의 기술적 효과가 제공될 수 있다는 점을 이해할 수 있다.However, in a modified embodiment of the present invention, the application program may be installed inside the SE. A plurality of technical effects may be provided by the present invention disclosed herein. Regardless of whether the application program is installed inside or outside the SE, it can be understood that one or more technical effects according to the present invention may be provided by other configurations disclosed in the present invention.

이하, SE를 사용하지 않고 결제를 진행하는 실시예를 위주로 설명한다.Hereinafter, an embodiment in which payment is performed without using SE will be mainly described.

사용자기기(1)가 SE를 포함하고 있는 경우라 하더라도, 본 발명의 일 실시예에서는 SE를 사용하지 않는다.Even if the user device 1 includes the SE, the SE is not used in an embodiment of the present invention.

서버(2)는 상기 제어정보 및 상기 지불키를 생성하여 사용자기기(1)에 전송할 수 있다. 상기 지불키 및 상기 제어정보는 주기적 또는 비주기적으로 갱신될 수 있다. 바람직한 일 실시예에서 상기 제어정보는 상기 사용자기기(1)의 요청에 의해 생성될 수도 있다. 상기 제어정보는 상기 지불키의 유효기간 및 유효횟수 등 유효정보를 포함하고 있을 수 있다. The server 2 may generate the control information and the payment key and transmit it to the user device 1 . The payment key and the control information may be updated periodically or aperiodically. In a preferred embodiment, the control information may be generated at the request of the user device 1 . The control information may include valid information such as an effective period and number of validity of the payment key.

일 실시예에서, 상기 제어정보는 인증코드를 포함할 수 있다. 이때, 상기 유효기간 및 유효횟수 등 유효정보는 상기 인증코드에 포함될 수 있다.In an embodiment, the control information may include an authentication code. In this case, valid information such as the validity period and the number of times may be included in the authentication code.

서버(2)는 마스터키를 미리 저장하고 있을 수 있다. 상기 마스터키는 비밀키일 수 있다. 그리고 상기 마스터키는 결제단말기(3)에 설치된 SAM에도 저장되어 있을 수 있다. The server 2 may store the master key in advance. The master key may be a secret key. And the master key may be stored in the SAM installed in the payment terminal (3).

본 명세서에서 마스터키와 상기 키는 서로 구분되는 개념이다. 따라서 본 명세서에서 '마스터키'와 '키(지불키/임시 카드키/세션키)'는 서로 구분되는 개념이다.In the present specification, the master key and the key are concepts that are distinct from each other. Therefore, in the present specification, a 'master key' and a 'key (payment key/temporary card key/session key)' are separate concepts.

서버(2)는, 사용자기기(1)의 요청에 의해 특정되는 카드번호와 상기 마스터키를 함께 이용하여 소정의 규칙에 따라 상기 지불키를 생성할 수 있다. The server 2 may generate the payment key according to a predetermined rule by using the master key and the card number specified by the request of the user device 1 together.

도 2b에서 지불키가 카드번호를 이용하여 마스터키로부터 유도되었지만, 본 발명의 다른 실시예에서는 상기 카드번호가 아닌 다른 정보를 이용하여 유도될 수도 있다.Although the payment key is derived from the master key using the card number in FIG. 2B, in another embodiment of the present invention, it may be derived using information other than the card number.

이때, 서버(2)는 종래 기술에 따른 결제 방법에서 사용되는 비밀키를 더 포함하고 있을 수 있다. 그러나 상기 비밀키는 본 발명의 일 실시예에 의해 설명되는 결제단말기(3)와 사용자기기(1) 간의 오프라인 결제 프로세스에서 전혀 이용되지 않을 수도 있다.At this time, the server 2 may further include a secret key used in the payment method according to the prior art. However, the secret key may not be used at all in the offline payment process between the payment terminal 3 and the user device 1 described by an embodiment of the present invention.

결제단말기(3)에는 SAM이 설치되어 있을 수 있다. 또는 결제단말기(3)는 SAM에 접근할 수 있다. 상기 SAM에는 상기 마스터키가 저장되어 있을 수 있다. A SAM may be installed in the payment terminal 3 . Alternatively, the payment terminal 3 may access the SAM. The SAM may store the master key.

일 실시예에서, 도 2b의 단계(S401)에 나타낸 것과 같이, 상기 SAM은, 상기 지불키의 상태가 상기 제어정보에 저장되어 있는 상기 유효기간 및 유효횟수 등의 유효정보에 부합하는 경우에만, 상기 지불키를 실제 오프라인 거래에 사용하도록 허락할 수 있다. 그러나 본 실시예에 따른 최적의 실시모드에서 오프라인 결제를 진행할지 여부를 결정하는 것은 사용자기기(1)에 의해서만 실행될 수 있으며, 상기 SAM은 상기 결정에 관여하지 않을 수 있다.In one embodiment, as shown in step S401 of FIG. 2B , the SAM is configured only when the status of the payment key matches valid information such as the validity period and the number of times stored in the control information, It is possible to allow the payment key to be used for an actual offline transaction. However, in the optimal implementation mode according to the present embodiment, the determination of whether to proceed with the offline payment may be executed only by the user device 1 , and the SAM may not be involved in the determination.

도 2b의 단계(S310)에서 결제단말기(3)는 사용자기기(1)로부터 카드번호를 전달받을 수 있다. 그리고 도 2b의 단계(S410)에서 상기 SAM은 상기 카드번호를 이용하여 결제단말기(3)에 저장된 마스터키로부터 상기 지불키를 유도할 수 있다.In step S310 of FIG. 2B , the payment terminal 3 may receive the card number from the user device 1 . And in step S410 of FIG. 2B , the SAM may derive the payment key from the master key stored in the payment terminal 3 using the card number.

도 2b의 단계(S401)와 단계(S410)의 실행 순서는 서로 바뀔 수도 있다.The execution order of steps S401 and S410 of FIG. 2B may be interchanged.

본 실시예에 따른 최적의 실시모드에서, 도 2b의 단계(S320)와 단계(S401)은 생략될 수도 있다. 이 경우 상기 오프라인 결제를 진행할지 여부를 결정하는 것은 사용자기기(1)에 의해서만 실행될 수 있다.In the optimal implementation mode according to the present embodiment, steps S320 and S401 of FIG. 2B may be omitted. In this case, the determination of whether to proceed with the offline payment may be executed only by the user device 1 .

본 발명의 일 실시예에서, 상기 유효정보는 난독화된 상태에서 상기 사용자기기(1)로부터 상기 결제단말기(3)에게 전달될 수 있다. 상기 난독화되어 전달된 유효정보는 상기 결제단말기(3)에 설치된 SAM에 의해 복호화될 수 있다. 상기 복호화된 유효정보는 상기 SAM에서 인식하도록 구현될 수 있다. 이렇게 하면 상기 SAM이 설치된 결제단말기의 종류나 상태에 관계없이, 상기 SAM이 상기 복호화된 유효정보를 인식할 수 있도록 할 수 있다.In an embodiment of the present invention, the valid information may be transmitted from the user device 1 to the payment terminal 3 in an obfuscated state. The obfuscated and transmitted valid information may be decrypted by the SAM installed in the payment terminal 3 . The decrypted valid information may be implemented to be recognized by the SAM. In this way, regardless of the type or state of the payment terminal in which the SAM is installed, the SAM can recognize the decrypted valid information.

그러나 변형된 실시예에서, 상기 복호화된 유효정보는 상기 결제단말기(3) 중 상기 SAM 외부에 존재하는 모듈에서도 인식되도록 할 수 있다.However, in a modified embodiment, the decrypted valid information may be recognized by a module existing outside the SAM among the payment terminal 3 .

사용자기기(1)는 상기 지불키를 서버(2)로부터 획득할 수 있고, 상기 SAM은 상기 지불키를 도 2b의 단계(S410)와 같은 프로세스에 의해 획득할 수 있으므로, 사용자기기(1)와 상기 SAM은 상기 지불키를 공유할 수 있다.Since the user device 1 can obtain the payment key from the server 2, and the SAM can obtain the payment key through the same process as step S410 of FIG. 2B, the user device 1 and The SAM may share the payment key.

도 2b의 단계(S5002)에서, 사용자기기(1)와 결제단말기(3) 간에는 지불 프로세스가 오프라인 방식으로 수행될 수 있다. 이때 상기 지불 프로세스의 수행을 위하여 사용자기기(1)와 상기 SAM 간에 공유된 상기 지불키가 사용될 수 있다. In step S500 2 of FIG. 2B , a payment process may be performed between the user device 1 and the payment terminal 3 in an offline manner. In this case, the payment key shared between the user device 1 and the SAM may be used to perform the payment process.

상술한 바와 같이, 서버(2) 및 결제단말기(3)에는( 또는 상기 SAM에는) 각각 종래기술에서 사용하던 영구적인 키가 저장되어 있을 수 있다. 그러나 본 발명에 따르면, 사용자기기(1)는 상기 종래기술에서 사용되던 영구적인 키를 사용하지 않으며, 상기 지불키를 대신 사용할 수 있다. 상기 제어정보는 상술한 바와 같이 유효기간 및/또는 유효횟수에 대한 정보를 포함하고 있으며, 상기 지불키의 유효성은 상기 제어정보에 종속된다. 상기 지불키의 이러한 성질을 고려하여, 본 명세서에서는, 상기 지불키를 사용자기기(1)와 결제단말기(3) 간의 오프라인 결제 프로세스를 수행하기 위한 '키' 또는 '임시키'라고 지칭할 수도 있다.As described above, the server 2 and the payment terminal 3 (or the SAM) may each store a permanent key used in the prior art. However, according to the present invention, the user device 1 does not use the permanent key used in the prior art, and can use the payment key instead. The control information includes information on the validity period and/or the number of validity as described above, and the validity of the payment key depends on the control information. Considering this property of the payment key, in this specification, the payment key may be referred to as a 'key' or 'temporary key' for performing an offline payment process between the user device 1 and the payment terminal 3 . .

이하, 도 2b를 참조하여 설명한다.Hereinafter, it will be described with reference to FIG. 2B.

단계(S210)에서, 사용자기기(1)가 서버(2)에게 제어정보 및 지불키를 요청할 수 있다. 구체적으로는, 사용자기기(1)에 설치된 어플리케이션 프로그램이 서버(2)에게 제어정보 및 지불키를 요청할 수 있다. 이때, 사용자기기(1)와 서버(2) 간의 원격 네트워크 통신이 실행될 수 있는 환경이어야 한다. 이때 사용자기기(1)의 장치식별자, 및 어플리케이션 프로그램을 통하여 상기 결제 서비스 플랫폼에 로그인 한 사용자의 로그인 정보 중 하나 이상의 정보가 함께 전송될 수 있다. 상기 로그인 정보에는 로그인한 사용자의 사용자 아이디, 및 상기 사용자 아이디에 연계된 카드번호가 포함되어 있을 수 있다. 이때, 상기 사용자는 상기 결제 서비스의 이용을 위하여 복수 개의 카드번호를 상기 결제 서비스 플랫폼에 등록하였을 수 있다. 그리고 상기 제어정보 및 지불키를 요청할 때에 복수 개의 카드번호 중 어느 카드번호를 위한 것인지를 상기 어플리케이션 프로그램 및 상기 결제 서비스 플랫폼이 제공하는 사용자 인터페이스를 이용하여 특정하였을 수 있다. 상기 특정된 카드번호는 단계(S210)에서 서버(2)에게 전송될 수 있다.In step S210 , the user device 1 may request control information and a payment key from the server 2 . Specifically, an application program installed in the user device 1 may request control information and a payment key from the server 2 . At this time, it should be an environment in which remote network communication between the user device 1 and the server 2 can be executed. At this time, one or more of the device identifier of the user device 1 and the login information of the user who has logged into the payment service platform through the application program may be transmitted together. The login information may include a user ID of a logged-in user and a card number associated with the user ID. In this case, the user may have registered a plurality of card numbers in the payment service platform in order to use the payment service. And when requesting the control information and the payment key, which card number among a plurality of card numbers may be specified using the user interface provided by the application program and the payment service platform. The specified card number may be transmitted to the server 2 in step S210.

상기 카드번호는 예컨대 선불카드의 카드번호일 수 있다.The card number may be, for example, a card number of a prepaid card.

단계(S220)에서, 서버(2)는 사용자기기(1)의 장치식별자를 이용하여, 제어정보 및 지불키를 생성하기 위한 카드번호를 특정할 수 있다. 이를 위하여 서버(2)는 장치식별자와 카드번호와의 매칭 관계를 나타내는 테이블을 포함하는 저장장치에 접근하도록 되어 있을 수 있다. 상기 테이블에는 상기 장치식별자 필드와 상기 카드번호 필드가 포함되어 있을 수 있다. In step S220 , the server 2 may specify a card number for generating control information and a payment key by using the device identifier of the user device 1 . To this end, the server 2 may be configured to access a storage device including a table indicating a matching relationship between the device identifier and the card number. The table may include the device identifier field and the card number field.

또는 단계(S220)에서, 서버(2)는 상기 전송된 사용자 아이디를 이용하여, 제어정보 및 지불키를 생성하기 위한 카드번호를 특정할 수 있다. 이를 위하여 서버(2)는 사용자 아이디와 카드번호와의 매칭 관계를 나타내는 테이블을 포함하는 저장장치에 접근하도록 되어 있을 수 있다. 상기 테이블에는 상기 사용자 아이디 필드와 상기 카드번호 필드가 포함되어 있을 수 있다. Alternatively, in step S220, the server 2 may use the transmitted user ID to specify a card number for generating control information and a payment key. To this end, the server 2 may be configured to access a storage device including a table indicating a matching relationship between a user ID and a card number. The table may include the user ID field and the card number field.

또는 단계(S220)에서, 서버(2)는 상기 전송된 카드번호를 그대로 이용하여, 제어정보 및 지불키를 생성하기 위한 카드번호를 특정할 수 있다.Alternatively, in step S220, the server 2 may specify a card number for generating control information and a payment key by using the transmitted card number as it is.

단계(S230)에서, 서버(2)가 상기 특정된 카드번호를 이용하여 상기 마스터키로부터 지불키를 유도할 수 있다. In step S230, the server 2 may derive the payment key from the master key using the specified card number.

예컨대 제1카드번호를 이용하여 마스터키로부터 유도한 제1지불키가 있다고 가정하고, 제1카드번호와는 다른 제2카드번호를 이용하여 상기 마스터키로부터 유도한 제2지불키가 있다고 가정하면, 상기 제1지불키와 상기 제2지불키는 서로 다를 수 있다. For example, if it is assumed that there is a first payment key derived from the master key using the first card number, and there is a second payment key derived from the master key using a second card number different from the first card number, , the first payment key and the second payment key may be different from each other.

단계(S240)에서, 서버(2)는 제어정보를 생성할 수 있다. 상기 제어정보는 지불키의 유효기간 및/또는 유효횟수를 포함할 수 있다. 유효기간 및/또는 유효횟수는 미리 결정된 규칙에 의해 결정될 수 있다. In step S240, the server 2 may generate control information. The control information may include the validity period and/or the number of validity of the payment key. The validity period and/or the number of validity may be determined by a predetermined rule.

예컨대 특정된 카드번호에 의해 지정되는 선불카드에는 등급이 할당되어 있을 수 있다. 상기 등급은, 제1등급, 제2등급, 일반등급, 및 청소년등급 등 다양한 방식으로 정의될 수 있다. 만일, 제1카드번호에 의해 지정되는 선불카드가 제1등급의 카드인 경우에는 상기 유효기간 및/또는 유효횟수가 제1유효기간 및/또는 제1유효기간을 가질 수 있다. 그리고 만일, 제2카드번호에 의해 지정되는 선불카드가 제2등급의 카드인 경우에는 상기 유효기간 및/또는 유효횟수가 제2유효기간 및/또는 제2유효기간을 가질 수 있다. For example, a grade may be assigned to a prepaid card designated by a specified card number. The grade may be defined in various ways, such as a first grade, a second grade, a general grade, and a youth grade. If the prepaid card designated by the first card number is a first-class card, the validity period and/or number of validity may have a first validity period and/or a first validity period. And, if the prepaid card designated by the second card number is a card of the second grade, the validity period and/or the number of times of validity may have a second validity period and/or a second validity period.

단계(S2602)에서 서버(2)는 사용자기기(1)에게 제어정보 및 지불키를 전송할 수 있다.In step S260 2 , the server 2 may transmit the control information and the payment key to the user device 1 .

바람직한 일 실시예에 따르면, 단계(S301)에서, 상기 어플리케이션 프로그램은 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진되었는지 여부를 판단할 수 있다. 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 상기 어플리케이션 프로그램은 상기 제어정보와 연관된 상기 지불키를 이용한 오프라인 결제를 진행하지 않도록 제어할 수 있다. 일 실시예에서 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 후술하는 단계(S310) 및 그 후속 단계들이 실행되지 않을 수 있다.According to a preferred embodiment, in step S301, the application program may determine whether the validity period included in the control information has elapsed or whether the number of validity times has been exhausted. If it is determined whether the validity period included in the control information has elapsed or the number of validity times has been exhausted, the application program may control not to proceed with offline payment using the payment key associated with the control information. In an embodiment, if it is determined whether the validity period included in the control information has elapsed or the number of validity times has been exhausted, step S310 and subsequent steps described below may not be executed.

단계(S310)에서, 사용자기기(1)는 결제단말기(3)에게 특정 카드번호를 전달할 수 있다. 단계(S310)는 사용자기기(1)의 어플리케이션 프로그램이 수행할 수 있다. 상기 특정 카드번호의 전달은 근거리 유선/무선 통신을 통해 전달될 수 있다. 상기 특정 카드번호의 전달은, 사용자기기(1)와 결제단말기(3) 간에 상술한 오프라인 결제를 수행하기 위한 사용자 동작을 수행할 때에 이루어질 수 있다. 예컨대, 상기 특정 카드번호의 전달은 사용자기기(1)를 결제단말기(3)의 근처에 가까이 가져가거나 또는 접촉시킬 때에 이루어질 수 있다. In step S310 , the user device 1 may transmit a specific card number to the payment terminal 3 . Step S310 may be performed by the application program of the user device 1 . The specific card number may be transmitted through short-distance wired/wireless communication. The transfer of the specific card number may be performed when performing a user operation for performing the above-described offline payment between the user device 1 and the payment terminal 3 . For example, the transfer of the specific card number may be performed when the user device 1 is brought close to or brought into contact with the payment terminal 3 .

사용자기기(1)가 결제단말기(3)에게 전달하는 상기 특정 카드번호는 단계(S230)에서 사용된 카드번호와 동일한 것일 수 있다.The specific card number that the user device 1 transmits to the payment terminal 3 may be the same as the card number used in step S230.

일 실시예에서, 단계(S310)는, 상술한 단계(S301)을 만족하지 않으면 실행되지 않을 수 있다. 단계(S310)이 실행되지 않으면 그 후속 단계도 실행되지 않고, 결국 결제가 이루어지지 않을 수 있다. In one embodiment, step S310 may not be executed if the above-described step S301 is not satisfied. If step S310 is not executed, the subsequent steps may not be executed, and payment may not be made in the end.

단계(S320)에서, 사용자기기(1)는 서버(2)로부터 전달받은 상기 제어정보를 결제단말기(3)에게 전달할 수 있다. In step S320 , the user device 1 may transmit the control information received from the server 2 to the payment terminal 3 .

단계(S320)가 실행되는 경우, 단계(S310)와 단계(S320)는 서로 통합될 수 있으며, 따라서 상기 제어정보와 상기 특정 카드번호는 동시에 결제단말기(3)에게 전달될 수도 있다.When step S320 is executed, steps S310 and S320 may be integrated with each other, and thus the control information and the specific card number may be simultaneously transmitted to the payment terminal 3 .

일 실시예에서, 단계(S401)에서 결제단말기(3)는 제어정보에 포함된 상기 유효기간 또는 상기 유효횟수를 기초로 지불키를 이용한 오프라인 결제의 진행을 허용할지 여부를 결정할 수 있다. In one embodiment, in step S401, the payment terminal 3 may determine whether to allow the offline payment using the payment key based on the validity period or the number of validity included in the control information.

본 실시예에 따른 최적의 실시모드에서, 도 2b의 단계(S320)와 단계(S401)은 생략될 수도 있다. 이 경우 오프라인 결제를 진행할지 여부를 결정하는 것은 사용자기기(1)에 의해서만 실행될 수 있다.In the optimal implementation mode according to the present embodiment, steps S320 and S401 of FIG. 2B may be omitted. In this case, the determination of whether to proceed with the offline payment may be executed only by the user device 1 .

단계(S410)에서, 결제단말기(3)는 사용자기기(1)로부터 전달받은 상기 특정 카드번호를 이용하여 마스터키로부터 지불키를 유도할 수 있다. 이때, 결제단말기(3)에 저장된 상기 마스터키는 서버(2)에 저장된 상기 마스터키와 동일한 것일 수 있다. 따라서 결제단말기(3)에서 유도한 상기 지불키는 서버(2)에서 유도한 상기 지불키와 동일한 것일 수 있다.In step S410 , the payment terminal 3 may derive the payment key from the master key using the specific card number received from the user device 1 . In this case, the master key stored in the payment terminal 3 may be the same as the master key stored in the server 2 . Therefore, the payment key derived from the payment terminal 3 may be the same as the payment key derived from the server 2 .

이제, 결제단말기(3)와 사용자기기(1)는 각각 지불키를 확보하게 되었으며, 이 두 개의 지불키들을 서로 동일한 것이다. 따라서 결제단말기(3)와 사용자기기(1)는 상기 지불키를 이용하여 오프라인 결제를 진행할 수 있다. 상기 오프라인 결제를 위한 절차는 예컨대, 종래의 오프라인 결제절차와 동일할 수 있다. Now, the payment terminal 3 and the user device 1 have each secured a payment key, and these two payment keys are identical to each other. Accordingly, the payment terminal 3 and the user device 1 may perform offline payment using the payment key. The procedure for the offline payment may be, for example, the same as a conventional offline payment procedure.

종래의 오프라인 결제절차는, 예컨대 사용자기기(1)에 설치된 SE에 영구적으로 저장되어 있던 비밀키와 결제단말기(3)에 설치된 SAM에 영구적으로 저장되어 있던 비밀키를 이용하여 수행되던 절차일 수 있다. 상기 종래의 오프라인 결제는, 사용자기기(1)와 결제단말기(3)가 서로 동일한 비밀키를 각자 가지고 이용하여, 유무선의 상호 통신을 통해 결제를 진행하는 임의의 결제방법일 수 있다.The conventional offline payment procedure may be, for example, a procedure performed using a secret key permanently stored in the SE installed in the user device 1 and a secret key permanently stored in the SAM installed in the payment terminal 3 . . The conventional offline payment may be any payment method in which the user device 1 and the payment terminal 3 each have and use the same secret key to perform payment through wired/wireless mutual communication.

단계(S5002)에서, 결제단말기(3)와 사용자기기(1)가 각각 확보한 서로 동일한 지불키를 이용하여 오프라인 결제를 수행할 수 있다. In step S500 2 , offline payment may be performed using the same payment key secured by the payment terminal 3 and the user device 1 , respectively.

단계(S5002)에서, 사용자기기(1)와 결제단말기(3)는 각각 보유한 지불키로부터 세션키를 유도하고, 각자 유도한 세션키를 이용하여 사인(sign)들을 생성하여 상호 전송하고 검증함으로써 오프라인 결제를 수행할 수 있다. 세션키를 이용하여 사인을 생성하고 상호 검증하는 방식은 종래에 통용되는 기술을 그대로 또는 변형하여 이용할 수 있다.In step S500 2 , the user device 1 and the payment terminal 3 derive a session key from the payment key they each have, and generate, transmit and verify signs using the session key derived respectively. You can make offline payments. A method of generating a signature using a session key and mutually verifying it can be used as it is or by modifying the conventional technology.

예컨대 사용자기기(1)는 상기 세션키를 이용하여 제1서명을 생성한 후, 상기 제1서명을 결제단말기(3)에게 전송할 수 있다. 그 다음 결제단말기(3)는 상기 세션키를 이용하여 제1-1서명을 생성한 후, 상기 제1서명과 상기 제1-1서명일 동일한지 검증할 수 있다. 상기 제1서명과 상기 제1-1서명일 동일한 것으로 검증되었다면, 결제단말기(3)는 상기 세션키를 이용하여 제2서명을 생성한 후, 상기 제2서명을 사용자기기(1)에게 전송할 수 있다. 그 다음 사용자기기(1)는 상기 세션키를 이용하여 제2-1서명을 생성한 후, 상기 제2서명과 상기 제2-1서명이 동일한지 검증할 수 있다. 그 다음, 상기 제2서명과 상기 제2-1서명이 동일한 것으로 검증되었다면, 사용자기기(1)는 상기 세션키를 이용하여 제3서명을 생성한 후, 상기 제3서명을 결제단말기(3)에게 전송할 수 있다. 그 다음 결제단말기(3)는 상기 세션키를 이용하여 제3-1서명을 생성한 후, 상기 제3서명과 상기 제3-1서명일 동일한지 검증할 수 있다. 이러한 일련의 서명정보 검증과정이 완료되면 거래프로세스가 종료될 수 있다.For example, the user device 1 may generate a first signature using the session key and then transmit the first signature to the payment terminal 3 . Then, the payment terminal 3 may generate the 1-1 signature by using the session key, and then verify whether the first signature and the 1-1 signature are the same. If it is verified that the first signature and the 1-1 signature date are the same, the payment terminal 3 may generate a second signature using the session key and then transmit the second signature to the user device 1 . . Then, after generating the 2-1 signature using the session key, the user device 1 may verify whether the second signature and the 2-1 signature are the same. Then, if it is verified that the second signature and the 2-1 signature are identical, the user device 1 generates a third signature using the session key, and then sends the third signature to the payment terminal 3 . can be sent to Thereafter, the payment terminal 3 may generate a 3-1 signature using the session key, and then verify whether the third signature and the 3-1 signature date are the same. When this series of signature information verification process is completed, the transaction process may be terminated.

단계(S320)이 실행되는 실시예에서, 결제단말기(3)는, 상기 제어정보에 포함되어 있는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 결제 프로세스를 진행할지 여부를 결정하도록 되어 있을 수 있다. 예컨대 상기 제어정보에 포함되어 있는 상기 유효기간이 도과한 시점이라고 판단되거나 또는 상기 제어정보에 포함되어 있는 상기 유효횟수가 초과된 상황이라고 판단되었다면, 결제단말기(3)는 상기 결제 프로세스를 허용하지 않을 수 있다.In an embodiment in which step S320 is executed, the payment terminal 3 may be configured to determine whether to proceed with the payment process based on the validity period or the number of validity included in the control information. For example, if it is determined that the validity period included in the control information has expired or it is determined that the number of validity times included in the control information is exceeded, the payment terminal 3 will not allow the payment process. can

단계(S3302)에서, 사용자기기(1)는 일정 조건 만족 시 상기 지불키를 삭제할 수 있다. In step S330 2 , the user device 1 may delete the payment key when a predetermined condition is satisfied.

이때 예컨대 상기 조건은 상기 사용자기기(1)에서 수행되는 어플리케이션 프로그램이 종료되는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 종료되는 절차가 실행되는 경우가 발생하면, 상기 종료 절차 도중에 상기 지불키가 삭제될 수 있다. In this case, for example, the condition may be that the application program executed in the user device 1 is terminated. That is, when a procedure for terminating the application program is executed, the payment key may be deleted during the terminating procedure.

이때, 상기 어플리케이션 프로그램이 실행되기 시작하여 종료되는 사이의 기간인 실행기간 동안, 상기 지불키의 사용을 위한 상기 유효횟수가 초과하거나 또는 상기 유효기간이 도과한 것이 확인되었다면, 상기 어플리케이션 프로그램의 종료 절차가 실행되기 이전이라도 상기 지불키가 삭제될 수 있다. At this time, during the execution period, which is a period between the start and end of the execution of the application program, if it is confirmed that the valid number of times for use of the payment key is exceeded or it is confirmed that the valid period has elapsed, the termination procedure of the application program The payment key may be deleted even before is executed.

도 2b에서 단계(S3302)는 단계(S5002) 이후에 수행되는 것으로 예시되어 있지만, 단계(S3302)는 상기 어플리케이션 프로스램이 실행되는 동안에는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있는 것일 수 있으며, 단계(S5002)는 사용자기기(1)의 사용자의 특정 행위가 발생할 때에만 실행되는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 실행되고 있는 도중이라면 단계(S3302)는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있을 수 있다. 그 결과 상기 지불키의 유효사용횟수의 초과, 상기 지불키의 유효사용기간의 도과, 및 상기 어플리케이션 프로그램의 종료 이벤트들 중 어느 하나라도 만족하게 되면 상기 사용자기기(1)에 저장되어 있던 상기 지불키는 삭제되거나 무효화될 수 있다.In FIG. 2b , step S330 2 is exemplified as being performed after step S500 2 , but step S330 2 is continuously executed in the user device 1 while the application program is being executed. There may be, and step S500 2 may be executed only when a specific action of the user of the user device 1 occurs. That is, if the application program is being executed, step S330 2 may be continuously executed in the user device 1 at all times. As a result, if any one of the event of exceeding the number of valid uses of the payment key, the expiration of the valid usage period of the payment key, and the termination of the application program is satisfied, the payment key stored in the user device 1 may be deleted or invalidated.

그러나 상기 어플리케이션 프로그램의 실행기간 동안, 상기 지불키를 이용하여 상기 오프라인 결제가 실행되었다고 하더라도, 상기 오프라인 결제의 성공 이벤트, 오류 이벤트, 또는 실패 이벤트가 발생했다는 이유만으로 상기 지불키가 삭제되지 않는다. 즉, 상기 지불키가 문자 그대로 1회성의 키(key)인 것은 아니다.However, during the execution period of the application program, even if the offline payment is executed using the payment key, the payment key is not deleted just because a success event, an error event, or a failure event of the offline payment occurs. That is, the payment key is not literally a one-time key.

이와 같이 함으로써, 상기 지불키는 사용자기기(1) 내에서 상술한 조건을 만족하는 경우 최대 N회 사용될 수 있다. 여기서 N은 제어정보에 포함된 상기 유효횟수로서 1 이상의 자연수일 수 있다. 이와 같이 상기 어플리케이션 프로그램의 종료, 상기 유효횟수만큼의 사용달성, 또는 상기 유효기간의 도과에 해당하는 이벤트가 발생하지 않는다면, 결제를 위한 상기 지불키를 서버(2)가 사용자기기(1)에게 다시 배포할 필요가 없다. In this way, the payment key can be used up to N times when the above-mentioned conditions are satisfied in the user device 1 . Here, N may be a natural number of 1 or more as the valid number of times included in the control information. In this way, if an event corresponding to the end of the application program, achievement of use for the number of times of validity, or expiration of the validity period does not occur, the server 2 returns the payment key for payment to the user device 1 No need to distribute

상술한 단계(S210), 단계(S2602), 단계(S301), 단계(S310), 단계(S320), 단계(5002), 및 단계(S3302)는 사용자기기(1)에서 실행되는 상기 어플리케이션 프로그램에 의해 실행될 수 있다. 단계(S210), 단계(S2602), 단계(S301), 단계(S310), 단계(S320), 단계(5002), 및 단계(S3302)는 상기 어플리케이션 프로그램의 실행 시작 시점부터 종료 완료 시점 이전에 실행되는 것일 수 있으며, 상기 어플리케이션 프로그램이 종료된 상태에서는 실행되지 않는 것일 수 있다.Step S210, step S260 2 , step S301 , step S310 , step S320 , step 500 2 , and step S330 2 described above are executed in the user device 1 . It can be executed by an application program. Step (S210), step (S260 2 ), step (S301), step (S310), step (S320), step (500 2 ), and step (S330 2 ) are the execution start point of the application program from the start point to the end completion point It may be previously executed, and may not be executed when the application program is terminated.

<제3실시예><Third embodiment>

도 3a는 본 발명의 다른 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.3A is a view for explaining a payment method between a user device and a payment terminal according to another embodiment of the present invention.

도 3a에 나타낸 시스템은 도 2a에 나타낸 시스템과 그 기본 구성이 동일하다. 이하, 도 3a에 따른 실시예와 도 2a에 나타낸 실시예 간의 차이점을 위주로 설명한다.The system shown in FIG. 3A has the same basic configuration as the system shown in FIG. 2A. Hereinafter, differences between the embodiment according to FIG. 3A and the embodiment shown in FIG. 2A will be mainly described.

도 2b에서는 '지불키'가 서버로부터 사용자기기에게 전송되지만, 도 3a에에서는 '임시 카드키'가 서버로부터 사용자기기에게 전송된다. 상기 '임시 카드키'는 본 발명에 따른 상기 '키'의 일종이다. In FIG. 2B , the 'payment key' is transmitted from the server to the user device, but in FIG. 3A , the 'temporary card key' is transmitted from the server to the user device. The 'temporary card key' is a kind of the 'key' according to the present invention.

바람직한 일 실시예에서 사용자기기(1)는 서버(2)로부터 제공받은 제어정보를 결제단말기(3)에게 전송하지 않을 수 있다. In a preferred embodiment, the user device 1 may not transmit the control information provided from the server 2 to the payment terminal 3 .

그러나 다른 실시예에서 상기 제어정보는 결제단말기(3)에게 전송될 수도 있다. 이때, 사용자기기(1)는 상기 제어정보를 암호화한 이후, 상기 암호화된 제어정보를 결제단말기(3)에게 전송할 수 있다. However, in another embodiment, the control information may be transmitted to the payment terminal (3). In this case, the user device 1 may transmit the encrypted control information to the payment terminal 3 after encrypting the control information.

서버(2)는 제어정보, 임시 카드키, 임시 카드번호, 및 마스터키에 관한 정보를 생성하여 사용자기기(1)에 전송할 수 있다. 상기 제어정보는 주기적 또는 비주기적으로 갱신될 수 있다. 바람직한 일 실시예에서 상기 제어정보는 상기 사용자기기(1)의 요청에 의해 생성될 수도 있다. 상기 제어정보는 상기 임시 카드키의 사용에 관한 유효기간 및 유효횟수 등 유효정보를 포함하고 있을 수 있다. The server 2 may generate information about the control information, the temporary card key, the temporary card number, and the master key and transmit it to the user device 1 . The control information may be updated periodically or aperiodically. In a preferred embodiment, the control information may be generated at the request of the user device 1 . The control information may include valid information such as an effective period and the number of times of use of the temporary card key.

일 실시예에서, 상기 제어정보는 인증코드를 포함할 수 있다. 이때, 상기 유효기간 및 유효횟수 등 유효정보는 상기 인증코드에 포함될 수 있다.In an embodiment, the control information may include an authentication code. In this case, valid information such as the validity period and the number of times may be included in the authentication code.

서버(2)는 마스터키를 미리 저장하고 있을 수 있다. 상기 마스터키는 비밀키일 수 있다. 그리고 상기 마스터키는 결제단말기(3)에 설치된 SAM에도 저장되어 있을 수 있다. The server 2 may store the master key in advance. The master key may be a secret key. And the master key may be stored in the SAM installed in the payment terminal (3).

서버(2)는, 사용자기기(1)의 요청에 의해 특정되는 사용자 카드번호를 이용하여 임시 카드번호를 생성할 수 있다. 그리고 상기 임시 카드번호를 이용하여 상기 마스터키로부터 상기 임시 카드키를 유도할 수 있다.The server 2 may generate a temporary card number using the user card number specified by the request of the user device 1 . And the temporary card key can be derived from the master key by using the temporary card number.

결제단말기(3)에는 SAM이 설치되어 있을 수 있다. 또는 결제단말기(3)는 SAM에 접근할 수 있다. 상기 SAM에는 상기 마스터키가 저장되어 있을 수 있다. A SAM may be installed in the payment terminal 3 . Alternatively, the payment terminal 3 may access the SAM. The SAM may store the master key.

일 실시예에서, 상기 SAM은, 상기 임시 카드키의 현재 상태가 상기 제어정보에 저장되어 있는 상기 유효기간 및 유효횟수 등 유효정보에 부합하는 경우에만, 상기 임시 거래키를 실제 오프라인 거래에 사용하도록 허락할 수 있다.In one embodiment, the SAM is configured to use the temporary transaction key for actual offline transaction only when the current state of the temporary card key matches valid information such as the validity period and the number of validity stored in the control information. can allow

결제단말기(3)는 사용자기기(1)로부터 상기 임시 카드번호를 전달받을 수 있다. 그리고 상기 SAM은 상기 임시 카드번호를 이용하여 결제단말기(3)에 저장된 마스터키로부터 상기 임시 카드키를 유도할 수 있다.The payment terminal 3 may receive the temporary card number from the user device 1 . The SAM may derive the temporary card key from the master key stored in the payment terminal 3 using the temporary card number.

사용자기기(1)는 상기 임시 카드키를 서버(2)로부터 획득할 수 있고, 상기 SAM은 상기 임시 카드키를 상술한 프로세스에 의해 획득할 수 있으므로, 사용자기기(1)와 상기 SAM은 상기 임시 카드키를 공유할 수 있다.Since the user device 1 can obtain the temporary card key from the server 2, and the SAM can obtain the temporary card key by the above-described process, the user device 1 and the SAM can obtain the temporary card key. You can share your card key.

사용자기기(1)와 결제단말기(3) 간에는 지불 프로세스가 오프라인 방식으로 수행될 수 있다. 이때 사용자기기(1)에서는, 상기 지불 프로세스의 수행을 위하여, 종래기술에서 사용하던 영구적인 키를 사용하는 것이 아니라, 사용자기기(1)와 상기 SAM 간에 공유된 상기 임시 카드키를 사용할 수 있다. 즉, 사용자기기(1)에서는, 상기 임시 카드키가 종래기술에서 사용하던 영구적인 키의 기능을 대신 수행할 수 있다.A payment process may be performed in an offline manner between the user device 1 and the payment terminal 3 . In this case, the user device 1 may use the temporary card key shared between the user device 1 and the SAM, instead of using the permanent key used in the prior art, to perform the payment process. That is, in the user device 1, the temporary card key may perform the function of a permanent key used in the prior art instead.

상술한 바와 같이, 서버(2) 및 결제단말기(3)에는( 또는 상기 SAM에는) 각각 종래기술에서 사용하던 영구적인 키가 저장되어 있을 수 있다. 그러나 본 발명에 따르면, 사용자기기(1)는 종래기술에서 사용되던 상기 영구적인 키를 사용하지 않으며, 상기 임시 카드키를 대신 사용할 수 있다. 상기 제어정보는 상술한 바와 같이 유효기간 및/또는 유효횟수에 대한 정보를 포함하고 있으며, 상기 임시 카드키의 유효성은 상기 제어정보에 종속된다. 상기 임시 카드키의 이러한 성질을 고려하여, 본 명세서에서는, 상기 임시 카드키를 사용자기기(1)와 결제단말기(3) 간의 오프라인 결제 프로세스를 수행하기 위한 '키' 또는 '임시키'라고 지칭할 수도 있다.As described above, the server 2 and the payment terminal 3 (or the SAM) may each store a permanent key used in the prior art. However, according to the present invention, the user device 1 does not use the permanent key used in the prior art, and can use the temporary card key instead. The control information includes information on the validity period and/or the number of validity as described above, and the validity of the temporary card key depends on the control information. In consideration of this property of the temporary card key, in this specification, the temporary card key will be referred to as a 'key' or 'temporary key' for performing an offline payment process between the user device 1 and the payment terminal 3 . may be

도 3b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 임시 카드키를 각각 획득하는 방법을 설명한 도면이다.3B is a diagram for explaining a method for a user device and a payment terminal to obtain a temporary card key, which is a type of key for performing offline payment, respectively, according to an embodiment of the present invention.

단계(S1210)에서, 사용자기기(1)는 임시 카드번호 및 임시 카드키를 서버(2)에게 요청할 수 있다. 이때 서버(2)는 복수 개의 서버들로 구성된 것일 수 있다. In step S1210 , the user device 1 may request a temporary card number and a temporary card key from the server 2 . In this case, the server 2 may be composed of a plurality of servers.

상기 임시 카드번호는, 사용자기기(1)가 단계(S1210)에서 서버(1)에게 송신하는 메시지를 기초로 특정이 가능한 카드번호(예컨대, 플레이트 형태의 실물카드의 카드번호)인 사용자 카드번호를 기반으로 서버(2)가 생성하는 것일 수 있다.The temporary card number is a user card number that can be specified based on a message transmitted by the user device 1 to the server 1 in step S1210 (eg, a card number of a real card in the form of a plate). Based on the server 2 may be generated.

예컨대 사용자기기(1)가 단계(S1210)에서 서버(1)에게 송신하는 메시지에는, 사용자기기(1)의 장치 식별자, 사용자기기(1)에 설치된 어플리케이션 프로그램을 통해 로그인한 사용자의 식별자, 또는 상기 어플리케이션 프로그램을 통해 사용자가 지정한 지정카드정보가 포함되어 있을 수 있다. 상기 지정카드정보는 예컨대 상기 사용자가 사용 중인 제1카드금융사가 발생한 제1카드 및 상기 사용자가 사용 중인 제2카드금융사가 발생한 제2카드 중 상기 사용자에 의해 선택된 것일 수 있다.For example, in the message transmitted by the user device 1 to the server 1 in step S1210, the device identifier of the user device 1, the identifier of the user logged in through the application program installed in the user device 1, or the above Designated card information specified by the user through the application program may be included. The designated card information may be, for example, one selected by the user from among a first card issued by a first card finance company used by the user and a second card issued by a second card finance company used by the user.

서버(2)가 접근할 수 있는 기록매체에는, 상기 장치 식별자, 상기 사용자의 식별자, 또는 상기 카드정보에 매칭된 상기 사용자 카드번호가 미리 저장되어 있을 수 있다. 이러한 매칭관계는 상기 사용자기기(1)의 어플리케이션 프로그램의 사용자가 사전에 등록해 놓은 정보에 의해 생성된 것일 수 있다. 따라서 서버(2)는 단계(S1210)에서 획득한 상기 장치 식별자, 상기 사용자의 식별자, 또는 상기 카드정보를 이용하여 상기 사용자 카드번호를 특정할 수 있다.In a recording medium accessible by the server 2 , the device identifier, the user identifier, or the user card number matched with the card information may be stored in advance. Such a matching relationship may be generated by information previously registered by the user of the application program of the user device 1 . Accordingly, the server 2 may specify the user card number using the device identifier, the user identifier, or the card information obtained in step S1210 .

단계(S1220)에서, 서버(2)는 상기 특정된 사용자 카드번호를 이용하여 임시 카드번호를 생성할 수 있다.In step S1220, the server 2 may generate a temporary card number using the specified user card number.

단계(S1230)에서, 서버(2)는 상기 생성된 임시 카드번호를 이용하여 서버(2)에 저장되어 있는 마스터키로부터 임시 카드키를 유도할 수 있다.In step S1230, the server 2 may derive a temporary card key from the master key stored in the server 2 using the generated temporary card number.

단계(S1240)에서, 서버(2)는 제어정보를 생성할 수 있다. 상기 제어정보는 상기 임시 카드키가 유효하게 사용될 수 있는 유효 횟수, 또는 상기 임시 카드키가 유효하게 사용될 수 있는 유효 기간에 관한 정보인 유효정보를 포함할 수 있다.In step S1240, the server 2 may generate control information. The control information may include validity information, which is information about the number of times the temporary card key can be effectively used, or an expiration period during which the temporary card key can be used effectively.

단계(S1260)에서, 서버(2)는 상기 임시 카드키, 상기 임시 카드번호, 상기 제어정보, 및 상기 임시 카드키 생성에 사용한 상기 마스터키에 관한 정보를 사용자기기(1)에게 전송할 수 있다.In step S1260, the server 2 may transmit the temporary card key, the temporary card number, the control information, and information on the master key used to generate the temporary card key to the user device 1 .

바람직한 일 실시예에 따르면, 단계(S1301)에서, 상기 어플리케이션 프로그램은 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진되었는지 여부를 판단할 수 있다. 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 상기 어플리케이션 프로그램은 상기 임시 카드키를 이용한 오프라인 결제를 진행하지 않도록 제어할 수 있다. 일 실시예에서 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 후술하는 단계(S1310) 및 그 후속 단계들이 실행되지 않을 수 있다.According to a preferred embodiment, in step S1301, the application program may determine whether the validity period included in the control information has elapsed or whether the number of validity times has been exhausted. If it is determined whether the validity period included in the control information has elapsed or the number of validity times has been exhausted, the application program may control not to proceed with the offline payment using the temporary card key. In an embodiment, if it is determined whether the validity period included in the control information has elapsed or the number of validity times has been exhausted, step S1310 and subsequent steps described below may not be executed.

단계(S1310)에서, 사용자기기(1)는 상기 임시 카드번호, 상기 마스터키에 관한 정보를 결제단말기(3)에게 전송할 수 있다. 이때, 상기 임시 카드키 자체는 결제단말기(3)에게 전송되지 않을 수 있다.In step S1310 , the user device 1 may transmit the temporary card number and information on the master key to the payment terminal 3 . In this case, the temporary card key itself may not be transmitted to the payment terminal 3 .

단계(S1320)에서, 사용자기기(1)는 상기 제어정보를 결제단말기(3)에게 전송할 수 있다. In step S1320 , the user device 1 may transmit the control information to the payment terminal 3 .

일 실시예에 따르면, 단계(S1401)에서, 결제단말기(3)는 상기 제어정보에 포함된 상기 유효정보를 기초로 임시 카드키를 이용한 오프라인 결제의 진행을 허용할지 여부를 결정할 수 있다. According to an embodiment, in step S1401, the payment terminal 3 may determine whether to allow the offline payment using a temporary card key based on the valid information included in the control information.

본 실시예에 따른 최적의 실시모드에서, 도 3b의 단계(S1320)와 단계(S1401)은 생략될 수도 있다. 이 경우 사용자기기(1)와 결제단말기(3) 간에 상기 오프라인 결제를 진행할지 여부를 결정하는 것은 사용자기기(1)에 의해서만 실행될 수 있다.In the optimal implementation mode according to the present embodiment, steps S1320 and S1401 of FIG. 3B may be omitted. In this case, the determination of whether to proceed with the offline payment between the user device 1 and the payment terminal 3 may be executed only by the user device 1 .

단기(S1410)에서, 결제단말기(3)는 상기 임시 카드번호를 이용하여 결제단말기(3)에 미리 저장되어 있는 마스터키로부터 임시 카드키를 유도할 수 있다. 이때, 결제단말기(3)에 미리 저장되어 있는 상기 마스터키는, 결제단말기(3)에 미리 저장되어 있는 복수 개의 마스터키들 중에서 단계(S1310)를 통해 사용자기기(1)로부터 수신한 상기 마스터키에 관한 정보를 이용하여 선택한 것일 수 있다.In the short term ( S1410 ), the payment terminal 3 may derive a temporary card key from the master key stored in advance in the payment terminal 3 using the temporary card number. At this time, the master key stored in advance in the payment terminal 3 is the master key received from the user device 1 through step S1310 among a plurality of master keys stored in advance in the payment terminal 3 . It may be selected using information about the

단계(S1500)에서, 사용자기기(1)와 결제단말기(3)는 각각 확보한 서로 동일한 상기 임시 카드키를 이용하여 오프라인 결제를 수행할 수 있다. In step S1500, the user device 1 and the payment terminal 3 may perform offline payment by using the same temporary card key each secured.

단계(S1500)에서, 사용자기기(1)와 결제단말기(3)는 각각 보유한 임시 카드키로부터 세션키를 유도하고, 각자 유도한 세션키를 이용하여 사인(sign)들을 생성하여 상호 전송하고 검증함으로써 오프라인 결제를 수행할 수 있다. 세션키를 이용하여 사인을 생성하고 상호 검증하는 방식은 종래에 통용되는 기술을 그대로 또는 변형하여 이용할 수 있다.In step S1500, the user device 1 and the payment terminal 3 derive a session key from each held temporary card key, and generate and transmit and verify signs using each derived session key. You can make offline payments. A method of generating a signature using a session key and mutually verifying it can be used as it is or by modifying the conventional technology.

단계(S1330)에서, 사용자기기(1)는 일정 조건 만족 시 상기 임시 카드키를 삭제할 수 있다. 이때 예컨대 상기 조건은 상기 사용자기기(1)에서 수행되는 어플리케이션 프로그램이 종료되는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 종료되는 절차가 실행되는 경우가 발생하면, 상기 종료 절차 도중에 상기 임시 카드키가 삭제될 수 있다. In step S1330, the user device 1 may delete the temporary card key when a predetermined condition is satisfied. In this case, for example, the condition may be that the application program executed in the user device 1 is terminated. That is, when a procedure for terminating the application program is executed, the temporary card key may be deleted during the terminating procedure.

이때, 상기 어플리케이션 프로그램이 실행되기 시작하여 종료되는 사이의 기간인 실행기간 동안, 상기 임시 카드키의 사용을 위한 상기 유효횟수가 초과하거나 또는 상기 유효기간이 도과한 것이 확인되었다면, 상기 어플리케이션 프로그램의 종료 절차가 실행되기 이전이라도 상기 임시 카드키가 삭제될 수 있다. At this time, during the execution period, which is a period between the start and end of the execution of the application program, if the number of validity for use of the temporary card key is exceeded or it is confirmed that the validity period has elapsed, the application program is terminated The temporary card key may be deleted even before the procedure is executed.

도 3b에서 단계(S1330)는 단계(S1500) 이후에 수행되는 것으로 예시되어 있지만, 단계(S1330)는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 실행되고 있는 도중이라면 단계(S1330)는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있을 수 있다. 그 결과 상기 임시 카드키의 유효사용횟수의 초과, 상기 임시 카드키의 유효사용기간의 도과, 및 상기 어플리케이션 프로그램의 종료 이벤트들 중 어느 하나라도 만족하게 되면 상기 사용자기기(1)에 저장되어 있던 상기 임시 카드키는 삭제되거나 무효화될 수 있다.In FIG. 3B , step S1330 is exemplified as being performed after step S1500 , but step S1330 may be constantly being continuously executed in the user device 1 . That is, if the application program is being executed, step S1330 may be continuously being executed in the user device 1 at all times. As a result, if any one of the number of valid uses of the temporary card key is exceeded, the expiration of the valid use period of the temporary card key, and the termination event of the application program are satisfied, the Temporary card keys may be deleted or invalidated.

그러나 상기 어플리케이션 프로그램의 실행기간 동안, 상기 임시 카드키를 이용하여 상기 오프라인 결제가 실행되었다고 하더라도, 상기 오프라인 결제의 성공 이벤트, 오류 이벤트, 또는 실패 이벤트가 발생했다는 이유만으로 상기 임시 카드키가 삭제되지 않는다.However, during the execution period of the application program, even if the offline payment is executed using the temporary card key, the temporary card key is not deleted just because a success event, an error event, or a failure event of the offline payment occurs. .

상술한 단계(S1210), 단계(S1260), 단계(S1301), 단계(S1310), 단계(1500), 및 단계(S1330)는 사용자기기(1)에서 실행되는 상기 어플리케이션 프로그램에 의해 실행될 수 있다. 단계(S1210), 단계(S1260), 단계(S1301), 단계(S1310), 단계(1500), 및 단계(S1330)는 상기 어플리케이션 프로그램의 실행 시작 시점부터 종료 완료 시점 이전에 실행되는 것일 수 있으며, 상기 어플리케이션 프로그램이 종료된 상태에서는 실행되지 않는 것일 수 있다.Steps S1210, S1260, S1301, S1310, 1500, and S1330 described above may be executed by the application program executed in the user device 1 . Steps (S1210), step (S1260), step (S1301), step (S1310), step 1500, and step (S1330) may be executed from the start point of the execution of the application program to the time point of completion of the end of the application program, It may be that the application program is not executed in the terminated state.

<제4실시예><Fourth embodiment>

도 4a는 본 발명의 다른 실시예에 따른 사용자기기와 결제단말기 간의 결제방법을 설명하기 위한 도면이다.4A is a view for explaining a payment method between a user device and a payment terminal according to another embodiment of the present invention.

도 4b는 본 발명의 일 실시예에 따라 사용자기기와 결제단말기가 오프라인 결제를 실행하기 위한 키의 일종인 세션키를 각각 획득하는 방법을 설명한 도면이다.4B is a diagram for explaining a method for a user device and a payment terminal to respectively acquire a session key, which is a type of key for performing offline payment, according to an embodiment of the present invention.

이하 도 4a 및 도 4b를 함께 참조하여 설명한다.Hereinafter, it will be described with reference to FIGS. 4A and 4B together.

도 4a 및 도 4b에 나타낸 실시예는 도 2a 및 도 2b에 나타낸 실시예의 변형예로서, 구체적으로 비교하면, 도 2a 및 도 2b에서는 서버(2)가 세션키를 생성하기 위해 필요한 지불키를 생성하여 사용자기기(1)에게 전송하고, 상기 세션키는 사용자기기(1)가 생성하도록 되어 있다. 반면, 도 4a 및 도 4b에서는 서버(2)가 세션키를 생성하여 사용자기기(1)에게 전송하고, 사용자기기(1)는 전송받은 세션키를 이용할 뿐이며 사용자기기(1)가 세션키를 직접 생성하지는 않는다는 점에서 다르다.The embodiment shown in Figs. 4A and 4B is a modification of the embodiment shown in Figs. 2A and 2B. Specifically, in Figs. 2A and 2B, the server 2 generates a payment key necessary for generating a session key. and transmitted to the user device 1 , and the session key is generated by the user device 1 . On the other hand, in FIGS. 4A and 4B , the server 2 generates a session key and transmits it to the user device 1 , and the user device 1 only uses the received session key, and the user device 1 directly transmits the session key. It is different in that it does not create.

도 2b 및 도 4b에서 공통적으로, 사용자기기(1)와 결제단말기(3) 간의 오프라인 결제를 위해 필요한 서명들은 상기 세션키로부터 생성될 수 있다.In common in FIGS. 2B and 4B , signatures necessary for offline payment between the user device 1 and the payment terminal 3 may be generated from the session key.

도 4a 및 도 4b에서 서버(2)로부터 사용자기기(1)에게 전송되는 세션키는 본 발명에 따른 상술한 키의 일종이다. The session key transmitted from the server 2 to the user device 1 in FIGS. 4A and 4B is a kind of the above-described key according to the present invention.

도 4a 및 도 4b를 통해 설명하는 본 발명의 일 실시예에 따른 오프라인 결제방법은, 상술한 내용을 제외하고는 도 2a 및 도 2b에서 설명한 실시예와 동일한 구성을 가질 수 있다. 이하 도 4b를 참고하여 설명한다.The offline payment method according to an embodiment of the present invention described with reference to FIGS. 4A and 4B may have the same configuration as that of the embodiment described with reference to FIGS. 2A and 2B except for the above description. Hereinafter, it will be described with reference to FIG. 4B.

도 4b에서 세션키가 카드번호 및 거래정보를 이용하여 마스터키로부터 유도되었지만, 본 발명의 다른 실시예에서는 다른 정보를 이용하여 유도될 수도 있다.Although the session key is derived from the master key using the card number and transaction information in FIG. 4B, in another embodiment of the present invention, it may be derived using other information.

단계(S2210)에서, 사용자기기(1)가 서버(2)에게 제어정보 및 세션키를 요청할 수 있다. 이때 사용자기기(1)의 장치식별자, 및 사용자기기(1)의 어플리케이션 프로그램을 통하여 상기 결제 서비스 플랫폼에 로그인 한 사용자의 로그인 정보 중 하나 이상의 정보가 함께 전송될 수 있다. 상기 로그인 정보에는 로그인한 사용자의 사용자 아이디, 및 상기 사용자 아이디에 연계되어 사용자에 의해 특정된 카드번호가 포함되어 있을 수 있다. 상기 카드번호는 예컨대 선불카드의 카드번호일 수 있다.In step S2210, the user device 1 may request the server 2 for control information and a session key. At this time, one or more of the device identifier of the user device 1 and the login information of the user who has logged into the payment service platform through the application program of the user device 1 may be transmitted together. The login information may include a user ID of a logged-in user and a card number specified by the user in connection with the user ID. The card number may be, for example, a card number of a prepaid card.

단계(S2220)에서, 서버(2)는 사용자기기(1)의 장치식별자를 이용하여, 제어정보 및 세션키를 생성하기 위한 카드번호를 특정할 수 있다. 이를 위하여 서버(2)는 장치식별자와 카드번호와의 매칭 관계를 나타내는 테이블을 포함하는 저장장치에 접근하도록 되어 있을 수 있다. 상기 테이블에는 상기 장치식별자 필드와 상기 카드번호 필드가 포함되어 있을 수 있다. In step S2220, the server 2 may use the device identifier of the user device 1 to specify a card number for generating control information and a session key. To this end, the server 2 may be configured to access a storage device including a table indicating a matching relationship between the device identifier and the card number. The table may include the device identifier field and the card number field.

또는 단계(S2220)에서, 서버(2)는 상기 전송된 사용자 아이디를 이용하여, 제어정보 및 세션키를 생성하기 위한 카드번호를 특정할 수 있다. 이를 위하여 서버(2)는 사용자 아이디와 카드번호와의 매칭 관계를 나타내는 테이블을 포함하는 저장장치에 접근하도록 되어 있을 수 있다. 상기 테이블에는 상기 사용자 아이디 필드와 상기 카드번호 필드가 포함되어 있을 수 있다. Alternatively, in step S2220, the server 2 may specify a card number for generating control information and a session key by using the transmitted user ID. To this end, the server 2 may be configured to access a storage device including a table indicating a matching relationship between a user ID and a card number. The table may include the user ID field and the card number field.

또는 단계(S2220)에서, 서버(2)는 상기 특정되어 전송된 카드번호를 그대로 이용하여, 제어정보 및 세션키를 생성하기 위한 카드번호를 특정할 수 있다.Alternatively, in step S2220, the server 2 may specify a card number for generating control information and a session key by using the specified and transmitted card number as it is.

단계(S2230)에서, 서버(2)가 카드번호 및/또는 거래정보를 이용하여 상기 마스터키로부터 세션키를 유도할 수 있다. 변형된 실시예에서 서버(2)는 상기 카드번호 및/또는 거래정보가 아닌 다른 정보를 이용하여 상기 마스터키로부터 세션키를 유도할 수 있다In step S2230, the server 2 may derive the session key from the master key using the card number and/or transaction information. In a modified embodiment, the server 2 may derive the session key from the master key using information other than the card number and/or transaction information.

단계(S2240)에서, 서버(2)는 제어정보를 생성할 수 있다. 상기 제어정보는 세션키의 유효기간 및/또는 유효횟수를 포함할 수 있다. 유효기간 및/또는 유효횟수는 미리 결정된 규칙에 의해 결정될 수 있다. In step S2240, the server 2 may generate control information. The control information may include the validity period and/or number of validity of the session key. The validity period and/or the number of validity may be determined by a predetermined rule.

단계(S2260)에서 서버(2)는 사용자기기(1)에게 제어정보 및 세션키를 전송할 수 있다.In step S2260, the server 2 may transmit the control information and the session key to the user device 1 .

바람직한 일 실시예에 따르면, 단계(S2301)에서, 상기 사용자기기(1)의 어플리케이션 프로그램은 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진되었는지 여부를 판단할 수 있다. 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 상기 어플리케이션 프로그램은 상기 세션키를 이용한 오프라인 결제를 진행하지 않도록 제어할 수 있다. 일 실시예에서 상기 제어정보에 포함되어 있는 유효기간이 도과하였는지 여부 또는 유효횟수가 모두 소진된 것으로 판단되었다면, 후술하는 단계(S2310) 및 그 후속 단계들이 실행되지 않을 수 있다.According to a preferred embodiment, in step S2301, the application program of the user device 1 may determine whether the validity period included in the control information has elapsed or whether the number of validity times has been exhausted. If it is determined that the validity period included in the control information has elapsed or the number of validity times has been exhausted, the application program may control not to proceed with the offline payment using the session key. In an embodiment, if it is determined whether the validity period included in the control information has elapsed or the number of validity times has been exhausted, step S2310 and subsequent steps described below may not be executed.

단계(S2310)에서, 사용자기기(1)는 결제단말기(3)에게 특정 카드번호를 전달할 수 있다. 단계(S2310)는 사용자기기(1)의 어플리케이션 프로그램이 수행할 수 있다. 상기 특정 카드번호의 전달은 근거리 유선/무선 통신을 통해 전달될 수 있다. 상기 특정 카드번호의 전달은, 사용자기기(1)와 결제단말기(3) 간에 상술한 오프라인 결제를 수행하기 위한 사용자 동작을 수행할 때에 이루어질 수 있다. 예컨대, 상기 특정 카드번호의 전달은 사용자기기(1)를 결제단말기(3)의 근처에 가까이 가져가거나 또는 접촉시킬 때에 이루어질 수 있다. In step S2310 , the user device 1 may transmit a specific card number to the payment terminal 3 . Step S2310 may be performed by the application program of the user device 1 . The specific card number may be transmitted through short-distance wired/wireless communication. The transfer of the specific card number may be performed when performing a user operation for performing the above-described offline payment between the user device 1 and the payment terminal 3 . For example, the transfer of the specific card number may be performed when the user device 1 is brought close to or brought into contact with the payment terminal 3 .

사용자기기(1)가 결제단말기(3)에게 전달하는 상기 특정 카드번호는 단계(S2230)에서 사용된 카드번호와 동일한 것일 수 있다.The specific card number transmitted by the user device 1 to the payment terminal 3 may be the same as the card number used in step S2230.

일 실시예에서, 단계(S2310)는, 상술한 단계(S2301)를 만족하지 않으면 실행되지 않을 수 있다. 단계(S310)가 실행되지 않으면 그 후속 단계도 실행되지 않고, 결국 결제가 이루어지지 않을 수 있다. In one embodiment, step S2310 may not be executed if the above-described step S2301 is not satisfied. If step S310 is not executed, the subsequent steps may not be executed, and payment may not be made in the end.

단계(S2320)에서, 사용자기기(1)는 서버(2)로부터 전달받은 상기 제어정보를 결제단말기(3)에게 전달할 수 있다. In step S2320 , the user device 1 may transmit the control information received from the server 2 to the payment terminal 3 .

단계(S2320)가 실행되는 경우, 단계(S2310)와 단계(S2320)는 서로 통합될 수 있으며, 따라서 상기 제어정보와 상기 특정 카드번호는 동시에 결제단말기(3)에게 전달될 수도 있다.When step S2320 is executed, steps S2310 and S2320 may be integrated with each other, and thus the control information and the specific card number may be simultaneously transmitted to the payment terminal 3 .

일 실시예에서, 단계(S2401)에서 결제단말기(3)는 제어정보에 포함된 상기 유효기간 또는 상기 유효횟수를 기초로 세션키를 이용한 오프라인 결제의 진행을 허용할지 여부를 결정할 수 있다. In one embodiment, in step S2401, the payment terminal 3 may determine whether to allow the offline payment using the session key based on the validity period or the number of validity included in the control information.

본 실시예에 따른 최적의 실시모드에서, 도 4b의 단계(S2320)와 단계(S2401)은 생략될 수도 있다. 이 경우 오프라인 결제를 진행할지 여부를 결정하는 것은 사용자기기(1)에 의해서만 실행될 수 있다.In the optimal implementation mode according to the present embodiment, steps S2320 and S2401 of FIG. 4B may be omitted. In this case, the determination of whether to proceed with the offline payment may be executed only by the user device 1 .

단계(S2410)에서, 결제단말기(3)는 사용자기기(1)로부터 전달받은 상기 특정 카드번호를 이용하여 마스터키로부터 세션키를 유도할 수 있다. 이때, 결제단말기(3)에 저장된 상기 마스터키는 서버(2)에 저장된 상기 마스터키와 동일한 것일 수 있다. 따라서 결제단말기(3)에서 유도한 상기 세션키는 서버(2)가 생성하여 사용자기기(1)에게 배포한 세션키와 동일한 것일 수 있다.In step S2410, the payment terminal 3 may derive the session key from the master key using the specific card number received from the user device 1 . In this case, the master key stored in the payment terminal 3 may be the same as the master key stored in the server 2 . Accordingly, the session key derived from the payment terminal 3 may be the same as the session key generated by the server 2 and distributed to the user device 1 .

이제, 결제단말기(3)와 사용자기기(1)는 각각 세션키를 확보하게 되었으며, 이 세션키들은 서로 동일한 것이다. 따라서 결제단말기(3)와 사용자기기(1)는 상기 세션키를 이용하여 오프라인 결제를 진행할 수 있다. 상기 오프라인 결제를 위한 절차는 예컨대, 종래의 오프라인 결제절차와 동일할 수 있다. Now, the payment terminal 3 and the user device 1 have each secured a session key, and these session keys are identical to each other. Accordingly, the payment terminal 3 and the user device 1 can perform offline payment using the session key. The procedure for the offline payment may be, for example, the same as a conventional offline payment procedure.

단계(S2500)에서, 결제단말기(3)와 사용자기기(1)가 각각 확보한 서로 동일한 세션키를 이용하여 오프라인 결제를 수행할 수 있다. In step S2500, offline payment may be performed using the same session key secured by the payment terminal 3 and the user device 1, respectively.

단계(S2500)에서, 사용자기기(1)와 결제단말기(3)는 각각 확보한 세션키를 이용하여 사인(sign)들을 생성하여 상호 전송하고 검증함으로써 오프라인 결제를 수행할 수 있다. 세션키를 이용하여 사인을 생성하고 상호 검증하는 방식은 종래에 통용되는 기술을 그대로 또는 변형하여 이용할 수 있다.In step S2500, the user device 1 and the payment terminal 3 may perform offline payment by generating, transmitting, and verifying signs using each secured session key. A method of generating a signature using a session key and mutually verifying it can be used as it is or by modifying the conventional technology.

단계(S2320)이 실행되는 실시예에서, 결제단말기(3)는, 상기 제어정보에 포함되어 있는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 결제 프로세스를 진행할지 여부를 결정하도록 되어 있을 수 있다. In an embodiment in which step S2320 is executed, the payment terminal 3 may be configured to determine whether to proceed with the payment process based on the validity period or the number of validity included in the control information.

단계(S2330)에서, 사용자기기(1)는 일정 조건 만족 시 상기 세션키를 삭제할 수 있다. In step S2330, the user device 1 may delete the session key when a predetermined condition is satisfied.

이때 예컨대 상기 조건은 상기 사용자기기(1)에서 수행되는 어플리케이션 프로그램이 종료되는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 종료되는 절차가 실행되는 경우가 발생하면, 상기 종료 절차 도중에 상기 세션키가 삭제될 수 있다. In this case, for example, the condition may be that the application program executed in the user device 1 is terminated. That is, when a procedure for terminating the application program is executed, the session key may be deleted during the terminating procedure.

이때, 상기 어플리케이션 프로그램이 실행되기 시작하여 종료되는 사이의 기간인 실행기간 동안, 상기 세션키의 사용을 위한 상기 유효횟수가 초과하거나 또는 상기 유효기간이 도과한 것이 확인되었다면, 상기 어플리케이션 프로그램의 종료 절차가 실행되기 이전이라도 상기 세션키가 삭제될 수 있다.In this case, during the execution period, which is a period between the start and end of the execution of the application program, if it is confirmed that the valid number of times for using the session key is exceeded or it is confirmed that the valid period has elapsed, the termination procedure of the application program The session key may be deleted even before is executed.

도 4b에서 단계(S2330)는 단계(S2500) 이후에 수행되는 것으로 예시되어 있지만, 단계(S2330)는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있는 것일 수 있다. 즉, 상기 어플리케이션 프로그램이 실행되고 있는 도중이라면 단계(S2330)는 사용자기기(1)에서 상시적으로 계속하여 실행되고 있을 수 있다. 그 결과 상기 세션키의 유효사용횟수의 초과, 상기 세션키의 유효사용기간의 도과, 및 상기 어플리케이션 프로그램의 종료 이벤트들 중 어느 하나라도 만족하게 되면 상기 사용자기기(1)에 저장되어 있던 상기 세션키는 삭제되거나 무효화될 수 있다.In FIG. 4B , step S2330 is exemplified as being performed after step S2500 , but step S2330 may be constantly being continuously executed in the user device 1 . That is, if the application program is being executed, step S2330 may be continuously being executed in the user device 1 at all times. As a result, if any one of the event of exceeding the number of valid uses of the session key, the expiration of the valid usage period of the session key, and termination of the application program is satisfied, the session key stored in the user device 1 may be deleted or invalidated.

그러나 상기 어플리케이션 프로그램의 실행기간 동안, 상기 세션키를 이용하여 상기 오프라인 결제가 실행되었다고 하더라도, 상기 오프라인 결제의 성공 이벤트, 오류 이벤트, 또는 실패 이벤트가 발생했다는 이유만으로 상기 세션키가 삭제되지 않는다. 즉, 상기 세션키가 문자 그대로 1회성 키(key)인 것은 아니다.However, even if the offline payment is executed using the session key during the execution period of the application program, the session key is not deleted just because a success event, an error event, or a failure event of the offline payment occurs. That is, the session key is not literally a one-time key.

이와 같이 함으로써, 상기 세션키는 사용자기기(1) 내에서 상술한 조건을 만족하는 경우 복수 회 사용될 수 있다. 이와 같이 상기 어플리케이션 프로그램의 종료, 상기 유효사용횟수의 초과, 또는 상기 유효사용기간의 도과에 해당하는 이벤트가 발생하지 않는다면, 결제를 위한 상기 세션키를 서버(2)가 사용자기기(1)에게 다시 배포할 필요가 없다. In this way, the session key can be used a plurality of times when the above-described condition is satisfied in the user device 1 . In this way, if an event corresponding to the termination of the application program, the excess of the number of valid uses, or the expiration of the valid period of use does not occur, the server 2 returns the session key for payment to the user device 1 . No need to distribute

도 5는 본 발명의 일 실시예에 따른 결제 순서도를 나타낸 것이다.5 is a view showing a payment flow chart according to an embodiment of the present invention.

단계(S10)에서, 사용자기기가, ① 제어정보 및 ② 서버가 미리 저장되어 있는 마스터키를 이용하여 생성한 키를, 상기 서버로부터 수신하여 획득할 수 있다. 이때, 상기 제어정보에는 유효기간 또는 유효횟수에 관한 정보가 포함되어 있을 수 있다. 이때, 상기 결제단말기에 설치된 SAM에도 상기 마스터키가 저장되어 있을 수 있다.In step S10, the user device may receive from the server a key generated by using ① control information and ② a master key stored in advance by the server to obtain it. In this case, the control information may include information about the validity period or the number of times of validity. In this case, the master key may also be stored in the SAM installed in the payment terminal.

단계(S20)에서, 상기 사용자기기가, 상기 제어정보를 상기 결제단말기에게 송신할 수 있다. 이때, 상기 결제단말기는, 상기 제어정보에 포함되어 있는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 결제 프로세스를 시작할지 여부를 결정하도록 되어 있을 수 있다.In step S20, the user device may transmit the control information to the payment terminal. In this case, the payment terminal may be configured to determine whether to start the payment process based on the validity period or the number of validity included in the control information.

단계(S30)에서, 상기 사용자기기와 상기 결제단말기가, 상기 키를 이용하여 결제 프로세스를 수행할 수 있다. In step S30, the user device and the payment terminal may perform a payment process using the key.

본 실시예에 따른 최적의 실시모드에서 상기 제어정보는 상기 사용자기기로부터 결제단말기에게 전송되지 않을 수도 있다. 즉, 단계(S20)는 생략될 수도 있다. 이때, 상기 결제단말기는, 상기 결제 프로세스를 시작할지 여부를 결정하지 않을 수도 있으며, 상기 결제 프로세스를 시작할지 여부를 결정하는 것은 상기 사용자기기에 의해 이루어질 수 있다.In the optimal implementation mode according to the present embodiment, the control information may not be transmitted from the user device to the payment terminal. That is, step S20 may be omitted. In this case, the payment terminal may not determine whether to start the payment process, and determining whether to start the payment process may be performed by the user device.

이때, 상기 결제단말기의 상기 SAM은, 상기 결제단말기에 설치된 SAM에 저장된 상기 마스터키를 이용하여 상기 키를 생성하도록 되어 있을 수 있다. In this case, the SAM of the payment terminal may be configured to generate the key using the master key stored in the SAM installed in the payment terminal.

상기 결제 프로세스는 종래의 기술을 이용하여 수행될 수 있다. 예컨대, 종래 기술에 따르면 상기 결제 프로세스는 소정의 절차에 따라, 상기 사용자기기의 SE와 상기 결제단말기의 SAM에 영구적 또는 반영구적으로 저장되어 있던 키를 이용하여 수행될 수 있다. 이에 비하여, 본 발명의 일 실시예에 따라 제공되는 결제 프로세스에서는, 상기 소정의 절차에 따라, 상기 사용자기기의 어플리케이션 프로그램에 의해 관리되는 상기 키(임시키)와 상기 결제단말기의 상기 SAM에서 생성한 상기 키(임시키)를 이용하여 수행될 수 있다. 즉, 본 발명의 일 실시예에 따르면, 종래에는 상기 사용자기기의 SE에 영구적으로 저장되어 있던 키를 대체하여 상기 키(임시키)를 사용하게 되는데, 이때, 상기 키(임시키)의 유효횟수 또는 유효기간이 설정되어 있고 상기 키(임시키)의 생성/관리/폐기가 서버에 의해 이루어지므로, 상기 사용자기기가 하드웨어적인 보안장치를 갖는 SE를 사용하지 않더라도 종래기술에 따른 결제 프로세스를 보안상 안전하게 수행할 수 있다.The payment process may be performed using conventional techniques. For example, according to the prior art, the payment process may be performed using a key permanently or semi-permanently stored in the SE of the user device and the SAM of the payment terminal according to a predetermined procedure. In contrast, in the payment process provided according to an embodiment of the present invention, according to the predetermined procedure, the key (temporary key) managed by the application program of the user device and the SAM of the payment terminal are generated. This may be performed using the key (temporary key). That is, according to an embodiment of the present invention, in the related art, the key (temporary key) is used to replace the key permanently stored in the SE of the user device. Alternatively, since the validity period is set and the generation/management/disposal of the key (temporary key) is performed by the server, even if the user device does not use an SE having a hardware security device, the payment process according to the prior art is secure. can be done safely.

즉, 본 발명의 일 실시예에 따르면 종래의 기술에 따른 소정의 절차를 그대로 이용하여 결제를 완료할 수 있는데, 다만, 종래의 기술에서 사용하던 영구적 또는 반영구적으로 저장되어 있던 키를 사용하는 것이 아니라, 유효기간 또는 유효횟수가 설정되어 있어서 폐기가 가능한 키(임시키)를 사용한다는 점이 다르다. 또한 본 발명에서는 사용자기기(1)와 결제단말기(3)가 이러한 키(임시키)를 확보하는 구체적인 방법을 제시하고 있다.That is, according to an embodiment of the present invention, payment can be completed using a predetermined procedure according to the prior art as it is. However, instead of using the permanently or semi-permanently stored key used in the prior art, , the difference is that a key (temporary key) that can be revoked is used because the validity period or number of validity is set. In addition, the present invention proposes a specific method for the user device 1 and the payment terminal 3 to secure such a key (temporary key).

상술한 종래 기술에 따른 결제 프로세스의 핵심 단계들은 상기 사용자기기(1) 및 상기 SAM 간에 수행될 수 있다. 다만, 상기 결제 프로세스의 수행을 위한 유무선 통신과정 및 사용자 입력행위에 상기 결제단말기(3)가 개입할 수 있다. 따라서 본 명세서에서 소개한 본 발명의 실시예들에 있어서, 상기 결제 프로세스는 상기 사용자기기(1) 및 상기 결제단말기(3) 간에 수행되는 것으로 포괄적으로 기재하였다. 특히 상기 결제 프로세스에 있어서 사인(서명)을 생성하고 검증하는 주체는 사용자기기 및 결제단말기일 수 있다.The key steps of the payment process according to the prior art described above may be performed between the user device 1 and the SAM. However, the payment terminal 3 may intervene in a wired/wireless communication process for performing the payment process and a user input action. Therefore, in the embodiments of the present invention introduced in this specification, the payment process has been comprehensively described as being performed between the user device 1 and the payment terminal 3 . In particular, the subject that generates and verifies a signature (signature) in the payment process may be a user device and a payment terminal.

상기 단계(S10)에 상기 제어정보 및 상기 키는 서버(2)에서 주기적 또는 비주기적으로 갱신하여 새로 생성할 수 있다. 비주기적으로 갱신하는 경우에는, 예컨대 사용자기기(1)가 서버(2)에게 요청할 때에만 상기 제어정보와 키를 새로 생성할 수도 있다. 서버(2)는 새로 생성된 상기 제어정보 및 상기 키를 사용자기기(1)에게 다시 전송할 수 있다. 이로써, 사용자기기(1)도 새로 생성된 상기 제어정보 및 상기 키를 획득할 수 있다.In the step (S10), the control information and the key may be newly generated by periodically or aperiodically updating the server 2 . In the case of aperiodic update, for example, the control information and the key may be newly generated only when the user device 1 requests the server 2 . The server 2 may transmit the newly generated control information and the key back to the user device 1 . Accordingly, the user device 1 may also acquire the newly generated control information and the key.

사용자기기(1), 서버(2), 및 결제단말기(3) 간에는 상기 제어정보 및 상기 키 중 하나 이상이 교환될 수 있는데, 상기 교환되는 정보는 종래의 기술을 이용하여 암호화 및 복호화될 수 있다. 본 발명은, 상기 암호화 및 복호화의 적용여부 및 암복호화를 위한 특정 기술에 의해 제한되는 것은 아니다.At least one of the control information and the key may be exchanged between the user device 1, the server 2, and the payment terminal 3, and the exchanged information may be encrypted and decrypted using conventional techniques. . The present invention is not limited by whether the encryption and decryption are applied or a specific technique for encryption/decryption.

이때, 사용자기기(1)에서 상기 어플리케이션 프로그램이 실행되고 있는 도중이라면 상기 키를 삭제하거나 무효화하기 위한 조건의 판단을 상시적으로 수행하고 있을 수 있다. 즉, 사용자기기(1)가 상기 키를 서버(2)로부터 획득한 이후로부터 상기 키의 유효사용횟수의 초과, 상기 키의 유효사용기간의 도과, 및 상기 어플리케이션 프로그램의 종료 이벤트들 중 어느 하나라도 만족하게 되면 상기 사용자기기(1)에 저장되어 있던 상기 키는 삭제되거나 무효화될 수 있다.In this case, if the application program is being executed in the user device 1 , the determination of a condition for deleting or invalidating the key may be constantly being performed. That is, any one of the exceeding of the number of valid uses of the key, the expiration of the valid usage period of the key, and the termination of the application program since the user device 1 obtained the key from the server 2 . When satisfied, the key stored in the user device 1 may be deleted or invalidated.

이때, 상기 어플리케이션 프로그램의 실행기간 동안, 상기 키를 이용하여 상기 오프라인 결제가 실행되었다고 하더라도, 상기 오프라인 결제의 성공 이벤트, 오류 이벤트, 또는 실패 이벤트가 발생했다는 이유만으로 상기 키가 삭제되지 않는다. 즉, 상기 키가 문자 그대로 1회성 키(key)인 것은 아니다.In this case, even if the offline payment is executed using the key during the execution period of the application program, the key is not deleted just because a success event, an error event, or a failure event of the offline payment occurs. That is, the key is not literally a one-time key.

이와 같이 함으로써, 상기 키는 사용자기기(1) 내에서 상술한 조건을 만족하는 경우 미리 설정한 횟수만큼 사용될 수 있다. 이와 같이 상기 어플리케이션 프로그램의 종료, 상기 유효사용횟수의 초과, 또는 상기 유효사용기간의 도과에 해당하는 이벤트가 발생하지 않는다면, 결제를 위한 상기 키를 서버(2)가 사용자기기(1)에게 다시 배포할 필요가 없다. In this way, the key can be used a preset number of times when the above-described condition is satisfied in the user device 1 . In this way, if an event corresponding to the termination of the application program, the exceeding of the number of valid uses, or the expiration of the valid period of use does not occur, the server 2 distributes the key for payment to the user device 1 again. no need to do

도 6은 본 발명의 일 실시예에 따른 사용자기기의 구성요소를 설명하기 위한 도면이다.6 is a view for explaining the components of a user equipment according to an embodiment of the present invention.

사용자기기(1)는 SE(10), 네트워크 통신부(11), 처리부(12), 근거리 통신부(13), 및 저장부(14)를 포함할 수 있다. The user device 1 may include an SE 10 , a network communication unit 11 , a processing unit 12 , a short-range communication unit 13 , and a storage unit 14 .

네트워크 통신부(11)는 서버(2)와 통신하기 위한 구성요소로서, WiFi, LTE 등의 MAN, LAN, 및/또는 이동통신망을 통하여 서버(2)로부터 상기 제어정보 및 상기 키 (임시키/지불키/임시 카드키/세션키)를 수신할 수 있다. The network communication unit 11 is a component for communicating with the server 2, and the control information and the key (temporary / payment) from the server 2 through MAN, LAN, and/or mobile communication network such as WiFi and LTE key/temporary card key/session key) can be received.

처리부(12)는 네트워크 통신부(11)가 수신한 상기 제어정보 및 키를 저장부(14)에 저장할 수 있다. 그리고 상기 제어정보를 근거리 통신부(13)에 전송할 수 있다.The processing unit 12 may store the control information and the key received by the network communication unit 11 in the storage unit 14 . In addition, the control information may be transmitted to the short-range communication unit 13 .

근거리 통신부(13)는 상기 제어정보를 결제단말기(3)에게 전송할 수 있다. 이때, 상기 키는 결제단말기(3)에게 전송되지 않도록 할 수 있다.The short-range communication unit 13 may transmit the control information to the payment terminal 3 . At this time, the key may not be transmitted to the payment terminal 3 .

이때, 결제단말기(3)는 SAM(30)을 포함하고 있을 수 있다. SAM(30)은 사용자기기(1)의 근거리 통신부(13)로부터 수신한 제어정보와 SAM(30)에 저장되어 있는 마스터키를 이용하여 상기 키를 생성할 수 있다. 이때, SAM(30)을 통해 제어정보의 검증이 수행되기 때문에 외부에서 조작을 할 수 없으며 즉시 이상거래를 차단할 수 있다. SAM(30)은 상기 키를 생성하기 전, 상기 마스터키를 이용하여 검증코드를 확인할 수 있으며 결제요청 일시 등과 토큰의 유효정보를 비교하여 결제승인 여부를 판단할 수 있다.In this case, the payment terminal 3 may include the SAM 30 . The SAM 30 may generate the key using the control information received from the short-range communication unit 13 of the user device 1 and the master key stored in the SAM 30 . At this time, since the verification of the control information is performed through the SAM 30, external manipulation cannot be performed, and the abnormal transaction can be immediately blocked. Before generating the key, the SAM 30 may check the verification code using the master key, and may determine whether to approve the payment by comparing the payment request date and time and the valid information of the token.

이후의 처리 절차 및 서명검증절차는 종래의 기술과 동일하다. 마스터키의 교체는 교통 단말기 내의 SAM에서 수행되는 것으로 교통지불결제를 위한 작업에서 교통 단말기의 추가 수정이나 변경이 필요 없다.Subsequent processing procedures and signature verification procedures are the same as in the prior art. The replacement of the master key is performed by the SAM in the transportation terminal, and there is no need for additional modification or change of the transportation terminal in the work for transportation payment settlement.

상기 결제단말기(3)는 교통단말기일 수도 있고, 상점에서의 서비스 또는 상품의 대가를 결제하기 위한 단말기일 수도 있다. 상기 결제단말기(3)의 어플리케이션이 특정 어플리케이션에 한정되는 것은 아니다.The payment terminal 3 may be a transportation terminal or a terminal for payment for services or goods in a store. The application of the payment terminal 3 is not limited to a specific application.

상술한 본 발명의 실시예를 수행하기 위하여, 사용자기기(1)의 사용자는 우선, 상기 본 발명의 일 실시예의 실행을 위해 필요한 어플리케이션을 사용자기기(1)에 설치한 후, 서버(2)에 사용자 및 사용자기기 등록을 수행하는 등록절차를 수행할 수 있다. 상기 등록절차는 다음의 과정을 포함할 수 있다.In order to carry out the above-described embodiment of the present invention, the user of the user device 1 first installs an application necessary for the execution of the embodiment of the present invention in the user device 1, and then to the server 2 A registration procedure for performing user and user device registration may be performed. The registration procedure may include the following steps.

즉, 사용자기기(1)가 상기 어플리케이션을 실행하면, 상기 어플리케이션은 상기 사용자기기(1)로 하여금 서버(2)로부터 사용자 등록 요청을 수신하도록 동작할 수 있다. That is, when the user device 1 executes the application, the application may operate to cause the user device 1 to receive a user registration request from the server 2 .

그 다음, 상기 사용자는 상기 어플리케이션 및 사용자기기(1)를 통해 서버(2)에게 사용자 정보 및 사용자기기 정보를 송신할 수 있다. Then, the user may transmit user information and user equipment information to the server 2 through the application and the user equipment 1 .

서버(2)는 상기 사용자 정보 및 사용자기기 정보를 이용하여 사용자 ID 및 사용자기기 ID를 생성하여 서버(2)에 저장할 수 있다. The server 2 may generate a user ID and a user device ID using the user information and the user device information and store the generated user ID and user device ID in the server 2 .

그리고 서버(2)는 상기 사용자 ID 및 사용자기기 ID를 사용자기기(1)에게 송신할 수 있다. And the server 2 may transmit the user ID and the user device ID to the user device 1 .

서버(2)는, 서버(2)와 사용자기기(1) 간의 통신이 수립될 때에, 사용자 ID 및 사용자기기 ID를 이용하여 사용자기기(1)를 고유하게 확인할 수 있다. The server 2 may uniquely identify the user device 1 using the user ID and the user device ID when communication between the server 2 and the user device 1 is established.

상기 등록절차를 통해 서버(2)는 사용자기기(1)에게 예컨대, 교통카드의 발급정보 등을 배포할 수 있다. 그러나 실제 교통결제에 사용하기 위한 상기 제어정보 및 상기 임시키는 상기 등록절차 과정에서는 배포되지 않을 수 있다. 사용자기기(1)가 제어정보 및 키를 획득하기 위해서는 도 1a, 도 2b, 도 3b, 또는 도 4b에서 설명한 것과 같은 절차가 별도로 수행되어야 한다.Through the registration procedure, the server 2 may distribute, for example, issuance information of a transportation card to the user device 1 . However, the control information for use in actual traffic payment and the request may not be distributed during the registration procedure. In order for the user device 1 to obtain the control information and the key, a procedure as described in FIG. 1A, FIG. 2B, FIG. 3B, or FIG. 4B should be separately performed.

상술한 실시예들에 있어서, 상기 사용자기기가 상기 서버로부터 상기 키를 수신하는 단계와 상기 제어정보를 수신하는 단계는 한 개의 단계로서 통합될 수 있다.In the above-described embodiments, the step of the user equipment receiving the key from the server and the step of receiving the control information may be integrated as one step.

상술한 본 발명의 실시예들을 이용하여, 본 발명의 기술 분야에 속하는 자들은 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에 다양한 변경 및 수정을 용이하게 실시할 수 있을 것이다. 특허청구범위의 각 청구항의 내용은 본 명세서를 통해 이해할 수 있는 범위 내에서 인용관계가 없는 다른 청구항에 결합될 수 있다.By using the above-described embodiments of the present invention, those skilled in the art will be able to easily implement various changes and modifications within the scope without departing from the essential characteristics of the present invention. The content of each claim in the claims may be combined with other claims without reference within the scope that can be understood through this specification.

Claims (11)

사용자기기와 결제단말기가 키를 이용하여 결제를 수행하는 결제방법으로서,
상기 사용자기기가, 어플리케이션 프로그램을 실행하여 키(key)를 서버로부터 수신하여 획득하는 단계; 및
상기 사용자기기가, 상기 키를 이용하여 상기 결제단말기와 결제 프로세스를 수행하는 단계;
를 포함하며,
상기 사용자기기는 상기 키를 이용하여 수행한 상기 결제 프로세스의 총 횟수와 무관하게 상기 어플리케이션 프로그램의 종료 과정에서 상기 키를 삭제하거나 무효화하도록 되어 있는,
결제 방법.
A payment method in which a user device and a payment terminal perform payment using a key,
acquiring, by the user device, executing an application program to receive a key from a server; and
performing, by the user device, a payment process with the payment terminal using the key;
includes,
The user device is configured to delete or invalidate the key in the process of terminating the application program regardless of the total number of the payment process performed using the key,
Payment Method.
제1항에 있어서,
상기 획득하는 단계는, 상기 사용자기기가, 상기 어플리케이션 프로그램을 이용하여 상기 서버로부터 상기 키에 대한 유효기간 및 유효횟수 중 하나 이상에 관한 정보가 포함되어 있는 제어정보를 수신하는 단계를 포함하고,
상기 사용자기기는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 키를 이용하여 상기 결제 프로세스를 진행할지 여부를 결정하도록 되어 있는 것을 특징으로 하는,
결제 방법.
According to claim 1,
The acquiring may include, by the user device, receiving, from the server, control information including information on at least one of a valid period and a valid number of the key from the server using the application program,
wherein the user device is configured to determine whether to proceed with the payment process using the key based on the validity period or the number of times of validity;
Payment Method.
제1항에 있어서,
상기 획득하는 단계는, 상기 사용자기기가, 상기 어플리케이션 프로그램을 이용하여 상기 서버로부터 상기 키에 대한 유효기간 및 유효횟수 중 하나 이상에 관한 정보가 포함되어 있는 제어정보를 수신하는 단계를 포함하고,
상기 결제 방법은, 상기 사용자기기가, 상기 어플리케이션 프로그램을 이용하여 상기 제어정보를 상기 결제단말기에게 송신하는 단계를 더 포함하며,
상기 유효기간 또는 상기 유효횟수는, 상기 결제단말기 또는 상기 결제단말기에 설치된 SAM이 상기 제어정보에 포함되어 있는 상기 유효기간 또는 상기 유효횟수를 기초로 상기 키를 이용하여 상기 결제 프로세스를 진행할지 여부를 결정하는 데에 사용되기 위해 제공되는 것을 특징으로 하는,
결제 방법.
According to claim 1,
The acquiring may include, by the user device, receiving, from the server, control information including information on at least one of a valid period and a valid number of the key from the server using the application program,
The payment method further includes, by the user device, transmitting the control information to the payment terminal using the application program,
The validity period or the number of validity is determined whether the payment terminal or the SAM installed in the payment terminal performs the payment process using the key based on the validity period or the number of validity included in the control information. characterized in that it is provided for use in determining
Payment Method.
제1항에 있어서, 상기 결제 프로세스는 상기 결제단말기 또는 상기 결제단말기에 설치된 SAM에 의해 상기 키가 생성된 이후에 실행되는 것인, 결제 방법.The payment method according to claim 1, wherein the payment process is executed after the key is generated by the payment terminal or a SAM installed in the payment terminal. 제1항에 있어서, 상기 키는 상기 서버가 카드번호를 이용하여 마스터키로부터 유도한 지불키인, 결제 방법.The payment method according to claim 1, wherein the key is a payment key derived from the master key by the server using a card number. 제1항에 있어서, 상기 키는 상기 서버가 마스터키로부터 유도한 세션키인, 결제 방법.The payment method according to claim 1, wherein the key is a session key derived from a master key by the server. 제1항에 있어서, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지, 상기 키를 이용하여 상기 결제 프로세스가 복수 회 실행될 수 있도록 되어 있는, 결제 방법.The payment method according to claim 1, wherein the payment process can be executed a plurality of times using the key from the time the application program is executed to before it is terminated. 제1항에 있어서, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지 상기 결제 프로세스가 복수 회 실행되는 동안, 상기 사용자기기는 상기 서버로부터 다른 키를 다시 배포 받지 않는 것을 특징으로 하는, 결제 방법.The payment method according to claim 1, wherein the user device does not receive another key from the server again while the payment process is executed a plurality of times from when the application program is executed to before it is terminated. 제7항에 있어서,
상기 획득하는 단계는, 상기 어플리케이션 프로그램을 이용하여 상기 서버로부터 상기 키에 대한 유효기간 및 상기 키에 대한 유효횟수 중 하나 이상에 관한 정보가 포함되어 있는 제어정보를 수신하는 단계를 포함하고,
상기 사용자기기는, 상기 어플리케이션 프로그램이 실행된 이후부터 종료되기 이전까지, 상기 키에 대한 유효기간이 도과하거나 또는 상기 키에 대한 상기 유효횟수가 도과한 경우에는 상기 키를 삭제하거나 무효화하도록 되어 있는,
결제 방법.
8. The method of claim 7,
The acquiring includes receiving control information including information on at least one of a valid period for the key and a valid number of times for the key from the server using the application program,
The user device is configured to delete or invalidate the key when the validity period for the key has elapsed or the number of validity times for the key has elapsed from the time the application program is executed to before the end of the key.
Payment Method.
사용자기기와 결제단말기가 키를 이용하여 결제를 수행하도록 상기 키를 생성하여 제공하는 결제방법으로서,
서버가, 사용자기기로부터 상기 키의 생성 및 제공에 관한 요청 메시지를 수신하는 단계; 및
상기 서버가, 상기 키를 생성하여, 상기 생성된 키를 상기 사용자기기에게 전송하는 단계;
를 포함하며,
상기 결제단말기는, 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 상기 사용자기기로부터 수신하거나 또는 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 기초로 상기 서버가 생성한 임시 카드번호를 상기 사용자기기로부터 수신하도록 되어 있고,
상기 결제단말기는, 상기 카드번호 또는 상기 임시 카드번호를 이용하여 상기 결제단말기에 저장되어 있는 마스터키로부터 상기 키를 유도하고, 상기 유도한 상기 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 결제 프로세스를 실행하도록 되어 있으며,
상기 사용자기기는, 상기 사용자기기가 상기 서버로부터 획득한 상기 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 상기 결제 프로세스를, 상기 사용자기기에 설치된 어플리케이션 프로그램을 이용하여 실행하도록 되어 있고,
상기 요청 메시지의 생성은 상기 어플리케이션 프로그램에 의해 이루어지며,
상기 사용자기기는 상기 키를 이용하여 수행한 상기 결제 프로세스의 총 횟수와 무관하게 상기 어플리케이션 프로그램의 종료 과정에서 상기 서버로부터 획득한 상기 키를 삭제하도록 되어 있는,
결제 방법.
A payment method for generating and providing the key so that a user device and a payment terminal perform payment using the key,
receiving, by the server, a request message regarding generation and provision of the key from the user device; and
generating, by the server, the key and transmitting the generated key to the user device;
includes,
The payment terminal receives, from the user device, a card number specified using information included in the request message, or a temporary generated by the server based on a card number specified using information included in the request message. to receive a card number from the user device,
The payment terminal derives the key from the master key stored in the payment terminal using the card number or the temporary card number, and uses the derived key between the payment terminal and the user device. to run the payment process,
The user device is configured to execute the payment process performed between the payment terminal and the user device using the key obtained by the user device from the server using an application program installed in the user device,
Generation of the request message is made by the application program,
The user device is configured to delete the key obtained from the server in the process of terminating the application program regardless of the total number of the payment process performed using the key,
Payment Method.
사용자기기와 결제단말기가 키를 이용하여 결제를 수행하는 결제방법으로서,
결제단말기가, 사용자기기가 서버에게 송신한 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 상기 사용자기기로부터 수신하거나 또는 상기 요청 메시지에 포함된 정보를 이용하여 특정되는 카드번호를 기초로 상기 서버가 생성한 임시 카드번호를 상기 사용자기기로부터 수신하는 단계;
상기 결제단말기가, 상기 카드번호 또는 상기 임시 카드번호를 이용하여 상기 결제단말기에 저장되어 있는 마스터키로부터 키를 유도하는 단계; 및
상기 결제단말기가, 상기 유도한 상기 키를 이용하여 상기 결제단말기와 상기 사용자기기 간에 수행되는 결제 프로세스를 실행하는 단계;
를 포함하며,
상기 키의 사용을 위한 유효횟수 또는 유효기간에 관한 정보를 포함하는 제어정보를 상기 사용자기기로부터 수신하도록 되어 있으며,
상기 키의 사용횟수가 상기 유효횟수를 초과한 경우, 또는 상기 유효기간이 도과한 경우에는 상기 유도한 키를 이용하여 상기 결제 프로세스를 실행하지 않도록 되어 있고,
상기 사용자기기는 상기 키를 이용하여 수행한 상기 결제 프로세스의 총 횟수와 무관하게 어플리케이션 프로그램의 종료 과정에서 상기 서버로부터 획득한 상기 키를 삭제하도록 되어 있는,
결제 방법.
A payment method in which a user device and a payment terminal perform payment using a key,
The payment terminal receives, from the user device, a card number specified using information included in a request message sent by the user device to the server, or based on the card number specified using information included in the request message receiving a temporary card number generated by a server from the user device;
deriving, by the payment terminal, a key from the master key stored in the payment terminal using the card number or the temporary card number; and
executing, by the payment terminal, a payment process performed between the payment terminal and the user device using the derived key;
includes,
to receive control information including information on the number of validity times or validity period for use of the key from the user device,
When the number of times of using the key exceeds the number of validity, or when the validity period has elapsed, the payment process is not executed using the derived key;
The user device is configured to delete the key obtained from the server in the process of terminating the application program regardless of the total number of the payment process performed using the key,
Payment Method.
KR1020190121113A 2019-06-13 2019-09-30 A mobile payment method for enhancing security of cloud-based payment system and the device therefor KR102293775B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190069884 2019-06-13
KR20190069884 2019-06-13

Publications (2)

Publication Number Publication Date
KR20200143195A KR20200143195A (en) 2020-12-23
KR102293775B1 true KR102293775B1 (en) 2021-08-26

Family

ID=74088960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190121113A KR102293775B1 (en) 2019-06-13 2019-09-30 A mobile payment method for enhancing security of cloud-based payment system and the device therefor

Country Status (1)

Country Link
KR (1) KR102293775B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024015180A1 (en) * 2022-07-15 2024-01-18 Mastercard International Incorporated Rapid secure wireless transaction

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101775511B1 (en) * 2016-10-20 2017-09-06 주식회사 이비카드 Electronic payment system and method using a user terminal

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101839346B1 (en) * 2015-12-22 2018-03-16 주식회사 한국스마트카드 Cloud payment system
KR20180131214A (en) * 2017-05-31 2018-12-10 (주) 티엠엑스코리아 Mobile secure payment system and method based on smart phone offline
KR20170092144A (en) * 2017-07-28 2017-08-10 김재형 Method for Providing Payment by using Near Field Communication Means

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101775511B1 (en) * 2016-10-20 2017-09-06 주식회사 이비카드 Electronic payment system and method using a user terminal

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024015180A1 (en) * 2022-07-15 2024-01-18 Mastercard International Incorporated Rapid secure wireless transaction

Also Published As

Publication number Publication date
KR20200143195A (en) 2020-12-23

Similar Documents

Publication Publication Date Title
CN108064440B (en) FIDO authentication method, device and system based on block chain
KR101544722B1 (en) Method for performing non-repudiation, payment managing server and user device therefor
US10846694B2 (en) Offline authentication
JP6586446B2 (en) Method for confirming identification information of user of communication terminal and related system
US8943311B2 (en) System and methods for online authentication
TWI497336B (en) Data security devices and computer program
KR102177848B1 (en) Method and system for verifying an access request
CN107925567A (en) For optimizing the systems, devices and methods of symmetric key cache using the ticket that service provider&#39;s issue is checked by certificate status
KR101686167B1 (en) Apparatus and Method for Certificate Distribution of the Internet of Things Equipment
CN104412273A (en) Method and system for activation
KR101531662B1 (en) Method and system for mutual authentication between client and server
JP2017152880A (en) Authentication system, key processing coordination method, and key processing coordination program
JP6479723B2 (en) Secret key management system and secret key management method
JPWO2021117406A1 (en) Usage right information processing device based on smart contract, usage right information processing system, and usage right information processing method
US10579984B2 (en) Method for making contactless transactions secure
KR102293775B1 (en) A mobile payment method for enhancing security of cloud-based payment system and the device therefor
JP6581611B2 (en) Authentication key sharing system and authentication key sharing method
JPWO2019244289A1 (en) Electronic lock system, electronic lock management method, and electronic lock management program
KR101711023B1 (en) Security device and method moving data using the same
CN115174114B (en) SSL tunnel establishment method, server side and client side
KR102288444B1 (en) Firmware updating method, apparatus and program of authentication module
KR102288445B1 (en) On-boarding method, apparatus and program of authentication module for organization
KR102145529B1 (en) Payment method using mobile application and device for the same
JP2019161405A (en) Authentication server device, and system and method for authentication
TWM552152U (en) Transaction authorization system and push server

Legal Events

Date Code Title Description
J201 Request for trial against refusal decision
J301 Trial decision

Free format text: TRIAL NUMBER: 2020101002963; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20201204

Effective date: 20210722

GRNO Decision to grant (after opposition)