CN109961288A - 基于盲签名的交易方法及装置 - Google Patents
基于盲签名的交易方法及装置 Download PDFInfo
- Publication number
- CN109961288A CN109961288A CN201910223566.3A CN201910223566A CN109961288A CN 109961288 A CN109961288 A CN 109961288A CN 201910223566 A CN201910223566 A CN 201910223566A CN 109961288 A CN109961288 A CN 109961288A
- Authority
- CN
- China
- Prior art keywords
- signature
- result
- currency
- client terminal
- node
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
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
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or 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/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- 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
-
- 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
- G06Q20/0655—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash e-cash managed centrally
-
- 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/389—Keeping log of transactions for guaranteeing non-repudiation of a 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- 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/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- 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/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
-
- 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
- H04L9/3257—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 using blind 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/56—Financial cryptography, e.g. electronic payment or e-cash
Abstract
本发明实施例提供一种基于盲签名的交易方法及装置。该方法包括:支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果。支付客户端向货币提供节点发送第一签名请求。货币提供节点接收支付客户端发送的第一签名请求,对盲化结果进行签名,得到第一签名结果。货币提供节点将第一签名结果发送给支付客户端。支付客户端接收货币提供节点发送的第一签名结果。支付客户端对第一签名结果去盲化,得到第二签名结果,将第二签名结果和签名数据发送给收款客户端。收款客户端将第二签名结果和签名数据发送给货币提供节点。货币提供节点在签名数据和第二签名结果验证通过后完成交易,从而提高了交易的安全性。
Description
技术领域
本发明实施例涉及计算机技术,尤其涉及一种基于盲签名的交易方法及装置。
背景技术
区块链是一种去中介化的数据库,在基于区块链进行交易的过程中,其中区块链为交易双方提供了公开可见、抗篡改、去中心化的系统。
现有技术在基于区块链进行交易时,交易双方将包含有交易双方地址信息的交易相关信息上传至区块链,区块链中的节点根据交易相关信息对交易进行验证,在验证通过后控制交易完成。
然而,窃听者根据地址信息能够获取到交易双方的私密信息,从而导致交易过程存在安全问题。
发明内容
本发明实施例提供一种基于盲签名的交易方法及装置,以克服在区块链交易过程中交易双方存在的安全问题。
第一方面,本发明实施例提供一种基于盲签名的交易方法,包括:
货币提供节点接收支付客户端发送的第一签名请求,所述第一签名请求携带盲化结果,所述盲化结果是所述支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果;
所述货币提供节点对所述盲化结果进行签名,得到第一签名结果,并将所述第一签名结果发送给所述支付客户端;
所述货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在所述签名数据和所述第二签名结果验证通过后完成交易,其中,所述签名数据和所述第二签名结果为所述支付客户端发送给所述收款客户端的,所述第二签名结果为对所述第一签名结果进行去盲化得到的结果。
在一种可能的设计中,所述货币提供节点接收支付客户端发送的第一签名请求之前,还包括:
所述货币提供节点接收所述支付客户端发送的第二签名请求,所述第二签名请求携带所述交易服务参数;
所述货币提供节点对所述交易服务参数进行签名,得到第三签名结果;
所述货币提供节点向所述支付客户端发送所述第三签名结果;
对应的,所述盲化结果是所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理得到的结果。
在一种可能的设计中,所述货币提供节点在所述签名数据和所述第二签名结果验证通过后完成交易之前,还包括:
所述货币提供节点确定从所述收款客户端接收到的签名数据不在签名数据列表中;
所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果。
在一种可能的设计中,所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果,包括:
所述货币提供节点将所述第二签名结果和所述签名数据作为所述预设模型的输入;
所述货币提供节点判断所述预设模型是否满足等式关系,若是,则确定验证通过。
在一种可能的设计中,所述货币提供节点接收支付客户端发送的第一签名请求之前,还包括:
所述货币提供节点接收所述支付客户端发送的数字资产;
所述货币提供节点在所述签名数据和所述第二签名结果验证通过后完成交易,包括:
所述货币提供节点将所述数字资产支付给所述收款客户端。
第二方面,本发明实施例提供一种基于盲签名的交易方法,包括:
支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果;
所述支付客户端向货币提供节点发送第一签名请求,所述第一签名请求携带盲化结果;
所述支付客户端接收所述货币提供节点发送的第一签名结果,其中第一签名结果为所述货币提供节点对所述盲化结果进行签名得到的结果;
所述支付客户端对所述第一签名结果去盲化,得到第二签名结果,并将所述第二签名结果和所述签名数据发送给收款客户端。
在一种可能的设计中,在所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果之前,还包括:
所述支付客户端向所述货币提供节点发送第二签名请求,所述第二签名请求携带所述交易服务参数;
所述支付客户端接收所述货币提供节点发送的第三签名结果,所述第三签名结果为所述货币提供节点对所述交易服务参数进行签名得到的结果;
所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果,包括:
所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理,得到盲化结果。
在一种可能的设计中,所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果之前,还包括:
所述支付客户端向所述货币提供节点发送数字资产。
第三方面,本发明实施例提供一种基于盲签名的交易装置,包括:
接收模块,用于货币提供节点接收支付客户端发送的第一签名请求,所述第一签名请求携带盲化结果,所述盲化结果是所述支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果;
签名模块,用于所述货币提供节点对所述盲化结果进行签名,得到第一签名结果,并将所述第一签名结果发送给所述支付客户端;
交易模块,用于所述货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在所述签名数据和所述第二签名结果验证通过后完成交易,其中,所述签名数据和所述第二签名结果为所述支付客户端发送给所述收款客户端的,所述第二签名结果为对所述第一签名结果进行去盲化得到的结果。
在一种可能的设计中,所述接收模块,还用于:
所述货币提供节点接收所述支付客户端发送的第二签名请求,所述第二签名请求携带所述交易服务参数;
所述货币提供节点对所述交易服务参数进行签名,得到第三签名结果;
所述货币提供节点向所述支付客户端发送所述第三签名结果;
对应的,所述盲化结果是所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理得到的结果。
在一种可能的设计中,所述接收模块,还用于:
所述货币提供节点确定从所述收款客户端接收到的签名数据不在签名数据列表中;
所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果。
在一种可能的设计中,所述交易模块具体用于:
所述货币提供节点将所述第二签名结果和所述签名数据作为所述预设模型的输入;
所述货币提供节点判断所述预设模型是否满足等式关系,若是,则确定验证通过。
在一种可能的设计中,所述接收模块,还用于:
所述货币提供节点接收所述支付客户端发送的数字资产;
所述交易模块,还用于:
所述货币提供节点将所述数字资产支付给所述收款客户端。
第四方面,本发明实施例提供一种基于盲签名的交易装置,包括:
盲化模块,用于支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果;
发送模块,用于所述支付客户端向货币提供节点发送第一签名请求,所述第一签名请求携带盲化结果;
接收模块,用于所述支付客户端接收所述货币提供节点发送的第一签名结果,其中第一签名结果为所述货币提供节点对所述盲化结果进行签名得到的结果;
去盲化模块,用于所述支付客户端对所述第一签名结果去盲化,得到第二签名结果,并将所述第二签名结果和所述签名数据发送给收款客户端。
在一种可能的设计中,所述发送模块,还用于:
所述支付客户端向所述货币提供节点发送第二签名请求,所述第二签名请求携带所述交易服务参数;
所述支付客户端接收所述货币提供节点发送的第三签名结果,所述第三签名结果为所述货币提供节点对所述交易服务参数进行签名得到的结果;
所述盲化模块,具体用于:
所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理,得到盲化结果。
在一种可能的设计中,所述发送模块具体用于:
所述支付客户端向所述货币提供节点发送数字资产。
第五方面,本发明实施例提供一种基于盲签名的交易设备,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
第六方面,本发明实施例提供一种基于盲签名的交易设备,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如上第二方面以及第二方面各种可能的设计中任一所述的方法。
第七方面,本发明实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
第八方面,本发明实施例提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行如上第一方面以及第一方面各种可能的设计中任一所述的方法。
本发明实施例提供一种基于盲签名的交易方法及装置,该方法包括:支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果。支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果。货币提供节点接收支付客户端发送的第一签名请求,对盲化结果进行签名,得到第一签名结果。货币提供节点将第一签名结果发送给支付客户端。支付客户端接收货币提供节点发送的第一签名结果。支付客户端对第一签名结果去盲化,得到第二签名结果,将第二签名结果和签名数据发送给收款客户端。收款客户端将第二签名结果和签名数据发送给货币提供节点。货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在签名数据和第二签名结果验证通过后完成交易,其中,签名数据和第二签名结果为支付客户端发送给收款客户端的,第二签名结果为对第一签名结果进行去盲化得到的结果。通过支付客户端对签名数据进行盲化处理,货币提供节点对盲化结果进行签名,实现了对签名数据的保护,并且货币提供节点无法将签名与支付客户端对应起来,从而实现了对支付客户端信息的保护,避免了窃听者获取交易双方私密信息而导致的安全问题,从而提高了交易的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的基于盲签名的交易方法的系统示意图一。;
图2为本发明实施例提供的基于盲签名的交易方法的系统示意图二;
图3为本发明实施例提供的基于盲签名的交易方法的信令流程图一;
图4为本发明实施例提供的基于盲签名的交易方法的信令流程图二;
图5为本发明实施例提供的基于盲签名的交易装置的结构示意图一;
图6为本发明实施例提供的基于盲签名的交易装置的结构示意图二
图7为本发明实施例提供的基于盲签名的交易设备的硬件结构示意图一;
图8为本发明实施例提供的基于盲签名的交易设备的硬件结构示意图二。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先对本发明所涉及的区块链的概念进行解释。
盲签名是一种对消息进行签名的方式,其允许消息发送者先对原始消息进行盲化处理,而后让签名者对盲化处理后的消息进行签名,最后消息发送者根据去盲化因子进行去盲化处理,得到签名者关于原始消息的签名,其中去盲化因子是针对盲化处理所设计的因子,能够实现对盲化处理的效果的消除,盲签名就是消息发送者在不让签名者获取所签名的消息的具体内容的情况下所采取的一种特殊的数字签名技术,下面结合图1对盲签名进行详细介绍。
图1为本发明实施例提供的基于盲签名的交易方法的系统示意图一。如图1所示,包括消息发送者101以及签名者102,其中消息发送者101对原始消息进行盲化处理,具体的,盲化处理是指根据盲化因子对原始消息进行处理,盲化因子例如可以为消息发送者101特有的密码,还例如可以为消息发送者101特定的一系列计算参数等,本发明实施例对盲化处理不做特别限制,凡是对原始消息进行处理从而保证其他人无法获取原始内容的处理均属于本实施例的保护范围,本领域技术人员可以理解,其中盲化处理的具体过程可以根据需要进行设定。
进一步地,消息发送者101将盲化处理的消息发送给签名者102,其中签名者102对接收到的盲化处理的消息进行签名,具体的,签名是指签名者才能产生的并且无法伪造的一段数字串,这段数字串对签名者对消息进行签名的真实性的一个有效证明,本发明实施例对签名的具体方式不做特别限制,其中签名者102在签名的过程中,因为所签名的内容是盲化处理的消息,因此无法获取其所签名的具体内容,从而保证了签名过程的保密性。
具体的,签名者102签名完成后得到对盲化处理的消息的签名,进一步将该签名发送给消息发送者101,其中消息发送者101还设置有去盲化因子,去盲化因子与盲化因子是相对应的,例如去盲化因子可以为消息发送者101特有密码的解密值,还例如去盲化因子可以为消息发送者特定的一系列计算参数的反过程参数等,本发明实施例对去盲化处理不做也别限制,凡是对盲化处理的效果进行消除的处理均属于本发明实施例的保护范围。
在本实施例中,对盲化处理的消息的签名进行去盲化处理之后得到对原始消息的签名,其中对原始消息的签名内容是由签名者102所执行的,但是在签名过程中签名者102无法获取原始消息的而具体内容,并且因为签名者102所签名的内容是盲化处理的消息,因此签名者102无法将其签名的内容与消息发送者101对应起来,因此盲签名保证了对原始消息内容的保护,同时实现了对消息发送者101身份的保护。
关于盲签名,此处给出一个举例性的直观说明:盲签名就是需要签名的人先将待签名的文件以及一张复写纸放进密封的信封里(盲化处理),当文件在信封中时,除密封的人之外任何人都无法打开该信封,签名者在信封上进行签名,签名的内容透过复写纸签到文件上,需要签名的人打开信封(去盲化处理),将签名的文件拿出来,即为盲签名的过程。
盲签名应该具有以下的性质:
不可伪造性。除了签名者之外,任何第三方无法以签名者的名义生成有效的盲签名。
不可抵赖性。签名者一旦对某个消息进行签名,无法否认自己对消息的签名。
盲性。签名者虽然对某个消息进行了签名,但签名者无法获取消息的具体内容。
不可跟踪性。原始消息的签名公开后,签名者不能确定自己何时对这条消息进行了签名。
本发明实施例基于盲签名提出了一种交易方法,下面结合具体的实施例对本发明实施例提供的基于盲签名的交易方法进行详细介绍。首先结合图2进行介绍。
图2为本发明实施例提供的基于盲签名的交易方法的系统示意图二。如图2所示,包括:支付客户端201、收款客户端202以及货币提供节点203。
具体的,在一次交易进行时存在交易双方,分别为支付方以及收款方,其中,支付客户端201为交易中支付方所使用的客户端,收款客户端202为交易中收款方所使用的客户端,支付客户端201以及收款客户端202例如可以为区块链中的节点,本发明实施例对支付客户端201以及收款客户端202的具体实现方式不做限制。
其中,区块链是一种特殊的分布式数据库,任何数据都可以写入区块链,也可以从区块链中读取数据,其中任何用户都可以使用自己的终端设备加入区块链,成为其中的一个节点,区块链具有去中心化、去信任化以及数据无法篡改的特点。当用户通过支付客户端201或者收款客户端202加入至区块链时,即成为区块链中的节点。
进一步地,在进行交易的过程中,支付客户端201例如可以将待交易的数字资产上传至区块链,还例如可以对交易相关数据进行盲化处理等,本发明实施例对此不做特别限定,其中收款客户端202例如可以用于对交易相关数据进行验证,还例如可以用于对待交易的数字资产进行收款等,本发明实施例对收款客户端202的具体功能不做限制。
在本实施例中,还设置有货币提供节点203,其中货币提供节点203为区块链中的节点,货币提供节点203用作支付客户端201和收款客户端202进行交易的中间节点,例如可以用于对支付客户端201待交易的数字资产进行存储,还例如可以用于对交易相关数据进行签名等,本发明实施例对货币提供节点203的具体实现方式不做特别限制。
具体的,在需要进行交易时,支付客户端201将待交易的数字资产发送至货币提供节点,进一步地支付客户端201将交易相关数据发送至货币提供节点203进行盲签名,支付客户端201将签名结果以及交易相关数据发送至收款客户端,收款客户端以及货币提供节点根据签名结果以及交易相关数据进行验证,从而判断此次交易是否正确有效,在验证通过时货币提供节点203将待交易的数字资产发送至收款客户端202从而完成交易。
基于现有技术在进行交易的过程中,支付客户端201以及收款客户端202的信息私密信息可能暴露而存在安全隐患的问题,本发明实施例提供一种基于盲签名的交易方法,下面结合图3进行进一步地详细介绍。
图3为本发明实施例提供的基于盲签名的交易方法的信令流程图一。如图3所示,该方法包括:
S301、支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果。
其中,交易服务参数用于指示支付客户端和收款客户端进行交易的过程中相关交易数据,例如交易服务参数可以包括交易时间,还例如可以包括交易双方的地址信息等,还例如可以用于对签名过程中的算法进行指定等,本发明实施例对交易服务参数不做特别限制,凡是用于指示交易过程的参数均属于交易服务参数,本领域技术人员可以理解,交易服务参数可以根据需要进行设定。
进一步地,签名数据为需要进行签名的原始数据,其中签名数据例如可以为支付客户端生成的用于标识一次交易的随机数,还例如可以为支付客户端根据预设规则生成的数据,本发明实施例对签名数据不做特别限制。
在本实施例中,支付客户端根据交易服务参数和签名数据进行盲化处理,具体的,盲化处理例如可以为支付客户端根据盲化因子对交易服务参数以及签名数据进行计算,还例如可以为支付客户端根据货币提供节点对交易服务参数处理的结果以及盲化因子对签名数据进行计算,本发明实施例对盲化处理的具体实现方式不做限制。
其中,盲化因子在上述实施例中以及进行了介绍,此处不再赘述,在进行盲化处理的过程中,具体的计算例如可以为根据哈希函数进行计算,还例如可以为根据预设公式进行计算等,预设计算例如可以包括加法、减法、乘法等计算方法的组合等,本发明实施例对盲化处理时计算的具体实现方式不做限制,本领域技术人员可以理解,盲化处理的具体计算方式可以根据需要进行设定。
进一步地,盲化处理后得到盲化结果,其中盲化结果对应有签名数据,除支付客户端之外,区块链中的任何节点均无法获取盲化结果对应的签名数据。
S302、支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果。
具体的,支付客户端将携带有盲化结果的第一签名请求发送至货币提供节点,其中第一签名请求用于向货币提供节点发起对盲化结果进行处理的请求,可选地,第一签名请求还例如可以携带有支付客户端规定的签名算法等,本发明实施例对第一签名请求的具体实现方式不做限制。
S303、货币提供节点接收支付客户端发送的第一签名请求,第一签名请求携带盲化结果,盲化结果是支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果。
S304、货币提供节点对盲化结果进行签名,得到第一签名结果。
进一步地,货币提供节点接收支付客户端发送的第一签名请求,并根据第一签名请求对盲化结果进行签名,其中签名的具体实现方式例如可以为哈希签名,还例如可以为非对称加密签名等,本发明实施例对签名的具体实现方式不做特别限制,本领域技术人员可以理解,签名的具体算法可以根据需要进行选择。
其中,盲化结果是支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果,因此对盲化结果进行签名得到的第一签名结果实际上是针对交易服务参数和签名数据进行的签名,在签名过程中,货币提供节点无法获取具体的签名数据,从而保证的签名数据的安全性。
S305、货币提供节点将第一签名结果发送给支付客户端。
S306、支付客户端接收货币提供节点发送的第一签名结果,其中第一签名结果为货币提供节点对盲化结果进行签名得到的结果。
S307、支付客户端对第一签名结果去盲化,得到第二签名结果。
在本实施例中,支付客户端接收货币提供节点发送的第一签名结果,并对第一签名结果进行去盲化,其中去盲化是针对盲化处理的反过程,能够消除盲化处理的效果,具体的,支付客户端根据去盲因子对第一签名结果进行处理得到第二签名结果,去盲因子在上述实施例中已经进行了介绍,此处不再赘述,本发明实施例对去盲化的具体实现方式不做限制。
具体的,盲化因子与去盲因子相对应,并且只有支付客户端能够获取盲化因子以及去盲因子,因此能够保证签名过程中货币提供节点无法获取签名数据,进一步地,第一签名结果为货币提供节点对盲化结果进行签名得到的结果,支付客户端对第一签名结果进行去盲化之后得到的第二签名结果消除了盲化的作用,因此第二签名结果即为货币提供节点直接根据交易服务参数以及签名数据进行签名得到的结果。
通过进行盲签名,能够有效实现货币提供节点对交易服务参数和签名数据进行签名,并且在签名过程中无法获取签名数据,也无法将第二签名结果与支付客户端对应起来。
S308、支付客户端将第二签名结果和签名数据发送给收款客户端。
S309、收款客户端将第二签名结果和签名数据发送给货币提供节点。
进一步地,支付客户端将第二签名结果以及签名数据发送给收款客户端,收款客户端进一步将第二签名结果以及签名数据发送至货币提供节点,从而验证该签名数据以及第二签名结果是否正确以及真实有效。
可选地,收款客户端还可以根据第二签名结果以及签名数据进行验证,具体的,收款客户端例如可以根据支付客户端的公钥对第二签名数据进行解密,判断解密结果与签名数据是否一致,从而判断当前的交易是否有效,进一步地,再根据货币提供节点的验证结果判断是否要进行当前交易。
S310、货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在签名数据和第二签名结果验证通过后完成交易,其中,签名数据和第二签名结果为支付客户端发送给收款客户端的,第二签名结果为对第一签名结果进行去盲化得到的结果。
在本实施例中,货币提供节点根据收款客户端发送的签名数据和第二签名结果对交易进行验证,其中验证的具体方式例如可以为根据签名的算法对第二签名结果进行反过程计算,判断得到的计算结果与签名数据是否一致,其中验证的方式还例如可以为根据预设模型对签名数据和第二验证结果进行判断,判断其是否符合预设模型,其中预设模型为根据签名得到的模型,本发明实施例对验证的具体实现方式不做特别限定。
具体的,其中第二签名结果为对第一签名结果进行去盲化得到的结果,而第一签名结果为货币提供节点进行签名得到的,因此第二签名结果实质上为货币提供结果对签名数据进行签名得到的,因此货币提供节点能够根据签名数据和第二签名结果实现验证,当验证通过后收款客户端实现收款,交易完成。
本发明实施例提供的基于盲签名的交易方法,包括:支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果。支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果。货币提供节点接收支付客户端发送的第一签名请求,对盲化结果进行签名,得到第一签名结果。货币提供节点将第一签名结果发送给支付客户端。支付客户端接收货币提供节点发送的第一签名结果。支付客户端对第一签名结果去盲化,得到第二签名结果,将第二签名结果和签名数据发送给收款客户端。收款客户端将第二签名结果和签名数据发送给货币提供节点。货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在签名数据和第二签名结果验证通过后完成交易,其中,签名数据和第二签名结果为支付客户端发送给收款客户端的,第二签名结果为对第一签名结果进行去盲化得到的结果。通过支付客户端对签名数据进行盲化处理,货币提供节点对盲化结果进行签名,实现了对签名数据的保护,并且货币提供节点无法将签名与支付客户端对应起来,从而实现了对支付客户端信息的保护,避免了窃听者获取交易双方私密信息而导致的安全问题,从而提高了交易的安全性。
在上述实施例的基础上,下面结合图4对本发明实施例提供的基于盲签名的交易方法进行进一步地详细介绍。
图4为本发明实施例提供的基于盲签名的交易方法的信令流程图二。如图4所示。该方法包括:
S401、支付客户端向货币提供节点发送数字资产。
具体的,在进行交易的过程是需要支付方将一定数额的数字资产支付给收款方从而完成交易,在本实施例中,支付客户端将数字资产发送给货币提供节点,货币提供节点用作交易的中间节点,类似于银行的存在,在本发明实施例中货币提供节点同样是区块链中的节点。
S402、货币提供节点接收支付客户端发送的数字资产。
在本实施例中,货币提供节点对支付客户端的数字资产进行存储。
可选地,货币提供节点还需要生成公钥以及私钥,其中私钥为随机生成的,并且只有货币提供节点知道自己的私钥,其中公钥为根据私钥生成的,区块链中的其余节点能够获取到货币提供节点的公钥,利用货币提供节点的公钥对数据进行加密,加密之后将加密的数据发送给货币提供节点。
进一步地,货币提供节点利用私钥能够实现对数据的解密,利用公钥和私钥能实现节点之间的数据交互并且防止被其他节点获取到数据,在本发明实施例中,利用公钥和私钥实现对交易服务参数以及签名数据的签名。
S403、支付客户端向货币提供节点发送第二签名请求,第二签名请求携带交易服务参数。
在本实施例中,支付客户端向货币提供节点发送携带有交易服务参数的第二签名请求,其中交易服务参数在上述实施例中已经进行了介绍,此处不再赘述,进一步地,第二签名请求用于指示货币提供节点对交易服务参数进行签名处理,其中第二签名请求还例如可以携带指定的签名算法或者支付客户端的额外条件等,本发明实施例对第二签名请求的具体实现方式不做特别限制。
S404、货币提供节点接收支付客户端发送的第二签名请求,第二签名请求携带交易服务参数。
S405、货币提供节点对交易服务参数进行签名,得到第三签名结果。
进一步地,货币提供节点根据支付客户端发送的第二签名请求对交易服务参数进行签名,其中签名的具体方式例如可以为根据交易服务参数中规定的算法进行签名,还例如可以为根据预设算法进行签名,本发明实施例对签名的具体实现方式不做特别限制。
通过货币提供接待对交易服务参数进行签名处理,可以有效的对此次交易进行标识,以便后续验证交易的有效性。
S406、货币提供节点向支付客户端发送第三签名结果。
S407、支付客户端接收货币提供节点发送的第三签名结果,第三签名结果为货币提供节点对交易服务参数进行签名得到的结果。
S408、支付客户端根据第三签名结果和签名数据进行盲化处理,得到盲化结果。
在本实施例中,支付客户端接收货币提供节点发送的第三签名结果,进一步地,根据第三签名结果以及签名数据进行盲化处理得到盲化结果,其中盲化处理是指根据盲化因子对签名数据进行处理,其中盲化因子例如可以为随机数,还例如可以为根据预设算法生成的数据,本发明实施例对此不做限制,下面以盲化因子为随机生成的第一随机数以及第二随机数为例进行介绍。
在进行盲化处理时,例如可以根据第三签名结果以及第一随机数和第二随机数生成最终承诺值,其中最终承诺值用于指示生成盲化结果,进一步地,例如可以根据签名数据以及最终承诺值进行哈希运算,得到挑战值,在计算挑战值的时候加入了对签名数据的运算,挑战值同样用于指示生成盲化结果,在本发明实施例中,签名数据为生成的随机数,用于标识一次交易。
其次根据挑战值以及第二随机数得到盲化结果,其中得到最终承诺值、挑战值以及盲化结果的具体实现方式例如可以为各种基础运算的组合,还例如可以为多种算法的结合,本发明实施例对其计算的方式不做特别限制,本领域技术人员可以理解,计算最终承诺值、挑战值以及盲化结果的具体实现方式可以根据需要进行设定,只要能够实现对签名数据进行盲化即可。
对应的,在本发明实施例中,盲化结果是支付客户端根据第三签名结果和签名数据进行盲化处理得到的结果。
S409、支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果。
具体的,S409的实现方式与S302类似,此处不再赘述。
S410、货币提供节点接收支付客户端发送的第一签名请求,第一签名请求携带盲化结果,盲化结果是支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果。
S411、货币提供节点对盲化结果进行签名,得到第一签名结果。
具体的,S410、S411的实现方式与S303、S304类似,此处不再赘述。
S412、货币提供节点将第一签名结果发送给支付客户端。
S413、支付客户端接收货币提供节点发送的第一签名结果,其中第一签名结果为货币提供节点对盲化结果进行签名得到的结果。
S414、支付客户端对第一签名结果去盲化,得到第二签名结果。
具体的,S412、S413、S414的实现方式与S305、S306、S307类似,此处不再赘述。
S415、支付客户端将第二签名结果和签名数据发送给收款客户端。
S416、收款客户端将第二签名结果和签名数据发送给货币提供节点。
具体的,S415、S416的实现方式与S308、S309类似,此处不再赘述。
S417、货币提供节点接收收款客户端发送的签名数据和第二签名结果,确定从收款客户端接收到的签名数据不在签名数据列表中。
在本发明实施例中,货币提供节点对验证完成的交易中的签名数据进行存储,得到签名数据列表,进一步地,本实施例中的签名数据为支付客户端生成的随机数,该随机数例如可以为256位,能够唯一的标识一次交易,此处仅为示例性说明,对签名数据的具体位数不做特别限制。
进一步地,货币提供节点根据收款客户端发送的签名数据以及签名数据列表进行查找,判断收款客户端发送的签名数据时是否存在签名数据列表中,若存在,则认为此次收款客户端发送的签名数据对应的交易已经完成,即支付客户端以及将此次交易中的数字资产支出了,从而有效避免了双花问题,即支付客户端试图用一份数字资产完成两份交易的问题。
可选地,若经过判断,确定从收款客户端接收到的签名数据不在签名数据列表中,则能够判定当前签名数据所对应的交易尚未发生,即当前的交易是有效的,从而能够执行后续的签名验证。
S418、货币提供节点将第二签名结果和签名数据作为预设模型的输入。
S419、货币提供节点判断预设模型满足等式关系时确定验证通过。
进一步地,在本发明实施例中,设置有预设模型,其中预设模型为根据货币提供节点的公钥、第二签名结果、签名数据以及预设参数组成的模型,用于对第二签名结果以及签名数据的签名正确性进行验证,其中预设模型的具体设计是与前述的签名算法的处理相对应的,本发明实施例对预设模型的具体设计不做特别限制,本领域技术人员可以理解,预设模型的设计可以根据实际需要进行选择。
具体的,预设模型用于验证当前的第二签名结果是否是货币提供节点对签名数据以及交易服务参数进行签名得到的,其中第二签名结果为对第一签名结果进行去盲化得到的结果,本质上即为货币提供节点直接对签名数据进行签名得到的结果,因此货币提供节点将第二签名结果和签名数据作为预设模型的输入,当签名数据与第二签名结果准确时,能够满足预设模型的等式关系,若确定满足等式关系,则确定验证通过,即货币提供节点验证该第二签名结果是自己根据交易服务参数以及签名数据进行签名得到的。
S420、货币提供节点将数字资产支付给收款客户端。
进一步地,在验证通过之后,货币提供节点确定此次交易真实有效,将支付方发送的数字资产支付给收款方,从而完成此次交易。
本发明实施例提供的基于盲签名的交易方法,包括:支付客户端向货币提供节点发送数字资产。货币提供节点接收支付客户端发送的数字资产。支付客户端向货币提供节点发送第二签名请求,第二签名请求携带交易服务参数。货币提供节点接收支付客户端发送的第二签名请求,第二签名请求携带交易服务参数。货币提供节点对交易服务参数进行签名,得到第三签名结果。货币提供节点向支付客户端发送第三签名结果。支付客户端接收货币提供节点发送的第三签名结果。支付客户端根据第三签名结果和签名数据进行盲化处理,得到盲化结果。支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果。货币提供节点接收支付客户端发送的第一签名请求。货币提供节点对盲化结果进行签名,得到第一签名结果。货币提供节点将第一签名结果发送给支付客户端。支付客户端接收货币提供节点发送的第一签名结果。支付客户端对第一签名结果去盲化,得到第二签名结果。支付客户端将第二签名结果和签名数据发送给收款客户端。收款客户端将第二签名结果和签名数据发送给货币提供节点。货币提供节点接收收款客户端发送的签名数据和第二签名结果,确定从收款客户端接收到的签名数据不在签名数据列表中。货币提供节点将第二签名结果和签名数据作为预设模型的输入。货币提供节点判断预设模型是否满足等式关系,若是,则确定验证通过。货币提供节点将数字资产支付给收款客户端。通过支付客户端对签名消息和交易服务参数进行处理,保证了交易过程中交易数据的安全性,以及实现了对支付客户端的身份保护,并且通过货币提供节点设置签名数据列表对签名数据进行验证,有效保证了交易的真实性以及有效性。
图5为本发明实施例提供的基于盲签名的交易装置的结构示意图一。如图5所示,该基于盲签名的交易装置50包括:接收模块501、签名模块502以及交易模块503。
接收模块501,用于货币提供节点接收支付客户端发送的第一签名请求,第一签名请求携带盲化结果,盲化结果是支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果;
签名模块502,用于货币提供节点对盲化结果进行签名,得到第一签名结果,并将第一签名结果发送给支付客户端;
交易模块503,用于货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在签名数据和第二签名结果验证通过后完成交易,其中,签名数据和第二签名结果为支付客户端发送给收款客户端的,第二签名结果为对第一签名结果进行去盲化得到的结果。
可选地,接收模块501,还用于:
货币提供节点接收支付客户端发送的第二签名请求,第二签名请求携带交易服务参数;
货币提供节点对交易服务参数进行签名,得到第三签名结果;
货币提供节点向支付客户端发送第三签名结果;
对应的,盲化结果是支付客户端根据第三签名结果和签名数据进行盲化处理得到的结果。
可选地,接收模块501,还用于:
货币提供节点确定从收款客户端接收到的签名数据不在签名数据列表中;
货币提供节点根据预设模型对第二签名结果和签名数据进行验证,得到验证通过的结果。
可选地,交易模块503具体用于:
货币提供节点将第二签名结果和签名数据作为预设模型的输入;
货币提供节点判断预设模型是否满足等式关系,若是,则确定验证通过。
可选地,接收模块501,还用于:
货币提供节点接收支付客户端发送的数字资产;
交易模块503,还用于:
货币提供节点将数字资产支付给收款客户端。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图6为本发明实施例提供的基于盲签名的交易装置的结构示意图二。如图6所示,该基于盲签名的交易装置60包括:盲化模块601、发送模块602、接收模块603以及去盲化模块604。
盲化模块601,用于支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果;
发送模块602,用于支付客户端向货币提供节点发送第一签名请求,第一签名请求携带盲化结果;
接收模块603,用于支付客户端接收货币提供节点发送的第一签名结果,其中第一签名结果为货币提供节点对盲化结果进行签名得到的结果;
去盲化模块604,用于支付客户端对第一签名结果去盲化,得到第二签名结果,并将第二签名结果和签名数据发送给收款客户端。
发送模块602,还用于:
支付客户端向货币提供节点发送第二签名请求,第二签名请求携带交易服务参数;
支付客户端接收货币提供节点发送的第三签名结果,第三签名结果为货币提供节点对交易服务参数进行签名得到的结果;
盲化模块601,具体用于:
支付客户端根据第三签名结果和签名数据进行盲化处理,得到盲化结果。
发送模块602具体用于:
支付客户端向货币提供节点发送数字资产。
本实施例提供的装置,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图7为本发明实施例提供的基于盲签名的交易设备的硬件结构示意图一。如图7所示,本实施例的基于盲签名的交易设备70包括:处理器701以及存储器702;其中
存储器702,用于存储计算机执行指令;
处理器701,用于执行存储器存储的计算机执行指令,以实现上述实施例中基于盲签名的交易方法所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,存储器702既可以是独立的,也可以跟处理器701集成在一起。
当存储器702独立设置时,该基于盲签名的交易设备还包括总线703,用于连接所述存储器702和处理器701。
图8为本发明实施例提供的基于盲签名的交易设备的硬件结构示意图二。如图8所示,本实施例的基于盲签名的交易设备80包括:处理器801以及存储器802;其中
存储器802,用于存储计算机执行指令;
处理器801,用于执行存储器存储的计算机执行指令,以实现上述实施例中基于盲签名的交易方法所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,存储器802既可以是独立的,也可以跟处理器801集成在一起。
当存储器802独立设置时,该基于盲签名的交易设备还包括总线803,用于连接所述存储器802和处理器801。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上基于盲签名的交易设备所执行的基于盲签名的交易方法。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上基于盲签名的交易设备所执行的基于盲签名的交易方法。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application Specific Integrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (20)
1.一种基于盲签名的交易方法,其特征在于,应用于区块链,所述方法包括:
货币提供节点接收支付客户端发送的第一签名请求,所述第一签名请求携带盲化结果,所述盲化结果是所述支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果;
所述货币提供节点对所述盲化结果进行签名,得到第一签名结果,并将所述第一签名结果发送给所述支付客户端;
所述货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在所述签名数据和所述第二签名结果验证通过后完成交易,其中,所述签名数据和所述第二签名结果为所述支付客户端发送给所述收款客户端的,所述第二签名结果为对所述第一签名结果进行去盲化得到的结果。
2.根据权利要求1所述的方法,其特征在于,所述货币提供节点接收支付客户端发送的第一签名请求之前,还包括:
所述货币提供节点接收所述支付客户端发送的第二签名请求,所述第二签名请求携带所述交易服务参数;
所述货币提供节点对所述交易服务参数进行签名,得到第三签名结果;
所述货币提供节点向所述支付客户端发送所述第三签名结果;
对应的,所述盲化结果是所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理得到的结果。
3.根据权利要求1所述的方法,其特征在于,所述货币提供节点在所述签名数据和所述第二签名结果验证通过后完成交易之前,还包括:
所述货币提供节点确定从所述收款客户端接收到的签名数据不在签名数据列表中;
所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果。
4.根据权利要求3所述的方法,其特征在于,所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果,包括:
所述货币提供节点将所述第二签名结果和所述签名数据作为所述预设模型的输入;
所述货币提供节点判断所述预设模型是否满足等式关系,若是,则确定验证通过。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述货币提供节点接收支付客户端发送的第一签名请求之前,还包括:
所述货币提供节点接收所述支付客户端发送的数字资产;
所述货币提供节点在所述签名数据和所述第二签名结果验证通过后完成交易,包括:
所述货币提供节点将所述数字资产支付给所述收款客户端。
6.一种基于盲签名的交易方法,其特征在于,应用于区块链,所述方法包括:
支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果;
所述支付客户端向货币提供节点发送第一签名请求,所述第一签名请求携带盲化结果;
所述支付客户端接收所述货币提供节点发送的第一签名结果,其中第一签名结果为所述货币提供节点对所述盲化结果进行签名得到的结果;
所述支付客户端对所述第一签名结果去盲化,得到第二签名结果,并将所述第二签名结果和所述签名数据发送给收款客户端。
7.根据权利要求6所述的方法,其特征在于,在所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果之前,还包括:
所述支付客户端向所述货币提供节点发送第二签名请求,所述第二签名请求携带所述交易服务参数;
所述支付客户端接收所述货币提供节点发送的第三签名结果,所述第三签名结果为所述货币提供节点对所述交易服务参数进行签名得到的结果;
所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果,包括:
所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理,得到盲化结果。
8.根据权利要求6或7所述的方法,其特征在于,所述支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果之前,还包括:
所述支付客户端向所述货币提供节点发送数字资产。
9.一种基于盲签名的交易装置,其特征在于,应用于区块链,包括:
接收模块,用于货币提供节点接收支付客户端发送的第一签名请求,所述第一签名请求携带盲化结果,所述盲化结果是所述支付客户端根据交易服务参数和签名数据进行盲化处理得到的结果;
签名模块,用于所述货币提供节点对所述盲化结果进行签名,得到第一签名结果,并将所述第一签名结果发送给所述支付客户端;
交易模块,用于所述货币提供节点接收收款客户端发送的签名数据和第二签名结果,并在所述签名数据和所述第二签名结果验证通过后完成交易,其中,所述签名数据和所述第二签名结果为所述支付客户端发送给所述收款客户端的,所述第二签名结果为对所述第一签名结果进行去盲化得到的结果。
10.根据权利要求9所述的装置,其特征在于,所述接收模块,还用于:
所述货币提供节点接收所述支付客户端发送的第二签名请求,所述第二签名请求携带所述交易服务参数;
所述货币提供节点对所述交易服务参数进行签名,得到第三签名结果;
所述货币提供节点向所述支付客户端发送所述第三签名结果;
对应的,所述盲化结果是所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理得到的结果。
11.根据权利要求9所述的装置,其特征在于,所述接收模块,还用于:
所述货币提供节点确定从所述收款客户端接收到的签名数据不在签名数据列表中;
所述货币提供节点根据预设模型对所述第二签名结果和所述签名数据进行验证,得到验证通过的结果。
12.根据权利要求11所述的装置,其特征在于,所述交易模块具体用于:
所述货币提供节点将所述第二签名结果和所述签名数据作为所述预设模型的输入;
所述货币提供节点判断所述预设模型是否满足等式关系,若是,则确定验证通过。
13.根据权利要求9至12任一项所述的装置,其特征在于,所述接收模块,还用于:
所述货币提供节点接收所述支付客户端发送的数字资产;
所述交易模块,还用于:
所述货币提供节点将所述数字资产支付给所述收款客户端。
14.一种基于盲签名的交易装置,其特征在于,应用于区块链,包括:
盲化模块,用于支付客户端根据交易服务参数和签名数据进行盲化处理,得到盲化结果;
发送模块,用于所述支付客户端向货币提供节点发送第一签名请求,所述第一签名请求携带盲化结果;
接收模块,用于所述支付客户端接收所述货币提供节点发送的第一签名结果,其中第一签名结果为所述货币提供节点对所述盲化结果进行签名得到的结果;
去盲化模块,用于所述支付客户端对所述第一签名结果去盲化,得到第二签名结果,并将所述第二签名结果和所述签名数据发送给收款客户端。
15.根据权利要求14所述的装置,其特征在于,所述发送模块,还用于:
所述支付客户端向所述货币提供节点发送第二签名请求,所述第二签名请求携带所述交易服务参数;
所述支付客户端接收所述货币提供节点发送的第三签名结果,所述第三签名结果为所述货币提供节点对所述交易服务参数进行签名得到的结果;
所述盲化模块,具体用于:
所述支付客户端根据所述第三签名结果和所述签名数据进行盲化处理,得到盲化结果。
16.根据权利要求14或15所述的装置,其特征在于,所述发送模块具体用于:
所述支付客户端向所述货币提供节点发送数字资产。
17.一种基于盲签名的交易设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如权利要求1至5中任一所述的方法。
18.一种基于盲签名的交易设备,其特征在于,包括:
存储器,用于存储程序;
处理器,用于执行所述存储器存储的所述程序,当所述程序被执行时,所述处理器用于执行如权利要求6至8中任一所述的方法。
19.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求1至5中任一所述的方法。
20.一种计算机可读存储介质,其特征在于,包括指令,当其在计算机上运行时,使得计算机执行如权利要求6至8中任一所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910223566.3A CN109961288B (zh) | 2019-03-22 | 2019-03-22 | 基于盲签名的交易方法及装置 |
EP20777894.5A EP3893178B1 (en) | 2019-03-22 | 2020-01-02 | Blind signature-based transaction method and device |
PCT/CN2020/070109 WO2020192236A1 (zh) | 2019-03-22 | 2020-01-02 | 基于盲签名的交易方法及装置 |
US17/370,742 US20210334809A1 (en) | 2019-03-22 | 2021-07-08 | Transaction method and apparatus based on blind signature |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910223566.3A CN109961288B (zh) | 2019-03-22 | 2019-03-22 | 基于盲签名的交易方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109961288A true CN109961288A (zh) | 2019-07-02 |
CN109961288B CN109961288B (zh) | 2022-04-26 |
Family
ID=67024803
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910223566.3A Active CN109961288B (zh) | 2019-03-22 | 2019-03-22 | 基于盲签名的交易方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210334809A1 (zh) |
EP (1) | EP3893178B1 (zh) |
CN (1) | CN109961288B (zh) |
WO (1) | WO2020192236A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112734411A (zh) * | 2021-01-12 | 2021-04-30 | 杭州趣链科技有限公司 | 基于区块链的交易方法、装置、设备及存储介质 |
CN116566623A (zh) * | 2023-07-05 | 2023-08-08 | 北京天润基业科技发展股份有限公司 | 一种获取匿名数字证书的方法、系统及电子设备 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117040766B (zh) * | 2023-10-08 | 2024-01-30 | 腾讯科技(深圳)有限公司 | 基于区块链的数据处理方法、装置、设备及可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681045A (zh) * | 2016-01-14 | 2016-06-15 | 北京航空航天大学 | 盲签名方法和盲签名系统 |
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN106296138A (zh) * | 2016-08-09 | 2017-01-04 | 西安电子科技大学 | 基于部分盲签名技术的比特币支付系统及其方法 |
CN106534089A (zh) * | 2016-10-25 | 2017-03-22 | 江苏通付盾科技有限公司 | 一种身份认证方法及装置 |
CN108109257A (zh) * | 2018-01-05 | 2018-06-01 | 杭州电子科技大学 | 一种基于区块链的匿名电子投票方法 |
CN109389498A (zh) * | 2018-09-18 | 2019-02-26 | 上海诚频信息科技合伙企业(有限合伙) | 区块链用户身份管理方法、系统、设备及存储介质 |
CN109409890A (zh) * | 2018-11-13 | 2019-03-01 | 华瓴(南京)信息技术有限公司 | 一种基于区块链的电力交易系统及方法 |
CN109447602A (zh) * | 2018-10-16 | 2019-03-08 | 北京航空航天大学 | 一种保护隐私的多中心协同分布式数字货币混币方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016200885A1 (en) * | 2015-06-08 | 2016-12-15 | Blockstream Corporation | Cryptographically concealing amounts transacted on a ledger while preserving a network's ability to verify the transaction |
CN110719172B (zh) * | 2018-07-13 | 2021-08-10 | 北京京东尚科信息技术有限公司 | 区块链系统中的签名方法、签名系统以及相关设备 |
CN109359483B (zh) * | 2018-10-19 | 2021-09-10 | 东北大学秦皇岛分校 | 一种基于区块链的用户隐私匿名保护方法 |
KR102307483B1 (ko) * | 2019-05-28 | 2021-09-29 | 한양대학교 산학협력단 | 순차 결합을 지원하는 전방향 안전 서명 방법 및 그 장치 |
CN110378690B (zh) * | 2019-06-13 | 2022-05-27 | 北京航空航天大学 | 一种基于匿名安全支付通道的交易方法及装置 |
-
2019
- 2019-03-22 CN CN201910223566.3A patent/CN109961288B/zh active Active
-
2020
- 2020-01-02 WO PCT/CN2020/070109 patent/WO2020192236A1/zh unknown
- 2020-01-02 EP EP20777894.5A patent/EP3893178B1/en active Active
-
2021
- 2021-07-08 US US17/370,742 patent/US20210334809A1/en active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160330034A1 (en) * | 2015-05-07 | 2016-11-10 | Blockstream Corporation | Transferring ledger assets between blockchains via pegged sidechains |
CN105681045A (zh) * | 2016-01-14 | 2016-06-15 | 北京航空航天大学 | 盲签名方法和盲签名系统 |
CN106296138A (zh) * | 2016-08-09 | 2017-01-04 | 西安电子科技大学 | 基于部分盲签名技术的比特币支付系统及其方法 |
CN106534089A (zh) * | 2016-10-25 | 2017-03-22 | 江苏通付盾科技有限公司 | 一种身份认证方法及装置 |
CN108109257A (zh) * | 2018-01-05 | 2018-06-01 | 杭州电子科技大学 | 一种基于区块链的匿名电子投票方法 |
CN109389498A (zh) * | 2018-09-18 | 2019-02-26 | 上海诚频信息科技合伙企业(有限合伙) | 区块链用户身份管理方法、系统、设备及存储介质 |
CN109447602A (zh) * | 2018-10-16 | 2019-03-08 | 北京航空航天大学 | 一种保护隐私的多中心协同分布式数字货币混币方法 |
CN109409890A (zh) * | 2018-11-13 | 2019-03-01 | 华瓴(南京)信息技术有限公司 | 一种基于区块链的电力交易系统及方法 |
Non-Patent Citations (2)
Title |
---|
JIA-LEI ZHANG等: ""A Novel E-payment Protocol Implented by Blockchain and Quantum Signature"", 《INTERNATIONAL JOURNAL OF THEORETICAL PHYSICS》 * |
陈轶群: ""基于身份的在线电子现金系统设计"", 《智能计算机与应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112734411A (zh) * | 2021-01-12 | 2021-04-30 | 杭州趣链科技有限公司 | 基于区块链的交易方法、装置、设备及存储介质 |
CN116566623A (zh) * | 2023-07-05 | 2023-08-08 | 北京天润基业科技发展股份有限公司 | 一种获取匿名数字证书的方法、系统及电子设备 |
CN116566623B (zh) * | 2023-07-05 | 2023-09-22 | 北京天润基业科技发展股份有限公司 | 一种获取匿名数字证书的方法、系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2020192236A1 (zh) | 2020-10-01 |
EP3893178A4 (en) | 2022-08-31 |
EP3893178A1 (en) | 2021-10-13 |
EP3893178B1 (en) | 2024-02-07 |
US20210334809A1 (en) | 2021-10-28 |
CN109961288B (zh) | 2022-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108764874B (zh) | 基于区块链的匿名转账方法、系统及存储介质 | |
CN106651331B (zh) | 一种基于数字货币的电子交易方法及系统 | |
CN107464112B (zh) | 基于区块链的交易管理方法及系统 | |
CN109325747B (zh) | 基于区块链的汇款方法及装置 | |
US20180068280A1 (en) | Verifying electronic transactions | |
CN108335106A (zh) | 基于区块链的零知识多账本兑换转账方法、装置及存储介质 | |
Forte et al. | Beyond Bitcoin-Part I: A critical look at blockchain-based systems | |
CN112801658B (zh) | 跨境资源转移真实性审核方法、装置及电子设备 | |
JP2001509630A (ja) | 対称型のセキュリティ保護された電子通信システム | |
CN109961288A (zh) | 基于盲签名的交易方法及装置 | |
BR102014028305A2 (pt) | sistemas e métodos para associar conta de instituição financeira e conta de originador e processar solicitações de transações | |
CN112288434B (zh) | 隐私交易方法、装置、零知识证明系统和隐私交易架构模型 | |
CN105956855A (zh) | 一种电子签名设备的交易方法和交易系统 | |
WO2010109271A1 (en) | Systems, methods, apparatuses, and computer program products for generation and exchange of digital currency | |
CN107908932A (zh) | 一种基于l算法的数字货币防伪及验证方法、系统和设备 | |
CN110224985B (zh) | 数据处理的方法及相关装置 | |
CN108241976A (zh) | 一种基于区块链的二维码支付方法 | |
CN106030637A (zh) | 结算系统、结算装置、交易终端、结算管理方法及程序 | |
CN111062717A (zh) | 一种数据转移处理方法、装置和计算机可读存储介质 | |
CN104282096B (zh) | 实现数字签名的方法以及用于实现数字签名的pos终端 | |
CN108492071A (zh) | 一种基于区块链的快递信息处理方法及装置 | |
CN111768199A (zh) | 数字货币交易方法和本地钱包系统 | |
CN105913259A (zh) | 一种电子签名设备的交易方法、交易系统和电子签名设备 | |
WO2021144888A1 (ja) | 決済処理装置、決済処理プログラムおよび決済処理システム | |
CN113269649A (zh) | 一种数字货币追踪的系统和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |