KR102424197B1 - 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템 - Google Patents

블록체인 기반 데이터 관리 방법, 장치 및 그 시스템 Download PDF

Info

Publication number
KR102424197B1
KR102424197B1 KR1020180131010A KR20180131010A KR102424197B1 KR 102424197 B1 KR102424197 B1 KR 102424197B1 KR 1020180131010 A KR1020180131010 A KR 1020180131010A KR 20180131010 A KR20180131010 A KR 20180131010A KR 102424197 B1 KR102424197 B1 KR 102424197B1
Authority
KR
South Korea
Prior art keywords
condition
blockchain
data
block chain
target data
Prior art date
Application number
KR1020180131010A
Other languages
English (en)
Other versions
KR20200048676A (ko
Inventor
조정우
이재석
이규상
이상원
Original Assignee
삼성에스디에스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성에스디에스 주식회사 filed Critical 삼성에스디에스 주식회사
Priority to KR1020180131010A priority Critical patent/KR102424197B1/ko
Publication of KR20200048676A publication Critical patent/KR20200048676A/ko
Application granted granted Critical
Publication of KR102424197B1 publication Critical patent/KR102424197B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

블록체인 기반 데이터 관리 방법이 제공된다. 상기 데이터 관리 방법은, 상기 대상 데이터와 연관된 관리 규칙을 획득하되, 상기 관리 규칙은 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 것인, 단계, 상기 대상 데이터를 제1 블록체인에 기록하는 단계, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 단계 및 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 포함할 수 있다.

Description

블록체인 기반 데이터 관리 방법, 장치 및 그 시스템 {METHOD FOR MANAGING DATA BASED ON BLOCKCHAIN, APPARATUS AND SYSTEM FOR THE SAME}
본 발명은 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템에 관한 것이다. 보다 자세하게는, 블록체인 환경에서 데이터의 무결성을 보장함과 동시에, 다양한 관리 정책에 따라 데이터를 관리하는 방법, 장치 및 그 시스템에 관한 것이다.
블록체인(blockchain)은 지속적으로 증가하는 데이터를 특정 단위의 블록에 기록하고, P2P(peer-to-peer) 네트워크를 구성하는 각각의 노드들이 상기 블록을 체인 형태의 자료 구조로 관리하는 데이터 관리 기술 또는 상기 체인 형태의 자료 구조로 구성된 데이터 그 자체를 의미한다. 이때, 체인 형태의 자료 구조로 구성된 블록체인은, 중앙 시스템 없이 각각의 노드에서 분산 원장(distributed ledger) 형태로 운영된다.
블록체인 네트워크를 구성하는 각각의 블록체인 노드는 도 1에 도시된 바와 같은 체인 형태의 자료 구조로 블록들을 관리한다. 여기서, 각 블록에는 이전 블록에 대한 해시 값이 기록되며, 상기 해시 값을 통해 이전 블록이 참조될 수 있다. 따라서, 블록이 쌓일수록 블록 내에 기록된 데이터의 위변조는 어려워지고, 데이터의 신뢰도는 향상되며, 분산된 환경에서도 데이터의 무결성(integrity)이 보장될 수 있다.
블록체인 기술에 대한 관심이 높아짐에 따라, 다양한 분야에서 블록체인을 통해 데이터를 관리하려는 시도를 하고 있다. 그러나, 현존하는 블록체인 플랫폼은 블록체인에 기록된 데이터가 일정 기간 이후에 공개되도록 하거나 특정 대상에게만 공개하는 등의 유연한 관리 기능을 제공하고 있지 않기 때문에, 다양한 분야에 블록체인 기술을 적용하는 데에는 명확한 한계가 있다.
가령, 특정 기관이 블록체인에 업로드한 데이터를 일정 시간이 지난 이후에 다른 기관들 또는 대중에게 공개되도록 하거나, 개인 정보와 같이 민감한 정보를 일정 시간 이후에 폐기되도록 하는 등의 관리 기능을 제공하는 블록체인 플랫폼은 지금까지 제안된 바가 없다.
한국공개특허 제10-2018-0104586호 (2018.09.21 공개)
본 발명이 해결하고자 하는 기술적 과제는, 블록체인 환경에서 관리되는 대상 데이터의 무결성을 보장함과 동시에 다양한 관리 정책에 따른 유연한 관리 기능을 제공하는 블록체인 기반 데이터 관리 방법, 그 방법을 지원하는 장치 및 그 방법을 수행하는 시스템을 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명의 기술분야에서의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 기술적 과제를 해결하기 위한, 본 발명의 일 실시예에 따른 블록체인 기반 데이터 관리 방법은, 데이터 관리 시스템에서 블록체인 기반으로 대상 데이터를 관리하는 방법에 있어서, 상기 대상 데이터와 연관된 관리 규칙을 획득하되, 상기 관리 규칙은 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 것인, 단계, 상기 대상 데이터를 제1 블록체인에 기록하는 단계, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 단계 및 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 관리 규칙 상의 조건은 상기 대상 데이터가 공개 대상에게 공개되는 공개 조건이고, 상기 액션을 수행하는 단계는, 상기 공개 조건이 만족됨에 응답하여, 특정 블록체인에 상기 대상 데이터를 기록하는 단계를 포함하되, 상기 제1 블록체인은 상기 공개 대상의 접근이 허용되지 않는 블록체인이고, 상기 특정 블록체인은 상기 공개 대상의 접근이 허용되는 블록체인일 수 있다.
일 실시예에서, 상기 제2 블록체인은 상기 공개 대상의 접근이 허용되는 블록체인이고, 상기 대상 데이터의 증빙 값은, 상기 대상 데이터에 대한 상기 제1 블록체인의 트랜잭션 식별 값을 포함할 수 있다.
일 실시예에서, 상기 공개 조건은 공개 시점에 기초하여 정의되는 조건이되, 상기 공개 시점은 상기 대상 데이터가 기록된 블록 이후에 추가되는 블록의 개수에 기초하여 결정될 수 있다.
일 실시예에서, 상기 대상 데이터는 비공개 입찰 방식의 경매 관련 데이터이고, 상기 공개 조건은 상기 경매의 종료 시점에 기초한 조건일 수 있다.
일 실시예에서, 상기 관리 규칙 상의 조건은 상기 대상 데이터의 폐기 조건이고, 상기 액션을 수행하는 단계는, 상기 폐기 조건이 만족됨에 응답하여, 상기 제1 블록체인에서 상기 대상 데이터를 삭제하는 단계를 포함할 수 있다.
일 실시예에서, 상기 폐기 조건은 폐기 시점에 기초하여 정의되는 조건이되, 상기 폐기 시점은 상기 대상 데이터의 보관 기간 또는 상기 대상 데이터가 기록된 블록 이후에 추가되는 블록의 개수에 기초하여 결정될 수 있다.
일 실시예에서, 상기 대상 데이터는 개인 정보와 관련된 데이터이고, 상기 폐기 조건은 상기 개인 정보의 보관 기간에 기초한 조건일 수 있다.
일 실시예에서, 상기 대상 데이터는 복수의 주체와 연관된 데이터이고, 상기 관리 규칙 상의 조건은 상기 복수의 주체 간의 합의 여부를 가리키는 합의 조건을 포함하되, 상기 액션을 수행하는 단계는, 상기 합의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 포함할 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 데이터 관리 장치는, 제1 블록체인 및 제2 블록체인을 공유하는 블록체인 네트워크와 통신하기 위한 통신 인터페이스, 하나 이상의 인스트럭션들(instructions)을 포함하는 메모리 및 상기 하나 이상의 인스트럭션들을 실행함으로써, 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 대상 데이터의 관리 규칙을 획득하고, 상기 블록체인 네트워크를 통해 상기 대상 데이터가 상기 제1 블록체인에 기록되도록 하며, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록되도록 하고, 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 프로세서를 포함할 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 컴퓨터 프로그램은, 컴퓨팅 장치와 결합되어, 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 대상 데이터의 관리 규칙을 획득하는 단계; 상기 블록체인 네트워크를 통해 상기 대상 데이터가 상기 제1 블록체인에 기록되도록 하는 단계, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록되도록 하는 단계 및 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 실행시키기 위하여 컴퓨터로 판독가능한 기록매체에 저장될 수 있다.
상술한 기술적 과제를 해결하기 위한 본 발명의 또 다른 실시예에 따른 블록체인 기반 데이터 관리 시스템은, 대상 데이터와 연관된 관리 규칙에 기초하여 상기 대상 데이터에 대한 관리를 수행하는 데이터 관리 장치 및 상기 대상 데이터를 제1 블록체인에 기록하고, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 하나 이상의 블록체인 노드를 포함할 수 있다. 이때, 상기 관리 규칙은 소정의 관리 규칙 상의 조건과 상기 조건 만족 시 수행될 액션을 포함하고, 상기 데이터 관리 장치는, 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 하나 이상의 블록체인 노드와 연동하여 상기 액션을 수행할 수 있다.
도 1은 본 발명의 몇몇 실시예에서 참조될 수 있는 블록체인의 자료 구조를 나타내는 예시도이다.
도 2는 본 발명의 일 실시예에 따른 블록체인 기반 데이터 관리 시스템을 나타내는 예시적인 구성도이다.
도 3 및 도 4는 본 발명의 몇몇 실시예에서 참조될 수 있는 블록체인 네트워크의 구성을 설명하기 위한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 데이터 관리 장치를 나타내는 예시적인 블록도이다.
도 6은 본 발명의 제1 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다.
도 7은 본 발명의 제2 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다.
도 8은 본 발명의 제3 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다.
도 9는 본 발명의 제4 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다.
도 10은 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제1 활용예를 설명하기 위한 도면이다.
도 11은 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제2 활용예를 설명하기 위한 도면이다.
도 12는 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제3 활용예를 설명하기 위한 도면이다.
도 13은 본 발명의 몇몇 실시예들에 따른 장치를 구현할 수 있는 예시적인 컴퓨팅 장치를 나타내는 하드웨어 구성도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
명세서에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에 대한 설명에 앞서, 본 명세서에서 사용되는 몇몇 용어들에 대하여 명확하게 하기로 한다.
본 명세서에서, 블록체인 또는 블록체인 데이터란 블록체인 네트워크를 구성하는 각각의 블록체인 노드가 유지하는 데이터로, 적어도 하나의 블록이 체인 형태의 자료 구조로 구성되는 데이터를 가리킨다. 블록체인 기반 시스템에서, 모든 블록체인 노드는 동일한 블록체인 데이터를 유지한다. 단, 멀티 채널(multi-channel) 기능을 지원하는 블록체인 기반 시스템(e.g. 하이퍼레저 패브릭)에서는, 동일한 채널에 속한 블록체인 노드들끼리만 동일한 블록체인 데이터를 유지하게 된다.
본 명세서에서, 블록체인 네트워크란, 블록체인 알고리즘(또는 프로토콜)에 따라 동작하는 복수의 블록체인 노드로 구성된 P2P(peer-to-peer) 구조의 네트워크를 의미한다.
본 명세서에서, 블록체인 노드란, 블록체인 네트워크를 구성하고 블록체인 알고리즘(또는 프로토콜)에 따라 동작하는 컴퓨팅 노드를 의미한다. 상기 컴퓨팅 노드는 물리적 장치로 구현될 수 있으나, 가상 머신(virtual machine)과 같이 논리적 장치로 구현될 수도 있다. 상기 컴퓨팅 노드가 가상 머신으로 구현되는 경우, 하나의 물리적 장치에 복수의 블록체인 노드가 포함될 수도 있다.
본 명세서에서, 트랜잭션(transaction) 또는 블록체인 트랜잭션(blockchain transaction)이란, 블록체인 환경에서 상태 변화(e.g. 잔고의 증감, 자산의 이전)를 일으키는 모든 행위, 블록체인에 기록된 상태(state) 데이터를 조회하는 모든 행위, 또는 그 행위들을 가리키는 데이터를 의미할 수 있다. 예를 들어, 상기 트랜잭션은 블록체인에 특정 데이터를 쓰는 행위, 블록체인에 기록된 특정 데이터를 읽는 행위 등을 모두 포괄할 수 있다. 상기 트랜잭션은 쓰기 타입의 트랜잭션(e.g. 상태 데이터를 추가, 수정, 삭제하는 등의 트랜잭션)과 읽기 타입의 트랜잭션(e.g. 상태 데이터를 조회하는 트랜잭션)으로 구분될 수 있다. 물론, 블록체인 플랫폼에 따라 읽기 및 쓰기 타입 외에도 다양한 타입(e.g. 실행)의 트랜잭션이 존재할 수 있고, 그와 같은 경우 상기 트랜잭션은 다양한 타입의 트랜잭션을 모두 포함할 수 있다. 또한, 당해 기술 분야에서, 상기 읽기 타입의 트랜잭션의 쿼리(query) 등의 용어와 혼용되어 사용될 수 있다. 상기 트랜잭션은 스마트 컨트랙트(smart contract)를 통해 실행(e.g. 스마트 컨트랙트에 정의된 함수 및 변수를 통해 블록체인에 접근)될 수 있으나, 이는 구현 방식에 따라 얼마든지 달라질 수 있다.
본 명세서에서, 스마트 컨트랙트(smart contract)란, 블록체인 기반 시스템에서 트랜잭션 처리에 이용되는 스크립트 또는 소프트웨어 코드를 의미한다. 보다 구체적으로, 상기 스마트 컨트랙트는 트랜잭션 처리에 이용되는 각종 조건, 상태, 상기 조건에 따른 행위를 프로그래밍 방식으로 작성한 코드로, 예를 들어, 이더리움의 스마트 컨트랙트, 하이퍼레저 패브릭의 체인코드(chain code) 등을 포함할 수 있다. 블록체인 노드는 블록체인을 통해 스마트 컨트랙트를 공유할 수 있다.
본 명세서에서, 인스트럭션(instruction)이란, 기능을 기준으로 묶인 일련의 명령어들로서 컴퓨터 프로그램의 구성 요소이자 프로세서(processor)에 의해 실행되는 것을 가리킨다.
이하, 본 발명의 몇몇 실시예들에 대하여 첨부된 도면에 따라 상세하게 설명한다.
도 2는 본 발명의 일 실시예에 따른 블록체인 기반 데이터 관리 시스템을 나타내는 구성도이다.
도 2에 도시된 바와 같이, 상기 데이터 관리 시스템은 데이터 관리 장치(100) 및 하나 이상의 블록체인 네트워크(10)를 포함할 수 있다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 구성 요소가 추가되거나 삭제될 수 있음은 물론이다. 또한, 도 2에 도시된 데이터 관리 시스템의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 복수의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다. 가령, 데이터 관리 장치(100)와 블록체인 네트워크(10)를 구성하는 하나 이상의 블록체인 노드는 동일한 물리적 컴퓨팅 장치 내에서 서로 다른 로직(logic)의 형태로 구현될 수도 있다.
또한, 실제 물리적 환경에서 상기 각각의 구성 요소들은 복수의 세부 기능 요소로 분리되는 형태로 구현될 수도 있다. 예컨대, 데이터 관리 장치(100)의 제1 기능은 제1 컴퓨팅 장치에서 구현되고, 제2 기능은 제2 컴퓨팅 장치에서 구현될 수도 있다. 이하, 상기 각각의 구성 요소에 대하여 설명한다.
상기 데이터 관리 시스템에서, 데이터 관리 장치(100)는 블록체인 네트워크(10)와 연동하여 다양한 관리 정책에 기반한 데이터 관리 기능을 제공하는 컴퓨팅 장치이다. 여기서, 상기 컴퓨팅 장치는, 노트북, 데스크톱(desktop), 랩탑(laptop) 등이 될 수 있으나, 이에 국한되는 것은 아니며 컴퓨팅 기능 및 통신 기능이 구비된 모든 종류의 장치를 포함할 수 있다. 상기 컴퓨팅 장의 일 예시는 도 13을 참조하도록 한다.
상기 관리 정책은 데이터 공개와 연관된 공개 정책, 데이터 폐기와 연관된 폐기 정책 등을 포함할 수 있다. 또한, 각 정책은 조건 및 액션으로 정의되는 하나의 이상의 규칙을 포함할 수 있다. 각 규칙은 다양하게 정의될 수 있으며, 상기 각 규칙에 대한 자세한 설명은 후술하도록 한다.
상기 관리 정책은 클라이언트 단말(30)로부터 데이터와 함께 제공받을 수 있고, 미리 정의된 다양한 규칙이 정책 DB에 보관되어 있을 수도 있다. 즉, 데이터 관리 장치(100)가 상기 규칙들을 획득하는 방식은 어떠한 방식이 되더라도 무방하다.
데이터 관리 장치(100)의 구성 및 동작에 대한 자세한 설명은 도 5 내지 도 9를 참조하여 후술하도록 한다.
상기 데이터 관리 시스템에서, 블록체인 네트워크(10)는 복수의 블록체인 노드로 구성된 P2P 네트워크이다. 상기 복수의 블록체인 노드는 블록체인 알고리즘에 따라 동작하며, 동일한 블록체인을 공유한다.
본 발명의 몇몇 실시예들에 따르면, 블록체인 네트워크(10)는 데이터가 기록되는 제1 블록체인과 상기 데이터의 해시 값이 기록되는 제2 블록체인을 관리할 수 있다. 데이터의 해시 값을 별도의 블록체인에 기록하는 이유는 해당 데이터의 무결성을 보장하기 위해서이다.
상기 제1 블록체인은 특정 사용자의 접근이 제한되는 블록체인이고, 상기 제2 블록체인은 특정 사용자의 접근이 제한되지 않는 블록체인일 수 있다. 상기 데이터의 무결성을 보장하기 위해서는 공개된 블록체인에 해시 값이 기록될 필요가 있기 때문이다.
예를 들어, 도 3에 도시된 바와 같이, 상기 제1 블록체인은 프라이빗 블록체인 네트워크(41, private block network)를 통해 공유되는 프라이빗 블록체인이고, 상기 제2 블록체인은 퍼블릭 블록체인 네트워크(43, public block network)를 통해 공유되는 퍼블릭 블록체인일 수 있다. 이와 같은 경우, 블록체인 네트워크(10)는 이종의 블록체인 네트워크(41, 43)를 포함하게 된다.
다른 예를 들어, 상기 제1 블록체인과 상기 제2 블록체인은 블록체인 네트워크(10) 상에 형성된 특정 채널을 통해 공유되는 블록체인일 수 있다. 여기서, 채널은 블록체인 네트워크 상에 형성된 소규모의 블록체인 네트워크를 의미한다. 이때, 상기 제2 채널은 블록체인 네트워크(10)를 구성하는 전체 블록체인 노드가 참여할 수 있는 공개된 채널일 수 있다. 가령, 도 4에 도시된 바와 같이, 기관(A)과 기관(B)의 데이터를 하나의 블록체인 네트워크를 통해 관리한다고 가정하자. 이와 같은 경우, 기관(A)의 제1 데이터는 기관(A)과 연관된 블록체인 노드들(51)이 참여하는 채널(A)을 통해 공유되는 블록체인에 기록되고, 기관(B)의 제2 데이터는 기관(B)과 연관된 블록체인 노드들(53)이 참여하는 채널(B)을 통해 공유되는 블록체인에 기록될 수 있다. 또한, 상기 제1 데이터 및 상기 제2 데이터의 해시 값은 블록체인 노드들(51, 53)이 모두 참여할 수 있는 채널(C)을 통해 공유되는 블록체인 상에 기록될 수 있다.
다만, 전술한 예시들은 블록체인 네트워크(10)의 일부 구성을 설명하기 위한 것으로, 블록체인 네트워크(10)의 구성은 실시예에 따라 다양하게 변형될 수 있다.
다시 도 2를 참조하면, 클라이언트 단말(30)은 데이터 관리 시스템을 이용하는 단말이다. 가령, 클라이언트 단말(30) 데이터 관리 시스템에 데이터를 등록하거나, 기 등록된 데이터를 조회할 수 있다. 클라이언트 단말(30)은 어떠한 장치로 구현되더라도 무방하다.
도 2에 도시된 구성 요소 중 적어도 일부는 네트워크를 통해 통신할 수 있다. 여기서, 상기 네트워크는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet) 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.
지금까지 도 2 내지 도 4를 참조하여 본 발명의 일 실시예에 따른 블록체인 기반 데이터 관리 시스템에 대하여 설명하였다.
도 5는 본 발명의 일 실시예에 따른 데이터 관리 장치(100)를 나타내는 예시적인 블록도이다.
도 5에 도시된 바와 같이, 데이터 관리 장치(100)는 정책 관리부(110) 및 처리부(130)를 포함할 수 있다. 다만, 도 5에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 5에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다. 또한, 도 5에 도시된 데이터 관리 장치(100)의 각각의 구성 요소들은 기능적으로 구분되는 기능 요소들을 나타낸 것으로서, 복수의 구성 요소가 실제 물리적 환경에서는 서로 통합되는 형태로 구현될 수도 있음에 유의한다.
각 구성 요소를 살펴보면, 규칙 관리부(110)는 관리 정책에 따라 대상 데이터를 관리하기 위해 다양한 규칙들을 관리한다. 상기 관리 정책은 공개 정책과 폐기 정책 등을 포함할 수 있다.
규칙 관리부(110)는 클라이언트 단말(30)이 데이터와 함께 제공한 규칙들을 관리할 수 있고, 미리 정의된 각 정책 별 규칙들을 정책 DB를 통해 관리할 수도 있다. 각 규칙들에 대한 자세한 설명은 후술하도록 한다.
다음으로, 처리부(130)는 대상 데이터와 연관된 특정 규칙 상의 조건이 만족되는지 여부를 모니터링한다. 또한, 처리부(130)는 상기 조건이 만족됨에 응답하여, 상기 특정 규칙에 정의된 액션이 수행되도록 처리한다. 예를 들어, 처리부(130)는 소정의 공개 조건이 만족됨에 응답하여, 특정 데이터가 공개되도록 처리한다. 다른 예를 들어, 처리부(130)는 소정의 폐기 조건이 만족됨에 응답하여, 상기 특정 데이터가 폐기되도록 처리한다. 중복된 설명을 배제하기 위해, 처리부(130)에 의해 데이터 공개 또는 폐기 처리가 수행되는 상세 과정은 도 6 내지 도 9를 참조하여 후술하도록 한다.
도 5에 도시된 데이터 관리 장치(100)의 구성 요소는 소프트웨어(Software) 또는, FPGA(Field Programmable Gate Array)나 ASIC(Application-Specific Integrated Circuit)과 같은 하드웨어(Hardware)를 의미할 수 있다. 그렇지만, 상기 구성 요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(Addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고, 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성 요소들 안에서 제공되는 기능은 더 세분화된 구성 요소에 의하여 구현될 수 있으며, 복수의 구성 요소들을 합하여 특정한 기능을 수행하는 하나의 구성 요소로 구현될 수도 있다.
이하에서는, 도 6 내지 도 9를 참조하여 본 발명의 다양한 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하도록 한다.
상기 블록체인 기반 데이터 관리 방법의 각 단계는 컴퓨팅 장치 및/또는 하나 이상의 컴퓨팅 장치를 포함하는 컴퓨팅 시스템에 의해 수행될 수 있다. 다시 말하면, 상기 블록체인 기반 데이터 관리 방법의 각 단계는 컴퓨팅 장치의 프로세서에 의해 실행되는 하나 이상의 인스트럭션들로 구현될 수 있다. 이하에서는, 이해의 편의를 제공하기 위해, 상기 블록체인 기반 데이터 관리 방법이 도 2에 도시된 데이터 관리 시스템에서 수행되는 것을 가정하여 설명을 이어가도록 한다. 다만, 상기 방법이 적용되는 시스템의 환경에 따라 상기 방법을 구성하는 일부 단계의 순서 또는 구성이 변경될 수도 있다.
도 6은 본 발명의 제1 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
상기 제1 실시예는 공개 정책에 따라 대상 데이터를 관리하는 방법에 관한 것이다. 도 6에 도시된 바와 같이, 상기 제1 실시예는 클라이언트 단말(30)이 대상 데이터의 등록을 요청하는 단계 S10에서 시작된다.
상기 대상 데이터는 공개 정책에 포함된 다양한 규칙 상의 조건이 만족될 때 특정 공개 대상에게 공개되는 데이터이다. 상기 대상 데이터의 종류는 기밀 문서, 비공개 입찰 데이터 등 어떠한 것이 되더라도 무방하다.
일 실시예에 따르면, 상기 공개 규칙은 상기 대상 데이터의 소유 주체(e.g. 특정 기관)에 의해 설정될 수 있다. 보다 구체적으로, 상기 소유 주체는 공개 조건과 상기 대상 데이터가 공개되는 범위, 공개될 대상 및/또는 공개되는 방식 등을 포함하는 액션을 설정할 수 있다. 예를 들어, 상기 소유 주체가 클라이언트 단말(30)을 통해 대상 데이터를 등록할 때, 상기 대상 데이터의 공개 규칙(즉, 조건과 액션)을 설정할 수 있다. 다른 예를 들어, 상기 소유 주체는 상기 데이터의 공개 규칙을 미리 데이터 관리 장치(100)에게 제공하고, 데이터 관리 장치(100)는 제공받은 공개 규칙을 정책 DB에 보관할 수도 있다. 이와 같이, 상기 소유 주체가 공개 규칙을 설정하는 방식은 얼마든지 달라질 수 있다.
다만, 본 발명의 다른 실시예에 따르면, 상기 공개 규칙은 소유 주체가 아니라 관리자 등과 같이 얼마든지 다른 주체에 의해 설정될 수도 있다. 즉, 공개 규칙을 설정하는 주체는 본 발명의 기술적 범위에 영향을 미치지 않음에 유의한다.
공개 규칙을 구성하는 공개 조건은 단수 또는 복수일 수 있으며, 다양한 방식으로 정의될 수 있다.
일 실시예에서, 상기 공개 조건은 공개 시점에 기초한 조건일 수 있다. 이때, 상기 공개 시점은 공개 일시, 비공개 기간, 타이머 등에 기초하여 정의될 수 있다. 몇몇 예시에서, 상기 공개 시점은 상기 대상 데이터가 블록체인에 기록된 이후에 추가된 블록의 개수(e.g. 5개의 블록이 더 추가될 때 공개)에 기초하여 정의될 수도 있다.
일 실시예에서, 상기 공개 조건은 공개 시점과 무관한 조건일 수도 있다. 가령, 상기 공개 조건은 대상 데이터의 소유 주체로부터 공개 요청 메시지를 수신하는 것과 같이 공개 시점과 무관하게 정의될 수도 있다.
일 실시예에서, 상기 공개 조건은 전술한 실시예들의 조합에 기초하여 정의될 수도 있다.
단계 S20에서, 블록체인 노드(20)는 상기 대상 데이터를 제1 블록체인(21)에 기록한다. 구체적으로, 블록체인 노드(20)가 상기 대상 데이터를 제1 블록체인(21)에 기록하는 트랜잭션을 실행하면(즉, 상기 트랜잭션에 대한 스마트 컨트랙트를 실행하면), 상기 트랜잭션에 대한 합의 과정을 거쳐 제1 블록체인(21)에 상기 대상 데이터가 기록될 수 있다. 당해 기술 분야의 당업자라면 특정 블록체인에 데이터가 기록되는 과정을 자명하게 이해할 수 있을 것인 바, 이에 대한 자세한 설명은 생략하도록 한다.
제1 블록체인(21)은 공개 대상의 접근이 제한되는 블록체인이다. 예를 들어, 제1 블록체인(21)은 상기 대상 데이터의 소유 주체(e.g. 특정 기관)들만이 참여 가능한 채널 상에서 공유되는 블록체인일 수 있다. 다른 예를 들어, 제1 블록체인(21)은 별도의 프라이빗 블록체인 네트워크 상에서 공유되는 프라이빗 블록체인일 수 있다.
본 단계 S20에서, 상기 대상 데이터의 공개 조건 등의 규칙 정보가 클라이언트 단말(30)로부터 수신된 경우, 블록체인 노드(20)는 상기 규칙 정보를 상기 대상 데이터와 함께 제1 블록체인(21)에 기록할 수 있다. 이와 같은 경우, 데이터 관리 장치(100)는 제1 블록체인(21)을 통해 상기 대상 데이터의 규칙 정보를 획득하도록 동작할 수도 있다.
단계 S30에서, 블록체인 노드(20)는 조건부 공개라는 관리 이벤트가 발생되었음을 데이터 관리 장치(100)로 통지한다. 이때, 블록체인 노드(20)는 상기 이벤트 통지와 함께 상기 대상 데이터의 공개 조건, 상기 대상 데이터가 기록된 제1 블록체인(21)의 블록 정보(e.g. 블록 번호, 블록 해시) 및/또는 상기 대상 데이터의 트랜잭션 식별 값 등을 데이터 관리 장치(100)로 전송할 수도 있다.
단계 S40에서, 블록체인 노드(20)는 상기 대상 데이터의 해시 값을 제2 블록체인(23)에 기록한다. 상기 해시 값을 제2 블록체인(23)에 기록하는 이유는, 상기 대상 데이터의 무결성을 확보하기 위한 것이다. 즉, 상기 대상 데이터가 제2 블록체인(23)을 통해 공개된 경우, 공개된 데이터가 실제로 제1 블록체인(21)에 기록된 데이터와 동일하다는 것이 상기 해시 값을 통해 검증될 수 있다.
본 단계 S40에서, 블록체인 노드(20)는 상기 대상 데이터가 기록된 제1 블록체인(21)의 블록 정보(e.g. 블록 번호, 블록 해시) 및/또는 상기 대상 데이터의 트랜잭션 식별 값 등을 제2 블록체인(23)에 더 기록할 수도 있다.
제2 블록체인(23)은 상기 대상 데이터의 공개 대상이 접근할 수 있는 블록체인으로, 가령 퍼블릭 블록체인 또는 공개된 채널을 통해 공유되는 블록체인일 수 있다. 그러나, 본 발명의 기술적 범위가 이에 한정되는 것은 아니다.
참고로, 복수의 블록체인 노드로 구성된 블록체인 네트워크의 특성 상, 단계 S30에서 제1 블록체인(21)에 데이터를 기록하는 제1 블록체인 노드와 단계 S40에서 제2 블록체인(23)에 해시 값을 기록하는 제2 블록체인 노드는 서로 동일한 노드일 수도 있고, 서로 다른 노드일 수도 있다. 가령, 제1 블록체인(21)과 제2 블록체인(23)이 각각 독립적인 블록체인 네트워크 상에서 공유되는 것이라면, 상기 제1 블록체인 노드와 상기 제2 블록체인 노드는 당연히 서로 다른 노드가 된다.
또한, 도 6은 전술한 단계 S20 내지 S40은 순서대로 수행되는 것을 예로써 도시하고 있으나, 단계 S20 내지 S40는 얼마든지 다른 순서로 수행되더라도 무관하다.
단계 S50에서, 블록체인 노드(20)는 단계 S10의 요청에 따른 응답(e.g. 등록 성공, 실패 등)을 클라이언트 단말(30)로 전송한다.
단계 S60에서, 데이터 관리 장치(100)는 상기 대상 데이터의 공개 조건을 포함한 규칙 정보를 획득한다. 상기 규칙 정보를 획득하는 방식은 어떠한 방식이 되더라도 무방하다.
예를 들어, 데이터 관리 장치(100)는 상기 규칙 정보를 블록체인 노드(20)로부터 수신할 수 있다(e.g. 단계 S30에서 수신). 다른 예를 들어, 상기 규칙 정보가 제1 블록체인(21)에 기록된 경우, 데이터 관리 장치(100)는 제1 블록체인(21)을 조회함으로써 상기 규칙 정보를 획득할 수 있다. 또 다른 예를 들어, 데이터 관리 장치(100)는 기 구축된 정책 DB에서 상기 대상 데이터에 매칭되는 공개 규칙을 획득할 수도 있다.
단계 S70에서, 데이터 관리 장치(100)는 상기 대상 데이터의 공개 조건이 만족되는지 판정한다. 상기 공개 조건이 만족된다는 판정에 응답하여, 다음의 단계 S80, S90가 수행될 수 있다.
단계 S80에서, 데이터 관리 장치(100)는 블록체인 노드(20)에게 상기 대상 데이터의 공개를 요청한다.
단계 S90에서, 상기 공개 요청에 응답하여, 블록체인 노드(20)는 상기 대상 데이터를 제2 블록체인(23)에 기록한다. 전술한 바와 같이, 제2 블록체인(23)은 공개 대상이 접근할 수 있는 블록체인이므로, 제2 블록체인(23)을 통해 상기 대상 데이터가 공개될 수 있는 것이다. 상기 공개 대상은 제2 블록체인(23)을 조회하여 상기 대상 데이터를 획득할 수 있고, 단계 S40에서 기록된 해시 값을 이용하여 상기 대상 데이터의 무결성을 체크할 수도 있다.
참고로, 도 6은 상기 해시 값이 기록되는 블록체인과 대상 데이터가 공개되는 블록체인이 서로 동일한 것을 예로써 도시하고 있다. 그러나, 본 발명의 다른 실시예에 따르면, 두 블록체인은 서로 다른 블록체인일 수도 있다. 이를테면, 상기 해시 값이 기록되는 블록체인은 퍼블릭 블록체인이고, 상기 대상 데이터가 공개되는 블록체인은 상기 대상 데이터의 공개 대상만이 접근할 수 있는 프라이빗 블록체인일 수 있다. 물론, 두 블록체인은 서로 다른 퍼블릭 블록체인이 될 수도 있다.
지금까지 도 6을 참조하여 본 발명의 제1 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하였다. 상술한 방법에 따르면, 공개 정책에 기반한 유연한 데이터 관리 기능이 제공될 수 있다. 뿐만 아니라, 데이터의 해시 값을 별도의 블록체인에 기록함으로써 공개되는 데이터의 무결성 또한 보장될 수 있다.
이하에서는, 본 발명의 제2 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 도 7을 참조하여 설명하도록 한다. 명세서의 명료함을 위해, 앞선 실시예와 중복되는 내용에 대한 설명은 생략하도록 한다.
도 7은 본 발명의 제2 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
전술한 제1 실시예와 마찬가지로, 상기 제2 실시예 또한 공개 정책에 따라 데이터를 관리하는 방법에 관한 것이다. 그러나, 상기 제1 실시예와는 달리, 상기 제2 실시예에서는, 데이터 관리 장치(100)가 관리 이벤트를 수신하지 않고 자체적으로 전반적인 관리 동작을 수행한다는 점에서 차이가 있다.
도 7에 도시된 바와 같이, 상기 제2 실시예 또한 클라이언트 단말(30)이 대상 데이터의 등록을 요청하는 단계 S110에서 시작된다.
단계 S120 내지 S150에서, 상기 등록 요청에 응답하여, 데이터 관리 장치(100)는 블록체인 노드(20)와 연동하여 상기 대상 데이터를 제1 블록체인(21)에 기록하고, 상기 대상 데이터의 해시 값을 제2 블륵체인(23)에 기록한다.
또한, 데이터 관리 장치(100)는 상기 대상 데이터의 규칙 정보를 획득할 수 있는데, 전술한 바와 같이, 상기 규칙 정보는 어떠한 방식으로 획득하더라도 무방하다. 가령, 데이터 관리 장치(100)는 클라이언트 단말(30)로부터 상기 규칙 정보를 제공받을 수 있고, 기 구축된 정책 DB을 조회하여 상기 대상 데이터에 매칭되는 규칙 정보를 획득할 수도 있다.
단계 S160 및 S170에서, 데이터 관리 장치(100)는 단계 S110의 등록 요청에 대한 응답을 클라이언트 단말(30)로 전송한다.
단계 S180 내지 S190에서, 공개 정책에 포함된 다양한 규칙 상의 공개 조건이 만족됨에 응답하여, 데이터 관리 장치(100)는 블록체인 노드(20)에게 상기 대상 데이터의 공개를 요청하고, 블록체인 노드(20)는 상기 대상 데이터를 제2 블록체인(23)에 기록한다. 그렇게 함으로써, 제2 블록체인(23)을 통해 상기 대상 데이터가 공개 대상에게 공개될 수 있다.
몇몇 실시예에서, 공개 대상 별로 접근할 수 있는 블록체인(e.g. 프라이빗 블록체인)이 상이하고, 상기 관리 정책 상에 공개 대상이 제1 대상으로 지정되어 있는 경우, 데이터 관리 장치(100)는 상기 제1 대상이 접근할 수 있는 특정 블록체인에 상기 대상 데이터가 기록되도록 할 수 있다. 즉, 데이터 관리 장치(100)는 상기 특정 블록체인을 관리하는 블록체인 노드에게 상기 대상 데이터의 기록을 요청함으로써, 상기 대상 데이터가 상기 제1 대상에게 공개되도록 할 수 있다.
지금까지 도 7을 참조하여 본 발명의 제2 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하였다. 이하에서는, 본 발명의 제3 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 도 8을 참조하여 설명하도록 한다. 명세서의 명료함을 위해, 앞선 실시예와 중복되는 내용에 대한 설명은 생략하도록 한다.
도 8은 본 발명의 제3 실시예에 따른 블록체인 기반 데이터 관리 방법을 나타내는 예시적인 흐름도이다. 단, 이는 본 발명의 목적을 달성하기 위한 바람직한 실시예일뿐이며, 필요에 따라 일부 단계가 추가되거나 삭제될 수 있음은 물론이다.
상기 제3 실시예는 폐기 정책에 따라 데이터를 관리하는 방법에 관한 것이다. 명세서의 명료함을 위해, 앞선 실시예와 중복되는 내용에 대한 설명은 생략하도록 한다.
도 8에 도시된 바와 같이, 상기 제3 실시예 또한 클라이언트 단말(30)이 대상 데이터의 등록을 요청하는 단계 S210에서 시작된다.
단계 S220 내지 S240에서, 상기 등록 요청에 응답하여, 블록체인 노드(20)는 상기 대상 데이터를 제1 블록체인(21)에 기록하고, 상기 대상 데이터의 해시 값을 제2 블록체인(23)에 기록한다. 또한, 블록체인 노드(20)는 상기 대상 데이터에 대한 관리 이벤트가 발생했음을 데이터 관리 장치(100)로 통지한다.
몇몇 실시예에 따르면, 블록체인 노드(20)는 상기 대상 데이터가 비공개 데이터라는 판정에 응답하여 상기 데이터의 해시 값을 제2 블록체인(23)에 기록할 수도 있다. 또한, 상기 대상 데이터가 공개 데이터인 경우, 블록체인 노드(20)는 상기 데이터를 제2 블록체인(23)에도 기록할 수 있다. 이와 같은 경우, 폐기 조건이 만족됨에 따라, 제1 및 제2 블록체인(21, 23)에 기록된 데이터가 함께 삭제될 수 있다.
단계 S260에서, 데이터 관리 장치(100)는 상기 대상 데이터의 규칙 정보를 획득한다. 이때, 상기 규칙 정보는 상기 대상 데이터의 폐기 조건을 포함한다.
상기 폐기 조건은 다양한 방식으로 정의될 수 있다.
일 실시예에서, 상기 폐기 조건은 폐기 시점에 기초한 조건일 수 있다. 이때, 상기 폐기 시점은 폐기 일시, 보관 기간(e.g. 개인 정보의 보관 기관), 타이머 등에 기초하여 정의될 수 있다. 몇몇 예시에서, 상기 폐기 시점은 상기 대상 데이터가 블록체인에 기록된 이후에 추가된 블록의 개수(e.g. 5개의 블록이 더 추가될 때 폐기)에 기초하여 정의될 수도 있다. 몇몇 예시에서, 상기 대상 데이터의 보관 기간(즉, 폐기 시점)은 동적으로 결정될 수도 있다. 이를테면, 상기 보관 기간은 대상 데이터의 민감도(sensitivity)에 따라 동적으로 결정될 수 있는데, 개인 정보와 같이 민감한 데이터는 다른 데이터보다 보관 기간이 짧게 결정될 수 있다.
일 실시예에서, 상기 폐기 조건은 폐기 시점과 무관한 조건일 수도 있다. 가령, 상기 폐기 조건은 대상 데이터의 소유 주체로부터 폐기 요청 메시지를 수신하는 조건과 같이 폐기 시점과 무관하게 정의될 수도 있다.
일 실시예에서, 상기 폐기 조건은 전술한 실시예들의 조합에 기초하여 정의될 수도 있다.
단계 S270에서, 데이터 관리 장치(100)는 상기 폐기 조건이 만족되는지 판정한다. 만족 판정에 응답하여, 다음 단계 S280 및 S290이 수행될 수 있다.
단계 S280에서, 데이터 관리 장치(100)는 블록체인 노드(20)로 상기 대상 데이터의 폐기를 요청한다.
단계 S290에서, 블록체인 노드(20)는 제1 블록체인(21)에 기록된 대상 데이터를 폐기한다. 상기 대상 데이터를 폐기하는 방식은 어떠한 방식이 되더라도 무방하다. 참고로, 현존하는 몇몇 블록체인 플랫폼(e.g. 하이퍼레져 패브릭)은 블록체인 데이터의 삭제 기능을 지원하고 있다. 상기 대상 데이터가 폐기됨에 따라, 상기 대상 데이터의 해시 값만이 제2 블록체인(23)에 남게 된다.
지금까지 도 8을 참조하여 본 발명의 제3 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하였다. 상술한 바에 따르면, 폐기 정책에 따라 유연한 데이터 관리 기능이 제공될 수 있다. 또한, 개인 정보와 같이 민감한 데이터인 경우, 일정 기간 이후 자동으로 폐기되도록 함으로써 안전하고 엄격한 데이터 관리 기능에 제공될 수 있다. 개인 정보에 본 실시예가 활용되는 예는 도 12를 참조하여 부연 설명하도록 한다.
한편, 본 발명의 다른 실시예에 따르면, 도 8에 도시된 블록체인 기반 데이터 관리 방법은, 도 7에 도시된 바와 같이 데이터 관리 장치(100)를 중심으로 수행될 수도 있다. 중복된 설명을 배제하기 위해, 이에 대한 자세한 설명은 생략하도록 한다.
이하에서는, 도 9를 참조하여 본 발명의 제4 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하도록 한다.
도 9는 본 발명의 제4 실시예에 따른 블록체인 기반 데이터 관리 방법을 설명하기 위한 예시도이다.
상기 제4 실시예는 관리 정책에 포함된 특정 규칙에 복수의 조건이 정의된 경우에 관한 것이다. 가령, 대상 데이터의 소유 주체(또는 관리 주체)가 복수인 경우, 각 소유 주체 별로 상이한 조건이 정의될 수 있다. 이와 같은 경우, 각 소유 주체가 설정한 조건이 모두 만족되는 경우에, 상기 대상 데이터가 공개되거나 폐기될 수 있다.
또한, 소유 주체 간의 합의 여부를 나타내는 합의 조건이 추가로 설정될 수 있다. 가령, 대상 데이터의 소유 주체가 "n명"이고, 상기 n명 중에 k(단, k는 n 이하의 자연수)명이 설정한 조건이 만족되면 대상 데이터가 공개되거나 폐기되도록 하는 합의 조건이 추가로 설정될 수도 있다. 이와 같은 경우, 각 소유 주체가 설정한 조건이 모두 만족되지 않더라도, k개의 조건이 만족되면 상기 대상 데이터가 공개되거나 폐기될 수 있다. 보다 구체적인 예를 들어, 대상 데이터의 공개 조건이 기관으로부터 공개 동의 메시지를 수신하는 것이고, 합의 조건이 k개의 기관으로부터 공개 동의 메시지를 수신하는 것이라고 가정하자. 그러면, k개의 공개 동의 메시지가 수신될 때, 소유 기관 간의 합의가 이루어진 것으로 보아 상기 대상 데이터가 공개될 수 있다.
도 9에 도시된 바와 같이, 상기 제4 실시예에서 복수개의 데이터 관리 모듈(또는 장치, 101 내지 105)이 존재할 수 있다. 다만, 이는 이해의 편의를 제공하기 위한 것으로, 복수개의 데이터 관리 모듈(101 내지 105)은 실제로는 하나의 데이터 관리 장치(100)로 구현될 수도 있다. 또한, 도 9는 데이터의 소유 주체가 기관(A, B)인 것을 예로써 도시하고 있다.
제1 데이터 관리 모듈(101)은 대상 데이터의 소유 기관(A)으로부터, 정확하게는 소유 기관(A)과 연관된 블록체인 노드로부터, 관리 이벤트가 발생했음을 통지받고, 소유 기관(A)가 설정한 조건이 만족되는지를 판정한다.
제2 데이터 관리 모듈(103)은 대상 데이터의 소유 기관(B)으로부터, 정확하게는 소유 기관(B)과 연관된 블록체인 노드로부터, 관리 이벤트가 발생했음을 통지받고, 소유 기관(B)가 설정한 조건이 만족되는지를 판정한다.
이때, 데이터 관리 모듈(101, 103)은 소유 기관(A, B)과 관련성이 적은 중립적인 장치를 기준으로 시간 동기화를 수행할 수 있다. 이는, 소유 기관(A, B)의 개입 없이 상기 대상 데이터와 연관된 조건의 만족 여부를 공정하게 판정하기 위해서이다. 도 9에 도시된 바와 같이, 상기 중립적인 장치는 블록체인 네트워크에서 주요 합의 과정을 수행하는 합의 노드(65, e.g. 하이퍼레저 패브릭의 orderer)일 수 있으나, 본 발명의 기술적 범위가 이에 한정되는 것은 아니다.
제1 데이터 관리 모듈(101) 및 제2 데이터 관리 모듈(103)은 각 소유 기관(A, B)이 설정한 조건이 만족될 때, 제3 데이터 관리 모듈(105)로 조건 만족 메시지를 통지한다.
몇몇 실시예에서, 소유 기관(A, B)이 동일한 블록체인을 공유하고 있고, 대상 데이터가 상기 블록체인에 기록된 경우, 제1 데이터 관리 모듈(101) 및 제2 데이터 관리 모듈(103)은 조건이 만족된 시점에 상기 블록체인의 블록 정보(e.g. 블록번호, 블록 해시)와 트랜잭션 식별 값을 제3 데이터 관리 모듈(105)로 전송할 수 있다. 이와 같은 경우, 제3 데이터 관리 모듈(105)은 두 데이터 관리 모듈(101, 103)로부터 수신한 블록 정보와 식별 값이 일치하는지 여부를 판정하고, 일치하는 경우에 한하여 소유 기관(A, B)이 설정한 조건이 만족되었다고 판정할 수 있다.
제3 데이터 관리 모듈(105)은 1 데이터 관리 모듈(101) 및 제2 데이터 관리 모듈(103)로부터 수시된 조건 만족 메시지를 기초로 상기 대상 데이터의 합의 조건이 만족되는지 여부를 판정한다. 또한, 만족 판정에 응답하여, 제3 데이터 관리 모듈(105)은 상기 대상 데이터에 대한 액션(e.g. 공개, 폐기 등)을 수행한다. 가령, 상기 대상 데이터의 합의 조건이 1개의 소유 기관(A 또는 B)의 동의라면, 제3 데이터 관리 모듈(105)은 어느 하나의 데이터 관리 모듈(101, 103)로부터 조건 만족 메시지가 수신될 때, 상기 대상 데이터에 대한 액션을 수행할 수 있다.
지금까지 도 9를 참조하여 본 발명의 제4 실시예에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하였다. 상술한 방법에 따르면, 대상 데이터의 소유 주체들 간의 합의에 기반하여 유연한 데이터 관리 기능이 제공될 수 있다.
지금까지 도 6 내지 도 9를 참조하여 본 발명의 다양한 실시예들에 따른 블록체인 기반 데이터 관리 방법에 대하여 설명하였다. 이하에서는, 도 10 내지 도 12를 참조하여 본 발명의 기술적 사상이 구체화된 다양한 활용예에 대하여 설명하도록 한다.
도 10은 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제1 활용예를 설명하기 위한 도면이다.
도 10에 도시된 바와 같이, 전술한 본 발명의 몇몇 실시예들은 서로 다른 기관(A 내지 C)들 간에 데이터를 공유하기 위해 활용될 수 있다. 각 기관들(A 내지 C)은 블록체인 네트워크 상에서 서로 다른 채널을 통해 데이터를 관리할 수 있다. 가령, 기관(A)은 제1 채널(73)을 통해 자신의 데이터를 관리하고, 기관(B)은 제2 채널을 통해 자신의 데이터를 관리할 수 있다. 또한, 기관들(A 내지 C)은 하나의 공유 채널(70)을 통해 특정 데이터를 공유할 수 있다.
위와 같은 환경에서, 특정 조건에 따라 기관들(A 내지 C) 사이에 데이터를 공유할 때 전술한 본 발명의 다양한 실시예들이 활용될 수 있다. 가령, 기관(A)은 대상 데이터(71)가 소정의 공개 조건(e.g. 특정 시점 이후에 공개)에 따라 다른 기관들(B, C)에게 공개되기를 원할 수 있다. 이와 같은 경우, 제1 채널(73)을 통해 공유되는 제1 블록체인에 기록된 대상 데이터(71)가 기관(A)이 설정한 공개 조건이 만족됨에 따라 공유 채널(70)을 통해 공유되는 제2 블록체인 상에 기록될 수 있다. 또한, 상기 제1 블록체인에 대상 데이터(71)가 기록될 때, 대상 데이터(71)의 해시 값이 상기 제2 블록체인 상에 기록될 수 있다. 기관(B, C)은 상기 해시 값을 이용하여 상기 제2 블록체인에 기록된 대상 데이터(71)의 무결성을 체크할 수 있다.
도 11은 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제2 활용예를 설명하기 위한 도면이다.
도 11에 도시된 바와 같이, 전술한 본 발명의 몇몇 실시예들은 비공개 입찰 방식의 경매 데이터를 관리하기 위해 활용될 수 있다. 구체적으로, 입찰자의 입찰 데이터(81 내지 83)는 경매 관리자만이 접근할 수 있는 제1 블록체인(87)에 기록되고, 입찰 데이터(81 내지 83)의 해시 값(84 내지 86)은 제1 내지 제3 입찰자가 접근할 수 있는 제2 블록체인(88)에 기록된다. 그렇게 함으로써, 입찰 데이터(81 내지 83)의 무결성이 보장됨과 동시에 비공개 입찰 방식으로 경매가 진행될 수 있다.
또한, 경매 종료 시점에 기초한 공개 조건이 만족됨에 따라 입찰 데이터(81 내지 83)가 제2 블록체인(88)에 기록된다. 그렇게 함으로써, 다른 입찰자의 입찰 데이터가 공개되고, 공정한 경매가 진행될 수 있다. 제1 내지 제3 입찰자는 해시 값(84 내지 86)을 이용하여 입찰 데이터(81, 내지 83)의 무결성을 체크할 수 있다.
도 12는 본 발명의 몇몇 실시예들에 따른 블록체인 기반 데이터 관리 시스템 및 방법의 제3 활용예를 설명하기 위한 도면이다.
도 12에 도시된 바와 같이, 전술한 본 발명의 몇몇 실시예들은 보관 기간이 정해진 개인 정보를 관리하기 위해 활용될 수 있다. 구체적으로, 사용자가 입력한 개인 정보(91 내지 93)는 사용자들이 접근할 수 없는 제1 블록체인(97)에 기록된다. 이에 따라, 개인 정보(91 내지 93)가 안전하게 보호될 수 있다. 또한, 개인 정보(91 내지 93)의 해시 값(94 내지 96)은 사용자들이 접근 가능한 제2 블록체인(98)에 기록된다.
개인 정보(91 내지 93)의 보관 기간이 지나면, 개인 정보(91 내지 93)의 폐기 조건이 만족되고, 이에 응답하여 제1 블록체인(97)에 기록된 개인 정보(91 내지 93)는 폐기될 수 있다. 이에 따라, 사용자들의 민감한 개인 정보(91 내지 93)가 보관 정책에 따라 엄격하게 관리될 수 있다.
지금까지 도 10 내지 도 12를 참조하여 본 발명의 다양한 활용예들에 대하여 설명하였다. 마지막으로, 도 13을 참조하여 본 발명의 다양한 실시예들에 따른 장치(e.g. 100)를 구현할 수 있는 예시적인 컴퓨팅 장치(200)에 대하여 설명하도록 한다.
도 13은 본 발명의 다양한 실시예들에 따른 장치(e.g. 100)를 구현할 수 있는 예시적인 컴퓨팅 장치(200)를 나타내는 하드웨어 구성도이다.
도 13에 도시된 바와 같이, 컴퓨팅 장치(200)는 하나 이상의 프로세서(210), 버스(250), 통신 인터페이스(270), 프로세서(210)에 의하여 수행되는 컴퓨터 프로그램을 로드(load)하는 메모리(230)와, 블록체인 기반 데이터 관리 컴퓨터 프로그램(291)를 저장하는 스토리지(290)를 포함할 수 있다. 다만, 도 13에는 본 발명의 실시예와 관련 있는 구성요소들만이 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 13에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.
프로세서(210)는 컴퓨팅 장치(200)의 각 구성의 전반적인 동작을 제어한다. 프로세서(210)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다. 또한, 프로세서(210)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있다. 컴퓨팅 장치(200)는 하나 이상의 프로세서를 구비할 수 있다.
메모리(230)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(230)는 본 발명의 다양한 실시예들에 따른 방법을 실행하기 위하여 스토리지(290)로부터 하나 이상의 프로그램(291)을 로드할 수 있다.
가령, 메모리(230)에 데이터 관리 장치(100)의 동작을 수행하는 컴퓨터 프로그램(291)이 로드되면, 도 5에 도시된 바와 같이 모듈이 메모리(230) 상에 구현될 수 있다. 메모리(230)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 발명의 기술적 범위는 이에 한정되지 아니한다.
버스(250)는 컴퓨팅 장치(200)의 구성 요소 간 통신 기능을 제공한다. 버스(250)는 주소 버스(Address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.
통신 인터페이스(270)는 컴퓨팅 장치(200)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(270)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(270)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다.
스토리지(290)는 상기 하나 이상의 프로그램(291)을 비임시적으로 저장할 수 있다. 스토리지(290)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
컴퓨터 프로그램(291)은 메모리(230)에 로드될 때 프로세서(210)로 하여금 본 발명의 다양한 실시예에 따른 방법을 수행하도록 하는 하나 이상의 인스트럭션들(instructions)을 포함할 수 있다. 즉, 프로세서(210)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 방법들을 수행할 수 있다.
예를 들어, 컴퓨터 프로그램(291)은 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 대상 데이터의 관리 규칙을 획득하고, 상기 블록체인 네트워크를 통해 상기 대상 데이터가 상기 제1 블록체인에 기록되도록 하며, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록되도록 하고, 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 이와 같은 경우, 컴퓨팅 장치(400)를 통해 데이터 관리 장치(100)가 구현될 수 있다.
지금까지 도 13을 참조하여 본 발명의 실시예에 따른 컴퓨팅 장치(200)의 구성 및 동작에 대하여 설명하였다.
지금까지 도 1 내지 도 13을 참조하여 본 발명의 다양한 실시예들 및 그 실시예들에 따른 효과들을 언급하였다. 본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
지금까지 도 1 내지 도 13을 참조하여 설명된 본 발명의 개념은 컴퓨터가 읽을 수 있는 매체 상에 컴퓨터가 읽을 수 있는 코드로 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체는, 예를 들어 이동형 기록 매체(CD, DVD, 블루레이 디스크, USB 저장 장치, 이동식 하드 디스크)이거나, 고정식 기록 매체(ROM, RAM, 컴퓨터 구비 형 하드 디스크)일 수 있다. 상기 컴퓨터로 읽을 수 있는 기록 매체에 기록된 상기 컴퓨터 프로그램은 인터넷 등의 네트워크를 통하여 다른 컴퓨팅 장치에 전송되어 상기 다른 컴퓨팅 장치에 설치될 수 있고, 이로써 상기 다른 컴퓨팅 장치에서 사용될 수 있다.
이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다.
도면에서 동작들이 특정한 순서로 도시되어 있지만, 반드시 동작들이 도시된 특정한 순서로 또는 순차적 순서로 실행되어야만 하거나 또는 모든 도시 된 동작들이 실행되어야만 원하는 결과를 얻을 수 있는 것으로 이해되어서는 안 된다. 특정 상황에서는, 멀티태스킹 및 병렬 처리가 유리할 수도 있다. 더욱이, 위에 설명한 실시예들에서 다양한 구성들의 분리는 그러한 분리가 반드시 필요한 것으로 이해되어서는 안 되고, 설명된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품으로 함께 통합되거나 다수의 소프트웨어 제품으로 패키지 될 수 있음을 이해하여야 한다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로 이해해야만 한다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (16)

  1. 데이터 관리 시스템에서 블록체인 기반으로 대상 데이터를 관리하는 방법에 있어서,
    상기 대상 데이터와 연관된 관리 규칙을 획득하되, 상기 관리 규칙은 소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 것인, 단계;
    상기 대상 데이터를 제1 블록체인에 기록하는 단계;
    상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 단계; 및
    상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 포함하고,
    상기 대상 데이터는 복수의 주체와 연관된 데이터이고,
    상기 관리 규칙 상의 조건은 상기 복수의 주체 간의 합의 여부를 가리키는 합의 조건을 포함하되,
    상기 액션을 수행하는 단계는,
    상기 합의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 단계를 포함하는 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  2. 제1 항에 있어서,
    상기 관리 규칙 상의 조건은 상기 대상 데이터가 공개 대상에게 공개되는 공개 조건이고,
    상기 액션을 수행하는 단계는,
    상기 공개 조건이 만족됨에 응답하여, 특정 블록체인에 상기 대상 데이터를 기록하는 단계를 포함하되,
    상기 제1 블록체인은 상기 공개 대상의 접근이 허용되지 않는 블록체인이고,
    상기 특정 블록체인은 상기 공개 대상의 접근이 허용되는 블록체인인 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  3. 제2 항에 있어서,
    상기 제2 블록체인은 상기 공개 대상의 접근이 허용되는 블록체인이고,
    상기 대상 데이터의 증빙 값은,
    상기 대상 데이터에 대한 상기 제1 블록체인의 트랜잭션 식별 값을 포함하는 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  4. 제2 항에 있어서,
    상기 제1 블록체인은 블록체인 네트워크 상의 제1 채널을 통해 공유되고,
    상기 특정 블록체인은 상기 블록체인 네트워크 상의 제2 채널을 통해 공유되는 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  5. 제2 항에 있어서,
    상기 제1 블록체인은 프라이빗 블록체인(private blockchain)이고,
    상기 특정 블록체인은 퍼블릭 블록체인(public blockchain)인 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  6. 제2 항에 있어서,
    상기 공개 조건은 공개 시점에 기초하여 정의되는 조건이되,
    상기 공개 시점은 상기 대상 데이터가 기록된 블록 이후에 추가되는 블록의 개수에 기초하여 결정되는 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  7. 제2 항에 있어서,
    상기 대상 데이터는 비공개 입찰 방식의 경매 관련 데이터이고,
    상기 공개 조건은 상기 경매의 종료 시점에 기초한 조건인 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  8. 제1 항에 있어서,
    상기 관리 규칙 상의 조건은 상기 대상 데이터의 폐기 조건이고,
    상기 액션을 수행하는 단계는,
    상기 폐기 조건이 만족됨에 응답하여, 상기 제1 블록체인에서 상기 대상 데이터를 삭제하는 단계를 포함하는 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  9. 제8 항에 있어서,
    상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 단계는,
    상기 대상 데이터가 비공개 데이터라는 판정에 응답하여, 상기 증빙 값을 상기 제2 블록체인에 기록하는 단계를 포함하되,
    상기 제1 블록체인은 프라이빗 블록체인이고,
    상기 제2 블록체인은 퍼블릭 블록체인인 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  10. 제8 항에 있어서,
    상기 폐기 조건은 폐기 시점에 기초하여 정의되는 조건이되,
    상기 폐기 시점은 상기 대상 데이터의 보관 기간 또는 상기 대상 데이터가 기록된 블록 이후에 추가되는 블록의 개수에 기초하여 결정되는 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  11. 제8 항에 있어서,
    상기 폐기 조건은 폐기 시점에 기초하여 정의되는 조건이되,
    상기 폐기 시점은 상기 대상 데이터의 민감도(sensitivity)에 기초하여 적어도 일부는 차등적으로 결정되는 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  12. 제8 항에 있어서,
    상기 대상 데이터는 개인 정보와 관련된 데이터이고,
    상기 폐기 조건은 상기 개인 정보의 보관 기간에 기초한 조건인 것을 특징으로 하는,
    블록체인 기반 데이터 관리 방법.
  13. 삭제
  14. 제1 항에 있어서,
    상기 관리 규칙 상의 조건은 상기 복수의 주체에 의해 설정된 n개(단, n은 1이상의 자연수)의 조건을 포함하고,
    상기 합의 조건은 상기 n개의 조건 중에서 k개 이상(단, k는 n 이하의 자연수)의 조건이 만족되는 조건인 것을 특징으로 하는,
    블록체인 기반의 데이터 관리 방법.
  15. 제1 블록체인 및 제2 블록체인을 공유하는 블록체인 네트워크와 통신하기 위한 통신 인터페이스;
    하나 이상의 인스트럭션들(instructions)을 포함하는 메모리; 및
    상기 하나 이상의 인스트럭션들을 실행함으로써,
    소정의 조건과 상기 조건 만족 시 수행될 액션을 포함하는 대상 데이터의 관리 규칙을 획득하고, 상기 블록체인 네트워크를 통해 상기 대상 데이터가 상기 제1 블록체인에 기록되도록 하며, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록되도록 하고, 상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 프로세서를 포함하고,
    상기 대상 데이터는 복수의 주체와 연관된 데이터이고,
    상기 관리 규칙 상의 조건은 상기 복수의 주체 간의 합의 여부를 가리키는 합의 조건을 포함하되,
    상기 프로세서는, 상기 합의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 것을 특징으로 하는,
    데이터 관리 장치.
  16. 대상 데이터와 연관된 관리 규칙에 기초하여 상기 대상 데이터에 대한 관리를 수행하는 데이터 관리 장치; 및
    상기 대상 데이터를 제1 블록체인에 기록하고, 상기 대상 데이터의 증빙 값을 제2 블록체인에 기록하는 하나 이상의 블록체인 노드;
    상기 관리 규칙은 소정의 관리 규칙 상의 조건과 상기 조건 만족 시 수행될 액션을 포함하고,
    상기 데이터 관리 장치는,
    상기 관리 규칙 상의 조건이 만족됨에 응답하여, 상기 하나 이상의 블록체인 노드와 연동하여 상기 액션을 수행하고,
    상기 대상 데이터는 복수의 주체와 연관된 데이터이고,
    상기 관리 규칙 상의 조건은 상기 복수의 주체 간의 합의 여부를 가리키는 합의 조건을 포함하되,
    상기 데이터 관리 장치는, 상기 합의 조건이 만족됨에 응답하여, 상기 액션을 수행하는 것을 특징으로 하는,
    블록체인 기반 데이터 관리 시스템.
KR1020180131010A 2018-10-30 2018-10-30 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템 KR102424197B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180131010A KR102424197B1 (ko) 2018-10-30 2018-10-30 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180131010A KR102424197B1 (ko) 2018-10-30 2018-10-30 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20200048676A KR20200048676A (ko) 2020-05-08
KR102424197B1 true KR102424197B1 (ko) 2022-07-21

Family

ID=70677741

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180131010A KR102424197B1 (ko) 2018-10-30 2018-10-30 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템

Country Status (1)

Country Link
KR (1) KR102424197B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102572475B1 (ko) * 2020-09-17 2023-08-30 주식회사 세수 폐기 가능 블록체인 원장 시스템 및 이를 이용하는 블록체인 운용 방법
CN112632121B (zh) * 2020-12-15 2024-04-16 京东科技控股股份有限公司 区块链数据获取方法和装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018515833A (ja) * 2015-03-31 2018-06-14 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法
JP2018152050A (ja) * 2017-03-10 2018-09-27 セールスフォース ドット コム インコーポレイティッド ブロックチェーンバージョン制御システム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102026225B1 (ko) * 2017-01-19 2019-09-27 주식회사 케이티 블록 체인을 이용하여 데이터를 관리하는 장치 및 방법
KR102121930B1 (ko) 2018-07-03 2020-06-11 네이버 주식회사 블록체인 기반의 개인 데이터 처리 방법 및 시스템

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018515833A (ja) * 2015-03-31 2018-06-14 ナスダック, インコーポレイテッドNasdaq, Inc. ブロックチェーン取引記録のシステムおよび方法
JP2018152050A (ja) * 2017-03-10 2018-09-27 セールスフォース ドット コム インコーポレイティッド ブロックチェーンバージョン制御システム

Also Published As

Publication number Publication date
KR20200048676A (ko) 2020-05-08

Similar Documents

Publication Publication Date Title
EP3896633B1 (en) Task processing method, system and device, and storage medium
US10606738B2 (en) Application testing on a blockchain
US10812566B2 (en) Distributed steam processing
US10419216B2 (en) Keying infrastructure
KR102519646B1 (ko) 앵커링 기반 정보 공유 방법 및 이를 지원하는 앵커링 장치
BR112021008819A2 (pt) gerenciamento de permissões para acessar dados de usuário em uma rede de confiança de livro-razão distribuído
US20160260095A1 (en) Containerized Computational Task Execution Management Using a Secure Distributed Transaction Ledger
US11902439B2 (en) Computer-implemented system and method for fault-resistant multi-node communication
US20180121909A1 (en) System and method to dynamically setup a private sub-blockchain based on agility of transaction processing
KR20210040569A (ko) 블록체인 기반 데이터 관리 시스템 및 그 방법
US9219611B1 (en) Systems and methods for automating cloud-based code-signing services
US9565168B1 (en) System and method of a trusted computing operation mode
KR20200132518A (ko) 블록체인 네트워크 간에 트랜잭션 연동을 지원하는 시스템 및 그 방법
US11196554B2 (en) Default password removal
KR102500497B1 (ko) 블록체인 기반의 접근 제어 장치 및 그 동작 방법
KR102424197B1 (ko) 블록체인 기반 데이터 관리 방법, 장치 및 그 시스템
AU2015317916A1 (en) File reputation evaluation
US11005890B2 (en) Secure software defined storage
US11544255B2 (en) Blockchain data recording method and apparatus thereof
KR20190052033A (ko) 일시적인 트랜잭션 서버
JP2021528744A (ja) 周辺デバイスへのアクセスを制御するためのシステム及び方法
US11625385B2 (en) Method and apparatus for managing data based on blockchain
CN111858020B (zh) 用户资源限制方法、装置及计算机存储介质
CN112788021B (zh) 一种身份验证方法基于云数据的数字化城市管理数据共享系统
US11782883B1 (en) Systems and methods for managing personalized life information

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