123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- =pod
- =head1 NAME
- genrsa - generate an RSA private key
- =head1 SYNOPSIS
- B<openssl> B<genrsa>
- [B<-help>]
- [B<-out filename>]
- [B<-passout arg>]
- [B<-aes128>]
- [B<-aes192>]
- [B<-aes256>]
- [B<-aria128>]
- [B<-aria192>]
- [B<-aria256>]
- [B<-camellia128>]
- [B<-camellia192>]
- [B<-camellia256>]
- [B<-des>]
- [B<-des3>]
- [B<-idea>]
- [B<-f4>]
- [B<-3>]
- [B<-rand file(s)>]
- [B<-engine id>]
- [B<numbits>]
- =head1 DESCRIPTION
- The B<genrsa> command generates an RSA private key.
- =head1 OPTIONS
- =over 4
- =item B<-help>
- Print out a usage message.
- =item B<-out filename>
- Output the key to the specified file. If this argument is not specified then
- standard output is used.
- =item B<-passout arg>
- the output file password source. For more information about the format of B<arg>
- see the B<PASS PHRASE ARGUMENTS> section in L<openssl(1)>.
- =item B<-aes128|-aes192|-aes256|-aria128|-aria192|-aria256|-camellia128|-camellia192|-camellia256|-des|-des3|-idea>
- These options encrypt the private key with specified
- cipher before outputting it. If none of these options is
- specified no encryption is used. If encryption is used a pass phrase is prompted
- for if it is not supplied via the B<-passout> argument.
- =item B<-F4|-3>
- the public exponent to use, either 65537 or 3. The default is 65537.
- =item B<-rand file(s)>
- a file or files containing random data used to seed the random number
- generator, or an EGD socket (see L<RAND_egd(3)>).
- Multiple files can be specified separated by an OS-dependent character.
- The separator is B<;> for MS-Windows, B<,> for OpenVMS, and B<:> for
- all others.
- =item B<-engine id>
- specifying an engine (by its unique B<id> string) will cause B<genrsa>
- to attempt to obtain a functional reference to the specified engine,
- thus initialising it if needed. The engine will then be set as the default
- for all available algorithms.
- =item B<numbits>
- the size of the private key to generate in bits. This must be the last option
- specified. The default is 2048.
- =back
- =head1 NOTES
- RSA private key generation essentially involves the generation of two prime
- numbers. When generating a private key various symbols will be output to
- indicate the progress of the generation. A B<.> represents each number which
- has passed an initial sieve test, B<+> means a number has passed a single
- round of the Miller-Rabin primality test. A newline means that the number has
- passed all the prime tests (the actual number depends on the key size).
- Because key generation is a random process the time taken to generate a key
- may vary somewhat.
- =head1 BUGS
- A quirk of the prime generation algorithm is that it cannot generate small
- primes. Therefore the number of bits should not be less that 64. For typical
- private keys this will not matter because for security reasons they will
- be much larger (typically 1024 bits).
- =head1 SEE ALSO
- L<gendsa(1)>
- =head1 COPYRIGHT
- Copyright 2000-2017 The OpenSSL Project Authors. All Rights Reserved.
- Licensed under the OpenSSL license (the "License"). You may not use
- this file except in compliance with the License. You can obtain a copy
- in the file LICENSE in the source distribution or at
- L<https://www.openssl.org/source/license.html>.
- =cut
|