当前位置: 首页 > 专利查询>陈丽燕专利>正文

Hash-RSA盲签名的数字货币方案制造技术

技术编号:28791910 阅读:28 留言:0更新日期:2021-06-09 11:29
本发明专利技术公开了Hash

【技术实现步骤摘要】
Hash

RSA盲签名的数字货币方案


[0001]本专利技术涉及计算机及其软件
,尤其涉及Hash

RSA盲签名的数字货币方案。

技术介绍

[0002]经检索,中国专利号CN110751467A公开了一种数字货币的生成方法及系统,该专利技术虽然结构简单虽然保证了生成数字货币的合法性,但其计算复杂度较高,且不具备匿名性和不可追踪性;数字货币是将现金数值转换为一系列电子加密序列数的货币,币本身的安全性依赖于密码算法来保护;现代信息化的发展推动了电子商务和数字金融的普及,支付方式也随着科技的进步发展迅速多样传,数字货币是电子支付中一种重要的交易载体,有别于传统的实体货币,它的主要特点是不依赖于实体介质,能够实现实体货币的功能,保证数字货币的交易安全,但现有的数字货币方案中的加密技术可被反向推理破解,从而容易容易暴露用户交易信息;因此,专利技术出Hash

RSA盲签名的数字货币方案变得尤为重要;
[0003]现有的数字货币方案大多是依赖数字加密算法技术实现的,但现有的加密算法技术计算复杂,容易浪费大量的通信和计算资源,而且部分数字加密算法技术可被反向推理破解,从而不具备匿名性和不可追踪性,容易暴露用户交易信息;为此,我们提出Hash

RSA盲签名的数字货币方案。

技术实现思路

[0004]本专利技术的目的是为了解决现有技术中存在的缺陷,而提出的Hash

RSA盲签名的数字货币方案。
[0005]为了实现上述目的,本专利技术采用了如下技术方案:
[0006]Hash

RSA盲签名的数字货币方案,该数字货币方案具体步骤如下:
[0007](1)用户银行开户:银行为用户登记开户信息,并确定各自的帐号信息,同时用户向自己帐号中存钱,形成数字货币[m,H(SID),H(m‖H(SID))
d
];
[0008](2)数字货币初始化:银行通过内部加密算法进行计算,得到私钥d和公钥e,然后对外公布公钥e,自己保留私钥d;
[0009](3)数字货币取款及签名:当用户购买的物品付款时,用户根据物品价格选择对应面值的数字货币向银行发起取款申请,银行为对应面值的数字货币生成唯一序列号SID,同时将序列号SID通过单向哈希散列函数H(X)进行哈希计算,得到数组[SID,H(SID),type],此时银行将H(SID)发送给用户,用户选取消息m,对消息m进行盲化,得到盲化后的消息m

,并将盲化后的消息m

发送给银行,银行收到申请后,先确认账户金额是否足够扣除,若足够,则对盲化的消息m

进行签名,形成签名消息S

,并从用户账户中减去相应的金额,将签名消息S

发送给用户,否则,拒绝签名,取款失败;
[0010](4)数字货币支付及验证:用户收到银行的签名消息S

后,将签名消息S

去盲,得到去盲后的数字货币,同时对其进行验证,验证失败,则交易终止;否则,验证通过,则将对
应面值的数字货币发送给商家,商家对收到的数字货币进行验证,验证失败,则交易终止;否则,验证通过后,则表示数字货币没问题,将该对应面值的数字货币发送给银行;
[0011](5)商家存款:银行收到该对应面值的数字货币后会二次验证数字货币的合法性,验证通过,则银行收回该数字货币,同时在商家的账户上加上对应的数值,否则表示用户或者商家在重复使用此数字货币,支付失败。
[0012]优选的,步骤(1)所述数字货币[m,H(SID),H(m‖H(SID))
d
]存储于银行本地数据库中;所述SID为数字货币的序列号,其包括取款金额、时间戳和随机码;所述type为二进制标记,记录该数字货币是否被兑现。
[0013]优选的,步骤(2)所述内部加密算法具体为改进后的RSA算法,其具体计算流程如下:
[0014]S1:独立的选取两个大素数p和q,计算n=p*q;
[0015]S2:计算n的欧拉函数值,当满足下列公式时,得到公钥e;
[0016][0017]式中:为欧拉函数,表示小于n且与n互素的正整数的个数:
[0018]S3:计算e模的乘法逆元,满足下列公式是,得到私钥d;
[0019][0020]优选的,步骤(3)所述盲化签名过程具体如下:
[0021]SS1:盲化,利用单向哈希散列函数将数字货币转换为数组[SID,H(SID),type],然后银行将H(SID)发送给用户,用户选取消息,并选取盲因子进行计算,同时将盲化后的消息发送给银行:
[0022]其盲化消息计算公式如下:
[0023]m

