菜单
  

    如果第三者进行窃听时, 他会得到几个数: m, n(=pq), b......
    他如果要解码的话, 必须想办法得到 r......
    所以, 他必须先对 n 作质因数分解.........
    要防止他分解, 最有效的方法是找两个非常的大质数 p, q,
    使第三者作因数分解时发生困难.........
    <定理>
    若 p, q 是相异质数, rm == 1 mod (p-1)(q-1),
    a 是任意一个正整数, b == a^m mod pq, c == b^r mod pq,
    则 c == a mod pq
    证明的过程, 会用到费马小定理, 叙述如下:
    m 是任一质数, n 是任一整数, 则 n^m == n mod m
    (换另一句话说, 如果 n 和 m 互质, 则 n^(m-1) == 1 mod m)
    运用一些基本的群论的知识, 就可以很容易地证出费马小定理的........
    <证明>
    因为 rm == 1 mod (p-1)(q-1), 所以 rm = k(p-1)(q-1) + 1, 其中 k 是整数
    因为在 modulo 中是 preserve 乘法的
    (x == y mod z and u == v mod z => xu == yv mod z),
    所以, c == b^r == (a^m)^r == a^(rm) == a^(k(p-1)(q-1)+1) mod pq
    1. 如果 a 不是 p 的倍数, 也不是 q 的倍数时,
    则 a^(p-1) == 1 mod p (费马小定理) => a^(k(p-1)(q-1)) == 1 mod p
    a^(q-1) == 1 mod q (费马小定理) => a^(k(p-1)(q-1)) == 1 mod q
    所以 p, q 均能整除 a^(k(p-1)(q-1)) - 1 => pq | a^(k(p-1)(q-1)) - 1
    即 a^(k(p-1)(q-1)) == 1 mod pq
    => c == a^(k(p-1)(q-1)+1) == a mod pq
    2. 如果 a 是 p 的倍数, 但不是 q 的倍数时,
    则 a^(q-1) == 1 mod q (费马小定理)
    => a^(k(p-1)(q-1)) == 1 mod q
    => c == a^(k(p-1)(q-1)+1) == a mod q
    => q | c - a
    因 p | a
    => c == a^(k(p-1)(q-1)+1) == 0 mod p
    => p | c - a
    所以, pq | c - a => c == a mod pq
    3. 如果 a 是 q 的倍数, 但不是 p 的倍数时, 证明同上
    4. 如果 a 同时是 p 和 q 的倍数时,
    则 pq | a
    => c == a^(k(p-1)(q-1)+1) == 0 mod pq
    => pq | c - a
    => c == a mod pq
    Q.E.D.
    这个定理说明 a 经过编码为 b 再经过解码为 c 时, a == c mod n (n = pq)....
    但我们在做编码解码时, 限制 0 <= a < n, 0 <= c < n,
    所以这就是说 a 等於 c, 所以这个过程确实能做到编码解码的功能.....
    3.2.2 RSA 的安全性
    RSA的安全性依赖于大数分解,但是否等同于大数分解一直未能得到理论上的证明,因为没有证明破解 RSA就一定需要作大数分解。假设存在一种无须分解大数的算法,那它肯定可以修改成为大数分解算法。目前, RSA 的一些变种算法已被证明等价于大数分解。不管怎样,分解n是最显然的攻击方法。现在,人们已能分解多个十进制位的大素数。因此,模数n 必须选大一些,因具体适用情况而定。
    3.2.3 RSA的速度
    由于进行的都是大数计算,使得RSA最快的情况也比DES慢上倍,无论是软件还是硬件实现。速度一直是RSA的缺陷。一般来说只用于少量数据加密。
    3.2.4 RSA的选择密文攻击
    RSA在选择密文攻击面前很脆弱。一般攻击者是将某一信息作一下伪装( Blind),让拥有私钥的实体签署。然后,经过计算就可得到它所想要的信息。实际上,攻击利用的都是同一个弱点,即存在这样一个事实:乘幂保留了输入的乘法结构:
    ( XM )^d = X^d *M^d mod n
    前面已经提到,这个固有的问题来自于公钥密码系统的最有用的特征--每个人都能使用公钥。但从算法上无法解决这一问题,主要措施有两条:一条是采用好的公钥协议,保证工作过程中实体不对其他实体任意产生的信息解密,不对自己一无所知的信息签名;另一条是决不对陌生人送来的随机文档签名,签名时首先使用One-Way HashFunction 对文档作HASH处理,或同时使用不同的签名算法。在中提到了几种不同类型的攻击方法。
  1. 上一篇:轻量级企业运行管理综合系统设计+文献综述
  2. 下一篇:Android五子棋小游戏开发设计
  1. jsp+mysql企业人事管理系统的设计和实现

  2. C#和SQLServer的宿舍管理系统的开发

  3. C#和sqlserver学生管理系统设计

  4. 计算机音乐分类辨识研究

  5. 基于网页分析和抓取技术的金融数据采集系统

  6. 跟踪-学习-检测算法及其在...

  7. asp.net+sqlserver学生选课管理系统设计和源代码

  8. 河岸冲刷和泥沙淤积的监测国内外研究现状

  9. java+mysql车辆管理系统的设计+源代码

  10. 大众媒体对公共政策制定的影响

  11. 中考体育项目与体育教学合理结合的研究

  12. 当代大学生慈善意识研究+文献综述

  13. 十二层带中心支撑钢结构...

  14. 电站锅炉暖风器设计任务书

  15. 乳业同业并购式全产业链...

  16. 杂拟谷盗体内共生菌沃尔...

  17. 酸性水汽提装置总汽提塔设计+CAD图纸

  

About

751论文网手机版...

主页:http://www.751com.cn

关闭返回