Lic的密码学相关知识自我详解 (1)RSA

一直很想写一个系列,不过奈何自己水平实在不够,一直不敢写。但是看到各个大牛为大家贡献各式各样好的blog分享,觉得不把自己的学习心得与大家分享是一件挺自私的事情,因为自己其实一直都是靠阅读分享学习进步的。刚好毕业后很大一部分工作都和TLS相关,就写一些自己对密码学的理解吧。毕竟没有系统学习过密码学,难免有疏漏,请大家不吝赐教。

一、RSA是啥

RSA毫无疑问是目前最广为人知的非对称加密方式;加密传输之所以可行,很大一部分原因就是非对称加密带来一些我们传统加密所没有的特性:明明知道是怎么把数据加密的,但是却无法解密,只有用另外一半钥匙,才能解开。

由于这种特性是反直觉的,会让人觉得(至少对于我)密码学是神奇的。

RSA的使用流程如下:

1. 选取两个素数Lic的密码学相关知识自我详解 (1)RSA,两个数的积记为Lic的密码学相关知识自我详解 (1)RSA

2. 求Lic的密码学相关知识自我详解 (1)RSA

3. 选取整数Lic的密码学相关知识自我详解 (1)RSA且与Lic的密码学相关知识自我详解 (1)RSA互质

4. 求整数Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA,即Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA的乘积除以Lic的密码学相关知识自我详解 (1)RSA的余数为1

5. 则对于待加密的Lic的密码学相关知识自我详解 (1)RSA,有Lic的密码学相关知识自我详解 (1)RSA

使用时加密方使用Lic的密码学相关知识自我详解 (1)RSA计算Lic的密码学相关知识自我详解 (1)RSA

解密方使用Lic的密码学相关知识自我详解 (1)RSA计算会得到Lic的密码学相关知识自我详解 (1)RSA,即获得明文

二、RSA的证明

1. 取模运算的一些性质证明

    由于计算机的存储位数是有限的,需要通过一些方法对运算进行限制,而取模运算就是这样一个方法;在我自己最开始接触密码学的时候,时常会觉得有点晕,其实是因为对取模运算乃至有限域性质不够熟悉导致的。因此把取模运算的一些性质证明作为这系列的第一证,希望自己也能在证明中巩固自己的基础:)

    1.1 Lic的密码学相关知识自我详解 (1)RSA

    即模完加再模和加完模结果相同;

    记Lic的密码学相关知识自我详解 (1)RSA,其中Lic的密码学相关知识自我详解 (1)RSA

    则

Lic的密码学相关知识自我详解 (1)RSA,左边等于右边,证毕;

  1.2 Lic的密码学相关知识自我详解 (1)RSA

  即模完乘再模积和乘完取模的结果相同;

  记Lic的密码学相关知识自我详解 (1)RSA,其中Lic的密码学相关知识自我详解 (1)RSA

Lic的密码学相关知识自我详解 (1)RSA

  左边等于右边,证毕;

1.3 欧拉定理

记欧拉函数为Lic的密码学相关知识自我详解 (1)RSA,其值为小于Lic的密码学相关知识自我详解 (1)RSA的正整数中,与Lic的密码学相关知识自我详解 (1)RSA互质的数的个数;

而欧拉定理为:当Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质,必有Lic的密码学相关知识自我详解 (1)RSA

证明:

1.3.1.首先证明当Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质时,Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质;

Lic的密码学相关知识自我详解 (1)RSA,若Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA存在非1公因数Lic的密码学相关知识自我详解 (1)RSA,则

Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质矛盾;

1.3.2.设小于Lic的密码学相关知识自我详解 (1)RSA的正整数中,与Lic的密码学相关知识自我详解 (1)RSA互质的数分别为Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质,有

Lic的密码学相关知识自我详解 (1)RSA

Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA

又因为显然Lic的密码学相关知识自我详解 (1)RSA小于Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA存在非1公因子,与题设矛盾

1.3.3.Lic的密码学相关知识自我详解 (1)RSA构成Lic的密码学相关知识自我详解 (1)RSA个互不相同的小于Lic的密码学相关知识自我详解 (1)RSA的与Lic的密码学相关知识自我详解 (1)RSA互质的数;又因为这Lic的密码学相关知识自我详解 (1)RSA必然属于Lic的密码学相关知识自我详解 (1)RSA所构成的集合,因此这Lic的密码学相关知识自我详解 (1)RSA个数与Lic的密码学相关知识自我详解 (1)RSA存在一一对应的映射关系;

Lic的密码学相关知识自我详解 (1)RSA

由于Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质且Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质;因为1与Lic的密码学相关知识自我详解 (1)RSA互质,由2必然有Lic的密码学相关知识自我详解 (1)RSA

欧拉定理得证;

 

2.证明RSA方法成立

2.1Lic的密码学相关知识自我详解 (1)RSA为小于Lic的密码学相关知识自我详解 (1)RSA的正整数中,与Lic的密码学相关知识自我详解 (1)RSA互质的数的个数;

这个证明相对容易,小于Lic的密码学相关知识自我详解 (1)RSA的正整数共有n-1个,去掉p-1个q的倍数(q,2q,...,(p-1)q)和q-1个p的倍数,

剩下n-p-q+1=pq-p-q+1=(p-1)(q-1)个数

Lic的密码学相关知识自我详解 (1)RSA

2.2当Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA互质时,Lic的密码学相关知识自我详解 (1)RSA

Lic的密码学相关知识自我详解 (1)RSA

2.3当Lic的密码学相关知识自我详解 (1)RSALic的密码学相关知识自我详解 (1)RSA不互质时,则x必为p或者q的倍数,不妨设Lic的密码学相关知识自我详解 (1)RSA

由欧拉定理Lic的密码学相关知识自我详解 (1)RSA

 Lic的密码学相关知识自我详解 (1)RSA

可以记Lic的密码学相关知识自我详解 (1)RSA,且k中必包含质因素p(两边均可被p整除),Lic的密码学相关知识自我详解 (1)RSA

Lic的密码学相关知识自我详解 (1)RSA

RSA加密解密后明文一致性得证