一种可监管的密态交易金额的生成方法和装置制造方法及图纸

技术编号:24687517 阅读:117 留言:0更新日期:2020-06-27 09:05
本发明专利技术涉及一种可监管的密态交易金额的生成方法和装置,属于区块链技术领域,解决了现有技术中交易生成时间长、不可监管以及每次交易都由交易发送者生成,交易接收者不能生成交易金额的问题。该方法包括通过生成方生成密态交易金额;通过验证方接收密态交易金额并对密态交易金额进行验证;以及通过监管中心对密态交易金额进行监管,其中,生成方为交易发送者和接收者中的一个,并且验证方为交易发送者和接收者中的另一个。实现了在有隐私保护的前提下,实现了密态交易金额可以由交易发送者或者交易接收者灵活地生成;以及监管中心对密态交易金额可以实施监管。

A method and device for generating the amount of the secret transaction

【技术实现步骤摘要】
一种可监管的密态交易金额的生成方法和装置
本专利技术涉及区块链
,尤其涉及一种可监管的密态交易金额的生成方法和装置。
技术介绍
比特币自2008年进入人们的视野以来,历经近十年的发展,各种加密货币纷纷出现,例如门罗币、零币、莱特币等。比特币具有去中心化,分布式记账以及用户身份匿名等优点。但交易的金额是明文传输的,这严重限制了比特币的广泛应用。后来的门罗币、零币等虚拟加密货币利用一些密码技术(比如环签名等特殊数字签名、承诺、零知识证明、同态加密等)来解决交易的隐私保护问题。例如门罗币采用borromean环签名和Perdersen承诺技术来实现对交易金额的隐藏,而零币利用zk-snark这种非交互式零知识证明方案对交易身份以及交易金额进行隐藏。区块链作为加密货币的支撑技术,本质上是利用链式数据结构来验证和存储数据,利用分布式共识机制来生成并更新数据,从而保证全网诚实节点的状态一致性。去中心化、可验证以及防篡改是区块链技术的基本属性。随着对区块链技术的深入研究以及其可能的应用场景的探讨,数据的隐私保护问题显得尤为重要。在区块链系统中,隐私保护主要体现在两个方面:匿名性和秘密性。其中匿名性是指交易发起者和交易接收者的身份隐藏,而秘密性是指交易金额的隐藏。目前比特币系统只能对交易提供弱的匿名性,即交易发起者和交易接收者的真实身份与对应的公钥无关。而门罗币和零币虽然能解决隐私保护问题,但门罗币的证据长度比较大,而零币需要可信任第三方的参与,并且证据生成时间过长。目前门罗币使用的密码技术包括环签名、承诺、Bulletproof等。门罗币是为去中心、完全匿名设计的,因而全隐私保护技术不具备监管功能。门罗币的金额隐藏则采用Pedersen承诺和Bulletproof范围证明。门罗币的环签名技术用于隐藏真实的未花费交易输出(utxo),并且未花费交易输出的数量等于环的个数。当一笔交易的未花费交易输出越多,交易长度、交易的生成时间和验证时间均会增大。目前零币使用的密码技术主要是zk-snark技术。零币采用哈希对金额进行承诺,每笔交易的输出为金额和接收公钥的承诺;输入则为防双花标识,即对应某个未花费交易输出的金额承诺,此时该防双花标识是该公钥对应的私钥和金额的承诺。为了隐藏未花费交易输出的金额承诺,零币采用Merkle树技术,即将每笔确认过的交易输出承诺作为叶子节点并构造Merkle树,然后公开树根,该叶子节点以及用于计算树根的相邻节点作为该叶子节点的认证路径。因此确认的交易数越多,Merkle树的高度约大,进而生成交易所需的公钥量和生成时间越长。zk-snark技术需要可信第三方且需要预计算。虽然交易的验证时间很短(5.6ms)且交易长度短,但交易生成时间(2min2s)和生成所需的公钥量(896MB)过于庞大。另外,现有的门罗币和零币存在每次交易都由交易发送者生成,交易接收者不能生成交易金额。
技术实现思路
鉴于上述的分析,本专利技术实施例旨在提供一种可监管的密态交易金额的生成方法和装置,用以解决现有交易生成时间长、不可监管以及每次交易都由交易发送者生成,交易接收者不能生成交易金额的问题。一方面,本专利技术实施例提供了一种可监管的密态交易金额的生成方法,包括:通过生成方生成所述密态交易金额;通过验证方接收所述密态交易金额并对所述密态交易金额进行验证;以及通过监管中心对所述密态交易金额进行监管,其中,所述生成方为交易发送者和接收者中的一个,并且所述验证方为所述交易发送者和接收者中的另一个。上述技术方案的有益效果如下:本专利技术实施例提供的可监管的密态交易金额的生成方法能够在有隐私保护的前提下,在数字货币中实现了密态交易金额可以由交易发送者或者交易接收者灵活地生成;以及监管中心对密态交易金额可以实施监管。基于上述方法的进一步改进,生成方生成所述密态交易金额包括:基于监管中心公钥、交易金额和第一随机数生成未花费交易输出,其中,所述未花费交易输出包括加密金额;基于所述未花费交易输出通过第二随机数和第三随机数分别替换所述交易金额和所述第一随机数生成第一中间变量和第二间变量;对所述监管中心公钥、所述未花费交易输出以及所述第一中间变量和所述第二中间变量进行哈希计算并且将计算的哈希值作为承诺值;基于所述第一中间变量、所述第二中间变量、所述承诺值、所述第二随机数和所述第三随机数进行计算以获得证据;以及根据所述加密金额构造金额范围证明以生成密态交易金额,其中,所述密态交易金额包括所述未花费交易输出、所述证据、所述承载值和所述金额范围证明。基于上述方法的进一步改进,生成方生成所述密态交易金额包括:根据公式(F,C)=(r*Z,r*Hm+v*Gm)计算所述未花费交易输出(F,C),其中,C为加密金额;根据公式RF=lr*Z,RC=lr*Hm+lv*Gm计算所述第一中间变量RF和所述第二中间变量RC;根据公式c=Hash(Gm||Hm||Z||F||C||RF||RC)计算所述哈希值c;根据公式tr=lr–c*r,tv=lv–c*v计算以获得证据(tr,tv,c);以及根据所述加密金额C=r*Hm+v*Gm构造金额范围证明rangeproof,以生成所述密态交易金额(F,C,tr,tv,c,rangeproof),其中,Z∈G为监管中心的公钥,Z=z*Hm,z∈RZ*q;Hm和Gm是素数阶椭圆曲线点群G的两个生成元;r、lr和lv分别为所述第一随机数、所述第二随机数和所述第三随机数并且r、lr和lv∈Z*q;v为交易金额;tr和tv分别为第一中间变量和第二中间变量;Zq*为Zq\{0},q群G的阶,Zq为模q的整数环;Hash为抗碰撞哈希函数;∈R为元素从集合中随机选取。上述进一步改进方案的有益效果是:在每次交易过程中,能够由交易发送者或者交易接收者灵活地生成密态交易金额,相比于现有的环签名、Merkle树和zk-snark技术,大幅度缩短了密态交易金额生成时间。基于上述方法的进一步改进,验证方接收所述密态交易金额并对所述密态交易金额进行验证包括:所述验证方通过安全信道接收所述第一随机数;基于所述第一随机数、监管中心公钥和所述密态交易金额中的未花费交易输出,通过穷举法求解离散对数以获得所述交易金额。基于上述方法的进一步改进,验证方接收所述密态交易金额并对所述密态交易金额进行验证还包括:根据所述密态交易金额中的证据计算所述第二随机数和所述第三随机数;基于所述监管中心公钥、所述第二随机数和所述第三随机数计算所述第一中间变量和所述第二中间变量;对所述监管中心公钥、所述密态交易金额中的所述未花费交易输出以及计算的所述第一中间变量和所述第二中间变量进行哈希计算并验证计算的哈希值与所述密态交易金额中的承诺值是否相等;以及通过确定计算的交易金额是否在所述金额范围证明内来验证所述金额范围证明是否合法。基于上述方法的进一步改进,验证方接收所述密态交易金额并对所述密态交易金额进行验证包括:根据所述未花费交易输出的公式(F,C)=(r*Z,r*Hm+v*Gm)通过穷举法求解离散对数以获得所述交易金额本文档来自技高网
...

【技术保护点】
1.一种可监管的密态交易金额的生成方法,其特征在于,包括:/n通过生成方生成所述密态交易金额;/n通过验证方接收所述密态交易金额并对所述密态交易金额进行验证;以及/n通过监管中心对所述密态交易金额进行监管,其中,所述生成方为交易发送者和接收者中的一个,并且所述验证方为所述交易发送者和接收者中的另一个。/n

【技术特征摘要】
1.一种可监管的密态交易金额的生成方法,其特征在于,包括:
通过生成方生成所述密态交易金额;
通过验证方接收所述密态交易金额并对所述密态交易金额进行验证;以及
通过监管中心对所述密态交易金额进行监管,其中,所述生成方为交易发送者和接收者中的一个,并且所述验证方为所述交易发送者和接收者中的另一个。


2.根据权利要求1所述的可监管的密态交易金额的生成方法,其特征在于,生成方生成所述密态交易金额包括:
基于监管中心公钥、交易金额和第一随机数生成未花费交易输出,其中,所述未花费交易输出包括加密金额;
基于所述未花费交易输出通过第二随机数和第三随机数分别替换所述交易金额和所述第一随机数生成第一中间变量和第二间变量;
对所述监管中心公钥、所述未花费交易输出以及所述第一中间变量和所述第二中间变量进行哈希计算并且将计算的哈希值作为承诺值;
基于所述第一中间变量、所述第二中间变量、所述承诺值、所述第二随机数和所述第三随机数进行计算以获得证据;以及
根据所述加密金额构造金额范围证明以生成密态交易金额,其中,所述密态交易金额包括所述未花费交易输出、所述证据、所述承载值和所述金额范围证明。


