KR102518790B1 - Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof - Google Patents

Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof Download PDF

Info

Publication number
KR102518790B1
KR102518790B1 KR1020220019005A KR20220019005A KR102518790B1 KR 102518790 B1 KR102518790 B1 KR 102518790B1 KR 1020220019005 A KR1020220019005 A KR 1020220019005A KR 20220019005 A KR20220019005 A KR 20220019005A KR 102518790 B1 KR102518790 B1 KR 102518790B1
Authority
KR
South Korea
Prior art keywords
information
virtual currency
amount
electronic terminal
payment service
Prior art date
Application number
KR1020220019005A
Other languages
Korean (ko)
Inventor
이동우
Original Assignee
이동우
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 이동우 filed Critical 이동우
Priority to KR1020220019005A priority Critical patent/KR102518790B1/en
Application granted granted Critical
Publication of KR102518790B1 publication Critical patent/KR102518790B1/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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • 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/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • G06Q20/145Payments according to the detected use or quantity
    • 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/386Payment protocols; Details thereof using messaging services or messaging apps
    • 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/387Payment using discounts or coupons
    • 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
    • G06Q20/4014Identity check for transactions
    • 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
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/06Energy or water supply
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Water Supply & Treatment (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

A payment service providing server for providing a public bill payment service using virtual currency and an operating method thereof are disclosed. The present invention proposes a payment service providing server that allows users to pay public utility bills such as electricity bills, water bills, gas bills, and the like through virtual currency they own and an operation method thereof, thereby providing users with an opportunity to pay utility bills using more diverse payment methods. The payment service providing server includes: an identification information storage part; a membership database; a confirmation part; an update processing part; and a payment processing part.

Description

가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버 및 그 동작 방법{PAYMENT SERVICE PROVIDING SERVER FOR PROVIDING UTILITY BILL PAYMENT SERVICE USING VIRTUAL CURRENCY, AND OPERATING METHOD THEREOF}Payment service providing server and operation method for providing utility bill payment service using virtual currency

본 발명은 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버 및 그 동작 방법에 대한 것이다.The present invention relates to a payment service providing server and an operation method thereof for providing a public utility bill payment service using virtual currency.

최근, 가상 통화에 대한 관심이 증폭됨에 따라, 이러한 가상 통화에 투자를 하는 투자자들도 증가하고 있다. 이러한 가상 통화는 투자의 대상으로 활용되는 경우가 많았는데, 최근 다수의 기업이나 기관에서 이 가상 통화를 이용하여 직접 상품이나 서비스에 대한 대금을 결제할 수 있도록 하는 서비스를 출시함에 따라, 가상 통화의 화폐로서의 활용성이 점점 증가하고 있다.Recently, as interest in virtual currencies has increased, the number of investors investing in these virtual currencies is also increasing. These virtual currencies are often used as an investment target. Recently, as a number of companies or institutions have launched services that allow users to directly pay for goods or services using virtual currencies, virtual currency Its use as currency is increasing.

보통, 전기 요금, 수도 요금, 가스 요금 등과 같은 공공 요금은 사용자들이 매월 정기적으로 납부하는 요금으로서, 일반적으로는 현금, 신용카드 등을 통해서 대금 결제가 가능하도록 구성되어 있다.In general, utility bills such as electricity bills, water bills, gas bills, etc. are bills that users regularly pay every month, and are generally configured to allow payment through cash, credit cards, or the like.

관련해서, 전술한 바와 같이 최근 가상 통화를 이용한 다양한 결제 서비스가 등장함에 따라 이러한 공공 요금에 있어서도 사용자들이 다양한 결제 수단을 통해 보다 편리하게 공공 요금을 납부할 수 있도록 하기 위해, 사용자들이 자신이 보유하고 있는 가상 통화를 이용하여 공공 요금을 납부할 수 있도록 하는 서비스의 도입을 고려할 필요성이 증가하고 있다. 아울러, 가상 통화를 이용하여 공공 요금을 납부할 수 있도록 하는 결제 서비스는 새로운 형태의 결제 서비스라는 점에서, 결제 과정에서 기존의 사용자 인증 방식과 다른 새로운 형태의 보안 기술이 적용될 필요도 있다.In this regard, as described above, as various payment services using virtual currencies have recently appeared, users have their own There is an increasing need to consider the introduction of services that enable payment of public utility bills using virtual currencies that exist. In addition, since the payment service that enables public utility bill payment using virtual currency is a new type of payment service, a new type of security technology different from the existing user authentication method needs to be applied in the payment process.

또한, 최근에는 에너지 절약이 중요한 이슈로 부각되고 있다는 점에서, 이러한 가상 통화를 이용한 공공 요금의 결제 서비스에 있어서, 공공 요금의 액수가 기존의 사용 액수보다 줄어드는 경우, 사용자들에게 소정의 보상을 지급함으로써, 사용자들로 하여금 전기, 가스, 수도 등을 절약해서 사용하도록 유도하는 부가 서비스의 도입도 고려할 수 있다.In addition, given that energy saving has emerged as an important issue in recent years, in the public utility bill payment service using such virtual currency, when the amount of public utility bills is lower than the existing amount of use, a predetermined reward is provided to users. By doing so, it is possible to consider the introduction of additional services that induce users to conserve electricity, gas, water, and the like.

본 발명은 전기 요금, 수도 요금, 가스 요금 등과 같은 공공 요금을 사용자들이 자신이 보유하고 있는 가상 통화를 통해 결제할 수 있도록 지원하는 결제 서비스 제공 서버 및 그 동작 방법을 제시함으로써, 사용자들에게 보다 다양한 결제 수단을 이용하여 공공 요금을 납부할 수 있도록 하는 기회를 제공하고자 한다.The present invention provides a payment service providing server and method of operation that support users to pay public bills such as electricity bills, water bills, gas bills, etc. through their own virtual currency, thereby providing users with a variety of We want to provide an opportunity to pay public utility bills using a payment method.

본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버는 상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있는 식별 정보 저장부, 상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있는 회원 데이터베이스, 상기 복수의 회원들 중 제1 회원의 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인하는 확인부, 사전 설정된 가상 통화 시세 정보 서버에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 갱신 처리부, 상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기관의 운영 서버로, 상기 제1 회원의 상기 제1 공공 요금에 대한 납부 처리가 완료되었음을 지시하는 납부 처리 완료 메시지를 전송하는 납부 처리 완료 메시지 전송부 및 상기 제1 공공 요금 수납 기관의 운영 서버로 상기 납부 처리 완료 메시지가 전송 완료되면, 상기 제1 전자 단말로, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리가 완료되었음을 지시하는 결제 완료 메시지를 전송하는 결제 완료 메시지 전송부를 포함한다.A payment service providing server for providing a utility bill payment service using virtual currency according to an embodiment of the present invention is configured to operate servers of each of a plurality of public charge collection institutions for which a pre-affiliation has been completed for providing the utility bill payment service. An identification information storage unit in which server identification information for the server is stored, member identification information of each of the plurality of members subscribed to the utility bill payment service, and information on the amount of virtual currency held by each of the plurality of members are stored in correspondence with each other member database, while the member identification information of the first member is received from the first electronic terminal of the first member among the plurality of members, the first public charge collection agency among the plurality of public charge collection agencies is charged. When a request for payment processing using the virtual currency for the first public utility bill is received, member authentication is performed to determine whether the first member is a member subscribed to the public utility bill payment service, and then the first member is verified on the member database. A verification unit for checking information on the amount of virtual currency held by the first member stored in correspondence with member identification information of 1 member, accessing a preset virtual currency quote information server to obtain current quote information on the virtual currency Then, based on the current tense information on the virtual currency, the amount of virtual currency corresponding to the market price of the first utility bill is subtracted from the amount of virtual currency held by the first member stored in the member database, an update processing unit for updating information on the amount of virtual currency held by the first member stored in the first member, and when the information on the amount of virtual currency held by the first member is updated, the first public charge stored in the identification information storage unit Based on the first server identification information for the operating server of the receiving organization, access is made to the operating server of the first public charge collection agency, and the operating server of the first public charge collection agency is transferred to the first public charge collection agency of the first member. When the payment processing completion message is transmitted to the payment processing completion message transmission unit for transmitting a payment processing completion message indicating that payment processing is completed and the operation server of the first utility bill collection institution is completed, the first electronic terminal and a payment completion message transmitter for transmitting a payment completion message indicating that payment processing for the first utility bill using the virtual currency has been completed.

또한, 본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 동작 방법은 상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있는 식별 정보 저장부를 유지하는 단계, 상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있는 회원 데이터베이스를 유지하는 단계, 상기 복수의 회원들 중 제1 회원의 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인하는 단계, 사전 설정된 가상 통화 시세 정보 서버에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 단계, 상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기관의 운영 서버로, 상기 제1 회원의 상기 제1 공공 요금에 대한 납부 처리가 완료되었음을 지시하는 납부 처리 완료 메시지를 전송하는 단계 및 상기 제1 공공 요금 수납 기관의 운영 서버로 상기 납부 처리 완료 메시지가 전송 완료되면, 상기 제1 전자 단말로, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리가 완료되었음을 지시하는 결제 완료 메시지를 전송하는 단계를 포함한다.In addition, in an operating method of a payment service providing server for providing a utility bill payment service using virtual currency according to an embodiment of the present invention, a plurality of public charge collection institutions for which a prior partnership for providing the public charge payment service has been completed. Maintaining an identification information storage unit in which server identification information for each operation server is stored, the member identification information of each of a plurality of members subscribed to the utility bill payment service and the amount of virtual currency held by each of the plurality of members Maintaining a member database in which information about the plurality of public charges is stored in correspondence with each other, while member identification information of the first member is received from a first electronic terminal of a first member among the plurality of members, and the plurality of public utility charges are collected. When a payment processing request using the virtual currency for the first public utility bill charged by the first public utility bill collection institution among institutions is received, a member that determines whether or not the first member is a member subscribed to the public utility bill payment service. After authentication, checking information on the amount of virtual currency held by the first member stored in correspondence to the member identification information of the first member on the member database, accessing a preset virtual currency market price information server After acquiring the current price information on the virtual currency, based on the current price information on the virtual currency, the first member's virtual currency holding amount stored in the member database determines the market price of the first utility bill. Updating information on the amount of virtual currency held by the first member stored in the member database by deducting the corresponding amount of virtual currency; storing the identification information when the information on the amount of virtual currency held by the first member is updated Based on the first server identification information for the operating server of the first public charge collection agency stored in the unit, the operating server of the first public charge collection agency is accessed, and the operating server of the first public charge collection agency is accessed. , Transmitting a payment processing completion message indicating that the payment processing for the first utility bill by the first member has been completed, and when the payment processing completion message is transmitted to an operation server of the first public utility bill collection institution, and transmitting, to the first electronic terminal, a payment completion message indicating that payment processing for the first utility bill using the virtual currency has been completed.

본 발명은 전기 요금, 수도 요금, 가스 요금 등과 같은 공공 요금을 사용자들이 자신이 보유하고 있는 가상 통화를 통해 결제할 수 있도록 지원하는 결제 서비스 제공 서버 및 그 동작 방법을 제시함으로써, 사용자들에게 보다 다양한 결제 수단을 이용하여 공공 요금을 납부할 수 있도록 하는 기회를 제공할 수 있다.The present invention provides a payment service providing server and method of operation that support users to pay public bills such as electricity bills, water bills, gas bills, etc. through their own virtual currency, thereby providing users with a variety of An opportunity to pay utility bills using a payment method can be provided.

도 1은 본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 동작 방법을 도시한 순서도이다.
1 is a diagram showing the structure of a payment service providing server for providing a utility bill payment service using virtual currency according to an embodiment of the present invention.
2 is a flowchart illustrating an operating method of a payment service providing server for providing a utility bill payment service using virtual currency 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. This description is not intended to limit the present invention to specific embodiments, but should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, similar reference numerals have been used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, are common knowledge in the art to which the present invention belongs. has the same meaning as commonly understood by the person who has it.

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

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

도 1은 본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 구조를 도시한 도면이다.1 is a diagram showing the structure of a payment service providing server for providing a utility bill payment service using virtual currency according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 결제 서비스 제공 서버(110)는 식별 정보 저장부(111), 회원 데이터베이스(112), 확인부(113), 갱신 처리부(114), 납부 처리 완료 메시지 전송부(115) 및 결제 완료 메시지 전송부(116)를 포함한다.Referring to FIG. 1, the payment service providing server 110 according to the present invention includes an identification information storage unit 111, a member database 112, a confirmation unit 113, an update processing unit 114, and a payment processing completion message transmission unit. (115) and a payment completion message transmission unit (116).

식별 정보 저장부(111)에는 상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있다.The identification information storage unit 111 stores server identification information for each operating server of a plurality of public charge collection agencies for which a prior partnership for providing the public charge payment service has been completed.

여기서, 서버 식별 정보란 서버에 할당되어 있는 MAC(Media Access Control) 주소, IP 주소, 각 공공 요금 수납 기관에 대한 소정의 고유 식별 정보 등과 같은 각 공공 요금 수납 기관의 운영 서버를 식별하기 위한 고유 정보를 의미한다.Here, the server identification information is unique information for identifying the operating server of each public charge collection agency, such as MAC (Media Access Control) address assigned to the server, IP address, predetermined unique identification information for each public charge collection agency, etc. means

회원 데이터베이스(112)에는 상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있다.In the member database 112, member identification information of each of the plurality of members subscribed to the utility bill payment service and information on the holding amount of virtual currency of each of the plurality of members are stored in correspondence with each other.

여기서, 회원 식별 정보란 각 회원의 ID, 휴대폰 번호, 주민등록번호 등과 같은 각 회원을 식별하기 위한 고유 정보를 의미한다.Here, the member identification information refers to unique information for identifying each member, such as each member's ID, mobile phone number, and resident registration number.

예컨대, 회원 데이터베이스(112)에는 하기의 표 1과 같이 정보가 저장되어 있을 수 있다.For example, information as shown in Table 1 below may be stored in the member database 112 .

회원 식별 정보Member identification information 가상 통화 보유량Virtual currency holdings 회원 식별 정보 1Member identification information 1 100coin100 coins 회원 식별 정보 2Member identification information 2 200coin200 coins 회원 식별 정보 3Member identification information 3 50coin50coin ...... ......

확인부(113)는 상기 복수의 회원들 중 제1 회원(11)의 제1 전자 단말(10)로부터, 제1 회원(11)의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 제1 회원(11)이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 회원 데이터베이스(112) 상에서 제1 회원(11)의 회원 식별 정보에 대응되어 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 확인한다.The identification unit 113 receives the member identification information of the first member 11 from the first electronic terminal 10 of the first member 11 among the plurality of members, and the plurality of public charge collection institutions When a request for payment processing using the virtual currency for the first public utility bill charged by the first public utility bill collection institution is received, the first member 11 determines whether or not the member subscribed to the public utility bill payment service is a member. After authentication is performed, information on the amount of virtual currency held by the first member 11 stored in the member database 112 corresponding to the member identification information of the first member 11 is checked.

예컨대, 제1 회원(11)의 제1 전자 단말(10)로부터 수신된 제1 회원(11)의 회원 식별 정보가 '회원 식별 정보 1'이라고 하는 경우, 확인부(113)는 제1 회원(11)이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 회원 데이터베이스(112) 상에서 '회원 식별 정보 1'에 대응되어 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 '100coin'으로 확인할 수 있다.For example, when the member identification information of the first member 11 received from the first electronic terminal 10 of the first member 11 is 'member identification information 1', the confirmation unit 113 determines the first member ( 11) After performing membership authentication on whether or not the member subscribed to the public utility bill payment service is correct, the first member 11 stored in correspondence with 'member identification information 1' on the member database 112 Information on currency holdings can be checked with '100coin'.

이때, 본 발명의 일실시예에 따르면, 확인부(113)는 제1 회원(11)에 대한 회원 인증을 진행하기 위한 구체적인 구성으로, 열벡터 저장부(121), 인증 이벤트 발생부(122), 산출부(123), 결합 행렬 생성부(124), 랜덤 코드 생성부(125), 피드백 요청부(126), 연산 행렬 생성부(127), 코드 확인부(128) 및 인증 완료부(129)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the confirmation unit 113 has a specific configuration for proceeding with member authentication for the first member 11, and includes a column vector storage unit 121 and an authentication event generator 122. , calculation unit 123, combination matrix generation unit 124, random code generation unit 125, feedback request unit 126, calculation matrix generation unit 127, code verification unit 128, and authentication completion unit 129 ) may be included.

