KR20230004042A - An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it - Google Patents

An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it Download PDF

Info

Publication number
KR20230004042A
KR20230004042A KR1020210085810A KR20210085810A KR20230004042A KR 20230004042 A KR20230004042 A KR 20230004042A KR 1020210085810 A KR1020210085810 A KR 1020210085810A KR 20210085810 A KR20210085810 A KR 20210085810A KR 20230004042 A KR20230004042 A KR 20230004042A
Authority
KR
South Korea
Prior art keywords
payment
token
distributed
information
affiliated store
Prior art date
Application number
KR1020210085810A
Other languages
Korean (ko)
Other versions
KR102600490B1 (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 한국정보통신주식회사
Priority to KR1020210085810A priority Critical patent/KR102600490B1/en
Publication of KR20230004042A publication Critical patent/KR20230004042A/en
Application granted granted Critical
Publication of KR102600490B1 publication Critical patent/KR102600490B1/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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

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

Abstract

A method for operating a token processing device according to one embodiment of the present invention comprises the steps of: receiving a token issuance request for issuance of a token usable only at a first affiliated store from a user terminal or payment terminal; encrypting payment means data included in the token issuance request using a first encryption key calculated by using affiliated store information and encryption counter information of the first affiliated store; generating a distribution-type payment token for a first affiliated store-only transaction based on a first portion of the encrypted payment means data and the encryption counter information; and providing the distribution-type payment token to the user terminal or the payment terminal. According to the present invention, the method can prevent personal information such as card information from leaking.

Description

결제 수단 데이터의 가맹점 전용 분산 토큰 결제를 제공하는 결제 서비스 제공 장치 및 그 동작 방법{AN APPARATUS FOR PROVIDING PAYMENT SERVICES OF A DISTRIBUTED TOKEN FOR ENCRYPTED DATA OF PAYMENT INFORMATION TO BE USED ONLY BY A SPECIFIC FRANCHISEE AND A METHOD FOR OPERATING IT}A payment service providing device that provides merchant-only distributed token payment of payment method data and its operation method IT}

본 발명은 분산 토큰 처리 장치 및 그 동작 방법에 관한 것이다. 보다 구체적으로, 본 발명은 결제 수단 데이터의 가맹점 전용 분산 토큰 결제를 제공하는 결제 서비스 제공 장치 및 그 동작 방법에 관한 것이다.The present invention relates to a distributed token processing device and an operating method thereof. More specifically, the present invention relates to a payment service providing apparatus and operation method for providing distributed token payment for affiliated store-only payment method data.

전자결제 인프라가 확충되면서 신용 카드, 체크카드, 직불카드 등(이하, "신용 카드")의 카드결제를 기반으로 하는 신용 결제 서비스가 일반화되었다. 상기 신용 결제 서비스는 사용자가 가맹점에서 물품 또는 서비스를 카드 결제로 구매한 후, 대금 결제일에 카드사 등에 상기 물품 또는 서비스의 이용대금을 납부하며, 가맹점은 상기 물품 또는 서비스의 판매대금을 상기 카드사 등으로부터 지불 받는 전자결제 인프라를 이용한 결제방식을 말한다.With the expansion of electronic payment infrastructure, credit payment services based on card payments such as credit cards, check cards, and debit cards (hereinafter referred to as "credit cards") have become common. In the credit payment service, after a user purchases goods or services by card payment at a member store, the user pays the price for using the goods or services to a credit card company, etc. It refers to a payment method using electronic payment infrastructure that receives payment.

상기 신용 결제 서비스를 제공하는 시스템은 다수의 가맹점들에 구비된 다수의 카드 단말기들과, 다수의 가맹점들과 카드사 사이에서 카드 결제와 관련된 결제 대행 서비스를 제공하는 밴(Value Added Network : VAN) 사의 서버(이하, "결제 대행 서버"), 사용자에게 신용 카드를 발행한 카드사의 서버가 통신망을 통해 연결되어 구성된다. 상기 VAN은 카드 단말기들과 카드사 서버 사이에서 결제 트랜잭션(transaction)을 위한 결제 네트워크를 의미한다.The system for providing the credit payment service is a combination of a plurality of card terminals provided in a plurality of affiliated stores and a value added network (VAN) company that provides a payment agency service related to card payment between the plurality of affiliated stores and the card company. A server (hereinafter referred to as "a payment agent server") and a server of a card company that issued a credit card to a user are connected through a communication network. The VAN refers to a payment network for a payment transaction between card terminals and a card company server.

이러한 전자적 결제 네트워크를 이용한 결제 시스템은 결제의 편의성 및 신속성에 있어서 혁신적 향상을 가져왔으나, 카드 정보 데이터의 부정사용으로 인한 피해 및 개인정보 유출에 따른 피해 등이 지속적으로 발생하는 원인이 되고 있으며, 이를 해결하기 위해 통신망의 해킹 등으로 인한 보안성이 유지될 수 있는 전자결제 방법들이 제안되고 있다.Although the payment system using such an electronic payment network has brought innovative improvements in the convenience and speed of payment, it continues to cause damage due to fraudulent use of card information data and leakage of personal information. In order to solve the problem, electronic payment methods that can maintain security due to hacking of communication networks have been proposed.

이 중, 토큰 결제 방식은 사용자의 고유정보 또는 카드정보에 대응하여, 일정 시간 동안 유효한 가상의 임시 토큰을 결제사 서버에서 사용자 단말로 발행하고, 이러한 임시 토큰을 이용한 결제 요청 전문이 서버로 수신되면, 결제사 서버는 임시 토큰과 매핑된 카드 정보를 확인하여 카드 결제를 카드사 서버로 요청하는 방식이 예시될 수 있다.Among them, in the token payment method, a virtual temporary token valid for a certain period of time is issued from the payment company server to the user terminal in response to the user's unique information or card information, and when the full text of the payment request using the temporary token is received by the server , A method in which the payment company server checks card information mapped with the temporary token and requests card payment to the card company server may be exemplified.

이러한 토큰 결제 방식은 임시 발행된 가상의 랜덤 토큰을 이용하는 방식이므로, 유출되더라도 개인 정보를 파악할 수는 없다는 장점이 있다. Since this token payment method uses a temporarily issued virtual random token, there is an advantage in that personal information cannot be identified even if it is leaked.

그러나, 임시적으로 발행되는 토큰 또한 결제를 위해 사용되는 결제 수단이나 마찬가지이기 때문에, 공격자가 결제 전의 토큰 자체 또는 토큰을 포함하는 결제 요청 전문의 결제 수단 데이터 자체를 해킹하여, 다른 가맹점에서의 결제에 사용하거나, 또는 중복 결제 등을 요청하는 경우, 결제사 서버에서는 이를 구별하기 매우 어려운 문제점이 있으며, 현재로서는 사실상의 대응방안이 존재하지 않는 실정이다.However, since the temporarily issued token is also a payment method used for payment, an attacker hacks the token itself before payment or the payment method data itself in the full text of the payment request including the token, and uses it for payment at other merchants In the case of making a payment or requesting duplicate payment, there is a problem that it is very difficult for the payment company server to distinguish it, and there is no practical countermeasure at present.

즉, 결제사 서버는 발행된 토큰이 사용자가 의도하지 않은 가맹점에서 사용되더라도, 해당 결제 요청의 진위를 판별하기 어려우며, 이를 재확인하는 절차를 거친다면 사실상 결제를 더 복잡하고 지연시킬 뿐만 아니라 시스템 구현 및 인프라 구축 비용을 높이게 하는 문제점이 있는 바, 이를 실시간으로 판단하지 않고 사후 정산시점에서의 미수나 손해 처리를 제공해주는 식으로밖에 해결할 수 없는 문제점이 있다.In other words, even if the issued token is used at an affiliate store that the user did not intend, it is difficult for the payment company server to determine the authenticity of the payment request. There is a problem that increases the cost of infrastructure construction, and there is a problem that can only be solved by providing an attempt or damage processing at the point of post-settlement without determining it in real time.

나아가, 현재의 토큰 결제 방식은 가상의 랜덤 토큰을 생성하고 실제 개인정보와 매핑시키는 방식으로서, 카드 정보와 같은 개인 정보 그 자체를 결제사 서버가 온전히 보유하고 있어야만 가상의 랜덤 토큰과 매칭시켜 확인할 수 있으므로, 아무리 가상의 랜덤 토큰을 이용한다 하더라도, 결제사 서버의 데이터베이스 그 자체가 해킹된다면 카드 정보와 고객 정보가 그대로 유출될 수밖에 없는 근본적인 문제점도 내포되고 있다.Furthermore, the current token payment method is a method of generating a virtual random token and mapping it to real personal information. Personal information such as card information must be fully possessed by the payment company server in order to be matched with the virtual random token and verified. Therefore, even if a virtual random token is used, a fundamental problem is that if the database of the payment company server itself is hacked, card information and customer information will inevitably be leaked.

본 발명은 상기한 바와 같은 문제점들을 해결하고자 안출된 것으로, 가상의 랜덤 토큰이 아닌 카드 정보와 같은 결제 수단 데이터 그 자체로부터의 특수화된 암호화 처리에 따라, 특정 가맹점 전용 결제 수단 데이터의 암호화된 데이터를 생성하고, 이를 분산화된 토큰 정보로 구성하여 결제 수단을 대체하도록 발급함으로써, 카드 정보와 같은 개인 정보의 유출을 방지할 수 있을 뿐만 아니라, 분산화된 토큰 정보 그 자체에 대한 검증만으로도 다른 가맹점에서의 사용 여부, 재사용여부, 유출여부, 해킹여부 등을 신속히 확인할 수 있으며, 결제사 서버 자체에도 나머지 분산화된 토큰 정보만 저장되어 결제사 서버가 해킹되더라도 온전한 카드 정보는 확인될 수 없도록 방지 처리된 결제 수단 데이터의 가맹점 전용 분산 토큰 결제를 제공하는 결제 서비스 제공 장치 및 그 동작 방법을 제공하는 데 그 목적이 있다.The present invention has been devised to solve the above problems, and the encrypted data of payment method data dedicated to a specific affiliate is obtained by specialized encryption processing from payment method data itself such as card information rather than a virtual random token. By creating and issuing distributed token information to replace payment methods, it is possible to prevent the leakage of personal information such as card information, as well as to verify the decentralized token information itself for use in other merchants. It is possible to quickly check whether or not it is reused, leaked, or hacked, and only the remaining decentralized token information is stored on the payment company server itself, so that even if the payment company server is hacked, the complete card information cannot be confirmed. Its purpose is to provide a payment service providing device and its operation method that provide distributed token payment for affiliates.

상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 결제 서비스 제공 장치의 동작 방법에 있어서, 결제 단말로부터 상기 결제 단말에 대응하는 제1 가맹점에서만 사용 가능한 분산형 토큰 발행 요청을 수신하는 단계; 상기 토큰 발행 요청에 포함된 결제 수단 정보를 하드웨어 보안 모듈 장비를 이용하여 상기 제1 가맹점 전용으로 암호화한 결제 수단 암호화 데이터의 제1 부분을 이용한 분산형 결제 토큰을 획득하는 단계; 상기 분산형 결제 토큰을 포함하는 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰 전문을 상기 결제 단말로 전송하는 단계; 상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하는 단계; 상기 결제 승인요청 전문의 상기 분산형 결제 토큰 및 가맹점 식별 정보를 이용하여, 상기 결제 수단 암호화 데이터를 복호화한 상기 결제 수단 정보를 획득하는 단계; 및 상기 결제 수단 정보를 이용한 결제사 서버로의 결제 승인 요청을 처리하는 단계를 포함한다.A method according to an embodiment of the present invention for solving the above problems is, in the operating method of a payment service providing device, a request for issuing a distributed token that can only be used at a first affiliated store corresponding to the payment terminal from a payment terminal. receiving; obtaining a distributed payment token using a first part of payment method encryption data obtained by encrypting payment method information included in the token issuance request exclusively for the first affiliated store using a hardware security module; Transmitting the full text of the distributed payment token for the first affiliated store-only transaction including the distributed payment token to the payment terminal; Receiving a payment approval request message using the distributed payment token from the payment terminal; obtaining payment method information obtained by decrypting the payment method encryption data by using the distributed payment token and member store identification information in the full text of the payment approval request; and processing a payment approval request to a payment company server using the payment method information.

또한, 상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 장치는, 결제 서비스 제공 장치에 있어서, 결제 단말로부터 상기 결제 단말에 대응하는 제1 가맹점에서만 사용 가능한 분산형 토큰 발행 요청을 수신하는 통신부; 및 상기 토큰 발행 요청에 포함된 결제 수단 정보를 하드웨어 보안 모듈 장비를 이용하여 상기 제1 가맹점 전용으로 암호화한 결제 수단 암호화 데이터의 제1 부분을 이용한 분산형 결제 토큰을 획득하고, 상기 분산형 결제 토큰을 포함하는 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰 전문을 상기 결제 단말로 전송하는 분산형 결제 토큰 관리부;를 포함하고, 상기 통신부는 상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하며, 상기 결제 승인 처리부는 상기 결제 승인요청 전문의 상기 분산형 결제 토큰 및 가맹점 식별 정보를 이용하여, 상기 결제 수단 암호화 데이터를 복호화한 상기 결제 수단 정보를 획득하고, 상기 결제 수단 정보를 이용한 결제사 서버로의 결제 승인 요청을 처리한다.In addition, an apparatus according to an embodiment of the present invention for solving the above problems is a payment service providing apparatus, receiving a request for issuing a distributed token that can only be used at a first affiliated store corresponding to the payment terminal from a payment terminal communication department; and obtaining a distributed payment token using a first part of the payment method encryption data in which the payment method information included in the token issuance request is encrypted exclusively for the first affiliated store using hardware security module equipment, and the distributed payment token and a distributed payment token management unit that transmits a full text of the distributed payment token for the transaction exclusively for the first affiliated store to the payment terminal, wherein the communication unit requests payment approval using the distributed payment token from the payment terminal. receiving the full text, and the payment approval processing unit obtains the payment method information by decrypting the payment method encryption data using the distributed payment token and affiliate identification information of the payment approval request message, and obtains the payment method information Process payment approval request to the used payment company server.

또한, 상기한 바와 같은 과제를 해결하기 위한 본 발명의 실시 예에 따른 방법은, 상기 방법을 컴퓨터에서 실행시키기 위한 컴퓨터 판독 가능한 매체에 저장되는 프로그램 및 상기 프로그램이 기록된 기록 매체로 저장될 수 있다.In addition, the method according to the embodiment of the present invention for solving the above problems may be stored in a program stored in a computer readable medium for executing the method in a computer and a recording medium in which the program is recorded. .

본 발명의 실시 예에 따르면, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보 및 암호화 카운터 정보를 상기 토큰 발행 요청에 포함된 결제 수단 데이터를, 상기 제1 가맹점의 가맹점 정보 및 암호화 카운터 정보를 이용하여 연산된 제1 암호화 키로, 암호화 처리하고, 상기 암호화된 카드 정보의 제1 부분과, 상기 암호화 카운터 정보에 기초하여 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰을 생성하여 배포함으로서, 전용 가맹점에서만 사용 가능하면서도, 데이터 자체의 재사용이 방지되고, 결제사 서버에서도 전체 카드번호 등이 저장되지 않도록 처리된 안전한 결제 서비스를 별도의 인프라 구축 비용을 높이지 않고도 신속하게 제공할 수 있다.According to an embodiment of the present invention, the key serial information and encryption counter information issued in correspondence with the affiliate store information of the first affiliate store are converted into the payment method data included in the token issuance request, the affiliate store information and encryption counter information of the first affiliate store By performing encryption with a first encryption key calculated using information, and generating and distributing a distributed payment token for the first merchant-only transaction based on the first part of the encrypted card information and the encryption counter information , A safe payment service that can be used only at exclusive merchants, prevents reuse of the data itself, and prevents the entire card number from being stored on the payment company server, can be provided quickly without increasing the cost of building a separate infrastructure.

이에 따라, 본 발명의 실시 예에 따르면, 가상의 랜덤 토큰이 아닌 결제 수단 데이터 그 자체로부터의 특수화된 암호화 처리에 따라, 특정 가맹점 전용 카드정보 암호화 데이터를 생성하고, 이를 분산화된 토큰 정보로 구성하여 결제 수단을 대체하도록 발급함으로써, 카드 정보와 같은 개인 정보의 유출을 방지할 수 있을 뿐만 아니라, 분산화된 토큰 정보 그 자체에 대한 검증만으로도 다른 가맹점에서의 사용 여부, 재사용여부, 유출여부, 해킹여부 등을 동시에 신속히 확인할 수 있으며, 결제사 서버 자체에도 나머지 분산화된 토큰 정보만 저장되어 결제사 서버가 해킹되더라도 온전한 카드 정보는 확인될 수 없도록 방지 처리된 분산화된 토큰을 이용한 결제 서비스 제공 장치 및 그 동작 방법을 제공할 수 있게 된다.Accordingly, according to an embodiment of the present invention, according to a specialized encryption process from the payment method data itself, rather than a virtual random token, card information encryption data dedicated to a specific affiliate is generated, and it is composed of distributed token information to By issuing a replacement payment method, not only can personal information such as card information be prevented from being leaked, but also verification of the decentralized token information itself can be used in other merchants, reused, leaked, hacked, etc. can be quickly checked at the same time, and only the remaining decentralized token information is stored in the payment company server itself so that complete card information cannot be verified even if the payment company server is hacked. will be able to provide

