KR102444468B1 - 대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체 - Google Patents

대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체 Download PDF

Info

Publication number
KR102444468B1
KR102444468B1 KR1020207032565A KR20207032565A KR102444468B1 KR 102444468 B1 KR102444468 B1 KR 102444468B1 KR 1020207032565 A KR1020207032565 A KR 1020207032565A KR 20207032565 A KR20207032565 A KR 20207032565A KR 102444468 B1 KR102444468 B1 KR 102444468B1
Authority
KR
South Korea
Prior art keywords
voting
transaction data
node device
blockchain system
user
Prior art date
Application number
KR1020207032565A
Other languages
English (en)
Other versions
KR20200140897A (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 KR20200140897A publication Critical patent/KR20200140897A/ko
Application granted granted Critical
Publication of KR102444468B1 publication Critical patent/KR102444468B1/ko

Links

Images

Classifications

    • 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
    • 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
    • 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
    • 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/04Payment circuits
    • G06Q20/06Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
    • G06Q20/065Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
    • G06Q20/0658Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed locally
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1051Group master selection mechanisms
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Abstract

대표 노드 기기를 선택하기 위한 방법은, 투표 트랜잭션 데이터를 획득하는 단계 - 상기 투표 트랜잭션 데이터는 상기 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -; 상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하는 단계; 및 상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 단계 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 복수의 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 -를 포함한다.

Description

대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체
관련 출원
본 출원은 "METHOD AND APPARATUS FOR ELECTING REPRESENTATIVE NODE DEVICE, COMPUTER DEVICE, AND STORAGE MEDIUM(대표 노드 기기를 선택하기 위한 방법 및 장치, 컴퓨터 기기, 그리고 저장 매체)"라는 명칭으로 2018년 9월 7일에 중국 국가 지적 재산 관리국에 출원된 중국 특허출원 제201811046267.9호에 대해 우선권을 주장하며, 그 내용 전부는 인용에 의해 본 출원에 포함된다.
본 출원은 블록체인 기술 분야에 관한 것으로, 특히 대표 노드 기기를 선택하기 위한 방법 및 장치, 컴퓨터 기기, 그리고 저장 매체에 관한 것이다.
최근에 비트 코인의 가치는 해마다 증가하고 있다. 비트 코인의 기본 기술로서, 블록체인 기술은 비트 코인에 대한 인식과 함께 널리 연구되고 적용되어 왔다. 블록체인 시스템은 복수의 노드 기기를 포함할 수 있다. 각각의 노드 기기는 블록을 사용하여 트랜잭션 데이터(transaction data)를 저장할 수 있고 블록을 연대순으로 순차적으로 연결하여 블록을 체인 데이터 구조(chain data structure)에 결합하여, 블록체인 시스템에서의 분산 원장(distributed ledger)을 형성할 수 있다.
현재, 노드 기기는 다음과 같은 프로세스를 통해 블록을 생성할 수 있다: 임의의 노드 기기에서 트랜잭션이 발생하는 경우, 노드 기기는 트랜잭션 데이터를 기록하고 블록체인 시스템에서 트랜잭션 데이터를 브로드캐스팅하여, 블록체인 시스템 내의 노드 기기가 트랜잭션 데이터를 수신할 수 있도록 한다. 블록체인 시스템 내의 노드 기기가 트랜잭션 데이터를 수신한 후, 그 노드 기기는 트랜잭션 데이터를 패키징하여 새로운 블록을 생성하고, 컨센서스 메커니즘(consensus mechanism)을 사용하여 새로운 블록에 대한 검증을 수행할 수 있다. 새로운 블록이 검증된 후, 각각의 노드 기기는 노드 기기상에 구성된 타깃 블록체인(target blockchain)에 새로운 블록을 추가할 수 있다.
노드 기기가 블록을 생성하는 전술한 프로세스에서, 블록체인 시스템 내의 각각의 노드 기기는 새로운 블록을 생성해야 한다. 블록체인 시스템 내의 노드 기기의 수량이 비교적 많은 경우, 블록체인 시스템의 작업 효율(working efficiency)은 비교적 낮다. 따라서, 블록체인 시스템의 작업 효율을 향상시키기 위해, 블록을 생성하기 위한 모든 노드 기기를 대신할 대표 노드 기기가 필요하다.
본 출원의 실시예에서는 대표 노드 기기를 선택하기 위한 방법 및 장치, 컴퓨터 기기, 그리고 저장 매체가 제공된다.
대표 노드 기기를 선택하기 위한 방법이 제공된다. 상기 방법은 제1 노드 기기에 의해 수행되고, 상기 제1 노드 기기는 블록체인 시스템 내의 임의의 노드 기기이이며, 상기 방법은,
투표 트랜잭션 데이터(voting transaction data)를 획득하는 단계 - 상기 투표 트랜잭션 데이터는 상기 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스(consensus)에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하는 단계; 및
상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 단계 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 복수의 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 -를 포함한다.
대표 노드 기기를 선택하기 위한 장치가 제공되며, 상기 장치는,
투표 트랜잭션 데이터를 획득하도록 구성된 제1 획득 모듈 - 상기 투표 트랜잭션 데이터는 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하도록 구성된 저장 모듈; 및
상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하도록 구성된 결정 모듈 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 복수의 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 -을 포함한다.
컴퓨터 기기는 프로세서 및 메모리를 포함하고, 상기 메모리는 컴퓨터로 판독 가능한 명령어를 저장하고, 상기 컴퓨터로 판독 가능한 명령어는 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금,
투표 트랜잭션 데이터를 획득하는 작업(operation) - 상기 투표 트랜잭션 데이터는 상기 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하는 작업; 및
상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 작업 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 -을 수행하게 한다.
컴퓨터로 판독 가능한 비휘발성 저장 매체는 컴퓨터로 판독 가능한 명령어를 저장하며, 상기 컴퓨터로 판독 가능한 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금,
투표 트랜잭션 데이터를 획득하는 작업 - 상기 투표 트랜잭션 데이터는 상기 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하는 작업; 및
상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 작업 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 -을 수행하게 한다.
본 출원의 하나 이상의 실시예의 세부사항은 첨부 도면 및 이하의 설명에서 제공된다. 본 출원의 다른 특징, 목적 및 이점은 명세서, 첨부 도면 및 청구 범위로부터 명백해질 것이다.
본 출원의 실시예의 기술적 방안을 보다 명확하게 설명하기 위해, 이하에서는 실시예를 설명하는 데 필요한 첨부 도면을 간략하게 설명한다. 명백히, 이하의 설명에서의 첨부 도면은 본 출원의 일부 실시예만을 도시하며, 당업자는 여전히 창의적인 노력없이 첨부 도면으로부터 다른 첨부 도면을 도출할 수 있다.
도 1은 본 출원의 일 실시예에 따른 블록체인 시스템의 개략 구성도이다.
도 2는 본 출원의 일 실시예에 따른 대표 노드 기기를 선택하기 위한 방법의 흐름도이다.
도 3은 본 출원의 일 실시예에 따른 대표 노드 기기를 선택하기 위한 장치의 개략 구성도이다.
도 4는 본 출원의 일 실시예에 따른 서버의 개략 구성도이다.
본 출원의 목적, 기술적 방안 및 이점을 보다 명확하게 하기 위해, 이하에서는 첨부 도면을 참조하여 본 출원의 구현예를 상세히 설명한다.
도 1은 본 출원의 일 실시예에 따른 블록체인 시스템의 개략 구성도이다. 도 1을 참조하면, 시스템은 복수의 서버를 포함한다.
복수의 서버는 동일한 블록체인을 구비할 수 있다. 즉, 복수의 서버는 블록체인 시스템을 구성할 수 있으며, 서버는 블록체인 시스템 내의 개별 노드 기기이다. 복수의 서버는 동일한 조직의 복수의 서버, 다른 조직에 속하는 복수의 서버, 또는 일반 사용자의 복수의 서버일 수 있다.
블록체인 시스템의 노드 기기로서, 복수의 서버 모두가 트랜잭션 데이터를 수신할 수 있다. 그러나 블록체인 시스템이 트랜잭션 데이터를 기록할 때, 노드 기기의 용도가 다르기 때문에, 노드 기기는 대표 노드 기기와 비 대표 노드 기기로 구분될 수 있다. 대표 노드 기기는 블록을 생성하고 컨센서스에 의해 블록에 대한 검증을 수행하도록 구성된다. 비 대표 노드 기기는, 대표 노드 기기가 생성하고 대표 노드 기기가 컨센서스에 의해 검증한 블록을 수신하고, 그 블록에 대한 검증을 수행하고, 검증된 블록을 타깃 블록체인에 저장하도록 구성된다.
예를 들어, 블록체인 시스템 내의 임의의 노드 기기가 트랜잭션 데이터를 수신하는 경우, 그 노드 기기는 블록체인 시스템에서 수신된 트랜잭션 데이터를 브로드캐스팅하여, 다른 노드 기기가 트랜잭션 데이터를 수신할 수 있도록 한다. 블록체인 시스템 내의 대표 노드 기기가 트랜잭션 데이터를 수신한 후, 그 대표 노드 기기는 트랜잭션 데이터에 기초하여 블록을 생성하여, 모든 대표 노드 기기가 컨센서스에 의해 블록에 대한 검증을 수행할 수 있도록 한다. 대표 노드 기기는 컨센서스에 의해 블록을 검증한 후, 대표 노드 기기는 블록체인 시스템에서 블록을 브로드캐스팅한다. 비 대표 노드 기기는 대표 노드 기기에 의해 브로드캐스팅되는 블록을 수신한 후, 블록에 대한 검증을 수행한다. 검증된 후, 그 블록은 비 대표 노드 기기에 구성된 타깃 블록체인에 저장된다.
본 출원의 이 실시예에 포함된 컨센서스는 블록체인 시스템 내의 복수의 노드 기기가 개별적으로 데이터에 대한 검증을 수행함을 의미한다. 임의의 노드 기기에 의해 수행된 검증이 성공한 경우, 검증 성공 메시지가 블록체인 시스템에서 브로드캐스팅된다. 임의의 노드 기기에 의해 수신되는 검증 성공 메시지가 미리 설정된 컨센서스 정책을 충족하는 경우, 데이터가 컨센서스에 의해 검증된 것으로 결정한다.
예를 들어, 컨센서스에 의한 검증이 블록체인 시스템 내의 대표 노드 기기에 의해 수행되는 예를 사용하여 설명을 제공한다. 컨센서스에 의한 검증은 작업 증명(proof of work, POW) 메커니즘을 통해 수행될 수 있다. 프로세스는 다음과 같이 설명된다: 블록체인 시스템 내의 대표 노드 기기는 블록을 생성한다. 대표 노드 기기는 생성된 블록의 블록 헤더의 해시 값을 계산하고 해시 값이 현재 타깃 값(target value)보다 작은지를 판정한다. 해시 값이 타깃 값보다 큰 경우, 대표 노드 기기는 생성된 블록 내의 난수를 변경하여 해시 값을 재계산한다. 대표 노드 기기에 의해 계산된 해시 값이 타깃 값 미만인 경우, 대표 노드 기기는 블록을 다른 대표 노드 기기에 또는 블록체인 시스템에서 브로드캐스팅한다. 다른 대표 노드 기기는 블록을 수신한 후 블록 검증을 수행한다. 대부분의 다른 대표 노드 기기가 모두 블록의 유효성에 동의하는 경우, 그 블록은 컨센서스에 의해 검증된다.
본 출원의 실시예에서 제공되는 시스템에서, 블록체인 시스템의 모든 노드 기기가 블록을 생성하고 블록체인 시스템 내의 대부분의 노드 기기가 생성된 블록에 대한 컨센서스를 달성한 후에 트랜잭션 데이터가 저장될 수 있는지를 확인할 필요가 없다. 대표 노드 기기가 블록을 생성하고 컨센서스에 의해 블록에 대한 검증을 수행하고, 비 대표 노드 기기가 검증을 완료한 경우에만, 트랜잭션 데이터가 블록체인 시스템에 기록될 수 있어, 블록체인 시스템의 작업 효율을 향상시킨다.
따라서, 블록체인 시스템에서의 대표 노드 기기의 생성 프로세스와 관련하여서는 구체적인 실시예를 사용하여 이하에 설명한다.
도 2는 본 출원의 일 실시예에 따른 대표 노드 기기를 선택하기 위한 방법의 흐름도이다. 도 2를 참조하면, 본 출원의 이 실시예에 따른 방법의 프로세스는 다음 단계를 포함한다.
S201. 제1 노드 기기가 사용자의 투표 트랜잭션 데이터를 수신한다.
블록체인 시스템 내의 제1 노드 기기는 블록체인 시스템 내의 임의의 노드 기기이다. 사용자 장비에 의해 제1 노드 기기에 대해 개시된 트랜잭션의 유형은 투표 트랜잭션 및 다른 트랜잭션을 포함할 수 있다.
투표 트랜잭션 데이터는 트랜잭션 데이터의 일종으로, 블록체인 시스템에서의 사용자의 투표 타깃에 기초하여 생성될 수 있다. 블록체인 시스템의 노드 기기상의 임의의 사용자가 투표를 개시하는 경우, 노드 기기는 투표 트랜잭션 데이터를 획득하고, 투표 트랜잭션 데이터는, 트랜잭션 유형, 투표되는 노드 기기 목록, 투표 사용자의 개인 키 서명 등을 포함할 수 있다.
본 출원의 이 실시예에서, 사용자가 사용자 장비를 사용하여 제1 노드 기기에 대해 투표 트랜잭션을 개시하는 예가 사용된다. 블록체인 시스템은 초기화를 수행하고 초기 대표 노드 기기를 결정한다. 초기 대표 노드 기기는 선택이 수행되지 않는 경우에 블록체인 시스템에서 블록을 생성하고 컨센서스에 의해 블록에 대한 검증을 수행하도록 구성된 노드 기기이다. 초기화 단계에서, 초기 대표 노드 기기의 공개 키는 블록체인의 제네시스 블록에 저장되어, 블록체인 시스템 내의 모든 노드 기기가 초기 대표 노드 기기의 공개 키를 알 수 있도록 하며, 공개 키는 초기 대표 노드 기기의 신원(identity)을 지시하는 데 사용되는 것이다. 일 실시예에서, 컨센서스 알고리즘에 의해 필요한 경우, 초기화 단계에서, 초기 대표 노드 기기의 네트워크 프로토콜 주소도 제네시스 블록에 저장되어, 블록체인 시스템의 모든 노드 기기가 초기 대표 노드 기기의 네트워크 프로토콜 주소를 알 수 있도록 한다.
즉, 최초의 대표 노드 기기의 신원을 나타내는 데 사용되는 공개 키는, 첫 번째 선택 프로세스에서, 블록체인에서 초기 대표 노드 기기가 제네시스 블록에 저장된 초기 대표 노드 기기의 공개 키로부터 대표 노드 기기로서의 자신의 신원을 알 수 있음을 의미한다. 초기 대표 노드 기기는 대표 노드 기기 상태로 운영된다. 유사하게, 비 대표 노드 기기도 또한 공개 키로부터 비 대표 노드 기기로서의 자신의 신원을 알 수 있으며, 비 대표 노드 기기는 비 대표 노드 기기 상태로 운영된다.
S202. 제1 노드 기기는 블록체인 시스템에서 투표 트랜잭션 데이터를 브로드 캐스팅한다.
브로드캐스팅은 블록체인 시스템 내의 모든 노드 기기가 투표 트랜잭션 데이터를 수신하도록 할 수 있다. 본 출원의 이 실시예에서, 제1 노드 기기가 투표를 위해 제1 노드 기기에 로그인한 사용자에 의해 생성되는 투표 트랜잭션 데이터를 직접 수신하는 예를 사용하여 설명이 제공된다. 그러나 일 실시예에서, 제1 노드 기기는, 사용자가 투표를 위해 다른 노드 기기에 로그인한 후에 다른 노드 기기에 의해 브로드캐스팅되는 투표 트랜잭션 데이터를 직접 수신할 수 있다. 본 출원의 이 실시예에서는 이를 특별히 한정하지 않는다.
S203. 제2 노드 기기가 투표 트랜잭션 데이터를 수신한다.
제2 노드 기기는 제1 노드 기기가 아닌 블록체인 시스템의 노드 기기이다. 본 출원의 실시예에 포함된, "제1" 및 "제2"와 같은 속성 중 어느 것도 노드 기기의 기능을 구별하는 데 사용되지 않으며, 대신 상이한 노드 기기를 구별하는 데만 사용된다.
S204. 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 투표 트랜잭션 데이터를 검증하는 경우에 블록체인 시스템 내의 복수의 노드 기기는 블록체인 시스템의 타깃 블록체인에 투표 트랜잭션 데이터를 저장한다.
본 출원의 이 실시예에서, 복수의 노드 기기가 컨센서스에 의해 투표 트랜잭션 데이터를 검증한다는 것은 블록체인 시스템 내의 복수의 대표 노드 기기가 컨센서스에 의해 투표 트랜잭션 데이터를 검증한다는 것을 의미할 수 있다. 처음으로 선택을 수행하는 블록체인 시스템의 경우, 앞서 언급한 초기 대표 노드 기기는 이번 컨센서스 프로세스에 참여하는 노드 기기로서 사용될 수 있다. 이후, 복수의 대표 노드 기기가 선택된 후, 선택을 통해 획득된 복수의 대표 노드 기기를 대표 노드의 실행 상태로 전환되어 전체 블록체인 시스템의 컨센서스 및 블록 생성 프로세스에 참여할 수 있다. 대표 노드 기기로 선택되지 않은 노드 기기는 비 대표 노드 기기의 실행 상태에 있으며 전체 블록체인 시스템의 컨센서스 및 블록 생성 과정에 참여하지 않는다. 본 출원의 본 실시예에서 언급된 용어 "복수"는 "하나보다 많은"을 의미한다.
S205. 제1 노드 기기는, 생성된 블록의 수량이 제1 미리 설정된 수량에 도달하는 경우에 타깃 블록체인의 블록 중에서 복수의 제1 블록을 결정하고, 복수의 제1 블록은 노드 기기의 투표 트랜잭션 데이터를 저장하도록 구성된다.
단계 205에서, 제1 노드 기기는 투표 트랜잭션 유형에 기초하여 타깃 블록체인의 블록을 검색하여, 투표 트랜잭션 유형을 저장하는 블록을 제1 블록으로서 획득할 수 있다.
본 출원의 이 실시예에서, 특정 대표 노드 기기, 예를 들어 비정상적인 상태로 운영되거나 신용 문제 등이 있는 특정 대표 노드의 예외로 인한 시스템 운영 문제를 피하기 위해, 블록체인 시스템의 운영 프로세스 동안에 복수의 선택이 수행될 수 있어, 대표 노드 기기에 기초한 블록체인 시스템의 안정적인 운영을 보장한다.
생성된 블록은 이전 선택 이후에 생성된 블록이다. 생성된 블록의 수량이 제1 미리 설정된 수량에 도달 한 경우에만, 선택이 수행되어서, 대표 노드 기기의 스위칭 시간 길이, 즉 대표 노드 기기의 스위칭 빈도가 보장될 수 있어, 대표 노드 기기의 빈번한 스위칭을 피하고 전체 블록체인 시스템의 정상적인 운영에 영향을 주지 않는다.
생성된 블록은 투표 트랜잭션 데이터에 기초하여 생성된 블록을 포함하고, 다른 트랜잭션 데이터에 기초하여 생성된 블록을 더 포함할 수 있으며, 물론 투표 트랜잭션 데이터 및 다른 트랜잭션 데이터에 기초하여 생성된 블록을 더 포함할 수 있음을 이해할 수 있다. 본 출원의 이 실시예에서는 세부 사항을 다시 설명하지 않는다.
블록체인 시스템 내의 모든 노드 기기는 단계 S205의 프로세스를 실행할 수 있으며, 본 출원의 이 실시예에서는 세부 사항을 다시 설명하지 않는다.
S206. 제1 노드 기기는 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라, 블록체인 시스템 내의 노드 기기에 대한 투표 수량을 결정한다.
투표 트랜잭션 데이터는 트랜잭션 유형, 투표된 노드 기기 목록, 투표 사용자의 개인 키 서명 등을 포함한다. 따라서, 각각의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라, 각각의 노드 기기에 의해 획득된 투표의 수량을 카운팅할 수 있다.
본 출원의 이 실시예에서, 블록체인 시스템에는 두 가지 투표 방식, 즉 증분 투표(incremental voting )와 완전 투표(full voting)가 있을 수 있다. 증분 투표는 투표 트랜잭션에서 투표되는 노드 기기를 지시하고 과거 투표 결과를 유지하는 것을 의미한다. 예를 들어, 사용자가 세 개의 노드 기기 A, B 및 C에 투표하였고 이 투표의 대상이 노드 기기 D인 경우, 이 투표 동안에, 사용자는 노드 기기 D에 직접 투표할 수 있다. 투표 트랜잭션 데이터 내의 투표된 노드 기기의 리스트는 노드 기기 D의 공개 장치 키를 실어 전달한다. 즉, 사용자는 여러 라운드의 투표를 통해, 네 개의 노드 기기 A, B, C 및 D에 투표한다.
전술한 증분 투표 방식에 기초하여, 투표된 노드 기기에 대한 투표가 철회될 수 있다. 예를 들어, 사용자가 이미 세 개의 노드 기기 A, B 및 C에 투표했으며, 사용자가 다음번에 노드 기기 C에 대한 투표를 철회하기를 원하면, 사용자는 다음 투표 동안에 투표 트랜잭션 데이터에서 노드 기기 C에 대한 투표의 철회를 직접 지시할 수 있다.
완전 투표는 각각의 트랜잭션에 대해, 투표되는 노드 기기를 지시하고 이전 투표가 유효하지 않음을 지시해야 한다. 예를 들어 사용자가 노드 기기 A와 노드 기기 B에 투표하였고, 다음 투표 대상(voting object)이 노드 기기 C와 노드 기기 D인 경우, 다음 투표에서, 사용자는 노드 기기 C와 노드 기기 D에 대한 투표를 지시해야 할 뿐 아니라, 노드 기기 A와 노드 기기 B에 대한 이전 투표를 직접 덮어 써야한다.
일 실시예에서, 대응하는 투표 가중치는 서로 다른 사용자에 대해 설정될 수 있으며, 가중치는 블록체인 시스템에 대한 영향 정도(influence degree )를 지시하는 데 사용된다. 가중치는 전체 선택에 대한 사용자의 투표 캐스트(vote cast)를 결정하는 데 사용될 수 있다. 예를 들어, 특정 사용자의 가중치가 5인 경우, 그 사용자는 5개의 노드 기기에 투표할 수 있다. 즉, 그 사용자는 5표를 투표를 할 수 있는 투표 권한을 갖는다.
일 실시예에서, 가중치가 설정되는 구체적인 단계는 본 출원의 이 실시예에서 한정되지 않는다. 예를 들어, 투표의 수량이 카운팅될 때 가중치가 설정될 수 있다. 물론, 가중치는 제1 노드 기기가 투표 트랜잭션 데이터를 생성할 때 제1 노드 기기에 의해 대안적으로 결정될 수 있고, 투표 트랜잭션 데이터에 실려 전달될 수 있다.
일 실시예에서, 가중치는 상이한 파라미터에 기초하여 설정될 수 있다. 예를 들어, 파라미터는 사용자의 계정 잔고일 수 있다. 즉, 계정 잔고가 많을수록 사용자에게 설정된 가중치가 더 높다는 것을 지시한다. 다른 예에서, 파라미터는 대안 적으로 사용자의 신용 값(credit value)일 수 있다. 즉, 사용자의 신용 값이 클수록 사용자에게 설정된 가중치가 더 높다는 것을 지시한다.
또한, 설정에 사용되는 특정 파라미터는 블록체인 시스템의 상이한 애플리케이션 객체에 따라 다를 수 있다. 예를 들어, 블록체인 시스템이 일반 서비스에 적용되는 경우, 사용자의 계정 잔고에 따라 가중치가 설정될 수 있다. 블록체인 시스템이 은행 서비스에 적용되는 경우, 사용자의 신용 값에 따라 가중치가 설정될 수 있다.
일 실시예에서, 제한된 투표 사용자가 투표에 참여하는 것을 방지하기 위해, 투표 사용자가 또한 제한될 수 있다. 예를 들어, 블록체인 시스템에서는 기관(institution)이나 조직(organization)만이 대표 노드 기기에 대한 투표를 개시할 수 있으며, 일반 사용자는 투표를할 수 없다.
일 실시예에서, 블록체인 시스템은 또한 각각의 사용자가 소유한 투표의 수량, 즉, 각각의 사용자가 최대 몇 표를 투표할 수 있는지를 지정할 수 있다. 일부 특별한 실시예에서, 사용자는 대안적으로 투표의 수량 또는 투표 대상에 의해 획득되는 가중치를 지정할 수 있지만, 투표의 수량은 사용자가 소유한 총 투표 수량을 초과할 수 없다.
S207. 제1 노드 기기는 투표의 수량에 의한 내림차순으로 선택 결과를 결정하며, 선택 결과는 블록체인 시스템 내의 제2 미리 설정된 수량의 제2 대표 노드 기기 수량을 포함한다.
제2 미리 설정된 수량은 현재 작업중인 대표 노드 기기의 수량과 일치하도록 유지될 수 있다. 즉, 현재 작업중인 대표 노드 기기를 모두 선택된 대표 노드 기기로 교체할 수 있는 제2 미리 설정된 수량의 설정을 통해 보장될 수 있다. 물론, 제2 미리 설정된 수량은 대안적으로 변경될 수 있다. 예를 들어, 제2 미리 설정된 수량은 블록체인 시스템 내의 노드 기기의 수량에 따라 변경될 수 있으며, 노드 기기의 수량이 증가되는 경우, 제2 미리 설정된 수량은 증가될 수 있다.
제1 노드 기기는 자신이 결정한 선택 결과에 따라 그것이 새로 선택된 대표 노드 기기인지를 판정할 수 있다. 즉, 블록체인 시스템 내의 임의의 노드 기기는 자신이 카운팅을 통해 획득한 선택 결과에 따라, 그것이 새로 선출된 대표 노드 기기인지 여부와 이번에 새로 선택된 다른 대표 노드 기기의 신원을 결정할 수 있다.
단계 S205 내지 S207은, 제1 노드 기기가 복수의 후보 노드 기기의 투표의 수량에 따라, 블록체인 시스템 내의 복수의 대표 노드 기기를 결정하는 프로세스, 즉, 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라, 블록체인 시스템 내의 제2 미리 설정된 수량의 대표 노드 기기를 결정하는 프로세스의 구현예이다. 그러나 일부 구현예에서는 선택을 수행하기 위해, 투표 목록을 설정하는 방식으로 투표의 수량이 카운팅될 수 있다. 자세한 설명은 다음과 같다:
각각의 노드 기기는 투표 목록을 유지할 수 있으며, 투표 목록은 노드 기기에 대한 투표의 수량을 저장하는 데 사용된다. 투표 목록의 경우, 블록체인 시스템의 각각의 투표에 기초하여 갱신이 수행될 수 있거나, 미리 설정된 시간 간격으로 또는 생성된 블록의 수량이 미리 설정된 수량에 도달하는 경우에 타깃 블록체인 상의 복수의 제1 블록에 기초하여 갱신이 수행될 수 있다. 본 출원의 이 실시예에서는 이를 한정하지 않는다. 또한, 선택하는 동안, 블록체인 시스템에 저장된 트랜잭션 데이터를 사용하여 투표 목록에 대한 검증을 수행될 수 있어, 선택이 투표 목록에 기초하여 수행될 수 있도록 한다.
구체적으로, 블록체인 시스템의 다른 투표 방식에 따라, 투표 목록이 갱신될 때마다, 갱신 프로세스는 다음과 같을 수 있다:
단계 S207에서 증분 투표의 설명에 따르면, 증분 투표는 원래의 투표에 기초하여 증분 투표를 다시 수행하는 투표 방식임을 알 수 있다. 따라서, 블록체인 시스템에서의 투표 방식이 증분 투표인 경우, 노드 기기에 저장된 투표 목록은 제1 블록에 저장된 사용자의 투표 트랜잭션 데이터에 따라 갱신될 수 있다. 예를 들어, 제1 블록상에서 사용자의 마지막에서 두 번째 투표의 투표 대상은 세 개의 노드 기기 A, B 및 C이다. 최후 투표의 투표 대상은 노드 기기 D이다. 모든 투표의 수량을 획득하려면, 노드 기기 D에 대한 투표를 투표 목록에 직접 추가하는 것 외에, 마지막에서 두 번째 투표의 투표 대상이 타깃 블록체인에서 추가로 조회되어야 한다. 유사하게, 매번의 투표 대상이 조회되고, 조회 결과에 따라 투표 목록이 갱신된다.
S207 단계에서의 완전 투표에 대한 설명에 따르면, 완전 투표는 이전 투표 결과의 덮어쓰기에 기초하여 투표를 수행하는 투표 방식임을 알 수 있다. 따라서, 블록체인 시스템의 투표 방식이 완전 투표인 경우, 노드 기기에 저장된 투표 목록은 제1 블록에 저장된 사용자의 최후 투표의 투표 트랜잭션 데이터에 따라 갱신될 수 있다. 예를 들어, 제1 블록상에서, 사용자의 마지막에서 두 번째 투표의 투표 대상은 세 개의 노드 기기 A, B 및 C이다. 최후 투표는 노드 기기 D에 투표하기 위해 수행되고, 이전 투표는 세 개의 노드 기기 A, B 및 C에 대한 이전 투표는 덮어쓰기 된다. 따라서, 투표 목록의 갱신 중에 투표 목록에 노드 기기 D에 대한 투표가 직접 추가될 수 있다.
타깃 블록체인에서 생성된 블록의 수량이 제1 미리 설정된 수량에 도달한 경우, 투표 목록상의 노드 기기에 대한 투표의 수량을 내림차순으로 정렬하여, 제2 미리 설정된 수량의 대표 노드 기기를 결정할 수 있다. 또한, 투표 방식은 가중치와 조합하여 수행될 수도 있다. 자세한 조합 방식은 전술한 가중치에 대한 설명과 동일하며, 여기서는 세부사항을 설명하지 않는다.
S208. 이번에 새롭게 선택된 대표 노드 기기는 운영 위해 대표 노드 기기의 작업 상태(operating state)로 전환한다.
이번에 새롭게 선택된 대표 노드 기기가 자신이 저장한 투표 트랜잭션 데이터에 따라 이번 선택의 결과를 획득한 후, 새롭게 선택된 대표 노드 기기는 자신이 대표 노드 기기로 선택되었음을 알 수 있어, 이번에 새롭게 선출된 노드 기기는 대표 노드 기기의 작업 상태로 전환되어 작업을 시작한다.
본 출원의 이 실시예에 따른 방법에서, 블록체인 시스템 내의 노드 기기에 대해 투표함으로써 블록체인 시스템에서 대표 노드 기기가 선택된다. 대표 노드 기기는 블록체인 시스템 내의 모든 노드 기기를 대신하여 블록을 생성하고 컨센서스에 의해 블록에 대한 검증을 수행하는 등을 하여, 노드 기기가 전술한 프로세스를 모두 수행하는 것을 방지하여, 블록체인 시스템의 작업 효율을 크게 향상시킨다.
또한, 선택 프로세스에서, 선택 방식은 증분 투표 또는 완전 투표일 수 있다. 사용자에 대해 설정된 서로 다른 투표 방식 또는 가중치에 따라, 상이한 투표 카운팅 방식이 선택되어, 블록체인 시스템 내의 대표 노드 기기를 선택하기 위한 보다 유연한 선택 방식을 제공할 수 있다. 블록체인 시스템 내의 노드 기기에 대한 투표의 수량은 대표 노드 기기를 선택하기 위해, 제1 미리 설정된 수량의 블록을 생성하는 간격으로 내림차순으로 카운팅되고 정렬된다. 이 방식은 대표 노드 기기의 전환 시간 길이를 추가로 제어할 수 있으므로, 대표 노드 기기의 빈번한 전환을 피하고 블록체인 시스템이 정상적으로 작업할 수 없는 것을 피할 수 있다. 또한 블록체인 시스템은 정상적으로 작업할 수 없는 일부 대표 노드 기기가 전환되는 것을 방지하고 블록체인 시스템의 정상적인 운영을 유지하기 위해, 복수의 선택을 수행한다.
도 3은 본 출원의 일 실시예에 따른 대표 노드 기기의 개략 구성도이다. 도 3을 참조하면, 장치는 제1 획득 모듈(301), 저장 모듈(302) 및 결정 모듈(303)을 포함한다.
제1 획득 모듈(301)은 저장 모듈(302)에 연결되고, 투표 트랜잭션 데이터를 획득하도록 구성되며, 투표 트랜잭션 데이터는 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용된다.
저장 모듈(302)은 결정 모듈(303)에 연결되고, 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 투표 트랜잭션 데이터를 검증하는 경우에 블록체인 시스템 내의 타깃 블록체인에 투표 트랜잭션 데이터를 저장하도록 구성된다.
결정 모듈(303)은 생성된 블록의 수량이 미리 설정된 수량에 도달하는 경우, 복수의 노드 기기의 투표의 수량에 따라 선택 결과를 결정하도록 구성되며, 선택 결과는 블록체인 시스템 내의 복수의 대표 노드를 포함하고, 대표 노드 기기는 블록을 생성하고 컨센서스에 의해 블록에 대한 검증을 수행하도록 구성된다.
일 실시예에서, 결정 모듈(303)은,
타깃 블록체인 내의 블록 중에서 복수의 제1 블록을 결정하도록 구성된 블록 결정 유닛 - 복수의 제1 블록은 노드 기기의 투표 트랜잭션 데이터를 저장하도록 구성됨 -; 및
복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 블록체인 시스템 내의 미리 설정된 수량의 대표 노드 기기를 결정하도록 구성된 대표 노드 기기 결정 유닛을 포함한다.
일 실시예에서, 대표 노드 기기 결정 유닛은,
복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 블록체인 시스템 내의 노드 기기에 대한 투표 수량을 결정하도록 구성된 투표 수량 결정 서브유닛(quantity-of-votes determining subunit); 및
투표 수량에 의한 내림차순으로 블록체인 시스템 내의 미리 설정된 수량의 대표 노드 기기를 결정하도록 구성된 대표 노드 기기 결정 서브유닛(representative node device determining subunit)을 포함한다.
일 실시예에서, 블록체인 시스템에서의 투표 방식은 증분 투표이고, 투표 수량 결정 서브유닛은 추가로, 복수의 제1 블록에 저장된 사용자의 트랜잭션 데이터에 따라 블록체인 시스템 내의 노드 기기에 대한 투표 수량을 결정하도록 구성된다.
일 실시예에서, 블록체인 시스템에서의 투표 방식은 완전 투표이고, 투표 수량 결정 서브유닛은 복수의 제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표의 트랜잭션 데이터를 결정하고, 사용자의 최종 투표의 트랜잭션 데이터에 기초하여 블록체인 시스템 내의 노드 기기에 대한 투표의 수량을 결정하도록 구성된다.
일 실시예에서, 투표에 참여하는 각각의 사용자의 투표에 가중치가 설정된다.
일 실시예에서, 각각의 사용자의 가중치는 사용자 파라미터에 기초하여 설정되고, 사용자 파라미터는 계정 잔고 또는 신용 값을 포함한다.
일 실시예에서, 상기 장치는, 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 투표 트랜잭션 데이터를 검증하는 경우에, 투표 트랜잭션 데이터에 따라 노드 기기에 저장된 투표 목록을 갱신하도록 구성된 갱신 모듈을 더 포함하며, 투표 목록은 노드 기기에 대한 투표의 수량을 저장하는 데 사용된다.
일 실시예에서, 블록체인 시스템에서의 투표 방식이 완전 투표인 경우, 갱신 모듈은 추가로, 제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표에 대한 트랜잭션 데이터를 결정하고, 사용자의 최종 투표에 대한 트랜잭션 데이터에 기초하여 노드 기기에 저장된 투표 목록을 갱신하도록 구성된다.
일 실시예에서, 블록체인 시스템에서의 투표 방식이 증분 투표인 경우, 갱신 모듈은 추가로, 제1 블록에 저장된 사용자의 모든 투표 트랜잭션 데이터에 따라 노드 기기에 저장된 투표 목록을 갱신하도록 구성된다.
본 출원의 실시예에 따른 장치에서, 블록체인 시스템 내의 대표 노드 기기는 투표 방식으로 선택된다. 대표 노드 기기는 블록체인 시스템의 모든 노드 기기를 대신하여 블록을 생성할 수 있으며, 컨센서스에 의해 새로운 블록에 대한 검증을 완료할 수 있어, 블록체인 시스템의 작업 효율을 향상시킬 수 있다.
전술한 모든 선택적 기술적 방안은 임의로 결합되어 본 출원의 선택적인 실시예를 형성할 수 있는데, 여기서는 세부 사항을 설명하지 않는다.
전술한 실시예에서 제공되는 대표 노드 기기를 선택하기 위한 장치가 선택을 수행할 때, 전술한 기능 모듈의 분할은 단지 설명을 위한 예로서 사용된다. 실제 적용 시에, 전술한 기능은 요건에 따라 서로 다른 기능 모듈에 할당되고 완료될 수 있다. 즉, 장치의 내부 구성은 전술한 기능의 전부 또는 일부를 완료하기 위해, 서로 다른 기능 모듈로 분할된다. 또한, 전술한 실시예에서 제공되는 대표 노드 기기를 선택하기 위한 방법 및 실시예는 하나의 개념에 속한다. 구체적인 구현 프로세스에 대해서는, 방법 실시예를 참조할 수 있으며, 여기서는 세부 사항을 다시 설명하지 않는다.
도 4는 본 출원의 일 실시예에 따른 서버의 개략 구성도이다. 서버(400)는 구성 또는 성능의 차이로 인해 크게 다를 수 있고, 하나 이상의 프로세서(예: 중앙 처리 장치, CPU)(401) 및 하나 이상의 메모리(402)를 포함할 수 있다. 메모리(402)는 컴퓨터로 판독 가능한 명령어를 저장한다. 컴퓨터로 판독 가능한 명령어는 프로세서(401)에 의해 로딩되고 실행되어 전술한 방법 실시예에서 제공되는 방법을 구현한다. 물론, 서버는 입출력을 용이하게 하기 위해, 유선 또는 무선 네트워크 인터페이스, 키보드, 및 입출력 인터페이스와 같은 구성요소를 더 포함할 수 있다. 서버는 기기의 기능을 구현하도록 구성된 다른 구성요소를 더 포함할 수 있으며, 여기서는 세부 사항을 다시 설명하지 않는다.
예시적인 실시예에서, 명령어를 포함하는 메모리와 같은, 컴퓨터로 판독 가능한 저장 매체가 더 제공되고, 명령어는 단말기 내의 프로세서에 의해 실행되어 전술한 실시예에서의 대표 노드 기기를 선택하기 위한 방법을 완료할 수 있다. 예를 들어, 컴퓨터로 판독 가능한 저장 매체는 ROM(read-only memory), RAM(random access memory), CD-ROM(compact disc read-only memory), 자기 테이프, 플로피 디스크, 광학 데이터 저장 기기 등일 수 있다.
당업자는 전술한 실시예의 단계의 전부 또는 일부가 하드웨어를 사용하여 구현될 수 있거나, 관련 하드웨어에게 명령하는 프로그램에 의해 구현될 수 있음을 이해할 수 있을 것이다. 프로그램은 컴퓨터로 판독 가능한 저장 매체에 저장될 수 있다. 전술한 저장 매체는 ROM, 자기 디스크, 광 디스크 등일 수 있다.
이상의 설명은 본 출원의 예시적인 실시예일 뿐이며, 본 출원을 한정하려는 의도는 아니다. 본 출원 사상과 원칙 내에서 이루어진 모든 수정, 동등한 대체 또는 개선은 본 출원의 보호 범위에 속한다.

Claims (20)

  1. 블록체인 시스템 내의 임의의 노드 기기인 제1 노드 기기에 의해 수행되는, 대표 노드 기기를 선택하기 위한 방법으로서,
    투표 트랜잭션 데이터(voting transaction data)를 획득하는 단계 - 상기 투표 트랜잭션 데이터는 상기 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
    상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스(consensus)에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우, 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하는 단계; 및
    상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 단계 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 복수의 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 - ;
    상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우, 상기 투표 트랜잭션 데이터에 따라 상기 노드 기기에 저장된 투표 목록을 갱신하는 단계 - 상기 투표 목록은 상기 노드 기기에 대한 투표 수량을 저장하는 데 사용됨 -
    을 포함하고,
    상기 투표 목록은 상기 블록체인 시스템의 상이한 투표 방식에 따라서 갱신되고,
    상기 블록체인 시스템에서의 투표 방식이 완전 투표인 경우, 상기 노드 기기에 저장된 투표 목록을 갱신하는 단계는,
    제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표의 트랜잭션 데이터를 결정하고, 상기 사용자의 최종 투표의 트랜잭션 데이터에 기초하여 상기 노드 기기에 저장된 투표 목록을 갱신하는 단계를 포함하는,
    방법.
  2. 제1항에 있어서,
    상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하는 단계는,
    상기 타깃 블록체인 내의 블록 중에서 복수의 제1 블록을 결정하는 단계 - 상기 복수의 제1 블록은 상기 노드 기기의 상기 투표 트랜잭션 데이터를 저장하도록 구성됨 -; 및
    상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 미리 설정된 수량의 대표 노드 기기를 결정하는 단계를 포함하는, 방법.
  3. 제2항에 있어서,
    상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 미리 설정된 수량의 대표 노드 기기를 결정하는 단계는,
    상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하는 단계; 및
    투표 수량에 의한 내림차순으로 상기 블록체인 시스템 내의 상기 미리 설정된 수량의 대표 노드 기기를 결정하는 단계를 포함하는, 방법.
  4. 제3항에 있어서,
    상기 블록체인 시스템에서의 투표 방식은 증분 투표(incremental voting)이고, 상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하는 단계는,
    상기 복수의 제1 블록에 저장된 사용자의 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하는 단계를 포함하는, 방법.
  5. 제3항에 있어서,
    상기 블록체인 시스템에서의 투표 방식은 완전 투표(full voting)이고, 상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하는 단계는,
    상기 복수의 제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표의 트랜잭션 데이터를 결정하고, 상기 사용자의 최종 투표의 트랜잭션 데이터에 기초하여 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표의 수량을 결정하는 단계를 포함하는, 방법.
  6. 제1항에 있어서,
    상기 투표에 참여하는 각각의 사용자의 투표에 가중치가 할당되는, 방법.
  7. 제6항에 있어서,
    상기 각각의 사용자의 가중치는 사용자 파라미터에 기초하여 설정되고, 상기 사용자 파라미터는 계정 잔고(account balance) 또는 신용 값(credit value)을 포함하는, 방법.
  8. 제1항에 있어서,
    상기 블록체인 시스템에서의 투표 방식이 증분 투표인 경우, 상기 노드 기기에 저장된 투표 목록을 갱신하는 단계는,
    상기 제1 블록에 저장된 사용자의 모든 투표 트랜잭션 데이터에 따라 상기 노드 기기에 저장된 투표 목록을 갱신하는 단계를 포함하는, 방법.
  9. 대표 노드 기기를 선택하기 위한 장치로서,
    투표 트랜잭션 데이터를 획득하도록 구성된 제1 획득 모듈 - 상기 투표 트랜잭션 데이터는 블록체인 시스템 내의 하나 이상의 노드 기기에 대한 투표에 사용됨 -;
    상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에 상기 투표 트랜잭션 데이터를 상기 블록체인 시스템의 타깃 블록체인에 저장하도록 구성된 저장 모듈;
    상기 타깃 블록체인에서 생성된 블록의 수량이 미리 설정된 수량에 도달한 경우에 상기 투표 트랜잭션 데이터로부터 결정된 상기 노드 기기에 대한 투표 수량에 따라 선택 결과를 결정하도록 구성된 결정 모듈 - 상기 선택 결과는 상기 블록체인 시스템 내의 복수의 대표 노드 기기를 포함하고, 상기 복수의 대표 노드 기기는 블록을 생성하도록 구성되고 컨센서스에 의해 상기 블록에 대한 검증을 수행함 - ; 및
    상기 블록체인 시스템 내의 복수의 노드 기기가 컨센서스에 의해 상기 투표 트랜잭션 데이터를 검증하는 경우에, 상기 투표 트랜잭션 데이터에 따라 상기 노드 기기에 저장된 투표 목록을 갱신하도록 구성된 갱신 모듈 - 상기 투표 목록은 상기 노드 기기에 대한 투표의 수량을 저장하는 데 사용됨 -
    을 포함하고,
    상기 투표 목록은 상기 블록체인 시스템의 상이한 투표 방식에 따라서 갱신되고,
    상기 갱신 모듈은, 상기 블록체인 시스템에서의 투표 방식이 완전 투표인 경우, 제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표의 트랜잭션 데이터를 결정하고, 상기 사용자의 최종 투표의 트랜잭션 데이터에 기초하여 상기 노드 기기에 저장된 투표 목록을 갱신하도록 추가로 구성되는,
    장치.
  10. 제9항에 있어서,
    상기 결정 모듈은,
    상기 타깃 블록체인 내의 블록 중에서 복수의 제1 블록을 결정하도록 구성된 블록 결정 유닛 - 상기 복수의 제1 블록은 상기 노드 기기의 상기 투표 트랜잭션 데이터를 저장하도록 구성됨 -; 및
    상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 미리 설정된 수량의 대표 노드 기기를 결정하도록 구성된 대표 노드 기기 결정 유닛을 포함하는, 장치.
  11. 제10항에 있어서,
    상기 대표 노드 기기 결정 유닛은,
    상기 복수의 제1 블록에 저장된 투표 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하도록 구성된 투표 수량 결정 서브유닛; 및
    투표 수량에 의한 내림차순으로 상기 블록체인 시스템 내의 상기 미리 설정된 수량의 대표 노드 기기를 결정하도록 구성된 대표 노드 기기 결정 서브유닛을 포함하는, 장치.
  12. 제11항에 있어서,
    상기 블록체인 시스템에서의 투표 방식은 증분 투표이고, 상기 투표 수량 결정 서브유닛은 상기 복수의 제1 블록에 저장된 사용자의 트랜잭션 데이터에 따라 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표 수량을 결정하도록 구성되는, 장치.
  13. 제11항에 있어서,
    상기 블록체인 시스템에서의 투표 방식은 완전 투표이고, 상기 투표 수량 결정 서브유닛은 상기 복수의 제1 블록에 저장된 트랜잭션 데이터로부터 사용자의 최종 투표의 트랜잭션 데이터를 결정하고, 상기 사용자의 최종 투표의 트랜잭션 데이터에 기초하여 상기 블록체인 시스템 내의 상기 노드 기기에 대한 투표의 수량을 결정하도록 구성되는, 장치.
  14. 제9항에 있어서,
    상기 투표에 참여하는 각각의 사용자의 투표에 가중치가 설정되는, 장치.
  15. 제14항에 있어서,
    상기 각각의 사용자의 가중치는 사용자 파라미터에 기초하여 설정되고, 상기 사용자 파라미터는 계정 잔고 또는 신용 값을 포함하는, 장치.
  16. 프로세서 및 메모리를 포함하는 컴퓨터 기기로서,
    상기 메모리는 컴퓨터로 판독 가능한 명령어를 저장하고, 상기 컴퓨터로 판독 가능한 명령어는 상기 프로세서에 의해 실행될 때, 상기 프로세서로 하여금 제1항 내지 제8항 중 어느 한 항에 따른 방법에서의 작업을 수행하게 하는,
    컴퓨터 기기.
  17. 컴퓨터로 판독 가능한 명령어를 저장하는, 컴퓨터로 판독 가능한 비휘발성 저장 매체로서,
    상기 컴퓨터로 판독 가능한 명령어는 하나 이상의 프로세서에 의해 실행될 때, 상기 하나 이상의 프로세서로 하여금 제1항 내지 제8항 중 어느 한 항에 따른 방법에서의 작업을 수행하게 하는,
    컴퓨터로 판독 가능한 비휘발성 저장 매체.
  18. 삭제
  19. 삭제
  20. 삭제
KR1020207032565A 2018-09-07 2019-09-03 대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체 KR102444468B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201811046267.9 2018-09-07
CN201811046267.9A CN109165945B (zh) 2018-09-07 2018-09-07 代表节点设备选举方法、装置、计算机设备及存储介质
PCT/CN2019/104141 WO2020048436A1 (zh) 2018-09-07 2019-09-03 代表节点设备选举方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
KR20200140897A KR20200140897A (ko) 2020-12-16
KR102444468B1 true KR102444468B1 (ko) 2022-09-16

Family

ID=64894393

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207032565A KR102444468B1 (ko) 2018-09-07 2019-09-03 대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체

Country Status (7)

Country Link
US (1) US11792006B2 (ko)
EP (1) EP3848875B1 (ko)
JP (1) JP6990329B2 (ko)
KR (1) KR102444468B1 (ko)
CN (1) CN109165945B (ko)
SG (1) SG11202011173XA (ko)
WO (1) WO2020048436A1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109165945B (zh) * 2018-09-07 2021-04-16 腾讯科技(深圳)有限公司 代表节点设备选举方法、装置、计算机设备及存储介质
CN109327528B (zh) * 2018-10-31 2020-10-20 创新先进技术有限公司 一种基于区块链的节点管理方法和装置
CN109639837B (zh) * 2019-01-31 2021-04-06 东南大学 基于信任机制的区块链DPoS共识方法
CN110298641B (zh) * 2019-06-12 2022-08-05 广东投盟科技有限公司 区块链的规则更新方法、装置、区块链节点及网络
CN110380847B (zh) * 2019-07-01 2021-11-19 创新先进技术有限公司 一种区块链共识方法和装置
CN110401541A (zh) * 2019-07-26 2019-11-01 深圳市网心科技有限公司 基于EC-Schnoor签名算法的门限投票方法、系统及相关设备
CN110505064A (zh) * 2019-07-26 2019-11-26 深圳市网心科技有限公司 基于EC-Schnoor签名算法的门限投票方法、系统及相关设备
CN110401537A (zh) * 2019-07-26 2019-11-01 深圳市网心科技有限公司 基于bls签名算法的门限投票方法、系统及相关设备
CN110717761B (zh) * 2019-12-12 2020-04-03 腾讯科技(深圳)有限公司 一种数据处理方法、装置及计算机存储介质
CN111416843A (zh) * 2020-03-06 2020-07-14 厦门区块链云科技有限公司 一种区块链社群超级节点竞选方法
CN112015811A (zh) * 2020-03-16 2020-12-01 支付宝(杭州)信息技术有限公司 用于区块链系统的节点管理的方法、节点和计算设备
CN111414373B (zh) * 2020-03-18 2023-09-19 深圳市迅雷网络技术有限公司 一种共识方法和共识系统
CN111432014B (zh) * 2020-03-30 2023-05-05 上海玳鸽信息技术有限公司 一种区块链共识算法中主节点选取的方法和装置
CN113472825B (zh) * 2020-03-30 2023-01-13 中国移动通信集团设计院有限公司 基于区块链的NB-IoT中终端交易处理方法及装置
CN114666327B (zh) * 2020-12-23 2023-12-19 富泰华工业(深圳)有限公司 基于区块链交易的区块打包方法、装置及电子设备
CN112910982B (zh) * 2021-01-27 2023-06-16 网易(杭州)网络有限公司 一种联盟链的节点准入方法、装置、电子设备及存储介质
CN113032489B (zh) * 2021-03-29 2023-07-21 湖北央中巨石信息技术有限公司 一种基于区块链的异步共识方法及系统及装置及介质
CN113364871B (zh) * 2021-06-07 2022-05-17 杭州溪塔科技有限公司 一种基于智能合约的节点选举方法、装置及电子设备
CN113364874B (zh) * 2021-06-09 2022-06-10 网易(杭州)网络有限公司 基于区块链的节点同步方法、装置、存储介质及服务器
CN115514608B (zh) * 2021-06-22 2023-06-06 腾讯科技(深圳)有限公司 一种区块共识方法、装置、设备及存储介质
CN113596174B (zh) * 2021-08-06 2022-02-18 环球数科集团有限公司 一种区块链节点部署与选举的装置
CN113726758A (zh) * 2021-08-25 2021-11-30 百保(上海)科技有限公司 基于区块链的数据隐私计算方法及系统
CN114189522B (zh) * 2021-10-15 2024-04-16 敏博科技(武汉)有限公司 一种车联网中基于优先级的区块链共识方法及系统
CN114124961A (zh) * 2021-11-02 2022-03-01 杭州复杂美科技有限公司 区块确认方法、计算机设备和存储介质
CN114362963A (zh) * 2022-01-07 2022-04-15 南京市中西医结合医院 基于算力证明的治未病场景下联盟链主节点选举算法
CN114422155B (zh) * 2022-03-30 2022-08-02 杭州趣链科技有限公司 提案共识执行方法、区块链系统、设备和存储介质
CN114884617B (zh) * 2022-05-07 2023-12-26 深圳北宸博裕科技有限公司 区块传输方法、计算机设备和存储介质
CN115412419A (zh) * 2022-08-29 2022-11-29 福建乐摩物联科技有限公司 一种自组网主节点选举及数据同步方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101837169B1 (ko) * 2016-12-29 2018-03-09 주식회사 코인플러그 영지식 증명 알고리즘을 사용하여 머클 트리 구조의 블록체인 기반 비밀 전자 투표 서비스를 제공하기 위한 방법, 및 이를 이용한 투표 코인 발행 서버, 투표 토큰 분배 서버 및 투표 지원 서버
KR101877850B1 (ko) * 2017-07-21 2018-07-13 김홍수 블록체인을 이용한 옐로우 페이지 기반 통화 서비스 제공 방법

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10304143B2 (en) * 2016-05-05 2019-05-28 Lance Timothy Kasper Consensus system for manipulation resistant digital record keeping
CN105681301B (zh) * 2016-01-16 2019-03-12 杭州复杂美科技有限公司 区块链上的结算方法
CN106228446B (zh) * 2016-05-12 2019-09-13 北京众享比特科技有限公司 基于私有区块链的资产交易平台系统及方法
US10204341B2 (en) * 2016-05-24 2019-02-12 Mastercard International Incorporated Method and system for an efficient consensus mechanism for permissioned blockchains using bloom filters and audit guarantees
US10360191B2 (en) * 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
US10621510B2 (en) * 2016-11-09 2020-04-14 Cognitive Scale, Inc. Hybrid blockchain data architecture for use within a cognitive environment
CN106850536B (zh) * 2016-11-30 2020-01-07 北京瑞卓喜投科技发展有限公司 区块链共识方法及系统
CN106603698A (zh) * 2016-12-28 2017-04-26 北京果仁宝科技有限公司 基于dpos的区块链共识方法和节点
CN106878071B (zh) * 2017-01-25 2020-09-15 上海钜真金融信息服务有限公司 一种基于Raft算法的区块链共识机制
WO2018149505A1 (en) * 2017-02-17 2018-08-23 Nokia Technologies Oy Voting-consensus distributed ledger
CN106920167A (zh) * 2017-02-24 2017-07-04 北京航空航天大学 一种基于p2p金融的区块链机制与共识算法
WO2018158936A1 (ja) * 2017-03-03 2018-09-07 日本電気株式会社 ブロックチェーン管理装置、ブロックチェーン管理方法及びプログラム
CN108241968B (zh) * 2017-03-26 2020-08-14 杭州复杂美科技有限公司 前置机参与区块链共识的方法
US11095432B2 (en) * 2017-04-05 2021-08-17 Samsung Sds Co., Ltd. System for processing data based on blockchain and operating method thereof
CN107341660B (zh) * 2017-05-27 2021-06-29 唐盛(北京)物联技术有限公司 一种区块链底层共识机制以及基于该共识机制的区块链系统
CN107301600B (zh) * 2017-06-23 2021-07-20 北京天德科技有限公司 一种跨链交易的区块链互联网模型的核心构建方法
CN107248076A (zh) * 2017-06-24 2017-10-13 北京天德科技有限公司 一种双链式跨链交易的区块链互联网模型的核心算法
CN107423962A (zh) * 2017-07-11 2017-12-01 成都励睿德企业管理有限公司 基于奖惩的数据区块链授权参与共识的拜占庭容错方法及其奖惩方法
EP3721578B1 (en) * 2017-12-08 2022-09-07 Ping Identity Corporation Methods and systems for recovering data using dynamic passwords
CN108134706B (zh) 2018-01-02 2020-08-18 中国工商银行股份有限公司 区块链多活高可用系统、计算机设备以及方法
CN108108487B (zh) * 2018-01-10 2019-11-22 杭州复杂美科技有限公司 一种区块链的共识方法
CN108416593B (zh) * 2018-03-20 2021-02-12 杨鉴 一种基于网络分散度证明的区块链共识方法和系统
CN109165945B (zh) * 2018-09-07 2021-04-16 腾讯科技(深圳)有限公司 代表节点设备选举方法、装置、计算机设备及存储介质
US11347809B2 (en) * 2018-11-13 2022-05-31 Adobe Inc. Performing attribution modeling for arbitrary analytics parameters

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101837169B1 (ko) * 2016-12-29 2018-03-09 주식회사 코인플러그 영지식 증명 알고리즘을 사용하여 머클 트리 구조의 블록체인 기반 비밀 전자 투표 서비스를 제공하기 위한 방법, 및 이를 이용한 투표 코인 발행 서버, 투표 토큰 분배 서버 및 투표 지원 서버
KR101877850B1 (ko) * 2017-07-21 2018-07-13 김홍수 블록체인을 이용한 옐로우 페이지 기반 통화 서비스 제공 방법

Also Published As

Publication number Publication date
EP3848875B1 (en) 2023-07-12
WO2020048436A1 (zh) 2020-03-12
EP3848875A4 (en) 2021-10-27
SG11202011173XA (en) 2020-12-30
EP3848875A1 (en) 2021-07-14
US20210021419A1 (en) 2021-01-21
JP2021524967A (ja) 2021-09-16
CN109165945A (zh) 2019-01-08
JP6990329B2 (ja) 2022-01-12
EP3848875C0 (en) 2023-07-12
CN109165945B (zh) 2021-04-16
KR20200140897A (ko) 2020-12-16
US11792006B2 (en) 2023-10-17

Similar Documents

Publication Publication Date Title
KR102444468B1 (ko) 대표 노드 장치를 선택하기 위한 방법, 기기, 컴퓨터 장치 및 저장 매체
US20210027310A1 (en) Method and apparatus for electing representative node device, computer device, and storage medium
Bano et al. Consensus in the age of blockchains
EP3640823B1 (en) Service data storage method, device, storage medium, and electronic device
Luu et al. {SmartPool}: Practical decentralized pooled mining
US11469891B2 (en) Expendable cryptographic key access
US20210083856A1 (en) Improved hardware security module management
US20210021412A1 (en) Method and apparatus for electing representative node device, computer device, and storage medium
US20190310900A1 (en) System, method, and computer-readable medium for allocating digital data processing system resources
Qin et al. Applying private information retrieval to lightweight bitcoin clients
US20200301944A1 (en) Method and apparatus for storing off-chain data
JP2024505692A (ja) ブロックチェーンネットワークに基づくデータ処理方法、装置及びコンピュータ機器
CN111464353A (zh) 区块链节点管理方法、装置、计算机以及可读存储介质
CN110597825A (zh) 基于区块链的数据处理方法、装置及节点设备
JP7181455B2 (ja) ブロックチェーンシステム、承認端末、利用者端末、履歴管理方法、および、履歴管理プログラム
US11662992B2 (en) Algorithm downloading method, device, and related product
WO2020024474A1 (zh) 一种支持数字凭证交易的方法和装置
WO2019243235A1 (en) Distributed ledger technology
CN115730933A (zh) 基于区块链的数据处理方法、装置、设备及存储介质
Yuan et al. AME Blockchain: An Architecture Design for Closed-Loop Fluid Economy Token System
CN115150141B (zh) 一种单点登录方法以及单点管理设备
WO2022224991A1 (ja) 制御方法、端末、及び、プログラム
WO2023184562A1 (en) System and methods for auditable data management
Poças NIBOXI: Enhancing sharded blockchains with a consensusless fast-path
GB2563390A (en) Expendable cryptographic key access

Legal Events

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