它易于计算少量的eulers phi,甚至有很多在线站点都提供这种功能。但是,当数字真的很大时,我的意思是像2 ^ 128?如何计算这么高的eulers phi函数?我可以使用台式机吗?

最佳答案

如果您知道主要因素,那么可以。但是总的来说,您无法高效地做到这一点,至少不能以任何人都知道的方式做到。如果我们可以一般地计算上位函数,那么我们可以在n = pq的情况下得到它,其中p和q是质数,即(p-1)(q-1)。因此n-phi(n)= p + q-1,然后我们知道p + q = c。那么(p + q)^ 2 = c ^ 2,所以p ^ 2 + q ^ 2 = c ^ 2-2n。但是然后(p-q)^ 2 = p ^ 2 + q ^ 2-2pq = c ^ 2-4 n。所以我们知道p + q和p-q,从中我们可以得到p和q。

这会破坏RSA encryption

关于c++ - 欧拉的巨大披披,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40980680/

10-11 21:58