KR20200108757A - 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법 - Google Patents

효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법 Download PDF

Info

Publication number
KR20200108757A
KR20200108757A KR1020190096496A KR20190096496A KR20200108757A KR 20200108757 A KR20200108757 A KR 20200108757A KR 1020190096496 A KR1020190096496 A KR 1020190096496A KR 20190096496 A KR20190096496 A KR 20190096496A KR 20200108757 A KR20200108757 A KR 20200108757A
Authority
KR
South Korea
Prior art keywords
data
blockchain
deletion
hybrid
xgs
Prior art date
Application number
KR1020190096496A
Other languages
English (en)
Other versions
KR102330005B1 (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 순천향대학교 산학협력단
Publication of KR20200108757A publication Critical patent/KR20200108757A/ko
Application granted granted Critical
Publication of KR102330005B1 publication Critical patent/KR102330005B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

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

Abstract

본 발명은 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 XGS 주입 방법을 개시한다. 본 발명의 일 측면에 따른 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템은, 원본 데이터를 저장하는 오프 블록체인(Off Blockchain); 및 블록체인에서만 연결된 메타데이터 값을 기록하고 분산된 총계 원장으로 보유하는 온 블록체인(On Blockchain);을 포함한다.

Description

효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 XGS 주입 방법{Hybrid blockchain system for efficient content change and deletion and XGS injection method using hybrid blockchain}
본 발명은 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 XGS 주입 방법에 관한 것으로, 더욱 상세하게는 데이터를 분리하고 연결 이력을 블록체인에 저장하며, 원장 레코드와는 별도로 상태를 분산 데이터베이스로 변경하고, XOR(eXclusive OR) 형식으로 임의 주입하여 상태를 변경함으로써 오프 블록체인의 정정 및 삭제의 이력을 효율적으로 검색하는 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 XGS 주입 방법에 관한 것이다.
최근, 비트코인의 출현과 함께 블록체인은 추가전용 분산 정책으로써, 임의 수정 및 삭제를 불가능하게 하여 전체 시스템의 무결성과 신뢰성을 제공하는 데이터베이스 기술로서 각광받고 있다. 기존 블록체인은 일반 텍스트(평문)로 블록체인에 데이터를 기록하거나 트랜잭션으로 암호화된 형태로 데이터를 저장하고 모든 것을 운반하는 분산 원장 형태이다. 그러나, 블록체인은 수정 또는 삭제가 아니라 합법적인 사용자의 액세스 권한(예컨대, 소유자 개인키)에 따라 데이터를 읽고 쓸 수 있는 CRAB(Create-Retrieve-Append-Burn) 방식이므로, 상술한 블록체인 기반의 방식에서는 한번 생성된 데이터는 삭제할 수 없기 때문에 개인 정보의 침해와 같은 문제가 발생한다. 또한, Accenture(미국의 한 회사)의 재사용 가능한 블록체인(Rewritable Blockchain)은 카멜레온 해시를 통해 공통 해시 충돌 쌍을 찾는 것이 매우 어렵지만, 백도어(back door) 속성을 이용하여 사용자의 합법적인 개인키를 통해 쉽게 충돌 쌍을 찾을 수 있는데 이때, 트랜잭션의 내용은 변경되지만 해시값은 변경되지 않는다. 따라서, 전체 블록체인 시스템이 유지되며 합법적인 사용자가 수정하거나 삭제할 수 있다. 그러나, 원본데이터가 사라지면 이전 데이터에 액세스 할 수 없으며 데이터 수정 내역을 추적하기가 어렵다는 문제점이 있다.
따라서, 상술한 종래기술에서의 문제점을 해결하기 위한 연구가 필요한 실정이다.
한국등록특허 제10-1964692호(2019.04.02 공고)
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로서, 데이터를 분리하고 연결 이력을 블록체인에 저장하는 온-오프 블록체인 방식의 하이브리드 블록체인 시스템을 제공하고, 원장 레코드와는 별도로 상태를 분산 데이터베이스로 변경하고, XOR(eXclusive OR) 형식으로 임의 주입하여 상태를 변경함으로써 오프 블록체인의 정정 및 삭제의 이력을 효율적으로 검색할 수 있는 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 XGS 주입 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 일 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기와 같은 목적을 달성하기 위한 본 발명의 일 측면에 따른 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템은, 원본 데이터를 저장하는 오프 블록체인(Off Blockchain); 및 블록체인에서만 연결된 메타데이터 값을 기록하고 분산된 총계 원장으로 보유하는 온 블록체인(On Blockchain);을 포함한다.
상기 오프 블록체인 및 온 블록체인은, 하나의 블록체인 연결에 대해 별도의 메타데이터 데이터베이스를 필요로 하는 것을 특징으로 한다.
상기 메타데이터는 사용자가 업로드한 데이터의 해시값(hash value)과 사용자의 이름값(NAME value)으로 구성되는 것을 특징으로 한다.
상기와 같은 목적을 달성하기 위한 본 발명의 다른 측면에 따른 하이브리드 블록체인을 이용한 XGS 주입 방법은, 스마트 계약 기반 블록체인 구성을 위해 생성된 함수를 포함하여 데이터 위임자의 데이터베이스를 구축하는 사전 준비 단계; 허가된 블록체인에서의 멤버 확인을 위한 인증서를 발급하고, 타원곡선 기반의 키 생성 및 인증 서버의 인증서를 발급하는 사용자 등록 단계; 데이터 소유자에 의해 데이터를 등록하는 데이터 등록 단계; 이전에 등록된 파일의 데이터를 수정 및 삭제하는 데이터 수정 및 삭제 단계; 및 원본 데이터의 상태를 데이터 등록, 수정 및 삭제에 의해 생성된 데이터의 연결값을 통해 추적하는 데이터 검색 단계;를 포함한다.
상기 사전 준비 단계는, 이전에 등록한 파일의 수정된 부분을 1로 나눔으로써 데이터 소유자의 수정된 파일을 식별하고, 이전에 등록된 파일과의 XOR 연산에 의해 모든 널 값(null value)을 계산하는 XOR 집합(Set) 추출단계; 및 이름-값 체계(Name-Value scheme)에 따라 메타데이터를 생성하는 메타데이터 생성 단계;를 포함하는 것을 특징으로 한다.
메타데이터의 이름은, 공개키와 사용자의 상태값을 연결하여 만들어지는 것을 특징으로 한다.
상기 생성된 함수는 사용자 등록 기능, 유효성 검사 기능, 데이터 등록 기능, 데이터 수정 기능, 데이터 삭제 기능 및 트랜잭션 생성 기능을 포함하는 것을 특징으로 한다.
상기 데이터 위임자의 데이터베이스를 구축하는 것은, XOR 집합(Set) 및 메타데이터를 생성하는 것을 특징으로 한다.
상기 데이터 수정 및 삭제 단계는, XOR 데이터의 수정 및 삭제, 오프 블록체인에서 전역 상태 주입의 변경과 변경, 온오프 연결(On-Off Linking) 및 온 체인 트랜잭션 배포(distribution)를 포함하는 것을 특징으로 한다.
상기 데이터 수정 및 삭제 단계는, 변형된 부분의 이진 데이터는 XOR의 특성에 따라 1로 변경하고, 삭제 단계에서 데이터와 동일한 이진 데이터가 추출되어 널 상태(null state)로 변경하는 것을 특징으로 한다.
본 발명의 일 측면에 따르면, 데이터를 분리하고 연결 이력을 블록체인에 저장하며, 원장 레코드와는 별도로 상태를 분산 데이터베이스로 변경하고, XOR(eXclusive OR) 형식으로 임의 주입하여 상태를 변경함으로써 오프 블록체인의 정정 및 삭제의 이력을 효율적으로 검색할 수 있는 효과가 있다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용들과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른 하이브리드 블록체인 시스템의 개략적인 구성도,
도 2는 본 발명의 일 실시예에 따른 하이브리드 블록체인 시스템의 개략적인 구성을 도시한 도면,
도 3은 본 발명의 일 실시예에 따른 온-오프 블록체인의 연결을 도시한 도면,
도 4는 본 발명의 일 실시예에 따른 XGS의 주입(injection)을 개략적으로 설명한 도면,
도 5는 본 발명의 일 실시예에 따른 참여개체의 구성을 도시한 도면,
도 6은 본 발명의 일 실시예에 따른 하이브리드 블록체인을 이용한 XGS 주입 방법을 개략적으로 설명한 도면,
도 7은 본 발명의 일 실시예에 따른 XOR 집합(Set)의 추출을 설명한 도면이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 “…부” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 하이브리드 블록체인 시스템의 개략적인 구성도, 도 2는 본 발명의 일 실시예에 따른 하이브리드 블록체인 시스템의 개략적인 구성을 도시한 도면, 도 3은 본 발명의 일 실시예에 따른 온-오프 블록체인의 연결을 도시한 도면, 도 4는 본 발명의 일 실시예에 따른 XGS의 주입(injection)을 개략적으로 설명한 도면, 도 5는 본 발명의 일 실시예에 따른 참여개체의 구성을 도시한 도면이다.
도 1 내지 도 2를 참조하면, 본 실시예에 따른 하이브리드 블록체인 시스템은, 사용자 장치(100), 오프(Off) 블록체인(200) 및 온(On) 블록체인(300)을 포함한다.
한편, 본 실시예를 설명함에 있어서 오프 블록체인(200) 및 온 블록체인(300)은 서버 형태일 수 있다.
사용자 장치(100)는 원본 데이터를 소유한 데이터 소유자의 단말일 수 있다. 사용자 장치(100)는 후술하는 오프 블록체인(200)으로 원본 데이터를 전송한다.
오프 블록체인(Off Blockchain)(200)은 사용자 장치(100)로부터 수신한 원본 데이터를 저장한다. 오프 블록체인(200)은 인증서버, 데이터베이스 및 스토리지를 포함할 수 있으며, 데이터 위임자(Data Delegator) 역할을 할 수 있다.
온 블록체인(On Blockchain)(300)은 블록체인에서만 연결된 메타데이터 값을 기록하고 분산된 총계 원장으로 보유한다.
한편, 오프 블록체인(Off Blockchain)(200) 및 온 블록체인(On BlockChain)(300)은 하나의 블록체인 연결에 대해 별도의 메타데이터 데이터베이스가 필요하다. 도 3에 도시된 바와 같이, 메타데이터는 사용자가 업로드한 데이터(파일)의 해시값(hash value)과 사용자의 이름값(NAME value)으로 구성된다. 이름 데이터(NAME data)는 이름값(NAME value) 방법에 따라 사용자의 공개키와 인덱스 번호를 상태에 따라 연결하여 생성된다. 이 블록은 온 블록체인(On Blockchain)(300)에 포함되어 있다. 나중에 온 블록체인(On Blockchain)(300)에서 데이터의 오프 블록체인(Off Blockchain)(200)을 조회하는 색인을 제공할 수 있다.
이더리움(Ethereum)과 하이퍼렛저(Hyperledger)는 최근 트랜잭션의 최신 상태를 블록체인의 되돌릴 수 없는 원장이 있는 분산 데이터베이스 형태로 기록한다. 따라서, 기존의 블록체인에 포함된 트랜잭션이 최신 상태의 변경에 따라 수정되거나 삭제된 것처럼 보일 수 있다. 따라서, 본 발명에서는 상술한 바와 같은 속성을 통해 XOR 기반 데이터를 재정의하고 수정한 다음 온 블록체인(On Blockchain)(300)의 상태를 변경하기 위해 임의의 트랜잭션 주입(injection)을 주입한다. XGS(XOR Global State)의 분산 데이터베이스(distribution database)는 도 4와 같이 구성될 수 있다. XOR 집합(XOR set)에 따라 키값(key-value)으로 구성된다. 수정되거나(modified) 삭제될(deleted) 데이터의 변경된 값에 의해 전역 상태(global state)로 주입되고, 오프 블록체인(Off Blockchain)(200)의 전역 상태(global state)가 인위적으로 변경된다. 링크값(linking value)을 포함한 온 블록체인(On Blockchain)(300)이 생성되고, 수정된 파일의 링크값의 온 블록체인(On Blockchain)(300)의 추적(Tracking)은 수정되기 이전의 참조값(reference value)으로 추적할 수 있다.
본 발명에 따르면 참여개체는 도 5에 도시된 바와 같이, 데이터 원본을 소유한 사용자와 데이터 위임자(data delegator)로 구성될 수 있으며, 데이터 위임자는 인증서버, 오프 저장소(Off Storage) 및 데이터베이스(Database)를 포함할 수 있다.
도 6은 본 발명의 일 실시예에 따른 하이브리드 블록체인을 이용한 XGS 주입 방법을 개략적으로 설명한 도면, 도 7은 본 발명의 일 실시예에 따른 XOR 집합(Set)의 추출을 설명한 도면이다.
도 6을 참조하면, 본 실시예에 따른 방법은, 사전 준비 단계(preliminary preparation step), 사용자 등록 단계(user registration step), 데이터 등록 단계(data registration step), 데이터 수정 및 삭제 단계(data modification and deletion step) 및 데이터 검색 단계(data retrieval step)를 포함할 수 있다.
사전 준비 단계는 스마트 계약(smart contract) 기반 블록체인 구성을 위해 생성된 함수(사용자 등록 기능, 유효성 검사 기능, 데이터 등록 기능, 데이터 수정 기능, 데이터 삭제 기능 및 트랜잭션 생성 기능 포함)를 포함하여, 데이터 위임자의 데이터베이스 구축(XOR 집합(Set) 및 메타데이터 생성)이 포함될 수 있다.
사용자 등록 단계는 허가된 블록 체인에서의 멤버 확인을 위한 인증서 발급 단계이고, 타원곡선 기반의 키 생성 및 인증 서버의 인증서 발급을 포함할 수 있다.
데이터 등록 단계는 데이터 소유자에 의해 데이터를 등록하는 단계이다. 이 단계(데이터 등록 단계)에서는 데이터 등록, 오프 링크 및 오프 체인의 온 체인 거래 배포(on-chain transaction distribution)가 포함된다.
데이터 수정 및 삭제 단계에서는 이전에 등록된 파일의 데이터를 수정 및 삭제하는 단계이다. XOR 데이터의 수정 및 삭제, 오프 블록체인에서 전역 상태 주입의 변경과 변경(injection and change of global state injection in Off Blockchain), 온오프 연결(On-Off Linking) 및 온 체인 트랜잭션 배포(distribution)를 포함할 수 있다. 데이터 수정 단계에서, 변형된 부분의 이진 데이터는 XOR의 특성에 따라 1로 변경되고, 삭제 단계에서 데이터와 동일한 이진 데이터가 추출되어 널 상태(null state)로 변경된다.
데이터 검색 단계에서는 원본 데이터의 상태를 데이터 등록, 수정 및 삭제에 의해 생성된 데이터의 연결값을 통해 추적할 수 있다.
이하. 상술한 단계에 대해 보다 상세히 설명하기로 한다.
A. 사전 준비 단계
1) XOR 집합(set) 추출
XOR(Exclusive OR : 배타적 논리합) 논리 연산은 두 비트 연산에서 이진 비트(binary bits)가 같으면 0으로, 다른 경우에는 1로 계산한다. 이 속성을 사용해, 컨텐츠 소유자(데이터 소유자)의 수정된 파일은 이전에 등록한 파일의 수정된 부분을 1로 나눔으로써 식별된다. 또한, 삭제는 0으로 설정하고, 모든 널 값(null value)은 이전에 등록된 파일과의 XOR 연산에 의해 계산된다. 이에 따라, 삭제와 같은 상태를 만든다. XOR 집합(Set) 추출의 정의는 다음과 같다. K 열의 단편(fragments)은 V의 값으로 구성되며 N으로부터 추출된다(도 7 참조).
Figure pat00001
Figure pat00002
여기서, K는 열 키(column key), V는 추출된 XOR 값, N은 최신 상태(latest state)임.
XOR 집합(Set)의 V 추출은 K 열의 이전 상태 S의 인덱스 k에 따라 여러 단편(fragments)으로 나뉜다.
Figure pat00003
Figure pat00004
여기서, k는 K에 속하고(k ∈K), S는 이전 상태(previous state)임.
XOR 집합(Set)에 따라 오래된 상태의 F에서 새로운 형재 상태의 N을 추출한다. XOR 특성에 따라 수정된 위치에서 1, 원본에서 0으로 구성한다.
2) 메타데이터 생성
메타데이터는 이름-값 체계(Name-Value scheme)에 따라 생성되고, 이름은 공개키와 사용자의 상태값을 연결하여 만들어진다. 데이터의 상태에 따라, 상태값은 공개키를 등록용으로 1, 수정용으로 2, 삭제용으로 0을 연결하여 이름값으로 할당한다. 따라서, 값은 원래 데이터에 해당하는 해시값 및 이름에 연결된다.
B. 사용자 등록 단계
STEP 1. 사용자는 소수 n(prime number n)에서 임의의 숫자 SKUSER을 선택한다.
STEP 2. SKUSER를 통해 n 그룹의 곱셈군(multiplicative group) 생성자 G를 통하여 공개키 PKUESR을 생성한다.
Figure pat00005
STEP 3. 사용자는 공개키 PKUSER을 인증서버에 등록하고, 인증서 발급을 요청한다.
STEP 4. 인증서버는 [1, n-1]에서 난수(random number) K를 선택한다.
STEP 5. 인증서버는 타원 곡선상 한 점 (X1, Y1)=K*G를 선택하고, r=X1 mod n을 계산한 후, r=0이면 k를 다시 선택한다.
STEP 6. 인증서버는 사용자의 공개키를 포함하는 인증서 메시지 e=hash(m)을 계산한다.
STEP 7. 인증서버는 S=k-1(e+SKCA) mod n을 계산하여 서명 (R, S)와 함께 사용자에게 반환한다.
STEP 8. 사용자는 인증서의 서명을 검증한다.
Figure pat00006
Figure pat00007
Figure pat00008
Figure pat00009
Figure pat00010
Figure pat00011
C. 데이터 등록 단계
이 단계에서 사용자는 별도의 블록체인 오프 스토리지에 데이터를 등록한다. 사용자는 허가된 블록체인(Permissioned Blockchain)의 CA(Certificate Authority: 인증 권위자)을 이용하여 인증서 기반 개인키를 통해 인증을 수행한다. 합법적인 사용자는 자신의 데이터를 등록한다.
STEP 1. 사용자는 데이터 위임자(data delegator)에게 서명과 함께 데이터를 등록한다.
Figure pat00012
STEP 2. 데이터 위임자의 오프 스토리지(Off Storage)에는 데이터 원본을 저장하고, 데이터베이스에는 데이터 식별 정보인 메타데이터를 생성하여 저장한다.
(H(D)||1||
Figure pat00013
Figure pat00014
STEP 3. 스마트 계약 배포 및 생성(smart contract distribution and creation)을 통해 트랜잭션을 발생시킨다.
STEP 4. 데이터 등록 함수 호출(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우, 다음 단계를 진행한다.
Figure pat00015
STEP 5. 트랜잭션 서명 검증, 사용자 공개키 검증(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우, 트랜잭션을 생성한다.
Figure pat00016
D. 데이터 수정 단계
이 단계에서, 사용자는 이전에 등록된 데이터의 수정을 요청할 때, 수정될 데이터를 등록한다. XOR 집합(Set)에 따라 키 값(Key value)으로 구성되어 있으며, 수정될 데이터의 수정된 값 만큼 1로 설정된 이진값을 사용하여 전역 상태(global state)로 주입되고, 해제 블록체인의 전역 상태(global state)가 인공(artificial)으로 변경된다. 현재, 온 블록체인(On Blockchain)의 트랜잭션은 서버의 서명과 사용자의 서명과 같은 유효한 스마트 계약이 검증될(validated) 경우에만 발생한다.
STEP 1. 사용자는 데이터 위임자에게 서명과 함께 수정 데이터를 등록한다.
Figure pat00017
STEP 2. 데이터 위임자는 사용자가 수정한 데이터에서 XOR 집합(Set)을 계산하여 이전에 등록된 데이터 간에 수정된 부분을 추출한다. 사전 등록된 데이터의 상태인 구 상태(old state)로부터 새롭게 수정된 파일의 수정된 부분의 이진 데이터는 키 S(K)로서 K로 설정되고, 버전 N의 XOR 집합(Set)이 생성된다.
Figure pat00018
Figure pat00019
Figure pat00020
Figure pat00021
Figure pat00022
Figure pat00023
STEP 3. 데이터 위임자는 XOR 집합(Set) 만큼을 현재 상태와 XOR하여 전역 상태(global state)를 변경한다.
STEP 4. 데이터 위임자는 오프 체인(off-chain)의 전역 상태(global state) 변경에 따라 온 체인(On Chain)의 연결(Linking)을 위한 주입(injection) 메타데이터를 생성한다.
(H(D)
Figure pat00024
Figure pat00025
Data||2||
Figure pat00026
Figure pat00027
STEP 5. 스마트 계약 배포 및 생성을 통해 트랜잭션을 발생시킨다.
STEP 6. 데이터 등록 함수 호출(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우 다음 단계를 진행한다.
Figure pat00028
STEP 7. 트랜잭션 서명 검증, 사용자 공개키 검증(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우 트랜잭션을 생성한다.
Figure pat00029
E. 데이터 삭제 단계
이 단계에서 사용자가 사전 등록된 데이터 삭제를 요청하면 삭제할 데이터를 선택한다. XOR 집합(Set)에 따라 키값(Key-Value)로 구성되어 있으며, 삭제할 데이터는 사전 등록된 데이터와 같은 XOR 값으로 전역 상태(Global State)에 주입(injection)되어 오프 블록체인(Off Blockchain)의 전역 상태(Global State)를 인위로 변경한다. 현재, 온 블록체인(On Blockchain)의 트랜잭션은 서버의 서명과 사용자의 서명과 같은 유효한 스마트 계약이 검증될(validated) 경우에만 발생한다.
STEP 1. 데이터등록 서명이 포함된 데이터를 삭제한다.
Figure pat00030
STEP 2. 데이터 위임자는 사용자의 삭제 데이터로부터 사전 등록된 데이터와 동일한 이진값(Binary Value)을 사용해 XOR 집합(Set)을 계산한다. 사전 등록된 데이터의 상태인 구 상태(Old State)로부터 삭제된 파일의 이진 데이터는 키 S(K)로서 K로 설정되고, 버전 N의 XOR 집합(Set)이 생성된다.
Figure pat00031
Figure pat00032
Figure pat00033
Figure pat00034
Figure pat00035
Figure pat00036
STEP 3. 데이터 위임자는 XOR 집합(Set) 만큼을 현재 상태와 XOR하여 전역 상태(Global State)를 변경한다.
STEP 4. 데이터 위임자는 오프 체인(Off Chain)의 전역 상태(Global State) 변경에 따른 온 체인(On Chain)의 연결(Linking)을 위해 주입(injection) 메타데이터를 생성한다.
(H(D)
Figure pat00037
Figure pat00038
Data||0||
Figure pat00039
Figure pat00040
STEP 5. 스마트 계약 배포 및 생성을 통해 트랜잭션을 발생시킨다.
STEP 6. 데이터 등록 함수 호출(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우 다음 단계를 진행한다.
Figure pat00041
STEP 7. 트랜잭션 서명 검증, 사용자 공개키 검증(아래식 참고)을 인수로 하여 반환값을 검증한다. 참일 경우 트랜잭션을 생성한다.
Figure pat00042
F. 데이터 검색 단계
이 단계에서, 하이브리드 블록체인을 통해 컨텐츠를 추적 및 조회한다. 이를 통해, 컨텐츠 등록, 수정 및 삭제에 대한 상태 조회가 가능하다.
STEP 1. 사용자는 온 블록체인(On Blockchain)을 통해 컨텐츠 메타데이터를 검색한다.
STEP 2. 컨텐츠의 메타데이터는 온 블록체인(On Blockchain)의 하위 리프 노드(Leaf Node)로 하여 병합 트리의 루트값을 검증한다.
Figure pat00043
Figure pat00044
= h((
Figure pat00045
Figure pat00046
Figure pat00047
Figure pat00048
)||(
Figure pat00049
Figure pat00050
Figure pat00051
Figure pat00052
))
Figure pat00053
Figure pat00054
=
Figure pat00055
Figure pat00056
Meta Data =
Figure pat00057
Figure pat00058
Figure pat00059
Figure pat00060
,
Figure pat00061
Figure pat00062
STEP 3. 온 블록체인(On Blockchain)의 루트값이 유효하면, 메타데이터 연결(Linking) 값을 오프 블록체인(Off Blockchain)에서 검증한다.
STEP 4. 컨텐츠 제공자가 오프 사이트 데이터베이스(Off-site database)에 연결된 연결값(linking value)의 이름값(Name-Value)를 확인한다.
한편, 상술한 바와 같은 본 발명에 따르면 아래와 같은 결과를 얻을 수 있다.
- 인증(Authentication) : 사용자의 공개키와 해당 개인키의 접근에 따라 사용자 인증을 제공하고, 해시값을 포함한 메타데이터를 통해 메시지 인증을 제공한다.
- 신뢰성(Reliability) : 전체 네트워크의 신뢰성을 보장하기 위해 블록체인의 분산된 체인 네트워크를 통해 견고한 무결성을 제공한다.
- 효율성(Efficiency) : 선형 검색 대신 XGS 기반 색인을 추가하여 검색하여 온 블록체인(On Blockchain)을 구성하여 효과적인 검색을 수행한다.
- 개인정보보호(Privacy) : 원본 데이터를 별도의 오프 블록체인(Off Blockchain)에 보관하고, 온 블록체인(On Blockchain)에 메타데이터만 등록하여 데이터 원본의 개인 정보를 보호한다. 또한, 사용자는 수정 및 삭제를 수행한다.
- 추적성(Traceability) : 원본 데이터가 완전히 사라지는 대신 XOR 데이터를 수정하거나 삭제하여 원본 데이터의 상태(등록, 수정, 삭제)를 조회하고 추적할 수 있다.
본 발명의 실시예에 따른 방법들은 애플리케이션으로 구현되거나 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는, 본 발명을 위한 특별히 설계되고 구성된 것들이거니와 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니 된다. 또한, 본 명세서의 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서의 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.
도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 앱 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것은 아니다.
100 : 사용자 장치
200 : 오프(Off) 블록체인
300 : 온(On) 블록체인

Claims (10)

  1. 원본 데이터를 저장하는 오프 블록체인(Off Blockchain); 및
    블록체인에서만 연결된 메타데이터 값을 기록하고 분산된 총계 원장으로 보유하는 온 블록체인(On Blockchain);을 포함하는 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템.
  2. 제 1 항에 있어서,
    상기 오프 블록체인 및 온 블록체인은, 하나의 블록체인 연결에 대해 별도의 메타데이터 데이터베이스를 필요로 하는 것을 특징으로 하는 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템.
  3. 제 2 항에 있어서,
    상기 메타데이터는 사용자가 업로드한 데이터의 해시값(hash value)과 사용자의 이름값(NAME value)으로 구성되는 것을 특징으로 하는 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템.
  4. 스마트 계약 기반 블록체인 구성을 위해 생성된 함수를 포함하여 데이터 위임자의 데이터베이스를 구축하는 사전 준비 단계;
    허가된 블록체인에서의 멤버 확인을 위한 인증서를 발급하고, 타원곡선 기반의 키 생성 및 인증 서버의 인증서를 발급하는 사용자 등록 단계;
    데이터 소유자에 의해 데이터를 등록하는 데이터 등록 단계;
    이전에 등록된 파일의 데이터를 수정 및 삭제하는 데이터 수정 및 삭제 단계; 및
    원본 데이터의 상태를 데이터 등록, 수정 및 삭제에 의해 생성된 데이터의 연결값을 통해 추적하는 데이터 검색 단계;를 포함하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  5. 제 4 항에 있어서,
    상기 사전 준비 단계는,
    이전에 등록한 파일의 수정된 부분을 1로 나눔으로써 데이터 소유자의 수정된 파일을 식별하고, 이전에 등록된 파일과의 XOR 연산에 의해 모든 널 값(null value)을 계산하는 XOR 집합(Set) 추출단계; 및
    이름-값 체계(Name-Value scheme)에 따라 메타데이터를 생성하는 메타데이터 생성 단계;를 포함하는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  6. 제 5 항에 있어서,
    메타데이터의 이름은, 공개키와 사용자의 상태값을 연결하여 만들어지는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  7. 제 4 항에 있어서,
    상기 생성된 함수는 사용자 등록 기능, 유효성 검사 기능, 데이터 등록 기능, 데이터 수정 기능, 데이터 삭제 기능 및 트랜잭션 생성 기능을 포함하는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  8. 제 4 항에 있어서,
    상기 데이터 위임자의 데이터베이스를 구축하는 것은,
    XOR 집합(Set) 및 메타데이터를 생성하는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  9. 제 4 항에 있어서,
    상기 데이터 수정 및 삭제 단계는,
    XOR 데이터의 수정 및 삭제, 오프 블록체인에서 전역 상태 주입의 변경과 변경, 온오프 연결(On-Off Linking) 및 온 체인 트랜잭션 배포(distribution)를 포함하는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.
  10. 제 4 항에 있어서,
    상기 데이터 수정 및 삭제 단계는,
    변형된 부분의 이진 데이터는 XOR의 특성에 따라 1로 변경하고, 삭제 단계에서 데이터와 동일한 이진 데이터가 추출되어 널 상태(null state)로 변경하는 것을 특징으로 하는 하이브리드 블록체인을 이용한 XGS 주입 방법.

KR1020190096496A 2019-03-11 2019-08-08 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법 KR102330005B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20190027454 2019-03-11
KR1020190027454 2019-03-11

Publications (2)

Publication Number Publication Date
KR20200108757A true KR20200108757A (ko) 2020-09-21
KR102330005B1 KR102330005B1 (ko) 2021-11-24

Family

ID=72708015

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190096496A KR102330005B1 (ko) 2019-03-11 2019-08-08 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법

Country Status (1)

Country Link
KR (1) KR102330005B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112381650A (zh) * 2020-11-18 2021-02-19 西安纸贵互联网科技有限公司 跨链互操作的交易处理方法、装置、电子设备和存储介质
KR102267560B1 (ko) * 2020-11-13 2021-06-21 주식회사 케이사인 블록 체인에 저장되는 데이터 크기를 축소할 수 있는 데이터의 변경 이력 관리 방법
US11522726B1 (en) 2021-06-29 2022-12-06 Fmr Llc Systems and methods for reading, storing, and correcting historical records in distributed ledgers
WO2024015471A1 (en) * 2022-07-12 2024-01-18 VeriTX Corp. Data assurance solution using verifiable credentials and blockchain

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101893729B1 (ko) * 2018-03-28 2018-10-04 주식회사 마크로젠 복수의 블록체인에 기반한 데이터 공유 방법
KR20180112061A (ko) * 2016-02-23 2018-10-11 엔체인 홀딩스 리미티드 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법
KR101964692B1 (ko) 2017-05-12 2019-04-02 주식회사 엑스블록시스템즈 블록체인 시스템 및 블록체인을 이용한 데이터 관리 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180112061A (ko) * 2016-02-23 2018-10-11 엔체인 홀딩스 리미티드 블록체인 집행의 스마트 계약을 위한 레지스트리 및 자동화 관리 방법
KR101964692B1 (ko) 2017-05-12 2019-04-02 주식회사 엑스블록시스템즈 블록체인 시스템 및 블록체인을 이용한 데이터 관리 방법
KR101893729B1 (ko) * 2018-03-28 2018-10-04 주식회사 마크로젠 복수의 블록체인에 기반한 데이터 공유 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Carlos Molina-Jimenez et al., On and Off-Blockchain Enforcement of Smart Contracts, NEWCASTLE UNIVERSITY School of Computing. Technical Report Series. CS-TR-1519. 2018.04. 1부.* *
정은희, 이병관. 해시 체인 기반 일회용 키를 이용한 하둡 보안 프로토콜 설계. 한국정보전자통신기술학회논문지 Vol.10. Iss.4. 340-349페이지. 2017. *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102267560B1 (ko) * 2020-11-13 2021-06-21 주식회사 케이사인 블록 체인에 저장되는 데이터 크기를 축소할 수 있는 데이터의 변경 이력 관리 방법
CN112381650A (zh) * 2020-11-18 2021-02-19 西安纸贵互联网科技有限公司 跨链互操作的交易处理方法、装置、电子设备和存储介质
CN112381650B (zh) * 2020-11-18 2024-02-27 西安纸贵互联网科技有限公司 跨链互操作的交易处理方法、装置、电子设备和存储介质
US11522726B1 (en) 2021-06-29 2022-12-06 Fmr Llc Systems and methods for reading, storing, and correcting historical records in distributed ledgers
WO2024015471A1 (en) * 2022-07-12 2024-01-18 VeriTX Corp. Data assurance solution using verifiable credentials and blockchain

Also Published As

Publication number Publication date
KR102330005B1 (ko) 2021-11-24

Similar Documents

Publication Publication Date Title
KR102330005B1 (ko) 효율적인 내용 변경 및 삭제를 위한 하이브리드 블록체인 시스템 및 하이브리드 블록체인을 이용한 xgs 주입 방법
CN110059495B (zh) 数据共享方法、装置及系统、电子设备
Zhang et al. Authenticated keyword search in scalable hybrid-storage blockchains
CN102833346B (zh) 基于存储元数据的云敏感数据安全保护系统及方法
US11170114B2 (en) Electronic storage system and a method of data management
CN110147684B (zh) 用于实现区块链数据隐私保护的方法及设备
CN110837491B (zh) 一种区块链金融大数据处理系统及方法
CN111047324A (zh) 用于更新区块链节点处的公钥集合的方法及装置
CN110096903B (zh) 基于区块链的资产验证方法及区块链网络系统
CN110163007A (zh) 基于区块链的数据完整性验证方法、设备和存储介质
CN112000632B (zh) 密文的分享方法、介质、分享客户端及系统
CN114826703B (zh) 基于区块链的数据搜索细粒度访问控制方法及系统
CN110149335B (zh) 建立用于区块链数据隐私保护的私有区域的方法及设备
CN111651779B (zh) 一种在区块链中进行加密图像检索的隐私保护方法
CN111680013A (zh) 基于区块链的数据共享方法、电子设备和装置
Etemad et al. Generic dynamic data outsourcing framework for integrity verification
CN110188545B (zh) 一种基于链式数据库的数据加密方法及装置
CN116777476A (zh) 基于公钥可搜索加密的药品可信溯源方法
WO2019213752A1 (en) A method and system for managing digital assets in a blockchain
CN108876378A (zh) 公有链数据加密备份方法
CN109067849A (zh) 基于区块的数据同步方法
WO2019028442A1 (en) VERTICAL EFFECTIVE POSSESSION TOKEN WITH CHECKABLE STATE OF EVOLUTION
El Khanboubi et al. A new data deletion scheme for a blockchain-based de-duplication system in the cloud
Ra et al. A study on hybrid blockchain-based XGS (XOR global State) injection technology for efficient contents modification and deletion
He et al. Enabling Decentralized and Dynamic Data Integrity Verification for Secure Cloud Storage via T‐Merkle Hash Tree Based Blockchain

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant