一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种区块链隐私的计算机交易方法与流程

2022-04-27 02:17:09 来源:中国专利 TAG:


1.本发明涉及区块链上交易领域,涉及一种区块链隐私的计算机交易方法。


背景技术:

2.传统区块链系统基于密码学哈希算法、椭圆曲线签名机制可以保障开放区块链网络中账本数据的防篡改、可追溯,区块链最初的设计使得账户数据对每个参与方是可见的,即链上所有用户的账本对链上各参与方都是公开透明的,包括交易双方身份、交易金额以及交易双方交易前后的账户余额在内的所有交易信息都是公开的,任何组织都可以访问到所有的交易信息,这直接导致了区块链系统的账户隐私泄露问题。因此,需要考虑基于隐私的区块链交易方案。


技术实现要素:

3.有鉴于此,本发明提供一种解决或部分解决上述问题的区块链隐私的交易方法。
4.为达到上述技术方案的效果,本发明的技术方案为:
5.交易方法应用于隐私交易系统,隐私交易系统包含撮合模块、递送模块、收受模块,隐私交易系统用于实际进行交易业务的系统,隐私交易系统上设置一个以上的交易节点、担保节点、聚合节点、交互节点、抓取节点,交易节点为在隐私交易系统里进行交易的节点,撮合模块用于促进交易的双方完成交易,抓取节点用于在网上抓取交易的产品的市场价格,交易方法包含出价过程、数据发送过程、数据交互过程、数据接收过程;
6.出价过程用于描述交易双方的出价成交过程,具体过程为:
7.交易节点向撮合模块申请进行交易后,交易节点转换为卖家节点,卖家节点用于说明交易时卖方的节点;卖家节点的编号设置为i,i为表示成十六进制的正整数,由隐私交易系统开始运行后,由隐私交易系统运行开始,撮合模块为转换成的卖家节点按照转换的先后顺序进行编号;卖家节点开始出价,卖家节点的出价值qi在[α δi,i(a)
±
ε]之间,其中,α为清货的产品的价格,即供求的产品的数量等于需要买卖的产品的数量时产品的价格,δi为根据卖家节点i的等级确定的能在清货的产品的价格上进行上浮的值,δ为在清货的产品的价格上进行上浮的值,i(a)为当输入参数为a,输出产品的价格值的函数,i(a)复制单个交易节点的供求关系曲线y,a为卖家节点需要交易的产品的数量;ε为在i(a)的基础上上下浮动的价格值,并且保证α δi≤i(a)
±
ε恒成立;卖家节点将需要交易的商品以及出价值qi广播并写在并行的区块链条上,只要记录时区块链条上没有其他卖家节点正在记录,即可记录进区块链条上,如果有其他卖家节点正在记录,则记录在下一条没有其他卖家节点记录的区块链条上,记录后将记录的区块链条的编号、区块的高度、记录在区块上的位置相对区块的首地址的偏移按照顺序组合成交易的牌号,交易的牌号用于说明卖家节点交易记录的情况;在广播后,如果有交易节点进行交易,交易节点进行摘牌动作,在出价值qi之下浮动b都为可以成交的值,b为成交时可偏移的价格值;交易节点进行摘牌时,按照时间的先后顺序进行摘牌,如果一个以上的交易节点需要摘牌,按照交易的总额、出价价格的高低、交
易节点的等级的高低先后进行比较,比较中胜出的交易节点获得交易权,获得交易权的交易节点转换为买家节点;买家节点用于说明交易时买方的节点;买家节点交易的数量必须在卖家节点需要交易的产品的数量一半以上,买家节点获得交易权后,将交易的牌号摘下,可将除去买家节点交易的数量剩余需要交易的数量转让给其他交易节点,其余交易节点在担保节点的担保之下进行交易,交易的价格允许在买家节点获得的价格之上上浮10%,如果没有交易节点接收,自动按照交易节点出价的高低进行成交,将最终交易的产品数量、交易的产品的价格、交易的双方节点、交易的牌号记录打包成交易数据;交易数据用于说明交易的相关数据;担保节点用于交易时在买家节点以及卖家节点之间进行担保的节点;撮合模块用于服务交易节点进行交易的模块;
[0008]
抓取节点抓取上一个交易周期的市场价格以及供应的产品数量,绘制供求关系曲线函数r,供求关系曲线函数r的横坐标为产品的需求量,纵坐标为产品的平均交易价格;然后,根据供求关系曲线r绘制单个交易节点的供求关系曲线y,单个交易节点的供求关系曲线y的纵坐标的值与供求关系曲线r保持一致,横坐标的值在供求关系曲线r的基础上,产品的需求量除以参与交易产品成功的交易节点的最大数量等于单个交易节点的供求关系曲线y的横坐标的值,从而绘制出单个交易节点的供求关系曲线y;交易周期用于说明交易的时间周期,由管理员确定;抓取节点用于绘制供求关系曲线函数;第一个交易周期的供求关系曲线函数r以及单个交易节点的供求关系曲线y由管理员绘制;
[0009]
递送模块对交易数据进行加密,加密的过程为,首先,递送模块为每一个交易数据产生一个大随机数,产生后放入历史缓冲块,历史缓冲块用于放置产生过的大随机数,并比对大随机数与历史缓冲块中的数,如果有相同的,重新产生大随机数,如果没有相同的,聚合节点领加密任务,获得加密任务后,当有查询节点需要查询时,使用查询节点的公钥加密大随机数,形成加密随机数;递送模块用于对交易数据进行加密,聚合节点用于服务查询节点进行查询的节点,查询节点用于说明查询交易数据的节点,加密随机数用于验证查询节点接收数据验证查询节点的身份;
[0010]
数据发送过程用于表示交易数据的存放过程以及发送过程,具体为:
[0011]
聚合节点在交易数据中设置主搜索键,主搜素键为最终交易的产品数量、交易的产品的价格、交易的双方节点、交易的牌号、交易的产品中的一项,主搜素键用于查询节点搜索交易数据;聚合节点存放时同时产生存放数据,将大随机数加上交易数据与存放数据一起打包使用哈希加密后构成交易存放数据放入数据区块进行存放,存放数据为存放的数据区块的高度以及分区号,分区号为交易数据中的交易产品的首字母加上分数号,分区号用于标识交易存放数据的信息,分数号为按照存放数据的顺序被分配的符号,分数号按照26个小写字母的顺序,0到9数字的顺序进行选择,每当产生一个存放数据,顺序选择一个作为一个分数号;数据区块为存放数据的区块链条上的区块,交易存放数据用于说明存放到数据区块上的交易数据的构成形式;
[0012]
聚合节点对交易数据进行分层,交易数据分为可见数据以及不可见数据,其中可见数据中包含主搜素键,不可见数据包含交易数据中除了可见数据以外的数据;可见数据为节点可见的数据,不可见数据为节点不可见的数据;聚合节点的私钥加密不可见数据,并在交易数据上签名,形成二重加密数据,二重加密数据用于说明聚合节点加密后的数据;当节点需要查询时,转换为查询节点,查询节点根据主搜素键查询到需要查询的数据,交互节
点使用查询节点的公钥对二重加密数据进行加密构成三重加密数据,聚合节点将加密随机数、交易存放数据、三重加密数据构成数据组;数据组被发送给收受模块;交互节点用于对不可见数据进一步加密;三重加密数据用于对二重加密数据进一步加密;数据组用于表示发送给收受模块的交易数据的形式;
[0013]
数据接收过程为,数据接收过程用于表示交易数据的接收过程,具体为:
[0014]
收受模块接收到数据组以及需要发送的查询节点,发送给查询节点,查询节点接收到数据组后,将加密随机数使用查询节点的私钥进行解密,解密回大随机数;查询节点接收到三重加密数据并使用查询节点的私钥进行解密,从可见数据取出主搜素键进行比对,确认数据是否是需要搜索的数据,使用聚合节点的公钥进行解密,取出不可见数据;聚合节点取出存放数据并与不可见数据打包使用哈希加密,并与交易存放数据进行比对,比对成功后查询节点才能使用数据;收受模块用于接收数据组并发放给查询节点。
[0015]
本发明的有益成果是:本发明提出了一种区块链隐私的计算机交易方法,描述了交易的双方出价以及成交过程,并且描述了交易数据的发送以及接收过程,结合区块链技术中的经典加密技术,将随机数与交易数据组合,使用多种加密算法进行多重加密,进行分步骤的验证以防止数据的篡改。
具体实施方式
[0016]
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合实施例,对本发明进行详细的说明。应当说明的是,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明,能实现同样功能的产品属于等同替换和改进,均包含在本发明的保护范围之内。
[0017]
实施例1:然而,在金融业等企业级应用系统的交易中,金融交易信息往往是敏感信息,非业务相关方不能查看,且同时这些交易需要满足监管机构的监管审计要求。目前,大部分区块链并没有满足用户隐私性要求,这也是阻碍区块链技术在金融等企业机构应用发展的一大原因。
[0018]
为解决上述区块链问题,本发明提供了范围可验证的基于同态加密和零知识证明的资产隐私交易解决方案,确保用户交易过程中隐私信息可验证安全。
[0019]
a向b转账10元,需要区块链节点记账,但是交易双方不想让区块链节点知道其交易金额及最新余额。同态加密技术可以实现无密钥方对密文的计算,密文计算无须经过密钥方,既可以减少通信代价又可以转移计算任务,平衡各方的计算代价。
[0020]
提供elgamal同态加密改进算法,对用户的交易数据用其公钥进行加密保护,交易的时候都是密文运算,最终账本中加密保存,即使节点被攻破,获取到账本记录也无法解密;另一方面提供交易发起方交易后账户余额的零知识范围证明校验,背书节点能够对密文进行背书,无需解密就能校验交易的正确性,如校验转账金额是否为负数,从而识别出恶意交易风险,保证了智能合约的正确执行。
[0021]
实施例2:
[0022]
同态加密体制是一种基于数学难题(比如大整数因子分解难题、离散对数难题、环上的错误学习难题等)的计算复杂性理论的密码学技术。该密码体制的独有的特性是:对经过同态加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处
理未加密的原始数据得到的输出结果是一样的。目前同态加密体制主要分为加法同态加密算法、乘法同态加密算法、全同态加密算法。所涉及的是改进的elgamal加法同态加密体制,目前已被证明是128比特安全可用的公钥加密体制。具体地,该公钥加密体制由密钥生成算法keygen、加密算法enc、解密算法dec三个子算法构成;
[0023]
原eigamal加密体制具有乘法同态性,天然不适用于区块链提现交易场景。而改进eigamal加密体制不仅可以加密传输数据保证数据在网络传输信道的安全性,而且其加法同态性质在隐私交易中也相当重要,具体表现为:一方面适用于资产合法拥有者可以对资产密文进行合法解密,另一方面非资产拥有者可以根据链上存储的提现交易发起方的余额密文和提现金额密文,计算更新提现交易发起方交易后的余额密文,无需解密计算,同时无法知道资产密文对应的明文数据,避免了公共账本的交易发方交易前后账户余额的公开透明性,增加了隐私性。
[0024]
本发明实现不公开隐私信息前提下证明关于隐私信息论述st正确性的隐私计算协议。例如,在不公开数据本身前提下,可证明两个不同密钥加密的密文对应的明文数据相等。论述st抽象描述为:st:{(a,b,c,...;x,y,z,...):f(a,b,c,...,x,y,z,...)}
[0025]
具体地,证明者可使验证者通过公开数据a,b,c,...相信其知道使f(a,b,c,...,x,z,...)为真的隐私数据x,y,z,...。在这一过程中,验证者不能直接或间接获取任何有关隐私信息的“知识”。
[0026]
本发明所使用的非交互式zkp由(setup,prove,verify)三阶段构成,其中,(1)setup初始化阶段;(2)prove证明生成阶段:由证明者执行,根据公开数据、隐私数据生成关于论述st为真的证明数据π;(3)verify证明校验阶段:有证明者执行,根据公开数据以及π校验论述st的正确性。
[0027]
区块链隐私交易方法提供区块链账户的隐私交易功能,用于隐藏交易双方的交易前后的账户余额和交易金额,使非交易双方无法读取交易信息,基于改进的加法同态eigamal加密算法,该隐私交易方法需要证明的零知识论述st
transfer
为:其中,(1)交易发起方的私钥sk、交易金额b
*
、交易发起方交易后的账户余额b

,交易金额密文相关的交易随机数r为隐私转账交易的隐私保护的不公开数据;(2)椭圆曲线生成元g、交易发起方公钥pk、交易收款方公钥pk、交易发起方的交易前账户余额密文对(c
l
,cr)、交易金额密文对(c,d)、(,d)。
[0028]
本发明的有益成果是:本发明提出了一种区块链隐私的计算机交易方法,描述了交易的双方出价以及成交过程,并且描述了交易数据的发送以及接收过程,结合区块链技术中的经典加密技术,将随机数与交易数据组合,使用多种加密算法进行多重加密,进行分步骤的验证以防止数据的篡改。
[0029]
以上所述仅为本发明之较佳实施例,并非用以限定本发明的权利要求保护范围。同时以上说明,对于相关技术领域的技术人员应可以理解及实施,因此其他基于本发明所揭示内容所完成的等同改变,均应包含在本权利要求书的涵盖范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献