椭圆曲线加密算法及实例分析

椭圆曲线加密算法及实例分析

ID:38130294

大小:108.14 KB

页数:3页

时间:2019-05-29

椭圆曲线加密算法及实例分析_第1页
椭圆曲线加密算法及实例分析_第2页
椭圆曲线加密算法及实例分析_第3页
资源描述:

《椭圆曲线加密算法及实例分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、加密技术椭圆曲线加密算法及实例分析李俊芳崔建双北京科技大学管理学院北京100083摘要:椭圆曲线密码体制的研究与实现已逐渐成为公钥密码体制研究的主流,其数学基础是利用椭圆曲线上的有理点构成的Abelian加法群构造的离散对数的计算困难性。在本文中,详细阐述了椭圆曲线的加法运算规则、椭圆曲线的密码体制,并列出了一个具体的实例来实现椭圆曲线密码体制。关键词:椭圆曲线密码体制;基点;阶0引言穷远点0。椭圆曲线密码体制与其他公钥密码体制相比,研究表明,对1.2椭圆曲线的运算规则于椭圆曲线密码160bit长的密

2、钥所具有的安全性与RSA或DSA中椭圆曲线上的加法运算如下:如果其上的三个点位于同一直1024bit长的密钥所具有的安全性相当,抗攻击性强。并且,在线上,那么它们的和为0。一个有限域上,可以有非常多的椭圆曲线适合建立密码系统。(1)0为加法单位元,即对椭圆曲线上任一点P,有P+0=P。在椭圆曲线构成的Abelian群E(a,b)上考虑方程Q=xp,已知(2)设P=(x,y)是椭圆曲线上的一点,它的加法逆元定义为pQ、p属于E(a,b)。若知x,p,求Q,非常容易。若知Q、p求x,Q=-P=(x,-y)

3、。p却是困难的,这就是椭圆曲线的离散对数问题,可以应用于公钥(3)设P和Q是椭圆曲线上x坐标不同的点。Q+P的定义如密码体制。本文,给出了一个具体的实例来说明椭圆曲线的密码下:画一条通过Q,P的直线与椭圆曲线交于R’。由Q+P+R’=0体制。得Q+P=-R’即Q+P=R。如图1所示。设P=(x,y),Q=(x,y),P≠Q,则P+Q=(x,y)由以下1椭圆曲线112233规则确定:1.1椭圆曲线定义x=λ2-x-x(modp)312椭圆曲线E是一个光滑的Weierstrass方程在P2(K)中的全部解

4、y=λ(x-x)-y(modp)3131(x,y)的集合。K为域,K上的摄影平面P2(K)是一些等价类的集其中:λ=(y-y)/(x-x)P≠Q2121合{(X:Y:Z)}。λ=(3x2+a)/(2y)P=Q11E:Y2Z+aXYZ+aYZ2=X3+aX2Z+aXZ2+aZ3其中:a∈K。13246i(4)点Q的倍数定义如下:在Q点作椭圆曲线的一条切线,设注:切线与椭圆曲线交于点S,定义2Q=Q+Q=-S,类似的可定义3Q=(1)在椭圆曲线E上恰有一个点,称之为无穷远点。即(0:Q+Q+Q+,⋯,等。

5、1:0)用0表示。2椭圆曲线密码体制(2)可用非齐次坐标的形式来表示椭圆曲线的Weierstrass方程:设x=X/Z,y=Y/Z,于是原方程转化为:y2+axy+ay=x3+ax2+ax+a⋯⋯(1)13246此时,椭圆曲线E就是方程(1)在摄影平面P2(K)上的全部解,外加一个无穷远点0组成的集合。常用的椭圆曲线方程为:当特征值为大于3的素数时,椭圆曲线的方程表示为:E:y2=x3+ax+b其中,a,b∈F,且4a3+27b2≠0,则F上的椭圆曲线E被定义qq为由参数a和b决定的点q=(x,y)的

6、集合,此外,E还包括一个无图1y2=x3-x本文由教育部科学技术研究重点项目“关于企业信息安全体系的研究”资助(01021)。作者简介:李俊芳(1978-),女,北京科技大学管理学院硕士研究生,研究方向:安全电子商务。崔建双(1961-),男,北京科技大学管理学院副教授,研究方向:管理信息系统、安全电子商务。562004.11加密技术2.1椭圆曲线密码体制思想①将n-1表示为二进制形式bkbk-1⋯b0;选取基域F,选择一条椭圆曲线(a,b,p值给定),在E(F)中②d←1qq选一个周期很大的点,如选

7、了一个点G=(x,y),它的周期为一fori=kdownto0do{GG个很大的素数n,记为∏(p)=n(n为素数)。在椭圆曲线密码体制x←d;当中,具体的曲线及点G和它的阶n都是公开信息。d←(d×d)modn;(1)密钥的生成ifd=1and(x≠1)and(x≠n-1)thenreturntrue;Bob(使用者)执行了下列计算:ifbi=1thend←(d×a)modn}①在区间[1,n-1]中随机选取一个整数d;ifd≠1thenreturntrue;②计算点Q=dG(d个G相加);retu

8、rnfalse;③Bob公开自己的公开密钥——(E(F),G,n,Q);n是待检验的数,a是小于n的整数。如果返回值是false,则q④Bob的私钥为整数d。n有可能是素数。如果返回值是true,则n肯定不是素数。比如:椭圆曲线方程E(1,1):y2=x3+x+1椭圆曲线的点Alice要发送消息m给Bob,Alice执行:211①查找Bob的公钥(E(F),G,n,Q);群阶为223,椭圆曲线上整数点有222个,还有一个无穷远点0。q②将m表示成一个域元

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。