- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于椭圆曲线盲签名的电子现金系统设计的论文.doc
基于椭圆曲线盲签名的电子现金系统设计的论文
[摘要] 利用椭圆曲线盲签名算法,可获得比rsa算法更高的的安全性;银行与认证中心ca联合实现电子现金的匿名控制,必要时可对问题现金及非法使用者进行追踪,揭露其身份;方案在设计时同时考虑了set协议的运作模式,更适合人们的消费习惯和电子商务发展的需要。
[关键词] 电子现金 椭圆曲线 盲签名 匿名控制 安全性
一、引言
电子商务的发展离不开先进的支付手段,电子现金作为电子支付的关键技术,自80年代中期以来已取得了很大的研究成果。其安全性和可靠性主要依靠密码技术来实现,如零知识证明、盲数字签名等,早期的电子现金系统主要基于rsa、dlp公钥密码技术,如digicash公司的ecashtm ,nist也于1991年将dsa算法作为数字签名的标准。1985年,n. koblitz和v. miller分别独立提出了椭圆曲线密码体制(ecc),利用有限域上椭圆曲线的点构成的群实现了离散对数密码算法,由于其具有计算量小,处理速度快、存储空间占用小、带宽要求低等优点,在电子现金应用领域得到广泛关注,set协议的制定者已把它作为下一代set协议中缺省的公钥密码算法。
考虑到set协议将成为事实上电子商务支付的标准,我们认为电子现金应符合set模式。由于在set中只涉及四个对象:用户u、银行bank、商家shop和认证中心ca,所以电子现金应该是在线、支持认证中心(ca)并由ca实现匿名性的控制,本文将利用基于椭圆曲线盲签名,设计一安全、实用、匿名可控的电子现金系统。.
一、椭圆曲线盲签名算法(ecdsa)
椭圆曲线数字签名一般是将基于离散对数的签名体制如schnoor、eigamal、dsa以及导出变种形式移植到椭圆曲线上,在文献[4]中也给出了多种签名方案及盲签名方案。
设p是一个大素数,a,b∈gf(p), 满足4a3+27b2≠0。椭圆曲线e(a,b)(gf(p))可定义为点集(x,y)∈gf(p)*gf(p),满足y2=x3+ax+b,我们定义一个零元,用o表示,这样,这些点构成了一个阿贝尔群。g是e(a,b)(gf(p))中的一个阶为q的元素。d ∈rzn*,是签名私钥,q=dg是签名验证公钥。rx(a)表示点a的x坐标值,h是一个单向hash函数,h:{0,1}*→{0,1}k,我们用来表示两个串的连接。系统的???数为{p,a,b,g,q, q,d,h}。
椭圆曲线的schnoor(ecdsa)盲签名体制可描述如下:
发送方随机选择一个整数k∈rzn*,计算kg;
接收方随机选择γ,δ∈rzn*,计算:a=kg+γg+δq,t= rx(a)modn,c=h(mt),c’=c-δ,将c’送出。
发送方计算:s’=k-c’d。
接收方计算:s=s’+γ。
由于γ,δ是随机选择的,所以签名者不会知道签名的内容,盲签名的形式为(c,s)。从上过程可看出,kg可预先计算,当c’到来时,仅需一次乘法和一次加法运算就可完成签名,因此计算量小、运算速度快,签名结果也较短,比较适合电子现金系统使用。
二、电子现金系统方案设计
对于ca认证中心,需要使用系统参数建立ecdsa的数字签名。随机选择xca∈gf(q)*作为自己的私钥,然后计算pca=xcag,将pca作为自己的公开密钥。同样,银行、用户的私钥分别为xb、xu,公钥分别为pb、pu。将pca、pb、pu公开。
1.注册(registration)
用户提交自己的信息,由ca使用ecdsa进行签名,用于向用户提供包含其身份信息的电子执照。 在取款时必须出示该签名。设id为用户标识信息,包含姓名、身份证号等。注册过程即用户向认证中心提供个人可信信息,存案备查。即i= ecdsa(xcah(id)) ,此时,i 相当于一个简单的数字证书。
2.取款协议(为用户的取款信息,是个五元组{数量,面值,账号,时间,ca的签名i}。取款信息中的i ,向银行表明自己是一个合法的用户,银行利用ca的公开密钥pca来验证,这就保证了取款时用户必须提供自己的正确信息,从而在构造电子现金时嵌入这些信息,而银行又不知道信息的具体内容,用户的隐私也得到了保护。其后的工作是使用ecdsa盲签名来完成取款过程。描述如下:
(1)用户:任选 z∈rzq*,计算t=ecdsa(xu(m)),,c=zg,c= rx(c) ∥ry(c),将(m,t)送银行。
(2)银行:用pb验证签名,verify(pu(t));任选 k∈rzq*,计算φ=kg, s=ecdsa(xb(φ))
(3)用户:收到(φ,s)后,验证,verify(pb(φ));θ,δ
文档评论(0)