我尝试生成大素数并减一,然后尝试找到除数,但它只给出了确切的数字。
from factordb.factordb import FactorDB
from Crypto.Util.number import getPrime
N = getPrime(500)-1
f = FactorDB(N)
f.connect()
result=f.get_factor_list()
print(result)
等N = 22776476409125151760179155772622531480100222115633432653543973905986831138804326672655986412139835925782315320277990 84013035762860730715053597514693432 结果刚刚给出[2277647640912515176017915577262253148010022221156334326535439739059868311388043266726559864121398359257823153202779908401 3035762860730715053597514693432]
是的,那是因为这个数字实际上很大,而 FactorDB 仍然没有包含它。
现在这个数字是 FF,完全因式分解,因此您可以获得它的因式,而当您发布此答案时它仍然是 C,“没有已知因数的复合”。
考虑阅读有关 FactorDB 的文档页面。