TWI718714B - 聯盟鏈中的請求處理方法、系統、裝置及設備 - Google Patents
聯盟鏈中的請求處理方法、系統、裝置及設備 Download PDFInfo
- Publication number
- TWI718714B TWI718714B TW108137832A TW108137832A TWI718714B TW I718714 B TWI718714 B TW I718714B TW 108137832 A TW108137832 A TW 108137832A TW 108137832 A TW108137832 A TW 108137832A TW I718714 B TWI718714 B TW I718714B
- Authority
- TW
- Taiwan
- Prior art keywords
- node
- request
- user
- processing
- nodes
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, 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/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0609—Buyer or seller confidence or verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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/3239—Cryptographic 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Theoretical Computer Science (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Entrepreneurship & Innovation (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本發明揭露聯盟鏈中的請求處理方法、系統、裝置及設備。本說明書實施例所提供的方案,在用戶端需要向聯盟鏈中的其它節點發送業務請求的場景下,透過在節點中對於自身處理其它節點使用者請求的第一處理次數,和其它節點處理自身使用者請求的第二處理次數,並進行計算,進而得出判斷結果是否需要對該請求進行延遲處理還是轉發至另一節點進行處理。從而可以在聯盟鏈的各節點之間對請求實現更為平衡的處理。
Description
本說明書實施例涉及資訊技術領域,尤其涉及聯盟鏈中的請求處理方法、系統、裝置及設備。
在聯盟鏈中,常常存在功能差異很大的多個節點,例如,在一條著作權存證的聯盟鏈上,可能包括作品發佈節點、版權登記節點、版權轉讓節點以及公證節點等等。而基於使用者的不同需求,和使用者對接的往往只是其中的一個節點,該節點可以認為是該使用者的對接節點。不同的節點所對接的使用者數量各不相同。有的多,有的少。
在某些業務場景下,例如,用戶端需要對聯盟鏈進行可信度驗證時,此時聯盟鏈中的使用者需要向其它節點(非對接節點)發出業務請求時,則會造成使用者多的節點經常會請求到使用者少的節點,造成聯盟鏈中的節點對於請求的處理不平衡。
基於此,需要一種對聯盟鏈中的請求進行處理的方案。
針對現有聯盟鏈中的請求處理不平衡的問題,為在聯盟鏈的各節點中對請求實現更平衡的處理,本說明書實施例提供一種聯盟鏈中的請求處理方案,該方案的第一態樣,包括一種聯盟鏈中的請求處理方法,在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,包括:
用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊;
任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者;
當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理;
用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
第二態樣,本說明書實施例還提供一種聯盟鏈的可信度驗證方法,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括:
獲取聯盟鏈中的多個節點位址以發送請求;
在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求;
接收所述多個節點位址返回的請求結果;
根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度;
其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊。
第三態樣,本說明書實施例還提供一種聯盟鏈中的請求處理方法,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括:
接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊;
確定所述用戶端是自身節點使用者還是其它節點使用者;
當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理。
與第一態樣對應的,本說明書實施例還提供一種聯盟鏈中的請求處理系統,在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,包括:
用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊;
任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者;
當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理;
用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
與第二態樣對應的,本說明書實施例還提供一種聯盟鏈的可信度驗證裝置,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括:
獲取模組,獲取聯盟鏈中的多個節點位址以發送請求;
判斷模組,在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求;
接收模組,接收所述多個節點位址返回的請求結果;
驗證模組,根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度;
其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊。
與第三態樣對應的,本說明書實施例還提供一種聯盟鏈中的請求處理裝置,位於所述聯盟鏈中的節點上,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,所述裝置包括:
接收模組,接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊;
身份確定模組,確定所述用戶端是自身節點使用者還是其它節點使用者;
處理次數確定模組,當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
判斷模組,根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理;
發送模組,發送請求處理結果至所述用戶端。
本說明書實施例所提供的方案,在用戶端需要向聯盟鏈中的其它節點發送業務請求的場景下,透過在節點中對於自身處理其它節點使用者請求的第一處理次數,和其它節點處理自身使用者請求的第二處理次數,並進行計算,進而得出判斷結果是否需要對該請求進行延遲處理還是轉發至另一節點進行處理,從而可以在聯盟鏈的各節點之間對請求實現更為平衡的處理。
應當理解的是,以上的一般描述和後文的細節描述僅是示例性和解釋性的,並不能限制本說明書實施例。
此外,本說明書實施例中的任一實施例並不需要達到上述的全部效果。
為了使本領域技術人員更好地理解本說明書實施例中的技術方案,下面將結合本說明書實施例中的圖式,對本說明書實施例中的技術方案進行詳細地描述,顯然,所描述的實施例僅僅是本說明書的一部分實施例,而不是全部的實施例。基於本說明書中的實施例,本領域普通技術人員所獲得的所有其他實施例,都應當屬於保護的範圍。
在聯盟鏈中通常包含了多個不同的功能節點,在當前,聯盟鏈常採用的一種架構為,各功能節點分別面向各自的使用者,使用者透過他們感興趣的功能節點接入聯盟鏈。
在本說明書實施例所涉及的聯盟鏈中的節點,可以認為每個節點都參與聯盟鏈網路的路由功能,同時也可以包含其他功能,例如,每個節點都可以參與驗證並傳播交易及區塊資訊,發現並維持與對等節點的連接,以及還可以在本機存放區有完整的聯盟鏈,和一些與聯盟鏈相關的資料。
如圖1所示,圖1為當前聯盟鏈中所涉及的一種架構示意圖。在圖1中,聯盟鏈網路中的節點可能都包含有不同的功能,以及,各節點由於提供不同的功能,面向的目標使用者也常常並不相同,在同一聯盟鏈中,各功能節點還經常分別開發自己的應用程式APP讓自身節點使用者進行註冊並接入。而使用者則通常從中選取一個節點對接聯盟鏈,進行交易發佈以及驗證。
在這種方式下,各節點的對接使用者的數量各不相同,有些節點的使用者數量多,如圖1中的A節點,有些節點的使用者數量少,如圖1中的C節點,而有些節點則可能由於需要對公眾保密,則完全沒有註冊使用者如圖1中的E、F節點。在一些業務場景下,當使用者需要向其它節點(非對接節點)發送請求時,各節點之間對於請求的處理就顯的很不平衡,註冊使用者少的節點總是會接收到超出本身本應負責處理的請求數量。因此,本說明書實施例提供一種聯盟鏈中的請求處理方法,實現在聯盟中對使用者請求的平衡處理。
以下結合圖式,詳細說明本說明書各實施例提供的技術方案。本說明書實施例的方案的第一態樣,如圖2所示,圖2是本說明書實施例提供的系統方面的一種聯盟鏈中的請求處理方法的流程示意圖,在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,該流程具體包括如下步驟:
S201,用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊。
由於在使用者完成交易並透過對接節點上鏈存證之後,就會收到一個關於該存證交易的通知消息,通常其中就包括摘要雜湊,並保存於用戶端本地。因此,用戶端總是可以從本地中獲取該摘要雜湊,並將其加入交易位置查詢請求中。
在用戶端方面,可以是在收到該通知消息後,根據使用者的指令發起查詢請求;也可以是,接收到該通知消息即觸發查詢請求。
在使用者透過對接節點接入聯盟鏈進行交易處理時,交易的完成和驗證仿佛是對接節點為中心的,進而,使用者就會對該對接節點以及聯盟鏈的可信度產生疑慮。因此,在這種業務場景下,用戶端可以發送位置查詢請求及/或簡單支付驗證SPV請求,目的是為了對聯盟鏈的可信度進行驗證。
S203,任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者。
確定的方式可以是透過用戶端標識或者使用者ID等等方式來確認。在聯盟鏈中,各節點可以事先約定好一套互相認可的協議,用於識別各節點的用戶端或者節點使用者。
例如,給各節點所提供的用戶端進行序號標記,每個序號對應一個節點,在請求中攜帶該序號,任一節點接收到請求時即可確認該請求來自於哪個節點的對接使用者。
又例如,各節點可以在提供各節點使用者註冊時,對各節點使用者ID分別加入頭部標識,在使用者發送請求是攜帶該使用者ID,從而任一節點接收到請求時可以解析使用者ID的頭部得知該請求來自於哪個節點的對接使用者。
S205,當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數。
若節點為自身節點使用者,則直接進行處理即可。在節點為其它節點使用者時,則需要進行進一步的判斷。具體而言,可以在聯盟鏈各節點之間共同維護一張表格,用以記載各節點所處理的任一其它節點的請求的次數,從而,對於任一節點,可以透過該表得出自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數。
第一處理次數和第二處理次數可以以一段時間為週期,例如,每天或者每月,定期進行清除,也可以是全部歷史資料的數量統計。
S207,根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理。
判斷是否延遲處理或者轉發的條件,可以是根據第一處理次數X和第二處理次數Y計算獲得一個貢獻值Z與預設臨界值進行比較,例如,Z=(X-Y)/Y,或者,Z=X/Y,或者Z=(X-Y)等等。貢獻值表徵了一個節點在處理請求時的“自身貢獻”和“請求他人”的差異,一旦貢獻值超過了一定臨界值,則表示該節點已經做出了較多貢獻,則該節點可以延遲處理接收到的其它節點使用者所發送的請求,或者將其它節點所發送的請求轉發出去。當然,如果不滿足預設的貢獻值條件,則依然在本地進行處理即可。
基於聯盟共用的原則,若任一使用者在選取節點發送請求時隨機選取的情形下,容易理解,總是那些自身註冊使用者少的節點會接收到更多的請求。如圖1中的架構下,節點E和F因為沒有註冊使用者,其貢獻比例值為無窮大,其次則為C節點。而在實際運用中,註冊使用者少的節點,因為其一般無需處理較大規模的業務,其一般對於大流量的處理能力相對弱(可稱此類節點為弱節點,例如圖1中的節點E、F和C)。對請求進行延遲處理請求可以有效降低弱節點的負荷。由於在本說明書實施例的方案中,用戶端並不需要即時得到驗證結果,因此各節點對於請求的處理可以是非同步的,延遲處理並不會影響用戶端對於聯盟鏈的可信度的驗證效果。
在延遲或者轉移請求時,一種可實施方式為只要到達了貢獻臨界值條件即執行延遲或者轉移處理,另一種可實施方式為,到達了貢獻臨界值條件之後,進一步區分使用者是自身節點使用者還是其它節點使用者,並將其它節點使用者的請求執行延遲或者轉移處理。
對於延遲處理而言,一般而言,可以設定一個時間臨界值,將接收到的請求推遲3個小時處理;或者,確定處理次數臨界值為1000,如果自身的貢獻值Z=(X-Y)超過了該臨界值,則延遲處理之後的所有請求。
而節點在轉發請求時,在一種實施方式下,可以隨機進行轉發,此時,在另一節點接收到該請求時,仍然可以進行延遲判斷或者請求判斷。在本說明書實施例所提供的方案中,為提高驗證結果的可信度,在將請求隨機轉移所述請求至另一其它節點時,所述另一其它節點不包括所述用戶端的對接節點。
在另一種實施方式下,也可以根據上述的貢獻值進行轉發。例如,根據聯盟鏈之間共同維護的表格確定出各節點的貢獻值,將請求優先轉發至貢獻值最小的節點。需要說明的是,延遲處理或者轉發請求並非不處理,在延遲處理時限到達時,則應繼續處理該類請求,並將處理結果返回至用戶端。
本說明書實施例所涉及的請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,均可用在使用者對於聯盟鏈的可信度進行驗證的場景下。
對於位置查詢請求而言,由於一個區塊鏈由多個區塊組成,同時,一個區塊中通常包含多個交易。因此,在本說明書實施例中,所述的位置資訊具體指的是該交易被存證時,處於區塊鏈中的哪個區塊上,以及,在該區塊中的什麼位置。在區塊鏈中,可以有多種方式用來標識不同的區塊,例如,區塊頭雜湊值或者區塊高度(block height)。區塊頭雜湊值即為區塊頭進行雜湊計算而得到的雜湊值,可以用於唯一、明確地標識一個區塊。在區塊鏈中,通常第一個區塊其區塊高度為0,以後每增加一個區塊,區塊高度加1。一個區塊通常有一個明確的區塊高度。因此,區塊頭雜湊值或者區塊高度可以作為區塊中繼資料的一部分,被儲存在節點中一個獨立的資料庫表中,以便於索引和更快地檢索到該區塊。同時,在一個區塊中,由於通常包含了多個交易,因此,還可以用各交易在該區塊中的位址偏移量來分別標識區塊中的交易。顯而易見,在同一個區塊中,各交易的位址偏移量並不相同。
進而,可以在交易所處的區塊上鏈存證以後,各節點中可以透過維護一張形如(交易摘要雜湊,區塊頭雜湊值,位址偏移量),或者,(交易摘要雜湊,區塊高度,位址偏移量)的資料表,就可以透過交易的摘要雜湊查詢得到對應的區塊標識以及交易在區塊中的位址。換言之,節點可以透過交易的摘要雜湊確定該交易在聯盟鏈中的位置。當然,由於區塊鏈的具體格式是可以自訂的,在不同的區塊格式下,位置資訊的內容也會有所不同,這並不構成對本方案的限定。
而對於SPV驗證而言,在區塊鏈的每個區塊中,包含了記錄于該區塊的所有交易,並且可以默克爾Merkle樹表示。區塊中所有的交易將資料雜湊化,然後將雜湊值儲存至相應的葉子節點中。樹中的每個葉子節點表徵了一個交易。樹中的一個葉子節點表徵區塊中存在一筆對應的交易。為了證明區塊中存在某個特定的目標交易,一個節點只需要計算log2
N個雜湊值,形成一條從目標交易到樹根的Merkle路徑即可。節點在進行簡單支付驗證(Simplified Payment Verification,SPV)時,不必保存所有交易也不必下載整個區塊。節點可以僅僅保存區塊頭,並透過目標交易的雜湊和Merkle路徑來驗證目標交易是否存在于該區塊中。換言之,各節點的SPV驗證結果是一個二值結果,要麼為“是”,要麼為“否”。
S209,用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
對於位置查詢請求而而言,由於一個交易在聯盟鏈中只會有一個確定的位置,因此,聯盟鏈的可信度可以基於查詢結果的一致程度而定。理論上,各節點所返回的位置資訊應該完全相同。一個較為嚴格的驗證方式即為,若所有位置查詢結果均一致,則該聯盟鏈為可信的。當然,由於各種網路原因、設備原因等等,可以容許一定的偏差。例如,根據返回的所有結果的對一致程度進行計算,若返回的結果中不存在占比超過95%的相同查詢結果,則認為聯盟度可信度為0,否則,將所述相同結果的占比作為該聯盟鏈的可信度。
而對於SPV驗證請求而言,由於一個交易在聯盟鏈中要麼存在,要麼不存在,理論上,當聯盟鏈沒有問題時,各節點所返回的SPV驗證結果應該完全相同。因此,一個較為嚴格的可信度確認方式為,若所有SPV驗證結果均一致為“是”,則確認該聯盟鏈是可信的,否則是不可信的。當然,由於各種網路原因、設備原因等等,可以容許一定的偏差。例如,設定一個臨界值,若SPV驗證結果的一致為“是”的程度超過該臨界值,則確認該聯盟鏈是可信的。
需要說明的是,上述基於位置查詢結果的一致性進行驗證的方案,和基於SPV驗證的結果的一致性進行驗證的方案,屬於可以同時分開進行的方案。在實際操作中,二者的驗證結果是分別獨立的。換言之,用戶端可以只選擇一種方式執行驗證,也可以同時選擇兩種方式執行驗證,在同時執行兩種驗證方案時,需要二種驗證方案的結果同時滿足一致性條件,才認為聯盟鏈是可信的。以及,在驗證的過程中,兩種方案的執行不分先後。
進一步地,當確認該聯盟鏈不可信時,還可以發出警報。具體的,警報消息中可以指出各節點的請求結果不一致的程度是多少(例如,各SPV結果中“是”和“否”的結果分別是多少),以及,具體的給出與多數結果不一致的節點和該類節點的請求結果。以及,還可以根據返回的所有結果的不一致的程度計算一個可信度數值作為參考。例如,若返回的結果中不存在占比超過一定臨界值的相同查詢結果,則認為聯盟度可信,否則,則認為聯盟鏈不可信。
本說明書實施例所提供的方案,在用戶端需要向聯盟鏈中的其它節點發送業務請求的場景下,透過在節點中對於自身處理其它節點使用者請求的第一處理次數,和其它節點處理自身使用者請求的第二處理次數,並進行計算,進而得出判斷結果是否需要對該請求進行延遲處理還是轉發至另一節點進行處理,從而可以在聯盟鏈的各節點之間對請求實現更為平衡的處理。
在一種具體的實施方式下,用戶端獲取聯盟鏈中的多個節點位址,可以是用戶端隨機獲取聯盟鏈中的多個節點位址,隨機獲取節點位址驗證可以使得驗證結果更加公正,同時,也會使得使用者的請求平均的流向各節點。又或者,用戶端獲取聯盟鏈中包含所述對接節點位址的多個節點位址,在這種方式下,使用者可以首先選取一批節點位址,然後再將對接節點的位址加入即可。加入對接節點進行驗證時,在返回的結果中也包含對接節點的驗證結果,可以使得驗證更具有針對性,提高使用者體驗。
在一種實施方式下,節點可以對於任意連接自己的用戶端所發送的查詢請求或者SPV請求進行處理。在另一種實施方式下,基於聯盟共用的原則,各節點還可以提供查詢服務或者SPV服務給白名單使用者,節點可以根據白名單確認所述用戶端的使用者類型為非法使用者或者合法使用者,以及進一步地對合法使用者進行區分,確認是自身節點使用者還是其它節點使用者,如果根據白名單判斷用戶端是非法使用者,則不進行處理。此處的非法使用者可以認為是沒有註冊過的使用者,或者時限到期的使用者,或者許可權受限的使用者等等。換言之,節點可以根據白名單確認發送請求的用戶端是非法使用者、自身節點合法使用者或者非自身節點合法使用者,用戶端是合法使用者時節點才對請求進行處理。
確定白名單使用者的具體方式包括:聯盟鏈中的任一節點確定自身的白名單,並廣播白名單至聯盟鏈中的其它節點,以便其它節點根據所述白名單確定是否執行查詢處理。一種常見的處理方式即為,聯盟鏈中的任一節點將自身的註冊使用者確認為白名單使用者並進行廣播。而其它節點則可以根據請求所包含的用戶端標識是否是白名單使用者,來決定是否進行進一步的處理。此處的白名單可以以節點為最小單元,也可以以使用者為最小單元,各節點所保存的白名單使用者可以相同,也可以不同。節點接收到白名單使用者所發送的請求時才進行處理。
例如,假設聯盟鏈中存在A、B、C、D四個節點,在上述方案中,可以B、C、D節點將A節點的對接使用者確認為白名單使用者,四個節點共同維護;也可以在B節點的白名單使用者中包括A節點的使用者,但是C、D節點的白名單使用者中不包括A節點的使用者。具體的情形可以基於業務情形自行確定。
在較為一般的情形中,政府機構(例如公證處)或者公益機構(例如慈善機構)節點的對接使用者可以是所有聯盟鏈中其它節點的白名單使用者,一個節點的業務夥伴節點的節點使用者也可以是該節點的白名單使用者。進一步,在各節點中還可以根據使用者的來源或者歷史行為資料以及其它因素(例如,第三方信用評估分),對白名單使用者進行許可權分級,例如,最低許可權的白名單使用者只有查詢許可權,更高許可權的白名單使用者可能還可以擁有進一步的其它許可權等等。
在一種實施方式下,用戶端在選取多個節點時,有可能連續多次選到同一個節點,在這種方式下,用戶端可以判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求。發送次數的統計可以統計一段時間內的次數,也可以統計所有的歷史次數。透過上述方式,在用戶端方面即可以避免連續的請求同一節點,避免對另一節點的負荷的影響。
本說明書實施例的方案的第二態樣,如圖3所示,圖3為本說明書是實施例所提供的用戶端方面的一種聯盟鏈的可信度驗證方法的流程示意圖,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括:
S301,獲取聯盟鏈中的多個節點位址以發送請求;其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊;
S303,在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求;
S305,接收所述多個節點位址返回的請求結果;
S307,根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度。
進一步地,所述方法中S301中,獲取聯盟鏈中的多個節點位址,包括隨機獲取聯盟鏈中的多個節點位址;或者,獲取聯盟鏈中包含所述對接節點位址的多個節點位址。
本說明書實施例的方案的第三態樣,如圖4所示,圖4為本說明書是實施例所提供的一種聯盟鏈中的請求處理方法的流程示意圖,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括:
S401,接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊;
S403,確定所述用戶端是自身節點使用者還是其它節點使用者;
S405,當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
S407,根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理。
進一步地,在接收用戶端所發送的請求之前,上述方法還包括:確定自身節點的白名單使用者,所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者;發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
進一步的,上述方法還包括,接收到請求時,判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
進一步的,所述步驟S407中的,轉移所述請求至其它節點處理,包括隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
與第一態樣對應的,本說明書實施例還提供一種聯盟鏈中的請求處理系統,包括用戶端和聯盟鏈網路,所述聯盟鏈網路包括多個節點;在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,
用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊;
任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者;
當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理;
用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
進一步地,在所述系統中,用戶端隨機獲取聯盟鏈中的多個節點位址,發送請求至聯盟鏈中的所述多個節點;或者,用戶端獲取聯盟鏈中包含所述對接節點位址的多個節點位址,發送請求至聯盟鏈中的所述多個節點。
進一步地,在所述系統中,所述節點隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
進一步地,在所述系統中,在用戶端發送請求至聯盟鏈中的多個節點之前, 任一節點確定自身節點的白名單使用者,所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者;發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
進一步地,在所述系統中,在確定自身節點對於其它節點使用者的請求的第一處理次數之前, 任一節點接收到請求時,根據白名單判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
進一步地,在所述系統中,用戶端針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求。
與第二態樣對應的,本說明書實施例還提供一種聯盟鏈的可信度驗證裝置,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,如圖5所示,圖5為本說明書實施例所提供的一種聯盟鏈的可信度驗證裝置的結構示意圖,所述裝置包括:
獲取模組501,獲取聯盟鏈中的多個節點位址以發送請求;
判斷模組503,在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求;當然,如果沒有達到臨界值,則正常發送請求;
接收模組505,接收所述多個節點位址返回的請求結果;
驗證模組507,根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度;
其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊。
進一步地,所述獲取模組501,隨機獲取聯盟鏈中的多個節點位址;或者,獲取聯盟鏈中包含所述對接節點位址的多個節點位址。
與第三態樣對應的,本說明書實施例還提供一種聯盟鏈中的請求處理裝置,位於所述聯盟鏈中的節點上,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,如圖6所示,圖6為本說明書實施例所提供的一種請求處理裝置的結構示意圖,所述裝置包括:
接收模組601,接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊;
身份確定模組603,確定所述用戶端是自身節點使用者還是其它節點使用者;
處理次數確定模組605,當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數;
判斷模組607,根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理。
發送模組609,任一節點在處理完之後,即將發送結果至所述用戶端。
進一步地,所述裝置還包括白名單標記模組611,確定自身節點的白名單使用者,所述所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者;發送模組609,發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
進一步地,所述判斷模組607還用於,接收到請求時,根據白名單判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
進一步地,所述發送模組還用於,隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
本說明書實施例還提供一種電腦設備,其至少包括記憶體、處理器及儲存在記憶體上並可在處理器上運行的電腦程式,其中,處理器執行所述程式時實現圖3所示的聯盟鏈的可信度驗證方法。
本說明書實施例還提供一種電腦設備,其至少包括記憶體、處理器及儲存在記憶體上並可在處理器上運行的電腦程式,其中,處理器執行所述程式時實現圖4所示的聯盟鏈中的請求處理方法。
圖7示出了本說明書實施例所提供的一種更為具體的計算設備硬體結構示意圖,該設備可以包括:處理器1010、記憶體1020、輸入/輸出介面1030、通信介面1040和匯流排1050。其中處理器1010、記憶體1020、輸入/輸出介面1030和通信介面1040透過匯流排1050實現彼此之間在設備內部的通信連接。
處理器1010可以採用通用的CPU(Central Processing Unit,中央處理器)、微處理器、應用專用積體電路(Application Specific Integrated Circuit,ASIC)、或者一個或多個積體電路等方式實現,用於執行相關程式,以實現本說明書實施例所提供的技術方案。
記憶體1020可以採用ROM(Read Only Memory,唯讀記憶體)、RAM(Random Access Memory,隨機存取記憶體)、靜態儲存設備,動態儲存裝置設備等形式實現。記憶體1020可以儲存作業系統和其他應用程式,在透過軟體或者韌體來實現本說明書實施例所提供的技術方案時,相關的程式碼保存在記憶體1020中,並由處理器1010來呼叫執行。
輸入/輸出介面1030用於連接輸入/輸出模組,以實現資訊輸入及輸出。輸入輸出/模組可以作為組件配置在設備中(圖中未示出),也可以外接於設備以提供相應功能。其中輸入裝置可以包括鍵盤、滑鼠、觸控式螢幕、麥克風、各類感測器等,輸出設備可以包括顯示器、揚聲器、振動器、指示燈等。
通信介面1040用於連接通信模組(圖中未示出),以實現本設備與其他設備的通信互動。其中通信模組可以透過有線方式(例如USB、電纜等)實現通信,也可以透過無線方式(例如行動網路、WIFI、藍牙等)實現通信。
匯流排1050包括一通路,在設備的各個組件(例如處理器1010、記憶體1020、輸入/輸出介面1030和通信介面1040)之間傳輸資訊。
需要說明的是,儘管上述設備僅示出了處理器1010、記憶體1020、輸入/輸出介面1030、通信介面1040以及匯流排1050,但是在具體實施過程中,該設備還可以包括實現正常運行所必需的其他組件。此外,本領域的技術人員可以理解的是,上述設備中也可以僅包含實現本說明書實施例方案所必需的組件,而不必包含圖中所示的全部組件。
本說明書實施例還提供一種電腦可讀儲存媒體,其上儲存有電腦程式,該程式被處理器執行時實現圖3所示的聯盟鏈的可信度驗證方法。
本說明書實施例還提供另一種電腦可讀儲存媒體,其上儲存有電腦程式,該程式被處理器執行時實現圖4所示的聯盟鏈中的請求處理方法。
電腦可讀媒體包括永久性和非永久性、抽取式和非抽取式媒體可以由任何方法或技術來實現資訊儲存。資訊可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可抹除可程式唯讀記憶體(EEPROM)、快閃記憶體或其他內部記憶體技術、唯讀光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)或其他光學儲存器、磁盒式磁帶,磁帶式磁碟儲存器或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的資訊。按照本文中的界定,電腦可讀媒體不包括暫態媒體(transitory media),如調變的資料訊號和載波。
透過以上的實施方式的描述可知,本領域的技術人員可以清楚地瞭解到本說明書實施例可借助軟體加必需的通用硬體平台的方式來實現。基於這樣的理解,本說明書實施例的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該電腦軟體產品可以儲存在儲存媒體中,如ROM/RAM、磁碟、光碟等,包括若干指令用以使得一台電腦設備(可以是個人電腦,伺服器,或者網路設備等)執行本說明書實施例各個實施例或者實施例的某些部分所述的方法。
上述實施例闡明的系統、方法、模組或單元,具體可以由電腦晶片或實體實現,或者由具有某種功能的產品來實現。一種典型的實現設備為電腦,電腦的具體形式可以是個人電腦、膝上型電腦、蜂巢式電話、相機電話、智慧型電話、個人數位助理、媒體播放器、導航設備、電子郵件收發設備、遊戲主機、平板電腦、可穿戴設備或者這些設備中的任意幾種設備的組合。
本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於方法實施例而言,由於其基本相似於方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的方法實施例僅僅是示意性的,其中所述作為分離部件說明的模組可以是或者也可以不是實體上分開的,在實施本說明書實施例方案時可以把各模組的功能在同一個或多個軟體及/或硬體中實現。也可以根據實際的需要選擇其中的部分或者全部模組來實現本實施例方案的目的。本領域普通技術人員在不付出創造性勞動的情況下,即可以理解並實施。
以上所述僅是本說明書實施例的具體實施方式,應當指出,對於本技術領域的普通技術人員來說,在不脫離本說明書實施例原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本說明書實施例的保護範圍。
S201:步驟
S203:步驟
S205:步驟
S207:步驟
S209:步驟
S301:步驟
S303:步驟
S305:步驟
S307:步驟
S401:步驟
S403:步驟
S405:步驟
S407:步驟
501:獲取模組
503:判斷模組
505:接收模組
507:驗證模組
601:接收模組
603:身份確定模組
605:處理次數確定模組
607:判斷模組
609:發送模組
611:白名單標記模組
1010:處理器
1020:記憶體
1030:輸入/輸出介面
1040:通信介面
1050:匯流排
為了更清楚地說明本說明書實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的圖式作簡單地介紹,顯而易見地,下面描述中的圖式僅僅是本說明書實施例中記載的一些實施例,對於本領域普通技術人員來講,還可以根據這些圖式獲得其他的圖式。
[圖1]為當前聯盟鏈中所涉及的一種架構示意圖;
[圖2]是本說明書實施例提供的系統方面的一種聯盟鏈中的請求處理方法的流程示意圖;
[圖3]為本說明書是實施例所提供的用戶端方面的一種聯盟鏈的可信度驗證方法的流程示意圖;
[圖4]為本說明書是實施例所提供的一種聯盟鏈中的請求處理方法的流程示意圖;
[圖5]為本說明書實施例所提供的一種聯盟鏈的可信度驗證裝置的結構示意圖;
[圖6]為本說明書實施例所提供的一種請求處理裝置的結構示意圖;以及
[圖7]是用於配置本說明書實施例方法的一種設備的結構示意圖。
Claims (26)
- 一種聯盟鏈中的請求處理方法,在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,包括: 用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊; 任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者; 當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數; 根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理; 用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
- 如請求項1所述的方法,用戶端發送請求至聯盟鏈中的多個節點,包括: 用戶端隨機獲取聯盟鏈中的多個節點位址,發送請求至聯盟鏈中的所述多個節點;或者, 用戶端獲取聯盟鏈中包含所述對接節點位址的多個節點位址,發送請求至聯盟鏈中的所述多個節點。
- 如請求項1所述的方法,轉移所述請求至其它節點處理,包括: 隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
- 如請求項1所述的方法,在用戶端發送請求至聯盟鏈中的多個節點之前,所述方法還包括: 任一節點確定自身節點的白名單使用者,所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者; 發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
- 如請求項4所述的方法,在確定自身節點對於其它節點使用者的請求的第一處理次數之前,所述方法還包括: 任一節點接收到請求時,根據白名單判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
- 如請求項1所述的方法,用戶端發送請求至聯盟鏈中的多個節點,包括: 針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求。
- 一種聯盟鏈的可信度驗證方法,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括: 獲取聯盟鏈中的多個節點位址以發送請求; 在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求; 接收所述多個節點位址返回的請求結果; 根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度; 其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊。
- 如請求項7所述的方法,獲取聯盟鏈中的多個節點位址,包括: 隨機獲取聯盟鏈中的多個節點位址;或者, 獲取聯盟鏈中包含所述對接節點位址的多個節點位址。
- 一種聯盟鏈中的請求處理方法,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括: 接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊; 確定所述用戶端是自身節點使用者還是其它節點使用者; 當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數; 根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理。
- 如請求項9所述的方法,在接收用戶端所發送的請求之前,所述方法還包括: 確定自身節點的白名單使用者,所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者; 發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
- 如請求項10所述的方法,所述方法還包括: 接收到請求時,判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
- 如請求項9所述的方法,轉移所述請求至其它節點處理,包括: 隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
- 一種聯盟鏈中的請求處理系統,在用戶端產生交易,並透過對接節點將所述交易上鏈存證後,包括: 用戶端發送請求至聯盟鏈中的多個節點,所述請求包括交易位置查詢請求及/或簡單支付驗證SPV請求,所述請求中包含所述交易的摘要雜湊; 任一節點接收所述請求,確定所述用戶端是自身節點使用者還是其它節點使用者; 當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數; 根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理; 用戶端基於多個節點分別返回的請求結果的一致程度,驗證包含所述交易資訊的聯盟鏈的可信度。
- 如請求項13所述的系統,用戶端隨機獲取聯盟鏈中的多個節點位址,發送請求至聯盟鏈中的所述多個節點;或者,用戶端獲取聯盟鏈中包含所述對接節點位址的多個節點位址,發送請求至聯盟鏈中的所述多個節點。
- 如請求項13所述的系統,所述節點隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
- 如請求項13所述的系統,在用戶端發送請求至聯盟鏈中的多個節點之前, 任一節點確定自身節點的白名單使用者,所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者;發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
- 如請求項16所述的系統,在確定自身節點對於其它節點使用者的請求的第一處理次數之前, 任一節點接收到請求時,根據白名單判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
- 如請求項13所述的系統,用戶端針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求。
- 一種聯盟鏈的可信度驗證裝置,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,包括: 獲取模組,獲取聯盟鏈中的多個節點位址以發送請求; 判斷模組,在發送請求前,針對所述多個節點中的任一節點,判斷對該節點的請求的發送次數是否到達臨界值,若是,對該節點延遲發送請求; 接收模組,接收所述多個節點位址返回的請求結果; 驗證模組,根據所述多個請求結果的一致程度,驗證所述聯盟鏈的可信度; 其中,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊。
- 如請求項19所述的裝置,所述獲取模組,隨機獲取聯盟鏈中的多個節點位址;或者,獲取聯盟鏈中包含所述對接節點位址的多個節點位址。
- 一種聯盟鏈中的請求處理裝置,位於所述聯盟鏈中的節點上,在使用者產生交易,並透過對接節點將所述交易上鏈存證後,所述裝置包括: 接收模組,接收用戶端所發送的請求,所述請求包括交易位置查詢請求或者簡單支付驗證SPV請求,所述請求中包含目標交易的摘要雜湊; 身份確定模組,確定所述用戶端是自身節點使用者還是其它節點使用者; 處理次數確定模組,當所述用戶端為其它節點使用者時,確定自身節點對於其它節點使用者的請求的第一處理次數,以及,確認其它節點對於自身節點使用者請求的第二處理次數; 判斷模組,根據所述第一處理次數和第二處理次數,執行對請求的處理,所述處理包括:延遲處理所述用戶端所發送的請求,或者,轉移所述請求至其它節點處理; 發送模組,發送請求處理結果至所述用戶端。
- 如請求項21所述的裝置,在接收用戶端所發送的請求之前,所述裝置還包括: 白名單標記模組,確定自身節點的白名單使用者,所述所述白名單用於確認所述用戶端的使用者類型為非法使用者或者合法使用者,所述合法使用者包括自身節點使用者或者其它節點使用者; 發送模組,發送白名單至聯盟鏈中的其它節點,以便其它節點接收並儲存所述白名單。
- 如請求項22所述的裝置,所述判斷模組還用於,接收到請求時,根據白名單判斷所述用戶端是否為合法使用者,若否,不對請求執行處理。
- 如請求項21所述的裝置,所述發送模組還用於,隨機轉移所述請求至另一其它節點,所述另一其它節點不包括所述用戶端的對接節點。
- 一種電腦設備,包括記憶體、處理器及儲存在記憶體上並可在處理器上運行的電腦程式,其中,所述處理器執行所述程式時實現如請求項7至8任一項所述的方法。
- 一種電腦設備,包括記憶體、處理器及儲存在記憶體上並可在處理器上運行的電腦程式,其中,所述處理器執行所述程式時實現如請求項9至12任一項所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811626391.2A CN110022345B (zh) | 2018-12-28 | 2018-12-28 | 联盟链中的请求处理方法、***、装置及设备 |
CN201811626391.2 | 2018-12-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202027458A TW202027458A (zh) | 2020-07-16 |
TWI718714B true TWI718714B (zh) | 2021-02-11 |
Family
ID=67188704
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108137832A TWI718714B (zh) | 2018-12-28 | 2019-10-21 | 聯盟鏈中的請求處理方法、系統、裝置及設備 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20210158353A1 (zh) |
EP (1) | EP3817333B1 (zh) |
CN (1) | CN110022345B (zh) |
SG (1) | SG11202100899YA (zh) |
TW (1) | TWI718714B (zh) |
WO (1) | WO2020134616A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110022345B (zh) * | 2018-12-28 | 2020-03-24 | 阿里巴巴集团控股有限公司 | 联盟链中的请求处理方法、***、装置及设备 |
US12019613B2 (en) * | 2019-07-18 | 2024-06-25 | EMC IP Holding Company LLC | Data integrity and consensuses with blockchain |
CN110620776B (zh) * | 2019-09-24 | 2021-11-26 | 腾讯科技(深圳)有限公司 | 一种数据转移信息传输方法及其装置 |
CN111125737B (zh) * | 2019-12-25 | 2022-07-19 | 河北先河环保科技股份有限公司 | 基于区块链的环境监测*** |
CN112333159B (zh) * | 2020-10-22 | 2022-09-23 | 北京梆梆安全科技有限公司 | 基于区块链的移动物联网终端访问控制方法、装置及*** |
CN113032735B (zh) * | 2021-05-21 | 2021-08-17 | 浙江数秦科技有限公司 | 基于区块链技术的数字资产存证及侵权监测***和方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN107067262A (zh) * | 2015-09-30 | 2017-08-18 | 阿里巴巴集团控股有限公司 | 业务处理方法、***及用户终端 |
CN107506997A (zh) * | 2017-08-04 | 2017-12-22 | 现在(北京)支付股份有限公司 | 基于区块链技术的用户移动终端上主动扫码的支付方法 |
TWM561279U (zh) * | 2018-02-12 | 2018-06-01 | 林俊良 | 用於處理金融資產之策略模型腳本之區塊鏈系統與節點伺服器 |
CN108681900A (zh) * | 2018-07-18 | 2018-10-19 | 众安信息技术服务有限公司 | 轻节点验证交易的方法 |
WO2018201147A2 (en) * | 2017-04-28 | 2018-11-01 | Neuromesh Inc. | Methods, apparatus, and systems for controlling internet-connected devices having embedded systems with dedicated functions |
CN109087204A (zh) * | 2018-07-27 | 2018-12-25 | 杭州复杂美科技有限公司 | 跨链交易校验方法、设备和存储介质 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103095727B (zh) * | 2013-02-07 | 2015-10-21 | 北京邮电大学 | P2p资源定位方法 |
US10623481B2 (en) * | 2015-04-27 | 2020-04-14 | Microsoft Technology Licensing, Llc | Balancing resources in distributed computing environments |
EP3323080B1 (en) * | 2015-07-14 | 2020-11-04 | Fmr Llc | Computationally efficient transfer processing, auditing, and search apparatuses, methods and systems |
WO2017127620A1 (en) * | 2016-01-20 | 2017-07-27 | Al-Masoud Mezyad M | Systems and methods for managing a talent based exchange |
CN106452785B (zh) * | 2016-09-29 | 2019-05-17 | 财付通支付科技有限公司 | 区块链网络、分支节点及区块链网络应用方法 |
US10360191B2 (en) * | 2016-10-07 | 2019-07-23 | International Business Machines Corporation | Establishing overlay trust consensus for blockchain trust validation system |
WO2018119930A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | 交易验证处理方法、装置及节点设备 |
CN106789089B (zh) * | 2017-02-23 | 2019-10-08 | 腾讯科技(深圳)有限公司 | 管理证书的方法、装置、和***以及服务器 |
CN110445619B (zh) * | 2017-03-30 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 区块链***、消息处理方法及存储介质 |
CN107948283A (zh) * | 2017-11-24 | 2018-04-20 | 中钞***产业发展有限公司杭州区块链技术研究院 | 一种联盟链大文件存储及校验的方法及*** |
CN108650270B (zh) * | 2018-05-16 | 2020-10-23 | 苏宁易购集团股份有限公司 | 基于联盟链和激励机制的数据共享方法及*** |
CN108989052B (zh) * | 2018-08-28 | 2021-04-13 | 中国联合网络通信集团有限公司 | 交易请求处理方法及*** |
CN109063426A (zh) * | 2018-09-20 | 2018-12-21 | 新华智云科技有限公司 | 一种基于联盟区块链的版权存证共享方法及*** |
CN110049087B (zh) * | 2018-12-28 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 一种联盟链的可信度验证方法、***、装置及设备 |
CN110046901B (zh) * | 2018-12-28 | 2020-06-30 | 阿里巴巴集团控股有限公司 | 联盟链的可信度验证方法、***、装置及设备 |
CN110022345B (zh) * | 2018-12-28 | 2020-03-24 | 阿里巴巴集团控股有限公司 | 联盟链中的请求处理方法、***、装置及设备 |
-
2018
- 2018-12-28 CN CN201811626391.2A patent/CN110022345B/zh active Active
-
2019
- 2019-10-21 TW TW108137832A patent/TWI718714B/zh active
- 2019-11-06 EP EP19903200.4A patent/EP3817333B1/en active Active
- 2019-11-06 WO PCT/CN2019/115856 patent/WO2020134616A1/zh unknown
- 2019-11-06 SG SG11202100899YA patent/SG11202100899YA/en unknown
-
2021
- 2021-01-29 US US17/163,342 patent/US20210158353A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN107067262A (zh) * | 2015-09-30 | 2017-08-18 | 阿里巴巴集团控股有限公司 | 业务处理方法、***及用户终端 |
WO2018201147A2 (en) * | 2017-04-28 | 2018-11-01 | Neuromesh Inc. | Methods, apparatus, and systems for controlling internet-connected devices having embedded systems with dedicated functions |
CN107506997A (zh) * | 2017-08-04 | 2017-12-22 | 现在(北京)支付股份有限公司 | 基于区块链技术的用户移动终端上主动扫码的支付方法 |
TWM561279U (zh) * | 2018-02-12 | 2018-06-01 | 林俊良 | 用於處理金融資產之策略模型腳本之區塊鏈系統與節點伺服器 |
CN108681900A (zh) * | 2018-07-18 | 2018-10-19 | 众安信息技术服务有限公司 | 轻节点验证交易的方法 |
CN109087204A (zh) * | 2018-07-27 | 2018-12-25 | 杭州复杂美科技有限公司 | 跨链交易校验方法、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
SG11202100899YA (en) | 2021-03-30 |
US20210158353A1 (en) | 2021-05-27 |
CN110022345A (zh) | 2019-07-16 |
TW202027458A (zh) | 2020-07-16 |
EP3817333B1 (en) | 2023-03-08 |
WO2020134616A1 (zh) | 2020-07-02 |
EP3817333A1 (en) | 2021-05-05 |
CN110022345B (zh) | 2020-03-24 |
EP3817333A4 (en) | 2021-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI727467B (zh) | 聯盟鏈的可信度驗證方法、系統、裝置及設備 | |
TWI718714B (zh) | 聯盟鏈中的請求處理方法、系統、裝置及設備 | |
TWI712972B (zh) | 聯盟鏈的可信度驗證方法、系統、裝置及設備 | |
CN110166411B (zh) | 一种数据传输方法、装置和网络节点 | |
AU2016219712B2 (en) | Method and devices for managing user accounts across multiple electronic devices | |
US11502828B2 (en) | Authenticating chaincode to chaincode invocations of a blockchain | |
JP2020524434A (ja) | ブロックチェーン・ネットワークにおける高速伝搬のための方法及び特殊ネットワーク・ノード | |
JP6603726B2 (ja) | アイデンティティ認証のための方法、装置およびシステム | |
WO2018154713A1 (ja) | 情報検証システム、情報検証装置、方法およびプログラム | |
TWI725709B (zh) | 資料儲存方法、裝置及設備 | |
CN111460458B (zh) | 一种数据处理方法、相关装置及计算机可存储介质 | |
WO2021008118A1 (zh) | 业务***的访问方法及装置 | |
WO2020233051A1 (zh) | 跨网段互连的区块链网络实现方法、装置、***及介质 | |
WO2020199713A1 (zh) | 数据验证方法、***、装置及设备 | |
CN112069169B (zh) | 区块数据存储方法、装置、电子设备及可读存储介质 | |
US11960607B2 (en) | Achieving minimum trustworthiness in distributed workloads | |
TW202027003A (zh) | 受理區塊鏈存證交易的方法及系統 | |
WO2017096886A1 (zh) | 内容推送的方法、装置以及*** | |
CN111092958A (zh) | 一种节点接入方法、装置、***及存储介质 | |
Kourtellis | On the design of socially-aware distributed systems | |
CN112242979A (zh) | 基于区块链***的ip地址前缀认证方法和设备 | |
CN113076552B (zh) | 一种hdfs资源的访问权限校验方法、装置及电子设备 | |
WO2020000789A1 (zh) | 实现接入验证的方法和装置 |