KR20210046659A - 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 - Google Patents

블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 Download PDF

Info

Publication number
KR20210046659A
KR20210046659A KR1020217003199A KR20217003199A KR20210046659A KR 20210046659 A KR20210046659 A KR 20210046659A KR 1020217003199 A KR1020217003199 A KR 1020217003199A KR 20217003199 A KR20217003199 A KR 20217003199A KR 20210046659 A KR20210046659 A KR 20210046659A
Authority
KR
South Korea
Prior art keywords
chain
data
blockchain network
node
target node
Prior art date
Application number
KR1020217003199A
Other languages
English (en)
Other versions
KR102566194B1 (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 KR20210046659A publication Critical patent/KR20210046659A/ko
Application granted granted Critical
Publication of KR102566194B1 publication Critical patent/KR102566194B1/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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2471Distributed queries
    • 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/2365Ensuring data consistency and integrity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • 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
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • 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)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Accounting & Taxation (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Fuzzy Systems (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

본 개시내용은 블록체인 네트워크에 기반한 데이터 처리 방법을 제공하며, 이 방법은 타겟 노드에 의해 전송된 트랜잭션 요청을 획득하는 단계; 트랜잭션 요청을 파싱하여 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하는 단계; 타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하는 단계; 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정하는 단계; 및 타겟 노드의 유형에 따라 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하는 단계를 포함한다. 본 개시내용은 데이터 처리 장치, 전자 디바이스, 및 저장 매체를 추가로 제공한다.

Description

블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체
관련 출원
본 출원은 2019년 10월 15일자로 출원된 중국 특허 출원 제201910976287.4호에 대한 우선권을 주장하며, 이는 그 전체가 본 명세서에 참조로 포함된다.
본 개시내용은 블록체인 네트워크에서의 정보 저장 기술들에 관한 것으로, 특히, 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체에 관한 것이다.
관련 기술에 따르면, 블록체인 네트워크에서, 블록체인 네트워크 내의 노드가 오프-체인 데이터(off-chain data)에 액세스할 필요가 있을 때, 블록체인 네트워크 내의 대응하는 블록은 오프-체인 데이터 소스로부터의 데이터에 직접 액세스한다. 블록체인 네트워크 내의 블록체인 노드들에 의해 획득된 오프-체인 데이터가 불일치할 때, 블록체인 네트워크 내의 상이한 블록체인 노드들 사이의 포크(fork)가 야기되고, 이에 의해 블록체인 네트워크에서의 데이터 처리의 효율에 영향을 미친다.
이를 고려하여, 본 개시내용의 실시예들은 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체를 제공하며, 이는 오프-체인 데이터 획득 시에 블록체인 내의 모든 블록들이 일치된 오프-체인 데이터에 액세스할 수 있음을 보장할 수 있고, 이에 의해 블록체인 네트워크 내의 상이한 블록들에 의해 획득된 오프-체인 데이터의 불일치에 의해 야기되는 블록체인 네트워크의 포크의 가능성을 감소시키고, 블록체인 네트워크의 데이터 처리 효율을 개선시키면서, 블록체인 네트워크의 분산 특성을 유지하고 블록체인 네트워크 내의 일부 결함 노드들에 의해 야기되는 블록체인 네트워크의 마비의 위험을 감소시킨다.
본 개시내용의 실시예들의 기술적 해결책들은 다음과 같이 구현된다:
본 개시내용의 실시예들은 블록체인 네트워크에 기반한 데이터 처리 방법을 제공하며, 이 방법은,
타겟 노드에 의해 전송된 트랜잭션 요청을 획득하는 단계;
트랜잭션 요청을 파싱하여 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하는 단계;
타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하는 단계;
현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정하는 단계; 및
타겟 노드의 유형에 따라 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하는 단계
를 포함한다.
본 개시내용의 실시예들은 블록체인 네트워크에 기반한 데이터 처리 장치를 추가로 제공하며, 이 장치는,
타겟 노드에 의해 전송된 트랜잭션 요청을 획득하도록 구성된 정보 전송 모듈; 및
정보 처리 모듈
을 포함하며, 정보 처리 모듈은,
트랜잭션 요청을 파싱하여 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하고;
타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하고;
현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정하고;
타겟 노드의 유형에 따라 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하도록 구성된다.
본 개시내용의 실시예들은 전자 디바이스를 추가로 제공하며, 이 전자 디바이스는,
실행가능한 명령어들을 저장하도록 구성된 메모리; 및
블록체인 네트워크에 기반한 전술한 데이터 처리 방법을 구현하기 위해, 메모리에 저장된 실행가능한 명령어를 실행하도록 구성된 프로세서를 포함한다.
본 개시내용의 실시예들은 실행가능한 명령어들을 저장하는 컴퓨터 판독가능한 저장 매체를 추가로 제공하며, 실행가능한 명령어는, 프로세서에 의해 실행될 때, 블록체인 네트워크에 기반한 전술한 데이터 처리 방법을 구현한다.
본 개시내용의 실시예들은 다음의 유익한 효과들을 가진다:
타겟 노드에 의해 전송된 트랜잭션 요청이 획득되고, 트랜잭션 요청이 파싱되어, 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득한다. 타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터가 질의된다. 현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형이 결정된다. 타겟 노드의 유형과 일치하는 프로세스는 타겟 노드의 유형에 따라 트리거링되어, 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득한다. 이 프로세스에서, 블록체인 내의 모든 블록들은 오프-체인 데이터를 획득할 때 일치된 오프-체인 데이터에 액세스할 수 있고, 이에 의해 블록체인 네트워크 내의 상이한 블록들에 의해 획득된 오프-체인 데이터의 불일치에 의해 야기되는 블록체인 네트워크의 포크의 가능성을 감소시키고, 블록체인 네트워크의 데이터 처리 효율을 개선시키면서, 블록체인 네트워크의 분산 특성을 유지하고 블록체인 네트워크 내의 일부 결함 노드들에 의해 야기되는 블록체인 네트워크의 마비의 위험을 감소시킨다.
본 출원의 실시예들의 기술적 해결책들 또는 관련 기술을 보다 명확히 설명하게 위해, 이하에서는 실시예들 또는 관련 기술을 설명하기 위해 요구되는 첨부 도면들이 간단히 도입된다. 다음의 설명에서의 첨부 도면들은 본 출원의 일부 실시예들을 단지 도시하며, 관련 기술분야의 통상의 기술자는 창조적인 노력들 없이 이러한 첨부 도면들로부터 다른 도면들을 여전히 도출할 수 있다.
도 1은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 환경의 개략도이다.
도 2는 본 개시내용의 실시예에 따른 블록체인 네트워크(200)의 기능 아키텍처의 개략도이다.
도 3은 본 개시내용의 실시예에 따른 전자 디바이스의 구성의 개략적인 구조도이다.
도 4는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 5는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 6은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 7은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 8은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 9는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다.
도 10은 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적 이용 환경의 개략도이다.
도 11은 관련 기술의 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 프로세스의 개략도이다.
도 12는 관련 기술의 블록체인 네트워크에 기반한 데이터 처리 방법에서의 계약 검증의 개략도이다.
도 13은 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 프로세스의 개략도이다.
도 14는 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법에서의 오프-체인 데이터 관리자의 처리 프로세스의 개략도이다.
도 15는 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법에서의 계약 검증의 개략도이다.
본 개시내용에서의 목적들, 기술적 해결책들, 및 이점들을 보다 명확하게 하기 위해, 이하에서는 첨부 도면들을 참조하여 본 개시내용을 상세히 추가로 설명한다. 설명된 실시예들은 본 개시내용에 대한 제한으로서 해석되어서는 안 된다. 창의적인 노력들 없이 관련 기술분야의 통상의 기술자에 의해 획득되는 다른 모든 실시예들은 본 출원의 보호 범위 내에 있을 것이다.
이하의 설명에서, "일부 실시예들"은 모든 가능한 실시예들의 서브세트들을 설명하지만, "일부 실시예들"은 모든 가능한 실시예들의 동일한 서브세트 또는 상이한 서브세트들일 수 있고, 상충 없이 서로 조합될 수 있다는 점이 이해될 수 있다.
본 개시내용의 실시예들이 상세하게 추가로 설명되기 전에, 본 개시내용의 실시예들에 관련된 용어들이 설명되고, 본 개시내용의 실시예들에 관련된 용어들은 다음의 설명들에 적용된다.
이하의 설명에서, "일부 실시예들"은 모든 가능한 실시예들의 서브세트들을 설명하지만, "일부 실시예들"은 모든 가능한 실시예들의 동일한 서브세트 또는 상이한 서브세트들일 수 있고, 상충 없이 서로 조합될 수 있다는 점이 이해될 수 있다.
본 개시내용의 실시예들이 상세하게 추가로 설명되기 전에, 본 개시내용의 실시예들에 관련된 용어들이 설명되고, 본 개시내용의 실시예들에 관련된 용어들은 다음의 설명들에 적용된다.
1) 트랜잭션은 단순히 비즈니스 맥락에서의 트랜잭션을 지칭하기 보다는, 컴퓨터 용어로서 실행하기 위해 블록체인 네트워크에 제출될 필요가 있는 동작을 포함한다. 블록체인 기술들에서의 용어 "트랜잭션"의 종래의 사용에 비추어, 본 개시내용의 실시예들은 이 관례를 따른다.
예를 들어, 배치 트랜잭션은 호출을 위해 블록체인 네트워크 내의 노드 상에 지정된 스마트 계약을 설치하도록 구성되고; 호출 트랜잭션은 스마트 계약을 호출함으로써 블록체인에 트랜잭션 기록을 추가하고, (상태 데이터베이스에서 키-값 쌍을 추가, 삭제, 또는 수정하는 것을 포함하는) 업데이트 동작 및 질의 동작(즉, 상태 데이터베이스에서 키-값 쌍을 질의함)을 포함하는, 블록체인의 상태 데이터베이스에 대한 동작을 수행하도록 구성된다.
2) 블록체인은 블록들을 포함하는 암호화되고 체인화된 트랜잭션들의 저장 구조이다.
예를 들어, 각각의 블록의 헤더는 블록 내의 모든 트랜잭션들의 해시 값들을 포함할 뿐만 아니라, 해시 값들에 기반하여 블록 내의 트랜잭션의 변조 방지 및 위조 방지를 구현하기 위해, 이전 블록 내의 모든 트랜잭션들의 해시 값들을 포함할 수 있다. 새로 생성된 트랜잭션이 블록에 채워지고, 블록체인 네트워크 내의 노드들의 합의 프로세스 후에, 블록이 블록체인의 끝에 추가되어 체인 성장을 형성한다.
3) 블록체인 네트워크는 합의를 통해 블록체인에 새로운 블록들을 통합하는 일련의 노드들이다.
4) 원장은 블록체인(원장 데이터라고도 함) 및 블록체인과 동기화된 상태 데이터베이스에 대한 집합적 용어이다.
블록체인은 트랜잭션들을 파일 시스템 내의 파일들의 형태로 기록한다. 상태 데이터베이스는 블록체인 내의 트랜잭션들을 상이한 유형들의 키-값 쌍들의 형태로 기록하고, 블록체인 내의 트랜잭션들의 빠른 질의를 지원하도록 구성된다.
5) 체인코드 또는 애플리케이션 코드라고도 하는 스마트 계약은 블록체인 네트워크의 노드에 배치된 프로그램이다. 노드는 수신된 트랜잭션에서 호출된 스마트 계약을 실행하여, 원장 데이터베이스의 키-값 쌍 데이터에 대한 업데이트 동작 또는 질의 동작을 수행한다.
6) 합의는 블록체인 네트워크에서의 프로세스이고, 다음과 같이 구성된다: 블록에서의 트랜잭션에 대한 복수의 관련 노드 사이에서 합의에 도달한 후에, 합의된 블록이 블록체인의 끝에 추가된다. 합의를 구현하기 위한 메커니즘은 작업 증명(PoW), 지분 증명(PoS), 위임 지분 증명(DPoS), 경과 시간 증명(PoET) 등을 포함한다.
이하에서는 본 개시내용의 실시예들에서 제공되는 블록체인 네트워크의 예시적인 애플리케이션을 설명한다. 도 1은, 각각 이하에서 설명되는, 블록체인 네트워크(200)(노드(210-1) 내지 노드(210-3)를 포함하는 것으로 예시적으로 도시됨), 블록체인 네트워크 관리 플랫폼(300), 현재 노드 시스템(400)(현재 노드 시스템(400)에 속하는 단말기(600-1) 및 그 그래픽 인터페이스(610-1)가 예시적으로 도시됨), 및 감독 노드 시스템(500)(감독 노드 시스템(500)에 속하는 단말기(600-2) 및 그 그래픽 인터페이스(610-2)가 예시적으로 도시됨)을 포함하는, 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 환경의 개략도이다.
블록체인 네트워크(200)의 유형은 유연하고 다양한데, 예를 들어 그 유형은 공개 체인, 개인 체인, 또는 컨소시엄 체인 중 임의의 것일 수 있다. 공개 체인을 예로서 이용하면, 사용자 단말기와 같은 전자 디바이스 및 임의의 서비스 엔티티의 서버는 허가 없이 블록체인 네트워크(200)에 액세스할 수 있다. 컨소시엄 체인을 예로서 이용하면, 서비스 엔티티에 의해 관리되는 (단말기/서버와 같은) 전자 디바이스는 서비스 엔티티가 허가된 후에 블록체인 네트워크(200)에 액세스할 수 있다. 이 경우, 전자 디바이스는 블록체인 네트워크(200) 내의 특수 노드, 즉 클라이언트 노드가 된다.
클라이언트 노드는 (예를 들어, 데이터를 저장하기 위해 체인화하거나 온-체인 데이터에 대해 질의하는데 이용되는) 트랜잭션을 개시함에 있어서 서비스 엔티티를 지원하는 기능만을 제공할 수 있다. 블록체인 네트워크(200)의 일반(고유) 노드(210)의 기능들, 예를 들어, 후술하는 정렬 기능, 합의 서비스, 및 원장 기능에 대해, 클라이언트 노드는 디폴트로 또는 선택적으로(예를 들어, 서비스 엔티티의 특정 서비스 요구에 따라) 이들을 구현할 수 있다. 이러한 방식으로, 서비스 엔티티의 데이터 및 서비스 처리 로직은 블록체인 네트워크(200)로 최대로 이전될 수 있고, 데이터 및 서비스 처리 프로세스들의 신용도 및 추적성은 블록체인 네트워크(200)를 통해 구현된다.
블록체인 네트워크(200)는 (도 1에 도시된 현재 노드 시스템(400) 및 감독 노드 시스템(500)과 같은) 상이한 서비스 엔티티들의 (도 1에 도시된 현재 노드 시스템(400)에 속하는 단말기(600-1) 및 감독 노드 시스템(500)에 속하는 단말기(600-2)와 같은) 클라이언트 노드들로부터 제출된 트랜잭션들을 수신하고, 그 트랜잭션들을 실행하여 원장을 업데이트하거나 원장을 질의하고, 다양한 중간 결과들 및 그 트랜잭션들을 실행한 최종 결과들을 단말기들의 (단말기(600-1)의 그래픽 인터페이스(610-1) 및 단말기(600-2)의 그래픽 인터페이스(610-2)와 같은) 사용자 인터페이스들에 표시한다. 블록체인 네트워크(200)에서, 트랜잭션들은 블록체인 네트워크(200) 내의 고유 노드(210)에 의해 수신되고 실행될 수 있다는 것을 이해할 수 있다. 물론, 서비스 엔티티의 클라이언트 노드가 블록체인 네트워크(200) 내의 고유 노드(210)의 기능들(예컨대, 합의 기능 및 원장 기능)을 가질 때, 트랜잭션들은 대응하는 클라이언트 노드에 의해 수신되고 실행될 수 있다.
이하에서는 복수의 서비스 엔티티들(상이한 노드 시스템들)이 로지스틱 데이터를 관리하기 위해 블록체인 네트워크에 액세스하는 예를 이용함으로써 블록체인 네트워크의 예시적인 애플리케이션을 설명한다.
도 1을 참조하면, 로지스틱 스테이지는 현재 노드 시스템(400) 및 감독 노드 시스템(500)과 같은 복수의 서비스 엔티티를 포함한다. 블록체인 네트워크 관리 플랫폼(300)에 의해 허가된 후, 현재 노드 시스템(400)의 단말기(600-1) 및 감독 노드 시스템(500)의 단말기(600-2) 모두는 블록체인 네트워크(200)에 액세스할 수 있다.
현재 노드 시스템(400)의 서비스 요원은 단말기(600-1)의 그래픽 인터페이스(610-1)에서 현재 노드 시스템(400)에 로그인하고, 타겟 노드를 이용하여 전송된 대응하는 트랜잭션 요청을 입력하거나, 오프-체인 데이터에 대해 질의하기 위해 대응하는 요청을 입력한다. 질의 요청은 블록체인 네트워크 관리 플랫폼(300)에 전송되고, 블록체인 네트워크 관리 플랫폼(300)은 수신된 질의 요청에 따라 업데이트 동작/질의 동작에 대응하는 트랜잭션을 생성한다. 트랜잭션에서, 업데이트 동작/질의 동작을 구현하기 위해 호출될 필요가 있는 스마트 계약 및 스마트 계약으로 전송되는 파라미터가 지정된다. 트랜잭션은 현재 노드 시스템(400)에 의해 서명된 디지털 서명을 추가로 운반한다(예를 들어, 디지털 서명은 현재 노드 시스템(400)의 디지털 인증서 내의 개인 키를 이용하여 트랜잭션의 다이제스트를 암호화함으로써 획득된다). 트랜잭션은 블록체인 네트워크(200)에 브로드캐스팅된다.
트랜잭션을 수신한 후에, 블록체인 네트워크(200) 내의 노드(210)는 트랜잭션에서 운반된 디지털 서명에 대한 검증을 수행한다. 디지털 서명이 성공적으로 검증된 후에, 트랜잭션에서 운반된 현재 노드 시스템(400)의 아이덴티티에 따라, 현재 노드 시스템(400)이 트랜잭션 허가를 갖는지 여부가 결정된다. 디지털 서명 검증 및 허가 검증 중 어느 하나가 실패하면 트랜잭션이 실패한다. 검증이 성공한 후에, 노드(210)의 디지털 서명이 서명되고(예를 들어, 디지털 서명은 노드(210-1)의 개인 키를 이용하여 트랜잭션의 다이제스트를 암호화함으로써 획득됨), 블록체인 네트워크(200)에서 추가로 브로드캐스팅된다.
블록체인 네트워크(200)에서 정렬 기능을 갖는 노드(210)가 성공적으로 검증된 트랜잭션을 수신한 후에, 트랜잭션은 새로운 블록으로 채워지고, 블록체인 네트워크(200)에서 합의 서비스를 제공하는 노드들에 브로드캐스팅된다.
블록체인 네트워크(200)에서 합의 서비스를 제공하는 노드들(210)은 새로운 블록에 대해 합의 프로세스를 수행하여 합의에 도달한다. 원장 기능을 제공하는 노드(210)는 새로운 블록을 블록체인의 끝에 추가하고, 새로운 블록에서 트랜잭션을 실행한다. 오프-체인 데이터를 업데이트하기 위한 트랜잭션의 경우, 원장 데이터베이스에서 오프-체인 데이터에 대응하는 키-값 쌍이 업데이트된다. 오프-체인 데이터를 질의하기 위한 트랜잭션의 경우, 원장 데이터베이스가 오프-체인 데이터에 대응하는 키-값 쌍에 대해 질의되고, 질의 결과가 반환된다.
유사하게, 감독 노드 시스템(500)측의 서비스 요원은 단말기(600-2)의 그래픽 인터페이스(610-2)에서 감독 노드 시스템(500)에 로그인하고(감독 노드 시스템은 상이한 기관들에 의해 업로드된 오프-체인 데이터를 보기 위한 최고 레벨의 허가들로 구성될 수 있음), 오프-체인 데이터 질의 요청을 입력할 수 있다. 질의 요청은 블록체인 네트워크 관리 플랫폼(300)에 전송되고, 블록체인 네트워크 관리 플랫폼(300)은 수신된 질의 요청에 따라 업데이트 동작/질의 동작에 대응하는 트랜잭션을 생성한다. 트랜잭션에서, 업데이트 동작/질의 동작을 구현하기 위해 호출될 필요가 있는 스마트 계약 및 스마트 계약으로 전송되는 파라미터가 지정된다. 트랜잭션은 현재 노드 시스템(400)에 의해 서명된 디지털 서명을 추가로 운반한다(예를 들어, 디지털 서명은 현재 노드 시스템(400)의 디지털 인증서의 개인 키를 이용하여 트랜잭션의 다이제스트를 암호화함으로써 획득된다). 트랜잭션은 블록체인 네트워크(200)에 브로드캐스팅된다. 또한, 상이한 기관들의 노드들(서비스 엔티티들)에 의해 블록체인 네트워크(200)에서 질의/업데이트될 수 있는 데이터의 유형들은 서비스 엔티티들의 트랜잭션 허가들을 제한함으로써 구현될 수 있다는 것을 이해할 수 있다. 예를 들어, 현재 노드 시스템(400)이 타겟 오프-체인 데이터에 대해 질의하기 위한 트랜잭션 개시에 대한 허가를 가질 때, 현재 노드 시스템(400)의 서비스 요원은 타겟 오프-체인 데이터 질의 요청을 단말기(600-1)의 그래픽 인터페이스(610-1)에 입력할 수 있고, 블록체인 네트워크 관리 플랫폼(300)은 타겟 오프-체인 데이터에 대해 질의하기 위한 트랜잭션을 생성하고, 블록체인 네트워크(200)로부터 대응하는 타겟 오프-체인 데이터를 획득하기 위해 트랜잭션을 블록체인 네트워크(200)에 브로드캐스팅한다. 감독 노드 시스템(500)이 오프-체인 데이터에 대해 질의하기 위한 트랜잭션 개시에 대한 허가를 가질 때, 감독 노드 시스템(500)측의 서비스 요원은 단말기(600-2)의 그래픽 인터페이스(610-2)에 오프-체인 데이터 질의 요청을 입력할 수 있고, 블록체인 네트워크 관리 플랫폼(300)은 오프-체인 데이터에 대해 질의하기 위한 트랜잭션을 생성하고, 블록체인 네트워크(200)로부터 대응하는 오프-체인 데이터를 획득하기 위해 트랜잭션을 블록체인 네트워크(200)에 브로드캐스팅한다. 또한, 감독 노드 시스템(500)은 타겟 사용자에 의해 입력된 오프-체인 데이터에 대한 검증을 수행할 수 있는, 예를 들어, 오프-체인 데이터 내의 대응하는 아이덴티티 카드 정보 또는 대응하는 해시 값에 대한 검증을 수행할 수 있는 오프-체인 데이터의 원래 기록을 추가로 저장할 수 있다.
이하에서는 본 개시내용의 실시예에 따른 블록체인 네트워크의 예시적인 기능 아키텍처를 설명한다. 도 2는, 각각 이하에서 설명되는, 애플리케이션 계층(201), 합의 계층(202), 네트워크 계층(203), 데이터 계층(204), 및 리소스 계층(205)을 포함하는, 본 개시내용의 실시예에 따른 블록체인 네트워크(200)의 기능 아키텍처의 개략도이다.
리소스 계층(205)은 컴퓨터들, 서버들/클러스터들 및 클라우드 내의 컴퓨팅 리소스들, 저장 리소스들, 및 통신 리소스들과 같이, 블록체인 네트워크(200) 내의 노드들(210)을 구현하기 위한 컴퓨팅 리소스들, 저장 리소스들, 및 통신 리소스들을 캡슐화하고, 리소스들을 추상화하고, 데이터 계층(204)에 통합 인터페이스를 제공하여, 리소스 계층(205)을 구현함에 있어서 기본 하드웨어의 차이를 차폐한다.
컴퓨팅 리소스들은 중앙 처리 유닛(CPU), 주문형 집적 회로(ASIC), 또는 전용 집적 회로, 및 필드 프로그래머블 게이트 어레이(FPGA)와 같은 다양한 형태들의 프로세서들을 포함한다.
저장 리소스는 휘발성 메모리 및 비휘발성 메모리와 같은 다양한 유형들의 저장 매체를 포함한다. 비휘발성 메모리는 ROM(read-only memory) 또는 PROM(programmable read-only memory)일 수 있다. 휘발성 메모리는 외부 캐시로서 이용되는 RAM(random access memory)일 수 있다.
통신 리소스들은 블록체인 네트워크의 노드들(210) 사이, 및 블록체인 네트워크(200)와 서비스 엔티티들 사이의 통신을 위한 다양한 링크들을 포함한다.
데이터 계층(204)은 파일 시스템 내의 파일로 구현된 블록체인, 키-값 상태 데이터베이스, 및 존재 증명(예를 들어, 블록 내의 트랜잭션의 해시 트리)을 포함하는, 원장을 구현하기 위한 다양한 데이터 구조들을 캡슐화한다.
네트워크 계층(203)은 P2P(point to point) 네트워크 프로토콜, 데이터 전파 메커니즘, 데이터 검증 메커니즘, 액세스 인증 메커니즘, 및 서비스 엔티티 아이덴티티 관리의 기능들을 캡슐화한다.
P2P 네트워크 프로토콜은 블록체인 네트워크(200) 내의 노드들(210) 사이의 통신을 구현한다. 데이터 전파 메커니즘은 블록체인 네트워크(200)에서의 트랜잭션들의 전송을 보장한다. 데이터 검증 메커니즘은 암호화 방법(예컨대, 디지털 인증서, 디지털 서명, 및 공개/개인 키 쌍)에 기반하여 노드들(210) 사이의 데이터 전송의 신뢰성을 구현하는데 이용된다. 액세스 인증 메커니즘은 실제 서비스 시나리오에 따라 블록체인 네트워크(200)에 합류하는 서비스 엔티티의 아이덴티티를 인증하고, 인증이 성공할 때 서비스 엔티티에게 블록체인 네트워크(200)에 액세스하기 위한 허가를 할당하는데 이용된다. 서비스 엔티티 아이덴티티 관리는 블록체인 네트워크(200)에 액세스하도록 허용된 서비스 엔티티의 (개시될 수 있는 트랜잭션의 유형과 같은) 허가 및 아이덴티티를 저장하는데 이용된다.
합의 계층(202)은 블록체인 네트워크(200) 내의 노드들(210)이 블록, 트랜잭션 관리, 및 원장 관리에 대한 합의에 도달하기 위한 메커니즘(즉, 합의 메커니즘)의 기능들을 캡슐화한다.
합의 메커니즘은 POS, POW, 및 DPOS와 같은 합의 알고리즘들을 포함하고, 플러그가능한 합의 알고리즘을 지원한다.
트랜잭션 관리는 노드(210)에 의해 수신된 트랜잭션에서 운반되는 디지털 서명에 대한 검증을 수행하고, 서비스 엔티티의 아이덴티티 정보에 대한 검증을 수행하고, (서비스 엔티티 아이덴티티 관리로부터 관련 정보를 판독함으로써) 아이덴티티 정보에 따라, 서비스 엔티티가 트랜잭션을 수행할 허가를 갖는지를 결정하도록 구성된다. 블록체인 네트워크(200)에 액세스하도록 허가된 각각의 서비스 엔티티는 인증 센터에 의해 발행된 디지털 인증서를 갖는다. 서비스 엔티티는 디지털 인증서 내의 개인 키를 이용함으로써 제출될 트랜잭션에 서명하여, 서비스 엔티티의 유효 아이덴티티를 선언한다.
원장 관리는 블록체인 및 원장 데이터베이스를 유지하는데 이용된다. 합의에 도달한 블록은 블록체인의 끝에 추가되고, 합의에 도달한 블록에서의 트랜잭션이 수행된다. 트랜잭션이 업데이트 동작을 포함할 때, 상태 데이터베이스에서의 키-값 쌍이 업데이트된다. 트랜잭션이 질의 동작을 포함할 때, 원장 데이터베이스에서의 키-값 쌍이 질의되고, 질의 결과가 서비스 엔티티에 반환된다. 블록의 일련 번호(예컨대, 트랜잭션의 해시 값)에 따라 블록에 대해 질의하는 동작; 블록의 해시 값에 따라 블록에 대해 질의하는 동작; 트랜잭션의 일련 번호에 따라 블록에 대해 질의하는 동작; 트랜잭션의 일련 번호에 따라 트랜잭션에 대해 질의하는 동작; 서비스 엔티티의 계정 번호(일련 번호)에 따라 서비스 엔티티의 계정 데이터에 대해 질의하는 동작; 및 채널의 이름에 따라 채널에서 블록체인에 대해 질의하는 동작을 포함하는, 원장 데이터베이스 상의 복수의 차원들의 질의 동작들이 지원된다.
애플리케이션 계층(201)은 트랜잭션에 대한 추적, 증명, 검증 등을 포함하는, 블록체인 네트워크에 의해 구현될 수 있는 다양한 서비스들을 캡슐화한다.
이하에서는 본 개시내용의 실시예에 따른 블록체인 네트워크의 노드의 예시적인 구조를 설명한다. 블록체인 네트워크(200) 내의 임의의 유형의 노드의 하드웨어 구조는 후술되는 하드웨어 구조에 따라 구현될 수 있다는 것을 이해할 수 있다.
이하에서는 본 개시내용의 실시예들에 따른 전자 디바이스의 구조를 상세히 설명한다. 본 개시내용에서 제공된 블록체인 네트워크에 기반한 데이터 처리 방법은 정보 처리 기능을 갖는 전용 단말기와 같은 다양한 유형들의 전자 디바이스들에 의해 구현될 수 있거나, 도 1의 블록체인 네트워크 관리 플랫폼(300)을 실행하는 전자 디바이스와 같이, 정보 처리 기능을 갖는 전자 디바이스에 의해 구현될 수 있다. 도 3은 본 개시내용의 실시예에 따른 전자 디바이스의 구성의 개략적인 구조도이다. 도 3은 전자 디바이스의 완전한 구조보다는 예시적인 구조만을 도시한다는 것을 이해할 수 있다. 도 3에 도시된 구조는 부분적으로 또는 전체적으로 요건들에 기반하여 구현될 수 있다.
본 개시내용의 이 실시예에서 제공되는 전자 디바이스는 적어도 하나의 프로세서(301), 메모리(302), 사용자 인터페이스(303), 및 적어도 하나의 네트워크 인터페이스(304)를 포함한다. 전자 디바이스 내의 구성요소들은 버스 시스템(305)을 이용하여 결합된다. 버스 시스템(305)은 구성요소들 사이의 접속 및 통신을 구현하도록 구성된다는 점이 이해될 수 있다. 데이터 버스 외에, 버스 시스템(305)은 전력 버스, 제어 버스 및 상태 신호 버스를 추가로 포함한다. 그러나, 명료한 설명의 용이함을 위해, 모든 유형들의 버스들은 도 3에서 버스 시스템(305)으로 표시된다.
사용자 인터페이스(303)는 디스플레이, 키보드, 마우스, 트랙볼, 클릭 휠, 키, 버튼, 터치 패널, 터치스크린 등을 포함할 수 있다.
메모리(302)는 휘발성 메모리 또는 비휘발성 메모리일 수 있거나, 또는 휘발성 메모리 및 비휘발성 메모리 모두를 포함할 수 있다는 점이 이해될 수 있다. 본 개시내용의 이 실시예에서의 메모리(302)는 단말기(예를 들어, 10-1)의 동작들을 지원하기 위한 데이터를 저장할 수 있다. 데이터의 예는 단말기(예를 들어, 10-1) 상에서 동작될 임의의 컴퓨터 프로그램, 예를 들어, 운영 체제 및 애플리케이션 프로그램을 포함한다. 운영 체제는 프레임워크 계층, 커널 라이브러리 계층, 및 드라이버 계층과 같은 다양한 시스템 프로그램들을 포함하고, 이는 다양한 기본 서비스들을 구현하고 하드웨어 기반 작업을 처리하도록 구성된다. 애플리케이션 프로그램은 다양한 애플리케이션 프로그램들을 포함할 수 있다.
일부 실시예들에서, 본 개시내용의 실시예들에서 제공되는 데이터 처리 장치는 소프트웨어와 하드웨어의 조합의 형태로 구현될 수 있다. 예에서, 본 개시내용의 실시예들에서 제공되는 데이터 처리 장치는 하드웨어 디코딩 프로세서 형태의 프로세서일 수 있고, 본 개시내용의 실시예들에서 제공되는 데이터 처리 방법을 실행하도록 프로그래밍된다. 예를 들어, 하드웨어 디코딩 프로세서 형태의 프로세서는 하나 이상의 ASIC, 디지털 신호 프로세서(DSP), 프로그래머블 로직 디바이스들(PLD들), 복합 프로그래머블 로직 디바이스(CPLD), FPGA, 또는 다른 전자 요소를 이용할 수 있다.
본 개시내용의 실시예들에서 제공되는 데이터 처리 장치가 소프트웨어와 하드웨어의 조합에 의해 구현되는 예에서, 본 개시내용의 실시예들에서 제공되는 데이터 처리 장치는 프로세서(301)에 의해 실행되는 소프트웨어 모듈들의 조합으로서 직접 구현될 수 있다. 소프트웨어 모듈들은 저장 매체에 위치할 수 있고, 저장 매체는 메모리(302)에 위치한다. 프로세서(301)는 메모리(302) 내의 소프트웨어 모듈들에 포함된 실행가능한 명령어들을 판독하고, 본 개시내용의 실시예들에서 제공되는 데이터 처리 방법을 완료하기 위해, 필요한 하드웨어(예를 들어, 버스(305)에 접속된 프로세서(301) 및 다른 구성요소들을 포함함)를 조합하여 이용한다.
예에서, 프로세서(301)는 신호 처리 능력을 갖는 집적 회로 칩, 예를 들어, 범용 프로세서, DSP, 또는 다른 PLD, 이산 게이트, 트랜지스터 논리 디바이스, 또는 이산 하드웨어 구성요소일 수 있다. 범용 프로세서는 마이크로프로세서, 임의의 종래의 프로세서 등일 수 있다.
본 개시내용의 실시예들에서 제공되는 데이터 처리 장치가 하드웨어에 의해 구현되는 예에서, 본 개시내용의 실시예들에서 제공되는 데이터 처리 장치는 본 개시내용의 실시예들에서 제공되는 데이터 처리 방법을 실행하기 위해, 하드웨어 디코딩 프로세서, 예를 들어, 하나 이상의 ASIC, DSP, PLD, CPLD, FPGA, 또는 다른 전자 요소의 형태의 프로세서(301)를 이용하여 직접 실행될 수 있다.
본 개시내용의 이 실시예에서의 메모리(302)는 전자 디바이스의 동작들을 지원하기 위해 다양한 유형들의 데이터를 저장하도록 구성된다. 데이터의 예는 실행가능한 명령어와 같이, 전자 디바이스 상에서 동작되도록 구성되는 임의의 실행가능한 명령어를 포함하고, 본 개시내용의 실시예들의 데이터 처리 방법을 구현하는 프로그램은 실행가능한 명령어에 포함될 수 있다.
다른 실시예들에서, 본 개시내용의 실시예들에서 제공되는 블록체인 네트워크에 기반한 데이터 처리 장치는 소프트웨어의 형태로 구현될 수 있다. 도 3은 프로그램, 플러그인 등의 형태의 소프트웨어일 수 있고, 일련의 모듈들을 포함할 수 있는, 메모리(302)에 저장되어 있는 블록체인 네트워크에 기반한 데이터 처리 장치(3030)를 도시한다. 메모리(302)에 저장된 프로그램의 예는 블록체인 네트워크에 기반한 데이터 처리 장치(3030)를 포함할 수 있다. 데이터 처리 장치(3030)는 다음의 소프트웨어 모듈들, 즉
타겟 노드에 의해 전송된 트랜잭션 요청을 획득하도록 구성된 정보 전송 모듈(3031); 및
정보 처리 모듈(3032)
을 포함하며, 정보 처리 모듈(3032)은,
트랜잭션 요청을 파싱하여 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하고;
타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하고;
현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정하고;
타겟 노드의 유형에 따라 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하도록 구성된다.
본 개시내용의 실시예들에서 제공되는 데이터 처리 방법은 도 3에 도시된 전자 디바이스를 참조하여 설명된다. 도 4는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 도 4에 도시된 단계들은 오프-체인 데이터 처리 기능을 갖는 전용 단말기, 서버, 또는 서버 클러스터와 같이, 데이터 처리 장치를 실행하는 다양한 전자 디바이스들에 의해 수행될 수 있다는 것을 이해할 수 있다. 이하에서는 도 4에 도시된 단계들을 설명한다.
단계 401: 데이터 처리 장치는 타겟 노드에 의해 전송된 트랜잭션 요청을 획득한다.
단계 402: 데이터 처리 장치는 트랜잭션 요청을 파싱하여 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득한다.
단계 403: 데이터 처리 장치는, 타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의한다.
본 개시내용의 일부 실시예들에서, 타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하는 단계는 다음의 방식으로, 즉
트랜잭션 요청에 응답하여 체인 높이 횡단 프로세스를 트리거링하는 단계; 및 타겟 노드와 일치하는 체인 높이 파라미터에 따른 체인 높이 횡단 프로세스를 통해, 현재 노드에 저장된 오프-체인 데이터를 횡단하여 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하는 단계로 구현될 수 있다. 오프-체인 데이터가 블록체인 네트워크 내의 다른 노드에 의해 획득되었을 때, 현재 노드가 데이터 동기화를 수행하기 때문에, 현재 노드는 대응하는 오프-체인 데이터를 저장한다. 체인 높이 파라미터의 고유한 확실성으로 인해, 현재 노드에 저장된 오프-체인 데이터는 체인 높이 파라미터에 대응하고 현재 노드에 저장된 오프-체인 데이터를 질의하기 위해 횡단되고, 이는 오프-체인 데이터를 획득하는데 요구되는 시간을 효과적으로 감소시키고 블록체인 네트워크의 데이터 처리 효율을 개선할 수 있다.
단계 404: 현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정한다.
본 개시내용의 일부 실시예들에서, 현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형을 결정하는 단계는 다음의 방식으로, 즉
현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 트랜잭션 파라미터를 파싱하여 타겟 노드의 대응하는 유형 파라미터를 획득하는 단계; 타겟 노드의 유형 파라미터가 제1 유형 파라미터인 경우에 타겟 노드의 유형이 블록체인 네트워크의 메인 체인에 포함된 노드라고 결정하는 단계; 및 타겟 노드의 유형 파라미터가 제2 유형 파라미터인 경우에 타겟 노드의 유형이 블록체인 네트워크의 사이드 체인에 포함된 노드라고 결정하는 단계로 구현될 수 있다. 블록체인 네트워크에서의 메인 체인 내의 대응하는 블록만이 오프-체인 데이터를 획득할 수 있기 때문에, 타겟 노드의 대응하는 유형 파라미터가 획득되고, 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형이 결정되므로, 트랜잭션 요청을 전송하는 타겟 노드의 유형이 적시에 결정되어 타겟 노드의 유형과 일치하는 프로세스를 실행할 수 있어서, 오프-체인 데이터를 획득하는 효율을 개선시킨다.
단계 405: 데이터 처리 장치는 타겟 노드의 유형에 따라 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여, 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득한다.
본 개시내용의 일부 실시예들에서, 타겟 노드의 유형이 블록체인 네트워크의 메인 체인에 포함된 노드일 때, 도 4에 도시된 블록체인 네트워크에 기반한 데이터 처리 방법에 기반하여 도 5를 추가로 참조한다. 도 5는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 처리 프로세스는 다음의 단계들을 포함한다:
단계 4051: 타겟 노드의 유형이 블록체인 네트워크의 메인 체인에 포함된 노드인 경우에 트랜잭션 요청을 파싱하여 오프-체인 데이터의 대응하는 저장 위치 정보를 획득한다.
단계 4052: 오프-체인 데이터의 저장 위치 정보에 따라 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득한다.
단계 4053: 획득된 오프-체인 데이터를 현재 노드에 저장한다.
이러한 방식으로, 타겟 노드의 유형이 블록체인 네트워크의 메인 체인에 포함된 노드일 때, 트랜잭션 요청과 일치하는 오프-체인 데이터는 오프-체인 데이터의 저장 위치 정보를 이용하여 직접 획득될 수 있어서, 블록체인 네트워크의 오프-체인 데이터 처리 속도를 개선시킨다.
본 개시내용의 일부 실시예들에서, 타겟 노드의 유형이 블록체인 네트워크의 사이드 체인에 포함된 노드일 때, 도 4에 도시된 블록체인 네트워크에 기반한 데이터 처리 방법에 기반하여 도 6을 추가로 참조한다. 도 6은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 처리 프로세스는 다음의 단계들을 포함한다:
단계 4054: 타겟 노드의 유형이 블록체인 네트워크의 사이드 체인에 포함된 노드인 경우에 블록체인 네트워크의 메인 체인에 대응하는 노드에 데이터 획득 요청을 전송한다.
단계 4055: 데이터 획득 요청에 응답하여 트랜잭션 요청과 일치하는 오프-체인 데이터를 수신한다.
단계 4056: 획득된 오프-체인 데이터를 현재 노드에 저장한다.
타겟 노드의 유형이 블록체인 네트워크의 사이드 체인에 포함된 노드인 경우에, 데이터 획득 요청은 블록체인 네트워크의 메인 체인에 대응하는 노드에 전송되어, 트랜잭션 요청과 일치하는 오프-체인 데이터를 수신한다. 이러한 방식으로, 블록체인 네트워크 내의 상이한 노드들에 의해 획득된 오프-체인 데이터는 일치하고, 데이터의 불일치에 의해 야기되는 포크의 가능성이 감소된다.
본 개시내용의 일부 실시예들에서, 이 방법은,
블록체인 네트워크 내의 다른 노드의 데이터 동기화 요청을 수신하는 단계; 데이터 동기화 요청에 응답하여 다른 노드의 허가에 대한 검증을 수행하는 단계; 및 다른 노드의 허가가 검증되어, 다른 노드가 대응하는 오프-체인 데이터를 획득하는 경우에, 다른 노드와의 데이터 동기화를 수행하도록 현재 노드를 제어하는 단계를 더 포함한다. 블록체인 네트워크 내의 다른 노드가 현재 노드에 의해 업로드된 타겟 사용자의 오프-체인 데이터를 획득할 수 없기 때문에, 블록체인 네트워크 내의 다른 노드가 타겟 사용자의 대응하는 오프-체인 데이터를 획득할 것으로 예상할 때, 대응하는 데이터 동기화 요청이 전송될 필요가 있다. 사용자가 오프-체인 데이터를 조정하는 예에서, 타겟 사용자가 현재 오프-체인 데이터를 조정하여 다른 오프-체인 데이터를 트리거링할 때, 블록체인 네트워크 관리 플랫폼은 수신된 데이터 동기화 요청에 따라 다른 노드의 허가에 대한 검증을 수행할 수 있고, 다른 노드의 허가가 검증될 때, 현재 노드와 다른 노드 사이의 데이터 동기화를 수행하도록 현재 노드를 제어하고(예를 들어, 데이터 동기화는 다른 노드와 현재 노드 사이의 합의에 도달함으로써 수행될 수 있음), 이는 상이한 노드들 사이에서 전송되는 타겟 사용자의 오프-체인 데이터의 무결성을 보장한다.
본 개시내용의 일부 실시예들에서, 블록체인 네트워크 내의 다른 노드가 블록체인 네트워크 내의 타겟 사용자의 대응하는 오프-체인 데이터에 대해 질의할 필요가 있을 때, 도 4에 도시된 블록체인 네트워크에 기반한 데이터 처리 방법에 기반하여 도 7을 추가로 참조한다. 도 7은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 처리 프로세스는 다음의 단계들을 포함한다:
단계 406: 데이터 처리 장치는 질의 요청을 수신한다.
도 7은 블록체인 네트워크 내의 상이한 노드들 A 및 B의 질의 요청들이 수신되고, 대응하는 처리가 각각 수행되는 것을 도시한다.
단계 407: 질의 요청을 파싱하여 대응하는 사용자 식별자를 획득한다.
단계 408: 사용자 식별자에 따라, 블록체인 네트워크의 타겟 블록에서의 오프-체인 데이터의 허가 정보를 획득한다.
본 개시내용의 일부 실시예들에서, 사용자 식별자에 따라, 블록체인 네트워크의 타겟 블록에서의 오프-체인 데이터의 허가 정보를 획득하는 단계는 다음의 방식으로, 즉
질의 요청에서 질의 조건 정보를 획득하는 단계 - 질의 조건 정보는 적어도 하나의 타겟 차원의 타겟 인덱스 값을 포함함 -; 오프-체인 데이터에 대응하는 사용자 식별자를 획득하기 위해, 적어도 하나의 타겟 차원의 타겟 인덱스 값에 따라 블록체인 네트워크의 정보 인덱스 테이블을 질의하는 단계 - 정보 인덱스 테이블은 저장된 정보의 사용자 식별자 및 상이한 차원들의 인덱스 값들을 포함함 -; 및 오프-체인 데이터에 대응하는 사용자 식별자에 따라 타겟 블록에서의 오프-체인 데이터의 허가 정보를 결정하는 단계로 구현될 수 있다. 블록체인 네트워크 내의 현재 노드에 저장된 타겟 사용자의 오프-체인 데이터가 다른 대응하는 노드에 의해 호출되고 질의될 수 있기 때문에, 타겟 사용자의 오프-체인 데이터에 대응하는 사용자 식별자는 블록체인 네트워크의 정보 인덱스 테이블을 질의함으로써 획득되고, 타겟 블록에서의 타겟 사용자의 오프-체인 데이터의 허가 정보는 타겟 사용자의 오프-체인 데이터에 대응하는 사용자 식별자에 따라 결정되고, 이는 종래의 중앙집중화된 저장 방법에서의 결함, 즉, 타겟 사용자의 오프-체인 데이터의 실제 소유자와 다양한 인터넷 애플리케이션들의 운영자 사이의 타겟 사용자의 오프-체인 데이터의 제어 능력에서의 불일치를 극복할 수 있고, 인터넷 애플리케이션들의 운영자가 타겟 사용자의 오프-체인 데이터를 악의적으로 분석하여 이용하고, 심지어 타겟 사용자의 오프-체인 데이터를 판매하여 이득들을 얻어서 사용자 보안을 위협하는 종래의 중앙집중화된 저장 방법에서의 허점을 극복할 수 있다.
단계 409: 오프-체인 데이터의 허가 정보 및 사용자 식별자에 대한 검증을 수행하고, 검증이 성공했는지를 결정한다. 검증이 성공하면, 단계 410이 수행되고; 그렇지 않으면, 단계 411이 수행된다.
단계 410: 오프-체인 데이터의 허가 정보가 사용자 식별자와 일치하는 경우에 블록체인 네트워크에서 대응하는 오프-체인 데이터를 획득한다.
단계 411: 검증이 실패했음을 통지한다.
단계 412: 질의 요청에 응답하여 획득된 대응하는 오프-체인 데이터를 대응하는 클라이언트에 푸시한다.
이 실시예에서 설명된 기술적 해결책들을 통해, 다른 노드(상이한 사용자)가 블록체인 네트워크에 저장된 타겟 사용자의 오프-체인 데이터를 질의하거나 이용하기를 원할 때, 허가되지 않은 노드가 타겟 사용자의 오프-체인 데이터를 획득할 노드인 체하는 것을 방지하기 위해 먼저 그 노드에 관한 정보가 검증될 필요가 있다. 이 프로세스에서, 타겟 사용자의 대응하는 오프-체인 데이터가 획득되고, 그 후 타겟 사용자의 오프-체인 데이터가 블록체인 네트워크에 저장된다. 또한, 타겟 사용자의 오프-체인 데이터는 체인업된 후에 검증된 노드에 의해 보여질 수 있다. 타겟 사용자의 오프-체인 데이터가 블록체인의 형태로 해제되기 때문에, 타겟 사용자의 오프-체인 데이터의 이력 기록은 다른 기관들 없이 보여질 수 있고, 이는 오프-체인 데이터의 불일치에 의해 야기되는 블록체인 네트워크의 포크 및 타겟 사용자의 오프-체인 데이터의 전송 및 이용 프로세스들에서의 낮은 효율의 문제들을 해결하고, 데이터를 처리하는 속도를 개선시키면서 보안을 효과적으로 개선시킨다.
본 개시내용의 일부 실시예들에서, 블록체인 네트워크 내의 다른 노드가 블록체인 네트워크 내의 타겟 사용자의 대응하는 오프-체인 데이터에 대해 질의할 필요가 있을 때, 도 4에 도시된 블록체인 네트워크에 기반한 데이터 처리 방법에 기반하여 도 8을 추가로 참조한다. 도 8은 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 처리 프로세스는 다음의 단계들을 포함한다:
단계 4101: 데이터 처리 장치는 오프-체인 데이터의 허가 정보와 일치하는 타겟 노드의 개인 키를 획득한다.
단계 4102: 일회용 패스워드가 획득될 필요가 있는지를 결정한다. 예인 경우에는, 단계 4104가 수행되고; 그렇지 않은 경우에는, 단계 4103이 수행된다.
단계 4103: 타겟 노드의 개인 키를 이용함으로써, 블록체인 네트워크로부터 획득된 대응하는 오프-체인 데이터를 해독하여, 평문 상태에서의 대응하는 오프-체인 데이터를 획득한다.
단계 4104: 타겟 사용자 식별자에 대응하는 타겟 사용자로부터 대응하는 일회용 패스워드를 요청한다.
단계 4105: 획득된 일회용 패스워드에 따라 블록체인 네트워크에서 대응하는 오프-체인 데이터를 획득한다.
단계 4106: 일회용 패스워드와 일치하는 개인 키를 이용하여 오프-체인 데이터를 해독한다.
이러한 방식으로, 타겟 사용자 식별자와 일치하는 오프-체인 데이터가 획득될 수 있다.
블록체인 네트워크에 저장된 타겟 사용자의 모든 오프-체인 데이터가 암호화된 정보이기 때문에, 블록체인 네트워크로부터 획득된 타겟 사용자의 대응하는 오프-체인 데이터는 타겟 노드의 개인 키를 이용하여 해독되어, 타겟 사용자의 대응하는 오프-체인 데이터를 획득하며, 따라서 타겟 사용자의 대응하는 오프-체인 데이터는 평문 데이터의 형태로 이용될 수 있다. 또한, 타겟 사용자 식별자에 대응하는 타겟 사용자로부터 대응하는 일회용 패스워드가 요청될 때, 타겟 사용자는 타겟 사용자의 오프-체인 데이터가 다른 대응하는 노드(상이한 사용자)에 의해 보여질 때 적시에 학습하고, 다른 노드(상이한 사용자)와 적시에 통신할 수 있다.
본 개시내용의 실시예들에서 제공되는 데이터 처리 방법은 도 3에 도시된 전자 디바이스를 참조하여 설명된다. 도 9는 본 개시내용의 실시예에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적인 개략적인 흐름도이다. 도 9에 도시된 단계들은 타겟 사용자의 오프-체인 데이터를 처리하는 기능을 갖는 전용 단말기, 서버, 또는 서버 클러스터와 같은, 데이터 처리 장치를 실행하는 다양한 전자 디바이스들에 의해 수행될 수 있다는 것을 이해할 수 있다. 이하에서는 도 9에 도시된 단계들을 설명한다.
단계 901: 블록체인 네트워크에서 타겟 사용자의 오프-체인 데이터의 상이한 처리 결과들을 획득한다.
오프-체인 데이터는 대응하는 스마트 계약에 기반하여 처리될 수 있다. 스마트 계약은 데이터를 저장할 수 있고, 데이터는 정보, 사실들, 연관들, 밸런스들, 및 계약이 로직을 실행하는데 필요한 임의의 다른 정보를 기록하도록 구성될 수 있다. 스마트 계약은 스마트 계약의 인스턴스가 생성될 수 있고, 그 기능이 스마트 계약의 로직을 실행하도록 호출될 수 있는 기능을 포함하는 컴퓨터 실행가능한 프로그램으로서 설명될 수 있다.
본 개시내용의 일부 실시예들에서, 스마트 계약은 객체 및 객체 지향 클래스에 기반하여 구현될 수 있다. 예를 들어, 스마트 계약의 용어 및 구성요소는 스마트 계약을 구현하는 애플리케이션 프로그램에 의해 처리되는 객체들로서 표현될 수 있다. 스마트 계약(또는 스마트 계약에서의 객체)은 다른 객체 지향 객체들과 같은 다른 스마트 계약(또는 동일한 스마트 계약에서의 객체)을 호출할 수 있다. 예를 들어, 객체에 의해 수행되는 호출은 다른 클래스의 객체의 생성, 업데이트, 삭제, 전파 또는 이와의 통신을 위한 호출일 수 있다. 객체들 간의 호출은 기능, 방법, 애플리케이션 프로그래밍 인터페이스(API), 또는 다른 호출 메커니즘에 의해 구현될 수 있다. 예를 들어, 제1 객체는 제2 객체를 생성하는 기능을 호출할 수 있다.
본 개시내용의 일부 실시예들에서, 타겟 사용자의 식별자는 블록체인 네트워크에 배치된 스마트 계약을 호출함으로써 블록체인의 노드 디바이스에 의해 획득될 수 있다. 스마트 계약은 타겟 사용자에 기반하여 대응하는 타겟 사용자 식별자가 생성된다고 선언한다. 대응하는 타겟 사용자의 오프-체인 데이터는 타겟 사용자 식별자를 이용하여 결정될 수 있다.
단계 902: 오프-체인 데이터의 처리 결과들에 응답하여 블록체인 네트워크에서 브로드캐스트를 트리거링한다.
이러한 방식으로, 블록체인 네트워크 내의 다른 노드들 사이의 데이터 동기화가 구현될 수 있고, 타겟 사용자의 오프-체인 데이터와 일치하는 처리 결과가 업데이트될 수 있다.
단계 903: 타겟 사용자의 오프-체인 데이터의 처리 결과들을 대응하는 클라이언트들에 푸시한다.
이 실시예에서 설명된 기술적 해결책들을 통해, 타겟 사용자의 오프-체인 데이터가 대응하는 노드에 의해 처리될 때, 처리 결과가 블록체인 네트워크에 저장된다. 블록체인 네트워크 내의 노드들이 합의 메커니즘을 이용하여 분산 데이터 저장 구조를 갖는 P2P 네트워크 시스템을 구축하기 때문에, 블록체인 내의 데이터는 제시간에 접속된 "블록들"에 분산되고, 현재 블록은 이전 블록의 데이터 다이제스트를 포함하며, 노드 데이터의 전부 또는 일부의 풀 백업은 (PoW, PoS, DPoS 또는 PBFT와 같은) 상이한 합의 메커니즘들에 따라 달성된다. 관련 기술분야의 통상의 기술자는 블록체인 네트워크가 대응하는 합의 메커니즘 하에서 동작하기 때문에, 임의의 노드가 블록체인 데이터베이스에 포함된 데이터를 변조하는 것이 어렵다는 것을 잘 알고 있다. 예를 들어, PoW 합의를 이용하는 블록체인에서, 기존 데이터를 변조하는데 전체 네트워크의 컴퓨팅 능력의 적어도 51%가 필요하다. 따라서, 다른 중앙집중화된 데이터베이스 시스템들과 비교하여, 블록체인 시스템은 데이터 보안을 보장하고 공격들 및 변조들을 방지하는 비교할 수 없는 특성들을 갖는다. 따라서, 블록체인의 분산 데이터베이스에 포함된 데이터는 공격되거나 변조되지 않을 것이고, 이는 블록체인의 분산 데이터베이스에 저장된 오프-체인 데이터의 처리 결과의 진정성 및 신뢰성을 보장하고, 오프-체인 데이터의 처리 결과의 변경에 의해 야기되는 블록체인 네트워크의 포크를 피한다는 것을 알 수 있다.
이하에서는 본 개시내용에서 제공되는 블록체인 네트워크에 기반한 데이터 처리 방법을 설명한다. 도 10은 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 임의적 이용 환경의 개략도이다. 블록체인 트랜잭션에서 각각의 멤버 노드의 아이덴티티의 유효성에 대한 검증을 수행하기 위해 디지털 인증서를 이용하는 시나리오에서, 블록체인 노드의 디지털 인증서의 유효성은 CA(certificate authority)에 의해 검증될 필요가 있다. 블록체인 내의 노드들 A, B, 및 C에 트랜잭션이 전송되고, 블록체인 내의 노드들 A, B, 및 C는 트랜잭션의 디지털 인증서의 유효성에 대한 검증을 수행하도록 CA에 요청한다(트랜잭션 전송은 ①에 도시되고, 인증서의 유효성에 대한 검증을 수행하도록 CA에 요청하는 것은 ②에 도시된다). 이 프로세스에서, 디지털 인증서의 유효성 기간이 CA에 의해 검증된다. 블록체인 네트워크에서, 노드들은 상이한 시간들에서 트랜잭션을 수신하고, 따라서 CA는 상이한 시간들에서 디지털 인증서에 대한 검증을 수행하도록 요청된다. 노드가 디지털 인증서의 유효성 기간 내에 CA의 검증을 요청하는 경우, 검증은 성공한다. 노드가 디지털 인증서의 유효성 기간을 넘어 CA의 검증을 요청하는 경우, 검증은 실패한다. 상이한 노드들의 상이한 검증 결과들은 트랜잭션에 대한 상이한 노드들의 상이한 처리 결과들로 이어져, 블록체인 네트워크의 포크로 이어진다.
도 11 및 도 12를 참조하여, 이하에서는 관련 기술에서의 블록체인 네트워크의 포크를 설명한다.
도 11은 관련 기술에서의 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 프로세스의 개략도이며, 다음의 단계들을 포함한다:
단계 1101: 트랜잭션 요청을 수신한다.
단계 1102: 트랜잭션 데이터를 오프-체인 데이터 소스로 전송한다.
단계 1103: 새로운 오프-체인 데이터를 획득한다.
도 12는 관련 기술에서 블록체인 네트워크에 기반한 데이터 처리 방법에서의 계약 검증의 개략도이다. 도 12에 도시된 바와 같이, 트랜잭션의 인증서는 2017/07/17 12:00:00까지 유효하다.
노드들 A 및 B는 2017/07/17의 11:59:59에 트랜잭션을 수신하고(①), CA에게 인증서의 유효성에 대한 검증을 수행하도록 요청한다(②).
CA는 인증서가 유효성 기간 내에 있다는 것을 검증하고, 검증은 성공하며, 노드들 A 및 B는 트랜잭션을 성공적으로 실행한다.
지연 또는 다른 이유들로 인해, 노드 C는 2017/07/17의 12:00:01에 트랜잭션을 수신하고(③), CA에게 인증서의 유효성에 대한 검증을 수행하도록 요청한다(④). CA는 인증서가 유효성 기간 밖에 있다는 것을 검증하고, 검증은 실패하며, 노드 C는 트랜잭션을 실행하는데 실패한다. 따라서, 노드 C의 데이터는 노드들 A 및 B의 데이터와 일치하지 않아서, 블록체인 네트워크에서의 포크로 이어진다.
유사하게, 블록체인 시스템이, 트랜잭션 시간의 불확실성으로 인해, 오프-체인 데이터에 액세스할 필요가 있는 한, 도 12에 도시된 블록체인 네트워크의 포크 결함을 야기하는 것이 가능하다.
도 13, 도 14 및 도 15를 참조하여, 이하에서는 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 프로세스를 설명한다. 도 13은 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법의 이용 프로세스의 개략도이고, 다음의 단계들을 포함한다:
단계 1301: 트랜잭션 데이터를 수신한다.
단계 1302: 트랜잭션 파라미터 및 체인 높이를 오프-체인 데이터 관리자에게 전송한다.
단계 1303: 대응하는 오프-체인 데이터를 획득한다.
도 14는 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법에서의 오프-체인 데이터 관리자의 처리 프로세스의 개략도이고, 다음의 단계들을 포함한다:
단계 1401: 오프-체인 데이터 액세스 요청을 수신한다.
단계 1402: 오프-체인 데이터 관리자가 체인 높이와 일치하는 데이터를 저장하는지를 결정한다. 예인 경우에는, 단계 1408이 수행되고; 그렇지 않은 경우에는, 단계 1403이 수행된다.
단계 1403: 현재 노드가 메인 오프-체인 데이터 관리 노드인지를 결정한다. 예인 경우에는, 단계 1404가 수행되고; 그렇지 않은 경우에는, 단계 1405가 수행된다.
단계 1404: 대응하는 오프-체인 데이터를 요청한다.
단계 1405: 대응하는 메인 노드로부터 오프-체인 데이터를 요청한다.
단계 1406: 오프-체인 데이터를 로컬로 캐싱한다.
단계 1407: 다른 관리 노드들과의 오프-체인 데이터 동기화를 수행한다.
단계 1408: 대응하는 오프-체인 데이터를 반환한다.
오프-체인 데이터 관리자에 의해 수신된 파라미터들은 트랜잭션 관련 데이터 및 체인 높이를 포함한다. 체인 높이에 대응하는 데이터는 데이터가 로컬로 존재할 때 블록체인 노드로 직접 반환되고, 이는 상이한 블록체인 노드들이 오프-체인 데이터 소스에 직접 액세스하기 때문에 야기되는 데이터 불일치의 문제를 해결한다.
또한, 복수의 오프-체인 데이터 관리자들 중에서, 메인 오프-체인 데이터 관리자만이 오프-체인 데이터 소스로부터 데이터를 획득한다. Raft 또는 Paxos와 같은 일치 프로토콜이 데이터를 동기화하기 위해 오프-체인 데이터 관리 소스들 사이에서 이용되어, 복수의 오프-체인 데이터 관리자들 사이의 데이터가 일치함을 보장할 수 있다.
도 15는 본 개시내용에 따른 블록체인 네트워크에 기반한 데이터 처리 방법에서의 계약 검증의 개략도이다. 오프-체인 데이터 관리자가 도입된 후, 트랜잭션 프로세스가 도 15에 도시되어 있다. 트랜잭션의 인증서는 2017/07/17 12:00:00까지 유효하다.
① 노드 A는 2017/07/17의 11:59:59에 트랜잭션을 수신한다.
② 노드 A는 (디지털 인증서를 포함한) 트랜잭션 데이터 및 현재 체인 높이([transaction_data, chain_height])를 오프-체인 데이터 관리자 1에 전송한다.
③ 오프-체인 데이터 관리자 1은 트랜잭션 데이터에서의 관련 데이터를 이용하여 오프-체인 데이터 소스에 액세스하고 데이터를 노드 A로 반환한다.
④ 노드 B는 2017/07/17의 11:59:59에 트랜잭션을 수신한다.
⑤ 노드 B는 (디지털 인증서를 포함한) 트랜잭션 데이터 및 현재 체인 높이([transaction_data, chain_height])를 오프-체인 데이터 관리자 2에 전송한다.
⑥ 오프-체인 데이터 관리자 2는 로컬로 데이터를 갖지 않으며, 따라서 메인 오프-체인 데이터 관리자 1로부터 데이터를 요청한다. 오프-체인 데이터 관리자 1은 chain_height에 대응하는 데이터를 로컬로 갖고, 따라서 데이터를 오프-체인 데이터 관리자 2에 반환한다. 그 다음, 데이터는 노드 B로 반환된다. 따라서, 노드 B에 의해 획득된 오프-체인 데이터는 노드 A의 것과 일치한다.
⑦ 노드 C는 2017/07/17의 12:00:01에 트랜잭션을 수신한다.
⑧ 노드 C는 (디지털 인증서를 포함한) 트랜잭션 데이터 및 현재 체인 높이([transaction_data, chain_height])를 오프-체인 데이터 관리자 2에 전송한다. 이 경우, 오프-체인 데이터 관리자 2는 chain_height에 대응하는 데이터를 로컬로 갖고, 따라서 데이터를 노드 C에 직접 반환한다. 따라서, 노드 C에 의해 획득된 오프-체인 데이터는 노드 A 및 노드 B의 것과 일치한다.
이러한 방식으로, 블록체인 네트워크 내의 상이한 노드들에 의해 획득된 오프-체인 데이터의 일치가 보장되고, 블록체인 네트워크 내의 상이한 노드들에 의해 획득된 오프-체인 데이터의 불일치에 의해 야기되는 블록체인 네트워크의 포크를 피하고, 블록체인 네트워크의 데이터 처리 능력이 개선된다.
본 개시내용은 다음의 유익한 기술적 효과들을 갖는다:
타겟 노드에 의해 전송된 트랜잭션 요청이 획득된다. 트랜잭션 요청이 파싱되어, 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득한다. 타겟 노드와 일치하는 체인 높이 파라미터에 따라, 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터가 질의된다. 현재 노드가 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 타겟 노드와 일치하는 트랜잭션 파라미터에 따라 타겟 노드의 유형이 결정된다. 타겟 노드의 유형과 일치하는 프로세스가 타겟 노드의 유형에 따라 트리거링되어, 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득한다. 이 프로세스에서, 블록체인 내의 모든 노드들은 오프-체인 데이터를 획득할 때 일치된 오프-체인 데이터에 액세스할 수 있고, 이에 의해 블록체인 네트워크 내의 상이한 노드들에 의해 획득된 오프-체인 데이터의 불일치에 의해 야기되는 블록체인 네트워크의 포크를 피하고, 블록체인 네트워크의 데이터 처리 효율을 개선하면서, 블록체인 네트워크의 분산 특성을 유지하고 블록체인 네트워크 내의 일부 결함 노드들에 의해 야기되는 블록체인 네트워크의 마비를 피한다.
전술한 설명들은 본 개시내용의 실시예들에 불과하고, 본 개시내용의 보호 범위를 제한하려고 의도된 것은 아니다. 본 개시내용의 사상 및 원리 내에서 이루어지는 임의의 수정, 등가적인 대체 또는 개선은 본 개시내용의 보호 범위 내에 속할 것이다.

Claims (17)

  1. 전자 디바이스에 의해 실행되는, 블록체인 네트워크에 기반한 데이터 처리 방법으로서,
    타겟 노드에 의해 전송된 트랜잭션 요청을 획득하는 단계;
    상기 트랜잭션 요청을 파싱하여 상기 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하는 단계;
    상기 타겟 노드와 일치하는 상기 체인 높이 파라미터에 따라, 상기 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터(off-chain data)에 대해 질의하는 단계;
    상기 현재 노드가 상기 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 상기 타겟 노드와 일치하는 상기 트랜잭션 파라미터에 따라 상기 타겟 노드의 유형을 결정하는 단계; 및
    상기 타겟 노드의 유형에 따라 상기 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 상기 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  2. 제1항에 있어서,
    상기 타겟 노드와 일치하는 상기 체인 높이 파라미터에 따라, 상기 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하는 단계는,
    상기 트랜잭션 요청에 응답하여 체인 높이 횡단 프로세스를 트리거링하는 단계; 및
    상기 타겟 노드와 일치하는 상기 체인 높이 파라미터에 따른 상기 체인 높이 횡단 프로세스를 통해, 상기 현재 노드에 저장된 오프-체인 데이터를 횡단하여 상기 체인 높이 파라미터에 대응하고 상기 현재 노드에 저장되어 있는 상기 오프-체인 데이터에 대해 질의하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  3. 제1항에 있어서,
    상기 현재 노드가 상기 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 상기 타겟 노드와 일치하는 상기 트랜잭션 파라미터에 따라 상기 타겟 노드의 유형을 결정하는 단계는,
    상기 현재 노드가 상기 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 상기 트랜잭션 파라미터를 파싱하여 상기 타겟 노드의 대응하는 유형 파라미터를 획득하는 단계;
    상기 타겟 노드의 유형 파라미터가 제1 유형 파라미터인 경우에 상기 타겟 노드의 유형이 상기 블록체인 네트워크의 메인 체인에 포함된 노드라고 결정하는 단계; 및
    상기 타겟 노드의 유형 파라미터가 제2 유형 파라미터인 경우에 상기 타겟 노드의 유형이 상기 블록체인 네트워크의 사이드 체인에 포함된 노드라고 결정하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  4. 제3항에 있어서,
    상기 타겟 노드의 유형에 따라 상기 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 상기 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하는 단계는,
    상기 타겟 노드의 유형이 상기 블록체인 네트워크의 상기 메인 체인에 포함된 노드인 경우에 상기 트랜잭션 요청을 파싱하여 상기 오프-체인 데이터의 대응하는 저장 위치 정보를 획득하는 단계;
    상기 오프-체인 데이터의 상기 저장 위치 정보에 따라 상기 트랜잭션 요청과 일치하는 상기 오프-체인 데이터를 획득하는 단계; 및
    획득된 오프-체인 데이터를 상기 현재 노드에 저장하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  5. 제3항에 있어서,
    상기 타겟 노드의 유형에 따라 상기 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 상기 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하는 단계는,
    상기 타겟 노드의 유형이 상기 블록체인 네트워크의 상기 사이드 체인에 포함된 노드인 경우에 상기 블록체인 네트워크의 상기 메인 체인에 대응하는 노드에 데이터 획득 요청을 전송하는 단계;
    상기 데이터 획득 요청에 응답하여 상기 트랜잭션 요청과 일치하는 상기 오프-체인 데이터를 수신하는 단계; 및
    획득된 오프-체인 데이터를 상기 현재 노드에 저장하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  6. 제1항에 있어서,
    상기 블록체인 네트워크 내의 다른 노드의 데이터 동기화 요청을 수신하는 단계;
    상기 데이터 동기화 요청에 응답하여 상기 다른 노드의 허가에 대한 검증을 수행하는 단계; 및
    상기 다른 노드의 허가가 검증된 경우에 상기 다른 노드와의 데이터 동기화를 수행하도록 상기 현재 노드를 제어하여, 상기 다른 노드가 대응하는 오프-체인 데이터를 획득하게 하는 단계
    를 더 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  7. 제1항에 있어서,
    질의 요청을 수신하고, 상기 질의 요청을 파싱하여 대응하는 사용자 식별자를 획득하는 단계;
    상기 사용자 식별자에 따라 상기 블록체인 네트워크의 상기 타겟 노드에서의 오프-체인 데이터의 허가 정보를 획득하는 단계;
    상기 오프-체인 데이터의 허가 정보 및 상기 사용자 식별자에 대한 검증을 수행하는 단계;
    상기 오프-체인 데이터의 허가 정보가 상기 사용자 식별자와 일치하는 경우에 상기 블록체인 네트워크에서 대응하는 오프-체인 데이터를 획득하는 단계; 및
    상기 질의 요청에 응답하여 대응하는 클라이언트에 획득된 대응하는 오프-체인 데이터를 푸시하는 단계
    를 더 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  8. 제7항에 있어서,
    상기 오프-체인 데이터의 허가 정보가 상기 사용자 식별자와 일치하지 않는 경우에 프롬프트 정보를 전송하는 단계를 더 포함하며, 상기 프롬프트 정보는 상기 오프-체인 데이터의 허가 정보에 대한 검증을 수행하도록 사용자에게 프롬프팅하는데 이용되는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  9. 제7항에 있어서,
    상기 사용자 식별자에 따라 상기 블록체인 네트워크의 상기 타겟 노드에서의 오프-체인 데이터의 허가 정보를 획득하는 단계는,
    상기 질의 요청에서 질의 조건 정보를 획득하는 단계 - 상기 질의 조건 정보는 적어도 하나의 타겟 차원의 타겟 인덱스 값을 포함함 -;
    상기 오프-체인 데이터에 대응하는 사용자 식별자를 획득하기 위해, 적어도 하나의 타겟 차원의 타겟 인덱스 값에 따라 상기 블록체인 네트워크의 정보 인덱스 테이블을 질의하는 단계 - 상기 정보 인덱스 테이블은 저장된 정보의 사용자 식별자 및 상이한 차원들의 인덱스 값들을 포함함 -; 및
    상기 오프-체인 데이터에 대응하는 상기 사용자 식별자에 따라 상기 타겟 노드에서의 상기 오프-체인 데이터의 허가 정보를 결정하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  10. 제7항에 있어서,
    상기 오프-체인 데이터의 허가 정보가 상기 사용자 식별자와 일치하는 경우에 상기 블록체인 네트워크에서 대응하는 오프-체인 데이터를 획득하는 단계는,
    상기 오프-체인 데이터의 허가 정보와 일치하는 상기 타겟 노드의 개인 키를 획득하는 단계; 및
    상기 타겟 노드의 개인 키를 이용함으로써, 상기 블록체인 네트워크로부터 획득된 상기 대응하는 오프-체인 데이터를 해독하여 평문 상태에서의 대응하는 오프-체인 데이터를 획득하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  11. 제7항에 있어서,
    상기 오프-체인 데이터의 허가 정보가 상기 사용자 식별자와 일치하는 경우에 상기 블록체인 네트워크에서 대응하는 오프-체인 데이터를 획득하는 단계는,
    타겟 사용자 식별자에 대응하는 타겟 사용자로부터 대응하는 일회용 패스워드를 요청하는 단계;
    획득된 일회용 패스워드에 따라 상기 블록체인 네트워크에서 상기 대응하는 오프-체인 데이터를 획득하는 단계; 및
    상기 일회용 패스워드와 일치하는 개인 키를 이용함으로써 상기 오프-체인 데이터를 해독하여 상기 타겟 사용자 식별자와 일치하는 오프-체인 데이터를 획득하는 단계
    를 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  12. 제7항에 있어서,
    타겟 사용자의 오프-체인 데이터에 대한 클라이언트의 처리 결과를 획득하는 단계;
    상기 오프-체인 데이터의 처리 결과에 응답하여 상기 블록체인 네트워크에서의 브로드캐스트를 트리거링하여, 상기 블록체인 네트워크 내의 다른 노드들 사이의 데이터 동기화를 구현하고, 상기 타겟 사용자의 상기 오프-체인 데이터와 일치하는 처리 결과를 업데이트하는 단계; 및
    상기 타겟 사용자의 상기 오프-체인 데이터의 처리 결과를 대응하는 클라이언트에 푸시하는 단계
    를 더 포함하는, 블록체인 네트워크에 기반한 데이터 처리 방법.
  13. 블록체인 네트워크에 기반한 데이터 처리 장치로서,
    타겟 노드에 의해 전송된 트랜잭션 요청을 획득하도록 구성된 정보 전송 모듈; 및
    정보 처리 모듈
    을 포함하며, 상기 정보 처리 모듈은,
    상기 트랜잭션 요청을 파싱하여 상기 타겟 노드와 일치하는 트랜잭션 파라미터 및 체인 높이 파라미터를 획득하고;
    상기 타겟 노드와 일치하는 상기 체인 높이 파라미터에 따라, 상기 체인 높이 파라미터에 대응하고 현재 노드에 저장되어 있는 오프-체인 데이터에 대해 질의하고;
    상기 현재 노드가 상기 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 상기 타겟 노드와 일치하는 상기 트랜잭션 파라미터에 따라 상기 타겟 노드의 유형을 결정하고;
    상기 타겟 노드의 유형에 따라 상기 타겟 노드의 유형과 일치하는 프로세스를 트리거링하여 상기 트랜잭션 요청과 일치하는 오프-체인 데이터를 획득하도록 구성되는, 블록체인 네트워크에 기반한 데이터 처리 장치.
  14. 제13항에 있어서,
    상기 정보 처리 모듈은,
    상기 트랜잭션 요청에 응답하여 체인 높이 횡단 프로세스를 트리거링하고;
    상기 타겟 노드와 일치하는 상기 체인 높이 파라미터에 따른 상기 체인 높이 횡단 프로세스를 통해, 상기 현재 노드에 저장된 오프-체인 데이터를 횡단하여 상기 체인 높이 파라미터에 대응하고 상기 현재 노드에 저장되어 있는 상기 오프-체인 데이터에 대해 질의하도록 구성되는, 블록체인 네트워크에 기반한 데이터 처리 장치.
  15. 제13항에 있어서,
    상기 정보 처리 모듈은,
    상기 현재 노드가 상기 체인 높이 파라미터에 대응하는 오프-체인 데이터를 저장하고 있지 않은 경우에 상기 트랜잭션 파라미터를 파싱하여 상기 타겟 노드의 대응하는 유형 파라미터를 획득하고;
    상기 타겟 노드의 유형 파라미터가 제1 유형 파라미터인 경우에 상기 타겟 노드의 유형이 상기 블록체인 네트워크의 메인 체인에 포함된 노드라고 결정하고;
    상기 타겟 노드의 유형 파라미터가 제2 유형 파라미터인 경우에 상기 타겟 노드의 유형이 상기 블록체인 네트워크의 사이드 체인에 포함된 노드라고 결정하도록 구성되는, 블록체인 네트워크에 기반한 데이터 처리 장치.
  16. 전자 디바이스로서,
    실행가능한 명령어들을 저장하도록 구성된 메모리; 및
    제1항 내지 제12항 중 어느 한 항에 따른 블록체인 네트워크에 기반한 데이터 처리 방법을 구현하기 위해, 상기 메모리에 저장된 상기 실행가능한 명령어들을 실행하도록 구성된 프로세서
    를 포함하는, 전자 디바이스.
  17. 실행가능한 명령어들을 저장하는 컴퓨터 판독가능한 저장 매체로서,
    상기 실행가능한 명령어들은, 프로세서에 의해 실행될 때, 제1항 내지 제12항 중 어느 한 항에 따른 블록체인 네트워크에 기반한 데이터 처리 방법을 구현하는, 컴퓨터 판독가능한 저장 매체.
KR1020217003199A 2019-10-15 2020-10-09 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체 KR102566194B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910976287.4A CN110727712B (zh) 2019-10-15 2019-10-15 基于区块链网络的数据处理方法、装置、电子设备及存储介质
CN201910976287.4 2019-10-15
PCT/CN2020/120041 WO2021073452A1 (zh) 2019-10-15 2020-10-09 基于区块链网络的数据处理方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
KR20210046659A true KR20210046659A (ko) 2021-04-28
KR102566194B1 KR102566194B1 (ko) 2023-08-14

Family

ID=69221159

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217003199A KR102566194B1 (ko) 2019-10-15 2020-10-09 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체

Country Status (6)

Country Link
US (1) US11386076B2 (ko)
JP (1) JP7076682B2 (ko)
KR (1) KR102566194B1 (ko)
CN (1) CN110727712B (ko)
SG (1) SG11202102257PA (ko)
WO (1) WO2021073452A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230076699A (ko) * 2021-11-24 2023-05-31 세종텔레콤 주식회사 블록체인 기술을 이용한 보안 데이터 관리 방법 및 오프체인 시스템

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10929352B2 (en) * 2018-05-29 2021-02-23 Oracle International Corporation Securing access to confidential data using a blockchain ledger
CN110727712B (zh) 2019-10-15 2021-06-04 腾讯科技(深圳)有限公司 基于区块链网络的数据处理方法、装置、电子设备及存储介质
WO2021163920A1 (zh) * 2020-02-19 2021-08-26 深圳市嘉舟科技有限公司 一种区块链喂价方法、区块链喂价装置及终端设备
CN111339097B (zh) * 2020-02-25 2024-05-28 腾讯科技(深圳)有限公司 一种数据处理方法及相关设备
CN111538757B (zh) * 2020-04-13 2022-02-11 支付宝(杭州)信息技术有限公司 数据存储方法、查询方法、装置、服务器及介质
EP3834157B1 (en) * 2020-04-22 2023-09-13 Alipay (Hangzhou) Information Technology Co., Ltd. Managing transaction requests in ledger systems
WO2020143855A2 (en) 2020-04-22 2020-07-16 Alipay (Hangzhou) Information Technology Co., Ltd. Managing transaction requests in ledger systems
SG11202103074PA (en) 2020-04-22 2021-04-29 Alipay Hangzhou Inf Tech Co Ltd Managing transaction requests in ledger systems
US20220012668A1 (en) * 2020-07-10 2022-01-13 Genetec Inc. Blockchain based work and resource data management
CN112035863B (zh) * 2020-07-20 2024-05-03 傲为有限公司 一种基于智能合约方式的电子合同取证方法及系统
CN112019603B (zh) * 2020-08-10 2022-04-08 中国联合网络通信集团有限公司 一种交易数据的处理方法及装置
CN111930852B (zh) * 2020-09-29 2022-03-25 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备以及存储介质
CN112702354B (zh) * 2020-12-29 2023-08-11 国家电网有限公司大数据中心 一种基于区块链技术的数据资源共享追溯方法及装置
CN112380149B (zh) * 2021-01-18 2021-04-06 腾讯科技(深圳)有限公司 基于节点内存的数据处理方法、装置、设备以及介质
CN113256289B (zh) * 2021-05-17 2023-06-30 网易(杭州)网络有限公司 区块链的判别方法、装置及电子设备
CN113259463B (zh) * 2021-06-02 2021-11-02 支付宝(杭州)信息技术有限公司 跨链交互方法和区块链系统
CN114629631B (zh) * 2021-07-21 2024-01-09 国网河南省电力公司信息通信公司 基于联盟链的数据可信交互方法、系统及电子设备
CN113849556A (zh) * 2021-08-11 2021-12-28 国网甘肃省电力公司信息通信公司 基于区块链分布式数据库的共享机制
CN113626524A (zh) * 2021-08-12 2021-11-09 浙江网商银行股份有限公司 数据处理方法及装置、数据核对系统
CN113949538B (zh) * 2021-09-27 2022-07-19 武汉理工大学 一种基于双区块链的交通节点信息管理系统及管理方法
CN113626850B (zh) * 2021-10-13 2022-03-11 北京百度网讯科技有限公司 基于联盟链的请求处理方法、装置、设备和存储介质
CN114124991A (zh) * 2021-10-13 2022-03-01 广东电网有限责任公司惠州供电局 物联网设备与区块链的连接方法、物联网设备、解析器
CN114021172B (zh) * 2021-11-10 2022-10-21 苏州同济区块链研究院有限公司 一种基于联盟链的多方联合安全计算方法和装置
CN113900598B (zh) * 2021-12-10 2022-10-28 北京百度网讯科技有限公司 基于区块链的数据存储方法、装置、设备以及存储介质
US20230252023A1 (en) * 2022-02-09 2023-08-10 Verizon Patent And Licensing Inc. Systems and methods for off-chain action orchestration using blockchain events
CN114785815B (zh) * 2022-04-22 2024-05-17 上海骋荣网络科技有限公司 一种面向区块链用户节点的数据存储方法及装置
CN114938293B (zh) * 2022-04-28 2024-03-12 深圳云创数安科技有限公司 基于区块链的nginx数据溯源方法、装置、设备及存储介质
CN114827165B (zh) * 2022-05-30 2024-01-23 蚂蚁区块链科技(上海)有限公司 对多个交易进行分组的方法和区块链节点
CN115208630B (zh) * 2022-06-15 2024-04-09 网易(杭州)网络有限公司 基于区块链的数据获取方法、系统及区块链系统
CN115208895A (zh) * 2022-07-19 2022-10-18 中软航科数据科技(珠海横琴)有限公司 一种用于区块链技术的自动化组网方法及系统
CN115115367B (zh) * 2022-08-30 2023-03-31 平安银行股份有限公司 一种基于区块链的交易信息查询方法、装置及电子设备
CN115587392B (zh) * 2022-11-22 2023-04-07 杭州字节方舟科技有限公司 一种防掉存力方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107330681A (zh) * 2017-06-27 2017-11-07 中链科技有限公司 一种用于确定区块链链外交易的交易时间的方法及设备
KR20180113139A (ko) * 2017-04-05 2018-10-15 삼성에스디에스 주식회사 블록체인 기반 거래에 대한 확정 신뢰도 산출 방법 및 그 방법을 수행하는 블록체인 네트워크 모니터링 시스템
CN109886681A (zh) * 2019-01-31 2019-06-14 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统
KR20190092564A (ko) * 2017-01-26 2019-08-07 알리바바 그룹 홀딩 리미티드 서비스 처리 방법 및 장치

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2246920A1 (en) * 1998-09-10 2000-03-10 Ibm Canada Limited - Ibm Canada Limitee An activemark mechanism for a live parsing editor
CN107145768B (zh) 2016-03-01 2021-02-12 华为技术有限公司 版权管理方法和系统
CN106878071B (zh) * 2017-01-25 2020-09-15 上海钜真金融信息服务有限公司 一种基于Raft算法的区块链共识机制
US20200067697A1 (en) * 2017-03-22 2020-02-27 NEC Laboratories Europe GmbH Method for operating a blockchain
US10922692B2 (en) * 2017-04-05 2021-02-16 Samsung Sds Co., Ltd. Method for calculating confirmation reliability for blockchain based transaction and blockchain network monitoring system for performing the method
CN107301600B (zh) * 2017-06-23 2021-07-20 北京天德科技有限公司 一种跨链交易的区块链互联网模型的核心构建方法
CN107248076A (zh) * 2017-06-24 2017-10-13 北京天德科技有限公司 一种双链式跨链交易的区块链互联网模型的核心算法
WO2019089654A1 (en) * 2017-10-30 2019-05-09 Pricewaterhousecoopers Llp Implementation of continuous real-time validation of distributed data storage systems
US10601598B2 (en) 2017-11-02 2020-03-24 Keir Finlow-Bates System and method for storing the location on a blockchain of a hash of a digital item within said digital item
WO2019100063A1 (en) * 2017-11-20 2019-05-23 Moshe Shadmon A system and apparatus to manage data using a peer-to-peer network and the blockchain
JP2019109635A (ja) 2017-12-16 2019-07-04 株式会社bitFlyer ブロックチェーン・ネットワークにおいて過去のトランザクションにアクセス可能とするための方法及び当該ネットワークを構成するためのノード
US20190236606A1 (en) * 2018-01-31 2019-08-01 Salesforce.Com, Inc. Systems, methods, and apparatuses for implementing a virtual chain model for distributed ledger technologies in a cloud based computing environment
CN108600301B (zh) 2018-03-08 2021-05-18 青岛墨一客区块链有限公司 一种区块链之间的跨链方法及主区块链
CN108492183B (zh) * 2018-03-29 2021-05-18 深圳前海微众银行股份有限公司 区块链的账户交易方法、系统和计算机可读存储介质
CN108734453B (zh) * 2018-05-21 2023-04-14 腾讯科技(深圳)有限公司 区块链数据处理方法、装置、计算机设备和存储介质
US11243917B2 (en) * 2018-10-03 2022-02-08 International Business Machines Corporation Blockchain implementing reliability database
CN109493223B (zh) * 2018-11-07 2021-12-21 联动优势科技有限公司 一种记账方法及装置
CN109471744B (zh) * 2018-11-21 2021-08-17 北京蓝石环球区块链科技有限公司 基于区块链的主链加并行多子链系统架构
CN109544171A (zh) * 2018-11-30 2019-03-29 众安信息技术服务有限公司 用于实现跨区块链交易的一致性的方法及设备
CN109493056A (zh) * 2018-12-04 2019-03-19 深圳市链联科技有限公司 一种基于供应链生态应用场景的区块链共识机制
CN109859047A (zh) * 2019-01-31 2019-06-07 北京瑞卓喜投科技发展有限公司 一种区块链更新方法和区块链更新系统
US11824864B2 (en) * 2019-01-31 2023-11-21 Salesforce, Inc. Systems, methods, and apparatuses for implementing a declarative and metadata driven blockchain platform using distributed ledger technology (DLT)
CN109919615B (zh) * 2019-03-01 2021-04-02 上海分布信息科技有限公司 基于区块链的跨链数据交互方法及跨链数据交互系统
CN110060162B (zh) * 2019-03-29 2023-10-27 创新先进技术有限公司 基于区块链的数据授权、查询方法和装置
CN109981679B (zh) * 2019-04-08 2021-08-10 上海点融信息科技有限责任公司 在区块链网络中执行事务的方法和装置
US11257025B2 (en) * 2019-05-03 2022-02-22 Accenture Global Solutions Limited High performance blockchain architecture for logistics services
US10929046B2 (en) * 2019-07-09 2021-02-23 Pure Storage, Inc. Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device
CN110727712B (zh) * 2019-10-15 2021-06-04 腾讯科技(深圳)有限公司 基于区块链网络的数据处理方法、装置、电子设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190092564A (ko) * 2017-01-26 2019-08-07 알리바바 그룹 홀딩 리미티드 서비스 처리 방법 및 장치
KR20180113139A (ko) * 2017-04-05 2018-10-15 삼성에스디에스 주식회사 블록체인 기반 거래에 대한 확정 신뢰도 산출 방법 및 그 방법을 수행하는 블록체인 네트워크 모니터링 시스템
CN107330681A (zh) * 2017-06-27 2017-11-07 中链科技有限公司 一种用于确定区块链链外交易的交易时间的方法及设备
CN109886681A (zh) * 2019-01-31 2019-06-14 北京瑞卓喜投科技发展有限公司 区块链共识方法及共识系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. Nowostawski et al., Evaluating Methods for the Identification of Off-Chain Transactions in the Lightning Network, Appl. Sci. Vol.9, 2519(2019.06.20.)* *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230076699A (ko) * 2021-11-24 2023-05-31 세종텔레콤 주식회사 블록체인 기술을 이용한 보안 데이터 관리 방법 및 오프체인 시스템

