KR20230138864A - 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치 - Google Patents

송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치 Download PDF

Info

Publication number
KR20230138864A
KR20230138864A KR1020220136091A KR20220136091A KR20230138864A KR 20230138864 A KR20230138864 A KR 20230138864A KR 1020220136091 A KR1020220136091 A KR 1020220136091A KR 20220136091 A KR20220136091 A KR 20220136091A KR 20230138864 A KR20230138864 A KR 20230138864A
Authority
KR
South Korea
Prior art keywords
virtual asset
recipient
name
sender
address
Prior art date
Application number
KR1020220136091A
Other languages
English (en)
Inventor
정민석
Original Assignee
두나무 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 두나무 주식회사 filed Critical 두나무 주식회사
Priority to EP23163061.7A priority Critical patent/EP4250205A1/en
Priority to US18/188,254 priority patent/US20230306542A1/en
Priority to PCT/KR2023/003817 priority patent/WO2023182814A1/en
Publication of KR20230138864A publication Critical patent/KR20230138864A/ko
Priority to KR1020230159577A priority patent/KR20230162911A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • 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
    • 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/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • 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/42Confirmation, e.g. check or permission by the legal debtor of payment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • 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)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

전자 장치의 수취인 검증 방법이 제공된다. 수취인 검증 방법은 송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하는 단계; 상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계; 상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하는 단계; 및 상기 검증 요청 메시지에 기초하여 수행된, 상기 송금인과 상기 수취인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하는 단계를 포함할 수 있고, 상기 검증 결과 정보에 기초하여 상기 송금인의 송금 가산자산주소로부터 상기 수취 가상자산주소로의 상기 가상 자산의 이체의 수행 여부가 결정될 수 있다.

Description

