我的理解是,许多公用钥匙的加密算法,这些天取决于大素数的钥匙,并且它的困难在保理的产品的两个素数,使加密很难打破。这也是我的理解是,其中一个原因,保理如此大的数字是很困难的,是的庞大规模使用的数字意味着没有CPU可以有效地操作上的数字,因为我们的微不足道的32和64位Cpu是不1024,2048或甚至4096位数字。专门很大的整数的数学图书馆必须采用为了处理这些数字,这些图书馆是缓慢的,因为CPU仅可以保持(和进程)的小块(如32或64位),在一段时间。

所以...

为什么你不能建立一个高度专业化的定义芯片2048位寄存器和巨大的算术电路,以同样的方式,我们攀8日至16至32至64位Cpu,只是建立一个有多大?这个芯片就不需要的大部分电路常规的处理器,毕竟它不会需要处理的东西喜欢的虚拟存储器,多线程或I/O.它甚至不需要一个通用的处理器,支持存储指令。只是最低限度的执行必要的算术运算上的巨大数字。

我不知道很多关于集成电路设计的,但我还记得学习关于如何逻辑门的工作,如何建立一半的加法,充分加,则链接在一起的一群加以做多点运算。只是规模。很多。

现在,我相当肯定有一个很好的理由(或17)的上述不会的工作(因为否则许多人比我聪明已经做到了),但我有兴趣知道 为什么 它不会的工作。

(注:这个问题可能需要一些重新工作,因为我甚至不知道但如果这个问题意义)

有帮助吗?

解决方案

@cube说的是什么,以及一个巨大的算术逻辑单元需要更多的时间让逻辑信号稳定,并在数字设计中包含其他复杂功能。数字逻辑设计包括您在软件中认为理所当然的东西,即通过组合逻辑的信号需要很短但非零的时间来传播和稳定。需要仔细设计32x32乘法器。 1024x1024乘法器不仅会占用芯片中的大量物理资源,而且还会比32x32乘法器慢(尽管可能比计算执行1024x1024乘法所需的所有部分乘积的32x32乘法器更快)。此外,它不仅是瓶颈的乘数:你有记忆途径。你必须花费大量时间从一个只有32位宽的存储器电路中收集1024位,然后将产生的2048位存储回存储器电路。

几乎可以肯定的是,获得一堆“常规”产品会更好。 32位或64位系统并行工作:您可以获得没有硬件设计复杂性的加速。

编辑:如果有人有ACM访问权限(我没有),或许请查看本文看看它的内容。

其他提示

因为这个加速仅在O(n)中,但是将数字分解的复杂性类似于O(2 ^ n)(相对于位数)。因此,如果您制作了这个ü berprocessor并将数字分解为1000倍,我只需要将数字增大10位,我们就会重新开始。

如上所述,主要问题是您需要通过多少种可能来计算一个数字。话虽这么说,确实存在专门的计算机来做这种事情。

这种加密技术的真正进步是数字因子分解算法的改进。目前,最快的通用算法是一般数字字段筛选

从历史上看,我们似乎能够将每十年的数字提高两倍。其中一部分是更快的硬件,其中一部分只是更好地理解数学以及如何执行分解。

我不能评论 可行性 的一种方法完全一样,你描述,但是人做的 类似的 事情非常频繁地使用Fpga:

Shamir& Tromer 建议采用类似的方法,使用一种网格计算

  

本文讨论了自定义硬件的新设计   实施筛分步骤,其中   将[相对于TWINKLE的筛分成本]降低至约1000万美元。新设备,   叫TWIRL,可以看作是一个延伸   TWINKLE设备。但是,不像TWINKLE它   没有光电元件,并且可以   因此可以使用标准VLSI技术制造   在硅片上。根本的想法是使用   输入的单个副本以解决许多子问题   在平行下。由于输入存储主导成本,如果   并行化开销保持低,然后得到   加速是基本上免费获得的。的确如此   主要挑战在于有效实现这种并行性,同时允许输入的紧凑存储。   解决这个问题涉及无数的考虑因素   从数论到VLSI技术。

为什么不尝试构建超级量子计算机并运行 Shor算法在它上面?

  

" ...如果要构建具有足够量子位的量子计算机, Shor的算法可用于破坏公钥加密方案,例如广泛使用的RSA方案。 RSA基于这样的假设:分解大数在计算上是不可行的。到目前为止,这个假设对于经典(非量子)计算机是有效的;没有经典算法可以考虑多项式时间。然而,Shor的算法表明,因子分解在量子计算机上是有效的,因此足够大的量子计算机可以破坏RSA。 ..." -Wikipedia

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top