Also Published As

Publication number Publication date
WO2021073452A1 (zh) 2021-04-22
JP7076682B2 (ja) 2022-05-30
KR102566194B1 (ko) 2023-08-14
CN110727712A (zh) 2020-01-24
JP2022508011A (ja) 2022-01-19
US11386076B2 (en) 2022-07-12
CN110727712B (zh) 2021-06-04
SG11202102257PA (en) 2021-05-28
US20210157788A1 (en) 2021-05-27

Similar Documents

Publication Publication Date Title
KR102566194B1 (ko) 블록체인 네트워크에 기반한 데이터 처리 방법 및 장치, 전자 디바이스, 및 저장 매체
US11283617B2 (en) Systems and methods for state of data management
US11341121B2 (en) Peer partitioning
CN112422532B (zh) 业务通信方法、系统、装置及电子设备
JP2021533448A (ja) ハイパーレッジャファブリックブロックチェーンにおいてsqlベースのリッチクエリをサポートするためのシステムおよび方法
EP3652886A1 (en) Blockchain
CN110598434B (zh) 基于区块链网络的房屋信息处理方法、装置、电子设备及存储介质
US20180020008A1 (en) Secure asynchronous communications
KR102152360B1 (ko) IoT 서비스를 위한 블록체인 기반 데이터 신뢰성 제공 시스템 및 방법
CN112889040A (zh) 数据库管理
US20090106549A1 (en) Method and system for extending encrypting file system
CN113010911A (zh) 一种数据访问控制方法、装置及计算机可读存储介质
US11405402B2 (en) System and method for implementing a computer network
KR102134491B1 (ko) 보호된 데이터 세트의 네트워크 기반 관리 기법
EP3744071B1 (en) Data isolation in distributed hash chains
Sicari et al. Security&privacy issues and challenges in NoSQL databases
Lin et al. MDFS: A mimic defense theory based architecture for distributed file system
CN117118640A (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质
CN117633090B (zh) 基于高性能区块链的数据交互方法、系统、终端及介质
US11943226B2 (en) Container and resource access restriction
Lorenceau An Implementation of Omniledger
CN114707128A (zh) 一种数据库访问方法、相关设备、存储介质及程序产品
Wei Practical Integrity Assurance for Big Data Processing Deployed over Open Cloud
AJ et al. An Efficient and Secure System for Cloud Transactions using Policy Based Access Control Mechanism

Legal Events

Date Code Title Description
AMND Amendment
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant