目前用于产生用于RSA加密的大素数的行业标准算法是什么?
我知道,我可以在互联网上找到很多文章来解释RSA算法是如何加密和解密消息的,但我似乎找不到任何文章来解释用于生成该算法中使用的p和q的大素数和不同素数的算法。
发布于 2011-07-13 12:32:23
FIPS 186-3告诉您,他们希望您如何为加密应用程序生成素数。它本质上是米勒-拉宾,但它也规定,当你需要额外的财产从你的素数做什么。
发布于 2011-07-13 11:56:27
自素数很常见:π(n) ~ n/ln(n)以来,素数的生成问题归结为确定素数的问题(而不是专门为产生素数而设计的算法)。
使用的是概率测试(例如在java.math.BigInteger.probablePrime()中),而不是确定性测试。见米勒-拉宾。
http://en.literateprograms.org/Miller-Rabin_素数_测试_%28 28Java%29
就RSA的素数而言,存在一些额外次要所需经费,即(p-1)和(q-1)不应该容易分解,而p和q不应该是接近的。
发布于 2011-07-13 12:04:50
有一些测试来确定给定的数字是否是素数,比如米勒-拉宾素数检验。这些算法以概率P确定给定数是否为素数。
https://crypto.stackexchange.com/questions/71
复制相似问题