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