3.根据权利要求2所述的可监管的密态交易金额的生成方法,其特征在于,生成方生成所述密态交易金额包括:
根据公式(F,C)=(r*Z,r*Hm+v*Gm)计算所述未花费交易输出(F,C),其中,C为加密金额;
根据公式RF=lr*Z,RC=lr*Hm+lv*Gm计算所述第一中间变量RF和所述第二中间变量RC;
根据公式c=Hash(Gm||Hm||Z||F||C||RF||RC)计算所述哈希值c;
根据公式tr=lr–c*r,tv=lv–c*v计算以获得证据(tr,tv,c);以及
根据所述加密金额C=r*Hm+v*Gm构造金额范围证明rangeproof,以生成所述密态交易金额(F,C,tr,tv,c,rangeproof),
其中,Z∈G为监管中心的公钥,Z=z*Hm,z∈RZ*q;Hm和Gm是素数阶椭圆曲线点群G的两个生成元;r、lr和lv分别为所述第一随机数、所述第二随机数和所述第三随机数并且r、lr和lv∈Z*q;v为交易金额;tr和tv分别为第一中间变量和第二中间变量;Zq*为Zq\{0},q群G的阶,Zq为模q的整数环;Hash为抗碰撞哈希函数;∈R为元素从集合中随机选取。


4.根据权利要求3所述的可监管的密态交易金额的生成方法,其特征在于,验证方接收所述密态交易金额并对所述密态交易金额进行验证包括:
所述验证方通过安全信道接收所述第一随机数;
基于所述第一随机数、监管中心公钥和所述密态交易金额中的未花费交易输出,通过穷举法求解离散对数以获得所述交易金额。


5.根据权利要求4所述的可监管的密态交易金额的生成方法,其特征在于,验证方接收所述密态交易金额并对所述密态交易金额进行验证还包括:
根据所述密态交易金额中的证据计算所述第二随机数和所述第三随机数;
基于所述监管中心公钥、所述第二随机数和所述第三随机数计算所述第一中间变量和所述第二中间变量;
对所述监管中心公钥、所述密态交易金额中的所述未花费交易输出以及计算的所述第一中间...

【专利技术属性】
技术研发人员:张凡林齐平刘海英高胜窦国威段伟民孙登峰
申请(专利权)人:数据通信科学技术研究所兴唐通信科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1