(现代密码学课件)04公钥密码.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
math@jnu 第四章 公钥密码 数论知识补充 计算数论基础 公钥密码基本概念 RSA密码体制 椭圆曲线密码体制 NTRU密码体制 一、数论知识补充 中国剩余定理 费马小定理和欧拉定理 离散对数 二次互反律 中国剩余定理练习 求满足下面同余方程组的全部 x 费马小定理练习 求3201 (mod 11) 离散对数 离散对数练习 计算并证明 2 也是 19 的本原根,并写出离散对数表。 二次互反律 设n是一正整数,gcd(a,n)=1 ,称a是n的平方剩余,如果方程 x2≡a (mod n) 有解。否则称为非平方剩余。 二次互反律 例如:x2≡1 mod 7有解x=1,x=6; x2≡2 mod 7有解x=3,x=4; x2≡3 mod 7无解; x2≡4 mod 7有解x=2,x=5; x2≡5 mod 7无解; x2≡6 mod 7无解。 可见共有3个数(1、2、4)是模7的平方剩余,且每个平方剩余都有两个平方根(即例中的x)。 二次互反律 容易证明,若p为奇素数 模p的平方剩余的个数与模p的非平方剩余的个数相等,都有(p-1)/2 个。 如果a是模p的一个平方剩余,那么a恰有两个平方根x1和x2,1≦x1≦(p-1)/2,(p-1)/2+1≦x2≦(p-1),且这两个平方根x1,x2中的其中一个也是模p的平方剩余。 二次互反律 定义4.1 设p是素数,a是一整数,符号 的定义如下: 称符号 为Legendre符号。 二次互反律 例如: 对于奇素数p,我们有公式: 例如:p=23,a=5,a(p-1)/2 (mod p)≡511 (mod p)=-1,所以5不是模23的平方剩余。 二次互反律 Legendre符号有以下性质: 定理 设p是奇素数,a和b都不能被p除尽,则 ① 若a≡b (mod p),则 ② ③ ④ 二次互反律 Jacobi符号是Legendre符号的推广。 定义 设n是正整数,且 ,定义Jacobi符号为 其中右端的符号是Legendre符号。 当n为素数时,Jacobi符号就是Legendre符号。 二次互反律 Jacobi符号有以下性质: 定理 设n为合数,a和b是与n互素的整数,则有 ① 若a≡b (mod n),则 ② ③ ④ 二次互反律 Jacobi符号和Legendre符号的本质差别 Jacobi符号不表示方程x2≡a (mod n)是否有解。 比如n=p1p2,a关于p1和p2都是非平方剩余,即x2≡a mod p1和x2≡a mod p2都无解,由中国剩余定理知x2≡a mod n也无解。但是,由于 ,所以 。即x2≡a mod n虽无解,但Jacobi符号 却为1。 二次互反律 定理(二次互反律) 设m、n均为大于2的奇数,则 若m≡n≡3 mod 4,则 ;否则 . 二次互反律 二次互反律 定理 设n=pq,当p≡q≡3 (mod 4)时, (1) 求解方程 x2≡a(mod n)与分解n等价。 (2) a mod n的两个不同的平方根u和w的Jacobi符号有如下关系: 二、计算数论基础 计算复杂性 对于一个密码系统来说,要求 加密算法和解密算法是“容易的” 未知密钥时,推导出明文和密钥是“困难的” 如何描述一个计算问题是容易的还是困难的? 我们用解决这个问题的算法的计算时间和存储空间来描述。这两者分别称为算法的时间复杂度和空间复杂度,它们是算法输入数据n的长度k的函数。 计算复杂性 记 f(k)=O(g(k)),如果存在常数C0,使得f(k) ≦C·g(k)。 例如若 f(k)=8k+10,则 f(k)=O(k) 一般地,若f(k)=ackc+…+a1k+a0,则 f(k)=O(kc) 若算法的时间复杂度T=O(kc),其中c0为常数,则称该算法是多项式时间的; 若算法的时间复杂度T=O(c f(k)),其中c1为常数,f(k)为多项式,则称该算法是指数时间的。 计算复杂性 当前的计算机的计算能力是有局限的 称一个算法是有效的,如果该算法可在多项式时间内完成;否则称该算法是无效的。 称一个问题是计算上可行的,如果存在多项式时间的算法可以解决;否则称为计算上不可行的。 计算复杂性 数据大小n和数据长度k的关系: 在算法中通常用log(x)表示以2为底的对数

文档评论(0)

autohhh + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档