TWI684892B - 資料處理方法和裝置 - Google Patents
資料處理方法和裝置 Download PDFInfo
- Publication number
- TWI684892B TWI684892B TW107132935A TW107132935A TWI684892B TW I684892 B TWI684892 B TW I684892B TW 107132935 A TW107132935 A TW 107132935A TW 107132935 A TW107132935 A TW 107132935A TW I684892 B TWI684892 B TW I684892B
- Authority
- TW
- Taiwan
- Prior art keywords
- transaction
- root
- data
- predetermined
- transaction root
- 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/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- 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
-
- 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/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- 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/22—Payment schemes or models
- G06Q20/223—Payment schemes or models based on the use of peer-to-peer networks
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
-
- 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/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- 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/405—Establishing or using transaction specific rules
-
- 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/02—Banking, e.g. interest calculation or account maintenance
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
-
- 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/3218—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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
- H04L9/3221—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 proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs
-
- 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/3247—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 involving digital signatures
-
- 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)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Development Economics (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本發明公開了一種資料處理方法和裝置。方法包括:區塊鏈中的交易發起節點首先確定交易的交易資料,以及其中的需要隱藏的信息;然後,將交易資料作為預定單向函數的輸入,獲取交易的交易根,並基於交易根建構需要隱藏的信息對應的證明資料;最後,在對交易根進行簽名後,發起將交易根和證明資料寫入區塊鏈的交易請求,由區塊鏈中的節點對交易根和證明資料進行共識驗證,並基於驗證結果響應/拒絕響應該交易請求。
Description
本發明涉及電腦技術領域,尤其涉及一種資料處理方法和裝置。
“區塊鏈”技術最初是由一位化名“中本聰”的人為一種數位貨幣-比特幣而設計出的一種特殊的分散式資料庫技術。它適合儲存簡單的、有先後關係的、能在系統內驗證的資料,並用密碼學和共識演算法保證了儲存的資料的不可篡改、不可偽造以及全網公開透明。 由於每個帳戶裡的資產、交易記錄都是公開的,因此,當任意一個帳戶獲取到其他帳戶的帳戶地址時,即可透過區塊鏈查詢到其他帳戶裡的所有資產和歷史交易。 需要提供更加可靠的方案。
本說明書實施例提供一種資料處理方法和裝置,用於解決現有的區塊鏈技術容易出現資料被洩漏的問題。 本說明書實施例提供一種資料處理方法,包括: 交易發起方確定交易資料中需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 可選的,在以所述交易資料為預定單向函數的輸入之前,還包括: 確定所述交易資料中的交易前的資料和交易後的資料; 其中,以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根包括: 以交易前的資料為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根; 以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根; 將獲取的輸入交易根和輸出交易根作為待上鏈的交易根。 可選的,以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根包括: 根據所述交易後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸出交易根。 可選的,所述根據所述交易根建構所述需要隱藏的信息合法的證明資料包括: 以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算; 以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。 本說明書實施例提供一種資料處理方法,包括: 接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可選的,所述對所述交易根進行驗證包括: 驗證所述交易根是否有合法的簽名。 可選的,驗證所述交易根是否有合法的簽名包括: 確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的; 若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。 可選的,所述對所述交易根進行驗證包括: 驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸出交易根為根據所述交易資料中交易後的資料建構的。 可選的,所述對所述交易根進行驗證包括: 驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交易資料中交易前的資料建構的。 可選的,所述根據所述第一驗證結果和所述第二驗證結果確定響應/拒絕響應所述交易請求包括: 若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈; 若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。 本說明書實施例提供一種資料處理方法,包括: 交易發起方確定交易資料中的需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 本說明書實施例提供一種資料處理方法,包括: 交易接收方接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 本說明書實施例提供一種資料處理方法,包括: 接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可選的,所述對所述交易根進行驗證包括: 確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的; 若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。 本說明書實施例提供一種資料處理裝置,包括: 確定單元,用於確定交易資料中需要隱藏的信息; 處理單元,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發起單元,用於發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 可選的,所述確定單元,還用於確定所述交易資料中的交易前的資料和交易後的資料; 其中,所述處理單元,具體用於以交易前的資料為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根;以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根;將獲取的輸入交易根和輸出交易根作為待上鏈的交易根。 可選的,所述處理單元,具體用於根據所述交易後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸出交易根。 可選的,所述處理單元,具體用於以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算;以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。 本說明書實施例提供一種資料處理裝置,包括: 接收單元,用於接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 響應單元,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可選的,所述驗證單元,具體用於驗證所述交易根是否有合法的簽名。 可選的,所述驗證單元,具體用於確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。 可選的,所述驗證單元,具體用於驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸出交易根為根據所述交易資料中交易後的資料建構的。 可選的,所述驗證單元,具體用於驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交易資料中交易前的資料建構的。 可選的,所述響應單元,具體用於若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈;若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。 本說明書實施例提供一種資料處理裝置,包括: 確定單元,用於交易發起方確定交易資料中的需要隱藏的信息; 處理單元,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發送單元,用於向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 本說明書實施例提供一種資料處理裝置,包括: 接收單元,用於接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元,用於根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 發起單元,用於若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 本說明書實施例提供一種資料處理裝置,包括: 接收單元,用於接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 響應單元,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可選的,所述驗證單元,具體用於確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。 本說明書實施例提供一種資料處理裝置,包括: 處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 確定交易資料中需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 本說明書實施例提供一種資料處理裝置,包括: 處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 本說明書實施例提供一種資料處理裝置,包括: 處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 確定交易資料中的需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 本說明書實施例提供一種資料處理裝置,包括: 處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 本說明書實施例提供一種資料處理裝置,包括: 處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 本說明書實施例採用的上述至少一個技術方案能夠達到以下有益效果: 可見,本實施例首先透過單向函數保證交易資料的真實性和不可篡改,然後,透過建構證明資料來證明需要隱藏的信息的合法性,而又不會向非交易參與方透露任何需要隱藏的信息。與現有中任意一個節點的資料被洩漏將會導致所有資料被洩漏的方案相比,基本是節點中的資料被洩漏,攻擊者依然無法查看到各方節點的隱私資料,因此,能達到提高區塊鏈資料安全性的目的。
為使本發明的目的、技術方案和優點更加清楚,下面將結合本發明具體實施例及相應的附圖對本發明技術方案進行清楚、完整地描述。顯然,所描述的實施例僅是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有做出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。 需要說明的是,單向函數為,滿足對於所有屬於f定義域的任一x,可以很容易計算f(x)==;對於幾乎所有屬於f值域的任一=,則在計算上不可能求出x使得==f(x)。即:對於任何輸入,容易計算輸出,但是已知輸出,很難推斷輸入。 零知識證明為,證明者能夠在不向驗證者提供任何有用的信息(受保護/隱藏信息)的情況下,使驗證者相信某個論斷是正確的。 參見圖1a,本發明的一個應用場景可以為: 區塊鏈上的節點A需要將一筆錢由節點A對應的交易發起方的第一帳戶轉帳至該交易發起方的第二帳戶,或者,將第一帳戶和第二帳戶進行合併。在將轉帳/合併以交易的形式請求寫入區塊鏈之前,節點A先確定該交易的交易資料中的需要隱藏的信息,例如:第一帳戶和第二帳戶的輸入(如:交易前的餘額)、輸出(如:交易後的餘額)等。然後,計算出該交易的交易根,並基於交易根建構需要隱藏的信息的證明資料,以證明需要隱藏的信息的合法性、真實性等。然後,將交易根和證明資料以交易的形式請求寫入區塊鏈中。 不難理解的是,區塊鏈允許同一個人申請多個帳戶,但區塊鏈是簽名機制為每人分配唯一對應的簽名。因此,在交易發生在同一人A的不同帳戶之間時,交易僅有A的簽名即可。 參見圖1b,本發明的另一個應用場景可以為: 區塊鏈上的節點A需要將一筆錢由交易發起方轉帳至節點B對應的交易接收方。在將轉帳以交易的形式請求寫入區塊鏈之前,節點A先確定該交易的交易資料中的需要隱藏的信息,例如:交易發起方和交易接收方的輸入、輸出,交易發起方和交易接收方的餘額等。然後,計算出該交易的交易根,並基於交易根建構需要隱藏的信息的證明資料,以證明需要隱藏的信息的有效性、真實性等。然後,將交易根和證明資料發送至交易接收方,由交易接收方對交易根進行驗證,若驗證無誤,則由交易接收方對交易根簽名後,發起將證明資料和帶有交易發起方、交易接收方簽名的交易根寫入區塊鏈的交易請求。或者,交易接收方在對交易根簽名後,將簽名後的交易根+驗證結果返回給交易發起方,以指示交易發起方發起將證明資料和帶有交易發起方、交易接收方簽名的交易根寫入區塊鏈的交易請求。 其中,在上述兩個應用場景中,轉帳或者合併均是為了便於理解“交易”而做出的示例,但實際上,“交易”還可以為在節點A中記錄一條信息、節點A將一條信息發送給節點B等等,相應地,“需要隱藏的信息”也可自由設置,例如:交易雙方的餘額等,此處不做限定。 以下結合附圖,詳細說明本發明各實施例提供的技術方案。 實施例1 圖2為本說明書實施例1提供的一種資料處理方法的流程示意圖,該方法可由區塊鏈中的參與交易的節點來執行,具體可以包括如下步驟: 步驟22、交易發起方確定交易資料中需要隱藏的信息; 需要說明的是,步驟22的一種實現方式可以為: 節點獲取交易發起方(用戶)完成的交易清單,交易清單中記載有選項以及選項對應的內容,例如:收款人、付款人、收款人交易前後餘額、付款人交易前後餘額等。然後,基於預定的隱藏規則,從中選取出對應的信息。 其中,隱藏規則可以為:基於預設置的隱藏選項,確定交易清單中與隱藏選項對應的選項及其內容,並作為需要隱藏的信息。隱藏選項舉例為:收款人交易前後餘額、付款人交易前後餘額。 隱藏規則還可以為:基於預設置的篩選規則,從交易清單中選出與特定關鍵詞對應的資料,例如:特定關鍵詞為“餘額”或者“交易額”,則篩選出的對應的數字,並將篩選出的資料作為需要隱藏的信息。 需要說明的是,步驟22的另一種實現方式可以為: 交易發起方在完成交易清單的過程中,自定義該交易清單中需要隱藏的資料並進行標記。例如:標記收款人交易前後餘額、付款人交易前後餘額。 則節點在獲取到交易發起方完成交易清單後,基於標記確定交易資料中需要隱藏的信息。 步驟24、以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 需要說明的是,步驟24中建構交易根的一種實現方式可以為: 首先,節點基於交易資料對應的交易清單,對交易資料進行解析,以確定其中的交易前的資料和交易後的資料。例如:收款人交易前後餘額、付款人交易前後餘額。 然後,將交易前的資料作為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根;將交易後的資料作為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根。其中,第一預定單向函數和第二預定單向函數可以為同一單向函數。 其中,單向函數可以為單向函數樹,相應地,建構輸入交易根/輸出交易根的步驟可以具體為:根據交易前後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸入交易根/輸出交易根。例如:透過在交易前後的餘額後面添加固定長度的隨機數,比如定義一個128bit的數字,前10bit表示餘額,後面的bit為隨機數。 不難理解的是,輸入交易根和輸出交易根的數量為至少一個。例如:(rootA(葉節點為A的帳戶餘額100),rootB (葉節點為B的帳戶餘額800),rootA’(葉節點為A的帳戶餘額50),rootB’(葉節點為B的帳戶餘額950)。其中,rootA和rootB為輸入交易根,rootA’和rootB’未輸出交易根。另外,在建構交易根的過程中,添加隨機數的作用是為了區分每個輸入交易根和輸出交易根,以在後續共識節點對其進行驗證時,以防止碰撞。 步驟24中建構證明資料的一種實現方式可以為: 以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算;以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。 需要說明的是,預定的邏輯運算可以為根據需要證明的內容而自定義的特定函數。例如:當需要證明交易發起方的第一帳戶與第二帳戶之間發生了交易時,則特定函數可以具體為以交易根和需要隱藏的信息為輸入,計算交易前的第一帳戶、第二帳戶的餘額和交易後的第一帳戶、第二帳戶的餘額是否相同,或者,交易前的餘額與交易後的餘額差值不超過n元,交易後第二帳戶的利息發生了增長了等等。然後,將整個函數運算過程用零知識證明的方式輸出一個證明,即證明隱藏的信息可以用來計算特定函數。 步驟26、發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 可見,本實施例首先透過單向函數保證交易資料的真實性和不可篡改,然後,透過建構證明資料來證明需要隱藏的信息的合法性,而又不會向非交易參與方透露任何需要隱藏的信息。與現有技術相比,能有效防止由於任意一個節點的資料被洩漏而影響到整個區塊鏈資料的隱私,達到提高區塊鏈資料安全性的目的。 實施例2 圖3為本說明書實施例2提供的一種資料處理方法的流程示意圖,該方法可由區塊鏈中的共識節點執行,具體可以包括如下步驟: 步驟32、接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 需要說明的是,步驟32可以為在實施例1的基礎上進行的步驟,其中的交易請求、交易根和證明資料等在實施例1中均有相關描述,故,此處不再對其進行贅述。 步驟34、對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 步驟34中驗證交易根的一種實現方式可以為: 驗證所述交易根是否有合法的簽名,若是,則第一驗證結果為通過,若否,則第一驗證結果為未通過。 具體地,首先,確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。 不難理解的是,每個輸出交易根均對應一個地址hash(pk),基於該地址可判定此交易的參與方有哪些,然後,驗證交易根是否有所有參與方的簽名且合法。例如:地址只有1個,則可以認為是同一用戶的不同帳戶之間的交易。進而若驗證出該用戶的簽名無誤,則第一驗證結果為通過。 另外,對於簽名的驗證涉及區塊鏈的數位簽名機制,此處不做限定。 步驟34中驗證交易根的另一種實現方式可以為: 在步驟34中驗證交易根的上一種實現方式的基礎上,本實現方式還進一步地: 驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複,若是,則確定第一驗證結果為未通過,若否,且有合法簽名,則確定第一驗證結果為通過。 具體的,驗證輸出交易根的目的是避免出現“碰撞”。此處的碰撞可以理解為:存在與該輸出交易根具有同一(用戶)簽名且相同的輸入交易根或輸出交易根,導致的無法判定交易根對應的“錢”是用戶未“花”的“錢,還是該用戶之前已經“花”了的“錢”。 而由於在建構輸出交易根時,向交易後的資料中添加了隨機數,因此,得出的輸出交易根具有唯一性。進而,可對比處該輸出交易根與已經上鏈的輸出交易根和輸出交易根是否重複,並基於對比結果判定是否發生碰撞。 步驟34中驗證交易根的另一種實現方式可以為: 在上一實現方式的基礎上,進一步地驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交易資料中交易前的資料建構的。 本實現方式中,驗證輸入交易根的目的在於避免“雙花”。此處的“雙花”可以理解為:用戶將輸入交易根對應的“錢”同時交易給其他兩個用戶。由於其避免方式與驗證輸出交易根的方式相似,故,此處不再贅述。 對於步驟34的後兩種實現方式,節點區分輸入交易根和輸出交易根的方式可以為:存在未花費的交易輸出(Unspent Transaction Outputs,UTXO)的交易根為輸入交易根,其餘則為輸出交易根。 步驟34中驗證證明資料的一種實現方式可以為: 共識節點基於交易根用零知識證明演算法驗證證明資料,若驗證通過,則確定證明無誤。 步驟36、根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 需要說明的是,若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈;若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。 可見,本實施例首先通過單向函數保證交易資料的真實性和不可篡改,然後,透過建構證明資料來證明需要隱藏的信息的合法性,而又不會向非交易參與方透露任何需要隱藏的信息。與現有技術相比,能有效防止由於任意一個節點的資料被洩漏而影響到整個區塊鏈資料的隱私,達到提高區塊鏈資料安全性的目的。 實施例3 圖4為本說明書實施例3提供的一種資料處理方法的流程示意圖,參見圖4,該方法可以有區塊鏈中的節點執行,具體包括如下 步驟42、交易節點A(交易發起方)確定交易資料中的需要隱藏的信息; 步驟44、交易節點A以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 步驟46、交易節點A向交易節點B(交易接收方)發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 步驟48、交易節點B根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 步驟410、交易節點B確定驗證是否通過; 步驟412、若驗證結果為通過,則交易節點B發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 步驟414、共識節點對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 步驟414的一種實現方式可以為: 確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。其中,預定閾值可以具體為2。 不難理解的是,每個輸出交易根均有對應的地址,基於地址確定參與交易的節點,進而驗證參與交易的節點是否都有在交易根上簽名,若是且簽名合法,則第一驗證結果為通過。 步驟416、根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可見,本實施例首先透過單向函數保證交易資料的真實性和不可篡改,然後,透過建構證明資料來證明需要隱藏的信息的合法性,而又不會向非交易參與方透露任何需要隱藏的信息。與現有技術相比,能有效防止由於任意一個節點的資料被洩漏而影響到整個區塊鏈資料的隱私,達到提高區塊鏈資料安全性的目的。 實施例4 圖5為本說明書實施例4提供的一種資料處理方法的流程示意圖,參見圖5,該方法可以有區塊鏈中的節點執行,具體包括如下 步驟52、交易節點A(交易發起方)確定交易資料中的需要隱藏的信息; 步驟54、交易節點A以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 步驟56、交易節點A向交易節點B(交易接收方)發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 步驟58、交易節點B根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 步驟510、交易節點B確定驗證是否通過; 步驟512、若驗證結果為通過,則交易節點B對交易根進行簽名,並向交易節點A發送允許上鏈的指示信息; 步驟514、交易節點A發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 步驟516、共識節點對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 步驟518、根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 可見,本實施例首先透過單向函數保證交易資料的真實性和不可篡改,然後,透過建構證明資料來證明需要隱藏的信息的合法性,而又不會向非交易參與方透露任何需要隱藏的信息。與現有技術相比,能有效防止由於任意一個節點的資料被洩漏而影響到整個區塊鏈資料的隱私,達到提高區塊鏈資料安全性的目的。 實施例5 結合圖6a和6b,下面以實例的方式對本說明書進行詳細說明,具體可以包括如下步驟: 步驟S62、參見圖6a,在交易上鏈前,區塊鏈中的交易組織為分層的單向函數結構,最底層採用的是交易的明文,交易發起方透過單向函數做成樹狀,最後形成一個交易根root。其中,明文可以作為需要隱藏的信息。 不難理解的是,因為所有交易內容都透過單向函數來組織,所以把交易根上鏈不會洩漏任何資料隱私。 當然,交易組織格式也可以是非樹狀的任何單向函數形式。 步驟S64、參見圖6b,假如需要利用交易資料計算特定函數f,f需要同時輸入作為隱藏信息的交易1(交易根為root)的資料2、交易2(交易根為root’)的資料3’、交易3(交易根為root’’)的資料1’’,即 運算結果=f(資料2,資料3’,資料1’’) root=交易根(資料2) root’=交易根(資料3’) root’’=交易根(資料1’’) 那麽,可以透過零知識證明,交易發起方證明以上所有陳述的正確性,但是又不洩漏資料2、資料3’、資料1’’。 需要說明的是,特定函數f為基於需要證明的隱藏的信息自定義的函數,以能起到證明為準,函數類型不限。例如:以交易雙方的交易前的餘額和交易後的餘額為輸入,計算兩者的差值;或者,以交易發起方的交易前後的餘額為輸入,計算交易發起方的交易前後的餘額差值不超過m等等。 步驟S66、接收方(交易接收方或者區塊鏈中的非交易參與節點)接收到證明後,利用零知識證明驗證該證明的正確性,因而也確信了運算結果的正確性。 但是接收方只知道運算結果,假如運算函數本身不洩漏除運算結果的信息,那麽接收方不會知道函數的輸入資料信息。 可見,本實施例可以用於一方向另外一方證明已上鏈交易的內容可以用來計算特定函數,但是該函數的運算又不暴露任何一方資料隱私。區塊鏈透過單向函數保證資料內容的真實性和不可篡改,零知識證明保證資料運算過程滿足雙方實現約定的特定函數、以及該資料確實存在已經上鏈的交易。 對於上述方法實施方式,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本發明實施方式並不受所描述的動作順序的限制,因為依據本發明實施方式,某些步驟可以採用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施方式均屬於較佳實施方式,所涉及的動作並不一定是本發明實施方式所必須的。 實施例6 圖7為本說明書實施例6提供的一種資料處理裝置的結構示意圖,參見圖7,該裝置具體可以包括:確定單元71、處理單元72和發起單元73,其中: 確定單元71,用於確定交易資料中需要隱藏的信息; 處理單元72,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發起單元73,用於發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 本實施例中,確定單元71,還用於確定所述交易資料中的交易前的資料和交易後的資料; 相應地,所述處理單元72,具體用於以交易前的資料為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根;以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根;將獲取的輸入交易根和輸出交易根作為待上鏈的交易根。 處理單元72,具體用於根據所述交易後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸出交易根。 處理單元72,具體用於以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算;以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。 實施例7 圖8為本說明書實施例7提供的一種資料處理裝置的結構示意圖,參見圖8,該裝置具體可以包括:接收單元81、驗證單元82和響應單元83,其中: 接收單元81,用於接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元82,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 響應單元83,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 其中,所述驗證單元82的工作原理可以為: 驗證所述交易根是否有合法的簽名。具體地:確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。 驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸出交易根為根據所述交易資料中交易後的資料建構的。 驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交易資料中交易前的資料建構的。 響應單元83的工作原理可以為: 若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈;若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。 實施例8 圖9為本說明書實施例8提供的一種資料處理裝置的結構示意圖,參見圖9,該裝置具體可以包括:確定單元91、處理單元92和發送單元93,其中: 確定單元91,用於交易發起方確定交易資料中的需要隱藏的信息; 處理單元92,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發送單元93,用於向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 實施例9 圖10為本說明書實施例9提供的一種資料處理裝置的結構示意圖,參見圖10,該裝置具體可以包括:接收單元101、驗證單元102和發起單元103,其中: 接收單元101,用於接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元102,用於根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 發起單元103,用於若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 實施例10 圖11為本說明書實施例10提供的一種資料處理裝置的結構示意圖,參見圖11,該裝置具體可以包括:接收單元111、驗證單元112和響應單元113,其中: 接收單元111,用於接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 驗證單元112,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 響應單元113,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 其中,驗證單元112,具體用於確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。 對於上述裝置實施方式而言,由於其與方法實施方式基本相似,所以描述的比較簡單,相關之處參見方法實施方式的部分說明即可。 應當注意的是,在本發明的裝置的各個部件中,根據其要實現的功能而對其中的部件進行了邏輯劃分,但是,本發明不受限於此,可以根據需要對各個部件進行重新劃分或者組合。 實施例11 圖12為本說明書實施例11提供的一種電子設備的結構示意圖,參見圖12,該電子設備包括處理器、內部匯流排、網路介面、記憶體以及非易失性記憶體,當然還可能包括其他業務所需要的硬體。處理器從非易失性記憶體中讀取對應的電腦程式到記憶體中然後運行,在邏輯層面上形成資料處理裝置。當然,除了軟體實現方式之外,本說明書並不排除其他實現方式,比如邏輯裝置抑或軟硬體結合的方式等等,也就是說以下處理流程的執行主體並不限定於各個邏輯單元,也可以是硬體或邏輯裝置。 網路介面、處理器和記憶體可以透過匯流排系統相互連接。匯流排可以是ISA(Industr=Standard Architecture,工業標準體系結構)匯流排、PCI(Peripheral Component Interconnect,週邊元件互連標準)匯流排或EISA(Extended Industr=Standard Architecture,擴展工業標準結構)匯流排等。所述匯流排可以分為位址匯流排、資料匯流排、控制匯流排等。為便於表示,圖12中僅用一個雙向箭頭表示,但並不表示僅有一根匯流排或一種類型的匯流排。 記憶體用於存放程式。具體地,程式可以包括程式碼,所述程式碼包括電腦操作指令。記憶體可以包括唯讀記憶體和隨機存取記憶體,並向處理器提供指令和資料。記憶體可能包含高速隨機存取記憶體(Random-Access Memor=,RAM),也可能還包括非易失性記憶體(non-volatile memor=),例如至少1個磁碟記憶體。 處理器,用於執行所述記憶體存放的程式,並具體執行: 確定交易資料中需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 還用於, 接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 還用於, 確定交易資料中的需要隱藏的信息; 以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料; 向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。 還用於, 接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證; 若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。 還用於, 接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息; 對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果; 根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。 上述如本說明書圖2-10所示實施例揭示的資料處理裝置或管理者(Master)節點執行的方法可以應用於處理器中,或者由處理器實現。處理器可能是一種積體電路晶片,具有信號的處理能力。在實現過程中,上述方法的各步驟可以透過處理器中的硬體的集成邏輯電路或者軟體形式的指令完成。上述的處理器可以是通用處理器,包括中央處理器(Central Processing Unit,CPU)、網路處理器(Network Processor,NP)等;還可以是數位信號處理器(Digital Signal Processor,DSP)、專用積體電路(Application Specific Integrated Circuit,ASIC)、場可程式閘陣列(Field-Programmable Gate Arra=,FPGA)或者其他可程式邏輯裝置、分立閘或者電晶體邏輯裝置、分立硬體組件。可以實現或者執行本說明書實施例中的公開的各方法、步驟及邏輯方塊圖。通用處理器可以是微處理器或者該處理器也可以是任何常用的處理器等。結合本說明書實施例所公開的方法的步驟可以直接體現為硬體譯碼處理器執行完成,或者用譯碼處理器中的硬體及軟體模組組合執行完成。軟體模組可以位於隨機記憶體,快閃記憶體、唯讀記憶體,可程式唯讀記憶體或者電可抹除可程式記憶體、暫存器等本領域成熟的儲存媒體中。該儲存媒體位於記憶體,處理器讀取記憶體中的信息,結合其硬體完成上述方法的步驟。 資料處理裝置還可執行圖2-圖5的方法,並實現管理者節點執行的方法。 實施例12 基於相同的發明創造,本說明書實施例還提供了一種電腦可讀儲存媒體,所述電腦可讀儲存媒體儲存一個或多個程式,所述一個或多個程式當被包括多個應用程式的電子設備執行時,使得所述電子設備執行實施例1-5提供的資料處理方法。 本說明書中的各個實施例均採用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對於系統實施例而言,由於其基本相似於方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。 上述對本說明書特定實施例進行了描述。其它實施例在所附申請專利範圍的範圍內。在一些情況下,在申請專利範圍中記載的動作或步驟可以按照不同於實施例中的順序來執行並且仍然可以實現期望的結果。另外,在附圖中描繪的過程不一定要求示出的特定順序或者連續順序才能實現期望的結果。在某些實施方式中,多任務處理和平行處理也是可以的或者可能是有利的。 本領域內的技術人員應明白,本發明的實施例可提供為方法、系統、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。 本發明是參照根據本發明實施例的方法、設備(系統)、和電腦程式產品的流程圖和/或方塊圖來描述的。應理解可由電腦程式指令實現流程圖和/或方塊圖中的每一流程和/或方塊、以及流程圖和/或方塊圖中的流程和/或方塊的結合。可提供這些電腦程式指令到通用電腦、專用電腦、嵌入式處理機或其他可程式資料處理設備的處理器以產生一個機器,使得透過電腦或其他可程式資料處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的裝置。 這些電腦程式指令也可儲存在能引導電腦或其他可程式資料處理設備以特定方式工作的電腦可讀記憶體中,使得儲存在該電腦可讀記憶體中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能。 這些電腦程式指令也可裝載到電腦或其他可程式資料處理設備上,使得在電腦或其他可程式設備上執行一系列操作步驟以產生電腦實現的處理,從而在電腦或其他可程式設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方塊圖一個方塊或多個方塊中指定的功能的步驟。 在一個典型的配置中,計算設備包括一個或多個處理器 (CPU)、輸入/輸出介面、網路介面和記憶體。 記憶體可能包括電腦可讀媒體中的非永久性記憶體,隨機存取記憶體(RAM)和/或非易失性記憶體等形式,如唯讀記憶體(ROM)或快閃記憶體(flash RAM)。記憶體是電腦可讀媒體的示例。 電腦可讀媒體包括永久性和非永久性、可移動和非可移動媒體可以由任何方法或技術來實現信息儲存。信息可以是電腦可讀指令、資料結構、程式的模組或其他資料。電腦的儲存媒體的例子包括,但不限於相變記憶體(PRAM)、靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)、其他類型的隨機存取記憶體(RAM)、唯讀記憶體(ROM)、電可抹除可程式唯讀記憶體(EEPROM)、快閃記憶體或其他記憶體技術、唯讀光碟唯讀記憶體 (CD-ROM)、數位多功能光碟(DVD)或其他光學儲存器、磁盒式磁帶,磁帶磁碟儲存器或其他磁性儲存設備或任何其他非傳輸媒體,可用於儲存可以被計算設備存取的信息。按照本文中的界定,電腦可讀媒體不包括暫存電腦可讀媒體 (transitor= media),如調變的資料信號和載波。 還需要說明的是,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、商品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、商品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,並不排除在包括所述要素的過程、方法、商品或者設備中還存在另外的相同要素。 本領域技術人員應明白,本發明的實施例可提供為方法、系統或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有電腦可用程式碼的電腦可用儲存媒體(包括但不限於磁碟記憶體、CD-ROM、光學記憶體等)上實施的電腦程式產品的形式。 以上所述僅為本發明的實施例而已,並不用於限制本發明。對於本領域技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原理之內所作的任何修改、等同替換、改進等,均應包含在本發明的權利要求範圍之內。
22‧‧‧步驟24‧‧‧步驟26‧‧‧步驟32‧‧‧步驟34‧‧‧步驟36‧‧‧步驟71‧‧‧確定單元72‧‧‧處理單元73‧‧‧發起單元81‧‧‧接收單元82‧‧‧驗證單元83‧‧‧響應單元91‧‧‧確定單元92‧‧‧處理單元93‧‧‧發送單元101‧‧‧接收單元102‧‧‧驗證單元103‧‧‧發起單元111‧‧‧接收單元112‧‧‧驗證單元113‧‧‧響應單元
此處所說明的附圖用來提供對本發明的進一步理解,構成本發明的一部分,本發明的示意性實施例及其說明用於解釋本發明,並不構成對本發明的不當限定。在附圖中: 圖1a和圖1b為本說明書實施例提供的一種資料處理方法的應用場景示意圖; 圖2為本說明書實施例1提供的一種資料處理方法的流程示意圖; 圖3為本說明書實施例2提供的一種資料處理方法的流程示意圖; 圖4為本說明書實施例3提供的一種資料處理方法的流程示意圖; 圖5為本說明書實施例4提供的一種資料處理方法的流程示意圖; 圖6a為本說明書實施例5提供的一種資料處理方法中建構交易根的流程示意圖; 圖6b為本說明書實施例5提供的一種資料處理方法中建構證明資料的流程示意圖; 圖7為本說明書實施例6提供的一種資料處理裝置的結構示意圖; 圖8為本說明書實施例7提供的一種資料處理裝置的結構示意圖; 圖9為本說明書實施例8提供的一種資料處理裝置的結構示意圖; 圖10為本說明書實施例9提供的一種資料處理裝置的結構示意圖; 圖11為本說明書實施例10提供的一種資料處理裝置的結構示意圖; 圖12為本說明書實施例11提供的一種電子設備的結構示意圖。
Claims (33)
- 一種資料處理方法,其特徵在於,包括:交易發起方確定交易資料中需要隱藏的信息;以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。
- 根據申請專利範圍第1項所述的方法,其中,在以所述交易資料為預定單向函數的輸入之前,還包括:確定所述交易資料中的交易前的資料和交易後的資料;其中,以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根包括:以交易前的資料為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根;以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根;將獲取的輸入交易根和輸出交易根作為待上鏈的交易根。
- 根據申請專利範圍第2項所述的方法,其中,以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根包括:根據所述交易後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸出交易根。
- 根據申請專利範圍第1項所述的方法,其中,所述根據所述交易根建構所述需要隱藏的信息合法的證明資料包括:以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算;以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。
- 一種資料處理方法,其特徵在於,包括:接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;根據所述第一驗證結果和所述第二驗證結果響應/拒 絕響應所述交易請求。
- 根據申請專利範圍第5項所述的方法,其中,所述對所述交易根進行驗證包括:驗證所述交易根是否有合法的簽名。
- 根據申請專利範圍第6項所述的方法,其中,驗證所述交易根是否有合法的簽名包括:確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。
- 根據申請專利範圍第5項所述的方法,其中,所述對所述交易根進行驗證包括:驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸出交易根為根據所述交易資料中交易後的資料建構的。
- 根據申請專利範圍第5項所述的方法,其中,所述對所述交易根進行驗證包括:驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交 易資料中交易前的資料建構的。
- 根據申請專利範圍第5項所述的方法,其中,所述根據所述第一驗證結果和所述第二驗證結果確定響應/拒絕響應所述交易請求包括:若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈;若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。
- 一種資料處理方法,其特徵在於,包括:交易發起方確定交易資料中的需要隱藏的信息;以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。
- 一種資料處理方法,其特徵在於,包括:交易接收方接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取 的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證;若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。
- 一種資料處理方法,其特徵在於,包括:接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。
- 根據申請專利範圍第13項所述的方法,其中,所述對所述交易根進行驗證包括:確定與所述交易根中的輸出交易根具有關聯關係的地 址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。
- 一種資料處理裝置,其特徵在於,包括:確定單元,用於確定交易資料中需要隱藏的信息;處理單元,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;發起單元,用於發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。
- 根據申請專利範圍第15項所述的裝置,其中,所述確定單元,還用於確定所述交易資料中的交易前的資料和交易後的資料;其中,所述處理單元,具體用於以交易前的資料為第一預定單向函數的輸入,獲取所述第一預定單向函數輸出的輸入交易根;以交易後的資料為第二預定單向函數的輸入,獲取所述第二預定單向函數輸出的輸出交易根;將獲取的輸入交易根和輸出交易根作為待上鏈的交易根。
- 根據申請專利範圍第16項所述的裝置,其中,所述處理單元,具體用於根據所述交易後的資料和隨機數建構預定單向函數樹的底層,並確定所述預定單向函數樹的頂層對應的輸出交易根。
- 根據申請專利範圍第15項所述的裝置,其中,所述處理單元,具體用於以所述交易根和所述需要隱藏的信息為輸入進行預定的邏輯運算;以所述需要隱藏的信息為保護對象,對所述邏輯運算進行零知識證明,獲取證明資料。
- 一種資料處理裝置,其特徵在於,包括:接收單元,用於接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;驗證單元,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;響應單元,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。
- 根據申請專利範圍第19項所述的裝置,其中,所述驗證單元,具體用於驗證所述交易根是否有合法的簽名。
- 根據申請專利範圍第20項所述的裝置,其中,所述驗證單元,具體用於確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為1,則驗證所述交易根是否有與所述交易發起方對應的簽名。
- 根據申請專利範圍第19項所述的裝置,其中,所述驗證單元,具體用於驗證所述交易根中的輸出交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸出交易根為根據所述交易資料中交易後的資料建構的。
- 根據申請專利範圍第19項所述的裝置,其中,所述驗證單元,具體用於驗證所述交易根中的輸入交易根與已上鏈的輸出交易根和輸入交易根是否重複;所述輸入交易根為根據所述交易資料中交易前的資料建構的。
- 根據申請專利範圍第19項所述的裝置,其中,所述響應單元,具體用於若所述第一驗證結果和所述第二驗證結果均為通過,則響應所述交易請求,以將帶有交易發起方簽名的交易根和證明資料寫入區塊鏈;若所述第一驗證結果和/或所述第二驗證結果為未通過,則拒絕響應所述交易請求。
- 一種資料處理裝置,其特徵在於,包括:確定單元,用於交易發起方確定交易資料中的需要隱藏的信息;處理單元,用於以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;發送單元,用於向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。
- 一種資料處理裝置,其特徵在於,包括:接收單元,用於接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;驗證單元,用於根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證;發起單元,用於若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。
- 一種資料處理裝置,其特徵在於,包括:接收單元,用於接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;驗證單元,用於對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;響應單元,用於根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。
- 根據申請專利範圍第27項所述的裝置,其中,所述驗證單元,具體用於確定與所述交易根中的輸出交易根具有關聯關係的地址,所述輸出交易根為根據所述交易資料中交易後的資料建構的;若判斷獲知地址的數量為大於等於預定閾值,則驗證所述交易根是否携帶有與所述交易發起方和所述交易接收方對應的簽名。
- 一種資料處理裝置,包括:處理器;以及被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作: 確定交易資料中需要隱藏的信息;以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;發起將所述證明資料和帶有所述交易發起方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所述交易請求。
- 一種資料處理裝置,包括:處理器;以及被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作:接收交易發起方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。
- 一種資料處理裝置,包括:處理器;以及 被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作:確定交易資料中的需要隱藏的信息;以所述交易資料為預定單向函數的輸入,獲取所述預定單向函數輸出的交易根,並根據所述交易根建構所述需要隱藏的信息合法的證明資料;向交易接收方發送所述交易根和所述證明資料,由所述交易接收方對所述交易根進行驗證,並在驗證通過後,發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求。
- 一種資料處理裝置,包括:處理器;以及被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作:接收交易發送方發送的交易根和證明資料;所述交易根為以交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;根據所述需要隱藏的信息和所述預定單向函數對所述交易根進行驗證;若驗證結果為通過,則發起將所述證明資料和帶有所述交易發起方、所述交易接收方簽名的交易根寫入區塊鏈的交易請求,以使區塊鏈中的節點對所述交易根和所述證明資料進行共識驗證,並根據驗證結果響應/拒絕響應所 述交易請求。
- 一種資料處理裝置,包括:處理器;以及被安排成儲存電腦可執行指令的記憶體,所述可執行指令在被執行時使所述處理器執行以下操作:接收交易接收方發送的交易請求,所述交易請求用於請求將交易根和證明資料寫入區塊鏈;所述交易根為以交易發起方發起的交易資料為預定單向函數的輸入獲取的,所述證明資料用於證明所述交易資料中的需要隱藏的信息;對所述交易根進行驗證,獲取第一驗證結果;根據所述交易根對所述證明資料進行驗證,獲取第二驗證結果;根據所述第一驗證結果和所述第二驗證結果響應/拒絕響應所述交易請求。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711185796.2 | 2017-11-23 | ||
CN201711185796.2A CN108171494A (zh) | 2017-11-23 | 2017-11-23 | 一种数据处理方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201926115A TW201926115A (zh) | 2019-07-01 |
TWI684892B true TWI684892B (zh) | 2020-02-11 |
Family
ID=62527546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107132935A TWI684892B (zh) | 2017-11-23 | 2018-09-19 | 資料處理方法和裝置 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10931684B2 (zh) |
EP (1) | EP3678079A4 (zh) |
CN (1) | CN108171494A (zh) |
SG (1) | SG11202002560PA (zh) |
TW (1) | TWI684892B (zh) |
WO (1) | WO2019100864A1 (zh) |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171494A (zh) | 2017-11-23 | 2018-06-15 | 阿里巴巴集团控股有限公司 | 一种数据处理方法和装置 |
US20200402171A1 (en) * | 2018-03-29 | 2020-12-24 | Nec Corporation | Electronic transaction system, transaction server, verification server, method of transaction, and program |
CN108830107B (zh) * | 2018-06-25 | 2021-10-26 | 北京奇虎科技有限公司 | 保护隐私信息的方法、装置、电子设备及计算机可读存储介质 |
CN108985933A (zh) * | 2018-06-29 | 2018-12-11 | 联动优势科技有限公司 | 一种记账方法及装置 |
CN109035029A (zh) * | 2018-07-27 | 2018-12-18 | 阿里巴巴集团控股有限公司 | 基于区块链的资产转移方法及装置、电子设备 |
CN109242685B (zh) * | 2018-08-29 | 2020-05-12 | 众安信息技术服务有限公司 | 基于区块链的共识和验证方法及装置 |
CN109272316B (zh) * | 2018-09-25 | 2021-05-25 | 广州智慧城市发展研究院 | 一种基于区块链网络下的区块实现方法及*** |
CN110197433B (zh) | 2018-10-25 | 2021-07-27 | 腾讯科技(深圳)有限公司 | 数值转移方法、装置及*** |
CN110046517B (zh) * | 2018-11-07 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 一种对写入区块链的交易进行隐匿的方法及装置 |
CN110011800B (zh) | 2018-11-07 | 2020-04-14 | 阿里巴巴集团控股有限公司 | 一种区块链数据读取方法及装置 |
CN109636388B (zh) * | 2018-12-07 | 2024-02-23 | 深圳市智税链科技有限公司 | 区块链网络中的数据处理方法、装置、介质及电子设备 |
CN109685665B (zh) * | 2018-12-20 | 2020-09-29 | 姚前 | 一种链下资产托管转让的***和方法 |
CN111783134B (zh) * | 2019-01-31 | 2024-04-16 | 创新先进技术有限公司 | 一种对写入区块链的交易进行隐匿的方法及装置 |
CN110046509B (zh) * | 2019-01-31 | 2020-08-04 | 阿里巴巴集团控股有限公司 | 一种对写入块链的交易进行隐匿的方法及装置 |
CN110009341B (zh) * | 2019-01-31 | 2020-05-05 | 阿里巴巴集团控股有限公司 | 一种对写入块链的交易进行隐匿的方法及装置 |
US11115188B2 (en) | 2019-04-29 | 2021-09-07 | Advanced New Technologies Co., Ltd. | Blockchain-based data processing method, apparatus, and blockchain node |
CN110263580B (zh) * | 2019-04-29 | 2021-03-23 | 创新先进技术有限公司 | 基于区块链的数据处理方法、装置和区块链节点 |
CN110266644B (zh) * | 2019-05-20 | 2021-04-06 | 创新先进技术有限公司 | 结合代码标注与交易类型的收据存储方法和节点 |
US20220215394A1 (en) * | 2019-05-24 | 2022-07-07 | Gwangju Institute Of Science And Technology | Transaction verification system for blockchain, and transaction verification method for blockchain |
CN110535639A (zh) * | 2019-08-20 | 2019-12-03 | 深圳市网心科技有限公司 | 基于多资产模型的区块链资产处理方法及相关设备 |
US10969431B1 (en) * | 2019-12-23 | 2021-04-06 | Intel Corporation | Error-tolerant architecture for power-efficient computing |
CN111932234B (zh) * | 2020-09-24 | 2024-07-12 | 国网数字科技控股有限公司 | 交易数据处理方法及装置 |
CN112101944A (zh) * | 2020-09-28 | 2020-12-18 | 平安壹钱包电子商务有限公司 | 一种高效隐私支付实现方法、装置、计算机设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358165A1 (en) * | 2015-06-08 | 2016-12-08 | Blockstream Corporation | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction |
CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
TW201733304A (zh) * | 2016-02-23 | 2017-09-16 | 恩鏈控股有限公司 | 在區塊鏈系統中的代理式圖靈完備交易整合反饋 |
CN107274184A (zh) * | 2017-05-11 | 2017-10-20 | 上海点融信息科技有限责任公司 | 基于零知识证明的区块链数据处理 |
Family Cites Families (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050071640A1 (en) | 2003-09-25 | 2005-03-31 | General Instrument Corporation | Method and apparatus for authenticating data |
TWI340354B (en) * | 2006-12-14 | 2011-04-11 | Inst Information Industry | System, method, and computer readable medium for micropayment with varying denomination |
US20080230600A1 (en) | 2007-03-19 | 2008-09-25 | Cynthia Wills Black | Method, system, and apparatus for conducting a purchase transaction |
EP1986146A1 (en) * | 2007-04-27 | 2008-10-29 | Gemplus | Transaction method between two entities providing anonymity revocation for tree-based schemes without trusted party |
US9858401B2 (en) * | 2011-08-09 | 2018-01-02 | Biogy, Inc. | Securing transactions against cyberattacks |
JP6951329B2 (ja) | 2015-10-14 | 2021-10-20 | ケンブリッジ ブロックチェーン,エルエルシー | デジタルアイデンティティを管理するためのシステム及び方法 |
WO2017079652A1 (en) | 2015-11-05 | 2017-05-11 | Pulsifer Allen | Cryptographic transactions system |
WO2017090041A1 (en) | 2015-11-24 | 2017-06-01 | Ben-Ari Adi | A system and method for blockchain smart contract data privacy |
US11562353B2 (en) * | 2015-11-24 | 2023-01-24 | Mastercard International Incorporated | Method and system for gross settlement by use of an opaque blockchain |
US9849364B2 (en) | 2016-02-02 | 2017-12-26 | Bao Tran | Smart device |
EP3424177B1 (en) | 2016-02-29 | 2021-10-13 | SecureKey Technologies Inc. | Systems and methods for distributed identity verification |
US10587609B2 (en) | 2016-03-04 | 2020-03-10 | ShoCard, Inc. | Method and system for authenticated login using static or dynamic codes |
US9985964B2 (en) | 2016-03-28 | 2018-05-29 | Black Gold Coin, Inc. | Systems and methods for providing block chain-based multifactor personal identity verification |
US10022613B2 (en) | 2016-05-02 | 2018-07-17 | Bao Tran | Smart device |
US10046228B2 (en) | 2016-05-02 | 2018-08-14 | Bao Tran | Smart device |
KR102050129B1 (ko) * | 2016-05-03 | 2019-11-28 | 안규태 | 블록 검증을 위한 복수의 일방향 함수를 지원하는 블록 체인 |
US9967088B2 (en) | 2016-05-23 | 2018-05-08 | Accenture Global Solutions Limited | Rewritable blockchain |
US9635000B1 (en) | 2016-05-25 | 2017-04-25 | Sead Muftic | Blockchain identity management system based on public identities ledger |
CN106487801B (zh) * | 2016-11-03 | 2019-10-11 | 江苏通付盾科技有限公司 | 基于区块链的信息验证方法及装置 |
US20180220278A1 (en) * | 2017-02-01 | 2018-08-02 | BriefTrace Ltd. | System and method for securing and verifying information from transportation monitors |
CN106934619B (zh) | 2017-03-13 | 2021-07-06 | 杭州复杂美科技有限公司 | 一种交易记录的方法及*** |
US10438198B1 (en) * | 2017-05-19 | 2019-10-08 | Wells Fargo Bank, N.A. | Derived unique token per transaction |
CN107292621B (zh) * | 2017-06-22 | 2020-10-27 | 丁江 | 海量数据确权存证方法和节点 |
CN107294709A (zh) * | 2017-06-27 | 2017-10-24 | 阿里巴巴集团控股有限公司 | 一种区块链数据处理方法、装置及*** |
CN107360001B (zh) | 2017-07-26 | 2021-12-14 | 创新先进技术有限公司 | 一种数字证书管理方法、装置和*** |
US11316696B2 (en) * | 2017-09-29 | 2022-04-26 | R3 Ltd. | Hash subtrees for grouping components by component type |
US10567168B2 (en) * | 2017-11-16 | 2020-02-18 | International Business Machines Corporation | Blockchain transaction privacy enhancement through broadcast encryption |
CN108171494A (zh) * | 2017-11-23 | 2018-06-15 | 阿里巴巴集团控股有限公司 | 一种数据处理方法和装置 |
-
2017
- 2017-11-23 CN CN201711185796.2A patent/CN108171494A/zh active Pending
-
2018
- 2018-09-19 TW TW107132935A patent/TWI684892B/zh active
- 2018-10-12 WO PCT/CN2018/109984 patent/WO2019100864A1/zh unknown
- 2018-10-12 EP EP18881760.5A patent/EP3678079A4/en not_active Withdrawn
- 2018-10-12 SG SG11202002560PA patent/SG11202002560PA/en unknown
-
2020
- 2020-02-03 US US16/780,819 patent/US10931684B2/en active Active
-
2021
- 2021-02-06 US US17/169,410 patent/US11108786B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160358165A1 (en) * | 2015-06-08 | 2016-12-08 | Blockstream Corporation | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction |
TW201733304A (zh) * | 2016-02-23 | 2017-09-16 | 恩鏈控股有限公司 | 在區塊鏈系統中的代理式圖靈完備交易整合反饋 |
CN106503994A (zh) * | 2016-11-02 | 2017-03-15 | 西安电子科技大学 | 基于属性加密的区块链隐私数据访问控制方法 |
CN107274184A (zh) * | 2017-05-11 | 2017-10-20 | 上海点融信息科技有限责任公司 | 基于零知识证明的区块链数据处理 |
Also Published As
Publication number | Publication date |
---|---|
SG11202002560PA (en) | 2020-04-29 |
EP3678079A1 (en) | 2020-07-08 |
WO2019100864A1 (zh) | 2019-05-31 |
CN108171494A (zh) | 2018-06-15 |
US20210203669A1 (en) | 2021-07-01 |
TW201926115A (zh) | 2019-07-01 |
US20200177603A1 (en) | 2020-06-04 |
US11108786B2 (en) | 2021-08-31 |
EP3678079A4 (en) | 2020-07-15 |
US10931684B2 (en) | 2021-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI684892B (zh) | 資料處理方法和裝置 | |
TWI733057B (zh) | 資源轉移和資金轉移的方法和裝置 | |
US11295303B2 (en) | Method, apparatus and electronic device for blockchain transactions | |
TWI786282B (zh) | 區塊鏈交易方法及裝置、電子設備 | |
TWI713840B (zh) | 數位憑證管理方法、裝置及電子設備 | |
TWI714845B (zh) | 數位憑證管理方法、裝置和系統 | |
TWI685240B (zh) | 區塊鏈交易方法及裝置、電子設備 | |
TWI713353B (zh) | 區塊鏈節點間通訊方法、數位憑證管理方法、裝置和電子設備 | |
TWI703853B (zh) | 網路中使用者身份認證方法和裝置 | |
CN110032884B (zh) | 区块链中实现隐私保护的方法及节点、存储介质 | |
CN109544129B (zh) | 区块链交易方法及装置、电子设备 | |
JP2020508593A (ja) | コンセンサス検証方法およびデバイス | |
CN112651740A (zh) | 区块链交易方法及装置、电子设备 | |
TW202016819A (zh) | 區塊鏈交易方法及裝置、電子設備 | |
CN109547206A (zh) | 数字证书的处理方法及相关装置 | |
CN111738724B (zh) | 跨境资源转移真实性审核方法及装置、电子设备 | |
US20210334809A1 (en) | Transaction method and apparatus based on blind signature | |
CN111401875B (zh) | 基于账户模型的区块链转账方法及装置 | |
JP2022549777A (ja) | ブロックチェーンのトランザクションへの要求のパーティション | |
CN111383008B (zh) | 基于账户模型的区块链转账方法及装置 | |
CN113902439A (zh) | 一种基于门限签名的联盟链跨链交易方法和装置 |