KR20200139845A - 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치 - Google Patents

데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치 Download PDF

Info

Publication number
KR20200139845A
KR20200139845A KR1020207034802A KR20207034802A KR20200139845A KR 20200139845 A KR20200139845 A KR 20200139845A KR 1020207034802 A KR1020207034802 A KR 1020207034802A KR 20207034802 A KR20207034802 A KR 20207034802A KR 20200139845 A KR20200139845 A KR 20200139845A
Authority
KR
South Korea
Prior art keywords
data
version
check value
target object
block
Prior art date
Application number
KR1020207034802A
Other languages
English (en)
Other versions
KR102289995B1 (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 KR20200139845A publication Critical patent/KR20200139845A/ko
Application granted granted Critical
Publication of KR102289995B1 publication Critical patent/KR102289995B1/ko

Links

Images

Classifications

    • 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/13File access structures, e.g. distributed indices
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • 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/24Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures 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/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2308Concurrency control
    • G06F16/2315Optimistic concurrency control
    • G06F16/2329Optimistic concurrency control using versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Engineering (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computational Linguistics (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치가 제공된다. 방법은 타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하는 단계(101); 타깃 물체의 제1 검사값과 가까운 제2 데이터 버전의 제2 검사값을 검색하는 단계(102); 제1 검사값 및 제2 검사값에 따라, 데이터 블록을 생성하는 단계(103); 및 데이터 블록을 블록체인에 저장하는 단계(104)를 포함한다. 타깃 물체의 제1 데이터 버전의 제1 검사값은 데이터 블록에 의해 블록체인에 저장된다. 블록체인이 불변이기 때문에, 타깃 물체의 제1 데이터 버전에 대응하는 데이터 콘텐츠를 획득할 때, 데이터 요구자는 블록체인에 저장된 제1 검사값에 따라, 제1 데이터 버전에 대응하는 데이터 콘텐츠가 변경되었는지를 검사할 수 있어서, 제1 데이터 버전에 대응하는 데이터 콘텐츠의 진위를 결정하고, 쉽게 변경 가능한 데이터 콘텐츠에 기인한 데이터 콘텐츠의 진위를 결정하는 불능의 문제를 효과적으로 해결하고, 그리고 데이터 요구자의 데이터 분석 효율을 증가시킨다.

Description

데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치{DATA STORAGE, DATA CHECK, AND DATA LINKAGE METHOD AND APPARATUS}
본 출원은 중국 특허 출원, 출원 번호 제201610694496.6호(발명의 명칭: "Data Storage, Data Check, and Data Linkage Method and Apparatus", 출원일: 2016년 8월 19일)의 우선권을 주장하고, 상기 기초 출원은 이의 전문이 참고로 본 출원에 편입된다.
본 출원은 인터넷 정보 처리의 기술 분야, 구체적으로, 데이터 저장, 데이터 인증 및 데이터 추적 방법 및 장치에 관한 것이다.
디지털 정보화 시대에서, 데이터는 더 이상 찾기 어려운 텍스트 기록이 아니지만 생산값을 포함하는 정보 자원이다. 데이터에 포함된 정보 자원을 정확히 분석하기 위해서, 데이터 저장의 진위가 보장되어야 하고, 즉, 데이터베이스에 저장된 데이터가 원본 데이터임을 보장한다.
소위 데이터 추적은 원본 데이터의 이볼루션 정보(evolution information) 및 이볼루션 처리 콘텐츠를 데이터의 전체 라이프 사이클(생성으로부터 소멸로의 전파까지)에 걸쳐 기록하는 것으로서 이해될 수 있다. 원본 데이터의 연구는 데이터의 전체 라이프 사이클에 걸쳐 원본 데이터의 이볼루션을 추적할 수 있고 그리고 원본 데이터의 데이터 출처를 결정할 수 있다. 그것은 데이터 제공자와 데이터 요구자에게 중요한 문제이다.
현재, 데이터 제공자는 데이터를 데이터베이스에 저장하고, 그리고 저장될 데이터 콘텐츠뿐만 아니라 저장될 데이터와 관련된 다른 정보(예를 들어, 데이터의 생산자, 데이터가 버전 변화를 갖는지의 여부 및 데이터 생성의 시간)를 데이터베이스에 저장한다. 데이터 요구자가 데이터를 데이터베이스로부터 획득해야 할 때, 데이터 제공자는 데이터 요구자에게 획득될 데이터에 액세스하기 위한 디지털 서명을 제공할 것이다. 데이터 요구자는 이 디지털 서명에 기초하여 데이터베이스로부터 획득될 데이터를 획득하고, 그리고 획득될 데이터의 진위를 검사한다.
그러나, 데이터 제공자는 데이터를 데이터베이스에 저장하고, 그리고 현재 사용되는 다수의 데이터베이스는 변경 기능을 갖는다. 데이터 제공자가 데이터 요구자에게 버전 A 데이터(버전 A 데이터에 대응하는 디지털 서명은 A1임)를 제공할 것이라고 약속했지만, 다른 이유로, 데이터 제공자가 데이터 요구자에게 버전 B 데이터를 제공하고(하지만 데이터 요구자는 획득된 데이터가 버전 A 데이터 또는 버전 B 데이터인지를 알지 못함), 그리고 버전 B에 기초하여 획득된 디지털 서명은 B1라고 가정해보자. 데이터 요구자가 획득된 데이터가 버전 A 데이터라고 믿게 하기 위해서, 데이터 제공자는 데이터베이스에 저장된 버전 A 데이터에 대응하는 디지털 서명을 변경할 수도 있고, 즉, 버전 A 데이터의 디지털 서명을 B1로 변경할 수도 있다. 이 방식으로, 데이터 요구자가 B1을 사용함으로써 검사할 때, 검사 결과는 OK이다. 이것은 데이터 요구자가 획득된 버전 B 데이터가 데이터 요구자가 획득하길 원하는 버전 A 데이터라고 믿게 하지만, 실제로, 데이터 요구자가 획득한 데이터는 데이터 요구자가 획득하길 원하는 버전 A 데이터가 아니다. 그 결과, 획득된 버전 B 데이터에 기초하여 데이터 요구자가 획득한 데이터 분석 결과는 예상 결과와 큰 편차를 가져서, 데이터 요구자에 대한 손실을 유발한다.
요약하면, 데이터 저장 방법은 현재의 기술에서 데이터의 쉬운 부당 변경에 기인한 데이터 진위를 결정하는 불능의 문제를 해결하기 위해서 긴급히 필요하다.
위의 내용에 비추어, 본 출원의 실시형태는 현재의 기술에서 데이터의 쉬운 부당 변경에 기인한 데이터 진위를 결정하는 불능의 문제를 해결하기 위해서 데이터 저장, 데이터 인증 및 데이터 추적 방법 및 장치를 제공한다.
본 출원의 실시형태는,
타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하는 단계;
제1 데이터 버전과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값을 검색하는 단계; 및
제1 검사값 및 제2 검사값에 기초하여 데이터 블록을 생성하고 그리고 데이터 블록을 블록체인에 저장하는 단계를 포함하는, 데이터 저장 방법을 제공하되, 블록체인에 저장된 데이터 블록은 불변이다.
본 출원의 실시형태는,
타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하는 결정 모듈;
제1 데이터 버전과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값을 검색하는 검색부; 및
제1 검사값 및 제2 검사값에 기초하여, 데이터 블록을 생성하고 그리고 데이터 블록을 블록체인에 저장하는 저장 모듈을 포함하는, 데이터 저장 장치를 제공하되, 블록체인에 저장된 데이터 블록은 불변이다.
본 출원의 실시형태에 의해 채택된 앞서 말한 기술적 해결책 중 적어도 하나는 다음의 이로운 효과를 달성할 수 있다;
타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하는 것을 통해; 제1 데이터 버전과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값을 검색하고; 제1 검사값 및 제2 검사값에 기초하여 데이터 블록을 생성하고 그리고 데이터 블록을 블록체인에 저장하는 것. 타깃 물체의 제1 데이터 버전의 제1 검사값은 데이터 블록의 형태로 블록체인에 저장된다. 블록체인이 불변의 특징을 갖기 때문에, 데이터 요구자가 타깃 물체의 제1 데이터 버전에 대응하는 데이터 콘텐츠를 획득할 때, 데이터 요구자가 블록체인에 저장된 제1 검사값에 기초하여, 제1 데이터 버전에 대응하는 데이터 콘텐츠가 변경되었는지를 검사할 수 있어서, 제1 데이터 버전에 대응하는 데이터 콘텐츠의 진위를 결정하고, 데이터 콘텐츠의 쉬운 변경에 기인한 데이터 콘텐츠의 진위를 결정하는 불능의 문제를 효과적으로 해결하고, 그리고 데이터 요구자의 데이터 분석 효율을 증가시킨다.
본 출원의 실시형태는,
데이터 인증 요청을 수신하는 단계로서, 데이터 인증 요청은 인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함하는, 데이터 인증 요청을 수신하는 단계;
데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색하는 단계; 및
데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여, 인증될 데이터의 데이터 콘텐츠를 인증하는 단계를 포함하는, 데이터 인증 방법을 더 제공한다.
본 출원의 실시형태는,
데이터 인증 요청을 수신하는 수신 모듈로서, 데이터 인증 요청은 인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함하는, 수신 모듈;
블록체인에서, 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색하는 검색 모듈; 및
데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여 인증될 데이터의 데이터 콘텐츠를 인증하는 인증 모듈을 포함하는, 데이터 인증 장치를 더 제공한다.
본 출원의 실시형태에 의해 채택된 앞서 말한 기술적 해결책 중 적어도 하나는 다음의 이로운 효과를 달성할 수 있다;
인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함하는, 데이터 인증 요청을 수신하는 것을 통해; 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색하고; 데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여, 인증될 데이터의 데이터 콘텐츠를 인증하는 것. 블록체인이 불변의 특징을 갖기 때문에, 데이터 버전의 버전 식별자에 대응하는 블록체인으로부터 획득된 사전에 저장된 검사값은 진본이다. 진본인 검사값은 데이터 인증 요청 내 인증될 데이터가 부당 변경되었는지를 검사하도록 사용되어, 인증될 데이터의 진위를 보장한다.
본 출원의 실시형태는,
데이터 역추적 요청을 수신하는 단계로서, 데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함하는, 데이터 역추적 요청을 수신하는 단계;
제1 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 획득하는 단계;
제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적으로 역추적하고 그리고 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득하는 단계; 및
데이터 블록에 기초하여, 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠를 결정하는 단계를 포함하는, 데이터 추적 방법을 더 제공한다.
본 출원의 실시형태는,
데이터 역추적 요청을 수신하는 수신 모듈로서, 데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함하는, 수신 모듈;
블록체인에서, 제1 데이터 버전의 버전 식별자에 기초하여, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 획득하고; 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적으로 역추적하여 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득하는 역추적 모듈; 및
데이터 블록에 기초하여 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠를 결정하는 결정 모듈을 포함하는, 데이터 추적 장치를 더 제공한다.
본 출원의 실시형태에 의해 채택된 앞서 말한 기술적 해결책 중 적어도 하나는 다음의 이로운 효과를 달성할 수 있다;
데이터 역추적 요청(데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함함)을 수신하는 것을 통해; 제1 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 획득하고; 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적으로 역추적하여 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득하고; 데이터 블록에 기초하여, 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠를 결정하는 것. 타깃 물체의 제1 데이터 버전의 버전 식별자와 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자 둘 다가 데이터 블록의 형태로 블록체인에 저장되기 때문에, 그리고 블록체인이 불변의 특징을 갖고 그리고 연계된 데이터 구조를 채택하기 때문에, 역추적될 데이터의 이볼루션된 버전뿐만 아니라 모든 이볼루션된 버전에 대응하는 데이터 콘텐츠를 역추적하고 찾으며 그리고 데이터 이볼루션의 진위를 보장하는 것이 가능하다.
본 명세서에 설명된 도면은 본 출원의 추가의 이해를 제공하도록 의도되고 그리고 본 출원의 일부를 이루며, 그리고 본 출원의 예시적인 실시형태들 및 이들의 설명은 본 출원을 설명하도록 의도되고 그리고 본 출원을 제한하도록 의도되지 않는다.
도 1은 본 출원의 일부 실시형태에 따른, 데이터 저장 방법의 흐름도.
도 2는 블록체인 내 다양한 블록에 생성된 데이터 블록의 구조도.
도 3은 본 출원의 일부 실시형태에 따른, 데이터 인증 방법의 흐름도.
도 4는 본 출원의 일부 실시형태에 따른, 데이터 인증 방법의 시나리오의 개략도.
도 5는 본 출원의 일부 실시형태에 따른, 데이터 추적 방법의 흐름도.
도 6은 본 출원의 일부 실시형태에 따른, 데이터 추적 방법의 시나리오의 개략도.
도 7은 본 출원의 일부 실시형태에 따른, 데이터 저장 장치의 구조도.
도 8은 본 출원의 일부 실시형태에 따른, 데이터 인증 장치의 구조도.
도 9는 본 출원의 일부 실시형태에 따른, 데이터 추적 장치의 구조도.
본 출원의 목적을 달성하기 위해서, 본 출원의 실시형태는 타깃 물체의 제1 데이터 버전의 제1 검사값을 데이터 블록의 형태로 블록체인에 저장하는, 데이터 저장, 데이터 인증 및 데이터 추적 방법 및 장치를 제공한다. 블록체인이 불변의 특징을 갖기 때문에, 데이터 요구자가 타깃 물체의 제1 데이터 버전에 대응하는 데이터 콘텐츠를 획득할 때, 데이터 요구자가 블록체인에 저장된 제1 검사값에 기초하여, 제1 데이터 버전에 대응하는 데이터 콘텐츠가 변경되었는지를 검사할 수 있어서, 제1 데이터 버전에 대응하는 데이터 콘텐츠의 진위를 결정하고, 데이터 콘텐츠의 쉬운 변경에 기인한 데이터 콘텐츠의 진위를 결정하는 불능의 문제를 효과적으로 해결하고, 그리고 데이터 요구자의 데이터 분석 효율을 증가시킨다.
본 출원의 실시형태에 기록된 블록체인이 신뢰할 수 있는 데이터베이스로서 이해될 수도 있고, 그리고 신뢰할 수 있는 데이터베이스가 비관계형 데이터베이스와 유사한 데이터베이스인 것에 유의해야 한다. 종래의 데이터베이스와 비교하여, 신뢰할 수 있는 데이터베이스는 다음의 차이를 갖는다: 신뢰할 수 있는 데이터베이스는 분권화되고 그리고 불신의 특징을 갖는다. 소위 "분권화된"은 블록체인에 기초한 시스템에서, 중앙집권화된 하드웨어 또는 관리 기구가 없고, 시스템의 임의의 노드 간의 권리 및 의무가 같고, 그리고 임의의 노드의 손상 또는 손실이 전체 시스템의 작동에 영향을 주지 않을 것임을 의미한다.
소위 "불신"은 전체 시스템의 임의의 노드 간의 데이터 교환의 참여가 상호 신뢰를 필요로 하지 않고, 전체 시스템의 작동 규칙이 개방적이고 투명하며, 그리고 전체 시스템의 데이터 콘텐츠가 또한 개방적이어서, 시스템에 의해 설정된 규칙 및 시간의 범위 내에서, 노드가 다른 노드를 속일 수 없거나 또는 속일 방식을 갖지 않는다는 것을 의미한다.
본 출원의 실시형태에 기록된 기술적 해결책은 데이터 구조(차후에 이것은 "데이터 블록"으로서 지칭될 수도 있음)를 제안한다. 이 데이터 구조는 데이터 헤더(data header) 및 데이터 바디(data body)를 포함한다. 데이터 헤더는 타깃 물체의 현재의 데이터 버전의 검사값 및 현재의 데이터 버전과 가까운 이전의 데이터 버전의 검사값을 저장하여 타깃 물체의 차후의 데이터 추적을 용이하게 한다. 데이터 바디는 현재의 데이터 버전에 대응하는 타깃 물체의 데이터 콘텐츠를 저장할 수도 있거나 또는 다른 콘텐츠를 저장할 수도 있다. 여기에 제한은 없다. 이 방식으로, 이 데이터 구조 및 블록체인을 통해, 타깃 물체의 무결성과 진위 및 타깃 물체의 이볼루션이 보장된다.
본 출원의 기술적 해결책은 이제 본 출원의 실시형태 및 첨부된 도면을 참조함으로써 분명히 그리고 완전히 설명될 것이다. 분명히, 설명된 실시형태는 본 출원의 실시형태의 일부만이고 전부가 아니다. 본 출원의 실시형태에 기초하여, 창조적 노력 없이 당업자에 의해 획득된 모든 다른 실시형태는 본 출원의 범위 내에 속할 것이다.
아래에, 본 출원의 실시형태에 따른 기술적 해결책이 첨부된 도면을 참조함으로써 상세히 설명된다.
실시형태 1
도 1은 본 출원의 일부 실시형태에 따른, 데이터 저장 방법의 흐름도이다. 방법은 아래에 나타낸 바와 같을 수도 있다.
단계(101): 타깃 물체의 제1 데이터 버전의 제1 검사값을 결정.
본 출원의 실시형태에서, 여기서 타깃 물체는 임의의 형태의 데이터일 수도 있다. 타깃 물체는 비즈니스 폼, 책의 원고 또는 소프트웨어 소스 코드일 수도 있거나; 또는 타깃 물체는 사진의 세트, 하나의 음악 작품 또는 비디오일 수도 있다. 여기에 제한은 없다.
여기서 타깃 물체의 데이터 버전은 타깃 물체의 전체 라이프 사이클 동안 이볼루션 및 생성된 상이한 데이터 콘텐츠를 나타낼 수도 있다. 식별자는 모든 데이터 콘텐츠에 대해 설정될 수도 있다. 이 식별자는 데이터 버전의 버전 식별자로 불릴 수도 있다.
예를 들어: 비디오에 대해, 비디오의 모든 부분(또는 모든 시즌)은 데이터 버전으로 불릴 수도 있다. 비디오 A의 제1 부분이 데이터 버전 1.0에 대응한다고 가정하면, 그러면 이볼루션 과정에서 비디오 A의 제2 부분이 데이터 버전 2.0에 대응하고, 비디오 A의 제3 부분이 데이터 버전 3.0에 대응하고,......, 비디오 A의 N번째 부분이 데이터 버전 n.0에 대응한다.
또 다른 예로써: 애플리케이션 소프트웨어에 대해, 애플리케이션 소프트웨어의 복수의 버전이 개발 필요성에 따라 나타날 수도 있다. 애플리케이션 소프트웨어의 이볼루션 과정에서 애플리케이션 소프트웨어의 버전이 버전 1.0, 버전 1.0.1, 버전 1.0.1.1, 버전 2.0, 버전 2.0.1, ......을 포함한다고 가정해보자.
본 출원의 실시형태에서 타깃 물체의 제1 데이터 버전은 타깃 물체의 현재의 데이터 버전을 나타낼 수도 있다. 예를 들어, 앞서 말한 애플리케이션 소프트웨어를 참조하면, 제1 데이터 버전에 대응하는 버전 번호는 2.0.1이다.
예를 들어, 본 출원의 실시형태에서, 타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하기 위한 방법은 제한 없이, 다음의 방법을 포함한다;
첫째로, 제1 데이터 버전 내 타깃 물체의 데이터 콘텐츠 요약을 결정하고; 둘째로, 미리 설정된 알고리즘 및 데이터 콘텐츠 요약에 따라 타깃 물체의 제1 데이터 버전의 제1 검사값을 계산.
예를 들어: 소프트웨어 소스 코드의 예를 타깃 물체로서 사용함으로써 설명된다. 소프트웨어 소스 코드의 현재의 버전의 데이터 콘텐츠 요약이 결정된다. 이어서 해시 알고리즘이 데이터 콘텐츠 요약을 처리하도록 사용되어 소프트웨어 소스 코드의 현재의 버전의 해시값(여기서, 이것은 또한 제1 검사값으로서 지칭될 수도 있음)을 획득한다.
미리 설정된 알고리즘이 해시 알고리즘일 수도 있거나 또는 임의의 다른(예를 들어: SHA-1) 알고리즘일 수도 있다는 것에 유의해야 한다. 여기에 제한은 없다.
단계(102): 제1 데이터 버전과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값을 검색.
본 출원의 실시형태에서 타깃 물체의 제2 데이터 버전은 타깃 물체의 현재의 데이터 버전과 가까운 이전의 데이터 버전을 나타낼 수도 있다. 예를 들어, 앞서 말한 애플리케이션 소프트웨어를 참조하면, 제2 데이터 버전에 대응하는 버전 번호는 2.0이다.
예를 들어, 타깃 물체의 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자가 결정된다;
제2 데이터 버전의 버전 식별자를 기록하는 데이터 블록은 블록체인에서 검색되고, 그리고 타깃 물체의 제2 데이터 버전의 제2 검사값은 데이터 블록으로부터 판독된다.
타깃 물체의 현재의 데이터 버전이 원본 데이터 버전(예: 애플리케이션 소프트웨어의 버전 1.0)이라면, 제1 데이터 버전과 가까운 이전의 데이터 버전이 없기 때문에, 단계(102)에서 기록된 제2 검사값을 검색할 필요가 없다는 것에 유의해야 한다.
또한, 타깃 물체의 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 결정한 후, 단계(101)에서 기록된 바와 같은 제1 검사값을 결정하기 위한 방법이 제2 검사값을 획득하도록 참조될 수도 있다. 여기서, 제2 검사값이 단계(101)에서 기록된 바와 같은 제1 검사값을 결정하기 위한 방법에 따라 획득된다면, 타깃 물체의 제1 데이터 버전과 가까운 제2 데이터 버전의 데이터 콘텐츠가 부당 변경되지 않는 것이 보장되어야 한다는 것에 유의해야 한다.
또는 제2 데이터 버전의 버전 식별자를 기록하는 데이터 블록이 블록체인에서 검색되고, 이어서 타깃 물체의 제2 데이터 버전의 데이터 콘텐츠 요약이 데이터 블록으로부터 판독되고, 그리고 이어서 제2 검사값이 단계(101)에서 기록된 바와 같은 제1 검사값을 결정하기 위한 방법을 참조함으로써 획득된다.
단계(103): 제1 검사값 및 제2 검사값에 기초하여 데이터 블록을 생성.
단계(103)에서, 타깃 물체의 제1 검사값 및 제2 검사값을 획득한 후, 데이터 블록이 제1 검사값 및 제2 검사값에 기초하여 생성된다.
예를 들어, 생성된 데이터 블록은 데이터 헤더 및 데이터 바디를 포함한다.
제1 검사값 및 제2 검사값은 미리 설정된 포맷에 따라 데이터 블록의 데이터 헤더에 기입된다.
표 1은 데이터 블록의 데이터 헤더에 기입된 검사값의 개략적인 표이다.
데이터 헤더
제1 검사값: 1234567890ZXCV
제2 검사값: 널(null)
시간 라벨: XXXX년 YYYY월 ZZZZ일 10:00:00
표 1로부터, 데이터 블록의 생성 시간 라벨이 XXXX년 YYYY월 ZZZZ일 10:00:00이고, 데이터 블록에 기입된 제1 검사값이 1234567890ZXCV이고, 그리고 제2 검사값이 널(null)인 것을 알 수도 있다. 따라서 데이터 블록이 타깃 물체의 초기 데이터(예를 들어: 데이터)이고, 즉, 데이터 블록이 타깃 물체의 데이터 출처인 것을 알 수 있다.
임의로, 타깃 물체의 제1 검사값/제2 검사값이 비가역적 알고리즘을 통해 획득되기 때문에, 타깃 물체의 상이한 데이터 버전은 계산을 통해 상이한 검사값을 얻고, 즉, 타깃 물체의 제1 검사값/제2 검사값은 유일하다.
표 2는 데이터 블록의 데이터 헤더에 기입된 검사값의 개략적인 표이다.
데이터 헤더 부분
제1 검사값: !@#¥%......&*() ASDF
제2 검사값: 1234567890ZXCV
시간 라벨: MMMM년 NNNN월 ZZZZ일 14:00:00
표 2로부터, 데이터 블록의 생성 시간 라벨이 MMMM년 NNNN월 ZZZZ일 14:00:00이고, 데이터 블록에 기입된 제1 검사값이 !@#¥%......&*() ASDF이고, 그리고 제2 검사값이 1234567890ZXCV인 것을 알 수도 있다. 따라서 표 2의 제2 검사값이 표 1의 제1 검사값과 동일하기 때문에, 표 1에 나타낸 데이터 블록에 대응하는 데이터 버전이 표 2에 나타낸 바와 같은 데이터 블록에 대응하는 데이터 버전과 가까운 이전의 데이터 버전임을 알 수 있다.
데이터 블록의 데이터 헤더가 또한 2개의 가까운 데이터 버전의 버전 식별자, 즉, 제1 데이터 버전의 버전 식별자 및 제2 데이터 버전의 버전 식별자를 저장할 수도 있다는 것에 유의해야 한다.
임의로, 데이터 헤더에 더하여, 생성된 데이터 블록은 또한 데이터 바디를 포함한다. 제1 데이터 버전 내 타깃 물체의 데이터 콘텐츠 요약, 또는 제2 검사값, 또는 타깃 물체의 제1 데이터 버전의 데이터 콘텐츠는 데이터 블록의 데이터 바디에 기입될 수도 있다.
도 2는 블록체인 내 다양한 블록에 생성된 데이터 블록의 구조도이다.
도 2로부터, 데이터 블록(1), 데이터 블록(2) 및 데이터 블록(3)이 동일한 타깃 물체에 대응한다는 것을 알 수도 있다. 데이터 블록(1)의 데이터 바디에, 현재의 데이터 버전/가까운 이전의 데이터 버전의 데이터 콘텐츠 요약이 저장된다. 데이터 블록(2)의 데이터 바디에, 현재의 데이터 버전/가까운 이전의 데이터 버전의 검사값이 저장된다. 데이터 블록(3)의 데이터 바디에, 현재의 데이터 버전/가까운 이전의 데이터 버전의 데이터 콘텐츠가 저장된다.
본 출원의 또 다른 실시형태에서, 타깃 물체의 데이터 콘텐츠가 데이터 블록에 저장될 수도 있고, 그리고 데이터 콘텐츠가 또한 클라우드 데이터 게이트웨이 또는 데이터베이스에 저장될 수도 있다.
데이터 콘텐츠의 데이터량이 적을 때, 데이터 블록(3) 방식이 데이터 콘텐츠를 저장하는 방식으로서 우선적으로 선택될 수도 있다는 것에 유의해야 한다.
예를 들어, 타깃 물체의 제1 데이터 버전의 데이터 콘텐츠는 클라우드 데이터 게이트웨이 또는 데이터베이스에 저장된다.
데이터 블록의 데이터 바디가 위에서 설명된 콘텐츠를 저장할 수도 있을 뿐만 아니라 데이터 제공자가 제공한 타깃 물체의 디지털 서명을 기록할 수도 있어서 데이터 요구자가 데이터 제공자의 신원을 인증하는 것을 용이하게 한다는 것에 유의해야 한다. 데이터 바디는 또한 데이터 블록 생성 시간 및 다른 관련된 정보, 데이터 버전의 버전 식별자 등을 기록할 수도 있다. 여기에 제한은 없다.
단계(104): 데이터 블록을 블록체인에 저장.
여기서, 블록체인에 저장된 데이터 블록은 불변이다.
단계(104)에서, 데이터 블록은 연계된 데이터 구조에 따라 블록체인에 부가된다.
예를 들어, 새로이 생성된 데이터 블록은 블록체인에 연결되는 데이터 블록의 끝부분에 부가된다.
본 출원의 또 다른 실시형태에서, 데이터 블록을 블록체인에 저장한 후, 방법은 다음을 더 포함한다;
타깃 물체의 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계를 저장하는 것.
대안적으로, 타깃 물체의 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계를 저장하는 것.
본 출원의 실시형태에서, 데이터 블록을 블록체인에 저장하는 것은 또한 데이터 블록을 블록체인에 부가하여 데이터 블록을 블록체인에 저장하는 작동을 실행하는 것으로서 지칭될 수도 있다는 것에 유의해야 한다.
본 출원의 실시형태에 기록된 기술적 해결책을 통해, 타깃 물체의 제1 데이터 버전의 제1 검사값이 결정되고, 그리고 제1 검사값과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값이 검색되고; 제1 검사값 및 제2 검사값에 기초하여, 데이터 블록이 생성되고, 그리고 데이터 블록이 블록체인에 저장된다. 타깃 물체의 제1 데이터 버전의 제1 검사값은 데이터 블록의 형태로 블록체인에 저장된다. 블록체인이 불변의 특징을 갖기 때문에, 데이터 요구자가 타깃 물체의 제1 데이터 버전에 대응하는 데이터 콘텐츠를 획득할 때, 데이터 요구자는 블록체인에 저장된 제1 검사값에 기초하여, 제1 데이터 버전에 대응하는 데이터 콘텐츠가 변경되었는지를 검사할 수 있어서, 제1 데이터 버전에 대응하는 데이터 콘텐츠의 진위를 결정하고, 데이터 콘텐츠의 쉬운 변경에 기인한 데이터 콘텐츠의 진위를 결정하는 불능의 문제를 효과적으로 해결하고, 그리고 데이터 요구자의 데이터 분석 효율을 증가시킨다.
실시형태 2
동일한 발명의 개념에 기초하여, 도 3은 본 출원의 일부 실시형태에 따른, 데이터 인증 방법의 흐름도이다. 방법은 아래에 나타낸 바와 같을 수도 있다.
단계(301): 데이터 인증 요청을 수신.
데이터 인증 요청은 인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함한다.
단계(301)에서, 본 출원의 실시형태의 집행관은 블록체인일 수도 있거나 또는 이것은 또 다른 디바이스일 수도 있다. 여기에 제한은 없다.
예를 들어, 데이터 요구자가 데이터 제공자가 제공한 데이터를 수신할 때, 데이터 요구자는 제공된 데이터를 인증될 데이터로서 간주할 수도 있고, 인증될 데이터의 데이터 버전의 버전 식별자를 결정할 수도 있고, 그리고 계산을 통해 인증될 데이터의 획득된 데이터 콘텐츠에 기초하여 인증될 데이터의 검사값을 획득할 수도 있다.
이 경우에, 인증될 수신된 데이터가 진본인 것을 보장하기 위해서, 데이터 요구자가 데이터 인증 요청을 블록체인으로 전송하여 데이터 제공자가 제공한 데이터가 부당 변경되었는지를 검사한다.
단계(302): 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색.
단계(302)에서, 데이터 블록이 타깃 물체의 저장 동안 생성되고, 그리고 데이터 블록이 블록체인에 저장되기 때문에, 타깃 물체의 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계가 데이터 블록이 블록체인에 저장될 때 저장된다.
데이터 인증 요청이 수신될 때, 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 대응하는 데이터 블록의 블록 식별자가 데이터 버전의 버전 식별자, 데이터 블록의 부분 식별자, 및 블록의 블록 식별자 간의 사전에 저장된 매핑 관계에 기초하여 결정된다.
데이터 버전의 버전 식별자에 대응하는 검사값은 블록 식별자에 대응하는 데이터 블록으로부터 판독된다.
단계(302)에서 획득된 데이터 버전의 버전 식별자에 대응하는 검사값이 타깃 물체의 저장 동안 생성되고 그리고 블록체인에 저장되고, 그래서 검색을 통해 획득된 검사값이 진본이라는 것에 유의해야 한다.
단계(303): 데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여, 인증될 데이터의 데이터 콘텐츠를 인증.
단계(303)에서, 데이터 인증 요청에 포함된 수신된 검사값은 검색을 통해 획득된 검사값과 비교된다.
데이터 인증 요청에 포함된 수신된 검사값이 검색을 통해 획득된 검사값과 동일할 때, 인증될 데이터의 데이터 콘텐츠가 진본이라고 결정된다.
데이터 인증 요청에 포함된 수신된 검사값이 검색을 통해 획득된 검사값과 상이할 때, 인증될 데이터의 데이터 콘텐츠가 변경되었다고 결정된다.
본 출원의 실시형태에 의해 제공된 기술적 해결책을 통해, 인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함하는, 데이터 인증 요청이 수신되고; 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값이 블록체인에서 검색되고; 데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여, 인증될 데이터의 데이터 콘텐츠가 인증된다. 블록체인이 불면의 특징을 갖기 때문에, 검색을 통해 획득되고 그리고 데이터 버전의 버전 식별자에 대응하는 블록체인에 사전에 저장된 검사값은 진본이다. 진본인 검사값이 데이터 인증 요청 내 인증될 데이터가 부당 변경되었는지를 검사하도록 사용되어, 인증될 데이터의 진위를 보장한다.
도 4는 본 출원의 일부 실시형태에 따른, 데이터 인증 방법의 시나리오의 개략도이다.
도 4로부터, 블록체인이 복수의 데이터 노드를 포함한다는 것을 알 수도 있다. 이 데이터 노드는 상이한 사용자가 전송한 데이터 인증 요청을 수신할 수도 있다. 대응하는 데이터 정보는 데이터 인증 요청에 포함된 데이터 정보(여기서 이것은 검사값을 나타낼 수도 있음)에 기초하여 블록체인에서 검색된다. 수신된 데이터 정보 및 검색을 통해 획득된 데이터 정보에 기초하여, 데이터 인증 요청 내 인증될 데이터가 인증되어 데이터 요구자가 진본인 그리고 유효 데이터를 획득할 수 있는 것을 보장한다.
실시형태 3
도 5는 본 출원의 일부 실시형태에 따른, 데이터 추적 방법의 흐름도이다. 방법은 아래에 나타낸 바와 같을 수도 있다.
단계(501): 데이터 역추적 요청을 수신.
데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함한다.
단계(501)에서, 타깃 물체의 이볼루션 과정 또는 이볼루션 이력이 검색되어야 할 때, 본 출원의 실시형태의 작동이 개시될 수도 있고, 즉, 데이터 역추적 요청을 전송한다. 데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함한다.
여기서, 제1 데이터 버전의 버전 식별자는 현재의 데이터 버전의 버전 식별자일 수도 있거나 또는 이것은 임의의 데이터 버전의 버전 식별자일 수도 있다. 여기에 제한은 없다.
여기서, 제1 데이터 버전의 버전 식별자가 사용되어 역추적될 데이터를 역추적하기 위한 시작점을 결정한다. 예를 들어: 3.0의 현재의 데이터 버전을 가진, 애플리케이션 소프트웨어. 일단 역추적 요청이 개시된다면, 역추적 요청에 포함된 데이터 버전의 버전 식별자는 3.0 또는 2.0 등일 수도 있다. 여기에 제한은 없다.
단계(502): 제1 데이터 버전의 버전 식별자에 기초하여, 블록체인에서, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 획득.
단계(502)에서, 데이터 블록이 제1 데이터 버전의 버전 식별자를 저장할 뿐만 아니라 제1 데이터 버전의 버전 식별자와 가까운 이전의 제2 데이터 버전의 버전 식별자를 저장하기 때문에, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록은 제1 데이터 버전의 버전 식별자에 기초하여 획득될 수도 있고, 그리고 제1 데이터 버전의 버전 식별자와 가까운 이전의 제2 데이터 버전의 버전 식별자가 데이터 블록으로부터 획득된다.
단계(503): 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적으로 역추적하여 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득.
단계(503)에서, 제2 데이터 버전의 획득된 버전 식별자가 시작점으로서 선택되고 그리고 결국 단계(502)에서 설명된 방법에 의해 역추적되어 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 찾는다.
예를 들어, 데이터 버전의 획득된 버전 식별자에 기초하여, 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록이 획득될 때까지 다음의 작동이 실행된다;
블록체인에서, 획득된 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 획득된 데이터 버전과 가까운 이전의 데이터 버전의 버전 식별자를 획득하는 작동;
역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록이 획득될 때까지 앞서 말한 작동의 주기적인 실행을 일으키는 작동.
여기서, 데이터 버전의 획득된 버전 식별자가 제1 데이터 버전 외 임의의 데이터 버전의 버전 식별자일 수도 있다는 것에 유의해야 한다.
단계(504): 데이터 블록에 기초하여, 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠를 결정.
본 출원의 실시형태에서, 데이터 버전의 버전 식별자가 획득될 때마다, 데이터 버전에 대응하는 데이터 콘텐츠가 결정될 수도 있다는 것에 유의해야 한다. 이 방식으로, 역추적될 데이터의 이볼루션 과정이 획득된 데이터 콘텐츠에 기초하여 분석될 수도 있어서, 역추적될 데이터에 포함된 생산값을 확실하게 그리고 효과적으로 분석한다.
본 출원의 실시형태의 기술적 해결책을 통해, 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함하는, 데이터 역추적 요청이 수신되고; 제1 데이터 버전의 버전 식별자에 기초하여, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록이 블록체인에서 검색되고, 그리고 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자가 데이터 블록으로부터 획득되고; 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적인 역추적이 수행되고 그리고 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록이 획득되고; 데이터 블록에 기초하여, 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠가 결정된다. 타깃 물체의 제1 데이터 버전의 버전 식별자와 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자 둘 다가 데이터 블록의 형태로 블록체인에 저장되기 때문에, 그리고 블록체인이 불변의 특징을 갖고 그리고 연계된 데이터 구조를 채택하기 때문에, 역추적될 데이터의 이볼루션된 버전뿐만 아니라 모든 이볼루션된 버전에 대응하는 데이터 콘텐츠를 역추적하고 찾으며 그리고 데이터 이볼루션의 진위를 보장하는 것이 가능하다.
도 6은 본 출원의 일부 실시형태에 따른, 데이터 추적 방법의 시나리오의 개략도이다.
도 6으로부터, 블록체인이 연계된 데이터 구조를 채택한다는 것을 알 수도 있다. 데이터 블록 중 하나가 결정될 때, 데이터 블록과 연관된 다른 데이터 블록이 연계된 데이터 구조의 특징에 따라 획득될 수 있고, 따라서 데이터 출처를 추적하는 목적을 달성하고, 그리고 그 동안에 획득된 정보가 진본인 것을 보장한다.
타깃 물체에 대응하는 5개의 데이터 블록이 있다고 가정해보자. 이들은 데이터 블록(1), 데이터 블록(2), 데이터 블록(3), 데이터 블록(4) 및 데이터 블록(5)이다. 여기서, 데이터 버전의 버전 식별자를 저장하는 데이터 블록이 예로서 취해진다.
데이터 블록(5)에 저장된 데이터 버전의 버전 식별자는 5.0 및 4.0이다. 데이터 블록(4)에 저장된 데이터 버전의 버전 식별자는 4.0 및 3.0이다. 데이터 블록(3)에 저장된 데이터 버전의 버전 식별자는 3.0 및 2.0이다. 데이터 블록(2)에 저장된 데이터 버전의 버전 식별자는 2.0 및 1.0이다. 데이터 블록(1)에 저장된 데이터 버전의 버전 식별자는 1.0이다. 데이터 추적 동안, 데이터 블록(5)이 처음에 결정되고, 다음에 데이터 블록(4), 데이터 블록(3) 및 데이터 블록(2), 그리고 마지막에 데이터 블록(1)이 결정된다. 이 방식으로, 데이터 추적의 목적은 완전히 달성될 수 있다.
실시형태 4
동일한 발명의 개념에 기초하여, 도 7은 본 출원의 일부 실시형태에 따른, 데이터 저장 장치의 구조도이다. 데이터 저장 장치는 결정 모듈(71), 검색 모듈(72) 및 저장 모듈(73)을 포함한다. 여기서;
결정 모듈(71)은 타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하고;
검색 모듈(72)은 제1 데이터 버전과 가까운 타깃 물체의 제2 데이터 버전의 제2 검사값을 검색하고;
저장 모듈(73)은 제1 검사값 및 제2 검사값에 기초하여, 데이터 블록을 생성하고 그리고 데이터 블록을 블록체인에 저장하고, 블록체인에 저장된 데이터 블록은 불변이다.
본 출원의 또 다른 실시형태에서, 타깃 물체의 제1 데이터 버전의 제1 검사값을 결정하는 결정 모듈(71)은,
제1 데이터 버전 내 타깃 물체의 데이터 콘텐츠 요약을 결정하는 것;
미리 설정된 알고리즘 및 데이터 콘텐츠 요약에 따라, 타깃 물체의 제1 데이터 버전의 제1 검사값을 획득하도록 계산하는 것을 포함한다.
본 출원의 또 다른 실시형태에서, 제1 검사값 및 제2 검사값에 기초하여 데이터 블록을 생성하는 저장 모듈(72)은,
데이터 블록을 생성하고, 그리고 미리 설정된 포맷에 따라 제1 검사값 및 제2 검사값을 데이터 블록의 데이터 헤더에 기입하는 것을 포함한다.
본 출원의 또 다른 실시형태에서, 데이터 저장 장치는 기입 모듈(74)을 더 포함한다. 여기서;
기입 모듈(74)은 제1 데이터 버전 내 타깃 물체의 데이터 콘텐츠 요약, 또는 제2 검사값, 또는 타깃 물체의 제1 데이터 버전의 데이터 콘텐츠를 데이터 블록의 데이터 바디에 기입한다.
본 출원의 또 다른 실시형태에서, 저장 모듈(72)은 타깃 물체의 제1 데이터 버전의 데이터 콘텐츠를 클라우드 데이터 게이트웨이 또는 데이터베이스에 저장한다.
본 출원의 또 다른 실시형태에서, 저장 모듈(72)은 타깃 물체의 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계를 데이터 블록을 저장한 후 블록체인의 블록에 저장한다.
본 출원의 또 다른 실시형태에서, 데이터 블록을 블록체인에 저장하는 저장 모듈(72)은,
연계된 데이터 구조에 따라, 데이터 블록을 블록체인에 부가하는 것을 포함한다.
본 출원의 실시형태에 따른 데이터 저장 장치가 하드웨어 또는 소프트웨어에 의해 달성될 수도 있다는 것에 유의해야 한다. 여기에 제한은 없다. 데이터 저장 장치는 타깃 물체의 제1 데이터 버전의 제1 검사값을 데이터 블록의 형태로 블록체인에 저장한다. 블록체인이 불변의 특징을 갖기 때문에, 데이터 요구자가 타깃 물체의 제1 데이터 버전에 대응하는 데이터 콘텐츠를 획득할 때, 데이터 요구자는 블록체인에 저장된 제1 검사값에 기초하여, 제1 데이터 버전에 대응하는 데이터 콘텐츠가 변경되었는지를 검사할 수 있어서, 제1 데이터 버전에 대응하는 데이터 콘텐츠의 진위를 결정하고, 데이터 콘텐츠의 쉬운 변경에 기인한 데이터 콘텐츠의 진위를 결정하는 불능의 문제를 효과적으로 해결하고, 그리고 데이터 요구자의 데이터 분석 효율을 증가시킨다.
실시형태 5
도 8은 본 출원의 일부 실시형태에 따른, 데이터 인증 장치의 구조도이다. 데이터 인증 장치는 수신 모듈(81), 검색 모듈(82) 및 인증 모듈(83)을 포함한다. 여기서;
수신 모듈(81)은 인증될 데이터의 데이터 버전의 버전 식별자 및 인증될 데이터의 데이터 콘텐츠에 기초하여 획득된 검사값을 포함하는, 데이터 인증 요청을 수신하고;
검색 모듈(82)은 블록체인에서, 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색하고;
인증 모듈(83)은 데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여 인증될 데이터의 데이터 콘텐츠를 인증한다.
본 출원의 또 다른 실시형태에서, 데이터 인증 요청에 포함된 수신된 검사값 및 검색을 통해 획득된 검사값에 기초하여 인증될 데이터의 데이터 콘텐츠를 인증하는 인증 모듈(83)은,
데이터 인증 요청에 포함된 수신된 검사값이 검색을 통해 획득된 검사값과 동일할 때, 인증될 데이터의 데이터 콘텐츠가 진본이라고 결정하는 것;
데이터 인증 요청에 포함된 수신된 검사값이 검색을 통해 획득된 검사값과 상이할 때, 인증될 데이터의 데이터 콘텐츠가 변경되었다고 결정하는 것을 포함한다.
본 출원의 또 다른 실시형태에서, 블록체인에서, 데이터 인증 요청에 포함된 데이터 버전의 버전 식별자에 기초하여, 데이터 버전의 버전 식별자에 대응하는 사전에 저장된 검사값을 검색하는 검색부(82)는,
데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 사전에 저장된 매핑 관계에 기초하여, 데이터 인증 요청 내 데이터 버전의 버전 식별자에 대응하는 데이터 블록의 블록 식별자를 결정하는 것;
블록 식별자에 대응하는 결정된 데이터 블록으로부터 데이터 버전의 버전 식별자에 대응하는 검사값을 판독하는 것을 포함한다.
본 출원의 실시형태에 따른 데이터 인증 장치가 하드웨어 또는 소프트웨어에 의해 달성될 수도 있다는 것에 유의해야 한다. 여기에 제한은 없다. 블록체인이 불변의 특징을 갖기 때문에, 데이터 버전의 버전 식별자에 대응하는 블록체인에서 검색된 사전에 저장된 검사값은 진본이다. 진본인 검사값은 데이터 인증 요청 내 인증될 데이터가 부당 변경되었는지를 검사하도록 사용되어, 인증될 데이터의 진위를 보장한다.
실시형태 6
도 9는 본 출원의 일부 실시형태에 따른, 데이터 추적 장치의 구조도이다. 데이터 추적 장치는 수신 모듈(91), 역추적 모듈(92) 및 결정 모듈(93)을 포함한다. 여기서;
수신 모듈(91)은 데이터 역추적 요청을 수신하고(데이터 역추적 요청은 역추적될 데이터의 제1 데이터 버전의 버전 식별자를 포함함);
역추적 모듈(92)은 블록체인에서, 제1 데이터 버전의 버전 식별자에 기초하여, 제1 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자를 획득하고; 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 역추적 모듈은 순차적인 역추적을 수행하고 그리고 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득하고;
결정 모듈(93)은 데이터 블록에 기초하여 역추적될 데이터의 초기 버전에 대응하는 데이터 콘텐츠를 결정한다.
본 출원의 또 다른 실시형태에서, 제2 데이터 버전의 획득된 버전 식별자에 기초하여, 순차적인 역추적을 수행하여 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록을 획득하는 역추적 모듈(92)은,
데이터 버전의 획득된 버전 식별자에 기초하여, 역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록이 획득될 때까지 다음의 작동을 실행하는 것을 포함한다;
블록체인에서, 획득된 데이터 버전의 버전 식별자를 포함하는 데이터 블록을 검색하고, 그리고 데이터 블록으로부터, 획득된 데이터 버전과 가까운 이전의 데이터 버전의 버전 식별자를 획득하는 작동;
역추적될 데이터의 초기 버전의 버전 식별자를 포함하는 데이터 블록이 획득될 때까지 앞서 말한 작동의 주기적인 실행을 일으키는 작동.
본 출원의 실시형태에 따른 데이터 추적 장치가 하드웨어 또는 소프트웨어에 의해 달성될 수도 있다는 것에 유의해야 한다. 여기에 제한은 없다. 타깃 물체의 제1 데이터 버전의 버전 식별자와 제1 데이터 버전과 가까운 제2 데이터 버전의 버전 식별자 둘 다가 데이터 블록의 형태로 블록체인에 저장되기 때문에, 그리고 블록체인이 불변의 특징을 갖고 그리고 연계된 데이터 구조를 채택하기 때문에, 역추적될 데이터의 이볼루션된 버전뿐만 아니라 모든 이볼루션된 버전에 대응하는 데이터 콘텐츠를 역추적하고 찾으며 그리고 데이터 이볼루션의 진위를 보장하는 것이 가능하다.
당업자는 본 출원의 실시형태가 방법, 시스템 또는 컴퓨터 프로그램 제품으로서 제공될 수도 있어서, 본 출원은 완전한 소프트웨어, 완전한 하드웨어, 또는 소프트웨어와 하드웨어의 조합의 형태의 실시형태를 채택할 수도 있다는 것을 이해한다. 또한, 본 출원은 컴퓨터 사용 가능한 프로그램 코드를 포함하는 하나 또는 복수의 컴퓨터 사용 가능한 저장 매체(디스크 메모리, CD-ROM, 광 메모리를 포함하지만 이들로 제한되지 않음)에 구현된 컴퓨터 프로그램 제품의 형태를 채택할 수도 있다.
본 출원은 본 출원의 실시형태에 따라 방법, 디바이스(시스템) 및 컴퓨터 프로그램 제품의 흐름도 및/또는 블록도를 참조함으로써 설명된다. 흐름도 및/또는 블록도에서 모든 흐름 및/또는 블록 그리고 흐름도 및/또는 블록도에서 흐름 및/또는 블록의 조합이 컴퓨터 프로그램 명령어를 통해 달성될 수도 있다는 것을 이해해야 한다. 이 컴퓨터 프로그램 명령어가 기계를 생산하기 위해서 다용도 컴퓨터, 특수화 컴퓨터, 내장된 프로세서, 또는 다른 프로그램 가능한 데이터 처리 장비의 프로세서에 제공될 수도 있어서, 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장비의 프로세서에 의해 실행되는 명령어를 통해, 흐름도의 하나 또는 복수의 흐름 및/또는 블록도의 하나 또는 복수의 블록에 지정된 기능을 달성하기 위한 장치가 생성된다.
이 컴퓨터 프로그램 명령어가 또한 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장비가 특정한 방식으로 작동하게 가이드할 수 있는 컴퓨터 판독 가능한 메모리에 저장될 수도 있어서, 이 컴퓨터 판독 가능한 메모리에 저장된 명령어가 명령 장치를 포함한 제품을 생성한다. 이 명령 장치는 흐름도의 하나 또는 복수의 흐름 및/또는 블록도의 하나 또는 복수의 블록에 지정된 기능을 달성한다.
이 컴퓨터 프로그램 명령어가 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장비에 로딩될 수도 있어서, 일련의 작동 단계가 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장비에서 실행되어 컴퓨터에 의해 달성된 처리를 생성한다. 따라서, 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장비에서 실행된 명령어가 흐름도의 하나 또는 복수의 흐름 및/또는 블록도의 하나 또는 복수의 블록에 지정된 기능을 달성하기 위한 단계를 제공한다.
전형적인 구성에서, 산출 장비는 하나 또는 복수의 프로세서(CPU), I/O 인터페이스, 네트워크 인터페이스 및 내부 메모리를 포함한다.
내부 메모리는 컴퓨터 판독 가능한 매체 내의, 휘발성 메모리, 랜덤 액세스 메모리(random access memory: RAM) 및/또는 비휘발성 메모리, 예컨대, 판독-전용 메모리(read-only memory: ROM) 또는 플래시 메모리(플래시 RAM)의 형태일 수도 있다. 내부 메모리는 컴퓨터 판독 가능한 매체의 예이다.
컴퓨터 판독 가능한 매체는 비휘발성, 휘발성, 이동, 및 부동 매체를 포함하고 그리고 임의의 방법 또는 기술에 의해 정보 저장을 달성할 수 있다. 정보는 컴퓨터 판독 가능한 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터일 수도 있다. 컴퓨터 저장 매체의 예는 상-변화 랜덤 액세스 메모리(phase change random access memory: PRAM), 정적 랜덤 액세스 메모리(static random access memory: SRAM), 동적 랜덤 액세스 메모리(dynamic random access memory: DRAM), 다른 유형의 랜덤 액세스 메모리(RAM), 판독-전용 메모리(ROM), 전기적으로 소거 가능한 프로그램 가능한 판독 전용 메모리(electrically erasable programmable read only memory: EEPROM), 플래시 메모리 또는 다른 내부 메모리 기술, 콤팩트 디스크-판독-전용 메모리(compact disc-read-only memory: CD-ROM), 디지털 비디오 디스크(digital video disk: DVD) 또는 다른 광 메모리, 카세트 유형의 자기 테이프, 테이프 디스크 메모리 또는 다른 자기 저장 디바이스 또는 임의의 다른 비전송 매체를 제한없이, 포함한다. 이 문서의 정의에 따르면, 컴퓨터 판독 가능한 매체는 일시적인 매체, 예컨대, 변조된 데이터 신호 및 캐리어를 포함하지 않는다.
용어 "포함" 또는 이들의 임의의 변형은 배타적이지 않은 포함을 포함하도록 의도되어, 일련의 구성요소를 포함하는 과정, 방법, 제품 또는 장비가 이 구성요소를 포함할 뿐만 아니라 명확히 명시되지 않은 다른 구성요소를 포함하거나, 또는 또한 이러한 과정, 방법, 제품 또는 장비에 고유한 구성요소를 포함한다는 것에 더 유의해야 한다. 다른 제한이 없다면, 표현 "~을 포함하는"에 의해 규정된 구성요소는 구성요소를 포함하는 과정, 방법, 제품 또는 장비 내 다른 유사한 구성요소의 존재를 배제하지 않는다.
당업자는 본 출원의 실시형태가 방법, 시스템 또는 컴퓨터 프로그램 제품으로서 제공될 수도 있어서, 본 출원은 완전한 소프트웨어, 완전한 하드웨어, 또는 소프트웨어와 하드웨어의 조합의 형태의 실시형태를 채택할 수도 있다는 것을 이해한다. 또한, 본 출원은 컴퓨터 사용 가능한 프로그램 코드를 포함하는 하나 또는 복수의 컴퓨터 사용 가능한 저장 매체(디스크 메모리, CD-ROM, 광 메모리를 포함하지만 이들로 제한되지 않음)에 구현된 컴퓨터 프로그램 제품의 형태를 채택할 수도 있다.
앞서 말한 설명 단지 본 출원의 실시형태이고 그리고 본 출원을 제한하도록 의도되지 않는다. 당업자는 본 출원에 대한 다양한 변경 또는 변화를 행할 수도 있다. 본 출원의 정신 및 원리로부터 벗어나는 일없이 행해진 모든 변경, 등가 치환 및 개선은 본 출원의 청구항의 범위 내에 속할 것이다.

Claims (20)

  1. 방법으로서,
    데이터 인증 요청을 수신하는 단계로서, 상기 데이터 인증 요청은 타깃 객체(target object)의 제1 데이터 버전의 버전 식별자 및 상기 타깃 객체의 콘텐츠에 기초하여 결정된 제1 검사값을 포함하고, 상기 타깃 객체는 블록체인의 외부에 저장되어 있는 것인, 데이터 인증 요청을 수신하는 단계;
    상기 블록체인으로부터, 상기 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계에 기초하여, 상기 제1 데이터 버전의 제2 검사값을 포함하는 데이터 블록을 획득하는 단계; 및
    상기 제1 검사값 및 상기 제2 검사값을 비교하여 상기 타깃 객체의 상기 콘텐츠를 인증하는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 제1 검사값 및 상기 제2 검사값을 비교하여 상기 타깃 객체의 상기 콘텐츠를 인증하는 단계는,
    상기 제2 검사값이 상기 제1 검사값과 동일할 때, 상기 타깃 객체의 상기 콘텐츠가 진본이라고 결정하는 단계; 및
    상기 제2 검사값이 상기 제1 검사값과 상이할 때, 상기 타깃 객체의 상기 콘텐츠가 변경되었다고 결정하는 단계를 포함하는, 방법.
  3. 제1항에 있어서, 상기 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계에 기초하여, 상기 제1 데이터 버전의 제2 검사값을 포함하는 데이터 블록을 획득하는 단계는,
    상기 매핑 관계에 기초하여 상기 블록 식별자를 결정하는 단계; 및
    결정된 상기 블록 식별자에 기초하여 상기 블록체인에서 상기 데이터 블록을 식별하는 단계를 포함하는, 방법.
  4. 제1항에 있어서, 상기 제1 검사값은,
    상기 타깃 객체의 상기 제1 데이터 버전의 데이터 콘텐츠 요약을 결정하는 것; 및
    상기 제1 검사값을 얻기 위해 해시 알고리즘에 기초하여 상기 데이터 콘텐츠 요약의 해시값을 계산하는 것에 의해 결정되는 것인, 방법.
  5. 제4항에 있어서, 상기 데이터 블록은,
    상기 타깃 객체의 상기 제1 데이터 버전의 상기 데이터 콘텐츠 요약; 또는
    상기 타깃 객체의 상기 제1 데이터 버전의 데이터 콘텐츠를 더 포함하는, 방법.
  6. 제1항에 있어서,
    상기 데이터 블록은 상기 타깃 객체의 제2 데이터 버전에 대응하는 상이한 검사값을 더 포함하고, 상기 제2 데이터 버전은 상기 제1 데이터 버전에 가까운 것인, 방법.
  7. 제6항에 있어서, 상기 데이터 인증 요청을 수신하는 단계 전에,
    상기 타깃 객체의 상기 제1 데이터 버전의 상기 제2 검사값을 결정하는 단계;
    상기 블록체인으로부터 상기 상이한 검사값을 획득하는 단계;
    상기 제2 검사값 및 상기 상이한 검사값에 기초하여 상기 데이터 블록을 생성하는 단계; 및
    상기 데이터 블록을 상기 블록체인에 저장하는 단계를 더 포함하는, 방법.
  8. 제7항에 있어서,
    상기 제1 데이터 버전의 상기 버전 식별자와 상기 데이터 블록의 상기 블록 식별자 간의 상기 매핑 관계를 상기 블록체인 외부의 데이터베이스에 저장하는 단계를 더 포함하는, 방법.
  9. 제1항에 있어서,
    상기 타깃 객체의 상기 콘텐츠를 클라우드 데이터 게이트웨이 또는 데이터베이스에 저장하는 단계를 더 포함하는, 방법.
  10. 장치로서,
    데이터 인증 요청을 수신하는 수신 모듈로서, 상기 데이터 인증 요청은 타깃 객체의 제1 데이터 버전의 버전 식별자 및 상기 타깃 객체의 콘텐츠에 기초하여 결정된 제1 검사값을 포함하고, 상기 타깃 객체는 블록체인의 외부에 저장되어 있는 것인, 수신 모듈;
    상기 블록체인으로부터, 상기 제1 데이터 버전의 버전 식별자와 데이터 블록의 블록 식별자 간의 매핑 관계에 기초하여, 상기 제1 데이터 버전의 제2 검사값을 포함하는 데이터 블록을 획득하는 검색 모듈; 및
    상기 제1 검사값 및 상기 제2 검사값을 비교하여 상기 타깃 객체의 상기 콘텐츠를 인증하는 인증 모듈을 포함하는, 장치.
  11. 제10항에 있어서, 상기 인증 모듈은,
    상기 제2 검사값이 상기 제1 검사값과 동일할 때, 상기 타깃 객체의 상기 콘텐츠가 진본이라고 결정하고, 상기 제2 검사값이 상기 제1 검사값과 상이할 때, 상기 타깃 객체의 상기 콘텐츠가 변경되었다고 결정하는 것인, 장치.
  12. 제10항에 있어서, 상기 검색 모듈은,
    상기 매핑 관계에 기초하여 상기 블록 식별자를 결정하고, 결정된 상기 블록 식별자에 기초하여 상기 블록체인에서 상기 데이터 블록을 식별하는 것인, 장치.
  13. 제10항에 있어서,
    상기 제1 검사값을 결정하는 결정 모듈을 더 포함하고,
    상기 제1 검사값은, 상기 타깃 객체의 상기 제1 데이터 버전의 데이터 콘텐츠 요약을 결정하는 것 및 상기 제1 검사값을 얻기 위해 해시 알고리즘에 기초하여 상기 데이터 콘텐츠 요약의 해시값을 계산하는 것에 의해 결정되는 것인, 장치.
  14. 제13항에 있어서, 상기 데이터 블록은,
    상기 타깃 객체의 상기 제1 데이터 버전의 상기 데이터 콘텐츠 요약; 또는
    상기 타깃 객체의 상기 제1 데이터 버전의 데이터 콘텐츠를 더 포함하는, 장치.
  15. 제10항에 있어서,
    상기 데이터 블록은 상기 타깃 객체의 제2 데이터 버전에 대응하는 상이한 검사값을 더 포함하고, 상기 제2 데이터 버전은 상기 제1 데이터 버전에 가까운 것인, 장치.
  16. 제15항에 있어서,
    상기 타깃 객체의 상기 제1 데이터 버전의 상기 제2 검사값을 결정하는 결정 모듈;
    상기 블록체인으로부터 상기 상이한 검사값을 획득하는 검색부; 및
    상기 제2 검사값 및 상기 상이한 검사값에 기초하여 상기 데이터 블록을 생성하고, 상기 데이터 블록을 상기 블록체인에 저장하는 저장 모듈을 더 포함하는, 장치.
  17. 제16항에 있어서, 상기 저장 모듈은,
    상기 제1 데이터 버전의 상기 버전 식별자와 상기 데이터 블록의 상기 블록 식별자 간의 상기 매핑 관계를 상기 블록체인 외부의 데이터베이스에 저장하는, 장치.
  18. 제16항에 있어서, 상기 저장 모듈은,
    상기 타깃 객체의 상기 콘텐츠를 클라우드 데이터 게이트웨이 또는 데이터베이스에 저장하는, 장치.
  19. 하나 이상의 프로세서와 컴퓨터 판독 가능한 저장 매체를 포함하는 시스템으로서,
    상기 저장 매체는, 상기 시스템으로 하여금 제1항 내지 제9항 중 어느 한 항에 따른 방법을 수행하도록 상기 하나 이상의 프로세서에 의해 실행 가능한 명령어를 저장하는, 시스템.
  20. 프로세서에 의해 실행될 명령어를 저장하는 비-일시적인 컴퓨터 판독 가능한 저장 매체로서,
    상기 명령어는 상기 프로세서로 하여금 제1항 내지 제9항 중 어느 한 항에 따른 방법을 수행하도록 상기 프로세서에 의해 실행 가능한 것인, 비-일시적인 컴퓨터 판독 가능한 저장 매체.
KR1020207034802A 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치 KR102289995B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201610694496.6A CN106897348B (zh) 2016-08-19 2016-08-19 一种数据存储、数据校验、数据溯源方法和设备
CN201610694496.6 2016-08-19
PCT/CN2017/096322 WO2018032995A1 (zh) 2016-08-19 2017-08-08 一种数据存储、数据校验、数据溯源方法和设备
KR1020197007816A KR102188744B1 (ko) 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020197007816A Division KR102188744B1 (ko) 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200139845A true KR20200139845A (ko) 2020-12-14
KR102289995B1 KR102289995B1 (ko) 2021-08-17

Family

ID=59191622

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020197007816A KR102188744B1 (ko) 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치
KR1020207034802A KR102289995B1 (ko) 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020197007816A KR102188744B1 (ko) 2016-08-19 2017-08-08 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치

Country Status (16)

Country Link
US (4) US10931441B2 (ko)
EP (1) EP3502926A4 (ko)
JP (1) JP6963006B2 (ko)
KR (2) KR102188744B1 (ko)
CN (1) CN106897348B (ko)
AU (2) AU2017312177B2 (ko)
BR (1) BR112019003345A2 (ko)
CA (1) CA3034034C (ko)
MX (1) MX2019002021A (ko)
MY (1) MY184117A (ko)
PH (1) PH12019500334A1 (ko)
RU (1) RU2744054C2 (ko)
SG (1) SG11201901181PA (ko)
TW (1) TWI679546B (ko)
WO (1) WO2018032995A1 (ko)
ZA (1) ZA201901031B (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106897348B (zh) 2016-08-19 2020-10-27 创新先进技术有限公司 一种数据存储、数据校验、数据溯源方法和设备
CN107316239A (zh) * 2017-07-14 2017-11-03 众安信息技术服务有限公司 一种基于区块链的信息认证和溯源方法及系统
CN109428892B (zh) * 2017-09-01 2021-12-28 埃森哲环球解决方案有限公司 多阶段可重写区块链
CN107945312A (zh) * 2017-10-31 2018-04-20 深圳市轱辘车联数据技术有限公司 一种车辆检测方法及其设备
EP3710974B1 (en) * 2017-11-17 2023-07-26 Telefonaktiebolaget LM Ericsson (publ) Method and arrangement for detecting digital content tampering
CN108458724B (zh) * 2017-12-29 2021-06-04 歌尔科技有限公司 一种计步方法和装置
CN108123960B (zh) * 2018-01-02 2020-10-16 武汉斗鱼网络科技有限公司 直播房间人气验证方法、装置及电子设备
TWI682334B (zh) * 2018-02-08 2020-01-11 亞智科技股份有限公司 製程配方監控方法及製程配方監控系統
CN108734028B (zh) * 2018-05-24 2020-10-09 中国联合网络通信集团有限公司 基于区块链的数据管理方法、区块链节点及存储介质
US11038676B2 (en) 2018-05-25 2021-06-15 Incertrust Technologies Corporation Cryptographic systems and methods using distributed ledgers
US11327745B2 (en) 2018-06-18 2022-05-10 Panasonic Intellectual Property Corporation Of America Preventing falsification in version management
JP7316812B2 (ja) * 2018-06-18 2023-07-28 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 管理方法、管理装置、及び、プログラム
CN108847926A (zh) * 2018-06-22 2018-11-20 武汉斗鱼网络科技有限公司 一种客户端安全检测方法、装置及客户端设备
CN109257334B (zh) * 2018-08-21 2021-04-09 广州杰赛科技股份有限公司 一种基于区块链的数据上链系统、方法及存储介质
CN109308188B (zh) * 2018-09-25 2021-06-22 四川长虹电器股份有限公司 一种基于区块链的版本控制方法及系统
CN109522683B (zh) * 2018-09-26 2022-11-01 百度在线网络技术(北京)有限公司 软件溯源方法、系统、计算机设备及存储介质
US10268817B1 (en) * 2018-10-05 2019-04-23 Capital One Services, Llc Methods, mediums, and systems for establishing and using security questions
CN111275434B (zh) * 2018-12-05 2023-05-26 阿里巴巴集团控股有限公司 基于区块链的信息追踪方法及装置
CN109617964B (zh) * 2018-12-12 2021-11-09 成都四方伟业软件股份有限公司 基于区块链的大数据存储方法及装置
CN109800248A (zh) * 2018-12-17 2019-05-24 上海点融信息科技有限责任公司 用于区块链网络的数字内容溯源和记录方法、存储介质、计算设备
CN110046901B (zh) 2018-12-28 2020-06-30 阿里巴巴集团控股有限公司 联盟链的可信度验证方法、系统、装置及设备
US10880619B2 (en) 2019-02-21 2020-12-29 Raytheon Bbn Technologies Corp. Verifying provenance of digital content
CN111694502B (zh) * 2019-03-14 2023-05-30 北京沃东天骏信息技术有限公司 区块链数据存储方法、装置、设备及存储介质
CN110096505B (zh) * 2019-03-31 2021-05-11 杭州复杂美科技有限公司 一种数据存储方法和系统、设备及存储介质
CN109992999B (zh) * 2019-04-01 2021-05-28 北京柏链基石科技有限公司 一种基于区块链的隐私数据的修改方法、装置及电子设备
US11126425B2 (en) * 2019-04-19 2021-09-21 Sarcos Corp. Version history management using a blockchain
US10908924B2 (en) * 2019-05-01 2021-02-02 Intuit Inc. System and methods for loading objects from hash chains
CN110427774B (zh) * 2019-07-18 2021-01-12 创新先进技术有限公司 基于区块链的数据存证方法、数据校验方法及相关装置
US11088828B2 (en) 2019-07-18 2021-08-10 Advanced New Technologies Co., Ltd. Blockchain-based data evidence storage method and apparatus
CN110753105B (zh) * 2019-10-17 2022-09-06 中国建设银行股份有限公司 数据传输方法、装置、系统、电子设备及存储介质
CN110659519A (zh) * 2019-11-18 2020-01-07 陕西品漠农牧科技发展有限公司 一种基于区块链、时间戳、地理位置的凭证制作方法
CN111539813B (zh) * 2020-07-10 2020-12-11 支付宝(杭州)信息技术有限公司 业务行为的回溯处理方法、装置、设备及系统
CN112486561B (zh) * 2020-11-25 2024-03-22 北京电力交易中心有限公司 基于区块链的版本回溯方法、装置及相关设备
CN112749181B (zh) * 2021-01-20 2021-08-17 方正国际软件(广州)有限公司 针对真实性验证和可信溯源的大数据处理方法及云服务器
CN113094365A (zh) * 2021-04-02 2021-07-09 北京大学 一种食品安全追溯系统、方法、设备及可读存储介质
CN114036229B (zh) * 2021-11-08 2022-07-01 中国人民解放军92493部队信息技术中心 一种基于区块链的数据流转溯源方法
CN115022096B (zh) * 2022-08-09 2022-11-22 北京航天奥祥通风科技股份有限公司 下载软件方法和装置
CN115859375A (zh) * 2022-12-01 2023-03-28 北京火山引擎科技有限公司 一种数据处理方法、装置、电子设备及存储介质
CN116843353B (zh) * 2023-02-15 2024-02-02 厦门智康力奇数字科技有限公司 一种基于区块链和物联网的农产品溯源系统及方法
CN116629718B (zh) * 2023-07-24 2023-09-29 清华四川能源互联网研究院 一种工业数据回溯方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045536A (zh) * 2015-07-29 2015-11-11 百度在线网络技术(北京)有限公司 一种数据存储的方法、装置与系统
US20160191243A1 (en) * 2014-12-31 2016-06-30 William Manning Out-of-band validation of domain name system records

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1024221A (en) 1911-01-03 1912-04-23 Daniel A Osgood Grouting-machine.
US1007529A (en) 1911-03-14 1911-10-31 Luther L Carr Folding hay-knife.
US1012101A (en) 1911-03-22 1911-12-19 Richard A Roach Spring-belt.
US6343295B1 (en) * 1998-12-16 2002-01-29 Microsoft Corporation Data lineage
KR100652098B1 (ko) * 2000-01-21 2006-12-01 소니 가부시끼 가이샤 데이터 인증 처리 시스템
US6938039B1 (en) * 2000-06-30 2005-08-30 Emc Corporation Concurrent file across at a target file server during migration of file systems between file servers using a network file system access protocol
US7054891B2 (en) * 2002-03-18 2006-05-30 Bmc Software, Inc. System and method for comparing database data
US7266842B2 (en) * 2002-04-18 2007-09-04 International Business Machines Corporation Control function implementing selective transparent data authentication within an integrated system
US8627086B2 (en) * 2004-10-11 2014-01-07 Telefonaktiebolaget Lm Ericsson (Publ) Secure loading and storing of data in a data processing device
KR100654446B1 (ko) * 2004-12-09 2006-12-06 삼성전자주식회사 보안 부팅 장치 및 방법
US9626667B2 (en) * 2005-10-18 2017-04-18 Intertrust Technologies Corporation Digital rights management engine systems and methods
US7587564B2 (en) * 2006-09-26 2009-09-08 International Business Machines Corporation System, method and computer program product for managing data versions
US8499044B2 (en) * 2006-12-07 2013-07-30 Microsoft Corporation Formatted message processing utilizing a message map
CN101236525A (zh) * 2008-01-24 2008-08-06 创新科存储技术(深圳)有限公司 文件存储、读取、删除及复制方法及其相关系统
US7676501B2 (en) * 2008-03-22 2010-03-09 Wilson Kelce S Document integrity verification
US7904450B2 (en) * 2008-04-25 2011-03-08 Wilson Kelce S Public electronic document dating list
US9098495B2 (en) * 2008-06-24 2015-08-04 Commvault Systems, Inc. Application-aware and remote single instance data management
US9098632B2 (en) * 2010-12-03 2015-08-04 Dcs Consultancy Services Limited Computer program testing
US9569771B2 (en) * 2011-04-29 2017-02-14 Stephen Lesavich Method and system for storage and retrieval of blockchain blocks using galois fields
US20120310875A1 (en) * 2011-06-03 2012-12-06 Prashanth Prahlad Method and system of generating a data lineage repository with lineage visibility, snapshot comparison and version control in a cloud-computing platform
US8751736B2 (en) * 2011-08-02 2014-06-10 Oracle International Corporation Instructions to set and read memory version information
CN103678337B (zh) * 2012-09-06 2017-12-12 华为技术有限公司 数据清除方法、装置及系统
KR101518488B1 (ko) * 2013-05-20 2015-05-07 주식회사 애드오피 온라인 콘텐츠 가치 향상 방법 및 시스템
US9135285B1 (en) * 2013-05-30 2015-09-15 Ca, Inc. Loading XML records into a database
JP6432127B2 (ja) * 2013-11-12 2018-12-05 株式会社リコー 通信装置、通信システム、通信方法及び通信プログラム
WO2015175722A1 (en) * 2014-05-13 2015-11-19 Nant Holdings Ip, Llc Healthcare transaction validation via blockchain proof-of-work, systems and methods
US9836908B2 (en) * 2014-07-25 2017-12-05 Blockchain Technologies Corporation System and method for securely receiving and counting votes in an election
US20160098723A1 (en) * 2014-10-01 2016-04-07 The Filing Cabinet, LLC System and method for block-chain verification of goods
US10409827B2 (en) * 2014-10-31 2019-09-10 21, Inc. Digital currency mining circuitry having shared processing logic
CA2981511C (en) * 2015-03-31 2018-08-28 Nasdaq, Inc. Systems and methods of blockchain transaction recordation
US10963881B2 (en) * 2015-05-21 2021-03-30 Mastercard International Incorporated Method and system for fraud control of blockchain-based transactions
US10026082B2 (en) * 2015-05-21 2018-07-17 Mastercard International Incorporated Method and system for linkage of blockchain-based assets to fiat currency accounts
US9870562B2 (en) * 2015-05-21 2018-01-16 Mastercard International Incorporated Method and system for integration of market exchange and issuer processing for blockchain-based transactions
US20160342989A1 (en) * 2015-05-21 2016-11-24 Mastercard International Incorporated Method and system for processing blockchain-based transactions on existing payment networks
US10075298B2 (en) * 2015-06-02 2018-09-11 ALTR Solutions, Inc. Generation of hash values within a blockchain
US9881176B2 (en) * 2015-06-02 2018-01-30 ALTR Solutions, Inc. Fragmenting data for the purposes of persistent storage across multiple immutable data structures
US10121019B2 (en) * 2015-06-02 2018-11-06 ALTR Solutions, Inc. Storing differentials of files in a distributed blockchain
CN104935657A (zh) * 2015-06-15 2015-09-23 清华大学深圳研究生院 主动推送信息的方法和嵌入式节点操作系统
US10402792B2 (en) 2015-08-13 2019-09-03 The Toronto-Dominion Bank Systems and method for tracking enterprise events using hybrid public-private blockchain ledgers
US10425428B2 (en) * 2015-08-20 2019-09-24 Guardtime Sa Verification lineage tracking and transfer control of data sets
CN105117489B (zh) * 2015-09-21 2018-10-19 北京金山安全软件有限公司 一种数据库管理方法、装置及电子设备
CN105608588A (zh) * 2016-01-04 2016-05-25 布比(北京)网络技术有限公司 一种溯源记录处理的方法及装置
CN105610578B (zh) * 2016-01-25 2019-05-03 杭州复杂美科技有限公司 区块链信息存证及隐私保护方法
US9774578B1 (en) * 2016-05-23 2017-09-26 Accenture Global Solutions Limited Distributed key secret for rewritable blockchain
US10705221B2 (en) * 2016-06-08 2020-07-07 The Boeing Company On-board backup and anti-spoofing GPS system
CN106897348B (zh) * 2016-08-19 2020-10-27 创新先进技术有限公司 一种数据存储、数据校验、数据溯源方法和设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160191243A1 (en) * 2014-12-31 2016-06-30 William Manning Out-of-band validation of domain name system records
CN105045536A (zh) * 2015-07-29 2015-11-11 百度在线网络技术(北京)有限公司 一种数据存储的方法、装置与系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. ALI et al. ‘Blockstack: A Global Naming and Storage System Secured by Blockchains’, Proceedings of the 2016 USENIX Annual Technical Conference’, 2016.06.22 *

Also Published As

Publication number Publication date
JP6963006B2 (ja) 2021-11-05
US20210359841A1 (en) 2021-11-18
US20210099285A1 (en) 2021-04-01
US20200136811A1 (en) 2020-04-30
KR102188744B1 (ko) 2020-12-09
TW201807601A (zh) 2018-03-01
US20190182033A1 (en) 2019-06-13
RU2744054C2 (ru) 2021-03-02
AU2017312177B2 (en) 2020-12-10
CN106897348A (zh) 2017-06-27
EP3502926A1 (en) 2019-06-26
EP3502926A4 (en) 2020-05-06
KR20190039787A (ko) 2019-04-15
US10931441B2 (en) 2021-02-23
RU2019107593A (ru) 2020-09-21
JP2019532550A (ja) 2019-11-07
ZA201901031B (en) 2021-07-28
CA3034034A1 (en) 2018-02-22
TWI679546B (zh) 2019-12-11
CN106897348B (zh) 2020-10-27
US10880078B2 (en) 2020-12-29
AU2019101570A4 (en) 2020-01-23
CA3034034C (en) 2021-06-15
PH12019500334A1 (en) 2019-11-11
BR112019003345A2 (pt) 2019-06-11
MX2019002021A (es) 2019-07-08
AU2017312177A1 (en) 2019-03-14
WO2018032995A1 (zh) 2018-02-22
US11356245B2 (en) 2022-06-07
KR102289995B1 (ko) 2021-08-17
SG11201901181PA (en) 2019-03-28
MY184117A (en) 2021-03-18
US11082208B2 (en) 2021-08-03
RU2019107593A3 (ko) 2020-09-21

Similar Documents

Publication Publication Date Title
KR102188744B1 (ko) 데이터 저장, 데이터 검사 및 데이터 연계 방법 및 장치
US20190327094A1 (en) Information authentication method and system
US10810004B2 (en) System and method for managing a public software component ecosystem using a distributed ledger
CN107577427B (zh) 用于区块链系统的数据迁移方法、设备和存储介质
US11762839B2 (en) Search method using data structure for supporting multiple search in blockchain-based IoT environment, and device according to method
US20180173521A1 (en) Method, apparatus, and system for reading and writing files
Zhang et al. A method to predict the performance and storage of executing contract for ethereum consortium-blockchain
CN113711221A (zh) 可链记录的高效存取
BR112016003486B1 (pt) Método, servidor e dispositivo de memória legível por computador para gerar automaticamente documentos de certificação
WO2019161658A1 (zh) 动态域名验证方法、系统、计算机设备和存储介质
Jones et al. Interoperability for accessing versions of web resources with the memento protocol
US20230334344A1 (en) Distributed ledger based machine-learning model management
Selonen et al. Experiences in building a RESTful mixed reality web service platform
US11500837B1 (en) Automating optimizations for items in a hierarchical data store
Falazi et al. Blockchain-based collaborative development of application deployment models
Slabbinck et al. Linked data event streams in Solid LDP containers
US10853057B1 (en) Software library versioning with caching
OA19331A (en) Data storage, data check, and data linkage method and apparatus
US20230038573A1 (en) Computing platform for facilitating data exchange among computing environments
Li et al. An enterprise composite blockchain construction method for business environment
Bartholomä Automated Mining of User Account Access Graphs
KR20220074483A (ko) 멀티미디어 콘텐츠 버전 관리 방법 및 장치
Le Roux et al. DSaaS: A cloud service for persistent data structures
le Roux et al. A Cloud Service for Persistent Data Structures

Legal Events

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