RSA是这样起作用的:鲍勃通过网络发送的不是m本身,而是me除以n所得的余数(remainder)。然后爱丽丝拿到这个余数r,计算rd除以n得到的余数,就能重新得到m。这背后的数学保证了爱丽丝得到的结果正是原始的信息m,爱丽丝的计算机可以进一步将它解码为普通明文。当然,对于任何真实生活中的“爱丽丝”和“鲍勃”,这一过程都是在幕后无缝衔接地完成的。
这么看来伊芙所缺的唯一重要的东西是解密数d。倘若伊芙知道d,那她也能像爱丽丝一样完美地解码信息。事实上,存在着一个特殊的方程,d恰好是它的一个解。从计算的角度来讲,借助公元前300年的《几何原本》[2](Books of Euclid)中发表的欧几里得算法,求解这个方程是很容易的,这并不困难。麻烦的地方在于,除非你知道p和q中至少一个,否则不可能准确地找到那个要解的方程。这便是挡在伊芙道路上的障碍。
我们可以再进一步解释,以上涉及的数如何在这个系统中各司其职。首先,很明显鲍勃一开始就面临着一个大问题,m很大,n更是可怕(在200位数字这个量级上)。即便e的值不那样夸张,me也是极其大的。计算出它之后,我们还得将me除以n来得到余数r,这代表了被加密的文本。这些计算太过繁杂,以至于看起来也许并不可行。我们需要意识到,即使现代计算机异常强大,它们还是有能力极限。当计算涉及很高次的幂,就可能会超过任何计算机处理能力的极限。我们不能假设电脑可以在短时间内完成任何我们交给它们的计算任务。