도 1은 본 발명의 실시 예에 따른 전체 시스템을 개략적으로 도시한 개념도이다.
도 2는 본 발명의 실시 예에 따른 토큰 처리 장치를 보다 구체적으로 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 토큰 처리 장치의 토큰 제공 동작을 설명하기 위한 흐름도이다.
도 4는 본 발명의 실시 예에 따른 분산 토큰화 처리 프로세스를 도식화하여 설명하기 위한 도면이다.
도 5는 본 발명의 실시 예에 따른 토큰 처리 장치의 복호화 동작을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시 예에 따른 분산 토큰 기반 복호화 처리 프로세스를 도식화하여 설명하기 위한 도면이다.
도 7은 본 발명의 실시 예에 따른 결제 서비스 제공 서버를 보다 구체적으로 도시한 블록도이다.
도 8은 본 발명의 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스를 설명하기 위한 래더 다이어그램이다.
도 9는 본 발명의 실시 예에 따른 분산형 결제 토큰의 관리 프로세스를 설명하기 위한 래더 다이어그램이다.
1 is a conceptual diagram schematically illustrating an entire system according to an embodiment of the present invention.
2 is a block diagram showing a token processing device according to an embodiment of the present invention in more detail.
3 is a flowchart illustrating a token providing operation of a token processing device according to an embodiment of the present invention.
4 is a diagram for illustrating and explaining a distributed tokenization processing process according to an embodiment of the present invention.
5 is a flowchart illustrating a decryption operation of a token processing device according to an embodiment of the present invention.
6 is a diagram for illustrating and explaining a distributed token-based decryption processing process according to an embodiment of the present invention.
7 is a block diagram illustrating a payment service providing server in more detail according to an embodiment of the present invention.
8 is a ladder diagram for explaining a distributed payment token-based payment processing process according to an embodiment of the present invention.
9 is a ladder diagram for explaining a management process of a distributed payment token according to an embodiment of the present invention.

이하, 첨부된 도면들을 참조하여 본 발명의 실시예에 관하여 상세히 설명한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통하여 보다 분명해질 것이다. 이하 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예들을 상세히 설명한다. 명세서 전체에 걸쳐서 동일한 참조번호들은 동일한 구성요소들을 나타낸다. 또한, 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.The above objects, features and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings. Like reference numbers indicate like elements throughout the specification. In addition, if it is determined that a detailed description of a known function or configuration related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted.

이하에서는, 본 발명과 관련된 서버 장치 및 단말 장치에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.Hereinafter, a server device and a terminal device related to the present invention will be described in more detail with reference to the drawings. The suffixes "module" and "unit" for components used in the following description are given or used together in consideration of ease of writing the specification, and do not have meanings or roles that are distinct from each other by themselves.

먼저, 본 발명의 명세서에서 사용되는 용어를 간략히 정의한 후, 본 발명의 실시 예를 설명하기로 한다.First, terms used in the specification of the present invention are briefly defined, and then embodiments of the present invention will be described.

본 명세서에서 설명되는 "결제 단말"에는 POS 단말기, 컴퓨터, 휴대폰, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션 등이 포함될 수 있으나, 본 발명은 이에 한정되지 아니하며 그 이외에 사용자 입력 및 정보 표시 등이 가능한 다양한 장치일 수 있다.The "payment terminal" described herein includes a POS terminal, a computer, a mobile phone, a smart phone, a laptop computer, a digital broadcasting terminal, a personal digital assistant (PDA), a portable multimedia player (PMP), and a navigation device. and the like may be included, but the present invention is not limited thereto, and other various devices capable of user input and information display may be used.

또한, "중계 서버"라 함은 겸용 카드 전자 결제를 중계하는 밴(VAN) 사 측 서버를 일례로 지칭하였으나, 신용카드 전자 결제와 관련된 다양한 형태의 서버도 이에 해당할 수 있으며, 특정 기능에 따라서 실제 결제 중계 기능과 다른 부가 기능을 별도의 서버 형태로 분리하는 형태도 가능하다.In addition, the term “relay server” refers to a server on the side of a VAN company that relays electronic payment of a combined card as an example, but various types of servers related to electronic payment of a credit card may also correspond to this, and depending on specific functions It is also possible to separate the actual payment relay function and other additional functions into a separate server form.

도 1은 본 발명의 실시 예에 따른 전체 시스템을 도시한 도면이다.1 is a diagram showing an entire system according to an embodiment of the present invention.

도 1을 참조하면 본 발명의 실시 예에 따른 전체 시스템은 토큰 처리 장치(100), 중계 서버(200), 결제 단말(300) 및 카드사 서버(500)를 포함하여 구성될 수 있으며, 토큰 처리 장치(100)는 하드웨어 보안 모듈(HSM, Hardware Security Module) 장비(101)를 포함하거나 연결되어 구성될 수 있고, 결제 단말(300)은 카드 리더 모듈(310)을 포함하거나 연결되어 구성될 수 있다.Referring to FIG. 1 , the entire system according to an embodiment of the present invention may include a token processing device 100, a relay server 200, a payment terminal 300, and a card company server 500, and the token processing device 100 may include or be connected to a Hardware Security Module (HSM) device 101, and the payment terminal 300 may include or be connected to a card reader module 310.

도 1을 참조하면 중계 서버(200)는 카드사 서버(500)의 결제 서비스를 중계 처리하는 금융 서버의 예시로서 개시되는 것으로, 신용 카드를 이용하는 전자 결제 시스템에서 결제 대행 서비스를 제공하는 밴(Value Added Network : VAN) 사 측의 서버가 예시될 수 있다.Referring to FIG. 1, the relay server 200 is disclosed as an example of a financial server that relays the payment service of the card company server 500, and provides a value added value added service in an electronic payment system using a credit card. Network: VAN) company side server may be exemplified.

여기서, 상기 "금융 서버"라 함은 금융 거래와 관련된 정보를 처리하는 서버를 의미할 수 있다. 예를 들어, 금융 서버는 금융 계좌간 거래를 중계하는 은행사 서버, 금융 카드 전자 결제를 중계하는 밴(VAN)사 측 서버, 신용 카드 거래의 결제승인을 처리하는 카드사 서버 및 이외에도 다양한 형태의 서버들이 해당될 수 있다. 또한, 특정 기능에 따라서 실제 금융 거래 기능과 다른 부가 기능을 별도의 서버 형태로 분리하는 형태도 존재할 수 있다.Here, the "financial server" may mean a server that processes information related to financial transactions. For example, the financial server includes a bank server that relays transactions between financial accounts, a VAN company server that relays financial card electronic payments, a card company server that processes payment approval for credit card transactions, and various other types of servers. may be applicable. In addition, there may be a form in which the actual financial transaction function and other additional functions are separated in the form of a separate server according to a specific function.

통상적으로 카드 리더 모듈(310)과 결제 단말(300)은 분리 구성될 수 있으나 결합되어 있는 경우가 많고, 이를 일반적으로 'POS 단말', 또는 POS라고 지칭하기도 한다. 다만 이하에서는 결제 단말(300)에 카드 리더 모듈(310)이 전부 또는 일부 결합된 형태를 결제 단말(300)로도 지칭될 수 있다.Normally, the card reader module 310 and the payment terminal 300 may be configured separately, but are often combined, and are generally referred to as 'POS terminal' or POS. However, below, a form in which the card reader module 310 is fully or partially coupled to the payment terminal 300 may also be referred to as the payment terminal 300 .

먼저, 카드 리더 모듈(310)은 카드 번호 등을 포함하는 결제 수단 데이터를 획득하기 위한 장치로서, 예를 들어 마그네틱 카드로부터 카드 정보를 리딩하는 MSR(Magnetic Strip Reader), IC(Integrated Circuit) 카드로부터 카드 정보를 리딩하는 IC 카드리더, 근거리 무선 통신 방식을 이용해 카드 정보를 수신하는 NFC 리더 또는 바코드(barcode)를 이용해 카드 정보를 리딩하는 바코드 리더 등 다양한 장치일 수 있다.First, the card reader module 310 is a device for obtaining payment method data including a card number, etc., for example, from a magnetic strip reader (MSR) that reads card information from a magnetic card, or an integrated circuit (IC) card. It may be a variety of devices, such as an IC card reader for reading card information, an NFC reader for receiving card information using a short range wireless communication method, or a barcode reader for reading card information using a barcode.

또한, 카드 리더 모듈(310)에서는 중계 서버(200)에 대응하여 사전 설정된 카드 정보 암호화 키로 사전 암호화된 결제 수단 데이터를 획득할 수 있으며, 암호화된 결제 수단 데이터는 개인 키를 보유한 중계 서버(200)에서만 복호화 처리되도록 공개키 방식으로 사전 암호화 처리된 카드 정보 등이 예시될 수 있다.In addition, the card reader module 310 may obtain pre-encrypted payment method data with a preset card information encryption key corresponding to the relay server 200, and the encrypted payment method data may be stored in the relay server 200 having a private key. Card information that has been pre-encrypted using a public key method to be decrypted only in .

그리고, 결제 단말(300)은, 카드 리더 모듈(310)을 통해 사전 암호화된 결제 수단 데이터가 획득되는 경우, 상기 결제 단말(300)에 대응하는 제1 가맹점 전용 결제 수단으로 사용하기 위한, 분산형 결제 토큰의 발행을 중계 서버(200)로 요청한다. 여기서, 상기 결제 단말(300)의 분산형 결제 토큰 발행 요청은 상기 사전 암호화된 결제 수단 데이터를 포함할 수 있다.In addition, the payment terminal 300, when pre-encrypted payment method data is obtained through the card reader module 310, distributed type for use as a payment method for the first affiliated store corresponding to the payment terminal 300 Issuance of a payment token is requested to the relay server 200 . Here, the request for issuing the distributed payment token of the payment terminal 300 may include the pre-encrypted payment means data.

이에 따라, 중계 서버(200)는 결제 단말(300)로부터 수신된 분산형 결제 토큰의 발행 요청 정보로부터 사전 암호화된 결제 수단 데이터를 획득하고, 상기 사전 암호화된 결제 수단 데이터를 복호화 처리하여 분산형 결제 토큰을 위한 암호화 대상 데이터를 구성할 수 있다. 여기서 암호화 대상 데이터는 예를 들어, 결제 수단의 카드 번호, 유효기간, 구분자, 필터, 유효성 검사 데이터, CVC 정보 중 적어도 하나를 포함할 수 있다.Accordingly, the relay server 200 obtains pre-encrypted payment method data from the distributed payment token issuance request information received from the payment terminal 300, decrypts the pre-encrypted payment method data, and decrypts the distributed payment method. You can configure the data to be encrypted for the token. Here, the data to be encrypted may include, for example, at least one of a card number of a payment method, an expiration date, a separator, a filter, validation data, and CVC information.

그리고, 중계 서버(200)는 암호화 대상 데이터를 포함하는 토큰 발행 요청을 토큰 처리 장치(100)로 전달할 수 있다.Also, the relay server 200 may transmit a token issuance request including data to be encrypted to the token processing device 100 .

토큰 처리 장치(100)는, 토큰 발행 요청에 포함된 암호화 대상 데이터에 대응하여, 상기 결제 단말(300)에 대응하는 제1 가맹점에서만 사용될 수 있도록 분산 암호화 처리된 분산형 결제 토큰을 획득할 수 있으며, 획득된 분산형 결제 토큰을 중계 서버(200)로 제공하거나, 상기 분산형 결제 토큰을 요청한 결제 단말(300)로 직접 제공할 수 있다.The token processing device 100 may obtain a decentralized payment token that has been subjected to distributed encryption so that it can be used only at the first affiliated store corresponding to the payment terminal 300, in response to data to be encrypted included in the token issuance request, , The acquired distributed payment token may be provided to the relay server 200 or the distributed payment token may be directly provided to the requested payment terminal 300.

여기서, 토큰 처리 장치(100)는, 물리적으로 보안화된 하드웨어 시스템을 통해 베이스 토큰 유도 키를 생성 및 관리하는 하드웨어 보안 모듈(HSM) 장비(101)를 내부 또는 외부에 구비할 수 있으며, 상기 하드웨어 보안 모듈 장비(101)을 이용한 상기 제1 가맹점 전용 제1 암호화 키를 구성하고, 상기 제1 암호화 키로 암호화된 결제 수단 데이터의 적어도 일부를 이용하여 상기 분산형 결제 토큰을 생성할 수 있다.Here, the token processing device 100 may include a hardware security module (HSM) equipment 101 inside or outside that generates and manages a base token derivation key through a physically secured hardware system, the hardware A first encryption key dedicated to the first affiliated store may be configured using the security module device 101, and the distributed payment token may be generated using at least a portion of payment method data encrypted with the first encryption key.

이러한 토큰 처리 장치(100)를 보다 구체적으로 설명하면, 토큰 처리 장치(100)는 상기 토큰 발행 요청에 포함된 결제 수단 데이터를, 상기 제1 가맹점의 가맹점 정보 및 암호화 카운터 정보를 이용하여 연산된 제1 암호화 키로, 암호화 처리하고, 상기 암호화된 결제 수단 데이터의 제1 부분과, 상기 암호화 카운터 정보에 기초하여 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰을 생성할 수 있으며, 상기 분산형 결제 토큰을 중계 서버(200) 또는 결제 단말(300)로 제공할 수 있다.Describing the token processing device 100 in more detail, the token processing device 100 calculates the payment method data included in the token issuance request using the affiliate store information and encryption counter information of the first affiliate store. With 1 encryption key, it is possible to generate a distributed payment token for a transaction dedicated to the first affiliated store based on the encrypted first part of the encrypted payment method data and the encryption counter information, and the distributed payment token may be provided to the relay server 200 or the payment terminal 300.

그리고, 상기 제1 암호화 키는 상기 하드웨어 보안 모듈 장비(101)를 이용하여 토큰 처리 장치(100)에서 연산될 수 있는 바, 먼저 상기 하드웨어 보안 모듈 장비(101)는 물리적으로 보안화된 하드웨어 시스템을 통해 상기 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보용 초기 암호화 키 연산을 위한 베이스 토큰 유도 키를 출력할 수 있다.And, the first encryption key can be calculated in the token processing device 100 using the hardware security module device 101. First, the hardware security module device 101 physically secures the hardware system. Through this, a base token derivation key for initial encryption key calculation for key serial information corresponding to affiliated store information of the first affiliated store can be output.

그리고, 토큰 처리 장치(100)는 상기 키 시리얼 정보 및 상기 베이스 토큰 유도 키를 이용하여 상기 초기 암호화 키를 연산할 수 있으며, 상기 초기 암호화 키와 상기 암호화 카운터 정보를 이용한 상기 제1 암호화 키를 연산하여 출력할 수 있다.The token processing device 100 may calculate the initial encryption key using the key serial information and the base token derivation key, and calculate the first encryption key using the initial encryption key and the encryption counter information. can be printed out.

이에 따라, 토큰 처리 장치(100)에서는 제1 가맹점에서만 사용 가능하도록 제1 암호화 키로 처리되면서도, 서버측에서 온전한 결제 수단 데이터를 보유하고 있지는 못하도록 제1 부분 및 나머지 제2 부분으로 분산 처리된 결제 수단 데이터를 이용한 분산형 결제 토큰이 구성될 수 있으며, 상기 분산형 결제 토큰은 직접 또는 중계 서버(200)를 경유하여 결제 단말(300)로 제공될 수 있다. Accordingly, in the token processing device 100, while being processed as the first encryption key so that it can be used only at the first affiliated store, the server side does not have complete payment method data, so that the first part and the remaining second part are distributed and processed payment means A distributed payment token using data can be constructed, and the distributed payment token can be provided to the payment terminal 300 directly or via the relay server 200.

그리고, 결제 단말(300)에서는 상기 제1 가맹점 전용 분산형 결제 토큰이 수신되면, 상기 분산형 결제 토큰 및 결제 정보(결제 금액, 결제 일시, 상품 데이터 등)를 이용한 결제 승인 요청 전문을 생성하여 중계 서버(200)로 전송할 수 있다. 이에 따라, 상기 결제 승인 요청 전문에는 상기 전문에 상기 분산형 결제 토큰이 포함되어 있음을 나타내는 분산형 결제 토큰 구분자 정보가 더 포함되어 있을 수 있다.In addition, when the payment terminal 300 receives the distributed payment token for the first affiliated store, it generates and relays a full payment approval request using the distributed payment token and payment information (payment amount, payment date and time, product data, etc.) It can be transmitted to the server 200. Accordingly, the full text of the payment approval request may further include distributed payment token identifier information indicating that the distributed payment token is included in the full text.

이에 따라, 중계 서버(200)에서는 결제 승인 요청 전문으로부터 상기 분산형 결제 토큰이 획득되는 경우, 상기 분산형 결제 토큰에 대응하는 복호화 요청을 토큰 처리 장치(100)로 전달할 수 있다.Accordingly, the relay server 200 may transmit a decryption request corresponding to the distributed payment token to the token processing device 100 when the distributed payment token is obtained from the full text of the payment approval request.

토큰 처리 장치(100)는 상기 결제 승인 요청 전문에 포함된 가맹점 정보 및 상기 분산형 결제 토큰을 이용하여 복호화를 시도하되, 복호화가 실패되는 경우 중계 서버(200)로 실패 정보를 전달하고, 중계 서버(200)는 결제 실패 정보를 생성하여 결제 단말(300)로 응답할 수 있다.The token processing device 100 attempts decryption using the affiliated store information included in the full payment approval request and the distributed payment token, but if decryption fails, transfers failure information to the relay server 200, relay server Step 200 may generate payment failure information and respond to the payment terminal 300 .

여기서, 결제가 실패되는 경우는 제1 가맹점이 아닌 다른 가맹점에서 결제 승인이 요청되어 잘못된 키 시리얼 정보가 매칭되거나, 암호화 카운팅이 매칭된 현재 거래가 아닌 다른 시점의 거래이거나, 결제 데이터의 제1 부분 데이터가 정상적으로 확인되지 않는 거래일 수 있는 바, 실질적으로 제1 가맹점에서의 유효한 카운팅 이루어진 거래에 대한 결제 데이터의 제1 부분이 확인되는 경우에만 정상 거래가 승인될 수 있게 된다.Here, if the payment fails, payment approval is requested from an affiliate store other than the first affiliate store, and the wrong key serial information is matched, or a transaction at a time other than the current transaction in which encryption counting is matched, or the first part of the payment data may be a transaction that is not normally confirmed, and a normal transaction can be approved only when the first part of the payment data for a transaction that is substantially counted in the first affiliated store is confirmed.

이에 따라, 토큰 처리 장치(100)는, 하드웨어 보안 모듈 장비(101)를 기반으로 하는 제1 암호화 키의 유도를 재수행하고, 결제 수단 데이터의 제1 부분을 포함하는 상기 분산형 결제 토큰과 이에 매핑 저장된 나머지 제2 부분의 결제 수단 데이터를 결합하여 암호화된 결제 수단 데이터를 획득하고, 이를 상기 제1 암호화 키로 복호화함으로써, 결제 수단 데이터 자체의 무결성과, 제1 가맹점의 유효성과, 거래 카운터의 유효성을 일시에 신속하게 검증하고, 검증 결과에 따른 온전한 결제 수단 데이터를 획득하여 중계 서버(200)로 제공할 수 있게 된다.Accordingly, the token processing device 100 performs the derivation of the first encryption key based on the hardware security module device 101 again, and maps the distributed payment token including the first part of the payment method data and thereto. The integrity of the payment method data itself, the validity of the first affiliated store, and the validity of the transaction counter are obtained by combining the stored second part of the payment method data to obtain the encrypted payment method data and decrypting it with the first encryption key. It is possible to quickly verify at one time, acquire complete payment method data according to the verification result, and provide it to the relay server 200.

이후 중계 서버(200)는 결제 수단 데이터를 이용한 카드사 서버(500)로의 결제 승인 요청 전문을 생성하여 카드사 서버(500)로 전송할 수 있으며, 카드사 서버(500)에서의 승인 응답을 수신하여 결제 단말(300)로 전송할 수 있게 된다. 또한, 중계 서버(200)에서는 승인 요청에 사용된 결제 수단 데이터가 폐기 처리됨으로써 사후 개인정보가 유출될 가능성을 제거할 수 있다.Thereafter, the relay server 200 may generate a payment approval request message to the card company server 500 using the payment method data and transmit it to the card company server 500, and receive an approval response from the card company server 500 to receive the payment terminal ( 300) can be transmitted. In addition, in the relay server 200, the payment method data used for the approval request is discarded, thereby removing the possibility of leaking personal information afterward.

한편, 위와 같은 동작을 위하여, 각 결제 단말(300), 중계 서버(200), 카드사 서버(500), 토큰 처리 장치(100)는 네트워크 통신망 또는 인터넷망으로의 망 접속이 가능하도록 통신 모듈이 탑재되며, 통신망 접속을 통해 상호 연계되도록 구성될 수 있다.Meanwhile, for the above operation, each payment terminal 300, relay server 200, card company server 500, and token processing device 100 are equipped with a communication module to enable network access to a network communication network or Internet network. and may be configured to be interconnected through a communication network connection.

또한, 결제 단말(300)은 승인 요청 전문을 생성하기 위한 POS 모듈(미도시), 중계 서버(200)등의 외부 서버와의 통신을 수행하기 위한 통신모듈(미도시), 데이터를 분배하는 일종의 관문(gateway) 역할을 수행하는 게이트웨이 모듈(미도시), 결제 정보 데이터 및 분산형 결제 토큰을 저장하거나 암호화된 결제수단 데이터를 일시 저장하기 위한 레지스트리(미도시) 등을 포함하여 구성될 수 있다.In addition, the payment terminal 300 includes a POS module (not shown) for generating an approval request message, a communication module (not shown) for communicating with an external server such as the relay server 200, and a kind of distributing data. It may be configured to include a gateway module (not shown) serving as a gateway, a registry (not shown) for storing payment information data and distributed payment tokens or temporarily storing encrypted payment means data.

도 2는 본 발명의 실시 예에 따른 토큰 처리 장치를 보다 구체적으로 도시한 블록도이다.2 is a block diagram showing a token processing device according to an embodiment of the present invention in more detail.

도 2를 참조하면, 본 발명의 실시 예에 따른 토큰 처리 장치(100)는, 제어부(110), 통신부(120), 가맹점 키 관리부(130), 암호화 처리부(140), 결제 토큰 처리부(150), 거래 카운터 관리부(160), 서비스 제공부(170), 저장부(180) 및 데이터 관리부(190)를 포함한다.Referring to FIG. 2 , the token processing device 100 according to an embodiment of the present invention includes a control unit 110, a communication unit 120, an affiliated store key management unit 130, an encryption processing unit 140, a payment token processing unit 150 , a transaction counter management unit 160, a service provider 170, a storage unit 180, and a data management unit 190.

제어부(110)는, 각 구성 요소들의 전반적인 동작을 제어하며, 본 발명의 실시 예에 따른 토큰 처리 장치(100)의 동작을 구동시키기 위한 하나 이상의 마이크로 프로세서를 포함할 수 있다.The control unit 110 may include one or more microprocessors for controlling the overall operation of each component and driving the operation of the token processing apparatus 100 according to an embodiment of the present invention.

통신부(120)는 중계 서버(200)와의 유무선 통신을 위해 데이터를 송수신하는 하나 이상의 통신 모듈을 포함할 수 있다. 통신 모듈은 유무선 통신 인터페이스 모듈을 포함할 수 있으며, 송신할 신호를 부호화 및 변조하고, 케이블, 안테나 등을 통해 수신된 신호를 복조 및 복호화하는 모뎀(modem)과, RF 신호를 처리하는 RF 프론트 엔드 등이 예시될 수 있다.The communication unit 120 may include one or more communication modules for transmitting and receiving data for wired/wireless communication with the relay server 200 . The communication module may include a wired/wireless communication interface module, a modem that encodes and modulates a signal to be transmitted, and demodulates and decodes a signal received through a cable or antenna, and an RF front end that processes an RF signal. etc. can be exemplified.

그리고, 가맹점 키 관리부(130)는, 각각의 가맹점에 대응하여 발급된 키 시리얼 정보를 매핑 저장 및 관리한다. 여기서 상기 키 시리얼 정보는 DUKPT DUKPT(Derived Unique Key Per Transaction) 기반의 KSN(Key Serial Number) 형식으로 저장 및 관리될 수 있으며, 가맹점 키 관리부(130)는 관리되는 각각의 가맹점 전용 KSN의 사용에 따라 각각의 특정 가맹점용 KSN을 갱신 처리할 수 있다.Also, the affiliate store key management unit 130 maps, stores, and manages key serial information issued in correspondence with each affiliate store. Here, the key serial information can be stored and managed in a DUKPT DUKPT (Derived Unique Key Per Transaction)-based KSN (Key Serial Number) format, and the affiliated store key management unit 130 uses the KSN dedicated to each affiliated store to be managed. The KSN for each specific affiliated store can be updated.

또한, 가맹점 키 관리부(130)에서 관리되는 특정 가맹점 전용 KSN은 하드웨어 보안 모듈 장비(101)에서 출력되는 베이스 토큰 유도 키와 연동될 수 있다. 여기서, 하드웨어 보안 모듈 장비(101)는, 물리적으로 보안화된 하드웨어 시스템을 통해 특정 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보용 초기 암호화 키(IPEK, Initial Pin Encryption Key) 연산을 위한 베이스 토큰 유도 키를 출력하는 장비일 수 있다.In addition, the specific affiliated store KSN managed by the affiliated store key management unit 130 may be interlocked with the base token derivation key output from the hardware security module device 101 . Here, the hardware security module device 101 is a base token for calculating an Initial Pin Encryption Key (IPEK) for key serial information corresponding to affiliated store information of a specific first affiliated store through a physically secured hardware system It may be a device that outputs an induction key.

이러한 하드웨어 보안 모듈 장비(101)는, HSM(Hardware Security Module)이라고도 하며, 암호 키를 생성 및 관리하기 위한 전용 하드웨어 시스템 장비로 사용되는 통상의 하드웨어 보안 모듈 장비(101)일 수 있다. 이는 하드웨어 노이즈를 소스로 하여 난수를 발생시키는 하드웨어적 난수 생성 기능을 구비하고, 암호키 탈취 방지를 위한 전용 OS 및 소프트웨어가 탑재될 수 있으며, 특히 물리적 공격에 대한 방어 기능을 포함하여, 공격 탐지시 보관 중인 암호키를 스스로 파기하는 기능을 구비할 수 있다. 나아가, 하드웨어 보안 모듈 장비(101)는 암호연산의 일부를 하드웨어 보안 모듈 장비(101) 내에서 수행하기 위한 암호 연산 기능 및 로그 관리 기능 등이 더 구비될 수 있다.This hardware security module device 101, also referred to as a hardware security module (HSM), may be a normal hardware security module device 101 used as a dedicated hardware system device for generating and managing encryption keys. It has a hardware random number generation function that generates random numbers using hardware noise as a source, and can be equipped with dedicated OS and software to prevent stealing of encryption keys. In particular, including a defense function against physical attacks, A function of self-destroying an encryption key in storage may be provided. Furthermore, the hardware security module device 101 may further include a cryptographic calculation function and a log management function for performing part of the cryptographic calculation within the hardware security module device 101 .

이러한 하드웨어 보안 모듈 장비(101)는 통상 카드 정보 암호화를 위한 암호 키를 생성하는데 이용될 수 있으나, 본 발명의 실시 예에 따른 분산형 결제 토큰을 생성하기 위하여는, 상기 특정 가맹점의 KSN 정보와 연산되어 초기 암호화 키(IPEK)를 획득할 수 있도록 하는 토큰용 베이스 유도 키(BDK, Base Derivation Key)를 획득하는데 이용될 수 있다. 토큰용 베이스 유도 키는, 베이스 토큰 유도 키라고도 할 수 있으며, 상기 제1 암호화 키를 획득하기 위한 가장 최상단의 고유 키일 수 있는 바, 하드웨어 보안 모듈 장비(101)를 통한 암호화 프로세스의 강력한 보안 유지가 가능하게 된다.This hardware security module device 101 can be used to generate an encryption key for encrypting card information, but in order to generate a distributed payment token according to an embodiment of the present invention, KSN information and calculation of the specific affiliated store It can be used to obtain a base derivation key (BDK) for a token that enables an initial encryption key (IPEK) to be obtained. The base derivation key for the token may also be referred to as the base token derivation key, and may be the topmost unique key for acquiring the first encryption key, so that strong security of the encryption process through the hardware security module equipment 101 is maintained. It becomes possible.

그리고, 암호화 처리부(140)는 상기 가맹점 전용 KSN과, 상기 하드웨어 보안 모듈 장비(101)의 베이스 토큰 유도 키를 이용한 초기 암호화 키를 연산할 수 있다. 여기서, 초기 암호화 키는 IPEK(Initial Pin Encryption Key) 형식이 예시될 수 있으며, IPEK와 암호화 카운터 정보(암호화 KSN 등)를 연산하여 본 발명의 실시 예에 따른 상기 제1 암호화 키가 최종적으로 연산될 수 있다.In addition, the encryption processing unit 140 may calculate an initial encryption key using the KSN dedicated to the affiliated store and the base token derivation key of the hardware security module device 101 . Here, the initial encryption key may be in the form of IPEK (Initial Pin Encryption Key), and IPEK and encryption counter information (encryption KSN, etc.) are calculated to finally calculate the first encryption key according to an embodiment of the present invention. can

여기서, 거래 카운터 관리부(160)는, 상기 암호화 카운터 정보를 저장 및 관리할 수 있는 바, 암호화 카운터 정보는 각 거래에 따른 결제 수단 데이터의 암호화가 처리됨에 따라, 각 거래에 대응하여 증가하는 방향으로만 갱신가능한 일련번호 정보로서, 암호화 KSN을 통해 산출될 수 있다.Here, the transaction counter management unit 160 may store and manage the encryption counter information, and the encryption counter information increases in response to each transaction as encryption of payment method data according to each transaction is processed. As serial number information that can only be renewed, it can be calculated through encrypted KSN.

이에 따라, 암호화 처리부(140)는, 상기 제1 암호화 키가 획득되면 상기 제1 암호화 키를 이용한 상기 결제 수단 데이터의 암호화를 처리할 수 있는 바, 상기 제1 암호화 키는 대칭 키 방식의 암호화 키일 수 있다. 이는 추후 복호화시 동일한 키를 확인하여 이용하기 위함이며, 예를 들어, AES 128/256 방식의 대칭 키 암호화 방식 등이 예시될 수 있다.Accordingly, when the first encryption key is obtained, the encryption processing unit 140 may process encryption of the payment means data using the first encryption key, wherein the first encryption key is a symmetric key type encryption key. can This is to confirm and use the same key during decryption later. For example, a symmetric key encryption method of the AES 128/256 method may be exemplified.

그리고, 결제 토큰 처리부(150)는, 상기 암호화된 결제 수단 데이터의 제1 부분과, 상기 암호화 카운터 정보에 기초하여, 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰을 생성할 수 있다.Further, the payment token processing unit 150 may generate a distributed payment token for the first affiliated store-only transaction based on the first part of the encrypted payment method data and the encryption counter information.

보다 구체적으로, 결제 토큰 처리부(150)는, 암호화된 결제 수단 데이터의 제1 부분에 대응하는 적어도 일부를 추출하고, 상기 암호화 KSN 정보에서 획득되는 암호화 카운터 정보를 결합시켜 상기 분산형 결제 토큰을 구성할 수 있다.More specifically, the payment token processing unit 150 extracts at least a part corresponding to the first part of the encrypted payment means data, and combines the encryption counter information obtained from the encrypted KSN information to configure the distributed payment token. can do.

이에 따라, 서비스 제공부(170)는, 구성된 분산형 결제 토큰을 사전 설정된 전문 형태로 변환하여 통신부(120)를 통해 중계 서버(200) 또는 결제 단말(300)로 제공할 수 있다.Accordingly, the service providing unit 170 may convert the configured distributed payment token into a preset message form and provide it to the relay server 200 or the payment terminal 300 through the communication unit 120 .

여기서, 상기 사전 설정된 전문 형태는, 상기 분산형 결제 토큰을 상기 제1 가맹점 전용 거래에 대응하는 결제 수단으로만 사용 가능하도록 지시된 텍스트 전문 형태를 포함할 수 있으며, 분산형 결제 토큰은 Base64 포맷의 문자열 토큰이거나, HexString 포맷의 문자열 토큰으로 구성되어 상기 텍스트 전문에 포함될 수 있다.Here, the preset telegram form may include a text telegram format instructed to use the distributed payment token only as a payment method corresponding to the transaction exclusively for the first affiliated store, and the distributed payment token is in Base64 format It may be a string token or a string token in HexString format and included in the full text.

이러한 분산형 결제 토큰 전문에는 상기 분산형 토큰의 유효 사용 횟수 또는 유효 사용 기간이 지정될 수 있는 바, 이러한 각 분산형 토큰 자체의 유효 사용 횟수 또는 유효 사용 기간은 서비스 제공부(170)를 통해 별도 관리될 수 있다.The number of valid uses or the valid period of use of the distributed token may be specified in the full text of the distributed payment token. can be managed

