Updated: 2022/Sep/29

Please read Privacy Policy. It's for your privacy.


QSIEVE(1)                   General Commands Manual                  QSIEVE(1)

NAME
     qsieve, qsafe - generate system moduli file

SYNOPSIS
     qsieve [megabytes bits [initial]]
     qsafe [trials [generator]]

DESCRIPTION
     The qsieve utility will list candidates for Sophie-Germaine primes (where
     q = (p-1)/2) to standard output.  The list is checked against small known
     primes (less than 2**30).  This step is both processor and memory
     intensive.

     The megabytes value sets a limit for the internal sieve buffer.  This
     should be small enough to remain entirely in memory.  Swap thrashing can
     increase the run time from hours to days or weeks!  When the megabytes
     value is zero (0), qsieve will select a default suitable for the bits.

     The bits value sets the length of the generated possible primes
     (typically 768, 1024, 1536, 2048, 3072, or 4096, although others can be
     used for variety).

     The optional initial value (hex) specifies the beginning of the search.
     Otherwise, qsieve generates a randomly selected number.

     The qsafe utility will perform a Miller-Rabin primality test on the list
     of candidates (checking both q and p) from standard input.  The result is
     a list of so-call "safe" primes to standard output, suitable for use as
     Diffie-Hellman moduli.  This step is merely processor intensive.

     The trials value sets the number of Miller-Rabin interations (typically
     16 to 128).

     The optional generator value (hex) limits testing to candidates with a
     specific generator (usually 2).  Otherwise, qsafe will test each
     candidate and suggest a generator.

SEE ALSO
     moduli(5)

HISTORY
     These programs were originally developed for the Photuris project, and
     later the OpenSSH project.

NetBSD 10.99                     July 28, 1997                    NetBSD 10.99