KR101751887B1 - Method for generating one-time card code, approving card payment, reader and server thereof - Google Patents

Method for generating one-time card code, approving card payment, reader and server thereof Download PDF

Info

Publication number
KR101751887B1
KR101751887B1 KR1020150188562A KR20150188562A KR101751887B1 KR 101751887 B1 KR101751887 B1 KR 101751887B1 KR 1020150188562 A KR1020150188562 A KR 1020150188562A KR 20150188562 A KR20150188562 A KR 20150188562A KR 101751887 B1 KR101751887 B1 KR 101751887B1
Authority
KR
South Korea
Prior art keywords
card
code
settlement
payment
disposable
Prior art date
Application number
KR1020150188562A
Other languages
Korean (ko)
Inventor
김경민
김장원
김정환
이장혁
Original Assignee
한국정보통신주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국정보통신주식회사 filed Critical 한국정보통신주식회사
Priority to KR1020150188562A priority Critical patent/KR101751887B1/en
Application granted granted Critical
Publication of KR101751887B1 publication Critical patent/KR101751887B1/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/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/409Device specific authentication in transaction processing
    • 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/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/04Payment circuits
    • 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

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 발명은 일회용 카드 코드 생성 방법, 그를 이용한 카드 결제 승인 방법,카드 리더기 및 서버에 관한 것으로, 그 방법은 결제에 사용될 카드를 리딩하여 카드 번호를 획득하는 단계; 카드 리더기에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 단계; 및 생성된 랜덤 코드와 획득된 카드 번호를 이용하여 카드를 식별하기 위한 일회용 카드 코드를 생성하는 단계를 포함한다.The present invention relates to a method of generating a one-time card code, a card payment acceptance method using the same, a card reader and a server, and more particularly, to a card reader and a server. Generating a random code using a secret key and time information assigned to the card reader; And generating a one-time card code for identifying the card using the generated random code and the acquired card number.

Description

일회용 카드 코드 생성 방법, 그를 이용한 카드 결제 승인 방법, 카드 리더기 및 서버{Method for generating one-time card code, approving card payment, reader and server thereof} BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method of generating a one-time card code, a card payment method using the same, a card reader and a server,

본 발명은 결제 시스템에서 카드 리더를 이용하여 획득된 카드 번호를 이용하여 일회용 카드 코드를 생성하는 방법에 관한 것이다.The present invention relates to a method of generating a disposable card code using a card number obtained using a card reader in a payment system.

통상적으로, 카드 결제 단말기에는 카드의 마그네틱 스트립에 인코딩(Encoding)된 카드 정보를 리딩하기 위해 자기 스트립 리더(Magnetic stripe reader :MSR) 모듈이 구비된다. 이때, 자기 스트립 리더를 통해 리딩된 카드 정보는 아날로그 신호 형태로, 암호화되지 않은 평문 정보 상태이다.Typically, a card payment terminal is equipped with a magnetic stripe reader (MSR) module for reading the encoded card information on the magnetic strip of the card. At this time, the card information read through the magnetic strip reader is in the form of an analog signal and is in an unencrypted plaintext information state.

또한, 스마트카드라 불리는 IC 카드는 마이크로프로세서(microprocessor)와 메모리가 내장된 카드로서, 카드 내에서 정보의 저장과 처리가 가능해 마그네틱카드의 위변조 위험을 최소화하고 다양한 서비스를 제공할 수 있는 결제 수단이다. 기존의 마그네틱 카드에 비해 저장 용량이 월등하여 별도의 정보 저장이 요구되는 다양한 부가 기능을 수행할 수 있으며, 보안문제를 개선시킬 수 있다는 장점이 있다.In addition, an IC card called a smart card is a card having a microprocessor and a memory, and can store and process information in the card, thereby minimizing the risk of forgery and alteration of the magnetic card and providing a variety of services . The storage capacity is higher than that of the conventional magnetic card, so that it is possible to perform various additional functions requiring additional information storage, and the security problem can be improved.

IC 카드는 사용 방법에 따라서 접촉식과 비접촉식으로 나뉘기도 하는데, 카드 정면에 금속 패턴이 있는 것이 접촉식 IC 카드로 가장 일반적인 IC카드의 형태이며, 비접촉식 IC카드는 카드 안에 무선 통신이 가능한 모듈 및 안테나를 내장하여, 카드 결제 단말기에 구비된 IC 카드 리더기를 통해 카드 정보의 리딩이 가능하다.IC card is divided into contact type and non-contact type depending on the method of use. The contact type IC card is a type of IC card having a metal pattern on the front face of a card. The contactless type IC card includes a module and an antenna So that card information can be read through an IC card reader provided in the card payment terminal.

이러한 카드 결제 단말기가 온/오프 전용라인을 통하여 중계 서버 또는 VAN 사 서버와 연결되어 신용카드 결제 업무가 수행되는 것이 일반적이다. 이 경우, 결제에 사용되는 카드 번호 등의 개인 정보가 해킹 등에 의해 외부로 누출되어 악용되는 문제점이 있다.Such a card settlement terminal is generally connected to a relay server or a VAN company server through a dedicated on / off line to perform a credit card settlement service. In this case, there is a problem that personal information such as a card number used for payment is leaked to the outside by hacking or the like and is abused.

본 발명은 카드 번호 등에 대한 보안성을 향상시킬 수 있는 일회용 카드 코드 생성 방법, 그를 이용한 카드 결제 승인 방법, 카드 리더기 및 서버를 제공하는 것을 목적으로 한다.It is an object of the present invention to provide a method of generating a one-time card code capable of improving the security of a card number and the like, a card payment acceptance method using the same, a card reader and a server.

상기와 같은 과제를 해결하기 위한 본 발명의 일실시예에 따른 일회용 카드 코드 생성 방법은 카드 리더기에서 결제에 사용될 일회용 카드 코드를 생성하며, 결제에 사용될 카드를 리딩하여 카드 번호를 획득하는 단계; 상기 카드 리더기에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 단계; 및 상기 생성된 랜덤 코드와 상기 획득된 카드 번호를 이용하여, 상기 카드를 식별하기 위한 일회용 카드 코드를 생성하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of generating a one-time use card code, the method comprising: generating a disposable card code to be used for settlement in a card reader; reading a card to be used for settlement; Generating a random code using a secret key and time information assigned to the card reader; And generating a disposable card code for identifying the card using the generated random code and the acquired card number.

본 발명의 일실시예에 따른 카드 결제 승인 방법은 결제 서버에서 일회용 카드 코드를 이용하여 카드 결제를 승인하며, 일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치로부터 수신하는 단계; 상기 결제 단말 장치와 연결된 카드 리더기의 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 단계; 상기 생성된 랜덤 코드와 상기 승인 요청 전문으로부터 추출된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득하는 단계; 및 상기 획득된 카드 번호를 이용하여 카드 결제에 대한 승인을 처리하는 단계를 포함한다.The method of accepting a credit card according to an embodiment of the present invention includes the steps of: accepting a card settlement using a disposable card code in a settlement server; receiving an approval request text generated using a disposable card code from a settlement terminal; Generating a random code using a secret key and time information of a card reader connected to the payment terminal; Obtaining an actual card number to be used for settlement using the generated random code and the disposable card code extracted from the approval request telegram; And processing approval for card settlement using the obtained card number.

본 발명의 일실시예에 따른 카드 리더기는, 결제에 사용될 카드를 리딩하여 카드 번호를 획득하는 리더부; 상기 카드 리더기에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하고, 상기 생성된 랜덤 코드와 상기 획득된 카드 번호를 이용하여 상기 카드를 식별하기 위한 일회용 카드 코드를 생성하는 코드 생성부; 및 상기 생성된 일회용 카드 코드를 결제 단말 장치로 전송하는 인터페이스부를 포함한다.A card reader according to an embodiment of the present invention includes a reader unit for reading a card to be used for settlement and obtaining a card number; A code generator for generating a random code using the secret key and the time information given to the card reader and generating a disposable card code for identifying the card using the generated random code and the obtained card number; And an interface unit for transmitting the generated disposable card code to the payment terminal.

본 발명의 일실시예에 따른 결제 서버는, 일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치로부터 수신하는 통신부; 상기 결제 단말 장치와 연결된 카드 리더기의 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 코드 생성부; 상기 생성된 랜덤 코드와 상기 승인 요청 전문으로부터 추출된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득하는 카드번호 획득부; 및 상기 획득된 카드 번호를 이용하여 카드 결제에 대한 승인을 처리하는 승인 처리부 포함한다.The payment server according to an embodiment of the present invention includes a communication unit for receiving an approval request telegram generated using a disposable card code from a payment terminal device; A code generator for generating a random code using a secret key and time information of a card reader connected to the payment terminal; A card number obtaining unit for obtaining an actual card number to be used for settlement using the generated random code and the disposable card code extracted from the approval request text; And an approval processing unit for processing approval for card settlement using the obtained card number.

한편, 상기 일회용 카드 코드 생성 방법은 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.Meanwhile, the disposable card code generation method may be embodied as a computer-readable recording medium on which a program for execution by a computer is recorded.

