TWI727120B - 一種發送交易資訊和共識驗證的方法及裝置 - Google Patents

一種發送交易資訊和共識驗證的方法及裝置 Download PDF

Info

Publication number
TWI727120B
TWI727120B TW106140230A TW106140230A TWI727120B TW I727120 B TWI727120 B TW I727120B TW 106140230 A TW106140230 A TW 106140230A TW 106140230 A TW106140230 A TW 106140230A TW I727120 B TWI727120 B TW I727120B
Authority
TW
Taiwan
Prior art keywords
consensus
transaction information
node
transaction
consensus node
Prior art date
Application number
TW106140230A
Other languages
English (en)
Other versions
TW201835831A (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 TW201835831A publication Critical patent/TW201835831A/zh
Application granted granted Critical
Publication of TWI727120B publication Critical patent/TWI727120B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • 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/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • 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
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Accounting & Taxation (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)
  • Retry When Errors Occur (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

本發明實施例公開了一種發送交易資訊和共識驗證的方法及裝置。在交易受理階段,倘若某個其他共識節點未能接收到受理節點發送的交易資訊,那麼在共識驗證階段,該其他共識節點若確定預處理塊包含的所述交易資訊不存在於自己的交易池中,則可以向受理節點發送包含所述交易資訊的資訊標識的共識驗證失敗通知,使得受理節點重新將所述交易資訊發送給該其他共識節點。通過本發明實施例,可以盡可能確保各共識節點的交易池中儲存的交易資訊是一致的,從而不會降低各共識節點的共識驗證結果的準確性。

Description

一種發送交易資訊和共識驗證的方法及裝置
本發明涉及區塊鏈技術領域,尤其涉及一種發送交易資訊和共識驗證的方法及裝置。
在區塊鏈技術領域中,負責對交易進行共識驗證的區塊鏈節點稱為共識節點。   在共識驗證階段,發起共識驗證的共識節點需要將一段時間內產生的交易的交易資訊打包成預處理塊發送給其他共識節點以進行共識驗證,其他共識節點會驗證自己的交易池中是否包含該預處理塊中的所有交易資訊,如果包含,則驗證結果為通過,如果不包含,則驗證結果為不通過。隨後,各共識節點會根據每個共識節點對預處理塊的驗證結果來對該預處理塊中的交易資訊達成合法或不合法的共識,作為各共識節點對預處理塊共識驗證的結果。因此,為了使各共識節點的共識驗證結果盡可能準確,需要確保各共識節點的交易池儲存的交易資訊一致。   在交易受理階段,針對不同的交易,每個共識節點都可能作為受理交易的節點(下稱受理節點),獲取交易的交易資訊。對某筆交易而言,這筆交易對應的受理節點需要向每個其他共識節點發送交易資訊,接收到交易資訊的其他共識節點會將交易資訊存入自己的交易池中。各共識節點正是通過這樣的方式使得各共識節點的交易池儲存的交易資訊保持一致的。   但是,由於網路的擾動總是不可避免的,因此網路的不穩定時常會導致共識節點間資訊傳輸的不穩定,有的共識節點可能未接收到發送的資訊。例如,受理節點向其他共識節點發送交易資訊,倘若出現網路擾動,則受理節點發送給其他共識節點的交易資訊有可能未被所有其他共識節點接收到,這就會導致各共識節點的交易池儲存的交易資訊無法保持一致,從而降低各共識節點的共識驗證結果的準確性。
本發明實施例提供一種發送交易資訊和共識驗證的方法及裝置,以解決現有的發送交易資訊和共識驗證的方法會降低各共識節點的共識驗證結果的準確性的問題。   為解決上述技術問題,本發明實施例是這樣實現的:   本發明實施例提供的一種發送交易資訊的方法,包括:   共識節點獲取交易資訊;   發送所述交易資訊給其他共識節點;   當接收到其他共識節點發送的包含所述交易資訊的資訊標識的共識驗證失敗通知時,根據所述共識驗證失敗通知,重新發送所述交易資訊。   本發明實施例提供的一種共識驗證的方法,包括:   共識節點接收其他共識節點發送的預處理塊;   根據交易池中儲存的交易資訊和所述預處理塊包含的交易資訊,對所述預處理塊進行共識驗證;   在共識驗證過程中,若確定所述預處理塊包含的至少一個交易資訊不存在於所述交易池中,則在所述預處理塊包含的交易資訊中,確定所述交易池中缺少的交易資訊的資訊標識,並向其他共識節點發送包含所述資訊標識的共識驗證失敗通知。   本發明實施例提供的一種發送交易資訊的裝置,包括:   獲取模組,獲取交易資訊;   第一發送模組,發送所述交易資訊給其他共識節點;   第二發送模組,當接收到其他共識節點發送的包含所述交易資訊的資訊標識的共識驗證失敗通知時,根據所述共識驗證失敗通知,重新發送所述交易資訊。   本發明實施例提供的一種共識驗證的裝置,包括:   接收模組,接收其他共識節點發送的預處理塊;   共識驗證模組,根據交易池中儲存的交易資訊和所述預處理塊包含的交易資訊,對所述預處理塊進行共識驗證;   發送模組,在共識驗證過程中,若確定所述預處理塊包含的至少一個交易資訊不存在於所述交易池中,則在所述預處理塊包含的交易資訊中,確定所述交易池中缺少的交易資訊的資訊標識,並向其他共識節點發送包含所述資訊標識的共識驗證失敗通知。   由以上本發明實施例提供的技術方案可見,在本發明實施例中,在交易受理階段,假設某個其他共識節點未能接收到受理節點發送的交易資訊,那麼等到共識驗證階段,該其他共識節點若確定預處理塊包含的所述交易資訊不存在於自己的交易池中,則可以向受理節點發送包含所述交易資訊的資訊標識的共識驗證失敗通知,使得受理節點重新將所述交易資訊發送給該其他共識節點。通過本發明實施例,可以盡可能確保各共識節點的交易池中儲存的交易資訊是一致的,從而不會降低各共識節點的共識驗證結果的準確性。
本發明實施例提供一種發送交易資訊和共識驗證的方法及裝置。   為了使本技術領域的人員更好地理解本發明中的技術方案,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都應當屬於本發明保護的範圍。   以下結合附圖,詳細說明本發明各實施例提供的技術方案。   圖1是本發明實施例提供的一種發送交易資訊的方法流程圖,包括以下步驟:   S101:共識節點獲取交易資訊。   在本發明實施例中,所述交易資訊可以是交易涉及的所有詳情資訊,如帳戶位址、交易金額、交易類別等。   在交易受理階段,所述共識節點作為受理節點,可以接收使用者端發送的交易資訊。所述使用者端可以是參與所述交易的區塊鏈節點的使用者端。當然,所述共識節點也可以自己發起交易並生成交易的交易資訊。   為了描述的方便,下文所述的受理節點,即是指在受理階段受理交易的共識節點,是本發明實施例的執行主體。   S102:發送所述交易資訊給其他共識節點。   所述受理節點在獲取交易資訊之後,一方面會將所述交易資訊儲存在自己的交易池中,另一方面會向其他共識節點發送所述交易資訊,以使其他共識節點接收到所述交易資訊後分別將所述交易資訊儲存在其他共識節點的交易池中,進而在共識驗證階段,各共識節點就可以通過判斷自己的交易池中儲存的交易資訊是否包含預處理塊中的所有交易資訊來驗證預處理塊。   其中,所述其他共識節點是除所述受理節點之外的共識節點。所述交易池是用於儲存交易資訊的資料庫。每個共識節點都有自己的交易池。所述交易池可以被搭建在共識節點的記憶體中,也可以被搭建在共識節點的外部記憶體中。   值得強調的是,對每個共識節點而言,其可以執行多進程工作,即一方面受理一筆交易A,另一方面參與對包含一批交易資訊的預處理塊(不包含交易A)的共識驗證。只要運算能力足夠,共識節點可以同時多進程處理不同交易的受理或共識驗證。   而在本發明實施例中,由於為了詳細說明如何盡可能保證每個其他共識節點都接收到某筆交易的交易資訊,因此,所述交易受理階段和所述共識驗證階段是相對於一筆交易的交易資訊而言的。   在本發明實施例中,所述共識節點可以針對每個其他共識節點創建執行緒,並通過該執行緒發送所述交易資訊給該其他共識節點。其中,所述共識節點通過該執行緒,可以採用非同步調用技術發送所述交易資訊,待發送所述交易資訊後,不論該其他共識節點能否接收到所述交易資訊,該執行緒都會被撤銷;也可以採用同步調用技術發送所述交易資訊,待發送所述交易資訊後,所述共識節點繼續通過該執行緒等待接收該其他共識節點在接收到所述交易資訊後返回的回應訊號。   S103:當接收到其他共識節點發送的包含所述交易資訊的資訊標識的共識驗證失敗通知時,根據所述共識驗證失敗通知,重新發送所述交易資訊。   在本發明實施例中,所述共識驗證失敗通知是在後續的共識驗證階段,由其他共識節點發送的。在共識驗證階段,發起共識的共識節點(下稱領導leader節點)會將自身交易池中的一批交易的交易資訊打包成預處理塊,並將預處理塊發送給除leader節點外的共識節點(下稱副本replica節點),以使各共識節點(leader節點和各replica節點)對預處理塊進行共識驗證。其中,leader節點可以是各共識節點選舉中的,也可以是隨機指定的。   值得強調的是,本發明實施例的執行主體是交易受理階段的受理節點,在共識驗證階段,所述受理節點可以同時是leader節點,或同時是replica節點,本發明對此不做限制。還有,所述其他共識節點是受理階段除所述受理節點之外的其他共識節點,其一般可以是replica節點,也可以是leader節點。   總之,在由交易受理階段過渡到共識驗證階段後,各共識節點的具體身份可能會隨之發生變化,之前的受理節點可能變為replica節點,而之前的某個其他共識節點可能變為leader節點。   在本發明實施例中,某個replica節點在對預處理塊進行驗證時,會將預處理塊中的交易資訊與自己的交易池中儲存的交易資訊進行比對,如果自己的交易池中儲存的交易資訊囊括了預處理塊中的所有交易資訊,則說明該replica節點在之前的交易受理階段成功接收到了所述交易資訊。   如果自己的交易池中儲存的交易資訊未囊括預處理塊中的所有交易資訊,即自己的交易池中儲存的交易資訊缺少了預處理塊中的某些交易資訊,則說明該replica節點在之前的交易受理階段未成功接收到這些交易資訊,那麼,該replica節點對預處理塊的驗證是失敗的,其會向其他的replica節點和leader節點廣播包含這些缺失的交易資訊的資訊標識的共識驗證失敗通知。每個接收到所述共識驗證失敗通知的共識節點,可以查看該共識節點的交易池,如果該共識節點的交易池中儲存了所述共識驗證失敗通知包含的資訊標識對應的交易資訊(該共識節點在交易受理階段成功接收到了所述交易資訊或該共識節點是受理節點),則將所述資訊標識對應的交易資訊發送給發送所述共識驗證失敗通知的replica節點。   值得強調的是,由於預處理塊中包含的一批交易資訊往往數量巨大,這些交易資訊也往往是經由不同的受理節點廣播的,因此,在共識驗證階段,每個共識節點都可能缺少預處理塊中包含的部分交易資訊,而每個共識節點缺少的交易資訊,肯定是儲存在當初廣播該交易資訊的受理節點的交易池中的。並且,每個共識節點缺少的交易資訊也可能儲存在不止一個其他的共識節點的交易池中。也就是說,在共識驗證階段,每個共識節點缺少的交易資訊都可以通過其他的共識節點共同的幫助,從而得到補償。   例如,區塊鏈網路中有5個共識節點A、B、C、D、E,在共識驗證階段,A作為leader節點生成預處理塊,預處理塊中包含的交易資訊分別為甲、乙、丙,其中,甲是E作為受理節點時廣播的,乙是A作為受理節點時廣播的,丙是D作為受理節點時廣播的。假設在甲的受理階段,B、C沒有接收到甲,在乙的受理階段,B、E沒有接收到乙,在丙的受理階段,B沒有接收到丙,那麼在共識驗證階段,A發送給B、C、D、E預處理塊後,由於B的交易池中缺少甲、乙、丙,因此,B會向A、C、D、E發送包含甲、乙、丙的資訊標識的共識驗證失敗通知。如此一來,B會分別接收到A發送的甲、乙、丙,C發送的乙、丙,D發送的甲、乙、丙,E發送的甲、丙。也就是說,B的交易池中缺少的交易資訊可以通過A、C、D、E的共識幫助而得到補償。   此外,由於網路擾動,因此由所有接收到所述共識驗證失敗通知的共識節點都向該replica節點補償性地發送所述交易資訊,實際上也能夠確保該replica節點在很大概率上接收到所述交易資訊,從而克服了網路擾動,保證了各共識節點交易池的一致。   綜上,在本發明實施例中,所述共識節點在向其他共識節點發送了交易資訊後,不論每個其他共識節點是否接收到了所述交易資訊,都可以等到共識驗證階段,根據接收到的共識驗證失敗通知,補償性地重新向發送共識驗證失敗通知的其他共識節點發送所述交易資訊。   可見,通過圖1所示的發送資訊的方法,在交易受理階段,假設某個其他共識節點未能接收到受理節點發送的交易資訊,那麼等到共識驗證階段,該其他共識節點若確定預處理塊包含的所述交易資訊不存在於自己的交易池中,則可以向受理節點發送包含所述交易資訊的資訊標識的共識驗證失敗通知,使得受理節點重新將所述交易資訊發送給該其他共識節點。通過本發明實施例,可以盡可能確保各共識節點的交易池中儲存的交易資訊是一致的,從而不會降低各共識節點的共識驗證結果的準確性。   進一步地,在本發明實施例中,在交易受理階段,還可以採取一些可靠機制,來增強所述共識節點向其他共識節點發送交易資訊的可靠性。   在步驟S102中,所述共識節點針對每個其他共識節點創建執行緒,並通過該執行緒向該其他共識節點發送交易資訊。若確定該其他共識節點未接收到所述交易資訊,則重新通過該執行緒向該其他共識節點發送所述交易資訊,直至確定該其他共識節點接收到所述交易資訊或滿足預設的停止發送條件為止。   其中,若在指定時間段內通過該執行緒接收到該其他共識節點返回的回應訊號,則確定該其他共識節點接收到所述交易資訊;若在指定時間段內未通過該執行緒未接收到該其他共識節點返回的回應訊號,則確定該其他共識節點未接收到所述交易資訊。   具體而言,所述預設的停止發送條件可以是向該其他共識節點發送所述交易資訊的次數達到預設次數,或,自第一次向該其他共識節點發送所述交易資訊起經過的時間超過預設時長。本發明對所述預設次數、預設時長不做具體限制。   值得說明的是,所述共識節點每次通過執行緒向其他共識節點重發交易資訊的方式,可以是一經確定上一次發送失敗就重新發送,也可以是等待特定的時間間隔延時發送,其中,特定的時間間隔是可配置的,每次重發等待的特定時間間隔可以相同,也可以不同,如特定的時間間隔逐漸加長或減少。   例如,所述共識節點針對每個其他共識節點創建執行緒,並通過該執行緒先向該其他共識節點發送一次交易資訊,若該其他共識節點未返回回應訊號,則所述共識節點可以延時5S後重新發送交易資訊,若仍未接收到回應訊號,則延時15S後重新發送交易資訊,若仍未接收到相應訊號,則可以延時更長時間後重新發送所述交易資訊,如是繼續,直至發送次數達到預設次數,或自第一次向該其他共識節點發送所述交易資訊起經過的時間超過預設時長。   特殊地,在上述舉例中,若所述共識節點發送交易資訊的次數達到預設次數,則可以進一步將所述交易資訊添加到返回佇列(back佇列),並創建專門用於掃描back佇列的執行緒Recovery,Recovery每特定時間間隔掃描一次back佇列,將所述交易資訊掃描出來,並通過Recovery發送出去,直至自第一次向該其他共識節點發送所述交易資訊起經過的時間超過預設時長。當然,Recovery掃描back佇列的特定時間間隔也是可配置的。也就是說,發送交易資訊達到預設次數的執行緒會被撤銷以節省共識節點的資源,交易資訊被添加到back佇列,而由常備的Recovery佇列負責每特定時間間隔掃描發送back佇列中的交易資訊。這樣以來,可以避免共識節點維持較多的執行緒造成的資源浪費。   在上述舉例中,所述共識節點實際上是採用弱同步調用技術,向該其他共識節點發送交易資訊的。具體而言,所述共識節點針對每個其他共識節點,非同步調用一個執行緒後,通過該執行緒採用同步調用向該其他共識節點發送交易資訊。該執行緒會佔用所述共識節點的運算資源,所述共識節點正是通過該執行緒等待該其他共識節點返回回應訊號,並且,若該其他共識節點未能在指定時間段內返回回應訊號,則說明該其他共識節點未能接收到交易資訊,則所述共識節點還會通過該執行緒重新向該其他共識節點發送交易資訊。如此一來,在交易受理階段採用弱同步調用技術,可以使得所述共識節點一方面不必擱置更為重要的工作進程來專門等待其他共識節點返回的回應訊號,另一方面又可以利用每個其他共識節點對應的執行緒來等待回應訊號、重複發送交易資訊,從而保證其他共識節點順利接收到交易資訊。   此外,在本發明實施例中,當滿足預設的停止發送條件時,如果該其他共識節點仍未返回回應訊號,則可以將所述交易資訊添加到預設的佇列中。待接收到所述共識驗證失敗通知時,再根據所述共識驗證失敗通知中包含的資訊標識,在所述佇列中搜尋所述資訊標識對應的交易資訊並發送。   其中,所述佇列是所述共識節點記憶體中的儲存空間,用於儲存在受理階段雖反復嘗試發送卻仍未被每個其他共識節點接收到的交易資訊。當所述共識節點的交易池未被搭建在記憶體中時,將反復嘗試發送仍失敗的交易資訊存入所述佇列,可以使得所述共識節點在共識驗證階段向缺少所述交易資訊的其他共識節點更快速地發送所述交易資訊。   特殊地,當交易池未被搭建在記憶體中時,在共識驗證階段,所述共識節點接收到某個replica節點發送的共識驗證失敗通知時,應查看自己的佇列中是否有該replica節點缺少的交易資訊,而不必查看自己的交易池,若自己的佇列中有該replica節點缺少的交易資訊,則可以向該replica節點發送,若自己的佇列中沒有該replica節點缺少的交易資訊,則不必向該replica節點發送(即便自己的交易池中有該replica節點缺少的交易)。這樣一來,假設該replica缺少交易資訊X,則總能夠保證是由廣播該交易資訊X的受理節點來從其佇列中撈取並發送該交易資訊X,從而使得缺少交易資訊的replica節點總能得到快速的補償。   圖2是本發明實施例提供的一種受理交易階段的可靠機制示意圖。如圖2所示,在交易受理階段,受理節點會通過延時5S、延時10min等方式嘗試向其他共識節點發送交易資訊,並且,這種嘗試發送的方式不是無節制的,當發送次數超過3次,就會採用更長的延時來發送交易資訊,當交易資訊活動期(自第一次向該其他共識節點發送所述交易資訊起經過的時間)超過預設時長(如1個小時),交易資訊就會被添加到預設的佇列,停止發送。等待共識驗證階段,所述共識節點接收到所述共識驗證失敗通知,才會啟動所述佇列中的交易資訊。   值得強調的是,所述預設時長可以是根據各共識節點執行共識驗證的週期確定的,也可以是根據一般網路故障的排障期確定的。   通過圖2所示的可靠機制,所述共識節點延時嘗試發送所述交易資訊,在重複延時5S發送交易資訊達到2次後,說明存在暫時無法解決的傳輸問題(可能是未接收成功的其他共識節點宕機或者網路出現大的故障),於是先暫停向該其他共識節點發送交易資訊,等待較長時間(如10min)後,傳輸問題可能已經解決了,再繼續發送,待交易資訊的活動期過長,便可以將交易資訊添加到預設的佇列,等待後續通過補償地方式再發送給缺少所述交易資訊的其他共識節點。   在本發明實施例中,通過在共識驗證階段,由各共識節點共同補償性地為每個缺少交易資訊的共識節點進行補償,可以很好地解決網路擾動帶來的各共識節點的交易池不一致的問題。在此基礎上,通過圖2所述的可靠機制,可以從交易受理階段開始,就採取措施提升其他共識節點接收到交易資訊的成功率。   圖3是本發明實施例提供的一種共識驗證的方法,包括以下步驟:   S301:共識節點接收其他共識節點發送的預處理塊。   S302:根據交易池中儲存的交易資訊和所述預處理塊包含的交易資訊,對所述預處理塊進行共識驗證。   S303:在共識驗證過程中,若確定所述預處理塊包含的至少一個交易資訊不存在於所述交易池中,則在所述預處理塊包含的交易資訊中,確定所述交易池中缺少的交易資訊的資訊標識。   S304:向其他共識節點發送包含所述資訊標識的共識驗證失敗通知。   在本發明實施例中,所述共識節點是共識驗證階段,對預處理塊進行驗證的某個共識節點,也就是replica節點。所述其他共識節點是發起共識的節點,也就是leader節點。   關於對圖3所示的共識驗證的方法的詳細說明,在對圖1所示的發送交易資訊的方法的說明中已有記載,不再贅述。   基於圖1所示的發送交易資訊的方法,本發明實施例還對應提供了一種發送交易資訊的裝置,如圖4所示,包括:   獲取模組401,獲取交易資訊;   第一發送模組402,發送所述交易資訊給其他共識節點;   第二發送模組403,當接收到其他共識節點發送的包含所述交易資訊的資訊標識的共識驗證失敗通知時,根據所述共識驗證失敗通知,重新發送所述交易資訊。   所述獲取模組401,接收使用者端發送的交易資訊。   所述第一發送模組402,針對每個其他共識節點創建執行緒,並通過該執行緒發送所述交易資訊給該其他共識節點。   所述第一發送模組402,若確定該其他共識節點未接收到所述交易資訊,則重新通過該執行緒向該其他共識節點發送所述交易資訊,直至確定該其他共識節點接收到所述交易資訊或滿足預設的停止發送條件為止。   所述第一發送模組402,若在指定時段內通過該執行緒接收到該其他共識節點返回的回應訊號,則確定該其他共識節點接收到所述交易資訊;若在指定時段內未通過該執行緒未接收到該其他共識節點返回的回應訊號,則確定該其他共識節點未接收到所述交易資訊。   所述預設的停止發送條件,具體包括:向該其他共識節點發送所述交易資訊的次數達到預設次數;或自第一次向該其他共識節點發送所述交易資訊起經過的時間超過預設時長。   所述裝置還包括:添加模組404,當滿足預設的停止發送條件時,將所述交易資訊添加到預設的佇列中;   所述第二發送模組403,根據所述共識驗證失敗通知中包含的資訊標識,在所述佇列中搜尋所述資訊標識對應的交易資訊並發送。   基於圖3所示的共識驗證的方法,本發明實施例還對應提供了一種共識驗證的裝置,如圖5所示,包括:   接收模組501,接收其他共識節點發送的預處理塊;   共識驗證模組502,根據交易池中儲存的交易資訊和所述預處理塊包含的交易資訊,對所述預處理塊進行共識驗證;   發送模組503,在共識驗證過程中,若確定所述預處理塊包含的至少一個交易資訊不存在於所述交易池中,則在所述預處理塊包含的交易資訊中,確定所述交易池中缺少的交易資訊的資訊標識,並向其他共識節點發送包含所述資訊標識的共識驗證失敗通知。   在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,記憶體控制器還可以被實現為記憶體的控制邏輯的一部分。本領域技術人員也知道,除了以純電腦可讀程式碼方式實現控制器以外,完全可以通過將方法步驟進行邏輯程式設計來使得控制器以邏輯閘、開關、專用積體電路、可程式設計邏輯控制器和嵌入微控制器等的形式來實現相同功能。因此這種控制器可以被認為是一種硬體部件,而對其內包括的用於實現各種功能的裝置也可以視為硬體部件內的結構。或者甚至,可以將用於實現各種功能的裝置視為既可以是實現方法的軟體模組又可以是硬體部件內的結構。   上述實施例闡明的系統、裝置、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦。具體的,電腦例如可以為個人電腦、膝上型電腦、蜂窩電話、相機電話、智慧型電話、個人數位助理、媒體播放機、導航設備、電子郵件設備、遊戲控制台、平板電腦、可穿戴設備或者這些設備中的任何設備的組合。   為了描述的方便,描述以上裝置時以功能分為各種單元分別描述。當然,在實施本發明時可以把各單元的功能在同一個或多個軟體和/或硬體中實現。   本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式設計資料處理設備的處理器以產生一個機器,使得通過電腦或其他可程式設計資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。   這些電腦程式指令也可儲存在能引導電腦或其他可程式設計資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。   這些電腦程式指令也可裝載到電腦或其他可程式設計資料處理設備上,使得在電腦或其他可程式設計設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設計設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。   在一個典型的配置中,計算設備包括一個或多個處理器(CPU)、輸入/輸出介面、網路介面和記憶體。   記憶體可能包括電腦可讀介質中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀介質的示例。   電腦可讀介質包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現消息儲存。消息可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存介質的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可擦除可程式設計唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存、磁盒式磁帶,磁帶磁磁片儲存或其他磁性存放裝置或任何其他非傳輸介質,可用於儲存可以被計算設備訪問的消息。按照本文中的界定,電腦可讀介質不包括暫存電腦可讀媒體(transitory media),如調製的資料訊號和載波。   還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。   本領域技術人員應明白,本發明的實施例可提供為方法、系統或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存介質(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。   本發明可以在由電腦執行的電腦可執行指令的一般上下文中描述,例如程式模組。一般地,程式模組包括執行特定任務或實現特定抽象資料類型的常式、程式、物件、組件、資料結構等等。也可以在分散式運算環境中實踐本發明,在這些分散式運算環境中,由通過通信網路而被連接的遠端處理設備來執行任務。在分散式運算環境中,程式模組可以位於包括存放裝置在內的本地和遠端電腦儲存介質中。   本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。   以上所述僅為本發明的實施例而已,並不用於限制本發明。對於本領域技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的權利要求範圍之內。
401‧‧‧獲取模組402‧‧‧第一發送模組403‧‧‧第二發送模組501‧‧‧接收模塊模組502‧‧‧共識驗證模組503‧‧‧發送模組
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明中記載的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。   圖1是本發明實施例提供的一種發送交易資訊的方法流程圖;   圖2是本發明實施例提供的一種受理交易階段的可靠機制示意圖;   圖3是本發明實施例提供的一種共識驗證的方法流程圖;   圖4是本發明實施例提供的一種發送交易資訊的裝置示意圖;   圖5是本發明實施例提供的一種共識驗證的裝置示意圖。

Claims (16)

  1. 一種發送交易資訊的方法,其包括:共識節點獲取交易資訊,具體包括:該共識節點作為受理節點,接收使用者端發送的該交易資訊;發送該交易資訊給其他共識節點,該其他共識節點是除該受理節點之外的共識節點;當接收到其他共識節點發送的包含該交易資訊的資訊標識的共識驗證失敗通知時,根據該共識驗證失敗通知,重新發送該交易資訊;其中,該其他共識節點發送的包含該交易資訊的資訊標識的共識驗證失敗通知,具體包括:該其他共識節點將該共識驗證失敗通知廣播給該共識節點和發送該共識驗證失敗通知以外的其他共識節點;所述根據該共識驗證失敗通知,重新發送該交易資訊,具體包括:該共識節點和發送該共識驗證失敗通知以外的包含該交易資訊的其他共識節點根據接收到的該共識驗證失敗通知,均重新發送該交易資訊給該發送該共識驗證失敗通知的其他共識節點。
  2. 如申請專利範圍第1項所述的方法,其中,共識節點獲取交易資訊,具體包括:共識節點接收使用者端發送的交易資訊。
  3. 如申請專利範圍第1項所述的方法,其中,發送該交 易資訊給其他共識節點,具體包括:針對每個其他共識節點創建執行緒,並通過該執行緒發送該交易資訊給該其他共識節點。
  4. 如申請專利範圍第3項所述的方法,其中,通過該執行緒發送該交易資訊給該其他共識節點,具體包括:若確定該其他共識節點未接收到該交易資訊,則重新通過該執行緒向該其他共識節點發送該交易資訊,直至確定該其他共識節點接收到該交易資訊或滿足預設的停止發送條件為止。
  5. 如申請專利範圍第4項所述的方法,其中,確定該其他共識節點接收到該交易資訊,具體包括:若在指定時段內通過該執行緒接收到該其他共識節點返回的回應信號,則確定該其他共識節點接收到該交易資訊;確定該其他共識節點未接收到該交易資訊,具體包括:若在指定時段內未通過該執行緒接收到該其他共識節點返回的回應信號,則確定該其他共識節點未接收到該交易資訊。
  6. 如申請專利範圍第4項所述的方法,其中,該預設的停止發送條件,具體包括: 向該其他共識節點發送該交易資訊的次數達到預設次數;或自第一次向該其他共識節點發送該交易資訊起經過的時間超過預設時長。
  7. 如申請專利範圍第4項所述的方法,其中,當滿足預設的停止發送條件時,該方法還包括:將該交易資訊添加到預設的佇列中;根據該共識驗證失敗通知,重新發送該交易資訊,具體包括:根據該共識驗證失敗通知中包含的資訊標識,在所述佇列中查找該資訊標識對應的交易資訊並發送。
  8. 一種共識驗證的方法,其包括:共識節點接收其他共識節點發送的預處理塊;根據交易池中存儲的交易資訊和該預處理塊包含的交易資訊,對該預處理塊進行共識驗證;在共識驗證過程中,若確定該預處理塊包含的至少一個交易資訊不存在於該交易池中,則在該預處理塊包含的交易資訊中,確定該交易池中缺少的交易資訊的資訊標識,並向其他共識節點發送包含該資訊標識的共識驗證失敗通知;當該其他共識節點的交易池中包含該交易資訊時,該其他共識節點均發送該交易資訊給該共識節點。
  9. 一種發送交易資訊的裝置,其包括:獲取模組,獲取交易資訊,具體包括:該共識節點作為受理節點,接收使用者端發送的該交易資訊;第一發送模組,發送該交易資訊給該其他共識節點,該其他共識節點是除該受理節點之外的共識節點;第二發送模組,當接收到其他共識節點發送的包含該交易資訊的資訊標識的共識驗證失敗通知時,根據該共識驗證失敗通知重新發送該交易資訊;其中,該其他共識節點發送的包含該交易資訊的資訊標識的共識驗證失敗通知,具體包括:該其他共識節點將該共識驗證失敗通知廣播給該共識節點和發送該共識驗證失敗通知以外的其他共識節點;所述根據該共識驗證失敗通知,重新發送該交易資訊,具體包括:該共識節點和發送該共識驗證失敗通知以外的包含該交易資訊的其他共識節點根據接收到的該共識驗證失敗通知,均重新發送該交易資訊給該發送該共識驗證失敗通知的其他共識節點。
  10. 如申請專利範圍第9項所述的裝置,其中,該獲取模組,接收使用者端發送的交易資訊。
  11. 如申請專利範圍第9項所述的裝置,其中,該第一發送模組,針對每個其他共識節點創建執行緒,並通過該執行緒發送該交易資訊給該其他共識節點。
  12. 如申請專利範圍第11項所述的裝置,其中,該第一發送模組,若確定該其他共識節點未接收到該交易資訊,則重新通過該執行緒向該其他共識節點發送該交易資訊,直至確定該其他共識節點接收到該交易資訊或滿足預設的停止發送條件為止。
  13. 如申請專利範圍第12項所述的裝置,其中,該第一發送模組,若在指定時段內通過該執行緒接收到該其他共識節點返回的回應信號,則確定該其他共識節點接收到該交易資訊;若在指定時段內未通過該執行緒接收到該其他共識節點返回的回應信號,則確定該其他共識節點未接收到該交易資訊。
  14. 如申請專利範圍第12項所述的裝置,其中,該預設的停止發送條件,具體包括:向該其他共識節點發送該交易資訊的次數達到預設次數;或自第一次向該其他共識節點發送該交易資訊起經過的時間超過預設時長。
  15. 如申請專利範圍第12項所述的裝置,其中,該裝置還包括:添加模組,當滿足預設的停止發送條件時,將該交易資訊添加到預設的佇列中; 該第二發送模組,根據該共識驗證失敗通知中包含的資訊標識,在所述佇列中查找該資訊標識對應的交易資訊並發送。
  16. 一種共識驗證的裝置,其包括:接收模組,接收其他共識節點發送的預處理塊;共識驗證模組,根據交易池中存儲的交易資訊和該預處理塊包含的交易資訊,對該預處理塊進行共識驗證;發送模組,在共識驗證過程中,若確定該預處理塊包含的至少一個交易資訊不存在於該交易池中,則在該預處理塊包含的交易資訊中,確定該交易池中缺少的交易資訊的資訊標識,並向其他共識節點發送包含該資訊標識的共識驗證失敗通知;當該其他共識節點的交易池中包含該交易資訊時,該其他共識節點均發送該交易資訊給該共識節點。
TW106140230A 2017-03-24 2017-11-21 一種發送交易資訊和共識驗證的方法及裝置 TWI727120B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710181241.4A CN107392611B (zh) 2017-03-24 2017-03-24 一种发送交易信息和共识验证的方法及装置
CN201710181241.4 2017-03-24

Publications (2)

Publication Number Publication Date
TW201835831A TW201835831A (zh) 2018-10-01
TWI727120B true TWI727120B (zh) 2021-05-11

Family

ID=60338903

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106140230A TWI727120B (zh) 2017-03-24 2017-11-21 一種發送交易資訊和共識驗證的方法及裝置

Country Status (15)

Country Link
US (1) US10679217B2 (zh)
EP (1) EP3543937A4 (zh)
JP (1) JP6794551B2 (zh)
KR (1) KR102151899B1 (zh)
CN (2) CN111612468B (zh)
AU (1) AU2018240159B2 (zh)
BR (1) BR112019012905A2 (zh)
CA (1) CA3047884C (zh)
MX (1) MX2019007557A (zh)
PH (1) PH12019501470A1 (zh)
RU (1) RU2735156C1 (zh)
SG (1) SG10202107139RA (zh)
TW (1) TWI727120B (zh)
WO (1) WO2018171545A1 (zh)
ZA (1) ZA201904053B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111612468B (zh) * 2017-03-24 2024-03-19 创新先进技术有限公司 一种发送交易信息和共识验证的方法及装置
CN108009824A (zh) * 2017-11-28 2018-05-08 北京博晨技术有限公司 数据共识方法、装置及电子设备
CN108537525B (zh) * 2018-03-09 2020-06-09 阿里巴巴集团控股有限公司 一种共识验证方法、装置及设备
CN108600163B (zh) * 2018-03-13 2020-12-15 南京邮电大学 一种云环境分布式哈希链架构及云数据完整性验证方法
GB2572340A (en) * 2018-03-26 2019-10-02 Fetch Ai Ltd Data processing system using directed acyclic graph and method of use thereof
CN108765150A (zh) * 2018-05-11 2018-11-06 中国联合网络通信集团有限公司 交易信息处理方法及存储节点
CN108665365B (zh) * 2018-05-16 2021-07-13 四川大学 一种混合区块链架构系统、处理方法及处理系统
CN108960604B (zh) * 2018-06-25 2021-06-29 山东大海集团有限公司 一种信息处理的方法、系统及装置
CN109191135A (zh) * 2018-08-27 2019-01-11 北京京东金融科技控股有限公司 基于区块链的交易重试方法、装置、设备及可读存储介质
CN109461079B (zh) * 2018-10-29 2022-04-05 众安信息技术服务有限公司 基于区块链的交易处理方法和装置
CN111182009B (zh) * 2018-11-09 2023-06-20 北京天德科技有限公司 一种区块链交易消息多汇点分发的方法
CN109639656B (zh) * 2018-12-03 2020-12-25 北京瑞卓喜投科技发展有限公司 一种区块链隐私数据传输方法及隐私数据传输系统
CN111353884B (zh) * 2018-12-20 2024-05-03 上海智知盾科技有限公司 区块链交易处理方法及系统
CN109831425B (zh) * 2019-01-25 2022-02-15 中国联合网络通信集团有限公司 区块链共识方法、装置、设备及计算机可读存储介质
CN110033271B (zh) * 2019-03-22 2023-12-22 湖南天河国云科技有限公司 一种跨链交易方法、系统及计算机可读存储介质
CN110570171B (zh) * 2019-09-11 2022-03-11 杭州秘猿科技有限公司 交易池节点同步方法、电子设备和计算机可读存储介质
CN110782255B (zh) * 2019-11-06 2022-11-15 杭州复杂美科技有限公司 延时交易取消方法、设备和存储介质
US12099997B1 (en) 2020-01-31 2024-09-24 Steven Mark Hoffberg Tokenized fungible liabilities
CN111064813B (zh) * 2020-03-16 2020-06-30 支付宝(杭州)信息技术有限公司 在区块链共识处理时进行处理消息同步的方法及装置
US11321149B1 (en) 2021-02-08 2022-05-03 Visa International Service Association Synchronization consensus token system and method
CN112883068A (zh) * 2021-04-30 2021-06-01 支付宝(杭州)信息技术有限公司 区块链交易执行方法、区块链节点及控制装置
CN113269645B (zh) * 2021-05-28 2024-05-17 中邮信息科技(北京)有限公司 一种区块链的交易信息调度方法、装置、介质及电子设备
CN113379542B (zh) * 2021-05-28 2024-01-09 中邮信息科技(北京)有限公司 一种区块链交易的查询方法、装置、介质及电子设备
CN113378240B (zh) * 2021-06-23 2023-03-28 浪潮云信息技术股份公司 一种基于区块链的同步调用用户身份认证方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201602933A (zh) * 2014-04-14 2016-01-16 21公司 數位貨幣探勘電路
CN106445711A (zh) * 2016-08-28 2017-02-22 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
CN106503589A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 区块链交易信息正确性的校验方法、装置及系统
CN106506146A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 基于区块链技术的交易信息校验方法、装置及系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819020A (en) * 1995-10-16 1998-10-06 Network Specialists, Inc. Real time backup system
US5931917A (en) * 1996-09-26 1999-08-03 Verifone, Inc. System, method and article of manufacture for a gateway system architecture with system administration information accessible from a browser
US7620680B1 (en) * 2002-08-15 2009-11-17 Microsoft Corporation Fast byzantine paxos
US20060235795A1 (en) 2005-04-19 2006-10-19 Microsoft Corporation Secure network commercial transactions
CA2792555C (en) * 2010-04-09 2019-06-18 Visa International Service Association System and method for securely validating transactions
US11232415B2 (en) * 2015-05-28 2022-01-25 OX Labs Inc. Method for cryptographically managing title transactions
CN105488665A (zh) * 2015-11-25 2016-04-13 布比(北京)网络技术有限公司 一种去中心化的交易方法
CN105630609B (zh) 2016-02-24 2021-05-11 杭州复杂美科技有限公司 区块链的打包存储方法
CN106060036B (zh) * 2016-05-26 2019-07-16 布比(北京)网络技术有限公司 去中心化共识方法及装置
RU2649788C1 (ru) 2016-06-16 2018-04-04 Общество С Ограниченной Ответственностью "Яндекс" Способ и система для обработки запроса на транзакцию в распределенных системах обработки данных
CN106372868B (zh) * 2016-09-06 2020-02-18 联动优势科技有限公司 一种对写入区块链的交易数据的验证方法和装置
US10862959B2 (en) * 2016-11-28 2020-12-08 Keir Finlow-Bates Consensus system and method for adding data to a blockchain
CN111612468B (zh) * 2017-03-24 2024-03-19 创新先进技术有限公司 一种发送交易信息和共识验证的方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201602933A (zh) * 2014-04-14 2016-01-16 21公司 數位貨幣探勘電路
CN106445711A (zh) * 2016-08-28 2017-02-22 杭州云象网络技术有限公司 一种应用于区块链的拜占庭容错共识方法
CN106503589A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 区块链交易信息正确性的校验方法、装置及系统
CN106506146A (zh) * 2016-10-26 2017-03-15 北京瑞卓喜投科技发展有限公司 基于区块链技术的交易信息校验方法、装置及系统

Also Published As

Publication number Publication date
RU2735156C1 (ru) 2020-10-28
CN107392611A (zh) 2017-11-24
TW201835831A (zh) 2018-10-01
AU2018240159B2 (en) 2021-02-04
US20190347663A1 (en) 2019-11-14
EP3543937A1 (en) 2019-09-25
EP3543937A4 (en) 2019-12-04
CN111612468B (zh) 2024-03-19
JP2020516973A (ja) 2020-06-11
AU2018240159A1 (en) 2019-07-11
JP6794551B2 (ja) 2020-12-02
SG10202107139RA (en) 2021-08-30
CN107392611B (zh) 2020-04-24
CA3047884A1 (en) 2018-09-27
ZA201904053B (en) 2021-01-27
CA3047884C (en) 2021-01-19
MX2019007557A (es) 2019-09-06
KR102151899B1 (ko) 2020-09-03
WO2018171545A1 (zh) 2018-09-27
PH12019501470A1 (en) 2020-02-24
KR20190086747A (ko) 2019-07-23
BR112019012905A2 (pt) 2019-12-03
CN111612468A (zh) 2020-09-01
US10679217B2 (en) 2020-06-09

Similar Documents

Publication Publication Date Title
TWI727120B (zh) 一種發送交易資訊和共識驗證的方法及裝置
WO2018161901A1 (zh) 一种共识方法及装置
JP6876806B2 (ja) ブロックチェーンコンセンサス形成の方法およびデバイス
WO2018171543A1 (zh) 一种广播消息的方法及装置
TWI696083B (zh) 一種基於區塊鏈的共識方法及裝置
JP6675518B1 (ja) サービス要求を処理するための方法およびデバイス
KR102050006B1 (ko) 서비스 실행 방법 및 장치
WO2018219283A1 (zh) 一种区块链共识方法及设备
WO2018214835A1 (zh) 一种区块链业务受理及业务共识方法及装置
JP2020508594A (ja) サービス処理およびコンセンサスの方法およびデバイス
WO2021000570A1 (zh) 模型加载方法及系统、控制节点及执行节点
CN109064327B (zh) 一种智能合约处理方法、装置及设备
WO2020168933A1 (zh) 一种网络请求的处理方法、装置、终端及存储介质
WO2018103555A1 (zh) 群组消息通知方法、客户端、电子设备和服务器
US11246086B2 (en) Method for initiating and terminating a scan of a wireless device, and wireless device
US10929191B2 (en) Loading models on nodes having multiple model service frameworks