KR20210059182A - Node device constituting a block-chain network and an operation method of the node device - Google Patents
Node device constituting a block-chain network and an operation method of the node device Download PDFInfo
- Publication number
- KR20210059182A KR20210059182A KR1020190146290A KR20190146290A KR20210059182A KR 20210059182 A KR20210059182 A KR 20210059182A KR 1020190146290 A KR1020190146290 A KR 1020190146290A KR 20190146290 A KR20190146290 A KR 20190146290A KR 20210059182 A KR20210059182 A KR 20210059182A
- Authority
- KR
- South Korea
- Prior art keywords
- block
- private
- private block
- post
- transaction
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012545 processing Methods 0.000 claims abstract description 24
- 238000012217 deletion Methods 0.000 claims description 83
- 230000037430 deletion Effects 0.000 claims description 83
- 239000012634 fragment Substances 0.000 claims description 32
- 238000004891 communication Methods 0.000 claims description 30
- 238000012423 maintenance Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000000875 corresponding effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000003340 mental effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000007480 spreading Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic 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/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- H04L2209/38—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
- H04L2209/463—Electronic voting
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- General Health & Medical Sciences (AREA)
- Economics (AREA)
- Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Power Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
본 발명은 블록체인 기술에 관한 것으로서, 보다 구체적으로 온라인 상에 공개되는 게시글에 대한 분쟁 해결을 위한 다계층의 블록체인을 포함하는 블록체인 네트워크를 구성하는 노드 장치 및 그 노드 장치의 동작 방법에 관한 것이다. The present invention relates to a block chain technology, and more specifically, to a node device constituting a block chain network including a multi-layered block chain for resolving disputes on posts published online, and a method of operating the node device. will be.
일반적으로 전자 화폐는 인터넷에서 가상으로 존재하는 디지털 통화이다. 이와 같은 전자 화폐 중 대표적인 전자 화폐인 비트코인(Bitcoin)은 통화를 발행하고 관리하는 중앙 장치가 존재하지 않는 구조를 가지고 있으며, 비트코인의 거래는 블록체인을 기반으로 하고 있다. In general, electronic money is a digital currency that exists virtually on the Internet. Among these types of electronic money, Bitcoin, a representative electronic money, has a structure that does not have a central device for issuing and managing currencies, and the transaction of Bitcoin is based on a blockchain.
블록체인(blockchain)은 P2P(peer-to-peer) 네트워크에 의해 생성되고 관리되는 위변조 불가능한 분산 저장소이다. 블록체인은 트랜잭션(쌍방간의 쪼갤 수 없는 단위 작업)으로 생성된 데이터 블록들을 체인(chain) 형태로 잇따라 연결한 모음을 의미한다. 한번 기록된 데이터는 위조 또는 변조가 불가능하다. 블록체인에는 일정 시간 동안 사용자들 간에 발생되는 확정된 거래 내역이 저장될 수 있다. 블록체인 네트워크를 구성하는 많은 노드들은 블록체인 사본을 각자 갖고 있으며, 거래 내역은 모두에게 공개될 수 있다. Blockchain is a non-forgery distributed storage created and managed by a peer-to-peer (P2P) network. Blockchain refers to a collection of data blocks created by transactions (a unit operation that cannot be split between two parties) in succession in the form of a chain. Once recorded, data cannot be forged or altered. Blockchain can store confirmed transaction details that occur between users for a certain period of time. Many nodes that make up the blockchain network each have a copy of the blockchain, and transaction details can be disclosed to everyone.
블록체인은 화폐 유통에만 국한되어 활용되지 않고 다양한 분야에 활용되고 있다. 예를 들어 화물 운송, 문서 보관 등 다양한 분야가 활용되고 있다. 이와 같이 다양한 분야에 활용되기 위해서는 중요 데이터에 대한 보안이 중요한데, 현재까지 제안되고 있는 블록체인은 위변조가 불가능할 뿐 누구에게나 블록이 공개되어 이러한 점에서는 보안이 취약하다고 할 수 있다. 물론 중요 데이터 자체를 암호화하여 블록체인에 저장할 수 있으나, 암호화된 상태로 어쨌든 누구에게나 노출되기에 해킹의 가능성은 여전하다. Blockchain is used in various fields, not limited to currency circulation. For example, various fields such as cargo transportation and document storage are being used. In order to be used in such various fields, security for important data is important.However, the block chain proposed to date cannot be forged or altered, but the block is disclosed to anyone, so it can be said that the security is weak in this respect. Of course, important data itself can be encrypted and stored in the blockchain, but the possibility of hacking remains as it is encrypted and exposed to anyone anyway.
또한, 블록체인은 앞서 설명한 바와 같이 블록에 저장된 데이터에 대한 위변조가 불가능하다. 그러나 필요에 따라 블록체인의 블록에 저장된 데이터에 대한 삭제 또는 수정을 하면서 이전에 저장된 데이터에 대한 원천적인 삭제를 할 필요가 있다. 현재까지의 기술로는 블록체인에 저장된 데이터에 대한 삭제 또는 수정 등의 편집을 하면서 원본 데이터를 원천적으로 삭제할 수 있는 기술이 없는 실정이다.In addition, as described above, the block chain cannot forgery or alter the data stored in the block. However, it is necessary to fundamentally delete previously stored data while deleting or modifying the data stored in the block of the blockchain as needed. There is no technology that can fundamentally delete the original data while editing, such as deleting or modifying the data stored in the blockchain.
한편, 온라인 사회 관계망 서비스(SNS)가 활성화되어 감에 따라 익명을 이용한 가짜 뉴스가 온라인 상에 유포되고 있고, 다양한 종류의 대량의 정보가 빠르게 온라인 상에서 유통되고 있다. 악성 게시글에 의해 개인 명예훼손 사례가 증가하고 있고 유명 연예인의 경우 온라인 상의 악성 게시글에 상처 받아 극단적인 선택을 하는 경우도 있으며, 가짜 뉴스에 의해 금전적, 정신적 피해를 보는 사람도 늘어나고 있다. 이러한 가짜 뉴스나 악성 게시글 등에 대한 규제가 미비한 상태이다. 금칙어를 포함하는 게시글에 대해 자동으로 차단하는 기술이 적용되고 있기는 하나 이는 매우 제한된 차단이고 가짜 뉴스 등은 제어할 수 없다. Meanwhile, as the online social network service (SNS) becomes active, fake news using anonymity is spreading online, and a large amount of various types of information is rapidly circulating online. There are increasing cases of personal defamation caused by malicious posts, and in the case of famous celebrities, there are cases where they are hurt by malicious posts online and make extreme choices, and more and more people are suffering financial and mental damage by fake news. There are insufficient regulations on such fake news or malicious posts. Although a technology that automatically blocks postings containing banned words is being applied, this is a very limited blocking, and fake news, etc., cannot be controlled.
본 발명은 상술한 문제점을 해결하기 위해 제안된 것으로서, 공개 블록체인과 비공개 블록체인으로 이루어지는 다계층의 블록체인을 이용하여 온라인 상의 게시글에 대한 분쟁 해결을 위한 중요 데이터를 보관할 수 있고 또한 수정이나 삭제를 가능하게 하는, 블록체인 네트워크를 구성하는 노드 장치 및 그 노드 장치의 동작 방법을 제공하는데 목적이 있다.The present invention is proposed in order to solve the above-described problem, and by using a multi-layered block chain consisting of a public blockchain and a private blockchain, it is possible to store important data for resolving disputes on postings online, and to modify or delete them. It is an object of the present invention to provide a node device constituting a blockchain network and a method of operating the node device.
일 실시예에 따른 복수의 노드 장치를 포함하여 구성되는 블록체인 네트워크의 노드 장치는, 다른 노드 장치들과 통신하고, 사용자에 의해 작성된 게시글을 온라인상에 공개하는 웹 서버와 통신하는 통신 회로; 하나 이상의 프로세서; 및 상기 하나 이상의 프로세서에 의해 실행 가능한 인스트럭션을 저장하는 메모리를 포함하고, 상기 하나 이상의 프로세서는, 공개 블록체인과 비공개 블록체인을 각각 독립적으로 생성하고, 상기 웹 서버로부터 상기 게시글을 포함하는 제 1 트랜잭션을 수신하여 상기 비공개 블록체인의 비공개 블록에 저장하며, 상기 제 1 트랜잭션에 대한 처리 결과를 상기 공개 블록체인의 공개 블록에 저장하고, 제 1 랜덤 암호화 키를 생성하여 상기 제 1 트랜잭션이 저장된 비공개 블록을 암호화하고, 상기 제 1 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하며, 상기 게시글의 삭제 결정에 따라 상기 비공개 블록에 저장된 상기 게시글의 삭제를 위한 제 2 트랜잭션을 상기 웹 서버로부터 수신시, 상기 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 상기 분할 조각들을 수신하여 복호화하고 그 복호화된 비공개 블록에 저장된 상기 게시글을 삭제하고, 상기 게시글이 삭제된 상기 복호화된 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하며, 상기 메모리에 임시 로드된 비공개 블록을 삭제하고, 다른 노드 장치들로 상기 분할 조각들의 삭제를 요청하며, 제 2 랜덤 암호화 키를 생성하여 상기 자식 비공개 블록을 암호화하고, 상기 제 2 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다.A node device of a blockchain network comprising a plurality of node devices according to an embodiment includes: a communication circuit that communicates with other node devices and communicates with a web server that publishes a post written by a user online; One or more processors; And a memory for storing instructions executable by the one or more processors, wherein the one or more processors independently create a public blockchain and a private blockchain, and a first transaction including the post from the web server Is received and stored in a private block of the private blockchain, the processing result of the first transaction is stored in the public block of the public blockchain, and a first random encryption key is generated to store the first transaction Is encrypted, the first random encryption key is divided by a predetermined number, the divided pieces are distributed to other node devices, and stored, and a second for deleting the post stored in the private block according to the decision to delete the post When a transaction is received from the web server, the private block is copied and temporarily loaded into memory, and the divided fragments are received from other node devices to be decrypted, and the post stored in the decrypted private block is deleted, and the post is Create a child private block by copying the deleted decrypted private block, delete the private block temporarily loaded in the memory, request deletion of the divided fragments to other node devices, and second random encryption A key is generated to encrypt the child private block, the second random encryption key is divided into a predetermined number, and the divided pieces are distributed to other node devices and stored.
상기 하나 이상의 프로세서는, 상기 공개 블록체인의 공개 블록 생성시 상기 비공개 블록체인의 비공개 블록을 동시에 생성하며, 상기 공개 블록의 헤더에 동시에 생성된 비공개 블록의 해쉬값 및 이전 공개 블록의 해쉬값을 기록할 수 있다.The one or more processors simultaneously generate the private block of the private block chain when generating the public block of the public block chain, and record the hash value of the private block simultaneously generated and the hash value of the previous public block in the header of the public block. can do.
상기 하나 이상의 프로세서는, 상기 비공개 블록체인의 비공개 블록 생성시 해당 비공개 블록의 헤더에 이전 비공개 블록의 해쉬값을 기록할 수 있다.The one or more processors may record a hash value of a previous private block in the header of the private block when generating the private block of the private blockchain.
상기 하나 이상의 프로세서는, 상기 제 2 트랜잭션을 상기 공개 블록체인의 공개 블록에 기록하고, 상기 자식 비공개 블록의 해쉬값을 상기 제 2 트랜잭션을 기록한 공개 블록과 함께 동시에 생성된 비공개 블록의 헤더에 기록할 수 있다.The one or more processors record the second transaction in the public block of the public blockchain, and record the hash value of the child private block in the header of the private block generated simultaneously with the public block recording the second transaction. I can.
상기 하나 이상의 프로세서는, 상기 제 2 트랜잭션을 공개 블록에 기록시, 상기 제 1 트랜잭션을 저장한 비공개 블록과 그 비공개 블록으로부터 생성된 자식 비공개 블록의 인덱스 정보를 함께 공개 블록에 기록할 수 있다.When recording the second transaction in the public block, the one or more processors may record the private block storing the first transaction and index information of the child private block generated from the private block together in the public block.
상기 제 2 트랜잭션은, 개인키를 이용한 서명값을 포함하고, 상기 하나 이상의 프로세서는, 상기 제 1 랜덤 암호화 키의 분할 조각을 다른 노드 장치들로 요청할 때 상기 서명값을 함께 전송하고 상기 다른 노드 장치들에서 상기 서명값의 검증 성공시에 상기 다른 노드 장치들로부터 상기 제 1 랜덤 암호화 키의 분할 조각을 수신할 수 잇다.The second transaction includes a signature value using a private key, and the at least one processor transmits the signature value together when requesting a split piece of the first random encryption key to other node devices, and the other node device Upon successful verification of the signature value, the divided pieces of the first random encryption key may be received from the other node devices.
상기 복수의 노드 장치는, 복수의 대표 노드 장치와 복수의 일반 노드 장치를 포함하고, 복수의 대표 노드 장치는 지분 증명에 의해 블록을 생성하여 블록을 동기화하고, 일반 노드 장치는 대표 노드 장치들의 블록들을 동기화하여 저장하며, 상기 블록체인 네트워크의 노드 장치는, 대표 노드 장치일 수 있다.The plurality of node devices include a plurality of representative node devices and a plurality of general node devices, and the plurality of representative node devices synchronize blocks by generating blocks by proof of stake, and the general node device is a block of representative node devices. They are stored in synchronization, and the node device of the blockchain network may be a representative node device.
상기 하나 이상의 프로세서는, 상기 게시글의 삭제를 요청하는 삭제 요청자에 의해 생성된 상기 게시글의 캡쳐 이미지와, 상기 삭제 요청자에 의해 상기 캡쳐 이미지의 일부분이 모자이크 처리된 모자이크 처리 이미지와, 상기 삭제 요청자에 의해 첨부된 삭제 이유 정보를 포함하는 제 3 트랜잭션을 상기 웹 서버로부터 수신하여 상기 비공개 블록체인의 다른 비공개 블록에 저장하고, 상기 제 3 트랜잭션에 대한 처리 결과를 상기 공개 블록체인의 다른 공개 블록에 저장하며, 제 3 랜덤 암호화 키를 생성하여 상기 제 3 트랜잭션이 저장된 상기 다른 비공개 블록을 암호화하고, 상기 제 3 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하며, 상기 게시글의 최종 삭제 결정에 따라 상기 캡쳐 이미지의 삭제를 위한 제 4 트랜잭션을 상기 웹 서버로부터 수신시, 상기 제 3 트랜잭션이 저장된 상기 다른 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 분할 조각들을 수신하여 복호화하고 그 복호화된 다른 비공개 블록에 저장된 상기 캡쳐 이미지를 삭제하고, 상기 캡쳐 이미지가 삭제된 상기 복호화된 다른 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하며, 상기 메모리에 임시 로드된 다른 비공개 블록을 삭제하고, 다른 노드 장치들로 분할 조각들의 삭제를 요청하며, 제 4 랜덤 암호화 키를 생성하여 상기 다른 비공개 블록으로부터 생성된 자식 비공개 블록을 암호화하고, 상기 제 4 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장할 수 있다.The one or more processors may include a captured image of the post generated by a deletion requester requesting the deletion of the post, a mosaic-processed image in which a portion of the captured image is mosaic-processed by the deletion requestor, and the deletion requestor. A third transaction including attached deletion reason information is received from the web server and stored in another private block of the private blockchain, and the processing result of the third transaction is stored in another public block of the public blockchain. , Generate a third random encryption key to encrypt the other private block in which the third transaction is stored, divide the third random encryption key by a predetermined number, and distribute the divided fragments to other node devices and store the When a fourth transaction for deleting the captured image is received from the web server according to the final deletion decision of the post, the other private block in which the third transaction is stored is copied, temporarily loaded into memory, and then divided from other node devices. Fragments are received and decoded, the captured image stored in the decrypted other private block is deleted, and a child private block is created by copying the other decrypted private block from which the captured image is deleted, and temporary Delete another loaded private block, request deletion of divided fragments to other node devices, generate a fourth random encryption key to encrypt a child private block generated from the other private block, and the fourth random encryption key By dividing by a predetermined number, the divided pieces may be distributed and stored to other node devices.
상기 하나 이상의 프로세서는, 상기 게시글의 유지 결정에 따라 상기 게시글의 최초 작성자에 의해 작성된 유지 이유 정보를 포함하는 제 4 트랜잭션을 상기 웹 서버로부터 수신시, 상기 제 4 트랜잭션을 새로운 비공개 블록에 저장하고, 제 5 랜덤 암호화 키를 생성하여 상기 새로운 비공개 블록을 암호화하고, 상기 제 5 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장할 수 있다.The one or more processors store the fourth transaction in a new private block when receiving from the web server a fourth transaction including maintenance reason information written by the first author of the post according to the decision to maintain the post, A fifth random encryption key may be generated to encrypt the new private block, and the fifth random encryption key may be divided into a predetermined number, and divided fragments may be distributed to other node devices and stored.
상기 최종 삭제 결정 및 상기 유지 결정은, 상기 게시글에 대한 불특정 사용자들의 투표 결과로 결정될 수 있다.The final deletion decision and the maintenance decision may be determined as a result of voting by unspecified users for the post.
일 실시예에 따른 복수의 노드 장치를 포함하여 구성되는 블록체인 네트워크의 노드 장치의 동작 방법은, 사용자에 의해 작성된 게시글을 온라인상에 공개하는 웹 서버로부터, 상기 게시글을 포함하는 제 1 트랜잭션을 수신하여 비공개 블록체인의 비공개 블록에 저장하며, 상기 제 1 트랜잭션에 대한 처리 결과를 공개 블록체인의 공개 블록에 저장하는 단계; 제 1 랜덤 암호화 키를 생성하여 상기 제 1 트랜잭션이 저장된 비공개 블록을 암호화하고, 상기 제 1 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 단계; 상기 게시글의 삭제 결정에 따라 상기 비공개 블록에 저장된 상기 게시글의 삭제를 위한 제 2 트랜잭션을 상기 웹 서버로부터 수신시, 상기 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 상기 분할 조각들을 수신하여 복호화하고 그 복호화된 비공개 블록에 저장된 상기 게시글을 삭제하고, 상기 게시글이 삭제된 상기 복호화된 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하는 단계; 및 상기 메모리에 임시 로드된 비공개 블록을 삭제하고, 다른 노드 장치들로 상기 분할 조각들의 삭제를 요청하며, 제 2 랜덤 암호화 키를 생성하여 상기 자식 비공개 블록을 암호화하고, 상기 제 2 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 단계를 포함한다.A method of operating a node device of a blockchain network comprising a plurality of node devices according to an embodiment receives a first transaction including the post from a web server that publishes a post written by a user online. Storing it in a private block of the private blockchain and storing the processing result of the first transaction in the public block of the public blockchain; Generating a first random encryption key to encrypt a private block in which the first transaction is stored, dividing the first random encryption key by a predetermined number, and distributing and storing the divided pieces to other node devices; When a second transaction for deleting the post stored in the private block is received from the web server according to the decision to delete the post, the private block is copied and temporarily loaded into memory, and the divided pieces are removed from other node devices. Receiving and decoding the post and deleting the post stored in the decrypted private block, and creating a child private block by copying the decrypted private block from which the post has been deleted; And deleting the private block temporarily loaded in the memory, requesting deletion of the divided fragments to other node devices, generating a second random encryption key to encrypt the child private block, and generating the second random encryption key. And storing the divided pieces by dividing them into a predetermined number and distributing them to other node devices.
본 발명은 다계층 블록체인을 비공개 블록체인과 공개 블록체인으로 구성하고 비공개 블록체인의 비공개 블록에는 온라인 상의 게시글 및 분쟁 해결을 위한 중요 데이터를 보관하고 공개 블록에는 일반 데이터를 저장함으로써 온라인 게시글에 대한 분쟁 증거 자료의 위변조를 방지하면서 외부 노출을 원천적으로 차단하여 보안을 강화하고 추후 온라인 게시글에 대한 법적 분쟁 발생시 증거자료로서 활용되도록 한다. The present invention consists of a multi-layered block chain with a private block chain and a public block chain, and the private block of the private block chain stores online posts and important data for dispute resolution, and the public block stores general data for online posts. It prevents forgery and alteration of the evidence of dispute, and strengthens security by fundamentally blocking external exposure, and in the event of a legal dispute over online posts in the future, it should be used as evidence.
본 발명은 상기 분쟁 해결을 위한 중요 데이터를 저장한 비공개 블록을 랜덤 암호화 키로 암호화한 후 블록체인 네트워크를 구성하는 노드 장치들에 그 랜덤 암호화 키를 분산하여 저장한 후 노드 장치들의 승인 하에서만 랜덤 암호화 키의 조각들을 수집하여 중요 데이터를 복호화할 수 있도록 하여 중요 데이터의 해킹을 방지하고 보안을 강화한다.The present invention encrypts the private block storing the important data for dispute resolution with a random encryption key, distributes the random encryption key to node devices constituting the blockchain network, and stores the random encryption key only under the approval of the node devices. It prevents hacking of important data and strengthens security by collecting key pieces to decrypt important data.
본 발명은 온라인 게시글에 대한 분쟁이 해소되는 경우 비공개 블록에 저장된 관련 중요 데이터 중 분쟁 대상이었던 온라인 게시글의 캡쳐 이미지를 원천적으로 삭제하는 효과를 제공하여 분쟁 대상이었던 온라인 게시글들이 재유통될 가능성을 원천적으로 차단할 수 있다. The present invention provides the effect of fundamentally deleting the captured image of the online post that was the subject of dispute among the relevant important data stored in the private block when the dispute over the online post is resolved, thereby preventing the possibility of re-distribution of the online post which was the subject of the dispute. Can be blocked.
도 1은 본 발명의 일 실시예에 따른 시스템을 나타낸 도면이다.
도 2는 도 1의 대표 노드의 블록체인을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 블록체인 네트워크에서 온라인 게시글의 분쟁 해결을 위한 데이터를 처리하는 과정을 설명하는 도면이다.
도 4는 본 발명의 일 실시예에 따른 삭제 요청자의 입력 데이터를 블록체인에 저장하는 방법을 설명하는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 분쟁 대상의 온라인 게시글에 대한 투표 과정을 설명하는 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 비공개 블록에서 캡쳐 이미지를 삭제하는 방법을 설명하는 흐름도이다.1 is a diagram showing a system according to an embodiment of the present invention.
FIG. 2 is a diagram showing a block chain of a representative node of FIG. 1.
3 is a diagram illustrating a process of processing data for dispute resolution of online postings in a blockchain network according to an embodiment of the present invention.
4 is a flowchart illustrating a method of storing input data of a deletion requester in a blockchain according to an embodiment of the present invention.
5 is a flowchart illustrating a voting process for an online post of a dispute object according to an embodiment of the present invention.
6 is a flowchart illustrating a method of deleting a captured image from a private block according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여, 본 발명에 대하여 보다 구체적으로 설명하기로 한다. 이하의 설명에서 본 발명에 대한 이해를 명확히 하기 위하여, 본 발명의 특징에 대한 공지의 기술에 대한 설명은 생략하기로 한다. 이하의 실시 예는 본 발명의 이해를 돕기 위한 상세한 설명이며, 본 발명의 권리 범위를 제한하는 것이 아님은 당연할 것이다. 따라서, 본 발명과 동일한 기능을 수행하는 균등한 발명 역시 본 발명의 권리 범위에 속할 것이다. 이하의 설명에서 동일한 식별 기호는 동일한 구성을 의미하며, 불필요한 중복적인 설명 및 공지 기술에 대한 설명은 생략하기로 한다.Hereinafter, with reference to the accompanying drawings, the present invention will be described in more detail. In the following description, in order to clarify an understanding of the present invention, a description of known techniques for features of the present invention will be omitted. The following examples are detailed descriptions to aid understanding of the present invention, and it will be natural that the scope of the present invention is not limited. Accordingly, an equivalent invention that performs the same function as the present invention will also fall within the scope of the present invention. In the following description, the same identification symbols mean the same configuration, and unnecessary redundant descriptions and descriptions of known technologies will be omitted.
도 1은 본 발명의 일 실시예에 따른 시스템을 나타낸 도면이고, 도 2는 도 1의 대표 노드의 블록체인을 나타낸 도면이다. 도 1을 참조한 본 실시예는, 웹 서버(110), 블록체인 네트워크(120), 사용자 단말(130)을 포함하고, 이들은 통신망(150)을 통해 통신하여 데이터를 송수신한다. 통신망(150)은, 유선 통신망 및 무선 통신망을 포함할 수 있다. 무선 통신망은 GSM(Global System for Mobile Communication), EDGE(Enhanced Data GSM Environment), WCDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access) 등의 통신망일 수 있다. 통신망(150)은 본 출원의 출원 시점에 아직 개발되지 않은 통신망을 포함한다.1 is a diagram illustrating a system according to an embodiment of the present invention, and FIG. 2 is a diagram illustrating a block chain of a representative node of FIG. 1. The present embodiment with reference to FIG. 1 includes a
웹 서버(110)는 사용자 단말(130)이 접속하여 온라인 상에서 게시글을 작성할 수 있도록 하고 작성된 게시글을 온라인 상에 공개하는 서비스를 제공하는 컴퓨팅 장치이다. 이 서비스는 블로그 서비스, 카페 서비스, 또는 온라인 사회 관계망 서비스 등을 포함한다. 웹 서버(110)는 반드시 웹 기반으로 서비스를 제공하지 않아도 된다. 웹 서버(110)는 사용자들이 게시글을 작성하면 이에 관한 트랜잭션을 블록체인 네트워크(120)에 전송하여 게시글을 블록체인 네트워크(120)의 비공개 블록에 저장하고 게시글의 기본 정보, 예를 들어 작성자, 제목 등을 블록체인 네트워크(120)의 공개 블록에 저장한다. 웹 서버(110)는 게시글 전체를 온라인 상에 공개할 수 있고 또는 게시글의 제목이나 작성자만을 온라인 상에 공개하고 사용자의 선택에 따라 비공개 블록에 저장된 게시글을 온라인 상에 공개할 수 있다. 비공개 블록 및 공개 블록에 관해서는 이하에서 자세히 설명한다.The
웹 서버(110)는 온라인 게시글에 대한 분쟁 해결 서비스를 제공한다. 여기서 분쟁 해결 서비스는, 온라인 게시글에 대해 해당 게시글을 최초 작성한 작성자가 아닌 다른 사용자가 삭제 요청을 하면, 이를 최초 작성자에게 통지하고, 최초 작성자가 해당 게시글을 삭제하지 않을 경우 불특정 사용자의 참여에 의한 투표를 실시하여 투표 결과에 따라 해당 게시글을 삭제하거나 유지하는 것을 의미한다. 이 과정에서 웹 서버(110)는 블록체인 네트워크(120)와 통신하여 분쟁 해결 과정에서 생성된 데이터를 블록체인 네트워크(120)에 저장하고 분쟁이 해결되면 블록체인 네트워크(120)에 저장된 데이터 중 원본 게시글을 포함하는 일부 데이터를 삭제하는 트랜잭션을 발생시켜 블록체인 네트워크(120)로 전송한다. 웹 서버(110)는, 메모리, 하나 이상의 프로세서, 통신 회로를 포함하고 이들은 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 메모리에는 운영 체제와 웹 서버(110)에서 제공하는 서비스를 위한 프로그램이 설치되고, 운영 체제 및 프로그램은 하나 이상의 프로세서에 의해 실행된다. 운영 체제는, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있다. The
웹 서버(110)의 프로세서는, 상기 프로그램에 따라, 사용자 단말(130)이 접속하면, 온라인 게시글을 작성할 수 있는 폼(form)을 웹 페이지를 통해 사용자 단말(130)로 제공하고, 사용자에 의해 작성된 게시글을 웹 사이트를 통해 공개한다. 웹 서버(110)의 프로세서는, 웹 사이트에 게시되는 게시글들 중에 일부 게시글에 대한 삭제 요청을 최초 작성자 이외 다른 사용자(이하, 삭제 요청자)로부터 수신할 수 있다. 웹 서버(110)의 프로세서는, 상기 삭제 요청에 대한 응답으로, 해당 게시글을 캡쳐하고. 캡쳐 이미지를 삭제 요청자의 사용자 단말(130)로 제공하면서, 모자이크를 처리할 수 있는 모자이크 입력 폼을 제공한다. 웹 서버(110)의 프로세서는, 모자이크 입력 폼을 통해 삭제 요청자로부터 상기 캡쳐 이미지에서 삭제가 필요한 부분에 대한 모자이크 처리 입력을 수신하여 상기 캡쳐 이미지의 일부분이 모자이크 처리된 모자이크 처리 이미지를 생성한다. 또한, 웹 서버(110)의 프로세서는, 삭제 요청자의 사용자 단말(130)로 삭제 이유를 입력할 수 있는 입력 폼을 제공하여 삭제 요청자로부터 구체적인 삭제 이유 및 증거를 포함하는 삭제 이유 정보를 수신한다. 웹 서버(110)의 프로세서는, 삭제 이유 정보의 입력까지 완료되면, 상기 캡쳐 이미지와, 상기 모자이크 처리 이미지와, 상기 삭제 이유 정보를 포함하는 트랜잭션을 블록체인 네트워크(120)로 전송한다. The processor of the
웹 서버(110)의 프로세서는, 상기 삭제 요청자에 의해 게시글에 대한 삭제 요청이 수신되면, 해당 게시글을 임시 잠금 처리를 하여 공개되지 않도록 처리하고, 최초 작성자에게 삭제 요청자로부터 수신된 상기 삭제 이유 정보를 전송하여 삭제할 것인지를 문의한다. 웹 서버(110)의 프로세서는, 최초 작성자가 삭제 요청된 게시글을 삭제할 경우, 블록체인 네트워크(120)로 해당 게시글 및 해당 게시글에 대한 캡쳐 이미지의 삭제를 위한 트랜잭션을 생성하여 블록체인 네트워크(120)로 전송한다. 만약, 블록체인 네트워크(120)에 캡쳐 이미지 등이 저장되기 전에, 삭제 요청자의 요청에 의해 최초 작성자가 게시글을 삭제하는 경우, 웹 서버(110)의 프로세서는, 원본 게시글만의 삭제를 위한 트랜잭션을 생성하여 블록체인 네트워크(120)로 전송할 수 있다.When a request for deletion of a post is received by the requester of deletion, the processor of the
웹 서버(110)의 프로세서는, 최초 작성자가 게시글 삭제를 거부할 경우, 최초 작성자의 사용자 단말(130)로 해당 게시글의 유지에 대한 이유를 입력할 수 있는 입력 폼을 제공하고 그 입력 폼을 통해 유지 이유를 수신한다. 웹 서버(110)의 프로세서는, 수신된 유지 이유를 포함하는 트랜잭션을 블록체인 네트워크(120)로 전송한다. 그리고 웹 서버(110)의 프로세서는, 삭제 요청자에 의해 생성된 상기 모자이크 처리 이미지와 상기 유지 이유를 포함하는 토론 방을 개설하고, 불특정 사용자들을 대상으로 일정한 기간 동안 해당 게시글의 삭제 여부에 대한 투표를 시작한다. The processor of the
투표 결과가 삭제로 결정된 경우, 웹 서버(110)의 프로세서는, 잠금 처리 되어 있는 해당 게시글을 삭제하고, 또한 해당 게시글에 대한 캡쳐 이미지의 삭제를 위한 트랜잭션을 생성하여 블록체인 네트워크(120)로 전송한다. 투표 결과가 유지로 결정된 경우, 웹 서버(110)의 프로세서는, 잠금 처리 되어 있는 해당 게시글을 다시 원 상태로 복구하여 온라인 상에 공개한다. 추후 해당 게시글로 인한 법률적 분쟁이 발생할 경우, 블록체인 네트워크(120)에 저장된 데이터들은 증거 자료로서 사용될 수 있다. 웹 서버(110)의 프로세서는, 투표에 참여한 사용자들에게는 소정의 포인트를 지급할 수 있다. 여기서 포인트는 전자 화폐일 수 있다.When the voting result is determined to be deleted, the processor of the
블록체인 네트워크(120)는, 복수의 대표 노드(121)와 복수의 일반 노드(122)를 포함하여 구성된다. 여기서 노드(121, 122)들은, 데스크톱, 노트북, 스마트폰, 또는 기업의 서버 등일 수 있으며, 메모리와 프로세서를 포함하는 컴퓨팅 장치이다. 블록체인 네트워크(120)를 구성하는 대표 노드(121)들은, 웹 서버(110)로 API(Application Programmable Interface)를 제공하여 웹 서버(110)로부터 트랜잭션을 수신한다. 도 2에 도시된 바와 같이, 대표 노드(121)들은, 공개 블록들이 이어진 공개 블록체인(210)과 비공개 블록들이 이어진 비공개 블록체인(220)으로 구성되는 다계층의 블록체인을 운용 및 저장한다. The
공개 블록체인(210)에는 공중에 공개되어도 되는 일반 데이터의 트랜잭션과 비공개 블록체인(220)에 대한 트랜잭션 처리 결과가 저장된다. 공개 블록체인(210)에 저장되는 각종 트랜잭션은 예를 들어 코인의 송금, 사용자들의 공개키 그리고 지갑 주소, 온라인 게시글의 기본 정보(예, 제목, 작성자, 게시 일자, 게시글이 저장된 비공개 블록의 정보) 등을 포함할 수 있다. 비공개 블록체인(220)에는 사용자들의 가입 정보와 사용자들의 개인키, 콘텐츠 암호화키, 특히 분쟁의 대상인 온라인 게시들에 대한 데이터 등의 외부에 노출되어서는 안 되는 중요 데이터, 즉 비공개 데이터의 트랜잭션이 저장된다. 비공개 블록체인(220)을 구성하는 비공개 블록은 랜덤 암호화 키로 암호화된다. 그리고 랜덤 암호화 키는 블록체인 네트워크(120)를 구성하는 노드들 중에서 일반 노드들(122)을 제외한 대표 노드들(121)에만 여러 조각으로 분할되어 분산 저장된다. 공개 블록체인(210)과 비공개 블록체인(220)에 적용되는 블록 생성 기술(예, 작업증명 또는 지분증명, 해쉬 연산)은 공지된 블록체인 기술이 적용될 수 있다. In the
블록체인(210, 220)의 블록은 헤더(header)와 바디(body)로 구성된다. 헤더에는 이전 블록의 해쉬값, 난이도, 넌스(Nonce), 타임 스탬프, 머클 루트(Merkle Root)가 기록되고, 바디에는 각종 트랜잭션 정보와 블록의 인덱스가 기록된다. 여기서 블록의 인덱스는 비공개 블록의 인덱스를 포함한다. 즉, 비공개 블록에 특정 중요 데이터를 저장하는 트랜잭션이 발생하였을 때, 그 트랜잭션의 정보는 공개 블록의 바디에 기록되면서, 그 트랜잭션에 대응하는 중요 데이터가 기록된 비공개 블록에 대한 인덱스가 공개 블록의 바디에 기록된다. 따라서 특정 중요 데이터에 대한 검색이 요구될 때, 상기 인덱스를 참조하여 해당 특정 중요 데이터를 저장하고 있는 비공개 블록을 찾을 수 있다. 공개 블록체인(210)을 구성하는 공개 블록이 생성될 때, 비공개 블록체인(220)을 구성하는 비공개 블록도 동시에 생성된다. 그리고 공개 블록의 헤더에는 이전 블록의 해쉬값과 함께, 공개 블록과 함께 동시에 생성된 비공개 블록의 해쉬값이 기록된다. 따라서, 비공개 블록에 대한 위변조를 방지할 수 있다. 당연히 비공개 블록의 헤더에는 이전 비공개 블록의 해쉬값이 기록된다. Blocks of the
대표 노드(121)들은, 공개된 API를 통해 웹 서버(110)와 통신할 수 있고, 또한 블록을 생성하여 블록체인을 만들고 이를 다른 대표 노드(121)들과 동기화한다. 대표 노드(121)들은, 비공개 블록을 암호화된 랜덤 암호화 키의 분할된 조각을 나누어 분산 저장하고, 어느 한 대표 노드(121)의 요청시에 요청한 대표 노드(121)의 무결성을 검증한 후 자신이 보유하고 있는 랜덤 암호화 키의 분할 조각을 회신한다. 대표 노드들(121)은 랜덤 암호화 키의 분할 조각을 블록체인에 저장하지 않고 별도의 로컬 저장소에 저장하고, 랜덤 암호화 키와 비공개 블록 간의 관계 정보를 관리한다. 일반 노드들(122)은 대표 노드(121)의 동작 중에서 블록체인 서비스의 가입 처리, 그리고 지갑 생성, 그리고 랜덤 암호화 키의 생성 및 보관을 담당하지 않고, 블록체인의 복사본을 저장하는 역할만을 담당한다.The
랜덤 암호화 키는 앞서 설명한 바와 같이, 콘텐츠 암호화키, 분쟁 대상 온라인 게시글에 대한 데이터 등의 중요 데이터를 저장하는 비공개 블록을 암호화하는 키이다. 중요 데이터가 저장되는 각 비공개 블록마다 랜덤 암호화 키는 서로 다르다. 한편, 중요 데이터가 저장되는 각 비공개 블록의 식별정보는 공개 블록에 저장됨으로써, 대표 노드들(121)이 공개 블록에서 특정 중요 데이터가 저장되어 있는 비공개 블록의 정보를 식별할 수 있다.As described above, the random encryption key is a key for encrypting a private block that stores important data, such as a content encryption key and data on online postings subject to dispute. Each private block in which important data is stored has a different random encryption key. Meanwhile, identification information of each private block in which important data is stored is stored in the public block, so that the
대표 노드(121)들은, 메모리, 메모리 제어기, 하나 이상의 프로세서(CPU), 주변 인터페이스, 입출력(I/O) 서브시스템, 디스플레이 장치, 입력 장치 및 통신 회로를 포함한다. 이러한 구성요소는 하나 이상의 통신 버스 또는 신호선을 통하여 통신한다. 여러 구성요소는 하나 이상의 신호 처리 및/또는 애플리케이션 전용 집적 회로(application specific integrated circuit)를 포함하여, 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어 둘의 조합으로 구현될 수 있다.The
메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고, 또한 하나 이상의 자기 디스크 저장 장치, 플래시 메모리 장치와 같은 불휘발성 메모리, 또는 다른 불휘발성 반도체 메모리 장치를 포함할 수 있다. 일부 실시예에서, 메모리는 하나 이상의 프로세서로부터 멀리 떨어져 위치하는 저장 장치, 예를 들어 통신 회로와, 인터넷, 인트라넷, LAN(Local Area Network), WLAN(Wide LAN), SAN(Storage Area Network) 등, 또는 이들의 적절한 조합과 같은 통신 네트워크(도시하지 않음)를 통하여 액세스되는 네트워크 부착형(attached) 저장 장치를 더 포함할 수 있다. 프로세서 및 주변 인터페이스와 같은 대표 노드의 다른 구성요소에 의한 메모리로의 액세스는 메모리 제어기에 의하여 제어될 수 있다. 비공개 블록체인과 공개 블록체인은 메모리에 저장될 수 있다.The memory may include high-speed random access memory, and may also include one or more magnetic disk storage devices, nonvolatile memory such as flash memory devices, or other nonvolatile semiconductor memory devices. In some embodiments, the memory is a storage device that is located remotely from one or more processors, such as a communication circuit, the Internet, an intranet, a local area network (LAN), a wide LAN (WLAN), a storage area network (SAN), and the like, Or a network attached storage device accessed through a communication network (not shown), such as a suitable combination thereof. Access to the memory by other components of the representative node, such as the processor and peripheral interfaces, can be controlled by the memory controller. Private blockchains and public blockchains can be stored in memory.
주변 인터페이스는 대표 노드(121)들의 입출력 주변 장치를 프로세서 및 메모리와 연결한다. 하나 이상의 프로세서는 다양한 소프트웨어 프로그램 및/또는 메모리에 저장되어 있는 인스트럭션(명령어) 세트를 실행하여 대표 노드(121)들을 위한 여러 기능을 수행하고 데이터를 처리한다. 일부 실시예에서, 주변 인터페이스, 프로세서 및 메모리 제어기는 칩과 같은 단일 칩 상에서 구현될 수 있다. 일부 다른 실시예에서, 이들은 별개의 칩으로 구현될 수 있다. I/O 서브시스템은 디스플레이 장치, 입력 장치와 같은 대표 노드의 입출력 주변장치와 주변 인터페이스 사이에 인터페이스를 제공한다. The peripheral interface connects the input/output peripheral devices of the
프로세서는 대표 노드(121)들에 연관된 동작을 수행하고 명령어들을 수행하도록 구성된 프로세서로서, 예를 들어, 메모리로부터 검색된 명령어들을 이용하여, 대표 노드(121)들의 컴포넌트 간의 입력 및 출력 데이터의 수신과 조작을 제어할 수 있다. 일부 실시예에서, 소프트웨어 구성요소는 운영 체제, 그래픽 모듈(명령어 세트) 및 이노코인 프로그램(명령어 세트)이 메모리에 탑재(설치)된다. 운영 체제는, 예를 들어, 다윈(Darwin), RTXC, LINUX, UNIX, OS X, WINDOWS 또는 VxWorks, 안드로이드 등과 같은 내장 운영체제일 수 있고, 일반적인 시스템 태스크(task)(예를 들어, 메모리 관리, 저장 장치 제어, 전력 관리 등)를 제어 및 관리하는 다양한 소프트웨어 구성요소 및/또는 장치를 포함하고, 다양한 하드웨어와 소프트웨어 구성요소 사이의 통신을 촉진시킨다. 그래픽 모듈은 디스플레이 장치 상에 그래픽을 제공하고 표시하기 위한 주지의 여러 소프트웨어 구성요소를 포함한다. "그래픽(graphics)"이란 용어는 텍스트, 웹 페이지, 아이콘(예컨대, 소프트 키를 포함하는 사용자 인터페이스 대상), 디지털 이미지, 비디오, 애니메이션 등을 제한 없이 포함하여, 사용자에게 표시될 수 있는 모든 대상을 포함한다. 메모리에 저장되는 프로그램에 따라 하나 이상의 프로세서는 이하의 도면을 참조하여 설명하는 동작을 수행한다. 바람직하게, 프로그램은 스마트 컨트랙트일 수 있다.The processor is a processor configured to perform an operation related to the
통신 회로는 무선 또는 유선 통신을 수행할 수 있다. 통신 회로는 전기 신호를 전자파로 또는 그 반대로 변환하며 이 전자파를 통하여 통신 네트워크, 다른 이동형 게이트웨이 및 통신 장치와 통신할 수 있다. 통신 회로는 예를 들어 안테나 시스템, RF 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 처리기, CODEC 칩셋, 가입자 식별 모듈(subscriber identity module, SIM) 카드, 메모리 등을 포함하지만 이에 한정되지 않는 이러한 기능을 수행하기 위한 주지의 회로를 포함할 수 있다. 통신 회로는 월드 와이드 웹(World Wide Web, WWW)으로 불리는 인터넷, 인트라넷과 네트워크 및/또는, 셀룰러 전화 네트워크, 무선 LAN 및/또는 MAN(metropolitan area network)와 같은 무선 네트워크, 그리고 근거리 무선 통신에 의하여 다른 장치와 통신할 수 있다. 무선 통신은 GSM(Global System for Mobile Communication), EDGE(Enhanced Data GSM Environment), WCDMA(wideband code division multiple access), CDMA(code division multiple access), TDMA(time division multiple access), VoIP(voice over Internet Protocol), Wi-MAX, 블루투스(Bluetooth), 지그비(zigbee), 엔에프씨(NFC:Near Field Communication) 또는 본 출원의 출원 시점에 아직 개발되지 않은 통신 프로토콜을 포함하는 기타 다른 적절한 통신 프로토콜을 포함하지만 이에 한정되지 않는 복수의 통신 표준, 프로토콜 및 기술 중 어느 것을 이용할 수 있다.The communication circuit can perform wireless or wired communication. The communication circuit converts electrical signals into electromagnetic waves and vice versa, through which they can communicate with communication networks, other mobile gateways and communication devices. Communication circuits include, but are not limited to, antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, CODEC chipsets, subscriber identity module (SIM) cards, memory, etc. A well-known circuit for performing this function may be included. The communication circuit is by means of the Internet, intranet and network and/or wireless network such as cellular telephone network, wireless LAN and/or metropolitan area network (MAN), and short-range wireless communication called the World Wide Web (WWW). Can communicate with other devices. Wireless communication includes Global System for Mobile Communication (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (WCDMA), code division multiple access (CDMA), time division multiple access (TDMA), voice over Internet (VoIP). Protocol), Wi-MAX, Bluetooth, Zigbee, Near Field Communication (NFC), or any other suitable communication protocol, including communication protocols not yet developed at the time of filing of this application. Any of a plurality of communication standards, protocols, and technologies that are not limited thereto may be used.
도 3은 본 발명의 일 실시예에 따른 블록체인 네트워크에서 온라인 게시글의 분쟁 해결을 위한 데이터를 처리하는 과정을 설명하는 도면이다. 3 is a diagram illustrating a process of processing data for dispute resolution of online postings in a blockchain network according to an embodiment of the present invention.
도 3에 도시된 바와 같이, 대표 노드(121)는 공개 블록으로 이루어지는 공개 블록체인과 비공개 블록으로 이루어지는 비공개 블록체인을 구성한다. 대표 노드(121)는 공개 블록의 생성시에 저장할 중요 데이터가 없더라도 비공개 블록을 동시에 생성하고, 비공개 블록의 해쉬값을 공개 블록의 헤더에 기록한다. 따라서, 다음 공개 블록의 헤더에는 이전 공개 블록의 해쉬값과 이전 비공개 블록의 해쉬값이 연관된다. 대표 노드(121)는 비공개 블록에 대해 랜덤 암호화 키를 생성하고 그 랜덤 암호화 키를 이용하여 비공개 블록을 암호화한 후, 그 랜덤 암호화 키를 분할하여 분할된 조각을 다른 대표 노드(121)들에게 분산하여 저장한다. As shown in FIG. 3, the
도 3을 참조하면, 대표 노드(121)는, 공개 블록 #1 및 비공개 블록 #1을 생성할 때, 웹 서버(110)로부터 게시글의 저장을 위한 트랜잭션을 수신할 수 있다. 대표 노드(121)는, 비공개 블록 #1에 게시글(310)을 저장하고, 공개 블록 #1에는 해당 게시글의 처리에 관한 결과(예, 작성자, 게시 시간, 제목 등)를 저장한다. 대표 노드(121)는 일정한 시간이 경과하면 랜덤 암호화 키를 생성하여 상기 비공개 블록 #1을 암호화하고, 그 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다.Referring to FIG. 3, when generating the
한편, 대표 노드(121)는 공개 블록 #N-M-1(N 및 M은 자연수이고 N>M) 및 비공개 블록 #N-M-1을 생성할 때, 웹 서버(110)로부터 상기 비공개 블록 #1에 저장된 온라인 게시글의 캡쳐 이미지와, 해당 온라인 게시글에 대해 삭제를 요청한 삭제 요청자에 의해 상기 캡쳐 이미지의 일부분이 모자이크 처리된 모자이크 처리 이미지와, 상기 삭제 요청자에 의해 첨부된 삭제 이유 정보를 포함하는 트랜잭션을 수신하여 비공개 블록 #N-M-1에 저장한다. 도 3에서 비공개 블록 #N-M-1에서 참조번호 320이 상기 캡쳐 이미지이고, 참조번호 330이 상기 모자이크 처리 이미지이며, 참조번호 340이 상기 삭제 이유 정보이다. 트랜잭션은 웹 서버(110)의 개인키를 이용한 서명값을 포함한다. 대표 노드(121)는 해당 트랜잭션의 처리 결과를 공개 블록 #N-M-1에 저장하여, 해당 트랜잭션이 비공개 블록 #N-M-1에 저장된 것을 알 수 있도록 한다. 대표 노드(121)는 일정한 시간이 경과하면 랜덤 암호화 키를 생성하여 상기 비공개 블록 #N-M-1을 암호화하고, 그 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다.Meanwhile, the
대표 노드(121)는, 공개 블록 #N-M 및 비공개 블록 #N-M을 생성할 때, 웹 서버(110)로부터 분쟁 대상인 상기 온라인 게시글의 최초 작성자에 의해 작성된 해당 게시글의 유지 이유를 포함하는 트랜잭션을 수신하고, 그 트랜잭션을 비공개 블록 #N-M에 저장한다. 도 3에서 참조번호 350이 상기 유지 이유이다. 대표 노드(121)는, 일정한 시간이 경과하면 비공개 블록 #N-M을 암호화하기 위한 랜덤 암호화 키를 새로 생성하여 상기 비공개 블록 #N-M을 암호화하고, 그 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다.When generating the public block #NM and the private block #NM, the
도 3을 참조하면, 대표 노드(121)는 공개 블록 #N 및 비공개 블록 #N을 생성할 때, 비공개 블록 #N-M에 저장된 데이터 중 상기 최초 작성자에 의해 작성된 게시글의 유지 이유(350)에 대한 삭제 및 추가에 관한 수정 트랜잭션(Modify transaction)을 수신한다. 수정 트랜잭션도 마찬가지로 트랜잭션을 발생시킨 주체, 즉 웹 서버(110)의 서명값을 포함한다. 대표 노드(121)는, 비공개 블록 #N-M을 복사하여 메모리에 임시 로드한 후, 다른 대표 노드(121)들로부터 그 비공개 블록 #N-M을 복호화할 수 있는 랜덤 암호화 키의 분할 조각들을 수신한다. 마찬가지로 상기 서명값에 대한 검증 성공시에 분할 조각이 수신된다. 대표 노드(121)는, 수신된 분할 조각을 이용하여 메모리에 임시 로드한 비공개 블록 #N-M을 복호화한 후 그 복호화된 비공개 블록 #N-M에 저장된 데이터 중 삭제 요청된 데이터(350)를 삭제하고 추가 요청된 데이터(360)를 추가한 후, 그 비공개 블록 #N-M을 복사하여 자식(child) 비공개 블록 #N-M을 생성한다. 그리고 대표 노드(121)는, 상기 메모리에 임시 로드된 비공개 블록 #N-M을 삭제하고, 그 비공개 블록 #N-M에 대한 랜덤 암호화 키의 분할 조각의 삭제 요청을 다른 대표 노드(121)들로 전송한다. 따라서, 비공개 블록 #N-M에 대해서는 복호화를 위한 랜덤 암호화 키를 생성할 수 없으므로, 비공개 블록 #N-M은 원천적으로 삭제된 것과 같이 된다. 한편, 대표 노드(121)는 상기 자식 비공개 블록 #N-M에 대한 랜덤 암호화 키를 생성하여 그 자식 비공개 블록 #N-M을 암호화하고, 그 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다. 상기 수정 트랜잭션은 공개 블록 #N 및 비공개 블록 #N이 생성될 때 발생하였으므로, 대표 노드(121)는 상기 수정 트랜잭션은 공개 블록 #N에 기록하고, 자식 비공개 블록 #N-M의 해쉬값은 비공개 블록 #N에 기록한다. 따라서, 공개 블록 #N의 헤더에는 이전 공개 블록 #N-1의 해쉬값, 비공개 블록 #N의 해쉬값, 그리고 자식 비공개 블록 #N-M의 해쉬값이 연관된다. Referring to FIG. 3, when the
대표 노드(121)는, 공개 블록 #N+1 및 비공개 블록 #N+1을 생성할 때, 상기 분쟁 대상의 온라인 게시글의 최종 삭제 결정에 따라 비공개 블록 #1에 저장된 원본 게시글(310) 및 비공개 블록 #N-M-1에 저장된 캡쳐 이미지의 삭제를 위한 삭제 트랜잭션을 웹 서버(110)로부터 수신한다. 해당 삭제 트랜잭션은 삭제를 요청하는 주체, 즉 웹 서버(110)의 개인키를 이용한 서명값을 포함한다. The
대표 노드(121)는, 비공개 블록 #1을 복사하여 메모리에 임시 로드(load)한 후, 다른 대표 노드들로부터 그 비공개 블록 #1을 복호화할 수 있는 랜덤 암호화 키의 분할 조각들을 수신한다. 마찬가지로, 대표 노드(121)는, 비공개 블록 #N-M-1을 복사하여 메모리에 임시 로드(load)한 후, 다른 대표 노드들로부터 그 비공개 블록 #N-M-1을 복호화할 수 있는 랜덤 암호화 키의 분할 조각들을 수신한다. 이때, 대표 노드(121)는, 분할 조각을 다른 대표 노드들로 요청할 때 상기 서명값을 함께 전송하고 상기 다른 대표 노드들에서 상기 서명값의 검증 성공시에 상기 다른 대표 노드들로부터 분할 조각을 수신한다. 이로써, 해킹 등에 의한 중요 데이터의 삭제를 방지할 수 있다. The
대표 노드(121)는, 수신된 분할 조각을 이용하여 메모리에 임시 로드한 비공개 블록 #1 및 비공개 블록 #N-M-1을 복호화한 후 그 복호화된 비공개 블록 #1에 저장된 원본 게시글(310)과 비공개 블록 #N-M-1에 저장된 캡쳐 이미지(320)를 삭제하고, 원본 게시글(310)이 삭제된 상기 복호화된 비공개 블록 #1을 복사하여 자식(child) 비공개 블록 #1을 생성하고, 또한 캡쳐 이미지(320)가 삭제된 상기 복호화된 비공개 블록 #N-M-1을 복사하여 자식(child) 비공개 블록 #N-M-1을 생성한다. 그리고 대표 노드(121)는, 상기 메모리에 임시 로드된 비공개 블록 #1 및 비공개 블록 #N-M-1을 삭제하고, 그 비공개 블록 #1 및 #N-M-1 각각의 랜덤 암호화 키의 분할 조각의 삭제 요청을 다른 대표 노드(121)들로 전송한다. 따라서, 비공개 블록 #1 및 #N-M-1 각각에 대해서는 복호화를 위한 랜덤 암호화 키를 생성할 수 없으므로, 비공개 블록 #1 및 #N-M-1은 원천적으로 삭제된 것과 같이 된다. 따라서 비공개 블록체인에서 원본 게시글 및 원본 게시글의 캡쳐 이미지는 복구가 불가능하다. The
한편, 대표 노드(121)는 상기 자식 비공개 블록 #1 및 #N-M-1 각각에 대한 랜덤 암호화 키를 생성하여 그 자식 비공개 블록 #1 및 #N-M-1을 각각 암호화하고, 그 각 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장한다. 상기 삭제 트랜잭션은 공개 블록 #N+1 및 비공개 블록 #N+1이 생성될 때 발생하였으므로, 대표 노드(121)는 상기 삭제 트랜잭션은 공개 블록 #N+1에 기록하고, 자식 비공개 블록 #1 및 #N-M-1 각각의 해쉬값은 비공개 블록 #N+1에 기록한다. 따라서, 공개 블록 #N+1의 헤더에는 이전 공개 블록 #N의 해쉬값, 비공개 블록 #N+1의 해쉬값, 그리고 자식 비공개 블록 #1 및 #N-M-1 각각의 해쉬값이 연관된다. 이와 같이 게시글에 대한 분쟁이 해결되어 상기 삭제 트랜잭션이 수신되면, 원본 게시글 및 이의 캡쳐 이미지는 비공개 블록에서 원천적으로 복구가 불가능하게 되어 비공개 상태가 된다. 만약 게시글에 대한 분쟁이 해결되지 않으면, 삭제 요청자에 의해 입력된 원본 게시글 및 이의 캡쳐 이미지, 모자이크 처리 이미지 및 삭제 이유 그리고 최초 작성자에 의해 작성된 유지 이유는 비공개 블록에 그대로 저장되어 추후 법적 분쟁 발생시 증거 자료로 활용될 수 있다. Meanwhile, the
도 3을 참조한 실시예에서는, 원본 게시글의 캡쳐 이미지, 모자이크 처리된 이미지, 삭제 이유가 비공개 블록에 저장되고, 이후 원본 게시들의 삭제가 결정되면, 해당 데이터와 원본 게시글을 함께 삭제하는 것을 설명하지만, 여기에 제한되는 것은 아니다. 원본 게시글의 캡쳐 이미지, 모자이크 처리된 이미지, 삭제 이유가 비공개 블록에 저장되기 전에, 최초 작성자가 임의로 원본 게시글을 삭제할 수 있고, 또는 삭제 요청자의 요청에 따라 원본 게시글을 삭제할 수 있으며, 이 경우 비공개 블록에서 원본 게시글만이 삭제된다. In the embodiment with reference to FIG. 3, the captured image of the original post, the mosaic-processed image, and the reason for deletion are stored in a private block, and when the deletion of the original posts is determined, the corresponding data and the original post are deleted together. It is not limited to this. Before the captured image of the original post, the mosaic-processed image, and the reason for deletion are stored in the private block, the original author may delete the original post at will, or at the request of the deletion requester, the original post may be deleted. In this case, the private block Only the original post is deleted.
도 4는 본 발명의 일 실시예에 따른 삭제 요청자의 입력 데이터를 블록체인에 저장하는 방법을 설명하는 흐름도이다.4 is a flowchart illustrating a method of storing input data of a deletion requester in a blockchain according to an embodiment of the present invention.
도 4를 참조하면, 단계 S401에서, 웹 서버(110)는, 웹 사이트에 게시되는 게시글들 중에 일부 게시글에 대한 삭제 요청을 삭제 요청자의 단말(130)로부터 수신한다. 삭제 요청자는 최초 작성자 이외 다른 사용자이다. 단계 S402에서, 웹 서버(110)는 상기 삭제 요청에 대한 응답으로, 해당 게시글을 캡쳐하여 캡쳐 이미지를 생성하고 해당 게시글을 임시 잠금 처리한다.Referring to FIG. 4, in step S401, the
단계 S403에서, 웹 서버(110)는, 상기 캡쳐 이미지와 모자이크 입력 폼을 삭제 요청자의 단말(130)로 제공하고, 단계 S404 및 단계 S405에서 웹 서버(110)는, 모자이크 입력 폼을 통해 삭제 요청자로부터 상기 캡쳐 이미지에서 삭제가 필요한 부분에 대한 모자이크 처리 입력을 수신하여 상기 캡쳐 이미지의 일부분이 모자이크 처리된 모자이크 처리 이미지를 생성한다. In step S403, the
단계 S406에서, 웹 서버(110)는, 삭제 요청자의 단말(130)로 삭제 이유를 입력할 수 있는 입력 폼을 제공하고, 단계 S407에서 웹 서버(110)는 삭제 요청자로부터 구체적인 삭제 이유 및 증거를 포함하는 삭제 이유 정보를 수신한다. 단계 S408에서, 웹 서버(110)는, 상기 캡쳐 이미지와, 상기 모자이크 처리 이미지와, 상기 삭제 이유 정보를 포함하는 트랜잭션을 블록체인 네트워크(120)의 제 1 대표 노드로 전송한다.In step S406, the
단계 S409에서, 제 1 대표 노드는 상기 웹 서버(110)로부터 수신된 트랜잭션을 비공개 블록에 저장한다. 그리고 단계 S410에서, 제 1 대표 노드는 해당 비공개 블록을 암호화하기 위한 랜덤 암호화 키를 생성하고 랜덤 암호화 키로 상기 비공개 블록을 암호화한다. 단계 S411에서 제 1 대표 노드는 랜덤 암호화 키를 분할하고, 단계 S412에서 분할 조각들을 다른 대표 노드들로 전송하여 분산 저장한다. In step S409, the first representative node stores the transaction received from the
한편, 제1 대표 노드(121)는, 상기 트랜잭션의 처리 결과를 비공개 블록과 동시에 생성된 공개 블록에 저장한다. 여기서 처리 결과는, 트랜잭션의 ID, 게시글의 정보, 트랜잭션의 처리 시간 등을 포함할 수 있다. 또한 제 1 대표 노드(121)는 상기 생성한 비공개 블록에 이전 비공개 블록의 해시값을 기록하고, 상기 비공개 블록과 동시에 생성한 공개 블록에는 이전 공개 블록의 해시값과 상기 생성한 비공개 블록의 해시값을 기록한다. 따라서, 생성한 공개 블록/비공개 블록과 이전의 공개 블록/비공개 블록은 상호 연관된다.Meanwhile, the first
도 5는 본 발명의 일 실시예에 따른 분쟁 대상의 온라인 게시글에 대한 투표 과정을 설명하는 흐름도이다. 5 is a flowchart illustrating a voting process for an online post of a dispute object according to an embodiment of the present invention.
상기 도 4를 참조하여 설명한 바와 같이 특정 온라인 게시글에 대해 삭제 요청이 수신되면, 단계 S501에서, 웹 서버(110)는 해당 게시글을 작성한 최초 작성자의 단말(130)로 삭제 요청자로부터 수신된 삭제 이유 정보를 전송하여 삭제할 것인지를 문의한다. As described with reference to FIG. 4, when a deletion request is received for a specific online post, in step S501, the
단계 S502 및 단계 S503에서, 웹 서버(110)는, 최초 작성자의 단말(130)로부터 상기 문의에 대한 응답을 수신하여 최초 작성자가 게시글의 삭제에 동의하였는지를 확인한다. 최초 작성자가 게시글의 삭제에 동의하고 삭제한 경우, 단계 S504에서 웹 서버(110)는 블록체인 네트워크(120)로 해당 게시글에 대한 캡쳐 이미지의 삭제를 위한 트랜잭션을 생성하여 블록체인 네트워크(120)로 전송한다. 이후의 블록체인 네트워크(120)의 동작은 이하에서 도 6을 참조하여 자세히 설명한다.In steps S502 and S503, the
단계 S503에서 확인한 결과, 최초 작성자가 게시글의 삭제를 거부한 경우, 단계 S505에서 웹 서버(110)는, 최초 작성자의 단말(130)로 해당 게시글의 유지에 대한 이유를 입력할 수 있는 입력 폼을 제공하고 단계 S506에서 그 입력 폼을 통해 유지 이유를 수신한다. As a result of checking in step S503, if the first author rejects the deletion of the post, in step S505, the
단계 S507에서, 웹 서버(110)는, 수신된 유지 이유를 포함하는 트랜잭션을 블록체인 네트워크(120)의 제 1 대표 노드로 전송한다. 단계 S508에서, 제 1 대표 노드는 상기 웹 서버(110)로부터 수신된 트랜잭션을 비공개 블록에 저장한다. 그리고 단계 S509에서, 제 1 대표 노드는 해당 비공개 블록을 암호화하기 위한 랜덤 암호화 키를 생성하고 랜덤 암호화 키로 상기 비공개 블록을 암호화한다. 단계 S510에서 제 1 대표 노드는 랜덤 암호화 키를 분할하고, 단계 S511에서 분할 조각들을 다른 대표 노드들로 전송하여 분산 저장한다. 제1 대표 노드(121)는, 상기 트랜잭션의 처리 결과를 비공개 블록과 동시에 생성된 공개 블록에 저장한다. 여기서 처리 결과는, 트랜잭션의 ID, 게시글의 정보, 트랜잭션의 처리 시간 등을 포함할 수 있다. 또한 제 1 대표 노드(121)는 상기 생성한 비공개 블록에 이전 비공개 블록의 해시값을 기록하고, 상기 비공개 블록과 동시에 생성한 공개 블록에는 이전 공개 블록의 해시값과 상기 생성한 비공개 블록의 해시값을 기록한다. 따라서, 생성한 공개 블록/비공개 블록과 이전의 공개 블록/비공개 블록은 상호 연관된다.In step S507, the
한편, 단계 S513에서, 웹 서버(110)는, 최초 작성자가 삭제를 거부한 게시글에 대한 투표를 수행한다. 웹 서버(110)는, 삭제 요청자에 의해 생성된 모자이크 처리 이미지와 최초 작성자의 유지 이유를 포함하는 토론 방을 개설하고, 불특정 사용자들을 대상으로 일정한 기간 동안 해당 게시글의 삭제 여부에 대한 투표를 시작한다. On the other hand, in step S513, the
투표 기간이 경과하면, 단계 S514에서 웹 서버(110)는, 투표 결과를 확인한다. 투표 결과가 삭제로 결정된 경우, 단계 S503에서 웹 서버(110)는, 잠금 처리 되어 있는 해당 게시글을 삭제하고, 또한 해당 게시글에 대한 캡쳐 이미지의 삭제를 위한 트랜잭션을 생성하여 블록체인 네트워크(120)로 전송한다. 이 과정은 이하에서 도 6을 참조하여 자세히 설명한다.When the voting period has elapsed, the
투표 결과가 유지로 결정된 경우, 단계 S515에서 웹 서버(110)는, 잠금 처리 되어 있는 해당 게시글을 다시 원 상태로 복구하여 온라인 상에 공개한다. 추후 해당 게시글로 인한 법률적 분쟁이 발생할 경우, 블록체인 네트워크(120)에 저장된 데이터들은 증거 자료로서 사용될 수 있다. 웹 서버(110)는, 투표에 참여한 사용자들에게는 소정의 포인트를 지급할 수 있다. 여기서 포인트는 전자 화폐일 수 있다.If the voting result is determined to be maintained, in step S515, the
도 6은 본 발명의 일 실시예에 따른 비공개 블록에서 캡쳐 이미지를 삭제하는 방법을 설명하는 흐름도이다. 6 is a flowchart illustrating a method of deleting a captured image from a private block according to an embodiment of the present invention.
도 6을 참조하면, 단계 S601에서, 제 1 대표 노드(121)는 특정 비공개 블록에 저장된 캡쳐 이미지에 대한 삭제 트랜잭션을 수신한다. 제 1 대표 노드(121)는, 수신된 삭제 트랜잭션은 해당 트랜잭션이 수신된 시점에서 생성하는 공개 블록에 기록한다. 삭제 트랜잭션에는 삭제을 요청한 주체인 웹 서버(110)의 개인키를 이용한 서명값이 포함된다. 6, in step S601, the first
단계 S602에서, 제 1 대표 노드(121)는, 삭제 트랜잭션에 포함된 정보를 이용하여 특정 비공개 블록을 검색한다. 예를 들어, 게시글의 번호, 저장 시간, 트랜잭션의 ID 등을 이용하여 검색할 수 있다. 제 1 대표 노드(121)는, 공개 블록에 기록되어 있는 데이터별 비공개 블록의 인덱스를 참조하여 삭제 대상의 데이터를 저장하고 있는 비공개 블록을 검색할 수 있다. In step S602, the first
단계 S603에서, 제 1 대표 노드(121)는, 검색된 상기 특정 비공개 블록을 복사하여 메모리에 임시 로드하고, 단계 S604에서, 제 1 대표 노드(121)는 다른 대표 노드들로 그 특정 비공개 블록을 복호화할 수 있는 랜덤 암호화 키의 분할 조각들을 요청하여 수신한다. 이때, 다른 대표 노드들은 제 1 대표 노드(121)의 무결성을 검증한다. 제 1 대표 노드(121)는, 분할 조각을 다른 대표 노드들로 요청할 때 상기 서명값을 함께 전송하고 상기 다른 대표 노드들에서 상기 서명값의 검증 성공시에 상기 다른 대표 노드들로부터 분할 조각을 수신한다.In step S603, the first
단계 S605에서, 제 1 대표 노드(121)는, 수신된 분할 조각을 이용하여 메모리에 임시 로드한 상기 특정 비공개 블록을 복호화하고, 단계 S606에서, 그 복호화된 특정 비공개 블록에 저장된 데이터 중 게시글의 캡쳐 이미지를 삭제한다. In step S605, the first
단계 S607에서, 제 1 대표 노드(121)는, 게시글의 켭채 이미지가 삭제된 상기 복호화된 특정 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성한다. 그리고 단계 S608에서, 제 1 대표 노드(121)는, 임시 로드된 상기 특정 비공개 블록을 삭제하고, 단계 S609에서, 그 특정 비공개 블록에 대한 랜덤 암호화 키의 분할 조각의 삭제 요청을 다른 대표 노드들로 전송한다. 따라서, 상기 특정 비공개 블록에 대해서는 복호화를 위한 랜덤 암호화 키를 생성할 수 없으므로, 상기 특정 비공개 블록은 원천적으로 삭제된 것과 같이 된다. In step S607, the first
단계 S610에서, 제 1 대표 노드(121)는 상기 자식 비공개 블록에 대한 랜덤 암호화 키를 생성하여 그 자식 비공개 블록을 암호화하고, 단계 S611에서, 그 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 대표 노드들로 분산하여 저장한다. In step S610, the first
단계 S612에서, 제 1 대표 노드(121)는, 자식 비공개 블록의 해쉬값을 현재 생성되는 비공개 블록에 기록한다. 따라서, 현재 생성되는 공개 블록의 헤더에는 이전 공개 블록의 해쉬값, 현재 생성되는 비공개 블록의 해쉬값, 그리고 상기 자식 비공개 블록의 해쉬값이 연관된다. In step S612, the first
도 6을 참조한 실시예에서는, 캡쳐 이미지의 삭제에 대해서만 설명하였으나, 비공개 블록에 저장된 원본 게시글의 삭제도 도 6을 참조하여 설명한 캡쳐 이미지의 삭제 방법과 동일한 방식으로 삭제된다. In the embodiment with reference to FIG. 6, only the deletion of the captured image has been described, but the deletion of the original post stored in the private block is also deleted in the same manner as the method of deleting the captured image described with reference to FIG. 6.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다. 상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.The above description is merely illustrative of the technical idea of the present invention, and those of ordinary skill in the art to which the present invention pertains will be able to make various modifications and variations without departing from the essential characteristics of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention, but to explain the technical idea, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be construed by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention. The method of the present invention as described above may be implemented as a program and stored in a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.) in a form that can be read by a computer. This process can be easily performed by a person of ordinary skill in the art to which the present invention pertains, and thus will not be described in detail.
110 : 웹 서버
120 : 블록체인 네트워크
121 : 대표 노드
122 : 일반 노드
130 : 사용자 단말
150 : 인터넷망
210 : 공개 블록
220 : 비공개 블록110: web server
120: Blockchain network
121: representative node
122: normal node
130: user terminal
150: Internet network
210: public block
220: private block
Claims (11)
다른 노드 장치들과 통신하고, 사용자에 의해 작성된 게시글을 온라인상에 공개하는 웹 서버와 통신하는 통신 회로;
하나 이상의 프로세서; 및
상기 하나 이상의 프로세서에 의해 실행 가능한 인스트럭션을 저장하는 메모리를 포함하고,
상기 하나 이상의 프로세서는,
공개 블록체인과 비공개 블록체인을 각각 독립적으로 생성하고, 상기 웹 서버로부터 상기 게시글을 포함하는 제 1 트랜잭션을 수신하여 상기 비공개 블록체인의 비공개 블록에 저장하며, 상기 제 1 트랜잭션에 대한 처리 결과를 상기 공개 블록체인의 공개 블록에 저장하고,
제 1 랜덤 암호화 키를 생성하여 상기 제 1 트랜잭션이 저장된 비공개 블록을 암호화하고, 상기 제 1 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하며,
상기 게시글의 삭제 결정에 따라 상기 비공개 블록에 저장된 상기 게시글의 삭제를 위한 제 2 트랜잭션을 상기 웹 서버로부터 수신시, 상기 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 상기 분할 조각들을 수신하여 복호화하고 그 복호화된 비공개 블록에 저장된 상기 게시글을 삭제하고, 상기 게시글이 삭제된 상기 복호화된 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하며,
상기 메모리에 임시 로드된 비공개 블록을 삭제하고, 다른 노드 장치들로 상기 분할 조각들의 삭제를 요청하며, 제 2 랜덤 암호화 키를 생성하여 상기 자식 비공개 블록을 암호화하고, 상기 제 2 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 노드 장치.In the node device of a block chain network comprising a plurality of node devices,
A communication circuit that communicates with other node devices and communicates with a web server that publishes a post written by a user online;
One or more processors; And
Including a memory for storing instructions executable by the one or more processors,
The one or more processors,
Each independently creates a public blockchain and a private blockchain, receives a first transaction including the post from the web server and stores it in a private block of the private blockchain, and the processing result for the first transaction is stored in the Stored in a public block of a public blockchain,
Generates a first random encryption key to encrypt the private block in which the first transaction is stored, divides the first random encryption key by a predetermined number, and distributes and stores the divided fragments to other node devices,
When a second transaction for deleting the post stored in the private block is received from the web server according to the decision to delete the post, the private block is copied and temporarily loaded into memory, and the divided pieces are removed from other node devices. It receives and decrypts, deletes the post stored in the decrypted private block, and creates a child private block by copying the decrypted private block from which the post has been deleted,
Delete the private block temporarily loaded in the memory, request deletion of the divided fragments from other node devices, generate a second random encryption key to encrypt the child private block, and set the second random encryption key A node device that divides by the number of and distributes and stores the divided pieces to other node devices.
상기 하나 이상의 프로세서는,
상기 공개 블록체인의 공개 블록 생성시 상기 비공개 블록체인의 비공개 블록을 동시에 생성하며, 상기 공개 블록의 헤더에 동시에 생성된 비공개 블록의 해쉬값 및 이전 공개 블록의 해쉬값을 기록하는 것을 특징으로 하는 노드 장치.The method of claim 1,
The one or more processors,
A node, characterized in that when the public block of the public block chain is created, a private block of the private block chain is simultaneously generated, and a hash value of the simultaneously generated private block and a hash value of a previous public block are recorded in the header of the public block. Device.
상기 하나 이상의 프로세서는,
상기 비공개 블록체인의 비공개 블록 생성시 해당 비공개 블록의 헤더에 이전 비공개 블록의 해쉬값을 기록하는 것을 특징으로 하는 노드 장치.The method of claim 2,
The one or more processors,
When generating a private block of the private block chain, a hash value of a previous private block is recorded in a header of the corresponding private block.
상기 하나 이상의 프로세서는,
상기 제 2 트랜잭션을 상기 공개 블록체인의 공개 블록에 기록하고,
상기 자식 비공개 블록의 해쉬값을 상기 제 2 트랜잭션을 기록한 공개 블록과 함께 동시에 생성된 비공개 블록의 헤더에 기록하는 것을 특징으로 하는 노드 장치.The method of claim 1,
The one or more processors,
Record the second transaction in a public block of the public blockchain,
And recording the hash value of the child private block in the header of the private block generated simultaneously with the public block recording the second transaction.
상기 하나 이상의 프로세서는,
상기 제 2 트랜잭션을 공개 블록에 기록시, 상기 제 1 트랜잭션을 저장한 비공개 블록과 그 비공개 블록으로부터 생성된 자식 비공개 블록의 인덱스 정보를 함께 공개 블록에 기록하는 것을 특징으로 하는 노드 장치.The method of claim 4,
The one or more processors,
When recording the second transaction in the public block, the private block storing the first transaction and index information of the child private block generated from the private block are recorded together in the public block.
상기 제 2 트랜잭션은,
개인키를 이용한 서명값을 포함하고,
상기 하나 이상의 프로세서는,
상기 제 1 랜덤 암호화 키의 분할 조각을 다른 노드 장치들로 요청할 때 상기 서명값을 함께 전송하고 상기 다른 노드 장치들에서 상기 서명값의 검증 성공시에 상기 다른 노드 장치들로부터 상기 제 1 랜덤 암호화 키의 분할 조각을 수신하는 것을 특징으로 하는 노드 장치.The method of claim 1,
The second transaction,
Includes a signature value using a private key,
The one or more processors,
When requesting a split piece of the first random encryption key to other node devices, the signature value is transmitted together, and the first random encryption key from the other node devices when the signature value is successfully verified by the other node devices. Node device, characterized in that receiving the divided pieces of.
상기 복수의 노드 장치는, 복수의 대표 노드 장치와 복수의 일반 노드 장치를 포함하고, 복수의 대표 노드 장치는 지분 증명에 의해 블록을 생성하여 블록을 동기화하고, 일반 노드 장치는 대표 노드 장치들의 블록들을 동기화하여 저장하며,
상기 블록체인 네트워크의 노드 장치는, 대표 노드 장치인 것을 특징으로 하는 노드 장치.The method of claim 1,
The plurality of node devices include a plurality of representative node devices and a plurality of general node devices, and the plurality of representative node devices synchronize blocks by generating blocks by proof of stake, and the general node device is a block of representative node devices. Synchronize and store them,
The node device of the block chain network is a node device, characterized in that the representative node device.
상기 하나 이상의 프로세서는,
상기 게시글의 삭제를 요청하는 삭제 요청자에 의해 생성된 상기 게시글의 캡쳐 이미지와, 상기 삭제 요청자에 의해 상기 캡쳐 이미지의 일부분이 모자이크 처리된 모자이크 처리 이미지와, 상기 삭제 요청자에 의해 첨부된 삭제 이유 정보를 포함하는 제 3 트랜잭션을 상기 웹 서버로부터 수신하여 상기 비공개 블록체인의 다른 비공개 블록에 저장하고, 상기 제 3 트랜잭션에 대한 처리 결과를 상기 공개 블록체인의 다른 공개 블록에 저장하며,
제 3 랜덤 암호화 키를 생성하여 상기 제 3 트랜잭션이 저장된 상기 다른 비공개 블록을 암호화하고, 상기 제 3 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하며,
상기 게시글의 최종 삭제 결정에 따라 상기 캡쳐 이미지의 삭제를 위한 제 4 트랜잭션을 상기 웹 서버로부터 수신시, 상기 제 3 트랜잭션이 저장된 상기 다른 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 분할 조각들을 수신하여 복호화하고 그 복호화된 다른 비공개 블록에 저장된 상기 캡쳐 이미지를 삭제하고, 상기 캡쳐 이미지가 삭제된 상기 복호화된 다른 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하며,
상기 메모리에 임시 로드된 다른 비공개 블록을 삭제하고, 다른 노드 장치들로 분할 조각들의 삭제를 요청하며, 제 4 랜덤 암호화 키를 생성하여 상기 다른 비공개 블록으로부터 생성된 자식 비공개 블록을 암호화하고, 상기 제 4 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 노드 장치.The method of claim 1,
The one or more processors,
A captured image of the post created by a deletion requester requesting the deletion of the post, a mosaic-processed image in which a portion of the captured image has been mosaic-processed by the deletion requester, and information about the reason for deletion attached by the deletion requester. Receiving a third transaction including from the web server and storing it in another private block of the private blockchain, and storing the processing result of the third transaction in another public block of the public blockchain,
Generates a third random encryption key to encrypt the other private block in which the third transaction is stored, divides the third random encryption key by a predetermined number, and distributes and stores the divided fragments to other node devices,
When a fourth transaction for deleting the captured image is received from the web server according to the final deletion decision of the post, the other private block in which the third transaction is stored is copied and temporarily loaded into memory, and then from other node devices. Receive and decode the divided fragments, delete the captured image stored in the other decoded private block, and create a child private block by copying the other decoded private block from which the captured image has been deleted,
Delete another private block temporarily loaded in the memory, request deletion of divided fragments to other node devices, generate a fourth random encryption key to encrypt a child private block generated from the other private block, and 4 A node device that divides the random encryption key into a predetermined number and distributes and stores the divided pieces to other node devices.
상기 하나 이상의 프로세서는,
상기 게시글의 유지 결정에 따라 상기 게시글의 최초 작성자에 의해 작성된 유지 이유 정보를 포함하는 제 4 트랜잭션을 상기 웹 서버로부터 수신시, 상기 제 4 트랜잭션을 새로운 비공개 블록에 저장하고, 제 5 랜덤 암호화 키를 생성하여 상기 새로운 비공개 블록을 암호화하고, 상기 제 5 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 것을 특징으로 하는 노드 장치.The method of claim 8,
The one or more processors,
When a fourth transaction including maintenance reason information written by the first author of the post is received from the web server according to the decision to maintain the post, the fourth transaction is stored in a new private block, and a fifth random encryption key is Generating and encrypting the new private block, dividing the fifth random encryption key by a predetermined number, and distributing and storing the divided fragments to other node devices.
상기 최종 삭제 결정 및 상기 유지 결정은,
상기 게시글에 대한 불특정 사용자들의 투표 결과로 결정되는 것을 특징으로 하는 노드 장치. The method of claim 9,
The final deletion decision and the maintenance decision,
Node device, characterized in that it is determined as a result of voting by unspecified users for the post.
사용자에 의해 작성된 게시글을 온라인상에 공개하는 웹 서버로부터, 상기 게시글을 포함하는 제 1 트랜잭션을 수신하여 비공개 블록체인의 비공개 블록에 저장하며, 상기 제 1 트랜잭션에 대한 처리 결과를 공개 블록체인의 공개 블록에 저장하는 단계;
제 1 랜덤 암호화 키를 생성하여 상기 제 1 트랜잭션이 저장된 비공개 블록을 암호화하고, 상기 제 1 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 단계;
상기 게시글의 삭제 결정에 따라 상기 비공개 블록에 저장된 상기 게시글의 삭제를 위한 제 2 트랜잭션을 상기 웹 서버로부터 수신시, 상기 비공개 블록을 복사하여 메모리에 임시 로드한 후 다른 노드 장치들로부터 상기 분할 조각들을 수신하여 복호화하고 그 복호화된 비공개 블록에 저장된 상기 게시글을 삭제하고, 상기 게시글이 삭제된 상기 복호화된 비공개 블록을 복사하여 자식(child) 비공개 블록을 생성하는 단계; 및
상기 메모리에 임시 로드된 비공개 블록을 삭제하고, 다른 노드 장치들로 상기 분할 조각들의 삭제를 요청하며, 제 2 랜덤 암호화 키를 생성하여 상기 자식 비공개 블록을 암호화하고, 상기 제 2 랜덤 암호화 키를 소정의 개수로 분할하여 분할 조각들을 다른 노드 장치들로 분산하여 저장하는 단계를 포함하는 동작 방법.A method of operating a node device of a block chain network comprising a plurality of node devices,
From a web server that publishes a post written by a user online, a first transaction including the post is received and stored in a private block of a private blockchain, and the processing result of the first transaction is disclosed in the public blockchain. Storing in a block;
Generating a first random encryption key to encrypt the private block in which the first transaction is stored, dividing the first random encryption key by a predetermined number, and distributing and storing the divided pieces to other node devices;
When a second transaction for deleting the post stored in the private block is received from the web server according to the decision to delete the post, the private block is copied and temporarily loaded into memory, and the divided pieces are removed from other node devices. Receiving and decoding the post and deleting the post stored in the decrypted private block, and creating a child private block by copying the decrypted private block from which the post has been deleted; And
Delete the private block temporarily loaded in the memory, request deletion of the divided fragments from other node devices, generate a second random encryption key to encrypt the child private block, and set the second random encryption key The operation method comprising the step of dividing by the number of and distributing and storing the divided pieces to other node devices.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190146290A KR102274493B1 (en) | 2019-11-15 | 2019-11-15 | Node device constituting a block-chain network and an operation method of the node device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190146290A KR102274493B1 (en) | 2019-11-15 | 2019-11-15 | Node device constituting a block-chain network and an operation method of the node device |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210059182A true KR20210059182A (en) | 2021-05-25 |
KR102274493B1 KR102274493B1 (en) | 2021-07-07 |
Family
ID=76145517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190146290A KR102274493B1 (en) | 2019-11-15 | 2019-11-15 | Node device constituting a block-chain network and an operation method of the node device |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102274493B1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190036948A (en) * | 2017-09-28 | 2019-04-05 | 주식회사 케이티 | System and Method for Managing Original Data in Block-Chain |
KR101984254B1 (en) * | 2018-09-21 | 2019-05-30 | 김성완 | Node device constituting a block-chain network and an operation method of the node device |
KR20190097623A (en) * | 2018-02-12 | 2019-08-21 | 박성배 | Node device, operation method baed on block chain and system for processing data |
KR102026225B1 (en) * | 2017-01-19 | 2019-09-27 | 주식회사 케이티 | Apparatus for managing data using block chain and method thereof |
-
2019
- 2019-11-15 KR KR1020190146290A patent/KR102274493B1/en active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102026225B1 (en) * | 2017-01-19 | 2019-09-27 | 주식회사 케이티 | Apparatus for managing data using block chain and method thereof |
KR20190036948A (en) * | 2017-09-28 | 2019-04-05 | 주식회사 케이티 | System and Method for Managing Original Data in Block-Chain |
KR20190097623A (en) * | 2018-02-12 | 2019-08-21 | 박성배 | Node device, operation method baed on block chain and system for processing data |
KR101984254B1 (en) * | 2018-09-21 | 2019-05-30 | 김성완 | Node device constituting a block-chain network and an operation method of the node device |
Also Published As
Publication number | Publication date |
---|---|
KR102274493B1 (en) | 2021-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110462621B (en) | Managing sensitive data elements in a blockchain network | |
US11176226B2 (en) | Secure messaging service with digital rights management using blockchain technology | |
US11238543B2 (en) | Payroll based blockchain identity | |
KR101984254B1 (en) | Node device constituting a block-chain network and an operation method of the node device | |
EP3695339B1 (en) | Method and system for asynchronous traceable data sharing in a communication network | |
CN110720204B (en) | Block chain storage method, storage medium and system based on shared secret | |
KR102248270B1 (en) | Node device constituting a block-chain network and an operation method of the node device | |
KR102125042B1 (en) | Node device constituting a block-chain network and an operation method of the node device | |
Tackmann | Secure event tickets on a blockchain | |
KR101993293B1 (en) | System and method for processing expense data based on blockchain and computer program for the same | |
JP2022511393A (en) | Privacy protection supported by blockchain MaaS (Mobility as a Service) | |
US11663595B1 (en) | Blockchain transactional identity verification | |
US11347877B2 (en) | Methods and systems for facilitating sharing of digital documents between a sharing party and a relying party | |
US20210029121A1 (en) | System for selective mapping of distributed resources across network edge framework for authorized user access | |
JP7462903B2 (en) | User terminal, authenticator terminal, registrant terminal, management system and program | |
Hameed | Blockchain and Cryptocurrencies Technology: a survey | |
KR102083757B1 (en) | Node device constituting a block-chain network and an operation method of the node device | |
US20220303121A1 (en) | Blockchain data segregation | |
US20230308276A1 (en) | Creating non-fungible token shards | |
KR102274493B1 (en) | Node device constituting a block-chain network and an operation method of the node device | |
US20230179424A1 (en) | Compressible blockchains | |
US20220399988A1 (en) | Linking blockchain operations | |
KR102051454B1 (en) | A decision-making system using blockchains by verifying conditions | |
Ratnawat et al. | Optimizing the KYC Process using a Blockchain based approach | |
Antoni et al. | Use of Blockchain for Designing Digital Documents in Public Services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |