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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
的另一个交点S,于是Q+Q=2Q=-S
椭圆曲线加法的定义
–Q,R是ECC上x坐标不同的两点,Q+R定义 为:画一条通过Q,R的直线与ECC交于P1(交 点是唯一的,除非做的Q,R点的切线,此时 分别取P1=Q或P1=R)。由Q+R+P1=O,得 Q+R=-P1
–点Q的倍数定义如下:在Q点做ECC的一条 切线,设切线与ECC交于S,定义 2Q=Q+Q=-S。类似可定义 3Q=Q+Q+Q,…,
举例
y2≡x3+18x+15 mod 23 y2≡x3+17x+15 mod 23
http://www.certicom.com/research/ec33_example.html
EC-1
EC-2
有限域上的椭圆曲线
曲线方程中的所有系数都是某一有限域GF(p)中的元素 (p为一大素数),最为常用的曲线方程为
–P=(x1,y1),Q= (x2,y2),P≠-Q,P+Q= (x3,y3)
x3=l2-x1-x2(mod p)
y3=l(x1-x3)-y1 (mod p)
y2 y1
l
x2 x1 3x12 a
PQ PQ
2 y1
例:E23(1,1)
P=(3,10),Q(=9,7)
l 7 10 3 1 22 11 mod 23 93 6 2 2
利用有限域GF(2n )上的椭圆曲线上点集所构成的群上定义 的离散对数系统,可以构造出基于有限域上离散对数的一 些双钥体制--椭圆曲线离散对数密码体制(ECDLC ),如 Diffie-Hellman,ElGamal,Schnorr,DSA等。
10余年的研究,尚未发现明显的弱点。
研究现状
椭圆曲线密码是除RSA算法以外最重要的公 钥密码之一。与RSA算法相比它也有很多独 特的优点。出于国家安全战略考虑,国内学 术界和管理部门一直希望能够在国内一些应 用场合使用椭圆曲线密码。在推广和使用椭 圆曲线密码的过程中,相应的芯片是必不可 少的。然而,由于椭圆曲线密码算法是一种 很复杂的数学算法,如何将椭圆曲线密码算 法芯片化,国内外没有成熟技术。
y2=x3+ax+b mod(p) (a,b∈GF(p),4a3+27b2≠0 mod p) 例:p=23,a=b=1, 4a3+27b2=8 ≠0 (mod23),方程
为y2=x3+x+1 mod(p),图形为连续图形。我们感兴趣 的是在第一象限的整数点。设Ep(a,b)表示ECC上点集 {(x,y)|0≤x<p,0 ≤y<p,且x,y均为整数}并上O.
椭圆曲线密码示意图
椭圆曲线密码介绍
运wk.baidu.com定义:
– 若曲线三点在一条直线上,则其和为O – O用作加法的单位:O = -O; P+O = P – 一条竖直线交X轴两点P1、P2,则
P1+P2+O=O,于是P1 = -P2 – 如果两个点Q和R的X轴不同,则画一连线,得到
第三点P1,则Q+R+P1=O,即Q+R=-P1 – 2倍,一个点Q的两倍是,找到它的切线与曲线
y2+axy+by=x3+cx2+dx+e
其中a、b、c、d、e是满足某个简单条件的 实数
另有O点被定义为无穷点/零点
椭圆曲线的定义
1.1 椭圆曲线的定义 设F是域,F-是F的代数闭包。椭圆曲线的一般定义为F-
上亏格为1的光滑的代数曲线。这个定义涉及很多代数几何 中的概念。实际上,定义在F上的椭圆曲线可等价地看作由方 程
椭圆曲线加密算法
背景 – RSA中用到了因子分解的困难性,而为了增加困难 得加大数的位数,从而导致计算速度变慢。 – ECC可以用较小的密钥长度达到较高的计算难度
获得同样的安全性,密钥长度较RSA短得多 被IEEE公钥密码标准P1363采用
椭圆曲线公钥密码ECC
椭圆曲线上一个点P的k倍表示表示P+P+…(k个点P “相加”),记为kP。
–上述加法满足加法的一般性质,如交换律、 结合律等
椭圆曲线上不同坐标点相加
椭圆曲线上相同坐标点相加
椭圆曲线上一坐标点与无穷远点相加
椭圆曲线上两对称点相加
A+B=A+(-A)=O
B
EC: P+Q=R
素域上的EC
在有限域Zp上的简化EC
y2≡x3+ax+b mod p
其中4a3+27b2 mod p ≠ 0 (这是一个离散点的集合)
椭圆曲线上一个点P的所有倍数点组成了椭圆曲线的子 集,该子集是该椭圆曲线关于该“加法”的循环子群。
给定“椭圆曲线”上的点P,给定整数k,计算 “kP=?”是容易的。(折半相加)
给定“椭圆曲线”上的两个点P和Q,求整数“?P=Q” 是困难的。这个问题称为椭圆曲线上的离散对数问题。
椭圆曲线方程
Elliptic Curve
有限域上的椭圆曲线点集产生方法
对每一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
x 3 11 2 3 9 109 17 mod 23 y 3 11 ( 3 17 ) 10 164 20 mod 23 P Q (17 , 20 ) E 23 (1,1 ) 2 P : l 3 • 3 2 1 5 1 6 mod 23
y2+a1xy+a3xy=x3+a2x2+a4x+a6 (1) 刻划的F-上曲线再添加上一点O,其中ai∈F且满足判别式不
为零。椭圆曲线的有理点即为点O及坐标在F中的点(x,y)。 方程(1)称为该椭圆曲线的Weierstrass方程。当F的特征不 是2或3时,这个方程可化为特别简单的形式
y2=x3+ax+b 并要求判别式 Δ=4a3+27b2≠0
一、椭圆曲线公钥密码ECC
(Elliptic Curve Cryptography)
二、 McEliece
椭圆曲线公钥密码ECC
1. 简要历史
椭圆曲线(Elliptic curve)作为代数几何中的重要问题已有 100多年的研究历史
1985年,N. Koblitz和V. Miller独立将其引入密码学中,成 为构造双钥密码体制的一个有力工具。
相关文档
最新文档