한편, 데이터 관리부(190)는, 상기 암호화된 결제 수단 데이터의 상기 제1 부분을 제외한 나머지 제2 부분과, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 매칭시켜, 상기 분산형 결제 토큰을 이용한 결제 승인 요청 전문으로부터 상기 암호화된 결제 수단 데이터를 복호화하기 위한, 매핑 데이터베이스로 저장부(180)에 저장 및 관리할 수 있다.On the other hand, the data management unit 190 matches the second part of the encrypted payment method data except for the first part with key serial information issued in correspondence with the affiliated store information of the first affiliated store, so that the distributed type It can be stored and managed in the storage unit 180 as a mapping database for decrypting the encrypted payment method data from the full text of the payment approval request using the payment token.

이러한 매핑 데이터베이스는, 결제 승인 요청 전문의 분산형 결제 토큰의 제1 부분의 결제 수단 데이터 대응하여, 상기 제2 부분을 색인하기 위한 데이터베이스로 구성될 수 있으며, 상기 키 시리얼 정보를 해시(HASH) 함수 처리하여 색인 정보로서 저장 및 관리할 수 있다.This mapping database may be configured as a database for indexing the second part in correspondence with the payment method data of the first part of the distributed payment token in the full text of the payment approval request, and converting the key serial information to a hash function It can be processed and stored and managed as index information.

이에 따라, 데이터 관리부(190)는 결제 승인 요청 전문이 통신부(120)를 통해 수신되고, 분산형 결제 토큰이 확인되는 경우, 상기 분산형 결제 토큰에 포함된 제1 가맹점의 가맹점 식별 정보를 가맹점 키 관리부(130)로 전달하여 상기 제1 가맹점의 가맹점 식별 정보에 대응하는 키 시리얼 정보(가맹점 KSN)을 획득하며, 상기 가맹점 KSN을 해시 함수 처리하여 획득된 색인 정보를 이용하여, 상기 암호화된 결제 수단 데이터의 제2 부분을 상기 매핑 데이터베이스에서 색인할 수 있다.Accordingly, when the payment approval request is received through the communication unit 120 and the distributed payment token is confirmed, the data management unit 190 converts the affiliated store identification information of the first affiliated store included in the distributed payment token into an affiliated store key Transfer to the management unit 130 to obtain key serial information (affiliate store KSN) corresponding to the affiliate store identification information of the first affiliate store, and process the affiliate store KSN with a hash function to obtain the encrypted payment method using index information obtained A second portion of data may be indexed in the mapping database.

데이터 관리부(190)에서 획득된 제2 부분의 데이터는 상기 분산형 결제 토큰에 포함된 제1 부분의 데이터와 결합되어 암호화된 결제 수단 데이터를 다시 구성할 수 있게 된다.The data of the second part obtained from the data management unit 190 is combined with the data of the first part included in the decentralized payment token to reconstruct encrypted payment method data.

또한, 암호화 처리부(140)는, 결제 승인 요청 전문의 분산형 결제 토큰에 포함된 상기 암호화 카운터 정보(암호화 KSN 기반 카운터 정보) 및 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보(가맹점 KSN)를 이용하여, 상기 하드웨어 보안 모듈 장비(101)를 통해 처리된 상기 제1 암호화 키를 다시 획득할 수 있는 바, 상기 암호화된 결제 수단 데이터는 상기 제1 암호화 키를 이용하여 복호화 처리될 수 있다.In addition, the encryption processing unit 140, the encryption counter information (encrypted KSN-based counter information) included in the distributed payment token of the payment approval request message and the key serial information issued in response to the affiliate store information of the first affiliate store (affiliate store KSN), the first encryption key processed through the hardware security module device 101 can be obtained again, and the encrypted payment means data can be decrypted using the first encryption key. there is.

이에 따라, 서비스 제공부(170)는, 상기 복호화 처리된 결제 수단 데이터를 중계 서버(200)로 제공할 수 있으며, 중계 서버(200)에서는 결제 수단 데이터를 이용한 카드사 서버(500) 등의 결제사 서버로의 결제 승인요청 전문을 생성하여 통신부(120)를 통해 전송함으로써, 최종 결제 승인 및 응답 처리가 이루어지도록 한다. 여기서 사용된 결제 수단 데이터는 사용 후 삭제 처리되며, 상기 분산화된 결제 토큰의 경우, 결제 단말(300)을 통한 사용 완료 정보 수신에 따라 삭제 처리될 수 있다.Accordingly, the service provider 170 may provide the decrypted payment method data to the relay server 200, and the relay server 200 may use the payment method data to pay a payment company such as the card company server 500. By generating a payment approval request message to the server and transmitting it through the communication unit 120, final payment approval and response processing are performed. The payment method data used here is deleted after use, and in the case of the decentralized payment token, it may be deleted according to the use completion information received through the payment terminal 300 .

이와 같은 구성에 따라, 분산화된 결제 토큰 기반의 제1 가맹점 전용 결제 처리가 가능하게 되며, 전문으로부터 식별된 가맹점과 실제 가맹점 KSN이 일치하지 않는 경우, 전용 가맹점이 아니므로 제2 부분의 결제 수단 데이터 색인이 실패되고, 암호화 카운터 정보(KSN 카운터)가 일치하지 않는 경우, 제1 암호화 키를 유도할 수 없으므로 복호화가 불가능하게 되며, 분산화된 토큰의 제1 부분 또는 상기 제2 부분의 결제 수단 데이터 자체만으로는 실제 결제 수단 데이터 복원이 불가하게 되는 바, 중계 서버(200) 또는 토큰 처리 장치(100) 자체가 해킹되어 저장정보가 유출되더라도 재사용을 근본적으로 방지할 수 있는 효과가 있다.According to this configuration, payment processing exclusively for the first affiliate based on the decentralized payment token becomes possible, and if the affiliate identified from the full text and the actual affiliate KSN do not match, it is not a dedicated affiliate, so the payment method data of the second part If the index fails and the encryption counter information (KSN counter) does not match, the first encryption key cannot be derived, so decryption becomes impossible, and the first part of the distributed token or the payment method data itself of the second part Since it is impossible to restore the actual payment method data alone, even if the relay server 200 or the token processing device 100 itself is hacked and the stored information is leaked, reuse can be fundamentally prevented.

한편, 저장부(180)는 토큰 처리 장치(100)에서 처리되는 암호화 정보, 결제 수단 데이터, 가맹점 식별 정보, 분산 토큰 정보, 매핑 데이터베이스 등을 저장 및 관리할 수 잇다. 저장부(180)는 RAM(Random Access Memory), 플레시메모리, ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electronically Erasable and Programmable ROM), 레지스터, 하드디스크, 리무버블 디스크, 메모리 카드 등과 같은 내장된 형태의 저장소자는 물론, USB 메모리 등과 같은 착탈가능한 형태의 저장소자로 구현될 수도 있다.Meanwhile, the storage unit 180 may store and manage encryption information processed by the token processing device 100, payment method data, member store identification information, distributed token information, and a mapping database. The storage unit 180 includes RAM (Random Access Memory), flash memory, ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electronically Erasable and Programmable ROM), registers, hard disks, removable disks, and memory cards. It may be implemented as a storage device of a built-in type such as the like, as well as a storage device of a removable type such as a USB memory.

도 3은 본 발명의 실시 예에 따른 토큰 처리 장치의 토큰 제공 동작을 설명하기 위한 흐름도이며, 도 4는 본 발명의 실시 예에 따른 분산 토큰화 처리 프로세스를 도식화하여 설명하기 위한 도면이다.3 is a flowchart illustrating a token provision operation of a token processing device according to an embodiment of the present invention, and FIG. 4 is a diagram for illustrating and explaining a distributed tokenization processing process according to an embodiment of the present invention.

도 3 및 도 4를 참조하면, 먼저 토큰 처리 장치(100)는, 결제 단말(300) 네트워크에 대응하는 제1 가맹점용 토큰 발행 요청을 수신한다(S101).Referring to FIGS. 3 and 4 , first, the token processing device 100 receives a token issuance request for a first affiliated store corresponding to the payment terminal 300 network (S101).

그리고, 토큰 처리 장치(100)는 상기 토큰 발행 요청에 포함된 암호화 대상 데이터를 획득한다(S103).Then, the token processing device 100 obtains encryption target data included in the token issuance request (S103).

여기서, 암호화 대상 데이터는, 도 4에 도시된 바와 같이 카드번호 및 유효기간 정보를 포함할 수 있으며, 구분자 정보, 필터 정보 및 CRC 정보를 더 포함할 수 있다.Here, the data to be encrypted may include card number and expiration date information as shown in FIG. 4, and may further include delimiter information, filter information, and CRC information.

그리고, 도 4에 도시된 바와 같이, 토큰 처리 장치(100)는 통상의 문자열로 구성된 암호화 대상 데이터를 암호화 처리를 용이하게 하기 위한 BCD(이진화 십진법 Binary-coded decimal, BCD)타입으로 변환 처리할 수 있으며, 이는 이진수 네 자리를 묶어 십진수 한 자리로 사용하는 기수법으로, 신속한 변환을 가능하게 한다.And, as shown in FIG. 4, the token processing device 100 may convert data to be encrypted composed of a normal string into a BCD (Binary-coded Decimal, BCD) type to facilitate encryption processing. This is a numeral system in which four binary digits are combined into one decimal digit, enabling rapid conversion.

한편, 도 3을 다시 참조하면 토큰 처리 장치(100)는 상기 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보(가맹점 KSN)을 획득하며(S105), 상기 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보를 하드웨어 보안 모듈 장비(101)에 입력하여 상기 키 시리얼 정보용 초기 암호화 키 연산을 위한 베이스 토큰 유도 키를 획득한다(S107).Meanwhile, referring to FIG. 3 again, the token processing device 100 obtains key serial information (merchant KSN) corresponding to the affiliate store information of the first affiliate store (S105), and obtains a key corresponding to the affiliate store information of the first affiliate store. Serial information is input to the hardware security module device 101 to obtain a base token derivation key for initial encryption key calculation for the key serial information (S107).

도 4를 참조하면, 하드웨어 보안 모듈 장비(101)는 가맹점 KSN과 연동되는 토큰 베이스 유도 키(BDK)를 하드웨어적인 난수 처리에 따라 보안화된 상태로 생성할 수 있다.Referring to FIG. 4 , the hardware security module device 101 may generate a token base derivation key (BDK) linked with an affiliated store KSN in a secure state according to hardware random number processing.

그리고, 도 3 및 도 4를 참조하면, 토큰 처리 장치(100)는, 상기 키 시리얼 정보(가맹점 KSN) 및 상기 베이스 토큰 유도 키를 이용하여 상기 초기 암호화 키(가맹점 IPEK)를 연산하고, 상기 초기 암호화 키(가맹점 IPEK)와 상기 암호화 대상 데이터에 대응하는 암호화 카운터 정보(암호화 KSN의 KSN 거래 카운터)를 이용하여, 제1 암호화 키를 연산한다(S109).And, referring to FIGS. 3 and 4, the token processing device 100 calculates the initial encryption key (merchant shop IPEK) using the key serial information (affiliate shop KSN) and the base token derivation key, and the initial A first encryption key is calculated using an encryption key (affiliate store IPEK) and encryption counter information (KSN transaction counter of encryption KSN) corresponding to the data to be encrypted (S109).

여기서, 상기 제1 암호화 키는 다음 카드 암호화용 키로써, FK(Future Key)라고도 할 수 있으며, 도 4에서 카드 암호화 FK 가 상기 제1 암호화 키로 기능할 수 있다. 이는 제1 가맹점 전용 결제수단 암호화 키로서 할당될 수 있는 바, 상기 BCD 타입 변환된 암호화 대상 데이터는 카드 암호화 FK로 암호화 처리되어 카드번호 암호화 데이터를 구성할 수 있다.Here, the first encryption key is a key for encrypting the next card and may also be referred to as FK (Future Key), and in FIG. 4 , the card encryption FK may function as the first encryption key. This may be assigned as a payment method encryption key dedicated to the first affiliated store, and the BCD type-converted data to be encrypted may be encrypted with a card encryption FK to form card number encryption data.

한편, 도 3을 참조하면 토큰 처리 장치(100)는, 암호화된 카드 정보의 제1 부분과, 상기 암호화 카운터 정보에 기초하여 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰을 생성한다(S111).Meanwhile, referring to FIG. 3, the token processing device 100 generates a distributed payment token for the first affiliated store-only transaction based on the first part of the encrypted card information and the encryption counter information (S111) .

다시 도 4를 참조하면, 카드번호 암호화 데이터의 상위 8BYTE의 정보와, 카드 암호화 KSN의 KSN 거래 카운터 정보를 연결시켜, 문자열 변환 처리(Base 64, HexString 등)를 수행하면 분산화 처리된 분산형 결제 토큰이 구성될 수 있다.Referring to FIG. 4 again, when a string conversion process (Base 64, HexString, etc.) is performed by connecting the upper 8 BYTE information of the card number encrypted data with the KSN transaction counter information of the card encrypted KSN, a decentralized distributed payment token is obtained. can be configured.

그리고, 도 3을 참조하면 토큰 처리 장치(100)는, 암호화된 카드 정보의 상기 제1 부분을 제외한 나머지 제2 부분과, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 매칭시켜, 상기 분산형 결제 토큰을 이용한 결제 승인 요청으로부터 상기 암호화된 카드 정보를 복호화하기 위한 매핑 데이터베이스로 저장한다(S113).And, referring to FIG. 3, the token processing device 100 matches the second part of the encrypted card information excluding the first part with the key serial information issued in correspondence with the affiliate store information of the first affiliate store. , The encrypted card information from the payment approval request using the distributed payment token is stored as a mapping database for decryption (S113).

도 4에 도시된 바와 같이, 가맹점 KSN은 HASH 처리되어, 나머지 제2 부분(하위 8BYTE)데이터의 색인 키로서 사용될 수 있으며, 이러한 매핑 데이터베이스의 저장 및 관리에 따라, 제1 부분 및 제2 부분의 상호 색인 매핑 및 결합이 용이하게 이루어진다.As shown in FIG. 4, the affiliate store KSN can be HASH-processed and used as an index key for the remaining second part (lower 8 BYTE) data, and according to the storage and management of the mapping database, the first part and the second part Cross-index mapping and joining is easily accomplished.

그리고, 구성된 분산형 결제 토큰은 결제 단말(300) 또는 중계 서버(200)로 배포될 수 있다(S115). 또는, 상기 분산형 결제 토큰이 중계 서버, 결제 단말 또는 특정 사용자 단말로 배포되어 온라인 결제에도 이용될 수 있다.Then, the configured distributed payment token may be distributed to the payment terminal 300 or the relay server 200 (S115). Alternatively, the distributed payment token may be distributed to a relay server, a payment terminal, or a specific user terminal and used for online payment.

도 5는 본 발명의 실시 예에 따른 토큰 처리 장치의 복호화 동작을 설명하기 위한 흐름도이며, 도 6은 본 발명의 실시 예에 따른 분산 토큰 기반 복호화 처리 프로세스를 도식화하여 설명하기 위한 도면이다.5 is a flowchart illustrating a decryption operation of a token processing device according to an embodiment of the present invention, and FIG. 6 is a diagram illustrating and explaining a distributed token-based decryption processing process according to an embodiment of the present invention.

도 5 및 도 6을 참조하면, 사전 저장된 매핑 데이터베이스 및 하드웨어 보안 모듈 장비(101)를 이용하여 분산형 결제 토큰에 대응하는 결제 수단 데이터를 복원하는 프로세스를 나타내는 것으로서, 먼저 토큰 처리 장치(100)는 중계 서버(200)로부터 분산형 결제 토큰을 포함하는 카드 정보 복호화 요청을 수신한다(S201).5 and 6, it shows a process of restoring payment method data corresponding to a distributed payment token using a pre-stored mapping database and hardware security module equipment 101. First, the token processing device 100 A card information decryption request including a distributed payment token is received from the relay server 200 (S201).

여기서 카드 정보 복호화 요청은 결제 단말(300)의 결제 승인요청 전문으로부터 생성될 수 있으며, 상기 분산형 결제 토큰 및 가맹점 식별 정보가 포함될 수 있다.Here, the card information decryption request may be generated from the full payment approval request of the payment terminal 300, and may include the distributed payment token and member store identification information.

그리고, 토큰 처리 장치(100)는, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 이용하여, 사전 저장된 제2 부분을 획득한다(S103).Then, the token processing device 100 acquires the pre-stored second part by using key serial information issued corresponding to the affiliated store information of the first affiliated store (S103).

이를 위해, 토큰 처리 장치(100)는 카드 정보 복호화 요청에 포함된 가맹점 식별 정보에 대응하여, 가맹점 키 관리부(130)에서 식별된 가맹점 키 시리얼 정보를 획득할 수 있으며, 상기 키 시리얼 정보를 해시(HASH)함수 처리하고, 상기 해시 함수 처리된 키 시리얼 정보를 키로 사용하여 상기 매핑 데이터베이스에서 상기 제2 부분을 색인할 수 있다.To this end, the token processing device 100 may obtain affiliated store key serial information identified in the affiliated store key management unit 130 in response to affiliated store identification information included in the card information decryption request, and hash the key serial information ( HASH) function, and the second part may be indexed in the mapping database using the hash function-processed key serial information as a key.

이후, 토큰 처리 장치(100)는, 분산형 결제 토큰에 포함된 결제 수단 데이터의 제1 부분과 상기 제2 부분을 결합하여 암호화된 카드 정보를 획득한다(S205).Thereafter, the token processing device 100 acquires encrypted card information by combining the first part and the second part of the payment method data included in the distributed payment token (S205).

그리고, 토큰 처리 장치(100)는, 암호화 카운터 정보 및 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보에 기초한 상기 하드웨어 보안 모듈 장비 기반 연산을 수행하여, 상기 제1 암호화 키를 획득한다(S207).Then, the token processing device 100 obtains the first encryption key by performing the hardware security module equipment-based operation based on the key serial information issued in correspondence with the encryption counter information and the affiliate store information of the first affiliate store (S207).

이후, 토큰 처리 장치(100)는 제1 암호화 키를 이용하여 상기 암호화 카드 정보를 복호화 처리하며(S209), 복호화된 카드 정보는 중계 서버(200)로 제공될 수 있다(S211).Thereafter, the token processing device 100 decrypts the encrypted card information using the first encryption key (S209), and the decrypted card information may be provided to the relay server 200 (S211).

상기 제1 암호화 키를 획득 및 복호화하는 과정에 대하여, 도 6에 보다 구체적으로 도시되어 있다. 도 6을 참조하면, 토큰 결제 승인요청 전문에서는 분산형 결제 토큰 데이터로서 카드 번호 암호화 데이터의 상위 8BYTE와, KSN 거래 카운터가 식별될 수 있으며, 가맹점 식별 정보(가맹점 ID, TID)에 대응하는 가맹점 KSN이 조회 처리될 수 있다.A process of obtaining and decrypting the first encryption key is illustrated in more detail in FIG. 6 . Referring to FIG. 6, in the full text of the token payment approval request, the upper 8 bytes of the card number encryption data and the KSN transaction counter can be identified as distributed payment token data, and the affiliate store KSN corresponding to the affiliate store identification information (merchant store ID, TID) This query can be processed.

이에 따라, 토큰 처리 장치(100)는 가맹점 KSN을 HASH 처리한 값을 키로 사용하여 매핑 데이터베이스에서 조회할 수 있으며, 이로부터 색인된 제2 부분(하위 8BYTE) 데이터는 상기 제1 부분과 결합되어 카드번호 암호화 데이터(16BYTE)를 구성할 수 있게 된다.Accordingly, the token processing device 100 may search the mapping database using the HASH-processed value of the merchant KSN as a key, and the second part (lower 8BYTE) data indexed therefrom is combined with the first part to obtain a card Number encryption data (16BYTE) can be configured.

그리고, 토큰 처리 장치(100)는 가맹점 KSN을 이용한 토큰 BDK를 재출력시켜, 가맹점 IPEK를 연산할 수 있으며, KSN 거래 카운터를 이용하여 카드 암호화 FK를 재구성할 수 있는 바, 이는 가맹점 전용 결제수단 데이터의 복호화 키로 이용될 수 있다.In addition, the token processing device 100 may re-output the token BDK using the affiliate store KSN, calculate the affiliate IPEK, and reconstruct the card encryption FK using the KSN transaction counter, which is the affiliate store exclusive payment method data It can be used as a decryption key for

이에 따라 복호화된 카드번호 데이터는 다시 중계 서버(200)로 전달됨으로써, 카드사 서버(500)를 통한 결제 승인 처리가 이루어지게 된다.Accordingly, the decrypted card number data is transmitted to the relay server 200 again, so that payment approval processing is performed through the card company server 500 .

도 7은 본 발명의 실시 예에 따른 결제 서비스 제공 서버를 보다 구체적으로 도시한 블록도이다.7 is a block diagram illustrating a payment service providing server in more detail according to an embodiment of the present invention.

도 7을 참조하면 본 발명의 실시 예에 따른 중계 서버(200)는, 결제사 서버인 카드사 서버(500)와 결제 단말(300) 간의 결제 승인 처리를 중계하는 결제 서비스 제공 서버로 동작할 수 있으며, 본 발명의 실시 예에 따른 결제 서비스 제공을 위한 분산형 결제 토큰의 발행 및 관리와, 분산형 결제 토큰 기반의 결제 승인요청 전문 처리, 승인 요청 및 응답을 수행할 수 있다.Referring to FIG. 7 , the relay server 200 according to an embodiment of the present invention may operate as a payment service providing server that relays payment approval processing between the card company server 500, which is a payment company server, and the payment terminal 300, and , Issuance and management of distributed payment tokens for payment service provision according to an embodiment of the present invention, specialized processing of payment approval requests based on distributed payment tokens, and approval requests and responses can be performed.

이를 위해 본 발명의 실시 예에 따른 중계 서버(200)는, 도 7에 도시된 바와 같이, 제어부(210), 통신부(220), 가맹점 정보 관리부(230), 분산형 결제 토큰 관리부(240), 결제 승인 처리부(250) 및 저장부(260)를 포함한다.To this end, the relay server 200 according to an embodiment of the present invention, as shown in FIG. It includes a payment approval processing unit 250 and a storage unit 260 .

제어부(210)는, 중계 서버(200)의 각 구성 요소들의 전반적인 동작을 제어하며, 본 발명의 실시 예에 따른 중계 서버(210)의 분산형 결제 토큰 기반의 결제 프로세스를 실행시키기 위한 하나 이상의 마이크로 프로세서를 포함할 수 있다.The control unit 210 controls the overall operation of each component of the relay server 200, and one or more microcontrollers for executing a payment process based on the distributed payment token of the relay server 210 according to an embodiment of the present invention. may include a processor.

통신부(220)는 결제 단말(300), 카드사 서버(500) 또는 토큰 처리 장치(100)와의 유무선 통신을 위해 데이터를 송수신하는 하나 이상의 통신 모듈을 포함할 수 있다. 통신 모듈은 유무선 통신 인터페이스 모듈을 포함할 수 있으며, 송신할 신호를 부호화 및 변조하고, 케이블, 안테나 등을 통해 수신된 신호를 복조 및 복호화하는 모뎀(modem)과, RF 신호를 처리하는 RF 프론트 엔드 등이 예시될 수 있다.The communication unit 220 may include one or more communication modules for transmitting/receiving data for wired/wireless communication with the payment terminal 300, the card company server 500, or the token processing device 100. The communication module may include a wired/wireless communication interface module, a modem that encodes and modulates a signal to be transmitted, and demodulates and decodes a signal received through a cable or antenna, and an RF front end that processes an RF signal. etc. can be exemplified.

가맹점 정보 관리부(230)는, 결제 단말(300)에 대응하는 가맹점 정보를 사전 등록받아 저장 및 관리할 수 있다. 가맹점 정보는 예를 들어, 가맹점 명칭, 사업자 등록번호, 가맹점 주소, 가맹점 전화번호 등을 포함할 수 있으며, 가맹점에 대응하여 등록된 단말의 식별 정보(TID)가 가맹점 식별 정보로서 저장될 수 있다. 또한, 복수의 결제 단말(300)의 각각의 단말 식별 정보(TID)가 하나의 가맹점 식별 정보에 그룹핑되어 저장될 수도 있다. 따라서, 단말 식별 정보는, 전술한 분산형 결제 토큰을 사용할 제1 가맹점을 식별하기 위한 가맹점 식별 정보로 이용될 수 있다.The affiliated store information management unit 230 may register, store, and manage affiliated store information corresponding to the payment terminal 300 in advance. Affiliate store information may include, for example, affiliate store name, business registration number, affiliate store address, affiliate phone number, etc., and identification information (TID) of a terminal registered in correspondence with the affiliate store may be stored as affiliate store identification information. In addition, terminal identification information (TID) of each of the plurality of payment terminals 300 may be grouped and stored in one member store identification information. Accordingly, the terminal identification information may be used as affiliate store identification information for identifying the first affiliate store to use the above-described distributed payment token.

그리고, 분산형 결제 토큰 관리부(240)는, 결제 단말(300)로부터 통신부(220)를 통해 상기 결제 단말에 대응하는 제1 가맹점에서만 사용 가능한 분산형 토큰 발행 요청을 수신하는 경우, 상기 토큰 발행 요청에 포함된 결제 수단 정보 및 가맹점 식별 정보를 토큰 처리 장치(100)로 전달하며, 상기 토큰 처리 장치(100)에서 하드웨어 보안 모듈 장비(101)를 이용하여 상기 제1 가맹점 전용으로 암호화한 결제 수단 암호화 데이터의 제1 부분을 이용한 분산형 결제 토큰을 수신하여 획득할 수 있다.In addition, when the distributed payment token management unit 240 receives a request for issuing a distributed token that can only be used at the first affiliated store corresponding to the payment terminal through the communication unit 220 from the payment terminal 300, the token issuance request Transfers the payment method information and affiliate identification information included in the token processing device 100, and uses the hardware security module equipment 101 in the token processing device 100 to encrypt the payment method encrypted exclusively for the first affiliated store A decentralized payment token using the first part of the data may be received and obtained.

여기서, 상기 분산형 결제 토큰을 생성하는 프로세스는 도 1 내지 도 6을 통해 전술한 바를 참조하여 동일한 방식으로 수행될 수 있다.Here, the process of generating the distributed payment token may be performed in the same manner as described above with reference to FIGS. 1 to 6.

그리고, 분산형 결제 토큰 관리부(240)는 상기 분산형 결제 토큰을 포함하는 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰 전문을 상기 결제 단말로 전송 처리할 수 있다.In addition, the distributed payment token management unit 240 may transmit and process the full text of the distributed payment token for the transaction exclusively for the first affiliated store including the distributed payment token to the payment terminal.

한편, 결제 승인 처리부(250)는, 통신부(220)를 통해 상기 결제 단말(300)로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신할 수 있으며, 상기 결제 승인요청 전문의 상기 분산형 결제 토큰 및 가맹점 식별 정보를 토큰 처리 장치(100)로 전달하며, 상기 토큰 처리 장치(100)로부터 상기 결제 수단 암호화 데이터를 복호화한 상기 결제 수단 정보를 획득하고, 상기 결제 수단 정보를 이용한 결제사 서버인 카드사 서버(500)로의 결제 승인 요청을 처리할 수 있다.Meanwhile, the payment approval processing unit 250 may receive a full text of a payment approval request using the distributed payment token from the payment terminal 300 through the communication unit 220, and the distributed payment of the full text of the payment approval request. The token and merchant identification information are transferred to the token processing device 100, the payment method information obtained by decrypting the payment method encryption data is obtained from the token processing device 100, and the payment company server using the payment method information A payment approval request to the card company server 500 may be processed.

그리고, 결제 승인 처리부(250)는 통신부(220)를 통해 상기 카드사 서버(500)로부터의 결제 승인 응답을 수신하여 결제 단말(300)로 전달할 수 있다.Also, the payment approval processing unit 250 may receive a payment approval response from the card company server 500 through the communication unit 220 and transmit it to the payment terminal 300 .

한편, 저장부(260)는 중계 서버(200)에서 처리되는 결제 승인요청 전문, 분산형 결제 토큰, 가맹점 정보, 결제 수단 데이터 등을 저장 및 관리할 수 잇다. 저장부(260)는 RAM(Random Access Memory), 플레시메모리, ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electronically Erasable and Programmable ROM), 레지스터, 하드디스크, 리무버블 디스크, 메모리 카드 등과 같은 내장된 형태의 저장소자는 물론, USB 메모리 등과 같은 착탈가능한 형태의 저장소자로 구현될 수도 있다.On the other hand, the storage unit 260 may store and manage the full text of payment approval requests processed by the relay server 200, distributed payment tokens, member store information, payment method data, and the like. The storage unit 260 includes RAM (Random Access Memory), flash memory, ROM (Read Only Memory), EPROM (Erasable Programmable ROM), EEPROM (Electronically Erasable and Programmable ROM), registers, a hard disk, a removable disk, and a memory card. It may be implemented as a storage device of a built-in type such as the like, as well as a storage device of a removable type such as a USB memory.

도 8은 본 발명의 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스를 설명하기 위한 래더 다이어그램이다.8 is a ladder diagram for explaining a distributed payment token-based payment processing process according to an embodiment of the present invention.

도 8을 참조하면, 본 발명의 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스는, 먼저 결제 단말(300)에서 결제 프로그램이 실행되며(S1001), 결제 단말(300)은 사용자로부터 결제 정보를 입력받는다(S1003).Referring to FIG. 8 , in the distributed payment token-based payment processing process according to an embodiment of the present invention, the payment program is first executed in the payment terminal 300 (S1001), and the payment terminal 300 receives payment information from the user. Input is received (S1003).

그리고, 결제 단말(300)은, 사용자로부터 입력된 결제 수단 데이터에 대응하는 분산형 결제 토큰 발급 요청을 중계 서버(200)로 전송한다(S1005).Then, the payment terminal 300 transmits a distributed payment token issuance request corresponding to the payment method data input from the user to the relay server 200 (S1005).

이후, 중계 서버(200)에서는 결제 수단 데이터 및 가맹점 식별 정보를 포함하는 분산형 결제 토큰 발급 요청을 토큰 처리 장치(100)로 전달한다(S1007).Thereafter, the relay server 200 transmits a distributed payment token issuance request including payment method data and member store identification information to the token processing device 100 (S1007).

그리고, 토큰 처리 장치(100)는 결제 수단 데이터를 결제 단말에 대응하는 제1 가맹점 전용 암호화 처리하며(S1009), 암호화된 결제 수단 데이터의 제1 부분 데이터와 암호화 카운터를 이용한 분산형 결제 토큰을 생성하고(S1011), 나머지 제2 부분 데이터 및 가맹점 KSN의 해시 정보를 매핑하여 데이터베이스에 저장 및 관리한다(S1013).Then, the token processing device 100 encrypts the payment method data for the first affiliated store corresponding to the payment terminal (S1009), and generates a distributed payment token using the first part of the encrypted payment method data and the encryption counter (S1011), and stores and manages the remaining second partial data and hash information of the affiliated store KSN in a database by mapping them (S1013).

이후, 토큰 처리 장치(100)는 분산형 결제 토큰을 중계 서버(200)로 제공하며(S1015), 분산형 결제 토큰은 중계 서버(200)의 분산형 결제 토큰 관리부(240)에 등록 및 상태 정보가 관리될 수 있다.Thereafter, the token processing device 100 provides the distributed payment token to the relay server 200 (S1015), and the distributed payment token is registered and status information in the distributed payment token management unit 240 of the relay server 200. can be managed.

그리고, 등록된 분산형 결제 토큰은 결제 단말(300)로 전달되며(S1017), 결제 단말(300)은 분산형 결제 토큰을 이용한 결제 승인요청 전문을 생성하여(S1019), 중계 서버(200)로 전송한다(S1021).Then, the registered distributed payment token is delivered to the payment terminal 300 (S1017), and the payment terminal 300 generates a full payment approval request using the distributed payment token (S1019), and sends it to the relay server 200. Transmit (S1021).

이후, 중계 서버(200)는 결제 승인요청 전문으로부터 분산형 결제 토큰 및 가맹점 식별 정보를 추출하며(S1023), 추출된 분산형 결제 토큰 및 가맹점 식별 정보를 토큰 처리 장치(100)로 전달하여 결제 수단 데이터의 복호화를 요청한다(S1025).Thereafter, the relay server 200 extracts the distributed payment token and affiliate identification information from the full text of the payment approval request (S1023), and transfers the extracted distributed payment token and affiliate identification information to the token processing device 100 to provide payment means Decryption of data is requested (S1025).

이후, 토큰 처리 장치(100)는 매핑 데이터베이스에서 상기 가맹점 식별 정보에 대응하는 가맹점 KSN의 해시 정보를 키로 사용하여 제2 부분 데이터를 색인하고, 색인된 제2 부분 데이터를 상기 제1 부분 데이터와 결합하여 암호화된 결제 수단 데이터를 획득하고(S1027), 가맹점 KSN과 암호화 카운터를 포함하는 암호화 KSN을 및 하드웨어 보안 모듈 장비(101)를 이용하여 제1 가맹점 전용 복호화 키를 이용한 복호화 처리를 수행한다(S1029).Thereafter, the token processing device 100 indexes the second partial data using hash information of the affiliated store KSN corresponding to the affiliated store identification information as a key in the mapping database, and combines the indexed second partial data with the first partial data to obtain encrypted payment method data (S1027), and decryption processing is performed using the decryption key dedicated to the first affiliated store using the affiliated store KSN and the encryption KSN including the encryption counter and the hardware security module equipment 101 (S1029 ).

이에 따라 복호화된 결제 수단 데이터는 중계 서버(200)로 전달되며(S1031), 중계 서버(200)는 결제 수단 데이터에 기초한 결제 승인 요청을 카드사 서버(500)로 전송하고(S1033), 그 결과를 수신하여(S1035) 결제 단말(300)로 응답 전문을 전달한다(S1037).Accordingly, the decrypted payment method data is transmitted to the relay server 200 (S1031), and the relay server 200 transmits a payment approval request based on the payment method data to the card company server 500 (S1033), and the result It is received (S1035) and the response message is transmitted to the payment terminal 300 (S1037).

