【发布时间】:2009-07-30 12:28:19
【问题描述】:
我的理解是,如今许多公钥加密算法都依赖于大素数来组成密钥,而难以分解两个素数的乘积使得加密难以破解。我的理解也是,分解如此大的数字如此困难的原因之一是,所使用的数字的绝对大小意味着没有 CPU 可以有效地处理这些数字,因为我们的微型 32 位和 64 位 CPU 是不匹配的对于 1024、2048 甚至 4096 位数。必须使用专门的 Big Integer 数学库来处理这些数字,而这些库本身就很慢,因为 CPU 一次只能保存(和处理)小块(如 32 位或 64 位)。
所以...
您为什么不能构建一个具有 2048 位寄存器和巨大算术电路的高度专业化的定制芯片,就像我们将 CPU 从 8 位扩展到 16 位到 32 位到 64 位一样,只需构建一个更大的芯片?该芯片不需要传统 CPU 上的大部分电路,毕竟它不需要处理虚拟内存、多线程或 I/O 之类的事情。它甚至不需要是支持存储指令的通用处理器。只是对巨大数字执行必要的算术计算的最低要求。
我对 IC 设计知之甚少,但我记得学习过逻辑门的工作原理,如何构建半加器、全加器,然后将一堆加法器连接在一起进行多位运算。只是放大。很多。
现在,我相当肯定有一个很好的理由(或 17 个)上述方法行不通(否则,比我聪明的许多人中的一个已经这样做了)但我很感兴趣知道为什么它不起作用。
(注意:这个问题可能需要重新处理,因为我什至不确定这个问题是否有意义)
【问题讨论】:
-
为什么有人投票结束这个问题?
-
stackoverflow.com/faq 查看“我不应该在这里问什么样的问题?”
-
对不起,我认为 stackoverflow 开始时有一个很好的计划,就像专家交流一样,但更好,但它已经进化了,它需要成长。应该允许此类元讨论。几乎没有编程“讨论板”来以开放式的方式讨论编程话题。我个人认为 SO 需要与它的用户一起发展,并且版主需要停止像 wikipedia 上的纳粹一样。顺便说一句,你怎么能看到投票结束的元数据,还是只有问题作者才能看到?
标签: theory cpu-architecture bignum prime-factoring digital-design