열벡터 저장부(121)에는 제1 전자 단말(10)과 사전 공유하고 있는 n(n은 2이상의 자연수임)개의 열벡터들이 저장되어 있다.The column vector storage unit 121 stores n (n is a natural number equal to or greater than 2) column vectors previously shared with the first electronic terminal 10 .

여기서, 상기 n개의 열벡터들 각각은 1 x n 크기를 갖는 열벡터로서, 상기 n개의 열벡터들 각각을 구성하는 n개의 성분들 중 사전 지정된 어느 하나의 열에 위치하는 성분은 1로 지정되어 있고, 나머지 열에 위치하는 성분들은 0으로 지정되어 있으며, 상기 n개의 열벡터 각각에는 0 이상 n-1 이하의 서로 다른 정수가 고유 번호로 하나씩 할당되어 있다.Here, each of the n column vectors is a column vector having a size of 1 x n, and among n components constituting each of the n column vectors, a component located in a predetermined column is designated as 1; Components located in the remaining columns are designated as 0, and each of the n column vectors is assigned a different integer number between 0 and n-1 as a unique number.

예컨대, n이 '3'인 경우, 열벡터 저장부(121)에는 하기의 표 2와 같이, '3'개의 열벡터들이 저장되어 있을 수 있다.For example, when n is '3', '3' column vectors may be stored in the column vector storage unit 121 as shown in Table 2 below.

3개의 열벡터들3 column vectors 고유 번호unique number 열벡터 1column vector 1

Figure 112022016366516-pat00001
Figure 112022016366516-pat00001
00 열벡터 2column vector 2
Figure 112022016366516-pat00002
Figure 112022016366516-pat00002
1One
열벡터 3column vector 3
Figure 112022016366516-pat00003
Figure 112022016366516-pat00003
22

인증 이벤트 발생부(122)는 제1 전자 단말(10)로부터, 제1 회원(11)의 회원 식별 정보가 수신되면서, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 제1 회원(11)이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 수행하기 위한 인증 이벤트를 발생시킨다.When the authentication event generating unit 122 receives a payment processing request using the virtual currency for the first public utility bill while receiving member identification information of the first member 11 from the first electronic terminal 10, The first member 11 generates an authentication event to perform member authentication as to whether or not the member subscribed to the utility bill payment service is correct.

산출부(123)는 상기 인증 이벤트가 발생되면, 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출한다.When the authentication event occurs, the calculation unit 123 obtains a date value at the current point in time at which the authentication event occurred, and performs a modulo operation with n as a divisor on the date value. Calculate 1 operation value.

여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여, 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo operation refers to an operation of calculating a remainder by performing division by dividing a dividend by a divisor.

결합 행렬 생성부(124)는 상기 제1 연산 값이 산출되면, 열벡터 저장부(121)에 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출한 후, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 결합 행렬을 생성한다.When the first operation value is calculated, the coupling matrix generator 124 selects a column vector to which the first operation value is assigned as a unique number among the n column vectors stored in the column vector storage unit 121. After extracting the remaining n-1 column vectors, the size of (n-1) x n is obtained by sequentially combining the n-1 column vectors in descending order of the unique numbers assigned to the n-1 column vectors. Create an association matrix with

랜덤 코드 생성부(125)는 상기 결합 행렬이 생성되면, n-1개의 인증 코드들과 (n-1)2개의 더미(dummy) 코드들을 랜덤하게 생성한다.When the combination matrix is generated, the random code generator 125 randomly generates n-1 authentication codes and (n-1) two dummy codes.

피드백 요청부(126)는 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 생성되면, 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들을 제1 전자 단말(10)로 전송하면서, 제1 전자 단말(10)로 피드백 행렬의 전송을 요청한다.When the n-1 authentication codes and the (n-1) 2 dummy codes are generated, the feedback requesting unit 126 sends the n-1 authentication codes and the (n-1) 2 dummy codes. While transmitting to the first electronic terminal 10, transmission of the feedback matrix to the first electronic terminal 10 is requested.

연산 행렬 생성부(127)는 제1 전자 단말(10)로부터 상기 피드백 행렬의 전송 요청에 대응하여, 제1 피드백 행렬(상기 제1 피드백 행렬은, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각이 상기 n-1개의 인증 코드들로 하나씩 치환되고, 0이 지정되어 있는 (n-1)2개의 성분들 각각이 상기 (n-1)2개의 더미 코드들로 하나씩 치환되어 생성된, (n-1) x n 크기를 갖는 행렬임)이 수신되면, 상기 제1 피드백 행렬과 상기 결합 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 제1 연산 행렬을 생성한다.In response to the transmission request of the feedback matrix from the first electronic terminal 10, the operation matrix generator 127 generates a first feedback matrix (the first feedback matrix is a [(n-1) Each of the n-1 components to which 1 is designated among the xn] components is substituted with the n-1 authentication codes, and each of the (n-1) two components to which 0 is designated is the ( n-1) When a matrix having a size of (n-1) xn, generated by replacing one by one with two dummy codes) is received, a Hadamard product between the first feedback matrix and the combination matrix is obtained. It is calculated to generate a first calculation matrix.

여기서, 아다마르 곱이란, 같은 크기의 행렬에서 각 성분을 곱하는 연산을 의미한다. 예컨대, '[a b c]'와 '[x y z]'라는 행렬이 있을 때, 두 행렬 간의 아다마르 곱을 연산하면, '[ax by cz]'라는 행렬이 산출될 수 있다.Here, the Hadamard product means an operation of multiplying each component in a matrix of the same size. For example, when there are matrices '[a b c]' and '[x y z]', if a Hadamard product between the two matrices is calculated, a matrix '[ax by cz]' can be calculated.

코드 확인부(128)는 상기 제1 연산 행렬이 생성되면, 상기 제1 연산 행렬을 구성하는 성분들 중 0이 아닌 성분들인 제1 성분들을 추출한 후, 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는지 여부를 확인한다.When the first operation matrix is generated, the code checking unit 128 extracts first components that are non-zero components among the components constituting the first operation matrix, and then the first components are the n-1 authentication components. Check whether all codes match.

인증 완료부(129)는 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는 것으로 확인되면, 제1 회원(11)이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는 것으로 인증 처리를 완료한다.When it is confirmed that the first components match all of the n-1 number of authentication codes, the authentication completion unit 129 performs an authentication process that the first member 11 is a member subscribed to the utility bill payment service. complete

이하에서는, 인증 이벤트 발생부(122), 산출부(123), 결합 행렬 생성부(124), 랜덤 코드 생성부(125), 피드백 요청부(126), 연산 행렬 생성부(127), 코드 확인부(128) 및 인증 완료부(129)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, an authentication event generating unit 122, a calculating unit 123, a combination matrix generating unit 124, a random code generating unit 125, a feedback requesting unit 126, an operation matrix generating unit 127, and a code check Operations of the unit 128 and the authentication completion unit 129 will be described in detail by way of example.

먼저, 전술한 예와 같이, n이 '3'이고, 제1 전자 단말(10)로부터, 제1 회원(11)의 회원 식별 정보가 수신되면서, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되었다고 하는 경우, 인증 이벤트 발생부(122)는 제1 회원(11)이, 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 수행하기 위한 인증 이벤트를 발생시킬 수 있다.First, as in the above example, when n is '3' and member identification information of the first member 11 is received from the first electronic terminal 10, the virtual currency for the first utility bill is used. When it is determined that the payment processing request has been received, the authentication event generation unit 122 generates an authentication event to perform member authentication as to whether the first member 11 is a member subscribed to the utility bill payment service. can

만약, 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜가 '2021년 8월 31일'이라고 하는 경우, 산출부(123)는 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜 값인 '20210831'을 획득하고, 상기 날짜 값인 '20210831'에 대해 '3'을 제수로 하는 모듈로 연산을 수행함으로써, '2'라는 제1 연산 값을 산출할 수 있다.If the date at the current time when the authentication event occurred is 'August 31, 2021', the calculation unit 123 obtains '20210831', which is a date value at the current time when the authentication event occurred, , a first calculation value of '2' may be calculated by performing a modulo operation with '3' as a divisor for the date value '20210831'.

그러고 나서, 결합 행렬 생성부(124)는 상기 표 2와 같은 열벡터 저장부(121)에 저장되어 있는 '3'개의 열벡터들 중 상기 제1 연산 값인 '2'가 고유 번호로 할당되어 있는 열벡터인 '열벡터 3'을 제외한 나머지 '2'개의 열벡터인 '열벡터 1, 열벡터 2'를 추출할 수 있다. 그러고 나서, 결합 행렬 생성부(124)는 '열벡터 1, 열벡터 2'에 할당된 고유 번호인 '0, 1'의 크기가 작은 순으로 '열벡터 1, 열벡터 2'를 순차적으로 결합하여 '2 x 3' 크기를 갖는 결합 행렬을 '

Figure 112022016366516-pat00004
'과 같이 생성할 수 있다.Then, the combination matrix generator 124 is configured to assign the first operation value '2' as a unique number among the '3' column vectors stored in the column vector storage unit 121 as shown in Table 2 above. Excluding the column vector 'Column Vector 3', the remaining '2' column vectors 'Column Vector 1 and Column Vector 2' can be extracted. Then, the combination matrix generation unit 124 sequentially combines 'Column Vector 1 and Column Vector 2' in descending order of the magnitudes of '0 and 1', which are unique numbers assigned to 'Column Vector 1 and Column Vector 2'. '2 x 3' associative matrix with size '
Figure 112022016366516-pat00004
' can be created.

이렇게, 상기 결합 행렬이 생성되면, 랜덤 코드 생성부(125)는 '2'개의 인증 코드들과 '4'개의 더미 코드들을 랜덤하게 생성할 수 있다.In this way, when the combination matrix is generated, the random code generator 125 may randomly generate '2' authentication codes and '4' dummy codes.

관련해서, 랜덤 코드 생성부(125)에 의해, 'C1, C2'라고 하는 '2'개의 인증 코드들과 'D1, D2, D3, D4'라고 하는 '4'개의 더미 코드들이 생성되었다고 하는 경우, 피드백 요청부(126)는 '2'개의 인증 코드들인 'C1, C2'와 '4'개의 더미 코드들인 'D1, D2, D3, D4'를 제1 전자 단말(10)로 전송하면서, 제1 전자 단말(10)로 피드백 행렬의 전송을 요청할 수 있다.In relation to this, it is assumed that '2' authentication codes, 'C1 and C2', and '4' dummy codes, 'D1, D2, D3, D4' are generated by the random code generator 125. , The feedback requesting unit 126 transmits '2' authentication codes 'C1, C2' and '4' dummy codes 'D1, D2, D3, D4' to the first electronic terminal 10, 1 may request transmission of a feedback matrix to the electronic terminal 10 .

이때, 본 발명의 일실시예에 따르면, 제1 전자 단말(10)은 제1 전자 단말(10)의 메모리 상에 상기 n개의 열벡터들을 사전 저장하고 있고, 결제 서비스 제공 서버(110)로부터 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출한 후, 제1 전자 단말(10)에 사전 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출하고, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로, 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 상기 결합 행렬을 생성한 후, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각을 상기 n-1개의 인증 코드들로 하나씩 치환하고, 0이 지정되어 있는 (n-1)2개의 성분들 각각을 상기 (n-1)2개의 더미 코드들로 하나씩 치환함으로써, (n-1) x n 크기를 갖는 상기 제1 피드백 행렬을 생성하여 결제 서비스 제공 서버(110)로 전송할 수 있다.At this time, according to an embodiment of the present invention, the first electronic terminal 10 pre-stores the n column vectors in the memory of the first electronic terminal 10, and the payment service providing server 110 stores the n column vectors in advance. When n-1 authentication codes and the (n-1) two dummy codes are received and a request to transmit the feedback matrix is received, a date value for the current point in time is obtained, and n is calculated for the date value. After calculating the first operation value by performing a modulo operation as a divisor, the first operation value among the n column vectors pre-stored in the first electronic terminal 10 is assigned as a unique number, extracts the remaining n-1 column vectors except for the column vectors in the n-1 column vectors, and sequentially combines the n-1 column vectors in order of small numbers assigned to the n-1 column vectors (n -1) After generating the coupling matrix having a size of xn, each of the n-1 components to which 1 is designated among the [(n-1) xn] components constituting the coupling matrix is selected as the n-1 By substituting each of the (n-1) two authentication codes one by one, and replacing each of the (n-1) two components to which 0 is designated, one by one with the (n-1) two dummy codes, (n-1) having a size of xn The first feedback matrix may be generated and transmitted to the payment service providing server 110 .

관련해서, 전술한 예와 같이, n이 '3'이고, 제1 전자 단말(10)의 메모리 상에 상기 표 2와 같은 '3'개의 열벡터들인 '열벡터 1, 열벡터 2, 열벡터 3'이 사전 저장되어 있는 상태에서, 결제 서비스 제공 서버(110)로부터 제1 전자 단말(10)에, '2'개의 인증 코드들인 'C1, C2'와 '4'개의 더미 코드들인 'D1, D2, D3, D4'가 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되었다고 하는 경우, 제1 전자 단말(10)은 상기 현재 시점에 대한 날짜 값인 '20210831'을 획득하고, 상기 날짜 값인 '20210831'에 대해 '3'을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 '2'로 산출할 수 있다.In relation to this, as in the above example, n is '3' and '3' column vectors as shown in Table 2 are 'column vector 1, column vector 2, and column vector in the memory of the first electronic terminal 10. 3' is pre-stored, from the payment service providing server 110 to the first electronic terminal 10, '2' authentication codes 'C1 and C2' and '4' dummy codes 'D1, When D2, D3, and D4' are received, and it is assumed that the request to transmit the feedback matrix has been received, the first electronic terminal 10 obtains '20210831', which is the date value for the current point in time, and '20210831', which is the date value. The first operation value may be calculated as '2' by performing a modulo operation with '3' as a divisor for .

그러고 나서, 제1 전자 단말(10)은 제1 전자 단말(10)에 사전 저장되어 있는 '3'개의 열벡터들 중 상기 제1 연산 값인 '2'가 고유 번호로 할당되어 있는 열벡터인 '열벡터 3'을 제외한 나머지 '2'개의 열벡터인 '열벡터 1, 열벡터 2'를 추출할 수 있다.Then, the first electronic terminal 10 selects the first operation value '2' among the '3' column vectors pre-stored in the first electronic terminal 10, which is a column vector ' that is assigned as a unique number. Except for column vector 3, 'column vector 1 and column vector 2', which are the remaining '2' column vectors, can be extracted.

그 이후, 제1 전자 단말(10)은 '열벡터 1, 열벡터 2'에 할당된 고유 번호인 '0, 1'의 크기가 작은 순으로 '열벡터 1, 열벡터 2'를 순차적으로 결합하여 '2 x 3' 크기를 갖는 결합 행렬을 '

Figure 112022016366516-pat00005
'과 같이 생성할 수 있다. 그러고 나서, 제1 전자 단말(10)은 상기 결합 행렬인 '
Figure 112022016366516-pat00006
'을 구성하는 '6'개의 성분들 중 1이 지정되어 있는 '2'개의 성분들 각각을 '2'개의 인증 코드들인 'C1, C2'로 하나씩 치환하고, 0이 지정되어 있는 '4'개의 성분들 각각을 '4'개의 더미 코드들인 'D1, D2, D3, D4'로 하나씩 치환함으로써, '2 x 3' 크기를 갖는 제1 피드백 행렬을 '
Figure 112022016366516-pat00007
'와 같이 생성할 수 있다.Thereafter, the first electronic terminal 10 sequentially combines 'Column Vector 1 and Column Vector 2' in the descending order of the unique numbers '0 and 1' assigned to 'Column Vector 1 and Column Vector 2'. '2 x 3' associative matrix with size '
Figure 112022016366516-pat00005
' can be created. Then, the first electronic terminal 10 is the coupling matrix '
Figure 112022016366516-pat00006
Among the '6' components constituting ', each of the '2' components to which 1 is designated is substituted one by one with '2' authentication codes, 'C1 and C2', and '4' components to which 0 is designated. By replacing each of the components with '4' dummy codes 'D1, D2, D3, D4' one by one, the first feedback matrix having a size of '2 x 3' is '
Figure 112022016366516-pat00007
' can be created.

그 이후, 제1 전자 단말(10)은 상기 제1 피드백 행렬인 '

Figure 112022016366516-pat00008
'를 결제 서비스 제공 서버(110)로 전송할 수 있다.After that, the first electronic terminal 10 is the first feedback matrix '
Figure 112022016366516-pat00008
' may be transmitted to the payment service providing server 110.

이렇게, 제1 전자 단말(10)로부터 결제 서비스 제공 서버(110)에 상기 제1 피드백 행렬이 수신되면, 연산 행렬 생성부(127)는 상기 제1 피드백 행렬인 '

Figure 112022016366516-pat00009
'와 상기 결합 행렬인 '
Figure 112022016366516-pat00010
' 간의 아다마르 곱을 연산하여 제1 연산 행렬을 '
Figure 112022016366516-pat00011
'과 같이 생성할 수 있다.In this way, when the first feedback matrix is received from the first electronic terminal 10 to the payment service providing server 110, the operation matrix generator 127 generates the first feedback matrix '
Figure 112022016366516-pat00009
' and the combination matrix '
Figure 112022016366516-pat00010
' Calculate the Hadamard product between the first operation matrix '
Figure 112022016366516-pat00011
' can be created.

그러고 나서, 코드 확인부(128)는 상기 제1 연산 행렬을 구성하는 성분들 중 0이 아닌 성분들인 제1 성분들을 'C1, C2'와 같이 추출한 후, 상기 제1 성분들인 'C1, C2'가 '2'개의 인증 코드들인 'C1, C2'와 모두 일치하는지 확인할 수 있다. 이때, 본 실시예에서는 상기 제1 성분들인 'C1, C2'가 '2'개의 인증 코드들인 'C1, C2'와 모두 일치하기 때문에, 인증 완료부(129)는 제1 회원(11)이, 상기 공공 요금 결제 서비스에 가입된 회원이 맞는 것으로 인증 처리를 완료할 수 있다.Then, the code checking unit 128 extracts first components, which are non-zero components among the components constituting the first operation matrix, as 'C1, C2', and then extracts 'C1, C2', which are the first components. It can be checked whether the '2' authentication codes 'C1 and C2' all match. At this time, in this embodiment, since the first components 'C1 and C2' match all of the '2' authentication codes 'C1 and C2', the authentication completion unit 129 determines that the first member 11, The authentication process may be completed when the member subscribed to the utility bill payment service is correct.

이렇게, 인증 완료부(129)에 의해, 제1 회원(11)에 대한 회원 인증이 완료되면, 확인부(113)는 회원 데이터베이스(112) 상에서 제1 회원(11)의 회원 식별 정보에 대응되어 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 확인할 수 있다.In this way, when membership authentication for the first member 11 is completed by the authentication completion unit 129, the confirmation unit 113 corresponds to the member identification information of the first member 11 on the member database 112 Information on the amount of virtual currency held by the first member 11 may be checked.

이렇게, 확인부(113)를 통해, 제1 회원(11)의 가상 통화 보유량에 대한 정보의 확인이 완료되면, 갱신 처리부(114)는 사전 설정된 가상 통화 시세 정보 서버(100)에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 갱신한다.In this way, when the confirmation of the information on the amount of virtual currency held by the first member 11 is completed through the confirmation unit 113, the update processing unit 114 accesses the preset virtual currency market information server 100 to obtain the virtual currency. After obtaining the current quote information on the currency, based on the current tense information on the virtual currency, the amount of the first public charge from the virtual currency holding amount of the first member 11 stored in the member database 112 By deducting the amount of virtual currency corresponding to the market price, information on the amount of virtual currency held by the first member 11 stored in the member database 112 is updated.

예컨대, 전술한 예와 같이, 제1 회원(11)의 가상 통화 보유량이 '100coin'이라고 하고, 상기 제1 공공 요금이 '30,000원'이라고 하며, 가상 통화에 대한 현재 시세가 '1coin=10,000원'이라고 하는 경우, 갱신 처리부(114)는 상기 현재 시세를 기초로 제1 회원(11)의 가상 통화 보유량인 '100coin'에서 상기 제1 공공 요금인 '30,000원'만큼의 시세에 해당되는 가상 통화량인 '3coin'을 차감함으로써, 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 '97coin'으로 갱신할 수 있다.For example, as in the above example, the amount of virtual currency held by the first member 11 is '100coin', the first public charge is '30,000 won', and the current market price for virtual currency is '1coin = 10,000 won'. ', the update processor 114 determines the amount of virtual currency corresponding to the market price of '30,000 won', which is the first public charge, from '100 coins', which is the amount of virtual currency held by the first member 11, based on the current market price. By deducting '3coin', which is '3coin', information on the amount of virtual currency held by the first member 11 stored in the member database 112 may be updated to '97coin'.

납부 처리 완료 메시지 전송부(115)는 제1 회원(11)의 가상 통화 보유량에 대한 정보가 갱신되면, 식별 정보 저장부(111)에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버(101)에 대한 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버(101)에 접속하여, 상기 제1 공공 요금 수납 기관의 운영 서버(101)로, 제1 회원(11)의 상기 제1 공공 요금에 대한 납부 처리가 완료되었음을 지시하는 납부 처리 완료 메시지를 전송한다.When the information on the amount of virtual currency held by the first member 11 is updated, the payment processing completion message transmission unit 115 transmits the operation server 101 of the first public charge collection institution stored in the identification information storage unit 111. ), by accessing the operation server 101 of the first public charge collection agency based on the first server identification information for the first public charge collection agency, A payment processing completion message indicating that payment processing for the first utility bill is completed is transmitted.

이렇게, 상기 제1 공공 요금 수납 기관의 운영 서버(101)에 상기 납부 처리 완료 메시지가 수신되면, 상기 제1 공공 요금 수납 기관의 운영 서버(101)는 제1 회원(11)의 상기 제1 공공 요금에 대한 납부 처리가 완료된 것으로 처리할 수 있고, 상기 제1 공공 요금 수납 기관은 추후 본 발명의 결제 서비스 제공 서버(110)의 운영사로부터 제1 회원(11)이 납부해야 하는 상기 제1 공공 요금에 대해서 현금으로 정산을 받을 수 있다.In this way, when the payment processing completion message is received by the operation server 101 of the first public charge collection institution, the operation server 101 of the first public charge collection institution The payment process for the charges may be processed as completed, and the first public charge collection institution may later pay the first public charge to be paid by the first member 11 from the operator of the payment service providing server 110 of the present invention. You can get a settlement in cash for

결제 완료 메시지 전송부(116)는 상기 제1 공공 요금 수납 기관의 운영 서버(101)로 상기 납부 처리 완료 메시지가 전송 완료되면, 제1 전자 단말(10)로, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리가 완료되었음을 지시하는 결제 완료 메시지를 전송한다.When the payment processing completion message is transmitted to the operation server 101 of the first public charge collection institution, the payment completion message transmission unit 116 transmits the payment completion message to the first electronic terminal 10 to send a message about the first public charge. A payment completion message indicating that payment processing using virtual currency has been completed is transmitted.

본 발명의 일실시예에 따르면, 결제 서비스 제공 서버(110)는 마일리지 적립 처리부(117), 누적 액수 확인부(118), 마일리지 전환부(119) 및 전환 완료 메시지 전송부(120)를 더 포함할 수 있다.According to one embodiment of the present invention, the payment service providing server 110 further includes a mileage accumulation processing unit 117, an accumulated amount check unit 118, a mileage conversion unit 119, and a conversion completion message transmission unit 120. can do.

마일리지 적립 처리부(117)는 결제 완료 메시지 전송부(116)에 의해 제1 전자 단말(10)로 상기 결제 완료 메시지가 전송 완료되면, 상기 제1 공공 요금의 액수가, 상기 제1 공공 요금이 부과된 당해 회차의 바로 이전 회차에 부과된 공공 요금의 액수보다 감소되었는지 여부를 확인하여, 감소된 것으로 확인된 경우, 제1 회원(11)에 대해 사전 설정된 액수의 현금성 마일리지가 적립되었음을 지시하는 마일리지 적립 정보를 생성한 후, 상기 마일리지 적립 정보와 상기 마일리지 적립 정보가 생성된 시점의 일자 정보를, 회원 데이터베이스(112) 상의 제1 회원(11)의 회원 식별 정보에 대응시켜 저장한다.When the payment completion message is transmitted to the first electronic terminal 10 by the payment completion message transmission unit 116, the mileage accumulation processing unit 117 calculates the amount of the first public utility bill as the amount of the first public utility bill. mileage accumulation indicating that cash equivalent mileage of a predetermined amount has been accumulated for the first member 11 when it is confirmed whether the amount of public utility charges charged for the immediately previous round of the round in question has been reduced. After generating the information, the mileage earning information and date information at the time when the mileage earning information is generated are stored in correspondence with the member identification information of the first member 11 in the member database 112 .

예컨대, 상기 제1 공공 요금의 액수가 '30,000원'이라고 하고, 당해 회차의 바로 이전 회차에서 제1 회원(11)에게 부과된 공공 요금의 액수가 '40,000원'이었다고 하는 경우, 마일리지 적립 처리부(117)는 당해 회차의 공공 요금의 액수가 이전 회차의 공공 요금의 액수보다 감소되었기 때문에, 제1 회원(11)에 대해 상기 사전 설정된 액수의 현금성 마일리지를 적립해 줄 수 있다.For example, if the amount of the first public charge is '30,000 won' and the amount of public charge charged to the first member 11 in the immediately preceding round is '40,000 won', the mileage accumulation processing unit ( 117) may accumulate the preset amount of cash equivalent mileage for the first member 11 since the amount of public utility charges for the current round is lower than the amount of public charges for the previous round.

이와 관련해서, 상기 사전 설정된 액수의 현금성 마일리지가 '100원'이라고 하고, 제1 회원(11)의 회원 식별 정보가 '회원 식별 정보 1'이라고 하는 경우, 마일리지 적립 처리부(117)는 제1 회원(11)에 대해 '100원'에 해당되는 현금성 마일리지가 적립되었음을 지시하는 마일리지 적립 정보를 생성한 후, 하기의 표 3과 같이, 상기 마일리지 적립 정보와 상기 마일리지 적립 정보가 생성된 시점의 일자 정보를, 회원 데이터베이스(112) 상의 '회원 식별 정보 1'에 대응시켜 저장할 수 있다.In this regard, when the preset amount of cash equivalent mileage is '100 won' and the member identification information of the first member 11 is 'member identification information 1', the mileage accumulation processor 117 After generating mileage accumulation information indicating that cash equivalent mileage corresponding to '100 won' was accumulated for (11), as shown in Table 3 below, the mileage accumulation information and the date information at the time when the mileage accumulation information was generated may be stored in correspondence with 'member identification information 1' on the member database 112.

회원 식별 정보Member identification information 가상 통화 보유량Virtual currency holdings 마일리지 적립 정보Mileage accrual information 회원 식별 정보 1Member identification information 1 97coin97coin 2021년 8월 31일, 100원 마일리지 적립August 31, 2021, 100 won mileage accumulation 회원 식별 정보 2Member identification information 2 200coin200 coins ...... 회원 식별 정보 3Member identification information 3 50coin50coin ...... ...... ...... ......

누적 액수 확인부(118)는 제1 전자 단말(10)로부터, 제1 회원(11)에 대해서 적립되어 있는 현금성 마일리지를 상기 가상 통화로 전환할 것을 지시하는 전환 요청이 수신되면, 회원 데이터베이스(112) 상에서 제1 회원(11)의 회원 식별 정보에 대응되어 저장되어 있는 마일리지 적립 정보를 확인함으로써, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지에 대한 누적 액수를 확인한다.When the accumulated amount checking unit 118 receives a conversion request instructing conversion of the cash equivalent mileage accumulated for the first member 11 from the first electronic terminal 10 into the virtual currency, the member database 112 ), by checking the mileage accumulation information stored in correspondence with the member identification information of the first member 11, the accumulated amount of cash mileage accumulated for the first member is confirmed.

관련해서, 제1 회원(11)의 회원 식별 정보가 '회원 식별 정보 1'이라고 하고, 상기 표 3과 같이 제1 회원(11)에 대한 현금성 마일리지가 '100원' 적립되어 있다고 하는 경우, 누적 액수 확인부(118)는 제1 전자 단말(10)로부터, 제1 회원(11)에 대해서 적립되어 있는 현금성 마일리지를 상기 가상 통화로 전환할 것을 지시하는 전환 요청이 수신되면, 회원 데이터베이스(112) 상에서 '회원 식별 정보 1'에 대응되어 저장되어 있는 마일리지 적립 정보를 확인함으로써, 제1 회원(11)에 대해서 적립되어 있는 현금성 마일리지에 대한 누적 액수를 '100원'으로 확인할 수 있다. 만약, 제1 회원(11)이 공공 요금을 감소시킨 횟수가 여러 번 존재함 따라, 회원 데이터베이스(112) 상의 '회원 식별 정보 1'에 대응되어 저장되어 있는 마일리지 적립 정보가 복수개가 존재한다고 하는 경우, 누적 액수 확인부(118)는 회원 데이터베이스(112) 상에서 '회원 식별 정보 1'에 대응되어 저장되어 있는 복수의 마일리지 적립 정보들을 확인하여, 상기 복수의 마일리지 적립 정보들에 따른 현금성 마일리지를 합산함으로써, 제1 회원(11)에 대해서 적립되어 있는 현금성 마일리지에 대한 누적 액수를 확인할 수 있다.In relation to this, if the member identification information of the first member 11 is 'member identification information 1' and the cash equivalent mileage for the first member 11 is accumulated as '100 won' as shown in Table 3, the accumulated When the amount confirmation unit 118 receives a conversion request instructing conversion of the cash equivalent mileage accumulated for the first member 11 from the first electronic terminal 10 into the virtual currency, the member database 112 By checking the mileage accumulation information stored in correspondence with 'member identification information 1' above, it is possible to confirm the accumulated amount of cash equivalent mileage accumulated for the first member 11 as '100 won'. If, as the number of times the first member 11 reduced public charges exists several times, it is assumed that there are a plurality of mileage accumulation information stored in correspondence with 'member identification information 1' in the member database 112. , The cumulative amount check unit 118 checks a plurality of mileage accumulation information stored in correspondence with 'member identification information 1' on the member database 112, and sums the cash equivalent mileage according to the plurality of mileage accumulation information. , It is possible to check the accumulated amount of cash equivalent mileage accumulated for the first member 11 .

마일리지 전환부(119)는 가상 통화 시세 정보 서버(100)에 접속하여, 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량에서 상기 누적 액수만큼의 시세에 해당되는 가상 통화량을 증가시킴으로써, 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량에 대한 정보를 갱신한다.The mileage conversion unit 119 accesses the virtual currency quote information server 100, obtains current quote information on the virtual currency, and then stores the information in the member database 112 based on the current quote information on the virtual currency. The amount of virtual currency held by the first member 11 stored in the member database 112 is increased by increasing the amount of virtual currency corresponding to the market price by the cumulative amount in the stored amount of virtual currency of the first member 11. update information

관련해서, 전술한 예와 같이, 제1 회원(11)에 대해서 확인된 현금성 마일리지에 대한 누적 액수가 '100원'이라고 하고, 상기 가상 통화에 대한 현재 시세가 '1coin=10,000원'이라고 하는 경우, 마일리지 전환부(119)는 회원 데이터베이스(112)에 저장되어 있는 제1 회원(11)의 가상 통화 보유량인 '97coin'을 '97.01coin'으로 갱신할 수 있다.In this regard, as in the above example, when the cumulative amount of the cash equivalent mileage confirmed for the first member 11 is '100 won' and the current market price for the virtual currency is '1 coin = 10,000 won' , The mileage conversion unit 119 may update '97coin', which is the amount of virtual currency held by the first member 11 stored in the member database 112, to '97.01coin'.

전환 완료 메시지 전송부(120)는 제1 회원(11)의 가상 통화 보유량에 대한 정보가 갱신되면, 제1 전자 단말(10)로, 제1 회원(11)에 대해서 적립되어 있는 현금성 마일리지가 상기 가상 통화로 전환 완료되었음을 지시하는 전환 완료 메시지를 전송한다.When the information on the amount of virtual currency held by the first member 11 is updated, the conversion completion message transmission unit 120 sends the cash equivalent mileage accumulated for the first member 11 to the first electronic terminal 10. Transmits a conversion completion message indicating that conversion to virtual currency has been completed.

이렇게, 본 발명에 따른 결제 서비스 제공 서버(110)는 특정 회원이 공공 요금을 감축시키는 경우, 해당 회원에게 소정의 현금성 마일리지를 지급함으로써, 회원들에게 공공 요금 절약을 위한 동기를 부여할 수 있다.In this way, the payment service providing server 110 according to the present invention may motivate members to save on public charges by paying a predetermined cash equivalent mileage to the member when a specific member reduces public charges.

본 발명의 일실시예에 따르면, 결제 서비스 제공 서버(110)는 본 공공 요금 결제 서비스에 가입된 회원들이 현재 시점에서 자신의 공공 요금이 얼마나 나왔는지를 조회할 수 있도록 하는 부가 기능을 제공하기 위한 구성을 더 포함할 수 있다.According to one embodiment of the present invention, the payment service providing server 110 is configured to provide an additional function enabling members subscribed to the public utility bill payment service to inquire how much their public utility bill has been paid at the current time. may further include.

이와 관련해서, 결제 서비스 제공 서버(110)는 정보 회신 요청부(130), 암호화 이벤트 발생부(131), 시드 코드 생성부(132), 암호화부(133), 문자 메시지 발송부(134) 및 암호화 정보 전송부(135)를 더 포함할 수 있다.In this regard, the payment service providing server 110 includes an information reply requesting unit 130, an encryption event generating unit 131, a seed code generating unit 132, an encryption unit 133, a text message sending unit 134 and An encryption information transmission unit 135 may be further included.

정보 회신 요청부(130)는 상기 복수의 회원들 중 제2 회원(21)의 제2 전자 단말(20)로부터, 제2 회원(21)의 상기 제1 공공 요금 수납 기관에 대한 현재 시점에서의 공공 요금의 발생 액수에 대한 정보를 조회하여 전송할 것을 요청하는 정보 조회 명령이 수신되면, 제2 전자 단말(20)로 제2 회원(21)에 대한 개인 정보를 전송할 것을 요청하고, 제2 전자 단말(20)로부터 제2 회원(21)의 개인 정보가 수신되면, 식별 정보 저장부(111)에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버(101)에 대한 상기 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버(101)에 접속하여, 상기 제1 공공 요금 수납 기간의 운영 서버(101)로, 제2 회원(21)에 대한 개인 정보를 전송하면서, 제2 회원(21)의 현재 시점의 공공 요금의 발생 액수에 대한 정보를 조회하여 회신할 것을 요청하는 정보 회신 명령을 전송한다.The information reply request unit 130 transmits information from the second electronic terminal 20 of the second member 21 among the plurality of members to the first public charge collection institution of the second member 21 at the current time. When an information search command requesting to query and transmit information on the amount of public utility bills incurred is received, the second electronic terminal 20 is requested to transmit personal information about the second member 21, and the second electronic terminal When the personal information of the second member 21 is received from (20), the first server identification information for the operation server 101 of the first public charge collection agency stored in the identification information storage unit 111 While accessing the operating server 101 of the first public charge collection institution on the basis of the first public charge collection period, and transmitting personal information about the second member 21 to the operating server 101 of the first public charge collection period, the second The member 21 transmits an information return command requesting that information on the amount of public utility bills incurred at the current time be inquired and replied to.

그러면, 상기 제1 공공 요금 수납 기관의 운영 서버(101)는 제2 회원(21)에 대한 개인 정보를 기초로, 상기 제1 공공 요금 수납 기관에 산정되어 있는 현재 시점에서의 공공 요금의 발생 액수에 대한 정보를 조회하여 본 발명의 결제 서비스 제공 서버(110)로 전송할 수 있다.Then, the operation server 101 of the first public charge collection agency determines the amount of public utility bills generated at the current time calculated at the first public charge collection agency based on the personal information of the second member 21. Information on can be retrieved and transmitted to the payment service providing server 110 of the present invention.

암호화 이벤트 발생부(131)는 상기 제1 공공 요금 수납 기관의 운영 서버(101)로부터, 제2 회원(21)의 현재 시점의 공공 요금의 발생 액수에 대한 정보로서, 제1 발생 액수 정보가 수신되면, 상기 제1 발생 액수 정보를 암호화하여 제2 전자 단말(20)로 전송하기 위한 암호화 전송 이벤트를 발생시킨다.The encryption event generation unit 131 receives information on the generated amount of public utility bills of the second member 21 from the operation server 101 of the first public charge collection institution, and receives first generated amount information. If so, an encryption transmission event is generated to encrypt the first generated amount information and transmit it to the second electronic terminal 20 .

시드 코드 생성부(132)는 상기 암호화 전송 이벤트가 발생되면, t(t는 2이상의 자연수임)자릿수의 일회용 인증 번호를 랜덤하게 생성한 후, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 시드(seed) 코드를 생성한다.When the encryption transmission event occurs, the seed code generation unit 132 randomly generates a one-time authentication number of t (t is a natural number of 2 or more) digits, and then assigns each of the t numbers constituting the one-time authentication number A t-bit seed code is generated by configuring the resultant value when a modulo-2 operation is performed on a bit string.

예컨대, t를 '3'이라고 하고, 랜덤하게 생성된 상기 일회용 인증 번호가 '123'이라고 하는 경우, 시드 코드 생성부(132)는 '123'을 구성하는 3개의 숫자들인 '1', '2', '3' 각각에 대한 모듈로-2 연산을 수행함으로써, '1', '0', '1'이라는 결과 값을 생성한 후, 이 결과 값을 비트열로 구성함으로써, 3비트의 '101'이라고 하는 시드 코드를 생성할 수 있다.For example, if t is '3' and the randomly generated one-time authentication number is '123', the seed code generator 132 generates three numbers '1' and '2' constituting '123'. By performing a modulo-2 operation on each of ' and '3', result values of '1', '0', and '1' are generated, and then the resulting value is configured as a bit string, so that 3 bits of ' You can generate a seed code called 101'.

암호화부(133)는 상기 시드 코드가 생성되면, 사전 설정된 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 해시 값을 생성한 후 상기 해시 값으로 상기 제1 발생 액수 정보를 암호화한다.When the seed code is generated, the encryption unit 133 generates a hash value by applying the seed code as an input to a preset hash function, and then encrypts the first occurrence amount information with the hash value.

문자 메시지 발송부(134)는 제2 전자 단말(20)로, 상기 제2 회원의 본인 명의의 휴대폰 번호를 전송할 것을 요청하는 휴대폰 번호 요청 메시지를 전송한 후, 제2 전자 단말(20)로부터 제1 휴대폰 번호가 수신되면, 상기 제1 휴대폰 번호를 수신측으로 하여, 상기 일회용 인증 번호를 제2 전자 단말(20)에 입력할 것을 지시하는 내용이 포함된 문자 메시지를 발송한다.The text message sender 134 transmits a mobile phone number request message requesting transmission of the mobile phone number of the second member under his/her name to the second electronic terminal 20, and then sends the second electronic terminal 20 to the mobile phone number request message. 1 When the mobile phone number is received, a text message including content instructing the second electronic terminal 20 to input the one-time authentication number is sent to the receiver with the first mobile phone number.

예컨대, 전술한 예와 같이 상기 일회용 인증 번호가 '123'이라고 하고, 상기 제1 휴대폰 번호가 '010-1111-2222'라고 하는 경우, 문자 메시지 발송부(134)는 상기 제1 휴대폰 번호인 '010-1111-2222'를 수신측으로 하여, 상기 일회용 인증 번호인 '123'을 제2 전자 단말(20)에 입력할 것을 지시하는 내용이 포함된 문자 메시지를 발송할 수 있다.For example, as in the above example, when the one-time authentication number is '123' and the first mobile phone number is '010-1111-2222', the text message sender 134 sends the first mobile phone number '010-1111-2222'. With '010-1111-2222' as the receiver, a text message including instructions to input '123', the one-time authentication number, into the second electronic terminal 20 may be sent.

암호화 정보 전송부(135)는 상기 문자 메시지가 발송되면, 제2 전자 단말(20)로, 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수를 전송한다.When the text message is sent, the encrypted information transmission unit 135 transmits the hash function together with the encrypted first occurrence amount information to the second electronic terminal 20 .

이때, 본 발명의 일실시예에 따르면, 제2 전자 단말(20)은 결제 서비스 제공 서버(110)로부터 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수가 수신되고, 제2 회원(21)에 의해, 상기 제1 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 일회용 인증 번호가 제2 전자 단말(20) 상에 입력되면, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 상기 시드 코드를 생성하고, 결제 서비스 제공 서버(110)로부터 수신된 상기 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 해시 값을 생성한 후, 상기 해시 값을 이용하여 상기 암호화된 제1 발생 액수 정보를 복호화할 수 있다.At this time, according to one embodiment of the present invention, the second electronic terminal 20 receives the hash function together with the encrypted first generated amount information from the payment service providing server 110, and the second member 21 By, when the one-time authentication number included in the text message received with the first mobile phone number as the receiver is input on the second electronic terminal 20, each of t numbers constituting the one-time authentication number The seed code of t bits is generated by configuring the resultant value when the modulo-2 operation is performed on , into a bit string, and the seed code is input to the hash function received from the payment service providing server 110 After generating the hash value, the encrypted first occurrence amount information may be decrypted using the hash value.

관련해서, 전술한 예와 같이, 상기 일회용 인증 번호를 '123'이라고 하고, 상기 제1 휴대폰 번호인 '010-1111-2222'를 수신측으로 하여, 상기 일회용 인증 번호인 '123'을 제2 전자 단말(20)에 입력할 것을 지시하는 내용이 포함된 문자 메시지가 발송되었으며, 제2 전자 단말(20)에 결제 서비스 제공 서버(110)로부터 전송된 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수가 수신된 상황이라고 가정하자.In relation to this, as in the above example, the one-time authentication number is set to '123', the first mobile phone number '010-1111-2222' is used as a receiver, and the one-time authentication number '123' is used as a second electronic A text message containing content instructing the terminal 20 to be input was sent, and the hash together with the encrypted first generated amount information transmitted from the payment service providing server 110 to the second electronic terminal 20 Assume that the function is received.

그러면, 제2 회원(21)은 자신이 보유하고 있는 휴대폰에 수신된 상기 문자 메시지를 보고 제2 전자 단말(20)에 상기 일회용 인증 번호인 '123'을 입력할 수 있고, 이때, 제2 전자 단말(20)은 제2 회원(21)에 의해 상기 일회용 인증 번호인 '123'이 입력되면, 상기 일회용 인증 번호인 '123'을 구성하는 3개의 숫자들인 '1', '2', '3' 각각에 대해 모듈로-2 연산을 수행함으로써, '1', '0', '1'이라는 결과 값을 생성한 후, 이 결과 값을 비트열로 구성함으로써, '101'이라고 하는 3비트의 시드 코드를 생성할 수 있다.Then, the second member 21 can view the text message received in the mobile phone owned by the second member 21 and input the one-time authentication number '123' into the second electronic terminal 20. At this time, the second electronic terminal 21 can When the one-time authentication number '123' is input by the second member 21, the terminal 20 includes three numbers '1', '2', and '3' constituting the one-time authentication number '123'. ' By performing a modulo-2 operation on each of them, a result value of '1', '0', and '1' is generated, and then the result value is configured as a bit string, so that 3 bits of '101' are generated. You can generate seed code.

그러고 나서, 제2 전자 단말(20)은 결제 서비스 제공 서버(110)로부터 수신된 상기 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 해시 값을 생성한 후, 상기 해시 값을 이용하여 상기 암호화된 제1 발생 액수 정보를 복호화할 수 있다.Then, the second electronic terminal 20 applies the seed code as an input to the hash function received from the payment service providing server 110 to generate the hash value, and then uses the hash value to generate the encrypted data. The first generated amount information may be decoded.

여기서, '101'이라고 하는 상기 시드 코드는, 앞서, 시드 코드 생성부(132)가 생성하였던 시드 코드와 같은 코드이기 때문에, 상기 해시 함수에 상기 시드 코드가 입력으로 인가되었을 때 생성되는 해시 값은, 앞서, 암호화부(133)가 상기 제1 발생 액수 정보를 암호화하는데 사용한 해시 값과 동일한 값이 되며, 이로 인해, 제2 전자 단말(20)은 상기 해시 값을 이용하여 암호화된 제1 발생 액수 정보를 복호화할 수 있게 된다.Here, since the seed code '101' is the same code as the seed code generated by the seed code generator 132, the hash value generated when the seed code is applied as an input to the hash function is , It is the same value as the hash value used by the encryption unit 133 to encrypt the first occurrence amount information, and thus, the second electronic terminal 20 uses the hash value to generate the encrypted first occurrence amount. information can be decrypted.

이렇게, 제1 발생 액수 정보의 복호화가 완료되면, 제2 전자 단말(20)은 상기 제1 발생 액수 정보를 화면 상에 표시함으로써, 제2 회원(21)이 상기 제1 공공 요금 수납 기관에 대한 현재 시점에서의 공공 요금의 발생 액수를 확인할 수 있도록 지원할 수 있고, 이때, 제2 회원(21)은 현재 시점에서의 공공 요금의 발생 액수를 확인함으로써, 공공 요금 발생을 줄이기 위한 노력을 기울일 수 있을 것이다.In this way, when the decryption of the first generated amount information is completed, the second electronic terminal 20 displays the first generated amount information on the screen, so that the second member 21 is informed of the first public charge collection institution. It is possible to assist in checking the amount of public charges incurred at the current time point, and at this time, the second member 21 can make efforts to reduce the occurrence of public charges by checking the amount of public charges incurred at the current time point. will be.

도 2는 본 발명의 일실시예에 따른 가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 동작 방법을 도시한 순서도이다.2 is a flowchart illustrating an operating method of a payment service providing server for providing a utility bill payment service using virtual currency according to an embodiment of the present invention.

단계(S210)에서는 상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있는 식별 정보 저장부를 유지한다.In step S210, an identification information storage unit in which server identification information for each operation server of a plurality of public charge collection agencies for which a prior partnership is completed to provide the public charge payment service is stored is stored.

단계(S220)에서는 상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있는 회원 데이터베이스를 유지한다.In step S220, a member database is maintained in which member identification information of each of the plurality of members subscribed to the utility bill payment service and information on the holding amount of virtual currency of each of the plurality of members are stored in correspondence with each other.

단계(S230)에서는 상기 복수의 회원들 중 제1 회원의 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인한다.In step S230, while the member identification information of the first member is received from the first electronic terminal of the first member among the plurality of members, the first public charge collection agency among the plurality of public charge collection agencies charges the bill. When a payment processing request using the virtual currency for the first public utility bill is received, member authentication is performed to determine whether the first member is a member subscribed to the public utility bill payment service, Information on the amount of virtual currency held by the first member stored in correspondence with the member identification information of the first member is checked.

단계(S240)에서는 사전 설정된 가상 통화 시세 정보 서버에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신한다.In step S240, after accessing a preset virtual currency quote information server to obtain current quote information on the virtual currency, based on the current quote information on the virtual currency, the first information stored in the member database Information on the amount of virtual currency held by the first member stored in the member database is updated by subtracting the amount of virtual currency corresponding to the market price of the first utility bill from the amount of virtual currency held by the member.

단계(S250)에서는 상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기관의 운영 서버로, 상기 제1 회원의 상기 제1 공공 요금에 대한 납부 처리가 완료되었음을 지시하는 납부 처리 완료 메시지를 전송한다.In step S250, when the information on the holding amount of virtual currency of the first member is updated, based on the first server identification information for the operating server of the first public charge collection agency stored in the identification information storage unit, Connects to the operation server of the first public charge collection organization, and transmits a payment processing completion message indicating that the first member's payment processing for the first public charge has been completed to the operation server of the first public charge collection organization. do.

단계(S260)에서는 상기 제1 공공 요금 수납 기관의 운영 서버로 상기 납부 처리 완료 메시지가 전송 완료되면, 상기 제1 전자 단말로, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리가 완료되었음을 지시하는 결제 완료 메시지를 전송한다.In step S260, when the transmission of the payment processing completion message to the operation server of the first public charge collection institution is completed, the first electronic terminal indicates that payment processing using the virtual currency for the first public charge has been completed. Sends a payment completion message to indicate.

이때, 본 발명의 일실시예에 따르면, 상기 결제 서비스 제공 서버의 동작 방법은 상기 제1 전자 단말로 상기 결제 완료 메시지가 전송 완료되면, 상기 제1 공공 요금의 액수가, 상기 제1 공공 요금이 부과된 당해 회차의 바로 이전 회차에 부과된 공공 요금의 액수보다 감소되었는지 여부를 확인하여, 감소된 것으로 확인된 경우, 상기 제1 회원에 대해 사전 설정된 액수의 현금성 마일리지가 적립되었음을 지시하는 마일리지 적립 정보를 생성한 후, 상기 마일리지 적립 정보와 상기 마일리지 적립 정보가 생성된 시점의 일자 정보를, 상기 회원 데이터베이스 상의 상기 제1 회원의 회원 식별 정보에 대응시켜 저장하는 단계, 상기 제1 전자 단말로부터, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지를 상기 가상 통화로 전환할 것을 지시하는 전환 요청이 수신되면, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 마일리지 적립 정보를 확인함으로써, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지에 대한 누적 액수를 확인하는 단계, 상기 가상 통화 시세 정보 서버에 접속하여, 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 누적 액수만큼의 시세에 해당되는 가상 통화량을 증가시킴으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 단계 및 상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 제1 전자 단말로, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지가 상기 가상 통화로 전환 완료되었음을 지시하는 전환 완료 메시지를 전송하는 단계를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, in the operation method of the payment service providing server, when the payment completion message is transmitted to the first electronic terminal, the amount of the first utility bill is calculated as Mileage accrual information indicating that a pre-set amount of cash equivalent mileage has been accumulated for the first member when it is confirmed whether the amount of public utility charges charged for the round immediately preceding the round in question has been reduced. After generating, storing the mileage earning information and date information at the time when the mileage earning information was generated in correspondence with member identification information of the first member in the member database, from the first electronic terminal, When a conversion request instructing conversion of the cash equivalent mileage accumulated for the first member to the virtual currency is received, by checking the mileage accumulation information stored in correspondence with the member identification information of the first member on the member database. , Checking the accumulated amount of cash equivalent mileage accumulated for the first member, accessing the virtual currency market price information server, obtaining current market price information on the virtual currency, and then obtaining the current market price information on the virtual currency Based on the time information, by increasing the amount of virtual currency corresponding to the market price by the cumulative amount in the virtual currency holdings of the first member stored in the member database, the virtual currency of the first member stored in the member database Updating the information on the amount of currency held and when the information on the amount of virtual currency held by the first member is updated, the conversion of the cash equivalent mileage accumulated for the first member to the virtual currency is completed through the first electronic terminal. Transmitting a conversion completion message indicating that the conversion has been completed may be further included.

또한, 본 발명의 일실시예에 따르면, 단계(S230)에서는 상기 제1 전자 단말과 사전 공유하고 있는 n(n은 2이상의 자연수임)개의 열벡터들(상기 n개의 열벡터들 각각은 1 x n 크기를 갖는 열벡터로서, 상기 n개의 열벡터들 각각을 구성하는 n개의 성분들 중 사전 지정된 어느 하나의 열에 위치하는 성분은 1로 지정되어 있고, 나머지 열에 위치하는 성분들은 0으로 지정되어 있으며, 상기 n개의 열벡터 각각에는 0 이상 n-1 이하의 서로 다른 정수가 고유 번호로 하나씩 할당되어 있음)이 저장되어 있는 열벡터 저장부를 유지하는 단계, 상기 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 수행하기 위한 인증 이벤트를 발생시키는 단계, 상기 인증 이벤트가 발생되면, 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값을 산출하는 단계, 상기 제1 연산 값이 산출되면, 상기 열벡터 저장부에 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출한 후, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 결합 행렬을 생성하는 단계, 상기 결합 행렬이 생성되면, n-1개의 인증 코드들과 (n-1)2개의 더미 코드들을 랜덤하게 생성하는 단계, 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 생성되면, 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들을 상기 제1 전자 단말로 전송하면서, 상기 제1 전자 단말로 피드백 행렬의 전송을 요청하는 단계, 상기 제1 전자 단말로부터 상기 피드백 행렬의 전송 요청에 대응하여, 제1 피드백 행렬(상기 제1 피드백 행렬은, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각이 상기 n-1개의 인증 코드들로 하나씩 치환되고, 0이 지정되어 있는 (n-1)2개의 성분들 각각이 상기 (n-1)2개의 더미 코드들로 하나씩 치환되어 생성된, (n-1) x n 크기를 갖는 행렬임)이 수신되면, 상기 제1 피드백 행렬과 상기 결합 행렬 간의 아다마르 곱을 연산하여 제1 연산 행렬을 생성하는 단계, 상기 제1 연산 행렬이 생성되면, 상기 제1 연산 행렬을 구성하는 성분들 중 0이 아닌 성분들인 제1 성분들을 추출한 후, 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는지 여부를 확인하는 단계 및 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는 것으로 확인되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는 것으로 인증 처리를 완료하는 단계를 포함할 수 있다.Further, according to an embodiment of the present invention, in step S230, n (n is a natural number equal to or greater than 2) column vectors previously shared with the first electronic terminal (each of the n column vectors is 1×n As a column vector having magnitude, a component located in one of the n components constituting each of the n column vectors is designated as 1, and components located in the other columns are designated as 0; maintaining a column vector storage unit in which each of the n column vectors is assigned a unique number of different integers of 0 or more and less than or equal to n−1); When member identification information is received and a request for payment processing using the virtual currency for the first public utility bill is received, member authentication is performed to determine whether the first member is a member subscribed to the public utility bill payment service. Generating an authentication event for the authentication event, when the authentication event occurs, obtaining a date value for the current point in time at which the authentication event occurred, and performing a modulo operation with n as a divisor for the date value, Calculating an operation value; when the first operation value is calculated, n of the n column vectors stored in the column vector storage unit excluding the column vectors to which the first operation value is assigned as a unique number; After extracting -1 column vectors, the n-1 column vectors are sequentially combined in the order of small numbers assigned to the n-1 column vectors, and the combination having the size of (n-1) xn is performed. Generating a matrix, randomly generating n-1 authentication codes and (n-1) 2 dummy codes when the combining matrix is generated, generating the n-1 authentication codes and the (n-1) authentication codes 1) When 2 dummy codes are generated, while transmitting the n-1 authentication codes and the (n-1) 2 dummy codes to the first electronic terminal, a feedback matrix is transmitted to the first electronic terminal. Requesting, in response to a request for transmission of the feedback matrix from the first electronic terminal, a first feedback matrix (the first feedback matrix, among [(n-1) xn] elements constituting the combining matrix) Each of the n-1 components designated as 1 is substituted with the n-1 authentication codes, and each of the (n-1) two components designated as 0 is replaced with the (n-1) two components. Generating a first operation matrix by calculating a Hadamard product between the first feedback matrix and the coupling matrix when a matrix having a size of (n-1) xn) generated by replacing one by one with dummy codes is received; When the first calculation matrix is generated, after extracting first components that are non-zero components among the components constituting the first calculation matrix, whether the first components match all of the n-1 authentication codes. and, if it is confirmed that the first components match all of the n-1 authentication codes, completing authentication processing that the first member is a member subscribed to the utility bill payment service. can include

이때, 본 발명의 일실시예에 따르면, 상기 제1 전자 단말은 상기 제1 전자 단말의 메모리 상에 상기 n개의 열벡터들을 사전 저장하고 있고, 상기 결제 서비스 제공 서버로부터 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출한 후, 상기 제1 전자 단말에 사전 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출하고, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로, 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 상기 결합 행렬을 생성한 후, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각을 상기 n-1개의 인증 코드들로 하나씩 치환하고, 0이 지정되어 있는 (n-1)2개의 성분들 각각을 상기 (n-1)2개의 더미 코드들로 하나씩 치환함으로써, (n-1) x n 크기를 갖는 상기 제1 피드백 행렬을 생성하여 상기 결제 서비스 제공 서버로 전송할 수 있다.At this time, according to an embodiment of the present invention, the first electronic terminal pre-stores the n column vectors in a memory of the first electronic terminal, and the n-1 authentication codes are received from the payment service providing server. , and the (n-1) two dummy codes are received, and when a request to transmit the feedback matrix is received, a date value for the current point in time is obtained, and a modulo operation is performed with n as a divisor for the date value. After calculating the first operation value by performing, among the n column vectors previously stored in the first electronic terminal, the remaining n- column vectors excluding the column vectors to which the first operation value is assigned as a unique number are performed. 1 column vectors are extracted, and the n-1 column vectors are sequentially combined in order of small numbers assigned to the n-1 column vectors to obtain (n-1) After generating the coupling matrix, each of the n-1 components in which 1 is designated among the [(n-1) xn] components constituting the coupling matrix is replaced one by one with the n-1 authentication codes, , By substituting each of the (n-1) two components designated by 0 with the (n-1) two dummy codes, the first feedback matrix having a size of (n-1) xn is generated, It may be transmitted to the payment service providing server.

또한, 본 발명의 일실시예에 따르면, 상기 결제 서비스 제공 서버의 동작 방법은 상기 복수의 회원들 중 제2 회원의 제2 전자 단말로부터, 상기 제2 회원의 상기 제1 공공 요금 수납 기관에 대한 현재 시점에서의 공공 요금의 발생 액수에 대한 정보를 조회하여 전송할 것을 요청하는 정보 조회 명령이 수신되면, 상기 제2 전자 단말로 상기 제2 회원에 대한 개인 정보를 전송할 것을 요청하고, 상기 제2 전자 단말로부터 상기 제2 회원의 개인 정보가 수신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 상기 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기간의 운영 서버로, 상기 제2 회원에 대한 개인 정보를 전송하면서, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보를 조회하여 회신할 것을 요청하는 정보 회신 명령을 전송하는 단계, 상기 제1 공공 요금 수납 기관의 운영 서버로부터, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보로서, 제1 발생 액수 정보가 수신되면, 상기 제1 발생 액수 정보를 암호화하여 상기 제2 전자 단말로 전송하기 위한 암호화 전송 이벤트를 발생시키는 단계, 상기 암호화 전송 이벤트가 발생되면, t(t는 2이상의 자연수임)자릿수의 일회용 인증 번호를 랜덤하게 생성한 후, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 시드 코드를 생성하는 단계, 상기 시드 코드가 생성되면, 사전 설정된 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 해시 값을 생성한 후 상기 해시 값으로 상기 제1 발생 액수 정보를 암호화하는 단계, 상기 제2 전자 단말로, 상기 제2 회원의 본인 명의의 휴대폰 번호를 전송할 것을 요청하는 휴대폰 번호 요청 메시지를 전송한 후, 상기 제2 전자 단말로부터 제1 휴대폰 번호가 수신되면, 상기 제1 휴대폰 번호를 수신측으로 하여, 상기 일회용 인증 번호를 상기 제2 전자 단말에 입력할 것을 지시하는 내용이 포함된 문자 메시지를 발송하는 단계 및 상기 문자 메시지가 발송되면, 상기 제2 전자 단말로, 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수를 전송하는 단계를 더 포함할 수 있다.In addition, according to one embodiment of the present invention, the operation method of the payment service providing server provides information about the first utility bill collection institution of the second member from the second electronic terminal of the second member among the plurality of members. When an information search command requesting to query and transmit information on the amount of public utility bills at the current time point is received, a request to transmit personal information about the second member is requested to the second electronic terminal, and the second electronic terminal When the personal information of the second member is received from the terminal, the first public charge collection agency based on the first server identification information for the operation server of the first public charge collection agency stored in the identification information storage unit. By accessing the operation server of the first utility bill collection period, while transmitting personal information about the second member to the operation server of the first utility bill collection period, information on the generated amount of public utility bills of the second member at the current time is retrieved, Transmitting an information reply command requesting a reply, wherein first generated amount information is received as information on the generated amount of public utility bills of the second member at the current time, from the operating server of the first utility bill collection institution. If it is, generating an encryption transmission event for encrypting the first generation amount information and transmitting it to the second electronic terminal, when the encryption transmission event occurs, t (t is a natural number of 2 or more) digit one-time authentication number Generating a t-bit seed code by randomly generating a value obtained by performing a modulo-2 operation on each of the t numbers constituting the one-time authentication number as a bit string; When the seed code is generated, generating a hash value by applying the seed code as an input to a preset hash function, and then encrypting the first generated amount information with the hash value; After transmitting a mobile phone number request message requesting transmission of a mobile phone number in the name of the second member, when the first mobile phone number is received from the second electronic terminal, the first mobile phone number is used as the receiver, and the one-time authentication Sending a text message including content instructing to input a number into the second electronic terminal, and when the text message is sent, to the second electronic terminal, the hash together with the encrypted first occurrence amount information A step of transmitting the function may be further included.

이때, 상기 제2 전자 단말은 상기 결제 서비스 제공 서버로부터 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수가 수신되고, 상기 제2 회원에 의해, 상기 제1 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 일회용 인증 번호가 상기 제2 전자 단말 상에 입력되면, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 상기 시드 코드를 생성하고, 상기 결제 서비스 제공 서버로부터 수신된 상기 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 해시 값을 생성한 후, 상기 해시 값을 이용하여 상기 암호화된 제1 발생 액수 정보를 복호화할 수 있다.At this time, the second electronic terminal receives the hash function together with the encrypted first generated amount information from the payment service providing server, and receives the first mobile phone number as a receiver by the second member. When the one-time authentication number included in the text message is input on the second electronic terminal, the result value when a modulo-2 operation is performed on each of the t numbers constituting the one-time authentication number is a bit string By configuring to, generate the seed code of t bits, apply the seed code as an input to the hash function received from the payment service providing server to generate the hash value, and then use the hash value to perform the encryption It is possible to decode the first generated amount information.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 결제 서비스 제공 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 결제 서비스 제공 서버의 동작 방법은 도 1을 이용하여 설명한 결제 서비스 제공 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.In the above, the operation method of the payment service providing server according to an embodiment of the present invention has been described with reference to FIG. 2 . Here, since the operating method of the payment service providing server according to an embodiment of the present invention may correspond to the configuration of the operation of the payment service providing server 110 described with reference to FIG. 1, a detailed description thereof is omitted. do it with

본 발명의 일실시예에 따른 결제 서비스 제공 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.A method of operating a payment service providing server according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through a combination with a computer.

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

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described by specific details 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. , Those skilled in the art in the field to which the present invention belongs can make various modifications and variations from these descriptions.

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

110: 결제 서비스 제공 서버
111: 식별 정보 저장부 112: 회원 데이터베이스
113: 확인부 114: 갱신 처리부
115: 납부 처리 완료 메시지 전송부 116: 결제 완료 메시지 전송부
117: 마일리지 적립 처리부 118: 누적 액수 확인부
119: 마일리지 전환부 120: 전환 완료 메시지 전송부
121: 열벡터 저장부 122: 인증 이벤트 발생부
123: 산출부 124: 결합 행렬 생성부
125: 랜덤 코드 생성부 126: 피드백 요청부
127: 연산 행렬 생성부 128: 코드 확인부
129: 인증 완료부 130: 정보 회신 요청부
131: 암호화 이벤트 발생부 132: 시드 코드 생성부
133: 암호화부 134: 문자 메시지 발송부
135: 암호화 정보 전송부
10: 제1 전자 단말
11: 제1 회원
100: 가상 통화 시세 정보 서버
101: 제1 공공 요금 수납 기관의 운영 서버
20: 제2 전자 단말
21: 제2 회원
110: Payment service providing server
111: identification information storage unit 112: member database
113: confirmation unit 114: update processing unit
115: payment processing completion message transmission unit 116: payment completion message transmission unit
117: Mileage accumulation processing unit 118: Accumulated amount confirmation unit
119: mileage conversion unit 120: conversion completion message transmission unit
121: column vector storage unit 122: authentication event generating unit
123: calculation unit 124: combination matrix generation unit
125: random code generator 126: feedback request unit
127: calculation matrix generation unit 128: code verification unit
129: authentication completion unit 130: information reply request unit
131: encryption event generation unit 132: seed code generation unit
133: encryption unit 134: text message sending unit
135: encrypted information transmission unit
10: first electronic terminal
11: first member
100: virtual currency quote information server
101: Operation server of the first public charge collection agency
20: second electronic terminal
21: second member

Claims (12)

가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버에 있어서,
상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있는 식별 정보 저장부;
상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있는 회원 데이터베이스;
상기 복수의 회원들 중 제1 회원의 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인하는 확인부;
사전 설정된 가상 통화 시세 정보 서버에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 갱신 처리부;
상기 제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 a payment service providing server for providing a public utility bill payment service using virtual currency,
an identification information storage unit storing server identification information for an operation server of each of a plurality of public charge collection agencies for which a prior partnership for providing the public charge payment service has been completed;
a member database in which member identification information of each of the plurality of members subscribed to the public utility bill payment service and information on the holding amount of virtual currency of each of the plurality of members are stored in correspondence with each other;
When the member identification information of the first member is received from the first electronic terminal of the first member among the plurality of members, the first public charge charged by the first public charge collection agency among the plurality of public charge collection agencies is received. When a payment processing request using the virtual currency is received, member authentication is performed to determine whether the first member is a member subscribed to the utility bill payment service, and then a member of the first member is recorded in the member database. a confirmation unit confirming information about the amount of virtual currency held by the first member stored in correspondence with the identification information;
After accessing a preset virtual currency quote information server to obtain current quote information on the virtual currency, the virtual currency holding amount of the first member stored in the member database based on the current quote information on the virtual currency an update processing unit for updating information on the amount of virtual currency held by the first member stored in the member database by deducting an amount of virtual currency corresponding to the market price of the first public utility bill from ;
When the information on the amount of virtual currency held by the first member is updated, the first public charge is collected based on the first server identification information for the operating server of the first public charge collection institution stored in the identification information storage unit. A payment processing completion message for transmitting a payment processing completion message indicating that the payment processing for the first utility bill of the first member has been completed to the operation server of the first public charge collection institution by accessing the operation server of the institution. transmission unit;
When the transmission of the payment processing completion message to the operation server of the first public utility charge collection institution is completed, a payment completion message indicating that payment processing using the virtual currency for the first utility bill has been completed, to the first electronic terminal. a payment completion message transmission unit for transmitting;
When the payment completion message is transmitted to the first electronic terminal, it is determined whether the amount of the first public utility charge is less than the amount of the public utility charge charged in the immediately preceding round of the current round in which the first public charge is charged. If it is confirmed that the reduction has been confirmed, the date at which the mileage accumulation information and the mileage accumulation information are generated after generating mileage accumulation information indicating that cash equivalent mileage of a preset amount has been accumulated for the first member. a mileage accumulation processing unit that stores information in correspondence with member identification information of the first member in the member database;
When a conversion request instructing conversion of the cash equivalent mileage accumulated for the first member to the virtual currency is received from the first electronic terminal, it is stored in correspondence with the member identification information of the first member in the member database. an accumulated amount confirmation unit that confirms an accumulated amount of cash equivalent mileage accumulated for the first member by checking mileage accumulation information;
After accessing the virtual currency quote information server to obtain current quote information on the virtual currency, the virtual currency holding amount of the first member stored in the member database based on the current quote information on the virtual currency a mileage converting unit for updating information on the amount of virtual currency held by the first member stored in the member database by increasing the amount of virtual currency corresponding to the market price by the cumulative amount in and
When the information on the amount of virtual currency held by the first member is updated, a conversion completion message indicating that the cash equivalent mileage accumulated for the first member has been converted into the virtual currency is transmitted to the first electronic terminal. Completion message transmission part
A payment service providing server that includes a.
삭제delete 제1항에 있어서,
상기 확인부는
상기 제1 전자 단말과 사전 공유하고 있는 n(n은 2이상의 자연수임)개의 열벡터들 - 상기 n개의 열벡터들 각각은 1 x n 크기를 갖는 열벡터로서, 상기 n개의 열벡터들 각각을 구성하는 n개의 성분들 중 사전 지정된 어느 하나의 열에 위치하는 성분은 1로 지정되어 있고, 나머지 열에 위치하는 성분들은 0으로 지정되어 있으며, 상기 n개의 열벡터 각각에는 0 이상 n-1 이하의 서로 다른 정수가 고유 번호로 하나씩 할당되어 있음 - 이 저장되어 있는 열벡터 저장부;
상기 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 수행하기 위한 인증 이벤트를 발생시키는 인증 이벤트 발생부;
상기 인증 이벤트가 발생되면, 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출하는 산출부;
상기 제1 연산 값이 산출되면, 상기 열벡터 저장부에 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출한 후, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 결합 행렬을 생성하는 결합 행렬 생성부;
상기 결합 행렬이 생성되면, n-1개의 인증 코드들과 (n-1)2개의 더미(dummy) 코드들을 랜덤하게 생성하는 랜덤 코드 생성부;
상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 생성되면, 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들을 상기 제1 전자 단말로 전송하면서, 상기 제1 전자 단말로 피드백 행렬의 전송을 요청하는 피드백 요청부;
상기 제1 전자 단말로부터 상기 피드백 행렬의 전송 요청에 대응하여, 제1 피드백 행렬 - 상기 제1 피드백 행렬은, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각이 상기 n-1개의 인증 코드들로 하나씩 치환되고, 0이 지정되어 있는 (n-1)2개의 성분들 각각이 상기 (n-1)2개의 더미 코드들로 하나씩 치환되어 생성된, (n-1) x n 크기를 갖는 행렬임 - 이 수신되면, 상기 제1 피드백 행렬과 상기 결합 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 제1 연산 행렬을 생성하는 연산 행렬 생성부;
상기 제1 연산 행렬이 생성되면, 상기 제1 연산 행렬을 구성하는 성분들 중 0이 아닌 성분들인 제1 성분들을 추출한 후, 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는지 여부를 확인하는 코드 확인부; 및
상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는 것으로 확인되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는 것으로 인증 처리를 완료하는 인증 완료부
를 포함하는 결제 서비스 제공 서버.
According to claim 1,
The verification part
n (n is a natural number equal to or greater than 2) column vectors previously shared with the first electronic terminal - each of the n column vectors has a size of 1 x n, and constitutes each of the n column vectors Among the n components of the column, a component located in any one pre-designated column is designated as 1, and components located in the remaining columns are designated as 0, and each of the n column vectors has a different Integers are assigned one by one as a unique number - a column vector storage unit in which is stored;
When a request for payment processing using the virtual currency for the first utility bill is received from the first electronic terminal while the member identification information of the first member is received, the first member subscribes to the utility bill payment service. an authentication event generating unit generating an authentication event to perform member authentication on whether or not the registered member is correct;
When the authentication event occurs, obtaining a date value for the current time when the authentication event occurred, and calculating a first calculation value by performing a modulo operation with n as a divisor for the date value calculation unit;
When the first operation value is calculated, the remaining n-1 column vectors excluding the column vector to which the first operation value is assigned as a unique number among the n column vectors stored in the column vector storage unit are extracted. Then, the n-1 column vectors are sequentially combined in descending order of the unique numbers assigned to the n-1 column vectors to generate a coupling matrix having a size of (n-1) xn. wealth;
When the combination matrix is generated, a random code generator for randomly generating n-1 authentication codes and (n-1) two dummy codes;
When the n-1 authentication codes and the (n-1) 2 dummy codes are generated, the n-1 authentication codes and the (n-1) 2 dummy codes are transmitted to the first electronic terminal. a feedback requesting unit requesting transmission of a feedback matrix to the first electronic terminal while doing so;
In response to a request for transmission of the feedback matrix from the first electronic terminal, a first feedback matrix—in the first feedback matrix, 1 of [(n−1) xn] components constituting the coupling matrix is designated Each of the n-1 components in the above are substituted with the n-1 authentication codes, and each of the (n-1) two components to which 0 is designated is replaced with the (n-1) two dummy codes. If a matrix having a size of (n-1) xn, generated by permuting one by one, is received, an operation of generating a first operation matrix by calculating a Hadamard product between the first feedback matrix and the coupling matrix matrix generator;
When the first calculation matrix is generated, after extracting first components that are non-zero components among the components constituting the first calculation matrix, whether the first components match all of the n-1 authentication codes. Code checking unit for checking; and
If it is confirmed that the first components match all of the n-1 authentication codes, an authentication completion unit that completes an authentication process that the first member is a member subscribed to the utility bill payment service.
A payment service providing server that includes a.
제3항에 있어서,
상기 제1 전자 단말은
상기 제1 전자 단말의 메모리 상에 상기 n개의 열벡터들을 사전 저장하고 있고, 상기 결제 서비스 제공 서버로부터 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출한 후, 상기 제1 전자 단말에 사전 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출하고, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로, 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 상기 결합 행렬을 생성한 후, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각을 상기 n-1개의 인증 코드들로 하나씩 치환하고, 0이 지정되어 있는 (n-1)2개의 성분들 각각을 상기 (n-1)2개의 더미 코드들로 하나씩 치환함으로써, (n-1) x n 크기를 갖는 상기 제1 피드백 행렬을 생성하여 상기 결제 서비스 제공 서버로 전송하는 것을 특징으로 하는 결제 서비스 제공 서버.
According to claim 3,
The first electronic terminal is
The n column vectors are pre-stored in the memory of the first electronic terminal, and the n-1 authentication codes and the (n-1) 2 dummy codes are received from the payment service providing server. When a request to transmit a feedback matrix is received, a date value for the current point in time is obtained, and a modulo operation with n as a divisor is performed on the date value to calculate the first operation value, and then the first operation value is calculated. Among the n column vectors pre-stored in the electronic terminal, n-1 column vectors other than the column vector to which the first operation value is assigned as a unique number are extracted, and the n-1 column vectors are [(n- 1) Each of the n-1 components to which 1 is designated among xn] components is replaced with the n-1 authentication codes, and each of the (n-1) two components to which 0 is designated is replaced. The payment service providing server of claim 1 , wherein the first feedback matrix having a size of (n−1) xn is generated by substituting the (n−1) two dummy codes one by one and transmitted to the payment service providing server.
제1항에 있어서,
상기 복수의 회원들 중 제2 회원의 제2 전자 단말로부터, 상기 제2 회원의 상기 제1 공공 요금 수납 기관에 대한 현재 시점에서의 공공 요금의 발생 액수에 대한 정보를 조회하여 전송할 것을 요청하는 정보 조회 명령이 수신되면, 상기 제2 전자 단말로 상기 제2 회원에 대한 개인 정보를 전송할 것을 요청하고, 상기 제2 전자 단말로부터 상기 제2 회원의 개인 정보가 수신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 상기 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기간의 운영 서버로, 상기 제2 회원에 대한 개인 정보를 전송하면서, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보를 조회하여 회신할 것을 요청하는 정보 회신 명령을 전송하는 정보 회신 요청부;
상기 제1 공공 요금 수납 기관의 운영 서버로부터, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보로서, 제1 발생 액수 정보가 수신되면, 상기 제1 발생 액수 정보를 암호화하여 상기 제2 전자 단말로 전송하기 위한 암호화 전송 이벤트를 발생시키는 암호화 이벤트 발생부;
상기 암호화 전송 이벤트가 발생되면, t(t는 2이상의 자연수임)자릿수의 일회용 인증 번호를 랜덤하게 생성한 후, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 시드(seed) 코드를 생성하는 시드 코드 생성부;
상기 시드 코드가 생성되면, 사전 설정된 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 해시 값을 생성한 후 상기 해시 값으로 상기 제1 발생 액수 정보를 암호화하는 암호화부;
상기 제2 전자 단말로, 상기 제2 회원의 본인 명의의 휴대폰 번호를 전송할 것을 요청하는 휴대폰 번호 요청 메시지를 전송한 후, 상기 제2 전자 단말로부터 제1 휴대폰 번호가 수신되면, 상기 제1 휴대폰 번호를 수신측으로 하여, 상기 일회용 인증 번호를 상기 제2 전자 단말에 입력할 것을 지시하는 내용이 포함된 문자 메시지를 발송하는 문자 메시지 발송부; 및
상기 문자 메시지가 발송되면, 상기 제2 전자 단말로, 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수를 전송하는 암호화 정보 전송부
를 더 포함하고,
상기 제2 전자 단말은
상기 결제 서비스 제공 서버로부터 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수가 수신되고, 상기 제2 회원에 의해, 상기 제1 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 일회용 인증 번호가 상기 제2 전자 단말 상에 입력되면, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 상기 시드 코드를 생성하고, 상기 결제 서비스 제공 서버로부터 수신된 상기 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 해시 값을 생성한 후, 상기 해시 값을 이용하여 상기 암호화된 제1 발생 액수 정보를 복호화하는 것을 특징으로 하는 결제 서비스 제공 서버.
According to claim 1,
Information requesting to inquire and transmit information on the amount of public utility bills incurred for the first utility bill collection institution of the second member from the second electronic terminal of the second member among the plurality of members at the current point in time. When an inquiry command is received, a request is made to transmit personal information about the second member to the second electronic terminal, and when the personal information of the second member is received from the second electronic terminal, the identification information is stored in the storage unit. Based on the first server identification information for the operation server of the first public charge collection institution, the operation server of the first public charge collection institution is accessed, and the operation server of the first public charge collection period is an information reply requesting unit which transmits an information reply command requesting to inquire about and reply to information about the amount of public utility bills of the second member at the current time while transmitting personal information about the second member;
When first generated amount information is received as information on the generated amount of public utility bills at the current time of the second member from the operation server of the first public charge collection institution, the first generated amount information is encrypted and the first generated amount information is encrypted. 2 an encryption event generating unit generating an encryption transmission event for transmission to an electronic terminal;
When the encryption transmission event occurs, a one-time authentication number of t (t is a natural number of 2 or more) is randomly generated, and then modulo-2 is generated for each of the t numbers constituting the one-time authentication number. 2) a seed code generation unit configured to generate a t-bit seed code by configuring the result value when the operation is performed into a bit string;
an encryption unit generating a hash value by applying the seed code to a preset hash function as an input when the seed code is generated, and then encrypting the first occurrence amount information with the hash value;
After transmitting a mobile phone number request message requesting transmission of the mobile phone number in the name of the second member to the second electronic terminal, when the first mobile phone number is received from the second electronic terminal, the first mobile phone number a text message sending unit for sending a text message including content instructing input of the one-time authentication number to the second electronic terminal, to a receiving side; and
When the text message is sent, an encryption information transmitter for transmitting the hash function together with the encrypted first generated amount information to the second electronic terminal.
Including more,
The second electronic terminal
The hash function is received together with the encrypted first generated amount information from the payment service providing server, and the one-time included in the text message received by the second member with the first mobile phone number as the receiver. When an authentication number is input on the second electronic terminal, a result value obtained by performing a modulo-2 operation on each of t numbers constituting the one-time authentication number is configured as a bit string, thereby After generating a seed code, generating the hash value by applying the seed code as an input to the hash function received from the payment service providing server, and then decrypting the encrypted first generated amount information using the hash value A payment service providing server, characterized in that for doing.
가상 통화를 이용한 공공 요금 결제 서비스를 제공하기 위한 결제 서비스 제공 서버의 동작 방법에 있어서,
상기 공공 요금 결제 서비스를 제공하기 위한 사전 제휴가 완료된 복수의 공공 요금 수납 기관들 각각의 운영 서버에 대한 서버 식별 정보가 저장되어 있는 식별 정보 저장부를 유지하는 단계;
상기 공공 요금 결제 서비스에 가입된 복수의 회원들 각각의 회원 식별 정보와 상기 복수의 회원들 각각의 가상 통화 보유량에 대한 정보가 서로 대응되어 저장되어 있는 회원 데이터베이스를 유지하는 단계;
상기 복수의 회원들 중 제1 회원의 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 복수의 공공 요금 수납 기관들 중 제1 공공 요금 수납 기관에서 청구된 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 진행한 후, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인하는 단계;
사전 설정된 가상 통화 시세 정보 서버에 접속하여 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 제1 공공 요금만큼의 시세에 해당되는 가상 통화량을 차감함으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 단계;
상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기관의 운영 서버로, 상기 제1 회원의 상기 제1 공공 요금에 대한 납부 처리가 완료되었음을 지시하는 납부 처리 완료 메시지를 전송하는 단계;
상기 제1 공공 요금 수납 기관의 운영 서버로 상기 납부 처리 완료 메시지가 전송 완료되면, 상기 제1 전자 단말로, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리가 완료되었음을 지시하는 결제 완료 메시지를 전송하는 단계;
상기 제1 전자 단말로 상기 결제 완료 메시지가 전송 완료되면, 상기 제1 공공 요금의 액수가, 상기 제1 공공 요금이 부과된 당해 회차의 바로 이전 회차에 부과된 공공 요금의 액수보다 감소되었는지 여부를 확인하여, 감소된 것으로 확인된 경우, 상기 제1 회원에 대해 사전 설정된 액수의 현금성 마일리지가 적립되었음을 지시하는 마일리지 적립 정보를 생성한 후, 상기 마일리지 적립 정보와 상기 마일리지 적립 정보가 생성된 시점의 일자 정보를, 상기 회원 데이터베이스 상의 상기 제1 회원의 회원 식별 정보에 대응시켜 저장하는 단계;
상기 제1 전자 단말로부터, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지를 상기 가상 통화로 전환할 것을 지시하는 전환 요청이 수신되면, 상기 회원 데이터베이스 상에서 상기 제1 회원의 회원 식별 정보에 대응되어 저장되어 있는 마일리지 적립 정보를 확인함으로써, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지에 대한 누적 액수를 확인하는 단계;
상기 가상 통화 시세 정보 서버에 접속하여, 상기 가상 통화에 대한 현재 시세 정보를 획득한 후, 상기 가상 통화에 대한 현재 시제 정보를 기초로, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에서 상기 누적 액수만큼의 시세에 해당되는 가상 통화량을 증가시킴으로써, 상기 회원 데이터베이스에 저장되어 있는 상기 제1 회원의 가상 통화 보유량에 대한 정보를 갱신하는 단계; 및
상기 제1 회원의 가상 통화 보유량에 대한 정보가 갱신되면, 상기 제1 전자 단말로, 상기 제1 회원에 대해서 적립되어 있는 현금성 마일리지가 상기 가상 통화로 전환 완료되었음을 지시하는 전환 완료 메시지를 전송하는 단계
를 포함하는 결제 서비스 제공 서버의 동작 방법.
A method of operating a payment service providing server for providing a public utility bill payment service using virtual currency,
maintaining an identification information storage unit in which server identification information for each operation server of a plurality of public charge collection agencies for which a prior partnership for providing the public charge payment service is completed is stored;
Maintaining a member database in which member identification information of each of the plurality of members subscribed to the public utility bill payment service and information on the holding amount of virtual currency of each of the plurality of members are stored in correspondence with each other;
When the member identification information of the first member is received from the first electronic terminal of the first member among the plurality of members, the first public charge charged by the first public charge collection agency among the plurality of public charge collection agencies is received. When a payment processing request using the virtual currency is received, member authentication is performed to determine whether the first member is a member subscribed to the utility bill payment service, and then a member of the first member is recorded in the member database. checking information about the amount of virtual currency held by the first member, which is stored in correspondence with the identification information;
After accessing a preset virtual currency quote information server to obtain current quote information on the virtual currency, the virtual currency holding amount of the first member stored in the member database based on the current quote information on the virtual currency updating information about an amount of virtual currency held by the first member stored in the member database by deducting an amount of virtual currency corresponding to the market price of the first public utility bill from ;
When the information on the amount of virtual currency held by the first member is updated, the first public charge is collected based on the first server identification information for the operating server of the first public charge collection institution stored in the identification information storage unit. Accessing an operation server of the institution, and transmitting a payment processing completion message indicating that payment processing for the first utility bill of the first member has been completed to the operation server of the first utility bill collection institution;
When the transmission of the payment processing completion message to the operation server of the first public utility charge collection institution is completed, a payment completion message indicating that payment processing using the virtual currency for the first utility bill has been completed, to the first electronic terminal. Transmitting;
When the payment completion message is transmitted to the first electronic terminal, it is determined whether the amount of the first public utility charge is less than the amount of the public utility charge charged in the immediately preceding round of the current round in which the first public charge is charged. If it is confirmed that the reduction has been confirmed, the date at which the mileage accumulation information and the mileage accumulation information are generated after generating mileage accumulation information indicating that cash equivalent mileage of a preset amount has been accumulated for the first member. storing information corresponding to member identification information of the first member in the member database;
When a conversion request instructing conversion of the cash equivalent mileage accumulated for the first member to the virtual currency is received from the first electronic terminal, it is stored in correspondence with the member identification information of the first member in the member database. checking an accumulated amount of cash equivalent mileage accumulated for the first member by checking mileage accumulation information;
After accessing the virtual currency quote information server to obtain current quote information on the virtual currency, the virtual currency holding amount of the first member stored in the member database based on the current quote information on the virtual currency updating information about an amount of virtual currency held by the first member stored in the member database by increasing an amount of virtual currency corresponding to the market price by the cumulative amount in ; and
Transmitting, to the first electronic terminal, a conversion completion message indicating that the cash equivalent mileage accumulated for the first member has been converted into the virtual currency when the information on the amount of virtual currency held by the first member is updated.
A method of operating a payment service providing server comprising a.
삭제delete 제6항에 있어서,
상기 제1 회원의 가상 통화 보유량에 대한 정보를 확인하는 단계는
상기 제1 전자 단말과 사전 공유하고 있는 n(n은 2이상의 자연수임)개의 열벡터들 - 상기 n개의 열벡터들 각각은 1 x n 크기를 갖는 열벡터로서, 상기 n개의 열벡터들 각각을 구성하는 n개의 성분들 중 사전 지정된 어느 하나의 열에 위치하는 성분은 1로 지정되어 있고, 나머지 열에 위치하는 성분들은 0으로 지정되어 있으며, 상기 n개의 열벡터 각각에는 0 이상 n-1 이하의 서로 다른 정수가 고유 번호로 하나씩 할당되어 있음 - 이 저장되어 있는 열벡터 저장부를 유지하는 단계;
상기 제1 전자 단말로부터, 상기 제1 회원의 회원 식별 정보가 수신되면서, 상기 제1 공공 요금에 대한 상기 가상 통화를 이용한 결제 처리 요청이 수신되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는지 여부에 대한 회원 인증을 수행하기 위한 인증 이벤트를 발생시키는 단계;
상기 인증 이벤트가 발생되면, 상기 인증 이벤트가 발생된 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값을 산출하는 단계;
상기 제1 연산 값이 산출되면, 상기 열벡터 저장부에 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출한 후, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 결합 행렬을 생성하는 단계;
상기 결합 행렬이 생성되면, n-1개의 인증 코드들과 (n-1)2개의 더미(dummy) 코드들을 랜덤하게 생성하는 단계;
상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 생성되면, 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들을 상기 제1 전자 단말로 전송하면서, 상기 제1 전자 단말로 피드백 행렬의 전송을 요청하는 단계;
상기 제1 전자 단말로부터 상기 피드백 행렬의 전송 요청에 대응하여, 제1 피드백 행렬 - 상기 제1 피드백 행렬은, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각이 상기 n-1개의 인증 코드들로 하나씩 치환되고, 0이 지정되어 있는 (n-1)2개의 성분들 각각이 상기 (n-1)2개의 더미 코드들로 하나씩 치환되어 생성된, (n-1) x n 크기를 갖는 행렬임 - 이 수신되면, 상기 제1 피드백 행렬과 상기 결합 행렬 간의 아다마르 곱(Hadamard product)을 연산하여 제1 연산 행렬을 생성하는 단계;
상기 제1 연산 행렬이 생성되면, 상기 제1 연산 행렬을 구성하는 성분들 중 0이 아닌 성분들인 제1 성분들을 추출한 후, 상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는지 여부를 확인하는 단계; 및
상기 제1 성분들이 상기 n-1개의 인증 코드들과 모두 일치하는 것으로 확인되면, 상기 제1 회원이 상기 공공 요금 결제 서비스에 가입된 회원이 맞는 것으로 인증 처리를 완료하는 단계
를 포함하는 결제 서비스 제공 서버의 동작 방법.
According to claim 6,
The step of checking information on the amount of virtual currency held by the first member
n (n is a natural number equal to or greater than 2) column vectors previously shared with the first electronic terminal - each of the n column vectors has a size of 1 x n, and constitutes each of the n column vectors Among the n components of the column, a component located in any one pre-designated column is designated as 1, and components located in the remaining columns are designated as 0, and each of the n column vectors has a different Integers are allocated one by one as unique numbers - maintaining a column vector storage unit in which integers are stored;
When a request for payment processing using the virtual currency for the first utility bill is received from the first electronic terminal while the member identification information of the first member is received, the first member subscribes to the utility bill payment service. Generating an authentication event to perform member authentication on whether or not the registered member is correct;
When the authentication event occurs, obtaining a date value for the current time when the authentication event occurred, and calculating a first calculation value by performing a modulo operation with n as a divisor for the date value step;
When the first operation value is calculated, the remaining n-1 column vectors excluding the column vector to which the first operation value is assigned as a unique number among the n column vectors stored in the column vector storage unit are extracted. and then sequentially combining the n-1 column vectors in descending order of unique numbers assigned to the n-1 column vectors to generate a combination matrix having a size of (n-1)xn;
If the combination matrix is generated, randomly generating n-1 authentication codes and (n-1) 2 dummy codes;
When the n-1 authentication codes and the (n-1) 2 dummy codes are generated, the n-1 authentication codes and the (n-1) 2 dummy codes are transmitted to the first electronic terminal. while requesting transmission of a feedback matrix to the first electronic terminal;
In response to a request for transmission of the feedback matrix from the first electronic terminal, a first feedback matrix—in the first feedback matrix, 1 of [(n−1) xn] components constituting the coupling matrix is designated Each of the n-1 components in the above are substituted with the n-1 authentication codes, and each of the (n-1) two components to which 0 is designated is replaced with the (n-1) two dummy codes. Generating a first operation matrix by calculating a Hadamard product between the first feedback matrix and the coupling matrix when a matrix having a size of (n-1) xn, generated by permuting one by one, is received ;
When the first calculation matrix is generated, after extracting first components that are non-zero components among the components constituting the first calculation matrix, whether the first components match all of the n-1 authentication codes. Checking; and
If it is confirmed that the first components match all of the n-1 authentication codes, completing authentication processing that the first member is a member subscribed to the utility bill payment service.
A method of operating a payment service providing server comprising a.
제8항에 있어서,
상기 제1 전자 단말은
상기 제1 전자 단말의 메모리 상에 상기 n개의 열벡터들을 사전 저장하고 있고, 상기 결제 서비스 제공 서버로부터 상기 n-1개의 인증 코드들과 상기 (n-1)2개의 더미 코드들이 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되면, 상기 현재 시점에 대한 날짜 값을 획득하고, 상기 날짜 값에 대해 n을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값을 산출한 후, 상기 제1 전자 단말에 사전 저장되어 있는 상기 n개의 열벡터들 중 상기 제1 연산 값이 고유 번호로 할당되어 있는 열벡터를 제외한 나머지 n-1개의 열벡터들을 추출하고, 상기 n-1개의 열벡터들에 할당된 고유 번호의 크기가 작은 순으로, 상기 n-1개의 열벡터들을 순차적으로 결합하여 (n-1) x n 크기를 갖는 상기 결합 행렬을 생성한 후, 상기 결합 행렬을 구성하는 [(n-1) x n]개의 성분들 중 1이 지정되어 있는 n-1개의 성분들 각각을 상기 n-1개의 인증 코드들로 하나씩 치환하고, 0이 지정되어 있는 (n-1)2개의 성분들 각각을 상기 (n-1)2개의 더미 코드들로 하나씩 치환함으로써, (n-1) x n 크기를 갖는 상기 제1 피드백 행렬을 생성하여 상기 결제 서비스 제공 서버로 전송하는 것을 특징으로 하는 결제 서비스 제공 서버의 동작 방법.
According to claim 8,
The first electronic terminal is
The n column vectors are pre-stored in the memory of the first electronic terminal, and the n-1 authentication codes and the (n-1) 2 dummy codes are received from the payment service providing server. When a request to transmit a feedback matrix is received, a date value for the current point in time is obtained, and a modulo operation with n as a divisor is performed on the date value to calculate the first operation value, and then the first operation value is calculated. Among the n column vectors pre-stored in the electronic terminal, n-1 column vectors other than the column vector to which the first operation value is assigned as a unique number are extracted, and the n-1 column vectors are [(n- 1) Each of the n-1 components to which 1 is designated among xn] components is replaced with the n-1 authentication codes, and each of the (n-1) two components to which 0 is designated is replaced. Wherein the payment service providing server generates the first feedback matrix having a size of (n-1) xn by substituting the (n-1) two dummy codes one by one and transmits the first feedback matrix to the payment service providing server. how it works.
제6항에 있어서,
상기 복수의 회원들 중 제2 회원의 제2 전자 단말로부터, 상기 제2 회원의 상기 제1 공공 요금 수납 기관에 대한 현재 시점에서의 공공 요금의 발생 액수에 대한 정보를 조회하여 전송할 것을 요청하는 정보 조회 명령이 수신되면, 상기 제2 전자 단말로 상기 제2 회원에 대한 개인 정보를 전송할 것을 요청하고, 상기 제2 전자 단말로부터 상기 제2 회원의 개인 정보가 수신되면, 상기 식별 정보 저장부에 저장되어 있는 상기 제1 공공 요금 수납 기관의 운영 서버에 대한 상기 제1 서버 식별 정보를 기초로 상기 제1 공공 요금 수납 기관의 운영 서버에 접속하여, 상기 제1 공공 요금 수납 기간의 운영 서버로, 상기 제2 회원에 대한 개인 정보를 전송하면서, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보를 조회하여 회신할 것을 요청하는 정보 회신 명령을 전송하는 단계;
상기 제1 공공 요금 수납 기관의 운영 서버로부터, 상기 제2 회원의 현재 시점의 공공 요금의 발생 액수에 대한 정보로서, 제1 발생 액수 정보가 수신되면, 상기 제1 발생 액수 정보를 암호화하여 상기 제2 전자 단말로 전송하기 위한 암호화 전송 이벤트를 발생시키는 단계;
상기 암호화 전송 이벤트가 발생되면, t(t는 2이상의 자연수임)자릿수의 일회용 인증 번호를 랜덤하게 생성한 후, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 시드(seed) 코드를 생성하는 단계;
상기 시드 코드가 생성되면, 사전 설정된 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 해시 값을 생성한 후 상기 해시 값으로 상기 제1 발생 액수 정보를 암호화하는 단계;
상기 제2 전자 단말로, 상기 제2 회원의 본인 명의의 휴대폰 번호를 전송할 것을 요청하는 휴대폰 번호 요청 메시지를 전송한 후, 상기 제2 전자 단말로부터 제1 휴대폰 번호가 수신되면, 상기 제1 휴대폰 번호를 수신측으로 하여, 상기 일회용 인증 번호를 상기 제2 전자 단말에 입력할 것을 지시하는 내용이 포함된 문자 메시지를 발송하는 단계; 및
상기 문자 메시지가 발송되면, 상기 제2 전자 단말로, 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수를 전송하는 단계
를 더 포함하고,
상기 제2 전자 단말은
상기 결제 서비스 제공 서버로부터 상기 암호화된 제1 발생 액수 정보와 함께 상기 해시 함수가 수신되고, 상기 제2 회원에 의해, 상기 제1 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 일회용 인증 번호가 상기 제2 전자 단말 상에 입력되면, 상기 일회용 인증 번호를 구성하는 t개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값을 비트열로 구성함으로써, t비트의 상기 시드 코드를 생성하고, 상기 결제 서비스 제공 서버로부터 수신된 상기 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 해시 값을 생성한 후, 상기 해시 값을 이용하여 상기 암호화된 제1 발생 액수 정보를 복호화하는 것을 특징으로 하는 결제 서비스 제공 서버의 동작 방법.
According to claim 6,
Information requesting to inquire and transmit information on the amount of public utility bills incurred for the first utility bill collection institution of the second member from the second electronic terminal of the second member among the plurality of members at the current point in time. When an inquiry command is received, a request is made to transmit personal information about the second member to the second electronic terminal, and when the personal information of the second member is received from the second electronic terminal, the identification information is stored in the storage unit. Based on the first server identification information for the operation server of the first public charge collection institution, the operation server of the first public charge collection institution is accessed, and the operation server of the first public charge collection period is Transmitting an information reply command requesting to inquire and reply to information about the amount of public utility bills of the second member at the current time while transmitting personal information about the second member;
When first generated amount information is received as information on the generated amount of public utility bills at the current time of the second member from the operation server of the first public charge collection institution, the first generated amount information is encrypted and the first generated amount information is encrypted. 2 generating an encryption transmission event for transmission to an electronic terminal;
When the encryption transmission event occurs, a one-time authentication number of t (t is a natural number of 2 or more) is randomly generated, and then modulo-2 is generated for each of the t numbers constituting the one-time authentication number. 2) generating a t-bit seed code by configuring the resultant value when the operation is performed as a bit string;
if the seed code is generated, generating a hash value by applying the seed code as an input to a preset hash function and then encrypting the first accrued amount information with the hash value;
After transmitting a mobile phone number request message requesting transmission of the mobile phone number in the name of the second member to the second electronic terminal, when the first mobile phone number is received from the second electronic terminal, the first mobile phone number sending a text message including content instructing the second electronic terminal to input the one-time authentication number to the receiving side; and
Transmitting the hash function together with the encrypted first occurrence amount information to the second electronic terminal when the text message is sent
Including more,
The second electronic terminal
The hash function is received together with the encrypted first generated amount information from the payment service providing server, and the one-time included in the text message received by the second member with the first mobile phone number as the receiver. When an authentication number is input on the second electronic terminal, a result value obtained by performing a modulo-2 operation on each of t numbers constituting the one-time authentication number is configured as a bit string, thereby After generating a seed code, generating the hash value by applying the seed code as an input to the hash function received from the payment service providing server, and then decrypting the encrypted first generated amount information using the hash value A method of operating a payment service providing server, characterized in that for doing.
제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.Claim 6, claim 8, claim 9 or claim 10 of any one of the method through a combination with a computer to execute a computer program recorded on a computer-readable recording medium. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 6, 8, 9 or 10 through a combination with a computer.
KR1020220019005A 2022-02-14 2022-02-14 Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof KR102518790B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220019005A KR102518790B1 (en) 2022-02-14 2022-02-14 Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220019005A KR102518790B1 (en) 2022-02-14 2022-02-14 Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof

Publications (1)

Publication Number Publication Date
KR102518790B1 true KR102518790B1 (en) 2023-04-05

Family

ID=85884823

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220019005A KR102518790B1 (en) 2022-02-14 2022-02-14 Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof

Country Status (1)

Country Link
KR (1) KR102518790B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102162344B1 (en) * 2019-06-10 2020-10-06 주식회사 다날핀테크 Payment service apparatus for supporting payment processing based on virtual currency to an online merchant and operating method thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102162344B1 (en) * 2019-06-10 2020-10-06 주식회사 다날핀테크 Payment service apparatus for supporting payment processing based on virtual currency to an online merchant and operating method thereof

Similar Documents

Publication Publication Date Title
US20220278982A1 (en) Provisioning transferable access tokens
US6003765A (en) Electronic cash implementing method with a surveillance institution, and user apparatus and surveillance institution apparatus for implementing the same
US5926548A (en) Method and apparatus for implementing hierarchical electronic cash
CN108090761A (en) Block chain token method of payment based on credible two-dimension code
US20120330846A1 (en) Dynamic electronic money
CN109615351A (en) SIM card, terminating machine and digital currency managing system
CN109697365A (en) Information processing method and block chain node, electronic equipment
JP2019525326A (en) Digital asset distribution with transaction devices
CN103370688A (en) System and method for generating a strong multi factor personalized server key from a simple user password
US20230093581A1 (en) Method for directly transferring electronic coin data sets between terminals, payment system, currency system and monitoring unit
CN111062717B (en) Data transfer processing method, device and computer readable storage medium
KR102518790B1 (en) Payment service providing server for providing utility bill payment service using virtual currency, and operating method thereof
JP2019521442A (en) Method and device to facilitate payment entity expansion
JP4410038B2 (en) Electronic ticket sales / transfer method, server device, program, and recording medium
JP2002329152A (en) Method for undoing operation remotely performed on server station
KR20200061263A (en) Method and server for paying cards based on blockchain network
KR102571365B1 (en) Postpaid membership service operation server and operating method thereof
CN115186301A (en) Information processing method, information processing device, computer equipment and computer readable storage medium
KR102497521B1 (en) Artificial intelligence-based gold trading platform server for recommending the optimal gold exchange to a user for selling gold and the operating method thereof
KR102060976B1 (en) Method for dealing a digital currency with block chain matching QR(or BAR) code
KR102389289B1 (en) Gold sales server for supporting purchase of gold with cashable points, and the operating method thereof
KR102302942B1 (en) Transaction management server that enables product purchase by linking with product vending machines based on gold and digital gold token, and operating method thereof
KR102389298B1 (en) Gold asset management server for supporting members to deposit and withdraw their gold which is purchased with cashable points, and the operating method thereof
KR20190113243A (en) Payment processing agent service apparatus and operating method thereof
KR102374232B1 (en) Cloud-based payment guarantee transaction management server using digital gold tokens and operating method thereof

Legal Events

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