密码学第五章 公钥密码 5.4 椭圆曲线公钥密码体制
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
密码学
第五章 公钥密码
5.4 椭圆曲线公钥密码体制
5.4 椭圆曲线公钥密码体制
1 ECC应用背景 2 有限域上的椭圆曲线 3 椭圆曲线公钥密码体制
一、ECC应用背景
公钥密码体制都建立在数学难题之上,现在 被广泛认可和使用的三类数学难题是: 1、大整数因子分解问题; 2、有限域乘法群上的离散对数问题; 3、椭圆曲线上的离散对数问题。
y
x
二、有限域上的椭圆曲线
1、有限域上椭圆曲线的定义
定义1 有限域 F 上的椭圆曲线 y2 x3 是ax由满b
足F 上的方程
y的2 所x有3 点ax和无b 穷远点 O 构
成的集合
E(F ) {O}{(x, y) F F : y2 x3 ax b}
有时也记作E 。
二、有限域上的椭圆曲线
(1)在[1,n-1]内随机选取整数 k,计算 kP = ( x1,y1 )
(2)计算 kQ = (x2,y2),若 x2= 0,则回到(1)
(3)计算 c = mx2 密文为 (x1,y1 ,c)
三、椭圆曲线公钥密码体制
脱密: 用户B收到密文( x1,y1 ,c )后,
(1)用自己的私钥 d 计算
ECC标准:ANSI X9.62、IEEE P1363等。
二、有限域上的椭圆曲线
椭圆曲线指的是由Weierstrass方程
y2 a1xy a3 y x3 a2 x2 a4 x a6
所确定的曲线。
先从 y2 x3 ax c 来探讨椭圆曲线的图像。
二、有限域上的椭圆曲线
实数域 R 上的椭圆曲线 y2 x3 ax b
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
设P, Q是E上的任意两 点, 连接P, Q交E于R’, 则称R’关于x轴的对称 点R为P与Q的和, 记为
P+Q=R
y
P Q
R=P+Q
x R’
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
y
当P与Q重合时
P(Q)
R = P+Q = P+P = 2P
此时称之为倍乘运算
2、椭圆曲线公钥密码算法
1)参数选取
选取有限域 F 上的椭圆曲线
E : y2 x3 ax b
和其上一个阶为素数 n 的点 P = ( xP,yP )。 在[1,n-1]内随机选取整数 d,计算Q = dP
用户公钥:点 Q 用户私钥:整数 d
三、椭圆曲线公钥密码体制
2)加脱密算法
加密: 用户A给用户B发送信息 m,m F
y
P(x1, y1)
R
x
R’
二、有限域上的椭圆曲线
k(k>2)个相同的点P相加为
3P P P kP
k
此时称之为点乘运算
y
2P P
x
二、有限域上的椭圆曲线
定义2 设 P E(F), n min{k | k 0, kP O} 称n为点P 的阶,记为 n=ord(P)。
由阶为 n 的点 P 在上述加法定义下生成的循环 群<P> 是椭圆曲线群 (E(F), +)的一个n阶子群。
( x2,y2 ) = d( x1,y1 )
(2)通过计算 m = cx2-1,恢复出明文数据Baidu Nhomakorabeam
相关问题
有限域 F 的选择 椭圆曲线的选择 点乘的快速实现
R=2P
x R’
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
y
当P与Q关于x轴对称时,
P
定义P与Q的和为O ,即
P+Q=O
x
并称 O 为无穷远点
Q
二、有限域上的椭圆曲线
可以证明,有限域上的椭圆曲线在我们定义 的加法运算下构成群。
既然构成群,就必然有零元和负元,这里的 零元就为无穷远点O,P的负元就是它关于x轴的对
一、ECC应用背景
ECC与RSA性能比较
破解所需时 间(MIPS年)
104 108 1012 1020
RSA 密钥大小
512 768 1024 2048
ECC 密钥大小
106 132 160 210
RSA/ECC 密钥大小之比
5:1 6:1 7:1 10:1
ECC的高强度安全性带来了许多优点:可使用较 短的密钥;数字签名和证书小;运算速度快等。
三、椭圆曲线公钥密码体制
1、安全性基础
定义3 设 E 是有限域 F 上的椭圆曲线,G 是 E 的一个循环子群,点 P 是 G 的一个生成元,即
G = { kP : k 1},在已知 P, Q 的条件下,求解
整数n,使得 nP = Q 的问题,称为椭圆曲线 E 上 的离散对数问题。
三、椭圆曲线公钥密码体制
目前,前两个问题都有了亚指数时间算法。
一、ECC应用背景
1985年,Koblitz 和Miller独立地提出了椭圆曲 线公钥密码体制(ECC),安全性基于椭圆曲线群上 的离散对数问题的难解性,该问题目前最好的解法 是指数级时间的算法。
一般认为,RSA和D-H密钥交换协议需用1024 比特以上的模数才安全,但对ECC,只要160比特 的模数就可达到同样级别的安全性。
例:F23上的一个椭圆曲线为y2 = x3 + x ,
则该方程在F23上的解(即该椭圆曲线上的点)为 ( 0, 0),( 1, 5),( 1,18),( 9, 5),( 9,18), (11,10),(11,13),(13, 5),(13,18),(15, 3), (15,20),(16, 8),(16,15),(17,10),(17,13), (18,10),(18,13),(19, 1),(19,22),(20, 4), (20,19),(21, 6),(21,17), 无穷远点Ο.
y
x
c
解得
P(x1, y1)
Q(x2, y2)
R=P+Q
x
R’
x3
y3
2 ( x1
x1 x2 x3 )
y1
二、有限域上的椭圆曲线
y2 x3 ax b
当P≠Q时,
y2 y1
x2 x1
当P=Q时,
3x12 a
2 y1
y
P(x1, y1) Q(x2, y2)
R
x
R’
称点,记为–P。
显然有 P+O=O+P=P 若 P=(x, y),则 –P = (x, –y) 且 P + (–P) = O
二、有限域上的椭圆曲线
3、加法运算的代数表示
已知E(F)上两点P = (x1, y1), Q = (x2, y2) , 求P+Q。
解:设P+Q=R =(x3, y3),
y
y2 x3 ax b
第五章 公钥密码
5.4 椭圆曲线公钥密码体制
5.4 椭圆曲线公钥密码体制
1 ECC应用背景 2 有限域上的椭圆曲线 3 椭圆曲线公钥密码体制
一、ECC应用背景
公钥密码体制都建立在数学难题之上,现在 被广泛认可和使用的三类数学难题是: 1、大整数因子分解问题; 2、有限域乘法群上的离散对数问题; 3、椭圆曲线上的离散对数问题。
y
x
二、有限域上的椭圆曲线
1、有限域上椭圆曲线的定义
定义1 有限域 F 上的椭圆曲线 y2 x3 是ax由满b
足F 上的方程
y的2 所x有3 点ax和无b 穷远点 O 构
成的集合
E(F ) {O}{(x, y) F F : y2 x3 ax b}
有时也记作E 。
二、有限域上的椭圆曲线
(1)在[1,n-1]内随机选取整数 k,计算 kP = ( x1,y1 )
(2)计算 kQ = (x2,y2),若 x2= 0,则回到(1)
(3)计算 c = mx2 密文为 (x1,y1 ,c)
三、椭圆曲线公钥密码体制
脱密: 用户B收到密文( x1,y1 ,c )后,
(1)用自己的私钥 d 计算
ECC标准:ANSI X9.62、IEEE P1363等。
二、有限域上的椭圆曲线
椭圆曲线指的是由Weierstrass方程
y2 a1xy a3 y x3 a2 x2 a4 x a6
所确定的曲线。
先从 y2 x3 ax c 来探讨椭圆曲线的图像。
二、有限域上的椭圆曲线
实数域 R 上的椭圆曲线 y2 x3 ax b
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
设P, Q是E上的任意两 点, 连接P, Q交E于R’, 则称R’关于x轴的对称 点R为P与Q的和, 记为
P+Q=R
y
P Q
R=P+Q
x R’
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
y
当P与Q重合时
P(Q)
R = P+Q = P+P = 2P
此时称之为倍乘运算
2、椭圆曲线公钥密码算法
1)参数选取
选取有限域 F 上的椭圆曲线
E : y2 x3 ax b
和其上一个阶为素数 n 的点 P = ( xP,yP )。 在[1,n-1]内随机选取整数 d,计算Q = dP
用户公钥:点 Q 用户私钥:整数 d
三、椭圆曲线公钥密码体制
2)加脱密算法
加密: 用户A给用户B发送信息 m,m F
y
P(x1, y1)
R
x
R’
二、有限域上的椭圆曲线
k(k>2)个相同的点P相加为
3P P P kP
k
此时称之为点乘运算
y
2P P
x
二、有限域上的椭圆曲线
定义2 设 P E(F), n min{k | k 0, kP O} 称n为点P 的阶,记为 n=ord(P)。
由阶为 n 的点 P 在上述加法定义下生成的循环 群<P> 是椭圆曲线群 (E(F), +)的一个n阶子群。
( x2,y2 ) = d( x1,y1 )
(2)通过计算 m = cx2-1,恢复出明文数据Baidu Nhomakorabeam
相关问题
有限域 F 的选择 椭圆曲线的选择 点乘的快速实现
R=2P
x R’
二、有限域上的椭圆曲线
2、椭圆曲线上的加法运算
y
当P与Q关于x轴对称时,
P
定义P与Q的和为O ,即
P+Q=O
x
并称 O 为无穷远点
Q
二、有限域上的椭圆曲线
可以证明,有限域上的椭圆曲线在我们定义 的加法运算下构成群。
既然构成群,就必然有零元和负元,这里的 零元就为无穷远点O,P的负元就是它关于x轴的对
一、ECC应用背景
ECC与RSA性能比较
破解所需时 间(MIPS年)
104 108 1012 1020
RSA 密钥大小
512 768 1024 2048
ECC 密钥大小
106 132 160 210
RSA/ECC 密钥大小之比
5:1 6:1 7:1 10:1
ECC的高强度安全性带来了许多优点:可使用较 短的密钥;数字签名和证书小;运算速度快等。
三、椭圆曲线公钥密码体制
1、安全性基础
定义3 设 E 是有限域 F 上的椭圆曲线,G 是 E 的一个循环子群,点 P 是 G 的一个生成元,即
G = { kP : k 1},在已知 P, Q 的条件下,求解
整数n,使得 nP = Q 的问题,称为椭圆曲线 E 上 的离散对数问题。
三、椭圆曲线公钥密码体制
目前,前两个问题都有了亚指数时间算法。
一、ECC应用背景
1985年,Koblitz 和Miller独立地提出了椭圆曲 线公钥密码体制(ECC),安全性基于椭圆曲线群上 的离散对数问题的难解性,该问题目前最好的解法 是指数级时间的算法。
一般认为,RSA和D-H密钥交换协议需用1024 比特以上的模数才安全,但对ECC,只要160比特 的模数就可达到同样级别的安全性。
例:F23上的一个椭圆曲线为y2 = x3 + x ,
则该方程在F23上的解(即该椭圆曲线上的点)为 ( 0, 0),( 1, 5),( 1,18),( 9, 5),( 9,18), (11,10),(11,13),(13, 5),(13,18),(15, 3), (15,20),(16, 8),(16,15),(17,10),(17,13), (18,10),(18,13),(19, 1),(19,22),(20, 4), (20,19),(21, 6),(21,17), 无穷远点Ο.
y
x
c
解得
P(x1, y1)
Q(x2, y2)
R=P+Q
x
R’
x3
y3
2 ( x1
x1 x2 x3 )
y1
二、有限域上的椭圆曲线
y2 x3 ax b
当P≠Q时,
y2 y1
x2 x1
当P=Q时,
3x12 a
2 y1
y
P(x1, y1) Q(x2, y2)
R
x
R’
称点,记为–P。
显然有 P+O=O+P=P 若 P=(x, y),则 –P = (x, –y) 且 P + (–P) = O
二、有限域上的椭圆曲线
3、加法运算的代数表示
已知E(F)上两点P = (x1, y1), Q = (x2, y2) , 求P+Q。
解:设P+Q=R =(x3, y3),
y
y2 x3 ax b