If you're seeing this message, it means we're having trouble loading external resources on our website.

如果你被网页过滤器挡住,请确保域名*.kastatic.org*.kasandbox.org 没有被阻止.

主要内容

介绍

你是否看过 现代加密法 的课程? 在上一个测试点,用户最常问的问题如下:
(图片翻译:我想了解更多关于素因数分解的知识! 数学练习很有趣,应用部分也很棒。 谢谢。) 在这个课程中,我们看到了 质因数分解 如何在创建 数学锁 扮演了最重要的角色。一个数学锁(或者 单向函数)需要的是一个 容易进行并难以逆反的过程
例如,如果我随机选择两个大的质数,比如:P1 = 709 和 P2 = 733
并将它们相乘而得到:N = P1 * P2
N = 709 * 733 = 519697     (这是 容易 计算的)
我最后有两个东西:一个大数字(519697)以及这个大数字的质因子(709 * 733
现在,假设我 把质因子藏起来 而只提供如下信息:
519697 = ? * ?     (这是 难以 计算的)
如果我要你 计算质因子, 你会如何开始?不要担心,每个人遇到这个问题都会感到困难!要算出答案,你必须进行多次反复试验。乘法是很快 (容易计算) 的,而计算质因子是慢 (难以计算) 的。这个简单的事实就是形成 RSA 加密方案 的基础。
👁️ 观看这个动图以查看两者的差异。
但是在进一步学习之前,我们需要深入了解第一步,问自己一个重要的问题。当我们说 “随机选择两个大的质数”,我们如何能很快地做到?这是个容易解决的问题吗?
如果你思考一下,你最终会发现这个步骤需要,至少,测试一个随机产生的数字 (例如 99194853094755497) 是质数或合数 的功能。你的计算器上面有没有这样的功能?

我没看到... ...这是为什么呢?
要想知道的话,我们先从一个挑战开始……

想加入讨论吗?

尚无帖子。
你会英语吗?单击此处查看更多可汗学院英文版的讨论.