KR102500497B1 - Apparatus for performing access control based on blockchain and method thereof - Google Patents
Apparatus for performing access control based on blockchain and method thereof Download PDFInfo
- Publication number
- KR102500497B1 KR102500497B1 KR1020180028187A KR20180028187A KR102500497B1 KR 102500497 B1 KR102500497 B1 KR 102500497B1 KR 1020180028187 A KR1020180028187 A KR 1020180028187A KR 20180028187 A KR20180028187 A KR 20180028187A KR 102500497 B1 KR102500497 B1 KR 102500497B1
- Authority
- KR
- South Korea
- Prior art keywords
- blockchain
- data
- access
- access control
- control device
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1042—Peer-to-peer [P2P] networks using topology management mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Abstract
블록체인 기반의 접근 제어 장치가 제공된다. 상기 접근 제어 장치는, 프로세서, 네트워크 인터페이스, 메모리 및 상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 적어도 하나의 프로그램을 포함하되, 상기 적어도 하나의 프로그램은, 접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작, 상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각이 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함할 수 있다.A blockchain-based access control device is provided. The access control device includes a processor, a network interface, a memory, and at least one program loaded into the memory and executed by the processor, wherein the at least one program is a control target given an access restriction period. After an operation of generating a first data fragment and a second data fragment based on data, an operation of recording the first data fragment on a first blockchain, and the lapse of the access restriction period, the second data fragment is It may include instructions for performing an operation to be recorded on the first blockchain.
Description
본 발명은 블록체인 기반의 접근 제어 장치 및 그 동작 방법에 관한 것이다. 보다 자세하게는, 블록체인을 이용하여 제어 대상 데이터에 대한 무결성을 보장함과 동시에, 다수의 사용자에 대하여 상기 제어 대상 데이터에 대한 접근을 제어하는 장치 및 그 장치의 동작 방법에 관한 것이다.The present invention relates to a block chain-based access control device and its operating method. More specifically, it relates to a device for controlling access to control target data for a plurality of users while guaranteeing the integrity of control target data using a blockchain and an operating method of the device.
블록체인(blockchain)은 지속적으로 증가하는 데이터를 특정 단위의 블록에 기록하고, P2P(peer-to-peer) 네트워크를 구성하는 각각의 노드들이 상기 블록을 체인 형태의 자료 구조로 관리하는 데이터 관리 기술 또는 상기 체인 형태의 자료 구조로 구성된 데이터 그 자체를 의미한다. 이때, 체인 형태의 자료 구조로 구성된 블록체인은, 중앙 시스템 없이 각각의 노드에서 분산 원장(distributed ledger) 형태로 운영된다.Blockchain is a data management technology in which continuously increasing data is recorded in a block of a specific unit, and each node constituting a P2P (peer-to-peer) network manages the block in a chain-type data structure. Alternatively, it means the data itself composed of the chain-type data structure. At this time, the blockchain composed of a chain-type data structure is operated in the form of a distributed ledger in each node without a central system.
블록체인 네트워크를 구성하는 각각의 블록체인 노드는 도 1에 도시된 바와 같은 체인 형태의 자료 구조로 블록들을 관리한다. 여기서, 각 블록에는 이전 블록에 대한 해시 값이 기록되며, 상기 해시 값을 통해 이전 블록이 참조될 수 있다. 따라서, 블록이 쌓일수록 블록 내에 기록된 데이터의 위변조는 어려워지고, 데이터의 신뢰도는 향상되며, 분산된 환경에서도 데이터의 무결성(integrity)이 보장될 수 있다.Each blockchain node constituting the blockchain network manages blocks in a chain-type data structure as shown in FIG. Here, the hash value of the previous block is recorded in each block, and the previous block can be referred to through the hash value. Therefore, as blocks are piled up, forgery and falsification of data recorded in the block becomes difficult, reliability of data is improved, and integrity of data can be guaranteed even in a distributed environment.
한편, 블록체인 기반 시스템에서 블록체인 상에 기록된 모든 데이터는 모든 블록체인 노드에 분산되어 저장되기 때문에, 일정 기간(e.g. 비밀 유지 기간) 동안 특정 사용자가 해당 데이터를 열람하지 못하도록 강제하는 것은 불가능하다. 다시 말하면, 블록체인 상에 기록된 데이터는 블록체인을 이용하는 모든 사용자에게 조회될 수 있기 때문에, 일정 기간 동안 해당 데이터에 대한 사용자의 접근을 제한하는 것은 불가능하다.On the other hand, since all data recorded on the blockchain in a blockchain-based system is distributed and stored in all blockchain nodes, it is impossible to force certain users to not view the data for a certain period of time (e.g. confidentiality period). . In other words, since data recorded on the blockchain can be viewed by all users using the blockchain, it is impossible to restrict users' access to the data for a certain period of time.
물론, 해당 데이터를 암호화하여 블록체인 상에 기록함으로써, 다른 사용자에 대한 접근을 제한하는 방법이 있으나, 상기 방법은 블록체인 상에 해당 데이터를 기록하기 전에 암호화를 수행하고, 데이터를 읽어올 때 복호화를 수행하는 등의 번거로운 작업을 야기한다. 또한, 해당 데이터의 비밀 유지 기간이 경과된 경우, 암호화 키를 분배하거나, 암호화를 해제한 뒤에 다시 블록체인 상에 기록해야 하는 등의 추가 작업이 요구되는 문제가 있다. 뿐만 아니라, 상기 방법에는 암호화 키의 관리 문제와 컴퓨팅 기술의 발전에 따라 암호화 기술의 안정성이 떨어지는 문제도 존재한다.Of course, there is a method of restricting access to other users by encrypting the data and recording it on the blockchain, but this method encrypts the data before recording it on the blockchain and decrypts it when reading the data. causes cumbersome tasks such as performing In addition, when the confidentiality period of the data has elapsed, there is a problem in that additional work is required, such as distributing an encryption key or recording it on a blockchain again after decryption. In addition, the above method also has problems with the management of encryption keys and the decrease in stability of encryption technology with the development of computing technology.
이에 따라, 블록체인 환경에서 일정 기간 동안 접근 제한이 요구되는 데이터에 대하여, 효율적으로 접근 제어를 수행할 수 있는 방법이 요구된다.Accordingly, a method for efficiently controlling access to data requiring access restriction for a certain period of time in a blockchain environment is required.
본 발명이 해결하고자 하는 기술적 과제는, 블록체인 환경에서 접근 제한 기간이 주어진 제어 대상 데이터에 대한 접근 제어를 수행하는 장치 및 그 장치의 동작 방법을 제공하는 것이다.A technical problem to be solved by the present invention is to provide a device for controlling access to control target data given an access restriction period in a blockchain environment and a method of operating the device.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the description below.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 블록체인 기반의 접근 제어 장치는, 프로세서, 네트워크 인터페이스, 메모리 및 상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 적어도 하나의 프로그램을 포함하되, 상기 적어도 하나의 프로그램은, 접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작, 상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각이 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함할 수 있다. 이때, 상기 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성 가능할 수 있다.In order to solve the above technical problem, a block chain-based access control device according to an embodiment of the present invention is loaded into a processor, a network interface, a memory, and the memory, and at least one of the processors executed by the processor. A program, wherein the at least one program generates a first data fragment and a second data fragment based on control subject data given an access restriction period, and records the first data fragment on a first blockchain and, after the access restriction period has elapsed, instructions for performing an operation to process the second data piece to be recorded on the first block chain. In this case, the control target data may be regenerated based on the first data piece and the second data piece.
일 실시예에서, 상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작은, 기 설정된 규칙에 따라 상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작을 포함하고, 상기 제1 블록체인 상에 기록되도록 처리하는 동작은, 상기 제2 데이터 조각 및 상기 기 설정된 규칙을 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 포함할 수 있다.In one embodiment, the operation of generating the first data piece and the second data piece includes an operation of generating the first data piece and the second data piece according to a preset rule, and The operation of processing to be recorded on may include an operation of processing to record the second data piece and the preset rule on the first blockchain.
일 실시예에서, 상기 적어도 하나의 프로그램은, 상기 제어 대상 데이터에 대한 위변조 방지 정보를 생성하는 동작 및 상기 위변조 방지 정보를 상기 제1 블록체인 상에 기록하는 동작을 수행하도록 하는 인스트럭션들을 더 포함할 수 있다.일 실시예에서, 상기 제1 블록체인 상에 기록되도록 처리하는 동작은, 상기 제2 데이터 조각을 제2 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간의 경과 판정에 응답하여 실행되는 스마트 컨트랙트(smart contract)를 상기 제2 블록체인 상에 등록하는 동작을 포함할 수 있다. 이때, 상기 스마트 컨트랙트는, 상기 제2 블록체인 상에 기록된 상기 제2 데이터 조각을 상기 제1 블록체인 상에 기록되도록 처리하는 루틴(routine)을 포함할 수 있다.In one embodiment, the at least one program may further include instructions for performing an operation of generating anti-forgery information for the control target data and an operation of recording the anti-forgery information on the first blockchain. In one embodiment, the operation of processing to be recorded on the first block chain is executed in response to the operation of recording the second data piece on the second block chain and the determination of the lapse of the access restriction period. It may include an operation of registering a smart contract on the second blockchain. At this time, the smart contract may include a routine for processing the second data piece recorded on the second blockchain to be recorded on the first blockchain.
상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 블록체인 기반의 접근 제어 장치는, 프로세서, 네트워크 인터페이스, 메모리 및 상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 적어도 하나의 프로그램을 포함할 수 있다. 상기 적어도 하나의 프로그램은, 접근 제한 기간이 주어진 제어 대상 데이터를 제1 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간이 지난 이후에, 상기 제어 대상 데이터가 제2 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함할 수 있다.A block chain-based access control device according to another embodiment of the present invention for solving the above technical problem is a processor, a network interface, a memory, and at least one of a processor, a network interface, a memory, and loaded into the memory, and executed by the processor. program can be included. The at least one program records the data subject to control given an access restriction period on the first block chain, and after the access restriction period has passed, the control subject data is recorded on the second block chain. It may contain instructions for performing an operation.
일 실시예에서, 상기 제1 블록체인은 특정 접근 권한이 있는 사용자의 접근만이 허용되도록 구현되고, 상기 제2 블록체인은 상기 특정 접근 권한이 없는 사용자의 접근이 허용되도록 구현될 수 있다.In one embodiment, the first block chain may be implemented such that only access by users having specific access rights is allowed, and the second blockchain may be implemented such that access by users without the specific access rights is allowed.
일 실시예에서, 상기 제1 블록체인은 프라이빗 블록체인 네트워크(private blockchain network)에서 구현되고, 상기 제2 블록체인은 퍼블릭 블록체인 네트워크(public blockchain network)에서 구현될 수 있다.In one embodiment, the first blockchain may be implemented in a private blockchain network, and the second blockchain may be implemented in a public blockchain network.
일 실시예에서, 상기 제2 블록체인 상에 기록되도록 처리하는 동작은, 상기 접근 제한 기간의 경과 판정에 응답하여 실행되는 스마트 컨트랙트(smart contract)를 상기 제1 블록체인 상에 등록하는 동작을 포함할 수 있다. 이때, 상기 스마트 컨트랙트는, 상기 제1 블록체인 상에 기록된 상기 제어 대상 데이터를 상기 제2 블록체인 상에 기록되도록 처리하는 루틴(routine)을 포함할 수 있다.In one embodiment, the operation of processing to be recorded on the second blockchain includes an operation of registering a smart contract executed in response to the determination of the lapse of the access restriction period on the first blockchain. can do. At this time, the smart contract may include a routine for processing the control target data recorded on the first blockchain to be recorded on the second blockchain.
일 실시예에서, 상기 제어 대상 데이터는 원본 제어 대상 데이터를 기초로 생성된 제1 데이터 조각 및 제2 데이터 조각 중 상기 제1 데이터 조각을 포함하고, 상기 적어도 하나의 프로그램은, 상기 접근 제한 기간이 지나기 전에, 상기 제2 데이터 조각을 상기 제2 블록체인 상에 기록하는 동작을 수행하도록 하는 인스트럭션들을 더 포함할 수 있다. 이때, 상기 원본 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성 가능할 수 있다.In one embodiment, the control object data includes the first data piece of the first data piece and the second data piece generated based on the original control object data, and the at least one program, the access restriction period Before passing, it may further include instructions for performing an operation of recording the second piece of data on the second blockchain. In this case, the original control object data may be regenerated based on the first data piece and the second data piece.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 블록체인 기반의 접근 제어 방법은, 접근 제어 장치에 의해 수행되는 블록체인 기반의 접근 제어 방법에 있어서, 접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 단계, 상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 단계 및 상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각이 상기 제1 블록체인 상에 기록되도록 처리하는 단계를 포함할 수 있다. 이때, 상기 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성 가능할 수 있다.A blockchain-based access control method according to an embodiment of the present invention for solving the above-mentioned technical problem is a block-chain-based access control method performed by an access control device, in which an access restriction period is given to control target data Generating a first data piece and a second data piece based on, recording the first data piece on the first blockchain, and after the access restriction period has elapsed, the
상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 블록체인 기반의 접근 제어 방법은, 접근 제어 장치에 의해 수행되는 블록체인 기반의 접근 제어 방법에 있어서, 접근 제한 기간이 주어진 제어 대상 데이터를 제1 블록체인 상에 기록하는 단계 및 상기 접근 제한 기간이 지난 이후에, 상기 제어 대상 데이터가 제2 블록체인 상에 기록되도록 처리하는 단계를 포함할 수 있다.A blockchain-based access control method according to another embodiment of the present invention for solving the above-described technical problem is a block-chain-based access control method performed by an access control device, in which the access restriction period is given to control target data It may include the step of recording on the first block chain and the step of processing the data to be controlled so that it is recorded on the second block chain after the access restriction period has passed.
상술한 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 단계, 상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 단계 및 상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각을 상기 제1 블록체인 상에 기록되도록 처리하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장될 수 있다. 이때, 상기 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성될 수 있다.A computer program according to an embodiment of the present invention for solving the above technical problem is combined with a computing device, generating a first data piece and a second data piece based on control target data given an access restriction period , To a computer to execute the step of recording the first data piece on the first block chain and the step of processing the second data piece to be recorded on the first block chain after the access restriction period has passed. It can be stored on a readable recording medium. In this case, the control target data may be regenerated based on the first data piece and the second data piece.
상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 접근 제한 기간이 주어진 제어 대상 데이터를 제1 블록체인 상에 기록하는 단계 및 상기 접근 제한 기간이 지난 이후에, 상기 제어 대상 데이터가 제2 블록체인 상에 기록되도록 처리하는 단계를 실행시키기 위하여, 컴퓨터로 판독가능한 기록매체에 저장될 수 있다.A computer program according to another embodiment of the present invention for solving the above-described technical problem is combined with a computing device, recording control object data given an access restriction period on a first block chain, and the access restriction period After the past, in order to execute the step of processing the control target data to be recorded on the second block chain, it can be stored in a computer-readable recording medium.
도 1은 본 발명의 몇몇 실시예에서 참조될 수 있는 블록체인의 자료 구조를 나타내는 도면이다.
도 2는 본 발명의 몇몇 실시예들에 따른 접근 제어 방법이 수행될 수 있는 예시적인 시스템의 구성도이다.
도 3 및 도 4는 본 발명의 몇몇 실시예에서 참조될 수 있는 블록체인 네트워크의 구성을 설명하기 위한 도면이다.
도 5는 본 발명의 제1 실시예에 따른 블록체인 기반의 접근 제어 방법을 나타내는 흐름도이다.
도 6은 본 발명의 몇몇 실시예에서 참조될 수 있는 데이터 분할 방법의 예시도이다.
도 7은 본 발명의 몇몇 실시예에서 참조될 수 있는 위변조 방지 정보의 예시도이다.
도 8은 본 발명의 제1 실시예에 따른 블록체인 기반의 접근 제어 방법을 설명하기 위한 예시도이다.
도 9 및 도 10은 본 발명의 제2 실시예에 따른 블록체인 기반의 접근 제어 방법을 나타내는 흐름도이다.
도 11은 본 발명의 제1 활용예에 따른 접근 제어 방법을 설명하기 위한 예시도이다.
도 12는 본 발명의 제2 활용예에 따른 접근 제어 방법을 설명하기 위한 예시도이다.
도 13은 본 발명의 제3 활용예에 따른 접근 제어 방법을 설명하기 위한 예시도이다.
도 14는 본 발명의 일 실시예에 따른 블록체인 기반의 접근 제어 장치를 나타내는 블록도이다.
도 15는 본 발명의 일 실시예에 따른 블록체인 기반의 접근 제어 장치의 하드웨어 구성도이다.1 is a diagram showing the data structure of a block chain that can be referenced in some embodiments of the present invention.
2 is a configuration diagram of an exemplary system in which an access control method according to some embodiments of the present invention may be performed.
3 and 4 are diagrams for explaining the configuration of a blockchain network that can be referenced in some embodiments of the present invention.
5 is a flowchart illustrating a block chain-based access control method according to a first embodiment of the present invention.
6 is an exemplary diagram of a data partitioning method that may be referred to in some embodiments of the present invention.
7 is an exemplary diagram of forgery prevention information that may be referred to in some embodiments of the present invention.
8 is an exemplary diagram for explaining a block chain-based access control method according to the first embodiment of the present invention.
9 and 10 are flowcharts illustrating a block chain-based access control method according to a second embodiment of the present invention.
11 is an exemplary diagram for explaining an access control method according to a first utilization example of the present invention.
12 is an exemplary diagram for explaining an access control method according to a second utilization example of the present invention.
13 is an exemplary diagram for explaining an access control method according to a third utilization example of the present invention.
14 is a block diagram showing a block chain-based access control device according to an embodiment of the present invention.
15 is a hardware configuration diagram of a block chain-based access control device according to an embodiment of the present invention.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Advantages and features of the present invention, and methods of achieving them, will become clear with reference to the detailed description of the following embodiments taken in conjunction with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only these embodiments make the disclosure of the present invention complete, and common knowledge in the art to which the present invention belongs. It is provided to completely inform the person who has the scope of the invention, and the present invention is only defined by the scope of the claims.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.In adding reference numerals to components of each drawing, it should be noted that the same components have the same numerals as much as possible even if they are displayed on different drawings. In addition, in describing the present invention, if it is determined that a detailed description of a related known configuration or function may obscure the gist of the present invention, the detailed description will be omitted.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.Unless otherwise defined, all terms (including technical and scientific terms) used in this specification may be used in a meaning commonly understood by those of ordinary skill in the art to which the present invention belongs. In addition, terms defined in commonly used dictionaries are not interpreted ideally or excessively unless explicitly specifically defined. Terminology used herein is for describing the embodiments and is not intended to limit the present invention. In this specification, singular forms also include plural forms unless specifically stated otherwise in a phrase.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.Also, terms such as first, second, A, B, (a), and (b) may be used in describing the components of the present invention. These terms are only used to distinguish the component from other components, and the nature, order, or order of the corresponding component is not limited by the term. When an element is described as being “connected,” “coupled to,” or “connected” to another element, that element is directly connected or connectable to the other element, but there is another element between the elements. It will be understood that elements may be “connected”, “coupled” or “connected”.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.As used herein, "comprises" and/or "comprising" means that a stated component, step, operation, and/or element is the presence of one or more other components, steps, operations, and/or elements. or do not rule out additions.
본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.Prior to the description of this specification, some terms used in this specification will be clarified.
본 명세서에서, 블록체인 네트워크(blockchain network)란, 블록체인 알고리즘/프로토콜에 따라 동작하는 복수의 블록체인 노드로 구성된 P2P 구조의 네트워크를 의미한다.In this specification, a blockchain network refers to a P2P structured network composed of a plurality of blockchain nodes operating according to a blockchain algorithm/protocol.
본 명세서에서, 블록체인 노드란, 블록체인 네트워크를 구성하고 블록체인 알고리즘/프로토콜에 기초하여 블록체인을 유지하고 관리하는 컴퓨팅 노드를 의미한다. 상기 컴퓨팅 노드는 물리적 컴퓨팅 장치 또는 가상 머신(virtual machine)과 같이 논리적 컴퓨팅 장치로 구현될 수도 있다. 상기 컴퓨팅 노드가 가상 머신으로 구현되는 경우, 하나의 물리적 컴퓨팅 장치에 복수의 블록체인 노드가 포함될 수도 있다.In this specification, a blockchain node refers to a computing node that configures a blockchain network and maintains and manages a blockchain based on a blockchain algorithm/protocol. The computing node may be implemented as a logical computing device such as a physical computing device or a virtual machine. When the computing node is implemented as a virtual machine, a plurality of blockchain nodes may be included in one physical computing device.
본 명세서에서, 스마트 컨트랙트(smart contract)란, 블록체인 환경에서 각종 트랜잭션 처리에 이용되는 스크립트 또는 소프트웨어 코드를 의미한다. 보다 구체적으로, 상기 스마트 컨트랙트는 트랜잭션 처리에 이용되는 각종 조건, 상태, 상기 조건에 따른 행위를 프로그래밍 방식으로 작성한 코드로, 예를 들어, 이더리움의 스마트 컨트랙트, 하이퍼레져 패브릭(hyper ledger fabric)의 체인코드(chain code) 등을 포함할 수 있다. 블록체인 환경에서, 블록체인 노드는 블록체인 상에 등록된 스마트 컨트랙트를 공유한다.In this specification, a smart contract refers to a script or software code used for processing various transactions in a blockchain environment. More specifically, the smart contract is a code written programmatically for various conditions, states, and actions according to the conditions used in transaction processing. For example, a smart contract of Ethereum or a hyperledger fabric It may include chain code and the like. In a blockchain environment, blockchain nodes share smart contracts registered on the blockchain.
본 명세서에서, 데이터 조각은 원본 데이터의 일부분 또는 원본 데이터를 기초로 생성된 데이터의 일부분을 지칭한다. 따라서, 상기 데이터 조각이 원본 데이터 자체의 물리적인 일부분만을 지칭하는 것만은 아님에 유의한다. "조각"이라는 용어는 당해 기술 분야에서 청크(chunk), 세그먼트(segment), 부분(part) 등의 용어와 혼용되어 사용될 수 있다.In this specification, a piece of data refers to a part of original data or a part of data generated based on original data. Accordingly, it should be noted that the data fragment does not refer only to a physical part of the original data itself. The term "piece" may be used interchangeably with terms such as chunk, segment, and part in the art.
본 명세서에서, 인스트럭션(instruction)은 기능을 기준으로 묶인 일련의 명령어들로서 컴퓨터 프로그램의 구성 요소이자 프로세서에 의해 실행되는 것을 가리킨다.In this specification, an instruction refers to a component of a computer program and executed by a processor as a series of instructions grouped on the basis of function.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.Hereinafter, some embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 몇몇 실시예들에 따른 블록체인 기반 접근 제어 방법이 수행될 수 있는 예시적인 시스템의 구성도이다.2 is a block diagram of an exemplary system in which a blockchain-based access control method according to some embodiments of the present invention can be performed.
도 2를 참조하면, 상기 예시적인 시스템은 접근 제어 장치(100) 및 복수의 블록체인 노드로 구성된 블록체인 네트워크(200)를 포함할 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 2에 도시된 시스템을 구성하는 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다. 예를 들어, 접근 제어 장치(100)와 블록체인 네트워크(200)를 구성하는 적어도 하나의 블록체인 노드는 동일한 물리적 컴퓨팅 장치 내의 서로 다른 로직(logic)으로 구현될 수도 있다.Referring to FIG. 2 , the exemplary system may include an
상기 예시적인 시스템에서, 접근 제어 장치(100)는 제어 대상 데이터에 대한 접근 제어를 수행하는 컴퓨팅 장치이다. 여기서, 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능 및 통신 기능이 구비된 모든 종류의 장치를 포함할 수 있다.In the exemplary system, the
상기 제어 대상 데이터는 소정의 접근 제한 기간이 주어진 데이터를 의미한다. 예를 들어, 상기 제어 대상 데이터는 일정 기간 동안 비밀 유지가 요구되는 데이터일 수 있다. 본 발명의 몇몇 실시예들에 따르면, 상기 접근 제한 기간은 사용자별 및/또는 접근 권한별로 설정될 수 있다. 또한, 상기 접근 제한 기간은 접근 제한이 요구되는 두 시점 사이의 기간으로 설정될 수 있고, 접근 제한이 해제되는 특정 시점으로 설정될 수도 있다.The data subject to control refers to data given a predetermined access restriction period. For example, the data subject to control may be data required to be kept secret for a certain period of time. According to some embodiments of the present invention, the access restriction period may be set for each user and/or access authority. In addition, the access restriction period may be set to a period between two points in time at which access restrictions are required, or may be set to a specific point in time at which access restrictions are lifted.
본 발명의 실시예에 따르면, 접근 제어 장치(100)는 블록체인 기반 하에 상기 제어 대상 데이터에 대한 접근 제어를 수행한다. 이때, 제어 대상 데이터는 블록체인 상에 기록된다. 따라서, 본 실시예에 따르면, 접근 제한 기간 동안 제어 대상 데이터의 기밀성(confidentiality)이 보장됨과 동시에 제어 대상 데이터의 무결성(integrity) 또한 보장될 수 있다. 접근 제어 장치(100)에 의해 수행되는 접근 제어 방법에 대한 자세한 설명은 도 5 이하의 도면을 참조하여 상세하게 설명하도록 한다.According to an embodiment of the present invention, the
상기 예시적인 시스템에서, 블록체인 네트워크(200)는 복수의 블록체인 노드에 의해 구성되는 P2P(peer-to-peer) 네트워크이다. 이때, 상기 블록체인 노드는 블록체인 알고리즘(또는 프로토콜)에 따라 동작하는 노드이고, 블록체인 알고리즘에 의해 각각의 블록체인 노드는 동일한 블록체인 데이터를 유지한다.In the exemplary system above,
본 발명의 몇몇 실시예에 따르면, 블록체인 네트워크(200)는 복수의 블록체인을 유지할 수 있다. 이때, 제1 블록체인은 접근 권한이 있는 특정 사용자의 접근만이 허용되도록 구현된 블록체인이고, 제2 블록체인은 접근 권한과 관계없이 사용자의 접근이 허용되도록 구현된 블록체인일 수 있다. 이와 같은 경우, 접근 제어 장치(100)는 접근 제한 기간이 경과된 이후 상기 제1 블록체인 상에 기록된 제어 대상 데이터를 상기 제2 블록체인에 등록시킴으로써 제2 블록체인을 이용하는 다수의 사용자에 대한 접근 제어를 수행할 수 있다.According to some embodiments of the invention,
상기 복수의 블록체인을 구현하는 방식은 실시예에 따라 달라질 수 있다.A method of implementing the plurality of blockchains may vary depending on the embodiment.
예를 들어, 도 3에 도시된 바와 같이, 블록체인 네트워크(200)는 서로 다른 복수의 블록체인 네트워크(211, 213)로 구성되고, 각 블록체인 네트워크(211, 213)가 상호 독립된 블록체인을 유지하도록 구현될 수 있다.For example, as shown in FIG. 3, the
다른 예를 들어, 도 4에 도시된 바와 같이, 블록체인 네트워크(200)는 멀티 채널(multi-channel)로 운영되는 네트워크로 구성되고, 각각의 채널이 하나의 블록체인에 대응되도록 구현될 수 있다. 즉, 도 4에 도시된 예에서, 동일한 블록체인 네트워크(200)에서 제1 채널(221)에 소속된 블록체인 노드들이 제1 블록체인을 유지하고, 제2 채널(223)에 소속된 블록체인 노드들이 제2 블록체인을 유지하도록 구현될 수 있다.As another example, as shown in FIG. 4, the
다만, 상기 열거된 예시는 본 발명의 일부 실시예를 설명하기 위한 것으로, 본 발명의 범위가 상기 열거된 예시에 한정되는 것은 아니며, 복수의 블록체인은 얼마든지 다양한 방식으로 구현될 수 있다.However, the above-listed examples are for explaining some embodiments of the present invention, the scope of the present invention is not limited to the above-listed examples, and a plurality of blockchains can be implemented in various ways.
상기 예시적인 시스템에서, 사용자 단말(300)은 데이터를 블록체인에 등록하거나, 블록체인에 등록된 데이터를 조회하는 등의 용도로 사용자에 의해 이용되는 단말이다. 사용자 단말(300)은 어떠한 컴퓨팅 장치로 구현되더라도 무방하다.In the exemplary system, the
도 2에 도시된 시스템의 구성 요소는 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.Components of the system shown in FIG. 2 may communicate over a network. Here, the network is a local area network (LAN), a wide area network (Wide Area Network; WAN), a mobile communication network (mobile radio communication network), all types of wired / wireless networks such as Wibro (Wireless Broadband Internet) can be implemented
지금까지 도 2 내지 도 4를 참조하여 본 발명의 몇몇 실시예에 따른 접근 제어 방법이 수행될 수 있는 예시적인 시스템에 대하여 설명하였다. 이하에서는, 본 발명의 몇몇 실시예에 따른 접근 제어 방법에 대하여 도 5 내지 도 14를 참조하여 설명하도록 한다.So far, with reference to FIGS. 2 to 4, exemplary systems in which access control methods according to some embodiments of the present invention can be performed have been described. Hereinafter, an access control method according to some embodiments of the present invention will be described with reference to FIGS. 5 to 14.
이하에서 후술될 본 발명의 실시예들에 따른 블록체인 기반의 접근 제어 방법의 각 단계는, 컴퓨팅 장치에 의해 수행될 수 있다. 예를 들어, 상기 접근 제어 방법이 도 2에 도시된 환경에서 수행되는 경우, 상기 컴퓨팅 장치는 접근 제어 장치(100)일 수 있다. 다만, 설명의 편의를 위해, 상기 블록체인 기반의 접근 제어 방법에 포함되는 각 단계의 동작 주체는 그 기재가 생략될 수도 있다. 또한, 상기 접근 제어 방법의 각 단계는 메모리에 로드(load)되어 프로세서에 의해 실행되는 컴퓨터 프로그램의 인스트럭션으로 구현될 수 있다.Each step of the block chain-based access control method according to embodiments of the present invention, which will be described below, may be performed by a computing device. For example, when the access control method is performed in the environment shown in FIG. 2, the computing device may be the
먼저, 도 5 내지 도 8을 참조하여 본 발명의 제1 실시예에 따른 접근 제어 방법에 대하여 설명한다.First, the access control method according to the first embodiment of the present invention will be described with reference to FIGS. 5 to 8 .
도 5는 본 발명의 제1 실시예에 따른 접근 제어 방법을 나타내는 흐름도이다. 상기 제1 실시예에 따른 접근 제어 방법은 1개의 블록체인 기반 하에서 수행된다. 이하, 도 5를 참조하여 설명한다.5 is a flowchart illustrating an access control method according to a first embodiment of the present invention. The access control method according to the first embodiment is performed based on one blockchain. Hereinafter, description will be made with reference to FIG. 5 .
도 5를 참조하면, 상기 제1 실시예에 따른 접근 제어 방법은 사용자 단말(300)로부터 제어 대상 데이터의 등록 요청을 받는 단계(S10)에서 시작된다. 전술한 바와 같이, 상기 제어 대상 데이터는 소정의 접근 제한 기간이 주어진 데이터이다.Referring to FIG. 5 , the access control method according to the first embodiment starts at step S10 of receiving a registration request for control target data from the
일 실시예에서, 상기 접근 제한 기간은 사용자에 의해 설정될 수 있다.In one embodiment, the access restriction period may be set by the user.
다른 실시예에서, 상기 접근 제한 기간은 접근 제어 장치(100) 또는 다른 장치(e.g. 사용자 단말 300)에 의해 자동으로 설정될 수 있다. 예를 들어, 제어 대상 데이터의 중요도 등급에 기초하여 접근 제한 기간이 자동으로 설정될 수 있다. 다만, 접근 제한 기간이 설정되는 방식은 얼마든지 다른 방식으로 수행되더라도 무방하다.In another embodiment, the access restriction period may be automatically set by the
단계(S20)에서, 상기 등록 요청에 응답하여 제어 대상 데이터에 대한 등록 절차가 시작된다. 상기 등록 절차의 첫 단계(S20)로, 접근 제어 장치(100)는 기 설정된 분할 규칙에 따라 상기 제어 대상 데이터로부터 복수의 데이터 조각을 생성한다. 예를 들어, 접근 제어 장치(100)는 도 6에 도시된 바와 같이 제어 대상 데이터(241)에 지정된 분할 규칙(243)을 적용하여 복수의 데이터 조각(245, 247)를 생성할 수 있다. 이하에서는, 이해의 편의를 제공하기 위해, 분할 규칙에 따라 생성된 데이터 조각의 개수는 2개인 것으로 가정하여 설명을 이어가도록 한다. 다만, 데이터 조각의 개수에 의해 본 발명의 범위가 제한되는 것은 아니다.In step S20, in response to the registration request, a registration procedure for control target data starts. In the first step (S20) of the registration process, the
상기 분할 규칙은 다양한 종류의 규칙을 포함할 수 있다. 예를 들어, 도 6에 도시된 바와 같이 데이터 조각이 원본 데이터의 물리적인 일부분이 되도록 분할하는 제1 규칙, 원본 데이터를 압축하고 압축된 원본 데이터를 기초로 데이터를 분할하는 제2 규칙, 원본 데이터를 암호화하고 암호화된 원본 데이터를 기초로 데이터를 분할하는 제3 규칙 등을 포함할 수 있다. 이외에도, 상기 분할 규칙은 원본 데이터를 기초로 복수의 데이터 조각을 생성할 수 있는 모든 종류의 규칙을 포함할 수 있다. 또한, 상기 분할 규칙은 역으로 복수의 데이터 조각으로부터 해당 데이터를 재생성하는 규칙 또한 포함할 수 있다.The split rule may include various types of rules. For example, as shown in FIG. 6, a first rule for dividing data pieces into physical parts of the original data, a second rule for compressing the original data and dividing the data based on the compressed original data, and the original data It may include a third rule for encrypting and dividing the data based on the encrypted original data. In addition, the split rule may include all types of rules capable of generating a plurality of data pieces based on original data. In addition, the splitting rule may also include a rule for regenerating corresponding data from a plurality of pieces of data.
참고로, 상기 제2 규칙에 따라 데이터 조각이 생성되는 경우, 압축 과정에 따라 일정한 암호화 효과가 획득될 수 있다. 또한, 압축에 따른 데이터의 용량 감소로 인해, 블록체인 환경의 민감한 문제 중 하나인 저장소 용량 문제가 저감될 수 있다.For reference, when a data fragment is generated according to the second rule, a certain encryption effect may be obtained according to a compression process. In addition, due to the reduction in data capacity due to compression, the problem of storage capacity, which is one of the sensitive problems in the blockchain environment, can be reduced.
본 발명의 몇몇 실시예에 따르면, 제어 대상 데이터에 적용되는 분할 규칙은 상기 제어 대상 데이터의 중요도에 따라 달라질 수 있다. 예를 들어, 중요도 등급(e.g. 기밀 등급, 보안 등급 등)이 높은 제어 대상 데이터의 경우, 보다 강도 높은 분할 규칙이 적용될 수 있다. 여기서, "강도가 높다"는 것의 의미는 분할되는 데이터 조각의 개수를 늘리거나, 데이터 믹싱(mixing)/셔플링(shuffling) 등의 변화 처리, 압축/암호화 등의 추가적인 프로세싱을 더 수행함으로써, 데이터 분할/재생성의 난이도가 향상되는 것을 의미한다. 본 실시예에 따르면, 중요도가 높은 데이터에 대한 보안성이 더욱 향상될 수 있다.According to some embodiments of the present invention, the partitioning rule applied to control target data may vary according to the importance of the control target data. For example, in the case of controlled data having a high importance level (e.g. confidentiality level, security level, etc.), a stronger partitioning rule may be applied. Here, the meaning of "high strength" is to increase the number of divided data pieces or to perform additional processing such as data mixing/shuffling, compression/encryption, etc. This means that the difficulty of division/regeneration is improved. According to this embodiment, security of data with high importance can be further improved.
또한, 본 발명의 몇몇 실시예에 따르면, 접근 제어 장치(100)는 제어 대상 데이터에 대한 데이터 키(즉, 식별 값)를 생성할 수 있다. 본 실시예에서, 단계(S20)에서 생성된 데이터 조각에 상기 데이터 키에 매칭되어 블록체인(230) 상에 기록되고, 제어 대상 데이터를 조회하는 용도로 이용된다. 다만, 실시예에 따라, 데이터 키는 사용자 단말(300)로부터 제공받을 수도 있다.In addition, according to some embodiments of the present invention, the
또한, 본 발명의 몇몇 실시예에 따르면, 접근 제어 장치(100)는 제어 대상 데이터의 위변조를 방지하기 위한 정보를 생성할 수 있다. 상기 위변조 방지 정보는 전체 제어 대상 데이터에 대한 해시(hash) 값 및/또는 각 데이터 조각에 대한 해시 값 등으로 구성될 수 있으나, 제어 대상 데이터의 위변조를 검증할 수 있다면 어떠한 방식으로 구성되더라도 무방하다. 일 예로, 도 7에 도시된 바와 같이, 상기 위변조 방지 정보는 각 데이터 조각(251 내지 259)의 해시 값에 대한 머클 트리(merkle tree or hash tree)로 구성될 수 있다. 이를 통해, 제어 대상 데이터에 대한 무결성이 더욱 강화될 수 있다. 상기 머클 트리는 당해 기술 분야에서 이미 널리 알려진 개념인 바, 이에 대한 설명은 생략하도록 한다.In addition, according to some embodiments of the present invention, the
다시 도 5를 참조하면, 단계(S30)에서, 접근 제어 장치(100)는 먼저 일부 데이터 조각을 블록체인(230)에 등록한다. 예를 들어, 접근 제어 장치(100)는 데이터 키와 매칭하여 제1 데이터 조각 및 위변조 방지 정보를 블록체인(230) 상에 기록할 수 있다. 본 단계(S30)에서, 일부 데이터 조각이 먼저 블록체인(230)에 기록됨에 따라, 제어 대상 데이터의 등록 여부 및/또는 등록 시점이 보증될 수 있다.Referring back to FIG. 5 , in step S30 , the
단계(S40)에서, 접근 제어 장치(100)는 나머지 데이터 조각을 블록체인(230)에 등록한다. 예를 들어, 접근 제어 장치(100)는 데이터 키와 매칭하여 제2 데이터 조각 및 분할 규칙을 블록체인(230)에 기록할 수 있다.In step S40, the
본 단계(S40)는 제어 대상 데이터의 접근 제한 기간이 경과된 이후에 수행된다. 즉, 도 8에 도시된 바와 같이, 접근 제어 장치(100)는 제어 대상 데이터의 접근 제한 기간이 경과되었는지 여부를 판정하고, 경과 판정에 응답하여 본 단계(S40)를 수행한다. 따라서, 접근 제한 기간 동안 제어 대상 데이터의 일부 데이터가 블록체인의 사용자에게 노출되지 않고, 이로 인해 제어 대상 데이터에 대한 사용자의 접근이 제한될 수 있다.This step (S40) is performed after the access restriction period of the controlled data has elapsed. That is, as shown in FIG. 8, the
접근 제한 시간이 경과한 이후, 사용자 단말(300)로부터 해당 제어 대상 데이터에 대한 조회 요청이 수신되면, 데이터 재생성 절차가 수행될 수 있다. 구체적으로, 상기 데이터 재생성 절차에서, 블록체인 상에 기록된 모든 데이터 조각, 분할 규칙 및 위변조 방지 정보가 조회되고, 상기 분할 규칙에 기초하여 해당 제어 대상 데이터가 재생성되며, 상기 위변조 방지 정보에 기초하여 해당 제어 대상 데이터에 대한 검증이 수행될 수 있다. 또한, 재생성된 제어 대상 데이터가 상기 조회 요청에 대한 응답으로 제공될 수 있다. 상기와 같은 데이터 재생성 절차는 접근 제어 장치(100)에 의해 수행될 수 있으나, 다른 장치에서 수행되더라도 무방하다.After the access restriction time has elapsed, when a search request for corresponding control target data is received from the
한편, 도 8에서, 제1 시점(T1)에 제1 데이터 조각(261) 및 위변조 방지 정보(267)가 먼저 블록체인(230)에 등록되고, 접근 제한 기간 경과된 제2 시점(T2)에 제2 데이터 조각(263) 및 분할 규칙(265)은 등록되는 것으로 도시되었다. 그러나, 제1 시점(T1) 및 제2 시점(T2)에 등록되는 데이터의 종류 및 개수는 얼마든지 달라질 수 있다. 예컨대, 제1 시점(T1)에 제1 데이터 조각(261)만이 블록체인에 등록되고, 나머지 데이터(263 내지 267)는 제2 시점(T2)에 블록체인에 등록될 수도 있다.On the other hand, in FIG. 8, the
지금까지, 도 5 내지 도 8을 참조하여, 본 발명의 제1 실시예에 따른 접근 제어 방법에 대하여 설명하였다. 상술한 방법에 따르면, 일부 데이터를 블록체인에 등록하고 접근 제한 기간이 지난 이후의 시점에 나머지 데이터를 블록체인에 등록함으로써, 제어 대상 데이터의 등록 시점과 제어 대상 데이터의 무결성이 블록체인을 통해 보증될 수 있다. 아울러, 종래에는 기밀 유지 기간이 주어진 데이터라 하더라도 퍼블릭 기반 블록체인에 등록된 이후에는, 데이터 열람 등의 접근 행위를 방지하는 것이 불가능하였다. 그러나, 상술한 방법에 따르면, 분할된 일부 데이터를 기밀 유지 기간이 경과한 이후에 등록함으로써 퍼블릭 기반 블록체인 환경 하에서도 접근 제어가 수행될 수 있기 때문에, 기밀 유지 기간 동안 해당 데이터의 비밀성 또한 보장될 수 있다. 아울러, 별도의 접근 제어 리스트(access control list)를 관리할 필요가 없는 바 효율적인 접근 제어가 가능하다. 또한, 접근 제어를 위해 퍼블릭 기반의 블록체인을 프라이빗 기반의 블록체인으로 재구축할 필요가 없는 바, 재구축에 소요되는 인적 비용, 시간 비용 및 컴퓨팅 비용 등이 크게 절감될 수 있다.So far, the access control method according to the first embodiment of the present invention has been described with reference to FIGS. 5 to 8 . According to the method described above, by registering some data in the blockchain and registering the rest of the data in the blockchain after the access restriction period has passed, the registration time of the data to be controlled and the integrity of the data to be controlled are guaranteed through the blockchain. It can be. In addition, in the prior art, even for data given a confidentiality period, it was impossible to prevent access such as data viewing after being registered in a public-based blockchain. However, according to the method described above, since access control can be performed even in a public-based blockchain environment by registering some of the divided data after the confidentiality period has elapsed, confidentiality of the data is also guaranteed during the confidentiality period. It can be. In addition, since there is no need to manage a separate access control list, efficient access control is possible. In addition, since there is no need to rebuild a public-based blockchain into a private-based blockchain for access control, the human cost, time cost, and computing cost required for reconstruction can be greatly reduced.
이하에서는, 도 9 및 도 10을 참조하여 본 발명의 제2 실시예에 따른 접근 제어 방법에 대하여 설명하도록 한다. 이하, 도 9 이하의 도면을 참조하여 설명하며, 전술한 실시예와 동일한 내용에 대한 설명은 생략하도록 한다.Hereinafter, an access control method according to a second embodiment of the present invention will be described with reference to FIGS. 9 and 10 . Hereinafter, a description will be made with reference to the drawings below in FIG. 9, and descriptions of the same contents as those of the foregoing embodiment will be omitted.
도 9는 본 발명의 제2 실시예에 따른 접근 제어 방법을 나타내는 흐름도이다.9 is a flowchart illustrating an access control method according to a second embodiment of the present invention.
도 9에 도시된 바와 같이, 상기 제2 실시예에 따른 접근 제어 방법은 복수의 블록체인(271, 273) 기반 하에서 수행된다. 이때, 제1 블록체인(271)은 접근 권한이 없는 사용자(또는 접근 제한 기간이 지난 이후에 해당 데이터에 접근이 가능한 사용자)도 접근이 허용되도록 구현된 블록체인을 가리킨다. 예컨대, 제1 블록체인(271)은 사용자에 대한 접근 제어가 수행되지 않는 퍼블릭 블록체인 네트워크(public blockchain network)에서 구현될 수 있다. 제2 블록체인(273)은 접근 권한이 있는 사용자(또는 접근 제한 기간 동안에도 접근이 가능한 사용자)만이 접근할 수 있는 블록체인을 가리킨다. 예컨대, 제2 블록체인(273)은 특정 사용자에 대한 접근 제어가 허용되는 프라이빗 블록체인 네트워크(private blockchain network)에서 구현될 수 있다. 다만, 제1 블록체인(271) 및 제2 블록체인(271) 모두 프라이빗 블록체인 네트워크에서 구현될 수 있음은 물론이며, 이는 실시예에 따라 얼마든지 달라질 수 있는 것이다.As shown in FIG. 9, the access control method according to the second embodiment is performed based on a plurality of
구체적인 접근 제어 방법에 대하여 살펴보면, 상기 제2 실시예에 따른 접근 제어 방법 또한 제어 대상 데이터에 대한 등록 요청을 받는 단계(S100)에서 시작된다.Looking at the specific access control method, the access control method according to the second embodiment also starts at the step of receiving a registration request for control target data (S100).
단계(S110)에서, 접근 제어 장치(100)는 기 설정된 분할 규칙에 따라 접근 제어 대상 데이터를 기초로 복수의 데이터 조각을 생성한다. 본 단계(S110)에 대한 설명은 전술한 바와 동일하므로 생략하도록 한다.In step S110, the
단계(S120)에서, 접근 제어 장치(100)는 생성된 복수의 데이터 조각과 함께 데이터 키 등의 메타 정보를 제2 블록체인(273)에 등록한다. 제2 블록체인(273)은 접근 권한이 있는 사용자만이 접근할 수 있으므로, 모든 데이터가 등록되더라도 접근 권한이 없는 사용자에게 제어 대상 데이터가 노출되는 것은 아니다.In step S120, the
단계(S130)에서, 접근 제어 장치(100)는 일부 데이터 조각을 제1 블록체인(271)에 등록한다. 본 단계(S130)에서, 비록 일부 데이터 조각이 제1 블록체인(271) 상에 기록되더라도, 제어 대상 데이터의 재성성은 불가하기 때문에, 접근 권한이 없는 사용자에게 상기 제어 대상 데이터가 노출되는 것은 아니다.In step S130, the
단계(S140)에서, 접근 제한 기간이 경과한 이후에 접근 제어 장치(100)는 나머지 데이터 조각을 제1 블록체인(271)에 등록한다. 예를 들어, 접근 제어 장치(100)는 상기 제어 대상 데이터의 접근 제한 기간이 경과했는지 여부를 판정하고, 경과 판정에 응답하여 상기 나머지 데이터 조각을 제1 블록체인(271) 상에 기록할 수 있다. 이에 따라, 상기 제어 대상 데이터의 노출 시점이 접근 제한 기간이 경과한 이후의 시점으로 결정되는 바, 접근 제한 기간 동안 상기 제어 대상 데이터에 대한 접근 제어가 수행될 수 있다.In step S140, after the access restriction period has elapsed, the
한편, 본 발명의 다른 실시예에 따르면, 본 단계(S140)는 스마트 컨트랙트에 의해 수행될 수도 있다. 구체적으로, 도 10에 도시된 바와 같이, 접근 제어 장치(100)는 제2 블록체인(273)에 소정의 스마트 컨트랙트를 미리 등록한다. 상기 스마트 컨트랙트는 접근 제한 기간의 경과 판정에 응답하여 실행되고, 제2 블록체인(273) 상에 기록된 일부 데이터 조각을 제1 블록체인(271) 상에 기록되도록 처리하는 루틴(routine)을 포함하는 스마트 컨트랙트이다. 따라서, 접근 제한 기간이 경과하면 스마트 컨트랙트가 실행되고(S240), 상기 스마트 컨트랙트에 의해 나머지 데이터 조각이 제1 블록체인(270) 상에 기록될 수 있다(S250). 본 실시예에 따르면, 블록체인 상에 공유되는 스마트 컨트랙트를 이용하여 블록체인 상에서 해당 단계(S140)가 자동으로 수행된다. 따라서, 접근 제어 장치(100)의 부하가 감소되며, 트랜잭션 처리를 안전성을 보장하는 블록체인 기술을 통해 해당 단계(S140)의 안전한 처리가 보장될 수 있다. 또한, 제어 대상 데이터의 재생성에 요구되는 모든 데이터들(e.g. 데이터 조각들, 위변조 방지 정보, 분할 규칙)이 블록체인 상에 바로 기록되어 접근 제어 장치(100)가 상기 데이터들을 보관하고 있는 기간이 최소화되는 바, 제어 대상 데이터의 무결성 및 보안성이 더욱 향상될 수 있다.Meanwhile, according to another embodiment of the present invention, this step (S140) may be performed by a smart contract. Specifically, as shown in FIG. 10, the
참고로, 도 10에서, 상기 스마트 컨트랙트는 제2 블록체인(273)에 생성된 데이터 조각과 함께 제2 블록체인(273)에 등록되는 것으로 도시되었으나, 상기 스마트 컨트랙트가 제2 블록체인(273)에 등록되는 시점은 실시예에 따라 얼마든지 달라질 수 있다.For reference, in FIG. 10, the smart contract is shown as being registered in the
또한, 도 9 및 도 10에서, 복수의 데이터 조각을 생성하는 단계(S110, S210)는 실시예에 따라 생략될 수도 있다. 이와 같은 경우, 전체 제어 대상 데이터가 먼저 제2 블록체인(273)에 등록되고, 접근 제한 기간이 경과한 시점에 전체 제어 대상 데이터가 제1 블록체인(271)에 등록되도록 동작될 수 있다.Also, in FIGS. 9 and 10 , steps S110 and S210 of generating a plurality of pieces of data may be omitted according to embodiments. In this case, the entire control target data is first registered in the
지금까지, 도 9 및 도 10을 참조하여 본 발명의 제2 실시예에 따른 접근 제어 방법에 대하여 설명하였다. 상술한 방법에 따르면, 다수의 사용자가 이용하는 블록체인 상에 제어 대상 데이터가 등록되는 시점을 접근 제한 기간 동안 지연함으로써, 다수의 사용자에 대하여 효과적으로 접근 제어가 수행될 수 있다. 따라서, 종래와는 달리 접근 제어를 수행하기 위해 암호화와 같은 별도의 프로세싱이 수행될 필요가 없고, 접근 제어 리스트를 별도로 관리할 필요도 없는 바, 효율적으로 접근 제어가 수행될 수 있다. 또한, 종래와는 달리 제1 블록체인(271)이 퍼블릭 블록체인으로 구현되는 경우라도, 사용자에 대한 접근 제어가 수행될 수 있다.So far, the access control method according to the second embodiment of the present invention has been described with reference to FIGS. 9 and 10 . According to the above-described method, access control can be effectively performed for multiple users by delaying the point in time at which data subject to control is registered on the blockchain used by multiple users for an access restriction period. Therefore, unlike the prior art, there is no need to perform separate processing such as encryption to perform access control, and there is no need to separately manage an access control list, so access control can be efficiently performed. Also, unlike the prior art, even when the
이하에서는, 보다 이해의 편의를 제공하기 위해, 전술한 내용을 바탕으로 본 발명의 구체적인 활용예에 대하여 설명하도록 한다.Hereinafter, in order to provide more convenience of understanding, specific examples of application of the present invention will be described based on the foregoing.
먼저, 도 11을 참조하여 본 발명의 제1 활용예에 대하여 설명한다.First, with reference to FIG. 11, a first utilization example of the present invention will be described.
상기 제1 활용예에서, 제1 블록체인(281)은 모든 사용자(A, B)의 접근이 허용되도록 구현된 블록체인이다. 제1 블록체인(281)은 퍼블릭 블록체인 네트워크에서 구현될 수 있고, 프라이빗 블록체인 네트워크에서 모든 사용자(A, B)에 대한 접근을 허용하는 방식으로 구현될 수도 있다.In the first application example, the
제2 블록체인(283)은 접근 권한이 있는 특정 사용자(A)에 대한 접근만이 허용되도록 구현된 블록체인이다. 제2 블록체인(283)은 프라이빗 블록체인 네트워크에서 특정 사용자(A)에게만 접근 권한을 부여하는 방식으로 구현될 수 있다.The
제1 블록체인(281) 및 제2 블록체인(283)이 도 11에 도시된 바와 같이 구현되는 경우, 접근 권한이 있는 사용자(A)는 접근 제한 기간 동안에도 제2 블록체인(283)을 통해 제어 대상 데이터를 이용할 수 있다.When the
또한, 사용자(B)는 접근 제한 기간 동안 제어 대상 데이터에 접근할 수 없고, 전체 데이터(261 내지 267)가 제1 블록체인(281)에 등록된 이후에 제1 블록체인(281)을 통해 상기 제어 대상 데이터를 이용할 수 있다.In addition, user B cannot access control target data during the access restriction period, and after all
이와 같이, 상기 제1 활용예에 따르면, 블록체인(281, 283) 기반 하에서 사용자(A, B) 별(또는 접근 권한별)로 접근 제어가 수행될 수 있다. 예컨대, 사용자(A)가 제어 대상 데이터의 생성자 또는 등록자라면, 접근 제한 기간 동안 상기 생성자 또는 등록자만이 해당 데이터에 접근할 수 있고, 다른 사용자는 접근할 수 없도록 접근 제어가 수행될 수 있다.In this way, according to the first utilization example, access control can be performed for each user (A, B) (or for each access authority) based on the
다음으로, 도 12를 참조하여 본 발명의 제2 활용예에 대하여 설명한다.Next, a second utilization example of the present invention will be described with reference to FIG. 12 .
도 12에 도시된 바와 같이, 상기 제2 활용예에서, 4개 이상의 블록체인(291, 293, 295, 297)을 이용하여 접근 제어가 수행되고, 접근 권한별로 서로 다른 접근 제한 기간이 적용된다. 구체적으로, 제1 접근 권한이 있는 사용자(A)에게는 제1 접근 제한 기간이 적용되고, 제2 접근 권한이 있는 사용자(B)에게는 제2 접근 제한 기간이 적용되며, 접근 권한이 없는 사용자에게는 제3 접근 제한 기간이 적용된다. 또한, 제어 대상 데이터의 등록자는 접근 제한 기간에 관계 없이 상기 제어 대상 데이터에 대한 접근할 수 있도록 접근 제어가 수행된다.As shown in FIG. 12, in the second use case, access control is performed using four or
상기 제2 활용예에서, 제1 블록체인(291)은 모든 사용자에 대한 접근이 허용되도록 구현된 블록체인이다. 따라서, 제3 접근 제한 기간이 경과한 이후에 나머지 데이터(265, 267)가 제1 블록체인(291)에 등록되고, 상기 제3 접근 제한 기간이 경과한 이후에 제어 대상 데이터가 모든 사용자에게 노출된다. 전술한 바와 같이, 나머지 데이터(265, 267)의 등록은 접근 제어 장치(100)에 의해 직접 수행될 수 있고, 스마트 컨트랙트에 의해 수행될 수도 있다.In the second application example, the
제2 블록체인(293)은 특정 사용자(B)(또는 제2 접근 권한이 있는 사용자)만이 접근이 허용되도록 구현된 블록체인이다. 따라서, 제2 접근 제한 기간이 경과한 이후에 나머지 데이터(265, 267)가 제2 블록체인(293)에 등록된다. 도 12는 제4 블록체인(297) 상에 기록된 데이터(265, 267)가 제2 블록체인(293)에 등록된 것을 예로써 도시하고 있으나, 제3 블록체인(295) 상에 기록된 데이터(265, 267)가 제2 블록체인(295)에 등록되도록 동작할 수 있음은 물론이다.The
제3 블록체인(295)은 특정 사용자(A)(또는 제1 접근 권한이 있는 사용자)만이 접근이 허용되도록 구현된 블록체인이다. 따라서, 제1 접근 제한 기간이 경과한 이후에 나머지 데이터(265, 267)가 제3 블록체인(295)에 등록된다.The
제4 블록체인(297)은 상기 등록자만이 접근이 허용되도록 구현된 블록체인이다. 모든 데이터(261 내지 267)는 데이터 등록 시점에 제4 블록체인(297)에 등록되므로, 상기 등록자는 접근 제한 기간에 관계 없이 제어 대상 데이터를 이용할 수 있다.The
이와 같이, 상기 제2 활용예에 따르면, 접근 권한별(또는 사용자별)로 일부 데이터(265, 267)의 등록 시점을 지연시킴으로써, 접근 권한별(또는 사용자별)로 접근 제어가 수행될 수 있다. 종래에는 접근 권한별 및/또는 사용자별로 접근 제어를 수행하기 위해서는 복잡한 형태의 접근 제어 리스트를 유지하고 관리해야 하는 부담이 있었다. 그러나, 전술한 활용예들에 따르면, 별도의 접근 제어 리스트를 관리할 필요가 없는 바, 효율적으로 접근 제어가 수행될 수 있으며, 블록체인 환경 하에서도 사용자별 및/또는 접근 권한별로 복잡한 접근 제어 기능이 제공될 수 있다.In this way, according to the second utilization example, access control can be performed by access authority (or user) by delaying the registration time of some data (265, 267) by access authority (or user). . Conventionally, in order to perform access control by access authority and/or by user, there was a burden of maintaining and managing a complex type of access control list. However, according to the above-described applications, there is no need to manage a separate access control list, so access control can be efficiently performed, and complex access control functions for each user and/or access authority even in a blockchain environment. this can be provided.
다음으로, 도 13을 참조하여 본 발명의 제3 활용예에 대하여 설명한다.Next, a third utilization example of the present invention will be described with reference to FIG. 13 .
도 13에 도시된 바와 같이, 상기 제3 활용예는 전술한 제2 활용예와 동일하게 접근 권한별(또는 사용자별) 접근 제어를 수행하나, 3개의 블록체인(301, 303, 305)만을 이용한다.As shown in FIG. 13, the third utilization example performs access control by access authority (or by user) in the same way as the above-mentioned second utilization example, but uses only three
상기 제3 활용예에서, 제1 블록체인(301)은 모든 사용자에 대한 접근이 허용되도록 구현된 블록체인으로 전술한 제2 활용예와 동일하다.In the third utilization example, the
제2 블록체인(301)은 등록자와 특정 사용자(B)(또는 제2 접근 권한이 있는 사용자)만이 접근이 허용되도록 구현된 블록체인이다. 따라서, 제2 접근 제한 기간이 경과한 이후에 나머지 데이터(265, 267)가 제2 블록체인(293)에 등록된다.The
제3 블록체인(305)은 등록자와 특정 사용자(A)(또는 제1 접근 권한이 있는 사용자)만이 접근이 허용되도록 구현된 블록체인이다. 따라서, 제1 접근 제한 기간이 경과한 이후에 나머지 데이터(265, 267)가 제3 블록체인(305)에 등록된다.The
상기 제4 활용예에서, 제어 대상 데이터로부터 생성된 데이터 중 일부(265, 267)는 제2 블록체인(303)에 바로 등록되고, 나머지 일부(261, 267)는 제3 블록체인(305)에 바로 등록된다. 따라서, 2개의 블록체인(303, 305)에 접근이 가능한 등록자만이 접근 제한 기간에 관계 없이 제어 대상 데이터를 이용할 수 있다. 또한, 사용자(A, B)는 사용자별로 설정된 접근 제한 기간이 경과하기 전까지 제어 대상 데이터를 이용할 수 없다.In the fourth utilization example, some (265, 267) of the data generated from the control target data are directly registered in the second blockchain (303), and the remaining parts (261, 267) are registered in the third blockchain (305). registered immediately. Therefore, only registrants who can access the two
지금까지, 도 11 내지 도 13을 참조하여 본 발명의 몇몇 활용예에 대하여 설명하였다. 다만, 상술한 몇몇 활용예들은 본 발명에 대한 이해의 편의를 제공하기 위한 것일 뿐이며, 본 발명의 범위가 전술한 활용예에 의해 제한되는 것은 아님에 유의하여야 한다.So far, several utilization examples of the present invention have been described with reference to FIGS. 11 to 13 . However, it should be noted that the above-described several utilization examples are merely for providing convenience of understanding of the present invention, and the scope of the present invention is not limited by the above-described utilization examples.
상술한 몇몇 활용예들에 따르면, 기밀 문서에 대하여 사용자별로 접근 제어를 수행하는 기밀 문서 관리 시스템이 용이하게 구축될 수 있다. 이때, 상기 기밀 문서 관리 시스템은 일정 기간 동안 기밀 유지가 필요한 문서에 대하여 관리를 수행하는 시스템이다. 기밀 문서의 경우 기밀 유지 기간 동안 해당 문서에 대한 기밀성이 보장되어야 할 뿐만 아니라 해당 문서의 무결성도 보장되어야 한다. 또한, 기밀 문서의 경우, 사용자별로 서로 다른 접근 권한이 부여될 수도 있다. 상술한 활용예들에 따르면, 복수의 블록체인을 이용하여 접근 제어 리스트 없이도 사용자별 및/또는 접근 권한별로 유연한 접근 제어 기능이 제공될 수 있고, 블록체인의 특성으로 인해 기밀 문서의 무결성 또한 보장될 수 있다. 아울러, 기밀 문서 관리를 위해 통상적으로 이용되는 DRM(digital rights management) 솔루션과는 달리 암호화 작업이 요구되지 않기 때문에, 상술한 활용예들에 따라 구축되는 기밀 문서 관리 시스템은 암호화 키에 대한 관리 문제와 컴퓨팅 기술의 발전에 따라 암호화 기술의 안정성이 떨어지는 문제로부터 자유롭다.According to some of the above-described utilization examples, a confidential document management system that performs access control for each user with respect to confidential documents can be easily constructed. At this time, the confidential document management system is a system that manages documents that require confidentiality for a certain period of time. In the case of a confidential document, not only the confidentiality of the document must be guaranteed during the confidentiality period, but also the integrity of the document must be guaranteed. In addition, in the case of confidential documents, different access rights may be granted to each user. According to the above-described applications, flexible access control functions can be provided for each user and/or access authority without an access control list using multiple blockchains, and the integrity of confidential documents can also be guaranteed due to the characteristics of the blockchain. can In addition, unlike DRM (digital rights management) solutions commonly used for confidential document management, since encryption is not required, the confidential document management system built according to the above-described utilization examples solves the problem of managing encryption keys and It is free from the problem of declining stability of encryption technology according to the development of computing technology.
이하에서는, 전술한 몇몇 실시예들에 따른 접근 제어 방법을 수행하는 접근 제어 장치(100)의 구성 및 동작에 대하여 도 14 및 도 15를 참조하여 설명한다.Hereinafter, the configuration and operation of the
도 14는 본 발명의 일 실시예에 따른 접근 제어 장치(100)를 나타내는 블록도이다.14 is a block diagram showing an
도 14를 참조하면, 접근 제어 장치(100)는 데이터 분할부(110), 데이터 등록부(130), 블록체인 연동부(140), 데이터 요청 처리부(150) 및 데이터 재생성부(160)를 포함할 수 있다. 다만, 도 14에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 14에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 또한, 도 14에 도시된 접근 제어 장치(100)의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 적어도 하나의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.Referring to FIG. 14, the
각 구성 요소를 살펴보면, 데이터 분할부(110)는 등록 요청에 응답하여 분할 규칙(120)에 따라 제어 대상 데이터를 분할한다. 전술한 몇몇 실시예들에서 언급한 바와 같이, 데이터 분할부(110)는 분할 규칙(120)에 따라 제어 대상 데이터로부터 복수의 데이터 조각, 데이터 키, 위변조 방지 정보 등을 생성할 수 있다.Looking at each component, the
데이터 등록부(130)는 블록체인 상에 데이터 분할부(110)에 의해 생성된 데이터(e.g. 복수의 데이터 조각, 데이터 키, 위변조 방지 정보)와 이용된 분할 규칙을 등록한다. 상기 등록 과정은 블록체인 연동부(140)를 통해 수행될 수 있다.The
전술한 몇몇 실시예들에서 언급한 바와 같이, 데이터 등록부(130)는 일부 데이터 조각은 제1 시점에 블록체인 상에 등록하고, 나머지 데이터 조각은 설정된 접근 제한 기간이 경과한 제2 시점에 상기 블록체인 상에 등록한다. 이와 같이, 블록체인 상에 일부 데이터가 등록되는 시점을 제어함으로써 접근 권한별 및/또는 사용자별로 접근 제어가 수행될 수 있다. 이에 대한 자세한 설명은 전술한 바와 같으므로 생략하도록 한다.As mentioned in some of the foregoing embodiments, the
블록체인 연동부(140)는 블록체인 네트워크(200)와 접근 제어 장치(100) 간의 통신, 메시지 변환 등의 각종 연동 기능을 수행한다.The
데이터 요청 처리부(150)는 제어 대상 데이터의 조회 요청에 응답하여 블록체인 상에 기록된 복수의 데이터 조각, 분할 규칙, 위변조 방지 정보 등의 데이터를 얻어온다. 예를 들어, 데이터 요청 처리부(150)는 해당 제어 대상 데이터의 데이터 키로 블록체인을 조회하여 상기 데이터를 얻어올 수 있다.The data
데이터 재생성부(160)는 상기 복수의 데이터 조각으로부터 요청한 제어 대상 데이터를 재생성한다. 예를 들어, 데이터 재생성부(160)는 위변조 방지 정보를 이용하여 상기 복수의 데이터 조각을 검증하고, 유효하다는 판정에 응답하여 상기 복수의 데이터 조각을 조합함으로써 요청한 제어 대상 데이터를 재생성한다. 상기 조합 과정은 상기 분할 규칙을 이용하여 수행될 수 있고, 이에 대한 설명은 본 발명의 논지를 흐릴 수도 있으므로 생략하도록 한다.The
한편, 본 발명의 다른 실시예에 따르면, 데이터 요청 처리부(150) 및 데이터 재생성부(160)는 접근 제어 장치(100)의 구성 요소에서 제외될 수도 있다. 예를 들어, 데이터 요청 처리부(150) 및 데이터 재생성부(160)의 기능은 데이터 조회 요청을 처리하는 다른 장치에서 구현될 수도 있다. 또는, 사용자 단말(300)이 직접 블록체인을 조회하여 복수의 데이터 조각을 획득하고, 분할 규칙을 참조하여 제어 대상 데이터를 재생성할 수도 있다.Meanwhile, according to another embodiment of the present invention, the data
도 14에 도시된 접근 제어 장치(100)의 각 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.Each component of the
도 15는 본 발명의 일 실시예에 따른 블록체인 기반의 접근 제어 장치(100)의 하드웨어 구성도이다.15 is a hardware configuration diagram of a block chain-based
도 15를 참조하면, 접근 제어 장치(100)는 하나 이상의 프로세서(101), 버스(105), 네트워크 인터페이스(107), 프로세서(101)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(103)와, 컴퓨터 프로그램(109a)을 저장하는 스토리지(109)를 포함할 수 있다. 다만, 도 15에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 15에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.Referring to FIG. 15, the
프로세서(101)는 접근 제어 장치(100)의 각 구성의 전반적인 동작을 제어한다. 프로세서(101)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(101)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 접근 제어 장치(100)는 하나 이상의 프로세서를 구비할 수 있다.The
메모리(103)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(103)는 본 발명의 실시예들에 따른 블록체인 기반의 접근 제어 방법을 실행하기 위하여 스토리지(109)로부터 하나 이상의 프로그램(109a)을 로드할 수 있다. 도 15에서 메모리(103)의 예시로 RAM이 도시되었다.
버스(105)는 접근 제어 장치(100)의 구성 요소 간 통신 기능을 제공한다. 버스(105)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.The
네트워크 인터페이스(107)는 접근 제어 장치(100)의 유무선 인터넷 통신을 지원한다. 또한, 네트워크 인터페이스(107)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 네트워크 인터페이스(107)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.The
스토리지(109)는 상기 하나 이상의 프로그램(109a)을 비임시적으로 저장할 수 있다.The
스토리지(109)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.The
컴퓨터 프로그램(109a)은 메모리(103)에 로드되어, 하나 이상의 프로세서(101)로 하여금, 전술한 본 발명의 몇몇 실시예들에 따른 블록체인 기반의 접근 제어 방법이 실행되도록 하는 일련의 인스트럭션을 포함할 수 있다. 즉, 컴퓨터 프로그램(109a)은 접근 제어 장치(100)가 전술한 본 발명의 몇몇 실시예들에 따른 블록체인 기반의 접근 제어 방법의 각 단계에 대응되는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다.The
제1 예를 들어, 컴퓨터 프로그램(109a)은 접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작, 상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각이 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다.For a first example, the
제2 예를 들어, 컴퓨터 프로그램(109a)은 접근 제한 기간이 주어진 제어 대상 데이터를 제1 블록체인 상에 기록하는 동작 및 상기 접근 제한 기간이 지난 이후에, 상기 제어 대상 데이터가 제2 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다.For a second example, the
이외에도, 컴퓨터 프로그램(109a)은 전술한 몇몇 실시예에 따른 동작을 수행하도록 하는 인스트럭션들을 포함할 수 있다.In addition, the
지금까지 도 2 내지 도 15을 참조하여 본 발명의 몇몇 실시예들에 대하여 설명하고 상기 실시예들에 따른 효과를 언급하였다. 본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.So far, with reference to FIGS. 2 to 15 , several embodiments of the present invention have been described and effects according to the embodiments have been described. The effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
지금까지 도 2 내지 도 15를 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.The concept of the present invention described with reference to FIGS. 2 to 15 so far can be implemented as computer readable code on a computer readable medium. The computer-readable recording medium may be, for example, a removable recording medium (CD, DVD, Blu-ray disc, USB storage device, removable hard disk) or a fixed recording medium (ROM, RAM, computer-equipped hard disk). can The computer program recorded on the computer-readable recording medium may be transmitted to another computing device through a network such as the Internet, installed in the other computing device, and thus used in the other computing device.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.In the above, even though all the components constituting the embodiment of the present invention have been described as being combined or operated as one, the present invention is not necessarily limited to these embodiments. That is, within the scope of the object of the present invention, all of the components may be selectively combined with one or more to operate.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.Although actions are shown in a particular order in the drawings, it should not be understood that the actions must be performed in the specific order shown or in a sequential order, or that all shown actions must be performed to obtain a desired result. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of the various components in the embodiments described above should not be understood as requiring such separation, and the described program components and systems may generally be integrated together into a single software product or packaged into multiple software products. It should be understood that there is
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.Although the embodiments of the present invention have been described with reference to the accompanying drawings, those skilled in the art to which the present invention pertains can be implemented in other specific forms without changing the technical spirit or essential features of the present invention. can understand that Therefore, the embodiments described above should be understood as illustrative in all respects and not limiting. The protection scope of the present invention should be construed according to the claims below, and all technical ideas within the equivalent range should be construed as being included in the scope of the present invention.
Claims (20)
네트워크 인터페이스;
메모리; 및
상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 적어도 하나의 프로그램을 포함하되,
상기 적어도 하나의 프로그램은,
접근 제한 기간이 주어진 제어 대상 데이터를 기초로 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작,
상기 제1 데이터 조각을 제1 블록체인 상에 기록하는 동작 및
상기 접근 제한 기간이 지난 이후에, 상기 제2 데이터 조각이 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함하고,
상기 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성 가능하며,
상기 제1 데이터 조각 및 상기 제2 데이터 조각은,
식별 값에 매칭되어 상기 제1 블록체인 상에 기록되고, 상기 식별 값을 통해 조회 가능한,
블록체인 기반의 접근 제어 장치.processor;
network interface;
Memory; and
At least one program loaded into the memory and executed by the processor,
The at least one program,
An operation of generating a first data piece and a second data piece based on the controlled data given the access restriction period;
Recording the first piece of data on a first blockchain; and
After the access restriction period has elapsed, instructions for performing an operation of processing the second data piece to be recorded on the first blockchain,
The control target data can be regenerated based on the first data piece and the second data piece,
The first data piece and the second data piece,
It is matched to the identification value and recorded on the first block chain, and can be inquired through the identification value.
Blockchain-based access control device.
상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작은,
기 설정된 규칙에 따라 상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작을 포함하고,
상기 제1 블록체인 상에 기록되도록 처리하는 동작은,
상기 제2 데이터 조각 및 상기 기 설정된 규칙을 상기 제1 블록체인 상에 기록되도록 처리하는 동작을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The operation of generating the first data piece and the second data piece,
Generating the first data piece and the second data piece according to a preset rule;
The operation of processing to be recorded on the first blockchain,
Characterized in that it comprises an operation of processing the second data piece and the preset rule to be recorded on the first blockchain,
Blockchain-based access control device.
상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작은,
기 설정된 규칙에 따라 상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작을 포함하되,
상기 기 설정된 규칙은 상기 제어 대상 데이터의 중요도에 기초하여 결정되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The operation of generating the first data piece and the second data piece,
Including generating the first data piece and the second data piece according to a preset rule,
Characterized in that the predetermined rule is determined based on the importance of the control target data,
Blockchain-based access control device.
상기 제1 데이터 조각 및 제2 데이터 조각을 생성하는 동작은,
상기 제어 대상 데이터를 압축하는 동작; 및
상기 압축된 제어 대상 데이터를 기초로 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 생성하는 동작을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The operation of generating the first data piece and the second data piece,
compressing the control target data; and
Characterized in that it comprises an operation of generating the first data piece and the second data piece based on the compressed control target data,
Blockchain-based access control device.
상기 적어도 하나의 프로그램은,
상기 제어 대상 데이터에 대한 위변조 방지 정보를 생성하는 동작 및
상기 위변조 방지 정보를 상기 제1 블록체인 상에 기록하는 동작을 수행하도록 하는 인스트럭션들을 더 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The at least one program,
An operation of generating anti-forgery information for the control target data; and
Characterized in that it further comprises instructions for performing an operation of recording the forgery prevention information on the first blockchain,
Blockchain-based access control device.
상기 위변조 방지 정보는,
상기 제1 데이터 조각의 위변조를 방지하는 제1 정보 및 상기 제2 데이터 조각의 위변조를 방지하는 제2 정보를 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 5,
The forgery prevention information,
Characterized in that it comprises first information for preventing forgery and alteration of the first data piece and second information for preventing forgery and alteration of the second data piece.
Blockchain-based access control device.
상기 위변조 방지 정보는 머클 트리(merkle tree)로 구성되고,
상기 제1 정보 및 상기 제2 정보는 상기 머클 트리의 하위 노드에 대응되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 6,
The forgery prevention information is composed of a merkle tree,
Characterized in that the first information and the second information correspond to lower nodes of the Merkle tree.
Blockchain-based access control device.
상기 제1 블록체인 상에 기록되도록 처리하는 동작은,
상기 접근 제한 기간의 경과 여부를 판정하는 동작 및
경과 판정에 응답하여, 상기 제2 데이터 조각을 상기 제1 블록체인 상에 기록하는 동작을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The operation of processing to be recorded on the first blockchain,
An operation of determining whether the access restriction period has elapsed and
In response to a progress determination, characterized in that it comprises an operation of recording the second piece of data on the first block chain,
Blockchain-based access control device.
상기 제1 블록체인 상에 기록되도록 처리하는 동작은,
상기 제2 데이터 조각을 제2 블록체인 상에 기록하는 동작 및
상기 접근 제한 기간의 경과 판정에 응답하여 실행되는 스마트 컨트랙트(smart contract)를 상기 제2 블록체인 상에 등록하는 동작을 포함하되,
상기 스마트 컨트랙트는,
상기 제2 블록체인 상에 기록된 상기 제2 데이터 조각을 상기 제1 블록체인 상에 기록되도록 처리하는 루틴(routine)을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The operation of processing to be recorded on the first blockchain,
Recording the second data piece on a second blockchain; and
Including the operation of registering a smart contract executed in response to the elapsed determination of the access restriction period on the second blockchain,
The smart contract,
Characterized in that it comprises a routine for processing the second data piece recorded on the second blockchain to be recorded on the first blockchain,
Blockchain-based access control device.
상기 제2 블록체인은 특정 접근 권한이 있는 사용자의 접근만이 허용되도록 구현되고,
상기 제1 블록체인은 상기 특정 접근 권한이 없는 사용자의 접근이 허용되도록 구현되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 9,
The second block chain is implemented so that only users with specific access rights are allowed access,
Characterized in that the first block chain is implemented to allow access of a user without the specific access right,
Blockchain-based access control device.
상기 적어도 하나의 프로그램은,
상기 접근 제한 기간이 지난 이후에, 상기 식별 값과 함께 상기 제어 대상 데이터에 대한 조회 요청을 수신하는 동작,
상기 조회 요청에 응답하여, 상기 식별 값으로 상기 제1 블록체인 상에 기록된 데이터를 조회하고, 상기 조회의 결과로 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 획득하는 동작,
상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 상기 제어 대상 데이터를 재생성하는 동작 및
상기 재생성된 제어 대상 데이터를 제공하는 동작을 수행하도록 하는 인스트럭션들을 더 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 1,
The at least one program,
Receiving a search request for the control target data together with the identification value after the access restriction period has passed;
In response to the query request, an operation of querying data recorded on the first blockchain with the identification value and obtaining the first data fragment and the second data fragment as a result of the inquiry;
regenerating the control target data based on the first data piece and the second data piece; and
Characterized in that it further comprises instructions for performing an operation of providing the regenerated control target data,
Blockchain-based access control device.
네트워크 인터페이스;
메모리; 및
상기 메모리에 로드(load)되고, 상기 프로세서에 의해 실행되는 적어도 하나의 프로그램을 포함하되,
상기 적어도 하나의 프로그램은,
접근 제한 기간이 주어진 제어 대상 데이터를 제1 블록체인 상에 기록하는 동작 및
상기 접근 제한 기간이 지난 이후에, 상기 제어 대상 데이터가 제2 블록체인 상에 기록되도록 처리하는 동작을 수행하도록 하는 인스트럭션들(instructions)을 포함하고,
상기 제1 블록체인은 상기 제어 대상 데이터에 대한 접근 권한이 있는 사용자의 접근만을 허용하도록 구현된 것이며,
상기 제2 블록체인은 기록된 데이터의 접근 제한 기간에 관계없이 상기 기록된 데이터에 대한 사용자의 접근을 허용하도록 구현된 것인,
블록체인 기반의 접근 제어 장치.processor;
network interface;
Memory; and
At least one program loaded into the memory and executed by the processor,
The at least one program,
An operation of recording control target data given an access restriction period on the first blockchain, and
After the access restriction period has passed, instructions for performing an operation of processing the data to be controlled are recorded on a second blockchain,
The first block chain is implemented to allow access only to users who have access to the control target data,
The second block chain is implemented to allow the user's access to the recorded data regardless of the access restriction period of the recorded data,
Blockchain-based access control device.
상기 제1 블록체인은 프라이빗 블록체인 네트워크(private blockchain network)에서 구현되고,
상기 제2 블록체인은 퍼블릭 블록체인 네트워크(public blockchain network)에서 구현되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 13,
The first blockchain is implemented in a private blockchain network,
Characterized in that the second blockchain is implemented in a public blockchain network,
Blockchain-based access control device.
상기 제1 블록체인은 멀티 채널(multi-channel) 기반의 블록체인 네트워크에서 운영되는 제1 채널에 대응되고,
상기 제2 블록체인은 상기 블록체인 네트워크에서 운영되는 제2 채널에 대응되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 13,
The first blockchain corresponds to a first channel operated in a multi-channel based blockchain network,
Characterized in that the second blockchain corresponds to the second channel operated in the blockchain network,
Blockchain-based access control device.
상기 제2 블록체인 상에 기록되도록 처리하는 동작은,
상기 접근 제한 기간의 경과 여부를 판정하는 동작 및
경과 판정에 응답하여, 상기 제어 대상 데이터를 상기 제2 블록체인 상에 기록하는 동작을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 13,
The operation of processing to be recorded on the second blockchain,
An operation of determining whether the access restriction period has elapsed and
Characterized in that, in response to the progress determination, an operation of recording the control subject data on the second blockchain,
Blockchain-based access control device.
상기 제2 블록체인 상에 기록되도록 처리하는 동작은,
상기 접근 제한 기간의 경과 판정에 응답하여 실행되는 스마트 컨트랙트(smart contract)를 상기 제1 블록체인 상에 등록하는 동작을 포함하되,
상기 스마트 컨트랙트는,
상기 제1 블록체인 상에 기록된 상기 제어 대상 데이터를 상기 제2 블록체인 상에 기록되도록 처리하는 루틴(routine)을 포함하는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 13,
The operation of processing to be recorded on the second blockchain,
Including the operation of registering a smart contract executed in response to the elapsed determination of the access restriction period on the first blockchain,
The smart contract,
Characterized in that it comprises a routine for processing the control target data recorded on the first blockchain to be recorded on the second blockchain,
Blockchain-based access control device.
상기 제어 대상 데이터는 원본 제어 대상 데이터를 기초로 생성된 제1 데이터 조각 및 제2 데이터 조각 중 상기 제1 데이터 조각을 포함하고,
상기 적어도 하나의 프로그램은,
상기 접근 제한 기간이 지나기 전에, 상기 제2 데이터 조각을 상기 제2 블록체인 상에 기록하는 동작을 수행하도록 하는 인스트럭션들을 더 포함하되,
상기 원본 제어 대상 데이터는 상기 제1 데이터 조각 및 상기 제2 데이터 조각을 기초로 재생성 가능한 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 13,
The control subject data includes the first data piece among first data pieces and second data pieces generated based on original control subject data;
The at least one program,
Further comprising instructions for performing an operation of recording the second data piece on the second blockchain before the access restriction period passes,
Characterized in that the original data to be controlled is regenerable based on the first data piece and the second data piece,
Blockchain-based access control device.
상기 제1 데이터 조각 및 상기 제2 데이터 조각은 기 설정된 규칙에 따라 생성된 것이고,
상기 기 설정된 규칙은 상기 제2 블록체인 상에 기록되는 것을 특징으로 하는,
블록체인 기반의 접근 제어 장치.According to claim 19,
The first data piece and the second data piece are generated according to a preset rule,
Characterized in that the preset rule is recorded on the second blockchain,
Blockchain-based access control device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180028187A KR102500497B1 (en) | 2018-03-09 | 2018-03-09 | Apparatus for performing access control based on blockchain and method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180028187A KR102500497B1 (en) | 2018-03-09 | 2018-03-09 | Apparatus for performing access control based on blockchain and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190106551A KR20190106551A (en) | 2019-09-18 |
KR102500497B1 true KR102500497B1 (en) | 2023-02-15 |
Family
ID=68070872
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020180028187A KR102500497B1 (en) | 2018-03-09 | 2018-03-09 | Apparatus for performing access control based on blockchain and method thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102500497B1 (en) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102392125B1 (en) * | 2019-11-12 | 2022-04-29 | 주식회사 코스콤 | Method for managing information of unlisted stocks and trading platform apparatus therefor |
CN114117507B (en) * | 2020-08-28 | 2024-01-30 | 中国电信股份有限公司 | Object storage system, access control method and device thereof, and storage medium |
KR102475221B1 (en) * | 2020-10-22 | 2022-12-06 | 서울여자대학교 산학협력단 | A decision tree-based covert channel generation method, apparatus and system therefor |
KR102286016B1 (en) * | 2020-12-23 | 2021-08-04 | 주식회사 지에이치비 | System Providing Cloud Service Based on Blockchain |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101816652B1 (en) * | 2017-02-14 | 2018-01-09 | 주식회사 코인플러그 | Method for providing login flow via authentication based on public key infrastructure in response to user’s login request for using service provided by service provider server in use of merkle tree structure on the basis of unspent transaction output protocol and server using the same |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6019514B1 (en) * | 2016-01-13 | 2016-11-02 | 株式会社Tcsi | Computer program, secret management method and system |
KR20170137388A (en) | 2016-06-03 | 2017-12-13 | (주) 블록체인오에스 | A method for ensuring integrity by using a blockchain technology |
-
2018
- 2018-03-09 KR KR1020180028187A patent/KR102500497B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101816652B1 (en) * | 2017-02-14 | 2018-01-09 | 주식회사 코인플러그 | Method for providing login flow via authentication based on public key infrastructure in response to user’s login request for using service provided by service provider server in use of merkle tree structure on the basis of unspent transaction output protocol and server using the same |
Also Published As
Publication number | Publication date |
---|---|
KR20190106551A (en) | 2019-09-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3744042B1 (en) | Generating or managing linked decentralized identifiers | |
KR102500497B1 (en) | Apparatus for performing access control based on blockchain and method thereof | |
US10409990B2 (en) | Encryption and decryption method and apparatus in virtualization system, and system | |
US10742633B2 (en) | Method and system for securing data | |
US8799651B2 (en) | Method and system for encrypted file access | |
JP4847967B2 (en) | Memory system with multipurpose content control | |
JP5281074B2 (en) | Information security apparatus and information security system | |
TWI582593B (en) | Sector map-based rapid data encryption policy compliance | |
US20200258166A1 (en) | Authentication, authorization and audit of digital assets using the blockchain | |
US9984238B1 (en) | Intelligent storage devices with cryptographic functionality | |
JP4857284B2 (en) | Control structure generation system for multi-purpose content control | |
JP6073320B2 (en) | Authority-dependent platform secret to digitally sign | |
JP2008524753A5 (en) | ||
US20140325234A1 (en) | System and Method for Controlling User Access to Encrypted Data | |
JP2008524758A5 (en) | ||
US11494508B2 (en) | Secrets as a service | |
US10848305B2 (en) | Key generation information trees | |
CN104361291B (en) | Data processing method and device | |
Bossi et al. | What users should know about full disk encryption based on LUKS | |
CA2773293A1 (en) | Multiple independent encryption domains | |
JP2009543211A (en) | Content management system and method using a generic management structure | |
US20190171841A1 (en) | Method and system for encrypting files and storing the encrypted files in a storage file system | |
KR20200048676A (en) | Method for managing data based on blockchain, apparatus and system for the same | |
JP2023551124A (en) | self-audit blockchain | |
CN113839773A (en) | LUKS key offline extraction method, terminal equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |