KR20200067118A - 이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식 - Google Patents

이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식 Download PDF

Info

Publication number
KR20200067118A
KR20200067118A KR1020197011596A KR20197011596A KR20200067118A KR 20200067118 A KR20200067118 A KR 20200067118A KR 1020197011596 A KR1020197011596 A KR 1020197011596A KR 20197011596 A KR20197011596 A KR 20197011596A KR 20200067118 A KR20200067118 A KR 20200067118A
Authority
KR
South Korea
Prior art keywords
blockchain
local database
computer
information
binary
Prior art date
Application number
KR1020197011596A
Other languages
English (en)
Other versions
KR102315791B1 (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 KR20200067118A publication Critical patent/KR20200067118A/ko
Application granted granted Critical
Publication of KR102315791B1 publication Critical patent/KR102315791B1/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/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/24Querying
    • G06F16/248Presentation of query results
    • 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/25Integrating or interfacing systems involving database management systems
    • G06F16/254Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
    • 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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/36Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
    • G06Q20/367Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
    • G06Q20/3672Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes initialising or reloading thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/405Establishing or using transaction specific rules
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • 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/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Signal Processing (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

본 명세서의 구현은 지정된 시간 간격에서 블록체인을 폴링하는 것, 하나 이상의 갱신된 블록으로부터 블록 정보를 수신하는 것 - 블록 정보는 정적 정보와 동적 정보를 포함하고, 동적 정보는 스마트 계약에서 사용될 하나 이상의 변수를 포함함 -, 동적 정보를 하나 이상의 이진 로그로 변환하는 것, 및 하나 이상의 이진 로그를 사용해 로컬 데이터베이스를 갱신하는 것을 포함한다.

Description

이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식
합의 네트워크 및/또는 블록체인 네트워크라고 또한 지칭될 수 있는 분산 원장 시스템(distributed ledger system; DLS)은 참여하는 엔티티(entity)들이 안전하고 불변하게(immutably) 데이터를 저장하는 것을 가능케 한다. DSL은 임의의 특정 사용 케이스(예를 들면, 암호 화폐)를 참조하지 않고 블록체인 네트워크라고 일반적으로 지칭된다. 블록체인 네트워크의 예시적인 유형은 공개형(public) 블록체인 네트워크, 폐쇄형(private) 블록체인 네트워크, 및 컨소시엄 블록체인 네트워크를 포함할 수 있다. 공개형 블록체인 네트워크는 모든 엔티티가 DLS를 사용하도록 개방되어 있고, 합의 프로세스에 참여한다. 폐쇄형 블록체인 네트워크는, 판독 및 기록 허용을 중앙적으로 제어하는, 특정 엔티티를 위해 제공된다. 컨소시엄 블록체인 네트워크는, 합의 프로세스를 제어하고, 액세스 제어층을 포함하는, 선택된 그룹의 엔티티들을 위해 제공된다.
블록체인 상에 기록된 정보는 제3자 블록체인 브라우저를 사용해 보여질 수 있다. 제3자 블록체인 브라우저는 다른 정보 중에서, 예를 들면, 개별 계정의 잔고, 트랜잭션 이력, 및 스마트 계약 조건과 같은 블록체인 상의 정적 정보를 반환(return)할 수 있다. 일부 경우에, 블록체인은 예를 들면, 스마트 계약의 실행을 위해 책임이 있는 변수들(variables)과 같은 동적 데이터를 또한 포함한다. 종래의 블록체인 브라우저는 이러한 동적 정보를 보여주기 위한 능력을 갖지 않는다.
본 명세서의 구현은 블록체인의 동적 정보를 디스플레이하기 위한 컴퓨터로 구현된 방법을 포함한다. 보다 구체적으로, 본 명세서의 구현은, 블록 체인 내의 동적 정보를 하나 이상의 이진 로그로 변환하는 것과, 이진 로그를 사용해 데이터베이스를 갱신하는 것에 대한 것이다.
일부 구현에서, 동작(action)들은, 지정된 시간 간격에서 블록체인을 폴링(polling)하는 것, 하나 이상의 갱신된 블록으로부터 블록 정보를 수신하는 것 - 블록 정보는 정적 정보와 동적 정보를 포함하고, 동적 정보는 스마트 계약에서 사용될 하나 이상의 변수를 포함함 -, 동적 정보를 하나 이상의 이진 로그로 변환하는 것, 및 하나 이상의 이진 로그를 사용해 로컬 데이터베이스를 갱신하는 것을 포함한다. 다른 구현은 컴퓨터 저장 디바이스 상에 인코딩된, 방법의 동작들을 수행하도록 구성된 대응 시스템, 장치, 및 컴퓨터 프로그램을 포함한다.
이들 및 다른 구현은 각각 옵션으로 하기의 피처(feature)들 중 하나 이상을 포함한다: 하나 이상의 이진 로그가 로컬 데이터베이스로부터 분리된 이진 로그 파일에 저장되는 것; 로컬 데이터베이스가 관계형 데이터베이스인 것; 하나 이상의 이진 로그가 구조화 질의 언어에 따라 기록되는 것; 블록체인의 폴링이 스마트 계약의 실행에 의해 트리거(trigger)되는 것; 동작들이 정적 정보를 사용해 로컬 데이터베이스를 갱신하는 것을 더 포함하는 것; 그리고 동작들이 로컬 데이터베이스로의 사용자 질의(query)에 응답해서, 동적 정보를 사용자 디바이스에 제시하는 것을 더 포함하는 것.
본 명세서는, 하나 이상의 프로세서에 결합되고, 하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 여기서 제공된 방법의 구현에 따른 동작들을 수행하게 하는 명령어들을 저장한 하나 이상의 비일시적 컴퓨터 판독가능한 저장 매체를 또한 제공한다.
본 명세서는 또한 여기서 제공된 방법을 구현하기 위한 시스템을 제공한다. 시스템은 하나 이상의 프로세서와, 명령어들을 갖는, 하나 이상의 프로세서에 결합된 컴퓨터 판독가능 저장 매체를 포함하고, 명령어들은, 하나 이상의 프로세서에 의해 실행될 때, 하나 이상의 프로세서로 하여금 본 명세서에서 제공된 방법의 구현에 따른 동작들을 수행하게 한다.
본 명세서에 따른 방법은 여기서 설명된 양상 및 피처(feature)의 임의의 조합을 포함할 수 있다는 것이 인식된다. 즉, 본 명세서에 따른 방법은 여기서 설명된 양상들과 피처들의 조합에 제한되지 않고, 제공된 양상들 및 피처들의 임의의 조합을 또한 포함한다.
본 명세서의 하나 이상의 구현들의 상세가 첨부 도면들 및 이하의 설명에 기재된다. 본 명세서의 다른 특징 및 이점은 발명을 실시하기 위한 구체적인 내용 및 도면들로부터 그리고 청구항들로부터 명백할 것이다.
도 1은 본 명세서의 구현을 실행시키기 위해 사용될 수 있는 예시적인 환경을 묘사한다.
도 2는 본 명세서의 구현에 따라 예시적인 개념적 아키텍처(architecture)를 묘사한다.
도 3은 본 명세서의 구현에 따라 이진 로그를 사용해 블록체인 동적 데이터를 디스플레이하기 위해 사용될 수 있는 예시적인 시스템을 묘사한다.
도 4는, 본 명세서의 구현에 따라 실행될 수 있는 예시적인 프로세스를 묘사한다.
다양한 도면들에서 유사한 참조 기호들은 유사한 요소들을 지시한다.
본 명세서의 구현은 이진 로그를 사용해 블록체인을 복제하기 위한 컴퓨터로 구현된 방법을 포함한다. 보다 구체적으로, 본 명세서의 구현은, 스마트 계약 정보를 이진 로그로 변환하고, 이진 로그를 사용해 관계형 데이터베이스를 갱신하는 것에 대한 것이다. 일부 구현에서, 동작(action)들은, 지정된 시간 간격에서 블록체인을 폴링하는 것, 하나 이상의 갱신된 블록으로부터 블록 정보를 수신하는 것 - 블록 정보는 정적 정보와 동적 정보를 포함하고, 동적 정보는 스마트 계약에서 사용될 하나 이상의 변수를 포함함 -, 동적 정보를 하나 이상의 이진 로그로 변환하는 것, 및 하나 이상의 이진 로그를 사용해 로컬 데이터베이스를 갱신하는 것을 포함한다.
본 명세서의 구현을 위한 추가적인 상황을 제공하도록, 그리고 위에서 소개된 바와 같이, 합의 네트워크(예를 들면, 피어-투-피어 노드로 이루어짐)라고 또한 지칭될 수 있는 분산 원장 시스템(DLS)과 블록체인 네트워크는 참여하는 엔티티들이 안전하고 불변하게 트랜잭션을 수행하고, 데이터를 저장하는 것을 가능케 한다. 용어 블록체인이 암호 화폐 네트워크와 일반적으로 연관되지만, 블록체인은 여기에서 임의의 특정 사용 케이스를 참조하지 않고 DLS를 일반적으로 참조하기 위해 사용된다. 위에서 소개된 바와 같이, 볼록체인 네트워크는 공개형 블록체인 네트워크, 폐쇄형 블록체인 네트워크, 또는 컨소시엄 블록체인 네트워크로서 제공될 수 있다.
공개형 블록체인 네트워크에서, 합의 프로세스는 합의 네트워크의 노드에 의해 제어된다. 예를 들면, 수백, 수천, 심지어 수백만의 엔티티들이 공개형 블록체인과 협력할 수 있고, 이들 각각은 공개형 블록체인 네트워크 내의 적어도 하나의 노드를 동작시킨다. 따라서, 공개형 블록체인 네트워크는 참여하는 엔티티들에 대해 공개 네트워크라고 간주될 수 있다. 일부 예시에서, 대다수의 엔티티들(노드들)은 블록이 유효하도록 모든 블록을 서명해야 하고, 블록체인 네트워크의 블록체인(분산 원장)에 추가된다. 예시적인 블록체인 네트워크는, 블록체인이라고 지칭되는, 분산 원장을 레버리지(leverage)하는, 피어 투 피어 지불 네트워크로서 제공되는 특정 암호 화폐 네트워크를 포함한다. 하지만, 위에서 언급된 바와 같이, 용어 블록체인은 임의의 특정 암호 화폐 네트워크를 참조하지 않고 분산 원장을 일반적으로 지칭하기 위해 사용된다.
일반적으로, 공개형 블록체인 네트워크는 공개형 트랜잭션(transaction)을 지원한다. 공개 트랜잭션은 공개형 블록체인 네트워크 내의 노드들 모두와 공유되고 전역(global) 블록체인에 저장된다. 전역 블록체인은, 모든 노드들에 걸쳐 복제되는 블록체인이다. 즉, 모든 노드들은 전역 블록체인에 대해 완벽한 상태 합의에 있다. 합의(예를 들면, 블록을 블록체인에 추가하도록 동의)를 달성하도록, 합의 프로토콜이 공개형 블록체인 네트워크 내에 구현된다. 예시적인 합의 프로토콜은, 제한 없이, 특정 암호 화폐 네트워크 내에 구현되는 POW(proof-of-work)를 포함한다.
일반적으로, 폐쇄형 블록체인 네트워크는, 판독 및 기록 허용을 중앙적으로 제어하는, 특정 엔티티를 위해 제공된다. 엔티티는 어느 노드가 블록체인 네트워크에 참여할 수 있는지를 제어한다. 결과적으로, 폐쇄형 블록체인 네트워크는, 누가 네트워크에 참여하도록 허용되는지 그리고 참여의 정도(예를 들면, 특정 트랜잭션)에 대해 제약을 하는 허용된 네트워크(permissioned network)라고 일반적으로 지칭된다. 다양한 유형들의 액세스 제어 메커니즘이 사용될 수 있다(예를 들면, 기존 참여자는 새로운 엔티티를 추가하는 것에 대해 표결하고, 규제 기관은 가입(admission)을 제어할 수 있음).
일반적으로, 컨소시엄 블록체인 네트워크는 참여 엔티티들 중에 폐쇄적(private)이다. 컨소시엄 블록체인 네트워크에서, 합의 프로세스는 인가된 노드들의 세트에 의해 제어되며, 하나 이상의 노드는 각각의 엔티티(예를 들면, 금융 기관, 보험 회사)에 의해 동작된다. 예를 들면, 10개의 엔티티들(예를 들면, 금융 기관, 보험 회사)의 컨소시엄은 컨소시엄 블록체인 네트워크를 동작시킬 수 있고, 이 엔티티들 각각은 컨소시엄 블록체인 네트워크 내의 적어도 하나의 노드를 동작시킨다. 따라서, 컨소시엄 블록체인 네트워크는 참여하는 엔티티들에 대해 폐쇄형 네트워크라고 간주될 수 있다. 일부 예시에서, 각각의 엔티티(노드)는 블록이 유효하도록 모든 블록을 서명해야 하고, 블록체인에 추가된다. 일부 예시에서, 적어도 엔티티들(노드들)(예를 들면, 적어도 7개의 엔티티들)의 서브세트는 블록이 유효하도록 모든 블록을 서명해야 하고, 블록체인에 추가되어야 한다.
본 명세서의 구현은, 참여 엔티티들 중에 공개(public)되는, 공개형 블록체인 네트워크를 참조해 본 명세서에서 더 자세히 설명된다. 하지만, 본 명세서의 구현은 임의의 적절한 유형의 블록체인 네트워크 내에서 실현될 수 있다고 고려된다.
본 명세서의 구현은 상기 상황을 고려해 여기에서 더 자세히 설명된다. 보다 구체적으로, 그리고 위에서 소개된 바와 같이, 본 명세서의 구현은 예를 들면, 블록체인의 스마트 계약 변수와 같은 동적 정보를 디스플레이하는 것에 대한 것이다. 본 명세서의 구현에 따라, 예를 들면, 스마트 계약의 실행 동안에 블록체인 상의 동적 정보를 갱신하기 위한 명령어는 구조화 질의어와 호환되는 이진 로그로 변환된다. 이진 로그는 블록체인의 상태를 저장하는 데이터베이스를 갱신하기 위해 사용된다. 사용자는 블록체인과 연관된 데이터를 보도록 (예를 들면, SQL 질의를 사용해) 데이터베이스를 질의할 수 있다.
도 1은 본 명세서의 구현을 실행시키기 위해 사용될 수 있는 예시적인 환경(100)을 묘사한다. 일부 예시에서, 예시적인 환경(100)은 엔티티가 공개형 블록체인 네트워크(102)에 참여하는 것을 가능케 한다. 예시적인 환경(100)은 컴퓨터 디바이스(106, 108), 및 네트워크(110)를 포함한다. 일부 예시에서, 네트워크(110)는 LAN(local area network), WAN(wide area network), 인터넷, 또는 이들의 조합을 포함하고, 웹 사이트들, 사용자 디바이스들(예를 들면, 컴퓨팅 디바이스), 및 백-엔드(back-end) 시스템을 접속시킨다. 일부 예시에서, 네트워크(110)는 유선 및/또는 무선 통신 링크를 통해 액세스될 수 있다.
묘사된 예시에서, 컴퓨팅 시스템(106, 108)은 각각 공개형 블록체인 네트워크(102)에서 노드로서의 참여를 가능케 하는 임의의 적절한 컴퓨팅 시스템을 포함할 수 있다. 예시적인 컴퓨팅 디바이스는 제한 없이, 서버, 데스크톱, 랩톱 컴퓨터, 태블릿 컴퓨팅 디바이스, 및 스마트폰을 포함한다. 일부 예시에서, 컴퓨팅 시스템(106, 108)은 공개형 블록체인 네트워크(102)와 상호작용하기 위해 하나 이상의 컴퓨터-구현된 서비스를 호스트한다. 예를 들면, 제1 엔티티가 하나 이상의 다른 엔티티(예를 들면, 다른 사용자들)와의 트랜잭션을 관리하기 위해 사용하는 트랜잭션 관리 시스템과 같은, 컴퓨팅 시스템(106)은 제1 엔티티(예를 들면, 사용자 A)의 컴퓨터-구현된 서비스를 호스트할 수 있다. 예를 들면, 제2 엔티티가 하나 이상의 다른 엔티티(예를 들면, 다른 사용자들)와의 트랜잭션을 관리하기 위해 사용하는 트랜잭션 관리 시스템과 같은, 컴퓨팅 시스템(108)은 제2 엔티티(예를 들면, 사용자 B)의 컴퓨터-구현된 서비스를 호스트할 수 있다. 도 1의 예시에서, 공개형 블록체인 네트워크(102)는 노드들의 피어 투 피어 네트워크로서 표현되고, 컴퓨팅 시스템(106, 108)은 공개형 블록체인 네트워크(102)에 참여하는, 제1 엔티티와 제2 엔티티 각각의 노드를 제공한다.
도 2는 본 명세서의 구현에 따른 예시적인 개념적 아키텍처(200)를 묘사한다. 예시적인 개념적 아키텍처(200)는 엔티티층(202), 호스트된 서비스층(204), 및 블록체인 네트워크층(206)을 포함한다. 묘사된 예시에서, 엔티티층(202)은 3개의 층들, 즉, 엔티티_1(E1), 엔티티_2(E2), 및 엔티티_3(E3)을 포함하고, 각각의 엔티티는 각각의 트랜잭션 관리 시스템(208)을 갖는다.
묘사된 예시에서, 호스트된 서비스층(204)은 각각의 트랜잭션 관리 시스템(210)을 위한 인터페이스(210)를 포함한다. 일부 예시에서, 각각의 트랜잭션 관리 시스템(208)은 프로토콜(예를 들면, HTTPS(hypertext transfer protocol secure))을 사용해 네트워크(예를 들면, 도 1의 네트워크(110))을 통해 각각의 인터페이스(210)와 통신한다. 일부 예시에서, 각각의 인터페이스(210)는 각각의 트랜잭션 관리 시스템(208)과 블록체인 네트워크층(206) 사이에 통신 접속을 제공한다. 보다 구체적으로, 인터페이스(210)는 블록체인 네트워크층(206)의 블록체인 네트워크(212)와 통신한다. 일부 예시에서, 인터페이스(210)와 블록체인 네트워크층(206) 사이의 통신은 RPC(remote procedure call)을 사용해 수행된다. 일부 예시에서, 인터페이스(210)는 각각의 트랜잭션 관리 시스템(208)을 위해 블록체인 네트워크 노드를 “호스트” 한다. 예를 들면, 인터페이스(210)는 블록체인 네트워크(212)를 위한 애플리케이션 프로그래밍 인터페이스(application programming interface; API)를 제공한다.
여기서 설명된 바와 같이, 블록체인 네트워크(212)는 블록체인(216)에서 정보를 불변하게 기록하는 복수의 노드들(214)을 포함하는 피어 투 피어 네트워크로서 제공된다. 단일 블록체인(216)이 개략적으로 묘사되지만, 블록체인(216)의 다수의 사본들(copies)이 제공되고, 블록체인 네트워크(212)를 가로질러 유지된다. 예를 들면, 각각의 노드(214)는 블록체인의 사본을 저장한다. 일부 구현에서, 블록체인(216)은, 공개형 블록체인 네트워크에 참여하는 두 개 이상의 엔티티들 사이에 수행되는 트랜잭션과 연관된 정보를 저장한다.
도 3은 이진 로그를 사용해 블록체인 동적 데이터를 제공하도록 사용될 수 있는 예시적인 시스템(300)을 묘사한다. 시스템(300)은 더 큰 컴퓨터 환경(예를 들면, 시스템(100))의 일부이거나, 독립형(stand-alone) 시스템일 수 있다.
시스템(300)은 블록체인 네트워크(예를 들면, 블록체인 네트워크(212))에서 유지되는 동적 정보를 제공하도록 구현된다. 도 2에서 설명되는 바와 같이, 블록체인 네트워크(212)는, 블록체인(216)의 사본을 저장하는 블록체인 네트워크(212) 내에 각각의 컴퓨팅 노드를 갖는 블록체인(216)을 유지한다. 블록체인(216)은 정적 정보(304)와 동적 정보(302) 둘 다를 포함한다. 예를 들면, 블록체인(216)은, 블록체인 내의 개별 계정의 주소, 블록체인 내의 개별 계정의 잔고, 블록체인 내의 스마트 계약 주소 등을 제한 없이 포함할 수 있는 정적 정보를 포함할 수 있다. 일단 정적 정보(302)가 블록체인에 기록되면 정적 정보(302)가 불변이기 때문에, 이 정보는 직접 폴링되거나 보기 위해 데이터베이스에 저장될 수 있다. 예를 들면, 정적 정보는 블록체인 내력 데이터베이스(308)에 기록될 수 있다. 블록체인 내력 데이터베이스(308)는 상이한 시간들에 블록체인 상태를 기록하는 관계형 데이터베이스일 수 있다. 예를 들면, 특정 시간에 블록체인 주소의 잔고를 알기 원하는 사용자는, 애플리케이션(310) 또는 웹 브라우저(312)를 사용해, 계정 주소와 시간을 지정하는 질의를 블록체인 내력 데이터베이스(308)에 제출할 수 있다. 사용자가 블록체인 네트워크(212)로부터 직접 정보를 요청할 것을 요구하는 것과는 반대로, 사용자가 블록체인 내력 데이터베이스(308)에 질의를 제출하는 것을 허용하는 것은, 질의 검색 시간(query lookup time)을 개선하고, 블록체인 네트워크(212)에 대한 대역폭 압박(pressure)을 감소시킨다.
정적 정보에 추가적으로, 블록체인(216)은, 블록체인 네트워크(212) 내의 동작에 기초해 변화하는 동적 정보를 포함할 수 있다. 예를 들면, 동적 정보는 블록체인(216) 상의 스마트 계약의 실행에서 사용되는 변수를 제한 없이 포함할 수 있다. 블록 체인 내력 데이터베이스(308)에 동적 정보를 기록하기 위해, 시스템(300)은, 동적 정보에 대해 동작하는 명령어를 구조화 질의어로 변환하고, 변환된 구조화 질의어를 이진 로그 파일(306)에 이진 로그로서 저장한다. 예를 들면, 블록체인(216)은 하기 문장들을 갖는 스마트 계약을 포함할 수 있다:
Class DemoContract:
def __init__(self):
self.status= “init”
def set_a_value (self, key, value):
if key == “status”:
self.status = value
시스템(300)은, 이진 로그 파일(306)에 추가되도록 이 예시적인 문장들을 하기의 질의어들로 변환할 수 있다: “update contract set ‘status’=’new_value’ where ‘contract_addr’ = ‘abcdefeas123343’.”
(예를 들면, 스마트 계약의 실행에 의해) 동적 정보가 갱신될 때, 이진 로그 파일(306)은 갱신된 이진 로그를 블록체인 내력 데이터베이스(308)에 복제한다. 결과적으로, 블록체인 내력 데이터베이스(308)는 블록체인(206) 내의 동적 정보의 갱신된 기록을 포함한다. 블록체인 내력 데이터베이스(308) 내에 저장된 동적 데이터의 예시가 이하의 표 1에 도시된다.
contract_add key value last_modified
23d61f4a88f90be12 "status" "new_value" 2018-08-01 15:19
1290c0eeab344992 "statusArray" "["value1","value2"]" 2018-08-07 16:20
290ca88f923d61f4a "token" "{
"value" :2000
"unit" : "RMB"
}"
2018-08-08 17:21
예시적인 동적 데이터
갱신된 동적 정보를 보기 위해, 사용자는 애플리케이션(310) 또는 웹 브라우저(312)를 사용해 질의(예를 들면, SQL 질의)를 블록체인 내력 데이터베이스(308)에 제출할 수 있다.
도 4는, 본 명세서의 구현에 따라 실행될 수 있는 예시적인 프로세스(400)를 묘사한다. 일부 구현에서, 예시적인 프로세스(400)는, 하나 이상의 컴퓨팅 디바이스(예를 들면, 도 3의 시스템(300))를 사용해 실행되는 하나 이상의 컴퓨터 실행 가능한 프로그램의 시스템에 의해 수행될 수 있다. 편의를 위해, 프로세스(400)는 시스템에 의해 수행되는 것으로 설명될 것이다.
시스템은 갱신된 정보를 수신하도록 블록체인으로부터 정보를 폴링한다. 예를 들면, 시스템은 지정된 시간 간격으로 블록체인을 폴링할 수 있거나, 블록체인은, 새로운 트랜잭션이 블록체인에 기록되었을 때 시스템에게 통지할 수 있다. 일부 경우에, 시스템은 블록체인(402)에 기록하는 후크(hook)를 기능에 추가할 수 있다.
블록체인을 폴링한 후에, 시스템은 예를 들면, 블록체인(404) 상에서 실행되는 스마트 계약에 의해 생성되는 새로운 값과 같은 동적 정보를 수신한다.
시스템은 동적 정보를, 로그 파일(406)에 저장하기 위한 SQL 호환되는 이진 로그로 변환한다. 예를 들면, 스마트 계약은 특정 변수를 설정하기 위해 특정 프로그래밍 언어로 기록될 수 있다. 시스템은 도 3 및 관련 설명에서 설명된 바와 같이 세트 함수(set function)를 SQL 질의로 변환할 수 있다.
시스템은 이진 로그(408)를 사용해 관계형 데이터베이스를 갱신한다. 예를 들면, 관계형 데이터베이스는 이진 로그 파일로부터 이진 로그를 수신하기 위한 주/종속 방식에서 종속 장치(slave)로서 설정될 수 있다. 일부 경우에서, 관계형 데이터베이스에 대한 이진 로그의 폴링은 시스템에서 실행되는 전용 프로그램을 사용해 수행될 수 있다.
설명된 피처는 디지털 전자 회로로, 또는 컴퓨터 하드웨어, 펌웨어, 소프트웨어로, 또는 이들의 조합들로 구현될 수 있다. 장치는 프로그래밍 가능 프로세서에 의한 실행을 위해 정보 캐리어(carrier)에서(머신-판독가능 저장 디바이스에서) 유형으로 구현되는 컴퓨터 프로그램 제품에서 구현될 수 있고, 방법 단계들은, 입력 데이터에 대해 동작하고 출력을 생성함으로써, 설명된 구현의 기능을 수행하기 위한 명령어들의 프로그램을 실행하는 프로그래밍 가능 프로세서에 의해 수행될 수 있다. 설명된 피처는, 데이터 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령어를 수신하고, 데이터 및 명령어를 이들에 송신하도록 결합된 적어도 하나의 프로그래밍 가능 프로세서를 포함하는 프로그래밍 가능 시스템 상에서 실행 가능한 하나 이상의 컴퓨터 프로그램에서 이롭게 구현될 수 있다. 컴퓨터 프로그램은, 특정 활동을 수행하거나 특정 결과를 초래하도록 컴퓨터에서 직접 또는 간접으로 사용될 수 있는 명령어들의 세트이다. 컴퓨터 프로그램은, 컴파일되거나 인터프리트된 언어를 포함하는 임의의 형태의 프로그래밍 언어로 기록될 수 있고, 컴퓨터 프로그램은, 독립형 프로그램으로서, 또는 컴퓨팅 환경에서 사용하기에 적절한 모듈, 컴포넌트, 서브루틴, 또는 또 다른 유닛으로서를 포함해 임의의 형태로 배포(deploy)될 수 있다.
명령어들의 프로그램의 실행을 위해 적절한 프로세서는, 예시로서, 범용 및 전용 마이크로프로세서와, 임의의 종류의 컴퓨터의 단독 프로세서 또는 다수의 프로세서들 중 하나를 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 이들 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 요소들은, 명령어를 실행하기 위한 프로세서와 명령어 및 데이터를 저장하기 위한 하나 이상의 메모리를 포함할 수 있다. 일반적으로, 컴퓨터는 데이터 파일을 저장하기 위한 하나 이상의 대용량 저장 디바이스를 또한 포함하거나, 이 디바이스와 통신하도록 동작적으로 결합될 수 있으며, 이러한 디바이스는 예를 들면, 내장 하드 디스크와 착탈식 디스크와 같은 자기 디스크, 광자기 디스크, 및 광학 디스크를 포함한다. 컴퓨터 프로그램 명령어 및 데이터를 유형적으로 구현하기 위해 적절한 저장 디바이스는, 예를 들면, EPROM, EEPROM, 및 플래시 메모리 디바이스와 같은 반도체 메모리 디바이스; 예를 들면, 내장 하드 디스크 및 착탈식 디스크와 같은 자기 디스크; 광자기 디스크; 및 CD-ROM과 DVD-ROM 디스크를 포함하는, 모든 형태의 비휘발성 메모리를 포함한다. 프로세서 및 메모리는 ASIC(application-specific integrated circuit)에 의해 보완되거나 ASIC 내에 포함될 수 있다.
사용자와의 상호작용을 제공하기 위해, 피처들은, 정보를 사용자에게 디스플레이하기 위한 예를 들면, CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터와 같은 디스플레이 디바이스와, 예를 들면, 사용자가 입력을 컴퓨터에 제공할 수 있는 마우스 또는 트랙볼과 같은 포인팅 디바이스를 갖는 컴퓨터 상에서 구현될 수 있다.
피처는, 예를 들면, 데이터 서버와 같은 백-엔드 컴포턴트를 포함하거나, 예를 들면, 애플리케이션 서버 또는 인터넷 서버와 같은, 미들웨어 컴포넌트를 포함하거나, 예를 들면, 그래픽 사용자 인터페이스 또는 인터넷 브라우저를 갖는 클라이언트 컴퓨터와 같은 프런트-엔드(front-end) 컴포넌트를 포함하거나, 이들 중 임의의 조합을 포함하는 컴퓨터 시스템에서 구현될 수 있다. 시스템의 컴포넌트들은 예를 들면, 통신 네트워크와 같은 임의의 형태 또는 매체의 디지털 데이터 통신에 의해 접속될 수 있다. 통신 네트워크들의 예시는, 예를 들면, LAN(local area network), WAN(wide area network), 및 컴퓨터와 인터넷을 형성하기 위한 네트워크를 포함한다.
컴퓨터 시스템은 클라이언트와 서버를 포함할 수 있다. 클라이언트 및 서버는 일반적으로 서로 원격으로 있고, 설명된 것과 같이 전형적으로 통신 네트워크를 통해 상호작용한다. 클라이언트와 서버의 관계는, 각각의 컴퓨터들 상에서 실행되고 서로 클라이언트-서버 관계를 갖는 컴퓨터 프로그램들에 의해 발생한다.
또한, 도면에서 묘사된 논리 흐름은 바람직한 결과를 달성하도록 도시된 특정 순서 또는 순차적 순서를 요구하지 않는다. 또한, 설명된 흐름으로부터 다른 단계들이 제공될 수 있거나 단계들이 제거될 수 있고, 다른 컴포넌트가 설명된 시스템에 추가되거나 이 시스템으로부터 제거될 수 있다. 따라서, 다른 구현이 하기의 청구항들의 범위 내에 있다.
본 명세서의 다수의 구현들이 설명되었다. 그럼에도, 본 명세서의 정신 및 범위로부터 이탈하지 않고 다양한 수정들이 수행될 수 있다는 것이 이해될 것이다. 따라서, 다른 구현이 하기의 청구항들의 범위 내에 있다.

Claims (21)

  1. 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법에 있어서,
    지정된 시간 간격으로 상기 블록체인을 폴링(polling)하는 단계;
    하나 이상의 갱신된 블록으로부터 블록 정보를 수신하는 단계 - 상기 블록 정보는 정적 정보 및 동적 정보를 포함하고, 상기 동적 정보는 스마트 계약(smart contract)에서 사용될 하나 이상의 변수를 포함함 -;
    상기 동적 정보를 하나 이상의 이진 로그(binary log)로 변환하는 단계; 및
    상기 하나 이상의 이진 로그를 사용해 상기 로컬 데이터베이스를 갱신하는 단계
    를 포함하는, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  2. 제1항에 있어서,
    상기 하나 이상의 이진 로그는, 상기 로컬 데이터베이스로부터 분리된 이진 로그 파일에 저장되는 것인, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  3. 제1항에 있어서,
    상기 로컬 데이터베이스는 관계형 데이터베이스인 것인, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  4. 제1항에 있어서,
    상기 하나 이상의 이진 로그는 구조화 질의 언어(structured query language)에 따라 기록되는 것인, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  5. 제1항에 있어서,
    상기 블록체인의 폴링은 상기 스마트 계약의 실행에 의해 트리거(trigger)되는 것인, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  6. 제1항에 있어서,
    상기 정적 정보를 사용해 상기 로컬 데이터베이스를 갱신하는 단계를 더 포함하는, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  7. 제1항에 있어서,
    상기 로컬 데이터베이스로의 사용자 질의에 응답해서, 상기 동적 정보를 사용자 디바이스에 제시(present)하는 단계를 더 포함하는, 블록체인으로부터 로컬 데이터베이스에 데이터를 복제하기 위해 컴퓨터로 구현된 방법.
  8. 하나 이상의 컴퓨터에 의해 실행될 때, 하나 이상의 컴퓨터로 하여금, 블록체인으로부터 로컬 데이터베이스로 데이터를 복제하기 위해 서비스 키의 관리를 위한 동작들을 수행하게 하는 명령어들로 인코딩된 하나 이상의 컴퓨터 판독가능 저장 매체에 있어서, 상기 동작들은,
    지정된 시간 간격으로 상기 블록체인을 폴링하는 동작;
    하나 이상의 갱신된 블록으로부터 블록 정보를 수신하는 동작 - 상기 블록 정보는 정적 정보 및 동적 정보를 포함하고, 상기 동적 정보는 스마트 계약에서 사용될 하나 이상의 변수를 포함함 -;
    상기 동적 정보를 하나 이상의 이진 로그로 변환하는 동작; 및
    상기 하나 이상의 이진 로그를 사용해 상기 로컬 데이터베이스를 갱신하는 동작
    을 포함하는 것인, 컴퓨터 판독가능 저장 매체.
  9. 제8항에 있어서,
    상기 하나 이상의 이진 로그는, 상기 로컬 데이터베이스로부터 분리된 이진 로그 파일에 저장되는 것인, 컴퓨터 판독가능 저장 매체.
  10. 제8항에 있어서,
    상기 로컬 데이터베이스는 관계형 데이터베이스인 것인, 컴퓨터 판독가능 저장 매체.
  11. 제8항에 있어서,
    상기 하나 이상의 이진 로그는 구조화 질의 언어에 따라 기록되는 것인, 컴퓨터 판독가능 저장 매체.
  12. 제8항에 있어서,
    상기 블록체인의 폴링은 상기 스마트 계약의 실행에 의해 트리거되는 것인, 컴퓨터 판독가능 저장 매체.
  13. 제8항에 있어서,
    상기 동작들은 상기 정적 정보를 사용해 상기 로컬 데이터베이스를 갱신하는 동작을 더 포함하는 것인, 컴퓨터 판독가능 저장 매체.
  14. 제8항에 있어서,
    상기 동작들은, 상기 로컬 데이터베이스로의 사용자 질의에 응답해서, 상기 동적 정보를 사용자 디바이스에 제시하는 동작을 더 포함하는 것인, 컴퓨터 판독가능 저장 매체.
  15. 시스템에 있어서,
    하나 이상의 컴퓨터; 및
    상기 하나 이상의 컴퓨터에 결합되고 상기 하나 이상의 컴퓨터에 의해 실행 가능한 명령어들을 갖게 구성된 하나 이상의 컴퓨터 판독가능한 메모리
    를 포함하고,
    상기 명령어들은,
    지정된 시간 간격으로 블록체인을 폴링하고;
    하나 이상의 갱신된 블록으로부터 블록 정보를 수신하고 - 상기 블록 정보는 정적 정보 및 동적 정보를 포함하고, 상기 동적 정보는 스마트 계약에서 사용될 하나 이상의 변수를 포함함 -;
    상기 동적 정보를 하나 이상의 이진 로그로 변환하며;
    상기 하나 이상의 이진 로그를 사용해 로컬 데이터베이스를 갱신하기 위한 것인, 시스템.
  16. 제15항에 있어서,
    상기 하나 이상의 이진 로그는, 상기 로컬 데이터베이스로부터 분리된 이진 로그 파일에 저장되는 것인, 시스템.
  17. 제15항에 있어서,
    상기 로컬 데이터베이스는 관계형 데이터베이스인 것인, 시스템.
  18. 제15항에 있어서,
    상기 하나 이상의 이진 로그는 구조화 질의 언어에 따라 기록되는 것인, 시스템.
  19. 제15항에 있어서,
    상기 블록체인의 폴링은 상기 스마트 계약의 실행에 의해 트리거되는 것인, 시스템.
  20. 제15항에 있어서,
    상기 정적 정보를 사용해 상기 로컬 데이터베이스를 갱신하도록 추가적인 명령어가 상기 하나 이상의 컴퓨터에 의해 실행가능한 것인, 시스템.
  21. 제15항에 있어서,
    상기 로컬 데이터베이스로의 사용자 질의에 응답해서, 상기 동적 정보를 사용자 디바이스에 제시하도록 추가적인 명령어가 상기 하나 이상의 컴퓨터에 의해 실행 가능한 것인, 시스템.
KR1020197011596A 2018-11-30 2018-11-30 이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식 KR102315791B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/118369 WO2019072284A2 (en) 2018-11-30 2018-11-30 SYSTEM FOR STRUCTURING BLOCK CHAIN DATA RELATIONS BASED ON REPLICATION OF BINARY LOGS

Publications (2)

Publication Number Publication Date
KR20200067118A true KR20200067118A (ko) 2020-06-11
KR102315791B1 KR102315791B1 (ko) 2021-10-21

Family

ID=66100050

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197011596A KR102315791B1 (ko) 2018-11-30 2018-11-30 이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식

Country Status (8)

Country Link
US (1) US20190251071A1 (ko)
EP (1) EP3549028A4 (ko)
JP (1) JP6756915B2 (ko)
KR (1) KR102315791B1 (ko)
CN (1) CN110622149A (ko)
PH (1) PH12019500864A1 (ko)
SG (1) SG11201903535SA (ko)
WO (1) WO2019072284A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220104871A (ko) * 2021-01-19 2022-07-26 주식회사 에이비씨 프라이빗 블록체인을 이용한 하이브리드 데이터베이스 시스템

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220170097A1 (en) 2018-10-29 2022-06-02 The Broad Institute, Inc. Car t cell transcriptional atlas
US11880349B2 (en) * 2019-04-30 2024-01-23 Salesforce, Inc. System or method to query or search a metadata driven distributed ledger or blockchain
CN111837113A (zh) 2019-09-12 2020-10-27 创新先进技术有限公司 日志结构存储系统
CN110673851B (zh) * 2019-09-12 2023-01-06 广州蚁比特区块链科技有限公司 一种智能合约运行方法、装置及电子设备
CN111886591A (zh) 2019-09-12 2020-11-03 创新先进技术有限公司 日志结构存储系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180096163A1 (en) * 2016-09-30 2018-04-05 Amazon Technologies, Inc. Immutable cryptographically secured ledger-backed databases

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8146054B2 (en) * 2006-12-12 2012-03-27 International Business Machines Corporation Hybrid data object model
CN102118500B (zh) * 2010-12-27 2013-08-21 清华大学 移动终端开源操作系统基于软件包的在线自动更新方法
CN105335201B (zh) * 2015-11-30 2019-06-14 北京奇艺世纪科技有限公司 一种应用软件更新方法和装置
WO2017139666A1 (en) * 2016-02-11 2017-08-17 Daniel Conner Scalable data verification with immutable data storage
JP6731783B2 (ja) * 2016-05-19 2020-07-29 株式会社野村総合研究所 改ざん検知システム、及び改ざん検知方法
US10250694B2 (en) * 2016-08-19 2019-04-02 Ca, Inc. Maintaining distributed state among stateless service clients
WO2018039722A1 (en) * 2016-08-30 2018-03-08 Commonwealth Scientific And Industrial Research Organisation Dynamic access control on blockchain
CN106485495A (zh) * 2016-09-18 2017-03-08 江苏通付盾科技有限公司 交易信息订阅方法、装置、服务器以及系统
JP6827327B2 (ja) * 2017-01-05 2021-02-10 株式会社日立製作所 分散コンピューティングシステム
CN106980643A (zh) * 2017-02-14 2017-07-25 阿里巴巴集团控股有限公司 变更消息的发送方法、装置及电子设备
US10515233B2 (en) * 2017-03-19 2019-12-24 International Business Machines Corporation Automatic generating analytics from blockchain data
CN107918666B (zh) * 2017-11-24 2020-05-12 中钞信用卡产业发展有限公司杭州区块链技术研究院 一种区块链上的数据同步方法和系统
JP2019101719A (ja) * 2017-12-01 2019-06-24 株式会社bitFlyer ブロックチェーン・ネットワークにおいてスマートコントラクトを実行可能にするための方法及び当該ネットワークを構成するためのノード
CN107944034A (zh) * 2017-12-13 2018-04-20 国云科技股份有限公司 一种基于区块链的数据非差异化方法
CN108509523B (zh) * 2018-03-13 2021-06-25 深圳前海微众银行股份有限公司 区块链数据的结构化处理方法、设备及可读存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180096163A1 (en) * 2016-09-30 2018-04-05 Amazon Technologies, Inc. Immutable cryptographically secured ledger-backed databases

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"Using mysqldump and the MySQL binary log - a quick guide on how to backup and restore MySQL databases", ScriptingMySQL 게시판, (2014.04.22. 공개)* *
Sebastian Peyrott. "An Introduction to Ethereum and Smart Contracts:a Programmable Blockchain", Auth0 블로그, (https://auth0.com/blog/an-introduction-to-ethereum-and-smart-contracts-part-2/)* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220104871A (ko) * 2021-01-19 2022-07-26 주식회사 에이비씨 프라이빗 블록체인을 이용한 하이브리드 데이터베이스 시스템

Also Published As

Publication number Publication date
US20190251071A1 (en) 2019-08-15
EP3549028A4 (en) 2020-01-15
EP3549028A2 (en) 2019-10-09
PH12019500864A1 (en) 2019-11-25
WO2019072284A2 (en) 2019-04-18
JP6756915B2 (ja) 2020-09-16
JP2020502618A (ja) 2020-01-23
CN110622149A (zh) 2019-12-27
KR102315791B1 (ko) 2021-10-21
SG11201903535SA (en) 2019-05-30
WO2019072284A3 (en) 2019-09-26

Similar Documents

Publication Publication Date Title
KR102315791B1 (ko) 이진 로그 복제에 기초한 블록체인 데이터 관계 구조화 방식
US11178151B2 (en) Decentralized database identity management system
US11030188B2 (en) Platform for atomic transfer of smart assets within blockchain networks
US11037143B2 (en) Platform for atomic transfer of smart assets within blockchain networks
KR102193533B1 (ko) 블록체인 네트워크에서의 FaaS 플랫폼
US20190278765A1 (en) Shared secret-based blockchain storage
KR102285798B1 (ko) 공유되는 비밀 기반 블록체인 스토리지
US20170213209A1 (en) Enterprise blockchains and transactional systems
US20200110824A1 (en) Blockchain notification board storing blockchain resources
US10540344B2 (en) Utilizing nonce table to resolve concurrent blockchain transaction failure
Seovic et al. Oracle Coherence 3.5
US10459820B2 (en) Document clustering in in-memory databases
US11714828B2 (en) Aligned purpose disassociation in a multi-system landscape
US20190377642A1 (en) Decoupled backup solution for distributed databases across a failover cluster

Legal Events

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