CN113034276A - 一种区块链隐私交易解决方法 - Google Patents
一种区块链隐私交易解决方法 Download PDFInfo
- Publication number
- CN113034276A CN113034276A CN202011588751.1A CN202011588751A CN113034276A CN 113034276 A CN113034276 A CN 113034276A CN 202011588751 A CN202011588751 A CN 202011588751A CN 113034276 A CN113034276 A CN 113034276A
- Authority
- CN
- China
- Prior art keywords
- account
- transfer
- contract
- transaction
- ciphertext
- 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
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000012546 transfer Methods 0.000 claims abstract description 91
- 238000012795 verification Methods 0.000 claims abstract description 15
- 230000002452 interceptive effect Effects 0.000 claims description 8
- 238000010276 construction Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 5
- RWSOTUBLDIXVET-UHFFFAOYSA-N Dihydrogen sulfide Chemical compound S RWSOTUBLDIXVET-UHFFFAOYSA-N 0.000 claims description 3
- 230000003247 decreasing effect Effects 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims description 3
- 238000013461 design Methods 0.000 abstract description 6
- 238000011161 development Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003071 parasitic effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013068 supply chain management Methods 0.000 description 1
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
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
Abstract
本发明利用一种区块链隐私交易解决方法,解决方法被用在区块链上,客户端保存所有发出的转账和取现交易用到的盲因子r。所有过程的r相加可以得到目标密客户端应保存所有发出转账和取现用到的盲因子r,只要监管部门能获知密文中的r,他就能在不知道私钥的情况下解出明文。由于当前链上密文的盲因子是之前一系列交易演变出的,所以为了得到当前的r,需要获知之前它所有涉及到的交易的r,本发明对这人协议的设计非常复杂,需要打乱,移位,重加密,它的证明生成和验证算法是整个隐私交易协议的核心。限制转账金额上限+穷举。
Description
技术领域
本发明属于区块链领域,具体涉及基于一种区块链隐私交易解决方法的方法。
背景技术
区块链技术应用已延伸到数字金融、物联网、智能制造、供应链管理、数字资产交易等多个领域。目前都在加快布局区块链技术发展。要使在区块链领域拥有良好基础,要加快推动区块链技术和产业创新发展,积极推进区块链和经济社会融合发展。区块链隐私交易是在区块链中非常重要的,协议的设计是否优良,需要更多的设计思路,要打乱,移位,重加密,它的证明生成和验证算法是整个隐私交易协议的核心。还要能够节省空间固然很好,但本发明对该项技术的初步分析显示这会使得验证速度比旧的范围证明快很多。要验证单一的64位证明需要超过200个标量点乘法运算,每个运算需要50微秒,而旧的范围证明只需要128。并且本发明可以用于在任意证明条件。也可以原生支持椭圆曲线(EC)公钥和Pedersen承诺。此外,在标准假设下拥有全部128位安全系统,不需要可启动信任。
发明内容
为克服现有技术的不足,本发明提供一种区块链隐私交易解决方法,为达此目的,本发明采用以下技术方案:
一种区块链隐私交易解决方法,包括以下步骤:步骤一:在区块链中进行合约接口构造,将入口合约命名为ZSC.sol,即zsc合约,其中.sol为解决方案的缩写,表示用于构造合约接口;步骤二:在入口合约的构造函数里开始指定另外一个积分标准合约,所述积分标准合约用于使用规范来规定积分的类型,积分金额,转移方式,余额表示;步骤三:zsc合约提供3种基本功能的交易类型:存入交易,取出交易,转账交易;步骤四:设定基于zsc合约的实现的存入交易是明账户转暗账户交易,明账户对应一个所述积分标准合约里的一个账户,zsc合约在构造函数里必须和所述积分标准合约其中的一个积分标准合约绑定;步骤五:存入交易的操作为:让积分标准合约中的一个账户转入积分到zsc合约地址在所述积分标准合约其中的一个积分标准合约的账户中,同时zsc合约按照积分的金额对积分的金额创建出一个初始密文;步骤六:取出交易是暗账户转明账户交易,需要明确指定需要转出金额的数量,积分标准合约里的积分转移可以不用对转出金额的数量进行隐私保护,仅需要在不透漏目前暗账户里有多少余额的前提下证明取出的积分的金额是小于这个余额的,且证明发送者能提供一个私钥能和暗账户的积分余额密文的公钥对应;步骤七:设定取出交易中的取出的积分账户应该要和存入的积分账户相同,也可以设定为不同;步骤八:转账交易可以由不对应n个匿名集的任意积分标准合约的账户发起,n为自然数;转账交易为交互式挑战和应答,也可以优化为非交互式的;转帐交易中的挑战和应答中n个匿名集对应的n个密文里只有两个是对应value和-value的,其他都对应0;value表示为转帐交易增加的金额,-value表示为转帐交易减少的金额,对应-value的密文的位置和私密输入的转账者在n个匿名集中的位置是匹配的;转账者提供的私钥和对应-value的密文的位置的密文对应的公钥是匹配的以上的校验过程是在区块链上完成的,以保障在区块链上完成验证后不知道转账者在其中的位置,以用环签名的方式,能验出是其中一个转账者进行了签名却不知道是具体转账者签的名;步骤九:开始限制上限和穷举,限制转账金额的上限为2的32次方,从而限定了穷举的空间;转账者额外发送一个密文,用接收者的公钥加密,这个密文加密用的是数映射到点的方式来加密转账金额,从而使接收者能够解开,并验证金额确实和对转账金额密文解开的g^b是匹配的;g是转帐者和接收者选定的一个数,g是可公开的,b是转帐者或者接收者随机选择的一个转帐数,b是保密的,g^b是用于保证在密钥交换算法中使转帐者和接收者双方在不安全的通道中建立一个相同的密钥;步骤十,将若干区块划分为一个朝代,每个朝代转出和转入时,使用延迟转入的方式来规避并发,在每次跨朝代时将待结算的积分的金额结算至每个账户,每个朝代对一个账户的第二笔转出就必须加上待结算金额来校验;对于提供不出首笔转帐记录证明的转账需要加上待结算金额来进行校验,从而对发送吞吐量要求比较高的用户可以以匿名集错开或时间段错开的方式高度进行交易和结算;步骤十一:为方便zsc合约与其他业务合约的互操作性,zsc合约提供加锁和解锁接口,用于暂时的将某个暗账户的使用权让渡给其他业务合约中的某个业务合约,这期间只有该某个业务合约有权操作所述某个暗账户,该某个业务合约使用完毕使用调用解锁接口将所述某个暗账户的使用权交还zsc合约;步骤十二:区块链上每个暗账户的私钥是公钥的哈希值推导出的地址,value对应两个acc[yHash]密文,pending[yHash]密文,acc[yHash]密文是上面所述的账户的当前金额,pending[yHash]密文是当前朝代待结算的金额;每一次匿名转账交易后,所有匿名集里的账户的密文都要发生变动,包括n-2个变化金额为0的账户;步骤十三:客户端保存所有发出的转账和取现交易用到的盲因子r*;所有过程的r相加可以得到目前客户端应保存所有发出转账和取现用到的盲因子r*,当前链上密文的r是之前一系列交易演变出的数字;当监管部门获知密文中的盲因子r*,就能在不知道私钥的情况下解出明文,但为了得到当前的盲因子r*,需要获知之前所述盲因子r*所有涉及到的交易的r。
具体实施方式
下面结合具体实施方式来进一步说明本发明的技术方案。
有如下定义∶
DL={(æ,w)æ=(p,q,g,h),ord(g)=ord(h)=q,h=g"}
其中,p,q为素数,g,h∈Z,w∈Z,R为二进制rereltion,R表示为{0,1}*×{0,1}*。满足上面条件的(2,u)∈R成立。
以上,x对于ProverP和VerifierV均可见,为publiinput,而满足(x,w)∈R的w为ProverP的privateinput,对VerifierV不可见。
场景描述为,p为素数,q为p-1的最大素数因子,g为Z;中order为q的元素,某w仅P可知,h=g"modp,α=(p,4,g,h)对P/均可见,为publicinput。在实际应用时,p,q通常长时间固定不变,关于p,q的素数性V可以鉴定一次即可,不需要每次都鉴定。详细的流程分为三大步
1)P选择随机数r∈Zq,r仅P知,对V不可见,P计算a=g'modp,P将a值发送给V;2)V选择t-bit的随机数chlengee∈Z(此处的t为固定的,且2'<q),V将e值发送给P;3)P计算z=r+ewmodq,P将z值发送给V,V判断g=ah'modp是否成立,若成立,则接受认为P确实知道正确的w值(满足h=g"modp)。以上流程错误判断的概率为2t。
解决本发明的问题非常重要。这使得本发明能够在普通框架中执行范围证明,而无需在安装庞大复杂的椭圆曲线算术。
更强大。为了限制交易大小,本发明旧的范围证明将交易输出限制在2^32内。这就将交易输出限制在了43BTC内,不过本发明也可以将证明粒度从1中本聪提高到10或者100,或者将最小值改为大于零,以此来提高交易输出的限制。这些方法都是可行的,但执行量非常巨大,削弱了系统自带的隐私性能。这些32位的范围证明大约有2.5KB大,使用AdamBack提出的压缩方法后可以压缩到2KB,而如果是的话则只有610字节大。如果体积只有这么小,那本发明不妨将范围增加到64位,这样就不需要进行任何会损害隐私性能的调整了。增加到64位之后会导致大小从610字节增加到1220字节,实际上64位只有674字节大。
更小。本发明能够让范围大小增加一倍,而证明大小只增加64字节,因为体积是以对数形式增长的。从6log(N)曲线点下降到了2log(N)。使用同样的方法,可以让在同一笔交易内的多个范围证明压缩成为一个,而体积只有小幅增加。两个范围证明聚合在一起大小为738个字节,4个则为802字节,8个则为866字节。而8个64位的经典范围证明的体积则将超过40000字节!
更快。能够节省空间固然很好,但本发明对该项技术的初步分析显示这会使得验证速度比旧的范围证明快很多。要验证单一的64位证明需要超过200个标量点乘法运算,每个运算需要50微秒,而旧的范围证明只需要128。
在区块链中进行合约接口构造,将入口合约命名为ZSC.sol,即zsc合约,其中.sol为解决方案的缩写,表示用于构造合约接口;
在入口合约的构造函数里开始指定另外一个积分标准合约,所述积分标准合约用于使用规范来规定积分的类型,积分金额,转移方式,余额表示;
zsc合约提供3种基本功能的交易类型:存入交易,取出交易,转账交易;
设定基于zsc合约的实现的存入交易是明账户转暗账户交易,明账户对应一个所述积分标准合约里的一个账户,zsc合约在构造函数里必须和所述积分标准合约其中的一个积分标准合约绑定;
存入交易的操作为:让积分标准合约中的一个账户转入积分到zsc合约地址在所述积分标准合约其中的一个积分标准合约的账户中,同时zsc合约按照积分的金额对积分的金额创建出一个初始密文;
取出交易是暗账户转明账户交易,需要明确指定需要转出金额的数量,积分标准合约里的积分转移可以不用对转出金额的数量进行隐私保护,仅需要在不透漏目前暗账户里有多少余额的前提下证明取出的积分的金额是小于这个余额的,且证明发送者能提供一个私钥能和暗账户的积分余额密文的公钥对应;
设定取出交易中的取出的积分账户应该要和存入的积分账户相同,也可以设定为不同;
转账交易可以由不对应n个匿名集的任意积分标准合约的账户发起,n为自然数;转账交易为交互式挑战和应答,也可以优化为非交互式的;转帐交易中的挑战和应答中n个匿名集对应的n个密文里只有两个是对应value和-value的,其他都对应0;value表示为转帐交易增加的金额,-value表示为转帐交易减少的金额,对应-value的密文的位置和私密输入的转账者在n个匿名集中的位置是匹配的;转账者提供的私钥和对应-value的密文的位置的密文对应的公钥是匹配的以上的校验过程是在区块链上完成的,以保障在区块链上完成验证后不知道转账者在其中的位置,以用环签名的方式,能验出是其中一个转账者进行了签名却不知道是具体转账者签的名;
开始限制上限和穷举,限制转账金额的上限为2的32次方,从而限定了穷举的空间;转账者额外发送一个密文,用接收者的公钥加密,这个密文加密用的是数映射到点的方式来加密转账金额,从而使接收者能够解开,并验证金额确实和对转账金额密文解开的g^b是匹配的;g是转帐者和接收者选定的一个数,g是可公开的,b是转帐者或者接收者随机选择的一个转帐数,b是保密的,g^b是用于保证在密钥交换算法中使转帐者和接收者双方在不安全的通道中建立一个相同的密钥;
将若干区块划分为一个朝代,每个朝代转出和转入时,使用延迟转入的方式来规避并发,在每次跨朝代时将待结算的积分的金额结算至每个账户,每个朝代对一个账户的第二笔转出就必须加上待结算金额来校验;对于提供不出首笔转帐记录证明的转账需要加上待结算金额来进行校验,从而对发送吞吐量要求比较高的用户可以以匿名集错开或时间段错开的方式高度进行交易和结算;
为方便zsc合约与其他业务合约的互操作性,zsc合约提供加锁和解锁接口,用于暂时的将某个暗账户的使用权让渡给其他业务合约中的某个业务合约,这期间只有该某个业务合约有权操作所述某个暗账户,该某个业务合约使用完毕使用调用解锁接口将所述某个暗账户的使用权交还zsc合约;
区块链上每个暗账户的私钥是公钥的哈希值推导出的地址,value对应两个acc[yHash]密文,pending[yHash]密文,acc[yHash]密文是上面所述的账户的当前金额,pending[yHash]密文是当前朝代待结算的金额;每一次匿名转账交易后,所有匿名集里的账户的密文都要发生变动,包括n-2个变化金额为0的账户;
客户端保存所有发出的转账和取现交易用到的盲因子r*;
所有过程的r相加可以得到目前客户端应保存所有发出转账和取现用到的盲因子r*,当前链上密文的r是之前一系列交易演变出的数字;当监管部门获知密文中的盲因子r*,就能在不知道私钥的情况下解出明文,但为了得到当前的盲因子r*,需要获知之前所述盲因子r*所有涉及到的交易的r
可以用于在证明任意陈述。但可以原生支持椭圆曲线(EC)公钥和Pedersen承诺(所以就不需要在被证明的程序中安装椭圆曲线数学了)。此外,在标准假设下拥有全部128位安全系统,不需要可启动信任。
(1)转帐者利用生成元g产生一个q阶循环群G的有效描述。该循环群需要满足一定的安全性质。(2)转帐者从{1,……,q-1}中随机选择一个x。(3)转帐者计算h=g"。
(4)转帐者公开以及G,g,g的描述作为其公钥,并保留x作为其私钥。私钥必须保密。加密
使用转帐者的公钥(G.q,g.h)向她加密一条消息m的加密算法工作方式如下∶(1)接收者从{1,……,q-1}随机选择一个y,然后计算c1∶=g。(2)接收者计算共享秘密。(3)接收者把他要发送的秘密消息m映射为G上的一个元素m。(4)接收者计算c2∶=m'。(5)接收者将密文(c,c2)=(@",m'·h)=(,m'·(g"))发送给转帐者。
值得注意的是,如果一个人知道了m,那么它很容易就能知道加的值。因此对每一条信息都产生一个新的y可以提高安全性。所以y也被称作临时密钥。
解密利用私钥x对密文(c,c2)进行解密的算法工作方式如下∶转帐者计算共享秘密s∶=c1*;
然后计算m'∶=c2·5-1,并将其映射回明文m,其中s-是s在群G上的逆元。(例如∶如果G是整数模n乘法群的一个子群,那么逆元就是模逆元)。
解密算法是能够正确解密出明文的,因为
℃·s-1=m'·h·(g)-1=m'·gv·g-w=m'.
修改版的修改了m映射到m’的过程,将m以g^m的方式映射为椭圆曲线空间的一个点
由于对原文b1和b2的加密形式为:b1*g+r*y,r*g和b2*g+r*y,r*g,而对b1+b2的加密形式为(b1+b2)*g+r*y,r*g。可以看到密文符合加同态。
但此时带来的一个问题是已知g^b要反解b是离散对数难题,本发明采用两种方法应对这个问题:
限制转账金额上限+穷举。本发明限制上限为2^32,从而限定了穷举的空间
发送方额外发送一个密文,用接收方的公钥加密,这个密文加密用的是原始的算法即数映射到点的方式来加密转账金额,从而接收方能够解开,并验证这个金额确实和对转账金额密文解开的g^b是匹配的
4.合约接口设计
入口合约叫ZSC.sol,在它的构造函数里需要指定另外一个erc20积分合约,类似于某种寄生的关系。zsc合约提供3种基本功能的交易类型:
存入交易Fund
存入交易是明转暗交易。目前的实现是基于合约的实现,所以明账户对应一个积分标准合约里的一个账户,zsc合约在构造函数里必须和某个积分标准合约绑定。存入操作就是让积分标准合约中的那个账户转积分到zsc合约地址在那个积分标准合约的账户中,同时zsc合约按照这个金额给他new出了一个初始密文,注意这步还没有做到任何隐私保护,因为每个人都清楚这个初始密文对应的明文金额是多少。
取出交易Burn
取出交易是暗转明交易,也需要明的指定需要转出多少金额,这步由于也涉及到积分标准合约里的积分转移也无法隐私保护交易金额。
这步涉及到需要在不透漏目前暗账户里有多少余额的前提下证明取的钱是小于这个余额的,且证明发送者能提供一个私钥能和暗账户余额密文的公钥对应
取现的积分账户应该要和存入的积分账户相同,当然也可以为不同
转账交易Transfer
转账交易可以由不对应这n个匿名集的任意以太坊账户发起。
主要是基于sigma协议的交互式挑战和应答,但它优化成了非交互式的。这一系列的挑战应答证明了以下:
1.这n个密文里只有两个是对应value和-value的,其他都对应0
2.对应-value的密文的位置和私密输入的转账者在这个集合中的位置是匹配的
3.转账者提供的私钥和刚才说的位置的密文对应的公钥是匹配的
以上的校验过程是在链上完成的,关键是链上完成了这3步的验证后还是不知道转账者在其中的位置,类似环签名的思想,能验出是其中一个人签了名却不知道是谁签了名。这个协议的设计非常复杂,需要打乱,移位,重加密,它的证明生成和验证算法是整个隐私交易协议的核心。
考虑到并发问题,本发明采用将若干区块划分为一个朝代,每个朝代的转出和转入延迟转入的方式来规避并发问题,在每次跨朝代时将待结算的金额结算至账户。但这样每个朝代对一个账户的第二笔转出就必须加上它的待结算金额来校验。一个比较简单的方式是限制每个账户每个朝代只允许发出一笔转账,但这样验证限制了吞吐量。本发明改进的方法是:对于提供不出“首笔证明”的转账还是支持以加上待结算金额的方式来校验,从而对发送吞吐量要求比较高的用户可以以匿名集错开或时间段错开的方式仍然能高度发出。
此外,为方便zsc合约与其他业务合约的互操作性,zsc合约提供了锁和解锁接口,可以暂时的将某个暗账户的使用权让渡给某个业务合约,这期间只有该业务合约有权操作此暗账户,业务合约使用完毕应调用解锁接口将账户的使用权交还。
链上每个暗账户的key是公钥的Hash推导出的地址,value对应两个acc[yHash],pending[yHash]密文,分别是上面所述的账户的当前金额和当前朝代待结算的金额。每一次匿名转账交易后,所有匿名集里的账户的密文都要发生变动,包括那n-2个变化金额为0的账户。
5.监管需求
客户端保存所有发出的转账和取现交易用到的盲因子r。所有过程的r相加可以得到目标密客户端应保存所有发出转账和取现用到的盲因子r,只要监管部门能获知密文中的r,他就能在不知道私钥的情况下解出明文。由于当前链上密文的盲因子是之前一系列交易演变出的,所以为了得到当前的r,需要获知之前它所有涉及到的交易的r。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
有益效果:本发明对这人协议的设计非常复杂,需要打乱,移位,重加密,它的证明生成和验证算法是整个隐私交易协议的核心。限制转账金额上限+穷举。
Claims (1)
1.一种区块链隐私交易解决方法,其特征在于,包括有:步骤一:在区块链中进行合约接口构造,将入口合约命名为ZSC.sol,即zsc合约,其中.sol为解决方案的缩写,表示用于构造合约接口;步骤二:在入口合约的构造函数里开始指定另外一个积分标准合约,所述积分标准合约用于使用规范来规定积分的类型,积分金额,转移方式,余额表示;步骤三:zsc合约提供3种基本功能的交易类型:存入交易,取出交易,转账交易;步骤四:设定基于zsc合约的实现的存入交易是明账户转暗账户交易,明账户对应一个所述积分标准合约里的一个账户,zsc合约在构造函数里必须和所述积分标准合约其中的一个积分标准合约绑定;步骤五:存入交易的操作为:让积分标准合约中的一个账户转入积分到zsc合约地址在所述积分标准合约其中的一个积分标准合约的账户中,同时zsc合约按照积分的金额对积分的金额创建出一个初始密文;步骤六:取出交易是暗账户转明账户交易,需要明确指定需要转出金额的数量,积分标准合约里的积分转移可以不用对转出金额的数量进行隐私保护,仅需要在不透漏目前暗账户里有多少余额的前提下证明取出的积分的金额是小于这个余额的,且证明发送者能提供一个私钥能和暗账户的积分余额密文的公钥对应;步骤七:设定取出交易中的取出的积分账户应该要和存入的积分账户相同,也可以设定为不同;步骤八:转账交易可以由不对应n个匿名集的任意积分标准合约的账户发起,n为自然数;转账交易为交互式挑战和应答,也可以优化为非交互式的;转帐交易中的挑战和应答中n个匿名集对应的n个密文里只有两个是对应value和-value的,其他都对应0;value表示为转帐交易增加的金额,-value表示为转帐交易减少的金额,对应-value的密文的位置和私密输入的转账者在n个匿名集中的位置是匹配的;转账者提供的私钥和对应-value的密文的位置的密文对应的公钥是匹配的以上的校验过程是在区块链上完成的,以保障在区块链上完成验证后不知道转账者在其中的位置,以用环签名的方式,能验出是其中一个转账者进行了签名却不知道是具体转账者签的名;步骤九:开始限制上限和穷举,限制转账金额的上限为2的32次方,从而限定了穷举的空间;转账者额外发送一个密文,用接收者的公钥加密,这个密文加密用的是数映射到点的方式来加密转账金额,从而使接收者能够解开,并验证金额确实和对转账金额密文解开的g^b是匹配的;g是转帐者和接收者选定的一个数,g是可公开的,b是转帐者或者接收者随机选择的一个转帐数,b是保密的,g^b是用于保证在密钥交换算法中使转帐者和接收者双方在不安全的通道中建立一个相同的密钥;步骤十,将若干区块划分为一个朝代,每个朝代转出和转入时,使用延迟转入的方式来规避并发,在每次跨朝代时将待结算的积分的金额结算至每个账户,每个朝代对一个账户的第二笔转出就必须加上待结算金额来校验;对于提供不出首笔转帐记录证明的转账需要加上待结算金额来进行校验,从而对发送吞吐量要求比较高的用户可以以匿名集错开或时间段错开的方式高度进行交易和结算;步骤十一:为方便zsc合约与其他业务合约的互操作性,zsc合约提供加锁和解锁接口,用于暂时的将某个暗账户的使用权让渡给其他业务合约中的某个业务合约,这期间只有该某个业务合约有权操作所述某个暗账户,该某个业务合约使用完毕使用调用解锁接口将所述某个暗账户的使用权交还zsc合约;步骤十二:区块链上每个暗账户的私钥是公钥的哈希值推导出的地址,value对应两个acc[yHash]密文,pending[yHash]密文,acc[yHash]密文是上面所述的账户的当前金额,pending[yHash]密文是当前朝代待结算的金额;每一次匿名转账交易后,所有匿名集里的账户的密文都要发生变动,包括n-2个变化金额为0的账户;步骤十三:客户端保存所有发出的转账和取现交易用到的盲因子r*;所有过程的r相加可以得到目前客户端应保存所有发出转账和取现用到的盲因子r*,当前链上密文的r是之前一系列交易演变出的数字;当监管部门获知密文中的盲因子r*,就能在不知道私钥的情况下解出明文,但为了得到当前的盲因子r*,需要获知之前所述盲因子r*所有涉及到的交易的r。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011588751.1A CN113034276A (zh) | 2020-12-29 | 2020-12-29 | 一种区块链隐私交易解决方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011588751.1A CN113034276A (zh) | 2020-12-29 | 2020-12-29 | 一种区块链隐私交易解决方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113034276A true CN113034276A (zh) | 2021-06-25 |
Family
ID=76459325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011588751.1A Pending CN113034276A (zh) | 2020-12-29 | 2020-12-29 | 一种区块链隐私交易解决方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113034276A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114445074A (zh) * | 2021-11-01 | 2022-05-06 | 上海能链众合科技有限公司 | 一种区块链隐私的账户计算机提现方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109257182A (zh) * | 2018-10-24 | 2019-01-22 | 杭州趣链科技有限公司 | 一种基于同态的密码学承诺与零知识范围证明的区块链隐私保护方法 |
CN109525386A (zh) * | 2018-11-29 | 2019-03-26 | 东北大学 | 一种基于Paillier同态加密私有交集和的方法 |
US20190164153A1 (en) * | 2017-11-30 | 2019-05-30 | Shashank Agrawal | Blockchain system for confidential and anonymous smart contracts |
US20200342452A1 (en) * | 2019-04-25 | 2020-10-29 | Jpmorgan Chase Bank, N.A. | Systems and methods for anonymous cryptocurrency transactions |
CN112115201A (zh) * | 2020-09-16 | 2020-12-22 | 建信金融科技有限责任公司 | 基于区块链的交易处理方法、交易追踪方法及装置 |
-
2020
- 2020-12-29 CN CN202011588751.1A patent/CN113034276A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190164153A1 (en) * | 2017-11-30 | 2019-05-30 | Shashank Agrawal | Blockchain system for confidential and anonymous smart contracts |
CN109257182A (zh) * | 2018-10-24 | 2019-01-22 | 杭州趣链科技有限公司 | 一种基于同态的密码学承诺与零知识范围证明的区块链隐私保护方法 |
CN109525386A (zh) * | 2018-11-29 | 2019-03-26 | 东北大学 | 一种基于Paillier同态加密私有交集和的方法 |
US20200342452A1 (en) * | 2019-04-25 | 2020-10-29 | Jpmorgan Chase Bank, N.A. | Systems and methods for anonymous cryptocurrency transactions |
CN112115201A (zh) * | 2020-09-16 | 2020-12-22 | 建信金融科技有限责任公司 | 基于区块链的交易处理方法、交易追踪方法及装置 |
Non-Patent Citations (3)
Title |
---|
BENEDIKT B UNZ1等人: "Zether: Towards Privacy in a Smart Contract World;https://eprint.iacr.org/2019/191", CRYPTOLOGY EPRINT ARCHIVE, pages 1 * |
BENEDIKT BUNZ等人: "Zether: Towards Privacy in a Smart Contract World;https://link.springer.com/chapter/10.1007/978-3-030-51280-4_23", 24TH INTERNATIONAL CONFERENCE FINANCIAL CRYPTOGRAPHY AND DATE SECURITY(FC) * |
张庭郡;刘琨鹏;尹毅峰;甘勇;: "基于虚迭代函数的多方智能合约安全协议研究", 现代计算机, no. 12 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114445074A (zh) * | 2021-11-01 | 2022-05-06 | 上海能链众合科技有限公司 | 一种区块链隐私的账户计算机提现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106961336B (zh) | 一种基于sm2算法的密钥分量托管方法和系统 | |
EP3268914B1 (en) | Determining a common secret for the secure exchange of information and hierarchical, deterministic cryptographic keys | |
CN109858281B (zh) | 一种基于零知识证明的区块链账户模型隐私保护方法 | |
CN109639677B (zh) | 一种可限制访问次数的云存储外包解密属性基加密方法 | |
CN110011781B (zh) | 用于交易金额加密且支持零知识证明的同态加密方法和介质 | |
CN104539423B (zh) | 一种无双线性对运算的无证书公钥密码体制的实现方法 | |
TW202020710A (zh) | 用於資訊保護的系統和方法 | |
CN108989053A (zh) | 一种基于椭圆曲线的无证书公钥密码体制实现方法 | |
EP2285040A1 (en) | Two-factor combined public key generation and authentication method | |
CN102255729B (zh) | 一种基于媒介数字证书的ibe数据加密系统 | |
CN109951453A (zh) | 一种基于区块链的安全加密方法 | |
GB2490407A (en) | Joint encryption using base groups, bilinear maps and consistency components | |
CN103444128B (zh) | 密钥pv签名 | |
CN110995412B (zh) | 基于乘法群的无证书环签密方法 | |
CN110545169B (zh) | 基于非对称密钥池和隐式证书的区块链方法和系统 | |
CN103988466A (zh) | 群加密方法及设备 | |
CN107425971A (zh) | 终端及其无证书的数据加/解密方法和装置 | |
KR20030062401A (ko) | 겹선형쌍을 이용한 개인식별정보 기반의 은닉서명 장치 및방법 | |
Wang et al. | A modified efficient certificateless signature scheme without bilinear pairings | |
CN107171788A (zh) | 一种基于身份且签名长度恒定的在线离线聚合签名方法 | |
CN110519226B (zh) | 基于非对称密钥池和隐式证书的量子通信服务端保密通信方法和系统 | |
CN110943845A (zh) | 一种轻量级两方协同产生sm9签名的方法及介质 | |
CN113468582A (zh) | 一种抗量子计算加密通信方法 | |
CN113034276A (zh) | 一种区块链隐私交易解决方法 | |
CN110213056A (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 | ||
CB02 | Change of applicant information |
Address after: 200120 building C3, No. 101 Eshan Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: Shanghai Lingshuzhonghe Information Technology Co.,Ltd. Address before: 18ef, China Resources Times Plaza, 500 Zhangyang Road, Pudong New Area, Shanghai, 200120 Applicant before: NENG LIAN TECH. LTD. |
|
CB02 | Change of applicant information |