승인 처리가 완료된 경우, 중계 서버(200)는 분산형 결제 토큰 관리부(240)를 통해 상기 분산형 결제 토큰의 사용 횟수를 차감하는 등의 관리 처리를 수행할 수 있는 바, 이러한 분산형 결제 토큰의 사용 횟수 또는 사용 기한에 대응하는 상태 정보가 결제 단말(300)의 요청에 따라 관리 및 조회 처리될 수 있다.When the approval process is completed, the relay server 200 may perform management processing such as deducting the number of times of use of the distributed payment token through the distributed payment token management unit 240. Status information corresponding to the number of uses or the expiration date may be managed and inquired according to a request of the payment terminal 300 .

도 9는 본 발명의 실시 예에 따른 분산형 결제 토큰의 관리 프로세스를 설명하기 위한 래더 다이어그램이다.9 is a ladder diagram for explaining a management process of a distributed payment token according to an embodiment of the present invention.

도 9를 참조하면, 결제 단말(300)에서는 현재 중계 서버(200)로부터 수신하여 관리되는 분산형 결제 토큰을 선택할 수 있으며(S2001), 선택된 분산형 결제 토큰에 대응하는 상태 정보 조회를 중계 서버(200)로 요청할 수 있다(S2003).Referring to FIG. 9, the payment terminal 300 may select a distributed payment token currently received from the relay server 200 and managed (S2001), and search status information corresponding to the selected distributed payment token to the relay server (S2001). 200) can be requested (S2003).

이에 따라, 중계 서버(200)에서는 토큰 처리 장치(100)로 토큰 상태 정보 조회를 요청하거나 중계 서버(200)에서 관리되는 관리 정보를 조회할 수 있으며(S2005), 조회된 상태 정보는 결제 단말(300)로 응답 처리될 수 있다(S2007, S2009).Accordingly, the relay server 200 may request token status information inquiry from the token processing device 100 or query management information managed by the relay server 200 (S2005), and the inquired status information may be retrieved from the payment terminal ( 300) may be processed as a response (S2007, S2009).

한편, 중계 서버(200)는 사전 설정된 조건에 따라, 분산형 결제 토큰의 사용 불가 처리를 상태 정보로서 확인할 수 있다(S2011).On the other hand, the relay server 200 may check the discontinued processing of the distributed payment token as status information according to a preset condition (S2011).

여기서, 상기 상태 정보는 유효 횟수 대비 현재 사용 횟수 또는 유효 기간 대비 현재 사용 시간 등이 예시될 수 있는 바, 이러한 토큰의 상태 정보 관리는 주유소, 무인자판기, 놀이공원, 호텔 등의 다양한 결제 시스템에서 유용하게 활용될 수 있다. 예를 들어, 호텔이나 놀이공원 등 일정 시간 동안만 결제가 가능하도록 설정된 분산형 결제 토큰이 생성될 수 있으며, 주유소 등에서 일정 횟수만 결제가 가능하도록 설정된 분산형 결제 토큰이 생성될 수 있는 바, 분산형 결제 토큰 관리부(240)는 이러한 상태 정보 조회에 따라 만료된 토큰 등에 대하여는 직접 사용 불가 처리를 수행할 수 있다.Here, the status information can be exemplified by the current number of uses versus the number of valid uses or the current use time compared to the valid period. Managing the status information of these tokens is useful in various payment systems such as gas stations, unmanned vending machines, amusement parks, and hotels. can be utilized For example, a distributed payment token set to allow payment for a certain amount of time, such as in a hotel or amusement park, can be created, and a distributed payment token set to allow payment only a certain number of times at a gas station can be created. The type payment token management unit 240 may directly perform unavailability processing for an expired token or the like according to the state information inquiry.

여기서, 사용 불가 처리는, 사용 횟수 또는 유효 기간이 경과된 분산형 결제 토큰 자체의 개별 삭제 처리를 포함하거나, 삭제되지 않은 토큰이라 하더라도 중계 서버(200)에서 복호화를 거부하도록 하는 복호화 거부 처리를 포함하거나, 일정 기간 동안 누적된 사용 불가 처리 토큰의 일괄 삭제 처리를 포함할 수 있다.Here, the unusable processing includes the individual deletion processing of the distributed payment token itself for which the number of uses or the expiration date has elapsed, or the decryption rejection processing that causes the relay server 200 to reject decryption even if the token is not deleted. Alternatively, it may include batch deletion processing of unusable processing tokens accumulated over a certain period of time.

예를 들어, 중계 서버(200)는 유효 기간 또는 사용 횟수가 초과된 분산형 결제 토큰의 사용 불가 처리를 수행하고, 그 정보를 토큰 처리 장치(100)로 전달할 수 있으며(S2015), 결정에 따른 토큰 사용 불가 처리 결과 정보가 중계 서버(200)로 전달되고, 토큰 사용 불가 응답 정보가 상태 정보로서 결제 단말(300)로 전달될 수 있다(S2019).For example, the relay server 200 may perform unusable processing of a distributed payment token whose expiration date or number of uses has exceeded, and may transmit the information to the token processing device 100 (S2015), according to the decision Token unavailability processing result information may be transmitted to the relay server 200, and token unusable response information may be transmitted to the payment terminal 300 as status information (S2019).

또한, 토큰 처리 장치(100)에서는 토큰 삭제 요청이 수신되면, 매핑 데이터베이스에서 매핑 저장된 암호화된 결제 수단 데이터의 제2 부분 데이터 및 가맹점 KSN 해시 정보를 삭제 처리함으로써, 분산형 결제 토큰이 더이상 사용되지 못하도록 처리할 수 있다. 나아가, 결제 단말(300) 또는 중계 서버(200)에 저장 및 관리되는 분산형 결제 토큰들도 모두 삭제 처리됨으로써, 제1 부분 데이터 및 제2 부분 데이터 모두 재사용되지 못하도록 처리될 수 있다.In addition, when the token processing device 100 receives a token deletion request, the second part of the encrypted payment method data mapped and stored in the mapping database and the affiliate KSN hash information are deleted, thereby preventing the distributed payment token from being used any longer can be dealt with Furthermore, all of the distributed payment tokens stored and managed in the payment terminal 300 or the relay server 200 are deleted and processed so that both the first partial data and the second partial data are not reused.

한편, 도 10 및 도 11은 본 발명의 다른 실시 예들에 따른 분산형 결제 토큰 기반 결제 처리 프로세스를 설명하기 위한 래더 다이어그램이다.Meanwhile, FIGS. 10 and 11 are ladder diagrams for explaining a distributed payment token-based payment processing process according to other embodiments of the present invention.

도 10 및 도 11을 참조하면, 본 발명의 다른 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스는, 주유소, 무인자판기, 놀이공원, 호텔 등의 다양한 결제 시스템에 있어서의 가승인 및 진승인 기반의 결제 프로세스로서 처리될 수 있다.10 and 11, the decentralized payment token-based payment processing process according to another embodiment of the present invention is based on preliminary approval and true approval in various payment systems such as gas stations, unmanned vending machines, amusement parks, and hotels. It can be processed as a payment process of

특히, 본 발명의 실시 예에 따른 분산형 결제 토큰기반의 결제 프로세스가 후술할 가승인 및 진승인으로 구분된 2가지 결제 프로세스로 처리되는 경우, 결제오류가 발생되거나 잘못 과금되는 경우 또는 부정 사용되는 경우 등을 사전에 방지할 수 있으며, 별도의 토큰을 획득하기 위한 프로세스가 요구되지 않고, 한번의 결제 수단 인식만으로도 보안화된 분산형 결제 토큰 기반의 결제 프로세스가 처리되며, 정상적인 처리 결과로서 가승인 요청 전문의 승인 및 취소 응답이 확인될 수 있고, 진승인 요청의 분산형 결제 토큰 기반의 승인 및 결제 응답이 확인될 수 있는 바, 결제 단말(300)에서의 결제 내역 관리도 용이하게 처리될 수 있다.In particular, when the payment process based on the distributed payment token according to the embodiment of the present invention is processed into two payment processes divided into preliminary approval and true approval, which will be described later, when a payment error occurs, incorrect billing, or illegal use cases can be prevented in advance, a process for acquiring a separate token is not required, and a secure decentralized payment token-based payment process is processed with only one payment method recognition, and provisional approval as a result of normal processing Since the approval and cancellation responses of the full request can be confirmed, and the decentralized payment token-based approval and payment responses of the true approval request can be confirmed, the payment details management in the payment terminal 300 can also be easily processed. there is.

이를 위하여, 중계 서버(200)에서는 결제 단말(300)의 상기 분산형 토큰 발행 요청으로서의 가승인 결제 요청이 수신되면, 이에 대응하는 분산형 결제 토큰 및 거래 일련번호를 발급할 수 있으며, 거래 일련번호와 결제 수단의 카드 번호 정보를 매핑하여 저장 및 관리할 수 있다.To this end, the relay server 200 can issue a distributed payment token and transaction serial number corresponding to the provisional approval payment request as the distributed token issuance request of the payment terminal 300, and the transaction serial number and card number information of payment means can be mapped, stored and managed.

또한, 결제 단말(300)에서는 상기 거래 일련번호 및 분산형 결제 토큰을 포함하는 가승인 결과 응답을 수신하되, 상기 거래 일련번호 기반의 가승인 취소 요청 및 분산형 결제 토큰 기반의 진승인 결제 요청을 중계 서버(200)로 전송할 수 있다.In addition, the payment terminal 300 receives a pre-approval result response including the transaction serial number and the distributed payment token, and sends a pre-authorization cancellation request based on the transaction serial number and a true authentication payment request based on the distributed payment token. It can be transmitted to the relay server 200.

이에 대응한 각각의 케이스별 진승인 결제 처리 프로세스를 도 10 및 도 11에서 개시하고 있다. 여기서, 가승인은 미리 설정된 가 거래 금액에 대응하는 선승인 요청에 대응될 수 있으며, 미리 설정된 가 거래 금액은 진승인의 실제 거래 금액보다 크거나 같을 수 있고, 진승인은 실제 거래 금액에 대응하는 후승인 요청이라고도 할 수 있다. Corresponding to this, the payment processing process for each case is disclosed in FIGS. 10 and 11 . Here, the provisional approval may correspond to a pre-approval request corresponding to a preset tentative transaction amount, the preset tentative transaction amount may be greater than or equal to the actual transaction amount of the true transaction amount, and the true transaction amount corresponding to the actual transaction amount. It can also be referred to as a post-approval request.

따라서, 도 8에서의 분산형 토큰 발행 요청은, 도 10 및 도 11에서는 상기 결제 단말로부터 수신된 가거래 금액에 대응하는 가승인 결제 요청을 포함할 수 있으며, 상기 분산형 결제 토큰 전문은 상기 가승인 결제 요청에 대응하는 가승인 결과 응답을 포함할 수 있고, 상기 가승인 결과 응답은 상기 가승인 결제 취소에 이용되는 거래 일련번호 및 상기 분산형 결제 토큰을 포함하게 할 수 있다.Therefore, the decentralized token issuance request in FIG. 8 may include a provisional approval payment request corresponding to the tentative transaction amount received from the payment terminal in FIGS. 10 and 11, and the distributed payment token full text is A preliminary authorization result response corresponding to the payment request may be included, and the preliminary authorization result response may include a transaction serial number used to cancel the preliminary authorization payment and the distributed payment token.

나아가, 상기 가승인 결제 취소가 확인된 거래에 대응하는 진승인 결제 요청이 처리될 수 있으며, 진승인 결제 요청은 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 기능할 수 있다. 또한, 상기 거래 일련번호를 이용한 가승인 결제 취소 및 상기 분산형 결제 토큰을 이용한 진승인 결제 요청 전문이 결합된 일체형 전문이 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 이용될 수도 있다. 이에 대하여 도 10 및 도 11에서 보다 구체적으로 서술하도록 한다.Furthermore, a genuine approval payment request corresponding to a transaction for which cancellation of the provisional approval payment is confirmed may be processed, and the true approval payment request may function as a full text of a payment approval request using the distributed payment token. In addition, an integrated message in which the pre-approved payment cancellation using the transaction serial number and the true-approved payment request message using the distributed payment token are combined may be used as the payment approval request message using the distributed payment token. This will be described in more detail in FIGS. 10 and 11 .

먼저, 도 10을 참조하면, 본 발명의 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스는, 먼저 결제 단말(300)에서 결제 프로그램이 실행되며(S3001), 결제 단말(300)은 사용자로부터 결제 수단 데이터 및 가 거래 금액을 포함하는 가승인 결제 정보를 입력받아, 가승인 요청 전문을 생성한다(S3003).First, referring to FIG. 10, in the decentralized payment token-based payment processing process according to an embodiment of the present invention, first, a payment program is executed in the payment terminal 300 (S3001), and the payment terminal 300 makes payment from the user. Sudan data and pre-approved payment information including the transaction amount are input, and a pre-approval request message is generated (S3003).

그리고, 결제 단말(300)은, 사용자로부터 입력된 결제 수단 데이터 및 가 거래 금액을 포함하는 가승인 결제 요청을 중계 서버(200)로 전송한다(S3005)Then, the payment terminal 300 transmits a provisional approval payment request including the payment method data input from the user and the tentative transaction amount to the relay server 200 (S3005).

이후, 중계 서버(200)에서는 가승인 결제 요청을 카드사 서버(500)로 전달하며(S3007), 이에 대응하는 승인 응답을 수신한다(S3009).Thereafter, the relay server 200 transmits the provisional approval payment request to the card company server 500 (S3007) and receives an approval response corresponding thereto (S3009).

여기서, 중계 서버(200)는 승인된 가승인 결제에 대응하는 거래 일련번호를 미리 발급할 수 있으며, 발급된 거래 일련번호는 결제 수단 데이터의 카드 번호와 매핑 테이블로 구성되어 중계 서버(200)에 임시 저장될 수 있다.Here, the relay server 200 may issue a transaction serial number corresponding to the approved pre-approved payment in advance, and the issued transaction serial number is composed of a card number of the payment method data and a mapping table, so that the relay server 200 may be temporarily stored.

이후, 중계 서버(200)는, 결제 수단 데이터 및 가맹점 식별 정보를 포함하는 분산형 결제 토큰 발급 요청을 토큰 처리 장치(100)로 전달한다(S3011).Thereafter, the relay server 200 transmits a distributed payment token issuance request including payment method data and member store identification information to the token processing device 100 (S3011).

그리고, 토큰 처리 장치(100)는 결제 수단 데이터를 결제 단말에 대응하는 제1 가맹점 전용 암호화 처리하며(S3013), 암호화된 결제 수단 데이터의 제1 부분 데이터와 암호화 카운터를 이용한 분산형 결제 토큰을 생성하고(S3015), 나머지 제2 부분 데이터 및 가맹점 KSN의 해시 정보를 매핑하여 데이터베이스에 저장 및 관리한다(S3017).Then, the token processing device 100 encrypts the payment method data for the first affiliated store corresponding to the payment terminal (S3013), and generates a distributed payment token using the first part of the encrypted payment method data and the encryption counter And (S3015), the remaining second partial data and the hash information of the affiliated store KSN are mapped and stored and managed in the database (S3017).

이후, 토큰 처리 장치(100)는 분산형 결제 토큰을 중계 서버(200)로 제공하며(S3019), 분산형 결제 토큰은 중계 서버(200)의 분산형 결제 토큰 관리부(240)에 등록 및 상태 정보가 관리될 수 있다.Thereafter, the token processing device 100 provides the distributed payment token to the relay server 200 (S3019), and the distributed payment token is registered and status information in the distributed payment token management unit 240 of the relay server 200. can be managed.

그리고, 등록된 분산형 결제 토큰은 가승인 결과 응답 전문에 거래일련번호 정보와 함께 포함되어 결제 단말(300)로 전달될 수 있다(S3021).In addition, the registered distributed payment token may be included in the full text of the preliminary approval result response along with transaction serial number information and delivered to the payment terminal 300 (S3021).

그리고, 결제 단말(300)에서는 가승인 결과 응답에 대응하여, 상기 거래 일련번호만을 이용한 가승인 결제 취소 요청 전문을 생성하여, 중계 서버(200)로 전송할 수 있다(S3023).In addition, the payment terminal 300 may generate a temporary approval payment cancellation request message using only the transaction serial number in response to the preliminary approval result response, and transmit it to the relay server 200 (S3023).

이후, 중계 서버(200)에서는, 별도의 카드 번호나 토큰 없이도, 사전 매핑 저장된 거래일련번호 및 카드 번호 매핑 테이블을 이용하여, 가승인 취소를 위한 카드 번호 정보를 획득할 수 있으며, 획득된 거래 일련번호에 대응하는 카드 번호로, 카드사 서버(500)로의 가승인 취소를 요청한다(S3025).Thereafter, the relay server 200 may obtain card number information for pre-approval cancellation using a pre-mapped transaction serial number and a card number mapping table without a separate card number or token, and the obtained transaction serial number With the card number corresponding to the number, a request to cancel provisional authorization to the card company server 500 is requested (S3025).

