第6章 椭圆曲线密码体制

合集下载

椭圆曲线公钥密码体制(ECC)

椭圆曲线公钥密码体制(ECC)

F2m上椭圆曲线的点的加法逆元
• P = (xP, yP)的加法逆元 -P = (xP, xP + yP) • P + (-P) = O • P+O=P
F2m上椭圆曲线不同的点的加法运算
P = (xP, yP) 。如果 P和 Q是不同的点并且P不等于 -Q, 则P + Q = R
s = (yP - yQ) / (xP + xQ) xR = s2 + s + xP + xQ + a yR = s(xP + xR) + xR + yP
F上的椭圆曲线 2m
定义: 对于曲线
y2 +xy= x3 + ax2 + b b不为0,a,b 属于 F2 m
的解的集合构成
F2m 上的椭圆曲线群。记为 E ( F m )
2
F2m上的椭圆曲线举例
• 作为一个简单的例子, 考略 F2 4 , 其上的不可约多项式为 f(x) = x4 + x + 1. • 元素g = (0010)是生成元. • g的幂为: g0 = (0001) g1 = (0010) g2 = (0100) g3 = (1000) g4 = (0011) g5 = (0110) g6 = (1100) g7 = (1011) g8 = (0101) g9 = (1010) g10 = (0111) g11 = (1110) g12 = (1111) g13 = (1101) g14 = (1001) g15 = (0001)
例题
椭圆曲线T=(m=4,f(x)=x4+x+1,g=0010,a=g4,b=g0) 点P=(g6,g8) 求点R=2P

椭圆曲线密码体制的研究与实现

椭圆曲线密码体制的研究与实现

西安电子科技大学硕士学位论文椭圆曲线密码体制的研究与实现姓名:李德庆申请学位级别:硕士专业:电路与系统指导教师:李小平20080101第三章有限域算法的实现第三章有限域算法的实现素域结构简单,元素的表达也比较方便,在其上也有很多比较成熟的算法,比较适合软件实现。

在这样的域中,主要问题通常是模素数的大数运算。

而在有限域GF(2”)中,元素都是一定长度的O和1的比特串,特别符合硬件中对元素的表示,而当采用最优正规基来表示域元素的时候,可以充分地利用移位运算,元素的运算是十分高效的,所以,我们这里采用基于最优正规基的二进制有限域来实现椭圆曲线密码体制。

3.1加法运算有限域GF(2”)的加法运算,就是对元素的二进制表示序列按位进行异或运算。