본 발명의 일실시예에 따르면, 카드 리더기 고유의 비밀키와 카드 번호를 이용하여 카드 리더기에서 일회용 카드 코드를 생성하여 결제에 사용함으로써, 해킹 등으로 인한 카드 번호의 누출을 방지하여 보안성을 향상시킬 수 있다.According to an embodiment of the present invention, a one-time use card code is generated in a card reader by using a secret key and a card number unique to the card reader, and used for payment, thereby preventing leakage of a card number due to hacking, .

또한, 비밀키와 카드 번호를 이용하여 생성된 일회용 카드 코드는 시간 정보에 따라 랜덤성을 가짐과 동시에 해당 카드를 식별하기 위한 유일성이 보장될 수 있다.In addition, the disposable card code generated using the secret key and the card number has randomness according to the time information, and uniqueness for identifying the card can be assured.

도 1은 본 발명에 따른 결제 시스템의 구성에 대한 일실시예를 나타내는 블록도이다.
도 2는 본 발명의 일실시예에 따른 카드 리더기의 구성을 나타내는 블록도이다.
도 3은 본 발명의 일실시예에 따른 일회용 카드 코드 생성 방법을 나타내는 흐름도이다.
도 4는 결제 단말 장치에 저장되는 결제 승인 내역의 구성에 대한 일실시예를 나타내는 도면이다.
도 5는 본 발명의 일실시예에 따른 결제 서버의 구성을 나타내는 블록도이다.
도 6은 본 발명의 일실시예에 따른 카드 결제 승인 방법을 나타내는 흐름도이다.
도 7은 본 발명에 따른 결제 시스템의 구성에 대한 또 다른 실시예를 나타내는 블록도이다.
1 is a block diagram showing an embodiment of a billing system according to the present invention.
2 is a block diagram showing a configuration of a card reader according to an embodiment of the present invention.
3 is a flowchart illustrating a method of generating a disposable card code according to an embodiment of the present invention.
4 is a diagram showing an embodiment of a configuration of payment approval details stored in a payment terminal device.
5 is a block diagram illustrating a configuration of a payment server according to an embodiment of the present invention.
6 is a flowchart illustrating a card payment approval method according to an embodiment of the present invention.
FIG. 7 is a block diagram illustrating another embodiment of a billing system according to the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, which will be readily apparent to those skilled in the art. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In order to clearly illustrate the present invention, parts not related to the description are omitted, and similar parts are denoted by like reference characters throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is referred to as being "connected" to another part, it includes not only "directly connected" but also "electrically connected" with another part in between . Also, when a part is referred to as "including " an element, it does not exclude other elements unless specifically stated otherwise.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.In this specification, the term " part " includes a unit realized by hardware, a unit realized by software, and a unit realized by using both. Further, one unit may be implemented using two or more hardware, or two or more units may be implemented by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.In this specification, some of the operations or functions described as being performed by the terminal or the device may be performed in the server connected to the terminal or the device instead. Similarly, some of the operations or functions described as being performed by the server may also be performed on a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings.

도 1은 본 발명에 따른 결제 시스템의 구성에 대한 일실시예를 블록도로 도시한 것으로, 도시된 결제 시스템(10)은 카드 리더기(100), 결제 단말 장치(200) 및 결제 서버(200)를 포함하여 구성될 수 있다.FIG. 1 is a block diagram of a billing system according to an embodiment of the present invention. The billing system 10 includes a card reader 100, a payment terminal 200, and a payment server 200 And the like.

도 1을 참조하면, 카드 리더기(100)는 구매자의 카드로부터 카드 정보를 읽어들이기 위한 리더부(예를 들어, 마그네틱 리더, IC 카드 리더 또는 NFC 리더 등)를 포함하여, 결제에 사용될 카드로부터 카드 번호 등의 카드 정보를 획득하여 결제 단말 장치(200)로 제공한다.1, the card reader 100 includes a reader unit (for example, a magnetic reader, an IC card reader, or an NFC reader) for reading card information from a buyer's card, And supplies the acquired card information to the payment terminal device 200.

결제 단말 장치(200)가 구비된 가맹점에서 신용 카드 등을 이용한 카드 결제가 있는 경우, 결제 단말 장치(200)는 카드 리더기(100)로부터 수신된 카드 번호 등을 이용해 해당 카드 결제에 대한 승인 요청 전문을 생성하여 결제 서버(300)로 전송한다.In the case where a payment is made using a credit card or the like at an affiliated store equipped with the settlement terminal device 200, the settlement terminal device 200 transmits an approval request for the card settlement using the card number or the like received from the card reader 100 And transmits it to the payment server 300.

결제 단말 장치(200)는 유선 또는 무선 인터넷을 이용하여 결제 서버(300)와 통신 가능한 개인용 컴퓨터(PC), 휴대폰 또는 태블릿 등과 같은 장치일 수 있으나, 본 발명은 이에 한정되지 아니한다.The payment terminal device 200 may be a device such as a personal computer (PC), a mobile phone, a tablet, or the like capable of communicating with the payment server 300 using a wired or wireless Internet, but the present invention is not limited thereto.

본 발명의 일실시예에 따르면, 결제 단말 장치(200)는 상기한 바와 같은 기능 이외에 점포 판매 시스템과 결합되어 POS(Point Of Sales) 시스템의 형태로 구현되거나, 또는 무선 인터넷이나 공중전화망 등을 이용해 결제 서버(300)와 통신하는 CAT(Card Authorization Terminal)의 형태로 구현될 수 있다.According to one embodiment of the present invention, besides the functions described above, the payment terminal device 200 may be implemented in the form of a point-of-sale (POS) system in combination with a store sales system, or may be implemented using a wireless Internet or a public telephone network And may be implemented in the form of a CAT (Card Authorization Terminal) that communicates with the payment server 300.

이 경우, 카드 리더기(100)는 가맹점에 구비된 결제 단말 장치(200)에 포함되어 구성될 수 있다.In this case, the card reader 100 may be included in the payment terminal device 200 provided at the merchant.

또한, 결제 단말 장치(200)는 스마트폰과 같은 휴대용 단말기에 결제 처리를 위한 애플리케이션이 설치되어 구현될 수도 있으며, 이 경우 카드 리더기(100)는 휴대용 단말기의 오디오 잭 등을 통해 결제 단말 장치(200)와 연결될 수 있다.In addition, the payment terminal device 200 may be implemented by installing an application for payment processing in a portable terminal such as a smart phone. In this case, the card reader 100 may be connected to the payment terminal device 200 ).

도 1에서는, 결제 서버(300)를 편의상 하나의 서버 형태로 이루어지는 것으로 도시하여 본 발명의 기술적 특징으로 설명하고 있으나, 이에 의해 본 발명이 한정되는 것은 결코 아니며, 결제 서버(300)는 각 구성요소(또는 수단) 별로 두개 이상의 서버 군 형태로 실시되는 것이 가능하며, 본 발명은 상기 유추 가능한 모든 실시 방법을 포함하여 이루어지는 것을 특징으로 한다.In FIG. 1, the payment server 300 is illustrated as a single server type for convenience of description. However, the present invention is not limited thereto. (Or means) can be implemented in the form of two or more server groups, and the present invention is characterized by including all the methods that can be inferred.

예를 들어, 결제 서버(300)는 밴(VAN)사에서 운영하는 결제 대행 서버와 카드사에서 운영하는 카드사 서버를 포함하여 구성될 수 있으며, 결제 단말 장치(200)는 밴사의 망을 이용해 결제 대행 서버를 통하여 카드사 서버에서 카드 결제 승인을 받아 거래를 완성할 수 있다.For example, the payment server 300 may include a payment agency server operated by a van (VAN) company and a card company server operated by a card company, and the payment terminal device 200 may be a billing agency The transaction can be completed by accepting the card payment approval from the card company server through the server.

결제 단말 장치(200)와 밴사의 결제 대행 서버는 소정의 네트워크망(예컨대, 전화 인터넷 등)으로 연결되고 있고, 상기 밴사의 결제 대행 서버와 해당 신용카드사의 거래 승인 시스템인 카드사 서버는 전용 패킷망으로 연결되어 있을 수 있다.The billing terminal 200 and the billing agency server of the company are connected to each other through a predetermined network (for example, the telephone Internet). The billing agency server and the credit card company, which is a transaction approval system of the credit card company, Can be connected.

상기와 같은 결제 대행 서버는 결제 단말 장치(200)로부터 수신한 결제 승인 요청 전문을 카드사 서버로 전송하고, 해당 카드 결제를 승인한 카드사 서버로부터 승인 결과 전문을 수신한다.The settlement proxy server transmits the payment approval request received from the payment terminal 200 to the card company server and receives the approval result message from the card company server that has approved the card payment.

예를 들어, 결제 대행 서버는 카드 결제 승인 요청을 위해, 상기 승인 요청 전문 내의 이용자 정보에 수록된 신용카드사 정보를 독출하여 해당 신용카드사의 카드사 서버로 거래 승인 요구와 관련된 데이터를 전송할 수 있다.For example, the payment agency server may read the credit card company information included in the user information in the approval request text and transmit data related to the transaction approval request to the card company server of the credit card company in order to request the card payment approval.

상기 거래 승인 요구와 관련된 데이터를 수신한 카드사 서버는 거래 승인 요구와 관련된 데이터에 포함된 이용자정보, 상품주문정보, 결제금액, 가맹점정보를 각각 자사의 회원자료 또는 가맹점 자료와 비교하여 신용카드 이용자와 가맹점간에 발생되는 거래가 타당한지를 확인한다.Upon receiving the data related to the transaction approval request, the card company server compares the user information, the product order information, the payment amount, and the merchant information included in the data related to the transaction approval request with its member data or merchant data, Confirm whether the transaction between merchants is valid.

한편, 카드사 서버는 상기 거래 승인 요구에 대한 거래 승인 결과를 결제 승인 요청을 중계한 밴사의 결제 대행 서버로 전송하며, 결제 대행 서버는 승인번호 데이터를 저장한 후 해당 가맹점의 결제 단말 장치(200)로 전송할 수 있다.On the other hand, the card company server transmits the transaction approval result for the transaction approval request to the payment agent server of the relaying agency of the payment approval request. The payment agent server stores the authorization number data, Lt; / RTI >

그러면, 결제 대행 서버는 상기 승인 결과 전문을 결제 단말 장치(200)로 전송하고, 상기 승인 결과 전문을 정상적으로 수신한 결제 단말 장치(200)는 확인(ACK) 메시지를 결제 대행 서버로 전송할 수 있다.Then, the payment agent server transmits the approval result message to the payment terminal device 200, and the payment terminal device 200 that normally receives the approval result message can transmit an acknowledgment (ACK) message to the payment agent server.

한편, 결제 단말 장치(200)로부터 상기 확인 메시지를 정상적으로 수신한 결제 대행 서버는, 결제 단말 장치(200)로 상기 확인 메시지가 정상적으로 수신되었음을 알리는 완료 메시지를 전송할 수 있다.On the other hand, the payment agent server that has normally received the confirmation message from the payment terminal device 200 may transmit a completion message to the payment terminal device 200 to notify that the confirmation message is normally received.

그 후, 상기한 절차에 따라 완료 메시지를 정상적으로 수신한 결제 단말 장치(200)는 해당 결제 승인에 따른 매출 전표를 출력할 수 있다.Thereafter, the settlement terminal device 200 that has normally received the completion message according to the above-described procedure can output the sales slip according to the payment approval.

상기한 바와 같은 카드 결제 승인 과정에서, 카드 리더기(100)는 보안을 위해 카드를 리딩하여 획득한 카드 정보 중 적어도 일부, 예를 들어 카드 번호를 소정의 암호화키로 암호화하여 결제 단말 장치(200)로 전달하고, 결제 단말 장치(200)는 상기 암호화된 카드 번호를 포함하는 결제 승인 요청 전문을 결제 서버(300)로 전송할 수 있다.The card reader 100 encrypts at least a part of the acquired card information, for example, the card number, with a predetermined encryption key by reading the card for security purposes, and transmits the encrypted card information to the payment terminal device 200 And the payment terminal device 200 can transmit the payment approval request message including the encrypted card number to the payment server 300. [

결제 서버(300)는 상기 결제 단말 장치(200)로부터 수신된 결제 승인 요청 전문으로부터 암호화된 카드 번호를 추출하고, 상기 추출된 암호화된 카드 번호를 복호화하여 해당 결제에 대한 승인을 처리할 수 있다.The payment server 300 can extract the encrypted card number from the payment approval request message received from the payment terminal 200 and decrypt the extracted card number to process approval for the payment.

본 발명의 일실시예에 따르면, 카드 리더기(100)가 고유의 비밀키와 카드 번호를 이용하여 일회용 카드 코드를 생성하여 실제 카드 번호가 아닌 가상의 일회용 카드 코드가 카드 결제에 사용되도록 함으로써, 카드 리더기(100)와 결제 단말 장치(200) 사이 또는 결제 단말 장치(200)와 결제 서버(300) 사이의 통신에서 해킹 등으로 인한 카드 번호의 누출을 방지하여 보안성을 향상시킬 수 있다.According to one embodiment of the present invention, the card reader 100 generates a one-time card code using a unique secret key and a card number, and allows a virtual one-time card code other than the actual card number to be used for card settlement, It is possible to prevent leakage of a card number due to hacking or the like in communication between the reader 100 and the settlement terminal 200 or between the settlement terminal 200 and the settlement server 300 to improve security.

도 2는 본 발명의 일실시예에 따른 카드 리더기의 구성을 블록도로 도시한 것으로, 도시된 카드 리더기(100)는 리더부(110), 코드 생성부(120) 및 인터페이스부(130)를 포함할 수 있다.2 is a block diagram illustrating a configuration of a card reader according to an exemplary embodiment of the present invention. The card reader 100 includes a reader 110, a code generator 120, and an interface 130 can do.

도 2를 참조하면, 리더부(110)는 결제에 사용될 카드를 리딩하여 카드 번호를 획득할 수 있다.Referring to FIG. 2, the reader unit 110 may acquire a card number by reading a card to be used for settlement.

코드 생성부(120)는 카드 리더기(100)에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하고, 상기 생성된 랜덤 코드와 리더부(110)를 통해 획득된 카드 번호를 이용하여 해당 카드를 식별하기 위한 일회용 카드 코드를 생성할 수 있다.The code generator 120 generates a random code using the secret key and the time information provided to the card reader 100 and generates a random code using the generated random code and the card number obtained through the reader 110 It is possible to generate a one-time card code for identifying the card.

여기서, 상기 비밀키는 랜덤 코드의 생성을 위해 결제 서버(300)가 카드 리더기(100)에 부여한 것으로, 카드 리더기(100)의 제조 시에 부여되어 메모리(140)에 저장되어 있거나 또는 카드 리더기(100)가 결제 단말 장치(200)에 연결되어 사용을 위한 최초 등록 시에 결제 서버(300)로부터 수신된 후 메모리(140)에 저장된 것일 수 있다.Here, the secret key is given to the card reader 100 by the payment server 300 for the generation of a random code, and is stored in the memory 140 when the card reader 100 is manufactured, 100 may be connected to the settlement terminal 200 and stored in the memory 140 after being received from the payment server 300 at the time of initial registration for use.

한편, 인터페이스부(130)는 상기 코드 생성부(120)에서 생성된 일회용 카드 코드를 결제 단말 장치(200)로 전송할 수 있다.Meanwhile, the interface unit 130 may transmit the disposable card code generated by the code generation unit 120 to the payment terminal apparatus 200. [

도 3은 본 발명의 일실시예에 따른 일회용 카드 코드 생성 방법을 흐름도로 도시한 것으로, 도 2에 도시된 바와 같은 구성을 가지는 카드 리더기(100)에서 일회용 카드 코드를 생성하는 방법을 나타낸 것이다.FIG. 3 is a flowchart illustrating a method of generating a disposable card code according to an exemplary embodiment of the present invention. Referring to FIG. 3, a method of generating a disposable card code in a card reader 100 having a configuration as shown in FIG.

도 3을 참조하면, 카드 리더기(100)의 리더부(110)는 결제에 사용될 카드를 리딩하여 카드 번호를 획득하고(S300 단계), 코드 생성부(120)는 카드 리더기(100)에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성한다(S310 단계).3, the reader unit 110 of the card reader 100 reads a card to be used for settlement to acquire a card number (step S300), and the code generation unit 120 reads the card number The random code is generated using the secret key and the time information (step S310).

예를 들어, 코드 생성부(181)는 카드 리더기(100)에 부여된 비밀키와 현재 시간에 대응되는 시간 정보를 이용하여 랜덤 코드를 생성하며, 상기 랜덤 코드는 시간에 따라 상이한 값을 가지는 일회용 패스워드(OTP, One Time Password)와 유사한 방식으로 생성될 수 있다.For example, the code generator 181 generates a random code using a secret key given to the card reader 100 and time information corresponding to the current time, and the random code is a disposable May be generated in a manner similar to a password (OTP, One Time Password).

상기 시간 정보는 상기 랜덤 코드가 생성되는 시점에 대응되는 현재 시간으로 설정되거나, 또는 미리 설정된 시간 단위로 변경되는 정보일 수도 있다. 예를 들어, 상기 시간 정보가 1분 단위로 변경되는 경우, 동일한 단말 장치에서 생성되는 랜덤 코드는 현재 시간을 기준으로 1분 마다 랜덤하게 변경될 수 있다.The time information may be set to a current time corresponding to a time point at which the random code is generated, or may be information that is changed in a predetermined time unit. For example, when the time information is changed in units of one minute, the random code generated in the same terminal device may be changed randomly every minute based on the current time.

상기 비밀키는 상기 S310 단계 이전에 이미 결제 서버(300)로부터 수신되어 메모리(140)에 저장되어 있을 수 있다.The secret key may be received from the payment server 300 and stored in the memory 140 before step S310.

한편, 상기 S310 단계 이전에 상기 랜덤 코드를 생성하기 위한 카드 리더기(100) 고유의 비밀키가 메모리(140)에 저장되어 있지 않은 경우, 카드 리더기(100)는 결제 단말 장치(200)를 통해 결제 서버(300)로 비밀키의 부여를 요청하여 수신할 수 있다.If the secret key unique to the card reader 100 for generating the random code is not stored in the memory 140 before the step S310, the card reader 100 transmits the random code to the payment terminal 200 through the settlement terminal 200 The server 300 can request and receive the grant of the secret key.

코드 생성부(120)는 상기 S310 단계에서 생성한 랜덤 코드와 상기 S300 단계에서 획득된 카드 번호를 이용하여, 해당 카드를 식별하기 위한 일회용 카드 코드를 생성한다(S320 단계).The code generating unit 120 generates a one-time card code for identifying the card using the random code generated in step S310 and the card number obtained in step S300 (step S320).

예를 들어, 카드 리더기(100)는 랜덤 코드를 생성하기 위한 고유의 비밀키 이외에 일회용 카드 코드를 매핑(mapping) 하기 위한 문자 세트를 더 획득할 수 있다.For example, the card reader 100 may obtain a character set for mapping the disposable card code in addition to the unique secret key for generating the random code.

이 경우, 코드 생성부(120)는 상기 S310 단계에서 생성한 랜덤 코드와 카드 번호의 합산 결과를 상기 문자 세트에 매핑하여 제1 서브 코드를 생성하고, 상기 랜덤 코드를 상기 문자 세트에 매핑하여 제2 서브 코드를 생성하며, 상기 제1 서버 코드와 제2 서브 코드를 이용하여 일회용 카드 코드를 생성할 수 있다.In this case, the code generation unit 120 generates the first sub-code by mapping the sum of the random number and the card number generated in step S310 to the character set, maps the random code to the character set, 2 subcode, and generate the disposable card code using the first server code and the second subcode.

좀 더 구체적으로, 코드 생성부(120)는 카드 번호를 랜덤 코드와 합산한 결과를 문자 세트에 매핑하여 제1 서브 코드를 생성할 수 있다.More specifically, the code generation unit 120 may generate the first sub-code by mapping the result obtained by adding the card number to the random code to the character set.

또는, 코드 생성부(120)는 상기 카드 번호와 랜덤 코드의 합산 결과에 대하여 문자 세트의 크기로 모드(mod) 연산을 수행하고, 상기 모드 연산 수행 결과를 문자 세트에 매핑하여 상기 제1 서브 코드를 생성할 수도 있다.Alternatively, the code generation unit 120 may perform a mode operation on the result of summing up the card number and the random code with the size of the character set, map the result of the mode operation to a character set, May be generated.

또한, 코드 생성부(120)는 상기 카드 번호와 랜덤 코드의 합산 결과에 기설정된 오프셋을 적용하고, 상기 오프셋 적용된 합산 결과를 문자 세트에 매핑하여 상기 제1 서브 코드를 생성할 수도 있다.Also, the code generator 120 may generate a first subcode by applying a preset offset to the sum of the card number and the random code, and mapping the result of applying the offset to the character set.

그리고 코드 생성부(120)는 상기 오프셋 적용된 합산 결과에 대하여 문자 세트의 크기로 모드(mod) 연산을 수행하고, 상기 합산 결과에 대한 모드 연산 수행 결과를 문자 세트에 매핑하여 상기 제1 서브 코드를 생성할 수도 있다.Then, the code generator 120 performs a mode operation on the result of the summing applied with the offset to the size of the character set, maps the result of the mode operation on the result of the mode operation to the character set, .

코드 생성부(120)는 랜덤 코드에 기설정된 오프셋을 적용하고, 오프셋 적용된 랜덤 코드를 문자 세트에 매핑하여 상기 제2 서브 코드를 생성할 수 있다.The code generation unit 120 may apply the preset offset to the random code and generate the second subcode by mapping the offset applied random code to the character set.

또는, 코드 생성부(120)는 상기 오프셋 적용된 랜덤 코드에 대하여 문자 세트의 크기로 모드(mod) 연산을 수행하고, 상기 모드 연산 수행 결과를 문자 세트에 매핑하여 상기 제2 서브 코드를 생성할 수도 있다.Alternatively, the code generating unit 120 may perform a mode operation on the size of the character set with respect to the offset-applied random code, and may generate the second sub-code by mapping the result of the mode operation on the character set have.

코드 생성부(120)는 기본 문자 세트를 획득하고, 상기 기본 문자 세트의 원소를 셔플링(shuffling)하여 상기 문자 세트를 획득할 수 있다.The code generation unit 120 may acquire a basic character set and obtain the character set by shuffling the elements of the basic character set.

상기 비밀키는 모든 카드 리더들에 동일할 수도 있으며, 이 경우 비밀키를 이용하여 생성된 랜덤 코드에 대한 기본 문자 세트의 원소의 개수의 모드(mod) 연산 결과를 이용하여 기본 문자 세트의 각 자리 원소를 다른 자리의 원소와 스와핑(swapping)할 수도 있다.The secret key may be the same for all card readers. In this case, the random number generated by using the secret key may be calculated by using the mode calculation result of the number of elements of the basic character set, You can also swap an element with another element.

이하, 비밀키와 시간 정보를 이용하여 생성된 랜덤 코드가 "3829012354284164" 이고, 카드 번호가 "1234-5678-9012-3456"이며, 문자 세트가 { '0', '1', '2', …, '9', ,'A', 'B', …, 'Z' }인 경우를 예로 들어, 상기 일회용 카드 코드를 생성하는 방법에 대한 일실시예를 설명하기로 한다.Hereinafter, the random code generated using the secret key and time information is "3829012354284164 ", the card number is " 1234-5678-9012-3456 ", and the character set is {0, ... , '9', 'A', 'B', ... , 'Z'} will be described as an example of a method of generating the disposable card code according to an embodiment of the present invention.

먼저, 카드 번호 "1234-5678-9012-3456"는 {1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6}의 숫자 코드로 변환될 수 있다.First, the card number "1234-5678-9012-3456" is a numeric code of {1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6} Lt; / RTI >

그 후, 랜덤 코드인 {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4}와 상기 카드 번호가 변환된 숫자 코드인 {1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6}를 합산하면 {4,10,5,13,5,7,9,11,14,4,3,10,7,5,11,10}가 된다. 여기서, 합산 결과 중 문자 세트의 원소의 총 개수인 36을 초과하는 숫자는 36으로 모드 연산을 수행한 결과로 치환된 수 있다.Thereafter, the random code {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4} and the numeric code of which the card number is converted { 1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6}, the sum of {4,10,5,13,5,7,9, 11, 14, 4, 3, 10, 7, 5, 11, 10}. Here, a number exceeding 36, which is the total number of elements of the character set in the sum result, may be replaced with a result of performing mode operation by 36.

상기 합산 결과인 {4,10,5,13,5,7,9,11,14,4,3,10,7,5,11,10}을 문자 세트에 매핑하여 "4A5D579BE43A75BA"의 제1 서브 코드가 획득될 수 있다.4, 10, 5, 11, 14, 4, 3, 10, 7, 11, 10} as the sum result is mapped to the character set to generate the first sub-data of "4A5D579BE43A75BA" The code can be obtained.

또한, 랜덤 코드인 {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4}에 의해 "3829012354284164"의 제2 서브 코드를 획득되며, 상기와 같이 획득된 제1 서브 코드와 제2 서브 코드를 연결하여 "4A5D579BE43A75BA3829012354284164"의 일회용 카드 코드가 생성될 수 있다.Further, the second subcode of "3829012354284164" is acquired by the random code {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4} And the disposable card code of "4A5D579BE43A75BA3829012354284164" may be generated by connecting the first subcode and the second subcode obtained as described above.

본 발명의 또 다른 실시예에 따르면, 상기 제1 서브 코드, 예를 들어 "4A5D579BE43A75BA"가 일회용 카드 코드로 사용될 수도 있다.According to another embodiment of the present invention, the first subcode, for example "4A5D579BE43A75BA" may be used as a disposable card code.

상기와 같이 카드 리더기(100)에 부여된 비밀키와 카드 번호를 이용하여 생성된 일회용 카드 코드는 시간 정보에 따라 랜덤성을 가짐과 동시에, 해당 카드를 식별하기 위한 유일성이 보장될 수 있다.As described above, the disposable card code generated using the secret key and the card number assigned to the card reader 100 has randomness according to the time information, and uniqueness for identifying the card can be assured.

그 후, 인터페이스부(130)는 상기 S320 단계에서 생성된 일회용 카드 코드를 결제 단말 장치(200)로 전송한다(S330 단계).Thereafter, the interface unit 130 transmits the disposable card code generated in step S320 to the payment terminal 200 (step S330).

이 경우, 결제 단말 장치(200)는 상기 카드 리더기(100)로부터 전송받은 일회용 카드 코드를 이용해 승인 요청 전문을 생성하여 결제 서버(300)로 전송할 수 있다.In this case, the payment terminal device 200 can generate an approval request message using the disposable card code transmitted from the card reader 100, and transmit the approval request message to the payment server 300.

결제 서버(300)로부터 해당 결제를 승인하는 승인 결과 전문이 수신되는 경우, 도 4에 도시된 바와 같이, 결제 단말 장치(200)는 결제 일시와 금액 및 승인 번호 등을 포함하는 결제 승인 내역을 상기 일회용 카드 코드와 함께 저장하여 거래 내역들을 관리할 수 있다.4, the settlement terminal device 200 transmits a settlement approval history including a settlement date and time, an amount and an approval number, etc. to the settlement server 300, You can manage transaction details by storing them together with the disposable card code.

상기와 같이 저장된 일회용 카드 코드는 추후 정산 및 결제 승인 취소 등에 이용될 수 있다.The stored disposable card code can be used for later settlement and cancellation of payment approval.

상기한 바와 같이, 결제 단말 장치(200)에 실제 카드 번호가 아닌 가상의 일회용 카드 코드가 저장되어 그를 이용해 거래 내역이 관리됨에 따라, 결제 단말 장치(200)에 대한 해킹 등으로 인해 카드 번호가 누출되는 것을 방지할 수 있다.As described above, since a virtual one-time card code other than the actual card number is stored in the settlement terminal device 200 and the transaction details are managed using the same, the card number is leaked due to hacking or the like to the settlement terminal device 200 Can be prevented.

도 5는 본 발명의 일실시예에 따른 결제 서버의 구성을 블록도로 도시한 것으로, 도시된 결제 서버(00)는 통신부(310), 코드 생성부(320), 카드번호 획득부(330), 승인 처리부(340), 제어부(350) 및 메모리(360)를 포함할 수 있다.5 is a block diagram illustrating a configuration of a payment server according to an exemplary embodiment of the present invention. The payment server 00 includes a communication unit 310, a code generation unit 320, a card number acquisition unit 330, An approval processing unit 340, a control unit 350, and a memory 360. [

도 5를 참조하면, 결제 서버(300)의 통신부(310)는 일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치(200)로부터 수신할 수 있다.Referring to FIG. 5, the communication unit 310 of the payment server 300 may receive the approval request text generated using the disposable card code from the payment terminal 200.

코드 생성부(320)는 결제 단말 장치(200)와 연결된 카드 리더기(100)의 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성할 수 있다.The code generator 320 may generate a random code using the secret key and time information of the card reader 100 connected to the payment terminal 200. [

여기서, 결제 서버(300)의 메모리(360)에는 상기 카드 리더기(100)를 포함하는 복수의 카드 리더기들 각각에 부여된 비밀키들이 저장되어 있을 수 있다.Here, the memory 360 of the payment server 300 may store secret keys assigned to each of a plurality of card readers including the card reader 100.

제어부(320)는 결제 단말 장치(200)로부터 수신된 승인 요청 전문으로부터 카드 리더기(100)에 대한 식별 정보를 추출할 수 있으며, 상기 추출된 카드 리더기 식별 정보를 이용하여 카드 리더기(100)에 부여된 비밀키를 메모리(360)로부터 읽어들여 상기 코드 생성부(320)로 전달할 수 있다.The control unit 320 can extract the identification information for the card reader 100 from the approval request text received from the payment terminal 200 and provide the card reader 100 with identification information using the extracted card reader identification information From the memory 360 and transmits the read secret key to the code generation unit 320.

또는, 제어부(320)가 상기 승인 요청 전문으로부터 결제 단말 장치(200)에 대한 식별 정보를 추출할 수도 있으며, 이 경우 상기 추출된 결제 단말 장치 식별 정보를 이용하여 그에 연결된 카드 리더기(100)의 비밀키를 메모리(360)로부터 읽어들여 상기 코드 생성부(320)로 전달할 수 있다.Alternatively, the control unit 320 may extract the identification information for the payment terminal 200 from the approval request telegram. In this case, the secret information of the card reader 100 connected to the payment terminal using the extracted payment terminal identification information may be extracted Key from the memory 360 and transmit the read key to the code generation unit 320.

카드번호 획득부(330)는 상기 코드 생성부(320)에서 생성된 랜덤 코드와 상기 승인 요청 전문으로부터 추출된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득할 수 있다.The card number obtaining unit 330 may obtain the actual card number to be used for settlement using the random code generated by the code generating unit 320 and the disposable card code extracted from the approval request message.

그를 위해, 제어부(350)는 결제 단말 장치(200)로부터 수신된 승인 요청 전문으로부터 일회용 카드 코드를 추출하여 상기 카드번호 획득부(330)로 전달할 수 있다.For this purpose, the control unit 350 may extract the disposable card code from the authorization request text received from the payment terminal 200 and transmit the extracted disposable card code to the card number acquisition unit 330.

한편, 승인 처리부(340)는 상기 카드번호 획득부(330)를 통해 획득된 카드 번호를 이용하여 해당 카드 결제에 대한 승인을 처리할 수 있다.On the other hand, the approval processing unit 340 can process approval for the card settlement using the card number acquired through the card number acquisition unit 330. [

도 6은 본 발명의 일실시예에 따른 카드 결제 승인 방법을 흐름도로 도시한 것으로, 도 5에 도시된 바와 같은 구성을 가지는 결제 서버(300)에서 일회용 카드 코드를 이용하여 결제 승인을 처리하는 방법을 나타낸 것이다.FIG. 6 is a flowchart illustrating a card settlement approval method according to an embodiment of the present invention. In FIG. 6, a payment server 300 having a configuration as shown in FIG. 5 processes a settlement approval using a disposable card code Lt; / RTI >

도 6을 참조하면, 결제 서버(300)의 통신부(310)는 일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치(200)로부터 수신한다.Referring to FIG. 6, the communication unit 310 of the payment server 300 receives from the payment terminal 200 an approval request text generated using the disposable card code.

상기 일회용 카드 코드는, 도 1 내지 도 3을 참조하여 설명한 바와 같이, 카드 리더기(100) 고유의 비밀키와 카드 번호를 이용하여 카드 리더기(100)에서 생성된 것일 수 있다.The disposable card code may be generated by the card reader 100 using the secret key and card number unique to the card reader 100, as described with reference to FIGS.

코드 생성부(320)는 카드 리더기(100)에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성한다(S610 단계).The code generator 320 generates a random code using the secret key and time information provided to the card reader 100 (step S610).

상기한 바와 같이, 비밀키는 랜덤 코드의 생성을 위해 카드 리더기(100)에 부여되는 것으로, 카드 리더기(100)의 제조 시 또는 최초 등록시에 결제 서버(300)로부터 수신되어 메모리(140)에 저장되거나, 또는 그 이후라도 필요 시에 결제 서버(300)로부터 수신될 수 있다.As described above, the secret key is given to the card reader 100 for the generation of the random code. The secret key is received from the payment server 300 at the time of manufacture or at the time of initial registration of the card reader 100 and stored in the memory 140 Or may be received from the payment server 300, if necessary, after that.

한편, 상기 코드 생성부(320)가 랜덤 코드를 생성하는 방법은 카드 리더기(100)의 코드 생성부(120)가 랜덤 코드를 생성하는 방법과 동일하며, 그에 따라 카드 리더기(100)와 결제 서버(300)에서 랜덤 코드 생성에 사용하는 시간 정보가 동일한 경우 상기 생성되는 랜덤 코드도 동일하게 된다.The method for generating the random code by the code generating unit 320 is the same as the method for generating the random code by the code generating unit 120 of the card reader 100, If the time information used for random code generation is the same in the random code generation unit 300, the generated random code is also the same.

상기 시간 정보는 상기 랜덤 코드가 생성되는 시점에 대응되는 현재 시간으로 설정되거나, 또는 미리 설정된 시간 단위로 변경되는 정보일 수도 있다. 예를 들어, 상기 시간 정보가 1분 단위로 변경되는 경우, 동일한 카드 리더기(100)에서 생성되는 랜덤 코드는 현재 시간을 기준으로 1분 마다 랜덤하게 변경될 수 있다.The time information may be set to a current time corresponding to a time point at which the random code is generated, or may be information that is changed in a predetermined time unit. For example, when the time information is changed in units of one minute, the random code generated in the same card reader 100 may be changed randomly every minute based on the current time.

또는, 카드 리더기(100)가 랜덤 코드 생성에 사용한 시간 정보를 결제 단말 장치(200)를 통해 결제 서버(300)로 전송하고, 결제 서버(300)의 코드 생성부(320)가 결제 단말 장치(200)로부터 수신된 시간 정보를 이용하여 랜덤 코드를 생성함으로써, 카드 리더기(100)와 결제 서버(300)에서 각각 생성되는 랜덤 코드가 서로 동일할 수 있다.Alternatively, the time information used by the card reader 100 to generate the random code may be transmitted to the payment server 300 through the payment terminal device 200, and the code generation unit 320 of the payment server 300 may transmit the time information, The random codes generated by the card reader 100 and the payment server 300 may be identical to each other by generating the random code using the time information received from the payment server 200. [

그 후, 카드번호 획득부(330)는 상기 S610 단계에서 생성된 랜덤 코드와 결제 단말 장치(200)로부터 전달된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득한다(S620 단계).Thereafter, the card number obtaining unit 330 obtains the actual card number to be used for payment using the random code generated in step S610 and the disposable card code transmitted from the payment terminal 200 (step S620).

예를 들어, 상기 코드 생성부(230)는 카드 리더기(100)의 코드 생성부(120)가 랜덤 코드와 카드 번호를 이용해 일회용 카드 코드를 생성하는 방법을 역으로 수행함에 의해, 랜덤 코드와 일회용 카드 코드를 이용하여 실제 카드 번호를 구할 수 있다.For example, the code generation unit 230 reversely performs the method of generating the one-time card code using the random code and the card number by the code generation unit 120 of the card reader 100, The actual card number can be obtained using the card code.

이하, 상기 S610 단계에서 생성된 랜덤 코드가 {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4}이고, 승인 요청 전문으로부터 추출된 일회용 카드 코드가 "4A5D579BE43A75BA3829012354284164"이며, 카드 리더기(100)와 공유한 문자 세트가 { '0', '1', '2', …, '9', ,'A', 'B', …, 'Z' }인 경우를 예로 들어, 결제 서버(300)의 카드번호 획득부(330)가 실제 카드 번호를 획득하는 방법에 대한 일실시예를 설명하기로 한다.Hereinafter, it is assumed that the random code generated in step S610 is {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4} The extracted one-time card code is " 4A5D579BE43A75BA3829012354284164 ", and the character set shared with the card reader 100 is {0, 1, 2, ... , '9', 'A', 'B', ... , 'Z'} will be described as an example of a method in which the card number obtaining unit 330 of the payment server 300 obtains the actual card number.

먼저, 일회용 카드 코드인 "4A5D579BE43A75BA3829012354284164" 중 앞의 16 자리인 제1 서브 코드 "4A5D579BE43A75BA"를 확인하고, 상기 제1 서브 코드인 "4A5D579BE43A75BA"와 랜덤 코드인 {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4}를 이용하여 카드 번호를 구할 수 있다.First, the first subcode "4A5D579BE43A75BA" which is the first 16 digits of the disposable card code "4A5D579BE43A75BA3829012354284164" is checked, and the first subcode "4A5D579BE43A75BA" and the random code {3,8,2,9,0, 2, 3, 5, 4, 2, 8, 4, 1, 6, 4}.

구체적으로, 상기 제1 서브 코드인 "4A5D579BE43A75BA"를 문자 세트인 { '0', '1', '2', …, '9', ,'A', 'B', …, 'Z' }와 매칭하여 숫자 코드로 변환하면, {4,10,5,13,5,7,9,11,14,4,3,10,7,5,11,10}가 된다.Specifically, the first subcode "4A5D579BE43A75BA" is set as a character set {'0', '1', '2', ... , '9', 'A', 'B', ... , 'Z'} and converted into a numeric code, it becomes {4,10,5,13,5,7,9,11,14,4,3,10,7,5,11,10}.

그 후, 상기 숫자 코드로 변환된 제1 서브 코드인 {4,10,5,13,5,7,9,11,14,4,3,10,7,5,11,10}에서 랜덤 코드인 {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4}를 빼면 {1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6}의 숫자 코드가 나오며, 상기 숫자 코드에 대응되는 "1234-5678-9012-3456"이 실제 카드 번호가 된다.Then, in the first subcode {4, 10, 5, 13, 5, 7, 9, 11, 14, 4, 3, 10, 7, 5, 11, 10} Subtracting {3,8,2,9,0,1,2,3,5,4,2,8,4,1,6,4} in {1,2,3,4,5,6,7 , 8, 9, 0, 1, 2, 3, 4, 5, 6}, and "1234-5678-9012-3456" corresponding to the numeric code is the actual card number.

위와 같은 경우에 있어서, 상기 랜덤 코드를 생성하는 S610 단계가 생략되고, 제어부(350)는 일회용 카드 코드인 "4A5D579BE43A75BA3829012354284164" 중 뒤의 16자리가 랜덤 코드를 나타내는 것으로 확인할 수 있다.In the above case, the step S610 of generating the random code is omitted, and the control unit 350 can confirm that the last 16 digits of the disposable card code "4A5D579BE43A75BA3829012354284164" represents a random code.

한편, 승인 요청 전문으로부터 추출된 일회용 카드 코드가 "4A5D579BE43A75BA"의 16 자리로 구성된 경우, 상기 S610 단계를 통해 먼저 랜덤 코드가 생성되고, 상기 생성된 랜덤 코드와 일회용 카드 코드를 이용하여 상기한 바와 같은 과정을 통해 실제 카드 번호인 "1234-5678-9012-3456"이 획득될 수 있다.On the other hand, if the one-time card code extracted from the approval request text is composed of 16 digits of "4A5D579BE43A75BA ", a random code is first generated in step S610, and the generated random code and the one- The actual card number "1234-5678-9012-3456" can be obtained through the process.

그 후, 승인 처리부(340)는 상기 S620 단계에서 획득된 카드 번호를 이용하여 해당 카드 결제에 대한 승인을 처리한다(S630 단계).Thereafter, the approval processing unit 340 processes approval of the card settlement using the card number obtained in step S620 (step S630).

제어부(350)는 상기 S630 단계에서의 승인 처리 결과를 나타내는 승인 결과 전문이 통신부(310)를 통해 결제 단말 장치(200)로 전송되도록 하며, 상기 일회용 카드 코드 및 상기 획득된 카드 번호와 함께 결제 일시와 금액 및 승인 번호를 포함하는 결제 승인 내역이 데이터베이스(미도시)에 저장되도록 처리할 수 있다.The control unit 350 causes the payment unit terminal 200 to transmit the approval result message indicating the approval process result in the step S630 to the payment terminal 200 through the communication unit 310. The control unit 350 transmits the disposable card code and the obtained card number together with the settlement date and time And the settlement approval details including the amount and the approval number are stored in the database (not shown).

도 7은 본 발명에 따른 결제 시스템의 구성에 대한 또 다른 실시예를 블록도로 도시한 것으로, 도시된 결제 시스템의 구성 및 동작 중 도 1 내지 도 6을 참조하여 설명한 것과 동일한 것에 대한 설명은 이하 생략하기로 한다.FIG. 7 is a block diagram illustrating another embodiment of the billing system according to the present invention. The description of the configuration and operations of the billing system shown in FIG. 7 that are the same as those described with reference to FIG. 1 to FIG. .

도 7을 참조하면, 가맹점 측에는 카드 리더기(100), 가맹점에 배치된 결제 단말 장치인 POS(210) 및 가맹점 서버(230)가 구비되어 있을 수 있다.Referring to FIG. 7, a card reader 100, a POS terminal 210, and a merchant server 230 may be provided on the merchant side.

이 경우, 도 4를 참조하여 설명한 바와 같은 결제 승인 내역은 POS(210) 내부 메모리에 저장되거나, 또는 해당 가맹점의 결제 승인 내역 및 정산 등의 관리를 위한 가맹점 서버(230)에 구비 또는 연결된 데이터베이스(DB, 231)에 저장될 수 있다.In this case, the settlement approval details as described with reference to FIG. 4 may be stored in the internal memory of the POS 210, or may be stored in a database (not shown) provided in or linked to the merchant server 230 for management such as settlement approval details and settlement of the merchant DB, 231).

상기한 바와 같이, 카드 리더기(100)는 고유의 비밀키와 카드 번호를 이용하여 생성된 일회용 카드 코드를 POS(210)로 전송하고, POS(210)는 상기 일회용 카드 코드를 포함하는 결제 승인 요청 전문을 생성해 결제 대행 서버(310)로 전송하며, 결제 대행 서버(310)는 상기 승인 요청 전문을 카드사 서버(320)로 전달할 수 있다.As described above, the card reader 100 transmits the one-time card code generated using the unique secret key and the card number to the POS 210, and the POS 210 transmits the one- And transmits it to the settlement agency server 310. The settlement agency server 310 can transmit the approval request message to the card company server 320. [

카드사 서버(320)는 상기 승인 요청 전문으로부터 일회용 카드 코드를 추출하여 그를 이용해 실제 카드 번호를 획득하고, 해당 결제에 대한 승인 여부를 인증하며, 상기 일회용 카드 코드 및 카드 번호를 결제 승인 내역과 함께 데이터베이스(321)에 저장해 관리할 수 있다.The card issuer server 320 extracts the disposable card code from the approval request telegram, acquires the actual card number by using the disposable card code, authenticates whether or not to approve the payment, and transmits the disposable card code and the card number to the database (321).

한편, 결제 대행 서버(310)가 상기 일회용 카드 코드를 이용해 실제 카드 번호를 획득할 수 있는 경우, 상기 일회용 카드 코드 및 카드 번호와 함께 결제 승인 내역이 결제 대행 서버(310)의 데이터베이스(311)에 저장되어 관리될 수도 있다.Meanwhile, when the settlement proxy server 310 can acquire the actual card number using the disposable card code, the settlement approval details together with the disposable card code and the card number are stored in the database 311 of the settlement agency server 310 And may be stored and managed.

그리고 가맹점에서 결제에 대한 승인 취소가 요청되는 경우, POS(210)는 해당 결제에 대한 일회용 카드 코드를 내부 메모리 또는 가맹점 서버(230)의 데이터베이스(231)에서 검색하여, 검색된 일회용 카드 코드를 포함하는 결제 승인 취소 전문을 결제 대행 서버(310)로 전송할 수 있다.When the approval of the payment is requested from the merchant, the POS 210 searches the database 231 of the internal memory or the merchant server 230 for the disposable card code for the settlement and stores the disposable card code including the retrieved disposable card code The payment approval canceling message can be transmitted to the payment agent server 310. [

결제 대행 서버(310)는 상기 결제 승인 취소 전문을 카드사 서버(320)로 전송하고, 카드사 서버(320)는 상기 결제 승인 취소 전문에 포함된 일회용 카드 코드를 이용해 데이터베이스(321)를 검색하여 그에 대응되는 결제 승인 내역을 읽어들임으로써 해당 결제에 대한 승인 취소를 처리할 수 있다.The settlement proxy server 310 transmits the settlement approval cancellation telegram to the card company server 320. The card company server 320 searches the database 321 using the disposable card code included in the payment approval cancellation telegram, It is possible to process the approval cancellation for the payment by reading the payment approval details.

상술한 본 발명에 따른 방법들은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다.The above-described methods according to the present invention may be stored in a computer-readable recording medium. The computer-readable recording medium may be a ROM, a RAM, a CD-ROM, a magnetic tape, , A floppy disk, an optical data storage device, and the like.

컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium may be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And, functional programs, codes and code segments for implementing the above method can be easily inferred by programmers of the technical field to which the present invention belongs.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, It will be understood by those skilled in the art that various changes in form and detail may be made therein without departing from the spirit and scope of the present invention.

Claims (20)

카드 리더기에서 결제에 사용될 일회용 카드 코드를 생성하는 방법에 있어서,
결제에 사용될 카드를 리딩하여 카드 번호를 획득하는 단계;
상기 카드 리더기에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 단계; 및
상기 생성된 랜덤 코드와 상기 획득된 카드 번호를 이용하여, 상기 카드를 식별하기 위한 일회용 카드 코드를 생성하는 단계; 및
상기 일회용 카드 코드를 인터페이스부를 통해 결제 단말 장치로 전송하는 단계를 포함하고,
상기 결제 단말 장치는 실제 카드 번호가 아닌 상기 일회용 카드 코드를 이용하여 생성되는 결제 승인 요청 전문을 서버로 전송하며, 상기 결제 승인 요청 전문에 대응하여 상기 서버로부터 수신된 결제 일시, 금액 및 승인 번호를 포함하는 결제 승인 결과 전문과 상기 일회용 카드 코드를 함께 저장하여 거래 내역을 관리하고, 상기 거래 내역에 기초하여 일회용 카드 코드를 이용한 정산 및 승인 취소를 처리하는 것을 특징으로 하는
일회용 카드 코드 생성 방법.
A method for generating a one-time card code to be used for payment in a card reader,
Obtaining a card number by reading a card to be used for settlement;
Generating a random code using a secret key and time information assigned to the card reader; And
Generating a one-time card code for identifying the card using the generated random code and the acquired card number; And
And transmitting the disposable card code to the payment terminal through the interface unit,
The settlement terminal transmits the settlement approval request message generated by using the disposable card code instead of the actual card number to the server, and responds to the settlement approval request message in response to the settlement date and time, And the disposable card code is stored together to manage the transaction details, and processing of settlement and approval cancellation using the disposable card code based on the transaction details is performed
How to generate a one-time card code.
제1항에 있어서,
상기 비밀키를 카드사 서버 또는 상기 카드사 서버와 연결된 결제 대행 서버로부터 수신하는 단계를 더 포함하는 일회용 카드 코드 생성 방법.
The method according to claim 1,
And receiving the secret key from a card issuer server or a payment agent server connected to the card issuer server.
제1항에 있어서, 상기 비밀키는
상기 카드 리더기의 제조 시에 부여되어 메모리에 저장되어 있는 일회용 카드 코드 생성 방법.
The method of claim 1,
Wherein the card reader is provided with the card reader at the time of manufacture thereof and stored in the memory.
제1항에 있어서, 상기 비밀키는
상기 카드 리더기의 사용을 위한 최초 등록 시에 부여되어 메모리에 저장되는 일회용 카드 코드 생성 방법.
The method of claim 1,
Wherein the card reader is provided with the card reader at the time of initial registration and stored in the memory.
제1항에 있어서, 상기 일회용 카드 코드 생성 단계는
상기 랜덤 코드와 상기 카드 번호의 합산 결과를 문자 세트에 매핑(mapping)하여 제1 서브 코드를 생성하는 단계;
상기 랜덤 코드를 상기 문자 세트에 매핑하여 제2 서브 코드를 생성하는 단계; 및
상기 제1, 2 서브 코드들을 이용하여 상기 일회용 카드 코드를 생성하는 단계를 포함하는 일회용 카드 코드 생성 방법.
The method of claim 1, wherein the generating of the one-time use card code comprises:
Generating a first subcode by mapping the sum of the random number and the card number to a character set;
Mapping the random code to the character set to generate a second subcode; And
And generating the one-time card code using the first and second sub-codes.
제1항에 있어서,
상기 일회용 카드 코드를 이용하여 상기 결제 단말 장치에서 생성된 승인 요청 전문이 상기 결제 단말 장치로부터 카드사 서버 또는 상기 카드사 서버와 연결된 결제 대행 서버로 전송되는 일회용 카드 코드 생성 방법.
The method according to claim 1,
Wherein the approval request message generated by the payment terminal device is transmitted from the payment terminal device to a card issuer server or a payment agency server connected to the card issuer server using the disposable card code.
삭제delete 결제 서버에서 일회용 카드 코드를 이용하여 카드 결제를 승인하는 방법에 있어서,
일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치로부터 수신하는 단계;
상기 결제 단말 장치와 연결된 카드 리더기의 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 단계;
상기 생성된 랜덤 코드와 상기 승인 요청 전문으로부터 추출된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득하는 단계; 및
상기 획득된 카드 번호를 이용하여 카드 결제에 대한 승인을 처리하는 단계를 포함하고,
상기 결제 단말 장치는 실제 카드 번호가 아닌 상기 일회용 카드 코드를 이용하여 생성되는 결제 승인 요청 전문을 상기 결제 서버로 전송하며, 상기 결제 승인 요청 전문에 대응하여 상기 결제 서버로부터 수신된 결제 일시, 금액 및 승인 번호를 포함하는 결제 승인 결과 전문과 상기 일회용 카드 코드를 함께 저장하여 거래 내역을 관리하고, 상기 거래 내역에 기초하여 일회용 카드 코드를 이용한 정산 및 승인 취소를 처리하는 것을 특징으로 하는
카드 결제 승인 방법.
A method for authorizing a card settlement using a disposable card code in a payment server,
Receiving an approval request telegram generated using the disposable card code from the payment terminal device;
Generating a random code using a secret key and time information of a card reader connected to the payment terminal;
Obtaining an actual card number to be used for settlement using the generated random code and the disposable card code extracted from the approval request telegram; And
And accepting approval for card settlement using the obtained card number,
The settlement terminal transmits the settlement approval request message generated by using the one-time use card code instead of the actual card number to the settlement server, and the settlement date and time and amount received from the settlement server in response to the settlement approval request, The payment approval result including the authorization number and the disposable card code are stored together to manage the transaction details, and settlement and approval cancellation using the disposable card code is performed based on the transaction details
How to approve a card payment.
제8항에 있어서,
상기 카드 리더기에 상기 비밀키를 부여하여 전송하는 단계를 더 포함하는 카드 결제 승인 방법.
9. The method of claim 8,
Further comprising the step of providing the secret key to the card reader and transmitting the secret key.
제8항에 있어서, 상기 시간 정보는
상기 랜덤 코드의 생성 시점에 대응되도록 설정되거나, 또는 상기 단말 장치로부터 수신되는 카드 결제 승인 방법.
9. The method of claim 8,
The random code is set to correspond to the generation time of the random code, or received from the terminal device.
제8항에 있어서,
상기 일회용 카드 코드 및 상기 획득된 카드 번호와 함께, 결제 일시와 금액 및 승인 번호를 포함하는 결제 승인 내역을 데이터베이스에 저장하는 단계를 더 포함하는 카드 결제 승인 방법.
9. The method of claim 8,
Further comprising the step of storing, in the database, the settlement approval history including the payment date and time, the amount, and the approval number together with the disposable card code and the obtained card number.
제1항 내지 제6항, 제8항 내지 제11항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 기록 매체.A recording medium on which a program for causing a computer to execute the method according to any one of claims 1 to 6 and 8 to 11 is recorded. 결제 단말 장치와 연결되어 카드 정보를 제공하기 위한 카드 리더기에 있어서,
결제에 사용될 카드를 리딩하여 카드 번호를 획득하는 리더부;
상기 카드 리더기에 부여된 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하고, 상기 생성된 랜덤 코드와 상기 획득된 카드 번호를 이용하여 상기 카드를 식별하기 위한 일회용 카드 코드를 생성하는 코드 생성부; 및
상기 생성된 일회용 카드 코드를 결제 단말 장치로 전송하는 인터페이스부를 포함하고,
상기 결제 단말 장치는 실제 카드 번호가 아닌 상기 일회용 카드 코드를 이용하여 생성되는 결제 승인 요청 전문을 결제 서버로 전송하며, 상기 결제 승인 요청 전문에 대응하여 상기 결제 서버로부터 수신된 결제 일시, 금액 및 승인 번호를 포함하는 결제 승인 결과 전문과 상기 일회용 카드 코드를 함께 저장하여 거래 내역을 관리하고, 상기 거래 내역에 기초하여 일회용 카드 코드를 이용한 정산 및 승인 취소를 처리하는 것을 특징으로 하는
카드 리더기.
A card reader connected to a payment terminal device for providing card information,
A reader unit for reading a card to be used for settlement to acquire a card number;
A code generator for generating a random code using the secret key and the time information given to the card reader and generating a disposable card code for identifying the card using the generated random code and the obtained card number; And
And an interface unit for transmitting the generated disposable card code to a payment terminal,
The settlement terminal transmits the settlement approval request message generated using the disposable card code instead of the actual card number to the settlement server, And the disposable card code are stored together to manage transaction details, and processing of settlement and approval cancellation using the disposable card code based on the transaction details is performed
Card reader.
제13항에 있어서, 상기 비밀키는
상기 카드 리더기의 제조 시에 부여되어 메모리에 저장되어 있는 카드 리더기.
14. The method of claim 13,
Wherein said card reader is attached to said card reader when said card reader is manufactured and stored in said memory.
제13항에 있어서, 상기 비밀키는
상기 카드 리더기의 사용을 위한 최초 등록 시에 부여되어 메모리에 저장되는 카드 리더기.
14. The method of claim 13,
Wherein the card reader is assigned at the time of initial registration for use of the card reader and stored in the memory.
제13항에 있어서, 상기 코드 생성부는
상기 랜덤 코드와 상기 카드 번호의 합산 결과를 문자 세트에 매핑(mapping)하여 제1 서브 코드를 생성하고, 상기 랜덤 코드를 상기 문자 세트에 매핑하여 제2 서브 코드를 생성하며, 상기 제1, 2 서브 코드들을 이용하여 상기 일회용 카드 코드를 생성하는 카드 리더기.
14. The apparatus of claim 13, wherein the code generation unit
Generating a first subcode by mapping the sum of the random code and the card number to a character set to generate a second subcode by mapping the random code to the character set, A card reader for generating the disposable card code using sub-codes.
제13항에 있어서,
상기 일회용 카드 코드를 이용하여 생성된 승인 요청 전문이 상기 결제 단말 장치로부터 카드사 서버 또는 상기 카드사 서버와 연결된 결제 대행 서버로 전송되는 카드 리더기.
14. The method of claim 13,
Wherein the approval request telegram generated using the disposable card code is transmitted from the payment terminal device to a card issuer server or a payment proxy server connected to the card issuer server.
결제 단말 장치로부터 수신된 승인 요청 전문을 처리하여 카드 결제를 승인하는 결제 서버에 있어서,
일회용 카드 코드를 이용하여 생성된 승인 요청 전문을 결제 단말 장치로부터 수신하는 통신부;
상기 결제 단말 장치와 연결된 카드 리더기의 비밀키와 시간 정보를 이용하여 랜덤 코드를 생성하는 코드 생성부;
상기 생성된 랜덤 코드와 상기 승인 요청 전문으로부터 추출된 일회용 카드 코드를 이용하여, 결제에 사용될 실제 카드 번호를 획득하는 카드번호 획득부; 및
상기 획득된 카드 번호를 이용하여 카드 결제에 대한 승인을 처리하는 승인 처리부를 포함하고,
상기 결제 단말 장치는 실제 카드 번호가 아닌 상기 일회용 카드 코드를 이용하여 생성되는 결제 승인 요청 전문을 상기 결제 서버로 전송하며, 상기 결제 승인 요청 전문에 대응하여 상기 결제 서버로부터 수신된 결제 일시, 금액 및 승인 번호를 포함하는 결제 승인 결과 전문과 상기 일회용 카드 코드를 함께 저장하여 거래 내역을 관리하고, 상기 거래 내역에 기초하여 일회용 카드 코드를 이용한 정산 및 승인 취소를 처리하는 것을 특징으로 하는
결제 서버.
A payment server for processing an approval request telegram received from a payment terminal device to approve card payment,
A communication unit for receiving an approval request telegram generated using the disposable card code from the payment terminal apparatus;
A code generator for generating a random code using a secret key and time information of a card reader connected to the payment terminal;
A card number obtaining unit for obtaining an actual card number to be used for settlement using the generated random code and the disposable card code extracted from the approval request text; And
And an approval processing unit for processing approval for card settlement using the acquired card number,
The settlement terminal transmits the settlement approval request message generated by using the one-time use card code instead of the actual card number to the settlement server, and the settlement date and time and amount received from the settlement server in response to the settlement approval request, The payment approval result including the authorization number and the disposable card code are stored together to manage the transaction details, and settlement and approval cancellation using the disposable card code is performed based on the transaction details
Payment server.
제18항에 있어서,
복수의 카드 리더기들 각각에 부여된 비밀키들을 저장하는 메모리를 더 포함하는 결제 서버.
19. The method of claim 18,
And a memory for storing secret keys assigned to each of the plurality of card readers.
제18항에 있어서,
상기 일회용 카드 코드 및 상기 획득된 카드 번호와 함께, 결제 일시와 금액 및 승인 번호를 포함하는 결제 승인 내역이 데이터베이스에 저장되는 결제 서버.
19. The method of claim 18,
Wherein the settlement approval history including the settlement date and time, the amount and the approval number is stored in the database together with the disposable card code and the acquired card number.
KR1020150188562A 2015-12-29 2015-12-29 Method for generating one-time card code, approving card payment, reader and server thereof KR101751887B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150188562A KR101751887B1 (en) 2015-12-29 2015-12-29 Method for generating one-time card code, approving card payment, reader and server thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150188562A KR101751887B1 (en) 2015-12-29 2015-12-29 Method for generating one-time card code, approving card payment, reader and server thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020170075805A Division KR20170078564A (en) 2017-06-15 2017-06-15 Method for generating one-time card code, approving card payment, reader and server thereof

Publications (1)

Publication Number Publication Date
KR101751887B1 true KR101751887B1 (en) 2017-07-11

Family

ID=59354616

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150188562A KR101751887B1 (en) 2015-12-29 2015-12-29 Method for generating one-time card code, approving card payment, reader and server thereof

Country Status (1)

Country Link
KR (1) KR101751887B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200018230A (en) * 2018-08-09 2020-02-19 주식회사 센스톤 Method and system for preventing leakage of surveyor information based on virtual code
WO2020162706A1 (en) * 2019-02-08 2020-08-13 주식회사 센스톤 Virtual corporate card-based financial transaction providing method, program and system
KR20200097655A (en) * 2019-02-08 2020-08-19 주식회사 센스톤 The method, program and system for providing financial transaction based on virtual corporate card

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572111B1 (en) * 2015-07-01 2015-11-27 주식회사 이노스코리아 Electronic device and method for generating random and unique code

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101572111B1 (en) * 2015-07-01 2015-11-27 주식회사 이노스코리아 Electronic device and method for generating random and unique code

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200018230A (en) * 2018-08-09 2020-02-19 주식회사 센스톤 Method and system for preventing leakage of surveyor information based on virtual code
KR102213432B1 (en) * 2018-08-09 2021-02-08 주식회사 센스톤 Method and system for preventing leakage of surveyor information based on virtual code
WO2020162706A1 (en) * 2019-02-08 2020-08-13 주식회사 센스톤 Virtual corporate card-based financial transaction providing method, program and system
KR20200097655A (en) * 2019-02-08 2020-08-19 주식회사 센스톤 The method, program and system for providing financial transaction based on virtual corporate card
KR102269922B1 (en) * 2019-02-08 2021-06-28 주식회사 센스톤 The method, program and system for providing financial transaction based on virtual corporate card
CN113196323A (en) * 2019-02-08 2021-07-30 森斯通株式会社 Financial transaction providing method, program and system based on virtual legal card

Similar Documents

Publication Publication Date Title
KR101751894B1 (en) Payment terminal and method for processing card payment using one-time card code
CN109074582B (en) System and method for generating sub-tokens using a master token
JP5931217B2 (en) Settlement method using disposable card information
KR101354388B1 (en) Generating method for one time code
KR100474213B1 (en) Method for Issuing Instant Mobile Card using Wireless Network
JP2016504661A (en) Mobile payment system and method using dynamic track 2 information
JP2005521332A (en) Method and system for performing transactions using proximity devices
CN105493116A (en) Methods and systems for provisioning payment credentials
KR101316489B1 (en) Method for processing transaction using variable pan
KR101812638B1 (en) Module, service server, system and method for authenticating genuine goods using secure element
KR102574524B1 (en) Remote transaction system, method and point of sale terminal
KR101751887B1 (en) Method for generating one-time card code, approving card payment, reader and server thereof
KR101782436B1 (en) Terminal for card payment and method for canceling transaction of card payment thereof
KR20170078563A (en) Payment terminal and method for processing card payment using one-time card code
KR20170004339A (en) Payment system. card reader, terminal for payment and method for processing card information thereof
KR20170078564A (en) Method for generating one-time card code, approving card payment, reader and server thereof
KR101699032B1 (en) Service providing system and method for payment using electronic tag
KR101616847B1 (en) System for providing card settlement service using smart device and method thereof
KR20150144366A (en) Method for Processing Payment at Affiliate Coupled End-To-End Medium Ownership Authentication and One Time Code Authentication
KR101615685B1 (en) Apparatus for performing card patment with one time card information
KR101710950B1 (en) Method for distributing encrypt key, card reader and system for distributing encrypt key thereof
CN104424453A (en) System and method for verifying non-contact inductive label
KR101583718B1 (en) Apparatus and method for proccesing card transaction in a payment system
US20170323302A1 (en) Security systems and methods
KR101871686B1 (en) A method of processing card information for preventing re-use of card information based on a shared encryption key, an appratus thereof and a method for operating financial server

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant