TW201913515A - 選擇共識節點的處理方法、裝置及伺服器 - Google Patents

選擇共識節點的處理方法、裝置及伺服器 Download PDF

Info

Publication number
TW201913515A
TW201913515A TW107115534A TW107115534A TW201913515A TW 201913515 A TW201913515 A TW 201913515A TW 107115534 A TW107115534 A TW 107115534A TW 107115534 A TW107115534 A TW 107115534A TW 201913515 A TW201913515 A TW 201913515A
Authority
TW
Taiwan
Prior art keywords
node
equity
voting
shareholder
nodes
Prior art date
Application number
TW107115534A
Other languages
English (en)
Other versions
TWI684943B (zh
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 TW201913515A publication Critical patent/TW201913515A/zh
Application granted granted Critical
Publication of TWI684943B publication Critical patent/TWI684943B/zh

Links

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
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3265Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate chains, trees or paths; Hierarchical trust model
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M5/00Devices for bringing media into the body in a subcutaneous, intra-vascular or intramuscular way; Accessories therefor, e.g. filling or cleaning devices, arm-rests
    • A61M5/14Infusion devices, e.g. infusing by gravity; Blood infusion; Accessories therefor
    • A61M5/1407Infusion of two or more substances
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M5/00Devices for bringing media into the body in a subcutaneous, intra-vascular or intramuscular way; Accessories therefor, e.g. filling or cleaning devices, arm-rests
    • A61M5/14Infusion devices, e.g. infusing by gravity; Blood infusion; Accessories therefor
    • A61M5/142Pressure infusion, e.g. using pumps
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M5/00Devices for bringing media into the body in a subcutaneous, intra-vascular or intramuscular way; Accessories therefor, e.g. filling or cleaning devices, arm-rests
    • A61M5/14Infusion devices, e.g. infusing by gravity; Blood infusion; Accessories therefor
    • A61M5/168Means for controlling media flow to the body or for metering media to the body, e.g. drip meters, counters ; Monitoring media flow to the body
    • A61M5/172Means for controlling media flow to the body or for metering media to the body, e.g. drip meters, counters ; Monitoring media flow to the body electrical or electronic
    • 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/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H20/00ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
    • G16H20/10ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients
    • G16H20/17ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to drugs or medications, e.g. for ensuring correct administration to patients delivered via infusion or injection
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • 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
    • 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
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M5/00Devices for bringing media into the body in a subcutaneous, intra-vascular or intramuscular way; Accessories therefor, e.g. filling or cleaning devices, arm-rests
    • A61M5/14Infusion devices, e.g. infusing by gravity; Blood infusion; Accessories therefor
    • A61M5/142Pressure infusion, e.g. using pumps
    • A61M2005/14208Pressure infusion, e.g. using pumps with a programmable infusion control system, characterised by the infusion program
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61MDEVICES FOR INTRODUCING MEDIA INTO, OR ONTO, THE BODY; DEVICES FOR TRANSDUCING BODY MEDIA OR FOR TAKING MEDIA FROM THE BODY; DEVICES FOR PRODUCING OR ENDING SLEEP OR STUPOR
    • A61M2205/00General characteristics of the apparatus
    • A61M2205/50General characteristics of the apparatus with microprocessors or computers
    • A61M2205/52General characteristics of the apparatus with microprocessors or computers with memories providing a history of measured variating parameters of apparatus or patient
    • 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
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

本說明書實施例揭露了一種選擇共識節點處理方法、裝置及伺服器。所述方法的一個實施例可以包括:獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。

Description

選擇共識節點的處理方法、裝置及伺服器
本說明書一個或多個實施例屬於電腦資料處理技術領域,尤其關於一種選擇共識節點處理方法、裝置及伺服器。
區塊鏈技術通常是一種去中心化的分散式資料庫技術,其特點包括去中心化、公開透明、不可篡改、可信任等,可以用於記錄公有或私有對等網路中的資料資訊。為了保障區塊鏈中資料的一致性,在區塊鏈中採用共識演算法來產生和更新資料。PBFT(Practical Byzantine Fault Tolerance,實用拜占庭容錯演算法)為業內常用的一種分散式一致性的共識演算法。   PBFT是一種狀態機副本複製演算法,通常是在區塊鏈眾多的節點中選擇的部分節點作為共識節點,參與共識處理。一般地,參與共識的共識節點數量可以在4至11個範圍內。目前,在PBFT中,選擇共識節點的演算法主要包括隨機選擇和固定選擇。其中,隨機選擇共識節點的難點包括協調所有節點認可新選擇出的共識節點的演算法設計,其中選擇節點本身也是一次複雜的共識過程。固定選擇共識節點在工程實現上面相比隨機選擇較為簡單,如將源碼分發給所有節點即可,但這方式在出現故障後或者因為其他原因更新共識節點時變得較為困難。   目前業內需要一種PBFT中更加易於實現、便於維護、高效、可靠的選擇共識節點處理方案。
本說明書的一個或多個實施例目的在於提供一種選擇共識節點處理方法、裝置及伺服器,可以在PBFT中更加簡單、高效、可靠的選擇共識節點。   本說明書的一個或多個實施例提供的一種選擇共識節點處理方法、裝置及伺服器是包括以下方式實現的:   一種選擇共識節點處理方法,所述方法包括:   獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   一種選擇共識節點處理裝置,所述裝置包括:   投票結果獲取模組,用於獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   投票結果確定模組,用於根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   共識節點確定模組,用於根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   一種選擇共識節點處理裝置,包括處理器以及用於儲存處理器可執行指令的記憶體,所述處理器執行所述指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   一種伺服器,包括至少一個處理器以及用於儲存處理器可執行指令的記憶體,所述處理器執行所述指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   本說明書的一個或多個實施例提供的一種選擇共識節點處理方法、裝置及伺服器,可以透過股東節點進行股權投票,根據投票結果中擁有股權的節點所占股權的數量來選擇參與共識的節點。該方法易於工程實現,選擇出來的結果真實有效,且投票結果為全網公開,能夠被其他節點認同。利用本說明書實施方案,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。
為了使本技術領域的人員更好地理解本說明書中的技術方案,下面將結合本說明書實施例中的圖式,對本說明書實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本說明書一部分實施例,而不是全部的實施例。基於本說明書中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本說明書保護的範圍。   雖然本說明書提供了如下述實施例或圖式所示的方法操作步驟或裝置結構,但基於常規或者無需創造性的勞動在所述方法或裝置中可以包括更多或者部分合併後更少的操作步驟或模組單元。在邏輯性上不存在必要因果關係的步驟或結構中,這些步驟的執行順序或裝置的模組結構不限於本說明書實施例或圖式所示的執行順序或模組結構。所述的方法或模組結構的在實際中的裝置、伺服器或終端產品應用時,可以按照實施例或者圖式所示的方法或模組結構進行循序執行或者並存執行(例如並行處理器或者多執行緒處理的環境、甚至包括分散式處理、伺服器集群的實施環境)。   PBFT是一種狀態機副本複製演算法,即將服務作為狀態機進行建模。所述的服務通常指伺服器上面的具體應用服務,比如為了完成一筆轉帳,轉帳這個服務可以以狀態機進行建模。狀態機在分散式系統的不同節點進行副本複製,通常每個狀態機的副本都保存了服務的狀態,同時實現服務的操作。當區塊鏈中的節點數量超過一定數量以後,全部參與共識會導致整個共識效率低下,因此需要透過一種方法從區塊鏈的節點中選擇出部分節點作為共識節點,參與共識,如進行建模產生副本,其他節點則僅僅同步共識結果(如副本複製),不參與共識過程。   在PBFT共識演算法中,通常情況下參與共識節點數量控制在4至11個範圍內。如果節點數量少於4個會導致PBFT演算法失效,節點數量如果超過11個,則出現共識性能會隨著節點數量增加而下降。為了平衡拜占庭容錯和共識性能,需要在一大批節點中選擇部分節點作為共識節點,參與共識。所述的共識通常指區塊鏈中的分散式節點使用相同的演算法、相同的資料格式(或相同的處理協定)來產生和更新資料,可以使用不同語言實現。本說明書實施例提供一種有效的基於股權投票的PBFT共識節點選擇方法,該方法應該易於工程實現,選擇出來的節點真實有效,且能夠被其他節點所認同。具體的一個實施方式中,可以引入證書伺服器,所述證書伺服器的公開金鑰可以寫入區塊鏈的創世塊(區塊鏈的一個資料儲存區塊)。可以設定存取區塊鏈中的所有節點需要向根證書伺服器申請根證書,根證書可以用於證明節點身分的合法性。   在本實施例中,可以預先設定一個總股權數量,例如可以設定區塊鏈中所有節點的總股權的數量為100份。本說明書實施例中,每份股權的權力(或權重)可以設定為相等,股權可以從區塊鏈的一個節點轉移到另一個節點。所述的股權可以視為是一種資產,可以在區塊鏈上面進行交易,交易確認過程中可以基於創世塊的記錄資訊證明該股權存在的合法性。所述的總股權數量可以根據實際的節點數量或實施環境等相應的設定總份數,通常情況下,設定的總股權數量全域唯一且不變。當然,本說明書不排除其他的實施例中,可以根據業務處理需求增加或減少總股權資料量,例如為新存取的某個重要節點設定自帶10份股權。這些總股權可以根據業務規則分配給相應的節點,具體的分配規則可以根據節點規模、業務量、重要程度等進行設定。在本說明書的一個或多個實施例中,從所述預設總股權中分配到股權的節點可以稱為股東節點,或者可以理解為,所述股東節點佔有所述預設總股權中至少一份股權的節點。圖1是本說明提供的一個實施例中預設總股份的節點分配以及引入證書伺服器的區塊鏈節點結構示意圖。   因此,當在PBFT中需要進行共識節點選擇時,具有股權的節點可以選擇投票的期望節點進行投票,投票的結果可以向區塊鏈全網廣播。投票結束後,每個節點可以收到同樣的股權投票結果,然後可以根據各個節點所包括的股權的數量確定共識節點的選擇結果。具體的一種實施例如圖2所示,本說明書提供的一種選擇共識節點處理方法的一種實施例中,所述方法可以包括:   S2:獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點。   股東節點選擇進行股權投票的節點可以稱為期望節點,期望節點可以包括自身含有股權的股東節點,也可以包括在投票之前沒有股權的節點。一種實施方式中,擁有股權的節點可以自主選擇對哪個節點進行投票。選擇期望節點的依據可以包括但不限於基於節點服務性能的穩定性、節點業務容量,甚至基於作業人員配置的選擇策略等。具體地,本說明書提供的一個實施例中,所述選擇的期望節點可以包括:   S201:所述股東節點根據預設的共識節點選取條件選擇的至少一個進行股權投票的節點。   所述的預設的共識節點選取條件可以包括前述所述的基於節點服務性能的穩定性、節點業務容量、基於作業人員配置的選擇策略等中的至少一項。股東節點進行投票時,可以選擇對自身節點進行投票,也可以對除自身外的其他節點進行投票。   在本說明書實施例中,持有股權的節點(股東節點)可以參與投票,沒有股權的普通節點無法進行投票。   一種實施方式中,股東節點投票的總數可以設定不超過自身節點擁有的可投票股權數量。所述的可投票股權不包括在目前選擇共識節點的處理過程中其他股東節點投給自身節點的股權。因此,本說明書提供的所述方法的另一個實施例中,所述股權可以被設定成,包括:   在單次共識節點選擇的處理過程中,所述股權在區塊鏈的節點之間進行投票轉移的有效次數被設定成1次。   在本實施例中,股東節點可以投票給自己,也可以選擇投票給其他節點。股東節點無法將別人給自己的投票轉出去,單次共識節點選擇的投票過程中,每份股權只能被股東節點進行一次投票。   具體的一個示例中,例如節點node1自身擁有10份股權,這10份股權屬於可投票股權。若節點node1向節點node2投了6份股權,節點node3向節點node1投了3份股權。此時雖然節點node1擁有7份股權,但由於其中3份股權是由其他節點投給的節點node1,不屬於可投票股權,因此,此時節點node1還有4份股權可以進行股權投票。節點node1可以選擇將股權投給自己,也可以繼續給其他期望節點。   本說明書其他的實施例中,可以對股東節點進行股權投票的投票結果進行數位簽章,這樣可以防止其他節點偽造股東節點的投票結果,也可以作為投票結果的驗證資料,防止股東節點都自己的投票結果抵賴,大大提高股權投票結果的可靠性和安全性。因此,本說明書提供的一個實施例中,所述股權投票結果可以包括:   所述股東節點使用所述股東節點的私密金鑰對所述期望節點進行股權投票後產生的投票結果進行簽名,產生的股權投票結果;   相應地,所述方法還包括,在獲取所述股權投票結果之後,所述方法還包括:   S20:利用相應的股東節點的公開金鑰驗證所述股權投票結果。   圖3是本說明書所述方法另一個實施例的方法流程示意圖。在本實施例中,可以採用非對稱加密中的私密金鑰對投票結果進行簽名,對應的公開金鑰可以廣播到其他節點。相應的,接收到該私密金鑰簽名後的結果可以利用對應節點的公開金鑰進行驗證,確認股權投票結果以及股權投票結果的發送方是否有效(合法)。如果驗證股權投票結果無效,則可以發出告警或進行其他預設處理操作。   S4:根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量。   股東節點投票後,其股權投票結果可以廣播到區塊鏈中的各個節點。這樣區塊鏈中的各個節點都可以收到該股東節點的股權投票結果,並且每個節點收到的可以是相同的股權投票結果。本實施例中,所有股東結果投票後,股權在節點中的分配結構通常會發生變化,例如原來用於股權的節點在投票將所有的股權全部投給其他節點,而自身沒有收到其他節點的投票,此時該節點的股權數量為0,即從股權投票前的股東節點變為投票後的無股權的普通節點。另一些節點中,股權投票前為沒有股權的普通節點,在股權投票後擁有股權,則變成了新的股東節點。   因此,股權節點投票結束後,股東節點或普通節點可以根據接收到的股權投票結果,或者以及自身節點的股權投票結果,確定每個股東節點所擁有的股權的數量。在本實施例實施場景中,在股權投票之後,所有股東節點的股權的數量總和與股權投票之前相同。   具體的一個示例中,股權投票之前股權的分配情況為股東節點node10擁有20份股權、股東節點node11擁有25份股權、股東節點node15擁有30份股權、股東節點node8擁有10份股權、股東節點node6擁有15份股權。股權投票結束後,所有的節點都會收到相同的股權投票結果。具體的在股東節點node10一側而言,其收到的股權投票結果可以為:股東節點node10擁有9份股權、股東節點node11擁有20份股權、股東節點node15擁有35份股權、股東節點node8擁有3份股權、股東節點node6擁有20份股權、股東節點node7擁有13份股權。相比股權投票之前,股權投票只有不僅原股東節點用於的股權份數發生了變換,還多出一個新的股東節點node7,並擁有13份股權。   S6:根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   得到股權投票結果後,可以根據目前各個股東節點中每個股東所擁有的股權的數量來確定此次共識節點的選擇結果。具體的選擇出的共識節點的數量、選擇方式可以根據實際應用場景或處理需求進行設定。例如根據擁有股權數量的多少選擇股權數量最多的前5個股東節點作為此次的共識節點。   本說明書提供的所述方法的另一種實施場景中,股權投票後可能出現擁有股權數量相應的節點,例如節點node10和node11分別擁有20份股權,但由於共識節點數量的限制(例如此次需要選出5個共識節點,此時已經確定出4個共識節點,確定出的每個共識節點擁有的股權數量大於20),需要在節點node10和node11中選出一個座位共識節點。本說明書提供的一個實施方式中,在股權相等時可以根據節點根證書產生的先後順序選擇共識節點。具體的,另一種實施例中,所述根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果,可以包括:   S601:若所述股權投票後股東節點中包括股權數量相等的節點,則從所述股權數量相等的節點中選擇共識節點時,根據節點根證書產生的時間先後順序選擇共識節點,所述的節點根證書包括區塊鏈中的節點向指定證書伺服器申請的用於證明節點身分的資料資訊。   如前述所述,一個實施方法中,區塊鏈中的節點在存取區塊鏈時需要向指定的一個證書伺服器申請根證書,該根證書可以證明節點的身分是合法的。愈先存取區塊鏈的節點其擁有證書的時間節點越早,相應的該節點的根證書產生的時間也愈早。一般地,早期存取區塊鏈的節點其運行參數、伺服器性能、資料處理策略等更加穩定、最佳化、可靠。因此,本實施例中在股權相等時可以優先選擇根證書產生的時間較早的節點作為共識節點。具體的一個示例中,例如根證書採用包括產生時間的資訊進行編號時,可以根據根證書編號從小到大的順序選擇共識節點。   圖4是利用本說明書實施例在區塊鏈網路中選擇共識節點的一個場景示意圖。本說明書的一個或多個實施例提供的一種選擇共識節點處理方法,可以透過股東節點進行股權投票,根據投票結果中擁有股權的節點所占股權的數量來選擇參與共識的節點。該方法易於工程實現,選擇出來的結果真實有效,且投票結果為全網公開,能夠被其他節點認同。實施本說明書實施方案,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。   基於上述所述的選擇共識節點處理方法,本說明書還提供一種選擇共識節點處理裝置。所述的裝置可以包括使用了本說明書一個或多個實施例所述方法的系統(包括分散式系統)、軟體(應用)、模組、元件、伺服器、用戶端、量子電腦等並結合必要的實施硬體的裝置。基於同一創新構思,本說明書一個或多個實施例提供的一種實施例中的裝置如下面的實施例所述。由於裝置解決問題的實現方案與方法相似,因此本說明書一個或多個具體的裝置的實施可以參見前述方法的實施,重複之處不再贅述。以下所使用的,術語“單元”或者“模組”可以實現預定功能的軟體和/或硬體的組合。儘管以下實施例所描述的裝置較佳地以軟體來實現,但是硬體,或者軟體和硬體的組合的實現也是可能並被構想的。具體地,圖5是本說明書提供的一種選擇共識節點處理裝置實施例的模組結構示意圖,如圖5所示,所述裝置可以包括:   投票結果獲取模組101,可以用於獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   投票結果確定模組102,可以用於根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   共識節點確定模組103,可以用於根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   所述的總股權數量可以根據實際的節點數量或實施環境等相應的設定總份數,通常情況下,設定的總股權數量全域唯一且不變。這些總股權可以根據業務規則分配給相應的節點,具體的分配規則可以根據節點規模、業務量、重要程度等進行設定。   當在PBFT中需要進行共識節點選擇時,具有股權的節點可以選擇投票的期望節點進行投票,投票的結果可以向區塊鏈全網廣播。投票結束後,每個節點可以收到同樣的股權投票結果,然後可以根據各個節點所包括的股權的資料確定共識節點的選擇結果。利用本說明書所述裝置的實施方案,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。   本說明書提供所述裝置的另一種實施例中,若所述股權投票後股東節點中包括股權數量相等的節點,則所述共識節點確定模組103從所述股權數量相等的節點中選擇共識節點時,可以根據節點根證書產生的時間先後順序選擇共識節點,所述的節點根證書包括區塊鏈中的節點向指定證書伺服器申請的用於證明節點身分的資料資訊。   圖6是本說明書提供的另一種選擇共識節點處理裝置實施例的模組結構示意圖。如圖6所示,本說明書提供所述裝置的另一種實施例中,所述股權投票結果可以包括:   所述股東節點使用所述股東節點的私密金鑰對所述期望節點進行股權投票後產生的投票結果進行簽名,產生的股權投票結果;   相應地,所述裝置還可以包括:   驗證模組104,可以用於在獲取所述股權投票結果之後,利用相應的股東節點的公開金鑰驗證所述股權投票結果。   一種實施方式中,擁有股權的節點可以自主選擇對哪個節點進行投票。選擇期望節點的依據可以包括但不限於基於節點服務性能的穩定性、節點業務容量,甚至基於作業人員配置的選擇策略等。本說明書提供所述裝置的另一種實施例中,所述選擇的期望節點可以包括:   所述股東節點根據預設的共識節點選取條件選擇的至少一個進行股權投票的節點。   一種實施方式中,股東節點投票的總數可以設定不超過自身節點擁有的可投票股權數量。所述的可投票股權不包括在目前選擇共識節點的處理過程中其他股東節點投給自身節點的股權。因此,所述裝置的另一種實施例中,所述股權可以被設定成,包括:   在單次共識節點選擇的處理過程中,所述股權在區塊鏈的節點之間進行投票轉移的有效次數被設定成1次。   本實施例中可以設定單次共識節點選擇的投票過程中,每份股權只能被股東節點進行一次投票,股東節點無法將別人給自己的投票轉出去。   上述實施例所述的裝置,具體的可以在單個節點上實現,可以包括普通節點或所述股東節點。因為所有的投票結果是廣播到區塊鏈網路中各個節點的,所有節點接收到的股權投票結果相同,因此每個節點都可以根據股權投票結果來確認共識節點的選擇結果。   需要說明的是本說明書一個或多個上面所述的裝置根據相關方法實施例的描述還可以包括其他的實施方式。本說明書中的各個實施例均採用漸進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於模組裝置類實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   上述對本說明書特定實施例進行了描述。其它實施例在所附申請專利範圍的範圍內。在一些情況下,在申請專利範圍中記載的動作或步驟可以按照不同於實施例中的順序來執行並且仍然可以實現期望的結果。另外,在圖式中描繪的過程不一定要求示出的特定順序或者連續順序才能實現期望的結果。在某些實施方式中,多工處理和並行處理也是可以的或者可能是有利的。   本說明書提供的一個或多個提供的一種選擇共識節點處理裝置,可以透過股東節點進行股權投票,根據投票結果中擁有股權的節點所占股權的數量來選擇參與共識的節點。該方法易於工程實現,選擇出來的結果真實有效,且投票結果為全網公開,能夠被其他節點認同。利用本說明書實施方案,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。   本說明書一個或多個提供的選擇共識節點處理方法可以在電腦中由處理器執行相應的程式指令來實現,如使用windows作業系統的c++語言在PC端實現,或其他例如Linux、android、iOS系統相應應用設計語言的實現等,以及基於量子電腦的處理邏輯實現等。具體的,本說明書一個或多個提供的一種選擇共識節點處理裝置的一種實施例中,所述裝置可以包括處理器以及用於儲存處理器可執行指令的記憶體,所述處理器執行所述指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   需要說明的是本說明書一個或多個上面所述的裝置根據相關方法實施例的描述還可以包括其他的實施方式。本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於硬體+程式類實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   上述所述的裝置或方法可以用於區塊鏈節點業務系統的伺服器中,用來選擇或確認區塊鏈網路中共識節點。共識節點處理伺服器中,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。所述的伺服器可以包括使用了本說明書的一個或多個所述方法或一個或多個實施例裝置的伺服器集群、系統(包括分散式系統)、軟體(應用)、邏輯閘電路裝置、量子電腦等並結合必要的實施硬體的終端裝置。圖7是本說明書提供的伺服器一種實施例的結構示意圖。具體地,可以包括至少一個處理器以及用於儲存處理器可執行指令的記憶體,所述處理器執行所述指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,所述股東節點包括擁有預設總股權中至少一份股權的節點;   根據所述股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;   根據所述股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。   需要說明的,上述所述的硬體+程式的裝置或伺服器根據方法實施例的描述還可以包括其他的實施方式,具體的實現方式可以參照方法實施例的描述,在此不作一一贅述。   本說明書的一個或多個實施例提供的一種選擇共識節點處理方法、裝置及伺服器,可以透過股東節點進行股權投票,根據投票結果中擁有股權的節點所占股權的數量來選擇參與共識的節點。該方法易於工程實現,選擇出來的結果真實有效,且投票結果為全網公開,能夠被其他節點認同。利用本說明書實施方案,可以透過股權投票後的股權占比快速選出共識節點,減少共識過程消耗,簡化共識處理步驟,提高共識節點選擇處理效率,選擇結果也更加可靠。   儘管本說明書一個或多個內容中提到股東節點選擇投票節點的依據、股權投票中有效轉移的次數限制、採用私密金鑰加密公開金鑰解密投票結果、根據投票後節點擁有股權數量確定共識節點等的資料設定、獲取、交互、計算、判斷等描述,但是,本說明書一個或多個並不局限於必須是符合行業通訊標準、標準區塊鏈資料儲存、電腦處理和儲存規則或本說明書一個或多個實施例所描述的情況。某些行業標準或者使用自訂方式或實施例描述的實施基礎上略加修改後的實施方案也可以實現上述實施例相同、等同或相近、或變形後可預料的實施效果。應用這些修改或變形後的資料獲取、儲存、判斷、處理方式等獲取的實施例,仍然可以屬於本說明書一個或多個的可選實施方案範圍之內。   在20世紀90年代,對於一個技術的改進可以很明顯地區分是硬體上的改進(例如,對二極體、電晶體、開關等電路結構的改進)還是軟體上的改進(對於方法流程的改進)。然而,隨著技術的發展,當今的很多方法流程的改進已經可以視為硬體電路結構的直接改進。設計人員幾乎都透過將改進的方法流程程式設計到硬體電路中來得到相應的硬體電路結構。因此,不能說一個方法流程的改進就不能用硬體實體模組來實現。例如,可程式設計邏輯裝置(Programmable Logic Device, PLD)(例如現場可程式設計閘陣列(Field Programmable Gate Array,FPGA))就是這樣一種積體電路,其邏輯功能由用戶對裝置程式設計來確定。由設計人員自行程式設計來把一個數位系統“整合”在一片PLD上,而不需要請晶片製造廠商來設計和製作專用的積體電路晶片。而且,如今,取代手工地製作積體電路晶片,這種程式設計也多半改用“邏輯編譯器(logic compiler)”軟體來實現,它與程式開發撰寫時所用的軟體編譯器相類似,而要編譯之前的原始代碼也得用特定的程式設計語言來撰寫,此稱之為硬體描述語言(Hardware Description Language,HDL),而HDL也並非僅有一種,而是有許多種,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)與Verilog。本領域技術人員也應該清楚,只需要將方法流程用上述幾種硬體描述語言稍作邏輯程式設計並程式設計到積體電路中,就可以很容易得到實現該邏輯方法流程的硬體電路。   控制器可以按任何適當的方式實現,例如,控制器可以採取例如微處理器或處理器以及儲存可由該(微)處理器執行的電腦可讀程式碼(例如軟體或韌體)的電腦可讀媒體、邏輯閘、開關、專用積體電路(Application Specific Integrated Circuit,ASIC)、可程式設計邏輯控制器和嵌入微控制器的形式,控制器的例子包括但不限於以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以透過將方法步驟進行邏輯程式設計來使得控制器以邏輯閘、開關、專用積體電路、可程式設計邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦。具體地,電腦例如可以為個人電腦、膝上型電腦、車載人機互動設備、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任何設備的組合。   雖然本說明書一個或多個實施例提供了如實施例或流程圖所述的方法操作步驟,但基於常規或者無創造性的手段可以包括更多或者更少的操作步驟。實施例中列舉的步驟順序僅僅為眾多步驟執行順序中的一種方式,不代表唯一的執行順序。在實際中的裝置或終端產品執行時,可以按照實施例或者圖式所示的方法循序執行或者並存執行(例如並行處理器或者多執行緒處理的環境,甚至為分散式資料處理環境)。術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、產品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、產品或者設備所固有的要素。在沒有更多限制的情況下,並不排除在包括所述要素的過程、方法、產品或者設備中還存在另外的相同或等同要素。   為了描述的方便,描述以上裝置時以功能分為各種模組分別描述。當然,在實施本說明書一個或多個實施例可以把各模組的功能在同一個或多個軟體和/或硬體中實現,也可以將實現同一功能的模組由多個子模組或子單元的組合實現等。以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或元件可以結合或者可以整合到另一個系統,或一些特徵可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通訊連接可以是透過一些介面,裝置或單元的間接耦合或通訊連接,可以是電性,機械或其它的形式。   本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以透過將方法步驟進行邏輯程式設計來使得控制器以邏輯閘、開關、專用積體電路、可程式設計邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內部包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一個流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得透過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。   這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。   這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。   在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。   記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。   電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可抹除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸媒體,可用於儲存可以被計算設備訪問的資訊。按照本文中的界定,電腦可讀媒體不包括暫態性電腦可讀媒體(transitory media),如調變的資料信號和載波。   本領域技術人員應明白,本說明書一個或多個的實施例可提供為方法、系統或電腦程式產品。因此,本說明書一個或多個實施例可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本說明書一個或多個實施例可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本說明書一個或多個實施例可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、元件、資料結構等等。也可以在分散式運算環境中實踐本說明書一個或多個實施例,在這些分散式運算環境中,由透過通訊網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括存放裝置在內的本地和遠端電腦儲存媒體中。   本說明書中的各個實施例均採用漸進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含於本說明書至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特徵進行結合和組合。   以上所述僅為本說明書一個或多個的實施例而已,並不用於限制本說明書一個或多個實施例。對於本領域技術人員來說,本說明書一個或多個實施例可以有各種更改和變化。凡在本說明書一個或多個實施例的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本說明書一個或多個的申請專利範圍之內。
S2‧‧‧方法步驟
S4‧‧‧方法步驟
S6‧‧‧方法步驟
S20‧‧‧方法步驟
101‧‧‧投票結果獲取模組
102‧‧‧投票結果確定模組
103‧‧‧共識節點確定模組
104‧‧‧驗證模組
為了更清楚地說明本說明書實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本說明書中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些圖式獲得其他的圖式。   圖1是本說明提供的一個實施例中預設總股份的節點分配以及引入證書伺服器的區塊鏈節點結構示意圖;   圖2是本說明書提供的所述方法在一個實施例場景中的處理過程示意圖;   圖3是本說明書所述方法另一個實施例的方法流程示意圖;   圖4是利用本說明書實施例在區塊鏈網路中選擇共識節點的一個場景示意圖   圖5是本說明書提供的一種選擇共識節點處理裝置實施例的模組結構示意圖;   圖6是本說明書提供的另一種選擇共識節點處理裝置實施例的模組結構示意圖;   圖7是本說明書提供的伺服器一種實施例的結構示意圖。

