KR20200126061A - Node device that enables the deletion of a transaction in a block chain network and operating method thereof - Google Patents

Node device that enables the deletion of a transaction in a block chain network and operating method thereof Download PDF

Info

Publication number
KR20200126061A
KR20200126061A KR1020190049555A KR20190049555A KR20200126061A KR 20200126061 A KR20200126061 A KR 20200126061A KR 1020190049555 A KR1020190049555 A KR 1020190049555A KR 20190049555 A KR20190049555 A KR 20190049555A KR 20200126061 A KR20200126061 A KR 20200126061A
Authority
KR
South Korea
Prior art keywords
transaction
hash value
database server
stored
node device
Prior art date
Application number
KR1020190049555A
Other languages
Korean (ko)
Other versions
KR102228210B1 (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 KR1020190049555A priority Critical patent/KR102228210B1/en
Publication of KR20200126061A publication Critical patent/KR20200126061A/en
Application granted granted Critical
Publication of KR102228210B1 publication Critical patent/KR102228210B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/273Asynchronous replication or reconciliation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • 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/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/3247Cryptographic 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 involving digital signatures
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed are a node device enabling the deletion of a transaction in a blockchain network and an operation method thereof. According to the present invention, in the node device and the operation method thereof, a first transaction including corresponding data is generated when an event to store predetermined data in the blockchain network occurs, the first transaction and a hash value are stored in a database server by transmitting the first transaction and the hash value to the database server after generating a second transaction including the hash value of the first transaction, and the second transaction is configured as a block to be propagated to other node devices through the blockchain network and only the hash value can be stored through the blockchain network,. Accordingly, later, the deletion of the transaction including data stored in the database server can be supported based on the hash value.

Description

블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치 및 그 동작 방법{NODE DEVICE THAT ENABLES THE DELETION OF A TRANSACTION IN A BLOCK CHAIN NETWORK AND OPERATING METHOD THEREOF}Node device that enables deletion of transactions in the blockchain network and its operation method {NODE DEVICE THAT ENABLES THE DELETION OF A TRANSACTION IN A BLOCK CHAIN NETWORK AND OPERATING METHOD THEREOF}

본 발명은 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치 및 그 동작 방법에 대한 것이다.The present invention relates to a node device that enables deletion of a transaction in a blockchain network and a method of operation thereof.

최근, 네트워크 인프라가 갖추어지면서, 개인정보와 같은 중요 데이터의 안전한 보관과 무결성 보장이 중요한 이슈로 등장하고 있다.Recently, as the network infrastructure is equipped, the safe storage and integrity of important data such as personal information are emerging as important issues.

기존의 데이터 보관 방식은 데이터에 대해 소정의 암호화 처리를 수행한 후 암호화된 데이터를 중앙의 서버에 저장하는 방식이 활용되었다. 이러한 방식은 신뢰할 수 있는 기관의 서버를 통해서 데이터를 암호화하여 보관한다는 점에서 데이터의 위조나 변조 가능성을 줄일 수 있는 장점이 있지만, 중앙 서버가 해커에 의해 공격 당하는 경우, 중앙 서버에 보관되어 있는 데이터에 대한 위조 또는 변조가 수행될 수 있고, 중앙 서버에서 공격이 발생하였는지 파악하기 전까지는 데이터가 변형되었는지 확인하지 못하는 문제가 발생할 수 있다.In the conventional data storage method, a method of storing the encrypted data in a central server after performing a predetermined encryption process on the data was used. This method has the advantage of reducing the possibility of forgery or alteration of data in that the data is encrypted and stored through a server of a trusted institution, but if the central server is attacked by a hacker, the data stored in the central server Forgery or alteration of the data may be performed, and there may be a problem in that it is not possible to check whether the data has been altered until the central server determines whether an attack has occurred.

이러한 중앙 집중형 데이터 보관 방식의 문제점을 해소하기 위해, 최근에는 소정의 데이터를 체인화된 블록으로 구성하여 중앙 서버가 아닌 노드 장치들에 분산 저장함으로써, 해당 데이터에 대한 무결성을 보장할 수 있는 블록체인 기술이 널리 활용되고 있다.In order to solve the problem of this centralized data storage method, recently, a block chain that can guarantee the integrity of the data by configuring predetermined data into chained blocks and storing them distributedly in node devices other than the central server. The technology is widely used.

블록체인 기술은 데이터를 중앙 서버가 아닌 다수의 노드 장치들에 분산 보관하기 때문에 특정 노드 장치에서 데이터의 변형이 발생하는 경우, 다른 노드 장치들에 저장되어 있는 데이터를 기초로 데이터의 변형이 발생하였는지 여부를 쉽게 검증할 수 있어서, 데이터의 무결성을 보장하는데 최적화된 기술이다.Blockchain technology distributes data to a number of node devices rather than a central server, so if data transformation occurs in a specific node device, does the data change occur based on data stored in other node devices? It is an optimized technology to guarantee the integrity of data because it can be easily verified.

하지만, 기존의 블록체인 기술은 소정의 데이터가 포함된 트랜잭션을 체인화된 블록으로 구성하여 블록체인 네트워크의 노드 장치들에 분산 저장하기 때문에 이미 저장된 트랜잭션을 삭제하거나 수정하는 것이 매우 어려운 문제가 있었다.However, the existing blockchain technology has a problem that it is very difficult to delete or modify the already stored transaction because the transaction containing predetermined data is configured as a chained block and stored in a distributed storage in the node devices of the blockchain network.

만약, 트랜잭션을 삭제하거나 수정하려고 한다면, 체인으로 연결된 블록체인 데이터 전체를 변경해야 하기 때문에 사실상 이미 저장된 트랜잭션을 삭제하거나 수정하는 것이 불가능하였다.If a transaction was to be deleted or modified, it was virtually impossible to delete or modify the already stored transaction because the entire blockchain data connected by the chain had to be changed.

따라서, 블록체인 네트워크에서 트랜잭션의 삭제를 가능하게 할 수 있는 기술에 대한 연구가 필요하다.Therefore, it is necessary to study a technology that can enable deletion of transactions in a blockchain network.

본 발명에 따른 노드 장치 및 그 동작 방법은 소정의 데이터를 블록체인 네트워크에 저장하라는 이벤트가 발생하는 경우, 해당 데이터가 포함된 제1 트랜잭션을 생성하고, 상기 제1 트랜잭션의 해시 값을 포함하는 제2 트랜잭션을 생성한 후 상기 제1 트랜잭션과 상기 해시 값을 데이터베이스 서버에 전송하여 상기 제1 트랜잭션과 상기 해시 값을 상기 데이터베이스 서버에 저장하고, 상기 제2 트랜잭션을 블록으로 구성해서 블록체인 네트워크를 통해 다른 노드 장치들로 전파하여 해시 값만이 블록체인 네트워크를 통해 저장되도록 함으로써, 추후 상기 해시 값을 기초로 상기 데이터베이스 서버에 저장되어 있는 데이터가 포함된 트랜잭션의 삭제가 가능하도록 지원하고자 한다.The node device and its operation method according to the present invention generate a first transaction including the data when an event to store predetermined data in the blockchain network occurs, and include a hash value of the first transaction. 2 After creating a transaction, the first transaction and the hash value are transmitted to a database server, and the first transaction and the hash value are stored in the database server, and the second transaction is configured as a block, through a blockchain network. By propagating to other node devices and allowing only the hash value to be stored through the blockchain network, it is intended to support deletion of the transaction including the data stored in the database server in the future based on the hash value.

본 발명의 일실시예에 따른 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 하나인 장치로, 상기 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치는 상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성하는 제1 트랜잭션 생성부, 상기 제1 트랜잭션을 기설정된(predetermined) 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성하는 제2 트랜잭션 생성부, 데이터베이스 서버에 접속하여 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 상기 데이터베이스 서버에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송하는 제어 명령 전송부 및 상기 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 블록 배포부를 포함한다.A device that is one of a plurality of node devices constituting a block chain network according to an embodiment of the present invention, and a node device that enables deletion of a transaction in the block chain network stores first data in the block chain network. When a storage event to store occurs, a first transaction generation unit that generates a first transaction including the first data, and applies the first transaction to a predetermined hash function as an input to obtain a first hash value. A second transaction generating unit that generates and generates a second transaction including the first hash value, while accessing a database server and transmitting the first transaction and the first hash value to the database server, to the database server A control command transmission unit for transmitting a control command instructing to store the first transaction and the first hash value in correspondence with each other, and to store the first hash value as indexing information for searching the first transaction, and the A first block containing the second transaction is created based on the block chain data stored in the memory of the node device, the first block is connected to the block chain data in a chain, and the first block is connected to the first block. It includes a block distribution unit that propagates to other node devices other than the node device among the plurality of node devices through the blockchain network.

또한, 본 발명의 일실시예에 따른 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 하나인 장치로, 상기 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법은 상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성하는 단계, 상기 제1 트랜잭션을 기설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성하는 단계, 데이터베이스 서버에 접속하여 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 상기 데이터베이스 서버에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송하는 단계 및 상기 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 단계를 포함한다.In addition, as a device that is one of a plurality of node devices constituting a block chain network according to an embodiment of the present invention, the method of operating a node device that enables deletion of a transaction in the block chain network is the block chain network. When a storage event for storing the first data occurs, generating a first transaction including the first data, applying the first transaction as an input to a preset hash function to generate a first hash value, and , Generating a second transaction including the first hash value, transmitting the first transaction and the first hash value to the database server by accessing a database server, and transmitting the first transaction and the first hash value to the database server. Sending a control command instructing to store the first hash value in correspondence with each other, but to store the first hash value as indexing information for searching the first transaction, and stored in the memory of the node device A first block containing the second transaction is created based on the blockchain data, the first block is connected to the blockchain data in a chain, and the first block is connected to the plurality of nodes through the blockchain network. And propagating to other node devices other than the node device among devices.

본 발명에 따른 노드 장치 및 그 동작 방법은 소정의 데이터를 블록체인 네트워크에 저장하라는 이벤트가 발생하는 경우, 해당 데이터가 포함된 제1 트랜잭션을 생성하고, 상기 제1 트랜잭션의 해시 값을 포함하는 제2 트랜잭션을 생성한 후 상기 제1 트랜잭션과 상기 해시 값을 데이터베이스 서버에 전송하여 상기 제1 트랜잭션과 상기 해시 값을 상기 데이터베이스 서버에 저장하고, 상기 제2 트랜잭션을 블록으로 구성해서 블록체인 네트워크를 통해 다른 노드 장치들로 전파하여 해시 값만이 블록체인 네트워크를 통해 저장되도록 함으로써, 추후 상기 해시 값을 기초로 상기 데이터베이스 서버에 저장되어 있는 데이터가 포함된 트랜잭션의 삭제가 가능하도록 지원할 수 있다.The node device and its operation method according to the present invention generate a first transaction including the data when an event to store predetermined data in the blockchain network occurs, and include a hash value of the first transaction. 2 After creating a transaction, the first transaction and the hash value are transmitted to a database server, and the first transaction and the hash value are stored in the database server, and the second transaction is configured as a block, through a blockchain network. By propagating to other node devices so that only the hash value is stored through the blockchain network, it is possible to support deletion of a transaction including data stored in the database server in the future based on the hash value.

도 1은 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법을 도시한 순서도이다.
1 is a diagram showing the structure of a node device that enables deletion of a transaction in a blockchain network according to an embodiment of the present invention.
2 is a flowchart illustrating a method of operating a node device enabling deletion of a transaction in a blockchain network according to an embodiment of the present invention.

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

본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, 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 component, 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, and an application specific integrated circuit (ASIC) may be implemented with various 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 of the attached block diagram and the steps in the flowchart are computer program instructions that are mounted on a processor or memory of equipment capable of processing data such as a general-purpose computer, a special-purpose computer, a portable notebook computer, and a network computer to perform specified functions It can be interpreted as meaning. Since these computer program instructions can be stored in a memory provided in a computer device or in a memory readable by a computer, the functions described in the blocks in the block diagram or in the steps in the flowchart are produced as a product containing the instruction means to perform this. It could be. In addition, each block or each step may represent a module, segment, or part of code including one or more executable instructions for executing the specified logical function(s). In addition, it should be noted that in some alternative embodiments, functions mentioned in blocks or steps may be executed in a different order. For example, two blocks or steps shown in succession may be performed substantially simultaneously or may be performed in reverse order, and in some cases, some blocks or steps may be omitted.

도 1은 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 구조를 도시한 도면이다.1 is a diagram showing a structure of a node device that enables deletion of a transaction in a blockchain network according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 노드 장치(110)는 제1 트랜잭션 생성부(111), 제2 트랜잭션 생성부(112), 제어 명령 전송부(113) 및 블록 배포부(114)를 포함한다.1, the node device 110 according to the present invention includes a first transaction generating unit 111, a second transaction generating unit 112, a control command transmission unit 113, and a block distribution unit 114 do.

우선, 본 발명에 따른 노드 장치(110)는 블록체인 네트워크를 구성하는 복수의 노드 장치들(110, 101, 102, 103) 중 어느 하나인 장치로, 노드 장치(110)와 노드 장치(110)를 제외한 나머지 노드 장치들(101, 102, 103)은 동일한 구성을 포함하고 있고, 메모리 상에 블록체인 데이터를 저장하고 있다. 또한, 복수의 노드 장치들(110, 101, 102, 103)은 네트워크 기능을 갖는 마이크로 프로세서 기반의 컴퓨팅 장치를 의미한다.First, the node device 110 according to the present invention is any one of a plurality of node devices 110, 101, 102, 103 constituting a blockchain network, and the node device 110 and the node device 110 Except for the node devices 101, 102, and 103, the node devices 101, 102, and 103 have the same configuration and store blockchain data in memory. Also, the plurality of node devices 110, 101, 102, and 103 refer to a microprocessor-based computing device having a network function.

이때, 제1 트랜잭션 생성부(111)는 노드 장치(110)에서 상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성한다.At this time, the first transaction generating unit 111 generates a first transaction including the first data when a storage event for storing the first data in the block chain network occurs in the node device 110.

제2 트랜잭션 생성부(112)는 상기 제1 트랜잭션을 기설정된(predetermined) 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성한다.The second transaction generating unit 112 generates a first hash value by applying the first transaction to a predetermined hash function as an input, and generates a second transaction including the first hash value.

제어 명령 전송부(113)는 데이터베이스 서버(130)에 접속하여 데이터베이스 서버(130)로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 데이터베이스 서버(130)에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송한다.The control command transmission unit 113 connects to the database server 130 and transmits the first transaction and the first hash value to the database server 130, while transmitting the first transaction and the first hash value to the database server 130. One hash value is stored in correspondence with each other, and a control command instructing to store the first hash value as indexing information for searching the first transaction is transmitted.

이때, 본 발명의 일실시예에 따르면, 제어 명령 전송부(113)는 데이터베이스 서버(130)에 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송하기 전에 데이터베이스 서버(130)를 인증하기 위한 구성으로, 인증 정보 저장부(121), 서명 요청부(122), 복원부(123), 확인부(124) 및 이벤트 발생부(125)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the control command transmission unit 113 authenticates the database server 130 before transmitting the first transaction, the first hash value, and the control command to the database server 130. As a configuration for the following, an authentication information storage unit 121, a signature request unit 122, a restoration unit 123, a verification unit 124, and an event generation unit 125 may be included.

인증 정보 저장부(121)에는 데이터베이스 서버(130)의 인증에 사용하기 위한 기설정된 제1 유클리드 거리(Euclidean Distance)에 대한 정보와 데이터베이스 서버(130)에 기 저장되어 있는 개인키에 대응하는 공개키가 저장되어 있다.The authentication information storage unit 121 includes information on a preset first Euclidean distance for use in authentication of the database server 130 and a public key corresponding to a private key previously stored in the database server 130. Has been saved.

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

Figure pat00001
Figure pat00001

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

서명 요청부(122)는 n(n은 2이상의 자연수)차원의 랜덤 벡터를 랜덤하게 생성하고, 데이터베이스 서버(130)로 상기 랜덤 벡터를 전송하면서 상기 랜덤 벡터에 대응하는 n차원의 피드백 벡터에 기초한 전자 서명 값의 전송을 요청한다.The signature request unit 122 randomly generates an n-dimensional random vector (n is a natural number of 2 or more), and transmits the random vector to the database server 130, based on an n-dimensional feedback vector corresponding to the random vector. Request transmission of digital signature value.

예컨대, 서명 요청부(122)는 '(0,0,0,1,0)'이라고 하는 5차원의 랜덤 벡터를 랜덤하게 생성할 수 있고, 데이터베이스 서버(130)로 상기 5차원의 랜덤 벡터를 전송하면서, 상기 5차원의 랜덤 벡터에 대한 5차원의 피드백 벡터에 기초한 전자 서명 값의 전송을 요청할 수 있다.For example, the signature request unit 122 may randomly generate a 5-dimensional random vector called'(0,0,0,1,0)', and the 5-dimensional random vector may be generated by the database server 130. While transmitting, it is possible to request transmission of an electronic signature value based on a 5-dimensional feedback vector for the 5-dimensional random vector.

이때, 본 발명의 일실시예에 따르면, 데이터베이스 서버(130)는 메모리 상에 상기 개인키와 상기 제1 유클리드 거리에 대한 정보를 저장하고 있고, 노드 장치(110)로부터 상기 랜덤 벡터와 상기 전자 서명 값의 전송 요청이 수신되면, 상기 랜덤 벡터와의 유클리드 거리가 데이터베이스 서버(130)의 메모리 상에 저장되어 있는 상기 제1 유클리드 거리로 연산되는 피드백 벡터인 상기 제1 피드백 벡터를 랜덤하게 생성하고, 상기 제1 피드백 벡터를 상기 개인키로 암호화하여 상기 제1 전자 서명 값을 생성한 후 상기 제1 전자 서명 값을 노드 장치(110)로 전송할 수 있다.At this time, according to an embodiment of the present invention, the database server 130 stores information on the private key and the first Euclidean distance in a memory, and the random vector and the electronic signature from the node device 110 When a request for transmission of a value is received, the first feedback vector, which is a feedback vector calculated by the first Euclidean distance stored in the memory of the database server 130, is randomly generated, After generating the first electronic signature value by encrypting the first feedback vector with the private key, the first electronic signature value may be transmitted to the node device 110.

예컨대, 노드 장치(110)로부터 데이터베이스 서버(130)에 '(0,0,0,1,0)'라는 5차원의 랜덤 벡터가 수신되었다고 하고, 데이터베이스 서버(130)의 메모리 상에 저장되어 있는 상기 제1 유클리드 거리가 'D'라고 하는 경우, 데이터베이스 서버(130)는 상기 5차원 랜덤 벡터와의 유클리드 거리가 'D'로 연산되는 5차원의 제1 피드백 벡터를 랜덤하게 생성할 수 있다. 그러고 나서, 데이터베이스 서버(130)는 상기 제1 피드백 벡터를 데이터베이스 서버(130)의 메모리 상에 저장되어 있는 상기 개인키로 암호화하여 상기 제1 전자 서명 값을 생성한 후 상기 제1 전자 서명 값을 노드 장치(110)로 전송할 수 있다.For example, it is assumed that a 5-dimensional random vector called'(0,0,0,1,0)' is received from the node device 110 to the database server 130, and is stored in the memory of the database server 130. If the first Euclidean distance is'D', the database server 130 may randomly generate a 5-dimensional first feedback vector whose Euclidean distance to the 5-dimensional random vector is calculated as'D'. Then, the database server 130 encrypts the first feedback vector with the private key stored in the memory of the database server 130 to generate the first electronic signature value, and then converts the first electronic signature value to a node. It can be transmitted to the device 110.

복원부(123)는 데이터베이스 서버(130)로부터 상기 제1 전자 서명 값이 수신되면, 상기 공개키를 기초로 상기 제1 전자 서명 값을 복호화하여 상기 제1 피드백 벡터를 복원한다.When the first electronic signature value is received from the database server 130, the restoration unit 123 restores the first feedback vector by decoding the first electronic signature value based on the public key.

그리고, 확인부(124)는 상기 랜덤 벡터와 상기 제1 피드백 벡터 간의 유클리드 거리를 연산하고, 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한지 여부를 확인한다.Further, the checker 124 calculates a Euclidean distance between the random vector and the first feedback vector, and checks whether the calculated Euclidean distance is the same as the first Euclidean distance.

이때, 이벤트 발생부(125)는 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한 것으로 확인되면, 데이터베이스 서버(130)에 대한 인증을 완료한 후 데이터베이스 서버(130)로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 것을 지시하는 이벤트를 발생시킨다.At this time, if the calculated Euclidean distance is determined to be the same as the first Euclidean distance, the event generator 125 completes authentication with the database server 130 and then sends the first transaction and the first transaction to the database server 130. An event instructing to transmit the first hash value and the control command is generated.

관련해서, 노드 장치(110)에서 데이터베이스 서버(130)로 5차원의 랜덤 벡터가 전송되었고, 이에 대응해서 데이터베이스 서버(130)로부터 노드 장치(110)로 5차원의 제1 피드백 벡터에 기초한 제1 전자 서명 값이 수신되었다고 하는 경우, 복원부(123)는 인증 정보 저장부(121)에 저장되어 있는 공개키를 기초로 상기 제1 전자 서명 값을 복호화하여 상기 제1 피드백 벡터를 복원할 수 있고, 확인부(124)는 상기 제1 피드백 벡터와 상기 5차원의 랜덤 벡터 간의 유클리드 거리를 연산하고, 상기 연산된 유클리드 거리가 인증 정보 저장부(121)에 저장되어 있는 상기 제1 유클리드 거리와 동일한지 여부를 확인할 수 있다.In relation to this, a 5-dimensional random vector was transmitted from the node device 110 to the database server 130, and in response thereto, a first 5-dimensional feedback vector based on the 5-dimensional first feedback vector from the database server 130 to the node device 110 When it is said that the electronic signature value has been received, the restoration unit 123 may restore the first feedback vector by decrypting the first electronic signature value based on the public key stored in the authentication information storage unit 121 , The verification unit 124 calculates a Euclidean distance between the first feedback vector and the 5-dimensional random vector, and the calculated Euclidean distance is the same as the first Euclidean distance stored in the authentication information storage unit 121. You can check whether or not.

이때, 상기 연산된 유클리드 거리가 인증 정보 저장부(121)에 저장되어 있는 상기 제1 유클리드 거리와 동일한 것으로 확인된 경우, 이벤트 발생부(125)는 데이터베이스 서버(130)가 본 발명에 따른 블록체인 시스템에서 사용되는 데이터베이스 서버가 맞는 것으로 확인하고, 데이터베이스 서버(130)에 대한 인증을 완료한 후 데이터베이스 서버(130)로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 것을 지시하는 이벤트를 발생시킬 수 있다.At this time, when it is confirmed that the calculated Euclidean distance is the same as the first Euclidean distance stored in the authentication information storage unit 121, the event generating unit 125 is the database server 130 in the block chain according to the present invention. Event instructing to transmit the first transaction, the first hash value, and the control command to the database server 130 after confirming that the database server used in the system is correct, and completing authentication for the database server 130 Can occur.

이렇게, 데이터베이스 서버(130)에 대한 인증이 완료되어 상기 이벤트가 발생되면, 제어 명령 전송부(113)는 데이터베이스 서버(130)로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 수 있다.In this way, when authentication for the database server 130 is completed and the event occurs, the control command transmission unit 113 may transmit the first transaction, the first hash value, and the control command to the database server 130. have.

블록 배포부(114)는 노드 장치(110)의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 복수의 노드 장치들(110, 101, 102, 103) 중 노드 장치(110)를 제외한 나머지 노드 장치들(101, 102, 103)로 전파한다.The block distribution unit 114 generates a first block including the second transaction based on the block chain data stored in the memory of the node device 110, and chains the first block to the block chain data. After connecting the first block to the other node devices (101, 102, 103) excluding the node device 110 among a plurality of node devices (110, 101, 102, 103) through the blockchain network do.

이때, 본 발명의 일실시예에 따르면, 나머지 노드 장치들(101, 102, 103)은 상기 블록체인 네트워크를 통해 상기 제1 블록이 수신되면, 나머지 노드 장치들(101, 102, 103) 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 제1 블록을 체인으로 연결하여 저장할 수 있다.At this time, according to an embodiment of the present invention, when the first block is received through the block chain network, the remaining node devices 101, 102, 103 The first block may be linked to the block chain data stored in the memory in a chain and stored.

그리고, 데이터베이스 서버(130)는 상기 노드 장치(110)로부터 상기 제1 트랜잭션, 상기 제1 해시 값 및 상기 제어 명령이 수신되면, 상기 제어 명령에 기초하여 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장할 수 있다.And, when the first transaction, the first hash value, and the control command are received from the node device 110, the database server 130 determines the first transaction and the first hash value based on the control command. They are stored in correspondence with each other, but the first hash value may be stored as indexing information for searching the first transaction.

이러한 방식으로, 노드 장치(110)는 소정의 데이터에 대해서 상기 블록체인 네트워크에 저장하라는 이벤트가 발생하면, 이벤트가 발생할 때마다, 해당 데이터가 포함된 제1 트랜잭션을 생성하고, 상기 제1 트랜잭션의 해시 값을 포함하는 제2 트랜잭션을 생성한 후 상기 제1 트랜잭션과 상기 해시 값을 데이터베이스 서버(130)에 전송하여 상기 제1 트랜잭션과 상기 해시 값이 데이터베이스 서버(130)에 저장되도록 함과 동시에 상기 제2 트랜잭션을 블록으로 구성해서 블록체인 네트워크를 통해 나머지 노드 장치들(101, 102, 103)로 전파함으로써, 상기 해시 값만이 블록체인 네트워크를 통해 보관되도록 처리할 수 있다.In this way, when an event to store predetermined data in the blockchain network occurs, the node device 110 generates a first transaction including the data whenever the event occurs, and the first transaction After creating a second transaction including a hash value, the first transaction and the hash value are transmitted to the database server 130 so that the first transaction and the hash value are stored in the database server 130 and at the same time, the By configuring the second transaction into blocks and propagating them to the rest of the node devices 101, 102, and 103 through the blockchain network, only the hash value can be processed to be stored through the blockchain network.

그리고, 나머지 노드 장치들(101, 102, 103) 역시, 노드 장치(110)와 동일한 방식으로, 데이터를 저장하라는 이벤트가 발생하면, 데이터에 대한 트랜잭션과 해시 값을 데이터베이스 서버(130)에 저장하고, 상기 해시 값에 대한 트랜잭션을 블록체인 네트워크를 통해 분산 저장할 수 있다.And, the rest of the node devices (101, 102, 103) also, in the same manner as the node device 110, when an event to store data occurs, the transaction and hash values for the data are stored in the database server 130 , Transactions for the hash value can be distributed and stored through a blockchain network.

이렇게, 복수의 노드 장치들(110, 101, 102, 103)에 의해 데이터베이스 서버(130)에 트랜잭션과 해시 값이 저장된다고 하였을 때, 데이터베이스 서버(130)에는 하기의 표 1과 같이 데이터가 저장되어 있을 수 있다.In this way, when it is assumed that transactions and hash values are stored in the database server 130 by the plurality of node devices 110, 101, 102, 103, data is stored in the database server 130 as shown in Table 1 below. There may be.

해시 값(트랜잭션의 검색을 위한 인덱싱 정보임)Hash value (this is indexing information for searching transactions) 트랜잭션transaction 해시 값 1Hash value 1 트랜잭션 1Transaction 1 해시 값 2Hash value 2 트랜잭션 2Transaction 2 해시 값 3Hash value 3 트랜잭션 3Transaction 3 ...... ......

이때, 본 발명의 일실시예에 따르면, 노드 장치(110)는 삭제 트랜잭션 생성부(115) 및 삭제 명령 전송부(116)를 더 포함할 수 있다.In this case, according to an embodiment of the present invention, the node device 110 may further include a deletion transaction generation unit 115 and a deletion command transmission unit 116.

삭제 트랜잭션 생성부(115)는 상기 제1 트랜잭션을 삭제하라는 삭제 이벤트가 발생하는 경우, 상기 제1 트랜잭션을 삭제할 것을 지시하는 삭제 정보가 포함된 삭제 트랜잭션과 데이터가 존재하지 않는 더미 트랜잭션을 생성한다.When a deletion event to delete the first transaction occurs, the deletion transaction generation unit 115 generates a deletion transaction including deletion information indicating deletion of the first transaction and a dummy transaction in which no data exists.

여기서, 더미 트랜잭션이란 내용이 존재하지 않는 트랜잭션을 의미하는 것으로, 상기 제1 트랜잭션에는 상기 제1 데이터가 포함되어 있는데 반해, 상기 더미 트랜잭션에는 아무런 데이터가 포함되어 있지 않다. 즉, 상기 더미 트랜잭션은 형태만 존재하는 트랜잭션으로 데이터베이스 서버(130)에 저장되어 있는 상기 제1 트랜잭션을 아무런 데이터가 존재하지 않는 트랜잭션으로 대체함으로써, 상기 제1 트랜잭션을 실질적 삭제하는데 사용하기 위한 트랜잭션을 의미한다.Here, the dummy transaction means a transaction in which content does not exist, and the first transaction contains the first data, whereas the dummy transaction does not contain any data. That is, the dummy transaction is a transaction in which only a form exists, and by replacing the first transaction stored in the database server 130 with a transaction in which no data exists, a transaction used to substantially delete the first transaction is it means.

이때, 블록 배포부(114)는 상기 삭제 트랜잭션이 생성되면, 노드 장치(110)의 메모리 상에 저장되어 있는 상기 블록체인 데이터를 기초로 상기 삭제 트랜잭션이 포함된 제2 블록을 생성하고, 상기 제2 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제2 블록을 상기 블록체인 네트워크를 통해 복수의 노드 장치들(110, 101, 102, 103) 중 노드 장치(110)를 제외한 나머지 노드 장치들(101, 102, 103)로 전파한다.At this time, when the deletion transaction is generated, the block distribution unit 114 generates a second block including the deletion transaction based on the block chain data stored in the memory of the node device 110, and 2 After connecting the block to the blockchain data in a chain, the second block is connected to the other node devices except for the node device 110 among the plurality of node devices 110, 101, 102, 103 through the blockchain network. (101, 102, 103).

그리고, 삭제 명령 전송부(116)는 노드 장치(110)의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 데이터베이스 서버(130)로 상기 제1 해시 값과 상기 더미 트랜잭션을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션을 상기 더미 트랜잭션으로 대체할 것을 지시하는 삭제 명령을 전송한다.In addition, the deletion command transmission unit 116 extracts the first hash value included in the block chain data stored in the memory of the node device 110, and sends the first hash value to the database server 130. While transmitting the dummy transaction, a deletion command instructing to replace the stored first transaction corresponding to the first hash value with the dummy transaction is transmitted.

이때, 데이터베이스 서버(130)는 노드 장치(110)로부터 상기 제1 해시 값, 상기 더미 트랜잭션 및 상기 삭제 명령이 수신되면, 상기 표 1과 같이 데이터베이스 서버(130)에 저장되어 있는 트랜잭션들 중 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션을 아무런 데이터가 존재하지 않는 상기 더미 트랜잭션으로 대체함으로써, 상기 제1 트랜잭션에 대한 삭제를 처리할 수 있다.At this time, when the first hash value, the dummy transaction, and the delete command are received from the node device 110, the database server 130 is configured to select the first among the transactions stored in the database server 130 as shown in Table 1 above. The deletion of the first transaction may be processed by replacing the first transaction stored corresponding to the hash value with the dummy transaction in which no data exists.

결국, 본 발명에 따른 노드 장치(110)는 소정의 데이터를 블록체인 네트워크에 저장하라는 이벤트가 발생하는 경우, 해당 데이터가 포함된 제1 트랜잭션을 생성하고, 상기 제1 트랜잭션의 해시 값을 포함하는 제2 트랜잭션을 생성한 후 상기 제1 트랜잭션과 상기 해시 값을 데이터베이스 서버(130)에 전송하여 상기 제1 트랜잭션과 상기 해시 값을 데이터베이스 서버(130)에 저장하고, 상기 제2 트랜잭션을 블록으로 구성해서 블록체인 네트워크를 통해 나머지 노드 장치들(101, 102, 103)로 전파하여 해시 값만이 블록체인 네트워크를 통해 저장되도록 함으로써, 추후 상기 해시 값을 기초로 데이터베이스 서버(130)에 저장되어 있는 데이터가 포함된 트랜잭션의 삭제가 가능하도록 지원할 수 있다.After all, when an event to store predetermined data in the blockchain network occurs, the node device 110 according to the present invention generates a first transaction including the data, and includes the hash value of the first transaction. After creating a second transaction, the first transaction and the hash value are transmitted to the database server 130 to store the first transaction and the hash value in the database server 130, and the second transaction is configured as a block. Then, it propagates to the rest of the node devices 101, 102, 103 through the blockchain network so that only the hash value is stored through the blockchain network, so that the data stored in the database server 130 is later based on the hash value. Support can be made to enable deletion of included transactions.

본 발명의 일실시예에 따르면, 노드 장치(110)는 트랜잭션 요청부(117), 검증용 해시 값 생성부(118), 해시 값 수신부(119) 및 트랜잭션 검증부(120)를 더 포함할 수 있다.According to an embodiment of the present invention, the node device 110 may further include a transaction requesting unit 117, a hash value generation unit 118 for verification, a hash value receiving unit 119, and a transaction verification unit 120. have.

트랜잭션 요청부(117)는 데이터베이스 서버(130)에 저장된 상기 제1 트랜잭션이 변형되었는지 검증하라는 검증 이벤트가 발생하는 경우, 노드 장치(110)의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 데이터베이스 서버(130)로 상기 제1 해시 값을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션의 전송을 요청한다.When a verification event for verifying whether the first transaction stored in the database server 130 has been modified occurs, the transaction requesting unit 117 includes the block chain data stored in the memory of the node device 110. A first hash value is extracted, and the first hash value is transmitted to the database server 130, while requesting transmission of the first transaction stored in correspondence with the first hash value.

검증용 해시 값 생성부(118)는 데이터베이스 서버(130)로부터 상기 제1 트랜잭션이 수신되면, 상기 수신된 제1 트랜잭션을 상기 기설정된 해시 함수에 입력으로 인가하여 검증용 해시 값을 생성한다.When the first transaction is received from the database server 130, the verification hash value generation unit 118 applies the received first transaction as an input to the preset hash function to generate a verification hash value.

해시 값 수신부(119)는 나머지 노드 장치들(101, 102, 103) 중 기설정된 개수의 제1 노드 장치들을 랜덤하게 선택한 후 상기 제1 노드 장치들로부터 상기 블록체인 데이터에 포함되어 있는 상기 제1 해시 값을 수신한다.The hash value receiving unit 119 randomly selects a preset number of first node devices among the remaining node devices 101, 102, and 103, and then selects the first node devices included in the block chain data from the first node devices. Receive a hash value.

트랜잭션 검증부(120)는 상기 제1 노드 장치들로부터 수신된 상기 제1 해시 값과 상기 검증용 해시 값을 비교하여 상기 제1 노드 장치들 중 기설정된 임계 개수 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한 것으로 확인되면, 데이터베이스 서버(130)에 저장된 상기 제1 트랜잭션이 변형되지 않은 것으로 검증한다.The transaction verification unit 120 compares the first hash value received from the first node devices with the verification hash value, and compares the first hash value received from the first node devices to the first node device received from node devices having a predetermined threshold number or more. If it is confirmed that the 1 hash value is the same as the hash value for verification, it is verified that the first transaction stored in the database server 130 is not modified.

예컨대, 제1 노드 장치들의 개수가 10개이고, 상기 임계 개수가 7개라고 하는 경우, 트랜잭션 검증부(120)는 10개의 제1 노드 장치들로부터 상기 제1 해시 값이 수신되면, 10개의 제1 노드 장치들 중 7개 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한지 여부를 확인할 수 있다.For example, if the number of first node devices is 10 and the threshold number is 7, the transaction verification unit 120 receives the first hash value from 10 first node devices, 10 first node devices. It is possible to check whether the first hash value received from at least 7 node devices among the node devices is the same as the hash value for verification.

만약, 7개 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한 것으로 확인되면, 트랜잭션 검증부(120)는 데이터베이스 서버(130)에 저장된 상기 제1 트랜잭션이 변형되지 않은 것으로 검증할 수 있다.If it is confirmed that the first hash value received from 7 or more node devices is the same as the hash value for verification, the transaction verification unit 120 determines that the first transaction stored in the database server 130 is not modified. Can be verified.

도 2는 본 발명의 일실시예에 따른 블록체인 네트워크를 구성하는 복수의 노드 장치들 중 하나인 장치로, 상기 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법을 도시한 순서도이다.FIG. 2 is a flow chart illustrating a method of operating a node device that enables deletion of a transaction in the block chain network, as one of a plurality of node devices constituting a block chain network according to an embodiment of the present invention. to be.

단계(S210)에서는 상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성한다.In step S210, when a storage event for storing the first data in the blockchain network occurs, a first transaction including the first data is generated.

단계(S220)에서는 상기 제1 트랜잭션을 기설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성한다.In step S220, a first hash value is generated by applying the first transaction as an input to a preset hash function, and a second transaction including the first hash value is generated.

단계(S230)에서는 데이터베이스 서버에 접속하여 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 상기 데이터베이스 서버에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송한다.In step S230, while connecting to a database server and transmitting the first transaction and the first hash value to the database server, the first transaction and the first hash value are stored in correspondence with each other to the database server, A control command instructing to store the first hash value as indexing information for searching the first transaction is transmitted.

단계(S240)에서는 상기 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파한다.In step S240, a first block including the second transaction is generated based on the block chain data stored in the memory of the node device, and the first block is connected to the block chain data in a chain. The first block is propagated to other node devices other than the node device among the plurality of node devices through the blockchain network.

이때, 본 발명의 일실시예에 따르면, 상기 나머지 노드 장치들은 상기 제1 블록이 수신되면, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 제1 블록을 체인으로 연결하여 저장할 수 있다.At this time, according to an embodiment of the present invention, when the first block is received, the remaining node devices connect the first block to the block chain data stored in each memory of the remaining node devices in a chain. You can save it.

그리고, 상기 데이터베이스 서버는 상기 제1 트랜잭션, 상기 제1 해시 값 및 상기 제어 명령이 수신되면, 상기 제어 명령에 기초하여 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장할 수 있다.And, when the first transaction, the first hash value, and the control command are received, the database server stores the first transaction and the first hash value in correspondence with each other based on the control command, and the first The hash value may be stored as indexing information for searching the first transaction.

또한, 본 발명의 일실시예에 따르면, 상기 노드 장치의 동작 방법은 상기 제1 트랜잭션을 삭제하라는 삭제 이벤트가 발생하는 경우, 상기 제1 트랜잭션을 삭제할 것을 지시하는 삭제 정보가 포함된 삭제 트랜잭션과 데이터가 존재하지 않는 더미 트랜잭션을 생성하는 단계, 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터를 기초로 상기 삭제 트랜잭션이 포함된 제2 블록을 생성하고, 상기 제2 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제2 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 단계 및 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값과 상기 더미 트랜잭션을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션을 상기 더미 트랜잭션으로 대체할 것을 지시하는 삭제 명령을 전송하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, the method of operating the node device includes a deletion transaction and data including deletion information indicating deletion of the first transaction when a deletion event to delete the first transaction occurs. Generating a dummy transaction in which no is present, generating a second block including the deletion transaction based on the block chain data stored in the memory of the node device, and replacing the second block with the block chain data After connecting the second block in a chain, propagating the second block to other node devices other than the node device among the plurality of node devices through the blockchain network, and the block stored in the memory of the node device Extracting the first hash value included in the chain data, transmitting the first hash value and the dummy transaction to the database server, the first transaction stored in correspondence with the first hash value is the dummy transaction It may further include the step of transmitting a delete command instructing to replace with.

또한, 본 발명의 일실시예에 따르면, 상기 노드 장치의 동작 방법은 상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되었는지 검증하라는 검증 이벤트가 발생하는 경우, 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션의 전송을 요청하는 단계, 상기 데이터베이스 서버로부터 상기 제1 트랜잭션이 수신되면, 상기 수신된 제1 트랜잭션을 상기 기설정된 해시 함수에 입력으로 인가하여 검증용 해시 값을 생성하는 단계, 상기 나머지 노드 장치들 중 기설정된 개수의 제1 노드 장치들을 랜덤하게 선택한 후 상기 제1 노드 장치들로부터 상기 블록체인 데이터에 포함되어 있는 상기 제1 해시 값을 수신하는 단계 및 상기 제1 노드 장치들로부터 수신된 상기 제1 해시 값과 상기 검증용 해시 값을 비교하여 상기 제1 노드 장치들 중 기설정된 임계 개수 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한 것으로 확인되면, 상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되지 않은 것으로 검증하는 단계를 더 포함할 수 있다.In addition, according to an embodiment of the present invention, when a verification event to verify whether the first transaction stored in the database server has been modified occurs, the method of operating the node device Extracting the first hash value included in the blockchain data, and transmitting the first hash value to the database server, requesting transmission of the first transaction stored in correspondence with the first hash value, When the first transaction is received from the database server, generating a hash value for verification by applying the received first transaction as an input to the preset hash function, the first of the preset number of the remaining node devices After randomly selecting node devices, receiving the first hash value included in the blockchain data from the first node devices, and the first hash value received from the first node devices and the verification When it is confirmed that the first hash value received from node devices having a predetermined threshold number or more among the first node devices by comparing the hash value is the same as the hash value for verification, the first transaction stored in the database server is It may further include verifying that it has not been modified.

또한, 본 발명의 일실시예에 따르면, 단계(S230)에서는 상기 데이터베이스 서버의 인증에 사용하기 위한 기설정된 제1 유클리드 거리에 대한 정보와 상기 데이터베이스 서버에 기 저장되어 있는 개인키에 대응하는 공개키가 저장되어 있는 인증 정보 저장부를 유지하는 단계, n(n은 2이상의 자연수)차원의 랜덤 벡터를 랜덤하게 생성하고, 상기 데이터베이스 서버로 상기 랜덤 벡터를 전송하면서 상기 랜덤 벡터에 대응하는 n차원의 피드백 벡터에 기초한 전자 서명 값의 전송을 요청하는 단계, 상기 데이터베이스 서버로부터 제1 전자 서명 값(상기 제1 전자 서명 값은 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버에 기 저장되어 있는 상기 제1 유클리드 거리로 연산되도록 생성된 제1 피드백 벡터를 상기 데이터베이스 서버에 기 저장되어 있는 상기 개인키로 암호화한 값임)이 수신되면, 상기 공개키를 기초로 상기 제1 전자 서명 값을 복호화하여 상기 제1 피드백 벡터를 복원하는 단계, 상기 랜덤 벡터와 상기 제1 피드백 벡터 간의 유클리드 거리를 연산하고, 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한지 여부를 확인하는 단계 및 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한 것으로 확인되면, 상기 데이터베이스 서버에 대한 인증을 완료한 후 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 것을 지시하는 이벤트를 발생시키는 단계를 포함할 수 있다.In addition, according to an embodiment of the present invention, in step S230, information on a preset first Euclidean distance to be used for authentication of the database server and a public key corresponding to a private key previously stored in the database server Maintaining an authentication information storage unit in which is stored, n (n is a natural number of 2 or more) dimensions randomly generated, and n-dimensional feedback corresponding to the random vector while transmitting the random vector to the database server Requesting transmission of an electronic signature value based on a vector, a first electronic signature value from the database server (the first electronic signature value is the first Euclidean whose Euclidean distance from the random vector is previously stored in the database server) When a first feedback vector generated to be calculated as a distance is encrypted with the private key previously stored in the database server), the first feedback vector is decrypted based on the public key and the first electronic signature value is Restoring, calculating a Euclidean distance between the random vector and the first feedback vector, checking whether the calculated Euclidean distance is the same as the first Euclidean distance, and the calculated Euclidean distance being the first If it is confirmed that the distance is the same as the Euclidean distance, generating an event instructing to transmit the first transaction, the first hash value, and the control command to the database server after completing authentication for the database server. have.

이때, 본 발명의 일실시예에 따르면, 상기 데이터베이스 서버는 메모리 상에 상기 개인키와 상기 제1 유클리드 거리에 대한 정보를 저장하고 있고, 상기 노드 장치로부터 상기 랜덤 벡터와 상기 전자 서명 값의 전송 요청이 수신되면, 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버의 메모리 상에 저장되어 있는 상기 제1 유클리드 거리로 연산되는 피드백 벡터인 상기 제1 피드백 벡터를 랜덤하게 생성하고, 상기 제1 피드백 벡터를 상기 개인키로 암호화하여 상기 제1 전자 서명 값을 생성한 후 상기 제1 전자 서명 값을 상기 노드 장치로 전송할 수 있다.In this case, according to an embodiment of the present invention, the database server stores information on the private key and the first Euclidean distance in a memory, and requests transmission of the random vector and the electronic signature value from the node device. When received, the first feedback vector, which is a feedback vector whose Euclidean distance to the random vector is calculated by the first Euclidean distance stored in the memory of the database server, is randomly generated, and the first feedback vector is generated. After generating the first electronic signature value by encrypting with the private key, the first electronic signature value may be transmitted to the node device.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법은 도 1을 이용하여 설명한 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.In the above, a method of operating a node device enabling deletion of a transaction in a blockchain network according to an embodiment of the present invention has been described with reference to FIG. 2. Here, the method of operating a node device that enables deletion of a transaction in a blockchain network according to an embodiment of the present invention is a node device 110 that enables deletion of a transaction in the blockchain network described with reference to FIG. 1. ) May correspond to the configuration of the operation, a more detailed description thereof will be omitted.

