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.
My questions are:
-
what algorithm does the
BigInteger.probablePrime(1024, rnd)use? -
what is the difference between the algorithm above and other algorithms: like Rabin-Miller, Fermats, Lucas-Lehmer?
Thank you.
BigInteger‘s probable prime methods use both the Miller-Rabin and Lucas-Lehmer algorithms to test primality.See the internal method
BigInteger.primeToCertainty.