我想讨论一个关于质数的非常有趣的话题。
我一直在研究质数,发现了这一点。
对于N数(2 ^ N)模式N≡2
难怪在这里。费马定理:(a ^ n)mod n≡a
但是,您可以使用此方法在不到1秒的时间内找出小于2 ^ 64的质数是否为质数。
您可以使用C#中使用的BigInteger类的ModPow方法快速计算此计算,而无需计算2 ^ N。
所有质数在上面的语句中给出结果2。但是,也有非质数给出2个结果。这些数字称为“伪素数”。
所有小于2 ^ 64的伪质数作为文本文件在我的硬盘上仅保留2GB的空间。
我的意思是该系列中的数字。 http://oeis.org/a001567
有了此列表,您可以准备一个简单的函数来查看数字是否为质数。使用C#,您可以创建这样的代码。
public bool IsPrime (ulong number)
{
bool isPrime = BigInteger.ModPow (2, number, number) == 2;
return !isPrime ? false: (PseudoPrimes.IndexOf (number) == -1 ? true : false)
}
使用此信息,您可以爆炸几乎所有RSA加密货币。请保留此信息,以防危险人员。
现在我在问我们是否可以通过编程方式获得此列表,或者可以通过有效压缩将其缩小到很小的尺寸?
我不知道我想说什么。您无法尝试就无法分辨。我希望那些能帮助我理解我想说的人。谢谢。
低于2 ^ 32的伪素数列表。 https://filebin.net/32cy1dm3bgc9leth/psps.rar?t=fa0zngpt
我希望能够有效地压缩此列表或以编程方式快速创建它。我希望可以。