Upgrade to OpenSSL 0.9.8h.
[dragonfly.git] / secure / usr.bin / openssl / man / genrsa.1
1 .\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.32
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sh \" Subsection heading
6 .br
7 .if t .Sp
8 .ne 5
9 .PP
10 \fB\\$1\fR
11 .PP
12 ..
13 .de Sp \" Vertical space (when we can't use .PP)
14 .if t .sp .5v
15 .if n .sp
16 ..
17 .de Vb \" Begin verbatim text
18 .ft CW
19 .nf
20 .ne \\$1
21 ..
22 .de Ve \" End verbatim text
23 .ft R
24 .fi
25 ..
26 .\" Set up some character translations and predefined strings.  \*(-- will
27 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
28 .\" double quote, and \*(R" will give a right double quote.  | will give a
29 .\" real vertical bar.  \*(C+ will give a nicer C++.  Capital omega is used to
30 .\" do unbreakable dashes and therefore won't be available.  \*(C` and \*(C'
31 .\" expand to `' in nroff, nothing in troff, for use with C<>.
32 .tr \(*W-|\(bv\*(Tr
33 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
34 .ie n \{\
35 .    ds -- \(*W-
36 .    ds PI pi
37 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
38 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
39 .    ds L" ""
40 .    ds R" ""
41 .    ds C` ""
42 .    ds C' ""
43 'br\}
44 .el\{\
45 .    ds -- \|\(em\|
46 .    ds PI \(*p
47 .    ds L" ``
48 .    ds R" ''
49 'br\}
50 .\"
51 .\" If the F register is turned on, we'll generate index entries on stderr for
52 .\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
53 .\" entries marked with X<> in POD.  Of course, you'll have to process the
54 .\" output yourself in some meaningful fashion.
55 .if \nF \{\
56 .    de IX
57 .    tm Index:\\$1\t\\n%\t"\\$2"
58 ..
59 .    nr % 0
60 .    rr F
61 .\}
62 .\"
63 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
64 .\" way too many mistakes in technical documents.
65 .hy 0
66 .if n .na
67 .\"
68 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
69 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
70 .    \" fudge factors for nroff and troff
71 .if n \{\
72 .    ds #H 0
73 .    ds #V .8m
74 .    ds #F .3m
75 .    ds #[ \f1
76 .    ds #] \fP
77 .\}
78 .if t \{\
79 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
80 .    ds #V .6m
81 .    ds #F 0
82 .    ds #[ \&
83 .    ds #] \&
84 .\}
85 .    \" simple accents for nroff and troff
86 .if n \{\
87 .    ds ' \&
88 .    ds ` \&
89 .    ds ^ \&
90 .    ds , \&
91 .    ds ~ ~
92 .    ds /
93 .\}
94 .if t \{\
95 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
96 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
97 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
98 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
99 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
100 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
101 .\}
102 .    \" troff and (daisy-wheel) nroff accents
103 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
104 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
105 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
106 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
107 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
108 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
109 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
110 .ds ae a\h'-(\w'a'u*4/10)'e
111 .ds Ae A\h'-(\w'A'u*4/10)'E
112 .    \" corrections for vroff
113 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
114 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
115 .    \" for low resolution devices (crt and lpr)
116 .if \n(.H>23 .if \n(.V>19 \
117 \{\
118 .    ds : e
119 .    ds 8 ss
120 .    ds o a
121 .    ds d- d\h'-1'\(ga
122 .    ds D- D\h'-1'\(hy
123 .    ds th \o'bp'
124 .    ds Th \o'LP'
125 .    ds ae ae
126 .    ds Ae AE
127 .\}
128 .rm #[ #] #H #V #F C
129 .\" ========================================================================
130 .\"
131 .IX Title "GENRSA 1"
132 .TH GENRSA 1 "2008-09-06" "0.9.8h" "OpenSSL"
133 .SH "NAME"
134 genrsa \- generate an RSA private key
135 .SH "SYNOPSIS"
136 .IX Header "SYNOPSIS"
137 \&\fBopenssl\fR \fBgenrsa\fR
138 [\fB\-out filename\fR]
139 [\fB\-passout arg\fR]
140 [\fB\-des\fR]
141 [\fB\-des3\fR]
142 [\fB\-idea\fR]
143 [\fB\-f4\fR]
144 [\fB\-3\fR]
145 [\fB\-rand file(s)\fR]
146 [\fB\-engine id\fR]
147 [\fBnumbits\fR]
148 .SH "DESCRIPTION"
149 .IX Header "DESCRIPTION"
150 The \fBgenrsa\fR command generates an \s-1RSA\s0 private key.
151 .SH "OPTIONS"
152 .IX Header "OPTIONS"
153 .IP "\fB\-out filename\fR" 4
154 .IX Item "-out filename"
155 the output filename. If this argument is not specified then standard output is
156 used.  
157 .IP "\fB\-passout arg\fR" 4
158 .IX Item "-passout arg"
159 the output file password source. For more information about the format of \fBarg\fR
160 see the \fB\s-1PASS\s0 \s-1PHRASE\s0 \s-1ARGUMENTS\s0\fR section in \fIopenssl\fR\|(1).
161 .IP "\fB\-des|\-des3|\-idea\fR" 4
162 .IX Item "-des|-des3|-idea"
163 These options encrypt the private key with the \s-1DES\s0, triple \s-1DES\s0, or the 
164 \&\s-1IDEA\s0 ciphers respectively before outputting it. If none of these options is
165 specified no encryption is used. If encryption is used a pass phrase is prompted
166 for if it is not supplied via the \fB\-passout\fR argument.
167 .IP "\fB\-F4|\-3\fR" 4
168 .IX Item "-F4|-3"
169 the public exponent to use, either 65537 or 3. The default is 65537.
170 .IP "\fB\-rand file(s)\fR" 4
171 .IX Item "-rand file(s)"
172 a file or files containing random data used to seed the random number
173 generator, or an \s-1EGD\s0 socket (see \fIRAND_egd\fR\|(3)).
174 Multiple files can be specified separated by a OS-dependent character.
175 The separator is \fB;\fR for MS\-Windows, \fB,\fR for OpenVMS, and \fB:\fR for
176 all others.
177 .IP "\fB\-engine id\fR" 4
178 .IX Item "-engine id"
179 specifying an engine (by it's unique \fBid\fR string) will cause \fBreq\fR
180 to attempt to obtain a functional reference to the specified engine,
181 thus initialising it if needed. The engine will then be set as the default
182 for all available algorithms.
183 .IP "\fBnumbits\fR" 4
184 .IX Item "numbits"
185 the size of the private key to generate in bits. This must be the last option
186 specified. The default is 512.
187 .SH "NOTES"
188 .IX Header "NOTES"
189 \&\s-1RSA\s0 private key generation essentially involves the generation of two prime
190 numbers. When generating a private key various symbols will be output to
191 indicate the progress of the generation. A \fB.\fR represents each number which
192 has passed an initial sieve test, \fB+\fR means a number has passed a single
193 round of the Miller-Rabin primality test. A newline means that the number has
194 passed all the prime tests (the actual number depends on the key size).
195 .PP
196 Because key generation is a random process the time taken to generate a key
197 may vary somewhat.
198 .SH "BUGS"
199 .IX Header "BUGS"
200 A quirk of the prime generation algorithm is that it cannot generate small
201 primes. Therefore the number of bits should not be less that 64. For typical
202 private keys this will not matter because for security reasons they will
203 be much larger (typically 1024 bits).
204 .SH "SEE ALSO"
205 .IX Header "SEE ALSO"
206 \&\fIgendsa\fR\|(1)