KR102302955B1 - Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof - Google Patents
Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof Download PDFInfo
- Publication number
- KR102302955B1 KR102302955B1 KR1020200047808A KR20200047808A KR102302955B1 KR 102302955 B1 KR102302955 B1 KR 102302955B1 KR 1020200047808 A KR1020200047808 A KR 1020200047808A KR 20200047808 A KR20200047808 A KR 20200047808A KR 102302955 B1 KR102302955 B1 KR 102302955B1
- Authority
- KR
- South Korea
- Prior art keywords
- asset
- spot
- information
- value
- spot asset
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/401—Transaction verification
- G06Q20/4012—Verifying personal identification numbers [PIN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0825—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
-
- H04L2209/38—
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
본 발명은 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버 및 그 동작 방법에 대한 것이다.The present invention relates to a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets and an operating method thereof.
불안정한 경제 상황 속에서, 꾸준한 가치 상승이 기대되는 현물 자산에 관심을 보이는 사람들이 늘어나고 있다. 특히, 대출 규제 및 보유세 증가 등으로 인해 부동산 투자를 통한 기대 수익률이 감소하면서, 사람들은 부동산 외에 금, 다이아몬드와 같은 귀금속, 미술품, 기념주화 등의 거래에도 관심을 보이고 있다.Amid unstable economic conditions, more and more people are showing interest in spot assets, which are expected to increase in value steadily. In particular, as the expected return on real estate investment is decreasing due to loan regulations and increased holding tax, people are showing interest in trading in precious metals such as gold and diamonds, artworks, and commemorative coins in addition to real estate.
이에 따라, 인터넷을 이용한 현물 자산 거래 정보의 활용이 증대되면서, 현물 자산의 매도자와 매수자 간의 매칭을 중개하는 다양한 현물 자산 거래 플랫폼이 등장하고 있다.Accordingly, as the utilization of spot asset transaction information using the Internet increases, various spot asset trading platforms that mediate matching between sellers and buyers of spot assets are emerging.
그러나, 기존의 현물 자산 투자 및 거래 관리 플랫폼들은 단순히 매도자와 매수자를 연결시키는 정도의 서비스를 제공하는데 불과한 수준으로 운영되고 있을 뿐, 현물 자산의 거래 계약까지 진행할 수 있도록 하는 서비스를 제공하고 있지 못하여 실질적인 온라인 현물 자산 거래 플랫폼이라고 보기 어려운 점이 있었다.However, the existing spot asset investment and transaction management platforms are only operating at a level that provides services that simply connect buyers and sellers, and do not provide services that allow even the transaction contract of spot assets. It was difficult to see it as an online spot asset trading platform.
이는 매도자와 매수자가 상호 간의 현물 자산 거래를 믿고 진행할 만큼 신뢰성 있는 계약 보관 방법이 구축되어 있지 않고, 현물 자산과 관련된 데이터 등 현물 자산 거래에 필요한 데이터의 유출을 우려하여 온라인을 통한 현물 자산 거래 플랫폼을 이용하려는 매도자나 매수자가 많지 않아서라고 볼 수 있다.This is because a reliable contract storage method has not been established for the seller and the buyer to trust and proceed with each other's trade in spot assets, and there are concerns about the leakage of data necessary for trade in spot assets, such as data related to spot assets. It can be seen that there are not many sellers or buyers who want to use it.
한편, 최근에는 소정의 데이터를 체인화된 블록으로 구성하여 중앙 서버가 아닌 노드들에 분산 저장함으로써, 해당 데이터에 대한 무결성을 보장할 수 있는 블록체인 기술과, 개인 정보 등 중요 정보를 보호하기 위해 해당 정보를 토큰으로 변환하여 데이터의 전송 과정에 활용함으로써, 중요 정보에 대한 원본 데이터가 유출되지 않도록 하는 토큰화 기술이 널리 활용되고 있다.On the other hand, recently, block chain technology that can ensure the integrity of the data by composing predetermined data into chained blocks and storing them in nodes rather than on a central server, and to protect important information such as personal information Tokenization technology that converts information into tokens and uses them in the data transmission process to prevent leakage of original data for important information is widely used.
여기서, 블록체인 기술은 트랜잭션이라고 하는 소정의 데이터가 생성되면, 블록체인 네트워크에 참여하고 있는 복수의 노드 장치들 중 어느 하나의 노드 장치가 여러 블록들이 체인으로 연결되어 있는 블록체인 데이터에 포함된 이전 블록을 기초로 상기 트랜잭션이 포함된 새로운 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 블록을 상기 블록체인 네트워크를 통해 다른 노드 장치들로 배포함으로써, 소정의 데이터가 복수의 노드 장치들에 분산 저장되도록 하는 기술을 의미한다.Here, in the blockchain technology, when predetermined data called a transaction is generated, any one node device among a plurality of node devices participating in the blockchain network is transferred By creating a new block containing the transaction based on the block, linking the block to the block chain data, and distributing the block to other node devices through the block chain network, predetermined data is It refers to a technology that allows distributed storage in node devices of
따라서, 현물 자산 거래 서비스에서 블록체인을 기반으로 현물 자산 거래 정보와 관련된 데이터를 저장 관리할 수 있도록 하여, 현물 자산의 매도자와 매수자가 손쉽게 현물 자산 정보를 조회하고 거래할 수 있도록 지원하고, 현물 자산 정보를 토큰화하여 관리함으로써, 현물 자산 거래에 대한 신뢰성과 안전성을 높일 수 있는 기술에 대한 연구가 필요하다.Therefore, by enabling the spot asset transaction service to store and manage data related to the spot asset transaction information based on the block chain, the seller and the buyer of the spot asset can easily inquire and trade the spot asset information, and the spot asset By tokenizing and managing information, there is a need for research on technologies that can increase the reliability and safety of spot asset transactions.
본 발명은 현물 자산의 매도자와 매수자가 온라인을 통해 손쉽게 현물 자산 정보를 조회하고 거래할 수 있도록 지원하는 자산 거래 플랫폼 서버 및 그 동작 방법을 제시하고자 한다. An object of the present invention is to provide an asset trading platform server and an operating method thereof that support sellers and buyers of spot assets to easily inquire and trade spot asset information online.
또한, 본 발명에 따른 자산 거래 플랫폼 서버 및 그 동작 방법은 현물 자산 정보를 토큰화하여 관리함으로써, 현물 자산 정보에 대한 데이터가 유출되는 것을 방지하고, 현물 자산 거래에 대한 신뢰성을 높이고자 한다.In addition, the asset trading platform server and the method of operation thereof according to the present invention are to prevent leakage of data on the spot asset information by tokenizing and managing the spot asset information, and to increase the reliability of the spot asset transaction.
본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버는 전자 서명을 위한 미리 정해진 개인키 - 상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있음 - 가 저장되어 있는 개인키 저장부, 매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보 - 상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있음 - 및 각 현물 자산에 대응되는 현물 자산 토큰 - 상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있음 - 이 저장되어 있는 현물 자산 정보 데이터베이스, 상기 복수의 매도자들 중 제1 매도자의 매도자 단말로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 상기 현물 자산 정보 데이터베이스에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 상기 제1 매도자의 매도자 단말 정보에 대응시켜 저장하는 현물 자산 정보 저장부, 상기 복수의 매수자들 중 제1 매수자의 매수자 단말로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 토큰 전송부, 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지 - 상기 검증 완료 메시지는 상기 제1 매수자의 매수자 단말에 상기 제2 현물 자산 토큰이 수신된 이후, 상기 제1 매수자의 매수자 단말이 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 상기 제1 매수자의 매수자 단말에 사전 배포되어 있는 상기 공개키로 복호화한 값과 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교한 결과, 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하기 위해서 생성한 메시지를 의미함 - 가 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 현물 자산 정보 제공부, 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 상기 제2 매도자의 매도자 단말로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송하는 구매 승인 요청 전송부, 상기 제2 매도자의 매도자 단말로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성하는 트랜잭션 생성부 및 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 블록체인 등록 요청부를 포함하고, 상기 제1 노드 장치는 상기 자산 거래 플랫폼 서버로부터 상기 현물 자산 거래 트랜잭션이 수신되면, 상기 제1 노드 장치의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파한다.A blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention is a predetermined private key for electronic signature - The private key and the public key constituting the key pair are It is pre-distributed to the buyer terminals of a plurality of buyers who are registered as buyer members - a private key storage unit in which is stored, seller terminal information of a plurality of sellers registered as seller members, and the goods registered by each of the plurality of sellers Spot asset information for the asset - The spot asset information includes information on the name, saleable quantity and unit price of each spot asset - and a spot asset token corresponding to each spot asset - The spot asset token includes each spot asset The hash value generated by applying the data of the in-kind asset information about the asset as an input to a preset hash function, and the digital signature value generated by encrypting the hash value with the private key - The stored in-kind asset information When the first spot asset information for the first spot asset is received from the database, the seller terminal of the first seller among the plurality of sellers, and a spot asset registration request for the first spot asset is received, the first spot asset applying data of information to the hash function as an input to generate a first hash value, encrypting the first hash value with the private key to generate a first digital signature value, the first hash value and the first electronic signature After generating a first spot asset token including a signature value, the first spot asset information and the first spot asset token are stored in the spot asset information database in correspondence with the seller terminal information of the first seller When a request for provision of spot asset information on a second spot asset registered by a second seller of the plurality of sellers is received from a storage unit, a buyer terminal of a first buyer among the plurality of buyers, from the spot asset information database Extracting a second spot asset token corresponding to the second spot asset A token transmission unit for transmitting to the buyer terminal of the first buyer, a verification completion message indicating that the verification of the second spot asset token has been completed from the purchaser terminal of the first buyer - The verification completion message is the buyer of the first buyer After the second spot asset token is received by the terminal, the buyer terminal of the first buyer converts the electronic signature value included in the second spot asset token to the public key distributed in advance to the buyer terminal of the first buyer As a result of comparing the decrypted value and the hash value of the data of the spot asset information included in the second spot asset token to match each other, when it is confirmed that the two values match each other, for the second spot asset token When - means a message generated to indicate that verification is complete - is received, the second spot asset information that is the spot asset information for the second spot asset is extracted from the spot asset information database, and the buyer terminal of the first buyer a purchase request for the second spot asset by the purchase quantity according to the purchase quantity information together with the purchase quantity information for the second spot asset from the purchaser terminal of the first buyer is received After confirming the seller terminal information of the second seller from the spot asset information database, purchase authorization request transmission for transmitting a purchase authorization request for the second kind asset equal to the purchase quantity to the seller terminal of the second seller When a purchase approval confirmation message is received from the seller terminal of the second seller corresponding to the purchase approval request for the second spot asset equal to the purchase quantity, the name of the second spot asset, the second spot asset A transaction generating unit for generating a spot asset transaction transaction including the purchase quantity, the unit price for the second spot asset, information of the first buyer and information of the second seller, and a plurality of blocks constituting the blockchain network A first node device that is any one of the node devices and a blockchain registration request unit that transmits a registration request of the spot asset transaction transaction to the blockchain network while transmitting the spot asset transaction transaction to the first node device after selecting , wherein the first node device includes When the in-kind asset transaction transaction is received from the asset trading platform server, a block including the in-kind asset transaction transaction is generated based on the block chain data stored in the memory of the first node device, and the block is converted into the block chain After chaining the data, the block is propagated to other node devices except for the first node device among the plurality of node devices through the blockchain network.
또한, 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법은 전자 서명을 위한 미리 정해진 개인키 - 상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있음 - 가 저장되어 있는 개인키 저장부를 유지하는 단계, 매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보 - 상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있음 - 및 각 현물 자산에 대응되는 현물 자산 토큰 - 상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있음 - 이 저장되어 있는 현물 자산 정보 데이터베이스를 유지하는 단계, 상기 복수의 매도자들 중 제1 매도자의 매도자 단말로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 상기 현물 자산 정보 데이터베이스에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 상기 제1 매도자의 매도자 단말 정보에 대응시켜 저장하는 단계, 상기 복수의 매수자들 중 제1 매수자의 매수자 단말로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 단계, 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지 - 상기 검증 완료 메시지는 상기 제1 매수자의 매수자 단말에 상기 제2 현물 자산 토큰이 수신된 이후, 상기 제1 매수자의 매수자 단말이 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 상기 제1 매수자의 매수자 단말에 사전 배포되어 있는 상기 공개키로 복호화한 값과 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교한 결과, 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하기 위해서 생성한 메시지를 의미함 - 가 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 단계, 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 상기 제2 매도자의 매도자 단말로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송하는 단계, 상기 제2 매도자의 매도자 단말로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성하는 단계 및 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계를 포함하고, 상기 제1 노드 장치는 상기 자산 거래 플랫폼 서버로부터 상기 현물 자산 거래 트랜잭션이 수신되면, 상기 제1 노드 장치의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파한다.In addition, according to an embodiment of the present invention, a method of operating a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets is a predetermined private key for electronic signature - the private key and the key pair. The public key constituting the public key is pre-distributed to the buyer terminals of a plurality of buyers who are registered as buyer members - maintaining a stored private key storage unit, seller terminal information of a plurality of sellers registered as seller members, the above Spot asset information for the spot assets registered by each of the plurality of sellers - The spot asset information includes information on the name, saleable quantity and unit price of each spot asset - and spot asset tokens corresponding to each spot asset - The in-kind asset token includes a hash value generated by applying data of the in-kind asset information for each spot asset as an input to a preset hash function, and an electronic signature value generated by encrypting the hash value with the private key. - maintaining the stored spot asset information database, while receiving the first spot asset information for the first spot asset from the seller terminal of the first seller among the plurality of sellers, the spot for the first spot asset When an asset registration request is received, a first hash value is generated by applying the data of the first in-kind asset information as an input to the hash function, and a first electronic signature value is generated by encrypting the first hash value with the private key and, after generating a first spot asset token including the first hash value and the first electronic signature value, the first spot asset information and the first spot asset token are stored in the spot asset information database to the first seller Storing in correspondence with the seller terminal information of the plurality of buyers, when a request for provision of spot asset information for a second spot asset registered by a second seller among the plurality of sellers is received from a buyer terminal of a first buyer among the plurality of buyers , a second corresponding to the second spot asset from the spot asset information database extracting a spot asset token and transmitting it to the buyer terminal of the first buyer; After receiving the second spot asset token to the buyer terminal of the first buyer, the buyer terminal of the first buyer pre-distributes the electronic signature value included in the second spot asset token to the buyer terminal of the first buyer As a result of comparing the hash value of the data of the spot asset information included in the second spot asset token with the value decrypted with the public key, when it is confirmed that both values match each other, the second Means a message generated to indicate that verification of the spot asset token has been completed - When is received, the second spot asset information, which is the spot asset information for the second spot asset, is extracted from the spot asset information database to extract the second spot asset information 1 The step of transmitting to the buyer terminal of the first buyer, the purchase request for the second spot asset by the purchase quantity according to the purchase quantity information together with the purchase quantity information for the second spot asset from the buyer terminal of the first buyer Upon receiving, after confirming the seller terminal information of the second seller from the spot asset information database, transmitting a purchase approval request for the second spot asset equal to the purchase quantity to the seller terminal of the second seller; When a purchase approval confirmation message corresponding to a purchase approval request for the second spot asset equal to the purchase quantity is received from the seller terminal of the second seller, the name of the second spot asset, the second spot asset generating a spot asset transaction transaction including the purchase quantity, the unit price for the second spot asset, the information of the first buyer and the information of the second seller, and any of a plurality of node devices constituting the blockchain network After selecting one first node device, the sending a registration request of the spot asset transaction transaction to the blockchain network while transmitting the spot asset transaction transaction to a first node device, wherein the first node device sends the spot asset transaction transaction from the asset trading platform server When an asset transaction transaction is received, a block including the in-kind asset transaction transaction is generated based on the block chain data stored in the memory of the first node device, and the block is chained to the block chain data. , propagates the block to other node devices except for the first node device among the plurality of node devices through the blockchain network.
본 발명은 현물 자산의 매도자와 매수자가 온라인을 통해 손쉽게 현물 자산 정보를 조회하고 거래할 수 있도록 지원하는 자산 거래 플랫폼 서버 및 그 동작 방법을 제시할 수 있다. The present invention can provide an asset trading platform server and an operating method thereof that support the seller and the buyer of spot assets to easily inquire and trade spot asset information online.
또한, 본 발명에 따른 자산 거래 플랫폼 서버 및 그 동작 방법은 현물 자산 정보를 토큰화하여 관리함으로써, 현물 자산 정보에 대한 데이터가 유출되는 것을 방지할 수 있고, 현물 자산 거래에 대한 신뢰성을 높일 수 있다.In addition, the asset trading platform server and the method of operation thereof according to the present invention can prevent the leakage of data on the spot asset information by tokenizing and managing the spot asset information, and can increase the reliability of the spot asset transaction. .
도 1은 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법을 도시한 순서도이다. 1 is a diagram illustrating the structure of a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention.
2 is a flowchart illustrating an operation method of a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. These descriptions are not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. While describing each drawing, like reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, refer to those of ordinary skill in the art to which the present invention belongs. It has the same meaning as is commonly understood by those who have it.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다. In this document, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated. In addition, in various embodiments of the present invention, each of the components, functional blocks or means may be composed of one or more sub-components, and the electrical, electronic, and mechanical functions performed by each component are electronic. A circuit, an integrated circuit, an ASIC (Application Specific Integrated Circuit), etc. may be implemented with various well-known devices or mechanical elements, and may be implemented separately or two or more may be integrated into one.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.On the other hand, the blocks in the accompanying block diagram or steps in the flowchart are computer program instructions that are loaded in a processor or memory of equipment capable of data processing, such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer, and perform specified functions. can be interpreted as meaning Since these computer program instructions may be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks of the block diagrams or the steps of the flowcharts are produced as articles of manufacture containing instruction means for performing the same. could be In addition, each block or each step may represent a module, segment, or portion of code comprising one or more executable instructions for executing the specified logical function(s). It should also be noted that, in some alternative embodiments, it is also possible for the functions recited in blocks or steps to be executed out of the prescribed order. For example, two blocks or steps shown one after another may be performed substantially simultaneously or in the reverse order, and in some cases, some blocks or steps may be omitted.
도 1은 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 구조를 도시한 도면이다. 1 is a diagram illustrating the structure of a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention.
우선, 본 발명에서는 복수의 노드 장치들(101, 102, 103, 104)이 각 노드 장치의 메모리에 현물 자산 거래와 관련된 정보를 분산해서 저장하기 위해, 블록체인 네트워크를 구성하고 있는 것으로 가정한다. 여기서, 복수의 노드 장치들(101, 102, 103, 104)은 네트워크 기능을 갖는 마이크로 프로세서 기반의 컴퓨팅 장치를 의미하며, 각 노드 장치의 메모리에는 소정의 현물 자산 거래와 관련된 정보가 포함된 트랜잭션을 기반으로 생성된 블록들이 체인으로 연결되어 있는 블록체인 데이터가 저장되어 있다. 상기 블록체인 데이터는 현물 자산 거래와 관련된 정보인 '현물 자산에 대한 명칭, 현물 자산에 대한 구매 수량, 현물 자산에 대한 단가, 매수자의 정보 및 매도자의 정보'가 포함된 현물 자산 거래 트랜잭션을 내부에 포함하는 블록들이 체인으로 연결되어 있는 데이터이며, 상기 복수의 노드 장치들 각각의 메모리 상에 저장되어 있음으로 인해 상기 복수의 노드 장치들이 블록체인 네트워크를 구성할 수 있도록 한다.First, in the present invention, it is assumed that a plurality of node devices ( 101 , 102 , 103 , 104 ) constitute a block chain network in order to distribute and store information related to a spot asset transaction in the memory of each node device. Here, the plurality of
이때, 본 발명에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버(110)는 개인키 저장부(111), 현물 자산 정보 데이터베이스(112), 현물 자산 정보 저장부(113), 토큰 전송부(114), 현물 자산 정보 제공부(115), 구매 승인 요청 전송부(116), 트랜잭션 생성부(117) 및 블록체인 등록 요청부(118)를 포함한다.At this time, the blockchain-based asset
개인키 저장부(111)에는 전자 서명을 위한 미리 정해진 개인키가 저장되어 있다. 여기서, 상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있다.The private
현물 자산 정보 데이터베이스(112)에는 매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보 및 각 현물 자산에 대응되는 현물 자산 토큰이 저장되어 있다. In the spot
여기서, 상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있고, 상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있다.Here, the spot asset information includes information about a name, a sellable quantity, and a unit price for each spot asset, and the spot asset token includes data of the spot asset information for each spot asset as an input to a preset hash function. A hash value generated by being authorized and an electronic signature value generated by encrypting the hash value with the private key are included.
관련해서, 현물 자산 정보 데이터베이스(112)에는 하기의 표 1과 같이 정보가 저장되어 있을 수 있다.In relation to this, information may be stored in the spot
단말 정보Seller 1's
terminal information
판매 가능 수량: 37.5g(10돈)
단가: ₩230,000/돈(3.75g)Name: pure gold
Available quantity for sale: 37.5g (10 dong)
Unit price: ₩230,000/money (3.75g)
단말 정보Seller 2's
terminal information
판매 가능 수량: 100배럴
단가: ₩200,000/배럴Name: crude oil
Available quantity: 100 barrels
Unit price: ₩200,000/barrel
현물 자산 정보 저장부(113)는 상기 복수의 매도자들 중 제1 매도자의 매도자 단말(140)로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 현물 자산 정보 데이터베이스(112)에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 제1 매도자의 매도자 단말(140) 정보에 대응시켜 저장한다.The spot asset
예컨대, 현물 자산 정보 저장부(113)는 상기 복수의 매도자들 중 상기 제1 매도자의 매도자 단말(140)인 '매도자 1'의 매도자 단말(140)로부터 '현물 자산 3'에 대한 현물 자산 정보로 '명칭: 기념주화, 판매 가능 수량: 9개, 단가:₩150,000/개'가 수신되면서, '현물 자산 3'에 대한 현물 자산 등록 요청이 수신되면, '현물 자산 3'에 대한 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 '현물 자산 토큰 3'을 생성한 후 현물 자산 정보 데이터베이스(112)에 '현물 자산 3'에 대한 현물 자산 정보와 '현물 자산 토큰 3'을 '매도자 1'의 매도자 단말 정보에 대응시켜 하기의 표 2와 같이 저장할 수 있다.For example, the spot asset
단말 정보Seller 1's
terminal information
판매 가능 수량: 37.5g(10돈)
단가: ₩230,000/돈(3.75g)Name: pure gold
Available quantity for sale: 37.5g (10 dong)
Unit price: ₩230,000/money (3.75g)
판매 가능 수량: 9개
단가: ₩150,000/개Name: Commemorative Coin
Available quantity: 9
Unit price: ₩150,000/piece
단말 정보Seller 2's
terminal information
판매 가능 수량: 100배럴
단가: ₩200,000/배럴Name: crude oil
Available quantity: 100 barrels
Unit price: ₩200,000/barrel
토큰 전송부(114)는 상기 복수의 매수자들 중 제1 매수자의 매수자 단말(130)로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 현물 자산 정보 데이터베이스(112)로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 제1 매수자의 매수자 단말(130)로 전송한다.When the
즉, 토큰 전송부(114)는 제1 매수자의 매수자 단말(130)로부터 상기 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 제1 매수자의 매수자 단말(130)로 상기 제2 현물 자산에 대응되는 현물 자산 정보를 전송하기에 앞서, 상기 제2 현물 자산에 대응되는 상기 제2 현물 자산 토큰을 먼저 전송함으로써, 현물 자산 정보에 대한 보안을 강화할 수 있다.That is, the
이때, 제1 매수자의 매수자 단말(130)은 자산 거래 플랫폼 서버(110)로부터 상기 제2 현물 자산 토큰이 수신되면, 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 제1 매수자의 매수자 단말(130)에 사전 배포되어 있는 상기 공개키로 복호화하고, 복호화한 값이 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값과 일치하는지 비교하여 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지를 생성한 후 상기 검증 완료 메시지를 자산 거래 플랫폼 서버(110)로 전송할 수 있다.At this time, when the second spot asset token is received from the asset
현물 자산 정보 제공부(115)는 제1 매수자의 매수자 단말(130)로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 상기 검증 완료 메시지가 수신되면, 현물 자산 정보 데이터베이스(112)로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 제1 매수자의 매수자 단말(130)로 전송한다.When the verification complete message indicating that the verification of the second spot asset token is completed is received from the
즉, 현물 자산 정보 제공부(115)는 제1 매수자의 매수자 단말(130)로부터 상기 검증 완료 메시지가 수신되는 경우에만 제1 매수자의 매수자 단말(130)로 상기 제2 현물 자산 정보를 전송함으로써, 현물 자산 거래의 안전성을 높이는 데에 기여할 수 있다.That is, the spot asset
이렇게, 제1 매수자의 매수자 단말(130)에 상기 제2 현물 자산에 대한 상기 제2 현물 자산 정보가 수신되면, 상기 제1 매수자는 제1 매수자의 매수자 단말(130)을 통해 상기 제2 현물 자산 정보를 보고 원하는 만큼의 구매 수량을 지정하여 제1 매수자의 매수자 단말(130)에 상기 제2 현물 자산에 대한 구매 수량을 입력할 수 있고, 이때, 제1 매수자의 매수자 단말(130)은 자산 거래 플랫폼 서버(110)로 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청을 전송할 수 있다.In this way, when the second spot asset information for the second spot asset is received in the
구매 승인 요청 전송부(116)는 제1 매수자의 매수자 단말(130)로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 현물 자산 정보 데이터베이스(112)로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 제2 매도자의 매도자 단말(150)로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송한다.The purchase approval
이때, 제2 매도자의 매도자 단말(150)에 상기 제2 현물 자산에 대한 구매 승인 요청이 수신되면, 상기 제2 매도자는 제2 매도자의 매도자 단말(150)을 통해 상기 제2 현물 자산에 대한 구매 승인 요청을 확인하여 제2 매도자의 매도자 단말(150)에 구매 승인 확인을 입력할 수 있고, 이때, 제2 매도자의 매도자 단말(150)은 자산 거래 플랫폼 서버(110)로 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지를 전송할 수 있다. At this time, when a purchase approval request for the second spot asset is received in the
트랜잭션 생성부(117)는 제2 매도자의 매도자 단말(150)로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성한다.The
이하에서는, 토큰 전송부(114), 현물 자산 정보 제공부(115), 구매 승인 요청 전송부(116) 및 트랜잭션 생성부(117)의 동작을 예를 들어 상세히 설명하기로 한다.Hereinafter, operations of the
우선, 복수의 매수자들 중 제1 매수자의 매수자 단말(130)로부터 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 자산 거래 플랫폼 서버(110)에 수신되면, 토큰 전송부(114)는 현물 자산 정보 데이터베이스(112)로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 제1 매수자의 매수자 단말(130)로 전송할 수 있다.First, when a request for provision of spot asset information on the second spot asset registered by the second seller from the
관련해서, 상기 제2 매도자를 상기 표 2와 같은 현물 자산 정보 데이터베이스(112)에서의 '매도자 2'라고 하는 경우, 토큰 전송부(114)는 상기 표 2와 같은 현물 자산 정보 데이터베이스(112)로부터 '현물 자산 2'에 대응되는 '현물 자산 토큰 2'를 추출하여 제1 매수자의 매수자 단말(130)로 전송할 수 있다.In relation to this, when the second seller is referred to as 'seller 2' in the spot
이때, 제1 매수자의 매수자 단말(130)은 자산 거래 플랫폼 서버(110)로부터 '현물 자산 토큰 2'가 수신되면, '현물 자산 토큰 2'에 포함되어 있는 전자 서명 값을 제1 매수자의 매수자 단말(130)에 사전 배포되어 있는 공개키로 복호화할 수 있고, 복호화한 값과 '현물 자산 토큰 2'에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교하여 양 값이 서로 일치하는 것으로 확인되는 경우, '현물 자산 토큰 2'에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지를 생성한 후 상기 검증 완료 메시지를 자산 거래 플랫폼 서버(110)로 전송할 수 있다.At this time, when the 'spot asset token 2' is received from the asset
현물 자산 정보 제공부(115)는 제1 매수자의 매수자 단말(130)로부터 '현물 자산 토큰 2'에 대한 검증이 완료되었음을 지시하는 상기 검증 완료 메시지가 수신되면, 상기 표 2와 같은 현물 자산 정보 데이터베이스(112)로부터 '현물 자산 2'에 대한 현물 자산 정보인 '명칭: 원유, 판매 가능 수량: 100배럴, 단가: ₩200,000/배럴'을 추출하여 제1 매수자의 매수자 단말(130)로 전송할 수 있다.The spot asset
이렇게, 제1 매수자의 매수자 단말(130)에 '현물 자산 2'에 대한 현물 자산 정보가 수신되면, 상기 제1 매수자는 현물 자산 정보를 보고 원하는 만큼의 구매 수량을 지정할 수 있고, 이때, 상기 제1 매수자가 '현물 자산 2'에 대한 구매 수량으로 '10배럴'을 매수자 단말(130)에 입력하게 되면, 제1 매수자의 매수자 단말(130)은 '현물 자산 2'에 대한 구매 수량 정보인 '10배럴'과, '10배럴'만큼에 해당되는 수량의 '현물 자산 2'에 대한 구매 요청을 자산 거래 플랫폼 서버(110)로 전송할 수 있다.In this way, when the real asset information for 'spot asset 2' is received in the
구매 승인 요청 전송부(116)는 제1 매수자의 매수자 단말(130)로부터 '현물 자산 2'에 대한 구매 수량 정보로 '10배럴'과, '10배럴'만큼에 해당되는 수량의 '현물 자산 2'에 대한 구매 요청이 수신되면, 상기 표 2와 같은 현물 자산 정보 데이터베이스(112)로부터 '매도자 2'의 매도자 단말 정보를 확인한 후, '매도자 2'의 매도자 단말(150)로 '10배럴'만큼에 해당되는 수량의 '현물 자산 2'에 대한 구매 승인 요청을 전송할 수 있다.The purchase approval
이때, '매도자 2'의 매도자 단말(150)에 '현물 자산 2'에 대한 구매 승인 요청이 수신되면, '매도자 2'는 '매도자 2'의 매도자 단말(150)을 통해 '현물 자산 2'에 대한 구매 승인 요청을 확인한 후 '매도자 2'의 매도자 단말(150)에 구매 승인 확인을 입력할 수 있고, 이때, '매도자 2'의 매도자 단말(150)은 자산 거래 플랫폼 서버(110)로 '현물 자산 2'에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지를 전송할 수 있다.At this time, when a purchase approval request for 'spot asset 2' is received at the
트랜잭션 생성부(117)는 '매도자 2'의 매도자 단말(150)로부터 '10배럴'만큼에 해당되는 수량의 '현물 자산 2'에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, '현물 자산 2'에 대한 명칭인 '원유', '현물 자산 2'에 대한 구매 수량인 '10배럴', '현물 자산 2'에 대한 단가인 ₩200,000/배럴', 상기 제1 매수자의 정보 및 '매도자 2'의 정보가 포함된 현물 자산 거래 트랜잭션을 생성할 수 있다.The
이렇게, 트랜잭션 생성부(117)에 의해 현물 자산 거래 트랜젝션이 생성 완료되면, 블록체인 등록 요청부(118)는 블록체인 네트워크를 구성하는 복수의 노드 장치들(101, 102, 103, 104) 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송한다.In this way, when the in-kind asset transaction transaction is generated by the
이때, 본 발명의 일실시예에 따르면, 블록체인 등록 요청부(118)는 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송할 상기 제1 노드 장치를 선택하기 위한 구성으로, 정보 전송 요청부(119), 노름 연산부(120), 가중 평균 연산부(121) 및 노드 선택부(122)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the block chain
정보 전송 요청부(119)는 상기 현물 자산 거래 트랜잭션이 생성되면, 복수의 노드 장치들(101, 102, 103, 104)에 대해, 현재 전력 소모량 정보인 제1 정보, 현재 CPU 사용률 정보인 제2 정보 및 현재 네트워크 트래픽 수치 정보인 제3 정보의 전송을 요청한다.When the in-kind asset transaction transaction is generated, the information
노름 연산부(120)는 복수의 노드 장치들(101, 102, 103, 104) 각각으로부터 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보가 수신되면, 복수의 노드 장치들(101, 102, 103, 104) 각각에 대해, 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보를 성분으로 갖는 3차원의 특성 벡터를 생성한 후 상기 3차원의 특성 벡터에 대한 맨해튼 노름(Manhattan norm)과 유클리드 노름(Euclidean norm)을 각각 연산한다.The
여기서, 맨해튼 노름과 유클리드 노름은 유클리드 공간 상에 존재하는 벡터의 크기를 일반화한 것으로 각각 하기의 수학식 1과 하기의 수학식 2에 따라 연산될 수 있다. Here, the Manhattan norm and the Euclidean norm are generalized sizes of vectors existing in the Euclidean space, and may be calculated according to the following Equations 1 and 2, respectively.
상기 수학식 1과 상기 수학식 2에서 는 맨해튼 노름, 는 유클리드 노름을 의미하고, 는 n차원의 특성 벡터에 포함되어 있는 i번째 성분을 의미한다.In Equation 1 and Equation 2 above is the manhattan gambling, means Euclidean norm, denotes the i-th component included in the n-dimensional feature vector.
가중 평균 연산부(121)는 복수의 노드 장치들(101, 102, 103, 104) 각각에 대해, 상기 3차원의 특성 벡터에 대한 맨해튼 노름에 미리 정해진 제1 가중치를 곱하여 제1 가중 연산 값을 연산하고, 상기 3차원의 특성 벡터에 대한 유클리드 노름에 미리 정해진 제2 가중치를 곱하여 제2 가중 연산 값을 연산한 후 상기 제1 가중 연산 값과 상기 제2 가중 연산 값을 합함으로써, 복수의 노드 장치들(101, 102, 103, 104) 각각에 대한 가중 평균 값을 연산한다.The weighted
여기서, 상기 제1 가중치와 상기 제2 가중치의 합은 1이 될 수 있다.Here, the sum of the first weight and the second weight may be 1.
노드 선택부(122)는 복수의 노드 장치들(101, 102, 103, 104) 중 상기 가중 평균 값이 최소로 연산된 노드 장치를 상기 제1 노드 장치로 선택한다.The
보통, 블록을 생성하기 위해서는 많은 연산 과정이 필요하기 때문에, 시스템 가용 자원이 풍부한 노드 장치에서 블록 생성 과정이 처리될수록 빠른 연산이 가능할 수 있다. 이때, 상기 가중 평균 값은 노드 장치의 현재 전력 소모량, 현재 CPU 사용률, 현재 네트워크 트래픽 수치를 기초로 산출된 맨해튼 노름과 유클리드 노름의 가중 평균 값이기 때문에, 특정 노드 장치의 가중 평균 값이 낮은 경우, 해당 노드 장치의 현재 전력 소모량, 현재 CPU 사용률, 현재 네트워크 트래픽 수치가 낮은 상황이라고 볼 수 있다. 따라서, 복수의 노드 장치들(101, 102, 103, 104) 중 상기 가중 평균 값이 최소로 연산된 노드 장치는 유휴(idle) 상태일 가능성이 높아 시스템 가용 자원이 최대인 노드 장치라고 볼 수 있다. 이에, 노드 선택부(122)는 상기 가중 평균 값이 최소로 연산된 노드 장치를 블록 생성을 위한 상기 제1 노드 장치로 선택함으로써, 상기 현물 자산 거래 트랜잭션에 대한 블록 생성이 빠르게 수행되도록 지원할 수 있다.In general, since many calculation processes are required to generate a block, faster calculation may be possible as the block generation process is processed in a node device with abundant system available resources. At this time, since the weighted average value is the weighted average value of the Manhattan norm and the Euclidean norm calculated based on the current power consumption, the current CPU usage rate, and the current network traffic value of the node device, if the weighted average value of the specific node device is low, It can be seen that the current power consumption of the node device, the current CPU usage rate, and the current network traffic figure are low. Therefore, among the plurality of
이때, 본 발명의 일실시예에 따르면, 블록체인 등록 요청부(118)는 상기 제1 노드 장치가 선택된 이후, 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션에 대한 상기 블록체인 네트워크로의 등록 요청을 전송하는 과정에서 상기 제1 노드 장치를 인증하기 위한 구성으로, OTP 저장부(123), 인증용 숫자 저장부(124), 연산 값 산출부(125), 랜덤 값 생성부(126), 피드백 값 요청부(127), 노드 인증 수행부(128) 및 트랜잭션 전송부(129)를 더 포함할 수 있다.At this time, according to an embodiment of the present invention, after the first node device is selected, the blockchain
이하에서는, 설명의 편의를 위해 상기 제1 노드 장치를 도면부호 101로 표시한 노드 장치인 것으로 가정하고 설명하기로 한다.Hereinafter, it is assumed that the first node device is a node device denoted by
OTP 저장부(123)에는 복수의 노드 장치들(101, 102, 103, 104)과 사전 공유하고 있는 미리 정해진 제1 OTP(One Time Password) 생성 함수와 미리 정해진 제2 OTP 생성 함수가 저장되어 있다.The
여기서, OTP란 고정된 패스워드 대신 무작위로 생성되는 일회용 인증 번호를 의미하고, 상기 제1 OTP 생성 함수와 상기 제2 OTP 생성 함수는 개발자에 의해 미리 정해질 수 있는 함수이다.Here, OTP means a one-time authentication number that is randomly generated instead of a fixed password, and the first OTP generating function and the second OTP generating function are functions that can be predetermined by a developer.
인증용 숫자 저장부(124)에는 복수의 노드 장치들(101, 102, 103, 104)과 사전 공유하고 있는 미리 정해진 제1 인증용 숫자 m(m은 2 이상의 자연수임)과 미리 정해진 제2 인증용 숫자 k(k는 m과 다른 2 이상의 자연수임)가 저장되어 있다.In the authentication
연산 값 산출부(125)는 복수의 노드 장치들(101, 102, 103, 104) 중 제1 노드 장치(101)가 선택되면, 상기 제1 OTP 생성 함수를 기초로 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출한다.When the
여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo operation refers to an operation of dividing a dividend by a divisor to calculate a remainder thereof.
랜덤 값 생성부(126)는 랜덤한 성분 값들로 구성된 m x k의 랜덤 행렬을 생성하고, 제1 랜덤 값을 랜덤하게 생성한다.The
피드백 값 요청부(127)는 상기 랜덤 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분을 상기 제1 랜덤 값으로 치환함으로써, m x k의 치환 행렬을 생성하고, 상기 치환 행렬을 제1 노드 장치(101)로 전송하면서, 제1 노드 장치(101)로 상기 치환 행렬에 대응되는 피드백 값의 전송을 요청한다.The feedback
예컨대, 제1 일회용 인증 번호로 '12345'가 생성되었고, 제2 일회용 인증 번호로 '23456'이 생성되었으며, 미리 정해진 제1 인증용 숫자 m이 '4', 미리 정해진 제2 인증용 숫자 k가 '3'이라고 하는 경우, 연산 값 산출부(125)는 상기 제1 일회용 인증 번호인 '12345'를 피제수로, 상기 제1 인증용 숫자 '4'를 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값 '1'을 산출할 수 있고, 상기 제2 일회용 인증 번호인 '23456'을 피제수로, 상기 제2 인증용 숫자 '3'을 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 '2'를 산출할 수 있다.For example, '12345' is generated as the first one-time authentication number, '23456' is generated as the second one-time authentication number, the predetermined first authentication number m is '4', and the predetermined second authentication number k is In the case of '3', the calculation
그러고 나서, 랜덤 값 생성부(126)는 랜덤한 성분 값들로 구성된 '4' x '3'의 랜덤 행렬인 ''을 생성할 수 있고, 제1 랜덤 값인 'A'를 랜덤하게 생성할 수 있다.Then, the random value generator 126 ' is a random matrix of '4' x '3' composed of random component values. ' may be generated, and a first random value of 'A' may be randomly generated.
그 이후, 피드백 값 요청부(127)는 상기 랜덤 행렬에서 '('1'+1)행('2'+1)열'인 '2행3열'에 위치하는 성분을 상기 제1 랜덤 값인 'A'로 치환함으로써, '4' x '3'의 치환 행렬인 ''을 생성할 수 있고, 상기 치환 행렬을 제1 노드 장치(101)로 전송하면서, 제1 노드 장치(101)로 상기 치환 행렬에 대응되는 피드백 값의 전송을 요청할 수 있다.After that, the feedback
이때, 본 발명의 일실시예에 따르면, 제1 노드 장치(101)는 제1 노드 장치(101)의 메모리 상에 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 사전 저장하고 있을 수 있고, 자산 거래 플랫폼 서버(110)로부터 상기 치환 행렬이 수신되면, 제1 노드 장치(101)의 메모리 상에 저장되어 있는 상기 제1 OTP 생성 함수를 기초로 상기 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 상기 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출할 수 있다.At this time, according to an embodiment of the present invention, the
이후, 제1 노드 장치(101)는 상기 제1 연산 값 x와 상기 제2 연산 값 y를 기초로 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값을 상기 제1 피드백 값으로 추출한 후 상기 제1 피드백 값을 자산 거래 플랫폼 서버(110)로 전송할 수 있다.Thereafter, the
예컨대, 전술한 예에 따르면, 제1 노드 장치(101)는 제1 노드 장치(101)의 메모리 상에 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 '4' 및 상기 제2 인증용 숫자 '3'을 사전 저장하고 있을 수 있고, 자산 거래 플랫폼 서버(110)로부터 상기 치환 행렬인 ''이 수신되는 경우, 제1 노드 장치(101)의 메모리 상에 저장되어 있는 상기 제1 OTP 생성 함수를 기초로 상기 제1 일회용 인증 번호인 '12345'를 생성할 수 있고, 상기 제1 일회용 인증 번호인 '12345'를 피제수로, 상기 제1 인증용 숫자 '4'를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 '1'을 산출할 수 있다. For example, according to the above-described example, the
그리고, 제1 노드 장치(101)는 상기 제2 OTP 생성 함수를 기초로 상기 제2 일회용 인증 번호인 '23456'을 생성할 수 있고, 상기 제2 일회용 인증 번호인 '23456'을 피제수로, 상기 제2 인증용 숫자 '3'을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 '2'를 산출할 수 있다.In addition, the
그 이후, 제1 노드 장치(101)는 상기 제1 연산 값 '1'과 상기 제2 연산 값 '2'를 기초로 상기 치환 행렬에서 '('1'+1)행('2'+1)열'인 '2행3열'에 위치하는 성분 값인 'A'를 상기 제1 피드백 값으로 추출한 후 상기 제1 피드백 값인 'A'를 자산 거래 플랫폼 서버(110)로 전송할 수 있다.After that, the
노드 인증 수행부(128)는 제1 노드 장치(101)로부터 상기 치환 행렬에 대응되는 피드백 값으로 제1 피드백 값이 수신되면, 상기 제1 피드백 값이 상기 제1 랜덤 값과 동일한지 확인함으로써, 제1 노드 장치(101)에 대한 인증을 수행한다.When a first feedback value is received from the
트랜잭션 전송부(129)는 제1 노드 장치(101)에 대한 인증이 완료되면, 제1 노드 장치(101)로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송한다.When the authentication of the
예컨대, 전술한 예에 따르면, 노드 인증 수행부(128)는 제1 노드 장치(101)로부터 상기 치환 행렬인 ''에 대응되는 상기 제1 피드백 값으로 'A'가 수신되는 경우, 상기 제1 피드백 값인 'A'가 상기 제1 랜덤 값인 'A'와 동일한지 확인함으로써, 제1 노드 장치(101)에 대한 인증을 수행할 수 있고, 이렇게, 제1 노드 장치(101)에 대한 인증이 완료되는 경우, 트랜잭션 전송부(129)는 제1 노드 장치(101)로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송할 수 있다.For example, according to the above-described example, the node
이때, 본 발명의 일실시예에 따르면, 제1 노드 장치(101)는 자산 거래 플랫폼 서버(110)로부터 상기 현물 자산 거래 트랜잭션이 수신되는 경우, 제1 노드 장치(101)의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 복수의 노드 장치들(101, 102, 103, 104) 중 제1 노드 장치(101)를 제외한 나머지 노드 장치들(102, 103, 104)로 전파할 수 있다.At this time, according to an embodiment of the present invention, when the in-kind asset transaction transaction is received from the asset
이때, 본 발명의 일실시예에 따르면, 나머지 노드 장치들(102, 103, 104)은 상기 블록체인 네트워크를 통해 상기 블록이 수신되면, 나머지 노드 장치들(102, 103, 104) 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 블록을 체인으로 연결하여 저장할 수 있다.At this time, according to an embodiment of the present invention, when the block is received through the block chain network, the remaining node devices (102, 103, 104) are on the memory of each of the remaining node devices (102, 103, 104). It can be stored by connecting the block to the block chain data stored in the .
이를 통해, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 상기 현물 자산 거래 트랜잭션은 복수의 노드 장치들(101, 102, 103, 104) 각각의 메모리 상에 저장되어 있는 블록체인 데이터에 체인으로 연결되어 복수의 노드 장치들(101, 102, 103, 104) 각각에 분산 저장될 수 있다.Through this, the name of the second spot asset, the purchase quantity for the second spot asset, the unit price for the second spot asset, the first buyer information, and the second seller information are included. The asset transaction transaction is chained to the block chain data stored in the memory of each of the plurality of node devices (101, 102, 103, 104) to each of the plurality of node devices (101, 102, 103, 104) It can be distributed and stored.
도 2는 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법을 도시한 순서도이다.2 is a flowchart illustrating a method of operating a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention.
단계(S210)에서는 전자 서명을 위한 미리 정해진 개인키(상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있음)가 저장되어 있는 개인키 저장부를 유지한다.In step S210, a predetermined private key for electronic signature (the private key and the public key constituting the key pair are pre-distributed to the purchaser terminals of a plurality of purchasers who are registered as purchaser members) are stored in the private key storage keep wealth
단계(S220)에서는 매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보(상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있음) 및 각 현물 자산에 대응되는 현물 자산 토큰(상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있음)이 저장되어 있는 현물 자산 정보 데이터베이스를 유지한다.In step S220, seller terminal information of a plurality of sellers who are registered as seller members, and spot asset information on real assets registered by each of the plurality of sellers (in the spot asset information, the name of each spot asset, available quantity for sale) and information on unit price) and a spot asset token corresponding to each spot asset (the spot asset token includes a hash value generated by applying data of spot asset information for each spot asset as an input to a preset hash function and an electronic signature value generated by encrypting the hash value with the private key) is stored in a database of in-kind asset information.
단계(S230)에서는 상기 복수의 매도자들 중 제1 매도자의 매도자 단말로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 상기 현물 자산 정보 데이터베이스에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 상기 제1 매도자의 매도자 단말 정보에 대응시켜 저장한다.In step S230, when the first spot asset information on the first spot asset is received from the seller terminal of the first seller among the plurality of sellers, and a real asset registration request for the first spot asset is received, the first 1 Applying the data of the in-kind asset information to the hash function as an input to generate a first hash value, encrypting the first hash value with the private key to generate a first electronic signature value, the first hash value and the After generating a first spot asset token including a first electronic signature value, the first spot asset information and the first spot asset token are stored in the spot asset information database in correspondence with the seller terminal information of the first seller .
단계(S240)에서는 상기 복수의 매수자들 중 제1 매수자의 매수자 단말로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 상기 제1 매수자의 매수자 단말로 전송한다.In step S240, when a request for provision of spot asset information on a second spot asset registered by a second seller among the plurality of sellers is received from a buyer terminal of a first buyer among the plurality of buyers, the spot asset information database Extracts a second spot asset token corresponding to the second spot asset from the first buyer and transmits it to the buyer terminal of the first buyer.
단계(S250)에서는 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지(상기 검증 완료 메시지는 상기 제1 매수자의 매수자 단말에 상기 제2 현물 자산 토큰이 수신된 이후, 상기 제1 매수자의 매수자 단말이 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 상기 제1 매수자의 매수자 단말에 사전 배포되어 있는 상기 공개키로 복호화한 값과 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교한 결과, 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하기 위해서 생성한 메시지를 의미함)가 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 상기 제1 매수자의 매수자 단말로 전송한다.In step S250, a verification completion message indicating that the verification of the second spot asset token is completed from the buyer terminal of the first buyer (the verification completion message is the second spot asset token to the buyer terminal of the first buyer) After this is received, the value obtained by decrypting the electronic signature value included in the second spot asset token by the buyer terminal of the first buyer with the public key previously distributed to the buyer terminal of the first buyer and the second spot When it is confirmed that the hash values of the data of the spot asset information included in the asset token match each other, when it is confirmed that the values match each other, it is generated to indicate that the verification of the second spot asset token is completed. means one message), extracts second spot asset information, which is spot asset information on the second spot asset, from the spot asset information database, and transmits the extracted second spot asset information to the buyer terminal of the first buyer.
단계(S260)에서는 상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 상기 제2 매도자의 매도자 단말로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송한다.In step S260, when a purchase request for the second spot asset equal to the purchase quantity according to the purchase quantity information is received together with the purchase quantity information for the second spot asset from the buyer terminal of the first buyer, the spot After checking the seller terminal information of the second seller from the asset information database, a purchase approval request for the second spot asset equal to the purchase quantity is transmitted to the seller terminal of the second seller.
단계(S270)에서는 상기 제2 매도자의 매도자 단말로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성한다.In step S270, when a purchase approval confirmation message corresponding to a purchase approval request for the second spot asset equal to the purchase quantity is received from the seller terminal of the second seller, the name of the second spot asset, the second 2 Create a spot asset transaction transaction including the purchase quantity for the spot asset, the unit price for the second spot asset, information of the first buyer, and information of the second seller.
단계(S280)에서는 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송한다.In step S280, after selecting a first node device, which is one of a plurality of node devices constituting the block chain network, and transmitting the spot asset transaction transaction to the first node device, the block of the spot asset transaction transaction Sends a registration request to the chain network.
이때, 본 발명의 일실시예에 따르면, 상기 제1 노드 장치는 상기 자산 거래 플랫폼 서버로부터 상기 현물 자산 거래 트랜잭션이 수신되는 경우, 상기 제1 노드 장치의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파할 수 있다.At this time, according to an embodiment of the present invention, when the in-kind asset transaction transaction is received from the asset trading platform server, the first node device is based on the block chain data stored in the memory of the first node device. After generating a block including the spot asset transaction transaction, and linking the block to the block chain data, the block is connected to the block through the block chain network except for the first node device among the plurality of node devices It can propagate to the rest of the node devices.
이때, 본 발명의 일실시예에 따르면, 상기 나머지 노드 장치들은 상기 블록체인 네트워크를 통해 상기 블록이 수신되는 경우, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 블록을 체인으로 연결하여 저장할 수 있다.At this time, according to an embodiment of the present invention, when the block is received through the block chain network, the remaining node devices add the block to the block chain data stored in the memory of each of the remaining node devices. They can be chained and stored.
또한, 본 발명의 일실시예에 따르면, 단계(S280)에서는 상기 현물 자산 거래 트랜잭션이 생성되는 경우, 상기 복수의 노드 장치들에 대해, 현재 전력 소모량 정보인 제1 정보, 현재 CPU 사용률 정보인 제2 정보 및 현재 네트워크 트래픽 수치 정보인 제3 정보의 전송을 요청하는 단계, 상기 복수의 노드 장치들 각각으로부터 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보가 수신되면, 상기 복수의 노드 장치들 각각에 대해, 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보를 성분으로 갖는 3차원의 특성 벡터를 생성한 후 상기 3차원의 특성 벡터에 대한 맨해튼 노름과 유클리드 노름을 각각 연산하는 단계, 상기 복수의 노드 장치들 각각에 대해, 상기 3차원의 특성 벡터에 대한 맨해튼 노름에 미리 정해진 제1 가중치를 곱하여 제1 가중 연산 값을 연산하고, 상기 3차원의 특성 벡터에 대한 유클리드 노름에 미리 정해진 제2 가중치를 곱하여 제2 가중 연산 값을 연산한 후 상기 제1 가중 연산 값과 상기 제2 가중 연산 값을 합함으로써, 상기 복수의 노드 장치들 각각에 대한 가중 평균 값을 연산하는 단계 및 상기 복수의 노드 장치들 중 상기 가중 평균 값이 최소로 연산된 노드 장치를 상기 제1 노드 장치로 선택하는 단계를 포함할 수 있다.In addition, according to an embodiment of the present invention, when the in-kind asset transaction transaction is generated in step S280, for the plurality of node devices, the first information that is current power consumption information and the first information that is current CPU usage rate information requesting transmission of second information and third information that is current network traffic numerical information; when the first information, the second information, and the third information are received from each of the plurality of node devices, the plurality of node devices generating a three-dimensional feature vector having the first information, the second information, and the third information as components for each , for each of the plurality of node devices, multiplying the Manhattan norm for the three-dimensional feature vector by a predetermined first weight to calculate a first weighted computation value, and to the Euclidean norm for the three-dimensional feature vector in advance calculating a weighted average value for each of the plurality of node devices by multiplying a predetermined second weight to calculate a second weighted calculation value and then summing the first weighted calculation value and the second weighted calculation value; and The method may include selecting, as the first node device, a node device having the smallest weighted average value calculated from among a plurality of node devices.
또한, 본 발명의 일실시예에 따르면, 단계(S280)에서는 상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 OTP 생성 함수와 미리 정해진 제2 OTP 생성 함수가 저장되어 있는 OTP 저장부를 유지하는 단계, 상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 인증용 숫자 m과 미리 정해진 제2 인증용 숫자 k가 저장되어 있는 인증용 숫자 저장부를 유지하는 단계, 상기 복수의 노드 장치들 중 상기 제1 노드 장치가 선택되면, 상기 제1 OTP 생성 함수를 기초로 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 단계, 랜덤한 성분 값들로 구성된 m x k의 랜덤 행렬을 생성하고, 제1 랜덤 값을 랜덤하게 생성하는 단계, 상기 랜덤 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분을 상기 제1 랜덤 값으로 치환함으로써, m x k의 치환 행렬을 생성하고, 상기 치환 행렬을 상기 제1 노드 장치로 전송하면서, 상기 제1 노드 장치로 상기 치환 행렬에 대응되는 피드백 값의 전송을 요청하는 단계, 상기 제1 노드 장치로부터 상기 치환 행렬에 대응되는 피드백 값으로 제1 피드백 값 - 상기 제1 피드백 값은 상기 제1 노드 장치에서 상기 제1 노드 장치의 메모리 상에 사전 저장되어 있는 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 기초로 상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출된 후 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값이 추출되어 생성된 피드백 값임 - 이 수신되면, 상기 제1 피드백 값이 상기 제1 랜덤 값과 동일한지 확인함으로써, 상기 제1 노드 장치에 대한 인증을 수행하는 단계 및 상기 제1 노드 장치에 대한 인증이 완료되면, 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, in step S280, an OTP storage unit in which a predetermined first OTP generation function and a predetermined second OTP generation function that are previously shared with the plurality of node devices are stored is maintained. maintaining a number storage unit for authentication in which a predetermined first authentication number m and a predetermined second authentication number k shared in advance with the plurality of node devices are stored, the plurality of node devices When the first node device is selected, a module for generating a first one-time authentication number based on the first OTP generation function, then dividing the first one-time authentication number as a dividend and dividing the first authentication number m as a divisor By performing an operation with , a first operation value x is calculated, a second one-time authentication number is generated based on the second OTP generation function, and then the second one-time authentication number is a dividend, and the second authentication number k Calculating a second calculated value y by performing a modulo operation with a divisor of By substituting a component located in '(x+1) row (y+1) column' with the first random value, an mxk permutation matrix is generated, and the permutation matrix is transmitted to the first node device. requesting transmission of a feedback value corresponding to the permutation matrix to a first node device; a first feedback value from the first node device to a feedback value corresponding to the permutation matrix - the first feedback value is the first node Based on the first OTP generating function, the second OTP generating function, the first authentication number m and the second authentication number k, which are pre-stored in the memory of the first node device in the device, the first After the operation value x and the second operation value y are calculated, the component value located in the '(x+1) row (y+1) column' in the substitution matrix is extracted and is a feedback value generated - when received, the first feedback value Performing authentication for the first node device by checking whether this is the same as the first random value, and when the authentication for the first node device is completed, sending the in-kind asset transaction transaction to the first node device while sending a registration request of the spot asset transaction transaction to the blockchain network.
이때, 본 발명의 일실시예에 따르면, 상기 제1 노드 장치는 상기 제1 노드 장치의 메모리 상에 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 사전 저장하고 있고, 상기 자산 거래 플랫폼 서버로부터 상기 치환 행렬이 수신되는 경우, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 상기 제1 OTP 생성 함수를 기초로 상기 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 상기 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출하며, 상기 제1 연산 값 x와 상기 제2 연산 값 y를 기초로 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값을 상기 제1 피드백 값으로 추출한 후 상기 제1 피드백 값을 상기 자산 거래 플랫폼 서버로 전송할 수 있다.At this time, according to an embodiment of the present invention, the first node device has the first OTP generating function, the second OTP generating function, the first authentication number m, and the second in the memory of the first node device. 2 The number k for authentication is pre-stored, and when the permutation matrix is received from the asset trading platform server, the first one-time use function is based on the first OTP generation function stored in the memory of the first node device. After generating an authentication number, by performing a modulo operation in which the first one-time authentication number is a dividend and the first authentication number m is a divisor, the first operation value x is calculated, and the second OTP generation function After generating the second one-time authentication number based on , after extracting, as the first feedback value, a component value located in '(x+1) row (y+1) column' in the substitution matrix based on the first operation value x and the second operation value y The first feedback value may be transmitted to the asset trading platform server.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법은 도 1을 이용하여 설명한 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.As described above, with reference to FIG. 2 , an operation method of a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention has been described. Here, the method of operation of the blockchain-based asset trading platform server that enables the asset transaction through tokenization of the asset according to an embodiment of the present invention is the asset transaction through the tokenization of the asset described with reference to FIG. 1 . Since it may correspond to the configuration of the operation of the blockchain-based asset
본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.According to an embodiment of the present invention, a method of operating a blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets is implemented as a computer program stored in a storage medium for execution through combination with a computer. can be
또한, 본 발명의 일실시예에 따른 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, the operating method of the blockchain-based asset trading platform server that enables in-kind asset transactions through tokenization of assets according to an embodiment of the present invention is implemented in the form of computer program instructions for execution through combination with a computer. and may be recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software. Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks. - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. As described above, the present invention has been described with specific matters such as specific components and limited embodiments and drawings, but these are provided to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , various modifications and variations are possible from these descriptions by those of ordinary skill in the art to which the present invention pertains.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the described embodiments, and not only the claims to be described later, but also all those with equivalent or equivalent modifications to the claims will be said to belong to the scope of the spirit of the present invention. .
110: 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버
111: 개인키 저장부 112: 현물 자산 정보 데이터베이스
113: 현물 자산 정보 저장부 114: 토큰 전송부
115: 현물 자산 정보 제공부 116: 구매 승인 요청 전송부
117: 트랜잭션 생성부 118: 블록체인 등록 요청부
119: 정보 전송 요청부 120: 노름 연산부
121: 가중 평균 연산부 122: 노드 선택부
123: OTP 저장부 124: 인증용 숫자 저장부
125: 연산 값 산출부 126: 랜덤 값 생성부
127: 피드백 값 요청부 128: 노드 인증 수행부
129: 트랜잭션 전송부
130: 제1 매수자의 매수자 단말
140: 제1 매도자의 매도자 단말
150: 제2 매도자의 매도자 단말
101, 102, 103, 104: 복수의 노드 장치들110: A blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets
111: private key storage 112: in-kind asset information database
113: spot asset information storage unit 114: token transmission unit
115: in-kind asset information provision unit 116: purchase approval request transmission unit
117: transaction creation unit 118: block chain registration request unit
119: information transmission request unit 120: gambling operation unit
121: weighted average operation unit 122: node selection unit
123: OTP storage 124: number storage for authentication
125: calculation value calculation unit 126: random value generation unit
127: feedback value request unit 128: node authentication performing unit
129: transaction transfer unit
130: buyer terminal of the first buyer
140: Seller's terminal of the first seller
150: Seller's terminal of the second seller
101, 102, 103, 104: a plurality of node devices
Claims (12)
전자 서명을 위한 미리 정해진 개인키 - 상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있음 - 가 저장되어 있는 개인키 저장부;
매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보 - 상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있음 - 및 각 현물 자산에 대응되는 현물 자산 토큰 - 상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있음 - 이 저장되어 있는 현물 자산 정보 데이터베이스;
상기 복수의 매도자들 중 제1 매도자의 매도자 단말로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 상기 현물 자산 정보 데이터베이스에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 상기 제1 매도자의 매도자 단말 정보에 대응시켜 저장하는 현물 자산 정보 저장부;
상기 복수의 매수자들 중 제1 매수자의 매수자 단말로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 토큰 전송부;
상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지 - 상기 검증 완료 메시지는 상기 제1 매수자의 매수자 단말에 상기 제2 현물 자산 토큰이 수신된 이후, 상기 제1 매수자의 매수자 단말이 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 상기 제1 매수자의 매수자 단말에 사전 배포되어 있는 상기 공개키로 복호화한 값과 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교한 결과, 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하기 위해서 생성한 메시지를 의미함 - 가 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 현물 자산 정보 제공부;
상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 상기 제2 매도자의 매도자 단말로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송하는 구매 승인 요청 전송부;
상기 제2 매도자의 매도자 단말로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성하는 트랜잭션 생성부; 및
블록체인 네트워크를 구성하는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 블록체인 등록 요청부
를 포함하고,
상기 제1 노드 장치는
상기 자산 거래 플랫폼 서버로부터 상기 현물 자산 거래 트랜잭션이 수신되면, 상기 제1 노드 장치의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버.In a blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets,
a private key storage unit storing a predetermined private key for electronic signature, wherein the private key and the public key constituting the key pair are pre-distributed to the purchaser terminals of a plurality of purchasers registered as purchaser members;
Seller terminal information of a plurality of sellers who are registered as seller members, spot asset information about the spot assets registered by each of the plurality of sellers - The spot asset information includes information on the name of each spot asset, available quantity for sale and unit price includes - and a spot asset token corresponding to each spot asset - The spot asset token includes a hash value generated by applying data of spot asset information for each spot asset as an input to a preset hash function, and the hash value an electronic signature value generated by encryption with the private key is included - a database of stored asset information in kind;
When the first spot asset information for the first spot asset is received from the seller terminal of the first seller among the plurality of sellers, and a spot asset registration request for the first spot asset is received, the first spot asset information applying data to the hash function as an input to generate a first hash value, encrypting the first hash value with the private key to generate a first digital signature value, the first hash value and the first digital signature value After generating the included first spot asset token, the spot asset information storage unit for storing the first spot asset information and the first spot asset token to correspond to the seller terminal information of the first seller in the spot asset information database ;
When a request for provision of spot asset information on a second spot asset registered by a second seller among the plurality of sellers is received from a buyer terminal of a first buyer among the plurality of buyers, the second spot from the spot asset information database a token transmitter for extracting a second spot asset token corresponding to the asset and transmitting it to the buyer terminal of the first buyer;
Verification complete message indicating that verification of the second spot asset token is completed from the buyer terminal of the first buyer - The verification complete message is after the second spot asset token is received by the buyer terminal of the first buyer, The value obtained by decrypting the electronic signature value included in the second spot asset token by the buyer terminal of the first buyer with the public key pre-distributed to the buyer terminal of the first buyer and the second spot asset token As a result of comparing the hash values of the data of the present spot asset information to see if they match each other, when it is confirmed that both values match each other, it means a message generated to indicate that the verification of the second spot asset token has been completed. - when received, the spot asset information providing unit for extracting the second spot asset information that is the spot asset information for the second spot asset from the spot asset information database and transmitting it to the buyer terminal of the first buyer;
When a purchase request for the second spot asset equal to the purchase quantity according to the purchase quantity information is received from the buyer terminal of the first buyer along with the purchase quantity information for the second spot asset, from the spot asset information database a purchase approval request transmission unit for confirming the seller terminal information of the second seller, and transmitting a purchase authorization request for the second spot asset as much as the purchase quantity to the seller terminal of the second seller;
When a purchase approval confirmation message is received from the seller terminal of the second seller corresponding to the purchase approval request for the second spot asset equal to the purchase quantity, the name of the second spot asset, the second spot asset a transaction generator for generating a spot asset transaction transaction including the purchase quantity, the unit price of the second spot asset, information of the first buyer, and information of the second seller; and
After selecting a first node device, which is one of a plurality of node devices constituting a blockchain network, and transmitting the spot asset transaction transaction to the first node device, registration of the spot asset transaction transaction into the blockchain network The blockchain registration request unit that sends the request
including,
The first node device
When the spot asset transaction transaction is received from the asset trading platform server, a block including the spot asset transaction transaction is generated based on the block chain data stored in the memory of the first node device, and the block is converted into the block After connecting the chain data to the chain, the in-kind asset transaction is possible through the tokenization of the asset, which propagates the block to the remaining node devices except for the first node device among the plurality of node devices through the blockchain network. Blockchain-based asset trading platform server.
상기 나머지 노드 장치들은
상기 블록체인 네트워크를 통해 상기 블록이 수신되면, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 블록을 체인으로 연결하여 저장하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버.According to claim 1,
The remaining node devices are
When the block is received through the block chain network, the in-kind asset transaction is possible through the tokenization of the asset that is stored by connecting the block to the block chain data stored in the memory of each of the remaining node devices. Blockchain-based asset trading platform server.
상기 블록체인 등록 요청부는
상기 현물 자산 거래 트랜잭션이 생성되면, 상기 복수의 노드 장치들에 대해, 현재 전력 소모량 정보인 제1 정보, 현재 CPU 사용률 정보인 제2 정보 및 현재 네트워크 트래픽 수치 정보인 제3 정보의 전송을 요청하는 정보 전송 요청부;
상기 복수의 노드 장치들 각각으로부터 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보가 수신되면, 상기 복수의 노드 장치들 각각에 대해, 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보를 성분으로 갖는 3차원의 특성 벡터를 생성한 후 상기 3차원의 특성 벡터에 대한 맨해튼 노름(Manhattan norm)과 유클리드 노름(Euclidean norm)을 각각 연산하는 노름 연산부;
상기 복수의 노드 장치들 각각에 대해, 상기 3차원의 특성 벡터에 대한 맨해튼 노름에 미리 정해진 제1 가중치를 곱하여 제1 가중 연산 값을 연산하고, 상기 3차원의 특성 벡터에 대한 유클리드 노름에 미리 정해진 제2 가중치를 곱하여 제2 가중 연산 값을 연산한 후 상기 제1 가중 연산 값과 상기 제2 가중 연산 값을 합함으로써, 상기 복수의 노드 장치들 각각에 대한 가중 평균 값을 연산하는 가중 평균 연산부; 및
상기 복수의 노드 장치들 중 상기 가중 평균 값이 최소로 연산된 노드 장치를 상기 제1 노드 장치로 선택하는 노드 선택부
를 포함하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버.According to claim 1,
The blockchain registration request unit
When the in-kind asset transaction transaction is generated, requesting the plurality of node devices to transmit first information that is current power consumption information, second information that is current CPU usage rate information, and third information that is current network traffic numerical information information transmission request unit;
When the first information, the second information, and the third information are received from each of the plurality of node devices, the first information, the second information, and the third information for each of the plurality of node devices a norm operator for generating a three-dimensional feature vector having as a component and then calculating a Manhattan norm and a Euclidean norm for the three-dimensional feature vector;
For each of the plurality of node devices, a first weight calculation value is calculated by multiplying the Manhattan norm for the three-dimensional feature vector by a predetermined first weight, and a predetermined value is determined in the Euclidean norm for the three-dimensional feature vector. a weighted average operation unit for calculating a weighted average value for each of the plurality of node devices by multiplying a second weight to calculate a second weighted operation value and then summing the first weighted operation value and the second weighted operation value; and
A node selection unit that selects a node device having the smallest weighted average value calculated from among the plurality of node devices as the first node device
A blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets, including
상기 블록체인 등록 요청부는
상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 OTP(One Time Password) 생성 함수와 미리 정해진 제2 OTP 생성 함수가 저장되어 있는 OTP 저장부;
상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 인증용 숫자 m(m은 2 이상의 자연수임)과 미리 정해진 제2 인증용 숫자 k(k는 m과 다른 2 이상의 자연수임)가 저장되어 있는 인증용 숫자 저장부;
상기 복수의 노드 장치들 중 상기 제1 노드 장치가 선택되면, 상기 제1 OTP 생성 함수를 기초로 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 연산 값 산출부;
랜덤한 성분 값들로 구성된 m x k의 랜덤 행렬을 생성하고, 제1 랜덤 값을 랜덤하게 생성하는 랜덤 값 생성부;
상기 랜덤 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분을 상기 제1 랜덤 값으로 치환함으로써, m x k의 치환 행렬을 생성하고, 상기 치환 행렬을 상기 제1 노드 장치로 전송하면서, 상기 제1 노드 장치로 상기 치환 행렬에 대응되는 피드백 값의 전송을 요청하는 피드백 값 요청부;
상기 제1 노드 장치로부터 상기 치환 행렬에 대응되는 피드백 값으로 제1 피드백 값 - 상기 제1 피드백 값은 상기 제1 노드 장치에서 상기 제1 노드 장치의 메모리 상에 사전 저장되어 있는 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 기초로 상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출된 후 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값이 추출되어 생성된 피드백 값임 - 이 수신되면, 상기 제1 피드백 값이 상기 제1 랜덤 값과 동일한지 확인함으로써, 상기 제1 노드 장치에 대한 인증을 수행하는 노드 인증 수행부; 및
상기 제1 노드 장치에 대한 인증이 완료되면, 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 트랜잭션 전송부
를 더 포함하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버.According to claim 1,
The blockchain registration request unit
an OTP storage unit in which a predetermined first OTP (One Time Password) generation function and a predetermined second OTP generation function shared in advance with the plurality of node devices are stored;
A predetermined first authentication number m (m is a natural number greater than or equal to 2) and a predetermined second authentication number k (k is a natural number greater than or equal to 2 different from m) shared with the plurality of node devices in advance are stored. a number storage unit for authentication;
When the first node device is selected from among the plurality of node devices, a first one-time authentication number is generated based on the first OTP generation function, and the first one-time authentication number is the dividend number, and the first authentication number By performing a modulo operation in which m is a divisor, a first operation value x is calculated, a second one-time authentication number is generated based on the second OTP generation function, and then the second one-time authentication number is a dividend a calculation value calculation unit for calculating a second calculation value y by performing a modulo calculation of the second authentication number k as a divisor;
a random value generator generating an mxk random matrix composed of random component values and randomly generating a first random value;
By substituting the first random value for a component located in '(x+1) row (y+1) column' in the random matrix, an mxk permutation matrix is generated, and the permutation matrix is transferred to the first node device. a feedback value requesting unit for requesting transmission of a feedback value corresponding to the permutation matrix to the first node device while transmitting;
a first feedback value from the first node device to a feedback value corresponding to the permutation matrix - the first feedback value is generated in the first node device in advance in a memory of the first node device After the first operation value x and the second operation value y are calculated based on a function, the second OTP generation function, the first authentication number m, and the second authentication number k, '( When x+1) is a feedback value generated by extracting a component value located in row (y+1) column ', by checking whether the first feedback value is the same as the first random value, the first node a node authentication performing unit that authenticates the device; and
When authentication for the first node device is completed, a transaction transmission unit that transmits a registration request of the spot asset transaction transaction to the blockchain network while transmitting the spot asset transaction transaction to the first node device
A blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets that further include
상기 제1 노드 장치는
상기 제1 노드 장치의 메모리 상에 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 사전 저장하고 있고,
상기 자산 거래 플랫폼 서버로부터 상기 치환 행렬이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 상기 제1 OTP 생성 함수를 기초로 상기 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 상기 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출하며, 상기 제1 연산 값 x와 상기 제2 연산 값 y를 기초로 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값을 상기 제1 피드백 값으로 추출한 후 상기 제1 피드백 값을 상기 자산 거래 플랫폼 서버로 전송하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버.5. The method of claim 4,
The first node device
The first OTP generating function, the second OTP generating function, the first authentication number m and the second authentication number k are pre-stored in the memory of the first node device,
When the permutation matrix is received from the asset trading platform server, the first one-time authentication number is generated after generating the first one-time authentication number based on the first OTP generation function stored in the memory of the first node device. By performing a modulo operation in which is a dividend and the first authentication number m is a divisor, the first operation value x is calculated, and the second one-time authentication number is generated based on the second OTP generation function. Then, by performing a modulo operation in which the second one-time authentication number is a dividend and the second authentication number k is a divisor, the second operation value y is calculated, and the first operation value x and the second operation value are calculated. Based on the value y, the component value located in the '(x+1) row (y+1) column' in the substitution matrix is extracted as the first feedback value, and then the first feedback value is transmitted to the asset trading platform server A blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets.
전자 서명을 위한 미리 정해진 개인키 - 상기 개인키와 키쌍을 구성하는 공개키는 매수자 회원으로 등록되어 있는 복수의 매수자들의 매수자 단말에 사전 배포되어 있음 - 가 저장되어 있는 개인키 저장부를 유지하는 단계;
매도자 회원으로 등록되어 있는 복수의 매도자들의 매도자 단말 정보, 상기 복수의 매도자들 각각이 등록한 현물 자산에 대한 현물 자산 정보 - 상기 현물 자산 정보에는 각 현물 자산에 대한 명칭, 판매 가능 수량 및 단가에 대한 정보가 포함되어 있음 - 및 각 현물 자산에 대응되는 현물 자산 토큰 - 상기 현물 자산 토큰에는 각 현물 자산에 대한 현물 자산 정보의 데이터가 미리 설정된 해시 함수에 입력으로 인가되어 생성된 해시 값과, 상기 해시 값이 상기 개인키로 암호화되어 생성된 전자 서명 값이 포함되어 있음 - 이 저장되어 있는 현물 자산 정보 데이터베이스를 유지하는 단계;
상기 복수의 매도자들 중 제1 매도자의 매도자 단말로부터 제1 현물 자산에 대한 제1 현물 자산 정보가 수신되면서, 상기 제1 현물 자산에 대한 현물 자산 등록 요청이 수신되면, 상기 제1 현물 자산 정보의 데이터를 상기 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값을 상기 개인키로 암호화하여 제1 전자 서명 값을 생성하며, 상기 제1 해시 값과 상기 제1 전자 서명 값이 포함된 제1 현물 자산 토큰을 생성한 후 상기 현물 자산 정보 데이터베이스에 상기 제1 현물 자산 정보와 상기 제1 현물 자산 토큰을 상기 제1 매도자의 매도자 단말 정보에 대응시켜 저장하는 단계;
상기 복수의 매수자들 중 제1 매수자의 매수자 단말로부터 상기 복수의 매도자들 중 제2 매도자가 등록한 제2 현물 자산에 대한 현물 자산 정보의 제공 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대응되는 제2 현물 자산 토큰을 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 단계;
상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하는 검증 완료 메시지 - 상기 검증 완료 메시지는 상기 제1 매수자의 매수자 단말에 상기 제2 현물 자산 토큰이 수신된 이후, 상기 제1 매수자의 매수자 단말이 상기 제2 현물 자산 토큰에 포함되어 있는 전자 서명 값을 상기 제1 매수자의 매수자 단말에 사전 배포되어 있는 상기 공개키로 복호화한 값과 상기 제2 현물 자산 토큰에 포함되어 있는 현물 자산 정보의 데이터에 대한 해시 값이 서로 일치하는지 비교한 결과, 양 값이 서로 일치하는 것으로 확인되는 경우, 상기 제2 현물 자산 토큰에 대한 검증이 완료되었음을 지시하기 위해서 생성한 메시지를 의미함 - 가 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 현물 자산에 대한 현물 자산 정보인 제2 현물 자산 정보를 추출하여 상기 제1 매수자의 매수자 단말로 전송하는 단계;
상기 제1 매수자의 매수자 단말로부터 상기 제2 현물 자산에 대한 구매 수량 정보와 함께 상기 구매 수량 정보에 따른 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 요청이 수신되면, 상기 현물 자산 정보 데이터베이스로부터 상기 제2 매도자의 매도자 단말 정보를 확인한 후, 상기 제2 매도자의 매도자 단말로 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청을 전송하는 단계;
상기 제2 매도자의 매도자 단말로부터 상기 구매 수량만큼의 상기 제2 현물 자산에 대한 구매 승인 요청에 대응하는 구매 승인 확인 메시지가 수신되면, 상기 제2 현물 자산에 대한 명칭, 상기 제2 현물 자산에 대한 상기 구매 수량, 상기 제2 현물 자산에 대한 단가, 상기 제1 매수자의 정보 및 상기 제2 매도자의 정보가 포함된 현물 자산 거래 트랜잭션을 생성하는 단계; 및
블록체인 네트워크를 구성하는 복수의 노드 장치들 중 어느 하나인 제1 노드 장치를 선택한 후 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계
를 포함하고,
상기 제1 노드 장치는
상기 자산 거래 플랫폼 서버로부터 상기 현물 자산 거래 트랜잭션이 수신되면, 상기 제1 노드 장치의 메모리에 저장되어 있는 블록체인 데이터를 기초로 상기 현물 자산 거래 트랜잭션이 포함된 블록을 생성하고, 상기 블록을 상기 블록체인 데이터에 체인으로 연결한 후, 상기 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 제1 노드 장치를 제외한 나머지 노드 장치들로 전파하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법.A method of operating a blockchain-based asset trading platform server that enables spot asset transactions through tokenization of assets, the method comprising:
maintaining a private key storage unit in which a predetermined private key for electronic signature is stored, wherein the private key and the public key constituting the key pair are pre-distributed to purchaser terminals of a plurality of purchasers registered as purchaser members;
Seller terminal information of a plurality of sellers who are registered as seller members, spot asset information about the spot assets registered by each of the plurality of sellers - The spot asset information includes information on the name of each spot asset, available quantity for sale and unit price includes - and a spot asset token corresponding to each spot asset - The spot asset token includes a hash value generated by applying data of spot asset information for each spot asset as an input to a preset hash function, and the hash value the digital signature value generated by encryption with the private key is included - maintaining the stored in-kind asset information database;
When the first spot asset information for the first spot asset is received from the seller terminal of the first seller among the plurality of sellers, and a spot asset registration request for the first spot asset is received, the first spot asset information applying data to the hash function as an input to generate a first hash value, encrypting the first hash value with the private key to generate a first digital signature value, the first hash value and the first digital signature value After generating the included first spot asset token, storing the first spot asset information and the first spot asset token in the spot asset information database in correspondence with the seller terminal information of the first seller;
When a request for provision of spot asset information on a second spot asset registered by a second seller among the plurality of sellers is received from a buyer terminal of a first buyer among the plurality of buyers, the second spot from the spot asset information database extracting a second spot asset token corresponding to the asset and transmitting it to the buyer terminal of the first buyer;
Verification complete message indicating that verification of the second spot asset token is completed from the buyer terminal of the first buyer - The verification complete message is after the second spot asset token is received by the buyer terminal of the first buyer, The value obtained by decrypting the electronic signature value included in the second spot asset token by the buyer terminal of the first buyer with the public key pre-distributed to the buyer terminal of the first buyer and the second spot asset token As a result of comparing the hash values of the data of the present spot asset information to see if they match each other, when it is confirmed that both values match each other, it means a message generated to indicate that the verification of the second spot asset token has been completed. - is received, extracting second spot asset information that is spot asset information for the second spot asset from the spot asset information database and transmitting the second spot asset information to the buyer terminal of the first buyer;
When a purchase request for the second spot asset equal to the purchase quantity according to the purchase quantity information is received from the buyer terminal of the first buyer along with the purchase quantity information for the second spot asset, from the spot asset information database after confirming the seller terminal information of the second seller, transmitting a purchase approval request for the second spot asset equal to the purchase quantity to the seller terminal of the second seller;
When a purchase approval confirmation message is received from the seller terminal of the second seller corresponding to the purchase approval request for the second spot asset equal to the purchase quantity, the name of the second spot asset, the second spot asset generating a spot asset transaction transaction including the purchase quantity, the unit price for the second spot asset, information of the first buyer, and information of the second seller; and
After selecting a first node device, which is one of a plurality of node devices constituting a blockchain network, and transmitting the spot asset transaction transaction to the first node device, registration of the spot asset transaction transaction into the blockchain network Steps to send a request
including,
The first node device
When the spot asset transaction transaction is received from the asset trading platform server, a block including the spot asset transaction transaction is generated based on the block chain data stored in the memory of the first node device, and the block is converted into the block After connecting the chain data to the chain, the in-kind asset transaction is possible through the tokenization of the asset, which propagates the block to the remaining node devices except for the first node device among the plurality of node devices through the blockchain network. How the blockchain-based asset trading platform server works.
상기 나머지 노드 장치들은
상기 블록체인 네트워크를 통해 상기 블록이 수신되면, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 블록을 체인으로 연결하여 저장하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법.7. The method of claim 6,
The remaining node devices are
When the block is received through the block chain network, the in-kind asset transaction is possible through the tokenization of the asset that is stored by connecting the block to the block chain data stored in the memory of each of the remaining node devices. How the blockchain-based asset trading platform server works.
상기 블록체인 네트워크로의 등록 요청을 전송하는 단계는
상기 현물 자산 거래 트랜잭션이 생성되면, 상기 복수의 노드 장치들에 대해, 현재 전력 소모량 정보인 제1 정보, 현재 CPU 사용률 정보인 제2 정보 및 현재 네트워크 트래픽 수치 정보인 제3 정보의 전송을 요청하는 단계;
상기 복수의 노드 장치들 각각으로부터 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보가 수신되면, 상기 복수의 노드 장치들 각각에 대해, 상기 제1 정보, 상기 제2 정보 및 상기 제3 정보를 성분으로 갖는 3차원의 특성 벡터를 생성한 후 상기 3차원의 특성 벡터에 대한 맨해튼 노름(Manhattan norm)과 유클리드 노름(Euclidean norm)을 각각 연산하는 단계;
상기 복수의 노드 장치들 각각에 대해, 상기 3차원의 특성 벡터에 대한 맨해튼 노름에 미리 정해진 제1 가중치를 곱하여 제1 가중 연산 값을 연산하고, 상기 3차원의 특성 벡터에 대한 유클리드 노름에 미리 정해진 제2 가중치를 곱하여 제2 가중 연산 값을 연산한 후 상기 제1 가중 연산 값과 상기 제2 가중 연산 값을 합함으로써, 상기 복수의 노드 장치들 각각에 대한 가중 평균 값을 연산하는 단계; 및
상기 복수의 노드 장치들 중 상기 가중 평균 값이 최소로 연산된 노드 장치를 상기 제1 노드 장치로 선택하는 단계
를 포함하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법.7. The method of claim 6,
The step of sending a registration request to the blockchain network is
When the in-kind asset transaction transaction is generated, requesting the plurality of node devices to transmit first information that is current power consumption information, second information that is current CPU usage rate information, and third information that is current network traffic numerical information step;
When the first information, the second information, and the third information are received from each of the plurality of node devices, the first information, the second information, and the third information for each of the plurality of node devices generating a three-dimensional feature vector having as a component and then calculating a Manhattan norm and a Euclidean norm for the three-dimensional feature vector;
For each of the plurality of node devices, a first weight calculation value is calculated by multiplying the Manhattan norm for the three-dimensional feature vector by a predetermined first weight, and a predetermined value is determined in the Euclidean norm for the three-dimensional feature vector. calculating a weighted average value for each of the plurality of node devices by multiplying a second weight to calculate a second weighted calculation value and then summing the first weighted calculation value and the second weighted calculation value; and
selecting, as the first node device, a node device having the smallest weighted average value calculated from among the plurality of node devices;
A method of operating a blockchain-based asset trading platform server that enables spot asset transactions through tokenization of assets, including
상기 블록체인 네트워크로의 등록 요청을 전송하는 단계는
상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 OTP(One Time Password) 생성 함수와 미리 정해진 제2 OTP 생성 함수가 저장되어 있는 OTP 저장부를 유지하는 단계;
상기 복수의 노드 장치들과 사전 공유하고 있는 미리 정해진 제1 인증용 숫자 m(m은 2 이상의 자연수임)과 미리 정해진 제2 인증용 숫자 k(k는 m과 다른 2 이상의 자연수임)가 저장되어 있는 인증용 숫자 저장부를 유지하는 단계;
상기 복수의 노드 장치들 중 상기 제1 노드 장치가 선택되면, 상기 제1 OTP 생성 함수를 기초로 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로(modulo) 연산을 수행함으로써, 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 제2 연산 값 y를 산출하는 단계;
랜덤한 성분 값들로 구성된 m x k의 랜덤 행렬을 생성하고, 제1 랜덤 값을 랜덤하게 생성하는 단계;
상기 랜덤 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분을 상기 제1 랜덤 값으로 치환함으로써, m x k의 치환 행렬을 생성하고, 상기 치환 행렬을 상기 제1 노드 장치로 전송하면서, 상기 제1 노드 장치로 상기 치환 행렬에 대응되는 피드백 값의 전송을 요청하는 단계;
상기 제1 노드 장치로부터 상기 치환 행렬에 대응되는 피드백 값으로 제1 피드백 값 - 상기 제1 피드백 값은 상기 제1 노드 장치에서 상기 제1 노드 장치의 메모리 상에 사전 저장되어 있는 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 기초로 상기 제1 연산 값 x와 상기 제2 연산 값 y가 산출된 후 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값이 추출되어 생성된 피드백 값임 - 이 수신되면, 상기 제1 피드백 값이 상기 제1 랜덤 값과 동일한지 확인함으로써, 상기 제1 노드 장치에 대한 인증을 수행하는 단계; 및
상기 제1 노드 장치에 대한 인증이 완료되면, 상기 제1 노드 장치로 상기 현물 자산 거래 트랜잭션을 전송하면서, 상기 현물 자산 거래 트랜잭션의 상기 블록체인 네트워크로의 등록 요청을 전송하는 단계
를 더 포함하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법.7. The method of claim 6,
The step of sending a registration request to the blockchain network is
maintaining an OTP storage unit in which a predetermined first OTP (One Time Password) generation function and a predetermined second OTP generation function shared in advance with the plurality of node devices are stored;
A predetermined first authentication number m (m is a natural number greater than or equal to 2) and a predetermined second authentication number k (k is a natural number greater than or equal to 2 different from m) shared with the plurality of node devices in advance are stored. maintaining a numeric storage unit for authentication;
When the first node device is selected from among the plurality of node devices, a first one-time authentication number is generated based on the first OTP generation function, and the first one-time authentication number is the dividend number, and the first authentication number By performing a modulo operation in which m is a divisor, a first operation value x is calculated, a second one-time authentication number is generated based on the second OTP generation function, and then the second one-time authentication number is a dividend , calculating a second operation value y by performing a modulo operation of dividing the second authentication number k as a divisor;
generating an mxk random matrix composed of random component values, and randomly generating a first random value;
By substituting the first random value for a component located in '(x+1) row (y+1) column' in the random matrix, an mxk permutation matrix is generated, and the permutation matrix is transferred to the first node device. requesting transmission of a feedback value corresponding to the permutation matrix to the first node device while transmitting;
a first feedback value from the first node device to a feedback value corresponding to the permutation matrix - the first feedback value is generated in the first node device in advance in a memory of the first node device After the first operation value x and the second operation value y are calculated based on a function, the second OTP generation function, the first authentication number m, and the second authentication number k, '( When x+1) is a feedback value generated by extracting a component value located in row (y+1) column ', by checking whether the first feedback value is the same as the first random value, the first node performing authentication on the device; and
When the authentication for the first node device is completed, sending a registration request of the spot asset transaction transaction to the blockchain network while transmitting the spot asset transaction transaction to the first node device
A method of operating a blockchain-based asset trading platform server that enables spot asset trading through tokenization of assets further comprising a.
상기 제1 노드 장치는
상기 제1 노드 장치의 메모리 상에 상기 제1 OTP 생성 함수, 상기 제2 OTP 생성 함수, 상기 제1 인증용 숫자 m 및 상기 제2 인증용 숫자 k를 사전 저장하고 있고,
상기 자산 거래 플랫폼 서버로부터 상기 치환 행렬이 수신되면, 상기 제1 노드 장치의 메모리 상에 저장되어 있는 상기 제1 OTP 생성 함수를 기초로 상기 제1 일회용 인증 번호를 생성한 후 상기 제1 일회용 인증 번호를 피제수로, 상기 제1 인증용 숫자 m을 제수로 하는 모듈로 연산을 수행함으로써, 상기 제1 연산 값 x를 산출하고, 상기 제2 OTP 생성 함수를 기초로 상기 제2 일회용 인증 번호를 생성한 후 상기 제2 일회용 인증 번호를 피제수로, 상기 제2 인증용 숫자 k를 제수로 하는 모듈로 연산을 수행함으로써, 상기 제2 연산 값 y를 산출하며, 상기 제1 연산 값 x와 상기 제2 연산 값 y를 기초로 상기 치환 행렬에서 '(x+1)행(y+1)열'에 위치하는 성분 값을 상기 제1 피드백 값으로 추출한 후 상기 제1 피드백 값을 상기 자산 거래 플랫폼 서버로 전송하는 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 기반의 자산 거래 플랫폼 서버의 동작 방법.10. The method of claim 9,
The first node device
The first OTP generating function, the second OTP generating function, the first authentication number m and the second authentication number k are pre-stored in the memory of the first node device,
When the permutation matrix is received from the asset trading platform server, the first one-time authentication number is generated after generating the first one-time authentication number based on the first OTP generation function stored in the memory of the first node device. By performing a modulo operation in which is a dividend and the first authentication number m is a divisor, the first operation value x is calculated, and the second one-time authentication number is generated based on the second OTP generation function. Then, by performing a modulo operation in which the second one-time authentication number is a dividend and the second authentication number k is a divisor, the second operation value y is calculated, and the first operation value x and the second operation value are calculated. Based on the value y, the component value located in the '(x+1) row (y+1) column' in the substitution matrix is extracted as the first feedback value, and then the first feedback value is transmitted to the asset trading platform server A method of operating a blockchain-based asset trading platform server that enables spot asset transactions through tokenization of assets.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200047808A KR102302955B1 (en) | 2020-04-21 | 2020-04-21 | Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200047808A KR102302955B1 (en) | 2020-04-21 | 2020-04-21 | Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102302955B1 true KR102302955B1 (en) | 2021-09-16 |
Family
ID=77926643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200047808A KR102302955B1 (en) | 2020-04-21 | 2020-04-21 | Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102302955B1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114066451A (en) * | 2021-11-16 | 2022-02-18 | 支付宝(杭州)信息技术有限公司 | Method and system for managing fund transaction and electronic equipment |
KR102482533B1 (en) * | 2022-07-13 | 2023-01-02 | 주식회사 제이티체인 | Blockchain-based device and method for virtual asset management |
KR20230067475A (en) * | 2021-11-09 | 2023-05-16 | 김상철 | Metaverse service providing server to provide a metaverse service that enables the rental of items usable in the metaverse environment and the operating method thereof |
CN116561739A (en) * | 2023-04-06 | 2023-08-08 | 北京熠智科技有限公司 | Data transaction method and device, electronic equipment and storage medium |
CN117891614A (en) * | 2024-03-14 | 2024-04-16 | 山西泓禾惜贤科贸有限公司 | Big data analysis platform based on cloud service |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180072029A (en) * | 2016-12-20 | 2018-06-29 | (주)한국거래소 | The system which supports a unlisted stock exchange process |
KR20190101265A (en) * | 2018-02-22 | 2019-08-30 | 주식회사 한컴위드 | User authentication processing apparatus capable of simple authentication by inputting personal identification number and operating method thereof |
KR20200018893A (en) * | 2018-08-13 | 2020-02-21 | 주식회사 티켓소켓코리아 | Assets trading system and method among parties through tokenization of assets |
KR20200031264A (en) * | 2018-09-14 | 2020-03-24 | 주식회사 미탭스플러스 | Apparatus and Method for Asset trading using Blockchain |
KR20200128918A (en) * | 2019-05-07 | 2020-11-17 | 주식회사 한컴위드 | Node device for performing certificate management based on a block chain and operating method thereof |
-
2020
- 2020-04-21 KR KR1020200047808A patent/KR102302955B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180072029A (en) * | 2016-12-20 | 2018-06-29 | (주)한국거래소 | The system which supports a unlisted stock exchange process |
KR20190101265A (en) * | 2018-02-22 | 2019-08-30 | 주식회사 한컴위드 | User authentication processing apparatus capable of simple authentication by inputting personal identification number and operating method thereof |
KR20200018893A (en) * | 2018-08-13 | 2020-02-21 | 주식회사 티켓소켓코리아 | Assets trading system and method among parties through tokenization of assets |
KR20200031264A (en) * | 2018-09-14 | 2020-03-24 | 주식회사 미탭스플러스 | Apparatus and Method for Asset trading using Blockchain |
KR20200128918A (en) * | 2019-05-07 | 2020-11-17 | 주식회사 한컴위드 | Node device for performing certificate management based on a block chain and operating method thereof |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230067475A (en) * | 2021-11-09 | 2023-05-16 | 김상철 | Metaverse service providing server to provide a metaverse service that enables the rental of items usable in the metaverse environment and the operating method thereof |
KR102664141B1 (en) | 2021-11-09 | 2024-05-08 | 김상철 | Metaverse service providing server to provide a metaverse service that enables the rental of items usable in the metaverse environment and the operating method thereof |
CN114066451A (en) * | 2021-11-16 | 2022-02-18 | 支付宝(杭州)信息技术有限公司 | Method and system for managing fund transaction and electronic equipment |
KR102482533B1 (en) * | 2022-07-13 | 2023-01-02 | 주식회사 제이티체인 | Blockchain-based device and method for virtual asset management |
CN116561739A (en) * | 2023-04-06 | 2023-08-08 | 北京熠智科技有限公司 | Data transaction method and device, electronic equipment and storage medium |
CN116561739B (en) * | 2023-04-06 | 2024-04-16 | 北京熠智科技有限公司 | Data transaction method and device, electronic equipment and storage medium |
CN117891614A (en) * | 2024-03-14 | 2024-04-16 | 山西泓禾惜贤科贸有限公司 | Big data analysis platform based on cloud service |
CN117891614B (en) * | 2024-03-14 | 2024-05-14 | 山西泓禾惜贤科贸有限公司 | Big data analysis platform based on cloud service |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102302955B1 (en) | Blockchain and cloud-based asset trading platform server that enables real asset trading through tokenization of assets and operating method thereof | |
KR102322646B1 (en) | Method and device for protecting sensitive data of transaction activity based on smart contract in blockchain | |
KR102610127B1 (en) | Apparatus and method for providing transaction service of crypto currency using electronic wallet | |
CN109697365A (en) | Information processing method and block chain node, electronic equipment | |
US20220108324A1 (en) | Financial payment method and payment system using mobile device | |
US20180158058A1 (en) | Apparatus and method to prevent execution of an unauthorized transaction via a distributed database | |
CN104737189A (en) | Environment and methods for enabling eletronic transactions | |
US20230370275A1 (en) | Verification system for proving authenticity and ownership of digital assets | |
KR20210067125A (en) | System and method for trading power based on blockchain | |
CN112801785A (en) | Fair data transaction method and device based on block chain intelligent contract | |
US11100486B2 (en) | Systems and methods for linking high-value tokens using a low-value token | |
US20200242573A1 (en) | Cryptographic transactions supporting real world requirements | |
KR102302954B1 (en) | Real estate investment and transaction management server that enables real estate transactions based on blockchain and operating method thereof | |
KR102322983B1 (en) | Asset trading platform server that enables trading of real assets based on blockchain and operating method thereof | |
US20140090040A1 (en) | System and method for real time secure image based key generation using partial polygons assembled into a master composite image | |
CN115545706A (en) | Safe payment system and method based on block chain and intelligent contract technology | |
KR102464429B1 (en) | Cloud-based gold trading platform server that enables gold trading based on digital gold token and operating method thereof | |
KR20220021374A (en) | Gold trading platform server for recommending the optimal gold exchange to a user for selling gold and the operating method thereof | |
KR102447334B1 (en) | Cloud-base online commerce platform server that enables online commerce based on gold and digital gold token and operating method thereof | |
JP6874700B2 (en) | E-commerce systems, communication terminals, third-party servers, e-commerce methods, and programs | |
KR102389298B1 (en) | Gold asset management server for supporting members to deposit and withdraw their gold which is purchased with cashable points, and the operating method thereof | |
KR102302942B1 (en) | Transaction management server that enables product purchase by linking with product vending machines based on gold and digital gold token, and operating method thereof | |
KR20210125801A (en) | Method for Trading Ownership of Products | |
KR102389289B1 (en) | Gold sales server for supporting purchase of gold with cashable points, and the operating method thereof | |
KR102302945B1 (en) | Gold wealth management server that enables gold bar purchase by interlocking with a gold bar vending machine where multiple gold bars are stored based on gold and digital gold tokens, and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |