椭圆曲线加密.pptVIP

椭圆曲线加密.ppt

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
椭圆曲线加密

ling@fudan.edu.cn 网络安全-椭圆曲线加密 网络安全 Network Security 椭圆曲线加密 主要内容 椭圆曲线加密概念 射影平面 椭圆曲线 椭圆曲线加法群 有限域椭圆曲线 椭圆曲线加密方法 ECC概念 ECC-椭圆曲线加密 Ellipse Curve Cryptography 基于椭圆曲线理论的公钥加密技术(1985) 与传统的基于大质数因子分解困难性的加密方法不同,ECC通过椭圆曲线方程式的性质产生密钥 ECC 164位的密钥产生一个安全级,相当于RSA 1024位密钥提供的保密强度,而且计算量较小,处理速度更快,存储空间和传输带宽占用较少 无穷远点 定义平行线相交于无穷远点P∞,使平面上所有直线都统一为有唯一的交点 性质: 一条直线只有一个无穷远点;一对平行线有公共的无穷远点 任何两条不平行的直线有不同的无穷远点(否则会造成有两个交点) 平面上全体无穷远点构成一条无穷远直线 射影平面 平面上全体无穷远点与全体平常点构成射影平面 对普通平面上点(x,y),令x=X/Z,y=Y/Z,Z≠0,则投影为射影平面上的点(X:Y:Z) 例如:点(1,3)可投影为(Z:3Z:Z),可为(1:3:1),(2.3:6.9:2.3)等 对普通平面上的直线ax+by+c=0,同样变换,得到对应于射影平面上的直线为aX+bY+cZ=0 对平行线aX+bY+c1Z=0和aX+bY+c1Z=0,易解得Z=0,说明无穷远点 的座标为(X:Y:0) 椭圆曲线 一条椭圆曲线是在射影平面上满足威尔斯特拉斯方程(Weierstrass)所有点的集合: 椭圆曲线方程是一个齐次方程 曲线上的每个点都必须是非奇异的(光滑的),偏导数FX(X,Y,Z)、FY(X,Y,Z)、FZ(X,Y,Z)不同为0 椭圆曲线示例 非椭圆曲线示例 椭圆曲线普通方程 椭圆曲线普通方程: 无穷远点O∞(0,Y,0) 平常点(x,y)斜率k: 椭圆曲线加法群 阿贝尔(Abel)加法群 任意取椭圆曲线上两点P、Q(若P、Q两点重合,则作P点的切线),作直线交于椭圆曲线的另一点R,过R做y轴的平行线交于R,定义P+Q=R。这样,加法的和也在椭圆曲线上,并同样具备加法的交换律、结合律 零元与负元 O∞与-P 同点加法 若有k个相同的点P相加,记作kP 有限域椭圆曲线 有限域Fp Fp中有p(p为质数)个元素0,1,2,…, p-2,p-1 Fp的加法是a+b≡c(mod p) Fp的乘法是a×b≡c(mod p) Fp的除法是a÷b≡c(mod p) Fp的单位元是1,零元是 0 Fp域内运算满足交换律、结合律、分配律 有限域椭圆曲线示例 椭圆曲线Ep(a,b),p为质数,x,y∈[0,p-1] 选择两个满足下列约束条件的小于p的非负整数a、b 当p=23,a=b=1时,椭圆曲线: 椭圆曲线点的阶 如果椭圆曲线上一点P,存在最小的正整数n,使得数乘nP=O∞(显然(n-1)P=-P ),则将n称为P的阶 若n不存在,则P是无限阶的 椭圆曲线加密 考虑K=kG ,其中K、G为椭圆曲线Ep(a,b)上的点,n为G的阶(nG=O∞ ),k为小于n的整数 则给定k和G,根据加法法则,计算K很容易 但反过来,给定K和G,求k就非常困难 这就是椭圆曲线加密算法的数学依据 点G称为基点(base point) k(kn)为私有密钥(privte key) K为公开密钥(public key) ECC保密通信算法 公钥加密-私钥解密 Alice选定一条椭圆曲线E,并取椭圆曲线上一点作为基点G Alice选择一个私有密钥k(kn),并生成公开密钥K=kG Alice将E和点K、G传给Bob Bob收到信息后,将待传输的明文编码到上的一点M(编码方法略),并产生一个随机整数r(rn) Bob计算点C1=M+rK和C2=rG Bob将C1、C2传给Alice Alice收到信息后,计算C1-kC2,结果就应该是点M,因为: ECC密钥互换算法 类似Diffie-Hellman密钥互换方法 双方公开选定有限域GF(2k)上的椭圆曲线E、基点P∈E(GF(2k)),n为P的阶,k为二进制位数 Alice随机选取x,0≤x≤n Alice发送kA=xP Bob随机选取y,0≤y≤n Bob发送kB=yP Alice计算:kAB=yKA=xyP Bob计算: kAB=xKB=xyP ECC技术要求 通常将Fp上的一条椭圆曲线描述为T=(p,a,b,G,n,h) p、a、b确定一条椭圆曲线(p为质数,(mod p)运算) G为基点,n为点G的阶 h是椭圆曲线上所有点的个数m与n相除的商的整数部分 参量选择要求: p越大安全性越好,但会导致计算速度变慢,200-bit左右可满足一般安全

文档评论(0)

panguoxiang + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档