输入数据:口,6EGF(2”),输出数据为c∈GF(24),利用异或门来实现,利用VcrilogHDL描述就是简单的语句,n船i{弘c=口“6;,生成运算模块如图3.1所示,其运算几乎不占用时钟周期。

因为对于域元素来讲,其加法逆元为其自身,所以减法运算等同于加法运算。

图3.1加法运算模块3.2平方运算用正规基来表述的域元素,最大的运算优势就是平方运算,这个在多项式基下比较费时和消耗资源的运算,转变为一个简单的循环移位操作。

输入数据:口∈GF(2“),输出数据为口2∈GF(2”),利用控制信号rlRoR来控制循环移位,在实际工作中,一个时钟周期内完成运算,并稳定输出,生成运算模块见图3.2.24椭圆曲线密码体制的研究与实现图3.2平方运算模块3.3乘法运算有限域的乘法运算具有无进位,无误差的特点,在纠错码、密码学、数字信号处理领域有着广泛的应用,本节在分析各种算法原理和硬件结构的基础上,给出了乘法矩阵的几种运算方法,并设计了满足所有基于I型或者Ⅱ型最优正规基的串并皆可的乘法器。

3.3.1乘法矩阵的构造根据式(2-7),乘法运算的核心部件为乘法矩阵,在最优正规基的情况下,该矩阵是一个稀疏矩阵,除第l列只有一个l外,其余各列都只有两个l。

椭圆曲线密码(PDF)

椭圆曲线密码(PDF)

内容安全研究室朱潜报告的主要内容⏹群和域的相关概念⏹椭圆曲线的定义和运算法则⏹椭圆曲线离散对数问题⏹椭圆曲线密码体制⏹椭圆曲线密码的优势⏹曲线密码体制的应用为什么要在有限域上研究椭圆曲线密码?密码学常在有限域的基础上研究椭圆密码曲线,在有限域的椭圆m基础上。

基于有限域Fp,而不是使用实数域、曲线主要是基于Fp和F2是因为实数计算时会产生截段误差,无法满足密码算法的精确性,而m是由于可以在计算机处理时大大提且实数运算的速度很慢。

基于F2高处理速度。

群和域的相关概念定义1:任意给定一个非空集合F和其上的二元运算“*”,如果满足(1)封闭性:对任意a,b∈F,存在c ∈F,使得c=a*b ∈F;(2)结合律:对于任意a,b∈F,都有(a*b)*c=a*b*c;(3)单位元e存在:即存在e ∈F,对于任意a ∈F,都有a*e=e*a;(4)逆元存在:对于任意a ∈F,存在b ∈F,使得a*b=b*a=e;则称集合F关于二元运算“*”构成群,记为(F,*)。

在群(F,*)中,如果对于任意a ,b∈F,都有a*b=b*a,则称群(F,*)是交换群,也称为阿贝尔(Abel)群。

定义2:设“+”,“*”是G上的二元运算,如果满足:(1)(G,+)是一个交换群,其单位元记为0;(2)(G-{0},*)是交换群,其单位元记为1;(3)运算“*”对“+”可分配,即对任意a ,b,c∈G,都有a*(b+c)=a*b+a*c(a+b)*c=a*c+b*c则称(G,+,*)是域。

群和域的相关概念定义3:有限域,如果域F中的元素个数有限,则称F为有限域或伽罗华域,其中F中的元素个数称为有限域F的阶,记为∣F ∣。

对有限域而言,其元素的个数必为一素数的方幂。

即存在一个q阶有限域F,当且仅当q是一个素数的幂,即q=p m,其中,p是一个素数,并称为域F的特征,m是一个正整数。

若m=1,则域F就称为素域。

定义4:设p是一个素数,以p为模,则模p的全体余数的集合{0,1,2,……,p-1}关于模p的加法和乘法构成一个p阶有限域,简称素域,并且用符号Fp表示。

椭圆曲线密码ppt课件

椭圆曲线密码ppt课件
地选择一个大素数p,且要求p-1有 大素数因子。再选择一个模p的本原元α。将p 和α公开。
⑴ 密钥生成
• 用户随机地选择一个整数d作为自己的秘密的解 密钥,2≤d≤p-2 。
• 计算y=αd mod p,取y为自己的公开的加密钥。 • 由公开钥y 计算秘密钥d,必须求解离散对数,
由于上述运算是定义在模p有限域上的,所以称为 离散对数运算。
③从x计算y是容易的。可是从y计算x就困难得多, 利用目前最好的算法,对于小心选择的p将至少 需用O(p ½)次以上的运算,只要p足够大,求解 离散对数问题是相当困难的。
篮球比赛是根据运动队在规定的比赛 时间里 得分多 少来决 定胜负 的,因 此,篮 球比赛 的计时 计分系 统是一 种得分 类型的 系统
要小,所以ELGamal密码的加解密速度比RSA稍快。 ②随机数源
由ELGamal密码的解密钥d和随机数k都应是高质量 的随机数。因此,应用ELGamal密码需要一个好的随机 数源,也就是说能够快速地产生高质量的随机数。 ③大素数的选择
为了ELGamal密码的安全,p应为150位(十进制数) 以上的大素数,而且p-1应有大素因子。
三、椭圆曲线密码
2、椭圆曲线
②定义逆元素
设P(x1 ,y1)和Q(x2 ,y2)是解点,如果 x1=x2 且y1=-y2 ,则
P(x1 ,y1)+Q(x2 ,y2)=0 。
这说明任何解点R(x ,y)的逆就是
R(x ,-y)。
注意:规定无穷远点的逆就是其自己。
O(∞,∞)=-O(∞,∞)
篮球比赛是根据运动队在规定的比赛 时间里 得分多 少来决 定胜负 的,因 此,篮 球比赛 的计时 计分系 统是一 种得分 类型的 系统
三、椭圆曲线密码

椭圆曲线密码体制

椭圆曲线密码体制

椭圆曲线密码体制
椭圆曲线 有限域上的椭圆曲线 椭圆曲线上的密码算法 椭圆曲线密码体制的安全性
椭圆曲线
椭圆曲线方程的一般形式是
y2 axy by x3 cx2 dx e

其中,a,b,c,d,e是满足一些简单条件的实数。椭圆曲线 的图形并非椭圆,只是其方程与计算椭圆周长的方程类似。 椭圆曲线除了所有满足曲线方程的点之外还包括一个特殊的 点,即无穷远点,记为O。
A选小于n的整数nA作为秘密钥,并计算PA=nAG作为公钥。 B类似选取自己的秘密钥nB和公开钥PB=nBG。 A和B分别计算K=nAPB和K=nBPA产生共享的秘密钥。
椭圆曲线上的密码算法
ECC实现ElGamal密码体制
选取一条椭圆曲线,得到Ep(a,b),将明文消息通过编码嵌入曲线上得到点pm。 取Ep(a,b)的生成元G,Ep(a,b)和G为公开参数。设用户A的秘密钥为nA,公开 钥为PA=nAG
椭圆曲线密码体制
椭圆曲线 有限域上的椭圆曲线 椭圆曲线上的密码算法 椭圆曲线密码体制的安全性
有限域上的椭圆曲线
定义 椭圆曲线上的加法:如果椭圆曲线上的三个点位于同一直线上,
那么它们的和为O。从本定义导出一系列椭圆曲线上点的加法规则。
O为加法单位元,即对ECC上任一点P,有P+O=P。 1)设P1=(x,y)是ECC上一点,加法逆元定义为P2= -P1=(x,-y)。 2)P1,P2连线延长到无穷远,得到ECC上另一点O,即P1,P2,O三点共线,所以有 P1+P2+O=O,P1+P2=O,P2= -P1,O+O=O,O= -O。 3)设Q,R是ECC上x坐标不同的两点,Q+R定义为:画一条通过Q,R的直线与ECC交于 P1(交点是唯一的,除非做的Q,R点的切线)。由Q+R+P1=O,得Q+R= -P1。椭圆曲线 及Q+R的示意如图所示。

第6章 椭圆曲线密码系统

第6章 椭圆曲线密码系统

橢圓曲線範例二
質數體為GF(11)且橢圓曲線公式 y2 = x3 + x + 1 這個橢圓曲線上的點,除無限遠點∞外, 另有13個點: (0,1),(0,10),(1,6),(1,5),(2,0),(3,8),(3,3),(4,6),(4,5), (6,6),(6,5),(8,2),(8,9) 點的座標值屬於GF(11) 因為共有14點,所以此曲線的級數(order)為14
橢圓曲線點的級數
加法公式的計算(加法、減法、乘法、除法/反元素) 須在相關的有限體進行,若選取質數體時僅需進行模 算術(modular arithmetic),若選取二元體則需進行 多項式計算(polynomial arithmetic) 點乘法計算k․P,其中k為正整數而P為橢圓曲線上 的一個點 如果橢圓曲線上的一個點P我們找到最小的正整數n 滿足n․P = ∞ (無限遠點),則n稱為點P的級數 (order) 橢圓曲線上點的級數一定是曲線級數的因數
如果採用有限體gfq0104212431344342gf501015203833464566658289如果如果如果如果modulararithmeticpolynomialarithmeticg012g423g2gg424g345g316g247g438g049g019gg212g243gg213gg01652g333g664g655g386g0107gg017gmathematicamathematicamod3x1g2powermod2y1modslopex1x3fromt1downto相同點相加pointdoublng相異點相加pointadditi如果係數k可用位元的二進制數字來代表通常其中平均有半數為次相同點相加pointdoubling的相異點相加pointaddition由左向右二元演算法12345141234511000000111001下表為stepq3p11q6p2344次點相加有效率由右向左二元演算法計算t1do相同點相加pointdoublng相異點相加pointadditinonadjacentformnafnaf演算t1downto先將相同點相加pointdoubling則再進行相異點相加pointpointubtractio的減法與加法工作量幾乎相同

第6章 椭圆曲线密码体制PPT课件

第6章 椭圆曲线密码体制PPT课件
一、椭圆曲线公钥密码ECC
(Elliptic Curve Cryptography)
二、 McEliece
椭圆曲线公钥密码ECC
1. 简要历史
椭圆曲线(Elliptic curve)作为代数几何中的重要问题已有 100多年的研究历史
1985年,N. Koblitz和V. Miller独立将其引入密码学中,成 为构造双钥密码体制的一个有力工具。
椭圆曲线加密算法
背景 – RSA中用到了因子分解的困难性,而为了增加困难 得加大数的位数,从而导致计算速度变慢。 – ECC可以用较小的密钥长度达到较高的计算难度
获得同样的安全性,密钥长度较RSA短得多 被IEEE公钥密码标准P1363采用
椭圆曲线公钥密码ECC
椭圆曲线上一个点P的k倍表示表示P+P+…(k个点P “相加”),记为kP。
有限域上的椭圆曲线点集产生方法
对每一x(0≤x<p且x为整数),计算
x3+ax+b mod p 决定求出的值在模p下是否有平方根,如果没
有则椭圆曲线上没有与这一x对应的点;如果 有,则求出两个平方根。
Ep(a,b)上加法
如果P,Q∈ Ep(a,b)
–P+O=P
–如果P=(x,y),则(x,y)+(x,-y)=O
利用有限域GF(2n )上的椭圆曲线上点集所构成的群上定义 的离散对数系统,可以构造出基于有限域上离散对数的一 些双钥体制--椭圆曲线离散对数密码体制(ECDLC ),如 Diffie-Hellman,ElGamal,Schnorr,DSA等。
10余年的研外最重要的公 钥密码之一。与RSA算法相比它也有很多独 特的优点。出于国家安全战略考虑,国内学 术界和管理部门一直希望能够在国内一些应 用场合使用椭圆曲线密码。在推广和使用椭 圆曲线密码的过程中,相应的芯片是必不可 少的。然而,由于椭圆曲线密码算法是一种 很复杂的数学算法,如何将椭圆曲线密码算 法芯片化,国内外没有成熟技术。

椭圆曲线密码体制的研究与实现的开题报告

椭圆曲线密码体制的研究与实现的开题报告

椭圆曲线密码体制的研究与实现的开题报告一、选题背景和意义随着现代密码学的发展,传统的RSA和DSA等密码体制在一定程度上已不能满足现代信息安全需求,因此需要快速、高效、安全的新型密码体制。

椭圆曲线密码体制具有高强度、短密钥、低计算量等优点,已经成为现代密码学的重要研究领域之一。

椭圆曲线密码体制被广泛应用于数字签名、密钥协商、加密、认证等方面,是信息安全领域不可或缺的一部分。

本课题旨在深入研究椭圆曲线密码体制的理论与实现,探索基于椭圆曲线密码体制的安全通信技术,为信息安全提供有效的保障。

二、研究内容和目标1.研究椭圆曲线密码体制的基本理论和应用领域。

2.探究椭圆曲线密码体制的实现方法,包括ECDSA、ECDH等常用算法。

3.使用Python等编程语言实现椭圆曲线密码体制相关算法,并验证其正确性和安全性。

4.分析椭圆曲线密码体制的优缺点,比较其与传统密码体制的差异。

5.设计一种基于椭圆曲线密码体制的安全通信协议,并进行实际应用测试。

三、研究方法和技术路线1.文献调研:收集椭圆曲线密码体制的相关文献资料,深入了解其基本理论和应用领域。

2.算法研究和实现:探究椭圆曲线密码体制的实现方法,使用Python等编程语言实现相关算法,并验证其正确性和安全性。

3.性能比较和应用研究:将椭圆曲线密码体制与传统密码体制进行比较,分析其优缺点,并设计基于椭圆曲线密码体制的安全通信协议,进行实际应用测试。

四、预期成果1.深入了解椭圆曲线密码体制的基本原理和应用领域,掌握其实现方法和算法实现技术。

2.实现ECDSA、ECDH等常用椭圆曲线密码体制算法,验证其正确性和安全性。

3.分析椭圆曲线密码体制的优缺点,与传统密码体制进行比较,并设计一种基于椭圆曲线密码体制的安全通信协议。

4.论文撰写和答辩,取得满意的评价和认可。

五、进度计划时间节点计划内容第1-2周文献调研,整理研究思路第3-4周研究椭圆曲线密码体制的基础理论和算法第5-6周实现ECDSA、ECDH等常用算法,并验证其正确性和安全性第7-8周性能比较和优缺点分析第9-10周设计基于椭圆曲线密码体制的安全通信协议第11-12周实际应用测试和结果分析第13-14周论文撰写和修改第15-16周答辩和总结六、参考文献[1] 欧阳先明.椭圆曲线密码概论[M]. 北京: 清华大学出版社,2020.[2] 钱涛, 蔡旭, 杨振华. 椭圆曲线密码及其应用[M]. 北京: 电子工业出版社, 2015.[3] 邵德良, 刘斌. 椭圆曲线密码学原理与应用[D]. 北京: 北京邮电大学, 2012.[4] 任炳良, 蒋伟伟. 椭圆曲线密码及其应用[M]. 北京: 电子工业出版社, 2014.[5] Menezes, A. J., van Oorschot, P. C., Vanstone, S. A. Handbook of Applied Cryptography [M]. New York: CRC Press, 1996.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