그리고, 중계 서버(200)는 카드사 서버(500)의 가승인 취소 응답을 수신하여(S3037), 결제 단말(300)로 전송한다(S3039).Then, the relay server 200 receives the provisional authorization cancellation response from the card company server 500 (S3037) and transmits it to the payment terminal 300 (S3039).

이후, 결제 단말(300)은 취소된 가승인 결제에 대응하여, 실제 거래금액 및 제1 가맹점용 분산형 결제 토큰을 포함하는 진승인 결제 요청 전문을 생성하고, 이를 중계 서버(200)로 전송한다(S3041).Thereafter, the payment terminal 300 generates a true approval payment request message including the actual transaction amount and the distributed payment token for the first affiliate in response to the canceled pre-approval payment, and transmits it to the relay server 200 (S3041).

이에 따라, 중계 서버(200)는 진승인 결제 승인요청 전문으로부터 분산형 결제 토큰 및 가맹점 식별 정보를 추출하며(S3043), 추출된 분산형 결제 토큰 및 가맹점 식별 정보를 토큰 처리 장치(100)로 전달하여 결제 수단 데이터의 복호화를 요청한다(S3045).Accordingly, the relay server 200 extracts the distributed payment token and member store identification information from the full text of the payment approval request for Jinseung (S3043), and delivers the extracted distributed payment token and affiliate store identification information to the token processing device 100 to request decryption of the payment method data (S3045).

이후, 토큰 처리 장치(100)는 매핑 데이터베이스에서 상기 가맹점 식별 정보에 대응하는 가맹점 KSN의 해시 정보를 키로 사용하여 제2 부분 데이터를 색인하고, 색인된 제2 부분 데이터를 상기 제1 부분 데이터와 결합하여 암호화된 결제 수단 데이터를 획득하고(S3047), 가맹점 KSN과 암호화 카운터를 포함하는 암호화 KSN을 및 하드웨어 보안 모듈 장비(101)를 이용하여 제1 가맹점 전용 복호화 키를 이용한 복호화 처리를 수행한다(S3049).Thereafter, the token processing device 100 indexes the second partial data using hash information of the affiliated store KSN corresponding to the affiliated store identification information as a key in the mapping database, and combines the indexed second partial data with the first partial data to obtain encrypted payment method data (S3047), and decryption processing is performed using the decryption key dedicated to the first affiliated store using the affiliated store KSN and the encryption KSN including the encryption counter and the hardware security module equipment 101 (S3049 ).

이에 따라 복호화된 결제 수단 데이터는 중계 서버(200)로 전달되며(S3051), 중계 서버(200)는 결제 수단 데이터에 기초한 진승인 결제 승인 요청을 카드사 서버(500)로 전송하고(S3053), 그 결과를 수신하여(S3055) 결제 단말(300)로 응답 전문을 전달한다(S3057).Accordingly, the decrypted payment method data is transmitted to the relay server 200 (S3051), and the relay server 200 transmits a payment approval request based on the payment method data to the card company server 500 (S3053). The result is received (S3055) and a response message is transmitted to the payment terminal 300 (S3057).

여기서, 중계 서버(200)에서 카드사 서버(500)로 전달되는 진승인 결제 승인 요청은 키인(key-in) 승인 요청 전문 포맷이 이용될 수 있다. 키인(key-in) 승인 요청은 별도의 암호화 데이터가 아닌 카드 정보를 직접 입력하여 승인을 요청하는 방식으로, 단말기의 리더 기능이 고장난 경우 등을 대비하여 카드사 서버(500)와의 사전 협약 프로세스에 의해 가능한 승인 요청 방식으로서, 중계 서버(200)는 복호화된 결제 수단 데이터를 카드 정보로서 포함하는 키인(key-in) 승인 요청 전문을 진승인 결제 승인 요청으로 생성하여 카드사 서버(500)로 전송하고, 키인(key-in) 승인 응답 전문을 그 결과로서 수신하여 결제 단말(300)로 전송할 수 있다.Here, a key-in approval request message format may be used for the Jin Approval payment approval request transmitted from the relay server 200 to the card company server 500 . The key-in approval request is a method of requesting approval by directly inputting card information rather than separate encrypted data. In case the reader function of the terminal is broken, etc. As a possible approval request method, the relay server 200 generates a full text of a key-in approval request including the decrypted payment method data as card information as a payment approval request for true approval and transmits it to the card company server 500, A key-in approval response message may be received as a result and transmitted to the payment terminal 300 .

이에 따라, 결제 단말(300)은 분산형 결제 토큰을 포함하는 진승인 결제 요청에 대응하는 응답 전문으로서, 복호화된 결제 수단 데이터의 키인(key-in) 승인 응답을 수신할 수 있게 된다.Accordingly, the payment terminal 300 can receive a key-in approval response of the decrypted payment means data as a full response corresponding to a genuine approval payment request including a distributed payment token.

이와 같은 처리에 따라, 본 발명의 실시 예에 따른 분산형 결제 토큰을 이용한 결제 프로세스는 가승인 및 진승인 프로세스에 의해 구현될 수 있으며, 특히 가승인 취소에 있어서는 거래일련번호가 이용되고, 분산형 결제 토큰은 진승인 결제에서만 이용됨에 따라, 망 부하를 저감시키며 보다 효율적이고 신속한 형태로 주유소, 무인자판기, 놀이공원, 호텔 등의 다양한 결제 시스템에 있어서의 가승인 및 진승인 기반의 결제 프로세스에 적용될 수 있다.According to this processing, the payment process using the distributed payment token according to the embodiment of the present invention can be implemented by the pre-approval and true-approval processes. As the payment token is used only for the payment of Jin-seung, it reduces the network load and can be applied to the payment process based on pre-approval and Jin-seung in various payment systems such as gas stations, unmanned vending machines, amusement parks, and hotels in a more efficient and rapid form. can

또한, 도 11을 참조하면, 본 발명의 다른 실시 예에 따른 분산형 결제 토큰 기반 결제 처리 프로세스에서도, S4001 내지 S4021 단계는 도 10의 S3001 내지 S3021 단계와 각각 동일하게 수행될 수 있다.Also, referring to FIG. 11 , in the distributed payment token-based payment processing process according to another embodiment of the present invention, steps S4001 to S4021 may be performed identically to steps S3001 to S3021 of FIG. 10 .

이후, 결제 단말(300)에서는 가승인 결과 응답에 대응하여, 상기 거래 일련번호만을 이용한 가승인 결제 취소 요청 전문과, 실 거래 금액에 대응하며 분산형 결제 토큰을 포함하는 진승인 결제 요청 전문을 결합한, 가승인 취소 및 진승인 승인 요청 전문을 일체로 생성하여, 중계 서버(200)로 전송할 수 있다(S4023).Then, in response to the preliminary approval result response, the payment terminal 300 combines the full text of the temporary authorization payment cancellation request using only the transaction serial number and the full text of the true authorization payment request corresponding to the actual transaction amount and including the distributed payment token. , temporary approval cancellation and true approval approval request full text may be generated and transmitted to the relay server 200 (S4023).

이후, 도 10에서와 마찬가지로 중계 서버(200)에서는, 별도의 카드 번호나 토큰 없이도, 사전 매핑 저장된 거래일련번호 및 카드 번호 매핑 테이블을 이용하여, 가승인 취소를 위한 카드 번호 정보를 획득할 수 있으며, 획득된 거래 일련번호에 대응하는 카드 번호로, 카드사 서버(500)로의 가승인 취소를 요청한다(S4025).Thereafter, as in FIG. 10, the relay server 200 can obtain card number information for pre-approval cancellation using a pre-mapped transaction serial number and a card number mapping table without a separate card number or token. , With the card number corresponding to the obtained transaction serial number, the card company server 500 requests cancellation of provisional authorization (S4025).

그리고, 중계 서버(200)는 카드사 서버(500)의 가승인 취소 응답을 수신한다(S4027).Then, the relay server 200 receives the provisional authorization cancellation response from the card company server 500 (S4027).

또한, 중계 서버(200)는 진승인 결제 승인요청 전문으로부터 분산형 결제 토큰 및 가맹점 식별 정보를 추출하며(S4029), 추출된 분산형 결제 토큰 및 가맹점 식별 정보를 토큰 처리 장치(100)로 전달하여 결제 수단 데이터의 복호화를 요청한다(S4031).In addition, the relay server 200 extracts the distributed payment token and affiliate identification information from the full text of the payment approval request for Jinseung (S4029), and delivers the extracted distributed payment token and affiliate identification information to the token processing device 100 to Decryption of payment method data is requested (S4031).

이후, 토큰 처리 장치(100)는 매핑 데이터베이스에서 상기 가맹점 식별 정보에 대응하는 가맹점 KSN의 해시 정보를 키로 사용하여 제2 부분 데이터를 색인하고, 색인된 제2 부분 데이터를 상기 제1 부분 데이터와 결합하여 암호화된 결제 수단 데이터를 획득하고(S4033), 가맹점 KSN과 암호화 카운터를 포함하는 암호화 KSN을 및 하드웨어 보안 모듈 장비(101)를 이용하여 제1 가맹점 전용 복호화 키를 이용한 복호화 처리를 수행한다(S4035).Thereafter, the token processing device 100 indexes the second partial data using hash information of the affiliated store KSN corresponding to the affiliated store identification information as a key in the mapping database, and combines the indexed second partial data with the first partial data to obtain encrypted payment method data (S4033), and decryption processing is performed using the first affiliated store decryption key using the affiliated store KSN and the encryption KSN including the encryption counter and the hardware security module equipment 101 (S4035 ).

이에 따라 복호화된 결제 수단 데이터는 중계 서버(200)로 전달되며(S4037), 중계 서버(200)는 결제 수단 데이터에 기초한 진승인 결제 승인 요청을 카드사 서버(500)로 전송하고(S4039), 그 결과를 수신하여(S4041) 결제 단말(300)로 응답 전문을 전달한다(S4043).Accordingly, the decrypted payment method data is transmitted to the relay server 200 (S4037), and the relay server 200 transmits a payment approval request based on the payment method data to the card company server 500 (S4039). The result is received (S4041) and a response message is transmitted to the payment terminal 300 (S4043).

여기서 상기 응답 전문은, 가승인 취소 및 진승인 결제 승인 응답 전문을 포함할 수 있는 바, 일체로 전송되어 망 부하를 저감시킬 수 있으며, 신속한 가승인 취소 및 진승인 결제 처리를 제공할 수 있게 된다.Here, the full text of the response may include the full text of the response to the cancellation of provisional authorization and the payment approval of true authorization, which can be transmitted as a unit to reduce the network load and provide rapid processing of cancellation of preliminary authorization and payment of true authorization. .

상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The method according to the present invention described above may be produced as a program to be executed on a computer and stored in a computer-readable recording medium. Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, and magnetic tape. , floppy disks, optical data storage devices, and the like, and also includes those implemented in the form of carrier waves (for example, transmission through the Internet).

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

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형 실시가 가능한 것은 물론이고, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.In addition, although the preferred embodiments of the present invention have been shown and described above, the present invention is not limited to the specific embodiments described above, and the technical field to which the present invention belongs without departing from the gist of the present invention claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or perspective of the present invention.

Claims (25)

