TWI706275B - 用於資訊保護的系統和方法 - Google Patents

用於資訊保護的系統和方法 Download PDF

Info

Publication number
TWI706275B
TWI706275B TW108125043A TW108125043A TWI706275B TW I706275 B TWI706275 B TW I706275B TW 108125043 A TW108125043 A TW 108125043A TW 108125043 A TW108125043 A TW 108125043A TW I706275 B TWI706275 B TW I706275B
Authority
TW
Taiwan
Prior art keywords
transaction
key
commitment
sender
receiver
Prior art date
Application number
TW108125043A
Other languages
English (en)
Other versions
TW202020710A (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 TW202020710A publication Critical patent/TW202020710A/zh
Application granted granted Critical
Publication of TWI706275B publication Critical patent/TWI706275B/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/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/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/606Protecting data by securing the transmission between two devices or processes
    • 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
    • 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
    • H04L63/0435Network 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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • 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
    • 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/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3239Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/046Masking or blinding of operations, operands or results of the operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

一種電腦實現的方法包括:用承諾方案承諾交易的交易金額以獲得交易承諾值,所述承諾方案至少包括交易盲因子;產生對稱密鑰對的第一密鑰;用所述第一密鑰加密所述交易盲因子和所述交易金額t的組合;以及向與所述交易的接收方相關聯的接收方節點發送所述交易承諾值T和所述加密的組合,以便所述接收方節點驗證所述交易。

Description

用於資訊保護的系統和方法
本公開總體上係關於用於資訊保護的方法和設備。
隱私對於各種用戶之間的通信和資料傳輸是重要的。在沒有保護的情況下,用戶暴露於身份盜竊、非法轉移或其它潛在損失的風險中。當線上實現通信和傳送時,由於對線上資訊的自由存取,風險甚至變得更大。
本發明的各種實施例包括用於資訊保護的系統、方法和非暫時性電腦可讀媒體。 根據一個方面,用於資訊保護的電腦實現方法包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便接收方節點驗證交易。 在一些實施例中,產生第一密鑰包括:根據Diffie-Hellman(DH)密鑰交換協議,基於交易的發送方的私鑰SK_A和交易的接收方的公鑰PK_B,產生第一密鑰。 在一些實施例中,承諾方案包括佩德森(Pedersen)承諾,所述Pedersen承諾至少基於交易盲因子r_t並且具有作為被承諾值的交易金額t。 在一些實施例中,交易盲因子r_t和交易金額t的組合包括交易盲因子r_t和交易金額t的級聯。 在一些實施例中,向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合以便接收方節點驗證所述交易包括向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,使得接收方節點:基於交易的接收方的私鑰SK_B和交易的發送方的公鑰PK_A產生對稱密鑰對的第二密鑰;用由接收節點產生的第二密鑰解密加密的組合,獲得交易盲因子r_t和交易金額t;以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 在一些實施例中,使接收方節點至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證交易包括使接收方節點:回應於基於交易盲因子r_t確定交易承諾值T與交易金額t的承諾方案不匹配,拒絕所述交易;以及回應於基於交易盲因子r_t確定交易承諾值T與交易金額t的承諾方案匹配,透過對交易簽名產生待返回至與發送方相關聯的發送方節點的接收方簽名SIGB以批准所述交易。 在一些實施例中,在向與接收方相關聯的接收方節點發送加密的組合之前,所述方法還包括:用承諾方案承諾交易的找零y以獲得找零承諾值Y,所述承諾方案至少包括找零盲因子r_y,其中找零y是交易動用的發送方的一個或多個資產減去交易金額t;基於發送方的私鑰SK_A和發送方的公鑰PK_A產生另一密鑰;以及用另一密鑰加密找零盲因子r_y和找零y的另一組合。 在一些實施例中,所述方法還包括:回應於接收到接收方簽名SIGB,透過對交易簽名產生發送方簽名SIGA以批准所述交易;以及向區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,以便一個或多個節點驗證所述交易。 在一些實施例中,向區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,以便一個或多個節點驗證所述交易,包括:向所述區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,使得所述一個或多個節點回應於成功驗證所述交易,向接收方發佈交易金額t,消除為所述交易動用的一個或多個資產,以及向所述發送方發佈找零y。 根據另一方面,非暫時性電腦可讀儲存媒體儲存待由處理器執行以使所述處理器執行操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便接收方節點驗證所述所述交易。 根據另一方面,用於資訊保護的系統包括處理器和耦合至所述處理器的非暫時性電腦可讀儲存媒體,所述儲存媒體儲存待由所述處理器執行以使所述系統執行操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便接收方節點驗證所述交易。 根據另一方面,用於資訊保護的電腦實現方法包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便所述接收方節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,非暫時性電腦可讀儲存媒體儲存待由處理器執行以使所述處理器執行以下操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便所述接收方節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰對解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,用於資訊保護的系統包括處理器和耦合至所述處理器的非暫時性電腦可讀儲存媒體,所述儲存媒體儲存待由所述處理器執行以使所述系統執行操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便所述接收方節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,用於資訊保護的電腦實現方法包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向交易的接收方相關聯的接收節點發送交易承諾值T和加密的組合,以便所述接收節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,非暫時性電腦可讀儲存媒體儲存待由處理器執行以使所述處理器執行操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便所述接收方節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,用於資訊保護的系統包括處理器和耦合至所述處理器的非暫時性電腦可讀儲存媒體,所述儲存媒體儲存待由所述處理器執行以使所述系統執行操作的指令,所述操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用第一密鑰加密交易盲因子r_t和交易金額t的組合;以及向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便所述接收節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰,用由接收方節點產生的第二密鑰解密加密的組合,以獲得交易盲因子r_t和交易金額t,以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,用於資訊保護的電腦實現方法包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾交易金額t,以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第二密鑰;用由與交易的接收方相關聯的接收方節點產生的第二密鑰解密所獲得的組合,以獲得交易盲因子r_t和交易金額T;以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,非暫時性電腦可讀儲存媒體儲存待由處理器執行以使所述處理器執行操作的指令,所述操作包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾交易金額t,以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第二密鑰;用與交易的接收方相關聯的接收方節點產生的第二密鑰解密所獲得的組合,以獲得交易盲因子r_t和交易金額t;以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 根據另一方面,用於資訊保護的系統包括處理器和耦合至所述處理器的非暫時性電腦可讀儲存媒體,所述儲存媒體儲存待由所述處理器執行以使所述系統執行操作的指令,所述操作包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾交易金額t,以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第二密鑰;用與交易的接收方相關聯的接收方節點產生的第二密鑰解密所獲得的組合,以獲得交易盲因子r_t和交易金額T;以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 在參考圖式考慮以下描述和所附申請專利範圍之後,本文公開的系統、方法和非暫時性電腦可讀媒體的這些特徵和其它特徵,以及操作方法和結構的相關元件的功能以及部件的組合和製造的經濟性將變得更加明顯,所有圖式形成本說明書的一部分,其中在各個圖式中,相同的圖式標記表示對應的部件。然而,應當清楚地理解,圖式僅用於說明和描述的目的,而不意圖作為對本發明的限制的定義。
因為操作由網路中的各個節點(例如,計算設備)執行,區塊鏈可以被認為是去中心化的資料庫,通常被稱為分散式帳本。任何資訊都可以被寫入並被保存至區塊鏈中或從區塊鏈被讀取。任何人都可以建立伺服器並作為節點加入區塊鏈網路。任何節點都可以透過執行諸如雜湊計算的複雜計算以向當前區塊鏈添加區塊,從而對維持區塊鏈貢獻計算能力,並且所添加的區塊可以包含各種類型的資料或資訊。可以用代幣(例如,數位貨幣單位)對為所添加的區塊貢獻計算能力的節點進行獎勵。由於區塊鏈沒有中心節點,所以每個節點是等同的,並且保存整個區塊鏈資料庫。 節點是例如支援區塊鏈網路並保持其平穩運行的計算設備或大型電腦系統。有兩種類型的節點,全量節點和輕量節點。全量節點保存區塊鏈的完整副本。區塊鏈網路上的全量節點驗證它們接收的交易和區塊,並將這些交易和區塊中繼到連接的對等點,以提供交易的共識驗證。另一方面,輕量節點僅下載區塊鏈的一小部分。例如,輕量節點用於數位貨幣交易。當輕量節點想要進行交易時,輕量節點將與全量節點通信。 這種去中心化屬性可以幫助防止處於控制位置的管理中心出現。例如,比特幣區塊鏈的維護是由運行區域中(裝有)比特幣軟體的通信節點組成的網路執行。本公開使用一個或多個區塊鏈或數位貨幣,例如比特幣和以太幣。本領域普通技術人員應當理解,本公開中公開的技術方案可以使用或應用於其他類型的區塊鏈和數位貨幣。也就是說,取代傳統意義上的銀行、機構或管理員,多個中間角色以執行比特幣軟體的電腦伺服器的形式存在。這些電腦伺服器形成經由網際網路連接的網路,其中任何人都可能加入該網路。網路所容納的交易可以具有以下形式:“用戶A想要將Z個比特幣發送給用戶B”,其中使用容易獲得的軟體應用程式將交易廣播至網路。電腦伺服器用作比特幣伺服器,該比特幣伺服器可操作以驗證這些金融交易,並將這些金融交易的記錄添加至其帳本的副本中,接著向網路的其它伺服器廣播這些帳本添加操作。 維護區塊鏈被稱為“挖礦”,並且進行這種維護的人被用如上所述的新創造的比特幣和交易費進行獎勵。例如,節點可以基於區塊鏈網路已經同意的一組規則確定交易是否有效。礦工可位於任何大陸上,並透過驗證每一交易是有效的以及將該交易添加至區塊鏈中來處理支付。透過由多個礦工提供的共識實現這種驗證,並且假定不存在系統串通。最後,所有資料將是一致的,因為計算必須滿足某些要求才是有效的,並且所有節點將被同步以確保區塊鏈是一致的。因此,資料可以被一致地儲存在區塊鏈節點的分散式系統中。 透過挖礦過程,交易諸如資產轉移被網路節點驗證並被添加至區塊鏈的區塊的增長鏈中。透過遍歷整個區塊鏈,驗證可包括例如付款方是否有權存取轉帳資產、資產是否以前已經被花費、轉帳金額是否正確等。例如,在由發送方簽發的假設交易(例如,根據UTXO(未被花費的交易輸出)模型的比特幣交易,根據帳戶/餘額模型的以太幣交易)中,提出的交易可被廣播至區塊鏈網路以便挖礦。礦工需要根據區塊鏈歷史檢查交易是否有資格被執行。如果根據現有的區塊鏈歷史,發送方的錢包餘額具有足夠的資金,則認為交易是有效的,並且可以將該交易添加至區塊中。資產轉移一旦被驗證,其可以被包含於下一個待被添加至區塊鏈的區塊中。 區塊非常像資料庫記錄。每次寫入資料時創建一個區塊。這些區塊被連結並使用密碼術被保護以成為互連的網路。每個區塊都連接至前一區塊,這也是名稱“區塊鏈”的起源。每個區塊通常包含前一區塊的加密雜湊值、產生時間和實際資料。例如,每個區塊包含兩個部分:記錄當前區塊的特徵值的區塊頭,以及記錄實際資料(例如,交易資料)的主體。區塊的鏈透過區塊頭連結。每個區塊頭可以包含多個特徵值,例如版本、前一區塊雜湊值、默克爾(Merkle)根、時間戳記、難度目標和隨機數。前一區塊雜湊值不僅包含前一區塊的地址,而且包含前一區塊內部的資料的雜湊值,從而使得區塊鏈不可變。隨機數是當被包括時產生具有指定數量的前導零位的雜湊值的數。 為了挖礦,節點獲取新區塊的內容的雜湊值。隨機數(例如,隨機字符串)被附加到該雜湊值,從而獲得新字符串。新字符串被再次進行雜湊處理。然後,將最終的雜湊值與難度目標(例如,級別)進行比較,並確定最終的雜湊值是否實際小於難度目標。如果最終的雜湊值不小於難度目標,則改變隨機數,並且再次重複該過程。如果最終的雜湊值小於難度目標,則將所述區塊添加至鏈中,更新公開帳本並提醒所述添加。負責成功添加的節點獲得比特幣獎勵,例如,透過向新區塊添加對自身的獎勵交易(稱為造幣產生)。 即,對於每個輸出“Y”,如果k是從最小熵(min-entropy)高的分佈中選擇的,則不可能找到輸入x以使得H(k|x)=Y,其中K是隨機數,x是區塊的雜湊值,Y是難度目標,並且“|”表示級聯(concatenation)。由於加密雜湊值基本上是隨機的,由於加密雜湊值的輸出不能從其輸入預測,僅存在一種找到隨機數的已知方法:一個接一個地嘗試整數,例如1、然後2、然後3、等等,這可以被稱為蠻力。前導零的數量越大,找到必需的隨機數Y所花費的平均時間就越長。在一個示例中,比特幣系統不斷地調整前導零的數量,使得找到隨機數的平均時間約為十分鐘。這樣,由於計算硬體的處理能力隨著時間提高,接下來幾年,比特幣協議將只需要更多的前導零位,以使得實現挖礦總是花費大約十分鐘的持續時間。 如上所述,雜湊處理是區塊鏈的重要基礎。可以將雜湊演算法理解為將任何長度的消息壓縮成固定長度消息摘要的函數。MD5和SHA是更常使用的。在一些實施例中,區塊鏈的雜湊值長度是256位元,這意味著無論原始內容是什麼,最終都計算256位元的二進位數字。並且只要原始內容不同,就可以保證相應的雜湊值是唯一的。例如,字符串“123”的雜湊值是a8fdc205a9f19cc1c7507a60c4f01b13d11d7fd0 (十六進位),其當被轉換為二進位時具有256位元,並且僅“123”具有這個雜湊值。區塊鏈中的雜湊演算法是不可逆的,即,正向計算是容易的(從“123”至a8fdc205a9f19cc1c7507a60c4f01b1c7507a60c4f01b13d11d7fd0),並且即使耗盡所有計算資源,也不能完成逆向計算。因此,區塊鏈的每個區塊的雜湊值是唯一的。 此外,如果區塊的內容改變,則其雜湊值也將改變。區塊和雜湊值一一對應,並且針對區塊頭具體計算每個區塊的雜湊值。即,連接區塊頭的特徵值以形成長字符串,然後為所述字符串計算雜湊值。例如,“雜湊值=SHA256(區塊頭)”是區塊雜湊值計算公式,SHA256是應用於區塊頭的區塊鏈雜湊演算法。雜湊值由區塊頭而不是區塊主體唯一地確定。如上所述,區塊頭包含許多內容,包括當前區塊的雜湊值和前一區塊的雜湊值。這意味著如果當前區塊的內容改變,或者如果前一區塊的雜湊值改變,則將導致當前區塊中的雜湊值改變。如果駭客修改了區塊,則所述區塊的雜湊值改變。由於下一區塊必須包含前一區塊的雜湊值,為了使後面的區塊連接至被修改的區塊,駭客必須依次修改所有隨後的區塊。否則,被修改的區塊將脫離區塊鏈。由於設計原因,雜湊值計算是耗時的,幾乎不可能在短時間內修改多個區塊,除非駭客已經掌握了整個網路51%以上的計算能力。因此,區塊鏈保證了其自身的可靠性,並且一旦資料被寫入,資料就不能被篡改。 一旦礦工找到了新區塊的雜湊值(即,合格的簽名或解決方案),礦工就將該簽名廣播至所有其它礦工(區塊鏈中的節點)。現在,其它礦工依次驗證所述解決方案是否與發送方的區塊的問題相對應(即,確定雜湊值輸入是否實際上導致所述簽名)。如果所述解決方案是有效的,則其它礦工將確認該解決方案,並同意可將新區塊添加至區塊鏈。因此,達成了新區塊的共識。這也被稱為“工作量證明”。已經達成共識的區塊現在可以被添加至區塊鏈中,並且與其簽名一起被廣播至網路上的所有節點。只要區塊內的交易在所述時間點正確地對應於當前錢包餘額(交易歷史),節點就將接受該區塊並將保存該區塊於節點的交易資料。每當在所述區塊的頂部添加新的區塊時,所述添加還可算作為對其之前的區塊的另一“確認”。例如,如果交易被包括在區塊502中,並且區塊鏈有507個區塊,這意味著交易具有五個確認(對應於區塊507至區塊502)。交易具有越多的確認,攻擊者就越難改變。 在一些實施例中,示例性區塊鏈資產系統利用公鑰密碼術,其中產生兩個密鑰,一個公鑰和一個私鑰。可認為公鑰是帳號,而可認為私鑰是所有權憑證。例如,比特幣錢包是公鑰和私鑰的集合。可以用屬於資產地址的私鑰的知識來證明與該地址相關聯的資產(例如,數位貨幣、現金資產、股票、股權、債券)的所有權。例如,比特幣錢包軟體,有時稱為“比特幣客戶軟體”,允許給定用戶交易比特幣。錢包程式產生並儲存私鑰,並與比特幣網路上的對等點通信。 在區塊鏈交易中,透過付款人和收款人的公鑰在區塊鏈中識別付款人和收款人。例如,大多數當代比特幣轉移是從一個公鑰到不同的公鑰。實際上,這些密鑰的雜湊值被用於區塊鏈中,並且被稱為“比特幣地址”。原則上,如果使用用戶的比特幣地址而不是他們的名字,假想的攻擊者個人S可以透過簡單地向區塊鏈帳本添加像“個人A向個人S支付100個比特幣”一樣的交易從個人A偷錢。比特幣協議透過要求每次轉帳都用付款人的私鑰進行數位簽章防止這種盜竊,並且只有經簽名的轉帳可以被添加至區塊鏈帳本中。由於個人S不能偽造個人A的簽名,因此個人S不能透過向區塊鏈添加相當於“個人A向個人S支付200個比特幣”的條目來欺騙個人A。同時,任何人都可以使用他/她的公鑰來驗證個人A的簽名,並因此在他/她是付款人的情況下驗證他/她已經授權了區塊鏈中的任何交易。 在比特幣交易的情況下,為了向用戶B轉移一些比特幣,用戶A可以構造包含關於透過節點的交易的資訊的記錄。該記錄可以簽有用戶A的簽名密鑰(私鑰),並且包含用戶A的公共驗證密鑰和用戶B的公共驗證密鑰。簽名用於確認交易來自用戶A,並且一旦發佈交易,還防止該交易被任何人更改。該記錄與在新區塊中的同一時間窗口中發生的其它記錄一起可以被廣播至全量節點。在接收到記錄時,全量節點可以將記錄合併到區塊鏈系統中曾經發生的所有交易的帳本中,透過上述挖礦過程將新區塊添加至先前接受的區塊鏈,並且針對網路的共識規則驗證所添加的區塊。 UTXO(未被花費的交易輸出)模型和帳戶/餘額模型是用於實現區塊鏈交易的兩個示例性模型。UTXO是區塊鏈對象模型。根據UTXO,資產由尚未被花費的區塊鏈交易的輸出表示,所述輸出可以用作新交易中的輸入。例如,用戶A的待轉移的資產可以是UTXO的形式。為了花費(交易)資產,用戶A必須用私鑰簽名。比特幣是使用UTXO模型的數位貨幣的示例。在有效的區塊鏈交易的情況下,未被花費的輸出可用於實現進一步的交易。在一些實施例中,在進一步的交易中可以僅使用未被花費的輸出,以防止雙重支付和欺詐。為此,區塊鏈上的輸入在交易發生時被刪除,同時創建UTXO形式的輸出。這些未被花費的交易輸出可以(由私鑰持有者,例如,具有數位貨幣錢包的人)用於未來交易。 另一方面,帳戶/餘額模型(或稱為基於帳戶的交易模型)保持跟蹤每個帳戶的餘額作為全域狀態。檢查帳戶餘額,以確定帳戶餘額大於或等於花費的交易金額。以下提供了帳戶/餘額模型如何在以太坊中工作的示例: 1. Alice透過挖礦獲得5個以太幣。在該系統中記錄Alice具有5個以太幣。 2. Alice想給Bob 1個以太幣,因此系統將首先從Alice的帳戶中扣除1個以太幣,因此Alice現在具有4個以太幣。 3. 然後,系統給Bob的帳戶增加1個以太幣。該系統知道Bob本來有2個以太幣,因此Bob的餘額增加到3個以太幣。 以太坊的記帳方式可以與銀行中的記帳方式相似。類比是使用ATM/借記卡。銀行跟蹤每張借記卡有多少錢,當Bob需要花錢時,銀行在批准交易之前檢查其記錄以確保Bob具有足夠的餘額。 由於區塊鏈和其它類似的帳本是完全公開的,因此區塊鏈本身沒有隱私保護。P2P網路的公開特性意味著儘管使用它的人不是透過名字來識別的,但是將交易鏈接至個人和公司是可行的。例如,在跨境匯款中或在供應鏈中,交易金額具有極高級別的隱私保護值,這是因為使用交易金額資訊可以推斷交易方的特定位置和身份。交易的主題可以包括例如金錢、代幣、數位貨幣、合約、契據、醫療記錄、客戶詳細資料、股票、債券、權益或可以以數位形式描述的任何其他資產。儘管UTXO模型可以例如透過門羅幣(Monero)中的環簽名(ring signature)和零知識密碼術大零幣(Zcash)使得交易金額不公開,但是交易金額在帳戶/餘額模型下仍然是不受保護的。因此,本公開所解決的技術問題是如何保護線上資訊諸如交易金額的隱私。這樣的交易可以採用帳戶/餘額模型。 一些現有技術提出使用佩德森(Pedersen)承諾方案加密交易金額並替換帳戶/餘額模型。在該方案下,發送方透過區塊鏈之外的的安全通道向收款人發送交易金額和對應於交易金額的Pedersen承諾的隨機數。收款人驗證隨機數與交易承諾是否匹配,並執行本地儲存。例如,根據帳戶/餘額模型,帳戶可被視為用於保存被匯總但未被合併的資產的錢包(帳戶)。每個資產可以對應於資產類型(例如,加密貨幣),並且帳戶的餘額是資產價值的總和。即使是同一類型的資產也不被合併。在交易期間,可以指定轉移資產的接收方,並且可以從錢包中移除相應資產以便為交易提供資金。區塊鏈節點驗證支付錢包是否具有足以覆蓋交易的資產,然後節點從支付錢包中刪除轉移的資產,並將相應的資產添加至接收方錢包。 然而,這種方案仍然存在限制。首先,所述方案要求用戶在本地維護永久記憶體,以管理與加密帳戶餘額對應的隨機數和明文餘額,管理實現是複雜的;其次,儲存在單個本地節點中的與“Pedersen資產”對應的盲因子(如隨機數)和明文餘額容易丟失或損壞,且由於帳戶餘額頻繁變化,多節點備份儲存難以實現。 本公開中所提出的系統和方法可以克服上述限制,並且實現對承諾方案中的交易金額、資產價值和盲因子的穩健隱私保護。為此,可以使用透過迪菲-赫爾曼(Diffie-Hellman,DH)密鑰交換協議獲得的對稱密鑰來加密/解密隨機數和明文餘額,從而提供方便的管理。此外,將加密資訊儲存在區塊鏈中確保了承諾方案中的交易金額、資產價值和盲因子不容易丟失或被篡改。 在討論本公開的圖式之前,以下描述了Pedersen承諾和Diffie-Hellman (DH)密鑰交換協議。 在一些實施例中,承諾方案(例如,Pedersen承諾)可以加密某個值a(例如,交易金額、資產價值、關鍵參數)如下:
Figure 02_image001
其中,r是提供隱藏的隨機盲因子(或者稱為盲因子),G和H是達成共識的橢圓曲線的生成數/基點,並且可以是隨機選擇的,sn是承諾的值,C(sn)是用作承諾並被給予對方的曲線點,並且H是另一曲線點。也就是說,G和H可以是被節點已知的參數。可透過利用從一個點映射到另一個點的雜湊函數(H=雜湊(G))對基點G進行雜湊處理,產生H的“空袖數(nothing up my sleeve)”。H和G是給定系統的公共參數(例如,橢圓曲線上的隨機產生的點)。儘管以上提供了橢圓曲線形式的Pedersen承諾的示例,但是可以替代地使用各種其它形式的Pedersen承諾或其它承諾方案。 承諾方案保持資料保密但承諾資料使得資料的發送方稍後不能改變資料。如果一方僅知道承諾值(例如,PC(a)),則它們不能確定哪些底層資料值(例如,a)已經被承諾。資料(例如,a)以及盲因子(例如,r)稍後可以(例如,由發起方節點)顯露,承諾的接收方(例如,共識節點)可以運行該承諾,並驗證該承諾的資料與所顯露的資料相匹配。之所以存在這種盲因子,是因為如果沒有這種盲因子,有人可能試圖猜測資料。 承諾方案是發送方(承諾方)承諾一值(例如,a)使得承諾的值保持私有,但是可以在當承諾方透露承諾過程的必要參數的稍後時間顯示該承諾的值的一種方式。強承諾方案可以是資訊隱藏和計算綁定。隱藏是指給定值a和該值的承諾PC(a)應該是不相關的這一概念。即,PC(a)不應顯露關於a的資訊。在已知PC(a)、G和H的情況下,因為隨機數r,幾乎不可能知道a。如果幾乎不存在使得兩個不同的值可以導致相同承諾的方式,則承諾方案是綁定的。Pedersen承諾在離散對數假設下是完全隱藏和計算綁定的。此外,在已知r、G、H和PC(a)的情況下,可以透過確定PC(a)=r×G+a×H是否成立來驗證PC(a)。 Pedersen承諾具有加法屬性:可以將承諾相加,並且一組承諾的總和與對資料總和的承諾相同(其中盲因子設置為盲因子的總和):
Figure 02_image003
換句話說,承諾保留了加法並且交換屬性適用,即,Pedersen承諾是相加同態的,因為底層資料可以進行數學運算,就像它沒有被加密一樣。 在一個實施例中,用於加密輸入值的Pedersen承諾可以使用橢圓曲線點來構造。傳統上,橢圓曲線密碼(ECC)公鑰是透過將用於群(G)的生成數與密鑰(r)相乘來創建的:Pub=rG。結果可以被序列化為33位元組陣列。ECC公鑰可以服從前面關於Pedersen承諾所提到的相加同態屬性。即:Pub1+Pub2=(r1+r2(mod n))G。 可以透過為所述群挑選附加的生成數(H,在下面的等式中)來創建用於輸入值的Pedersen承諾,使得沒有人知道第二生成數H相對於第一生成數G的離散對數(反之亦然),這意味著沒有人知道使得xG=H的x。這可以例如透過使用G的加密雜湊挑選H來完成:
Figure 02_image005
給定兩個生成數G和H,加密輸入值的示例性承諾方案可以被定義為:承諾=rG+aH。這裡,r可以是秘密盲因子,a可以是被承諾的輸入值。因此,如果sn被承諾,則可以獲得上述承諾方案PC(a)=r×G+a×H。Pedersen承諾在資訊理論上是私有的:對於任何承諾,存在使一數值與該承諾匹配的盲因子。因為任意映射是不可計算的,Pedersen承諾可以從計算上對抗虛假承諾。 承諾該值的一方(節點)可以透過公開原始值a和完成承諾等式的因子r來公開該承諾。然後,希望公開值PC(a)的一方將再次計算承諾,以驗證共用的原始值確實與最初接收的承諾PC(a)相匹配。因此,可以透過將資產類型資訊映射至唯一的序號,然後透過Pedersen承諾對其進行加密來保護資產類型資訊。當產生承諾時選擇的隨機數r使得任何人幾乎不可能根據承諾值PC(a)推斷出承諾的資產類型的類型。 在一些實施例中,Diffie-Hellman(DH)密鑰交換可以用作用於透過公共通道安全地交換密碼密鑰的方法。DH密鑰交換,也稱為指數密鑰交換,是一種數位加密方法,該方法使用提升至特定冪的數,以基於從不直接傳送的元件產生解密密鑰,使得潛在的程式碼破解者的任務在數學上是壓倒性的。 在實現Diffie-Hellman(DH)密鑰交換的示例中,兩個終端用戶Alice和Bob在透過他們已知是私有的通道通信時相互對正整數p和q達成共識,即p是素數、q是p的生成數。生成數q是如下的數:當該數被提升至小於p的正整數冪時,任何兩個整數都不會產生相同的結果。p的值可以是大的,但是q的值通常是小的。即,q是模p的原根。 一旦Alice和Bob私下對p和q達成共識,他們就選擇正整數個人密鑰a和b,兩者都小於素數模p,並且兩者都可以隨機產生。用戶不向任何人透露他們的個人密鑰,並且理想地,他們記住這些數位並且不將它們寫在或儲存在任何地方。接下來,Alice和Bob根據公式基於他們的個人密鑰計算公鑰a*和公鑰b*
Figure 02_image007
Figure 02_image009
兩個用戶可以透過假定不安全的通信媒體、諸如網際網路或公司廣域網路(WAN)共用其公鑰a*和公鑰b*。根據這些公鑰,任一用戶可以基於他們自己的個人密鑰產生數位k1。 Alice使用下式計算k1:k1=(b*)a mod p Bob使用下式計算k1:k1=(a*)b mod p 根據上述兩個式中的任一個,k1的值被證明是相同的。然而,在K1的計算中關鍵的個人密鑰a和個人密鑰b沒有透過公共媒體傳送。即使已知p、q、a*和b*,仍然很難計算a和b。因為k1是大的、明顯隨機的數位,所以即使在強大的電腦的幫助下進行數百萬次試驗,潛在的駭客也幾乎沒有機會正確地猜測k1。因此,理論上,兩個用戶可以使用解密密鑰k1用他們選擇的加密方法透過公共媒體進行私下通信。 在實現Diffie-Hellman(DH)密鑰交換的另一示例中,所有計算都發生在足夠規模的離散群中,其中Diffie-Hellman問題被認為是難的,通常乘法群以大素數(例如,對於經典DH)或橢圓曲線群(例如,對於Diffie-Hellman橢圓曲線)為模。 對於交易雙方,每一方選擇私鑰a或私鑰b。 每一方計算相應的公鑰aG或公鑰bG。 每一方將公鑰aG或公鑰bG發送給另一方。 每一方使用接收到的公鑰連同其自己的私鑰計算新的共用的秘密a(bG)=b(aG),這可以被稱為對稱密鑰對的對稱密鑰。 如稍後所述,所述示例性方法可用於產生對稱密鑰abG和baG。所述密鑰交換的結果是共用的秘密,該結果之後可以與密鑰匯出函數(例如,加密函數E(),其使用雙方已知的其他輸入、諸如隨機數和資產價值的級聯)一起用於匯出對稱加密方案的密鑰集。或者,可以使用各種其它計算方法,例如,透過產生公鑰ga 和公鑰gb 以及共用密鑰gab 或共用密鑰gba 。 在交易期間,資訊保護對於保護用戶隱私是重要的,並且交易金額是一種缺乏保護的資訊類型。圖1示出了根據各種實施例的用於資訊保護的示例性系統100。如圖所示,區塊鏈網路可以包括多個節點(例如,在伺服器、電腦等中實現的全量節點)。對於某些區塊鏈平台(例如,NEO),具有某級別投票權的全量節點可稱為共識節點,共識節點承擔交易驗證的責任。在本公開中,全量節點、共識節點或其它等效節點可驗證交易。 此外,如圖1所示,用戶A和用戶B可以使用作為輕量節點的相應設備、諸如膝上型電腦和行動電話等執行交易。例如,用戶A可能想要透過將用戶A的帳戶中的某些資產轉移到用戶B的帳戶來與用戶B交易。用戶A和用戶B可以使用安裝有適當的交易用區塊鏈軟體的相應設備。用戶A的設備可以稱為發起方節點A,發起方節點A發起與被稱為接收方節點B的用戶B的設備的交易。節點A可以透過與節點1的通信訪問區塊鏈,而節點B可以透過與節點2的通信訪問區塊鏈。例如,節點A和節點B可以透過節點1和節點2向區塊鏈提交交易,以請求向區塊鏈添加交易。除了區塊鏈,節點A和節點B可以具有其它通信通道(例如,不經過節點1和節點2的常規網際網路通信)。 圖1中的每個節點可以包括處理器和儲存待由處理器執行以使得節點(例如,處理器)執行本文所述的用於資訊保護的各種步驟的指令的非暫時性電腦可讀儲存媒體。每個節點可以安裝有軟體(例如,交易程式)和/或硬體(例如,有線、無線連接)以與其它節點和/或其它設備通信。稍後參考圖5描述節點硬體和軟體的進一步細節。 圖2示出了根據各種實施例的發送方節點A、接收方節點B以及一個或多個驗證節點之間的交易和驗證的示例性步驟。下面給出的操作旨在說明。取決於實現方式,示例性步驟可以包括以各種順序執行的或並行執行的附加的、較少的或替代的步驟。 在各種實施例中,交易方(發送方用戶A和接收方用戶B)的帳戶被配置用於帳戶/餘額模型。用戶A和用戶B可以執行以下步驟以經由一個或多個設備(例如他們的膝上型電腦、行動電話等)執行交易。這些設備可以安裝有用於執行各種步驟的適當軟體和硬體。每個帳戶可以與加密私鑰(密鑰)-公鑰對相關聯。私鑰可以表示為SK=x,公鑰可以表示為PK=xG,其中G是群的生成數。每個帳戶可以包含各種資產,每個資產表示為:(V=PC(r, v), E(K, r, v)),其中v表示資產的面值,V表示面值v的Pedersen承諾,r是盲因子(例如,隨機數),PC()是Pedersen承諾演算法,E()是加密演算法(例如,對稱密鑰加密演算法),並且K是加密密鑰。在一個示例中,每個資產可以表示為(V=PC   (r, v), E(K, r||v)),其中||表示級聯。每個資產還可以包括除了所列出的資訊之外的資訊,例如資產的源資訊。 在一個示例中,在用戶A在區塊鏈驗證的交易中成功地向用戶B交易金額t之前,A的帳戶和B的帳戶中的資產的地址如下: 對於A的帳戶(帳戶A): 地址:(SK_A=a, PK_A=aG) 值a_1至值a_m的資產A_1至資產A_m分別表示為:
Figure 02_image011
對於B的帳戶(帳戶B): 地址:(SK_B=b, PK_B=bG) 值b_1至值b_n的資產B_1至資產B_n分別表示為:
Figure 02_image013
在一些實施例中,對於帳戶/餘額模型下的每個帳戶,可以基於橢圓曲線ecp256k1產生密鑰。例如,在以太坊ecp256k1上,1至2256 -1之間的任何數位可以是有效私鑰SK。在考慮足夠的隨機性的情況下,良好的庫產生私鑰。以太坊要求私鑰SK長度為256位。使用ECC密碼術的群運算完成公鑰產生。為了匯出公鑰PK,私鑰可以乘以G。用於匯出公鑰PK的乘法是不同於常規乘法的ECC乘法(橢圓曲線點乘法)。G是作為ECC密碼術的域參數之一的產生元點。針對ecp256k1,G可以具有固定值。所述地址可以是例如公鑰PK的雜湊值的最後20位元組。 在一些實施例中,在步驟201處,節點A可以發起與節點B的交易。例如,用戶A和用戶B可以協商從用戶A的帳戶A到用戶B的帳戶B的交易金額t。帳戶A和帳戶B可以對應於本文描述的“錢包”。帳戶A可具有一個或多個資產。資產可以包括例如貨幣、代幣、數位貨幣、合約、契約、醫療記錄、客戶詳細資料、股票、債券、權益或能夠以數位形式描述的任何其它資產。帳戶B可以具有一個或多個資產或者不具有資產。每個資產可以與儲存在區塊鏈的區塊中的各種區塊鏈資訊相關聯,所述區塊鏈資訊包括例如表示資產類型的NoteType、表示資產的唯一標識的NoteID、表示資產價值的承諾(例如,Pedersen承諾)值的承諾值、隨機數和資產價值的加密等。 如針對帳戶A所描述的,在一些實施例中,資產A_1至資產A_m分別對應於資產價值a_1至資產價值a_m和隨機數r_1至隨機數r_m。基於隨機數r_1至隨機數r_m,節點A可將帳戶A中的資產價值交給承諾方案(例如,Pedersen承諾)以獲得加密的承諾值。例如,加密的承諾值可以是PC_1至PC_m,其中PC_i=PC(r_{a_i}, a_i)=r_{a_i}×G+a_i×H,其中G和H是已知參數,i為1至m。除了第一欄位PC(…)之外,每個資產還與第二欄位E(…)相關聯,如前所述。第二欄位E(…)可以表示用密鑰K_A對相應的隨機數和資產價值進行的加密。例如,加密可以是E(K_A, r_{a_i}||a_i))。每個資產的PC(…)和E(…)可以從先前的交易繼承。同一機制可以應用於帳戶B及其資產。 在一些實施例中,K_A可包括各種類型的加密密鑰。例如,K_A可以是下面進一步描述的a*PK_A=aaG,K_B可以是下面進一步描述的a*PK_B=abG,其中a、b和G可以乘以ECC乘法。 在一些實施例中,為了滿足交易金額t,用戶A可以從帳戶A動用匯總價值至少為t的一個或多個資產。例如,參考圖1,節點A可以選擇用於所述交易的資產A_1和資產A_2。節點A可以從節點1讀取資產PC(r_1, a_1)和   PC(r_2, a_2)。在節點A已知隨機數r_1和隨機數r_2的情況下,節點A可以解密所讀取的資產PC(r_1, a_1)和   PC(r_2, a_2),獲得資產價值a_1和資產價值a_2,以保證a_1和a_2之和不小於交易金額t。可以基於各種費率彼此兌換帳戶內不同的資產。 在一些實施例中,如果所選資產價值的金額超過t,則設置y作為找零。例如,節點A可確定找零y=a_1+a_2-t。節點A可以選擇隨機數r_t和隨機數r_y作為盲因子,以產生針對t和y的Pedersen承諾:
Figure 02_image015
。 也就是說,節點A可針對t產生隨機數r_t,針對y產生隨機數r_y。節點A可將t和r_t交給承諾方案(例如,同態加密)以獲得承諾值T=PC(r_t, t),並將y和r_y交給承諾方案(例如,同態加密)以獲得承諾值Y=PC(r_y, y)。 此外,在一些實施例中,節點A產生對稱密鑰對的第一密鑰a*PK_B=abG,並且產生另一密鑰a*PK_A=aaG。節點A使用第一密鑰abG加密(r_t||t),這產生了加密  E(abG, r_t||t),並且使用密鑰aaG來加密(r_y||y),產生加密E(aaG, r_y||y)。圖3A和圖3B可以遵循所述示例。作為透過節點A獲得加密E(abG, r_t||t)的替代,用戶A可以將r_t和t連同交易資訊一起發送至節點B,從而使得節點B產生用於加密(r_t||t)的對稱密鑰對的第二密鑰b*PK_A=baG。節點B向節點A發送密文以允許節點A驗證。圖4A和圖4B可以遵循所述示例。儘管在本公開的各種示例中使用了級聯,但是輸入、輸出或其他參數的替換組合可以用於加密函數或其他操作。 此外,在一些實施例中,如果PC(r_t, t)的值和 PC(r_y, y)的值各自在有效範圍內,則節點A可產生範圍證據RP以向區塊鏈節點進行證明。例如,為了使PC(r_t, t)具有有效值,交易金額t可以在有效範圍[0,2n -1]內;並且為了使PC(r_y, y)具有有效值,找零y可以在有效範圍 [0,2n -1]內。在一個實施例中,節點A可使用區塊證明技術,產生與(r_y, y, Y, r_t, t, T)相關的範圍證據RP,以供區塊鏈節點(例如,共識節點)在稍後的步驟中基於範圍證據來驗證交易金額t和找零y是否在有效範圍內。所述範圍證據可以包括例如防彈(Bulletproofs)、博羅米爾(Borromean)環簽名等。 在步驟202處,節點A可以將交易資訊發送至節點B(例如,透過區塊鏈之外的安全通道)。所發送的交易資訊可以包括例如承諾值T=PC(r_t, t)、承諾值Y=PC(r_y, y)、加密E(abG, r_t||t)、加密E(aaG, r_y||y)、範圍證據RP等。承諾值Y=PC(r_y, y)、加密E(aaG, r_y||y)和範圍證據RP可以是可選的,因為節點B可以不關心發送回帳戶A的找零。在一些實施例中,經由區塊鏈外的通信通道的交易可防止交易資訊被記錄在區塊鏈中並防止除發送方節點A和接收方節點B之外的節點獲得交易資訊。E(aaG, r_y||y)可能不需要被發送至節點B,但是由於所述找零y將被返回至帳戶A,因此用戶A未來可能需要花費找零y。 在步驟203處,節點B可以驗證隨機數r_t、交易金額t和承諾值T。在一些實施例中,節點B可以產生對稱密鑰對的第二密鑰b*PK_A=baG,並且使用第二密鑰baG解密加密E(abG, r_t||t)以獲得r_t||t。從r_t||t中,節點B可以獲得r_t和t,然後驗證r_t及t與T=PC(r_t, t)是否匹配。也就是說,節點B可以根據Pedersen承諾演算法,基於隨機數r_t和交易金額t驗證承諾值T=PC(r_t, t)是否正確。如果匹配/驗證失敗,則節點B可以拒絕所述交易;如果匹配/驗證成功,則在步驟204處,節點B可以對交易簽名以答覆節點A。 在步驟204處,節點B可以用用戶B的私鑰SK_B對交易簽名,從而產生簽名SIGB。該簽名可以遵循數位簽章演算法(DSA),例如橢圓曲線數位簽章演算法(ECDSA),由此簽名的接收方可以用簽名人的公鑰來驗證簽名,從而認證經簽名的資料。簽名SIGB指示接收方節點B同意所述交易。 在步驟205處,節點B可以將經簽名的交易與簽名SIGB一起發送回節點A。 在步驟206處,如果SIGB未被成功驗證,則節點A可以拒絕所述交易。如果SIGB被成功驗證,則節點A可以用用戶A的私鑰SK_A對交易簽名,從而產生簽名SIGA。類似地,該簽名可以遵循數位簽章演算法(DSA)。在一個實施例中,節點A可以用用戶A的私鑰對(E(abG, r_t||t);E(aaG, r_y||y);Y;T;RP)簽名,從而產生簽名SIGA。 在步驟207處,節點A可以向區塊鏈提交交易,使得區塊鏈節點驗證交易並確定是否將所述交易添加至區塊鏈。在一個實施例中,節點A可以經由節點1向區塊鏈提交交易(E(abG, r_t||t);E(aaG, r_y||y);Y;T;RP;SIGA;SIGB)以執行該交易。該交易可以包括附加參數,或者可以不包括所有列出的參數。該交易可以被廣播至區塊鏈中的一個或多個節點(例如,共識節點)用於驗證。如果驗證成功,則將所述交易添加至區塊鏈。如果驗證失敗,則拒絕將所述交易添加至區塊鏈。 在步驟208至步驟213處,一個或多個節點(例如,共識節點)對所提交交易的簽名、範圍證據和其它資訊進行驗證。如果驗證失敗,則節點拒絕所述交易。如果驗證成功,則節點接受所述交易,分別更新用戶A的帳戶和用戶B的帳戶。 在一些實施例中,為了執行交易,可由各個區塊鏈節點驗證交易資訊。交易資訊可以包括交易地址TXID、簽名、輸入和輸出。TXID可以包括交易內容的雜湊值。簽名可以包括發送方和接收方的密鑰簽名。輸入可以包括發送方帳戶在區塊鏈中的地址、從發送方的區塊鏈帳戶為交易所動用的一個或多個資產等。輸出可以包括接收方帳戶在區塊鏈中的地址、接收方資產的資產類型、接收方資產的承諾值等。輸入和輸出可包括表格形式的索引資訊。在一些實施例中,NoteID值的值可以是“TXID+輸出中的資產的索引”。 在一些實施例中,區塊鏈的一個或多個節點可以驗證所提交的交易(E(abG, r_t||t);E(aaG, r_y||y);Y;T;RP;SIGA;SIGB)。 在步驟208處,節點可以使用防雙重支付機制或防重放攻擊機制驗證是否已經執行所述交易。如果所述交易已經被執行,則節點可以拒絕所述交易;否則,所述方法可進入步驟209。 在步驟209處,節點可以檢查簽名SIGA和簽名SIGB(例如,分別基於A的公鑰和B的公鑰)。如果任何簽名是不正確的,則節點可以拒絕所述交易;否則,所述方法可進入步驟210。 在可選步驟210處,節點可以驗證資產類型是否一致。例如,節點可以驗證針對A_1至A_2的NoteType中的資產類型是否與交易金額t的資產類型一致。如果任何資產類型不一致,則節點可以拒絕所述交易;否則,所述方法可進入步驟211。在一些實施例中,錢包中的原始資產類型可能已經基於兌換匯率被轉換為另一類型,可以跳過所述步驟。 在步驟211處,節點可檢查範圍證據RP以驗證PC(r_t, t)的值和PC(r_y, y)的值。在一個實施例中,節點可檢查範圍證據RP,以驗證交易金額t是否不小於零以及找零y是否不小於零。如果驗證失敗,則節點可以拒絕所述交易;否則,所述方法可進入步驟212。 在步驟212處,節點可以檢查交易的輸入和輸出是否一致。如果檢查失敗,則節點可以拒絕所述交易;否則,所述方法可進入步驟213。 在步驟213處,節點可以驗證節點A是否具有為交易動用的資產。在一個實施例中,節點可以基於儲存在區塊鏈中的資訊,諸如對應於帳戶A的資訊,執行所述驗證。所述資訊可以包括所有資產的先前交易資訊。因此節點可以確定帳戶A是否具有用於交易的交易資產。如果確定結果為否,則節點可以拒絕所述交易;否則,所述方法可進入步驟214。 在步驟214處,節點可以更新帳戶A和帳戶B。例如,節點可以從帳戶A中移除金額為t的交易資產,並且將其添加至帳戶B。基於同態屬性,由於Y=PC(r_y, y)、且節點1知道r_y並可以從區塊鏈訪問承諾值Y,因此節點1可以解密Y以獲得找零y並且將其返回至帳戶A。節點2在步驟202處從節點1獲得隨機數r_t,並且節點2可以從區塊鏈獲得承諾值T。因此,節點2可以解密T以獲得資產價值t,並將其添加至帳戶B。 在一個示例中,在更新帳戶A和帳戶B之後,帳戶A接收針對所動用的資產的找零y,並接收其未動用的資產。例如,被動用的資產可以是A_1和A_2,它們在交易中被移除,找零y被返回至帳戶A,並且未被動用的資產是A_3、…、A_m。帳戶B接收交易金額t並接收其原始資產(例如,B_1、…、B_n)。A的帳戶和B的帳戶中的資產如下: 對於A的帳戶(帳戶A),更新的資產被表示為:
Figure 02_image017
對於B的帳戶(帳戶B),更新的資產被表示為:
Figure 02_image019
儘管本公開使用節點A/用戶A和節點B/用戶B分別示出發送方和接收方,但是發送方和接收方可以是同一節點/用戶。例如,交易的找零y(帳戶A中的被動用的總資產減去交易金額)可以被發送回交易的發送方。因此,如本文所述的由節點B執行的各種步驟可以替代地由節點A執行。 圖3A示出了根據本公開的各種實施例的用於資訊保護的示例性方法300的流程圖。方法300可由圖1的系統100的一個或多個元件(例如,節點A、節點1、節點A和節點1的組合)實現。方法300可由包括處理器和非暫時性電腦可讀儲存媒體(例如,記憶體)的系統或裝置(例如,電腦、伺服器)實現,所述儲存媒體儲存將由處理器執行以使系統或裝置(例如,處理器)執行方法300的指令。下面給出的方法300的操作旨在說明。取決於實現方式,示例性方法300可包括以各種順序或並行執行的附加的、較少的或替代的步驟。 框301包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t。例如,如前所述,T=PC(r_t, t)。在一些實施例中,該承諾方案包括Pedersen承諾,Pedersen承諾至少基於交易盲因子r_t並且具有作為被承諾值的交易金額t。 框302包括:產生對稱密鑰對的第一密鑰。例如,如前所述,SK_A=a、PK_B=bG,第一密鑰可以是a*PK_B=abG。在一些實施例中,產生第一密鑰和第二密鑰包括:根據Diffie-Hellman(DH)密鑰交換協議,基於交易的發送方的私鑰SK_A和接收方的公鑰PK_B,產生第一密鑰和第二密鑰。 框303包括:用第一密鑰加密交易盲因子r_t和交易金額t的組合(例如,級聯)。例如,如前所述,節點A可以使用第一密鑰abG加密(r_t||t),這產生加密E(abG, r_t||t)。 框304包括:向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便接收方節點驗證所述交易。在一些實施例中,向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,以便接收方節點驗證所述交易包括,向與交易的接收方相關聯的接收方節點發送交易承諾值T和加密的組合,使得接收方節點:基於接收方的私鑰SK_B和發送方的公鑰PK_A產生對稱密鑰對的第二密鑰;使用由接收方節點產生的第二密鑰對加密的組合進行解密,以獲得交易盲因子r_t和交易金額t;以及至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。參見,例如,步驟203。例如,如前所述,接收方節點可以獨立地產生第二密鑰b* PK_A=baG。密鑰abG和baG是對稱且相等的。也就是說,接收方節點可以不從發送方節點接收第一密鑰abG,而是接收方節點獨立地產生作為abG的等價物的第二密鑰baG。 在一些實施例中,使接收方節點至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易包括使接收方節點:回應於基於交易盲因子r_t確定交易承諾值T與交易金額t的承諾方案不匹配,拒絕所述交易;以及回應於基於交易盲因子r_t確定交易承諾值T與交易金額t的承諾方案匹配,透過對所述交易簽名來產生待返回至與發送方相關聯的發送方節點的接收方簽名SIGB,從而批准所述交易。 在一些實施例中,在向與接收方相關聯的接收方節點傳送加密的組合之前(框304),所述方法還包括:用承諾方案承諾交易的找零y以獲得找零承諾值Y,該承諾方案至少包括找零盲因子r_y,該找零y是交易動用的發送方的一個或多個資產減去交易金額t;基於發送方的私鑰SK_A和發送方的公鑰PK_A產生另一密鑰;以及用該另一密鑰加密找零盲因子r_y和找零y的這另一組合。例如,如前所述,Y=PC(r_y, y)、PK_A=a,節點A可以產生密鑰a*PK_A=aaG並使用密鑰aaG加密(r_y||y),這產生加密E(aaG, r_y||y)。 在一些實施例中,所述方法還包括:回應於接收到接收方簽名SIGB,透過對交易簽名來產生發送方簽名SIGA,從而批准交易;以及向區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,以便所述一個或多個節點驗證所述交易。以上參考步驟208至213描述了更多細節。 在一些實施例中,向區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,以便所述一個或多個節點驗證所述交易,包括:向區塊鏈網路中的一個或多個節點提交包括加密的組合、加密的另一組合、交易承諾值T、找零承諾值Y、發送方簽名SIGA和接收方簽名SIGB的交易,使得所述一個或多個節點回應於成功驗證所述交易,向所述接收方發佈交易金額t、消除為所述交易動用的一個或多個資產、並向所述發送方發佈找零y。以上參考步驟214描述了更多細節。 圖3B示出了根據本公開的各種實施例的用於資訊保護的示例性方法400的流程圖。方法400可由圖1的系統100的一個或多個元件(例如,節點B、節點2、節點B和節點2的組合等)實現。方法400可以由包括處理器和非暫時性電腦可讀儲存媒體(例如,記憶體)的系統或裝置(例如,電腦、伺服器)實現,所述儲存媒體儲存將由處理器執行以使系統或裝置(例如,處理器)執行方法400的指令。下面給出的方法400的操作旨在說明。取決於實現方式,示例性方法400可以包括以各種順序或並行執行的附加的、較少的或替代的步驟。 框401包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T。由與交易的發送方相關聯的發送方節點用承諾方案承諾交易金額t來獲得交易承諾值T,該承諾方案至少包括交易盲因子r_t。在一些實施例中,第一密鑰由發送方節點基於交易的發送方的私鑰SK_A和交易的接收方的公鑰PK_B產生。 框402包括:產生對稱密鑰對的第二密鑰。在一些實施例中,產生對稱密鑰對的第二密鑰包括:根據Diffie-Hellman(DH)密鑰交換協議,基於交易的接收方的私鑰SK_B和發送方的公鑰PK_A,產生對稱密鑰對的第二密鑰。 框403包括:用與接收方相關聯的接收方節點產生的第二密鑰對所獲得的組合進行解密,以獲得交易盲因子r_t和交易金額t。 框404包括:至少基於交易承諾值T、交易盲因子r_t和交易金額t驗證所述交易。 替代在節點A處加密諸如(r_t||t)的組合(r_t, t),節點A可以將(r_t, t)發送至節點B,使得節點B加密組合(r_t, t),如下面參考圖4A和圖4B所描述的。圖1至圖3B的其它步驟和說明可類似地應用於圖4A和圖4B。 圖4A示出了根據本公開的各種實施例的用於資訊保護的示例性方法440的流程圖。方法440可以由圖1的系統100的一個或多個元件(例如,節點A、節點1、節點A和節點1的組合)實現。方法440可以由包括處理器和非暫時性電腦可讀儲存媒體(例如,記憶體)的系統或裝置(例如,電腦、伺服器)實現,所述儲存媒體儲存將由處理器執行以使系統或裝置(例如,處理器)執行方法440的指令。下面給出的方法440的操作旨在說明。取決於實現方式,示例性方法440可以包括以各種順序或並行執行的附加的、較少的或替代的步驟。 框441包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,所述承諾方案至少包括交易盲因子r_t。 框442包括:向與交易的接收方相關聯的接收方節點發送交易金額t、交易盲因子r_t和交易承諾值T,以便接收方節點驗證所述交易、並用對稱密鑰對的第二密鑰加密交易盲因子r_t和交易金額t。例如,節點B可以驗證T=PC(r_t, t)是否成立,並且節點B可以用密鑰baG加密所述組合以獲得E(baG, r_t||t)。 框443包括:從接收方節點獲得交易盲因子r_t和交易金額t的加密的組合(例如,E(baG, r_t||t))。 框444包括:產生對稱密鑰對的第一密鑰以對加密的組合進行解密,從而驗證所述交易。例如,節點A可以產生第一密鑰abG以解密E(baG, r_t||t),並驗證r_t和t是否正確。一旦r_t和t由發送方節點和接收方節點進行了相互驗證,則可以向區塊鏈提交所述交易以便驗證。 圖4B示出了根據本公開的各種實施例的用於資訊保護的示例性方法450的流程圖。方法450可由圖1的系統100的一個或多個元件(例如,節點B、節點2、節點B和節點2的組合等)實現。方法450可由包括處理器和非暫時性電腦可讀儲存媒體(例如,記憶體)的系統或裝置(例如,電腦、伺服器)實現,所述儲存媒體儲存將由處理器執行以使系統或裝置(例如,處理器)執行方法450的指令。下面給出的方法450的操作旨在說明。取決於實現方式,示例性方法450可以包括以各種順序或並行執行的附加的、較少的或替代的步驟。 框451包括:獲取交易的交易金額t、交易盲因子r_t和交易承諾值T。 框452包括:基於所獲得的交易金額t、所獲得的交易盲因子r_t和所獲得的交易承諾值T驗證所述交易。 框453包括:回應於成功地驗證所述交易,用對稱密鑰對的第二密鑰加密交易盲因子r_t和交易金額t以獲得加密的組合(例如,E(baG, r_t||t))。 框454包括:向與交易的發送方相關聯的發送方節點發送加密的組合。 如圖所示,可以透過計算技術的各種改進保護交易金額的隱私。例如,帳戶結構包括一個或多個欄位,諸如與資產價值的Pedersen承諾相關聯的第一欄位(例如,第一欄位是PC(r_{a_i}, a_i),其中i為1至m),以及與Pedersen承諾的隨機數及資產價值相關聯的第二欄位(例如,第二欄位是E(…))。第一欄位和第二欄位也用於交易步驟,並儲存在區塊鏈中。 對於另一個例子,對稱密鑰用於加密每個Pedersen承諾的隨機數和相應的資產價值,並且將包括加密的隨機數和資產價值的交易儲存在區塊鏈中。這種方式避免了對這種隨機數的本地管理,並且基於分散式且共識的區塊鏈儲存提高了安全性。 此外,在DH密鑰交換協議或替換協議下,即使沒有直接通信,用戶A和用戶B也共用用於對承諾的隨機數和資產價值進行加密/解密的共有密鑰(對稱密鑰對abG和baG)。由於對稱密鑰對是從相應帳戶的公私密鑰對獲得的,因此可以透過區塊鏈有效地儲存用於承諾的隨機數,且無需進一步添加加密密鑰。 對於又一示例,範圍證據用於證明交易的預先存在的資產與新資產和該交易是相平衡的,以及每個新資產的價值在合理範圍內。此外,交易各方可以透過安全的區塊鏈外通道向接收方發送承諾的隨機數和新資產的價值,以驗證承諾的值是否與交易資產的價值相匹配。 這樣,可以方便地管理Pedersen承諾的隨機數,且沒有出錯的風險,並且不會導致附加的密鑰管理負擔。因此,可以徹底地保護交易隱私,並且可以將交易金額保持為秘密。 本文描述的技術由一個或多個專用計算設備實現。專用計算設備可以是桌上型電腦系統、伺服器電腦系統、可擕式電腦系統、手持設備、聯網設備或任何其他設備,或包括固線式和/或程式邏輯以實現所述技術的設備的組合。計算設備通常由作業系統軟體控制和協調。傳統的作業系統控制和調度用於執行的電腦程序,執行記憶體管理,提供檔案系統、聯網、I/O服務,並提供用戶介面功能、例如圖形用戶介面(GUI)等等。 圖5是示出了可以在其上實現本文描述的任何實施例的電腦系統500的框圖。系統500可以在本文描述的任何節點中實現,並且被配置為執行用於資訊保護方法的相應步驟。電腦系統500包括匯流排502或用於傳送資訊的其它通信機制、與匯流排502耦合的用於處理資訊的一個或多個硬體處理器504。硬體處理器504可以是例如一個或多個通用微處理器。 電腦系統500還包括耦合至匯流排502的用於儲存資訊和要由處理器504執行的指令的主記憶體506,諸如隨機存取記憶體(RAM)、快取記憶體和/或其他動態儲存裝置設備。主記憶體506還可以用於儲存在執行指令期間要由(一個或多個)處理器504執行的臨時變數或其它中間資訊。當這些指令被儲存在處理器504可訪問的儲存媒體中時,這些指令使電腦系統500呈現為專用機器,所述專用機器被定制為執行指令中所指定的操作。電腦系統500還包括耦合至匯流排502的用於儲存用於處理器504的靜態資訊和指令的唯讀記憶體(ROM)508或其他靜態儲存設備。諸如磁片、光碟或USB拇指驅動器(快閃記憶體驅動器)等的儲存裝置510被提供並耦合至匯流排502,用於儲存資訊和指令。 電腦系統500可以使用定制的固線式邏輯、一個或多個ASIC或FPGA、韌體和/或程式邏輯實現本文描述的技術,所述韌體和/或程式邏輯與電腦系統相結合使得電腦系統500成為專用機器或將電腦系統500編程為專用機器。根據一個實施例,電腦系統500回應於處理器504執行包含在主記憶體506中的一個或多個指令的一個或多個序列,執行本文描述的操作、方法和過程。這些指令可以從另一儲存媒體諸如儲存裝置510讀入主記憶體506。執行包含在主記憶體506中的指令序列使得處理器504執行本文描述的處理步驟。在替代實施例中,可以使用固線式電路代替軟體指令,或將固線式電路與軟體指令組合使用。 主記憶體506、ROM 508和/或儲存裝置510可以包括非暫時性儲存媒體。如本文所使用的術語“非暫時性媒體”和類似術語指的是儲存用以使機器以特定方式操作的資料和/或指令的媒體,所述媒體不包括瞬態信號。這種非暫時性媒體可包括非易失性媒體和/或易失性媒體。非易失性媒體包括例如光碟或磁片,諸如儲存裝置510。易失性媒體包括動態記憶體,例如主記憶體506。非暫時性媒體的常見形式包括例如軟碟、軟性磁碟、硬碟、固態驅動器、磁帶或任何其它磁性資料儲存媒體、CD-ROM、任何其它光學資料儲存媒體、具有孔圖案的任何物理媒體、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其它儲存晶片或儲存盒、以及它們的聯網版本。 電腦系統500還包括耦合至匯流排502的網路介面518。網路介面518提供耦合至一個或多個網路鏈路的雙向資料通信,所述一個或多個網路鏈路連接至一個或多個本地網路。例如,網路介面518可以是整合式服務數位網路(ISDN)卡、纜線數據機、衛星數據機或提供至相應類型的電話線的資料通信連接的數據機。作為另一示例,網路介面518可以是提供至相容局域網(LAN)(或與WAN通信的WAN元件)的資料通信連接的LAN卡。無線鏈路也可以被實現。在任何這樣的實現方式中,網路介面518發送和接收承載表示各種類型的資訊的數位資料流的電信號、電磁信號或光信號。 電腦系統500可以透過網路、網路鏈路和網路介面518發送消息並接收資料,包括程式碼。在網際網路示例中,伺服器可以透過網際網路、ISP、本地網路和網路介面518傳輸所請求的用於應用程式的程式碼。 所接收的程式碼可以在被接收時由處理器504執行,和/或儲存在儲存裝置510或其他非易失性存放裝置中以供稍後執行。 在前述部分中描述的每個過程、方法和演算法可以在由一個或多個電腦系統或包括電腦硬體的電腦處理器執行的程式碼模組中實現,並且是完全自動化或部分自動化的。過程和演算法可以在專用電路中部分或全部地被實現。 上述各種特徵和過程可彼此獨立地使用,或者可以各種方式組合。所有可能的組合和子組合都將落入本公開的範圍內。另外,在一些實現方式中可以省略某些方法或過程框。本文描述的方法和過程也不限於任何特定次序,且與其相關的框或狀態可以以其它適當的次序來執行。例如,所描述的框或狀態可以以不同於具體公開的順序來執行,或者多個框或狀態可以被組合在單個框或狀態中。示例性框或狀態可以串列、並行或以一些其它方式執行。可以向所公開的示例性實施例添加框或狀態或從所公開的示例性實施例中移除框或狀態。本文所述的示例性系統和元件可與所述的不同地構造。例如,與所公開的示例性實施例相比,可以添加、去除或重新佈置元件。 本文描述的示例性方法的各種操作可以至少部分地由演算法執行。所述演算法可以包括在儲存在記憶體(例如,上述的非暫時性電腦可讀儲存媒體)中的程式碼或指令中。這種演算法可以包括機器學習演算法。在一些實施例中,機器學習演算法可以不顯式地編程電腦以執行功能,但可以從訓練資料中學習以建立執行所述功能的預測模型。 本文描述的示例性方法的各種操作可以至少部分地由(例如,透過軟體)被臨時配置或永久地配置為執行相關操作的一個或多個處理器執行。無論是臨時配置還是永久配置,這樣的處理器可以構成操作以執行本文描述的一個或多個操作或功能的處理器實現的引擎。 類似地,本文描述的方法可以至少部分地由處理器實現,其中特定的一個或多個處理器是硬體的示例。例如,方法的至少一些操作可以由一個或多個處理器或者處理器實現的引擎來執行。此外,一個或多個處理器還可操作以支持“雲計算”環境中的相關操作的性能,或作為“軟體即服務”(SaaS)操作。例如,至少一些操作可以由一組電腦(例如,包括處理器的機器)執行,這些操作可以經由網路(例如,網際網路)並經由一個或多個適當的介面(例如,應用程式介面(API))被訪問。 某些操作性能可以分佈在處理器之間,不僅駐留在單個機器內,而且跨多個機器部署。在一些示例性實施例中,處理器或處理器實現的引擎可以位於單個地理位置(例如,在家庭環境、辦公室環境或伺服器群內)。在其它示例性實施例中,處理器或處理器實現的引擎可以分佈在多個地理位置上。 在整個說明書中,多個實例可以實現被描述為單個實例的元件、操作或結構。儘管將一個或多個方法的各個操作示出並描述為單獨的操作,但是這些單個操作中的一個或多個可以同時執行,並且不要求這些操作按所示順序執行。在示例性配置中作為單獨元件呈現的結構和功能可以被實現為組合結構或元件。類似地,作為單個元件呈現的結構和功能可以被實現為單獨的元件。這些和其它變化、修改、添加和改進都落入本文的主題的範圍內。 儘管已經參考具體的示例性實施例描述了主題的概述,但是在不脫離本發明的實施例的更廣範圍的情況下,可以對這些實施例進行各種修改和改變。如果實際上公開了不只一個公開內容或概念,主題的這些實施例在本文中可單獨或共同地由術語“發明”指代,這僅僅是為了方便,而不是旨在主動將本申請的範圍限制到任何單個公開內容或概念。不應以限制性意義來理解具體實施方式,且各種實施例的範圍僅由所附申請專利範圍連同所述申請專利範圍有權獲得的等效物的全部範圍來界定。
100:系統 201~214:方法步驟 300:方法 301~304:方法步驟 400:方法 401~404:方法步驟 440:方法 441~444:方法步驟 450:方法 451~454:方法步驟 500:電腦系統 502:匯流排 504:處理器 506:主記憶體 508:唯讀記憶體(ROM) 510:儲存裝置 518:網路介面
本技術的各種實施例的某些特徵在所附申請專利範圍中具體闡述。透過參考以下闡述了利用本發明原理的示例性實施例的詳細說明以及圖式,將獲得對本技術的特徵和優點的更好理解,其中, 圖1示出了根據各種實施例的用於資訊保護的示例性系統。 圖2示出了根據各種實施例的交易發起和驗證的示例性步驟。 圖3A示出了根據各種實施例的用於資訊保護的示例性方法的流程圖。 圖3B示出了根據各種實施例的用於資訊保護的示例性方法的流程圖。 圖4A示出了根據各種實施例的用於資訊保護的示例性方法的流程圖。 圖4B示出了根據各種實施例的用於資訊保護的示例性方法的流程圖。 圖5示出了可實現本文所描述的任何實施例的示例性電腦系統的框圖。

