看了李永乐老师的密码学视频,真的是收获满满,在这里记录一下。现代密码学分主要有两种加密方式,一种是对称加密,另一种是非对称加密,李永乐老师在视频中讲解了非常著名的RSA算法加密。先一步步说吧。
视频链接(推荐直接看视频):西瓜视频, youtube
博客推荐:非对称加密
博客相应的GitHub链接
1. 对称加密
A想把明文m发给B,防止窃听,通过加上密钥e(乘e,e次方等等复杂运算)进行加密,形成密文C,然后通过信道传给B,B通过加密的反运算得出明文m.
缺点:安全性低,普通计算机可以通过穷举进行破解,而且密钥的也容易被窃听。
2.非对称加密
非对称加密有两个密钥:公钥和私钥。公钥是可以向外界公开的,私钥自己保存在自己的电脑上。A想把明文m发给B,直接通过公钥进行加密形成密文C,然后将C发给B,B通过私钥对密文C进行分解,得到明文m。
优点:安全系数很高,即使窃听到了密文也很难破解。
缺点:并非无解,用量子计算机可以破解,一般来说,窃听者拥有量子计算机还是不太可能的吧。
3.RSA算法
步骤很清楚,这里讲一下互质是什么意思,就是两个数除了1以外没有公约数。
4.安全性
之所以RSA这么安全,这是因为破解过程需要求解(psi(n))的质因数分解,然后(psi(n))是一个很大的数,一般是1024位二进制,很难分解出,普通计算机计算十年都未必能够分解出来,也只有量子计算机可以有这种超强的计算力,但还是要算一个星期左右,所以银行系统还是要定期更新密钥。