如何生成素数p(最小2048位)和q(最小224位),其中q | P-1

时间:2016-03-04 03:19:49

标签: hash prime-factoring

我想测试我的算法,但我需要一对p和q,其中q | p-1,最小长度p = 2048位,最小长度q = 224位。

我可以使用NextPrime [2 ^ 2048]或SageMath使用prime.next(pow(2,2048)) prime = Primes()找到带有Wolframalpha的p。

但是,找到q对我来说很难。我在SageMath中尝试使用椭圆曲线方法(ecm.factor(p-1))并找到最小长度为224的因子,它整晚都花费了(已经超过10小时且仍在运行)。

任何人都可以帮助我,找到它的最佳方法是什么?或者任何人都可以分享一对p(min 2048)和q(min 224)(我只想测试一下)?

1 个答案:

答案 0 :(得分:2)

选择合适幅度的素数 q 和乘数 k ,然后计算相应的 p = k × q + 1.如果 p 是素数,那么你已经完成了。否则,递增 k 并重试。