본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.A method of operating a node device that enables deletion of transactions in a blockchain network according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium for execution through a combination with a computer.

또한, 본 발명의 일실시예에 따른 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. In addition, a method of operating a node device that enables deletion of a transaction in a blockchain network according to an embodiment of the present invention is implemented in the form of program commands that can be executed through various computer means and recorded in a computer-readable medium. I can. The computer-readable medium may include program instructions, data files, data structures, and the like 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 usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of the program instructions include not only machine language codes such as those produced 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, in the present invention, specific matters such as specific components, etc., and limited embodiments and drawings have been described, but this is provided only to help a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , If a person of ordinary skill in the field to which the present invention belongs, various modifications and variations are possible from these descriptions.

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

110: 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치
111: 제1 트랜잭션 생성부 112: 제2 트랜잭션 생성부
113: 제어 명령 전송부 114: 블록 배포부
115: 삭제 트랜잭션 생성부 116: 삭제 명령 전송부
117: 트랜잭션 요청부 118: 검증용 해시 값 생성부
119: 해시 값 수신부 120: 트랜잭션 검증부
121: 인증 정보 저장부 122: 서명 요청부
123: 복원부 124: 확인부
125: 이벤트 발생부
101, 102, 103: 나머지 노드 장치들
130: 데이터베이스 서버
110: Node device that enables deletion of transactions in the blockchain network
111: first transaction generation unit 112: second transaction generation unit
113: control command transmission unit 114: block distribution unit
115: deletion transaction generation unit 116: deletion command transmission unit
117: transaction request unit 118: hash value generation unit for verification
119: hash value receiving unit 120: transaction verification unit
121: authentication information storage unit 122: signature request unit
123: restoration unit 124: confirmation unit
125: event generator
101, 102, 103: remaining node devices
130: database server

Claims (14)

블록체인 네트워크를 구성하는 복수의 노드 장치들 중 하나인 장치로, 상기 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치에 있어서,
상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성하는 제1 트랜잭션 생성부;
상기 제1 트랜잭션을 기설정된(predetermined) 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성하는 제2 트랜잭션 생성부;
데이터베이스 서버에 접속하여 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 상기 데이터베이스 서버에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송하는 제어 명령 전송부; 및
상기 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 블록 배포부
를 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
A device that is one of a plurality of node devices constituting a blockchain network, wherein the node device enables deletion of a transaction in the blockchain network,
A first transaction generating unit generating a first transaction including the first data when a storage event for storing first data in the blockchain network occurs;
A second transaction generator configured to generate a first hash value by applying the first transaction as an input to a predetermined hash function, and to generate a second transaction including the first hash value;
While connecting to a database server and transmitting the first transaction and the first hash value to the database server, the first transaction and the first hash value are stored in correspondence with each other for the database server, and the first hash value A control command transmission unit for transmitting a control command instructing to store the first transaction as indexing information for searching the first transaction; And
A first block containing the second transaction is generated based on the block chain data stored in the memory of the node device, and the first block is connected to the block chain data in a chain. A block distribution unit that propagates to other node devices other than the node device among the plurality of node devices through the block chain network
Node device that enables deletion of transactions in a blockchain network comprising a.
제1항에 있어서,
상기 나머지 노드 장치들은
상기 제1 블록이 수신되면, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 제1 블록을 체인으로 연결하여 저장하고,
상기 데이터베이스 서버는
상기 제1 트랜잭션, 상기 제1 해시 값 및 상기 제어 명령이 수신되면, 상기 제어 명령에 기초하여 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
The method of claim 1,
The remaining node devices
When the first block is received, the first block is chained and stored in the block chain data stored in the memory of each of the remaining node devices,
The database server is
When the first transaction, the first hash value, and the control command are received, the first transaction and the first hash value are stored in correspondence with each other based on the control command, and the first hash value is stored in the first A node device that enables deletion of transactions in a blockchain network that stores as indexing information for transaction search.
제1항에 있어서,
상기 노드 장치는
상기 제1 트랜잭션을 삭제하라는 삭제 이벤트가 발생하는 경우, 상기 제1 트랜잭션을 삭제할 것을 지시하는 삭제 정보가 포함된 삭제 트랜잭션과 데이터가 존재하지 않는 더미 트랜잭션을 생성하는 삭제 트랜잭션 생성부; 및
상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값과 상기 더미 트랜잭션을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션을 상기 더미 트랜잭션으로 대체할 것을 지시하는 삭제 명령을 전송하는 삭제 명령 전송부
를 더 포함하고,
상기 블록 배포부는
상기 삭제 트랜잭션이 생성되면, 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터를 기초로 상기 삭제 트랜잭션이 포함된 제2 블록을 생성하고, 상기 제2 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제2 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
The method of claim 1,
The node device
A deletion transaction generation unit for generating a deletion transaction including deletion information indicating deletion of the first transaction and a dummy transaction in which no data exists when a deletion event for deleting the first transaction occurs; And
Extracting the first hash value included in the block chain data stored in the memory of the node device, and transmitting the first hash value and the dummy transaction to the database server, corresponding to the first hash value A delete command transmission unit that transmits a delete command instructing to replace the stored first transaction with the dummy transaction
Including more,
The block distribution unit
When the deletion transaction is generated, a second block containing the deletion transaction is created based on the block chain data stored in the memory of the node device, and the second block is connected to the block chain data in a chain. A node device enabling deletion of a transaction in a blockchain network, which then propagates the second block to other node devices other than the node device among the plurality of node devices through the block chain network.
제1항에 있어서,
상기 노드 장치는
상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되었는지 검증하라는 검증 이벤트가 발생하는 경우, 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션의 전송을 요청하는 트랜잭션 요청부;
상기 데이터베이스 서버로부터 상기 제1 트랜잭션이 수신되면, 상기 수신된 제1 트랜잭션을 상기 기설정된 해시 함수에 입력으로 인가하여 검증용 해시 값을 생성하는 검증용 해시 값 생성부;
상기 나머지 노드 장치들 중 기설정된 개수의 제1 노드 장치들을 랜덤하게 선택한 후 상기 제1 노드 장치들로부터 상기 블록체인 데이터에 포함되어 있는 상기 제1 해시 값을 수신하는 해시 값 수신부; 및
상기 제1 노드 장치들로부터 수신된 상기 제1 해시 값과 상기 검증용 해시 값을 비교하여 상기 제1 노드 장치들 중 기설정된 임계 개수 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한 것으로 확인되면, 상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되지 않은 것으로 검증하는 트랜잭션 검증부
를 더 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
The method of claim 1,
The node device
When a verification event to verify whether the first transaction stored in the database server has been modified occurs, extracting the first hash value included in the blockchain data stored in the memory of the node device, and the database server A transaction requesting unit that transmits the first hash value to the device and requests transmission of the first transaction stored in correspondence with the first hash value;
A verification hash value generator configured to generate a verification hash value by applying the received first transaction as an input to the preset hash function when the first transaction is received from the database server;
A hash value receiver configured to randomly select a predetermined number of first node devices from among the remaining node devices, and then receive the first hash value included in the block chain data from the first node devices; And
By comparing the first hash value received from the first node devices and the hash value for verification, the first hash value received from node devices having a predetermined threshold number or more among the first node devices is used for verification. A transaction verification unit that verifies that the first transaction stored in the database server is not modified when it is confirmed that it is the same as the hash value
Node device that enables deletion of transactions in the blockchain network further comprising.
제1항에 있어서,
상기 제어 명령 전송부는
상기 데이터베이스 서버의 인증에 사용하기 위한 기설정된 제1 유클리드 거리(Euclidean Distance)에 대한 정보와 상기 데이터베이스 서버에 기 저장되어 있는 개인키에 대응하는 공개키가 저장되어 있는 인증 정보 저장부;
n(n은 2이상의 자연수)차원의 랜덤 벡터를 랜덤하게 생성하고, 상기 데이터베이스 서버로 상기 랜덤 벡터를 전송하면서 상기 랜덤 벡터에 대응하는 n차원의 피드백 벡터에 기초한 전자 서명 값의 전송을 요청하는 서명 요청부;
상기 데이터베이스 서버로부터 제1 전자 서명 값 - 상기 제1 전자 서명 값은 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버에 기 저장되어 있는 상기 제1 유클리드 거리로 연산되도록 생성된 제1 피드백 벡터를 상기 데이터베이스 서버에 기 저장되어 있는 상기 개인키로 암호화한 값임 - 이 수신되면, 상기 공개키를 기초로 상기 제1 전자 서명 값을 복호화하여 상기 제1 피드백 벡터를 복원하는 복원부;
상기 랜덤 벡터와 상기 제1 피드백 벡터 간의 유클리드 거리를 연산하고, 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한지 여부를 확인하는 확인부; 및
상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한 것으로 확인되면, 상기 데이터베이스 서버에 대한 인증을 완료한 후 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 것을 지시하는 이벤트를 발생시키는 이벤트 발생부
를 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
The method of claim 1,
The control command transmission unit
An authentication information storage unit in which information on a predetermined first Euclidean distance for use in authentication of the database server and a public key corresponding to a private key previously stored in the database server are stored;
A signature requesting transmission of an electronic signature value based on an n-dimensional feedback vector corresponding to the random vector while randomly generating a random vector of n (n is a natural number of 2 or more) dimensions and transmitting the random vector to the database server Request part;
A first electronic signature value from the database server-The first electronic signature value is a first feedback vector generated so that the Euclidean distance from the random vector is calculated as the first Euclidean distance previously stored in the database server. A restoration unit for restoring the first feedback vector by decrypting the first digital signature value based on the public key when the value is encrypted with the private key stored in the server;
A check unit that calculates a Euclidean distance between the random vector and the first feedback vector and checks whether the calculated Euclidean distance is the same as the first Euclidean distance; And
When it is confirmed that the calculated Euclidean distance is the same as the first Euclidean distance, instructing to transmit the first transaction, the first hash value, and the control command to the database server after completing authentication for the database server Event generator that generates an event
Node device that enables deletion of transactions in a blockchain network comprising a.
제5항에 있어서,
상기 데이터베이스 서버는
메모리 상에 상기 개인키와 상기 제1 유클리드 거리에 대한 정보를 저장하고 있고, 상기 노드 장치로부터 상기 랜덤 벡터와 상기 전자 서명 값의 전송 요청이 수신되면, 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버의 메모리 상에 저장되어 있는 상기 제1 유클리드 거리로 연산되는 피드백 벡터인 상기 제1 피드백 벡터를 랜덤하게 생성하고, 상기 제1 피드백 벡터를 상기 개인키로 암호화하여 상기 제1 전자 서명 값을 생성한 후 상기 제1 전자 서명 값을 상기 노드 장치로 전송하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치.
The method of claim 5,
The database server is
Information on the private key and the first Euclidean distance is stored in a memory, and when a request to transmit the random vector and the electronic signature value is received from the node device, the Euclidean distance to the random vector is determined by the database server After generating the first electronic signature value by randomly generating the first feedback vector, which is a feedback vector calculated by the first Euclidean distance stored in the memory of, and encrypting the first feedback vector with the private key A node device that enables deletion of a transaction in a blockchain network that transmits the first electronic signature value to the node device.
블록체인 네트워크를 구성하는 복수의 노드 장치들 중 하나인 장치로, 상기 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법에 있어서,
상기 블록체인 네트워크에 제1 데이터를 저장하라는 저장 이벤트가 발생하는 경우, 상기 제1 데이터가 포함된 제1 트랜잭션을 생성하는 단계;
상기 제1 트랜잭션을 기설정된(predetermined) 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 해시 값이 포함된 제2 트랜잭션을 생성하는 단계;
데이터베이스 서버에 접속하여 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값을 전송하면서, 상기 데이터베이스 서버에 대해 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하도록 지시하는 제어 명령을 전송하는 단계; 및
상기 노드 장치의 메모리 상에 저장되어 있는 블록체인 데이터를 기초로 상기 제2 트랜잭션이 포함된 제1 블록을 생성하고, 상기 제1 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제1 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 단계
를 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
In the method of operating a node device that is one of a plurality of node devices constituting a block chain network, the node device enabling deletion of a transaction in the block chain network,
Generating a first transaction including the first data when a storage event for storing first data in the blockchain network occurs;
Generating a first hash value by applying the first transaction to a predetermined hash function as an input, and generating a second transaction including the first hash value;
While connecting to a database server and transmitting the first transaction and the first hash value to the database server, the first transaction and the first hash value are stored in correspondence with each other for the database server, and the first hash value Transmitting a control command instructing to store the data as indexing information for searching the first transaction; And
A first block containing the second transaction is generated based on the block chain data stored in the memory of the node device, and the first block is connected to the block chain data in a chain. Propagating to other node devices other than the node device among the plurality of node devices through the blockchain network
A method of operating a node device that enables deletion of transactions in a blockchain network comprising a.
제7항에 있어서,
상기 나머지 노드 장치들은
상기 제1 블록이 수신되면, 상기 나머지 노드 장치들 각각의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 상기 제1 블록을 체인으로 연결하여 저장하고,
상기 데이터베이스 서버는
상기 제1 트랜잭션, 상기 제1 해시 값 및 상기 제어 명령이 수신되면, 상기 제어 명령에 기초하여 상기 제1 트랜잭션과 상기 제1 해시 값을 서로 대응시켜 저장하되, 상기 제1 해시 값을 상기 제1 트랜잭션의 검색을 위한 인덱싱 정보로 저장하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
The method of claim 7,
The remaining node devices
When the first block is received, the first block is chained and stored in the block chain data stored in the memory of each of the remaining node devices,
The database server is
When the first transaction, the first hash value, and the control command are received, the first transaction and the first hash value are stored in correspondence with each other based on the control command, and the first hash value is stored in the first A method of operation of a node device that enables deletion of transactions in a blockchain network that is stored as indexing information for transaction search.
제7항에 있어서,
상기 노드 장치의 동작 방법은
상기 제1 트랜잭션을 삭제하라는 삭제 이벤트가 발생하는 경우, 상기 제1 트랜잭션을 삭제할 것을 지시하는 삭제 정보가 포함된 삭제 트랜잭션과 데이터가 존재하지 않는 더미 트랜잭션을 생성하는 단계;
상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터를 기초로 상기 삭제 트랜잭션이 포함된 제2 블록을 생성하고, 상기 제2 블록을 상기 블록체인 데이터에 체인으로 연결한 후 상기 제2 블록을 상기 블록체인 네트워크를 통해 상기 복수의 노드 장치들 중 상기 노드 장치를 제외한 나머지 노드 장치들로 전파하는 단계; 및
상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값과 상기 더미 트랜잭션을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션을 상기 더미 트랜잭션으로 대체할 것을 지시하는 삭제 명령을 전송하는 단계
를 더 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
The method of claim 7,
The method of operating the node device
Generating a deletion transaction including deletion information indicating deletion of the first transaction and a dummy transaction in which no data exists when a deletion event for deleting the first transaction occurs;
A second block including the deletion transaction is generated based on the block chain data stored in the memory of the node device, and the second block is connected to the block chain data by a chain. Propagating to other node devices other than the node device among the plurality of node devices through the blockchain network; And
Extracting the first hash value included in the block chain data stored in the memory of the node device, and transmitting the first hash value and the dummy transaction to the database server, corresponding to the first hash value Transmitting a delete command instructing to replace the stored first transaction with the dummy transaction
A method of operating a node device that enables deletion of a transaction in a blockchain network further comprising a.
제7항에 있어서,
상기 노드 장치의 동작 방법은
상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되었는지 검증하라는 검증 이벤트가 발생하는 경우, 상기 노드 장치의 메모리 상에 저장되어 있는 상기 블록체인 데이터에 포함된 상기 제1 해시 값을 추출하고, 상기 데이터베이스 서버로 상기 제1 해시 값을 전송하면서, 상기 제1 해시 값에 대응되어 저장되어 있는 상기 제1 트랜잭션의 전송을 요청하는 단계;
상기 데이터베이스 서버로부터 상기 제1 트랜잭션이 수신되면, 상기 수신된 제1 트랜잭션을 상기 기설정된 해시 함수에 입력으로 인가하여 검증용 해시 값을 생성하는 단계;
상기 나머지 노드 장치들 중 기설정된 개수의 제1 노드 장치들을 랜덤하게 선택한 후 상기 제1 노드 장치들로부터 상기 블록체인 데이터에 포함되어 있는 상기 제1 해시 값을 수신하는 단계; 및
상기 제1 노드 장치들로부터 수신된 상기 제1 해시 값과 상기 검증용 해시 값을 비교하여 상기 제1 노드 장치들 중 기설정된 임계 개수 이상의 노드 장치들에서 수신된 상기 제1 해시 값이 상기 검증용 해시 값과 동일한 것으로 확인되면, 상기 데이터베이스 서버에 저장된 상기 제1 트랜잭션이 변형되지 않은 것으로 검증하는 단계
를 더 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
The method of claim 7,
The method of operating the node device
When a verification event to verify whether the first transaction stored in the database server has been modified occurs, extracting the first hash value included in the blockchain data stored in the memory of the node device, and the database server Requesting transmission of the first transaction stored in correspondence with the first hash value while transmitting the first hash value to the terminal;
When the first transaction is received from the database server, applying the received first transaction as an input to the preset hash function to generate a hash value for verification;
Randomly selecting a predetermined number of first node devices from among the remaining node devices, and receiving the first hash value included in the block chain data from the first node devices; And
By comparing the first hash value received from the first node devices and the hash value for verification, the first hash value received from node devices having a predetermined threshold number or more among the first node devices is used for verification. If it is confirmed that the hash value is the same, verifying that the first transaction stored in the database server is not modified
A method of operating a node device that enables deletion of a transaction in a blockchain network further comprising a.
제7항에 있어서,
상기 제어 명령을 전송하는 단계는
상기 데이터베이스 서버의 인증에 사용하기 위한 기설정된 제1 유클리드 거리(Euclidean Distance)에 대한 정보와 상기 데이터베이스 서버에 기 저장되어 있는 개인키에 대응하는 공개키가 저장되어 있는 인증 정보 저장부를 유지하는 단계;
n(n은 2이상의 자연수)차원의 랜덤 벡터를 랜덤하게 생성하고, 상기 데이터베이스 서버로 상기 랜덤 벡터를 전송하면서 상기 랜덤 벡터에 대응하는 n차원의 피드백 벡터에 기초한 전자 서명 값의 전송을 요청하는 단계;
상기 데이터베이스 서버로부터 제1 전자 서명 값 - 상기 제1 전자 서명 값은 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버에 기 저장되어 있는 상기 제1 유클리드 거리로 연산되도록 생성된 제1 피드백 벡터를 상기 데이터베이스 서버에 기 저장되어 있는 상기 개인키로 암호화한 값임 - 이 수신되면, 상기 공개키를 기초로 상기 제1 전자 서명 값을 복호화하여 상기 제1 피드백 벡터를 복원하는 단계;
상기 랜덤 벡터와 상기 제1 피드백 벡터 간의 유클리드 거리를 연산하고, 상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한지 여부를 확인하는 단계; 및
상기 연산된 유클리드 거리가 상기 제1 유클리드 거리와 동일한 것으로 확인되면, 상기 데이터베이스 서버에 대한 인증을 완료한 후 상기 데이터베이스 서버로 상기 제1 트랜잭션과 상기 제1 해시 값 및 상기 제어 명령을 전송할 것을 지시하는 이벤트를 발생시키는 단계
를 포함하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
The method of claim 7,
Transmitting the control command
Maintaining an authentication information storage unit in which information on a predetermined first Euclidean distance for use in authentication of the database server and a public key corresponding to a private key previously stored in the database server are stored;
randomly generating a random vector of n (n is a natural number of 2 or more) dimensions, and requesting transmission of an electronic signature value based on an n-dimensional feedback vector corresponding to the random vector while transmitting the random vector to the database server ;
A first electronic signature value from the database server-The first electronic signature value is a first feedback vector generated so that the Euclidean distance from the random vector is calculated as the first Euclidean distance previously stored in the database server. If the value is encrypted with the private key stored in the server, decrypting the first electronic signature value based on the public key to restore the first feedback vector;
Calculating a Euclidean distance between the random vector and the first feedback vector, and checking whether the calculated Euclidean distance is equal to the first Euclidean distance; And
When it is confirmed that the calculated Euclidean distance is the same as the first Euclidean distance, instructing to transmit the first transaction, the first hash value, and the control command to the database server after completing authentication for the database server Steps to raise the event
A method of operating a node device that enables deletion of transactions in a blockchain network comprising a.
제11항에 있어서,
상기 데이터베이스 서버는
메모리 상에 상기 개인키와 상기 제1 유클리드 거리에 대한 정보를 저장하고 있고, 상기 노드 장치로부터 상기 랜덤 벡터와 상기 전자 서명 값의 전송 요청이 수신되면, 상기 랜덤 벡터와의 유클리드 거리가 상기 데이터베이스 서버의 메모리 상에 저장되어 있는 상기 제1 유클리드 거리로 연산되는 피드백 벡터인 상기 제1 피드백 벡터를 랜덤하게 생성하고, 상기 제1 피드백 벡터를 상기 개인키로 암호화하여 상기 제1 전자 서명 값을 생성한 후 상기 제1 전자 서명 값을 상기 노드 장치로 전송하는 블록체인 네트워크에서의 트랜잭션의 삭제를 가능하게 하는 노드 장치의 동작 방법.
The method of claim 11,
The database server is
Information on the private key and the first Euclidean distance is stored in a memory, and when a request to transmit the random vector and the electronic signature value is received from the node device, the Euclidean distance to the random vector is determined by the database server After generating the first electronic signature value by randomly generating the first feedback vector, which is a feedback vector calculated by the first Euclidean distance stored in the memory of, and encrypting the first feedback vector with the private key A method of operating a node device that enables deletion of a transaction in a blockchain network that transmits the first electronic signature value to the node device.
제7항 내지 제12항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium having a computer program recorded thereon for executing the method of any one of claims 7 to 12 through combination with a computer. 제7항 내지 제12항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of claims 7 to 12 through combination with a computer.
KR1020190049555A 2019-04-29 2019-04-29 Node device that enables the deletion of a transaction in a block chain network and operating method thereof KR102228210B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190049555A KR102228210B1 (en) 2019-04-29 2019-04-29 Node device that enables the deletion of a transaction in a block chain network and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190049555A KR102228210B1 (en) 2019-04-29 2019-04-29 Node device that enables the deletion of a transaction in a block chain network and operating method thereof

Publications (2)

Publication Number Publication Date
KR20200126061A true KR20200126061A (en) 2020-11-06
KR102228210B1 KR102228210B1 (en) 2021-03-16

Family

ID=73572212

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190049555A KR102228210B1 (en) 2019-04-29 2019-04-29 Node device that enables the deletion of a transaction in a block chain network and operating method thereof

Country Status (1)

Country Link
KR (1) KR102228210B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113592639A (en) * 2021-05-21 2021-11-02 上海佩俪信息科技有限公司 Block chain transaction deletion method and system
KR102389298B1 (en) * 2021-01-28 2022-04-26 주식회사 한컴위드 Gold asset management server for supporting members to deposit and withdraw their gold which is purchased with cashable points, and the operating method thereof
KR102389289B1 (en) * 2021-01-28 2022-04-26 주식회사 한컴위드 Gold sales server for supporting purchase of gold with cashable points, and the operating method thereof
KR20220100257A (en) * 2021-01-08 2022-07-15 한국전자통신연구원 Method for block consensus and method for managing transaction state
KR20220109264A (en) * 2021-01-28 2022-08-04 주식회사 한컴위드 Gold purchase and investment service server which supports investing in financial products, based on the gold purchased with cashable points, and the operating method thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100471567B1 (en) * 2000-07-29 2005-03-07 엘지전자 주식회사 Transaction Management Method For Data Synchronous In Dual System Environment
KR101781583B1 (en) * 2016-08-31 2017-09-27 서강대학교산학협력단 File management and search system based on block chain and file management and search method
WO2018118930A1 (en) * 2016-12-19 2018-06-28 Swirlds, Inc. Methods and apparatus for a distributed database that enables deletion of events
US20180183600A1 (en) * 2016-12-28 2018-06-28 Mastercard International Incorporated Method and system for providing validated, auditable, and immutable inputs to a smart contract
KR101882805B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of merkle tree structure on the basis of unspent transaction output protocol and document management server using the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100471567B1 (en) * 2000-07-29 2005-03-07 엘지전자 주식회사 Transaction Management Method For Data Synchronous In Dual System Environment
KR101781583B1 (en) * 2016-08-31 2017-09-27 서강대학교산학협력단 File management and search system based on block chain and file management and search method
WO2018118930A1 (en) * 2016-12-19 2018-06-28 Swirlds, Inc. Methods and apparatus for a distributed database that enables deletion of events
US20180183600A1 (en) * 2016-12-28 2018-06-28 Mastercard International Incorporated Method and system for providing validated, auditable, and immutable inputs to a smart contract
KR101882805B1 (en) * 2017-04-17 2018-07-27 주식회사 코인플러그 Method for blockchain based management of documents in use of merkle tree structure on the basis of unspent transaction output protocol and document management server using the same

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220100257A (en) * 2021-01-08 2022-07-15 한국전자통신연구원 Method for block consensus and method for managing transaction state
KR102389298B1 (en) * 2021-01-28 2022-04-26 주식회사 한컴위드 Gold asset management server for supporting members to deposit and withdraw their gold which is purchased with cashable points, and the operating method thereof
KR102389289B1 (en) * 2021-01-28 2022-04-26 주식회사 한컴위드 Gold sales server for supporting purchase of gold with cashable points, and the operating method thereof
KR20220109264A (en) * 2021-01-28 2022-08-04 주식회사 한컴위드 Gold purchase and investment service server which supports investing in financial products, based on the gold purchased with cashable points, and the operating method thereof
CN113592639A (en) * 2021-05-21 2021-11-02 上海佩俪信息科技有限公司 Block chain transaction deletion method and system
CN113592639B (en) * 2021-05-21 2023-10-13 上海简苏网络科技有限公司 Block chain transaction deleting method and system

Also Published As

Publication number Publication date
KR102228210B1 (en) 2021-03-16

Similar Documents

Publication Publication Date Title
KR102228210B1 (en) Node device that enables the deletion of a transaction in a block chain network and operating method thereof
US10917230B2 (en) Managing sensitive data elements in a blockchain network
US10659233B1 (en) Authentication based on a recovered public key
US20220191012A1 (en) Methods For Splitting and Recovering Key, Program Product, Storage Medium, and System
WO2019179542A2 (en) Improving integrity of communications between blockchain networks and external data sources
US10917249B2 (en) Processing data elements stored in blockchain networks
CN117278224A (en) Method and system for verifying identity attribute information
KR102218188B1 (en) Node device for performing certificate management based on a block chain and operating method thereof
KR102295263B1 (en) Data management device that enables distributed encryption management of data based on blockchain and operating method thereof
KR102266056B1 (en) Document information management apparatus capable of managing document information based on a block chain and operating method thereof
KR102266059B1 (en) Block chain based document information management apparatus for ensuring document reliability and operating method thereof
KR102244290B1 (en) Encryption communication apparatus that supports secure communication between a data transmitting apparatus and a data receiving apparatus, and the operating method thereof
US10936734B2 (en) Blockchain authorization
CN116579026A (en) Cloud data integrity auditing method, device, equipment and storage medium
KR102555647B1 (en) Big data access management system server that manages access to data stored on big data storage server
US20220216999A1 (en) Blockchain system for supporting change of plain text data included in transaction
KR102122773B1 (en) System and method for providng redactable signature with recovery functionality
KR101974345B1 (en) Data communication apparatus for connected vehicle supporting secure communication between vehicles via digital signature and operating method thereof
KR20220021543A (en) System and method for multi-factor authentication using password and behavior pattern
KR102240931B1 (en) Payment management server based on a block chain that enables distributed storage of payment information in conjuction with multiple pos terminals and operating method thereof
KR102215600B1 (en) Public data providing apparatus providing public data available as annotations inserted into documents through differential authentication processing based on security level and operating method thereof
KR102602189B1 (en) Document sharing service server for managing document sharing service based on cloud, and the operating method thereof
KR102302948B1 (en) Gold bar genuine product certification server to perform genuine product certification for gold bar and operating method thereof
KR102648908B1 (en) User authentication system and method
KR102636695B1 (en) Real estate brokerage management server that processes electronic contracts for online real estate transactions and operating method thereof

Legal Events

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