CN1913433A - 一种椭圆曲线密钥交换方法在manet网络中的应用 - Google Patents

一种椭圆曲线密钥交换方法在manet网络中的应用 Download PDF

Info

Publication number
CN1913433A
CN1913433A CN 200610103449 CN200610103449A CN1913433A CN 1913433 A CN1913433 A CN 1913433A CN 200610103449 CN200610103449 CN 200610103449 CN 200610103449 A CN200610103449 A CN 200610103449A CN 1913433 A CN1913433 A CN 1913433A
Authority
CN
China
Prior art keywords
elliptic curve
manet network
network
edlp
manet
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
Application number
CN 200610103449
Other languages
English (en)
Inventor
王顺满
陶然
王越
周四永
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN 200610103449 priority Critical patent/CN1913433A/zh
Publication of CN1913433A publication Critical patent/CN1913433A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Complex Calculations (AREA)

Abstract

本发明属于无线网络安全保护领域,特别涉及到对MANET网络安全保护过程的新型加解密体制和密钥管理方法研究,针对MANET网络特性,分析了可将椭圆曲线密码体制应用到MANET网络的可行性,分析了安全椭圆曲线应满足的条件,给出了安全椭圆曲线密码系统的构造方法和在有安全需求的MANET网络中的密钥交换实现方法。

Description

一种椭圆曲线密钥交换方法在MANET网络中的应用
技术领域
本发明涉及一种椭圆曲线密钥交换方法在MANET网络中的应用,属于信息安全保护领域
背景技术
MANET网络的应用扩展了网络用户的自由度,但是MANET网络的自由也同样对系统的安全性带来了挑战。MANET网络的安全要求体现在访问控制和机密性两个方面,访问控制要确保敏感数据仅由经过授权的用户来访问;机密性则要确保传送的数据只被期望的接收方所接收和理解。MANET网络安全威胁体现在如下几个方面:
1,常规安全威胁依旧存在
由于MANET网络与传统有线网络的最大差别在于传输方式,作为一种网络,传统网络中诸如病毒、恶意攻击、非授权访问等安全风险也都存在于MANET网络。因此,在设计和使用MANET网络时要求对这些问题给出考虑。
2,容易受到非授权访问威胁
MANET网络没有固定边界限制,也没有包括防火墙等安全设备在内的接入控制技术。同时,大多数无线局域网所使用的都是ISM频段,在该频段范围内工作的设备非常多,存在同信道和临信道以及其它设备相互之间的干扰问题。在MANET网络安全方面需要特别关注未经授权的访问问题,未经授权的非法访问会带来严重后果。首先,未经授权的网络用户可以进入网络非法浏览存放在MANET网络上的信息,或者让网络感染上病毒;其次,未经授权的用户进入网络后可以利用该网络作为攻击第三方的跳板,并可能误导对方;第三,入侵者可以对移动终端发动攻击。
3,密钥管理问题
MANET网络密钥管理是保证MANET网络安全非常重要的一个措施,目前还没有针对MANET网络非常有效的密钥管理与分配机制。在设计MANET密钥管理方案时,必须考虑到MANET网络自身特性和移动终端的特性,在系统计算量和通信量等方面给出充分考虑,以适应不断提升的系统安全需求。
4,缺少交互认证
MANET网络设计的另一个缺陷就是移动终端和MANET网络之间认证过程的异步性。根据标准要求,只有成功认证后,认证端口才会处于受控状态。但对用户端来讲并非如此,用户端端口实际上总是处于认证成功后的受控状态。而整个认证只是MANET系统对移动用户端的单向认证,攻击者可以处于用户和MANET系统之间,对用户来说,攻击者充当MANET网络管理者,而对于MANET网络管理者来讲,攻击者又充当合法移动终端。
针对上述MANET网络存在的安全威胁,目前在MANET网络中使用的常规安全控制技术包括:
1,服务集标识符
对多个MANET网络中设置不同的SSID,要求移动终端只有在提供正确的SSID时才可接入网络,以此实现对网络用户的接入控制,并实现对访问权限的区别控制。由于该方式仅采用简单的口令实现安全接入,而且系统SSID非常容易泄漏,因此该方法只能提供较低级别的安全保障。
2,物理地址过滤
由于每个以计算机作为接入移动终端的网卡在制造时就拥有一个唯一的物理地址,因此可以在MANET网络中以手工方式来维护一组允许访问的MAC地址列表,以此实现物理地址过滤。该方案要求MANET网络对所有终端的MAC地址列表随时更新,因此系统可扩展性较差,无法实现移动终端在不同子群之间的漫游;同时,由于移动终端的MAC地址在可以伪造,因此这种方法的安全级别也较低。
3,有线对等加密
在链路层采用RC4对称加密技术,只有用户的加密密钥与网络密钥相同才能被批准接入网络,以此来防止未经授权非法用户对网络的监听以及非法用户对网络的访问。WEP算法根据需要能提供40位、64位或者128位长度的密钥,但该加密算法仍存在许多安全缺陷。例如,在MANET子集内的所有终端用户都必须要共享同一个密钥,只要某个用户丢失或者泄漏了密钥将会造成整个MANET网络的不安全。
4,虚拟专用网络
VPN是指在一个公共IP网络平台上通过隧道以及加密技术保证专用数据的网络安全性,它不属于IEEE 802.11标准的定义范围,但是用户可以借助VPN来抵抗无线网络的不安全因素,同时还可以使用基于Radius的用户认证方案。
5,端口访问控制技术
端口访问控制技术也是用于MANET网络的一种增强性安全解决方案。当移动终端与MANET网络建立关联之后,是否可以使用MANET网络所提供的服务就取决于认证之后的结果。如果通过认证,则MANET网络会为移动终端用户打开这个逻辑端口,否则就不允许该接入用户所提出的服务。
6,扩频技术
与窄带射频相反,扩频发送器用一个非常弱的功率信号在一个很宽的频率范围内发射。扩频通信技术最早在军方用来实现保密通信,最初的设计目的是实现抗噪音、抗干扰并实现对未经授权接入的检测。扩频技术的实现方式有多种,最常用的是直接序列扩频、跳频扩频和跳时以及这些方法的组合。扩频通信系统的主要优点包括抗干扰性强、隐蔽性好、可实现码分多址、抗多径干扰及能实现精确定时和测距等。
虽然采取了相应的安全保护措施,但是在MANET网络中不能与传统网络一样使用过于复杂的算法,因为那样做会增大系统的处理负荷,不但达不到提高系统安全的目的,反而会适得其反,造成系统性能的丧失。鉴于此,本文对在传统网络中较为有效的椭圆曲线密码体制进行分析,找出适合于MANET网络要求的加解密方法和对应的密钥交换方法。
发明内容
本发明的目的在于找到一种将椭圆曲线应用于MANET网络进行安全保护的方法,以满足MANET在移动终端处理能力较弱,并且具有较高安全需求下的安全需求。
本发明的主要内容是:针对如何将高效的椭圆曲线密码体制应用到对MANET网络的安全保护,给出安全加解密和密钥管理方案。
椭圆曲线离散对数问题EDLP的特征在于:E(Fq)上的椭圆曲线离散对数等价(reduces意为具有相同的计算复杂性)到Fqk(Fq的扩域)上的离散对数问题,这就是所谓的对椭圆曲线离散对数问题的MOV攻击方法。
在对EDLP的实际计算时,首先分解n,利用此分解可以容易地检测α的阶是否为n,随机地在E[n]中选取点Q,直至α的阶为n。如果利用数域筛法分解n,其运行时间为L[1/3,n]。
基于椭圆曲线的密钥交换协议取决于EDLP的安全性。对EDLP的求解包括两部分:一是将Fq上的EDLP规约(reduce)到Fqk上的DLP;二是解Fqk上的DLP。所以,基于EDLP的密码系统在安全方面应考虑使reduction和DLP二者在计算上尽量难。
在构造安全的椭圆曲线密码系统时,首先应选用non-supersingular型椭圆曲线,然后利用3种确定系数a2和a6。其中计算#E(Fq)可在多项式时间内得到结果。在确定椭圆曲线后,需要在该椭圆曲线上选取一个安全的点P(阶为素数或含大的素因子)。建立在non-supersingular型椭圆曲线上的密码系统,如果满足上述构造条件,对其进行攻击的方法只能利用PH方法进行reduce和解DLP。
为提高E(Fq)上密码方案的实现算法(点乘法)的运算速度,通常将E定义在GF((2n)m)或GF(2k)上,GF((2n)m)上的倍点、逆和乘法相对速度较快。
本发明的技术方案对椭圆曲线离散对数问题进行分析,找出安全椭圆曲线的生成方法,提出构造椭圆曲线的算法并选取安全点,然后对椭圆曲线在MANET网络中的快速实现算法和密钥交换协议进行分析。
公钥密码体制是建立在单向陷门函数基础上的。本节首先描述了传统的基于有限乘法群上离散对数和整数分解问题的密码体制,分析其在安全方面所面临的问题和其在运算性能上的不足,进而给出基于椭圆曲线的公钥密码体制的应用前景。Diffie-Hellman密钥交换协议的安全性建立在群上离散对数问题上,公钥为gx、gy、p和g,私钥为x和y,通信双方以群上运算结果(gy)x=(gxy)作为短期密钥。离散对数问题定义为:已知由g生成的循环群G和y∈G,且G是有限域GF(P)上的乘法群,求x∈GF(P),使得y=gx(y=loggx)。
在理论上,RSA建立在对大整数n的分解难题上,即,已知合数n,求p和q,使得n=pq。目前,对大于100位十进制整数的有效分解方法是二次筛法QS、数域筛NFS和椭圆曲线分解等算法。利用NFS可在数月时间分解512位RSA合数。基于椭圆曲线的整数分解方法ECM是当前最有效的方法,Peter Montgomery成功地从一个449二进制位的合数分解出一个157二进制位的素因子,这是已知最好的结果。
从对RSA算法的直接攻击考虑,当Φ(n)=(p1-1)(p2-1)仅由小的素因子组成时,则很容易在小的范围内攻击密文。当gcd(p1-1,p2-1)较大时,设p1-1和p2-1的最小公倍数为u,则u<Φ(n),对于a,b∈ZΦ(n)且a,b∈Zu,如果,ab≡1modΦ(n),则ab≡1mod u,此时较容易发现解密密钥b。
由于用户对安全要求的提高,而提高素数和公钥位数(1024二进制位)时,基于乘法群上的公钥算法运行速度以指数数量下降,如:对于目前离散对数攻击方法而言,要求D-H方案的素数模P的长度应大于512二进制位,通常情况下,当P取1024位时,密钥交换时间至少为4秒。1985年Koblitz和Miller提出利用椭圆曲线上的点构成的abelian加法群构造离散对数问题,从已有的攻击算法表明基于有限域椭圆曲线上的对数问题的难度(reduce)在复杂性上与乘法群上的离散对数难度相同,且椭圆曲线所基于的域的运算位数远小于传统离散对数的运算位数,其加法运算很容易用计算机的硬件和软件实现,特别是基于GF(2n)的椭圆曲线。如:基于GF(2255)的密钥交换时间通常为几十毫秒。从安全方面考虑,用户可随意地选择安全的椭圆曲线,如对基于K=GF(p)上的椭圆曲线,p=2n,y2+xy=x3+a2x2+a6,用户可在GF(p)上随机选取a2和a6。在应用方面,利用基于有限域的椭圆曲线可实现数据加密、密钥交换、数字签名等密码方案。
本发明首先对椭圆曲线的离散对数问题进行分析,然后给出构造安全椭圆曲线的有效方法,给出椭圆曲线快速实现算法并找出有效的密钥分配方案。
附图说明
下面结合附图和具体实施方式对本发明作进一步说明。
图1为椭圆曲线密钥交换方法在MANET网络中的应用;
图2描述了在一种有限域上密钥交换的时间和在Web客户-服务器环境下SSL的握手建立共享会话密钥的时间;
图3描述了在另一种有限域上密钥交换的时间和在Web客户-服务器环境下SSL的握手建立共享会话密钥的时间;
图4描绘了在Sun-SPARC10上椭圆曲线倍点xP和乘法群模指数gx运算的时间比较,在安全上(MOV攻击算法)通常认为GF(2155)椭圆曲线的倍点问题与gx≈1024一样难,而运行时间前者比后者快10倍以上。
具体实施方式
一、椭圆曲线安全算法分析
1,椭圆曲线离散对数问题EDLP
Menezes将E(Fq)上的椭圆曲线离散对数等价(reduces意为具有相同的计算复杂性)到Fqk(Fq的扩域)上的离散对数问题,这就是所谓的对椭圆曲线离散对数问题的MOV[11]攻击方法。
任何一个有限abelian群G都可以表示为由它分解成的若干循环群的和。当这种分解是唯一时,即:G=Zn1Zn2Zn3...Zns,其中:ni+1|ni,i=1,2,3,..,s-1,ns>2,Zn(或Z/n)表示阶为n的群,则可引出以下定义。
算法1:求k的部分信息
输入:P0∈E(Fq),P0的最大阶为n1,同时,已知R,且R=l×P0
输出:一个整数l`,l`≡l(mod n`),其中n`是n2的因子。
1:随机选取一个点T∈E(Fq)。
2:计算 α = e n 1 ( P , T ) , β = e n 1 ( P , T ) .
3:计算l`(Fqk上β的离散对数,基是α,即,l`=logαβ)。
算法2:EDLP到Fqk上的DLP的等价方法
输入:P0∈E(Fq),P0的阶为n,R∈<P>。
输出:一个整整数k,且R=l×P0
1:确定最小的整数k,且 E [ n ] &Element; E ( F q k ) .
2:寻找Q∈E[n],且α=en(P,Q)的阶为n。
3:计算β=en(R,Q)。
4:计算l(Fqk上β的离散对数,基是α,即,l=logαβ,n-1>l>0)
其中:<P>表示由E(Fq)上具有最大阶的点P生成的子群。由于β=en(R,Q)=en(kP,Q)=en(P,Q)l=αl,所以,算法2的输出是正确的。当k非常大时,利用算法2求解(l=logR)通常运行指数时间,但对于Supersingular形椭圆曲线的EDLP则不然。
2,Supersingular形椭圆曲线的Reduction算法
对于Supersingular形椭圆曲线文献11和62给出了可在多项式时间运行的算法6.3。Supersingular形椭圆曲线的EDLP到Fqk上DLP的等价算法。
输入:P0∈E(Fq),P0的阶为n,R∈<P>,E(Fq)定义在supersingular形椭圆曲线上。输出:一个整整数k,且R=l×P0
1:确定最小的整数k和c,从6类supersingular形椭圆曲线信息表中[2]
2:随机选取点 Q ` &Element; E [ F q k ] , 设置Q=(cn1/n),Q有n阶。
3:计算α=en(P,Q),β=en(R,Q)。
4:计算l`(Fqk上β的离散对数,基是α,即,l`=logαβ)。
5:检查R=l`×P0是否成立?如果不成立,α必须小于n,转向2;如果成立,则结束。
如果E(Fq)是一个supersingular形椭圆曲线,则,将E(Fq)上的离散对数问题reduce到Fqk上的离散对数问题是一个概率多项式时间的reduction。
在对EDLP的实际计算时,首先分解n,利用此分解可以容易地检测α的阶是否为n,随机地在E[n]中选取点Q,直至α的阶为n。如果利用数域筛法分解n,其运行时间为L[1/3,n]。算法3的reduction时间为概率多项式时间,当考虑有限域离散对数问题的亚指数时间时,如果q是素数或q=pm,其中P是素数,则可以得出推论:
3,Non-supersingular形椭圆曲线的EDLP难度
设non-supersingular上的E(Fq)的特征为p,P是E(Fq)上阶为n的点,R∈<P>,如果gcd(n,q)=1,则可以利用算法2正确地计算logPR。
算法2可以容易地推广到gcd(n,q)≠1的情况。设n=psn`,s>=1,gcd(n`,p)=1,令P`=psP,R`=psR,R`∈<P`>,则利用算法2可得:
        logp`R`≡logpR mod(n`)
设P``=n`P,R``=n`R,则ord(P``)=ps,R``∈<P``>,利用Pohlig-Hellman方法可以计算logP``R``,观察:logP``R``≡logPR mod(ps)。
利用中国剩余定理可以求出logpR。
对于多数non-supersingular上的EDLP的求解时间为完全指数时间。设gcd(n,q)=1,Fq上离散对数的运行时间为L(q,c,1/3)。算法6.2规约(reduce)EDLP到Fqk上的DLP的运行时间为L(qk,c,1/3),算法2中 E [ n ] &Element; E ( F q k ) 或立的条件是n|qk-1,对于随机地选取阶为n的点,n≈q,不可能出现k<=(lnq)2,即,只要n和q同时是素数,则可以满足条件n|qk-1。这对于多数non-supersingular椭圆曲线是容易满足的。
二、构造安全的椭圆曲线
1,EDLP安全理论
安全是指在目前已知的对椭圆曲线离散对数攻击算法的攻击下,椭圆曲线应满足的条件,这主要包括选取安全的椭圆曲线,如何从椭圆曲线上选取安全的点P。首先,由第3章可知,安全椭圆曲线的构造应选取non-supersingular椭圆曲线,即当q=2n时a6≠0,当q是素数时a2 3+27a6 2≠0且#E(Fq)≠q+1。更进一步,当前最有效的攻击算法Pollard-ρ方法解离散对数问题需要
Figure A20061010344900092
步,其中r是n的最大素因子,n是点P的阶,n-1>l>0,为抵御PH的离散对数攻击(求解l),n必须满足包含大的素因子的条件。而对于Menezes的归约(MOV reduction)算法的攻击,必须保证k>c,c足够大。
定理1  E(Fq)上对数问题是完全指数运算时间问题,当且仅当#E(Fq)的素因子r不能整除qv-1,其中v=1,2,3,..,10,
定理2  E(Fq)上对数问题是完全指数运算时间问题,当且仅当#E(Fq)能被一个形如2ip+1的素数整除,且
定理3  设p是一素数,D是一个正整数,则4p=x2+Dy2有解(x,y),当且仅当-D是模p的二次剩余,同时多项式HD(x)有模p的根。
定理4  给定D,设p是一素数,且4p=x2+Dy2,则存在一椭圆曲线E(Fq),满足4#E(Fq)=(x-2)2+Dy2,即椭圆曲线E(Fq)可以由HD(x)模p的根得到。
2,Non-supersingular椭圆曲线加法群的点计数#E(Fq)
构造安全椭圆曲线密码系统首先是要选择一条安全的椭圆曲线,即确定椭圆曲线方程的各项系数,a2和a6。由第3节MOV攻击算法可知E(Fq)的阶的确定对安全是重要的。所以,首先必须计算#E(Fq)。根据Hasse定理, | # E ( F q ) - q - 1 | < = 2 q . 定义在F2n的non-supersingular椭圆曲线E(F2n)的点计数的方法是
# E ( F 2 n ) = 2 n + 1 - t , | t | < 2 2 n . - - - ( 1 )
E(Fq)的基m(cardinality)定义为m=2n+1-t,其中:t是一个整数, | t | < 2 2 n .
传统的计数方法[11]是利用baby setps giant steps(Schoof,1985)方法测试所有可能的t,直至满足(1)。该方法的运算时间为O(2n/4),即,多项式时间。
Schoof算法:
利用Forbenius的特性E
Figure A20061010344900106
影射到自己;发送点(x,y,1)到(xq,yq,1)。
由自同态特征方程:
                2-t+q=0                      (2)
其中,t满足基m=2n+1-t。
取素数l,当E作用在tarsion群E[l]时,式(2)可写成:
                2-t+q≡O mod l                (3)
发现足够多的l(tl),且所有的l满足 &Pi;l > 4 q ;
tl≡t(mod l),利用中国剩余定理可求出t,从而得到#E(Fq)。0<k<l,设k≡q(mod l),寻找τ,0<τ<l,则有:
( x q 2 , y q 2 ) + k ( x , y ) = &tau; ( x q , y q ) = t ( x q , y q ) - - - ( 4 )
(t-τ)(xq,yq)=O,O是E的自同态,由于(xq,yq)是阶为1的点,所以τ≡t(mod l)。
三、构造安全椭圆曲线的算法
安全椭圆曲线的生成方法有以下三种:
1,随机选取椭圆曲线
(a)随机选取a2和a6,且a2,a6∈Fq,构成椭圆曲线E(Fq);
(b)计算#E(Fq);
(c)检验E(Fq)是否包含大素因子r,否则转(a);
(d)检验r是否满足定理6.3或6.4;
(e)E(Fq)是安全椭圆曲线。
2,给定阶m求曲线E(Fq)
当q是一个素数时,E(Fq)的计算方法如下:
(a)随机选取一整数m,且 q + 1 - 2 q &le; m &le; q + 1 + 2 q , 同时m包含的大素因子r满足定理6.3或6.4;
(b)利用定理6.5和6.6(文献64 Francois Morain)算法计算a2和a6,且a2,a6∈Fq
(c)E(Fq)是安全椭圆曲线。
当q=2n时,利用Lay-Zimmer算法计算E(Fq)。
(a)选择一小整数cmax
(b)利用Lay-Zimmer算法计算a2和a6,其中椭圆曲线E(F2n)的阶m=cr,r是素数,c<cmax
(c)如果r能整除(2n)v-1,则转(a);其中v=1,2,3,....,10;
(d)E(F2n)是安全椭圆曲线。
3,Weil定理方法
设F2n上,n的小素因子为k。
(a)随机选取一椭圆曲线E:y2+xy=-x3+a2x2+a6,a6≠0,,a2 a 6 &Element; F 2 k , 由于F2k是F2n的子域,所以,a2 a 6 &Element; F 2 n , E是F2n上的椭圆曲线;
(b)计算 w = # E ( F 2 k ) ;
(c)设t=qk+1-w,c=m/k,定义数列{Vn},V1=2,V2=t,Vn=t Vn-1-2k Vn-2,n>2,计算Vc u = # E ( F 2 n ) = 2 n + 1 - V c ;
(d)如果u不能被一个大素数r整除,则转(a);
(e)如果r能整除(2n)v-1,则转(a);其中v=1,2,3,...10;
(f)E(F2n)是安全椭圆曲线。
四、选取安全点
对于基于离散对数问题的密码放案的攻击是从点lP的倍数l。对于Pollard-ρ攻击方法而言,最安全点P的阶应为素数。
P的阶的计算方法是:测试一些a和b,直至aP=bP,且b>a,则最小的c即为点P的阶,且cp=(b-a)P=OE
五、椭圆曲线的快速实现算法
为实现有限域上的快速逆和乘法,椭圆曲线的实现可以在复合域GF((2n)m)和GF(2k)两种有限域上,其中:GF((2n)m)≌GF(2nm)如:n=16,m=素数或gcd(m,n)=1。使用符合域的好处在于其基本域GF(2n)可以预计算{22,23,..,2nm+1),从而提高速度。本节主要内容参照文献65和66。
1,乘法nP和倍点算法
设P=(x,y),传统的倍点2P=(x1,y1)算法是利用E(Fq)群加法
x 1 = ( x + y x ) 2 + ( x + y x ) + &alpha; - - - ( 1 )
y 1 = x 2 + ( x + y x ) x 1 + x 1 - - - ( 2 )
由上式可知,倍点需要有限域Fq上的7次加法、2次乘法、1次平方及1次逆(1/x)运算。而nP的计算是反复倍点运算。模拟有限域上的模指数运算可以提高速度,如:平方乘,k-ary,window等方法。文献9给出了E(Fq)的k-ary乘法算法。
P∈E(Fq),n=(et,et-1,..,e1,e0)b,b=2k,k>=1(或称为窗口长度,如:k=5),则Q=nP可由以下算法求出:
nP算法:(输入:P∈E(Fq),输出:Q=nP)
1:预计算
P0←OE
Fori=1 to 2k-1
Pi=Pi-1+P;(Pi=iP)
2 Q←OE
3 for i=t to 0
Q←2kQ;/*k-ary t次点加*/
Q←Q+Pei
4 return(Q).
为进一步提高速度,文献65给出了直接计算2k的方法,该方法较反复倍点运算快。更进一步,文献66-4.3节给出滑动窗口方法,并在第7章给出了一种改进的算法,预计算2iP(2P,4P,8P,..)。
2,有限域GF((2n)m)元素的逆
椭圆曲线乘法运算中最耗费时间的运算是逆运算。为提高效率,考虑在有限域GF((2n)m)上的椭圆曲线,GF((2n)m)和GF(2n)/P(x))同构,如:GF((216)11)≌GF(2176),P(x)=x11+x2+1。其中: P ( x ) = x m + &Sigma; i = 0 m - 1 p i x i , p i &Element; GF ( 2 n ) , 如果gcd(m,n)=1,则P(x)是定义在GF(2n)上度为m的不可约首一多项式。设A∈GF((2n)m),则
A(x)=am-1xm-1+am-2xm-2+..+a1x+a0                                           (6.3)
其中:ai∈GF(2n)。利用Fermat小定理A2nm-1=AA2nm-2=1 mod P(x),可得
        A-1=A2nm-2
A的逆可以通过加法链22nm-2=2+22+23+..+2nm+1预计算提高运算速度。
Ar=Ar-1A,
r - 1 = 2 mn - 1 2 n - 1 - 1 = 2 n + 2 2 n + 2 3 n + . . + 2 ( m - 1 ) n
A-1=(Ar)-1Ar-1
3,有限域GF((2n)m)元素的加法
C(x)=A(x)+B(x),系数相加,由于系数是n(8、16或32)位二进制,所以速度较快。
4有限域GF((2n)m)元素的乘法
乘法是E(GF((2n)m))中第2费时的运算。设A,B∈GF((2n)m),并表示为(6.3)式,C(x)=A(x)B(x)mod P(x)。令m=2tl-1,t是整数,k=2m+1,C(x)的度<2m-1,A和B可以表示为以下形式。
A ( x ) = x k 2 ( 0 x k 2 - 1 + a k - 2 x k 2 - 2 + . . . + a k 2 ) + ( a k 2 - 1 x k 2 - 1 + . . . + a 0 ) = A h x k 2 + A l
B ( x ) = x k 2 ( 0 x k 2 - 1 + b k - 2 x k 2 - 2 + . . . + b k 2 ) + ( b k 2 - 1 x k 2 - 1 + . . . + b 0 ) = B h x k 2 + B l
5点的阶与安全点
设点P,对于任意a,b,当b>a时,如果a*P=b*P成立,则c*P=OE,其中c=b-a.。最小的c即为点P的阶。因为c能够整除椭圆曲线的阶,所以,只要已知椭圆曲线的阶包含大素因子,利用Weil方法,确定椭圆曲线E,就能够容易地找到阶为素数的安全点。
本文在有限域GF(2255)=GF((215)17),y2+xy=x3+161,阶为素数的安全点P为:const ecPoint curve_point={
/*P.x=*/{17,0x38cc,0x052f,0x2510,0x45aa,0x1b89,0x4468,0x4882,0x0d67,0x4feb,0x55ce,0x0025,0x4cb7,0x0cc2,0x59dc,0x289e,0x65e3,0x56fd,},
/*P.y=*/{17,0x31a7,0x65f2,0x18c4,0x3412,0x7388,0x54c1,0x539b,0x4a02,0x4d07,0x12d6,0x7911,0x3b5e,0x4f0e,0x216f,0x2bf2,0x1974,0x20da,},};/*curve_point*/
P的阶为一个255位的素数:
1026dd85081b82314691ced9bbec30547840e4b0e4bf72d8b5e0d258442bbcd31。
六、密钥交换协议及实现
密钥交换是通信实体A和B建立本次会话密钥的协议,设A和B已知椭圆曲线公钥信息,即椭圆曲线E基于的域GF(q)、椭圆曲线E、椭圆曲线上的点P和点P的阶n。在本文的安全WWW环境中,A方作为Web服务器,B方是Win95客户浏览器,Web在收到浏览器的握手Hello信息后,向浏览器发送椭圆曲线公钥信息,主要包括:
ECParameters  ::=SEQUENCE  {
       version    INTEGER  --  版本号,
       fieldID    FieldID  --  定义E的有限域GF(q)
       curve      Curve,  --  椭圆曲线a和b的系数
       base       ECPoint,--  用于密钥交换的点P
       order      INTEGER,--  P的阶
       cofactor  INTEGER, … }
A的私钥为dA,公钥为QA=dAP=(xA;yA)。B的私钥为dB,公钥为QB=dBP=(xB;yB)。
模拟Diffie-Hellman协议可得出基于椭圆曲线的基本密钥交换协议,即,实体B收到QA后,计算会话密钥K=QA dB,同理,A计算会话密钥K=QB dA。下面是一个具有鉴别功能的密钥交换过程:
(1)实体A
(a)选择随机整数KA,KA∈GF(q),1≤KA≤n-1;
(b)计算点P的倍数,(x1;y1)=RA=KAP;
(c)A发送RA至B。
(2)实体B
(a)选择随机整数KB,KB∈GF(q),KB∈{1,2,..,n-1};
(b)计算点P的倍数,(x2;y2)=RB=KBP;
(c)B发送RB至A。
(3)实体A计算共享的会话密钥
(a)计算SA=KA+x1dAxAmod n;
(b)计算会话密钥K=sA(RB+x2xBQB)。
(4)实体B计算共享的会话密钥
(a)计算sB=KB+x2dBxB mod n;
(b)计算会话密钥K=sB(RA+x1xAQA)。
上述协议的安全性依赖于椭圆曲线离散对数问题,在实体A已知QB和实体A已知QB的情况下,双方可以对收到的RB和RA数据源进行鉴别。表6.1和6.2描述了在两种有限域上密钥交换的时间和在Web客户-服务器环境下SSL的握手建立共享会话密钥的时间。

Claims (6)

1、一种椭圆曲线密钥交换方法在MANET网络中的应用,其特征是:分析椭圆曲线密码体制的安全性和在MANET网络使用的可行性,设计符合要求的MANET网络椭圆曲线生成算法,给出椭圆曲线安全点的选取方法以及对椭圆曲线密码体制密钥分配方法。
2、根据权利要求1所述的一种椭圆曲线密钥交换方法在MANET网络中的应用,其椭圆曲线离散对数问题EDLP的特征在于:E(Fq)上的椭圆曲线离散对数等价(reduces意为具有相同的计算复杂性)到Fqk(Fq的扩域)上的离散对数问题,这就是所谓的对椭圆曲线离散对数问题的MOV攻击方法。
3、根据权利要求1所述的一种椭圆曲线密钥交换方法在MANET网络中的应用,其特征在于:在对EDLP的实际计算时,首先分解n,利用此分解可以容易地检测α的阶是否为n,随机地在E[n]中选取点Q,直至α的阶为n。如果利用数域筛法分解n,其运行时间为L[1/3,n]。
4、根据权利要求1所述的一种椭圆曲线密钥交换方法在MANET网络中的应用,其特征在于:基于椭圆曲线的密钥交换协议取决于EDLP的安全性。对EDLP的求解包括两部分:一是将Fq上的EDLP规约(reduce)到Fqk上的DLP;二是解Fqk上的DLP。所以,基于EDLP的密码系统在安全方面应考虑使reduction和DLP二者在计算上尽量难。
5、根据权利要求4所述椭圆曲线密码体制应用,在构造安全的椭圆曲线密码系统时,首先应选用non-supersingular型椭圆曲线,然后利用3种确定系数a2和a6。其中计算#E(Fq)可在多项式时间内得到结果。在确定椭圆曲线后,需要在该椭圆曲线上选取一个安全的点P(阶为素数或含大的素因子)。建立在non-supersingular型椭圆曲线上的密码系统,如果满足上述构造条件,对其进行攻击的方法只能利用PH方法进行reduce和解DLP。
6、根据权利要求5所述的将椭圆曲线密码体制应用到MANET网络中的情况,为提高E(Fq)上密码方案的实现算法(点乘法)的运算速度,通常将E定义在GF((2n)m)或GF(2k)上,GF((2n)m)上的倍点、逆和乘法相对速度较快。
CN 200610103449 2006-07-21 2006-07-21 一种椭圆曲线密钥交换方法在manet网络中的应用 Pending CN1913433A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 200610103449 CN1913433A (zh) 2006-07-21 2006-07-21 一种椭圆曲线密钥交换方法在manet网络中的应用

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200610103449 CN1913433A (zh) 2006-07-21 2006-07-21 一种椭圆曲线密钥交换方法在manet网络中的应用

Publications (1)

Publication Number Publication Date
CN1913433A true CN1913433A (zh) 2007-02-14

Family

ID=37722219

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200610103449 Pending CN1913433A (zh) 2006-07-21 2006-07-21 一种椭圆曲线密钥交换方法在manet网络中的应用

Country Status (1)

Country Link
CN (1) CN1913433A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111193593A (zh) * 2019-12-27 2020-05-22 太原理工大学 一种rsa公钥密码破解方法
CN112887096A (zh) * 2021-02-20 2021-06-01 山东区块链研究院 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统
CN115834061A (zh) * 2023-02-15 2023-03-21 深圳市永达电子信息股份有限公司 一种基于cpk的标识密钥生成方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111193593A (zh) * 2019-12-27 2020-05-22 太原理工大学 一种rsa公钥密码破解方法
CN111193593B (zh) * 2019-12-27 2023-04-18 太原理工大学 一种rsa公钥密码破解方法
CN112887096A (zh) * 2021-02-20 2021-06-01 山东区块链研究院 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统
CN115834061A (zh) * 2023-02-15 2023-03-21 深圳市永达电子信息股份有限公司 一种基于cpk的标识密钥生成方法

Similar Documents

Publication Publication Date Title
Zhou et al. PSMPA: Patient self-controllable and multi-level privacy-preserving cooperative authentication in distributedm-healthcare cloud computing system
JP5001176B2 (ja) 署名生成装置、署名生成方法及び署名生成プログラム
CN1207867C (zh) 一种安全的数字签名系统及其数字签名方法
CN1251715A (zh) 有限域离散对数密码系统的割圆多项式结构
CN101039182A (zh) 认证系统及用户标识证书发放方法
CN1889433A (zh) 基于隐式公钥证书的双方认证密钥协商方法及系统
Li et al. Provably secure certificate-based signature scheme without pairings
CN1708942A (zh) 设备特定安全性数据的安全实现及利用
CN101064595A (zh) 一种计算机网络安全输入认证系统和方法
RU2003111977A (ru) Способы аутентификации потенциальных членов, приглашенных присоединиться к группе
CN1531244A (zh) 生成加密数据流密码的方法和装置
Karati et al. Provably secure and lightweight identity-based authenticated data sharing protocol for cyber-physical cloud environment
Xie et al. Anonymous three-party password-authenticated key exchange scheme for telecare medical information systems
CN1921387A (zh) 认证处理方法以及认证处理装置
Savu Signcryption scheme based on schnorr digital signature
CN1806224A (zh) 用于防御微分功率分析攻击的方法
Aroosa et al. Securing NDN‐Based Internet of Health Things through Cost‐Effective Signcryption Scheme
CN1913433A (zh) 一种椭圆曲线密钥交换方法在manet网络中的应用
Han et al. TCA-PEKS: Trusted certificateless authentication public-key encryption with keyword search scheme in cloud storage
Bakhtiari Chehelcheshmeh et al. Quantum‐resistance authentication in centralized cognitive radio networks
CN1697365A (zh) 一种面向移动代理的安全传输方法
CN1592196A (zh) 数据共享方法、委托处理方法及装置
Yang et al. Revocable identity-based proxy re-signature against signing key exposure
CN1207866C (zh) 一种安全的数字签名系统与方法
CN1735858A (zh) 构造适合于加密目的的超椭圆曲线的方法以及使用这种方法的密码设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20070214