RSA 数学原理

栏目: 编程工具 · 发布时间: 7年前

内容简介:提起话说很久以前,人们就懂的了加密这个技术。在战争时期,间谍就会拿着加密: 明文 + 密匙

提起 RSA 大家一定不陌生,在开发中经常使用,也经常听同事说道。

前奏

对称加密

话说很久以前,人们就懂的了加密这个技术。在战争时期,间谍就会拿着 密文密匙 来对信息就行传递。 这种简单的 密文 + 密匙(key) 就是 对称加密

加密: 明文 + 密匙

解密: 密文 + 密匙

非对称加密

由于这种加密方式过于简单,所以后来引入了数学算法。 RSA 就是由特殊的数学算法构成的,也是 非对称加密算法 。非对称加密需要两个密钥: 公钥(public key) + 私钥(private key)

用公钥加密,私钥解密

私钥加密,公钥解密

相关数学原理

欧拉定理

如果两个正整数m和n互质,那么m的φ(n)次方减去1,可以被n整除。

RSA 数学原理

一下是几种情况

  • 定理0 算术函数f如果满足对于任意两个互质的正整数m和n,均有f(mn)=f(m)f(n),就称f为积性函数(或乘性函数)。 如果对于任意两个正整数m和n,均有f(mn)=f(m)f(n),就称为完全积性函数。

  • 定理1 对于素数p,ϕ(p)=p−1。

  • 定理2 ϕ(pn)=pn−pn−1,因为素数幂pn不互质的只有p的倍数,一共有pn/p=pn−1个。

  • 定理3 若m、n互质,ϕ(mn)=ϕ(m)ϕ(n),所以欧拉函数是积性函数。 因为mn互质NN,和m互质的数乘上和n互质的数就会和mn互质。

  • 定理4 设n=p1a1p2a2...pkak为正整数n的素数幂分解,那么ϕ(n)=n(1−1/p1)(1−1/p2)...(1−1/pk)。 由定理2,ϕ(pn)=pn−pn−1=pn (1-1/p),又由定理3,ϕ(n)=p1a1p2a2...pkak(1−1/p1)(1−1/p2)...(1−1/pk)=n(1−1/p1)(1−1/p2)...(1−1/pk)

例如: 
ϕ(8) = ϕ(2^3) = 2^3 - 2^(2-1) = 8 - 4 = 4
ϕ(15) = ϕ(3) * ϕ(5) = 2 * 4 = 8
复制代码

费马小定律

欧拉定理的特殊情况:如果两个正整数m和n互质,而且n为质数!那么φ(n)结果就是n-1。

RSA 数学原理

模反元素

如果两个正整数e和x互质,那么一定可以找到整数d,使得 ed-1 被x整除。 那么d就是e对于x的“模反元素”

RSA 数学原理

迪菲赫尔曼密匙交换原理

RSA 数学原理

那么,通过一系列的数学转换,最终得出了RSA算法

RSA 数学原理
公钥:e 和 n
私钥:d 和 n
明文:m
密文:c
复制代码

以上所述就是小编给大家介绍的《RSA 数学原理》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

遗传算法与工程优化

遗传算法与工程优化

程润伟 / 清华大学出版社 / 2004-1 / 39.00元

《遗传算法与工程优化》总结了遗传算法在工业工程相关领域应用的前沿进展。全书共分9章:遗传算法基础、组合优化问题、多目标优化问题、模糊优化问题、可靠性设计问题、调度问题、高级运输问题、网络设计与路径问题和制造元设计问题。内容既涵盖了遗传算法在传统优化问题中的新进展,又涉及了目前在供应链和物流研究中相当热门的话题。一起来看看 《遗传算法与工程优化》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具