Java 中 BigInteger.probablePrime() 与其他素数算法的区别

Difference between BigInteger.probablePrime() and other primality algorithms in java(Java 中 BigInteger.probablePrime() 与其他素数算法的区别)
本文介绍了Java 中 BigInteger.probablePrime() 与其他素数算法的区别的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

我正在使用 Java 实现一个 RSA 加密程序.现在我正在使用 BigInteger.probablePrime(1024, rnd) 来获取素数.这里 rnd 是由 Random rnd = new Random() 生成的随机数.我需要测试各种加密速度.

I am implementing an RSA encryption program using Java. Right now I am using BigInteger.probablePrime(1024, rnd) to get prime numbers. Here rnd is a random number generated by Random rnd = new Random() . I need to test various speeds of encryption.

我的问题是:

  1. BigInteger.probablePrime(1024, rnd) 使用什么算法?

上面的算法和其他算法有什么区别:比如 Rabin-Miller、Fermats、Lucas-Lehmer?

what is the difference between the algorithm above and other algorithms: like Rabin-Miller, Fermats, Lucas-Lehmer?

谢谢.

推荐答案

BigInteger 的可能素数方法使用 Miller-Rabin 和 Lucas-Lehmer 算法来测试素数.

BigInteger's probable prime methods use both the Miller-Rabin and Lucas-Lehmer algorithms to test primality.

查看内部方法BigInteger.primeToCertainty.

See the internal method BigInteger.primeToCertainty.

这篇关于Java 中 BigInteger.probablePrime() 与其他素数算法的区别的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Reliable implementation of PBKDF2-HMAC-SHA256 for JAVA(PBKDF2-HMAC-SHA256 for JAVA 的可靠实现)
Correct way to sign and verify signature using bouncycastle(使用 bouncycastle 签名和验证签名的正确方法)
Creating RSA Public Key From String(从字符串创建 RSA 公钥)
Why java.security.NoSuchProviderException No such provider: BC?(为什么 java.security.NoSuchProviderException 没有这样的提供者:BC?)
Generating X509 Certificate using Bouncy Castle Java(使用 Bouncy Castle Java 生成 X509 证书)
How can I get a PublicKey object from EC public key bytes?(如何从 EC 公钥字节中获取 PublicKey 对象?)