在讨论RSA算法之前,我们先简单回顾一下密码学的历史。

密码学的漫长历史可以追溯到两千年前的尤利乌斯 · 恺撒时代。当时,凯撒和他的军官们通过密钥为三的加法替换密码进行通信,这便是著名的凯撒密码。从那之后到二十世纪七十年代这两千年来,所有的加密通信其实都和凯撒密码一样基于一个密钥系统,我们称之为对称密钥系统。也就是说,通信双方在加密和解密时使用同一个密钥,或是使用两个可以简单地相互推算的密钥。这样做的前提是在安全通信建立前需要交换密钥(例如:两个罗马百夫长在澡堂碰头然后约定密码什么的)。

虽然现代社会仍然广泛使用对称加密,不过这种加密模式也是有缺点的。

Continue reading →