KR102301036B1 - Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof - Google Patents

Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof Download PDF

Info

Publication number
KR102301036B1
KR102301036B1 KR1020190121753A KR20190121753A KR102301036B1 KR 102301036 B1 KR102301036 B1 KR 102301036B1 KR 1020190121753 A KR1020190121753 A KR 1020190121753A KR 20190121753 A KR20190121753 A KR 20190121753A KR 102301036 B1 KR102301036 B1 KR 102301036B1
Authority
KR
South Korea
Prior art keywords
vector
product
credit
payment processing
authentication
Prior art date
Application number
KR1020190121753A
Other languages
Korean (ko)
Other versions
KR20210039203A (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 KR1020190121753A priority Critical patent/KR102301036B1/en
Publication of KR20210039203A publication Critical patent/KR20210039203A/en
Application granted granted Critical
Publication of KR102301036B1 publication Critical patent/KR102301036B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • 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/22Payment schemes or models
    • G06Q20/26Debit schemes, e.g. "pay now"
    • 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/385Payment protocols; Details thereof using an alias or single-use codes
    • G06Q40/025
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key

Landscapes

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

Abstract

OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치 및 그 동작 방법이 개시된다. 본 발명은 어느 한명의 회원의 클라이언트 단말로부터 콘텐츠 제공 서버로 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 상품에 대한 상품 정보 및 상기 상품의 금액에 대한 정보와 함께 상기 상품에 대한 여신 결제 승인 요청이 수신되면, OTP 기반의 여신 결제 가능 회원 인증을 수행하여 상기 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송함으로써, 상기 회원으로 하여금 보다 편리하고 안전하게 여신 결제 서비스를 이용할 수 있도록 지원할 수 있다.Disclosed are a payment processing agency device that supports credit and debit payment processing through OTP-based member authentication, and an operating method thereof. According to the present invention, when a credit payment request for a product is received from a client terminal of one member to a content providing server, the product information on the product and information on the amount of the product together with the product information from the content providing server are provided. When a credit payment approval request is received, OTP-based credit payment possible member authentication is performed and when the member is authenticated as a credit payment capable member, credit payment processing for the amount of the product is completed and the content providing server By transmitting a message of completion of credit payment processing for the amount of the product, it is possible to support the member to use the credit payment service more conveniently and safely.

Description

OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치 및 그 동작 방법{PAYMENT PROCESSING AGENT APPARATUS SUPPORTING CREDIT AND DEBIT PAYMENT PROCESSING THROUGH MEMBER AUTHENTICATION BASED ON OTP AND OPERATING METHOD THEREOF}A payment processing agency that supports credit and debit payment processing through OTP-based member authentication and its operation method

본 발명은 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치 및 그 동작 방법에 대한 것이다.The present invention relates to a payment processing agent device that supports credit and debit payment processing through OTP-based member authentication, and an operating method thereof.

최근, 인터넷의 보급이 활발하게 이루어짐에 따라, 인터넷을 통해서 상품을 구매하고, 이를 지불할 수 있는 시스템의 활용이 증가하고 있다.Recently, as the spread of the Internet has been actively made, the use of a system capable of purchasing and paying for a product through the Internet is increasing.

인터넷을 이용한 전자 거래 시스템은 사용자가 자신의 클라이언트 단말을 이용해서 다양한 상품들을 판매하는 콘텐츠 제공자(Contents Provider) 서버에 접속한 후 자신이 구매하기를 원하는 상품을 구매하고, 신용카드, 휴대전화 소액결제 등을 활용해서 대금을 결제하는 방식이 사용된다.In an electronic transaction system using the Internet, a user connects to a Contents Provider server that sells various products using his/her client terminal, purchases the product he or she wants to purchase, and pays a small amount with a credit card or mobile phone. The payment method is used using the

하지만, 상기 휴대전화 소액결제는 매달 60만원으로 한도가 설정되어 있어 60만원의 한도를 초과하게 되면, 결제가 불가능해지는 문제점이 있다.However, the mobile phone micropayment is limited to 600,000 won per month, so if the limit of 600,000 won is exceeded, there is a problem in that the payment becomes impossible.

게다가, 보통의 이동통신요금은 합산되어 청구되기 때문에 소액결제 이용요금을 직관적으로 확인하는데 있어, 많은 불편함이 존재하였다.In addition, since ordinary mobile communication charges are aggregated and charged, there was a lot of inconvenience in intuitively checking the micropayment usage fee.

여기서, 휴대전화 소액결제의 문제점과 불편함을 개선하고자 추가적인 방안이 필요하게 되었는데, 이 방안은 바로 은행 계좌를 기반으로 대금 결제가 완료되도록 하는 것이다.Here, an additional method was needed to improve the problems and inconvenience of micropayments by mobile phone, and this method is to complete the payment based on a bank account.

보통, 은행 계좌를 기반으로 대금 결제가 완료되도록 하는 방식은 등록된 계좌에서 자동이체 및 결제 승인이 되도록 하는 직불 결제 방식과 사용자에게 발급된 가상 계좌에 여신을 부여하고, 결제 승인이 되도록 하는 여신 결제 방식이 있다.Usually, the method for completing payment based on the bank account is the debit payment method that allows automatic debit and payment approval from the registered account, and the credit payment method that grants credit to the virtual account issued to the user and allows the payment to be approved There is a way.

그러나, 직불 결제 및 여신 결제 방식을 이용함에 있어 사용자 인증이 반드시 수행되어야 한다. 기존에는 사용자 인증을 수행함에 있어 ID/PW 인증 방식을 주로 사용했지만 간혹 ID/PW 혼동으로 인하여 결제 장애가 발생되곤 했었다.However, when using the direct payment and credit payment methods, user authentication must be performed. In the past, ID/PW authentication was mainly used to perform user authentication, but sometimes payment problems occurred due to ID/PW confusion.

이에 따라, 최근에는 고정된 패스워드 대신 무작위로 생성되는 일회용 인증 번호를 의미하는 OTP(One Time Password)를 기반으로 한 인증 방식이 사용되고 있는데, OTP를 기반으로 한 인증 방식은 사용자에게 높은 편의성과 보안성을 제공하는 장점이 있다.Accordingly, recently, instead of a fixed password, an authentication method based on OTP (One Time Password), which means a randomly generated one-time authentication number, has been used. has the advantage of providing

따라서, OTP 기반의 사용자 인증을 통해 직불 및 여신 결제 처리를 수행할 수 있는 결제 처리 대행 장치에 대한 연구가 필요하다.Therefore, there is a need for research on a payment processing agency capable of processing debit and credit payments through OTP-based user authentication.

본 발명에 따른 결제 처리 대행 장치 및 그 동작 방법은 어느 한명의 회원의 클라이언트 단말로부터 콘텐츠 제공 서버로 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 상품에 대한 상품 정보 및 상기 상품의 금액에 대한 정보와 함께 상기 상품에 대한 여신 결제 승인 요청이 수신되면, OTP 기반의 여신 결제 가능 회원 인증을 수행하여 상기 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송함으로써, 상기 회원으로 하여금 보다 편리하고 안전하게 여신 결제 서비스를 이용할 수 있도록 지원하고자 한다.In accordance with the present invention, a payment processing agent device and an operating method thereof receive a credit payment request for a product from a client terminal of one member to a contents providing server, and product information about the product and the product information from the contents providing server When a credit payment approval request for the product is received along with information on the amount, OTP-based credit payment possible member authentication is performed and when the member is authenticated as a credit payment capable member, credit payment processing for the product amount After completing , by transmitting a credit payment processing completion message for the amount of the product to the content providing server, it is intended to support the member to use the credit payment service more conveniently and safely.

본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치는 복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP(One Time Password) 생성 함수가 대응되어 저장되어 있는 회원 정보 데이터베이스, 여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된(predetermined) 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리(Euclidean Distance)에 대한 정보가 저장되어 있는 복합 정보 저장부, 상기 복수의 회원들 중 제1 회원의 제1 클라이언트 단말로부터 콘텐츠 제공 서버로 제1 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 상기 회원 정보 데이터베이스를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게(Hamming Weight)를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성하는 제1 랜덤 벡터 생성부, 상기 제1 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 제1 요청부, 상기 제1 클라이언트 단말로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 제1 피드백 벡터 - 상기 제1 피드백 벡터는 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱(Hadamard product)에 따라 연산된 벡터임 - 가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증하는 제1 인증 확인부 및 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송하는 여신 결제 처리부를 포함한다.A payment processing agency device supporting credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention includes member information for a plurality of members and different information issued in advance for each of the plurality of members. A member information database stored in correspondence with the OTP (One Time Password) generation function, a vector for predetermined authentication to be used for member authentication as to whether a member is a member who can pay by credit, and a member for whether a member can pay by debit A complex information storage unit storing information about a preset Euclidean distance for use in authentication, and credit for a first product from a first client terminal of a first member among the plurality of members to a content providing server As a payment request is received, when a credit payment approval request for the first product is received from the content providing server along with product information on the first product and information on the amount of the first product, the member information database check the first OTP generation function issued in advance for the first member with reference to, generate a first one-time authentication number according to the current time value based on the first OTP generation function, and the first one-time authentication number After checking a number corresponding to a predetermined first digit in , a first random vector having a predetermined first length while having a Hamming weight corresponding to the size of the number corresponding to the predetermined first digit a first random vector generator for randomly generating A first feedback vector from a requesting unit, the first client terminal to a feedback vector corresponding to the first random vector - The first feedback vector includes the preset authentication vector stored in the first client terminal and the first feedback vector 1 ada between random vectors A vector calculated according to a Hadamard product - is received, a first operation vector is generated by calculating a Hadamard product between the preset authentication vector and the first random vector, and the first operation vector is the A first authentication confirmation unit for authenticating whether the first member is a credit payment capable member by checking whether it is the same as the first feedback vector, and when the first member is authenticated as a credit payment capable member, the amount of the first product and a credit payment processing unit for transmitting a credit payment processing completion message for the amount of the first product to the content providing server after completing the credit payment processing for .

또한, 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법은 복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP 생성 함수가 대응되어 저장되어 있는 회원 정보 데이터베이스를 유지하는 단계, 여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리에 대한 정보가 저장되어 있는 복합 정보 저장부를 유지하는 단계, 상기 복수의 회원들 중 제1 회원의 제1 클라이언트 단말로부터 콘텐츠 제공 서버로 제1 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 상기 회원 정보 데이터베이스를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성하는 단계, 상기 제1 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 단계, 상기 제1 클라이언트 단말로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 제1 피드백 벡터 - 상기 제1 피드백 벡터는 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱에 따라 연산된 벡터임 - 가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증하는 단계 및 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송하는 단계를 포함한다.In addition, the operating method of the payment processing agency device that supports credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention includes member information for a plurality of members and each of the plurality of members. A step of maintaining a member information database stored in correspondence with different OTP generation functions issued in advance, a preset vector for authentication for use in member authentication as to whether a member is a credit payment capable member, and a debit payment possible member Maintaining a complex information storage unit in which information on a preset Euclidean distance for use in member authentication is stored, credit for a first product from a first client terminal of a first member among the plurality of members to a content providing server As a payment request is received, when a credit payment approval request for the first product is received from the content providing server along with product information on the first product and information on the amount of the first product, the member information database check the first OTP generation function issued in advance for the first member with reference to, generate a first one-time authentication number according to the current time value based on the first OTP generation function, and the first one-time authentication number After confirming the number corresponding to the first preset digit in , a first random vector having a preset first length is randomly generated while having a Hamming weight corresponding to the size of the number corresponding to the preset first digit transmitting the first random vector to the first client terminal, requesting transmission of a feedback vector corresponding to the first random vector to the first client terminal, from the first client terminal to the first A first feedback vector as a feedback vector corresponding to a random vector - The first feedback vector is a vector calculated according to a Hadamard product between the preset authentication vector and the first random vector pre-stored in the first client terminal When Im - is received, the preset authentication vector and the first random vector Authenticating whether the first member is a credit settlement member by generating a first operation vector by calculating the Hadamard product between, and verifying that the first operation vector is the same as the first feedback vector; When the member is authenticated as a credit payment capable member, after completing the credit payment processing for the amount of the first product, transmitting a credit payment processing completion message for the amount of the first product to the content providing server do.

본 발명에 따른 결제 처리 대행 장치 및 그 동작 방법은 어느 한명의 회원의 클라이언트 단말로부터 콘텐츠 제공 서버로 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 상품에 대한 상품 정보 및 상기 상품의 금액에 대한 정보와 함께 상기 상품에 대한 여신 결제 승인 요청이 수신되면, OTP 기반의 여신 결제 가능 회원 인증을 수행하여 상기 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송함으로써, 상기 회원으로 하여금 보다 편리하고 안전하게 여신 결제 서비스를 이용할 수 있도록 지원할 수 있다.In accordance with the present invention, a payment processing agent device and an operating method thereof receive a credit payment request for a product from a client terminal of one member to a contents providing server, and product information about the product and the product information from the contents providing server When a credit payment approval request for the product is received along with information on the amount, OTP-based credit payment possible member authentication is performed and when the member is authenticated as a credit payment capable member, credit payment processing for the product amount After completing , by transmitting a credit payment processing completion message for the amount of the product to the content providing server, it is possible to support the member to use the credit payment service more conveniently and safely.

도 1은 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법을 도시한 순서도이다.
1 is a diagram showing the structure of a payment processing agency device that supports credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention.
2 is a flowchart illustrating an operation method of a payment processing agent supporting credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention.

이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. These descriptions are not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, like reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, refer to those of ordinary skill in the art to which the present invention belongs. It has the same meaning as is commonly understood by those who have it.

본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.In this document, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, in various embodiments of the present invention, each of the components, functional blocks or means may be composed of one or more sub-components, and the electrical, electronic, and mechanical functions performed by each component are electronic. A circuit, an integrated circuit, an ASIC (Application Specific Integrated Circuit), etc. may be implemented with various well-known devices or mechanical elements, and may be implemented separately or two or more may be integrated into one.

한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.On the other hand, the blocks in the accompanying block diagram or steps in the flowchart are computer program instructions that are loaded in a processor or memory of equipment capable of data processing, such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer, and perform specified functions. can be interpreted as meaning Since these computer program instructions may be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks of the block diagrams or the steps of the flowcharts are produced as articles of manufacture containing instruction means for performing the same. could be In addition, each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing the specified logical function(s). It should also be noted that, in some alternative embodiments, it is also possible for the functions recited in blocks or steps to be executed out of the prescribed order. For example, two blocks or steps shown one after another may be performed substantially simultaneously or in the reverse order, and in some cases, some blocks or steps may be omitted.

도 1은 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 구조를 도시한 도면이다.1 is a diagram showing the structure of a payment processing agency device that supports credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치(110)는 회원 정보 데이터베이스(111), 복합 정보 저장부(112), 제1 랜덤 벡터 생성부(113), 제1 요청부(114), 제1 인증 확인부(115) 및 여신 결제 처리부(116)를 포함한다.Referring to FIG. 1 , a payment processing agency device 110 supporting credit and debit payment processing through OTP-based member authentication according to the present invention includes a member information database 111 , a complex information storage unit 112 , and a first It includes a random vector generation unit 113 , a first request unit 114 , a first authentication verification unit 115 , and a credit payment processing unit 116 .

회원 정보 데이터베이스(111)에는 복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP(One Time Password) 생성 함수가 대응되어 저장되어 있다.In the member information database 111, member information for a plurality of members and different OTP (One Time Password) generating functions issued in advance for each of the plurality of members are stored in correspondence with each other.

여기서, OTP란 고정된 패스워드 대신 무작위로 생성되는 일회용 인증 번호를 의미하고, 상기 OTP 생성 함수는 개발자에 의해 미리 설정될 수 있는 함수로서, 현재 시간 값을 기초로 일회용 인증 번호가 생성되도록 설정될 수 있다.Here, OTP means a one-time authentication number that is randomly generated instead of a fixed password, and the OTP generation function is a function that can be preset by a developer, and can be set to generate a one-time authentication number based on the current time value. have.

관련해서, 회원 정보 데이터베이스(111)에는 하기의 표 1과 같이 정보가 저장되어 있을 수 있다.In relation to this, information may be stored in the member information database 111 as shown in Table 1 below.

회원들의 회원 정보Member information of members OTP 생성 함수OTP generation function 회원 정보 1Member information 1 OTP 생성 함수 1OTP generation function 1 회원 정보 2Member information 2 OTP 생성 함수 2OTP generation function 2 ...... ......

복합 정보 저장부(112)에는 여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된(predetermined) 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리(Euclidean Distance)에 대한 정보가 저장되어 있다.In the complex information storage unit 112, a predetermined (predetermined) authentication vector for use in member authentication for whether a member is a credit payment capable member, and a predetermined Euclidean distance ( Euclidean Distance) is stored.

여기서, 유클리드 거리란 두 개의 벡터가 존재한다고 하였을 때, 두 벡터 간의 거리를 의미하는 것으로 하기의 수학식 1에 따라 연산될 수 있다.Here, the Euclidean distance means a distance between two vectors when two vectors exist, and may be calculated according to Equation 1 below.

Figure 112019100616929-pat00001
Figure 112019100616929-pat00001

상기 수학식 1에서 D는 유클리드 거리, Ai와 Bi는 두 벡터에 포함되어 있는 i번째 성분들을 의미한다. 보통, 두 벡터 간의 유클리드 거리가 작을수록 두 벡터는 유사한 벡터라고 볼 수 있고, 두 벡터 간의 유클리드 거리가 클수록 두 벡터는 비유사한 벡터라고 볼 수 있다.In Equation 1, D denotes a Euclidean distance, and A i and B i denote i-th components included in the two vectors. In general, the smaller the Euclidean distance between two vectors is, the more similar the two vectors are.

이때, 제1 회원이 상기 제1 회원의 제1 클라이언트 단말(130)을 이용하여 콘텐츠 제공 서버(140)를 통해 운영되는 쇼핑몰 사이트에 접속한 후 제1 상품을 선택하여 여신 결제 요청을 콘텐츠 제공 서버(140)로 전송하게 되면, 콘텐츠 제공 서버(140)는 상기 제1 상품에 대한 여신 결제 요청에 대응하여 결제 처리 대행 장치(110)로 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청을 전송할 수 있다.At this time, the first member accesses the shopping mall site operated through the content providing server 140 using the first client terminal 130 of the first member, selects a first product, and sends a credit payment request to the content providing server When transmitted to 140, the content providing server 140 responds to the credit payment request for the first product to the payment processing agent device 110, product information for the first product and the amount of the first product It is possible to transmit a credit payment approval request for the first product together with the information on.

여기서, 콘텐츠 제공 서버(140)는 온라인 쇼핑몰 사이트나 전자 콘텐츠를 제공하는 사이트 등과 같이 온라인을 기반으로 사용자들에게 소정의 콘텐츠를 제공하는 사업자가 운영하는 서버를 의미한다.Here, the content providing server 140 refers to a server operated by a business operator that provides predetermined content to users based on online, such as an online shopping mall site or a site providing electronic content.

이때, 제1 랜덤 벡터 생성부(113)는 콘텐츠 제공 서버(140)로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 회원 정보 데이터베이스(111)를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게(Hamming Weight)를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성한다.At this time, the first random vector generator 113 receives a credit payment approval request for the first product together with product information on the first product and information on the amount of the first product from the content providing server 140 . When received, the first OTP generation function issued in advance for the first member is checked with reference to the member information database 111, and a first one-time authentication number according to the current time value based on the first OTP generation function is obtained. After confirming the number corresponding to the first digit set in the first one-time authentication number, having a Hamming Weight corresponding to the size of the number corresponding to the preset first digit while having a preset number A first random vector having a first length is randomly generated.

여기서, 해밍 무게란 '0'과 '1'의 코드로 구성된 데이터에서 '1'의 개수를 의미하고, 상기 자릿수는 개발자에 의해 미리 설정될 수 있는 것으로, 왼쪽부터 몇 번째 자리인지를 지시하는 숫자로 설정될 수 있다.Here, the Hamming weight means the number of '1's in data composed of codes of '0' and '1', and the number of digits may be preset by a developer, and a number indicating the number of digits from the left can be set to

예컨대, 상기 제1 상품을 '상품 1'이라고 하고, 상기 제1 회원의 제1 회원 정보를 '회원 정보 1'이라고 가정하자. 이때, 상기 제1 회원이 상기 제1 회원의 제1 클라이언트 단말(130)을 이용하여 콘텐츠 제공 서버(140)를 통해 운영되는 쇼핑몰 사이트에 접속한 후 상기 제1 상품인 '상품 1'을 선택하여 여신 결제 요청을 콘텐츠 제공 서버(140)로 전송하게 되면, 콘텐츠 제공 서버(140)는 상기 제1 상품인 '상품 1'에 대한 여신 결제 요청에 대응하여 결제 처리 대행 장치(110)로 상기 제1 상품인 '상품 1'에 대한 상품 정보 및 상기 제1 상품인 '상품 1'의 금액에 대한 정보와 함께 상기 제1 상품인 '상품 1'에 대한 여신 결제 승인 요청을 전송할 수 있다.For example, it is assumed that the first product is 'Product 1' and that the first member information of the first member is 'Member Information 1'. At this time, the first member accesses the shopping mall site operated through the content providing server 140 using the first client terminal 130 of the first member and selects the first product 'Product 1'. When the credit payment request is transmitted to the content providing server 140 , the content providing server 140 responds to the credit payment request for 'Product 1', which is the first product, to the payment processing agency device 110 for the first A credit payment approval request for the first product 'Product 1' may be transmitted together with product information on the product 'Product 1' and information on the amount of the first product 'Product 1'.

이때, 콘텐츠 제공 서버(140)로부터 결제 처리 대행 장치(110)에 상기 제1 상품인 '상품 1'에 대한 상품 정보 및 상기 제1 상품인 '상품 1'의 금액에 대한 정보와 함께 상기 제1 상품인 '상품 1'에 대한 여신 결제 승인 요청이 수신되면, 제1 랜덤 벡터 생성부(113)는 상기 표 1과 같은 회원 정보 데이터베이스(111)를 참조하여 상기 제1 회원의 제1 회원 정보인 '회원 정보 1'에 대해 미리 발급된 제1 OTP 생성 함수인 'OTP 생성 함수 1'을 확인할 수 있고, 상기 제1 OTP 생성 함수인 'OTP 생성 함수 1'을 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성할 수 있으며, 만약, 상기 제1 일회용 인증 번호가 '12345'로 생성되었고, 기설정된 제1 자릿수가 3인 경우, 제1 랜덤 벡터 생성부(113)는 상기 제1 일회용 인증 번호인 '12345'에서 3번째 자릿수인 '3'을 확인할 수 있다. 그 이후, 제1 랜덤 벡터 생성부(113)는 상기 3번째 자릿수인 '3'의 크기에 대응하는 해밍 무게를 가지면서, 상기 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성할 수 있다. 관련해서, 상기 기설정된 제1 길이를 '6'이라고 하는 경우, 제1 랜덤 벡터 생성부(113)는 '1'의 개수가 3개이면서 길이가 6인 제1 랜덤 벡터로 '[0 1 1 0 0 1]'과 같은 제1 랜덤 벡터를 생성할 수 있다.At this time, from the content providing server 140 to the payment processing agency device 110 , the first product together with product information on the first product 'Product 1' and information on the amount of the first product 'Product 1' When a request for approval of credit payment for the product 'Product 1' is received, the first random vector generator 113 refers to the member information database 111 as shown in Table 1 above to obtain the first member information of the first member. 'OTP generating function 1', which is a first OTP generating function issued in advance for 'member information 1', may be checked, and the first OTP generating function 1 according to the current time value based on the 'OTP generating function 1' which is the first OTP generating function It is possible to generate a one-time authentication number, and if the first one-time authentication number is generated as '12345' and the preset first digit is 3, the first random vector generation unit 113 is the first one-time authentication number You can check the 3rd digit '3' in the number '12345'. Thereafter, the first random vector generator 113 may randomly generate a first random vector having the first predetermined length while having a Hamming weight corresponding to the size of '3', which is the third digit. have. In relation to this, when the preset first length is '6', the first random vector generator 113 converts '[0 1 1 0 0 1]', a first random vector may be generated.

제1 요청부(114)는 상기 제1 랜덤 벡터를 제1 클라이언트 단말(130)로 전송하면서, 제1 클라이언트 단말(130)로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청한다.While transmitting the first random vector to the first client terminal 130 , the first requesting unit 114 requests the first client terminal 130 to transmit a feedback vector corresponding to the first random vector.

이때, 본 발명의 일실시예에 따르면, 제1 클라이언트 단말(130)은 메모리 상에 상기 기설정된 인증용 벡터 및 상기 제1 OTP 생성 함수와 동일한 제1 검증용 OTP 생성 함수를 저장하고 있을 수 있고, 결제 처리 대행 장치(110)로부터 상기 제1 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 검증용 일회용 인증 번호를 생성한 후, 상기 제1 검증용 일회용 인증 번호에서 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인할 수 있다.At this time, according to an embodiment of the present invention, the first client terminal 130 may store the preset authentication vector and a first OTP generating function for verification identical to the first OTP generating function in a memory, , When the first random vector is received from the payment processing agent device 110, the first verification one-time authentication number is generated according to the current time value based on the first verification OTP generation function stored in the memory. After confirming the number for verification corresponding to the preset first digit in the first one-time authentication number for verification, the Hamming weight of the first random vector is the size of the verification number corresponding to the preset first digit It can be checked whether it matches the Hamming weight corresponding to .

그러고 나서, 제1 클라이언트 단말(130)은 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 메모리 상에 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱(Hadamard product)을 연산하여 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 결제 처리 대행 장치(110)로 전송할 수 있다.Then, the first client terminal 130 determines that the Hamming weight of the first random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset first digit, After generating a first feedback vector by calculating a Hadamard product between the preset authentication vector stored in and the first random vector, the first feedback vector is transmitted to the payment processing agency 110 can

여기서, 아다마르 곱이란 같은 크기의 행렬 또는 벡터에서 각 성분을 곱하는 연산을 의미하며, '[a b c]'와 '[x y z]'라는 벡터가 있을 때, 두 벡터 간의 아다마르 곱을 연산하면, 이에 대한 연산 벡터는 '[ax by cz]'로 나타낼 수 있다.Here, the Hadamard product means an operation of multiplying each component in a matrix or vector of the same size. The operation vector can be expressed as '[ax by cz]'.

관련해서, 앞서 설명한 예시와 같이, 상기 제1 랜덤 벡터가 '[0 1 1 0 0 1]'이라고 하는 경우, 제1 클라이언트 단말(130)은 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 검증용 일회용 인증 번호인 '12345'를 생성한 후, 상기 제1 검증용 일회용 인증 번호에서 상기 기설정된 제1 자릿수인 3번째 자릿수에 해당되는 검증용 숫자인 '3'을 확인하여 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수인 3번째 자릿수에 해당되는 검증용 숫자인 '3'의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인할 수 있다.In relation to this, as in the example described above, when the first random vector is '[0 1 1 0 0 1]', the first client terminal 130 stores the first verification OTP stored in the memory. After generating '12345', which is the first one-time authentication number for verification according to the current time value based on the generation function, for verification corresponding to the third digit that is the preset first digit in the first one-time authentication number for verification By checking the number '3', it is confirmed whether the Hamming weight of the first random vector matches the Hamming weight corresponding to the size of the verification number '3' corresponding to the third digit, which is the preset first digit. can

상기 제1 랜덤 벡터 '[0 1 1 0 0 1]'의 해밍 무게는 '3'으로 상기 기설정된 제1 자릿수인 3번째 자릿수에 해당되는 검증용 숫자인 '3'과 일치하기 때문에 제1 클라이언트 단말(130)은 상기 메모리 상에 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 상기 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 결제 처리 대행 장치(110)로 전송할 수 있다.Since the Hamming weight of the first random vector '[0 1 1 0 0 1]' is '3', it is the same as '3', which is a verification number corresponding to the third digit, which is the preset first digit, so that the first client The terminal 130 generates the first feedback vector by calculating the Hadamard product between the preset authentication vector and the first random vector stored in the memory, and then applies the first feedback vector to a payment processing agency ( 110) can be transmitted.

관련해서, 상기 기설정된 인증용 벡터가 '[1 0 1 0 0 1]'이라고 하는 경우, 제1 클라이언트 단말(130)은 상기 제1 랜덤 벡터 '[0 1 1 0 0 1]'과 상기 기설정된 인증용 벡터 '[1 0 1 0 0 1]' 간의 아다마르 곱을 연산하여 '[0 0 1 0 0 1]'이라고 하는 상기 제1 피드백 벡터를 생성한 후 이를 결제 처리 대행 장치(110)로 전송할 수 있다.In relation to this, when the preset authentication vector is '[1 0 1 0 0 1]', the first client terminal 130 sets the first random vector '[0 1 1 0 0 1]' and the group After generating the first feedback vector called '[0 0 1 0 1]' by calculating the Hadamard product between the set authentication vectors '[1 0 1 0 0 1]', it is sent to the payment processing agency 110 can be transmitted

제1 인증 확인부(115)는 제1 클라이언트 단말(130)로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 상기 제1 피드백 벡터가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증한다.When the first feedback vector is received from the first client terminal 130 as a feedback vector corresponding to the first random vector, the first authentication verification unit 115 is configured to perform a relationship between the preset authentication vector and the first random vector. By calculating a Hadamard product to generate a first operation vector, and verifying whether the first operation vector is the same as the first feedback vector, it is authenticated whether the first member is a credit settlement member.

예컨대, 앞서 설명한 예시와 같이, 상기 제1 랜덤 벡터를 '[0 1 1 0 0 1]'이라고 하고, 상기 기설정된 인증용 벡터를 '[1 0 1 0 0 1]'이라고 하며, 제1 클라이언트 단말(130)로부터 수신된 상기 제1 피드백 벡터를 '[0 0 1 0 0 1]'이라고 하는 경우, 제1 인증 확인부(115)는 상기 제1 랜덤 벡터와 상기 기설정된 인증용 벡터 간의 아다마르 곱을 연산하여 '[0 1 0 0 0 1]'이라고 하는 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터인 '[0 0 1 0 0 1]'과 일치하는 것으로 확인되면, 상기 제1 회원을 여신 결제 가능 회원으로 인증 완료할 수 있다.For example, as in the example described above, the first random vector is called '[0 1 1 0 0 1]', the preset authentication vector is called '[1 0 1 0 0 1]', and the first client When the first feedback vector received from the terminal 130 is referred to as '[0 0 1 0 0 1]', the first authentication verification unit 115 is the difference between the first random vector and the preset vector for authentication. A Marr product is calculated to generate a first operation vector called '[0 1 0 0 0 1]', and it is determined that the first operation vector matches '[0 0 1 0 0 1]', which is the first feedback vector. Upon confirmation, the authentication of the first member as a credit payment capable member may be completed.

여신 결제 처리부(116)는 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송한다.When the first member is authenticated as a credit payment capable member, the credit payment processing unit 116 completes the credit payment processing for the amount of the first product and then sends the content providing server 140 to the amount of the first product. Sends a message of completion of credit payment processing.

예컨대, 앞서 설명한 예시와 같이, 상기 제1 상품을 '상품 1'이라고 가정하자. 이때, 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 여신 결제 처리부(116)는 상기 제1 상품인 '상품 1'의 금액에 대한 여신 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 상기 제1 상품인 '상품 1'의 금액에 대한 여신 결제 처리 완료 메시지를 전송할 수 있다.For example, as in the example described above, it is assumed that the first product is 'Product 1'. At this time, when the authentication of the first member as a credit payment possible member is completed, the credit payment processing unit 116 completes the credit payment processing for the amount of 'Product 1', which is the first product, and then returns to the content providing server 140 . A credit payment processing completion message for the amount of 'Product 1', which is the first product, may be transmitted.

즉, 제1 클라이언트 단말(130)은 사전 발급된 제1 OTP 생성 함수를 기초로 제1 랜덤 벡터의 해밍 무게가 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 경우에만 메모리 상에 저장되어 있는 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 결제 처리 대행 장치(110)로 전송하고, 결제 처리 대행 장치(110)는 제1 클라이언트 단말(130)로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 상기 제1 피드백 벡터가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인하여 제1 회원이 여신 결제 가능 회원으로 인증 완료되는 경우에만 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송함으로써, 비인증 회원이 여신 결제 서비스를 이용하는 것을 방지할 수 있다.That is, the first client terminal 130 corresponds to the Hamming weight corresponding to the size of the verification number corresponding to the preset first digit of the Hamming weight of the first random vector based on the first OTP generation function issued in advance. only in the case of generating a first feedback vector by calculating the Hadamard product between the preset authentication vector stored in the memory and the first random vector, and then transmitting the first feedback vector to the payment processing agency 110, When the first feedback vector is received from the first client terminal 130 as a feedback vector corresponding to the first random vector, the payment processing agent device 110 is a difference between the preset authentication vector and the first random vector. Credit for the amount of the first product only when the first member is authenticated as a credit-payable member by calculating a Marr product to generate a first calculation vector, checking whether the first calculation vector is the same as the first feedback vector By transmitting a credit payment processing completion message for the amount of the first product to the content providing server 140 after completing the payment processing, it is possible to prevent non-certified members from using the credit payment service.

본 발명의 일실시예에 따르면, 회원 정보 데이터베이스(111)에는 상기 복수의 회원들 각각에 대한 회원 정보에 대해, 상기 복수의 회원들 각각에 대한 회원 정보에 대응하는 미리 정해진 여신 결제 한도 금액에 대한 정보가 추가로 대응되어 저장되어 있을 수 있다.According to an embodiment of the present invention, in the member information database 111, for the member information for each of the plurality of members, the predetermined credit settlement limit amount corresponding to the member information for each of the plurality of members Information may be stored in correspondence with the additional information.

관련해서, 회원 정보 데이터베이스(111)에는 하기의 표 2와 같이 정보가 추가로 저장되어 있을 수 있다.In relation to this, information may be additionally stored in the member information database 111 as shown in Table 2 below.

회원들의 회원 정보Member information of members OTP 생성 함수OTP generation function 여신 결제 한도 금액Credit Payment Limit Amount 회원 정보 1Member information 1 OTP 생성 함수 1OTP generation function 1 100만원1 million won 회원 정보 2Member information 2 OTP 생성 함수 2OTP generation function 2 70만원70 million won ...... ...... ......

여기서, 복수의 회원들 각각에 대한 소정의 신용등급에 따라 여신 결제 한도가 설정될 수 있다.Here, a credit settlement limit may be set according to a predetermined credit rating for each of the plurality of members.

이때, 여신 결제 처리부(116)는 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 회원 정보 데이터베이스(111)로부터 상기 제1 회원의 제1 회원 정보에 대응되어 저장되어 있는 제1 여신 결제 한도 금액에 대한 정보를 추출한 후 상기 제1 상품의 금액과 상기 제1 여신 결제 한도 금액을 비교하여 상기 제1 상품의 금액이 상기 제1 여신 결제 한도 금액 이하인 것으로 판단되는 경우에만, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료할 수 있다.At this time, when the credit payment processing unit 116 completes the authentication of the first member as a credit payment capable member, the first credit payment limit stored in correspondence with the first member information of the first member from the member information database 111 Only when it is determined that the amount of the first product is equal to or less than the first credit settlement limit amount by comparing the amount of the first product with the first credit settlement limit amount after extracting the information on the amount of the first product You can complete the credit payment processing for the amount.

예컨대, 앞서 설명한 예시와 같이, 상기 제1 상품을 '상품 1'이라고 하고, '상품 1'의 금액을 '50만원'이라고 하며, 상기 제1 회원의 제1 회원 정보를 '회원 정보 1'이라고 가정하자. 이때, 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 여신 결제 처리부(116)는 상기 표 2와 같은 회원 정보 데이터베이스(111)로부터 상기 제1 회원의 제1 회원 정보인 '회원 정보 1'에 대응되어 저장되어 있는 제1 여신 결제 한도 금액인 '100만원'에 대한 정보를 추출한 후 '상품 1'의 금액인 '50만원'과 상기 제1 여신 결제 한도 금액인 '100만원'을 비교하여 '상품 1'의 금액인 '50 만원'이 상기 제1 여신 결제 한도 금액인 '100만원' 이하인 것으로 판단함으로써, '상품 1'의 금액인 '50만원'에 대한 여신 결제 처리를 완료할 수 있다.For example, as in the example described above, the first product is called 'product 1', the amount of 'product 1' is called '500,000 won', and the first member information of the first member is called 'member information 1'. Let's assume At this time, when the authentication of the first member as a credit payment capable member is completed, the credit payment processing unit 116 receives 'member information 1' which is the first member information of the first member from the member information database 111 as shown in Table 2 above. After extracting information on '1 million won,' which is the first credit payment limit amount stored in correspondence with By determining that '500,000 won', which is the amount of 'product 1', is less than or equal to '1 million won', which is the first credit payment limit, credit payment processing for '500,000 won', which is the amount of 'product 1', can be completed. .

본 발명의 일실시예에 따르면, 결제 처리 대행 장치(110)는 제2 랜덤 벡터 생성부(117), 제2 요청부(118), 제2 인증 확인부(119) 및 직불 결제 처리부(120)를 더 포함할 수 있다.According to an embodiment of the present invention, the payment processing agency device 110 includes a second random vector generator 117 , a second request unit 118 , a second authentication confirmation unit 119 , and a debit payment processing unit 120 . may further include.

이때, 상기 제1 회원이 상기 제1 회원의 제1 클라이언트 단말(130)을 이용하여 콘텐츠 제공 서버(140)를 통해 운영되는 쇼핑몰 사이트에 접속한 후 제2 상품을 선택하여 직불 결제 요청을 콘텐츠 제공 서버(140)로 전송하게 되면, 콘텐츠 제공 서버(140)는 상기 제2 상품에 대한 직불 결제 요청에 대응하여 결제 처리 대행 장치(110)로 상기 제2 상품에 대한 상품 정보 및 상기 제2 상품의 금액에 대한 정보와 함께 상기 제2 상품에 대한 직불 결제 승인 요청을 전송할 수 있다.In this case, the first member accesses a shopping mall site operated through the content providing server 140 using the first client terminal 130 of the first member, selects a second product, and provides content for a direct payment request When transmitted to the server 140 , the content providing server 140 responds to a direct payment request for the second product and sends product information about the second product and the product information of the second product to the payment processing agent device 110 . A request for approval of direct payment for the second product may be transmitted together with information on the amount.

이때, 제2 랜덤 벡터 생성부(117)는 콘텐츠 제공 서버(140)로부터 상기 제2 상품에 대한 상품 정보 및 상기 제2 상품의 금액에 대한 정보와 함께 상기 제2 상품에 대한 직불 결제 승인 요청이 수신되면, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 일회용 인증 번호를 생성하며, 상기 제2 일회용 인증 번호에서 기설정된 제2 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제2 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제2 길이를 갖는 제2 랜덤 벡터를 랜덤하게 생성한다.At this time, the second random vector generator 117 receives a request for approval of direct payment for the second product together with product information on the second product and information on the amount of the second product from the content providing server 140 . Upon receiving, a second one-time authentication number is generated according to the current time value based on the first OTP generation function, and after checking a number corresponding to a preset second digit in the second one-time authentication number, the preset second A second random vector having a predetermined second length is randomly generated while having a Hamming weight corresponding to the size of a number corresponding to two digits.

예컨대, 상기 제2 상품을 '상품 2'이라고 가정하자. 이때, 상기 제1 회원이 상기 제1 회원의 제1 클라이언트 단말(130)을 이용하여 콘텐츠 제공 서버(140)를 통해 운영되는 쇼핑몰 사이트에 접속한 후 상기 제2 상품인 '상품 2'를 선택하여 직불 결제 요청을 콘텐츠 제공 서버(140)로 전송하게 되면, 콘텐츠 제공 서버(140)는 상기 제2 상품인 '상품 2'에 대한 직불 결제 요청에 대응하여 결제 처리 대행 장치(110)로 상기 제2 상품인 '상품 2'에 대한 상품 정보 및 상기 제2 상품인 '상품 2'의 금액에 대한 정보와 함께 상기 제2 상품인 '상품 2'에 대한 직불 결제 승인 요청을 전송할 수 있다.For example, it is assumed that the second product is 'product 2'. In this case, the first member accesses the shopping mall site operated through the content providing server 140 using the first client terminal 130 of the first member and selects the second product 'Product 2'. When the direct payment request is transmitted to the content providing server 140 , the content providing server 140 responds to the direct payment request for 'Product 2', which is the second product, and sends the second A request for approval of debit payment for the second product 'Product 2' may be transmitted along with product information on the product 'Product 2' and information on the amount of the second product 'Product 2'.

이때, 콘텐츠 제공 서버(140)로부터 결제 처리 대행 장치(110)에 상기 제2 상품인 '상품 2'에 대한 상품 정보 및 상기 제2 상품인 '상품 2'의 금액에 대한 정보와 함께 상기 제2 상품인 '상품 2'에 대한 직불 결제 승인 요청이 수신되면, 제2 랜덤 벡터 생성부(117)는 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 일회용 인증 번호를 생성할 수 있으며, 만약, 상기 제2 일회용 인증 번호가 '54321'로 생성되었고, 기설정된 제2 자릿수가 2인 경우, 제2 랜덤 벡터 생성부(117)는 상기 제2 일회용 인증 번호인 '54321'에서 2번째 자릿수인 '4'를 확인할 수 있다. 그 이후, 제2 랜덤 벡터 생성부(117)는 상기 2번째 자릿수인 '4'의 크기에 대응하는 해밍 무게를 가지면서, 상기 기설정된 제2 길이를 갖는 제2 랜덤 벡터를 랜덤하게 생성할 수 있다. 관련해서, 상기 기설정된 제2 길이를 '8'이라고 하는 경우, 제2 랜덤 벡터 생성부(117)는 '1'의 개수가 4개이면서 길이가 8인 제2 랜덤 벡터로 '[1 1 0 1 0 0 0 1]'과 같은 제2 랜덤 벡터를 생성할 수 있다.At this time, from the content providing server 140 to the payment processing agency device 110, the second product together with product information on the second product 'Product 2' and information on the amount of the second product 'Product 2' When a request for approval of direct payment for product 'Product 2' is received, the second random vector generator 117 may generate a second one-time authentication number according to the current time value based on the first OTP generation function, , if the second one-time authentication number is generated as '54321' and the preset second digit is 2, the second random vector generator 117 is the second one in the second one-time authentication number '54321' You can check the digit '4'. Thereafter, the second random vector generator 117 may randomly generate a second random vector having the second predetermined length while having a Hamming weight corresponding to the size of '4', which is the second digit. have. In relation to this, when the preset second length is '8', the second random vector generator 117 converts '[1 1 0' to a second random vector having four '1's and a length of 8'. 1 0 0 0 1]', a second random vector may be generated.

제2 요청부(118)는 상기 제2 랜덤 벡터를 제1 클라이언트 단말(130)로 전송하면서, 제1 클라이언트 단말(130)로 상기 제2 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청한다.While transmitting the second random vector to the first client terminal 130 , the second request unit 118 requests the first client terminal 130 to transmit a feedback vector corresponding to the second random vector.

이때, 본 발명의 일실시예에 따르면, 제1 클라이언트 단말(130)은 상기 메모리 상에 상기 기설정된 유클리드 거리를 추가로 저장하고 있을 수 있다.In this case, according to an embodiment of the present invention, the first client terminal 130 may additionally store the preset Euclidean distance in the memory.

만약, 결제 처리 대행 장치(110)로부터 상기 제2 랜덤 벡터가 제1 클라이언트 단말(130)에 수신되면, 제1 클라이언트 단말(130)은 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 검증용 일회용 인증 번호를 생성한 후, 상기 제2 검증용 일회용 인증 번호에서 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인할 수 있다.If the second random vector is received from the payment processing agency device 110 to the first client terminal 130, the first client terminal 130 stores the first verification OTP generating function in the memory. After generating a second one-time authentication number for verification according to the current time value based on It may be checked whether the Hamming weight matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset second digit.

이때, 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 제1 클라이언트 단말(130)은 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리로 연산되는 제2 피드백 벡터를 랜덤하게 생성하여 결제 처리 대행 장치(110)로 전송할 수 있다.At this time, when it is confirmed that the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset second digit, the first client terminal 130 performs the second random A second feedback vector in which the Euclidean distance to the vector is calculated based on the preset Euclidean distance stored in the memory may be randomly generated and transmitted to the payment processing agency 110 .

관련해서, 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리를 'D1'이라고 하고, 결제 처리 대행 장치(110)로부터 제1 클라이언트 단말(130)에 '[1 1 0 1 0 0 0 1]'이라고 하는 상기 제2 랜덤 벡터가 수신되었다고 하는 경우, 제1 클라이언트 단말(130)은 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 검증용 일회용 인증 번호인 '54321'을 생성한 후, 상기 제2 검증용 일회용 인증 번호에서 상기 기설정된 제2 자릿수인 2번째 자릿수에 해당되는 검증용 숫자 '4'를 확인할 수 있다.In this regard, the preset Euclidean distance stored in the memory is referred to as 'D 1 ', and '[1 1 0 1 0 0 0 1] When it is said that the second random vector of ' is received, the first client terminal 130 After the authentication number '54321' is generated, the verification number '4' corresponding to the second digit, which is the preset second digit, may be identified in the second one-time authentication number for verification.

그 이후, 제1 클라이언트 단말(130)은 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수인 2번째 자릿수에 해당되는 검증용 숫자인 '4'의 크기에 대응하는 해밍 무게와 일치하는지 확인할 수 있다.After that, the first client terminal 130 checks whether the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of '4', which is a verification number corresponding to the second digit, which is the preset second digit. can be checked

본 실시예에서 상기 제2 랜덤 벡터의 해밍 무게는 '4'로 상기 기설정된 제2 자릿수인 2번째 자릿수에 해당되는 검증용 숫자와 일치하는데, 상기 제2 랜덤 벡터의 해밍 무게인 '4'와 상기 기설정된 제2 자릿수인 2번째 자릿수에 해당되는 검증용 숫자인 '4'가 서로 일치한다는 것은 상기 제2 랜덤 벡터가 결제 처리 대행 장치(110)와 제1 클라이언트 단말(130)이 사전 공유하고 있는 동일한 제1 OTP 생성 함수를 기초로 도출된 일회용 인증 번호에 기초하여 생성된 것이 맞다는 의미로 볼 수 있다.In this embodiment, the Hamming weight of the second random vector is '4', which is the same as the number for verification corresponding to the second digit, which is the preset second digit, with '4', the Hamming weight of the second random vector The second random vector is pre-shared by the payment processing agent device 110 and the first client terminal 130 that the number '4' for verification corresponding to the second digit, which is the preset second digit, matches each other It can be seen that it is correct that it is generated based on the one-time authentication number derived based on the same first OTP generation function.

따라서, 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수인 2번째 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 제1 클라이언트 단말(130)은 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리인 'D1'으로 연산되는 제2 피드백 벡터를 랜덤하게 생성하여 결제 처리 대행 장치(110)로 전송할 수 있다.Accordingly, when it is confirmed that the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the second digit, which is the preset second digit, the first client terminal 130 is A second feedback vector in which the Euclidean distance to the second random vector is calculated as 'D 1 ', which is the preset Euclidean distance stored in the memory, may be randomly generated and transmitted to the payment processing agency 110 . .

제2 인증 확인부(119)는 제1 클라이언트 단말(130)로부터 상기 제2 랜덤 벡터에 대응되는 피드백 벡터로 상기 제2 피드백 벡터가 수신되면, 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리와 일치하는지 확인함으로써, 상기 제1 회원이 직불 결제 가능 회원인지 여부를 인증한다.When the second feedback vector is received from the first client terminal 130 as a feedback vector corresponding to the second random vector, the second authentication verification unit 119 is configured to perform a second between the second feedback vector and the second random vector. By calculating 1 Euclidean distance and confirming whether the first Euclidean distance matches the preset Euclidean distance, it is authenticated whether the first member is a member capable of direct payment.

직불 결제 처리부(120)는 상기 제1 회원이 직불 결제 가능 회원으로 인증 완료되면, 상기 제2 상품의 금액에 대한 직불 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 상기 제2 상품의 금액에 대한 직불 결제 처리 완료 메시지를 전송한다.When the first member is authenticated as a debit payment capable member, the debit payment processing unit 120 completes the debit payment processing for the amount of the second product and then sends the content providing server 140 to the amount of the second product. Sends a message that the debit payment processing has been completed.

예컨대, 앞서 설명한 예시와 같이, 상기 제2 랜덤 벡터를 '[1 1 0 1 0 0 0 1]'이라고 하고, 상기 기설정된 유클리드 거리를 'D1'이라고 하며, 상기 제2 상품을 '상품 2'라고 하고, '상품 2'의 금액을 '60만원'이라고 가정하자. 이때, 제1 클라이언트 단말(130)로부터 상기 제2 랜덤 벡터 '[1 1 0 1 0 0 0 1]'에 대응되는 피드백 벡터로 상기 제2 피드백 벡터가 결제 처리 대행 장치(110)에 수신되면, 제2 인증 확인부(119)는 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 '[1 1 0 1 0 0 0 1]' 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리인 'D1'과 일치하는 것으로 확인되면, 상기 제1 회원을 직불 결제 가능 회원으로 인증 완료할 수 있다.For example, as in the example described above, the second random vector is called '[1 1 0 1 0 0 0 1]', the preset Euclidean distance is called 'D 1 ', and the second product is called 'product 2 ', let's assume that the amount of 'Product 2' is '600,000 won'. In this case, when the second feedback vector is received from the first client terminal 130 as a feedback vector corresponding to the second random vector '[1 1 0 1 0 0 0 1]' to the payment processing agent device 110, The second authentication verification unit 119 calculates a first Euclidean distance between the second feedback vector and the second random vector '[1 1 0 1 0 0 0 1]', and the first Euclidean distance is the preset If it is confirmed that it matches the Euclidean distance 'D 1 ', the authentication of the first member as a member capable of direct payment may be completed.

이렇게, 상기 제1 회원이 직불 결제 가능 회원으로 인증 완료되면, 직불 결제 처리부(120)는 '상품 2'의 금액인 '60만원'에 대한 직불 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 '상품 2'의 금액인 '60만원'에 대한 직불 결제 처리 완료 메시지를 전송할 수 있다.In this way, when the authentication of the first member as a debit payment member is completed, the debit payment processing unit 120 completes the debit payment processing for '600,000 won,' which is the amount of 'product 2', and then to the content providing server 140 It is possible to transmit a message of completion of the debit payment processing for '600,000 won', which is the amount of 'Product 2'.

즉, 제1 클라이언트 단말(130)은 사전 발급된 제1 OTP 생성 함수를 기초로 제2 랜덤 벡터의 해밍 무게가 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 경우에만 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리로 연산되는 제2 피드백 벡터를 랜덤하게 생성하여 결제 처리 대행 장치(110)로 전송하고, 결제 처리 대행 장치(110)는 제1 클라이언트 단말(130)로부터 상기 제2 랜덤 벡터에 대응되는 피드백 벡터로 상기 제2 피드백 벡터가 수신되면, 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리와 일치하는지 확인하여 제1 회원이 직불 결제 가능 회원으로 인증 완료되는 경우에만 제2 상품의 금액에 대한 직불 결제 처리를 완료한 후 콘텐츠 제공 서버(140)로 상기 제2 상품의 금액에 대한 직불 결제 처리 완료 메시지를 전송함으로써, 비인증 회원이 직불 결제 서비스를 이용하는 것을 방지할 수 있다.That is, the first client terminal 130 corresponds to the Hamming weight corresponding to the size of the verification number corresponding to the preset second digit of the Hamming weight of the second random vector based on the pre-issued first OTP generation function. Only when the Euclidean distance to the second random vector is calculated based on the preset Euclidean distance stored in the memory, a second feedback vector is randomly generated and transmitted to the payment processing agent device 110, and the payment processing agent When the second feedback vector is received from the first client terminal 130 as a feedback vector corresponding to the second random vector, the device 110 calculates a first Euclidean distance between the second feedback vector and the second random vector. After completing the debit payment processing for the amount of the second product only when the first member is authenticated as a debitable member by checking whether the first Euclidean distance matches the preset Euclidean distance, the content providing server By transmitting the message of completion of the debit payment processing for the amount of the second product to 140 , it is possible to prevent the non-certified member from using the debit payment service.

도 2는 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법을 도시한 순서도이다.2 is a flowchart illustrating an operation method of a payment processing agency that supports credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention.

단계(S210)에서는 복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP 생성 함수가 대응되어 저장되어 있는 회원 정보 데이터베이스를 유지한다.In step S210, a member information database in which member information for a plurality of members and different OTP generation functions issued in advance for each of the plurality of members are stored in correspondence is maintained.

단계(S220)에서는 여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리에 대한 정보가 저장되어 있는 복합 정보 저장부를 유지한다.In step (S220), information about a preset Euclidean distance for use in member authentication for whether a member is a member capable of payment and a preset vector for authentication for use in member authentication for whether or not a member can be credited is stored. Maintains complex information storage.

단계(S230)에서는 상기 복수의 회원들 중 제1 회원의 제1 클라이언트 단말로부터 콘텐츠 제공 서버로 제1 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 상기 회원 정보 데이터베이스를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성한다.In step S230, as a credit payment request for a first product is received from the first client terminal of the first member among the plurality of members to the content providing server, product information on the first product from the content providing server and when a credit payment approval request for the first product is received together with the information on the amount of the first product, the first OTP generation function issued in advance for the first member is checked with reference to the member information database, , generates a first one-time authentication number according to the current time value based on the first OTP generation function, and after confirming a number corresponding to a preset first digit in the first one-time authentication number, the preset first digit A first random vector having a predetermined first length is randomly generated while having a Hamming weight corresponding to the size of a number corresponding to .

단계(S240)에서는 상기 제1 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청한다.In step S240, while transmitting the first random vector to the first client terminal, the first client terminal requests transmission of a feedback vector corresponding to the first random vector.

단계(S250)에서는 상기 제1 클라이언트 단말로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 제1 피드백 벡터(상기 제1 피드백 벡터는 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱에 따라 연산된 벡터임)가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증한다.In step S250, a first feedback vector is obtained from the first client terminal as a feedback vector corresponding to the first random vector (the first feedback vector includes the preset authentication vector stored in the first client terminal and the When a vector calculated according to the Hadamard product between the first random vectors) is received, a first operation vector is generated by calculating the Hadamard product between the preset authentication vector and the first random vector, and the first operation By checking whether the vector is the same as the first feedback vector, it is authenticated whether the first member is a credit settlement member.

단계(S260)에서는 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송한다.In step S260, when the authentication of the first member as a credit payment capable member is completed, the credit payment processing for the amount of the first product is completed with the content providing server after the credit payment processing for the amount of the first product is completed Send a completion message.

이때, 본 발명의 일실시예에 따르면, 상기 회원 정보 데이터베이스에는 상기 복수의 회원들 각각에 대한 회원 정보에 대해, 상기 복수의 회원들 각각에 대한 회원 정보에 대응하는 미리 정해진 여신 결제 한도 금액에 대한 정보가 추가로 대응되어 저장되어 있을 수 있다.At this time, according to an embodiment of the present invention, in the member information database, for the member information for each of the plurality of members, the predetermined credit payment limit amount corresponding to the member information for each of the plurality of members Information may be stored in correspondence with the additional information.

이때, 단계(S260)에서는 상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 회원 정보 데이터베이스로부터 상기 제1 회원의 제1 회원 정보에 대응되어 저장되어 있는 제1 여신 결제 한도 금액에 대한 정보를 추출한 후 상기 제1 상품의 금액과 상기 제1 여신 결제 한도 금액을 비교하여 상기 제1 상품의 금액이 상기 제1 여신 결제 한도 금액 이하인 것으로 판단되는 경우에만, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료할 수 있다.At this time, in step S260, when the authentication of the first member as a credit payment capable member is completed, information on the first credit payment limit amount stored in correspondence with the first member information of the first member from the member information database Only when it is determined that the amount of the first product is less than or equal to the first credit settlement limit by comparing the amount of the first product with the first credit settlement limit amount after extracting, the credit for the amount of the first product Payment processing can be completed.

또한, 본 발명의 일실시예에 따르면, 상기 제1 클라이언트 단말은 메모리 상에 상기 기설정된 인증용 벡터 및 상기 제1 OTP 생성 함수와 동일한 제1 검증용 OTP 생성 함수를 저장하고 있고, 상기 결제 처리 대행 장치로부터 상기 제1 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 검증용 일회용 인증 번호를 생성한 후, 상기 제1 검증용 일회용 인증 번호에서 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며, 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 메모리 상에 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 상기 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 상기 결제 처리 대행 장치로 전송할 수 있다.Further, according to an embodiment of the present invention, the first client terminal stores the preset authentication vector and a first OTP generating function for verification identical to the first OTP generating function in a memory, and the payment processing When the first random vector is received from the proxy device, after generating a first one-time authentication number for verification according to the current time value based on the first verification OTP generation function stored in the memory, the first By checking the verification number corresponding to the preset first digit in the one-time authentication number for verification, the Hamming weight of the first random vector corresponds to the size of the verification number corresponding to the preset first digit Hamming weight and It is checked whether it matches, and when it is confirmed that the Hamming weight of the first random vector matches the Hamming weight corresponding to the size of the verification number corresponding to the preset first digit, it is stored in the memory. After generating the first feedback vector by calculating a Hadamard product between the preset authentication vector and the first random vector, the first feedback vector may be transmitted to the payment processing agent.

이때, 본 발명의 일실시예에 따르면, 상기 결제 처리 대행 장치의 동작 방법은 상기 제1 회원의 상기 제1 클라이언트 단말로부터 상기 콘텐츠 제공 서버로 제2 상품에 대한 직불 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제2 상품에 대한 상품 정보 및 상기 제2 상품의 금액에 대한 정보와 함께 상기 제2 상품에 대한 직불 결제 승인 요청이 수신되면, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 일회용 인증 번호를 생성하고, 상기 제2 일회용 인증 번호에서 기설정된 제2 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제2 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제2 길이를 갖는 제2 랜덤 벡터를 랜덤하게 생성하는 단계, 상기 제2 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제2 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 단계, 상기 제1 클라이언트 단말로부터 상기 제2 랜덤 벡터에 대응되는 피드백 벡터로 제2 피드백 벡터(상기 제2 피드백 벡터는 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 유클리드 거리로 연산되도록 생성된 벡터임)가 수신되면, 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리와 일치하는지 확인함으로써, 상기 제1 회원이 직불 결제 가능 회원인지 여부를 인증하는 단계 및 상기 제1 회원이 직불 결제 가능 회원으로 인증 완료되면, 상기 제2 상품의 금액에 대한 직불 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제2 상품의 금액에 대한 직불 결제 처리 완료 메시지를 전송하는 단계를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, in the method of operating the payment processing agent, as a direct payment request for a second product is received from the first client terminal of the first member to the content providing server, the When a debit payment approval request for the second product is received from the content providing server along with product information on the second product and information on the amount of the second product, the current time value based on the first OTP generation function After generating a second one-time authentication number according to, and confirming a number corresponding to a preset second digit in the second one-time authentication number, have a hamming weight corresponding to the size of the number corresponding to the preset second digit while randomly generating a second random vector having a second predetermined length, while transmitting the second random vector to the first client terminal, feedback corresponding to the second random vector to the first client terminal requesting transmission of a vector, a second feedback vector from the first client terminal to a feedback vector corresponding to the second random vector (the second feedback vector is the Euclidean distance from the second random vector to the first client When a vector generated to be calculated using the preset Euclidean distance stored in the terminal is received, a first Euclidean distance between the second feedback vector and the second random vector is calculated, and the first Euclidean distance is the Authenticating whether the first member is a member capable of debit payment by checking whether it matches a preset Euclidean distance, and when the first member is authenticated as a member capable of debit After completing the processing, the method may further include transmitting a debit payment processing completion message for the amount of the second product to the content providing server.

이때, 본 발명의 일실시예에 따르면, 상기 제1 클라이언트 단말은 상기 메모리 상에 상기 기설정된 유클리드 거리를 추가로 저장하고 있고, 상기 결제 처리 대행 장치로부터 상기 제2 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 검증용 일회용 인증 번호를 생성한 후, 상기 제2 검증용 일회용 인증 번호에서 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며, 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리로 연산되는 상기 제2 피드백 벡터를 랜덤하게 생성하여 상기 결제 처리 대행 장치로 전송할 수 있다.At this time, according to an embodiment of the present invention, the first client terminal additionally stores the preset Euclidean distance in the memory, and when the second random vector is received from the payment processing device, the memory After generating a second one-time authentication number for verification according to a current time value based on the first OTP generation function for verification stored on the It is confirmed whether the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of the verification number corresponding to the preset second digit by checking the number for verification, and the Hamming weight of the second random vector When it is confirmed that the weight matches the Hamming weight corresponding to the size of the verification digit corresponding to the second preset number, the preset Euclidean distance to the second random vector is stored in the memory. The second feedback vector calculated as a distance may be randomly generated and transmitted to the payment processing agency device.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법은 도 1을 이용하여 설명한 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.Above, with reference to FIG. 2, the operation method of the payment processing agency device supporting credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention has been described. Here, the operation method of the payment processing agency device supporting credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention is credit and debit payment through OTP-based member authentication described with reference to FIG. 1 . Since it may correspond to the configuration of the operation of the payment processing agent device 110 supporting processing, a more detailed description thereof will be omitted.

본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The operating method of the payment processing agency device supporting credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through combination with a computer. have.

또한, 본 발명의 일실시예에 따른 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.In addition, the operating method of the payment processing agency device that supports credit and debit payment processing through OTP-based member authentication according to an embodiment of the present invention is implemented in the form of a program command that can be executed through various computer means and is computer-readable It can be recorded on any available medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .

110: OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치
111: 회원 정보 데이터베이스 112: 복합 정보 저장부
113: 제1 랜덤 벡터 생성부 114: 제1 요청부
115: 제1 인증 확인부 116: 여신 결제 처리부
117: 제2 랜덤 벡터 생성부 118: 제2 요청부
119: 제2 인증 확인부 120: 직불 결제 처리부
130: 제1 클라이언트 단말 140: 콘텐츠 제공 서버
110: Payment processing agency that supports credit and debit payment processing through OTP-based member authentication
111: member information database 112: complex information storage unit
113: first random vector generating unit 114: first requesting unit
115: first authentication verification unit 116: credit payment processing unit
117: second random vector generating unit 118: second requesting unit
119: second authentication verification unit 120: debit payment processing unit
130: first client terminal 140: content providing server

Claims (12)

OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치에 있어서,
복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP(One Time Password) 생성 함수가 대응되어 저장되어 있는 회원 정보 데이터베이스;
여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된(predetermined) 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리(Euclidean Distance)에 대한 정보가 저장되어 있는 복합 정보 저장부;
상기 복수의 회원들 중 제1 회원의 제1 클라이언트 단말로부터 콘텐츠 제공 서버로 제1 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 상기 회원 정보 데이터베이스를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게(Hamming Weight)를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성하는 제1 랜덤 벡터 생성부;
상기 제1 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 제1 요청부;
상기 제1 클라이언트 단말로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 제1 피드백 벡터 - 상기 제1 피드백 벡터는 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱(Hadamard product)에 따라 연산된 벡터임 - 가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증하는 제1 인증 확인부;
상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송하는 여신 결제 처리부;
상기 제1 회원의 상기 제1 클라이언트 단말로부터 상기 콘텐츠 제공 서버로 제2 상품에 대한 직불 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제2 상품에 대한 상품 정보 및 상기 제2 상품의 금액에 대한 정보와 함께 상기 제2 상품에 대한 직불 결제 승인 요청이 수신되면, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 일회용 인증 번호를 생성하고, 상기 제2 일회용 인증 번호에서 기설정된 제2 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제2 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제2 길이를 갖는 제2 랜덤 벡터를 랜덤하게 생성하는 제2 랜덤 벡터 생성부;
상기 제2 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제2 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 제2 요청부;
상기 제1 클라이언트 단말로부터 상기 제2 랜덤 벡터에 대응되는 피드백 벡터로 제2 피드백 벡터 - 상기 제2 피드백 벡터는 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 유클리드 거리로 연산되도록 생성된 벡터임 - 가 수신되면, 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리와 일치하는지 확인함으로써, 상기 제1 회원이 직불 결제 가능 회원인지 여부를 인증하는 제2 인증 확인부; 및
상기 제1 회원이 직불 결제 가능 회원으로 인증 완료되면, 상기 제2 상품의 금액에 대한 직불 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제2 상품의 금액에 대한 직불 결제 처리 완료 메시지를 전송하는 직불 결제 처리부
를 포함하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치.
In the payment processing agency device that supports credit and debit payment processing through OTP-based member authentication,
a member information database in which member information for a plurality of members and different OTP (One Time Password) generation functions issued in advance for each of the plurality of members are stored in correspondence thereto;
Information about a predetermined (predetermined) authentication vector for use in member authentication for whether a member is a credit-payable member and a preset Euclidean Distance for use in member authentication as a debit payment-capable member is stored a complex information storage unit;
As a credit payment request for a first product is received from the first client terminal of the first member among the plurality of members to the content providing server, product information for the first product and the first product from the content providing server When a request for approval of credit payment for the first product is received together with information on the amount of Generates a first one-time authentication number according to the current time value based on the generation function, and after checking the number corresponding to the first digit set in the first one-time authentication number, the number corresponding to the preset first digit a first random vector generator for randomly generating a first random vector having a predetermined first length while having a Hamming weight corresponding to the size;
a first request unit for requesting transmission of a feedback vector corresponding to the first random vector to the first client terminal while transmitting the first random vector to the first client terminal;
A first feedback vector from the first client terminal to a feedback vector corresponding to the first random vector - The first feedback vector is the preset authentication vector and the first random vector pre-stored in the first client terminal When − is a vector calculated according to a Hadamard product between a first authentication confirmation unit for authenticating whether the first member is a credit payment capable member by checking whether is the same as the first feedback vector;
When the first member is authenticated as a credit payment capable member, the credit payment processing completion message for the amount of the first product is transmitted to the content providing server after the credit payment processing for the amount of the first product is completed credit payment processing unit;
As a direct payment request for a second product is received from the first client terminal of the first member to the content providing server, the product information for the second product and the amount of the second product are received from the content providing server. When a request for approval of debit payment for the second product is received together with information about After confirming the number corresponding to the second digit, a second random vector having a second preset length while having a Hamming weight corresponding to the size of the number corresponding to the second preset digit is randomly generated. random vector generator;
a second request unit for requesting transmission of a feedback vector corresponding to the second random vector to the first client terminal while transmitting the second random vector to the first client terminal;
A second feedback vector from the first client terminal to a feedback vector corresponding to the second random vector - The second feedback vector is the group in which the Euclidean distance to the second random vector is pre-stored in the first client terminal When - is a vector generated to be calculated with a set Euclidean distance - is received, calculates a first Euclidean distance between the second feedback vector and the second random vector, and checks whether the first Euclidean distance matches the preset Euclidean distance By doing so, a second authentication confirmation unit for authenticating whether the first member is a member capable of direct payment; and
When the first member is authenticated as a member capable of direct payment, after completing the debit payment processing for the amount of the second product, the content providing server transmits a message of completion of processing the debit payment for the amount of the second product debit processing unit
A payment processing agency that supports credit and debit payment processing through OTP-based member authentication, including
제1항에 있어서,
상기 회원 정보 데이터베이스에는
상기 복수의 회원들 각각에 대한 회원 정보에 대해, 상기 복수의 회원들 각각에 대한 회원 정보에 대응하는 미리 정해진 여신 결제 한도 금액에 대한 정보가 추가로 대응되어 저장되어 있고,
상기 여신 결제 처리부는
상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 회원 정보 데이터베이스로부터 상기 제1 회원의 제1 회원 정보에 대응되어 저장되어 있는 제1 여신 결제 한도 금액에 대한 정보를 추출한 후 상기 제1 상품의 금액과 상기 제1 여신 결제 한도 금액을 비교하여 상기 제1 상품의 금액이 상기 제1 여신 결제 한도 금액 이하인 것으로 판단되는 경우에만, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치.
According to claim 1,
In the member information database,
For member information for each of the plurality of members, information on a predetermined credit payment limit amount corresponding to member information for each of the plurality of members is additionally stored in correspondence,
The credit payment processing unit
When the first member is authenticated as a credit payment capable member, information on the first credit payment limit amount stored in correspondence with the first member information of the first member is extracted from the member information database, and then the first product OTP base that completes credit settlement processing for the amount of the first product only when it is determined that the amount of the first product is less than or equal to the first credit settlement limit by comparing the amount of A payment processing agency that supports credit and debit payment processing through member authentication of
제1항에 있어서,
상기 제1 클라이언트 단말은
메모리 상에 상기 기설정된 인증용 벡터 및 상기 제1 OTP 생성 함수와 동일한 제1 검증용 OTP 생성 함수를 저장하고 있고,
상기 결제 처리 대행 장치로부터 상기 제1 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 검증용 일회용 인증 번호를 생성한 후, 상기 제1 검증용 일회용 인증 번호에서 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며,
상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 메모리 상에 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 상기 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 상기 결제 처리 대행 장치로 전송하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치.
According to claim 1,
The first client terminal
storing the preset vector for authentication and a first OTP generating function for verification identical to the first OTP generating function in a memory;
When the first random vector is received from the payment processing device, after generating a first one-time authentication number for verification according to the current time value based on the first OTP generation function for verification stored in the memory, In the first one-time authentication number for verification, the number for verification corresponding to the predetermined first digit is checked, and the Hamming weight of the first random vector corresponds to the size of the verification number corresponding to the predetermined first digit. Check whether it matches the Hamming weight,
When it is confirmed that the Hamming weight of the first random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset first digit, the preset authentication vector stored in the memory; Payment supporting credit and debit payment processing through OTP-based member authentication that generates the first feedback vector by calculating the Hadamard product between the first random vectors and transmits the first feedback vector to the payment processing agency device processing unit.
삭제delete 제3항에 있어서,
상기 제1 클라이언트 단말은
상기 메모리 상에 상기 기설정된 유클리드 거리를 추가로 저장하고 있고,
상기 결제 처리 대행 장치로부터 상기 제2 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 검증용 일회용 인증 번호를 생성한 후, 상기 제2 검증용 일회용 인증 번호에서 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며,
상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리로 연산되는 상기 제2 피드백 벡터를 랜덤하게 생성하여 상기 결제 처리 대행 장치로 전송하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치.
4. The method of claim 3,
The first client terminal
and additionally storing the preset Euclidean distance in the memory,
When the second random vector is received from the payment processing device, after generating a second one-time authentication number for verification according to the current time value based on the first verification OTP generation function stored in the memory, In the second one-time authentication number for verification, the number for verification corresponding to the preset second digit is checked, and the Hamming weight of the second random vector corresponds to the size of the verification number corresponding to the preset second digit. Check whether it matches the Hamming weight,
When it is confirmed that the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset second digit, the Euclidean distance to the second random vector is stored in the memory. A payment processing agency device that supports credit and debit payment processing through OTP-based member authentication that randomly generates the second feedback vector calculated with the stored Euclidean distance and transmits it to the payment processing agency device.
OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법에 있어서,
복수의 회원들에 대한 회원 정보와 상기 복수의 회원들 각각에 대해 미리 발급된 서로 다른 OTP(One Time Password) 생성 함수가 대응되어 저장되어 있는 회원 정보 데이터베이스를 유지하는 단계;
여신 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된(predetermined) 인증용 벡터 및 직불 결제 가능 회원인지 여부에 대한 회원 인증에 사용하기 위한 기설정된 유클리드 거리(Euclidean Distance)에 대한 정보가 저장되어 있는 복합 정보 저장부를 유지하는 단계;
상기 복수의 회원들 중 제1 회원의 제1 클라이언트 단말로부터 콘텐츠 제공 서버로 제1 상품에 대한 여신 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제1 상품에 대한 상품 정보 및 상기 제1 상품의 금액에 대한 정보와 함께 상기 제1 상품에 대한 여신 결제 승인 요청이 수신되면, 상기 회원 정보 데이터베이스를 참조하여 상기 제1 회원에 대해 미리 발급된 제1 OTP 생성 함수를 확인하고, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 일회용 인증 번호를 생성하며, 상기 제1 일회용 인증 번호에서 기설정된 제1 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제1 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게(Hamming Weight)를 가지면서, 기설정된 제1 길이를 갖는 제1 랜덤 벡터를 랜덤하게 생성하는 단계;
상기 제1 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제1 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 단계;
상기 제1 클라이언트 단말로부터 상기 제1 랜덤 벡터에 대응되는 피드백 벡터로 제1 피드백 벡터 - 상기 제1 피드백 벡터는 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱(Hadamard product)에 따라 연산된 벡터임 - 가 수신되면, 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 제1 연산 벡터를 생성하고, 상기 제1 연산 벡터가 상기 제1 피드백 벡터와 동일한지 확인함으로써, 상기 제1 회원이 여신 결제 가능 회원인지 여부를 인증하는 단계;
상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제1 상품의 금액에 대한 여신 결제 처리 완료 메시지를 전송하는 단계;
상기 제1 회원의 상기 제1 클라이언트 단말로부터 상기 콘텐츠 제공 서버로 제2 상품에 대한 직불 결제 요청이 수신됨에 따라, 상기 콘텐츠 제공 서버로부터 상기 제2 상품에 대한 상품 정보 및 상기 제2 상품의 금액에 대한 정보와 함께 상기 제2 상품에 대한 직불 결제 승인 요청이 수신되면, 상기 제1 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 일회용 인증 번호를 생성하고, 상기 제2 일회용 인증 번호에서 기설정된 제2 자릿수에 해당되는 숫자를 확인한 후, 상기 기설정된 제2 자릿수에 해당되는 숫자의 크기에 대응하는 해밍 무게를 가지면서, 기설정된 제2 길이를 갖는 제2 랜덤 벡터를 랜덤하게 생성하는 단계;
상기 제2 랜덤 벡터를 상기 제1 클라이언트 단말로 전송하면서, 상기 제1 클라이언트 단말로 상기 제2 랜덤 벡터에 대응되는 피드백 벡터의 전송을 요청하는 단계;
상기 제1 클라이언트 단말로부터 상기 제2 랜덤 벡터에 대응되는 피드백 벡터로 제2 피드백 벡터 - 상기 제2 피드백 벡터는 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 제1 클라이언트 단말에 기 저장되어 있는 상기 기설정된 유클리드 거리로 연산되도록 생성된 벡터임 - 가 수신되면, 상기 제2 피드백 벡터와 상기 제2 랜덤 벡터 간의 제1 유클리드 거리를 연산하고, 상기 제1 유클리드 거리가 상기 기설정된 유클리드 거리와 일치하는지 확인함으로써, 상기 제1 회원이 직불 결제 가능 회원인지 여부를 인증하는 단계; 및
상기 제1 회원이 직불 결제 가능 회원으로 인증 완료되면, 상기 제2 상품의 금액에 대한 직불 결제 처리를 완료한 후 상기 콘텐츠 제공 서버로 상기 제2 상품의 금액에 대한 직불 결제 처리 완료 메시지를 전송하는 단계
를 포함하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법.
In the operating method of a payment processing agent that supports credit and debit payment processing through OTP-based member authentication,
maintaining a member information database in which member information for a plurality of members and different OTP (One Time Password) generation functions issued in advance for each of the plurality of members are stored in correspondence thereto;
Information about a predetermined (predetermined) authentication vector for use in member authentication for whether a member is a credit-payable member and a preset Euclidean Distance for use in member authentication as a debit payment-capable member is stored maintaining a complex information storage unit;
As a credit payment request for a first product is received from the first client terminal of the first member among the plurality of members to the content providing server, product information for the first product and the first product from the content providing server When a request for approval of credit payment for the first product is received together with information on the amount of Generates a first one-time authentication number according to the current time value based on the generation function, and after checking the number corresponding to the first digit set in the first one-time authentication number, the number corresponding to the preset first digit randomly generating a first random vector having a predetermined first length while having a Hamming weight corresponding to the size;
requesting transmission of a feedback vector corresponding to the first random vector to the first client terminal while transmitting the first random vector to the first client terminal;
A first feedback vector from the first client terminal to a feedback vector corresponding to the first random vector - The first feedback vector is the preset authentication vector and the first random vector pre-stored in the first client terminal When − is a vector calculated according to a Hadamard product between verifying whether the first member is the same as the first feedback vector, thereby authenticating whether the first member is a credit settlement member;
When the first member is authenticated as a credit payment capable member, the credit payment processing completion message for the amount of the first product is transmitted to the content providing server after the credit payment processing for the amount of the first product is completed step;
As a direct payment request for a second product is received from the first client terminal of the first member to the content providing server, the product information for the second product and the amount of the second product are received from the content providing server. When a request for approval of debit payment for the second product is received together with information about After checking the number corresponding to the second digit, randomly generating a second random vector having a second predetermined length while having a Hamming weight corresponding to the size of the number corresponding to the predetermined second digit;
requesting transmission of a feedback vector corresponding to the second random vector to the first client terminal while transmitting the second random vector to the first client terminal;
A second feedback vector from the first client terminal to a feedback vector corresponding to the second random vector - The second feedback vector is the group in which the Euclidean distance to the second random vector is pre-stored in the first client terminal When - is a vector generated to be calculated with a set Euclidean distance - is received, calculates a first Euclidean distance between the second feedback vector and the second random vector, and checks whether the first Euclidean distance matches the preset Euclidean distance by doing so, authenticating whether the first member is a member capable of direct payment; and
When the first member is authenticated as a member capable of direct payment, after completing the debit payment processing for the amount of the second product, the content providing server transmits a message of completion of processing the debit payment for the amount of the second product step
A method of operating a payment processing agent that supports credit and debit payment processing through OTP-based member authentication, including:
제6항에 있어서,
상기 회원 정보 데이터베이스에는
상기 복수의 회원들 각각에 대한 회원 정보에 대해, 상기 복수의 회원들 각각에 대한 회원 정보에 대응하는 미리 정해진 여신 결제 한도 금액에 대한 정보가 추가로 대응되어 저장되어 있고,
상기 여신 결제 처리 완료 메시지를 전송하는 단계는
상기 제1 회원이 여신 결제 가능 회원으로 인증 완료되면, 상기 회원 정보 데이터베이스로부터 상기 제1 회원의 제1 회원 정보에 대응되어 저장되어 있는 제1 여신 결제 한도 금액에 대한 정보를 추출한 후 상기 제1 상품의 금액과 상기 제1 여신 결제 한도 금액을 비교하여 상기 제1 상품의 금액이 상기 제1 여신 결제 한도 금액 이하인 것으로 판단되는 경우에만, 상기 제1 상품의 금액에 대한 여신 결제 처리를 완료하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법.
7. The method of claim 6,
In the member information database,
For member information for each of the plurality of members, information on a predetermined credit payment limit amount corresponding to member information for each of the plurality of members is additionally stored in correspondence,
The step of sending the credit payment processing completion message is
When the first member is authenticated as a credit payment capable member, information on the first credit payment limit amount stored in correspondence with the first member information of the first member is extracted from the member information database, and then the first product OTP base that completes credit settlement processing for the amount of the first product only when it is determined that the amount of the first product is less than or equal to the first credit settlement limit by comparing the amount of A method of operation of a payment processing agency that supports credit and debit payment processing through member authentication of
제6항에 있어서,
상기 제1 클라이언트 단말은
메모리 상에 상기 기설정된 인증용 벡터 및 상기 제1 OTP 생성 함수와 동일한 제1 검증용 OTP 생성 함수를 저장하고 있고,
상기 결제 처리 대행 장치로부터 상기 제1 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제1 검증용 일회용 인증 번호를 생성한 후, 상기 제1 검증용 일회용 인증 번호에서 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며,
상기 제1 랜덤 벡터의 해밍 무게가 상기 기설정된 제1 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 메모리 상에 저장되어 있는 상기 기설정된 인증용 벡터와 상기 제1 랜덤 벡터 간의 아다마르 곱을 연산하여 상기 제1 피드백 벡터를 생성한 후 상기 제1 피드백 벡터를 상기 결제 처리 대행 장치로 전송하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법.
7. The method of claim 6,
The first client terminal
storing the preset vector for authentication and a first OTP generating function for verification identical to the first OTP generating function in a memory;
When the first random vector is received from the payment processing device, after generating a first one-time authentication number for verification according to the current time value based on the first OTP generation function for verification stored in the memory, In the first one-time authentication number for verification, the number for verification corresponding to the predetermined first digit is checked, and the Hamming weight of the first random vector corresponds to the size of the verification number corresponding to the predetermined first digit. Check whether it matches the Hamming weight,
When it is confirmed that the Hamming weight of the first random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset first digit, the preset authentication vector stored in the memory; Payment supporting credit and debit payment processing through OTP-based member authentication that generates the first feedback vector by calculating the Hadamard product between the first random vectors and transmits the first feedback vector to the payment processing agency device How the processing unit works.
삭제delete 제8항에 있어서,
상기 제1 클라이언트 단말은
상기 메모리 상에 상기 기설정된 유클리드 거리를 추가로 저장하고 있고,
상기 결제 처리 대행 장치로부터 상기 제2 랜덤 벡터가 수신되면, 상기 메모리 상에 저장되어 있는 상기 제1 검증용 OTP 생성 함수를 기초로 현재 시간 값에 따른 제2 검증용 일회용 인증 번호를 생성한 후, 상기 제2 검증용 일회용 인증 번호에서 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자를 확인하여 상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는지 여부를 확인하며,
상기 제2 랜덤 벡터의 해밍 무게가 상기 기설정된 제2 자릿수에 해당되는 검증용 숫자의 크기에 대응하는 해밍 무게와 일치하는 것으로 확인되는 경우, 상기 제2 랜덤 벡터와의 유클리드 거리가 상기 메모리 상에 저장되어 있는 상기 기설정된 유클리드 거리로 연산되는 상기 제2 피드백 벡터를 랜덤하게 생성하여 상기 결제 처리 대행 장치로 전송하는 OTP 기반의 회원 인증을 통해 여신 및 직불 결제 처리를 지원하는 결제 처리 대행 장치의 동작 방법.
9. The method of claim 8,
The first client terminal
and additionally storing the preset Euclidean distance in the memory,
When the second random vector is received from the payment processing device, after generating a second one-time authentication number for verification according to the current time value based on the first verification OTP generation function stored in the memory, In the second one-time authentication number for verification, the number for verification corresponding to the preset second digit is checked, and the Hamming weight of the second random vector corresponds to the size of the verification number corresponding to the preset second digit. Check whether it matches the Hamming weight,
When it is confirmed that the Hamming weight of the second random vector matches the Hamming weight corresponding to the size of the verification digit corresponding to the preset second digit, the Euclidean distance to the second random vector is stored in the memory. Operation of a payment processing agency that supports credit and debit payment processing through OTP-based member authentication that randomly generates the second feedback vector calculated with the stored Euclidean distance and transmits it to the payment processing agency Way.
제6항, 제7항, 제8항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium recording a computer program for executing the method of any one of claims 6, 7, 8, or 10 through combination with a computer. 제6항, 제7항, 제8항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 6, 7, 8 or 10 in combination with a computer.
KR1020190121753A 2019-10-01 2019-10-01 Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof KR102301036B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190121753A KR102301036B1 (en) 2019-10-01 2019-10-01 Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190121753A KR102301036B1 (en) 2019-10-01 2019-10-01 Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof

Publications (2)

Publication Number Publication Date
KR20210039203A KR20210039203A (en) 2021-04-09
KR102301036B1 true KR102301036B1 (en) 2021-09-09

Family

ID=75444055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190121753A KR102301036B1 (en) 2019-10-01 2019-10-01 Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof

Country Status (1)

Country Link
KR (1) KR102301036B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102517321B1 (en) * 2022-01-03 2023-04-03 (주)엠디에스인텔리전스 Multimedia contents providing service server for operating multimedia contents providing service, which provides multimedia contents based on location information, and the operating method thereof
KR102633814B1 (en) * 2022-09-28 2024-02-05 주식회사 올라핀테크 Information collection service server that collects and provides information on individual site use history on the website through e-mail-based third-party authentication and the operating method thereof

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102024111B1 (en) * 2018-11-16 2019-09-24 동국대학교 산학협력단 Smart stick for weak person using a microcomputer and an obstacle warning method of the smart stick

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070097874A (en) * 2006-03-30 2007-10-05 주식회사 싸이클롭스 Service system for instant payment utilizing a wireless telecommunication device
KR101873295B1 (en) * 2011-08-01 2018-07-03 삼성전자주식회사 Credit Transactions System, Apparatus, Terminal Capable of Granting Credit and Method therefor
KR101874119B1 (en) * 2012-02-07 2018-07-03 삼성전자주식회사 Authentication method between client and server, machine-readable storage medium, client and server

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102024111B1 (en) * 2018-11-16 2019-09-24 동국대학교 산학협력단 Smart stick for weak person using a microcomputer and an obstacle warning method of the smart stick

Also Published As

Publication number Publication date
KR20210039203A (en) 2021-04-09

Similar Documents

Publication Publication Date Title
US20220300963A1 (en) Bifurcated digital wallet systems and methods for processing transactions using information extracted from multiple sources
US20160117681A1 (en) Electronic trading method and system, and payment platform system
US10181122B2 (en) Mobile authentication for web payments using single sign on credentials
US20150235196A1 (en) Payment method and device
KR102129325B1 (en) Pre-settlement processing server for pre-settlement of receivables of goods sellers registered in the shopping mall based on a virtual account and operating method thereof
KR20160136415A (en) Performing transactions using virtual card values
KR20190014124A (en) Two factor authentication
CN110880106A (en) Method and device for realizing double offline payment
US11367137B2 (en) Payment processing apparatus using virtual currency with automatic trading function of virtual currency and operating method thereof
JP2008234081A (en) Management server in billing system, purchase transaction method, and purchase transaction program
KR102301036B1 (en) Payment processing agent apparatus supporting credit and debit payment processing through member authentication based on otp and operating method thereof
CN111260342B (en) Authentication payment method and device
KR20200143188A (en) Integrated financial transaction platform apparatus performing a differential login authentication process based on user login security level and operating method thereof
US20190311347A1 (en) Credit card payment processing method and apparatus
KR102198281B1 (en) Payment processing service server to provide integrated payment processing service for products ordered from two or more merchants and operating method thereof
KR102153405B1 (en) Pre-settlement processing server for pre-settlement of receivables of goods sellers registered in the shopping mall and operating method thereof
KR102121938B1 (en) Apparatus and method for providing a simple settlement service of a corporation account
JP7209984B1 (en) Program, Information Processing Apparatus, and Method
KR102162344B1 (en) Payment service apparatus for supporting payment processing based on virtual currency to an online merchant and operating method thereof
KR20210029355A (en) Real estate investment and transaction management server that enables real estate transactions based on blockchain and operating method thereof
KR102571365B1 (en) Postpaid membership service operation server and operating method thereof
KR20200061263A (en) Method and server for paying cards based on blockchain network
KR102171819B1 (en) Payment gateway apparatus capable of automatic payment about items waiting for payment and operating method thereof
KR20150041286A (en) Micropayment linkage based prepaid card payment assistive device and method
KR20070057417A (en) Telephone settlement authentication system and method using ip position information

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