Claims (12)

  1. 一種選擇共識節點處理方法,該方法包括:   獲取股東節點對選擇的期望節點的股權投票結果,該股東節點包括擁有預設總股權中至少一份股權的節點;   根據該股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;以及   根據該股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。
  2. 如申請專利範圍第1項所述的一種選擇共識節點處理方法,該根據該股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果,包括:   若該股權投票後股東節點中包括股權數量相等的節點,則從該股權數量相等的節點中選擇共識節點時,根據節點根證書產生的時間先後順序選擇共識節點,該節點根證書包括區塊鏈中的節點向指定證書伺服器申請的用於證明節點身分的資料資訊。
  3. 如申請專利範圍第1項所述的一種選擇共識節點處理方法,該股權投票結果包括:   該股東節點使用該股東節點的私密金鑰對該期望節點進行股權投票後產生的投票結果進行簽名,產生的股權投票結果;以及   相應地,該方法還包括,在獲取該股權投票結果之後,該方法還包括:   利用相應的股東節點的公開金鑰驗證該股權投票結果。
  4. 如申請專利範圍第1項所述的一種選擇共識節點處理方法,該選擇的期望節點包括:   該股東節點根據預設的共識節點選取條件選擇的至少一個進行股權投票的節點。
  5. 如申請專利範圍第1項所述的一種選擇共識節點處理方法,該股權被設定成,包括:   在單次共識節點選擇的處理過程中,該股權在區塊鏈的節點之間進行投票轉移的有效次數被設定成1次。
  6. 一種選擇共識節點處理裝置,該裝置包括:   投票結果獲取模組,用於獲取股東節點對選擇的期望節點的股權投票結果,該股東節點包括擁有預設總股權中至少一份股權的節點;   投票結果確定模組,用於根據該股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;以及   共識節點確定模組,用於根據該股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。
  7. 如申請專利範圍第6項所述的一種選擇共識節點處理裝置,若該股權投票後股東節點中包括股權數量相等的節點,則該共識節點確定模組從該股權數量相等的節點中選擇共識節點時,根據節點根證書產生的時間先後順序選擇共識節點,該節點根證書包括區塊鏈中的節點向指定證書伺服器申請的用於證明節點身分的資料資訊。
  8. 如申請專利範圍第6項所述的一種選擇共識節點處理裝置,該股權投票結果包括:   該股東節點使用該股東節點的私密金鑰對該期望節點進行股權投票後產生的投票結果進行簽名,產生的股權投票結果;以及   相應地,該裝置還包括:   驗證模組,用於在獲取該股權投票結果之後,利用相應的股東節點的公開金鑰驗證該股權投票結果。
  9. 如申請專利範圍第6項所述的一種選擇共識節點處理裝置,該選擇的期望節點包括:   該股東節點根據預設的共識節點選取條件選擇的至少一個進行股權投票的節點。
  10. 如申請專利範圍第6項所述的一種選擇共識節點處理裝置,該股權被設定成,包括:   在單次共識節點選擇的處理過程中,該股權在區塊鏈的節點之間進行投票轉移的有效次數被設定成1次。
  11. 一種選擇共識節點處理裝置,包括處理器以及用於儲存處理器可執行指令的記憶體,該處理器執行該指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,該股東節點包括擁有預設總股權中至少一份股權的節點;   根據該股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;以及   根據該股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。
  12. 一種伺服器,包括至少一個處理器以及用於儲存處理器可執行指令的記憶體,該處理器執行該指令時實現:   獲取股東節點對選擇的期望節點的股權投票結果,該股東節點包括擁有預設總股權中至少一份股權的節點;   根據該股權投票結果確定股權投票後各個股東節點所擁有的股權的數量;以及   根據該股權投票後股東節點所擁有的股權的數量確定共識節點的選擇結果。
TW107115534A 2017-08-24 2018-05-08 選擇共識節點的處理方法、裝置及伺服器 TWI684943B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710736740.5 2017-08-24
CN201710736740.5A CN107590738A (zh) 2017-08-24 2017-08-24 选择共识节点的处理方法、装置及服务器
??201710736740.5 2017-08-24

Publications (2)

Publication Number Publication Date
TW201913515A true TW201913515A (zh) 2019-04-01
TWI684943B TWI684943B (zh) 2020-02-11

Family

ID=61042561

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107115534A TWI684943B (zh) 2017-08-24 2018-05-08 選擇共識節點的處理方法、裝置及伺服器

Country Status (12)

Country Link
US (3) US11044103B2 (zh)
EP (1) EP3586474B1 (zh)
JP (1) JP6889275B2 (zh)
KR (1) KR102192885B1 (zh)
CN (1) CN107590738A (zh)
AU (2) AU2018321398A1 (zh)
CA (1) CA3058675A1 (zh)
ES (1) ES2809510T3 (zh)
PL (1) PL3586474T3 (zh)
SG (1) SG11201908886TA (zh)
TW (1) TWI684943B (zh)
WO (1) WO2019040886A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111833510A (zh) * 2019-12-25 2020-10-27 北京熠智科技有限公司 基于区块链的投票处理方法及装置、设备、存储介质
TWI720761B (zh) * 2019-12-25 2021-03-01 帳聯網路科技股份有限公司 整合股票移轉及報稅的交易系統及其方法
TWI732501B (zh) * 2019-08-30 2021-07-01 開曼群島商創新先進技術有限公司 在區塊鏈中並行執行交易的方法和裝置及電腦可讀儲存媒體與計算設備
TWI740378B (zh) * 2019-07-12 2021-09-21 開曼群島商創新先進技術有限公司 用於進行交易驗證的方法及裝置

