KR20220027335A - Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof - Google Patents

Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof Download PDF

Info

Publication number
KR20220027335A
KR20220027335A KR1020200107801A KR20200107801A KR20220027335A KR 20220027335 A KR20220027335 A KR 20220027335A KR 1020200107801 A KR1020200107801 A KR 1020200107801A KR 20200107801 A KR20200107801 A KR 20200107801A KR 20220027335 A KR20220027335 A KR 20220027335A
Authority
KR
South Korea
Prior art keywords
digital asset
balance
zero
value
ascii
Prior art date
Application number
KR1020200107801A
Other languages
Korean (ko)
Other versions
KR102389522B1 (en
Inventor
박우람
고덕윤
박수용
Original Assignee
논스랩 주식회사
서강대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 논스랩 주식회사, 서강대학교산학협력단 filed Critical 논스랩 주식회사
Priority to KR1020200107801A priority Critical patent/KR102389522B1/en
Publication of KR20220027335A publication Critical patent/KR20220027335A/en
Application granted granted Critical
Publication of KR102389522B1 publication Critical patent/KR102389522B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/02Banking, e.g. interest calculation or account maintenance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Landscapes

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

Abstract

The present invention relates to a zero-knowledge proof system for validating a digital asset transaction based on zero-knowledge using an ASCII operation and a method thereof. The zero-knowledge proof system for validating a digital asset transaction comprises: a balance encryption step (a) of encrypting a balance of a digital asset by using a preset encryption algorithm using a hash algorithm and an ASCII operation and storing the same in a blockchain; and a transaction validation step (b) of comparing a remittance request amount with the balance of the digital asset stored in the blockchain and approving or rejecting a remittance transaction according to a comparison result when a remittance request is generated so as to encrypt the balance of the digital asset, store the same in the blockchain, and perform transaction validation for the remittance request based on zero-knowledge.

Description

아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템 및 방법{Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof}Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof

본 발명은 디지털 자산 거래 검증을 위한 영지식 증명 시스템 및 방법에 관한 것으로서, 더욱 구체적으로는 아스키 연산을 이용하여 블록체인상에 저장되는 디지털 자산들을 암호화시키고, 영지식 기반의 증명을 통해 암호화된 디지털 자산들을 송금 등의 거래를 할 수 있도록 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템 및 방법에 관한 것이다. The present invention relates to a zero-knowledge proof system and method for verifying digital asset transactions, and more specifically, to digital assets stored on a block chain using ASCII operation, and encrypted digital assets through zero-knowledge-based proof. It relates to a zero-knowledge proof system and method for verifying digital asset transactions using ASCII operation that enables transactions such as remittance of assets.

비트코인이나 이더리움 등과 같은 블록체인을 기반으로 한 디지털 자산이 유행하면서, 프라이버시의 중요성은 점점 더 커지게 되었다. 블록체인은 모든 사람들에게 거래 정보 내역을 투명하게 공개하는 것을 원칙으로 함으로써, 거래의 신뢰성을 확보할 수 있도록 하는 기술이다. 이러한 장점을 기반으로 하여 여러 분야의 산업체는 데이터의 신뢰성을 확보하기 위하여 블록체인 기술을 적용하고 있다. As digital assets based on block chains such as Bitcoin and Ethereum become popular, the importance of privacy has grown more and more. Blockchain is a technology that ensures the reliability of transactions by transparently disclosing transaction information to everyone. Based on these advantages, industries in various fields are applying blockchain technology to secure data reliability.

하지만, 블록체인의 공개 원칙은 모든 참여자에게 모든 거래 내역을 제공하고 검증받아야 하므로, 프라이버시 문제를 야기하게 된다. 이러한 문제점으로 인하여, 금융권에서는 블록체인 기술을 도입하여 디지털 자산을 운영하는 것을 꺼리는 경우가 많이 발생한다. 따라서, 전술한 프라이버시 문제는 블록체인 기술이 확산되지 못하는 저해 요인으로 작용되고 있는 실정이다. However, the open principle of the blockchain creates privacy issues as all transaction details must be provided and verified to all participants. Due to these problems, there are many cases in the financial sector that are reluctant to operate digital assets by introducing blockchain technology. Therefore, the above-mentioned privacy problem is acting as an impediment to the spread of block chain technology.

이러한 문제를 해결하기 위한 다양한 방안들이 논의되고 있다. 주로 거래의 익명성 확보를 위한 익명 인증 기술과 최소한의 정보를 공개한다는 원칙의 영지식 증명(zero-knowledge proof)이 그 대표적인 예이다. 영지식 증명은 증명자가 자신이 알고 있는 지식과 정보의 공개 범위를 최소화하면서, 그 지식을 알고 있다는 사실을 검증자에게 증명하는 기법이다. 영지식 증명은 암호학에서 누군가가 상대방에게 어떤 문장이 참이라는 것을 증명할 때, 그 문장의 참/거짓 여부를 제외한 다른 어떤 정보도 노출되지 않는 상호 절차를 의미한다. 그러나, 이러한 기술들은 일부 검증자들의 의존성을 갖고 있기 때문에, 모두가 동등한 권한으로 네트워크가 운영된다는 원칙에 위배된다. 즉, 참여자의 일부만이 거래에 대한 검증 권한을 갖기 때문에, 권한이 계층화될 뿐만 아니라 참여자 일부의 신뢰성에 의존하는 한계를 갖게 된다. Various methods for solving these problems are being discussed. Anonymous authentication technology for securing anonymity of transactions and zero-knowledge proof of the principle of disclosing minimum information are representative examples. Zero-knowledge proof is a technique in which the prover proves to the verifier that he/she knows the knowledge while minimizing the scope of disclosure of the knowledge and information that he/she knows. Zero-knowledge proof refers to a mutual procedure in cryptography where when someone proves to the other party that a sentence is true, no information other than whether the sentence is true/false is exposed. However, since these technologies have dependencies on some validators, they violate the principle that the network is operated with equal authority for all. In other words, since only some of the participants have the authority to verify the transaction, the authority is not only layered, but also has a limit depending on the reliability of some of the participants.

전통적인 영지식 증명은 증명자와 검증자가 여러 차례의 통신을 통해 검증된다. 이는 전통적인 영지식 증명의 한계로 지목됨에 따라, 이로부터 비대화식 영지식 증명(NIZKP : Non-interactive Zero-Knowledge Proof)의 기술이 발전하게 된다. 비대화식 영지식 증명은 단 한번의 통신만으로 영지식을 증명할 수 있다는 장점을 갖게 된다. 하지만, 비대화식 영지식 증명은 연산 과정에서 큰 난수가 지수로 사용되는 사례가 많기 때문에, 연산 시간이 많이 소요되는 문제점이 있다. In traditional zero-knowledge proofs, the prover and the verifier are verified through multiple communications. As this is pointed out as a limitation of traditional zero-knowledge proof, the technology of Non-interactive Zero-Knowledge Proof (NIZKP) develops from this. Non-interactive zero-knowledge proof has the advantage of being able to prove zero-knowledge with just one communication. However, the non-interactive zero-knowledge proof has a problem in that it takes a lot of computation time because there are many cases where a large random number is used as an exponent in the computation process.

한편, ASCII(American Standard Code fir Information Interchange)는 영문 알파벳을 사용하는 대표적인 문자 인코딩으로서, 미국 ANSI에서 표준화한 정보교환용 7비트 부호 체계이다. 아스키 코드는 000(0x00) ~ 127(0x7F)까지 총 128개의 부호가 사용된다. 이러한 아스키 코드는 영문 키보드로 입력할 수 있는 모든 기호들이 할당되어 있는 부호 체계이며, 매우 단순하고 간단하기 때문에 어느 시스템에서도 적용가능하다는 장점이 있다. On the other hand, ASCII (American Standard Code fir Information Interchange) is a representative character encoding using the English alphabet, and is a 7-bit code system for information exchange standardized by American ANSI. A total of 128 ASCII codes are used from 000 (0x00) to 127 (0x7F). This ASCII code is a coding system in which all symbols that can be input with an English keyboard are assigned, and because it is very simple and simple, it has the advantage that it can be applied to any system.

한국등록특허공보 제 10-2074381 호Korean Patent Publication No. 10-2074381

전술한 문제점을 해결하기 위한 본 발명의 목적은 개인의 디지털 자산 또는 송금액에 대한 암호화를 위하여 해시 알고리즘과 아스키(ASCII) 연산 기법을 활용하여, 공개성을 지닌 분산 원장을 제공하는 블록체인의 장점을 유지함과 동시에 거래내역에는 암호화하여 해석이 불가능하지만 참여자 모두가 검증가능한 디지털 자산 거래 검증을 위한 영지식 증명 시스템 및 방법을 제공하는 것을 목적으로 한다. An object of the present invention to solve the above problems is to maintain the advantage of a blockchain that provides a public distributed ledger by using a hash algorithm and ASCII operation technique for encryption of personal digital assets or remittance amount. At the same time, the purpose of the transaction is to provide a zero-knowledge proof system and method for verifying digital asset transactions that cannot be interpreted by encryption, but can be verified by all participants.

전술한 기술적 과제를 달성하기 위한 본 발명의 제1 특징에 따른 디지털 자산 검증 방법은, 참여 노드들의 디지털 자산을 블록체인에 저장하고 이들의 거래 검증을 수행하는 디지털 자산 거래 검증을 위한 영지식 증명 시스템에서의 참여 노드에 의한 디지털 자산 검증 방법에 있어서, (a) 아스키 연산을 이용하는 사전 설정된 암호화 알고리즘을 이용하여 상기 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하는 잔고 암호화 단계; 및 (b) 송금 요청이 발생하면, 송금 요청액과 블록체인에 저장된 디지털 자산의 잔고를 비교하고, 비교 결과에 따라 송금 거래를 승인하거나 거절하는 거래 검증 단계;를 구비하여, 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하고, 영지식을 기반으로 하여 송금 요청에 대한 거래 검증을 수행한다. The digital asset verification method according to the first aspect of the present invention for achieving the above-described technical problem is a zero-knowledge proof system for digital asset transaction verification that stores digital assets of participating nodes in a block chain and performs transaction verification thereof A digital asset verification method by a participating node in (a) a balance encryption step of encrypting the balance of the digital asset using a preset encryption algorithm using ASCII operation and storing it in a block chain; and (b) when a remittance request occurs, a transaction verification step of comparing the remittance request amount with the balance of the digital asset stored in the block chain, and approving or rejecting the remittance transaction according to the comparison result; It is encrypted and stored in the blockchain, and transaction verification is performed on the remittance request based on zero knowledge.

전술한 제1 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서, 상기 (a) 잔고 암호화 단계의 암호화 알고리즘은, (a1) 디지털 자산의 잔고를 랜덤화시켜 제1 변환값을 획득하는 단계; (a2) 상기 제1 변환값에 대하여 아스키 연산을 수행하여, 디지털 자산의 잔고에 대한 제2 변환값을 획득하는 단계; (a3) 디지털 자산의 잔고에 사전 설정된 기준값을 곱하여, 제3 변환값을 획득하는 단계; 및 (a4) 제2 변환값과 제3 변환값을 더하여, 디지털 자산의 잔고에 대한 암호화 값을 획득하는 단계;를 구비하는 것이 바람직하다. In the zero-knowledge proof method for digital asset transaction verification using ASCII operation according to the first feature described above, the encryption algorithm in the (a) balance encryption step (a1) randomizes the balance of the digital asset to first transform obtaining a value; (a2) performing an ASCII operation on the first converted value to obtain a second converted value for the balance of the digital asset; (a3) multiplying the balance of the digital asset by a preset reference value to obtain a third conversion value; and (a4) adding the second conversion value and the third conversion value to obtain an encryption value for the balance of the digital asset; it is preferable to include.

전술한 제1 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서, 상기 (a1) 단계는, 상기 제1 변환값은 상기 디지털 자산의 잔고에 대하여 해시 알고리즘을 적용하여 얻은 해시 결과값인 것이 바람직하다. In the zero-knowledge proof method for verifying digital asset transaction using ASCII operation according to the first feature described above, in step (a1), the first conversion value is obtained by applying a hash algorithm to the balance of the digital asset. It is preferable that it is a hash result value.

전술한 제1 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서, 상기 아스키 연산은, 입력값을 각 바이트(byte)별로 분할하고, 상기 분할된 각 바이트의 숫자들을 배열에 저장하고, 배열에 저장된 숫자들을 아스키 코드값으로 변환시키고, 상기 배열에 저장된 숫자들에 대한 아스키 코드값들을 모두 더하여 합계값을 획득하여 결과값으로 제공하는 것이 바람직하다. In the zero-knowledge proof method for verifying digital asset transaction using ASCII operation according to the first aspect described above, the ASCII operation divides an input value for each byte, and arranges the numbers of each divided byte. It is preferable to store in , convert the numbers stored in the array into ASCII code values, add all ASCII code values for the numbers stored in the array to obtain a sum value, and provide the result as a result.

전술한 제1 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서, 상기 제3 변환값을 얻기 위하여 사용되는 상기 기준값은 상기 제3 변환값이 상기 제2 변환값의 최대 가능값보다 항상 큰 값이 되도록 설정된 것이 바람직하다. In the zero-knowledge proof method for digital asset transaction verification using ASCII operation according to the first feature described above, the reference value used to obtain the third converted value is that the third converted value is the maximum of the second converted value. It is preferable to set the value to be always larger than the possible value.

전술한 제1 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서, 상기 (b) 단계는, (b1) 송금 요청액을 입력받는 단계; (b2) 상기 송금 요청액에 대하여, 디지털 자산의 잔고를 암호화시킨 암호화 알고리즘과 동일한 알고리즘을 이용하여 상기 송금 요청액을 암호화시키는 단계; (b3) 상기 암호화된 송금 요청액과 상기 블록체인에 저장된 디지털 자산에 대한 암호화된 잔고액을 비교하는 단계; (b4) 상기 비교 결과에 따라 송금 거래를 승인하거나 거절하는 단계;를 구비하는 것이 바람직하다. In the zero-knowledge proof method for verifying digital asset transaction using ASCII operation according to the first aspect, the step (b) includes: (b1) receiving a remittance request amount; (b2) encrypting the remittance request amount with respect to the remittance request amount using the same algorithm as the encryption algorithm for encrypting the balance of the digital asset; (b3) comparing the encrypted remittance request amount with the encrypted balance for digital assets stored in the block chain; (b4) approving or rejecting the remittance transaction according to the comparison result; is preferably provided.

본 발명의 제2 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템은, 복수 개의 참여 노드들의 디지털 자산을 블록체인에 저장하고 이들의 거래 검증을 수행하는 디지털 자산 거래 검증을 위한 영지식 증명 시스템으로서, 상기 참여 노드들은, 사전 설정된 합의 알고리즘에 따라 블록을 생성하여 체인 형태로 저장하는 블록체인; 아스키 연산을 이용하는 사전 설정된 암호화 알고리즘을 이용하여 상기 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하는 자산 암호화 모듈; 및 송금 요청이 발생하면, 송금 요청액과 블록체인에 저장된 디지털 자산의 잔고를 비교하고, 비교 결과에 따라 송금 거래를 승인하거나 거절하는 거래 검증 모듈;를 구비하여, 디지털 자산을 암호화시켜 블록체인에 저장하고, 영지식을 기반으로 하여 송금 요청에 대한 거래 검증을 수행하는 것이 바람직하다. The zero-knowledge proof system for digital asset transaction verification using ASCII operation according to the second aspect of the present invention is for digital asset transaction verification that stores digital assets of a plurality of participating nodes in a block chain and performs their transaction verification. A zero-knowledge proof system, wherein the participating nodes include: a block chain that generates a block according to a preset consensus algorithm and stores it in a chain form; an asset encryption module that encrypts the balance of the digital asset using a preset encryption algorithm using ASCII operation and stores it in a block chain; and a transaction verification module that compares the remittance request amount with the balance of the digital asset stored in the block chain when a remittance request occurs, and approves or rejects the remittance transaction according to the comparison result. It is desirable to store and perform transaction verification for remittance requests based on zero knowledge.

전술한 제2 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 자산 암호화 모듈은, 디지털 자산의 잔고를 랜덤화시켜 제1 변환값을 획득하고, 상기 제1 변환값에 대하여 아스키 연산을 수행시켜, 디지털 자산의 잔고에 대한 제2 변환값을 획득하고, 디지털 자산의 잔고에 사전 설정된 기준값을 곱하여 제2 변환값을 획득하고, 제2 변환값과 제3 변환값을 더하여, 디지털 자산의 잔고에 대한 암호화 값을 획득하는 것이 바람직하다. In the zero-knowledge proof system for digital asset transaction verification using ASCII operation according to the second feature described above, the asset encryption module randomizes the balance of the digital asset to obtain a first conversion value, and the first conversion performing ASCII operation on the value to obtain a second conversion value for the balance of the digital asset, multiplying the balance of the digital asset by a preset reference value to obtain a second conversion value, the second conversion value and the third conversion value In addition, it is desirable to obtain an encryption value for the balance of the digital asset.

전술한 제2 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 제1 변환값은 상기 디지털 자산의 잔고에 대하여 해시 알고리즘을 적용하여 얻은 해시 결과값인 것이 바람직하다. In the zero-knowledge proof system for digital asset transaction verification using ASCII operation according to the second feature described above, the first conversion value is preferably a hash result value obtained by applying a hash algorithm to the balance of the digital asset .

전술한 제2 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 아스키 연산은, 입력값을 각 바이트(byte)별로 분할하고, 상기 분할된 각 바이트의 숫자들을 배열에 저장하고, 배열에 저장된 숫자들을 아스키 코드값으로 변환시키고, 상기 배열에 저장된 숫자들에 대한 아스키 코드값들을 모두 더하여 합계값을 획득하여 결과값으로 제공하는 것이 바람직하다. In the zero-knowledge proof system for digital asset transaction verification using ASCII operation according to the second aspect described above, the ASCII operation divides an input value for each byte, and arranges the numbers of each divided byte. It is preferable to store in , convert the numbers stored in the array into ASCII code values, add all ASCII code values for the numbers stored in the array to obtain a sum value, and provide the result as a result.

전술한 제2 특징에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 거래 검증 모듈은, 송금 요청액을 입력받고, 상기 송금 요청액에 대하여, 디지털 자산의 잔고를 암호화시킨 암호화 알고리즘과 동일한 알고리즘을 이용하여 상기 송금 요청액을 암호화시키고, 상기 암호화된 송금 요청액과 상기 블록체인에 저장된 디지털 자산에 대한 암호화된 잔고액을 비교하고, 상기 비교 결과에 따라 송금 거래를 승인하거나 거절하는 것이 바람직하다. In the zero-knowledge proof system for verifying digital asset transaction using ASCII operation according to the second aspect, the transaction verification module receives a remittance request amount and encrypts the balance of the digital asset with respect to the remittance request amount Encrypts the remittance request amount using the same algorithm as the encryption algorithm, compares the encrypted remittance request amount with the encrypted balance for digital assets stored in the block chain, and approves the remittance transaction according to the comparison result or refuse to do so.

본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템은 개인의 자산 또는 송금액을 암호화시키기 위하여 해시 알고리즘과 아스키(ASCII) 연산 기법을 활용함으로써, 누구든지 거래 승인을 위한 검증이 가능하면서도 송금액 등과 같은 디지털 자산의 규모를 정확히 파악하거나 추적할 수 없게 된다. The zero-knowledge proof system for digital asset transaction verification according to the present invention utilizes a hash algorithm and ASCII operation technique to encrypt individual assets or remittances, so that anyone can verify for transaction approval and You will not be able to accurately determine or track the size of your digital assets.

도 1은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 노드의 구성을 도시한 블록도이다.
도 2는 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 각 참여 노드의 자산 암호화 모듈(110)에 의해 블록체인에 저장된 디지털 자산의 형태를 예시적으로 도시한 것이다.
도 3은 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 각 참여 노드의 거래 검증 모듈(120)에 의해, 요청된 거래가 승인되거나 거절되는 상태를 예시적으로 도시한 것이다.
도 4는 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 이를 설명하기 위하여 사용되는 용어들을 정리한 도표이다.
도 5는 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 자산 암호화 모듈의 동작을 순차적으로 도시한 흐름도이다.
도 6은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 자산 암호화 모듈의 자산 암호화 알고리즘에 대한 의사 코드이다.
도 7은 아스키 연산 과정을 설명하기 위하여 각 단계별 결과값을 예시적으로 도시한 것이다.
도 8은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 거래 검증 모듈의 거래 검증 알고리즘에 대한 의사 코드이다.
1 is a block diagram illustrating the configuration of a node in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.
2 exemplarily shows the form of digital assets stored in the block chain by the asset encryption module 110 of each participating node in the zero-knowledge proof system for digital asset transaction verification according to the present invention.
3 exemplarily shows a state in which a requested transaction is approved or rejected by the transaction verification module 120 of each participating node in the zero-knowledge proof system for digital asset transaction verification according to the present invention.
4 is a table summarizing terms used to describe the zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.
5 is a flowchart sequentially illustrating the operation of the asset encryption module in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.
6 is a pseudo code for an asset encryption algorithm of an asset encryption module in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.
7 exemplarily shows the result value of each step in order to explain the ASCII operation process.
8 is a pseudo code for a transaction verification algorithm of a transaction verification module in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 따른 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템 및 방법에 대하여 구체적으로 설명한다. Hereinafter, a zero-knowledge proof system and method for digital asset transaction verification using ASCII operation according to a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 노드의 구성을 도시한 블록도이다. 도 1을 참조하면, 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템은 블록체인을 갖는 복수 개의 참여 노드들(10)로 이루어지며, 각 참여 노드들(10)은 분산 원장인 블록체인(100), 디지털 자산의 잔고를 암호화시키는 자산 암호화 모듈(110) 및 디지털 자산의 거래를 검증하는 거래 검증 모듈(120)을 구비한다. 상기 참여 노드들은 디지털 자산을 암호화시켜 블록체인에 저장 및 관리하며 송금 요청이 발생되면 해당 거래를 검증하여 송금을 승인하거나 거절한다. 1 is a block diagram illustrating the configuration of a node in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention. Referring to FIG. 1 , the zero-knowledge proof system for digital asset transaction verification according to the present invention consists of a plurality of participating nodes 10 having a block chain, and each participating node 10 is a distributed ledger block chain. (100), an asset encryption module 110 for encrypting the balance of a digital asset, and a transaction verification module 120 for verifying a transaction of a digital asset. The participating nodes encrypt digital assets, store and manage them in the block chain, and when a remittance request is made, they verify the transaction and approve or reject the remittance.

도 2는 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 각 참여 노드의 자산 암호화 모듈(110)에 의해 블록체인에 저장된 디지털 자산의 형태를 예시적으로 도시한 것이다. 도 2를 참조하면, 상기 자산 암호화 모듈(110)은 참여 노드의 보유액인 디지털 자산의 잔액을 사전 설정된 잔액 암호화 기법에 따라 암호화시킨 후, 블록체인(100)에 저장된다. 2 exemplarily shows the form of digital assets stored in the block chain by the asset encryption module 110 of each participating node in the zero-knowledge proof system for digital asset transaction verification according to the present invention. Referring to FIG. 2 , the asset encryption module 110 encrypts the balance of digital assets, which is the holding amount of the participating nodes, according to a preset balance encryption technique, and then is stored in the block chain 100 .

도 3은 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 각 참여 노드의 거래 검증 모듈(120)에 의해, 요청된 거래가 승인되거나 거절되는 상태를 예시적으로 도시한 것이다. 도 3을 참조하면, 상기 거래 검증 모듈(120)은, 참여 노드로부터 일정 금액의 송금이 요청되면, 사전 설정된 거래 검증 기법에 따라 송금액과 블록체인에 저장된 디지털 자산을 비교하여 거래를 승인하거나 거절하게 된다. 3 exemplarily shows a state in which a requested transaction is approved or rejected by the transaction verification module 120 of each participating node in the zero-knowledge proof system for digital asset transaction verification according to the present invention. Referring to FIG. 3 , when a remittance of a certain amount is requested from a participating node, the transaction verification module 120 compares the remittance amount with a digital asset stored in the block chain according to a preset transaction verification technique to approve or reject the transaction. do.

이하, 전술한 본 발명에 따른 자산 암호화 모듈의 동작에 대하여 보다 구체적으로 설명한다. 한편, 도 4는 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 이를 설명하기 위하여 사용되는 용어들을 정리한 도표이다. Hereinafter, the operation of the asset encryption module according to the present invention will be described in more detail. Meanwhile, FIG. 4 is a table summarizing terms used to describe the zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.

도 5는 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 상기 자산 암호화 모듈의 동작을 순차적으로 도시한 흐름도이며, 도 6은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 자산 암호화 모듈의 자산 암호화 알고리즘에 대한 의사 코드이다. 5 is a flowchart sequentially illustrating the operation of the asset encryption module in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention, and FIG. 6 is a digital asset according to a preferred embodiment of the present invention. In a zero-knowledge proof system for asset transaction verification, it is a pseudo code for an asset encryption algorithm of an asset encryption module.

도 5 및 도 6을 참조하면, 상기 자산 암호화 모듈은, 디지털 자산의 잔액(Account Balance; 'AB')을 랜덤화시켜 임의의 숫자로 변환시켜 제1 변환값을 획득한다(단계 500). 본 발명에서는 디지털 자산의 잔액을 랜덤화시키기 위하여 해시 알고리즘을 이용할 수 있다. 해시 알고리즘은 단방향 암호화 기법으로써, 해시 알고리즘의 출력값을 통해 입력값을 유추할 수 없다는 특징을 가지게 된다. 본 발명에서는 가장 널리 사용되는 해시 알고리즘인 SHA-256을 활용하였으며, 그 외의 다른 해시 알고리즘도 사용가능하다. 이하, 설명의 편의상, 본 발명에서는 SHA-256 해시 알고리즘을 기준으로 설명한다. 5 and 6, the asset encryption module obtains a first conversion value by randomizing the digital asset balance (Account Balance; 'AB') and converting it into a random number (step 500). In the present invention, a hash algorithm may be used to randomize the balance of digital assets. The hash algorithm is a one-way encryption technique, and has the characteristic that the input value cannot be inferred from the output value of the hash algorithm. In the present invention, SHA-256, which is the most widely used hash algorithm, is used, and other hash algorithms may be used. Hereinafter, for convenience of description, the present invention will be described based on the SHA-256 hash algorithm.

따라서, 디지털 자산의 잔액에 대하여 해시 알고리즘을 적용하면, 임의의 64 바이트값이 출력된다. 해시 알고리즘은 입력값이 같으면 동일한 출력값이 나오지만, 입력값이 조금이라도 다르면 완전히 다른 값을 출력하게 되며, 출력값을 알더라도 입력값을 유추할 수는 없는 특징을 갖는다. Therefore, when the hash algorithm is applied to the balance of the digital asset, a random 64-byte value is output. The hash algorithm produces the same output value if the input values are the same, but outputs a completely different value if the input values are slightly different.

다음, 디지털 자산의 잔액에 대한 해시 결과값(Hashed AB)인 제1 변환값에 대하여 아스키 연산을 수행하여 특정 숫자로 변환시켜 제2 변환값을 획득한다(단계 510). Next, an ASCII operation is performed on the first converted value, which is the hash result value (Hashed AB) of the balance of the digital asset, and is converted into a specific number to obtain a second converted value (step 510).

이하, 도 7을 참조하여 아스키 연산 과정을 설명한다. 도 7은 아스키 연산 과정을 설명하기 위하여 각 단계별 결과값을 예시적으로 도시한 것이다. 도 7을 참조하면, 먼저, 디지털 자산의 잔액에 대한 해시 결과값은 16진수로 표현된 64 바이트의 문자열로 이루어진다. 16진수로 표현된 64 바이트의 문자열을 1 바이트씩 분할하여 64개의 배열에 저장한다. 다음, 각 배열에 저장된 0 ~ F 로 표현된 16진수를 이에 대응하는 아스키 코드(ASCII Code)값으로 변환한다. 다음, 아스키 코드값으로 변환된 64개의 배열에 저장된 값을 모두 더하여, 배열의 총 합계값(Sum of AB)을 구함으로써, 제2 변환값을 획득하게 된다. 한편, SHA-256 해시 알고리즘을 사용하는 경우, 해시 결과값 중 가장 큰 값은 64개의 'e'로 구성될 것이며, 'e'의 아스키 코드값은 15이기 때문에, 상기 제2 변환값은 0 ~ 960 사이의 숫자로 출력될 수 있다.Hereinafter, an ASCII operation process will be described with reference to FIG. 7 . 7 exemplarily shows the result value of each step in order to explain the ASCII operation process. Referring to FIG. 7 , first, a hash result value for the balance of a digital asset consists of a 64-byte string expressed in hexadecimal. A string of 64 bytes expressed in hexadecimal is divided by 1 byte and stored in 64 arrays. Next, the hexadecimal number represented by 0 ~ F stored in each array is converted into the corresponding ASCII code value. Next, the second converted value is obtained by adding all the values stored in the 64 arrays converted to ASCII code values to obtain the sum of the arrays (Sum of AB). On the other hand, when using the SHA-256 hash algorithm, the largest value among the hash result values will consist of 64 'e', and since the ASCII code value of 'e' is 15, the second conversion value is 0 to It can be output as a number between 960.

다음, 디지털 자산의 잔액을 사전 설정된 기준값과 곱하여, 잔액에 비례하는 큰 수로 변경된 제3 변환값을 획득한다(단계 520). 한편, 상기 제3 변환값을 얻기 위하여 사용되는 기준값은 전술한 0 ~ 960 사이의 값에 대하여 향후 송금 요청액과의 비교 연산을 위하여 큰 수(BV; Big Value)의 값을 사용하게 된다. 즉, 임의의 큰 수인 기준값을 디지털 자산의 잔액과 곱하여 잔액과 비례하는 큰 수(즉, 제3 변환값)로 변경하게 된다. Next, the balance of the digital asset is multiplied by a preset reference value to obtain a third converted value changed to a large number proportional to the balance (step 520). On the other hand, as the reference value used to obtain the third conversion value, a value of a large number (BV; Big Value) is used for a comparison operation with a future remittance request amount with respect to a value between 0 and 960 described above. That is, the reference value, which is an arbitrary large number, is multiplied by the balance of the digital asset and changed to a large number (ie, the third conversion value) proportional to the balance.

다음, 제2 변환값과 제3 변환값을 더하여 최종적으로 디지털 자산에 대한 암호화값을 획득한다(단계 530). 상기 디지털 자산에 대한 암호화값은 숨겨진 잔액(Hidden Balance; 'HB')로 정의될 수 있으며, 이는 잔액에 대한 랜덤화 과정을 거친 제2 변환값을 사용하므로 원래의 잔액을 알 수 없지만, 잔액과 비례하는 큰 값인 제3 변환값을 사용하므로, 잔액의 크기는 알 수 없지만 잔액의 크기에 비례하는 숨겨진 잔액을 얻을 수 있게 된다. Next, the second conversion value and the third conversion value are added to finally obtain an encryption value for the digital asset (step 530). The encrypted value for the digital asset may be defined as a hidden balance ('HB'), which uses the second converted value that has undergone a randomization process for the balance, so the original balance cannot be known, but the balance and Since the third conversion value, which is a proportionally large value, is used, the size of the balance is unknown, but a hidden balance proportional to the size of the balance can be obtained.

여기서, 상기 제3 변환값을 획득하기 위하여 사용되는 기준값이 제2 변환값의 최대 가능값보다 너무 크면 잔액의 추론이 쉬워질 수 있기 때문에 최적의 BV 값을 구하는 것이 중요하다. 따라서, 본 발명에서는 잔액과 비례하여 점점 커지지만, 추론이 어려운 최적의 sBV(Smallest BV)값을 구하는 것이 바람직하다. Here, if the reference value used to obtain the third converted value is too large than the maximum possible value of the second converted value, it is important to obtain an optimal BV value because inference of the balance may be easy. Therefore, in the present invention, it is desirable to obtain an optimal sBV (Smallest BV) value that is gradually increased in proportion to the balance, but which is difficult to infer.

도 8은 본 발명의 바람직한 실시예에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서, 거래 검증 모듈의 거래 검증 알고리즘에 대한 의사 코드이다. 8 is a pseudo code for a transaction verification algorithm of a transaction verification module in a zero-knowledge proof system for digital asset transaction verification according to a preferred embodiment of the present invention.

도 8을 참조하면, 본 발명에 따른 디지털 자산 거래 검증을 위한 영지식 증명 시스템의 거래 검증 모듈은, 송금자가 거래하는 송금 요청액이 정상적인 거래 또는 잘못된 거래인지 여부를 증명한다. 전술한 바와 같이, 본 발명의 잔액 암호화 방법은 실제 계좌 잔액의 크기가 아주 조금이라도 증가하면 숨겨진 잔액이 비례하여 커진다는 성질을 활용하게 된다. 따라서, 상기 거래 검증 모듈은, 송금자로부터 송금 요청액이 입력되면, 송금 요청액에 대하여 전술한 잔액 암호화 알고리즘을 동일하게 적용하여 송금 요청액에 대한 제1, 제2 및 제3 변환값을 획득한다. Referring to FIG. 8 , the transaction verification module of the zero-knowledge proof system for digital asset transaction verification according to the present invention verifies whether a remittance request amount transacted by a sender is a normal transaction or an erroneous transaction. As described above, the balance encryption method of the present invention utilizes the property that the hidden balance increases proportionally when the size of the actual account balance increases even slightly. Accordingly, when the remittance request amount is input from the sender, the transaction verification module obtains first, second and third conversion values for the remittance request amount by applying the above-described balance encryption algorithm to the remittance request amount in the same way. do.

다음, 블록체인에 저장된 디지털 자산의 잔액에 대한 암호화값과 송금 요청액에 대한 암호화값을 비교한다. 다음, 디지털 자산의 잔액에 대한 암호화값이 송금 요청액의 암호화값과 같거나 더 크면 거래를 승인하고, 그렇지 아니한 경우에는 거래 승인을 거절한다. Next, we compare the encrypted value of the balance of the digital asset stored in the block chain with the encrypted value of the remittance request. Next, if the encrypted value of the balance of the digital asset is equal to or greater than the encrypted value of the remittance request, the transaction is approved; otherwise, the transaction is rejected.

이상에서 본 발명에 대하여 그 바람직한 실시예를 중심으로 설명하였으나, 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 그리고, 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다. In the above, the present invention has been described based on preferred embodiments thereof, but this is merely an example and does not limit the present invention, and those of ordinary skill in the art to which the present invention pertains without departing from the essential characteristics of the present invention. It will be appreciated that various modifications and applications not exemplified above in the scope are possible. And, the differences related to these modifications and applications should be interpreted as being included in the scope of the present invention defined in the appended claims.

10 : 참여 노드
100 : 블록체인
110 : 자산 암호화 모듈
120 : 거래 검증 모듈
10: Participating node
100: Blockchain
110: asset encryption module
120: transaction verification module

Claims (11)

참여 노드들의 디지털 자산을 블록체인에 저장하고 이들의 거래 검증을 수행하는 디지털 자산 거래 검증을 위한 영지식 증명 시스템에서의 참여 노드에 의한 디지털 자산 거래 검증을 위한 영지식 증명 방법에 있어서,
(a) 아스키 연산을 이용하는 사전 설정된 암호화 알고리즘을 이용하여 상기 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하는 잔고 암호화 단계; 및
(b) 송금 요청이 발생하면, 송금 요청액과 블록체인에 저장된 디지털 자산의 잔고를 비교하고, 비교 결과에 따라 송금 거래를 승인하거나 거절하는 거래 검증 단계;
를 구비하여, 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하고, 영지식을 기반으로 하여 송금 요청에 대한 거래 검증을 수행하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
In the zero-knowledge proof method for digital asset transaction verification by participating nodes in a zero-knowledge proof system for digital asset transaction verification that stores digital assets of participating nodes in a block chain and performs their transaction verification,
(a) a balance encryption step of encrypting the balance of the digital asset using a preset encryption algorithm using ASCII operation and storing it in a block chain; and
(b) when a remittance request occurs, a transaction verification step of comparing the remittance request amount with the balance of digital assets stored in the block chain, and approving or rejecting the remittance transaction according to the comparison result;
Zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that by having a .
제1항에 있어서, 상기 (a) 잔고 암호화 단계의 암호화 알고리즘은,
(a1) 디지털 자산의 잔고를 랜덤화시켜 제1 변환값을 획득하는 단계;
(a2) 상기 제1 변환값에 대하여 아스키 연산을 수행하여, 디지털 자산의 잔고에 대한 제2 변환값을 획득하는 단계;
(a3) 디지털 자산의 잔고에 사전 설정된 기준값을 곱하여, 제3 변환값을 획득하는 단계; 및
(a4) 제2 변환값과 제3 변환값을 더하여, 디지털 자산의 잔고에 대한 암호화 값을 획득하는 단계;
를 구비하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
According to claim 1, wherein the encryption algorithm of the (a) balance encryption step,
(a1) randomizing the balance of the digital asset to obtain a first conversion value;
(a2) performing an ASCII operation on the first converted value to obtain a second converted value for the balance of the digital asset;
(a3) multiplying the balance of the digital asset by a preset reference value to obtain a third conversion value; and
(a4) adding the second conversion value and the third conversion value to obtain an encryption value for the balance of the digital asset;
Zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that it comprises a.
제2항에 있어서, 상기 (a1) 단계는,
상기 제1 변환값은 상기 디지털 자산의 잔고에 대하여 해시 알고리즘을 적용하여 랜덤화시켜 획득된 해시 결과값인 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
The method of claim 2, wherein the step (a1) comprises:
The zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that the first conversion value is a hash result value obtained by randomizing by applying a hash algorithm to the balance of the digital asset.
제2항에 있어서, 상기 아스키 연산은,
입력값을 각 바이트(byte)별로 분할하고,
상기 분할된 각 바이트의 숫자들을 배열에 저장하고,
배열에 저장된 16진수로 표현된 숫자들을 아스키 코드로 변환시키고,
상기 배열에 저장된 숫자들에 대한 아스키 코드들을 모두 더하여 합계값을 획득하여 결과값으로 제공하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
The method of claim 2, wherein the ASCII operation is
Split the input value into each byte,
storing the numbers of each divided byte in an array,
Converts the hexadecimal numbers stored in the array to ASCII codes,
Zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that by adding all ASCII codes for the numbers stored in the array to obtain a total value and providing the result value.
제2항에 있어서, 상기 기준값은,
상기 제3 변환값이 상기 제2 변환값의 최대 가능값보다 항상 큰 값이 되도록 설정된 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
According to claim 2, wherein the reference value,
Zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that the third converted value is set to be always larger than the maximum possible value of the second converted value.
제1항에 있어서, 상기 (b) 단계는,
(b1) 송금 요청액을 입력받는 단계;
(b2) 상기 송금 요청액에 대하여, 디지털 자산의 잔고를 암호화시킨 암호화 알고리즘과 동일한 알고리즘을 이용하여 상기 송금 요청액을 암호화시키는 단계;
(b3) 상기 암호화된 송금 요청액과 상기 블록체인에 저장된 디지털 자산에 대한 암호화된 잔고액을 비교하는 단계;
(b4) 상기 비교 결과에 따라 송금 거래를 승인하거나 거절하는 단계;
를 구비하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 방법.
According to claim 1, wherein the step (b),
(b1) receiving a remittance request amount;
(b2) encrypting the remittance request amount with respect to the remittance request amount using the same algorithm as the encryption algorithm for encrypting the balance of the digital asset;
(b3) comparing the encrypted remittance request amount with the encrypted balance for digital assets stored in the block chain;
(b4) approving or rejecting the remittance transaction according to the comparison result;
Zero-knowledge proof method for digital asset transaction verification using ASCII operation, characterized in that it comprises a.
복수 개의 참여 노드들의 디지털 자산을 블록체인에 저장하고 이들의 거래 검증을 수행하는 디지털 자산 거래 검증을 위한 영지식 증명 시스템에 있어서,
상기 참여 노드들은,
사전 설정된 합의 알고리즘에 따라 블록을 생성하여 체인 형태로 저장하는 블록체인;
아스키 연산을 이용하는 사전 설정된 암호화 알고리즘을 이용하여 상기 디지털 자산의 잔고를 암호화시켜 블록체인에 저장하는 자산 암호화 모듈; 및
송금 요청이 발생하면, 송금 요청액과 블록체인에 저장된 디지털 자산의 잔고를 비교하고, 비교 결과에 따라 송금 거래를 승인하거나 거절하는 거래 검증 모듈;
를 구비하여, 디지털 자산을 암호화시켜 블록체인에 저장하고, 영지식을 기반으로 하여 송금 요청에 대한 거래 검증을 수행하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템.
In a zero-knowledge proof system for digital asset transaction verification that stores digital assets of a plurality of participating nodes in a block chain and performs transaction verification thereof,
The participating nodes are
Blockchain that creates blocks according to a preset consensus algorithm and stores them in chain form;
an asset encryption module that encrypts the balance of the digital asset using a preset encryption algorithm using ASCII operation and stores it in a block chain; and
a transaction verification module that, when a remittance request occurs, compares the remittance request amount with the balance of digital assets stored in the block chain, and approves or rejects the remittance transaction according to the comparison result;
A zero-knowledge proof system for digital asset transaction verification using ASCII operation, characterized in that by having, encrypting digital assets, storing them in a block chain, and performing transaction verification for remittance requests based on zero knowledge.
제7항에 있어서, 상기 자산 암호화 모듈은,
디지털 자산의 잔고를 랜덤화시켜 제1 변환값을 획득하고, 상기 제1 변환값에 대하여 아스키 연산을 수행시켜, 디지털 자산의 잔고에 대한 제2 변환값을 획득하고, 디지털 자산의 잔고에 사전 설정된 기준값을 곱하여 제2 변환값을 획득하고, 제2 변환값과 제3 변환값을 더하여, 디지털 자산의 잔고에 대한 암호화 값을 획득하는 것을 특징으로 하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템.
The method of claim 7, wherein the asset encryption module,
A first conversion value is obtained by randomizing the balance of the digital asset, and an ASCII operation is performed on the first conversion value to obtain a second conversion value for the balance of the digital asset, preset in the balance of the digital asset Digital asset transaction verification using ASCII operation, characterized in that the second conversion value is obtained by multiplying the reference value, and the second conversion value and the third conversion value are added to obtain an encrypted value for the balance of the digital asset Zero-knowledge proof system for
제8항에 있어서, 상기 제1 변환값은,
상기 디지털 자산의 잔고에 대하여 해시 알고리즘을 적용하여 랜덤화시켜 획득된 해시 결과값인 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템.
The method of claim 8, wherein the first conversion value,
Zero-knowledge proof system for digital asset transaction verification using ASCII operation, characterized in that it is a hash result obtained by applying a hash algorithm to the balance of the digital asset and randomizing it.
제7항에 있어서, 상기 아스키 연산은,
입력값을 각 바이트(byte)별로 분할하고, 상기 분할된 각 바이트의 숫자들을 배열에 저장하고, 배열에 저장된 숫자들을 아스키 코드값으로 변환시키고, 상기 배열에 저장된 숫자들에 대한 아스키 코드값들을 모두 더하여 합계값을 획득하여 결과값으로 제공하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템.
The method of claim 7, wherein the ASCII operation,
Divide the input value for each byte, store the divided numbers of each byte in an array, convert the numbers stored in the array into ASCII code values, and all ASCII code values for the numbers stored in the array In addition, a zero-knowledge proof system for digital asset transaction verification using ASCII operation, characterized in that the sum value is obtained and provided as a result value.
제7항에 있어서, 상기 거래 검증 모듈은,
송금 요청액을 입력받고, 상기 송금 요청액에 대하여, 디지털 자산의 잔고를 암호화시킨 암호화 알고리즘과 동일한 알고리즘을 이용하여 상기 송금 요청액을 암호화시키고, 상기 암호화된 송금 요청액과 상기 블록체인에 저장된 디지털 자산에 대한 암호화된 잔고액을 비교하고, 상기 비교 결과에 따라 송금 거래를 승인하거나 거절하는 것을 특징으로 하는 아스키 연산을 이용한 디지털 자산 거래 검증을 위한 영지식 증명 시스템.
The method of claim 7, wherein the transaction verification module,
Receives a remittance request amount, and encrypts the remittance request amount using the same algorithm as the encryption algorithm for encrypting the balance of digital assets with respect to the remittance request amount, and the encrypted remittance request amount and the digital stored in the block chain A zero-knowledge proof system for verifying digital asset transaction using ASCII operation, characterized in that it compares the encrypted balance of assets, and approves or rejects the remittance transaction according to the comparison result.
KR1020200107801A 2020-08-26 2020-08-26 Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof KR102389522B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200107801A KR102389522B1 (en) 2020-08-26 2020-08-26 Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200107801A KR102389522B1 (en) 2020-08-26 2020-08-26 Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof

Publications (2)

Publication Number Publication Date
KR20220027335A true KR20220027335A (en) 2022-03-08
KR102389522B1 KR102389522B1 (en) 2022-04-25

Family

ID=80812347

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200107801A KR102389522B1 (en) 2020-08-26 2020-08-26 Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof

Country Status (1)

Country Link
KR (1) KR102389522B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115965388A (en) * 2022-12-30 2023-04-14 国网数字科技控股有限公司 Industrial chain financial confidential traceability method and device based on block chain and related equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101809982B1 (en) * 2016-08-26 2017-12-18 연세대학교 원주산학협력단 Encryption and decryption system for personal medical infromation based on image
KR101843912B1 (en) * 2016-12-29 2018-03-30 주식회사 스마트로 System and method for providing payment services using virtual terminal
KR20190115556A (en) * 2018-04-03 2019-10-14 주식회사 비즈모델라인 Method for Providing Cryptocurrency Trade based on Certification of Balance by using Smart Contract based on Blockchain
KR102074381B1 (en) 2019-04-15 2020-02-06 팀블랙버드 주식회사 Method, device and recording medium for processing confidential transaction based on blockchain
KR20200083929A (en) * 2018-12-29 2020-07-09 알리바바 그룹 홀딩 리미티드 System and method for information protection

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101809982B1 (en) * 2016-08-26 2017-12-18 연세대학교 원주산학협력단 Encryption and decryption system for personal medical infromation based on image
KR101843912B1 (en) * 2016-12-29 2018-03-30 주식회사 스마트로 System and method for providing payment services using virtual terminal
KR20190115556A (en) * 2018-04-03 2019-10-14 주식회사 비즈모델라인 Method for Providing Cryptocurrency Trade based on Certification of Balance by using Smart Contract based on Blockchain
KR20200083929A (en) * 2018-12-29 2020-07-09 알리바바 그룹 홀딩 리미티드 System and method for information protection
KR102074381B1 (en) 2019-04-15 2020-02-06 팀블랙버드 주식회사 Method, device and recording medium for processing confidential transaction based on blockchain

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115965388A (en) * 2022-12-30 2023-04-14 国网数字科技控股有限公司 Industrial chain financial confidential traceability method and device based on block chain and related equipment
CN115965388B (en) * 2022-12-30 2023-12-22 国网数字科技控股有限公司 Block chain-based industrial chain financial secret state tracing method, device and related equipment

Also Published As

Publication number Publication date
KR102389522B1 (en) 2022-04-25

Similar Documents

Publication Publication Date Title
US11936774B2 (en) Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys
US10819505B2 (en) System and method for information protection
RU2719311C1 (en) Information protection system and method
Williamson The aztec protocol
JP7492508B2 (en) Computer-implemented system and method for distributing shares of digitally signed data - Patents.com
EP4000216A1 (en) Cryptographic pseudonym mapping method, computer system, computer program and computer-readable medium
KR102389522B1 (en) Zero-knowledge proof system for validating transactions of blockchain digital assets using ASCII computation technique and method thereof
CN102222188A (en) Information system user password generation method
CN116389164B (en) Data detection method and device
Kamal et al. A Proposed hash algorithm to use for blockchain base transaction flow system
CN113711562A (en) Computer-implemented method and system for knowledge proof in blockchain transactions
KR20220056036A (en) Transaction execution device to implement a virtual machine based on a zero-knowledge proof circuit for general operation verification
Bhadauria et al. Multi-clients verifiable computation via conditional disclosure of secrets
Li et al. Blockchain Encryption Algorithm Based on Aggregated Signature
US11856095B2 (en) Apparatus and methods for validating user data by using cryptography
Singh et al. A Study of Cryptographic Primitives in the context of Blockchain's Data Integrity and Privacy
CN112671540A (en) Contract signing method, system and medium based on block chain and fair exchange
ANUSHA et al. Implementation of SHA Algorithm for Secure Realization of Digital Signature Application

Legal Events

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