举例
y2≡x3+18x+15 mod 23 y2≡x3+17x+15 mod 23
/research/ec33_example.html
EC-1 EC-
EC-2 EC-
有限域上的椭圆曲线
曲线方程中的所有系数都是某一有限域GF(p) 曲线方程中的所有系数都是某一有限域GF(p)中的元素 GF(p)中的元素 (p为一大素数 (p为一大素数),最为常用的曲线方程为 为一大素数) y2=x3+ax+b mod(p) (a,b∈GF(p),4a3+27b2≠0 mod p) (a,b∈ (mod23),方程 例:p=23,a=b=1, 4a3+27b2=8 ≠0 (mod23),方程 mod(p),图形为连续图形。 为y2=x3+x+1 mod(p),图形为连续图形。我们感兴趣 的是在第一象限的整数点。 (a,b)表示 表示ECC上点集 的是在第一象限的整数点。设Ep(a,b)表示ECC上点集 {(x,y)|0≤x<p,0 ≤y<p,且x,y均为整数}并上O. {(x,y)|0≤x<p,0 ≤y<p,且x,y均为整数 并上O. 均为整数}
椭圆曲线加密算法
背景 – RSA中用到了因子分解的困难性,而为了增加困难 RSA中用到了因子分解的困难性 中用到了因子分解的困难性, 得加大数的位数,从而导致计算速度变慢。 得加大数的位数,从而导致计算速度变慢。 – ECC可以用较小的密钥长度达到较高的计算难度 ECC可以用较小的密钥长度达到较高的计算难度
公钥密码
一、椭圆曲线公钥密码ECC 椭圆曲线公钥密码ECC (Elliptic Curve Cryptography) McEliece公钥密码 二、 McEliece公钥密码
椭圆曲线公钥密码ECC 椭圆曲线公钥密码ECC
1. 简要历史 椭圆曲线( 椭圆曲线(Elliptic curve)作为代数几何中的重要问题已有 curve)作为代数几何中的重要问题已有 100多年的研究历史 100多年的研究历史 1985年 1985年,N. Koblitz和V. Miller独立将其引入密码学中,成 Koblitz和 Miller独立将其引入密码学中 独立将其引入密码学中, 为构造双钥密码体制的一个有力工具。 为构造双钥密码体制的一个有力工具。 利用有限域GF(2 利用有限域GF(2n )上的椭圆曲线上点集所构成的群上定义 的离散对数系统, 的离散对数系统,可以构造出基于有限域上离散对数的一 些双钥体制--椭圆曲线离散对数密码体制 椭圆曲线离散对数密码体制( 些双钥体制--椭圆曲线离散对数密码体制(ECDLC ),如 Diffie-Hellman,ElGamal,Schnorr,DSA等 Diffie-Hellman,ElGamal,Schnorr,DSA等。 10余年的研究 尚未发现明显的弱点。 10余年的研究,尚未发现明显的弱点。 余年的研究,
研究现状
椭圆曲线密码是除RSA算法以外最重要的公 椭圆曲线密码是除RSA算法以外最重要的公 钥密码之一。 RSA算法相比它也有很多独 钥密码之一。与RSA算法相比它也有很多独 特的优点。出于国家安全战略考虑, 特的优点。出于国家安全战略考虑,国内学 术界和管理部门一直希望能够在国内一些应 用场合使用椭圆曲线密码。 用场合使用椭圆曲线密码。在推广和使用椭 圆曲线密码的过程中,相应的芯片是必不可 圆曲线密码的过程中, 少的。然而, 少的。然而,由于椭圆曲线密码算法是一种 很复杂的数学算法, 很复杂的数学算法,如何将椭圆曲线密码算 法芯片化,国内外没有成熟技术。 法芯片化,国内外没有成熟技术。
Ep(a,b)上加法 (a,b)上加法
如果P,Q∈ 如果P,Q∈ Ep(a,b)
–P+O=P –如果P=(x,y),则(x,y)+(x,-y)=O 如果P (x,y),则(x,y)+(x,-y)= –P=(x1,y1),Q= (x2,y2),P≠-Q,P+Qd p) p) y3=λ(x1-x3)-y1 (mod p)
椭圆曲线加法的定义
–Q,R是ECC上x坐标不同的两点,Q+R定义 Q,R是ECC上 坐标不同的两点,Q+R定义 画一条通过Q,R的直线与ECC交于P Q,R的直线与ECC交于 为:画一条通过Q,R的直线与ECC交于P1(交 点是唯一的,除非做的Q,R点的切线, Q,R点的切线 点是唯一的,除非做的Q,R点的切线,此时 分别取P =Q或 =R)。 =O,得 分别取P1=Q或P1=R)。由Q+R+P1=O,得 Q+R=Q+R=-P1 –点Q的倍数定义如下:在Q点做ECC的一条 的倍数定义如下: 点做ECC ECC的一条 切线,设切线与ECC交于S, ECC交于S,定义 切线,设切线与ECC交于S,定义 2Q=Q+Q=2Q=Q+Q=-S。类似可定义 3Q=Q+Q+Q,… 3Q=Q+Q+Q,…, –上述加法满足加法的一般性质,如交换律、 上述加法满足加法的一般性质,如交换律、 结合律等
y2 − y1 x −x P≠Q 2 1 λ = 2 3x1 + a P = Q 2y1
例:E23(1,1)
P=(3,10),Q(=9,7)
λ=
7 −10 −3 −1 22 = = ≡ =11m 23 od 9 −3 6 2 2 x3 =112 −3−9 =109 ≡17 m 23 od y3 =11(3−17) −10 = −164 ≡ 20 m 23 od ∴P +Q = (17,20) ∈E23(11) , 3•32 +1 5 1 2P: λ = = = ≡ 6 m 23 od 2×10 20 4 x3 = 62 −3−3 = 30 ≡ 7 m 23 od y3 = 6(3−7) −10 = −34 ≡12 m 23 od ∴2P = (7,12)
椭圆曲线密码示意图
椭圆曲线密码介绍
运算定义: 运算定义:
– 若曲线三点在一条直线上,则其和为O 若曲线三点在一条直线上,则其和为O – O用作加法的单位:O = -O; P+O = P 用作加法的单位: – 一条竖直线交X轴两点P1、P2,则 一条竖直线交X轴两点P P1+P2+O=O,于是P P1+P2+O=O,于是P1 = -P2 – 如果两个点Q和R的X轴不同,则画一连线,得到 如果两个点Q 轴不同,则画一连线, =O, Q+R=第三点P 第三点P1,则Q+R+P1=O,即Q+R=-P1 – 2倍,一个点Q的两倍是,找到它的切线与曲线 一个点Q的两倍是, 的另一个交点S 于是Q+Q=2Q=的另一个交点S,于是Q+Q=2Q=-S
在有限域上的椭圆曲线运算
•在此椭圆曲线上可以能出现的点有 (0,1)、(0,4)、(2,1)、(2,4)、(3,1)、 (3,4)、(4,2)、(4,3)、(∞, ∞) •任取椭圆曲线上两点,无论作加法、 減法或乘法,其結果永远为上述坐 标点中的一点. •椭圆曲线中的离散对数难题:给定 一参数K及一点A,要求得另一点B, 使得B=KA是很容易的。 例如:5A=A+A+A+A+A 但若給定A及B要求得K則很困難
椭圆曲线方程
Elliptic Curve
y2+axy+by=x3+cx2+dx+e axy+by= dx+
其中a 其中a、b、c、d、e是满足某个简单条件的 实数 点被定义为无穷点/ 另有O点被定义为无穷点/零点
椭圆曲线的定义
1.1 椭圆曲线的定义 是域, 的代数闭包。椭圆曲线的一般定义为F 设F是域,F-是F的代数闭包。椭圆曲线的一般定义为F上亏格为1的光滑的代数曲线。 上亏格为1的光滑的代数曲线。这个定义涉及很多代数几何 中的概念。实际上,定义在F 中的概念。实际上,定义在F上的椭圆曲线可等价地看作由方 程 y2+a1xy+a3xy=x3+a2x2+a4x+a6 (1) 刻划的F 上曲线再添加上一点O 其中ai∈ 刻划的F-上曲线再添加上一点O,其中ai∈F且满足判别式不 为零。椭圆曲线的有理点即为点O及坐标在F中的点(x,y)。 为零。椭圆曲线的有理点即为点O及坐标在F中的点(x,y)。 方程(1)称为该椭圆曲线的 称为该椭圆曲线的Weierstrass方程 方程。 方程(1)称为该椭圆曲线的Weierstrass方程。当F的特征不 是2或3时,这个方程可化为特别简单的形式 y2=x3+ax+b 并要求判别式 ∆=4a3+27b2≠0
EC上的离散对数问题 EC上的离散对数问题
Q=k×P中的k计算也是极其困难的 中的k k×P表示k个P相加:P + P + … + P 表示k 相加: DH密钥交换中 在DH密钥交换中 使用了y p中 使用了y=gx mod p中x的计算困难性 同样在ECC中 同样在ECC中 将使用Q 中计算k 将使用Q=k×P中计算k的困难性 有两个应用 密钥交换 加密解密
椭圆曲线上不同坐标点相加
椭圆曲线上相同坐标点相加
椭圆曲线上一坐标点与无穷远点相加
椭圆曲线上两对称点相加
A+B=A+(-A)=O
B
EC: EC: P+Q=R
素域上的EC 素域上的EC
在有限域Z 上的简化EC 在有限域Zp上的简化EC
y2≡x3+ax+b mod p ax+
其中4a 其中4a3+27b2 mod p ≠ 0 (这是一个离散点的集合)
由ECC上离散对数问题可以构造DiffieECC上离散对数问题可以构造Diffie上离散对数问题可以构造Diffie Hellman密钥交换和ElGamal密码体制 密钥交换和ElGamal Hellman密钥交换和ElGamal密码体制
椭圆曲线用于加密
找到一个难题: 找到一个难题: 属于E (a,b), – 考虑等式Q=kP,其中Q、P属于Ep(a,b), 考虑等式Q=kP,其中Q k<p – 已知k和P,计算Q,是容易的 已知k 计算Q – 已知Q和P,计算k,是困难的 已知Q 计算k 选择E (a,b)的元素G,使得 的阶n 选择Ep(a,b)的元素G,使得G的阶n是一个大素数 的元素G,使得G – G的阶是指满足nG=O的最小n值 的阶是指满足nG=O的最小 的最小n 秘密选择整数r 计算P=kG 秘密选择整数r,计算P=kG,然后 – 公开(p,a,b,G,P),P为公钥 公开(p,a,b,G,P), – 保密k 保密k
相关文档
最新文档