=r
e
H(m‖H(SID))modn
ꢀꢀꢀꢀꢀꢀꢀꢀ
(3)
[0024]式中:m表示消息,m

表示盲化后的消息,r表示盲因子;
[0025]SS2:签名,银行用自己的私钥为盲化后的消息进行签名,并将其发送给用户,同时从用户账户中扣除相应金额;
[0026]其签名计算公式如下:
[0027]S

=[r
e
H(m‖(SID))]d
modn=
[0028]r
ed
H(m‖H(SID))
d
modn=
[0029]rH(m‖H(SID))
d
modn
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(4)
[0030]式中:S

表示签名消息;
[0031]SS3:脱盲,用户对签名S

进行脱盲计算,得到数字货币[m,H(SID),H(m‖H(SID))
d
];
[0032]其脱盲计算公式如下:
[0033]S=r
‑1S

modn=H(m‖H(SID))
d
modn
ꢀꢀꢀꢀꢀ
(5)。
[0034]优选的,步骤(5)所述二次验证具体验证公式如下:
[0035][H(m‖H(SID))
d
]e
modn=H(m‖H(SID))modn
ꢀꢀꢀꢀꢀ
(6)
[0036]若找到对应数组[SID,H(SID),type]且type显示该货币未被使用,数字货币有效,支付成功,并将商家的账户中增加相应金额,将[SID,H(SID),type]设置为被使用,并注收
回货币;
[0037]若找到对应数组[SID,H(SID),type]且type显示该现金已被使用,表示用户或者商家在重复使用此数字货币,则支付失败。
[0038]相比于现有技术,本专利技术的有益效果在于:
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.Hash

RSA盲签名的数字货币方案,其特征在于,该数字货币方案具体步骤如下:(1)用户银行开户:银行为用户登记开户信息,并确定各自的帐号信息,同时用户向自己帐号中存钱,形成数字货币[m,H(SID),H(m||H(SID))
d
];(2)数字货币初始化:银行通过内部加密算法进行计算,得到私钥d和公钥e,然后对外公布公钥e,自己保留私钥d;(3)数字货币取款及签名:当用户购买的物品付款时,用户根据物品价格选择对应面值的数字货币向银行发起取款申请,银行为对应面值的数字货币生成唯一序列号SID,同时将序列号SID通过单向哈希散列函数H(X)进行哈希计算,得到数组[SID,H(SID),type],此时银行将H(SID)发送给用户,用户选取消息m,对消息m进行盲化,得到盲化后的消息m

,并将盲化后的消息m

发送给银行,银行收到申请后,先确认账户金额是否足够扣除,若足够,则对盲化的消息m

进行签名,形成签名消息S

,并从用户账户中减去相应的金额,将签名消息S

发送给用户,否则,拒绝签名,取款失败;(4)数字货币支付及验证:用户收到银行的签名消息S

后,将签名消息S

去盲,得到去盲后的数字货币,同时对其进行验证,验证失败,则交易终止;否则,验证通过,则将对应面值的数字货币发送给商家,商家对收到的数字货币进行验证,验证失败,则交易终止;否则,验证通过后,则表示数字货币没问题,将该对应面值的数字货币发送给银行;(5)商家存款:银行收到该对应面值的数字货币后会二次验证数字货币的合法性,验证通过,则银行收回该数字货币,同时在商家的账户上加上对应的数值,否则表示用户或者商家在重复使用此数字货币,支付失败。2.根据权利要求1所述的Hash

RSA盲签名的数字货币方案,其特征在于,步骤(1)所述数字货币[m,H(SID),H(m||H(SID))
d
]存储于银行本地数据库中;所述SID为数字货币的序列号,其包括取款金额、时间戳和随机码;所述type为二进制标记,记录该数字货币是否被兑现。3.根据权利要求1所述的Hash

RSA盲签名的数字货币方案,其特征在于,步骤(2)所述内部加密算法具体为改进后的RSA算法,其具体计算流程如下:S1:独立的选取两个大素数p和q,计算n=p*q;S2:计算n的欧拉...

【专利技术属性】
技术研发人员:陈丽燕
申请(专利权)人:陈丽燕
类型:发明
国别省市:

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

1