公钥密码学与rsa-信阳师范学院.ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
公钥密码学与rsa-信阳师范学院

为什么RSA 可以加解密 因为 Euler 定理的一个推论: Mk?(n)+1 = M mod N RSA 中: N=p.q ?(N)=(p-1)(q-1) 选择 e d 使得ed=1 mod ?(N) 因此 存在k使得e.d=1+k.?(N) 因此 Cd = (Me)d = M1+k.?(N) = M mod N * 信阳师范学院数学与信息科学学院 * 模幂运算 模幂运算是RSA中的主要运算 [ (a mod n) × (b mod n)] mod n = (a × b) mod n 利用中间结果对n取模,实现高效算法 * 信阳师范学院数学与信息科学学院 * RSA 密钥生成 必须做 确定两个大素数: p, q 选择e或者d,并计算d或者e 素数测试是重要的算法 由e求d要使用到扩展Euclid算法 * 信阳师范学院数学与信息科学学院 * Euler 函数 所有模m和r同余的整数组成剩余类[r] 剩余类[r]中的每一个数和m互素的充要条件是r和m互素 和m互素的同余类数目用φ(m)表示,称m的Euler函数 当m是素数时,小于m的所有整数均与m互素,因此φ(m)=m-1 对n=pq, p和q 是素数,φ(n)=φ(p)φ(q)=(p-1)(q-1) * 信阳师范学院数学与信息科学学院 * Euler 函数举例 设p=3, q=5, 那么 φ(15)=(3-1)*(5-1)=8 这8个模15的剩余类是: {1,2,4,7,8,11,13,14} * 信阳师范学院数学与信息科学学院 * RSA算法的实现 实现的步骤如下:Bob为实现者 (1) Bob寻找出两个大素数p和q (2) Bob计算出n=pq 和φ(n)=(p-1)(q-1) (3) Bob选择一个随机数e (0e φ(n)),满足(e,φ(n))=1 (4) Bob使用辗转相除法计算d=e-1(modφ(n)) (5) Bob在目录中公开n和e作为公钥 密码分析者攻击RSA体制的关键点在于如何分解n。若分 解成功使n=pq,则可以算出φ(n)=(p-1)(q-1),然后由公 开的e,解出秘密的d * 信阳师范学院数学与信息科学学院 * RSA算法编制 参数T={N}; 私钥SK=D; 公钥PK=E; 设:明文M,密文C,那么: 用公钥作业:ME mod N = C 用私钥作业:MD mod N = M * 信阳师范学院数学与信息科学学院 * RSA算法举例 设 p=7, q=17, n=7*17=119; T={n=119}; φ(n)=(7-1)(17-1)=96; 选择e=5, gcd(5,96)=1; 公钥pk=5; 计算d, ( d*e) mod 96=1; d=77; 私钥sk=77; 设:明文m=19 加密:(19)5 mod 119 = 66 脱密:(66)77 mod 119 = 19 * 信阳师范学院数学与信息科学学院 * RSA算法的安全性分析 密码分析者攻击RSA体制的关键点在于如何分解n 若分解成功使n=pq,则可以算出φ(n)=(p-1)(q-1),然后由公开的e,解出秘密的d 若使RSA安全,p与q必为足够大的素数,使分析者没有办法在多项式时间内将n分解出来 * 信阳师范学院数学与信息科学学院 * RSA算法的安全性分析 建议选择p和q大约是100位的十进制素数 模n的长度要求至少是512比特 EDI攻击标准使用的RSA算法中规定n的长度为512至1024比特位之间,但必须是128的倍数 国际数字签名标准ISO/IEC 9796中规定n的长度位512比特位 * 信阳师范学院数学与信息科学学院 * RSA算法的安全性分析 为了抵抗现有的整数分解算法,对RSA模n的素因子p和q还有如下要求: (1) |p-q|很大,通常 p和q的长度相同; (2) p-1 和q-1分别含有大素因子p1和q1 (3) P1-1和q1-1分别含有大素因子p2和q2 (4) p+1和q+1分别含有大素因子p3和q3 * 信阳师范学院数学与信息科学学院 * RSA算法的安全性分析 为了提高加密速度,通常取e为特定的小整数 如EDI国际标准中规定 e=216+1 ISO/IEC9796中甚至允许取e=3 这时加密速度一般比解密速度快10倍以上 * 信阳师

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档