송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치{A METHOD OF VERIFYING ORIGINATIOR OR BENEFICIARY AND AN ELECTRONIC DEVICE PERFORMING THEREOF}
본 명세서는 가상 자산을 이체하는데 있어서, 송금인 또는 수취인을 검증하기 위한 방법 및 이를 수행하는 전자 장치에 관한 것이다.
블록체인 기술의 발달에 따라, 비트코인으로 대표되는 가상 자산은 국경이 없는 자산으로서 인정되고 있으며, 더불어 사용 가능한 장소(예를 들어, 오프라인 매장, 온라인 매장 등)도 증가하고 있다. 가상 자산은 실물 자산과 교환되기도 하며, 그 가치가 수시로 변동되기도 한다. 또한, 가상 자산의 종류도 다양해지고 있고, 가상 자산의 거래를 대행하고 관리하는 가상자산사업자도 증가하고 있다.
관련하여, KR 10-2022-0025634 A 건 등의 선행문헌들을 참조할 수 있다.
본 명세서에서 개시된 실시 예들은 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치를 제공하고자 한다. 보다 구체적으로는, 가상 자산을 이체하는데 있어서, 가상 자산 이전 시의 정보제공 의무사항을 준수하고 개인 정보를 기술적으로 보호하면서 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치를 제공하는 것을 목적으로 한다.
본 실시 예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시 예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
본 명세서의 일 측면은 송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하는 단계; 상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계; 상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하는 단계; 및 상기 검증 요청 메시지에 기초하여 수행된, 상기 송금인과 상기 수취인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하는 단계를 포함하고, 상기 검증 결과 정보에 기초하여 상기 송금인의 송금 가산자산주소로부터 상기 수취 가상자산주소로의 상기 가상 자산의 이체의 수행 여부가 결정되는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 요청 메시지는, 검증 대상의 타입을 나타내는 값; 상기 가상 자산의 타입을 나타내는 값; 상기 가상 자산의 타입에 따른 보조 가상자산주소; 또는 상기 송금인의 성명의 해시 값 세트 또는 상기 송금인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트(hash salt) 값 중 적어도 하나를 더 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 결과 정보는, 상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보; 상기 송금인의 성명의 해시 값 세트 및 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는 상기 수취인이 상기 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 응답 메시지가 상기 수취인이 상기 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 상기 가상 자산의 이체가 수행되는 것으로 결정되고, 상기 응답 메시지가 상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보, 상기 송금인의 성명의 해시 값 세트 및 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 하나를 포함하는 경우, 상기 가상 자산의 이체가 수행되는 것이 차단되는 것으로 결정되는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계는, 상기 송금인의 성명 데이터에서 공백을 제거하는 단계를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계는, 상기 송금인의 성명 데이터에 포함된 문자의 대소문자(letter case)를 설정된 케이스로 변환하는 단계를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 송금인의 성명의 해시 값 세트는, 이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제1 해시 값; 상기 성 및 상기 이름 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제2 해시 값; 또는 상기 성, 상기 이름 및 적어도 하나의 중간 이름(middle name)을 포함하는 복수의 엔트리들로 구성된 송금인의 성명 정보를 기초로 생성된 제3 해시 값 중 적어도 하나를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 결과 정보는, 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트에 포함된 어느 하나의 해시 값이 상기 제1 해시 값, 상기 제2 해시 값 또는 상기 제3 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 상기 송금인의 성명의 해시 값 세트 및 상기 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트는, 이름 및 성 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제4 해시 값; 상기 성 및 상기 이름 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제5 해시 값; 또는 상기 성, 상기 이름 및 적어도 하나의 중간 이름을 포함하는 복수의 엔트리들로 구성된 수취인의 성명 정보를 기초로 생성된 제6 해시 값 중 적어도 하나를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 결과 정보는, 상기 송금인의 성명의 해시 값 세트에 포함된 어느 하나의 해시 값이 상기 제4 해시 값, 상기 제5 해시 값 또는 상기 제6 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 상기 송금인의 성명의 해시 값 세트 및 상기 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함하는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 수취 가상자산주소는, 상기 수취 가상자산주소에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 상기 수취 서버의 데이터베이스에 상기 수취 가상자산주소와 일치하는 주소가 있는지 확인되는, 수취인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 수취 가상자산주소는, 상기 수취 가상자산주소에 포함된 설정된 프리픽스(prefix)를 제거하고, 상기 수취 서버의 데이터베이스에 상기 수취 가상자산주소와 일치하는 주소가 있는지 확인되는, 수취인 검증 방법을 제공할 수 있다.
본 명세서의 다른 측면은 이체된 가상 자산 및 수취 가상자산주소를 식별하는 단계; 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 상기 수취인의 생년월일 데이터를 식별하는 단계; 상기 수취인의 성명 데이터를 기초로 생성된 상기 수취인의 성명의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 상기 수취인의 생년월일의 해시 값 세트를 식별하는 단계; 상기 수취인의 성명의 해시 값 세트, 상기 수취인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신하는 단계; 및 상기 검증 요청 메시지에 기초하여 수행된, 상기 수취인과 상기 송금인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 상기 송금 서버로부터 수신하는 단계를 포함하는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 요청 메시지는, 상기 가상 자산의 이체에 대응하는 트랜잭션 식별 값; 검증 대상의 타입을 나타내는 값; 상기 가상 자산의 타입을 나타내는 값; 상기 가상 자산의 타입에 따른 보조 가상자산주소; 또는 상기 수취인의 성명의 해시 값 세트 또는 상기 수취인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트 값 중 적어도 하나를 더 포함하는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 결과 정보는, 상기 트랜잭션 식별 값과 일치하는 값이 상기 송금 서버와 관련된 트랜잭션 식별 값 중에서 확인되지 않았다는 것을 나타내는 정보; 상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 송금 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보; 상기 수취인의 성명의 해시 값 세트 및 상기 수취 가상자산주소 또는 상기 트랜잭션 식별 값에 대응하는 송금인의 성명 데이터를 기초로 생성된 송금인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 수취인의 생년월일의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 송금인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는 상기 송금인이 상기 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함하는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 검증 결과 정보가 상기 송금인이 상기 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 상기 트랜잭션 식별 값에 기초하여, 설정된 시간마다 상기 가상 자산을 상기 수취 가상자산주소의 잔고에 반영하는 단계를 더 포함하는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 트랜잭션 식별 값은, 상기 트랜잭션 식별 값에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 트랜잭션 식별 값의 타입이 식별자 타입 및 해시 값 타입을 포함하는 경우, 상기 해시 값 타입의 트랜잭션 식별 값을 이용하여, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법을 제공할 수 있다.
또한, 본 명세서의 일 실시 예에서 상기 트랜잭션 식별 값은, 선행 제로(leading zero) 값을 포함하는 트랜잭션 식별 값을 이용하여, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법을 제공할 수 있다.
본 명세서의 다른 측면은 하나 이상의 프로세서; 및 상기 하나 이상의 프로세서에 의해 실행되는 하나 이상의 명령을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로세서는, 상기 하나 이상의 명령을 실행함으로써, 송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하고, 상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하고, 상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하고, 상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하도록 설정되고, 상기 검증 결과 정보에 기초하여 상기 송금인의 송금 가산자산주소로부터 상기 수취 가상자산주소로 상기 가상 자산의 이체의 수행 여부가 결정되는, 전자 장치를 제공할 수 있다.
본 명세서의 다른 측면은 하나 이상의 프로세서; 및 상기 하나 이상의 프로세서에 의해 실행되는 하나 이상의 명령을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로세서는, 상기 하나 이상의 명령을 실행함으로써, 이체된 가상 자산 및 수취 가상자산주소를 식별하고, 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 상기 수취인의 생년월일 데이터를 식별하고, 상기 수취인의 성명 데이터를 기초로 생성된 상기 수취인의 성명의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 상기 수취인의 생년월일의 해시 값 세트를 식별하고, 상기 수취인의 성명의 해시 값 세트, 상기 수취인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신하고, 상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 송금 서버로부터 수신하도록 설정된, 전자 장치를 제공할 수 있다.
본 명세서의 또 다른 측면은 전자 장치에 의해 수행되는 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체를 제공할 수 있다.
기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
제안되는 실시 예에 따를 경우 다음과 같은 효과를 하나 혹은 그 이상 기대할 수 있다.
본 명세서의 실시 예에 의할 경우, 가상 자산을 이체하는데 있어서, 가상 자산 이전 시의 정보제공 의무사항을 준수하고 개인 정보를 기술적으로 보호하면서 효과적으로 송금인 또는 수취인을 검증할 수 있다.
또한, 본 명세서의 실시 예에 의할 경우, 송금인 또는 수취인을 검증하는 과정에 있어서, 각국의 현지 이름의 실정을 반영 가능한 표준 명명(naming) 규칙의 부재로서 발생할 수 있는, 의도되지 않은 불일치가 기술적으로 차단될 수 있다.
또한, 본 명세서의 실시 예에 의할 경우, 송금인 또는 수취인을 검증하는 과정에 있어서, 가상 자산의 타입을 나타내는 값 또는 심볼에 관한 표준 이름의 부재로서 발생할 수 있는, 의도되지 않은 불일치가 기술적으로 차단될 수 있다.
발명의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당해 기술 분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시 예에 따른 시스템을 나타낸다.
도 2a 내지 도 2b는 일 실시 예에 따라 전자 장치가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다.
도 3a 내지 도 3b는 일 실시 예에 따라 전자 장치가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다.
도 4a 내지 도 4b는 일 실시 예에 따라 전자 장치가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다.
도 5a 내지 도 5b는 일 실시 예에 따른 검증 요청 메시지의 일 예를 도시한다.
도 6은 일 실시 예에 따른 응답 메시지의 일 예를 도시한다.
도 7a 내지 도 7h는 일 실시 예에 따라 가상자산사업자 서버가 성명의 해시 값이 일치하는 여부를 확인하는 과정을 설명하기 위한 도면이다.
도 8은 일 실시 예에 따라 전자 장치가 수취인을 검증하는 과정을 설명하기 위한 도면이다.
도 9는 일 실시 예에 따라 전자 장치가 송금인을 검증하는 과정을 설명하기 위한 도면이다.
도 10은 일 실시 예에 따라 전자 장치가 수취인을 검증하는 과정을 설명하기 위한 도면이다.
도 11은 일 실시 예에 따라 전자 장치가 송금인을 검증하는 과정을 설명하기 위한 도면이다.
도 12는 일 실시 예에 따른 전자 장치의 수취인(beneficiary) 검증 방법의 흐름도를 나타낸다.
도 13은 실시 예에 따른 전자 장치의 송금인(originator) 검증 방법의 흐름도를 나타낸다.
도 14는 일 실시 예에 따른 전자 장치의 블록도를 나타낸다.
실시 예들에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 명세서의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
명세서 전체에서 기재된 "a, b, 및 c 중 적어도 하나"의 표현은, 'a 단독', 'b 단독', 'c 단독', 'a 및 b', 'a 및 c', 'b 및 c', 또는 'a, b, 및 c 모두'를 포괄할 수 있다.
이하에서 언급되는 "단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말은 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, IMT(international mobile telecommunication), CDMA(code division multiple access), W-CDMA(W-code division multiple access), LTE(long term evolution) 등의 통신 기반 단말, 스마트폰, 태블릿 PC 등과 같은 모든 종류의 핸드헬드(handheld) 기반의 무선 통신 장치를 포함할 수 있다.
아래에서는 첨부한 도면을 참고하여 본 명세서에 개시된 실시 예에 대하여 본 명세서에 개시된 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 명세서에서 개시된 발명들은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
본 명세서에서, 가상 자산(virtual asset)은 경제적 가치를 지닌 것으로서 전자적으로 거래 또는 이전될 수 있는 전자적 증표 또는 그에 관한 일체의 권리를 의미한다. 다만, 가상 자산은 디지털 자산, 디지털 화폐, 가상 화폐 또는 암호 화폐 등으로 지칭될 수 있으며, 전술한 바에 한정되지 않는다.
본 명세서에서, 가상자산사업자(virtual asset service provider, VASP)는 가상 자산과 관련하여 다음 1)부터 6)까지의 어느 하나에 해당하는 행위를 영업으로 하는 자를 의미한다.
1) 가상 자산을 매도, 매수하는 행위.
2) 가상 자산을 다른 가상 자산과 교환하는 행위.
3) 가상 자산을 이전하는 행위 중 대통령령으로 정하는 행위.
4) 가상 자산을 보관 또는 관리하는 행위.
5) 1) 및 2)의 행위를 중개, 알선하거나 대행하는 행위.
6) 그 밖에 가상 자산과 관련하여 자금세탁행위와 공중협박자금조달행위에 이용될 가능성이 높은 것으로서 대통령령으로 정하는 행위.
다만, 가상자산사업자가 가상 자산과 관련하여 영업으로 할 수 있는 행위는 전술한 바에 한정되지 않는다.
본 명세서에서, 가상자산주소는 가상 자산의 송신 기록 및 보관 내역의 관리를 위해 전자적으로 생성시킨 고유식별번호를 의미한다. 다만, 가상자산주소는 지갑 주소, 전자지갑 주소 또는 가상 자산 지갑 주소 등으로 지칭될 수 있으며, 전술한 바에 한정되지 않는다.
본 명세서에서, 보조 가상자산주소는 사용자의 계정을 구별하기 위한 고유식별변호로서, 가상 자산의 타입에 따라 존재 여부가 상이할 수 있다. 즉, 보조 가상자산주소는 동일한 사용자의 계정에 대하여 서로 상이한 가상 자산 타입을 구별하기 위해 사용될 수 있다. 예를 들어, 사용자가 소유하는 가상 자산의 타입에 따라, 상기 사용자의 하나의 계정에 대응하는 하나 이상의 보조 가상자산주소가 존재할 수 있다. 다만, 보조 가상자산주소는 2차 주소, 데스티네이션 태그(destination tag), 태그, 메모 또는 메시지 등으로 지칭될 수 있으며, 전술한 바에 한정되지 않는다.
이하에서는 도면을 참조하여 본 명세서의 실시 예들을 상세히 설명한다.
도 1은 일 실시 예에 따른 시스템을 나타낸다.
도 1을 참조하면, 시스템은 전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140), 사용자 단말(160) 및 네트워크(180) 중에서 적어도 하나를 포함할 수 있다. 한편, 도 1에 도시된 시스템은 본 실시 예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 1에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시 예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
전자 장치(100)는 가상 자산을 이체하는 송금인 또는 가상 자산을 받는 수취인을 검증하는 데 있어서 중개자 역할을 수행할 수 있다. 예를 들어, 전자 장치(100)는 성명(full name)의 해시 값, 생년월일(date of birth, DOB)의 해시 값 및 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취 가상자산사업자 서버(120) 또는 송금 가상자산사업자 서버(140)로 송신할 수 있다. 또는, 전자 장치(100)는 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 수취 가상자산사업자 서버(120) 또는 송금 가상자산사업자 서버(140)로부터 수신하고 송금 가상자산사업자 서버(140) 또는 수취 가상자산사업자 서버(120)로 전달할 수 있다.
한편, 전자 장치(100)는 가상자산사업자 내부에 존재하는 엔클레이브(enclave) 서버 또는 가상자산사업자 외부에 존재하는 API(application programming interface) 서버 중 적어도 하나를 포함할 수 있다. 또는, 전자 장치(100)는 가상자산사업자 내부에 존재하는 통합된 서버를 포함할 수 있으나, 이에 한정되지 않는다. 또는, 전자 장치(100)는 수취 가상자산사업자 서버(120) 또는 송신 가산자산사업자 서버(140) 중 어느 하나와 결합된 하나의 개체로 구현될 수도 있다.
수취(beneficiary) 가상자산사업자 서버(120)는 수취 가상자산사업자 내부에 존재하는 서버로서, 가상 자산의 매도, 매수 또는 이체 등과 관련된 서비스를 사용자에게 제공할 수 있다. 예를 들어, 가상 자산의 이체 서비스와 관련하여, 수취 가상자산사업자 서버(120)는 송금인에 대한 검증 요청을 전자 장치(100)로 송신하거나, 수취인에 대한 검증 결과를 전자 장치(100)로 송신할 수 있다.
송금(ordering) 가상자산사업자 서버(140)는 송금 가상자산사업자 내부에 존재하는 서버로서, 가상 자산의 매도, 매수 또는 이체 등과 관련된 서비스를 사용자에게 제공할 수 있다. 예를 들어, 가상 자산의 이체 서비스와 관련하여, 송금 가상자산사업자 서버(140)는 수취인에 대한 검증 요청을 전자 장치(100)로 송신하거나, 송금인에 대한 검증 결과를 전자 장치(100)로 송신할 수 있다.
다만, 수취 가상자산사업자 서버(120)는 수취 가상자산사업자 외부에 별도로 존재하는 서버 또는 엔티티(entity)를 나타낼 수 있고, 송금 가상자산사업자 서버(140)는 송금 가상자산사업자 외부에 별도로 존재하는 서버 또는 엔티티를 나타낼 수 있다.
사용자 단말(160)은 사용자들 각각이 사용하는 단말로서, 사용자들은 각자의 사용자 단말(160)을 이용하여 수취 가상자산사업자 또는 수취 가상자산사업자에 의해 제공되는 서비스에 네트워크(180)를 통하여 접근할 수 있다. 예를 들어, 사용자들은 각자의 사용자 단말(160)에 설치된 어플리케이션을 이용하여 가상 자산을 매도, 매수 또는 이체할 수 있다.
전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140) 및 사용자 단말(160)은 네트워크(180) 내에서 서로 통신할 수 있다. 네트워크(180)는 근거리 통신망(local area network, LAN), 광역 통신망(wide area network, WAN), 부가가치 통신망(value added network, VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy, BLE), 지그비, WFD(Wi-Fi direct), UWB(ultra wideband), 적외선 통신(infrared data association, IrDA), NFC(near field communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.
도 2a 내지 도 2b는 일 실시 예에 따라 전자 장치(100)가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금 가상자산사업자의 계정(예컨대, 송금인의 계정)과 가상 자산을 받는 수취 가상자산사업자의 계정(예컨대, 수취인의 계정)은 동일한 인물에 대응할 수 있다.
도 2a는 일 실시 예에 따라 전자 장치(100)가 수취인(beneficiary)을 검증하는 과정을 도시한다. 이때, 전자 장치(100)는 송금 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)와 물리적으로 결합된 하나의 개체로서 송금 가산자산사업자 내부에 구현될 수 있고, 이 경우 전자 장치(100) 및 송금 가상자산사업자 서버(140)는 기능적 또는 논리적으로 구분되는 것으로 이해될 수 있다. 다른 예를 들어, 전자 장치(100) 및 송금 가상자산사업자 서버(140)는 송금 가상자산사업자 내부에 존재하지만, 기능적 또는 논리적으로 구별될 뿐만 아니라 물리적으로도 구별된 개체들로 구현될 수도 있다.
S200 단계에서, 전자 장치(100)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 사용자가 이체하고자 하는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보 또는 수취 가상자산주소 중 적어도 일부를 사용자 단말(160)로부터 수신할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 송금인의 성명 데이터 또는 송금인의 생년월일 데이터 중 적어도 일부를 전자 장치(100)로 송신할 수 있다. 이때, 송금 가상자산사업자 서버(140)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 전자 장치(100)로 송신할 수 있다.
S205 단계에서, 전자 장치(100)는 일 실시 예에 따라 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)로부터 수신한 송금인의 성명 데이터 및 송금인의 생년월일 데이터 각각을 해싱(hashing)하여, 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 생성할 수 있다. 이때, 전자 장치(100)는 해시 함수 또는 해시 알고리즘으로서, KECCAK-256 해시 알고리즘을 사용할 수 있으나, 사용되는 해시 알고리즘은 전술한 바에 한정되지 않는다.
한편, 전자 장치(100)가 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 식별한다는 것은, 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 확인하거나 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 획득하는 것으로 이해될 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 송금인의 성명 데이터를 해싱하여 송금인의 성명의 하나 이상의 해시 값을 포함하는 송금인의 성명의 해시 값 세트를 생성할 수 있다. 예를 들어, 전자 장치(100)는 이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 해싱하여 해시 값을 생성하거나, 성 및 이름 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 해싱하여 해시 값을 생성할 수 있다. 또는, 전자 장치(100)는 국문으로 된 송금인의 성명을 해싱하여 해시 값을 생성하거나, 영문으로 된 송금인의 성명을 해싱하여 해시 값을 생성할 수 있다. 이와 관련해서는 도 7a 내지 도 7d를 참조하여 자세히 설명하기로 한다.
S210 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 송금 가상자산사업자에 관한 정보, 수취 가상자산주소, 송금인의 성명의 해시 값, 송금인의 생년월일의 해시 값 또는 해시 솔트(hash salt) 값 중 적어도 일부를 포함하는 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 이때, 전자 장치(100)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 수취 가상자산사업자 서버(120)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S215 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 수취인의 생년월일 데이터를 식별하고, 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다. 이후, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 송금인의 성명의 해시 값이 수취인의 성명의 해시 값과 일치하는지 여부 및 전자 장치(100)로부터 수신한 송금인의 생년월일의 해시 값이 수취인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 수취 가상자산사업자 서버(120)가 전자 장치(100)로부터 보조 가상자산주소도 함께 수신한 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 또는 보조 가상자산주소에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 이에 따라, 대소문자를 구분함으로써 발생될 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 포함된 설정된 프리픽스(prefix)를 제거하고, 수취 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 포함된 bitcoincash 또는 ecash와 같은 프리픽스를 제거하고, 수취 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 이에 따라, 가상자산사업자의 정책에 따라 프리픽스를 제거하고 저장하는 가상자산사업자와 프리픽스를 포함하여 저장하는 가산자산사업자 간에 발생할 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취인의 성명 데이터 및 수취인의 생년월일 데이터를 식별할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 수취인의 생년월일 데이터를 식별할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 송금인의 하나 이상의 성명의 해시 값과 수취인의 하나 이상의 성명의 해시 값의 일치하는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 하나의 송금인의 성명의 해시 값을 수신하고, 하나의 송금인의 성명의 해시 값이 하나의 수취인의 성명의 해시 값과 일치하는지 여부를 확인할 수 있다. 또는, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 송금인의 하나 이상의 성명의 해시 값들을 포함하는 송금인의 성명의 해시 값 세트를 수신하고, 하나의 수취인의 성명의 해시 값이 송금인의 하나 이상의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 하나의 송금인의 성명의 해시 값을 수신하고, 하나의 송금인의 성명의 해시 값이 수취인의 하나 이상의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 이와 관련해서는 도 7a 내지 도 7d를 참조하여 자세히 설명하기로 한다.
일 실시 예에 따르면, 수취인을 검증하는 방법은 생년월일 이외의 정보의 해시 값에 기초하여 수행될 수 있다. 예를 들어, 전자 장치(100)는 송금인의 휴대폰 번호 데이터에 기초하여 생성된 송금인의 휴대폰 번호의 해시 값을 식별하고, 수취 가상자산사업자 서버(120)는 수취인의 휴대폰 번호의 해시 값과의 일치 여부를 확인할 수 있다. 다만, 수취인을 검증하는데 사용될 수 있는 정보의 타입은 전술한 바에 한정되지 않는다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 가상 자산의 타입과 무관하게 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 검증 요청 메시지에 포함된 가상 자산의 타입을 나타내는 값이 LUNA2이고, 수취 가상자산사업자 서버(120)가 보유한 가상 자산의 타입이 LUNA 등으로 LUNA2와 일치하는 값이 존재하지 않을 수 있다. 이 경우, 수취 가상자산사업자 서버(120)는 가상 자산의 타입을 나타내는 값과 일치하는 값이 있는지 여부를 확인하는 과정을 생략하고, 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 이에 따라, 가상 자산의 타입을 나타내는 값 또는 심볼에 관한 표준 이름의 부재로서 발생할 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
S220 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 송금인의 성명의 해시 값 및 수취인의 성명의 해시 값 간의 불일치에 대한 정보, 송금인의 생년월일의 해시 값 및 수취인의 생년월일의 해시 값 간의 불일치에 대한 정보 또는 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S225 단계에서, 전자 장치(100)는 일 실시 예에 따라 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)로부터 수신한 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S230 단계에서, 송금 가상자산사업자 서버(140)는 수신한 응답 메시지에 포함된 검증 결과 정보에 기초하여 가상 자산을 수취 가상자산주소로 이체할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 송금 가상자산사업자 서버(140)는 사용자 단말(160)로부터 수신한 정보에 따라 가상 자산을 수취 가상자산주소로 이체할 수 있다. 또는, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 이외의 정보(예컨대, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 송금인의 성명의 해시 값 및 수취인의 성명의 해시 값 간의 불일치에 대한 정보 또는 송금인의 생년월일의 해시 값 및 수취인의 생년월일의 해시 값 간의 불일치에 대한 정보 중 적어도 일부)를 포함하는 경우, 송금 가상자산사업자 서버(140)는 가상 자산을 수취 가상자산주소로 이체하지 않을 수 있다.
도 2b는 일 실시 예에 따라 전자 장치(100)가 송금인(originator)을 검증하는 과정을 도시한다. 이때, 전자 장치(100)는 수취 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)와 물리적으로 결합된 하나의 개체로서 수신 가산자산사업자 내부에 구현될 수 있고, 이 경우 전자 장치(100) 및 수취 가상자산사업자 서버(120)는 기능적 또는 논리적으로 구분되는 것으로 이해될 수 있다. 다른 예를 들어, 전자 장치(100) 및 수취 가상자산사업자 서버(120)는 수취 가상자산사업자 내부에 존재하지만, 기능적 또는 논리적으로 구별될 뿐만 아니라 물리적으로도 구별된 개체들로 구현될 수도 있다. 도 2b에 대한 설명에서, 도 2a에 대한 설명과 중복되는 내용은 간략히 설명하거나 생략하기로 한다.
S250 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 수취 가상자산주소로 이체된 가상 자산을 식별할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 송금 가상자산사업자 서버(140)가 수취 가상자산주소로 이체한 가상 자산 또는 예치금(deposit)을 식별할 수 있다. 다만, 수취 가상자산사업자 서버(120)는 송금인의 검증이 완료되기 전에는 수취인이 수취인의 계정을 통해 확인할 수 있는 수취인의 잔고 현황에는 상기 이체된 가상 자산을 반영하지 않을 수 있다.
S255 단계에서, 전자 장치(100)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명 데이터 또는 수취인의 생년월일 데이터 중 적어도 일부를 전자 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이때, 수취 가상자산사업자 서버(120)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 전자 장치(100)로 송신할 수 있다.
S260 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)로부터 수신한 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 수취인의 성명 데이터를 해싱하여 수취인의 성명의 하나 이상의 해시 값을 포함하는 수취인의 성명의 해시 값 세트를 생성할 수 있다. 예를 들어, 전자 장치(100)는 이름 및 성 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 해싱하여 해시 값을 생성하거나, 성 및 이름 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 해싱하여 해시 값을 생성할 수 있다. 또는, 전자 장치(100)는 국문으로 된 수취인의 성명을 해싱하여 해시 값을 생성하거나, 영문으로 된 수취인의 성명을 해싱하여 해시 값을 생성할 수 있다. 이와 관련해서는 도 7a 내지 도 7d를 참조하여 자세히 설명하기로 한다.
S265 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명의 해시 값, 수취인의 생년월일의 해시 값, 해시 솔트 값 또는 가상 자산의 이체에 대응하는 트랜잭션 식별 값 중 적어도 일부를 포함하는 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 이때, 전자 장치(100)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 송금 가상자산사업자 서버(140)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S270 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 수취인과 송금인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별하고, 송금인의 성명 데이터 및 송금인의 생년월일 데이터 각각을 해싱하여, 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 생성할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 수취인의 성명의 해시 값이 송금인의 성명의 해시 값과 일치하는지 여부 및 전자 장치(100)로부터 수신한 수취인의 생년월일의 해시 값이 송금인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 트랜잭션 식별 값과 일치하는 값이 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 이에 따라, 대소문자를 구분함으로써 발생될 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
일 실시 예에 따르면, 트랜잭션 식별 값의 타입이 식별자 타입 및 해시 값 타입을 포함하는 경우, 송금 가상자산사업자 서버(140)는 해시 값 타입의 트랜잭션 식별 값을 이용하여, 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 예를 들어, 식별자 타입의 트랜잭션 식별 값과 해시 값 타입의 트랜잭션 식별 값이 상이한 경우, 송금 가상자산사업자 서버(140)는 해시 값 타입의 트랜잭션 식별 값을 이용하여, 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 이에 따라, 검증을 요청하는 가상자산사업자와 검증을 수행하는 가산자산사업자 간에 발생할 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 선행 제로(leading zero) 값을 포함하는 트랜잭션 식별 값을 이용하여, 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 예를 들어, 트랜잭션의 식별 값이 0.0.15852-1648154322-083000000인 경우, 송금 가상자산사업자 서버(140)는 83000000를 포함하는 트랜잭션 식별 값을 이용하여, 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 이에 따라, 가상자산사업자의 정책에 따라 선행 제로 값을 제거하고 저장하는 가상자산사업자와 선행 제로 값을 포함하여 저장하는 가산자산사업자 간에 발생할 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 송금 가상자산사업자 서버(140)가 전자 장치(100)로부터 보조 가상자산주소도 함께 수신한 경우, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 트랜잭션 식별 값과 일치하는 값 및 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값 또는 수취 가상자산주소에 대응하는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 수취인의 하나 이상의 성명의 해시 값과 송금인의 하나 이상의 성명의 해시 값의 일치하는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 하나의 수취인의 성명의 해시 값을 수신하고, 하나의 수취인의 성명의 해시 값이 하나의 송금인의 성명의 해시 값과 일치하는지 여부를 확인할 수 있다. 또는, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수취인의 하나 이상의 성명의 해시 값들을 포함하는 수취인의 성명의 해시 값 세트를 수신하고, 하나의 송금인의 성명의 해시 값이 수취인의 하나 이상의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 하나의 수취인의 성명의 해시 값을 수신하고, 하나의 수취인의 성명의 해시 값이 송금인의 하나 이상의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 이와 관련해서는 도 7a 내지 도 7d를 참조하여 자세히 설명하기로 한다.
일 실시 예에 따르면, 송금인을 검증하는 방법은 생년월일 이외의 정보의 해시 값에 기초하여 수행될 수 있다. 예를 들어, 전자 장치(100)는 수취인의 휴대폰 번호 데이터에 기초하여 생성된 수취인의 휴대폰 번호의 해시 값을 식별하고, 송금 가상자산사업자 서버(140)는 송금인의 휴대폰 번호의 해시 값과의 일치 여부를 확인할 수 있다. 다만, 송금인을 검증하는데 사용될 수 있는 정보의 타입은 전술한 바에 한정되지 않는다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 가상 자산의 타입과 무관하게 수취인과 송금인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 검증 요청 메시지에 포함된 가상 자산의 타입을 나타내는 값이 LUNA이고, 송금 가상자산사업자 서버(140)가 보유한 가상 자산의 타입이 LUNA2 등으로 LUNA와 일치하는 값이 존재하지 않을 수 있다. 이 경우, 송금 가상자산사업자 서버(140)는 가상 자산의 타입을 나타내는 값과 일치하는 값이 있는지 여부를 확인하는 과정을 생략하고, 수취인과 송금인이 일치하는지 여부를 검증할 수 있다. 이에 따라, 가상 자산의 타입을 나타내는 값 또는 심볼에 관한 표준 이름의 부재로서 발생할 수 있는, 의도되지 않은 불일치가 차단되는 기술적 효과를 얻을 수 있다.
한편, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 트랜잭션 식별 값 또는 수취 가상자산주소가 아닌 송금 가상자산주소를 이용하여 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다. 예를 들어, S250 단계에서 수취 가상자산사업자 서버(120)는 이체된 가상 자산을 식별한 후, 송금 가상자산주소를 식별할 수 있다. S255 단계에서 수취 가상자산사업자 서버(120)는 송금 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 전자 장치(100)로 송신하고, S265 단계에서 전자 장치(100)는 송금 가상자산주소를 포함하는 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 송금 가상자산사업자 서버(140)는 수신한 송금 가상자산주소에 대응하는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다.
S275 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 트랜잭션 식별 값과 일치하는 값이 확인되지 않았다는 것을 나타내는 정보, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 수취인의 성명의 해시 값 및 송금인의 성명의 해시 값 간의 불일치에 대한 정보, 수취인의 생년월일의 해시 값 및 송금인의 생년월일의 해시 값 간의 불일치에 대한 정보 또는 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S280 단계에서, 전자 장치(100)는 일 실시 예에 따라 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)로부터 수신한 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다.
S285 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 응답 메시지에 포함된 검증 결과 정보에 기초하여, 수취인의 가상 자상 주소에 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 응답 메시지가 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 수취 가상자산사업자 서버(120)는 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다. 또는, 전자 장치(100)로부터 수신한 응답 메시지가 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 이외의 정보(예컨대, 트랜잭션 식별 값과 일치하는 값이 확인되지 않았다는 것을 나타내는 정보, 송금 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 송금인의 성명의 해시 값 및 수취인의 성명의 해시 값 간의 불일치에 대한 정보 또는 송금인의 생년월일의 해시 값 및 수취인의 생년월일의 해시 값 간의 불일치에 대한 정보 중 적어도 일부)를 포함하는 경우, 수취 가상자산사업자 서버(120)는 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영하지 않을 수 있다.
도 3a 내지 도 3b는 일 실시 예에 따라 전자 장치(100)가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다. 도 3a 내지 도 3b에 대한 설명에서 도 2a 내지 도 2b에 대한 설명과 중복되는 내용은 간략히 설명하거나 생략하기로 한다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금 가상자산사업자의 계정(예컨대, 송금인의 계정)과 가상 자산을 받는 수취 가상자산사업자의 계정(예컨대, 수취인의 계정)은 동일한 인물에 대응할 수 있다.
도 3a는 일 실시 예에 따라 전자 장치(100)가 수취인을 검증하는 과정을 도시한다. 이때, enclave 서버(102)는 송금 가상자산사업자 내부에 존재하는 서버로서 API 서버(104)와 통신할 수 있고, API 서버(104)는 송금 가상자산사업자 외부에 존재하는 서버로서 메시지 중재자 역할을 수행할 수 있다. 한편, 전자 장치(100)는 enclave 서버(102) 또는 API 서버(104)를 의미할 수 있다.
S300 단계에서, enclave 서버(102)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 사용자가 이체하고자 하는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보 또는 수취 가상자산주소 중 적어도 일부를 사용자 단말(160)로부터 수신할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 송금인의 성명 데이터 또는 송금인의 생년월일 데이터 중 적어도 일부를 enclave 서버(102)로 송신할 수 있다. 이때, 송금 가상자산사업자 서버(140)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 enclave 서버(102)로 송신할 수 있다.
S305 단계에서, enclave 서버(102)는 일 실시 예에 따라 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, enclave 서버(102)는 송금 가상자산사업자 서버(140)로부터 수신한 송금인의 성명 데이터 및 송금인의 생년월일 데이터 각각을 해싱하여, 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 생성할 수 있다.
S310 단계에서, enclave 서버(102)는 일 실시 예에 따라 수취인의 검증 요청 및 관련 정보를 API 서버(104)로 송신할 수 있다. 예를 들어, enclave 서버(102)는 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 송금인의 성명의 해시 값, 송금인의 생년월일의 해시 값 또는 해시 솔트 값 중 적어도 일부를 API 서버(104)로 송신할 수 있다. 이때, enclave 서버(102)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 API 서버(104)로 송신할 수 있다.
S315 단계에서, API 서버(104)는 일 실시 예에 따라 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, API 서버(104)는 API 접속 키(access key), 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 송금 가상자산사업자에 관한 정보, 수취 가상자산주소, 송금인의 성명의 해시 값, 송금인의 생년월일의 해시 값 또는 해시 솔트 값 중 적어도 일부를 포함하는 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 이때, API 서버(104)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 수취 가상자산사업자 서버(120)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S320 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 수취인의 생년월일 데이터를 식별하고, 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다. 이후, 수취 가상자산사업자 서버(120)는 API 서버(104)로부터 수신한 송금인의 성명의 해시 값이 수취인의 성명의 해시 값과 일치하는지 여부 및 API 서버(104)로부터 수신한 송금인의 생년월일의 해시 값이 수취인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다. 수취 가상자산사업자 서버(120)가 송금인과 수취인이 일치하는지 여부를 검증하는 보다 구체적인 동작은 도 2의 S215 단계와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
S325 단계에서, API 서버(104)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, API 서버(104)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 송금인의 성명의 해시 값 및 수취인의 성명의 해시 값 간의 불일치에 대한 정보, 송금인의 생년월일의 해시 값 및 수취인의 생년월일의 해시 값 간의 불일치에 대한 정보 또는 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S330 단계에서, API 서버(104)는 일 실시 예에 따라 응답 메시지를 enclave 서버(102)로 송신할 수 있다. 예를 들어, API 서버(104)는 수취 가상자산사업자 서버(120)로부터 수신한 응답 메시지를 enclave 서버(102)로 송신할 수 있다.
S335 단계에서, enclave 서버(102)는 일 실시 예에 따라 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, enclave 서버(102)는 API 서버(104)로부터 수신한 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S340 단계에서, 송금 가상자산사업자 서버(140)는 수신한 응답 메시지에 포함된 검증 결과 정보에 기초하여 가상 자산을 수취 가상자산주소로 이체할 수 있다. 예를 들어, enclave 서버(102)로부터 수신한 응답 메시지가 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 송금 가상자산사업자 서버(140)는 사용자 단말(160)로부터 수신한 정보에 따라 가상 자산을 수취 가상자산주소로 이체할 수 있다. 또는, enclave 서버(102)로부터 수신한 응답 메시지가 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 이외의 정보를 포함하는 경우, 송금 가상자산사업자 서버(140)는 가상 자산을 수취 가상자산주소로 이체하지 않을 수 있다.
도 3b는 일 실시 예에 따라 전자 장치(100)가 송금인을 검증하는 과정을 도시한다. 이때, enclave 서버(106)는 수취 가상자산사업자 내부에 존재하는 서버로서 API 서버(108)와 통신할 수 있고, API 서버(108)는 수취 가상자산사업자 외부에 존재하는 서버로서 메시지 중재자 역할을 수행할 수 있다. 한편, 전자 장치(100)는 enclave 서버(106) 또는 API 서버(108)를 의미할 수 있다.
S350 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 수취 가상자산주소로 이체된 가상 자산을 식별할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 송금 가상자산사업자 서버(140)가 수취 가상자산주소로 이체한 가상 자산 또는 예치금을 식별할 수 있다.
S355 단계에서, enclave 서버(106)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, enclave 서버(106)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명 데이터 또는 수취인의 생년월일 데이터 중 적어도 일부를 전자 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이때, 수취 가상자산사업자 서버(120)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 enclave 서버(106)로 송신할 수 있다.
S360 단계에서, enclave 서버(106)는 일 실시 예에 따라 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, enclave 서버(106)는 수취 가상자산사업자 서버(120)로부터 수신한 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다.
S365 단계에서, enclave 서버(106)는 일 실시 예에 따라 송금인의 검증 요청 및 관련 정보를 API 서버(108)로 송신할 수 있다. 예를 들어, enclave 서버(106)는 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명의 해시 값, 수취인의 생년월일의 해시 값, 해시 솔트 값 또는 가상 자산의 이체에 대응하는 트랜잭션 식별 값 중 적어도 일부를 API 서버(108)로 송신할 수 있다. 이때, enclave 서버(106)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 API 서버(108)로 송신할 수 있다.
S370 단계에서, API 서버(108)는 일 실시 예에 따라 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 API 접속 키, 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명의 해시 값, 수취인의 생년월일의 해시 값, 해시 솔트 값 또는 가상 자산의 이체에 대응하는 트랜잭션 식별 값 중 적어도 일부를 포함하는 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 이때, API 서버(108)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 송금 가상자산사업자 서버(140)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S375 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 수취인과 송금인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별하고, 송금인의 성명 데이터 및 송금인의 생년월일 데이터 각각을 해싱하여, 송금인의 성명의 해시 값 및 송금인의 생년월일의 해시 값을 생성할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 수취인의 성명의 해시 값이 송금인의 성명의 해시 값과 일치하는지 여부 및 전자 장치(100)로부터 수신한 수취인의 생년월일의 해시 값이 송금인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다. 송금 가상자산사업자 서버(140)가 수취인과 송금인이 일치하는지 여부를 검증하는 보다 구체적인 동작은 도 2의 S270 단계와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 트랜잭션 식별 값 또는 수취 가상자산주소가 아닌 송금 가상자산주소를 이용하여 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다. 예를 들어, S350 단계에서 수취 가상자산사업자 서버(120)는 이체된 가상 자산을 식별한 후, 송금 가상자산주소를 식별할 수 있다. S355 단계에서 수취 가상자산사업자 서버(120)는 송금 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 enclave 서버(106)로 송신하고, S365 단계에서 enclave 서버(106)는 송금 가상자산주소를 포함하는 관련 정보를 API 서버(108)로 송신할 수 있다. 송금 가상자산사업자 서버(140)는 API 서버(108)로부터 송금 가상자산주소를 포함하는 검증 요청 메시지를 수신하고, 수신한 송금 가상자산주소에 대응하는 송금인의 성명 데이터 및 송금인의 생년월일 데이터를 식별할 수 있다.
S380 단계에서, API 서버(108)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, API 서버(108)는 트랜잭션 식별 값과 일치하는 값이 확인되지 않았다는 것을 나타내는 정보, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 수취인의 성명의 해시 값 및 송금인의 성명의 해시 값 간의 불일치에 대한 정보, 수취인의 생년월일의 해시 값 및 송금인의 생년월일의 해시 값 간의 불일치에 대한 정보 또는 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S385 단계에서, API 서버(108)는 일 실시 예에 따라 응답 메시지를 enclave 서버(106)로 송신할 수 있다. 예를 들어, API 서버(108)는 송금 가상자산사업자 서버(140)로부터 수신한 응답 메시지를 enclave 서버(106)로 송신할 수 있다.
S390 단계에서, enclave 서버(106)는 일 실시 예에 따라 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, enclave 서버(106)는 API 서버(108)로부터 수신한 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다.
S395 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 응답 메시지에 포함된 검증 결과 정보에 기초하여, 수취인의 가상 자상 주소에 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, enclave 서버(106)로부터 수신한 응답 메시지가 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 수취 가상자산사업자 서버(120)는 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다. 또는, enclave 서버(106)로부터 수신한 응답 메시지가 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 이외의 정보를 포함하는 경우, 수취 가상자산사업자 서버(120)는 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영하지 않을 수 있다.
도 4a 내지 도 4b는 일 실시 예에 따라 전자 장치(100)가 수취인 또는 송금인을 검증하는 과정을 설명하기 위한 도면이다. 도 4a 내지 도 4b애 대한 설명에서 도 2a 내지 도 2b에 대한 설명과 중복되는 내용은 간략히 설명하거나 생략하기로 한다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 타인의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 상이할 수 있다.
도 4a는 일 실시 예에 따라 전자 장치(100)가 수취인을 검증하는 과정을 도시한다. 이때, 전자 장치(100)는 송금 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
S400 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 식별할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 사용자가 이체하고자 하는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명 데이터 또는 수취인의 생년월일 데이터 중 적어도 일부를 사용자 단말(160)로부터 수신할 수 있다.
S405 단계에서, 전자 장치(100)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명 데이터 또는 수취인의 생년월일 데이터 중 적어도 일부를 전자 장치(100)로 송신할 수 있다. 이때, 송금 가상자산사업자 서버(140)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 전자 장치(100)로 송신할 수 있다.
S410 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)로부터 수신한 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다.
S415 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 송금 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명의 해시 값, 수취인의 생년월일의 해시 값 또는 해시 솔트 값 중 적어도 일부를 포함하는 검증 요청 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 이때, 전자 장치(100)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 수취 가상자산사업자 서버(120)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S420 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 수취인이 일치하는지 여부를 검증할 수 있다. 보다 구체적으로, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 수취인(또는 제1 수취인)에 관한 해시 값과 수신 가상자상주소에 대응하는 수취인(또는 제2 수취인)에 관한 해시 값이 일치하는지 여부를 검증할 수 있다.
예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 확인하고, 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터 각각을 해싱하여, 제2 수취인의 성명의 해시 값 및 제2 수취인의 생년월일의 해시 값을 생성할 수 있다. 이후, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 제1 수취인의 성명의 해시 값이 제2 수취인의 성명의 해시 값과 일치하는지 여부 및 전자 장치(100)로부터 수신한 제1 수취인의 생년월일의 해시 값이 제2 수취인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 수취 가상자산사업자 서버(120)가 전자 장치(100)로부터 보조 가상자산주소도 함께 수신한 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 식별할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 식별할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 제1 수취인의 하나 이상의 성명의 해시 값과 제2 수취인의 하나 이상의 성명의 해시 값의 일치하는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 하나의 제1 수취인의 성명의 해시 값을 수신하고, 하나의 제1 수취인의 성명의 해시 값이 하나의 제2 수취인의 성명의 해시 값과 일치하는지 여부를 확인할 수 있다. 또는, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 제1 수취인의 복수의 성명의 해시 값들을 포함하는 제1 수취인의 성명의 해시 값 세트를 수신하고, 하나의 제2 수취인의 성명의 해시 값이 제1 수취인의 복수의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 하나의 제1 수취인의 성명의 해시 값을 수신하고, 하나의 제1 수취인의 성명의 해시 값이 제2 수취인의 복수의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 이와 관련해서는 도 7e 내지 도 7h를 참조하여 자세히 설명하기로 한다.
S425 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 수취인의 성명의 해시 값의 불일치에 대한 정보, 수취인의 생년월일의 해시 값의 불일치에 대한 정보 또는 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S430 단계에서, 전자 장치(100)는 일 실시 예에 따라 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)로부터 수신한 응답 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S435 단계에서, 송금 가상자산사업자 서버(140)는 수신한 응답 메시지에 포함된 검증 결과 정보에 기초하여 가상 자산을 수취 가상자산주소로 이체할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 송금 가상자산사업자 서버(140)는 사용자 단말(160)로부터 수신한 정보에 따라 가상 자산을 수취 가상자산주소로 이체할 수 있다. 또는, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보 이외의 정보를 포함하는 경우, 송금 가상자산사업자 서버(140)는 가상 자산을 수취 가상자산주소로 이체하지 않을 수 있다.
도 4b는 일 실시 예에 따라 전자 장치(100)가 수취인을 검증하는 과정을 도시한다. 이때, 전자 장치(100)는 수취 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
S450 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 수취 가상자산주소로 이체된 가상 자산을 식별할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 송금 가상자산사업자 서버(140)가 수취 가상자산주소로 이체한 가상 자산 또는 예치금을 식별할 수 있다.
S455 단계에서, 전자 장치(100)는 일 실시 예에 따라 가상 자산의 이체에 관한 정보를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명 데이터 또는 수취인의 생년월일 데이터 중 적어도 일부를 전자 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 이때, 수취 가상자산사업자 서버(120)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 전자 장치(100)로 송신할 수 있다.
S460 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 식별할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)로부터 수신한 수취인의 성명 데이터 및 수취인의 생년월일 데이터 각각을 해싱하여, 수취인의 성명의 해시 값 및 수취인의 생년월일의 해시 값을 생성할 수 있다.
S465 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 검증 요청 메시지의 식별 값, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산사업자에 관한 정보, 수취 가상자산주소, 수취인의 성명의 해시 값, 수취인의 생년월일의 해시 값, 해시 솔트 값 또는 가상 자산의 이체에 대응하는 트랜잭션 식별 값 중 적어도 일부를 포함하는 검증 요청 메시지를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 이때, 전자 장치(100)는 가상 자산의 타입에 따라 보조 가상자산주소도 함께 수취 가상자산사업자 서버(120)로 송신할 수 있다. 검증 요청 메시지에 포함된 값들의 구체적인 내용과 관련해서는 도 5a 내지 도 5b를 참조하여 자세히 설명하기로 한다.
S470 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 수취인이 일치하는지 여부를 검증할 수 있다. 보다 구체적으로, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 수취인(또는 제1 수취인)에 관한 해시 값과 수신 가상자상주소 또는 트랜잭션 식별 값에 대응하는 수취인(또는 제2 수취인)에 관한 해시 값이 일치하는지 여부를 검증할 수 있다.
예를 들어, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 식별하고, 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터 각각을 해싱하여, 제2 수취인의 성명의 해시 값 및 제2 수취인의 생년월일의 해시 값을 생성할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 제1 수취인의 성명의 해시 값이 제2 수취인의 성명의 해시 값과 일치하는지 여부 및 전자 장치(100)로부터 수신한 제1 수취인의 생년월일의 해시 값이 제2 수취인의 생년월일의 해시 값과 일치하는지 여부를 확인할 수 있다.
이때, 송금 가상자산사업자 서버(140)는 가상 자산을 이체하기 전 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 사용자 단말(160)로부터 수신하여 데이터베이스에 저장할 수 있다. 보다 구체적으로, 사용자 단말(160)은 송금인이 가상 자산을 이체하고자 하는 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 생년월일 데이터를 기입하는 사용자 입력을 획득할 수 있고, 획득한 수취인의 성명 데이터 및 생년월일 데이터를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 수신한 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 데이터베이스에 저장하고, 이를 해싱하여 제2 수취인의 성명의 해시 값 및 제2 수취인의 생년월일의 해시 값을 생성할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값과 일치하는 값이 있는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 트랜잭션 식별 값과 일치하는 값이 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 송금 가상자산사업자 서버(140)가 전자 장치(100)로부터 보조 가상자산주소도 함께 수신한 경우, 송금 가상자산사업자 서버(140)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 식별할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 트랜잭션 식별 값과 일치하는 값 및 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값 또는 수취 가상자산주소에 대응하는 제2 수취인의 성명 데이터 및 제2 수취인의 생년월일 데이터를 식별할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 제1 수취인의 하나 이상의 성명의 해시 값과 제2 수취인의 하나 이상의 성명의 해시 값의 일치하는지 여부를 확인할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 하나의 제1 수취인의 성명의 해시 값을 수신하고, 하나의 제1 수취인의 성명의 해시 값이 하나의 제2 수취인의 성명의 해시 값과 일치하는지 여부를 확인할 수 있다. 또는, 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 제1 수취인의 복수의 성명의 해시 값들을 포함하는 제1 수취인의 성명의 해시 값 세트를 수신하고, 하나의 제2 수취인의 성명의 해시 값이 제1 수취인의 복수의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 송금 가상자산사업자 서버(140)는 전자 장치(100)로부터 하나의 제1 수취인의 성명의 해시 값을 수신하고, 하나의 제1 수취인의 성명의 해시 값이 제2 수취인의 복수의 성명의 해시 값들 중 어느 하나와 일치하는지 여부를 확인할 수 있다. 이와 관련해서는 도 7e 내지 도 7h를 참조하여 자세히 설명하기로 한다.
S475 단계에서, 전자 장치(100)는 일 실시 예에 따라 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 트랜잭션 식별 값과 일치하는 값이 확인되지 않았다는 것을 나타내는 정보, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 정보, 수취인의 성명의 해시 값의 불일치에 대한 정보, 수취인의 생년월일의 해시 값의 불일치에 대한 정보 또는 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보 중 적어도 일부를 포함하는, 응답 메시지를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 이와 관련해서는 도 6을 참조하여 자세히 설명하기로 한다.
S480 단계에서, 전자 장치(100)는 일 실시 예에 따라 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)로부터 수신한 응답 메시지를 수취 가상자산사업자 서버(120)로 송신할 수 있다.
S485 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 응답 메시지에 포함된 검증 결과 정보에 기초하여, 수취인의 가상 자상 주소에 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 수취 가상자산사업자 서버(120)는 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다. 또는, 전자 장치(100)로부터 수신한 응답 메시지가 수취인이 동일한 것으로 검증되었다는 것을 나타내는 정보 이외의 정보를 포함하는 경우, 수취 가상자산사업자 서버(120)는 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영하지 않을 수 있다.
도 5a 내지 도 5b는 일 실시 예에 따른 검증 요청 메시지(500, 550)의 일 예를 도시한다.
일 실시 예에 따르면, 검증 요청 메시지(500, 550)는 질의 파라미터(query parameter)(510, 560), 헤더(header)(520, 570) 또는 본문(body)(530, 580)을 포함할 수 있다. 이때, 질의 파라미터(510, 560), 헤더(520, 570) 및 본문(530, 580)에 포함된 데이터는 json(javascript object notation) 포맷에 기초하여 문자열(string) 타입으로 표현될 수 있으나, 전술한 바에 한정되지 않는다.
일 실시 예에 따르면, 질의 파라미터(510, 560)는 검증 요청 메시지(500, 550)의 식별 값을 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(500, 550)의 식별 값(reqID)은 조정(reconciliation)을 위해 각각의 요청 메시지마다 부여된 고유한 식별 값을 나타낼 수 있다. 예를 들어, 검증 요청 메시지(500, 550)의 식별 값은 전자 장치(100)가 송신하는 검증 요청 메시지(500, 550)마다 부여되어, 검증 요청 메시지(500, 550)를 구별하기 위해 사용될 수 있다.
일 실시 예에 따르면, 헤더(520, 570)는 콘텐츠의 타입을 나타내는 값, API 접속 키 또는 수취 가상자산사업자 또는 송금 가상자산사업자에 관한 정보 중 적어도 일부를 포함할 수 있다.
일 실시 예에 따르면, 콘텐츠의 타입을 나타내는 값(Content-Type)은 검증 요청 메시지(500, 550)에 포함된 데이터의 포맷을 나타낼 수 있다. 예를 들어, 콘텐츠의 타입을 나타내는 값은 "application/json"로 설정될 수 있다.
일 실시 예에 따르면, API 접속 키(VASP-API-Key)는 API 호출 시 승인을 위해 전자 장치(100)가 송신하는 토큰(token)을 나타낼 수 있다. 예를 들어, 전자 장치(100)는 가상자산사업자 서버에 전자 장치(100)의 종단점(endpoint)의 IP 주소를 화이트리스트에 등록할 것을 요청함과 동시에 API 접속 키를 요청할 수 있다. 이에 따라, 전자 장치(100)는 가상자산사업자 서버로부터 API 접속 키를 수신하고, 가상자산사업자의 코드를 생성할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 또는 송금 가상자산사업자에 관한 정보는 상대 가상자산사업자의 코드(VASP-Counterparty-Code)를 나타낼 수 있다. 예를 들어, 가상자산사업자의 코드는 가상자산사업자를 구별하기 위한 고유 식별 값으로서, API 접속 키를 수신하는 과정에서 전자 장치(100)의 시스템에 등록될 수 있다.
일 실시 예에 따르면, 본문(530, 580)은 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 수취 가상자산주소, 송금인의 성명의 해시 값, 송금인의 생년월일의 해시 값 또는 해시 솔트 값 중 적어도 일부를 포함할 수 있다. 또는, 본문(530, 580)은 검증 대상의 타입에 따라 가상 자산의 이체에 대응하는 트랜잭션 식별 값을 포함할 수 있고, 가상 자산의 타입에 따라 보조 가상자산주소를 포함할 수 있다.
일 실시 예에 따르면, 검증 대상의 타입을 나타내는 값(verificationType)은 검증 대상이 송금인 또는 수취인이지 여부를 나타낼 수 있다. 예를 들어, 검증 대상이 송금인 경우, 검증 대상의 타입을 나타내는 값은 VerifyOriginator를 포함할 수 있고, 검증 대상이 수취인 경우, 검증 대상의 타입을 나타내는 값은 VerifyBeneficiary를 포함할 수 있다. 이에 따라, 도 2a에서 전자 장치(100)는 VerifyBeneficiary를 포함하는 검증 요청 메시지(500, 550)를 수취 가상자산사업자 서버(120)로 송신할 수 있고, 도 2b에서 전자 장치(100)는 VerifyOriginator를 포함하는 검증 요청 메시지(500, 550)를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
일 실시 예에 따르면, 가상 자산의 이체에 대응하는 트랜잭션 식별 값(txID)은 가상 자산의 이체마다 부여된 고유식별번호를 나타낼 수 있다. 예를 들어, 트랜잭션 식별 값은 가상 자산의 이체에 대응하는 송금인, 수취인 또는 수취 가상자산주소를 식별하기 위해 사용될 수 있다.
한편, 트랜잭션 식별 값은 검증 대상의 타입에 따라 검증 요청 메시지(500, 550) 내의 포함 여부가 결정될 수 있다. 보다 구체적으로, 가상 자산이 이체된 후 검증이 수행되는 경우, 트랜잭션 식별 값이 검증 요청 메시지(500, 550)에 포함될 수 있다.
예를 들어, 트랜잭션 식별 값은 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 때, 검증 대상의 타입이 송금인인 경우에 검증 요청 메시지(500, 550)에 포함될 수 있다. 또는, 트랜잭션 식별 값은 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 상이할 때, 송금 가상자산사업자 서버(140)가 수취인을 검증하는 경우에 검증 요청 메시지(500, 550)에 포함될 수 있다.
또다른 예를 들어, 트랜잭션 식별 값은 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 때, 검증 대상의 타입이 수취인인 경우에 검증 요청 메시지(500, 550)에 포함되지 않을 수 있다. 또는, 트랜잭션 식별 값은 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 상이할 때, 수취 가상자산사업자 서버(120)가 수취인을 검증하는 경우에 검증 요청 메시지(500, 550)에 포함되지 않을 수 있다. 일 실시 예에 따르면, 가상 자산의 타입을 나타내는 값(symbol)은 가상 자산의 고유 이름을 식별하기 위해 부여된 약어 또는 심볼을 나타낼 수 있으며, 토큰 티커(token ticker) 등으로 혼용될 수 있다. 예를 들어, 가상 자산의 타입을 나타내는 값은 가상 자산의 타입에 따라 BTC, ETH 또는 XRP 등을 포함할 수 있다.
일 실시 예에 따르면, 수취 가상자산주소(address)는 수취 가상자산사업자가 관리하는, 가상 자산이 이체되는 지갑 주소를 나타낼 수 있다. 이때, 검증 대상의 타입이 수취인 또는 송금인인지 여부와 무관하게, 검증 요청 메시지(500, 550)는 수취 가상자산주소를 포함할 수 있다.
일 실시 예에 따르면, 보조 가상자산주소(tag)는 수취 가상자산사업자가 관리하는, 가상 자산이 이체되는 2차 가상자산주소을 나타낼 수 있다. 이때, 검증 대상의 타입이 수취인 또는 송금인인지 여부와 무관하게, 검증 요청 메시지(500, 550)는 수신 보조 가상자산주소를 포함할 수 있다.
한편, 보조 가상자산주소는 가상 자산의 타입에 따라 검증 요청 메시지(500, 550) 내의 포함 여부가 결정될 수 있다. 예를 들어, 가상 자산의 타입이 리플(XRP)인 경우, 보조 가상자산주소는 데스티네이션 태그의 이름으로서 검증 요청 메시지(500, 550)에 포함될 수 있다. 또는, 가상 자산의 타입이 이오스(EOS), 스텔라루멘(XLM) 또는 메디블록(MED)인 경우, 보조 가상자산주소는 메모의 이름으로서 검증 요청 메시지(500, 550)에 포함될 수 있다. 상 자산의 타입이 넴 (XEM) 또는 스텔라루멘(XLM)인 경우, 보조 가상자산주소는 메시지의 이름으로서 검증 요청 메시지(500, 550)에 포함될 수 있다.
일 실시 예에 따르면, 해시 솔트 값(hashSalt)은 성명 데이터 또는 생년월일 데이터를 해싱할 때 추가 입력으로 사용되는 임의의 문자열을 나타낼 수 있다. 이때, 해시 솔트 값은 각 요청마다 임의로 생성된 범용고유식별자(universally unique identifier, UUID) 값이어야 한다. 예를 들어, 전자 장치(100)는 성명 데이터 또는 생년월일 데이터를 해싱할 때, 성명 데이터 또는 생년월일 데이터 각각에 해시 솔트 값을 덧붙인 후 해싱함으로써, 성명의 해시 값 또는 생년월일의 해시 값을 생성할 수 있다.
일 실시 예에 따르면, 생년월일의 해시 값(dobHash)은 수취인 또는 송금인의 생년월일 데이터를 해싱하여 생성된 값을 나타낼 수 있다. 예를 들어, 전자 장치(100)는 "${YYYY}-${MM}-${DD}, ${hashSalt}" 포맷의 생년월일 데이터를 해싱하여, 64자 길이의 16진수로 인코딩된 문자열 타입의 생년월일의 해시 값을 생성할 수 있다. 이때, 법인 계좌의 경우, 생년월일은 "0000-00-00" 형태로 설정될 수 있다.
일 실시 예에 따르면, 성명의 해시 값(nameHashes)은 수취인 또는 송금인의 성명 데이터를 해싱하여 생성된 값을 나타낼 수 있다. 예를 들어, 성명 데이터가 영문으로 표현된 경우, 전자 장치(100)는 "${lowercase(FirstName)}${lowercase(LastName)}, ${hashSalt}" 포맷의 성명 데이터를 해싱하여 64자 길이의 16진수로 인코딩된 문자열 타입의 생년월일의 해시 값을 생성할 수 있다. 또는, 성명 데이터가 현지 언어로 표현된 경우, 전자 장치(100)는 "${FirstName}${LastName}, ${hashSalt}" 포맷의 성명 데이터를 해싱하여, 64자 길이의 16진수로 인코딩된 문자열의 생년월일의 해시 값을 생성할 수 있다. 이때, 전자 장치(100)는 성명 데이터에 포함된 공백을 제거하고, 성명 데이터에 포함된 적어도 하나의 문자를 소문자로 변환한 후, 성명 데이터를 해싱할 수 있다.
한편, 전자 장치(100)가 성명(full name)의 데이터를 다양한 형태로 변환한 후 해싱함에 따라, 성명의 해시 값은 하나 이상의 해시 값들을 포함하는 성명의 해시 값 세트를 나타낼 수 있다. 예를 들어, 전자 장치(100)는 이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 성명 정보를 해싱하여 해시 값을 생성하거나, 성 및 이름 순서의 단일 엔트리로 구성된 성명 정보를 해싱하여 해시 값을 생성할 수 있다. 또는, 전자 장치(100)는 국문으로 된 성명을 해싱하여 해시 값을 생성하거나, 영문으로 된 성명을 해싱하여 해시 값을 생성할 수 있다. 이와 관련해서는 도 7a 내지 도 7h를 참조하여 자세히 설명하기로 한다.
도 5a는 일 실시 예에 따른 검증 요청 메시지(500)를 도시한다.
일 실시 예에 따르면, 검증 요청 메시지(500)는 상대 가상자산사업자의 코드로서 UPBT001KR를 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(500)는 검증 대상의 타입을 나타내는 값으로서 VerifyOriginator를 포함할 수 있고, 그에 따라 가상 자산의 이체에 대응하는 트랜잭션 식별 값을 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(500)는 가상 자산의 타입을 나타내는 값으로서 EHT를 포함할 수 있고, 그에 따라 보조 가상자산주소를 포함하지 않을 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(500)는 성명의 해시 값으로 4개의 해시 값을 포함할 수 있다.
도 5b는 일 실시 예에 따른 검증 요청 메시지(550)를 도시한다.
일 실시 예에 따르면, 검증 요청 메시지(550)는 상대 가상자산사업자의 코드로서 UPBT001KR를 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(550)는 검증 대상의 타입을 나타내는 값으로서 VerifyOriginator를 포함할 수 있고, 그에 따라 가상 자산의 이체에 대응하는 트랜잭션 식별 값을 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(550)는 가상 자산의 타입을 나타내는 값으로서 XRP를 포함할 수 있고, 그에 따라 보조 가상자산주소로서 76188721를 포함할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지(550)는 성명의 해시 값으로 4개의 해시 값을 포함할 수 있다.
도 6은 일 실시 예에 따른 응답 메시지(600)의 일 예를 도시한다.
일 실시 예에 따르면, 응답 메시지는 헤더(header)(620) 또는 본문(body)(640)을 포함할 수 있다. 이때, 헤더(620) 및 본문(640)에 포함된 데이터는 json 포맷에 기초하여 문자열 타입으로 표현될 수 있으나, 전술한 바에 한정되지 않는다.
일 실시 예에 따르면, 헤더(620)는 콘텐츠의 타입을 나타내는 값을 포함할 수 있다.
일 실시 예에 따르면, 콘텐츠의 타입을 나타내는 값(Content-Type)은 검증 요청 메시지에 포함된 데이터의 포맷을 나타낼 수 있다. 예를 들어, 콘텐츠의 타입을 나타내는 값은 "application/json"로 설정될 수 있다.
일 실시 예에 따르면, 본문(640)은 검증 결과 정보를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보(verificationResult)는 검증 요청 메시지에 기초하여 수행된 송금인 또는 수취인의 검증 판단 값을 나타낼 수 있다. 예를 들어, 검증 결과 정보는 트랜잭션 식별 값과 일치하는 값이 확인되지 않았다는 것을 나타내는 값(TXID-NOT-FOUND), 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 확인되지 않았다는 것을 나타내는 값(MISMATCH-ADDRESS), 성명의 해시 값이 일치하지 않는다는 것을 나타내는 값(MISMATCH-NAME), 생년월일의 해시 값과 일치하지 않는다는 것을 나타내는 값(MISMATCH-DOB) 또는 송금인 또는 수취인이 검증되었다는 것을 나타내는 값(VERIFIED)을 포함할 수 있다.
이때, 하나 이상의 불일치가 확인된 경우, 검증 결과 정보는 하나 이상의 불일치를 나타내는 값을 포함할 수 있다. 예를 들어, 검증 결과 정보는 MISMATCH-NAME 및 MISMATCH-DOB를 포함할 수 있다.
도 6을 참조하면, 응답 메시지(600)는 일 실시 예에 따라 검증 결과 정보로서 VERIFIED를 포함할 수 있다.
도 7a 내지 도 7h는 일 실시 예에 따라 가상자산사업자 서버(120, 140)가 성명의 해시 값이 일치하는 여부를 확인하는 과정을 설명하기 위한 도면이다.
도 7a를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 송금인의 성명의 해시 값과 하나의 수취인의 성명의 해시 값이 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 설정된 방식으로 변환한 후 해싱함으로써, 하나의 송금인의 성명의 해시 값을 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140) 또는 전자 장치(100)는 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱함으로써, 하나의 수취인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 송금인의 성명의 해시 값과 하나의 수취인의 성명의 해시 값이 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인 및 송금인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 공통된 방식에 따라 성명 데이터를 변환한 후 해싱할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 성명 데이터에 포함된 공백을 제거하고, 성명 데이터에 포함된 적어도 하나의 문자를 소문자로 변환한 후, 성명 데이터를 해싱할 수 있다. 또는, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 성명 데이터를 영문으로 변환한 후, 해싱할 수 있다. 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 성명 데이터가 중간 이름(middle name)을 포함하는 경우, 중간 이름을 제거하고 이름(first name) 및 성(last name) 순서로 변환하여 해싱할 수 있다. 다만, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)가 성명 데이터를 해싱하기 위해 변환하는 방식은 전술한 바에 한정되지 않는다.
한편, 상기 성명 데이터를 해싱하는 동작은 도 2a의 S205 단계에서 전자 장치(100)가 송금인의 성명 데이터를 해싱하는 동작, 도 2a의 S215 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작, 도 2b의 S260 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 2b의 S270 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작에 대응할 수 있다. 또한, 상기 성명 데이터를 해싱하는 동작은 도 3a의 S305 단계에서 enclave 서버(102)가 송금인의 성명 데이터를 해싱하는 동작, 도 3a의 S320단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작, 도 3b의 S360 단계에서 enclave 서버(106)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 3b의 S375 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7b를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 수취인의 성명의 해시 값이 송금인의 복수의 성명의 해시 값들 중 하나와 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 송금인의 복수의 성명의 해시 값들을 포함하는 송금인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140) 또는 전자 장치(100)는 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱하여, 하나의 수취인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 수취인의 성명의 해시 값이 송금인의 복수의 성명의 해시 값들 중 하나와 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인 및 송금인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 다양한 방식으로 변환한 후 해싱할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 이름(first name) 및 성(last name) 순서의 단일 엔트리로 변환하고, 성명 데이터에 포함된 공백 또는 하이픈(-) 중 적어도 일부를 포함하는 설정된 문자를 제거한 후, 해싱할 수 있다. 또는, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 성, 이름 및 적어도 하나의 중간 이름(middle name)을 포함하는 복수의 엔트리들로 변환하고, 성명 데이터에 포함된 적어도 하나의 문자의 대소문자(letter case)를 설정된 케이스(소문자 또는 대문자)로 변환한 후, 해싱할 수 있다. 다만, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)가 송금인의 성명 데이터를 해싱하기 위해 변환하는 방식은 전술한 바에 한정되지 않는다.
한편, 상기 송금인의 성명 데이터를 해싱하는 동작은 도 2a의 S205 단계에서 전자 장치(100)가 송금인의 성명 데이터를 해싱하는 동작, 도 2b의 S270 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작, 도 3a의 S305 단계에서 enclave 서버(102)가 송금인의 성명 데이터를 해싱하는 동작 또는 도 3b의 S375 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7c를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 송금인의 성명의 해시 값이 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 수취인의 복수의 성명의 해시 값들을 포함하는 수취인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140) 또는 전자 장치(100)는 송금인의 성명 데이터를 설정된 방식으로 변환한 후 해싱하여, 하나의 송금인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 송금인의 성명의 해시 값이 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인 및 송금인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 수취인의 성명 데이터를 성 및 이름 순서의 단일 엔트리로 변환하고, 성명 데이터에 포함된 공백을 제거하고 성명 데이터에 포함된 적어도 하나의 문자를 소문자로 변환한 후, 해싱할 수 있다. 또는, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 수취인의 성명 데이터에 포함된 성, 이름 및 적어도 하나의 중간 이름을 다양한 순서로 조합하여 복수의 단일 엔트리들로 변환하고, 성명 데이터에 포함된 적어도 하나의 문자를 소문자로 변환한 후, 해싱할 수 있다. 다만, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)가 수취인의 성명 데이터를 해싱하기 위해 변환하는 방식은 전술한 바에 한정되지 않는다.
한편, 상기 수취인의 성명 데이터를 해싱하는 동작은 도 2a의 S215 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작, 도 2b의 S260 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작, 도 3a의 S320 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 3b의 S360 단계에서 enclave 서버(106)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7d를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 송금인의 복수의 성명의 해시 값들 중 하나와 수취인의 복수의 성명의 해시 값들 중 하나가 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 송금인의 복수의 성명의 해시 값들을 포함하는 송금인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140) 또는 전자 장치(100)는 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 수취인의 복수의 성명의 해시 값들을 포함하는 수취인의 성명의 해시 값 세트를 생성할 수 있다. 이후, 송금인의 복수의 성명의 해시 값들 및 수취인의 복수의 성명의 해시 값들 중 일치하는 해시 값이 설정된 값 이상인 경우, 가상자산사업자 서버(120, 140)는 수취인 및 송금인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 송금인의 성명 데이터 또는 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱할 수 있다. 전자 장치(100) 또는 가상자산사업자 서버(120, 140)가 성명 데이터를 해싱하는 보다 구체적인 동작은 도 7a 내지 도 7c와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 상기 송금인의 성명 데이터를 해싱하는 동작은 도 2a의 S205 단계에서 전자 장치(100)가 송금인의 성명 데이터를 해싱하는 동작, 도 2b의 S270 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작, 도 3a의 S305 단계에서 enclave 서버(102)가 송금인의 성명 데이터를 해싱하는 동작 또는 도 3b의 S375 단계에서 송금 가상자산사업자 서버(140)가 송금인의 성명 데이터를 해싱하는 동작에 대응할 수 있다. 또한, 상기 수취인의 성명 데이터를 해싱하는 동작은 도 2a의 S215 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작, 도 2b의 S260 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작, 도 3a의 S320 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 3b의 S360 단계에서 enclave 서버(106)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7e를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 제1 수취인의 성명의 해시 값과 하나의 제2 수취인의 성명의 해시 값이 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100)는 제1 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱함으로써, 하나의 제1 수취인의 성명의 해시 값을 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140)는 제2 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱함으로써, 하나의 제2 수취인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 제1 수취인의 성명의 해시 값과 하나의 제2 수취인의 성명의 해시 값이 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 공통된 방식에 따라 성명 데이터를 변환한 후 해싱할 수 있다. 전자 장치(100) 또는 가상자산사업자 서버(120, 140)가 성명 데이터를 해싱하는 보다 구체적인 동작은 도 7a 내지 도 7c와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 상기 성명 데이터를 해싱하는 동작은 도 4a의 S410 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작, 도 4a의 S420 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작, 도 4b의 S460 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 4b의 S470 단계에서 송금 가상자산사업자 서버(140)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7f를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 제2 수취인의 성명의 해시 값이 제1 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100)는 제1 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 제1 수취인의 복수의 성명의 해시 값들을 포함하는 제1 수취인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140)는 제2 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱하여, 하나의 제2 수취인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 제2 수취인의 성명의 해시 값이 제1 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 다양한 방식에 따라 제1 수취인의 성명 데이터를 변환한 후 해싱할 수 있다. 전자 장치(100)가 성명 데이터를 해싱하는 보다 구체적인 동작은 도 7a 내지 도 7c와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 상기 제1 수취인의 성명 데이터를 해싱하는 동작은 도 4a의 S410 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 4b의 S460 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7g를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 하나의 제1 수취인의 성명의 해시 값이 제2 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는지 여부를 확인할 수 있다. 예를 들어, 가상자산사업자 서버(120, 140)는 제2 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 제2 수취인의 복수의 성명의 해시 값들을 포함하는 제2 수취인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 전자 장치(100)는 제1 수취인의 성명 데이터를 설정된 방식으로 변환한 후 해싱하여, 하나의 제1 수취인의 성명의 해시 값을 생성할 수 있다. 이후, 하나의 제1 수취인의 성명의 해시 값이 제2 수취인의 복수의 성명의 해시 값들 중 하나와 일치하는 경우, 가상자산사업자 서버(120, 140)는 수취인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 가상자산사업자 서버(120, 140)는 다양한 방식에 따라 제2 수취인의 성명 데이터를 변환한 후 해싱할 수 있다. 가상자산사업자 서버(120, 140)가 성명 데이터를 해싱하는 보다 구체적인 동작은 도 7a 내지 도 7c와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 상기 제2 수취인의 성명 데이터를 해싱하는 동작은 도 4a의 S420 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 4b의 S470 단계에서 송금 가상자산사업자 서버(140)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 7h를 참조하면, 가상자산사업자 서버(120, 140)는 일 실시 예에 따라 제1 수취인의 복수의 성명의 해시 값들 중 하나와 제2 수취인의 복수의 성명의 해시 값들 중 하나가 일치하는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100)는 제1 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 제1 수취인의 복수의 성명의 해시 값들을 포함하는 제1 수취인의 성명의 해시 값 세트를 생성할 수 있다. 또한, 가상자산사업자 서버(120, 140)는 제2 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱하여, 제2 수취인의 복수의 성명의 해시 값들을 포함하는 제2 수취인의 성명의 해시 값 세트를 생성할 수 있다. 이후, 제1 수취인의 복수의 성명의 해시 값들 및 제2 수취인의 복수의 성명의 해시 값들 중 일치하는 해시 값이 설정된 값 이상인 경우, 가상자산사업자 서버(120, 140)는 수취인의 성명이 일치함을 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100) 또는 가상자산사업자 서버(120, 140)는 제1 수취인의 성명 데이터 또는 제2 수취인의 성명 데이터를 다양한 방식으로 변환한 후 해싱할 수 있다. 가상자산사업자 서버(120, 140)가 성명 데이터를 해싱하는 보다 구체적인 동작은 도 7a 내지 도 7c와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
한편, 상기 제1 수취인의 성명 데이터를 해싱하는 동작은 도 4a의 S410 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 4b의 S460 단계에서 전자 장치(100)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다. 또한, 상기 제2 수취인의 성명 데이터를 해싱하는 동작은 도 4a의 S420 단계에서 수취 가상자산사업자 서버(120)가 수취인의 성명 데이터를 해싱하는 동작 또는 도 4b의 S470 단계에서 송금 가상자산사업자 서버(140)가 수취인의 성명 데이터를 해싱하는 동작에 대응할 수 있다.
도 8은 일 실시 예에 따라 전자 장치(100)가 수취인을 검증하는 과정을 설명하기 위한 도면이다. 이때, 전자 장치(100)는 송금 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 수 있다.
S800 단계에서, 사용자 단말(160)은 일 실시 예에 따라 수취 가상자산사업자에 관한 정보 및 수취 가상자산주소를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 가상 자산을 이체할 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보에 관한 사용자 입력을 획득할 수 있다.
S805 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취 가상자산사업자에 관한 정보 및 수취 가상자산주소를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자가 입력한 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보를 전자 장치(100)로 송신할 수 있다.
S810 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취인의 성명의 해시 값에 대한 요청 및 수취 가상자산주소를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소를 수취 가상자산사업자 서버(120)로 송신하면서 수취 가상자산주소에 대응하는 수취인의 성명의 해시 값을 송신할 것을 수취 가상자산사업자 서버(120)에 요청할 수 있다.
S815 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취 가상자산주소의 보유 여부 및 수취인의 성명의 해시 값을 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소와 일치하는 주소가 있는지 확인할 수 있다. 이후, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 식별하고, 수취인의 성명 데이터를 해싱하여, 수취인의 성명의 해시 값을 생성할 수 있다. 수취 가상자산사업자 서버(120)는 수취 가상자산주소와 일치하는 주소가 있는지 여부 및 수취인의 성명의 해시 값을 전자 장치(100)로 송신할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 수취 가상자산사업자 서버(120)가 전자 장치(100)로부터 보조 가상자산주소도 함께 수신한 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취인의 성명 데이터를 식별할 수 있다. 예를 들어, 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 식별할 수 있다
일 실시 예에 따르면, 수취 가상자산사업자 서버(120)는 수취인의 하나 이상의 성명의 해시 값을 생성할 수 있다. 수취 가상자산사업자 서버(120)가 수취인의 하나 이상의 성명의 해시 값을 생성하는 보다 구체적인 동작은 도 7a 내지 도 7h와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
S820 단계에서, 전자 장치(100)는 일 실시 예에 따라 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 전자 장치(100)는 송금인의 성명 데이터를 식별하고, 송금인의 성명 데이터를 해싱하여 송금인의 성명의 해시 값을 생성할 수 있다. 이후, 전자 장치(100)는 수취 가상자산사업자 서버(120)로부터 수신한 수취인의 성명의 해시 값이 송금인의 성명의 해시 값과 일치하는지 여부를 확인할 수 있다. 전자 장치(100)가 송금인과 수취인이 일치하는지 여부를 검증하는 보다 구체적인 동작은 도 7a 내지 도 7h와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
S825 단계에서, 송금인과 수취인이 일치하는 경우, 전자 장치(100)는 일 실시 예에 따라 OTP(one time password) 발급 요청을 수취 가상자산사업자 서버(120)로 송신할 수 있다. 또는, 송금인과 수취인이 일치하지 않는 경우, 전자 장치(100)는 일 실시 예에 따라 수취 가상자산주소의 재입력 요청을 사용자 단말(160)로 송신할 수 있다. 다만, OTP는 일 실시 예일 뿐, 다양한 타입의 패스워드가 사용될 수 있음은 본 기술 분야의 통상의 기술자에게 자명할 것이다.
S830 단계에서, 전자 장치(100)는 일 실시 예에 따라 OTP를 획득할 수 있다. 예를 들어, 송금인과 수취인이 일치하는 경우, 수취 가상자산사업자 서버(120)는 OTP를 발급하여 사용자의 수취 가상자산사업자 계정으로 제공할 수 있다. 이후, 사용자는 발급 받은 OTP를 사용자 단말(160)에 입력할 수 있다.
S835 단계에서, 전자 장치(100)는 일 실시 예에 따라 OTP를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자 입력한 OTP를 전자 장치(100)로 송신할 수 있다.
S840 단계에서, 전자 장치(100)는 일 실시 예에 따라 OTP를 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 사용자 단말(160)로부터 수신한 OTP를 수취 가상자산사업자 서버(120)로 송신할 수 있다.
S845 단계에서, 수취 가상자산사업자 서버(120)는 OTP를 검증할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 자신이 발급한 OTP와 사용자가 입력한 OTP가 일치하는지 여부를 확인할 수 있다.
S850 단계에서, 전자 장치(100)는 OTP 검증 결과를 수취 가상자산사업자 서버(120)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산사업자 서버(120)가 발급한 OTP와 사용자가 입력한 OTP가 일치하는 것을 나타내는 값(true) 또는 수취 가상자산사업자 서버(120)가 발급한 OTP와 사용자가 입력한 OTP가 일치하지 않는 것을 나타내는 값(false)을 수취 가상자산사업자 서버(120)로부터 수신할 수 있다.
S855 단계에서, 수취 가상자산사업자 서버(120)가 발급한 OTP와 사용자가 입력한 OTP가 일치하는 경우, 전자 장치(100)는 일 실시 예에 따라 가상 자산을 이체할 수 있다. 또는, 수취 가상자산사업자 서버(120)가 발급한 OTP와 사용자가 입력한 OTP가 일치하지 않는 경우, 전자 장치(100)는 일 실시 예에 따라 OTP의 재입력 요청을 사용자 단말(160)로 송신할 수 있다.
S860 단계에서, 전자 장치(100)가 가상 자산을 이체한 경우, 전자 장치(100)는 일 실시 예에 따라 트랜잭션의 식별 값을 수취 가상자산사업자 서버(120)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 가산 자상의 이체에 대응하는 트랜잭션의 식별 값을 수취 가상자산사업자 서버(120)로 송신할 수 있다. 다만, S860 단계는 생략될 수 있다.
S865 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 트랜잭션 식별 값 등에 기초하여, 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다.
도 9는 일 실시 예에 따라 전자 장치(100)가 송금인을 검증하는 과정을 설명하기 위한 도면이다. 이때, 전자 장치(100)는 수취 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 수 있다.
S900 단계에서, 사용자 단말(160)은 일 실시 예에 따라 수취 가상자산사업자에 관한 정보 및 수취 가상자산주소를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 가상 자산을 이체할 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보에 관한 사용자 입력을 획득할 수 있다.
S905 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 수취 가상자산사업자에 관한 정보 및 수취 가상자산주소를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자가 입력한 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S910 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취 가상자산주소 및 송금인의 성명의 해시 값을 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 송금인의 성명 데이터를 해싱하여, 송금인의 성명의 해시 값을 생성할 수 있다. 이후, 송금 가상자산사업자 서버(140)는 신 가상자산주소 및 송금인의 성명의 해시 값을 전자 장치(100)로 송신할 수 있다.
일 실시 예에 따르면, 송금 가상자산사업자 서버(140)는 송금인의 하나 이상의 성명의 해시 값을 생성할 수 있다. 송금 가상자산사업자 서버(140)가 송금인의 하나 이상의 성명의 해시 값을 생성하는 보다 구체적인 동작은 도 7a 내지 도 7h와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
S915 단계에서, 전자 장치(100)는 일 실시 예에 따라 송금인과 수취인이 일치하는지 여부를 검증할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소와 일치하는 주소가 있는지 확인할 수 있다. 이후, 전자 장치(100)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 식별하고, 수취인의 성명 데이터를 해싱하여, 수취인의 성명의 해시 값을 생성할 수 있다. 전자 장치(100)는 수취인의 성명의 해시 값과 송금인의 성명의 해시 값이 일치하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 있는지 여부를 확인할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)로부터 수신한 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다. 또는, 전자 장치(100)가 송금 가상자산사업자 서버(140)로부터 보조 가상자산주소도 함께 수신한 경우, 전자 장치(100)는 수취 가상자산주소 및 보조 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는지 여부를 확인할 수 있다.
일 실시 예에 따르면, 전자 장치(100)는 수취인의 성명 데이터를 확인할 수 있다. 예를 들어, 수취 가상자산주소와 일치하는 주소가 데이터베이스에 존재하는 것으로 확인된 경우, 전자 장치(100)는 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 확인할 수 있다
일 실시 예에 따르면, 전자 장치(100)는 수취인의 하나 이상의 성명의 해시 값을 생성할 수 있다. 전자 장치(100)가 수취인의 하나 이상의 성명의 해시 값을 생성하는 보다 구체적인 동작은 도 7a 내지 도 7h와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
일 실시 예에 따르면, 전자 장치(100)는 수취인의 하나 이상의 성명의 해시 값과 송금인의 하나 이상의 성명의 해시 값이 일치하는지 여부를 확인할 수 있다. 전자 장치(100)가 송금인과 수취인이 일치하는지 여부를 검증하는 보다 구체적인 동작은 도 7a 내지 도 7h와 관련하여 기술된 내용과 중복되므로 생략하기로 한다.
S920 단계에서, 전자 장치(100)는 검증 결과를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 없다는 것을 나타내는 값을 송금 가상자산사업자 서버(140)로 송신할 수 있다. 또는, 전자 장치(100)는 송금인의 성명의 해시 값과 수취인의 성명의 해시 값이 일치한다는 것을 나타내는 값(true) 또는 송금인의 성명의 해시 값과 수취인의 성명의 해시 값이 일치하지 않는다는 것을 나타내는 값(false)을 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S925 단계에서, 송금인과 수취인이 일치하는 경우, 전자 장치(100)는 일 실시 예에 따라 OTP 발급 요청을 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 또는, 송금인과 수취인이 일치하지 않는 경우, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 수취 가상자산주소의 재입력 요청을 사용자 단말(160)로 송신할 수 있다. 다만, OTP는 일 실시 예일 뿐, 다양한 타입의 패스워드가 사용될 수 있음은 본 기술 분야의 통상의 기술자에게 자명할 것이다.
S930 단계에서, 전자 장치(100)는 일 실시 예에 따라 OTP를 획득할 수 있다. 예를 들어, 송금인과 수취인이 일치하는 경우, 전자 장치(100)는 OTP를 발급하여 사용자의 수취 가상자산사업자 계정으로 제공할 수 있다. 이후, 사용자는 발급 받은 OTP를 사용자 단말(160)에 입력할 수 있다.
S935 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 OTP를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자 입력한 OTP를 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S940 단계에서, 전자 장치(100)는 일 실시 예에 따라 OTP를 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 사용자 단말(160)로부터 수신한 OTP를 전자 장치(100)로 송신할 수 있다.
S945 단계에서, 전자 장치(100)는 OTP를 검증할 수 있다. 예를 들어, 전자 장치(100)는 자신이 발급한 OTP와 사용자가 입력한 OTP가 일치하는지 여부를 확인할 수 있다.
S950 단계에서, 전자 장치(100)는 OTP 검증 결과를 송금 가상자산사업자 서버(140)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 자신이 발급한 OTP와 사용자가 입력한 OTP가 일치하는 것을 나타내는 값(true) 또는 자신이 발급한 OTP와 사용자가 입력한 OTP가 일치하지 않는 것을 나타내는 값(false)을 송금 가상자산사업자 서버(140)로 송신할 수 있다.
S955 단계에서, 전자 장치(100)가 발급한 OTP와 사용자가 입력한 OTP가 일치하는 경우, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 가상 자산을 이체할 수 있다. 또는, 전자 장치(100)가 발급한 OTP와 사용자가 입력한 OTP가 일치하지 않는 경우, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 OTP의 재입력 요청을 사용자 단말(160)로 송신할 수 있다.
S960 단계에서, 송금 가상자산사업자 서버(140)가 가상 자산을 이체한 경우, 전자 장치(100)는 일 실시 예에 따라 트랜잭션의 식별 값을 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 예를 들어, 전자 장치(100)는 가산 자상의 이체에 대응하는 트랜잭션의 식별 값을 송금 가상자산사업자 서버(140)로부터 수신할 수 있다. 다만, S960 단계는 생략될 수 있다.
S965 단계에서, 전자 장치(100)는 일 실시 예에 따라 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 전자 장치(100)는 트랜잭션 식별 값 등에 기초하여, 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다.
도 10은 일 실시 예에 따라 전자 장치(100)가 수취인을 검증하는 과정을 설명하기 위한 도면이다. 이때, 전자 장치(100)는 송금 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 수 있다.
S1000 단계에서, 사용자 단말(160)은 일 실시 예에 따라 공개 키 및 수취 가상자산주소를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 생성된 공개 키 및 개인 키 쌍(public key and private key pair) 중 공개 키에 관한 사용자 입력을 획득할 수 있다. 또한, 사용자 단말(160)은 가상 자산을 이체할 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보에 관한 사용자 입력을 획득할 수 있다.
S1005 단계에서, 전자 장치(100)는 일 실시 예에 따라 공개 키, 수취 가상자산주소 및 수취 가상자산주소로의 가상 자산 이체 요청을 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 공개 키 및 수취 가상자산주소를 전자 장치(100)로 송신하면서, 수취 가상자산주소로 가상 자산을 이체할 것을 요청할 수 있다.
S1010 단계에서, 전자 장치(100)는 일 실시 예에 따라 가상 자산을 이체하고 트랜잭션 식별 값을 식별할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소로 가상 자산을 이체하고, 가상 자산의 이체에 대응하는 트랜잭션 식별 값을 식별할 수 있다.
S1015 단계에서, 전자 장치(100)는 일 실시 예에 따라 트랜잭션 식별 값을 암호화할 수 있다. 예를 들어, 전자 장치(100)는 사용자 단말(160)로부터 수신한 공개 키를 이용하여 트랜잭션 식별 값을 암호화하여, 암호화 결과 또는 암호문(cypher text)을 획득할 수 있다.
S1020 단계에서, 전자 장치(100)는 일 실시 예에 따라 트랜잭션 식별 값 및 암호화 결과 쌍을 오픈 서버에 업로드할 수 있다. 예를 들어, 전자 장치(100)는 트랜잭션 식별 값 및 암호화 결과 쌍을 모든 가상자산사업자 서버가 접근할 수 있는 웹 서버에 업로드할 수 있다.
S1025 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 수취 가상자산주소로 이체된 가상 자산을 식별할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 전자 장치(100)가 수취 가상자산주소로 이체한 가상 자산 또는 예치금을 식별할 수 있다.
S1030 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 개인 키에 대한 요청을 사용자 단말(160)로 송신할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 개인 키를 획득하여 송신할 것을 사용자 단말(160)에 요청할 수 있다.
S1035 단계에서, 사용자 단말(160)은 일 실시 예에 따라 개인 키를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 개인 키를 입력하기 위한 팝업 창을 사용자 단말(160)의 디스플레이에 표시하고, 개인 키를 기입하는 사용자 입력을 획득할 수 있다.
S1040 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 개인 키를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자가 입력한 개인 키를 수취 가상자산사업자 서버(120)로 송신할 수 있다.
한편, S1015 단계 내지 S1020 단계가 수행된 후, S1025 단계 내지 S1040 단계가 수행되는 것으로 서술되었으나, 이는 일 실시 예에 불과하다. 예를 들어, S1015 단계 내지 S1020 단계와 S1025 단계 내지 S1040 단계가 병렬적으로 수행되거나, S1025 단계 내지 S1040 단계가 수행된 후, S1015 단계 내지 S1020 단계가 수행될 수 있다.
S1045 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 트랜잭션 식별 값을 획득할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 수취 가상자산주소에 기초하여 트랜잭션 식별 값을 로드할 수 있다.
S1050 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 트랜잭션 식별 값 및 암호화 결과 쌍을 오픈 서버에서 획득할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 획득한 트랜잭션 식별 값을 웹 서버에서 검색하여, 트랜잭션 식별 값 및 암호화 결과 쌍을 웹 서버에서 로드할 수 있다.
한편, S1030 단계 내지 S1040 단계가 수행된 후, S1045 단계 내지 S1050 단계가 수행되는 것으로 서술되었으나, 이는 일 실시 예에 불과하다. 예를 들어, S1030 단계 내지 S1040 단계와 S1045 단계 내지 S1050 단계가 병렬적으로 수행되거나, S1045 단계 내지 S1050 단계가 수행된 후, S1030 단계 내지 S1040 단계가 수행될 수 있다.
S1055 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 암호화 결과를 복호화할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 획득한 개인 키를 이용하여 암호화 결과를 복호화할 수 있다.
S1060 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 복호화 결과와 트랜잭션 식별 값이 일치하는지 여부를 확인할 수 있다.
한편, 도 10은 전자 장치(100) 또는 수취 가상자산사업자 서버(120)가 트랜잭션 식별 값을 암호화 또는 복호화하고 일치하는지 여부를 확인하는 것으로 도시하지만, 이는 일 실시 예에 불과하여, 전술한 바에 한정되지 않는다. 예를 들어, 도 10은 전자 장치(100) 또는 수취 가상자산사업자 서버(120)는 성명의 데이터 또는 생년월일 데이터 등을 암호화 또는 복호화하고 일치하는지 여부를 확인할 수 있다.
S1065 단계에서, 수취 가상자산사업자 서버(120)는 일 실시 예에 따라 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 수취 가상자산사업자 서버(120)는 트랜잭션 식별 값 등에 기초하여, 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다.
도 11은 일 실시 예에 따라 전자 장치(100)가 송금인을 검증하는 과정을 설명하기 위한 도면이다. 이때, 전자 장치(100)는 수취 가상자산사업자 내부에 존재하는 서버를 의미할 수 있다.
일 실시 예에 따르면, 사용자는 사용자 단말(160)을 이용하여 송금 가상자산사업자가 관리하는 자신의 지갑에 있는 가상 자산을 수취 가상자산사업자가 관리하는 자신의 지갑으로 이체할 수 있다. 즉, 가상 자산을 이체하는 송금인과 가상 자산을 받는 수취인이 동일할 수 있다.
S1100 단계에서, 사용자 단말(160)은 일 실시 예에 따라 공개 키 및 수취 가상자산주소를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 생성된 공개 키 및 개인 키 쌍 중 공개 키에 관한 사용자 입력을 획득할 수 있다. 또한, 사용자 단말(160)은 가상 자산을 이체할 수취 가상자산주소 및 그를 관리하는 수취 가상자산사업자에 관한 정보에 관한 사용자 입력을 획득할 수 있다.
S1105 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 공개 키, 수취 가상자산주소 및 수취 가상자산주소로의 가상 자산 이체 요청을 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 공개 키 및 수취 가상자산주소를 송금 가상자산사업자 서버(140)로 송신하면서, 수취 가상자산주소로 가상 자산을 이체할 것을 요청할 수 있다.
S1110 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 가상 자산을 이체하고 트랜잭션 식별 값을 식별할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 수취 가상자산주소로 가상 자산을 이체하고, 가상 자산의 이체에 대응하는 트랜잭션 식별 값을 식별할 수 있다.
S1115 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 트랜잭션 식별 값을 암호화할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 사용자 단말(160)로부터 수신한 공개 키를 이용하여 트랜잭션 식별 값을 암호화하여, 암호화 결과 또는 암호문(cypher text)을 획득할 수 있다.
S1120 단계에서, 송금 가상자산사업자 서버(140)는 일 실시 예에 따라 트랜잭션 식별 값 및 암호화 결과 쌍을 오픈 서버에 업로드할 수 있다. 예를 들어, 송금 가상자산사업자 서버(140)는 트랜잭션 식별 값 및 암호화 결과 쌍을 모든 가상자산사업자 서버가 접근할 수 있는 웹 서버에 업로드할 수 있다.
S1125 단계에서, 전자 장치(100)는 일 실시 예에 따라 수취 가상자산주소로 이체된 가상 자산을 식별할 수 있다. 예를 들어, 전자 장치(100)는 송금 가상자산사업자 서버(140)가 수취 가상자산주소로 이체한 가상 자산 또는 예치금을 식별할 수 있다.
S1130 단계에서, 전자 장치(100)는 일 실시 예에 따라 개인 키에 대한 요청을 사용자 단말(160)로 송신할 수 있다. 예를 들어, 전자 장치(100)는 개인 키를 획득하여 송신할 것을 사용자 단말(160)에 요청할 수 있다.
S1135 단계에서, 사용자 단말(160)은 일 실시 예에 따라 개인 키를 획득할 수 있다. 예를 들어, 사용자 단말(160)은 개인 키를 입력하기 위한 팝업 창을 사용자 단말(160)의 디스플레이에 표시하고, 개인 키를 기입하는 사용자 입력을 획득할 수 있다.
S1140 단계에서, 전자 장치(100)는 일 실시 예에 따라 개인 키를 사용자 단말(160)로부터 수신할 수 있다. 예를 들어, 사용자 단말(160)은 사용자가 입력한 개인 키를 전자 장치(100)로 송신할 수 있다.
한편, S1115 단계 내지 S1120 단계가 수행된 후, S1125 단계 내지 S1140 단계가 수행되는 것으로 서술되었으나, 이는 일 실시 예에 불과하다. 예를 들어, S1115 단계 내지 S1120 단계와 S1125 단계 내지 S1140 단계가 병렬적으로 수행되거나, S1125 단계 내지 S1140 단계가 수행된 후, S1115 단계 내지 S1120 단계가 수행될 수 있다.
S1145 단계에서, 전자 장치(100)는 일 실시 예에 따라 트랜잭션 식별 값을 획득할 수 있다. 예를 들어, 전자 장치(100)는 수취 가상자산주소에 기초하여 트랜잭션 식별 값을 로드할 수 있다.
S1150 단계에서, 전자 장치(100)는 일 실시 예에 따라 트랜잭션 식별 값 및 암호화 결과 쌍을 오픈 서버에서 획득할 수 있다. 예를 들어, 전자 장치(100)는 획득한 트랜잭션 식별 값을 웹 서버에서 검색하여, 트랜잭션 식별 값 및 암호화 결과 쌍을 웹 서버에서 로드할 수 있다.
한편, S1130 단계 내지 S1140 단계가 수행된 후, S1145 단계 내지 S1150 단계가 수행되는 것으로 서술되었으나, 이는 일 실시 예에 불과하다. 예를 들어, S1130 단계 내지 S1140 단계와 S1145 단계 내지 S1150 단계가 병렬적으로 수행되거나, S1145 단계 내지 S1150 단계가 수행된 후, S1130 단계 내지 S1140 단계가 수행될 수 있다.
S1155 단계에서, 전자 장치(100)는 일 실시 예에 따라 암호화 결과를 복호화할 수 있다. 예를 들어, 전자 장치(100)는 획득한 개인 키를 이용하여 암호화 결과를 복호화할 수 있다.
S1160 단계에서, 전자 장치(100)는 일 실시 예에 따라 복호화 결과와 트랜잭션 식별 값이 일치하는지 여부를 확인할 수 있다.
한편, 도 11은 전자 장치(100) 또는 송금 가상자산사업자 서버(140)가 트랜잭션 식별 값을 암호화 또는 복호화하고 일치하는지 여부를 확인하는 것으로 도시하지만, 이는 일 실시 예에 불과하여, 전술한 바에 한정되지 않는다. 예를 들어, 도 11은 전자 장치(100) 또는 송금 가상자산사업자 서버(140)는 성명의 데이터 또는 생년월일 데이터 등을 암호화 또는 복호화하고 일치하는지 여부를 확인할 수 있다.
S1165 단계에서, 전자 장치(100)는 일 실시 예에 따라 이체된 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다. 예를 들어, 전자 장치(100)는 트랜잭션 식별 값 등에 기초하여, 설정된 시간마다 또는 응답 메시지를 수신할 때마다 이체된 가상 자산을 수신 가상 자상 주소의 잔고에 반영할 수 있다.
한편, 송수신을 보다 엄격하게 검증하기 위하여, 전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140) 및 사용자 단말(160)은 도 2a 내지 도 4b 및 도 8 내지 도 11과 관련하여 전술된 동작들 중 적어도 하나를 함께 수행할 수 있다. 예를 들어, 전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140) 및 사용자 단말(160)은 도 2a와 관련하여 서술된 바와 같이 성명의 해시 값 및 생년월일의 해시 값이 일치하는지 여부를 확인한 후, 도 8과 관련하여 서술된 바와 같이 OTP가 일치하는지 여부를 확인할 수 있다. 또는, 전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140) 및 사용자 단말(160)은 도 11과 관련하여 서술된 바와 같이 트랜잭션 식별 값이 일치하는 여부를 확인한 후, 도 2b와 관련하여 서술된 바와 같이 성명의 해시 값 및 생년월일의 해시 값이 일치하는지 여부를 확인할 수 있다. 이외에도 전자 장치(100), 수취 가상자산사업자 서버(120), 송금 가상자산사업자 서버(140) 및 사용자 단말(160)은 도 2a 내지 도 4b 및 도 8 내지 도 11과 관련하여 전술된 동작들을 다양하게 조합하여 수취인 또는 송금인을 검증할 수 있다.
도 12는 일 실시 예에 따른 전자 장치의 수취인(beneficiary) 검증 방법의 흐름도를 나타낸다. 중복되는 내용에 대해서는 전술한 기재가 적용될 수 있다.
S1200 단계에서, 전자 장치는 송금인(originator)의 성명(full name) 데이터, 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별할 수 있다.
S1220 단계에서, 전자 장치는 송금인의 성명 데이터를 기초로 생성된 송금인의 성명의 해시 값 세트 및 송금인의 생년월일 데이터를 기초로 생성된 송금인의 생년월일의 해시 값 세트를 식별할 수 있다.
일 실시 예에 따르면, 전자 장치는 송금인의 성명의 해시 값 세트 및 송금인의 생년월일의 해시 값 세트를 식별할 때, 송금인의 성명 데이터에서 공백을 포함하는 설정된 문자를 제거할 수 있다.
일 실시 예에 따르면, 전자 장치는 송금인의 성명의 해시 값 세트 및 송금인의 생년월일의 해시 값 세트를 식별할 때, 송금인의 성명 데이터에 포함된 문자의 대소문자(letter case)를 설정된 케이스로 변환할 수 있다.
일 실시 예에 따르면, 송금인의 성명의 해시 값 세트는, 이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제1 해시 값; 성 및 이름 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제2 해시 값; 또는 성, 이름 및 적어도 하나의 중간 이름(middle name)을 포함하는 복수의 엔트리들로 구성된 송금인의 성명 정보를 기초로 생성된 제3 해시 값 중 적어도 하나를 포함할 수 있다.
일 실시 예에 따르면, 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트는, 이름 및 성 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제4 해시 값; 성 및 이름 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제5 해시 값; 또는 성, 이름 및 적어도 하나의 중간 이름을 포함하는 복수의 엔트리들로 구성된 수취인의 성명 정보를 기초로 생성된 제6 해시 값 중 적어도 하나를 포함할 수 있다.
S1240 단계에서, 전자 장치는 송금인의 성명의 해시 값 세트, 송금인의 생년월일의 해시 값 세트 및 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지는, 검증 대상의 타입을 나타내는 값, 가상 자산의 타입을 나타내는 값, 가상 자산의 타입에 따른 보조 가상자산주소 또는 송금인의 성명의 해시 값 세트 또는 송금인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트(hash salt) 값 중 적어도 하나를 더 포함할 수 있다.
S1260 단계에서, 전자 장치는 검증 요청 메시지에 기초하여 수행된, 송금인과 수취인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 수취 서버로부터 수신할 수 있다.
일 실시 예에 따르면, 검증 결과 정보에 기초하여 송금인의 송금 가산자산주소로부터 수취 가상자산주소로 가상 자산의 이체의 수행 여부가 결정될 수 있다. 예를 들어, 응답 메시지가 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 가상 자산의 이체가 수행되는 것으로 결정될 수 있다. 또는, 응답 메시지가 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보, 송금인의 성명의 해시 값 세트 및 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 송금인의 생년월일의 해시 값 세트 및 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 하나를 포함하는 경우, 가상 자산의 이체가 수행되는 것이 차단되는 것으로 결정될 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보; 송금인의 성명의 해시 값 세트 및 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 송금인의 생년월일의 해시 값 세트 및 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는 수취인이 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트에 포함된 어느 하나의 해시 값이 제1 해시 값, 제2 해시 값 또는 제3 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 송금인의 성명의 해시 값 세트 및 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 송금인의 성명의 해시 값 세트에 포함된 어느 하나의 해시 값이 제4 해시 값, 제5 해시 값 또는 제6 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 송금인의 성명의 해시 값 세트 및 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, 수취 가상자산주소는, 수취 가상자산주소에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 수취 서버의 데이터베이스에 수취 가상자산주소와 일치하는 주소가 있는지 확인될 수 있다. 또한, 수취 가상자산주소는, 수취 가상자산주소에 포함된 설정된 프리픽스(prefix)를 제거하고, 수취 서버의 데이터베이스에 가상자산주소와 일치하는 주소가 있는지 확인될 수 있다.
도 13은 실시 예에 따른 전자 장치의 송금인(originator) 검증 방법의 흐름도를 나타낸다. 중복되는 내용에 대해서는 전술한 기재가 적용될 수 있다.
S1300 단계에서, 전자 장치는 이체된 가상 자산 및 수취 가상자산주소를 식별할 수 있다.
S1320 단계에서, 전자 장치는 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 수취인의 생년월일 데이터를 식별할 수 있다.
S1340 단계에서, 전자 장치는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 및 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트를 식별할 수 있다.
일 실시 예에 따르면, 전자 장치는 수취인의 성명의 해시 값 세트 및 수취인의 생년월일의 해시 값 세트를 식별할 때, 수취인의 성명 데이터에서 공백을 포함하는 설정된 문자를 제거할 수 있다.
일 실시 예에 따르면, 전자 장치는 수취인의 성명의 해시 값 세트 및 수취인의 생년월일의 해시 값 세트를 식별할 때, 수취인의 성명 데이터에 포함된 문자의 대소문자(letter case)를 설정된 케이스로 변환할 수 있다.
일 실시 예에 따르면, 수취인의 성명의 해시 값 세트는, 이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제1 해시 값, 성 및 이름 순서의 단일 엔트리로 구성된 수취인의 성명 정보를 기초로 생성된 제2 해시 값 또는 성, 이름 및 적어도 하나의 중간 이름(middle name)을 포함하는 복수의 엔트리들로 구성된 수취인의 성명 정보를 기초로 생성된 제3 해시 값 중 적어도 하나를 포함할 수 있다.
일 실시 예에 따르면, 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 송금인의 성명의 해시 값 세트는, 이름 및 성 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제4 해시 값, 성 및 이름 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제5 해시 값 또는 성, 이름 및 적어도 하나의 중간 이름을 포함하는 복수의 엔트리들로 구성된 송금인의 성명 정보를 기초로 생성된 제6 해시 값 중 적어도 하나를 포함할 수 있다.
S1360 단계에서, 전자 장치는 수취인의 성명의 해시 값 세트, 수취인의 생년월일의 해시 값 세트 및 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신할 수 있다.
일 실시 예에 따르면, 검증 요청 메시지는, 가상 자산의 이체에 대응하는 트랜잭션 식별 값, 검증 대상의 타입을 나타내는 값, 이체하고자 하는 가상 자산의 타입을 나타내는 값, 가상 자산의 타입에 따른 보조 가상자산주소 또는 수취인의 성명의 해시 값 세트 또는 수취인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트(hash salt) 값 중 적어도 하나를 더 포함할 수 있다.
S1380 단계에서, 전자 장치는 검증 요청 메시지에 기초하여 수행된, 수취인과 송금인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 송금 서버로부터 수신할 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 트랜잭션 식별 값과 일치하는 값이 송금 서버와 관련된 트랜잭션 식별 값 중에서 확인되지 않았다는 것을 나타내는 정보; 수취 가상자산주소 또는 보조 가상자산주소와 일치하는 주소가 송금 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보; 수취인의 성명의 해시 값 세트 및 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 송금인의 성명 데이터를 기초로 생성된 송금인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 수취인의 생년월일의 해시 값 세트 및 송금인의 생년월일 데이터를 기초로 생성된 송금인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 수취 가상자산주소 또는 트랜잭션 식별 값에 대응하는 송금인의 성명의 해시 값 세트 중 어느 하나의 해시 값이 제1 해시 값, 제2 해시 값 또는 제3 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 수취인의 성명의 해시 값 세트 및 송금인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보는, 수취인의 성명의 해시 값 세트 중 어느 하나의 해시 값이 제4 해시 값, 제5 해시 값 또는 제6 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 수취인의 성명의 해시 값 세트 및 송금인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, 검증 결과 정보가 송금인이 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 트랜잭션 식별 값에 기초하여, 설정된 시간마다 가상 자산을 수취 가상자산주소의 잔고에 반영할 수 있다.
일 실시 예에 따르면, 수취 가상자산주소는, 수취 가상자산주소에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 송금 서버의 데이터베이스에 수취 가상자산주소와 일치하는 주소가 있는지 확인될 수 있다. 또한, 수취 가상자산주소는, 수취 가상자산주소에 포함된 설정된 프리픽스(prefix)를 제거하고, 송금 서버의 데이터베이스에 수취 가상자산주소와 일치하는 주소가 있는지 확인될 수 있다.
일 실시 예에 따르면, 트랜잭션 식별 값은, 트랜잭션 식별 값에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 송금 서버의 데이터베이스에 트랜잭션 식별 값과 일치하는 값이 있는지 확인될 수 있다. 또한, 트랜잭션 식별 값은, 트랜잭션 식별 값의 타입이 식별자 타입 및 해시 값 타입을 포함하는 경우, 해시 값 타입의 트랜잭션 식별 값을 이용하여, 송금 서버의 데이터베이스에 트랜잭션 식별 값과 일치하는 값이 있는지 확인될 수 있다. 트랜잭션 식별 값은, 선행 제로(leading zero) 값을 포함하는 트랜잭션 식별 값을 이용하여, 송금 서버의 데이터베이스에 트랜잭션 식별 값과 일치하는 값이 있는지 확인될 수 있다.
도 14는 일 실시 예에 따른 전자 장치(100)의 블록도를 나타낸다.
전자 장치(100)는 일 실시 예에 따라, 메모리(1400) 및 하나 이상의 프로세서(processor)(1450)를 포함할 수 있다. 도 14에 도시된 전자 장치(100)는 본 실시 예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 14에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시 예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
예를 들어, 전자 장치는 일 실시 예에 따라 통신부(communication device)(미도시)를 포함할 수 있다. 통신부는 유/무선 통신을 수행하기 위한 장치로서, 외부의 전자 장치와 통신할 수 있다. 외부의 전자 장치는 단말 또는 서버가 될 수 있다. 또한, 통신부가 이용하는 통신 기술에는 GSM(global system for mobile communication), CDMA(code division multi access), LTE(long term evolution), 5G, WLAN(wireless LAN), Wi-Fi(wireless-fidelity), 블루투스(Bluetooth?), RFID(radio frequency identification), 적외선 통신(infrared data association, IrDA), ZigBee, NFC(near field communication) 등이 있을 수 있다.
하나 이상의 프로세서(1450)는 전자 장치(100)의 전반의 동작을 제어하고 데이터 및 신호를 처리할 수 있다. 하나 이상의 프로세서(1450)는 적어도 하나의 하드웨어 유닛으로 구성될 수 있다. 또한, 하나 이상의 프로세서(1450)는 메모리(1400)에 저장된 하나 이상의 명령을 실행하여 생성되는 하나 이상의 소프트웨어 모듈에 의해 동작할 수 있다.
하나 이상의 프로세서(1450)는 송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하고, 상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하고, 상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하고, 상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하도록 설정될 수 있다.
하나 이상의 프로세서(1450)는 이체된 가상 자산 및 수취 가상자산주소를 식별하고, 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 상기 수취인의 생년월일 데이터를 식별하고, 상기 수취인의 성명 데이터를 기초로 생성된 상기 수취인의 성명의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 상기 수취인의 생년월일의 해시 값 세트를 식별하고, 상기 수취인의 성명의 해시 값 세트, 상기 수취인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신하고, 상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 송금 서버로부터 수신하도록 설정될 수 있다.
전술한 실시 예들에 따른 전자 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-Access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(digital versatile disc, DVD)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독 가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
본 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시 예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. "매커니즘", "요소", "수단", "구성"과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
전술한 실시 예들은 일 예시일 뿐 후술하는 청구항들의 범위 내에서 다른 실시 예들이 구현될 수 있다.

Claims (20)

  1. 전자 장치의 수취인(beneficiary) 검증 방법에 있어서,
    송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하는 단계;
    상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계;
    상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하는 단계; 및
    상기 검증 요청 메시지에 기초하여 수행된, 상기 송금인과 상기 수취인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하는 단계를 포함하고,
    상기 검증 결과 정보에 기초하여 상기 송금인의 송금 가산자산주소로부터 상기 수취 가상자산주소로의 상기 가상 자산의 이체의 수행 여부가 결정되는, 수취인 검증 방법.
  2. 제1 항에 있어서, 상기 검증 요청 메시지는,
    검증 대상의 타입을 나타내는 값;
    상기 가상 자산의 타입을 나타내는 값;
    상기 가상 자산의 타입에 따른 보조 가상자산주소; 또는
    상기 송금인의 성명의 해시 값 세트 또는 상기 송금인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트(hash salt) 값 중 적어도 하나를 더 포함하는, 수취인 검증 방법.
  3. 제2 항에 있어서, 상기 검증 결과 정보는,
    상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보;
    상기 송금인의 성명의 해시 값 세트 및 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는
    상기 수취인이 상기 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함하는, 수취인 검증 방법.
  4. 제3 항에 있어서,
    상기 응답 메시지가 상기 수취인이 상기 송금인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 상기 가상 자산의 이체가 수행되는 것으로 결정되고,
    상기 응답 메시지가 상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 수취 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보, 상기 송금인의 성명의 해시 값 세트 및 상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 수취인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 하나를 포함하는 경우, 상기 가상 자산의 이체가 수행되는 것이 차단되는 것으로 결정되는, 수취인 검증 방법.
  5. 제1 항에 있어서, 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계는,
    상기 송금인의 성명 데이터에서 공백을 제거하는 단계를 포함하는, 수취인 검증 방법.
  6. 제1 항에 있어서, 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일의 해시 값 세트를 식별하는 단계는,
    상기 송금인의 성명 데이터에 포함된 문자의 대소문자(letter case)를 설정된 케이스로 변환하는 단계를 포함하는, 수취인 검증 방법.
  7. 제1 항에 있어서, 상기 송금인의 성명의 해시 값 세트는,
    이름(first name) 및 성(last name) 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제1 해시 값;
    상기 성 및 상기 이름 순서의 단일 엔트리로 구성된 송금인의 성명 정보를 기초로 생성된 제2 해시 값; 또는
    상기 성, 상기 이름 및 적어도 하나의 중간 이름(middle name)을 포함하는 복수의 엔트리들로 구성된 송금인의 성명 정보를 기초로 생성된 제3 해시 값 중 적어도 하나를 포함하는, 수취인 검증 방법.
  8. 제7 항에 있어서, 상기 검증 결과 정보는,
    상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터를 기초로 생성된 수취인의 성명의 해시 값 세트에 포함된 어느 하나의 해시 값이 상기 제1 해시 값, 상기 제2 해시 값 또는 상기 제3 해시 값 중 어느 하나의 해시 값과 일치하지 않는 경우, 상기 송금인의 성명의 해시 값 세트 및 상기 수취인의 성명의 해시 값 세트 간의 불일치에 대한 정보를 포함하는, 수취인 검증 방법.
  9. 제1 항에 있어서, 상기 수취 가상자산주소는,
    상기 수취 가상자산주소에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 상기 수취 서버의 데이터베이스에 상기 수취 가상자산주소와 일치하는 주소가 있는지 확인되는, 수취인 검증 방법.
  10. 제1 항에 있어서, 상기 수취 가상자산주소는,
    상기 수취 가상자산주소에 포함된 설정된 프리픽스(prefix)를 제거하고, 상기 수취 서버의 데이터베이스에 상기 수취 가상자산주소와 일치하는 주소가 있는지 확인되는, 수취인 검증 방법.
  11. 전자 장치의 송금인 검증 방법에 있어서,
    이체된 가상 자산 및 수취 가상자산주소를 식별하는 단계;
    상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 상기 수취인의 생년월일 데이터를 식별하는 단계;
    상기 수취인의 성명 데이터를 기초로 생성된 상기 수취인의 성명의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 상기 수취인의 생년월일의 해시 값 세트를 식별하는 단계;
    상기 수취인의 성명의 해시 값 세트, 상기 수취인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신하는 단계; 및
    상기 검증 요청 메시지에 기초하여 수행된, 상기 수취인과 상기 송금인의 일치 여부에 대한 검증 결과 정보를 포함하는 응답 메시지를 상기 송금 서버로부터 수신하는 단계를 포함하는, 송금인 검증 방법.
  12. 제11 항에 있어서, 상기 검증 요청 메시지는,
    상기 가상 자산의 이체에 대응하는 트랜잭션 식별 값;
    검증 대상의 타입을 나타내는 값;
    상기 가상 자산의 타입을 나타내는 값;
    상기 가상 자산의 타입에 따른 보조 가상자산주소; 또는
    상기 수취인의 성명의 해시 값 세트 또는 상기 수취인의 생년월일의 해시 값 세트 중 적어도 하나와 연관된 해시 솔트 값 중 적어도 하나를 더 포함하는, 송금인 검증 방법.
  13. 제12 항에 있어서, 상기 검증 결과 정보는,
    상기 트랜잭션 식별 값과 일치하는 값이 상기 송금 서버와 관련된 트랜잭션 식별 값 중에서 확인되지 않았다는 것을 나타내는 정보;
    상기 수취 가상자산주소 또는 상기 보조 가상자산주소와 일치하는 주소가 상기 송금 서버와 관련된 가상자산주소 중에서 확인되지 않았다는 것을 나타내는 정보;
    상기 수취인의 성명의 해시 값 세트 및 상기 수취 가상자산주소 또는 상기 트랜잭션 식별 값에 대응하는 송금인의 성명 데이터를 기초로 생성된 송금인의 성명의 해시 값 세트 간의 불일치에 대한 정보 또는 상기 수취인의 생년월일의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 송금인의 생년월일의 해시 값 세트 간의 불일치에 대한 정보 중 적어도 하나; 또는
    상기 송금인이 상기 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보 중 하나를 포함하는, 송금인 검증 방법.
  14. 제13 항에 있어서,
    상기 검증 결과 정보가 상기 송금인이 상기 수취인과 일치하는 것으로 검증되었다는 것을 나타내는 정보를 포함하는 경우, 상기 트랜잭션 식별 값에 기초하여, 설정된 시간마다 상기 가상 자산을 상기 수취 가상자산주소의 잔고에 반영하는 단계를 더 포함하는, 송금인 검증 방법.
  15. 제12 항에 있어서, 상기 트랜잭션 식별 값은,
    상기 트랜잭션 식별 값에 포함된 적어도 하나의 문자가 소문자 또는 대문자인지와 무관하게, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법.
  16. 제12 항에 있어서, 상기 트랜잭션 식별 값은,
    상기 트랜잭션 식별 값의 타입이 식별자 타입 및 해시 값 타입을 포함하는 경우, 상기 해시 값 타입의 트랜잭션 식별 값을 이용하여, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법.
  17. 제12 항에 있어서, 상기 트랜잭션 식별 값은,
    선행 제로(leading zero) 값을 포함하는 트랜잭션 식별 값을 이용하여, 상기 송금 서버의 데이터베이스에 상기 트랜잭션 식별 값과 일치하는 값이 있는지 확인되는, 송금인 검증 방법.
  18. 제1 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 비일시적 기록매체.
  19. 전자 장치로서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에 의해 실행되는 하나 이상의 명령을 저장하는 메모리를 포함하고,
    상기 하나 이상의 프로세서는, 상기 하나 이상의 명령을 실행함으로써,
    송금인(originator)의 성명(full name) 데이터, 상기 송금인의 생년월일(date of birth) 데이터 및 수취 가상자산주소를 포함하는 가상 자산의 이체에 관한 정보를 식별하고,
    상기 송금인의 성명 데이터를 기초로 생성된 상기 송금인의 성명의 해시 값 세트 및 상기 송금인의 생년월일 데이터를 기초로 생성된 상기 송금인의 생년월일의 해시 값 세트를 식별하고,
    상기 송금인의 성명의 해시 값 세트, 상기 송금인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 수취(beneficiary) 서버로 송신하고,
    상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 수취 서버로부터 수신하도록 설정되고,
    상기 검증 결과 정보에 기초하여 상기 송금인의 송금 가산자산주소로부터 상기 수취 가상자산주소로 상기 가상 자산의 이체의 수행 여부가 결정되는, 전자 장치.
  20. 전자 장치로서,
    하나 이상의 프로세서; 및
    상기 하나 이상의 프로세서에 의해 실행되는 하나 이상의 명령을 저장하는 메모리를 포함하고,
    상기 하나 이상의 프로세서는, 상기 하나 이상의 명령을 실행함으로써,
    이체된 가상 자산 및 수취 가상자산주소를 식별하고,
    상기 수취 가상자산주소에 대응하는 수취인의 성명 데이터 및 상기 수취인의 생년월일 데이터를 식별하고,
    상기 수취인의 성명 데이터를 기초로 생성된 상기 수취인의 성명의 해시 값 세트 및 상기 수취인의 생년월일 데이터를 기초로 생성된 상기 수취인의 생년월일의 해시 값 세트를 식별하고,
    상기 수취인의 성명의 해시 값 세트, 상기 수취인의 생년월일의 해시 값 세트 및 상기 수취 가상자산주소를 포함하는 검증 요청 메시지를 송금(ordering) 서버로 송신하고,
    상기 검증 요청 메시지에 기초하여 수행된 검증 결과 정보를 포함하는 응답 메시지를 상기 송금 서버로부터 수신하도록 설정된, 전자 장치.
