CN115545706A - 一种基于区块链和智能合约技术的安全支付系统及方法 - Google Patents
一种基于区块链和智能合约技术的安全支付系统及方法 Download PDFInfo
- Publication number
- CN115545706A CN115545706A CN202211164358.9A CN202211164358A CN115545706A CN 115545706 A CN115545706 A CN 115545706A CN 202211164358 A CN202211164358 A CN 202211164358A CN 115545706 A CN115545706 A CN 115545706A
- Authority
- CN
- China
- Prior art keywords
- user
- merchant
- transaction
- order
- intelligent contract
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/602—Providing cryptographic facilities or services
-
- 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- 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/08—Payment architectures
- G06Q20/085—Payment architectures involving remote charge determination or related payment systems
- G06Q20/0855—Payment architectures involving remote charge determination or related payment systems involving a third party
-
- 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/3827—Use of message hashing
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Finance (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本发明公开了一种基于区块链和智能合约技术的安全支付系统及方法。系统首先进行初始化;然后进入支付阶段,用户将加密交易意向同其以太坊地址一起发送给商家,商家解密交易意向并将得到的信息打包成一个订单信息加密存储至IPFS中,IPFS生成索引信息并返回给商家,并发送给用户,用户与智能合约交互进行支付金额以及上传index,区块链成功存储index则返回Transaction_hash给用户;最后系统进入收货提现阶段,用户将Transaction_hash发送给商家,商家向BC请求获取交易信息,然后验证交易信息是否正确,正确则发送货物给用户,用户收到货物后与智能合约交互进行身份验证,验证成功则修改物流状态,第三方支付平台支付金额给商家。本发明可以确保用户在电子交易过程中信息不被泄露、篡改。
Description
技术领域
本发明涉及区块链和智能合约技术领域,涉及一种基于区块链和智能合约技术的安全支付系统及方法。
背景技术
随着信息技术的不断发展,电子支付的方便与快捷使得人们对其需求越来越大,现如今电子支付也成为了人们生活不可或缺的一部分。但是值得注意的是在电子支付过程中存在着一定的风险,其中最为主要的就是个人隐私信息的安全问题。首先用户和商家交易阶段,用户在发送交易信息给商家时,若遭遇攻击者侵入,此时极易泄露交易数据。其次从商家角度来说,商家接收到用户发来的交易信息后,存储在数据库中,若遭遇攻击者侵入,此时也极易泄露交易数据。最后,当下绝大部分第三方支付平台对于电子交易数据采用的是中心化的存储方式,而采用中心化的存储方式是难以保证这些数据的安全,因此第三方支付平台也可能存在漏洞。
由此可知,现在方法存在安全性不高的技术问题。
发明内容
本发明提供了一种基于区块链和智能合约技术的安全支付系统及方法,用以解决或者至少部分解决现有技术中存在的安全性不高的技术问题。
为了解决上述技术问题,本发明第一方面提供了一种基于区块链和智能合约技术的安全支付系统,包括:用户、商家、第三方支付平台、智能合约、星际文件系统和区块链,
用户,用于向商家发送加密后的交易意向以及以用户的以太坊地址;与智能合约交互并向其上传订单的索引信息,并向第三方支付平台进行支付;接收区块链返回的与订单对应的交易信息和索引信息的存储地址,并发送给商家;将身份验证信息发送给智能合约;
商家,用于对用户发送的加密后的交易意向进行解密,并将解密后的结果形成订单储存至星际文件系统中,接收星际文件系统返回的订单对应的索引信息,将订单对应的索引信息发送给用户;通过用户发送的与订单对应的交易信息和索引信息的存储地址验证交易金额和地址是否正确,如果正确则发送货物给用户;
第三方支付平台,接收用户支付的金额,并根据物流状态向商家进行金额支付;
智能合约,接收用户上传的订单的索引信息;接收用户发送的身份验证信息,对用户身份进行验证,当验证成功时,修改对应的物流状态;
星际文件系统,用于对商家生成的加密订单进行存储,并生成加密订单对应的索引信息,然后返回给商家;
区块链,用于对用户上传至智能合约的订单的索引信息进行存储,当存储成功将与订单对应的交易信息和索引信息的存储地址返回用户;接收商家发送的获取交易信息请求,并根据交易信息请求进行检索,将检索结果返回给商家。
在一种实施方式中,加密后的交易意向由用户利用系统初始化时生成的商家公钥进行加密,用户以太坊地址在系统初始化时生成,用于注册一个用户伪身份。
在一种实施方式中,商家利用系统初始化时生成的商家私钥对用户发送的加密后的交易意向进行解密,并根据解密后得到的交易意向同交易金额和货物信息一起打包为一个订单。
基于同样的发明构思,本发明第二方面提供了一种基于区块链和智能合约技术的安全支付方法,包括:
初始化步骤,生成两个以太坊地址,分别作为用户和商家的账户地址,使用Boneh-Franklin加密方案得到用户和商家的密钥对,用户的密钥对包括用户的公钥和私钥,商家的密钥对包括商家的公钥和私钥;
支付步骤,
用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家;
商家利用商家的私钥对加密后的交易意向进行解密,并将解密后的结果、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户;
用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址;
收货提现步骤,用户将订单对应的交易信息和索引信息的存储地址发送给商家,商家验证交易信息是否正确,如果正确则将对应的货物发送给用户,用户收到货物后与智能合约交互,通过智能合约对用户的身份进行身份验证,如果身份验证成功则修改物流状态,并通过第三方支付平台向商家支付相应的金额。
在一种实施方式中,初始化步骤包括:
第三方支付平台根据交易规则创建智能合约;
分别初始化用户和商家的以太坊地址Uaddr和Saddr;
采用BF基于身份的加密方案通过密钥生成器生成用户的私钥和公钥,商家的私钥和公钥。
在一种实施方式中,支付步骤中,用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家,包括:
用户利用商家的公钥对交易意向进行加密,具体包括:用户随机选取设置四个参数V、W、T、r,其中V、W、T用于构成加密后的交易意向c′,V为检验消息的安全性的参数,W为商家在解密过程中求解α的参数,T为商家解密过程中求解明文c的参数,r为一个哈希值,lm表示消息的比特长度;依次计算r=H3(α,c),V=r*P, 和其中,{H1,H2,H3,H4}为四个安全的Hash函数:H1:{0,1}*→G1,P为G1的一个生成元;Ppud为系统公钥,QS为商家的公钥;
用户将加密后的交易意向c′=(V,W,T)和用户的以太坊地址Uaddr一同发送给商家。
在一种实施方式中,支付步骤中,商家利用商家的私钥对加密后的交易意向进行解密,并将解密后的结果、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户,包括:
商家使用商家的私钥SS对加密后的交易意向c′进行解密,具体包括:计算 计算其中m作为解密后的交易意向,接着设置一个参数r′作为一个哈希值,r′=H3(α′,m),并检查等式V=r′*P是否成立,如果成立,则接受该密文并返回m,否则不接受c′;
将交易金额q和货物信息k打包成为一个订单order,并使用用户的公钥QU对order进行加密,加密过程包括:随机选取β∈{0,1}lm,设置一个哈希值t和三个参数O、Q、D,其中O、Q、D用于构成加密后的订单信息order′,O为用于检验的参数,Q为用户对订单解密过程中求解β的参数,D为用户对订单解密过程中求出原始订单明文的参数;依次计算t=H3(β,order),O=t*P,和得到加密后的订单order′=(O,Q,D),其中,{H2,H3,H4}为三个安全的Hash函数: P为G1的一个生成元;Ppud为系统公钥,QU为用户的公钥;
商家将加密后的订单order′上传至星际文件系统中,通过星际文件系统返回订单对应的索引信息index;
商家将订单对应的索引信息index发送给用户。
在一种实施方式中,支付步骤中,用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址,包括:
用户通过调用智能合约SC向第三方支付平台Payment Part进行支付操作;
用户将订单的索引信息index上传至智能合约;
智能合约将用户向第三方支付平台支付的交易金额、用户的以太坊地址Uaddr以及index一同存储到区块链Block-chain中,当区块链存储成功将两个交易散列Transactionhash给智能合约,其中两个Transactionhash分别为用户向第三方支付平台支付的交易信息、index在区块链中的存储地址;
智能合约将两个交易散列一同返回给用户,并且扣除用户的金额;
智能合约与第三方支付平台进行交互,将用户支付的金额转入第三方支付平台的账户中,第三方支付平台的账户增加相应的金额。
在一种实施方式中,收货提现步骤,具体包括:
用户将智能合约发送的两个交易散列发送给商家;
商家基于接收的交易散列向区块链请求获取交易信息,区块链将根据交易散列中索引信息的存储地址检索到交易信息,将交易金额、用户的以太坊地址以及订单的索引信息index返回给商家;
商家根据区块链返回的交易金额和以太坊地址进行验证,验证用户支付的金额数以及账户是否正确,当正确时验证成功,商家将货物发送给用户;
当用户收到货物后,输入身份信息触发智能合约进行身份验证,将身份验证信息发送至智能合约,身份验证信息包括用户的伪身份IDU和用户的以太坊地址;
当身份验证成功,通过调用智能合约来修改用户伪身份IDU的物流状态status={“已发货”},通过智能合约扣除第三方支付平台账户上的金额;
智能合约将第三方支付平台支付的金额发送给商家,商家的账户增加对应的金额,并将第三方支付平台向商家支付的交易结果返回给第三方支付平台。
与现有技术相比,本发明能够达到的技术效果包括:
本发明提供的一种基于区块链和智能合约技术的安全支付系统,包括:用户、商家、第三方支付平台、智能合约、星际文件系统和区块链,通过结合智能合约技术、区块链技术和IPFS系统,可以实现高效的存储交易信息,且区块链中存储的数据不会出现被修改或篡改的情况;采用绑定CID值的索引信息进一步提高了交易信息的搜索效率;使用BF加密的方法处理交易信息,有效地保证了共享交易信息时的安全。本发明不仅保证了交易信息存储安全,还保证了用户、商家和第三方支付平台在交易过程中,能够安全地接收交易数据。因此提高了交易的安全性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的安全支付系统在支付阶段交互框图。
图2为本发明提供的安全支付系统在收货提现阶段交互框图。
具体实施方式
本发明提供的一种基于区块链和智能合约技术的安全支付系统,主要是为了解决当前电子支付出现的三大弊端:用户在发送交易信息给商家时,易遭遇攻击者侵入;商家接收到用户发来的交易信息后,存储在数据库中,易遭遇攻击者侵入;绝大部分第三方支付平台对于电子交易数据采用中心化的存储方式。
为了解决上述技术问题,本发提供了一种基于区块链和智能合约技术的安全支付系统及方法,其中的系统主要包括:用户、商家、第三方支付平台、智能合约、IPFS和区块链。具体步骤为:系统首先进行初始化,使用Boneh-Franklin(BF)加密方案得到用户和商家的密钥对;接着系统进入支付阶段,用户将加密交易意向同其以太坊地址一起发送给商家,商家解密交易意向并将得到的信息打包成一个订单信息加密存储至IPFS中,IPFS生成索引信息index并返回给商家,进而发送给用户,用户与智能合约交互进行支付金额以及上传index,区块链成功存储index则返回Transaction_hash给用户;最后系统进入收货提现阶段,用户将Transaction_hash发送给商家,商家进行验证交易是否正确,正确则发送货物给用户,用户收到货物后与智能合约交互进行身份验证,验证成功则修改物流状态,第三方支付平台支付金额给商家。
本发明结合智能合约和区块链技术,采用BF加密方案以及使用IPFS,更加高效的存储index信息,确保index在区块链上不会被修改或篡改,有效解决了当前电子支付出现的弊端,同时确保用户在电子交易过程中信息不被泄露、篡改。为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种基于区块链和智能合约技术的安全支付系统,包括:用户、商家、第三方支付平台、智能合约、星际文件系统和区块链,
用户,用于向商家发送加密后的交易意向以及以用户以太坊地址;与智能合约交互并向其上传订单的索引信息,并向第三方支付平台进行支付;接收区块链返回的与订单对应的交易信息和索引信息的存储地址,并发送给商家;将身份验证信息发送给智能合约;
商家,用于对用户发送的加密后的交易意向进行解密,并将解密后的结果形成订单储存至星际文件系统中,接收星际文件系统返回的订单对应的索引信息,将订单对应的索引信息发送给用户;通过用户发送的与订单对应的交易信息和索引信息的存储地址验证交易金额和地址是否正确,如果正确则发送货物给用户;
第三方支付平台,接收用户支付的金额,并根据物流状态向商家进行金额支付;
智能合约,接收用户上传的订单的索引信息;接收用户发送的身份验证信息,对用户身份进行验证,当验证成功时,修改对应的物流状态;
星际文件系统,用于对商家生成的加密订单进行存储,并生成加密订单对应的索引信息,然后返回给商家;
区块链,用于对用户上传至智能合约的订单的索引信息进行存储,当存储成功将与订单对应的交易信息和索引信息的存储地址返回用户;接收商家发送的获取交易信息请求,并根据交易信息请求进行检索,将检索结果返回给商家。
目前,电子支付在我国普遍流行,因此社会需要保障用户在电子交易过程中信息不被泄露、篡改,那么一个基于区块链和智能合约这两大技术的安全支付系统就十分有效了。
系统的组成主要包括用户User、商家Store、智能合约SC、星际文件系统IPFS以及区块链Block-chain。
User,主要任务为对交易意向进行加密,并将加密后的交易意向和账户地址信息给Store,以及需要进行支付交易所需金额。
Store,主要任务为解决订单问题的暴露,为用户提供所需货物。在支付阶段主要将用户加密的交易意向解密形成订单,再将订单信息进行加密存储至IPFS中。在收货提现阶段主要用于验证交易信息是否有误,无误则发送货物给用户。Store会将订单信息进行加密存储至IPFS中,即生成加密订单,存储至IPFS中。
SC,存储在区块链里,作为一个协议,判断是否将用户和商家的交易信息放在区块链上。在支付阶段主要用于让用户支付交易金额以及上传IPFS系统所生成的CID值index。在收获提现阶段主要用于验证用户身份信息是否正确,正确则修改其物流状态,并扣除第三方支付平台金额。其中,采用绑定CID值的方式提高了交易信息的搜索效率。
IPFS,作为一个采用分布式的加密数据库,当Store将加密后的订单信息上传到IPFS后,IPFS将生成该数据对应的CID值index,并且返回给Store,增强数据在传输过程中的安全性。
Block-chain,用于解决第三方支付平台中心化的问题,为智能合约提供可信的执行环境,支撑可编程合约,且具有不可篡改,过程透明可追踪等优点,保证了数据的安全性。主要任务为存储通过User上传的index值。
Payment Part,代表第三方支付平台,主要作为User与Store金钱转交的一个平台。支付阶段收到由User支付的金钱,增加金额。收货提现阶段将User在支付阶段支付的金钱转交给Store。
本发明提供的一种基于区块链和智能合约技术的安全支付系统。对电子支付与区块链系统进行巧妙的结合,能够有效的保证交易数据以及支付金额的安全性,避免个人隐私的泄露。
在一种实施方式中,加密后的交易意向由用户利用系统初始化时生成的商家公钥进行加密,用户以太坊地址在系统初始化时生成,用于注册一个用户伪身份。
在一种实施方式中,商家利用系统初始化时生成的商家私钥对用户发送的加密后的交易意向进行解密,并根据解密后得到的交易意向同交易金额和货物信息一起打包为一个订单。
实施例二
基于同样的发明构思,本实施例提供了一种基于区块链和智能合约技术的安全支付方法,包括:
初始化步骤,生成两个以太坊地址,分别作为用户和商家的账户地址,使用Boneh-Franklin加密方案得到用户和商家的密钥对,用户的密钥对包括用户的公钥和私钥,商家的密钥对包括商家的公钥和私钥;
支付步骤,
用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家;
商家利用商家的私钥对加密后的交易意向进行解密,并将解密后的结果(即用户的交易意向)、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户;
用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址;
收货提现步骤,用户将订单对应的交易信息和索引信息的存储地址发送给商家,商家验证交易信息是否正确,如果正确则将对应的货物发送给用户,用户收到货物后与智能合约交互,通过智能合约对用户的身份进行身份验证,如果身份验证成功则修改物流状态,并通过第三方支付平台向商家支付相应的金额。
本发明整体流程主要包括三个步骤,初始化步骤、支付步骤和收货提现步骤(阶段)。用户User、商家Store、智能合约SC、第三方支付平台Payment Part、星际文件系统IPFS和区块链Block-chain。在进行整体流程前,系统要先进行初始化。主要操作为:首先,第三方支付平台Payment Part会根据交易规则创建智能合约SC。接着,系统将初始化两个以太坊地址Uaddr和Saddr,分别作为用户User和商家Store的账户地址。最后,采用BF基于身份的加密方案进行密钥提取。接着是支付阶段,用户向商家发送交易意向,商家将交易意向打包为订单,并加密存储,结合智能合约与区块链技术进行信息存储和处理,用户将支付金额支付给第三方支付平台,最后是收货提现阶段,用户将订单对应的交易信息和索引信息的存储地址发送给商家,商家进行验证,验证通过后则向用户发送赌赢的货物,同时,通过智能合约对用户的身份进行身份验证,如果身份验证成功则修改物流状态,并通过第三方支付平台向商家支付相应的金额。
在一种实施方式中,初始化步骤包括:
第三方支付平台根据交易规则创建智能合约;
分别初始化用户和商家的以太坊地址Uaddr和Saddr;
采用BF基于身份的加密方案通过密钥生成器生成用户的私钥和公钥,商家的私钥和公钥。
具体来说,采用Boneh-Franklin(BF)基于身份的加密方案,密钥生成器PKG会生成公开参数{e,P,Ppud,H1,H2,H3,H4}和主密钥s。其中G1×G1→GT是一个双线性映射,G1是阶为p的循环加法群,GT是阶为p的循环乘法群;P为G1的一个生成元;Ppud为系统公钥,由s和P计算而来;{H1,H2,H3,H4}为四个安全的Hash函数:H1:{0,1}*→G1, lm表示消息的比特长度;{0,1}*是任意长度的比特串;是lm比特字符串;Zp是模p的完全剩余系;Z* p是模p的简化剩余系;s是从Z* p中随机选取的元素,是一个随机数。
加密具体步骤为,首先PKG会随机选择s∈Z* p,计算Ppud=s*P,其次进行密钥提取,User和Store使用其以太坊地址在SC中分别注册一个伪身份IDU和IDS,此时IDU的物流状态status={“空”,“未发货”}。通过PKG计算User的私钥为SU=s*QU,公钥为QU=H1(IDU)。Store的私钥为SS=s*QS,公钥为QS=H1(IDS)。
在一种实施方式中,支付步骤中,用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家,包括:
用户利用商家的公钥对交易意向进行加密,具体包括:用户随机选取设置四个参数V、W、T、r,其中V、W、T用于构成加密后的交易意向c′,V为检验消息的安全性的参数,W为商家在解密过程中求解α的参数,T为商家解密过程中求解明文c的参数,r为一个哈希值,lm表示消息的比特长度;依次计算r=H3(α,c),V=r*P, 和其中,{H1,H2,H3,H4}为四个安全的Hash函数:H1:{0,1}*→G1,P为G1的一个生成元;Ppud为系统公钥,QS为商家的公钥;
用户将加密后的交易意向c′=(V,W,T)和用户的以太坊地址Uaddr一同发送给商家。
具体来说,参数V主要用于检验消息的安全性,W主要用于Store在解密过程中求解α,T主要用于在Store解密过程中进行异或运算求出明文c(即原始的交易意向)。
请参见图1,为本发明提供的安全支付系统在支付阶段交互框图。
在一种实施方式中,支付步骤中,商家利用商家的私钥对加密后的交易意向进行解密,并将解密后的结果、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户,包括:
商家使用商家的私钥SS对加密后的交易意向c′进行解密,具体包括:计算 计算其中m作为解密后的交易意向,接着设置一个参数r′作为一个哈希值,r′=H3(α′,m),并检查等式V=r′*P是否成立,如果成立,则接受该密文并返回m,否则不接受c′;
将交易金额q和货物信息k打包成为一个订单order,并使用用户的公钥QU对order进行加密,加密过程包括:随机选取β∈{0,1}lm,设置一个哈希值t和三个参数O、Q、D,其中O、Q、D用于构成加密后的订单信息order′,O为用于检验的参数,Q为用户对订单解密过程中求解β的参数,D为用户对订单解密过程中求出原始订单明文的参数;依次计算t=H3(β,order),O=t*P,和得到加密后的订单order′=(O,Q,D),其中,{H2,H3,H4}为三个安全的Hash函数: P为G1的一个生成元;Ppud为系统公钥,QU为用户的公钥;
商家将加密后的订单order′上传至星际文件系统中,通过星际文件系统返回订单对应的索引信息index;
商家将订单对应的索引信息index发送给用户。
具体来说,V=r′*P是否成立,即判断商家通过哈希函数计算出的r′与P的乘积与接收到的加密后的交易意向中的参数V是否相等,如果相等,则说明m与c、r′与r、α′与α的值相同,此时接受该密文并返回消息m,否则不接受c′。O主要用于检验,检验后期User在解密过程中t是否发生改变,确保信息没有遭受篡改,安全传输,Q主要用于User在解密过程中求出β,D主要用于User在解密过程中求出明文order(原始的订单)。
在一种实施方式中,支付步骤中,用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址,包括:
用户通过调用智能合约SC向第三方支付平台Payment Part进行支付操作;
用户将订单的索引信息index上传至智能合约;
智能合约将用户向第三方支付平台支付的交易金额、用户的以太坊地址Uaddr以及index一同存储到区块链Block-chain中,当区块链存储成功将两个交易散列Transactionhash给智能合约,其中两个Transactionhash分别为用户向第三方支付平台支付的交易信息、index在区块链中的存储地址;
智能合约将两个交易散列一同返回给用户,并且扣除用户的金额;
智能合约与第三方支付平台进行交互,将用户支付的金额转入第三方支付平台的账户中,第三方支付平台的账户增加相应的金额。
具体来说,区块链在对订单的索引信息进行存储时,如果存储成功,则向用户返回与订单对应的交易信息和索引信息的存储地址,交易信息和存储地址是通过交易散列的形式返回的。交易信息包括交易金额。
在一种实施方式中,收货提现步骤,具体包括:
用户将智能合约发送的两个交易散列发送给商家;
商家基于接收的交易散列向区块链请求获取交易信息,区块链将根据交易散列中索引信息的存储地址检索到交易信息,将交易金额、用户的以太坊地址以及订单的索引信息index返回给商家;
商家根据区块链返回的交易金额和以太坊地址进行验证,验证用户支付的金额数以及账户是否正确,当正确时验证成功,商家将货物发送给用户;
当用户收到货物后,输入身份信息触发智能合约进行身份验证,将身份验证信息发送至智能合约,身份验证信息包括用户的伪身份IDU和用户的以太坊地址;
当身份验证成功,通过调用智能合约来修改用户伪身份IDU的物流状态status={“已发货”},通过智能合约扣除第三方支付平台账户上的金额;
智能合约将第三方支付平台支付的金额发送给商家,商家的账户增加对应的金额,并将第三方支付平台向商家支付的交易结果返回给第三方支付平台。
请参见图2,为本发明提供的安全支付系统在收货提现阶段交互框图。
具体来说,验证用户支付的金额数以及账户是否正确,其中账户是根据用户的以太坊地址生成的。如果不正确,则商家不予发货。
当身份验证成功时,通过调用智能合约来修改用户伪身份IDU的物流状态,将未发货状态修改为已发货,当状态修改完成后系统自动触发功能:扣除Payment Part账户上的金额。如果身份验证不成功,则不予更改User的物流状态。
本发明提供的一种基于区块链和智能合约技术的安全支付系统及方法,支付阶段用户会先对交易意向进行加密然后连同其以太坊地址一起发送给商家,商家接收到用户发送的交易意向后会先对其进行解密,将得到的信息打包成一个订单信息,接着将此订单信息进行加密存储至IPFS中,IPFS将加密订单进行重加密后再将得到的索引信息返回给商家,进而商家将该信息发送给用户,从而有效地保证了交易数据传播时的安全;结合智能合约和区块链技术,更加高效的存储index信息,确保index在区块链上不会被修改或篡改;此外,使用BF加密方案,本身带有签名加密,使得用户的公钥与其身份紧密相连,因此用户在发送交易数据给商家前以及商家在发送订单数据给IPFS前,用户和商家都需对数据进行加密,此举是为了确定交易数据是真实有效的,保护用户交易数据安全,避免信息泄露。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
Claims (9)
1.一种基于区块链和智能合约技术的安全支付系统,其特征在于,包括:用户、商家、第三方支付平台、智能合约、星际文件系统和区块链,
用户,用于向商家发送加密后的交易意向以及以用户的以太坊地址;与智能合约交互向其上传订单的索引信息,并向第三方支付平台进行支付;接收区块链返回的与订单对应的交易信息和索引信息的存储地址,并发送给商家;将身份验证信息发送给智能合约;
商家,用于对用户发送的加密后的交易意向进行解密,并将解密后的结果形成订单储存至星际文件系统中,接收星际文件系统返回的订单对应的索引信息,将订单对应的索引信息发送给用户;通过用户发送的与订单对应的交易信息和索引信息的存储地址验证交易金额和地址是否正确,如果正确则发送货物给用户;
第三方支付平台,接收用户支付的金额,并根据物流状态向商家进行金额支付;
智能合约,接收用户上传的订单的索引信息;接收用户发送的身份验证信息,对用户身份进行验证,当验证成功时,修改对应的物流状态;
星际文件系统,用于对商家生成的加密订单进行存储,并生成加密订单对应的索引信息,然后返回给商家;
区块链,用于对用户上传至智能合约的订单的索引信息进行存储,当存储成功将与订单对应的交易信息和索引信息的存储地址返回用户;接收商家发送的获取交易信息请求,并根据交易信息请求进行检索,将检索结果返回给商家。
2.如权利要求1所述的基于区块链和智能合约技术的安全支付系统,其特征在于,加密后的交易意向由用户利用系统初始化时生成的商家公钥进行加密,用户以太坊地址在系统初始化时生成,用于注册一个用户伪身份。
3.如权利要求1所述的基于区块链和智能合约技术的安全支付系统,其特征在于,商家利用系统初始化时生成的商家私钥对用户发送的加密后的交易意向进行解密,并根据解密后得到的交易意向同交易金额和货物信息一起打包为一个订单。
4.一种基于区块链和智能合约技术的安全支付方法,其特征在于,包括:
初始化步骤,生成两个以太坊地址,分别作为用户和商家的账户地址,使用Boneh-Franklin加密方案得到用户和商家的密钥对,用户的密钥对包括用户的公钥和私钥,商家的密钥对包括商家的公钥和私钥;
支付步骤,
用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家;
商家利用商家的私钥对加密后的交易意向进行解密,将解密后的结果、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户;
用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址;
收货提现步骤,用户将订单对应的交易信息和索引信息的存储地址发送给商家,商家验证交易信息是否正确,如果正确则将对应的货物发送给用户,用户收到货物后与智能合约交互,通过智能合约对用户的身份进行身份验证,如果身份验证成功则修改物流状态,并通过第三方支付平台向商家支付相应的金额。
5.如权利要求4所述的基于区块链和智能合约技术的安全支付方法,其特征在于,初始化步骤包括:
第三方支付平台根据交易规则创建智能合约;
分别初始化用户和商家的以太坊地址Uaddr和Saddr;
采用BF基于身份的加密方案通过密钥生成器生成用户的私钥和公钥,商家的私钥和公钥。
6.如权利要求4所述的基于区块链和智能合约技术的安全支付方法,其特征在于,支付步骤中,用户利用商家的公钥对交易意向进行加密,并将加密后的交易意向以及用户的账户地址一起发送给商家,包括:
用户利用商家的公钥对交易意向进行加密,具体包括:用户随机选取设置四个参数V、W、T、r,其中V、W、T用于构成加密后的交易意向c′,V为检验消息的安全性的参数,W为商家在解密过程中求解α的参数,T为商家解密过程中求解明文c的参数,r为一个哈希值,lm表示消息的比特长度;依次计算r=H3(α,c),V=r*P, 和其中,{H1,H2,H3,H4}为四个安全的Hash函数:H1:{0,1}*→G1,H2:H3:H4:P为G1的一个生成元;Ppud为系统公钥,QS为商家的公钥;
用户将加密后的交易意向c′=(V,W,T)和用户的以太坊地址Uaddr一同发送给商家。
7.如权利要求4所述的基于区块链和智能合约技术的安全支付方法,其特征在于,支付步骤中,商家利用商家的私钥对加密后的交易意向进行解密,并将解密后的结果、交易金额和货物信息打包成一个订单并进行加密处理,然后存储至IPFS中,通过IPFS生成加密订单的索引信息并返回给商家,通过商家发送给用户,包括:
商家使用商家的私钥SS对加密后的交易意向c′进行解密,具体包括:计算 计算其中m作为解密后的交易意向,接着设置一个参数r′作为一个哈希值,r′=H3(α′,m),并检查等式V=r′*P是否成立,如果成立,则接受该密文并返回m,否则不接受c′;
将交易金额q和货物信息k打包成为一个订单order,并使用用户的公钥QU对order进行加密,加密过程包括:随机选取β∈{0,1}lm,设置一个哈希值t和三个参数O、Q、D,其中O、Q、D用于构成加密后的订单信息order′,O为用于检验的参数,Q为用户对订单解密过程中求解β的参数,D为用户对订单解密过程中求出原始订单明文的参数;依次计算t=H3(β,order),O=t*P,和得到加密后的订单order′=(O,Q,D),其中,{H2,H3,H4}为三个安全的Hash函数:H2:H3: H4:P为G1的一个生成元;Ppud为系统公钥,QU为用户的公钥;
商家将加密后的订单order′上传至星际文件系统中,通过星际文件系统返回订单对应的索引信息index;
商家将订单对应的索引信息index发送给用户。
8.如权利要求4所述的基于区块链和智能合约技术的安全支付方法,其特征在于,支付步骤中,用户通过调用智能合约向第三方支付平台进行支付操作,并将订单的索引信息上传至智能合约,其中,第三方支付平台采用区块链和智能合约技术,通过区块链对订单的索引信息进行存储,并向用户返回与订单对应的交易信息和索引信息的存储地址,包括:
用户通过调用智能合约SC向第三方支付平台Payment Part进行支付操作;
用户将订单的索引信息index上传至智能合约;
智能合约将用户向第三方支付平台支付的交易金额、用户的以太坊地址Uaddr以及index一同存储到区块链Block-chain中,当区块链存储成功将两个交易散列Transactionhash给智能合约,其中两个Transactionhash分别为用户向第三方支付平台支付的交易信息、index在区块链中的存储地址;
智能合约将两个交易散列一同返回给用户,并且扣除用户的金额;
智能合约与第三方支付平台进行交互,将用户支付的金额转入第三方支付平台的账户中,第三方支付平台的账户增加相应的金额。
9.如权利要求8所述的基于区块链和智能合约技术的安全支付方法,其特征在于,收货提现步骤,具体包括:
用户将智能合约发送的两个交易散列发送给商家;
商家基于接收的交易散列向区块链请求获取交易信息,区块链将根据交易散列中索引信息的存储地址检索到交易信息,将交易金额、用户的以太坊地址以及订单的索引信息index返回给商家;
商家根据区块链返回的交易金额和以太坊地址进行验证,验证用户支付的金额数以及账户是否正确,当正确时验证成功,商家将货物发送给用户;
当用户收到货物后,输入身份信息触发智能合约进行身份验证,将身份验证信息发送至智能合约,身份验证信息包括用户的伪身份IDU和用户的以太坊地址;
当身份验证成功,通过调用智能合约来修改用户伪身份IDU的物流状态status={“已发货”},通过智能合约扣除第三方支付平台账户上的金额;
智能合约将第三方支付平台支付的金额发送给商家,商家的账户增加对应的金额,并将第三方支付平台向商家支付的交易结果返回给第三方支付平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211164358.9A CN115545706A (zh) | 2022-09-23 | 2022-09-23 | 一种基于区块链和智能合约技术的安全支付系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211164358.9A CN115545706A (zh) | 2022-09-23 | 2022-09-23 | 一种基于区块链和智能合约技术的安全支付系统及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115545706A true CN115545706A (zh) | 2022-12-30 |
Family
ID=84730098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211164358.9A Pending CN115545706A (zh) | 2022-09-23 | 2022-09-23 | 一种基于区块链和智能合约技术的安全支付系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115545706A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116781370A (zh) * | 2023-07-04 | 2023-09-19 | 姜斌 | 一种信息安全的区块链跨境电商互交易系统及方法 |
-
2022
- 2022-09-23 CN CN202211164358.9A patent/CN115545706A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116781370A (zh) * | 2023-07-04 | 2023-09-19 | 姜斌 | 一种信息安全的区块链跨境电商互交易系统及方法 |
CN116781370B (zh) * | 2023-07-04 | 2024-04-05 | 深圳百流科技有限公司 | 一种信息安全的区块链跨境电商互交易系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6023509A (en) | Digital signature purpose encoding | |
US20210049600A1 (en) | Digital Asset Delivery Network | |
US6269445B1 (en) | Electronic shopping method, electronic shopping system and document authenticating method relating thereto | |
US20190356481A1 (en) | System and method for securing digital assets | |
KR20200106130A (ko) | 블록체인 내의 스마트 계약에 기초하여 거래 활동의 민감한 데이터를 보호하기 위한 방법 및 디바이스 | |
CN109697365A (zh) | 信息处理方法及区块链节点、电子设备 | |
CN108292402A (zh) | 用于信息的安全交换的公共秘密的确定和层级确定性密钥 | |
KR102302955B1 (ko) | 자산의 토큰화를 통해 현물 자산 거래를 가능하게 하는 블록체인 및 클라우드 기반의 자산 거래 플랫폼 서버 및 그 동작 방법 | |
CN107210914A (zh) | 用于安全凭证供应的方法 | |
WO1998052316A1 (en) | Initial secret key establishment including facilities for verification of identity | |
CN101969640B (zh) | 一种用于移动终端设备的计算密钥生成方法 | |
CN109657424B (zh) | 一种基于区块链的遥感成果版权管理方法 | |
CN113435888B (zh) | 一种账户数据处理方法、装置、设备及存储介质 | |
JP2004229308A (ja) | 電子チップの不正行為に対する保護の非対称暗号通信法 | |
CN110941858B (zh) | 一种基于零知识证明的个人网络消费信息保护方法 | |
CN108833117B (zh) | 一种私钥存储和读取方法、装置及硬件设备 | |
US11651429B2 (en) | Trading system and recording medium | |
CN108805574B (zh) | 基于隐私保护的交易方法和系统 | |
US20150304103A1 (en) | Method of generating unique and hardly predictable numbers of coupons | |
CN115545706A (zh) | 一种基于区块链和智能合约技术的安全支付系统及方法 | |
CN112862477B (zh) | 一种基于区块链的数字商品原子交易方法及系统 | |
JP7268279B2 (ja) | オンシェルフ取引デバイスのための非接触型支払として受付可能なセキュアなモバイル支払及びバックオフィスアプリケーションソリューション | |
CN110942292B (zh) | 一种用户信息处理方法、装置、电子设备以及存储介质 | |
Shook et al. | A smart contract refereed data retrieval protocol with a provably low collateral requirement | |
KR102447334B1 (ko) | 금과 디지털 골드 토큰을 기초로 전자 상거래를 가능하게 하는 클라우드 기반의 전자 상거래 플랫폼 서버 및 그 동작 방법 |
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 |