결제 서비스 제공 장치의 동작 방법에 있어서,
결제 단말로부터 제1 가맹점에서만 사용 가능한 분산형 토큰 발행 요청을 수신하는 단계;
상기 토큰 발행 요청에 포함된 결제 수단 정보를 하드웨어 보안 모듈 장비를 이용하여 상기 제1 가맹점 전용으로 암호화한 결제 수단 암호화 데이터의 제1 부분을 이용한 분산형 결제 토큰을 획득하는 단계;
상기 분산형 결제 토큰을 포함하는 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰 전문을 상기 결제 단말로 전송하는 단계;
상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하는 단계;
상기 결제 승인요청 전문의 상기 분산형 결제 토큰 및 가맹점 식별 정보를 이용하여, 상기 결제 수단 암호화 데이터를 복호화한 상기 결제 수단 정보를 획득하는 단계; 및
상기 결제 수단 정보를 이용한 결제사 서버로의 결제 승인 요청을 처리하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
In the operation method of the payment service providing device,
Receiving a request for issuing a distributed token usable only in a first affiliated store from a payment terminal;
obtaining a distributed payment token using a first part of payment method encryption data obtained by encrypting payment method information included in the token issuance request exclusively for the first affiliated store using a hardware security module;
Transmitting the full text of the distributed payment token for the first affiliated store-only transaction including the distributed payment token to the payment terminal;
Receiving a payment approval request message using the distributed payment token from the payment terminal;
obtaining payment method information obtained by decrypting the payment method encryption data by using the distributed payment token and member store identification information in the full text of the payment approval request; and
Processing a payment approval request to a payment company server using the payment method information
A method of operating a payment service providing device.
제1항에 있어서,
상기 분산형 토큰 발행 요청은, 상기 결제 단말로부터 수신된 가거래 금액에 대응하는 가승인 결제 요청을 포함하며,
상기 분산형 결제 토큰 전문은, 상기 가승인 결제 요청에 대응하는 가승인 결과 응답을 포함하고,
상기 가승인 결과 응답은 상기 가승인 결제 취소에 이용되는 거래 일련번호 및 상기 분산형 결제 토큰을 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 1,
The distributed token issuance request includes a provisional approval payment request corresponding to the provisional transaction amount received from the payment terminal,
The full text of the distributed payment token includes a preliminary authorization result response corresponding to the preliminary authorization payment request;
The preliminary approval result response includes the transaction serial number used to cancel the preliminary approval payment and the distributed payment token
A method of operating a payment service providing device.
제2항에 있어서,
상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하는 단계는,
상기 결제 단말로부터, 상기 가승인 결제 취소가 확인된 거래에 대응하는 진승인 결제 요청을, 상기 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 수신하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 2,
In the step of receiving a payment approval request message using the distributed payment token from the payment terminal,
Receiving, from the payment terminal, a true approval payment request corresponding to the transaction for which the cancellation of the provisional approval payment is confirmed as a full text of a payment approval request using the distributed payment token
A method of operating a payment service providing device.
제2항에 있어서,
상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하는 단계는,
상기 결제 단말로부터, 상기 거래 일련번호를 이용한 가승인 결제 취소 및 상기 분산형 결제 토큰을 이용한 진승인 결제 요청 전문이 결합된 일체형 전문을 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 수신하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 2,
In the step of receiving a payment approval request message using the distributed payment token from the payment terminal,
Receiving, from the payment terminal, an integral message in which the pre-approved payment cancellation using the transaction serial number and the true-approved payment request message using the distributed payment token are combined as a payment approval request message using the distributed payment token. including
A method of operating a payment service providing device.
제1항에 있어서,
상기 분산형 결제 토큰을 획득하는 단계는,
상기 결제 수단 정보를 토큰 처리 장치로 전달하여, 상기 토큰 발행 요청에 포함된 결제 수단 데이터를, 상기 제1 가맹점의 가맹점 정보 및 암호화 카운터 정보를 이용하여 연산된 제1 암호화 키로, 암호화 처리되도록 하는 단계; 및
상기 토큰 처리 장치로부터 상기 암호화된 결제 수단 데이터의 제1 부분과 상기 암호화 카운터 정보에 기초하여 생성된, 상기 제1 가맹점 전용 거래를 위한 상기 분산형 결제 토큰을 수신하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 1,
The step of acquiring the distributed payment token,
Transmitting the payment method information to a token processing device so that the payment method data included in the token issuance request is encrypted with a first encryption key calculated using affiliated store information and encryption counter information of the first affiliated store. ; and
Receiving the distributed payment token for the first affiliated store-only transaction, generated based on the first part of the encrypted payment method data and the encryption counter information, from the token processing device
A method of operating a payment service providing device.
제5항에 있어서,
상기 제1 암호화 키는 하드웨어 보안 모듈 장비를 이용하여 연산되며,
상기 하드웨어 보안 모듈 장비는,
물리적으로 보안화된 하드웨어 시스템을 통해 상기 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보용 초기 암호화 키 연산을 위한 베이스 토큰 유도 키를 출력하며,
상기 토큰 처리 장치는
상기 키 시리얼 정보 및 상기 베이스 토큰 유도 키를 이용하여 상기 초기 암호화 키를 연산하고, 상기 초기 암호화 키와 상기 암호화 카운터 정보를 이용한 상기 제1 암호화 키를 연산하여 출력하는
결제 서비스 제공 장치의 동작 방법.
According to claim 5,
The first encryption key is calculated using hardware security module equipment,
The hardware security module equipment,
Outputting a base token derivation key for initial encryption key calculation for key serial information corresponding to affiliated store information of the first affiliated store through a physically secured hardware system;
The token processing device
Calculating the initial encryption key using the key serial information and the base token derivation key, and calculating and outputting the first encryption key using the initial encryption key and the encryption counter information
A method of operating a payment service providing device.
제6항에 있어서,
상기 토큰 처리 장치는,
상기 암호화된 결제 수단 데이터의 상기 제1 부분을 제외한 나머지 제2 부분과, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 매칭시켜, 상기 분산형 결제 토큰을 이용한 결제 승인 요청으로부터 상기 암호화된 결제 수단 데이터를 복호화하기 위한, 매핑 데이터베이스로 저장하는
결제 서비스 제공 장치의 동작 방법.
According to claim 6,
The token processing device,
By matching the second part except for the first part of the encrypted payment method data with key serial information issued in correspondence with the affiliated store information of the first affiliated store, from the payment approval request using the distributed payment token To decrypt encrypted payment method data, to store as a mapping database
A method of operating a payment service providing device.
제7항에 있어서,
상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하는 단계;
상기 결제 승인요청 전문으로부터 상기 분산형 결제 토큰 및 가맹점 식별 정보를 추출하는 단계; 및
상기 분산형 결제 토큰 및 상기 가맹점 식별 정보를 포함하는 결제 수단 데이터 복호화 요청을 상기 토큰 처리 장치로 전달하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 7,
Receiving a payment approval request message using the distributed payment token from the payment terminal;
extracting the distributed payment token and member store identification information from the full text of the payment approval request; and
Transmitting a payment method data decryption request including the decentralized payment token and the member store identification information to the token processing device.
A method of operating a payment service providing device.
제8항에 있어서,
상기 토큰 처리 장치는, 상기 복호화 요청에 포함된 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 이용하여, 사전 저장된 상기 제2 부분을 획득하고, 상기 결제 수단 암호화 데이터의 상기 제1 부분과 상기 제2 부분을 결합하여 상기 결제 수단 암호화 데이터를 획득하는
결제 서비스 제공 장치의 동작 방법.
According to claim 8,
The token processing device obtains the pre-stored second part using key serial information issued in correspondence with the affiliated store information of the first affiliated store included in the decryption request, and obtains the first part of the payment method encryption data. Obtaining the payment method encryption data by combining a part and the second part
A method of operating a payment service providing device.
제8항에 있어서,
상기 토큰 처리 장치로부터, 상기 암호화 카운터 정보 및 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 이용하여, 상기 하드웨어 보안 모듈 장비를 통해 처리된 상기 제1 암호화 키를 이용하여, 복호화 처리된 결제 수단 데이터를 수신하는 단계를 더 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 8,
Decryption processing using the first encryption key processed through the hardware security module device by using the key serial information issued from the token processing device in correspondence with the encryption counter information and the affiliated store information of the first affiliated store Further comprising the step of receiving the payment method data
A method of operating a payment service providing device.
제1항에 있어서,
상기 분산형 결제 토큰의 유효 사용 횟수 또는 유효 사용 기간을 설정하는 단계를 더 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 1,
Further comprising setting a valid use count or valid use period of the distributed payment token
A method of operating a payment service providing device.
제11항에 있어서,
상기 분산형 결제 토큰의 유효 사용 횟수 또는 유효 사용 기간을 포함하는 상태 정보를 조회하는 단계; 및
상기 상태 정보가 조회된 분산형 결제 토큰의 삭제 처리를 수행하는 단계를 포함하는
결제 서비스 제공 장치의 동작 방법.
According to claim 11,
Retrieving status information including the valid use count or valid use period of the distributed payment token; and
Including the step of performing deletion processing of the distributed payment token for which the status information is inquired.
A method of operating a payment service providing device.
결제 서비스 제공 장치에 있어서,
결제 단말로부터 제1 가맹점에서만 사용 가능한 분산형 토큰 발행 요청을 수신하는 통신부; 및
상기 토큰 발행 요청에 포함된 결제 수단 정보를 하드웨어 보안 모듈 장비를 이용하여 상기 제1 가맹점 전용으로 암호화한 결제 수단 암호화 데이터의 제1 부분을 이용한 분산형 결제 토큰을 획득하고, 상기 분산형 결제 토큰을 포함하는 상기 제1 가맹점 전용 거래를 위한 분산형 결제 토큰 전문을 상기 결제 단말로 전송하는 분산형 결제 토큰 관리부;를 포함하고,
상기 통신부는 상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하며,
상기 결제 승인 처리부는 상기 결제 승인요청 전문의 상기 분산형 결제 토큰 및 가맹점 식별 정보를 이용하여, 상기 결제 수단 암호화 데이터를 복호화한 상기 결제 수단 정보를 획득하고, 상기 결제 수단 정보를 이용한 결제사 서버로의 결제 승인 요청을 처리하는
결제 서비스 제공 장치.
In the payment service providing device,
a communication unit receiving a request for issuing a distributed token usable only at the first affiliated store from the payment terminal; and
Obtaining a distributed payment token using a first part of the payment method encryption data in which the payment method information included in the token issuance request is encrypted exclusively for the first affiliate using hardware security module equipment, and the distributed payment token A distributed payment token management unit that transmits a full text of the distributed payment token for the transaction exclusively for the first affiliated store to the payment terminal;
The communication unit receives a payment approval request message using the distributed payment token from the payment terminal,
The payment approval processing unit obtains the payment method information obtained by decrypting the payment method encryption data using the distributed payment token and member store identification information in the full text of the payment approval request, and returns to the payment company server using the payment method information. to process payment authorization requests from
Payment service provider device.
제13항에 있어서,
상기 분산형 토큰 발행 요청은, 상기 결제 단말로부터 수신된 가거래 금액에 대응하는 가승인 결제 요청을 포함하며,
상기 분산형 결제 토큰 전문은, 상기 가승인 결제 요청에 대응하는 가승인 결과 응답을 포함하고,
상기 가승인 결과 응답은 상기 가승인 결제 취소에 이용되는 거래 일련번호 및 상기 분산형 결제 토큰을 포함하는
결제 서비스 제공 장치.
According to claim 13,
The distributed token issuance request includes a provisional approval payment request corresponding to the provisional transaction amount received from the payment terminal,
The full text of the distributed payment token includes a preliminary authorization result response corresponding to the preliminary authorization payment request;
The preliminary approval result response includes the transaction serial number used to cancel the preliminary approval payment and the distributed payment token
Payment service provider device.
제14항에 있어서,
상기 통신부는,
상기 결제 단말로부터, 상기 가승인 결제 취소가 확인된 거래에 대응하는 진승인 결제 요청을, 상기 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 수신하는
결제 서비스 제공 장치.
According to claim 14,
The communication department,
Receiving, from the payment terminal, a true approval payment request corresponding to the transaction for which the preliminary approval payment cancellation is confirmed as a full text of the payment approval request using the distributed payment token
Payment service providing device.
제14항에 있어서,
상기 통신부는,
상기 결제 단말로부터, 상기 거래 일련번호를 이용한 가승인 결제 취소 및 상기 분산형 결제 토큰을 이용한 진승인 결제 요청 전문이 결합된 일체형 전문을 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문으로서 수신하는
결제 서비스 제공 장치.
According to claim 14,
The communication department,
Receiving, from the payment terminal, an integral message in which the pre-approved payment cancellation using the transaction serial number and the true-approved payment request message using the distributed payment token are combined as a payment approval request message using the distributed payment token
Payment service providing device.
제13항에 있어서,
상기 분산형 결제 토큰 관리부는,
상기 결제 수단 정보를 토큰 처리 장치로 전달하여, 상기 토큰 발행 요청에 포함된 결제 수단 데이터를, 상기 제1 가맹점의 가맹점 정보 및 암호화 카운터 정보를 이용하여 연산된 제1 암호화 키로, 암호화 처리되도록 하며,
상기 토큰 처리 장치로부터 상기 암호화된 결제 수단 데이터의 제1 부분과 상기 암호화 카운터 정보에 기초하여 생성된, 상기 제1 가맹점 전용 거래를 위한 상기 분산형 결제 토큰을 수신하는
결제 서비스 제공 장치.
According to claim 13,
The decentralized payment token management unit,
The payment method information is transmitted to a token processing device so that the payment method data included in the token issuance request is encrypted with a first encryption key calculated using affiliate store information and encryption counter information of the first affiliate store,
Receiving the distributed payment token for the first affiliated store-only transaction, generated based on the first part of the encrypted payment method data and the encryption counter information, from the token processing device
Payment service providing device.
제17항에 있어서,
상기 제1 암호화 키는 하드웨어 보안 모듈 장비를 이용하여 연산되며,
상기 하드웨어 보안 모듈 장비는,
물리적으로 보안화된 하드웨어 시스템을 통해 상기 제1 가맹점의 가맹점 정보에 대응하는 키 시리얼 정보용 초기 암호화 키 연산을 위한 베이스 토큰 유도 키를 출력하며,
상기 토큰 처리 장치는
상기 키 시리얼 정보 및 상기 베이스 토큰 유도 키를 이용하여 상기 초기 암호화 키를 연산하고, 상기 초기 암호화 키와 상기 암호화 카운터 정보를 이용한 상기 제1 암호화 키를 연산하여 출력하는 장치인
결제 서비스 제공 장치.
According to claim 17,
The first encryption key is calculated using hardware security module equipment,
The hardware security module equipment,
Outputting a base token derivation key for initial encryption key calculation for key serial information corresponding to affiliated store information of the first affiliated store through a physically secured hardware system;
The token processing device
An apparatus for calculating the initial encryption key using the key serial information and the base token derivation key, and calculating and outputting the first encryption key using the initial encryption key and the encryption counter information.
Payment service providing device.
제18항에 있어서,
상기 토큰 처리 장치는,
상기 암호화된 결제 수단 데이터의 상기 제1 부분을 제외한 나머지 제2 부분과, 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 매칭시켜, 상기 분산형 결제 토큰을 이용한 결제 승인 요청으로부터 상기 암호화된 결제 수단 데이터를 복호화하기 위한, 매핑 데이터베이스로 저장하는
결제 서비스 제공 장치.
According to claim 18,
The token processing device,
By matching the second part except for the first part of the encrypted payment method data with key serial information issued in correspondence with the affiliated store information of the first affiliated store, from the payment approval request using the distributed payment token To decrypt encrypted payment method data, to store as a mapping database
Payment service providing device.
제18항에 있어서,
상기 통신부는, 상기 결제 단말로부터 상기 분산형 결제 토큰을 이용한 결제 승인요청 전문을 수신하고,
상기 결제 승인 처리부는, 상기 결제 승인요청 전문으로부터 상기 분산형 결제 토큰 및 가맹점 식별 정보를 추출하며, 상기 분산형 결제 토큰 및 상기 가맹점 식별 정보를 포함하는 결제 수단 데이터 복호화 요청을 상기 토큰 처리 장치로 전달하는
결제 서비스 제공 장치.
According to claim 18,
The communication unit receives a payment approval request message using the distributed payment token from the payment terminal,
The payment approval processing unit extracts the distributed payment token and affiliated store identification information from the full text of the payment approval request, and transfers a payment method data decryption request including the distributed payment token and affiliated store identification information to the token processing device doing
Payment service providing device.
제20항에 있어서,
상기 토큰 처리 장치는, 상기 복호화 요청에 포함된 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 이용하여, 사전 저장된 상기 제2 부분을 획득하고, 상기 결제 수단 암호화 데이터의 상기 제1 부분과 상기 제2 부분을 결합하여 상기 결제 수단 암호화 데이터를 획득하는
결제 서비스 제공 장치.
According to claim 20,
The token processing device obtains the pre-stored second part using key serial information issued in correspondence with the affiliated store information of the first affiliated store included in the decryption request, and obtains the first part of the payment method encryption data. Obtaining the payment method encryption data by combining a part and the second part
Payment service provider device.
제21항에 있어서,
상기 결제 승인 처리부는, 상기 토큰 처리 장치로부터, 상기 암호화 카운터 정보 및 상기 제1 가맹점의 가맹점 정보에 대응하여 발행된 키 시리얼 정보를 이용하여, 상기 하드웨어 보안 모듈 장비를 통해 처리된 상기 제1 암호화 키를 이용하여, 복호화 처리된 결제 수단 데이터를 수신하는
결제 서비스 제공 장치.
According to claim 21,
The payment approval processing unit uses key serial information issued from the token processing device in correspondence with the encryption counter information and the affiliated store information of the first affiliated store, and the first encryption key processed through the hardware security module device Receiving the decrypted payment method data using
Payment service providing device.
제13항에 있어서,
상기 분산형 결제 토큰 관리부는, 상기 분산형 결제 토큰의 유효 사용 횟수 또는 유효 사용 기간을 설정하는
결제 서비스 제공 장치.
According to claim 13,
The distributed payment token management unit sets the number of valid uses or the effective use period of the distributed payment token.
Payment service providing device.
제23항에 있어서,
상기 분산형 결제 토큰 관리부는,
상기 분산형 결제 토큰의 유효 사용 횟수 또는 유효 사용 기간을 포함하는 상태 정보를 조회하고, 상기 상태 정보가 조회된 분산형 결제 토큰의 삭제 처리를 수행하는
결제 서비스 제공 장치.
According to claim 23,
The decentralized payment token management unit,
Inquiring status information including the number of valid uses or the valid period of use of the decentralized payment token, and deleting the decentralized payment token for which the status information has been inquired
Payment service providing device.
제1항 내지 제12항 중 어느 한 항에 기재된 방법을 컴퓨터에서 실행시키기 위한 컴퓨터 판독 가능한 매체에 저장되는 컴퓨터프로그램.A computer program stored in a computer readable medium for executing the method according to any one of claims 1 to 12 on a computer.
KR1020210085810A 2021-06-30 2021-06-30 An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it KR102600490B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210085810A KR102600490B1 (en) 2021-06-30 2021-06-30 An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210085810A KR102600490B1 (en) 2021-06-30 2021-06-30 An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it

Publications (2)

Publication Number Publication Date
KR20230004042A true KR20230004042A (en) 2023-01-06
KR102600490B1 KR102600490B1 (en) 2023-11-08

Family

ID=84924219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210085810A KR102600490B1 (en) 2021-06-30 2021-06-30 An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it

Country Status (1)

Country Link
KR (1) KR102600490B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130082656A (en) * 2011-12-13 2013-07-22 주식회사 신한은행 Method and apparatus for providing electronic payment and banking service using smart device and credit card reader
KR101449644B1 (en) * 2013-05-22 2014-10-15 한국정보통신주식회사 POS System and Method for Payment using Encrypted Card Information
KR20190065824A (en) * 2017-12-04 2019-06-12 주식회사 비즈모델라인 Method for Providing Payment by using Cryptocurrency based on Blockchain
KR20190089818A (en) * 2017-08-09 2019-07-31 주식회사 센스톤 System, method and program for providing payment by vritual token, vritual token generator and vritual token verification device
KR20190142653A (en) * 2018-06-18 2019-12-27 주식회사 비즈모델라인 Method for Providing Service by using Blockchain based on POS

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130082656A (en) * 2011-12-13 2013-07-22 주식회사 신한은행 Method and apparatus for providing electronic payment and banking service using smart device and credit card reader
KR101449644B1 (en) * 2013-05-22 2014-10-15 한국정보통신주식회사 POS System and Method for Payment using Encrypted Card Information
KR20190089818A (en) * 2017-08-09 2019-07-31 주식회사 센스톤 System, method and program for providing payment by vritual token, vritual token generator and vritual token verification device
KR20190065824A (en) * 2017-12-04 2019-06-12 주식회사 비즈모델라인 Method for Providing Payment by using Cryptocurrency based on Blockchain
KR20190142653A (en) * 2018-06-18 2019-12-27 주식회사 비즈모델라인 Method for Providing Service by using Blockchain based on POS

Also Published As

Publication number Publication date
KR102600490B1 (en) 2023-11-08

Similar Documents

Publication Publication Date Title
US9123042B2 (en) Pin block replacement
US20180189790A1 (en) Method and system using candidate dynamic data elements
US9424573B2 (en) Batch settlement transactions system and method
US20080040284A1 (en) Method and system for secured transactions
KR101557895B1 (en) Payment method based on safety payment code and safe payment agency server for the same method
CN102696047A (en) Encryption switch processing
JPH09319808A (en) Method and device for hierarchical electronic cash
CN104011760A (en) Method for generating one-time card number
CN113015992B (en) Cloud token provisioning of multiple tokens
KR20190043118A (en) Method for payment based on blockchain and payment server using the same
JP4772251B2 (en) Improved method and system for performing secure payment over a computer network
KR102333811B1 (en) System and method for processing card payment based on block-chain
KR102600490B1 (en) An apparatus for providing payment services of a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it
KR102600489B1 (en) An apparatus for processing a distributed token for encrypted data of payment information to be used only by a specific franchisee and a method for operating it
KR102395870B1 (en) A payment terminal apparatus for providing payment services using a distributed management network of encryption key based on block chains
JP3329438B2 (en) Electronic cash method with monitoring institution, user apparatus and monitoring institution apparatus for implementing the method
KR101912254B1 (en) A method of processing transaction information for preventing re-use of transaction information based on a shared encryption key, an appratus thereof
KR101598993B1 (en) Method for Operating Certificate
WO2018150931A1 (en) Server and authentication system
KR101541539B1 (en) Method for Operating Certificate
KR20240068478A (en) A service providing device providing payment authentication service based on simple authentication code input and an operation method thereof

Legal Events

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