KR1020220136091A 2022-03-24 2022-10-21 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치 KR20230138864A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP23163061.7A EP4250205A1 (en) 2022-03-24 2023-03-21 A method of verifying originator or beneficiary and an electronic device performing thereof
US18/188,254 US20230306542A1 (en) 2022-03-24 2023-03-22 Method of verifying originator or beneficiary and an electronic device performing thereof
PCT/KR2023/003817 WO2023182814A1 (en) 2022-03-24 2023-03-22 A method of verifying originator or beneficiary and an electronic device performing thereof
KR1020230159577A KR20230162911A (ko) 2022-03-24 2023-11-16 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20220036951 2022-03-24
KR1020220036951 2022-03-24
KR20220039927 2022-03-30
KR1020220039927 2022-03-30

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230159577A Division KR20230162911A (ko) 2022-03-24 2023-11-16 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치

Publications (1)

Publication Number Publication Date
KR20230138864A true KR20230138864A (ko) 2023-10-05

Family

ID=88294945

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220136091A KR20230138864A (ko) 2022-03-24 2022-10-21 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치

Country Status (1)

Country Link
KR (1) KR20230138864A (ko)

Similar Documents

Publication Publication Date Title
US20210150521A1 (en) Blockchain-based privacy transaction and blockchain-based privacy transaction application methods and apparatuses
US11849051B2 (en) System and method for off-chain cryptographic transaction verification
CN111431713B (zh) 一种私钥存储方法、装置和相关设备
US20140279542A1 (en) Mobile currency messaging systems
US20150332224A1 (en) System and method for rendering virtual currency related services
US10984115B2 (en) System for triple format preserving encryption
US10609010B2 (en) System, methods and software application for sending secured messages on decentralized networks
AU2018204640A1 (en) Payment network with service provider directory function
US20200366669A1 (en) Systems and methods for activating an authentication token within a communication platform
CN112600830B (zh) 业务数据处理方法、装置、电子设备及存储介质
KR20210103227A (ko) 블록체인 송금 서비스 시스템의 동작 방법과 송금을 위한 전자 지갑
JP4832922B2 (ja) メール転送システム
JP2012150793A (ja) セキュア通信ネットワークを提供及び運営するシステム及び方法
JP5593359B2 (ja) 通信制御装置、メッセージ転送方法およびメッセージ転送プログラム
US20190005510A1 (en) Risk assesment based on listing information
KR20230138864A (ko) 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치
KR20230162911A (ko) 송금인 또는 수취인을 검증하는 방법 및 이를 수행하는 전자 장치
US20210209574A1 (en) Security protection of association between a user device and a user
Khan et al. E-commerce in Pakistan: Growth potentials and e-payment solutions
CN112836239A (zh) 保护隐私的双方协同确定目标对象数据的方法及装置
CN116472694A (zh) 生成、保护和维护表情符号序列数字令牌的系统及方法
TW202130153A (zh) 區塊鏈交易之回叫機制
FI130520B (en) Text message source verification
FI130360B (en) Determining the source of the text message
US20240054459A1 (en) Systems and methods for securely sharing public blockchain addresses