【技术实现步骤摘要】
用户余额隐私保护和授权监管下的交易删除方法及系统
本专利技术涉及区块链
,具体地,涉及用户余额隐私保护和授权监管下的交易删除方法及系统。尤其地,涉及一种适用于联盟链的用户余额隐私保护和授权监管下的交易删除方案。
技术介绍
1.1区块链及联盟链1)区块链,本质上是一个去中心化的或多中心化的、公共的分布式总账,是以时间先后顺序排列的数据区块。区块链中,每一个区块中保存的是若干条交易记录,使用密码学的方法生成区块以保证其中数据不可篡改、不可伪造、可以验证;使用共识算法使全网所有节点完成对区块的认可。区块链按照参与记账节点的开放程度可分为:任何节点都可以参与交易验证、区块创建及共识过程的公有链;指定的参与方独享记账权的私有链;预先指定一些节点作为记账节点,其他接入节点可参与交易的联盟链。2)联盟链,是共识过程受到预选节点控制的区块链,只针对某个特定群体的成员和有限的第三方开放。其内部指定多个预选节点为记账人,每个块的生成由所有的预选的记账节点共同决定。不同于公链的完全去中心化,联盟链在某种程度上只属于联盟内部的成员所有,数据的访问权限一般只限于联盟内的机构及其用户,不默认公开。联盟链的节点数目有限,角色明确,因此,较于公链,达成共识的速度要快,即处理交易的速度要快。联盟链兼顾了公有链的去中心化、私有链的高效,同时对监管友好。这里假定联盟链中采用的是以比特币的链式结构为代表的记账结构。1.2基本技术模块1)承诺算法①成员:承诺方和接收方。②目的:承诺方向接收方承诺一个值。接 ...
【技术保护点】
1.一种用户余额隐私保护和授权监管下的交易删除方法,其特征在于,包括/n参与各方的初始化步骤:定义成员节点的角色分类及功能,生成成员节点的公私钥,生成授权监管方的监管参数;/n转账的发起步骤:令普通用户发起转账交易,将转账交易信息发送给记账节点、授权监管方和转账接收方;/n记账节点记账步骤:记账节点接收转账交易信息,验证收到的转账交易信息是否合法,若合法则接受交易,若不合法则拒绝交易;/n转账的接收步骤:转账接收方接收转账交易信息,验证收到的转账交易信息是否合法,若合法则接受交易,若不合法则拒绝交易;/n授权监管方的授权监管步骤:授权监管方监察用户余额,并且可对包含恶意交易信息的交易进行删除。/n
【技术特征摘要】
1.一种用户余额隐私保护和授权监管下的交易删除方法,其特征在于,包括
参与各方的初始化步骤:定义成员节点的角色分类及功能,生成成员节点的公私钥,生成授权监管方的监管参数;
转账的发起步骤:令普通用户发起转账交易,将转账交易信息发送给记账节点、授权监管方和转账接收方;
记账节点记账步骤:记账节点接收转账交易信息,验证收到的转账交易信息是否合法,若合法则接受交易,若不合法则拒绝交易;
转账的接收步骤:转账接收方接收转账交易信息,验证收到的转账交易信息是否合法,若合法则接受交易,若不合法则拒绝交易;
授权监管方的授权监管步骤:授权监管方监察用户余额,并且可对包含恶意交易信息的交易进行删除。
2.根据权利要求1所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述定义成员节点的角色分类及功能:
联盟链中的主要角色有三种:授权监管方、记账节点、普通用户;
所述授权监管方是整个联盟链交易的监管者。在此方案中授权监管方默认已知各普通用户在联盟链中的初始的账户余额;
所述记账节点是联盟链中预先选定的多个节点。记账节点参与记账共识与账本的同步。联盟链中区块的生成由记账节点间通过安全共识协议决定。
所述普通用户参与联盟链中的交易,并将交易提交给记账节点,但不参与记账行为或区块生成。
3.根据权利要求1所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述生成成员节点的公私钥:
由可信第三方作为负责发放和管理数字证书的权威机构进行身份认证;
所述可信第三方承担公钥体系中公钥的合法性检验的责任;
所述成员节点通过与证书颁发机构的交互获得自己的公私钥对以及对应的公钥证书,符号标记如下:
授权监管方M:公私钥对记为(PKM,SKM);
记账节点Li:公私钥对记为
普通节点Ui:公私钥对记为
4.根据权利要求1所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述生成授权监管方的监管参数:
由授权监管方生成变色龙哈希函数的公私钥对(hk,tk),并将哈希公钥hk发送给全体记账节点,将哈希私钥tk保存下来;
所述授权监管方生成PedersenCommitment的公共参数,并广播给全体成员;
所述授权监管方生成NIZK所用的公共参数,并广播给全体成员;
针对NIZK,规定语言L={x|x=(cm1,cm2,cm3,y,y2)};
其中,
x的证据w=(r1,r2,r3,v1,v2,v3,r,r′),满足:
cmi=Comm(vi,ri),i∈{1,2,3};
v1-v2=v3,vi≥0,i∈{1,2,3};
设EncPk(m,r)代表用公钥加密算法Enc、公钥PK、随机数r加密消息m,则定义
对L中的一个实例x,借助其证据w,生成证明,记为Π。
5.根据权利要求1所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述转账的发起步骤:
转账交易消息格式为:trans=(cm1,cm2,cm3,y,y2,Π);
其中,
cm1,cm2,cm3均表示对金额的承诺;
r1为转帐发起方本地存储的一个数值;
r2,r3为转账发起方所选择的两个随机数;
转帐发起方计算关于自身当前余额v1、转账金额v2,以及交易后自身余额v3的承诺cmi=Comm(vi,ri),i∈{1,2,3},并将r3保存在本地;
y,y2用于将交易金额v2及对交易金额承诺所使用的随机数r2通过公钥加密的方式发送给授权监管方和转账接收方;
转账发起方选择随机数r和r',作为公钥加密的参数,分别用于使用授权监管方公钥PKM对(v2,r2)加密得到密文y,即使用交易接收方UR的公钥对(v2,r2)加密得到密文y2,
Π用于其他节点使用NIZK证明验证算法对此交易消息合法性的进行验证;
转账发起方利用证据w=(ri,vi,r,r'),i∈{1,2,3},通过NIZK证明生成算法Prove(w,x)计算关于实例x=(cm1,cm2,cm3,y,y2)∈L的证明Π。
6.根据权利要求4所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述记账节点记账步骤:
设当前记账节点所维护的转账发起方的余额的承诺为cm,转账接收方的余额的承诺为cm'1,记账节点收到交易消息trans,得到(cm1,cm2,cm3,y,y2,Π);
使用Π通过NIZK验证算法Verf(x,Π)验证该交易消息是否合法,其中实例x=(cm1,cm2,cm3,y,y2):
若该交易消息不合法,则拒绝此交易;
若该交易消息合法:
对于转账发起方,记账节点将维护的发送方的余额的承诺cm替换为cm3;
对于转账接收方,记账节点计算交易后其余额承诺cm'3=cm'1·cm2。cm'3即是对转账接收方的原余额与接收到的转账金额的和的承诺值,记账节点将维护的转账接收方的余额的承诺cm'1替换为cm'3。
7.根据权利要求4所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述转账的接收步骤:
设当前转账接收方的余额为v',余额的承诺所使用的本地存储的盲化因子为r'1。转账接收方收到交易消息trans后,得到(cm1,cm2,cm3,y,y2,Π);
使用Π通过NIZK验证算法Verf(x,Π)验证该交易消息是否合法,其中实例x=(cm1,cm2,cm3,y,y2):
若该交易消息不合法,则拒绝此交易;
若该交易消息合法:
表明y2中所加密金额与cm2中所承诺金额一致;
接收方利用其私钥通过公钥解密算法解密y2,确认转账金额v2;
计算r'3=r'1+r2,并存储在本地。接收方接收转账交易后的余额为v'3=v'+v2,对应转账接收方当前的余额承诺所使用的盲化因子为r'3。
8.根据权利要求4所述的用户余额隐私保护和授权监管下的交易删除方法,其特征在于,所述授权监管方的授权监管步骤:
步骤S1:授权监管方监察用户余额:
当授权监管方收到交易消息trans后,得到(cm1,cm2,cm3,y,y2,Π);
使用Π通过NIZK验证算法Verf(x,Π)验证该交易消息是否合法,其中实例x=(cm1,cm2,cm3,y,y2);
若该交易消息不合法,则拒绝此交易;
若该交易消息合法:
表明y中所加密金额与cm2中所承诺金额一致;
授权监管方利用其私钥SKM通过公钥解密算法解密y,查看转账金额v2;
由于授权监管方知道各用户初始余额情况与交易金额情况,因而授权监管方根据该余额以及交易金额更新与这笔交易相关的用户的账户信息,从而得到用户的最新余额;
步骤S2:授权监管方删除包含恶意交易信息的区块中的恶意交易信息;
记账节点利用安全共识协议将交易信息打包成区块...
【专利技术属性】
技术研发人员:霍鑫磊,龙宇,刘志强,刘振,谷大武,
申请(专利权)人:上海交通大学,
类型:发明
国别省市:上海;31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。