NAME¶
Math::Prime::Util::RandomPrimes - Generate random primes
DESCRIPTION¶
Routines to generate random primes, including constructing proven primes.
RANDOM UTILITY FUNCTIONS¶
get_randf¶
Gets a subroutine that will produce random integers between 0 and
"n", inclusive. The argument
"n" can be a bigint.
get_randf_nbit¶
Gets a subroutine that will produce random integers between 0 and
"2^n-1", inclusive.
RANDOM PRIME FUNCTIONS¶
random_prime¶
Generate a random prime between "low" and
"high". If given one argument,
"low" will be 2.
random_ndigit_prime¶
Generate a random prime with "n" digits.
"n" must be at least 1.
random_nbit_prime¶
Generate a random prime with "n" bits.
"n" must be at least 2.
random_maurer_prime¶
Construct a random provable prime of "n" bits
using Maurer's FastPrime algorithm. "n" must
be at least 2.
random_maurer_prime_with_cert¶
Construct a random provable prime of "n" bits
using Maurer's FastPrime algorithm. "n" must
be at least 2. Returns a list of two items: the prime and the certificate.
random_shawe_taylor_prime¶
Construct a random provable prime of "n" bits
using Shawe-Taylor's algorithm. "n" must be
at least 2. The implementation is from FIPS 186-4 and uses SHA-256 with 512
bits of randomness.
random_shawe_taylor_prime_with_cert¶
Construct a random provable prime of "n" bits
using Shawe-Taylor's algorithm. "n" must be
at least 2. Returns a list of two items: the prime and the certificate.
random_strong_prime¶
Construct a random strong prime of "n" bits.
"n" must be at least 128.
random_proven_prime¶
Generate or construct a random provable prime of
"n" bits.
"n" must be at least 2.
random_proven_prime_with_cert¶
Generate or construct a random provable prime of
"n" bits.
"n" must be at least 2. Returns a list of
two items: the prime and the certificate.
RANDOM PRIMALITY FUNCTIONS¶
miller_rabin_random¶
Given a number "n" and a number of tests to
perform "k", this does
"k" Miller-Rabin tests on
"n" using randomly selected bases. The
return value is 1 if all bases are a witness to to
"n", or 0 if any of them fail.
SEE ALSO¶
Math::Prime::Util
AUTHORS¶
Dana Jacobsen <dana@acm.org>
COPYRIGHT¶
Copyright 2012-2013 by Dana Jacobsen <dana@acm.org>
This program is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.