Claims (21)

  1. 一種電腦實現的用於資訊保護的方法,包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,該承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用該第一密鑰加密該交易盲因子r_t和該交易金額t的組合;以及向與該交易的接收方相關聯的接收方節點發送該交易承諾值T和該加密的組合,使得該接收方節點:基於該接收方的私鑰SK_B和該交易的發送方的公鑰PK_A,產生該對稱密鑰對的第二密鑰;用由該接收方節點產生的該第二密鑰對該加密的組合進行解密,獲得該交易盲因子r_t和該交易金額t;以及至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
  2. 如請求項1所述的方法,其中,產生該第一密鑰包括:根據迪菲-赫爾曼DH密鑰交換協議,基於該交易的發送方的私鑰SK_A和該接收方的公鑰PK_B,產生該第一密鑰。
  3. 如請求項1所述的方法,其中, 該承諾方案包括佩德森承諾,該佩德森承諾至少基於該交易盲因子r_t,並且具有作為被承諾值的該交易金額t。
  4. 如請求項1所述的方法,其中,該交易盲因子r_t和該交易金額t的組合包括該交易盲因子r_t和該交易金額t的級聯。
  5. 如請求項1所述的方法,其中,使該接收方節點至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易,包括使該接收方節點:回應於基於該交易盲因子r_t確定該交易承諾值T與該交易金額t的該承諾方案不匹配,拒絕該交易;以及回應於基於該交易盲因子r_t確定該交易承諾值T與該交易金額t的該承諾方案匹配,透過對該交易簽名來產生待返回至與該發送方相關聯的發送方節點的接收方簽名SIGB,從而批准該交易。
  6. 如請求項5所述的方法,在向與該接收方相關聯的該接收方節點發送該加密的組合之前,還包括:用該承諾方案承諾該交易的找零y以獲得找零承諾值Y,該承諾方案至少包括找零盲因子r_y,該找零y是該交易動用的該發送方的一個或多個資產減去該交易金額t;基於該發送方的私鑰SK_A和該發送方的公鑰PK_A產 生另一密鑰;以及用該另一密鑰加密該找零盲因子r_y和該找零y的另一組合。
  7. 如請求項6所述的方法,還包括:回應於接收到該接收方簽名SIGB,透過對該交易簽名來產生發送方簽名SIGA,從而批准該交易;以及向區塊鏈網路中的一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,以便該一個或多個節點驗證該交易。
  8. 如請求項7所述的方法,其中,向該區塊鏈網路中的該一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,以便該一個或多個節點驗證該交易,包括:向該區塊鏈網路中的該一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,使得該一個或多個節點:回應於成功驗證該交易,向該接收方發佈該交易金額t、消除為該交易動用的一個或多個資產、並向該發送方發佈該找零y。
  9. 一種非暫時性電腦可讀儲存媒體,該非暫時性電腦可讀儲存媒體儲存待由處理器執行以使該處理器執行操作的指令,該操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,該承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用該第一密鑰加密該交易盲因子r_t和該交易金額t的組合;以及向與該交易的接收方相關聯的接收方節點發送該交易承諾值T和該加密的組合,使得該接收方節點:基於該接收方的私鑰SK_B和該交易的發送方的公鑰PK_A,產生該對稱密鑰對的第二密鑰;用由該接收方節點產生的該第二密鑰對該加密的組合進行解密,獲得該交易盲因子r_t和該交易金額t;以及至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
  10. 如請求項9所述的儲存媒體,其中,產生該第一密鑰包括:根據迪菲-赫爾曼DH密鑰交換協議,基於該交易的發送方的私鑰SK_A和該接收方的公鑰PK_B產生該第一密鑰。
  11. 如請求項9所述的儲存媒體,其中, 該承諾方案包括佩德森承諾,該佩德森承諾至少基於該交易盲因子r_t,並且具有作為被承諾值的該交易金額t。
  12. 如請求項9所述的儲存媒體,其中,該交易盲因子r_t和該交易金額t的組合包括該交易盲因子r_t和該交易金額t的級聯。
  13. 如請求項9所述的儲存媒體,其中,使該接收方節點至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易,包括使該接收方節點:回應於基於該交易盲因子r_t確定該交易承諾值T與該交易金額t的該承諾方案不匹配,拒絕該交易;以及回應於基於該交易盲因子r_t確定該交易承諾值T與該交易金額t的該承諾方案匹配,透過對該交易簽名來產生待返回至與該發送方相關聯的發送方節點的接收方簽名SIGB,從而批准該交易。
  14. 如請求項13所述的儲存媒體,在向與該接收方相關聯的該接收方節點發送該加密的組合之前,該操作還包括:用該承諾方案承諾該交易的找零y以獲得找零承諾值Y,該承諾方案至少包括找零盲因子r_y,該找零y是該交易動用的該發送方的一個或多個資產減去該交易金額t;基於該發送方的私鑰SK_A和該發送方的公鑰PK_A, 產生另一密鑰;以及用該另一密鑰加密該找零盲因子r_y和該找零y的另一組合。
  15. 如請求項14所述的儲存媒體,其中,該操作還包括:回應於接收到該接收方簽名SIGB,透過對該交易簽名來產生發送方簽名SIGA,從而批准該交易;以及向區塊鏈網路中的一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,以便該一個或多個節點驗證該交易。
  16. 如請求項15所述的儲存媒體,向該區塊鏈網路中的該一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,以便該一個或多個節點驗證該交易,包括:向該區塊鏈網路中的該一個或多個節點提交包括該加密的組合、該加密的另一組合、該交易承諾值T、該找零承諾值Y、該發送方簽名SIGA和該接收方簽名SIGB的該交易,使得該一個或多個節點:回應於成功驗證該交易,向該接收方發佈該交易金額t、消除為該交易動用的一個或多個資產、並向該發送方發佈該找零y。
  17. 一種用於資訊保護的系統,包括處理器和耦合至該處理器的非暫時性電腦可讀儲存媒體,該儲存媒體儲存待由該處理器執行以使該系統執行操作的指令,該操作包括:用承諾方案承諾交易的交易金額t以獲得交易承諾值T,該承諾方案至少包括交易盲因子r_t;產生對稱密鑰對的第一密鑰;用該第一密鑰加密該交易盲因子r_t和該交易金額t的組合;以及向與該交易的接收方相關聯的接收方節點發送該交易承諾值T和加密的組合,使得該接收方節點:基於該接收方的私鑰SK_B和該交易的發送方的公鑰PK_A,產生該對稱密鑰對的第二密鑰;用由該接收方節點產生的該第二密鑰對該加密的組合進行解密,獲得該交易盲因子r_t和該交易金額t;以及至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
  18. 一種電腦實現的用於資訊保護的方法,包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾該交易金額t來獲得該交易承諾值T,該承諾方案至少包括該交易盲因子r_t;產生該對稱密鑰對的第二密鑰; 用由與該交易的接收方相關聯的接收方節點產生的該第二密鑰對該獲得的組合進行解密,以獲得該交易盲因子r_t和該交易金額t;以及至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
  19. 如請求項18所述的方法,其中,產生該對稱密鑰對的第二密鑰包括:根據迪菲-赫爾曼DH密鑰交換協議,基於該接收方的私鑰SK_B和該發送方的公鑰PK_A,產生該對稱密鑰對的該第二密鑰;以及該承諾方案包括佩德森承諾,該佩德森承諾至少基於該交易盲因子r_t並且具有作為被承諾值的交易金額t。
  20. 一種非暫時性電腦可讀儲存媒體,儲存待由處理器執行以使該處理器執行操作的指令,該操作包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾該交易金額t來獲得該交易承諾值T,該承諾方案至少包括該交易盲因子r_t;產生該對稱密鑰對的第二密鑰;用由與該交易的接收方相關聯的接收方節點產生的該第二密鑰對該獲得的組合進行解密,以獲得該交易盲因子r_t和該交易金額t;以及 至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
  21. 一種用於資訊保護的系統,包括處理器和耦合至該處理器的非暫時性電腦可讀儲存媒體,該儲存媒體儲存待由該處理器執行以使該系統執行操作的指令,該操作包括:獲取用對稱密鑰對的第一密鑰加密的交易盲因子r_t和交易金額t的組合,並獲取交易承諾值T,其中,由與交易的發送方相關聯的發送方節點用承諾方案承諾該交易金額t來獲得該交易承諾值T,該承諾方案至少包括該交易盲因子r_t;產生該對稱密鑰對的第二密鑰;用由與該交易的接收方相關聯的接收方節點產生的該第二密鑰對該獲得的組合進行解密,以獲得該交易盲因子r_t和該交易金額T;以及至少基於該交易承諾值T、該交易盲因子r_t和該交易金額t驗證該交易。
TW108125043A 2018-11-27 2019-07-16 用於資訊保護的系統和方法 TWI706275B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
WOPCT/CN2018/117552 2018-11-27
PCT/CN2018/117552 WO2019072276A2 (en) 2018-11-27 2018-11-27 INFORMATION PROTECTION SYSTEM AND METHOD

Publications (2)

Publication Number Publication Date
TW202020710A TW202020710A (zh) 2020-06-01
TWI706275B true TWI706275B (zh) 2020-10-01

Family

ID=66100013

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108125043A TWI706275B (zh) 2018-11-27 2019-07-16 用於資訊保護的系統和方法

Country Status (18)

Country Link
US (2) US11277389B2 (zh)
EP (2) EP3866382B1 (zh)
JP (1) JP6724249B2 (zh)
KR (1) KR102170346B1 (zh)
CN (1) CN109937557B (zh)
AU (1) AU2018327218B2 (zh)
BR (1) BR112019007727A2 (zh)
CA (1) CA3040601C (zh)
ES (1) ES2875581T3 (zh)
MX (1) MX2019004202A (zh)
MY (1) MY193900A (zh)
PH (1) PH12019500556A1 (zh)
PL (1) PL3549303T3 (zh)
RU (1) RU2719423C1 (zh)
SG (1) SG11201902778UA (zh)
TW (1) TWI706275B (zh)
WO (1) WO2019072276A2 (zh)
ZA (1) ZA201902470B (zh)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB201805633D0 (en) * 2018-04-05 2018-05-23 Nchain Holdings Ltd Computer implemented method and system
CN109377215B (zh) 2018-08-06 2020-04-21 阿里巴巴集团控股有限公司 区块链交易方法及装置、电子设备
ES2881674T3 (es) 2018-11-27 2021-11-30 Advanced New Technologies Co Ltd Sistema y método para la protección de información
ES2859569T3 (es) 2018-11-27 2021-10-04 Advanced New Technologies Co Ltd Sistema y método para la protección de información
CN110730963B (zh) 2018-11-27 2023-12-01 创新先进技术有限公司 用于信息保护的系统和方法
US10700850B2 (en) 2018-11-27 2020-06-30 Alibaba Group Holding Limited System and method for information protection
WO2019072276A2 (en) 2018-11-27 2019-04-18 Alibaba Group Holding Limited INFORMATION PROTECTION SYSTEM AND METHOD
PL3523919T3 (pl) 2018-11-27 2021-05-04 Alibaba Group Holding Limited System i sposób ochrony informacji
US10764029B1 (en) * 2019-04-02 2020-09-01 Carey Patrick Atkins Asymmetric Encryption Algorithm
EP3639232B1 (en) * 2019-04-26 2021-07-07 Advanced New Technologies Co., Ltd. Anti-replay attack authentication protocol
GB2587773A (en) * 2019-05-24 2021-04-14 Nchain Holdings Ltd Streaming portions of data over a side channel
CN110399735A (zh) * 2019-06-21 2019-11-01 深圳壹账通智能科技有限公司 加密数据大小关系证明方法、装置、设备及存储介质
CN112150281B (zh) * 2019-06-28 2023-09-26 北京国盾量子信息技术有限公司 一种数字货币的交易方法、装置及系统
CN111030821B (zh) * 2019-08-27 2022-07-12 杭州云象网络技术有限公司 一种基于双线性映射技术的联盟链的加密方法
CN113570460A (zh) * 2019-08-30 2021-10-29 创新先进技术有限公司 在区块链中并发执行交易的方法和装置
CN110545279A (zh) * 2019-09-05 2019-12-06 国网区块链科技(北京)有限公司 兼具隐私和监管功能的区块链交易方法、装置及系统
CN112465500A (zh) 2019-09-09 2021-03-09 本田技研工业株式会社 用于在区块链内保护私钥交易的系统和方法
CN110781503B (zh) * 2019-09-18 2022-05-17 深圳壹账通智能科技有限公司 数据调用方法、装置及计算机可读存储介质
JP7372527B2 (ja) * 2019-09-26 2023-11-01 富士通株式会社 通信中継プログラム、中継装置、及び通信中継方法
CN112769548B (zh) * 2019-11-05 2022-09-20 深圳市迅雷网络技术有限公司 一种区块链数值信息传输方法、系统、装置及计算机介质
CN110580418B (zh) * 2019-11-08 2020-04-07 支付宝(杭州)信息技术有限公司 基于区块链账户的隐私数据查询方法及装置
CN110933045A (zh) * 2019-11-08 2020-03-27 中国电子科技网络信息安全有限公司 一种基于承诺的区块链数字资产隐私保护方法
CN113055178B (zh) * 2019-12-27 2022-08-16 深圳市迅雷网络技术有限公司 区块链系统及数值信息传输方法、系统、装置、介质
CN111340489B (zh) * 2020-02-21 2023-11-14 数据通信科学技术研究所 可监管的交易接收者保护方法和装置
CN111523894A (zh) * 2020-05-06 2020-08-11 杭州复杂美科技有限公司 数据延时公布方法、设备和存储介质
CN111600703B (zh) * 2020-05-12 2023-08-04 京东科技信息技术有限公司 基于sm2的签名方法、系统、电子设备及存储介质
CN111709738B (zh) * 2020-05-18 2023-08-01 杜晓楠 区块链系统中隐藏交易金额的方法、计算机可读存储介质和区块链系统
WO2020169124A2 (en) 2020-06-08 2020-08-27 Alipay Labs (singapore) Pte. Ltd. Distributed storage of custom clearance data
SG11202102366SA (en) 2020-06-08 2021-04-29 Alipay Labs Singapore Pte Ltd User management of blockchain-based custom clearance service platform
CN111868725A (zh) 2020-06-08 2020-10-30 支付宝实验室(新加坡)有限公司 基于区块链处理进口海关清关数据
EP3844655B1 (en) * 2020-06-08 2023-05-03 Alipay Labs (Singapore) Pte. Ltd. Managing user authorizations for blockchain-based custom clearance services
CN111989663A (zh) 2020-06-08 2020-11-24 支付宝实验室(新加坡)有限公司 基于区块链的智能合约池
SG11202102583UA (en) * 2020-06-08 2021-04-29 Alipay Labs Singapore Pte Ltd Blockchain-based document registration for custom clearance
CN113014384B (zh) * 2021-03-16 2022-07-15 平安付科技服务有限公司 基于dh密钥交换算法的数据比较方法、装置、计算机设备及存储介质
US11849032B2 (en) * 2021-05-14 2023-12-19 Verizon Patent And Licensing Inc. Systems and methods for blockchain-based secure key exchange
CN113706150B (zh) * 2021-10-27 2022-02-08 深圳前海微众银行股份有限公司 一种区块确认方法及装置
CN114565382A (zh) * 2022-03-01 2022-05-31 汪泽希 一种交易账户匿名支付方法及系统
JP2024022912A (ja) 2022-08-08 2024-02-21 富士通株式会社 情報秘匿化プログラム、情報秘匿化方法及び情報管理装置
CN115809482B (zh) * 2023-02-01 2023-05-16 上海金仕达软件科技股份有限公司 基于随机数混淆的数据聚合计算方法、装置、介质及设备
CN116389164B (zh) * 2023-05-26 2023-09-12 建信金融科技有限责任公司 数据的检测方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0773647A2 (en) * 1988-05-24 1997-05-14 Security Technology Corporation Method and apparatus for cryptographic communications using blind signatures
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
US20170004497A1 (en) * 2013-06-06 2017-01-05 Mastercard International Incorporated Electronic Authentication Systems
TW201733303A (zh) * 2016-02-23 2017-09-16 恩鏈控股有限公司 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰
US20180026784A1 (en) * 2016-07-20 2018-01-25 Mastercard International Incorporated Secure channel establishment
CN108764874A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 基于区块链的匿名转账方法、系统及存储介质

Family Cites Families (130)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7107246B2 (en) * 1998-04-27 2006-09-12 Esignx Corporation Methods of exchanging secure messages
JP2000207466A (ja) 1999-01-18 2000-07-28 Nippon Telegr & Teleph Corp <Ntt> 電子商取引文書を媒介とした電子商取引方法および電子商取引手段、ならびにプログラムを記録した記録媒体。
JP2000299683A (ja) 1999-02-10 2000-10-24 Nippon Telegr & Teleph Corp <Ntt> 複数公開鍵保存方法、その装置およびそのプログラム記録媒体
WO2001069843A2 (en) 2000-03-10 2001-09-20 Absolutefuture, Inc. Method and system for coordinating secure transmission of information
US7716484B1 (en) 2000-03-10 2010-05-11 Rsa Security Inc. System and method for increasing the security of encrypted secrets and authentication
AU2001255183A1 (en) 2000-04-14 2001-10-30 Wu Wen Delayed commitment scheme to prevent attacks based on compromised certificates
EP1205889A1 (en) * 2000-11-10 2002-05-15 TELEFONAKTIEBOLAGET LM ERICSSON (publ) Returning of change in an electronic payment system
US7181017B1 (en) 2001-03-23 2007-02-20 David Felsher System and method for secure three-party communications
US7509498B2 (en) 2001-06-29 2009-03-24 Intel Corporation Digital signature validation
GB2378282A (en) 2001-07-31 2003-02-05 Hewlett Packard Co Automated multivariate negotiation using convertable undeniable signatures
WO2003036901A2 (en) 2001-10-19 2003-05-01 Matsushita Electric Industrial Co., Ltd. Device authentication system and device authentication method
DE602004016678D1 (de) 2003-11-03 2008-10-30 Koninkl Philips Electronics Nv Verfahren und einrichtung zur effizienten mehrteilnehmer-vervielfachung
US8156029B2 (en) * 2005-02-24 2012-04-10 Michael Gregory Szydlo Process for verifiably communicating risk characteristics of an investment portfolio
ES2380026T3 (es) 2005-05-10 2012-05-07 Dts Ltd. Procedimiento de transación y procedimiento de verificación
JP4435076B2 (ja) 2005-11-18 2010-03-17 フェリカネットワークス株式会社 携帯端末,データ通信方法,およびコンピュータプログラム
US7725446B2 (en) 2005-12-19 2010-05-25 International Business Machines Corporation Commitment of transactions in a distributed system
JP4016061B2 (ja) * 2006-01-25 2007-12-05 松下電器産業株式会社 端末装置、サーバ装置及びデジタルコンテンツ配信システム
TW200820108A (en) 2006-05-24 2008-05-01 Ibm Method for automatically validating a transaction, electronic payment system and computer program
US20090177591A1 (en) 2007-10-30 2009-07-09 Christopher Thorpe Zero-knowledge proofs in large trades
US20090281949A1 (en) 2008-05-12 2009-11-12 Appsware Wireless, Llc Method and system for securing a payment transaction
US8543091B2 (en) 2008-06-06 2013-09-24 Ebay Inc. Secure short message service (SMS) communications
US8281131B2 (en) 2008-08-28 2012-10-02 International Business Machines Corporation Attributes in cryptographic credentials
US8744077B2 (en) 2008-10-28 2014-06-03 International Business Machines Corporation Cryptographic encoding and decoding of secret data
JP5264450B2 (ja) 2008-12-02 2013-08-14 日本電信電話株式会社 ビットコミットメント検証システム、ビットコミットメント装置、検証装置、ビットコミットメント検証方法、ビットコミットメント方法、検証方法、ビットコミットメントプログラム、検証プログラム
MX2011006772A (es) 2008-12-23 2011-08-03 Mtn Mobile Money Sa Pty Ltd Metodo y sistema para procesar de manera segura una transaccion.
US8762741B2 (en) 2009-01-29 2014-06-24 Microsoft Corporation Privacy-preserving communication
US8825555B2 (en) 2010-06-30 2014-09-02 International Business Machines Corporation Privacy-sensitive sample analysis
US8527777B2 (en) 2010-07-30 2013-09-03 International Business Machines Corporation Cryptographic proofs in data processing systems
US8661240B2 (en) 2011-04-29 2014-02-25 International Business Machines Corporation Joint encryption of data
US20120317034A1 (en) 2011-06-13 2012-12-13 Microsoft Corporation Transparent virtual currency using verifiable tokens
US9858401B2 (en) 2011-08-09 2018-01-02 Biogy, Inc. Securing transactions against cyberattacks
SG10201608067QA (en) 2011-09-29 2016-11-29 Amazon Tech Inc Parameter based key derivation
JP5364141B2 (ja) 2011-10-28 2013-12-11 楽天株式会社 携帯端末、店舗端末、送信方法、受信方法、決済システム、決済方法、プログラムおよびコンピュータ読み取り可能な記憶媒体
EP2634738A1 (en) 2012-03-02 2013-09-04 Alcatel Lucent Decentralized electronic transfer system
FR2993382B1 (fr) 2012-07-13 2015-07-03 Oberthur Technologies Entite electronique securisee pour l'autorisation d'une transaction
US9853819B2 (en) 2013-08-05 2017-12-26 Guardtime Ip Holdings Ltd. Blockchain-supported, node ID-augmented digital record signature method
US11055707B2 (en) 2014-06-24 2021-07-06 Visa International Service Association Cryptocurrency infrastructure system
KR20160024185A (ko) 2014-08-25 2016-03-04 아이보 (주) SE(Secure element)를 이용한 암호화폐 관리 시스템 및 그 방법
GB201419016D0 (en) 2014-10-24 2014-12-10 Visa Europe Ltd Transaction Messaging
CN107615317A (zh) 2015-03-31 2018-01-19 纳斯达克公司 区块链交易记录的系统和方法
US20160300234A1 (en) 2015-04-06 2016-10-13 Bitmark, Inc. System and method for decentralized title recordation and authentication
US9397985B1 (en) 2015-04-14 2016-07-19 Manifold Technology, Inc. System and method for providing a cryptographic platform for exchanging information
US10026082B2 (en) 2015-05-21 2018-07-17 Mastercard International Incorporated Method and system for linkage of blockchain-based assets to fiat currency accounts
US9870562B2 (en) 2015-05-21 2018-01-16 Mastercard International Incorporated Method and system for integration of market exchange and issuer processing for blockchain-based transactions
US11080665B1 (en) * 2015-06-08 2021-08-03 Blockstream Corporation Cryptographically concealing amounts and asset types for independently verifiable transactions
US10708072B2 (en) 2015-06-30 2020-07-07 Visa International Service Association Mutual authentication of confidential communication
US20170085555A1 (en) 2015-07-14 2017-03-23 Fmr Llc Point-to-Point Transaction Guidance Apparatuses, Methods and Systems
US20180191503A1 (en) 2015-07-14 2018-07-05 Fmr Llc Asynchronous Crypto Asset Transfer and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
WO2017079652A1 (en) 2015-11-05 2017-05-11 Pulsifer Allen Cryptographic transactions system
US20180253702A1 (en) 2015-11-24 2018-09-06 Gartland & Mellina Group Blockchain solutions for financial services and other transactions-based industries
JP2018536957A (ja) 2015-11-30 2018-12-13 シェイプシフト・アーゲーShapeShift AG ブロックチェーン資産取引におけるセキュリティを向上させるためのシステム及び方法
US10013573B2 (en) 2015-12-16 2018-07-03 International Business Machines Corporation Personal ledger blockchain
US11354658B2 (en) 2016-02-11 2022-06-07 Mastercard International Incorporated Method and system for offline blockchain exchanges
US20170243193A1 (en) 2016-02-18 2017-08-24 Skuchain, Inc. Hybrid blockchain
KR20180115768A (ko) 2016-02-23 2018-10-23 엔체인 홀딩스 리미티드 블록체인으로부터 데이터의 안전한 추출을 위한 암호화 방법 및 시스템
CN114282928A (zh) 2016-02-23 2022-04-05 恩链控股有限公司 基于区块链系统结合钱包管理系统的加密密钥存储和转移
CA3015697C (en) 2016-02-29 2022-11-22 Securekey Technologies Inc. Systems and methods for distributed identity verification
KR102608099B1 (ko) 2016-04-11 2023-12-01 엔체인 홀딩스 리미티드 블록체인에서 안전한 피어-투-피어 통신을 위한 방법
CN107306183B (zh) 2016-04-22 2021-12-21 索尼公司 客户端、服务端、方法和身份验证系统
KR101780635B1 (ko) 2016-04-28 2017-09-21 주식회사 코인플러그 인증 정보의 생성, 등록, 파기 방법 및 인증 지원 서버
US10046228B2 (en) 2016-05-02 2018-08-14 Bao Tran Smart device
US10447478B2 (en) 2016-06-06 2019-10-15 Microsoft Technology Licensing, Llc Cryptographic applications for a blockchain system
KR101802655B1 (ko) 2016-06-10 2017-11-29 인하대학교 산학협력단 원격 서버를 이용한 안전한 소프트웨어 기반 일회용 비밀번호 생성 방법
US11062366B2 (en) 2016-06-24 2021-07-13 Raise Marketplace Inc. Securely processing exchange items in a data communication system
US20180006823A1 (en) 2016-07-01 2018-01-04 Qualcomm Incorporated Multi-hop secure content routing based on cryptographic partial blind signatures and embedded terms
KR101795695B1 (ko) 2016-07-14 2017-12-01 주식회사 코인플러그 메신저 서비스를 통하여 송수신하는 데이터에 대한 기록 서비스 및 검증 서비스를 제공하는 방법, 및 이를 이용한 서버
SG11201809112VA (en) 2016-07-15 2018-11-29 Visa Int Service Ass Digital asset distribution by transaction device
EP3491572B1 (en) 2016-07-26 2021-09-01 NEC Corporation Method for controlling access to a shared resource
US10067810B2 (en) 2016-07-28 2018-09-04 Cisco Technology, Inc. Performing transactions between application containers
GB201613176D0 (en) 2016-07-29 2016-09-14 Eitc Holdings Ltd Computer-implemented method and system
JP6971019B2 (ja) 2016-09-26 2021-11-24 Gmoインターネット株式会社 データ管理システム、情報処理装置、プログラム、及び、データ管理方法
US10769600B2 (en) 2016-09-26 2020-09-08 International Business Machines Corporation Cryptocurrency transactions using debit and credit values
CN106549749B (zh) 2016-12-06 2019-12-24 杭州趣链科技有限公司 一种基于加法同态加密的区块链隐私保护方法
US20180167198A1 (en) 2016-12-09 2018-06-14 Cisco Technology, Inc. Trust enabled decentralized asset tracking for supply chain and automated inventory management
CN110024422B (zh) 2016-12-30 2023-07-18 英特尔公司 物联网的命名和区块链记录
CN106911470B (zh) * 2017-01-23 2020-07-07 北京航空航天大学 一种比特币交易隐私增强方法
CN106845960B (zh) 2017-01-24 2018-03-20 上海壹账通区块链科技有限公司 基于区块链的安全交易方法及系统
US11082418B2 (en) 2017-02-13 2021-08-03 Avalanche Cloud Corporation Privacy ensured brokered identity federation
CN107025602A (zh) 2017-02-24 2017-08-08 杭州象链网络技术有限公司 一种基于联盟链的金融资产交易系统构建方法
JP6961960B2 (ja) 2017-03-13 2021-11-05 ソニーグループ株式会社 情報処理装置および情報処理方法
JP6719410B2 (ja) 2017-03-17 2020-07-08 Kddi株式会社 生成装置、検証装置、及びプログラム
US20180293576A1 (en) 2017-04-05 2018-10-11 Samsung Sds Co., Ltd. System for custom currency transaction based on blockchain and operating method thereof
US11095432B2 (en) 2017-04-05 2021-08-17 Samsung Sds Co., Ltd. System for processing data based on blockchain and operating method thereof
GB201705621D0 (en) 2017-04-07 2017-05-24 Nchain Holdings Ltd Computer-implemented system and method
GB201705749D0 (en) 2017-04-10 2017-05-24 Nchain Holdings Ltd Computer-implemented system and method
GB201705858D0 (en) 2017-04-11 2017-05-24 Nchain Holdings Ltd Computer-implemented system and method
GB201706132D0 (en) 2017-04-18 2017-05-31 Nchain Holdings Ltd Computer-implemented system and method
US10320758B2 (en) 2017-04-25 2019-06-11 International Business Machines Corporation Cryptography using multi-factor key system and finite state machine
US10198949B2 (en) 2017-04-28 2019-02-05 Mastercard International Incorporated Method and system for parking verification via blockchain
US10560270B2 (en) 2017-05-03 2020-02-11 International Business Machines Corporation Optimal data storage configuration in a blockchain
GB201707168D0 (en) 2017-05-05 2017-06-21 Nchain Holdings Ltd Computer-implemented system and method
GB201707296D0 (en) 2017-05-08 2017-06-21 Nchain Holdings Ltd Computer-implemented system and method
US11165589B2 (en) 2017-05-11 2021-11-02 Shapeshift Ag Trusted agent blockchain oracle
CN107451175B (zh) 2017-05-23 2020-01-31 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107239951A (zh) 2017-06-07 2017-10-10 北京天德科技有限公司 一种基于第三代区块链的可扩展央行数字货币交易方法
CN117640099A (zh) 2017-06-14 2024-03-01 区块链控股有限公司 用于避免或减少区块链网络上的加密滞留资源的系统和方法
GB201710283D0 (en) 2017-06-28 2017-08-09 Nchain Holdings Ltd Computer-implemented system and method
US10333710B2 (en) 2017-09-12 2019-06-25 Qed-It Systems Ltd. Method and system for determining desired size of private randomness using Tsallis entropy
TWI636411B (zh) 2017-09-13 2018-09-21 現代財富控股有限公司 對非區塊鏈節點提供交易不可否認性之系統及其方法
US10361870B2 (en) 2017-09-14 2019-07-23 The Toronto-Dominion Bank Management of cryptographically secure exchanges of data using permissioned distributed ledgers
SG11202002525RA (en) 2017-09-29 2020-04-29 Leverage Rock Llc Transaction privacy in public distributed ledger systems
CN107679857B (zh) 2017-10-10 2021-04-27 马晶瑶 区块链的跨链交易方法和存储介质
CN108062671A (zh) 2017-11-03 2018-05-22 深圳市轱辘车联数据技术有限公司 数据交易方法、区块链节点服务器及数据提交终端
EP3718069B1 (en) 2017-11-30 2024-04-17 Visa International Service Association Blockchain system for confidential and anonymous smart contracts
CN108418689B (zh) 2017-11-30 2020-07-10 矩阵元技术(深圳)有限公司 一种适合区块链隐私保护的零知识证明方法和介质
US10831764B2 (en) 2017-12-02 2020-11-10 International Business Machines Corporation Query processing and access control in a blockchain network
US11227284B2 (en) 2017-12-13 2022-01-18 Mastercard International Incorporated Method and system for consumer-initiated transactions using encrypted tokens
CN108282459B (zh) 2017-12-18 2020-12-15 中国银联股份有限公司 基于智能合约的数据传递方法及系统
US11544708B2 (en) 2017-12-29 2023-01-03 Ebay Inc. User controlled storage and sharing of personal user information on a blockchain
TWM561861U (zh) 2018-01-11 2018-06-11 網家金融科技股份有限公司 網路支付轉帳系統
US10388097B1 (en) 2018-01-29 2019-08-20 Accenture Global Solutions Limited Blockchain-based cryptologic ballot verification
US10373129B1 (en) 2018-03-05 2019-08-06 Winklevoss Ip, Llc System, method and program product for generating and utilizing stable value digital assets
WO2019158209A1 (en) 2018-02-16 2019-08-22 Ecole polytechnique fédérale de Lausanne (EPFL) Methods and systems for secure data exchange
CN108512650B (zh) 2018-02-28 2021-03-09 南京思利华信息科技有限公司 面向区块链的动态哈希计算方法、装置、节点及存储介质
CN108288159A (zh) 2018-03-07 2018-07-17 物数(上海)信息科技有限公司 基于多区块链的跨链交易方法、系统、设备及存储介质
CN108320228A (zh) 2018-03-07 2018-07-24 物数(上海)信息科技有限公司 跨区块链资产交易方法、平台、设备及存储介质
US11159306B2 (en) 2018-04-24 2021-10-26 Duvon Corporation Autonomous exchange via entrusted ledger token and transaction management
US10708243B2 (en) 2018-04-24 2020-07-07 Capital One Services, Llc Message encryption using public keychains
CN108711105A (zh) 2018-05-16 2018-10-26 四川吉鼎科技有限公司 一种基于区块链的安全交易验证方法及系统
CN108683669B (zh) 2018-05-19 2021-09-17 深圳市图灵奇点智能科技有限公司 数据验证方法和安全多方计算系统
CN108876332B (zh) 2018-06-04 2020-09-22 清华大学 一种基于生物特征标记认证的区块链安全交易方法及装置
CN109003184A (zh) 2018-06-22 2018-12-14 中链科技有限公司 区块链资产管理方法及装置
US11032068B2 (en) * 2018-06-29 2021-06-08 International Business Machines Corporation Leakage-deterring encryption for message communication
US10917233B2 (en) 2018-10-16 2021-02-09 International Business Machines Corporation Selective exchange of transaction data
JP6956062B2 (ja) 2018-10-30 2021-10-27 株式会社Crypto Garage 取引方法、プログラム、検証装置及び生成方法
US11240001B2 (en) 2018-11-06 2022-02-01 International Business Machines Corporation Selective access to asset transfer data
AU2018348318B2 (en) 2018-11-07 2020-05-21 Advanced New Technologies Co., Ltd. Blockchain system supporting public and private transactions under account models
PL3523919T3 (pl) 2018-11-27 2021-05-04 Alibaba Group Holding Limited System i sposób ochrony informacji
ES2859569T3 (es) 2018-11-27 2021-10-04 Advanced New Technologies Co Ltd Sistema y método para la protección de información
WO2019072276A2 (en) 2018-11-27 2019-04-18 Alibaba Group Holding Limited INFORMATION PROTECTION SYSTEM AND METHOD

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0773647A2 (en) * 1988-05-24 1997-05-14 Security Technology Corporation Method and apparatus for cryptographic communications using blind signatures
US20170004497A1 (en) * 2013-06-06 2017-01-05 Mastercard International Incorporated Electronic Authentication Systems
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
TW201733303A (zh) * 2016-02-23 2017-09-16 恩鏈控股有限公司 決定用於資訊的安全交換的共同私密,及階層化的決定性加密金鑰
US20180026784A1 (en) * 2016-07-20 2018-01-25 Mastercard International Incorporated Secure channel establishment
CN108764874A (zh) * 2018-05-17 2018-11-06 深圳前海微众银行股份有限公司 基于区块链的匿名转账方法、系统及存储介质

Also Published As

Publication number Publication date
EP3866382B1 (en) 2023-06-21
MY193900A (en) 2022-10-31
JP2019537744A (ja) 2019-12-26
SG11201902778UA (en) 2019-05-30
CA3040601A1 (en) 2019-04-18
US11277389B2 (en) 2022-03-15
TW202020710A (zh) 2020-06-01
PL3549303T3 (pl) 2021-11-22
EP3549303B1 (en) 2021-05-26
KR102170346B1 (ko) 2020-10-28
AU2018327218B2 (en) 2020-07-16
AU2018327218A1 (en) 2020-01-30
ES2875581T3 (es) 2021-11-10
KR20200066257A (ko) 2020-06-09
CN109937557B (zh) 2022-02-22
PH12019500556A1 (en) 2019-12-16
US11102184B2 (en) 2021-08-24
MX2019004202A (es) 2019-08-05
ZA201902470B (en) 2021-06-30
EP3549303A2 (en) 2019-10-09
CN109937557A (zh) 2019-06-25
US20200120074A1 (en) 2020-04-16
EP3866382A1 (en) 2021-08-18
US20190268312A1 (en) 2019-08-29
JP6724249B2 (ja) 2020-07-15
CA3040601C (en) 2021-03-30
WO2019072276A2 (en) 2019-04-18
BR112019007727A2 (pt) 2019-11-12
WO2019072276A3 (en) 2019-09-19
RU2719423C1 (ru) 2020-04-17
EP3549303A4 (en) 2020-02-26

Similar Documents

Publication Publication Date Title
TWI706275B (zh) 用於資訊保護的系統和方法
TWI716034B (zh) 用於資訊保護的系統和方法
US11080694B2 (en) System and method for information protection
JP6714156B2 (ja) 情報保護のためのシステム及び方法
AU2019101582A4 (en) System and method for information protection
AU2019101590A4 (en) System and method for information protection