Families Citing this family (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11394773B2 (en) * 2014-06-19 2022-07-19 Jim Austin Joseph Cryptographic currency block chain based voting system
US9794331B1 (en) * 2014-09-29 2017-10-17 Amazon Technologies, Inc. Block allocation based on server utilization
CN107395665B (zh) * 2017-05-22 2020-04-24 创新先进技术有限公司 一种区块链业务受理及业务共识方法及装置
CN107360001B (zh) * 2017-07-26 2021-12-14 创新先进技术有限公司 一种数字证书管理方法、装置和系统
CN107590738A (zh) 2017-08-24 2018-01-16 阿里巴巴集团控股有限公司 选择共识节点的处理方法、装置及服务器
US11640640B2 (en) 2018-01-23 2023-05-02 Click IPO Holdings, LLC Systems and methods for allocating assets to directed and interest-based participants
CN110309366B (zh) * 2018-03-01 2021-04-30 中思博安科技(北京)有限公司 一种基于微实数的异步排序方法及装置
CN108377206B (zh) * 2018-03-12 2021-04-06 众安信息技术服务有限公司 用于配置共识算法的方法、装置及计算机可读存储介质
US11121876B2 (en) * 2018-04-11 2021-09-14 Microsoft Technology Licensing, Llc Distributed access control
CN108712468B (zh) * 2018-04-19 2021-01-08 上海分布信息科技有限公司 一种区块链收益分配方法和分配系统
US11063746B2 (en) * 2018-04-19 2021-07-13 Electronics And Telecommunications Research Institute Method for selecting consensus node using nonce and method and apparatus for generating blockchain using the same
WO2019226099A1 (en) * 2018-05-23 2019-11-28 Haj Enterprise Ab A system and a method for achieving consensus between multiple parties on an event
CN110555764B (zh) * 2018-05-31 2022-11-08 本无链科技(深圳)有限公司 一种去中心化环境下区块链达成一致性的方法及系统
US10713133B2 (en) * 2018-06-11 2020-07-14 Vmware, Inc. Linear view-change BFT
US11646879B2 (en) 2018-06-12 2023-05-09 Electronics And Telecommunications Research Institute Method and apparatus for selecting distributed consensus node based on proof of nonce
CN109165092B (zh) * 2018-07-10 2021-07-20 矩阵元技术(深圳)有限公司 一种基于有效算力贡献的共识方法、装置及系统
CN108881287A (zh) * 2018-07-18 2018-11-23 电子科技大学 一种基于区块链的物联网节点身份认证方法
CN108964924B (zh) * 2018-07-24 2020-06-05 腾讯科技(深圳)有限公司 数字证书校验方法、装置、计算机设备和存储介质
US10862908B2 (en) * 2018-08-09 2020-12-08 Hrl Laboratories, Llc System and method for consensus ordering of broadcast messages
CN109347917A (zh) * 2018-09-14 2019-02-15 北京沃杰知识产权有限公司 区块链数据共识处理方法、系统、存储介质和电子设备
KR102130062B1 (ko) * 2018-09-18 2020-07-03 엔에이치엔 주식회사 블록체인 네트워크의 노드들 간의 합의를 이루는 방법 및 블록체인 시스템
CN110969527B (zh) * 2018-09-29 2023-02-24 北京天能博信息科技有限公司 一种区块链的数据处理方法及相关设备
US11048596B2 (en) * 2018-12-14 2021-06-29 Nokia Technologies Oy Hierarchical weighted consensus for permissioned blockchains
US11503036B2 (en) * 2019-03-13 2022-11-15 Nec Corporation Methods of electing leader nodes in a blockchain network using a role-based consensus protocol
KR102461653B1 (ko) * 2019-04-04 2022-11-02 한국전자통신연구원 비잔틴 환경에서의 합의 주체 선택 장치 및 방법
CN110049029B (zh) * 2019-04-04 2021-07-20 矩阵元技术(深圳)有限公司 共识节点确定方法、装置、计算机设备和存储介质
WO2020199179A1 (zh) * 2019-04-04 2020-10-08 云图有限公司 共识节点确定方法、装置、计算机设备和存储介质
WO2019137565A2 (en) 2019-04-26 2019-07-18 Alibaba Group Holding Limited Distributed key management for trusted execution environments
CN111865595B (zh) * 2019-04-29 2023-06-27 普天信息技术有限公司 一种区块链的共识方法及装置
CN110868386B (zh) * 2019-05-17 2022-05-20 北京安妮全版权科技发展有限公司 区块链共识方法
US11443326B2 (en) * 2019-06-05 2022-09-13 International Business Machines Corporation Geo-location compliance
CN110321385B (zh) * 2019-06-28 2021-12-24 联想(北京)有限公司 基于区块链的数据处理方法和数据处理装置
CN110572429B (zh) * 2019-07-30 2022-01-07 中钞信用卡产业发展有限公司杭州区块链技术研究院 基于区块链的共识方法、装置、设备及存储介质
CN110458291A (zh) * 2019-08-09 2019-11-15 成都理工大学 一种基于遗传算法的最佳共识节点选择方法
CN110708163B (zh) * 2019-09-10 2022-08-02 杭州秘猿科技有限公司 一种区块链的共识方法、装置、系统和电子设备
US11119734B2 (en) 2019-11-06 2021-09-14 International Business Machines Corporation Software detection and modification
CN110956542B (zh) * 2019-11-07 2021-05-18 支付宝(杭州)信息技术有限公司 区块链系统及其运行方法、装置及设备
CN110942821B (zh) * 2019-11-27 2023-08-25 兰州大学第一医院 医学检测设备的调试方法及系统
CN111131399B (zh) * 2019-12-03 2021-11-26 北京海益同展信息科技有限公司 一种区块链中共识节点动态增加方法及装置
US11836071B2 (en) 2019-12-10 2023-12-05 Hitachi, Ltd. Method and apparatus creating test environments for blockchain systems
CN111131209B (zh) * 2019-12-16 2022-06-28 国网重庆市电力公司客户服务中心 一种改进的高效共识方法、系统、计算机设备及存储介质
CN111082990B (zh) * 2019-12-19 2023-01-13 度小满科技(北京)有限公司 一种区块链的共识方法、装置、设备及存储介质
CN111355810B (zh) * 2020-03-17 2022-05-10 重庆邮电大学 一种基于信誉与投票机制的改进pbft共识方法
US11461312B2 (en) * 2020-03-28 2022-10-04 Wipro Limited Method and system for performing adaptive consensus in a distributed ledger network
CN111464631B (zh) * 2020-03-31 2023-03-28 成都质数斯达克科技有限公司 联盟区块链中的业务共识方法及装置
CN111159750B (zh) * 2020-04-07 2021-02-05 南京邮电大学 基于联盟链的汽车维修数据存储方法
CN113256426B (zh) * 2020-05-29 2023-08-04 支付宝(杭州)信息技术有限公司 一种数据处理方法、装置、设备及介质
CN111522822A (zh) 2020-07-03 2020-08-11 支付宝(杭州)信息技术有限公司 一种区块链共识方法、装置及电子设备
CN114299656B (zh) * 2020-09-23 2023-08-01 成都中科信息技术有限公司 一种投票方法
US11615074B2 (en) 2020-10-01 2023-03-28 Bank Of America Corporation System and methods for intelligent path selection of enhanced distributed processors
CN112804333B (zh) * 2021-01-15 2022-10-11 北京百度网讯科技有限公司 出块节点的异常处理方法、装置、设备和存储介质
CN112801662B (zh) * 2021-02-02 2023-07-04 深圳前海益链网络科技有限公司 基于区块链智能合约的业务链接入管理方法及系统
CN113076375B (zh) * 2021-03-29 2023-07-25 湖北央中巨石信息技术有限公司 基于区块链的多方同步抽样共识方法及系统及装置及介质
KR20220137329A (ko) * 2021-04-02 2022-10-12 삼성전자주식회사 블록 체인에 기반하여 블록 합의를 수행하는 전자 장치 및 그 운용 방법
US11640639B2 (en) * 2021-05-04 2023-05-02 Click IPO Holdings, LLC Systems and methods for allocating fractional shares of a public offering
KR102628770B1 (ko) * 2021-09-02 2024-01-23 주식회사 리드포인트시스템 비-랜덤 합의체 증명 기반 블록 체인 네트워크를 이용한 랜덤 합의체 증명을 수행하는 뉴럴 합의체 기반의 블록체인 네트워크 시스템
TWI820528B (zh) * 2021-11-30 2023-11-01 藍星球資訊股份有限公司 樹狀網路圖產生方法
CN114629915A (zh) * 2022-03-04 2022-06-14 中信银行股份有限公司 一种见证人选举的投票机制处理方法及系统
EP4346159A1 (en) * 2022-09-27 2024-04-03 Electronics and Telecommunications Research Institute Method and apparatus of adding additional chain to blockchain, and method and apparatus of generating shard for the same

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5001546B2 (ja) 2005-11-08 2012-08-15 任天堂株式会社 ゲームプログラム、ゲーム装置、プログラム、システム、および方法
JP4835886B2 (ja) 2009-12-22 2011-12-14 クオード株式会社 電子投票システム
US20150379510A1 (en) 2012-07-10 2015-12-31 Stanley Benjamin Smith Method and system to use a block chain infrastructure and Smart Contracts to monetize data transactions involving changes to data included into a data supply chain.
US20160164884A1 (en) * 2014-12-05 2016-06-09 Skuchain, Inc. Cryptographic verification of provenance in a supply chain
US11277390B2 (en) * 2015-01-26 2022-03-15 Listat Ltd. Decentralized cybersecure privacy network for cloud communication, computing and global e-commerce
US9875510B1 (en) * 2015-02-03 2018-01-23 Lance Kasper Consensus system for tracking peer-to-peer digital records
EP3281163B1 (en) 2015-04-05 2023-12-13 Digital Asset (Switzerland) GmbH Digital asset intermediary electronic settlement platform
US10304143B2 (en) 2016-05-05 2019-05-28 Lance Timothy Kasper Consensus system for manipulation resistant digital record keeping
US20170075877A1 (en) 2015-09-16 2017-03-16 Marie-Therese LEPELTIER Methods and systems of handling patent claims
US20170236123A1 (en) * 2016-02-16 2017-08-17 Blockstack Inc. Decentralized processing of global naming systems
US11170371B2 (en) * 2016-03-03 2021-11-09 Nec Corporation Method for managing data in a network of nodes
US9967088B2 (en) 2016-05-23 2018-05-08 Accenture Global Solutions Limited Rewritable blockchain
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
CN106445711B (zh) * 2016-08-28 2019-04-30 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
KR101727525B1 (ko) 2016-09-05 2017-04-17 주식회사 스케일체인 블록체인 기반 분산 저장 방법 및 이를 이용한 장치
US10360191B2 (en) 2016-10-07 2019-07-23 International Business Machines Corporation Establishing overlay trust consensus for blockchain trust validation system
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算法的区块链共识机制
US9998286B1 (en) 2017-02-17 2018-06-12 Accenture Global Solutions Limited Hardware blockchain consensus operating procedure enforcement
CN106920097A (zh) 2017-02-27 2017-07-04 钱德君 一种量子链共识协议的生成时间块链方法
CA3055829A1 (en) 2017-03-08 2018-09-13 Ip Oversight Corporation System and method for creating commodity asset-secured tokens from reserves
GB201710176D0 (en) 2017-06-26 2017-08-09 Nchain Holdings Ltd Computer-implemented system and method
CN107590738A (zh) 2017-08-24 2018-01-16 阿里巴巴集团控股有限公司 选择共识节点的处理方法、装置及服务器

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI740378B (zh) * 2019-07-12 2021-09-21 開曼群島商創新先進技術有限公司 用於進行交易驗證的方法及裝置
TWI732501B (zh) * 2019-08-30 2021-07-01 開曼群島商創新先進技術有限公司 在區塊鏈中並行執行交易的方法和裝置及電腦可讀儲存媒體與計算設備
CN111833510A (zh) * 2019-12-25 2020-10-27 北京熠智科技有限公司 基于区块链的投票处理方法及装置、设备、存储介质
TWI720761B (zh) * 2019-12-25 2021-03-01 帳聯網路科技股份有限公司 整合股票移轉及報稅的交易系統及其方法
CN111833510B (zh) * 2019-12-25 2021-12-14 北京熠智科技有限公司 基于区块链的投票处理方法及装置、设备、存储介质

Also Published As

Publication number Publication date
TWI684943B (zh) 2020-02-11
US20190068380A1 (en) 2019-02-28
EP3586474B1 (en) 2020-07-22
AU2021229188A1 (en) 2021-10-07
JP6889275B2 (ja) 2021-06-18
SG11201908886TA (en) 2019-10-30
AU2018321398A1 (en) 2019-10-17
KR102192885B1 (ko) 2020-12-21
KR20190133687A (ko) 2019-12-03
US11044103B2 (en) 2021-06-22
PL3586474T3 (pl) 2020-12-14
US20200129694A1 (en) 2020-04-30
US20210297267A1 (en) 2021-09-23
EP3586474A1 (en) 2020-01-01
WO2019040886A1 (en) 2019-02-28
CN107590738A (zh) 2018-01-16
US11265177B2 (en) 2022-03-01
ES2809510T3 (es) 2021-03-04
US10722649B2 (en) 2020-07-28
JP2020522150A (ja) 2020-07-27
CA3058675A1 (en) 2019-02-28

Similar Documents

Publication Publication Date Title
TW201913515A (zh) 選擇共識節點的處理方法、裝置及伺服器
KR102304492B1 (ko) 합의 검증을 위한 방법 및 장치
JP6940615B2 (ja) データ処理方法およびデバイス
JP6804668B2 (ja) ブロックデータ検証方法および装置
JP6675518B1 (ja) サービス要求を処理するための方法およびデバイス
TW201947436A (zh) 區塊鏈成員管理的資料處理方法、裝置、伺服器及系統
TWI737107B (zh) 資料處理方法、裝置、區塊鏈客戶端和區塊鏈節點
TW201822033A (zh) 資源處理方法及裝置
US11201870B2 (en) Using commit tokens to coordinate permissions submissions to address transaction conflict in blockchain systems
TWI694700B (zh) 資料處理方法和裝置、用戶端
US11604608B2 (en) Blockchain transaction processing systems and methods
WO2020220744A1 (zh) 基于区块链的数据处理方法、装置和区块链节点
US11563805B2 (en) Method, apparatus, client terminal, and server for data processing
WO2023231336A1 (zh) 执行交易的方法和区块链节点
CN114710507B (zh) 一种共识方法、区块链节点、介质和共识节点
CN111767144A (zh) 交易数据的交易路由确定方法、装置、设备及系统
TW201933851A (zh) 服務更新方法及裝置、系統
CN116340897A (zh) 一种基于区块链的数字资产处理方法及装置
US11487736B2 (en) Blockchain transaction processing systems and methods
Jeong et al. An efficient cloud storage model for cloud computing environment
US11500845B2 (en) Blockchain transaction processing systems and methods
WO2020024649A1 (zh) 数据处理方法和装置、服务器
Vijayakumar et al. MODELING FUZZY BASED REPLICATION STRATEGY TO IMPROVE DATA AVAILABILITY IN CLOUD DATA CENTER
CN117273924A (zh) 交易执行方法及装置和电子设备
CN116305311A (zh) 区块链系统中验证读写集的方法和装置