]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - secure/lib/libcrypto/man/dsa.1
This commit was generated by cvs2svn to compensate for changes in r107606,
[FreeBSD/FreeBSD.git] / secure / lib / libcrypto / man / dsa.1
1 .\" Automatically generated by Pod::Man version 1.15
2 .\" Tue Jul 30 09:20:44 2002
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 "DSA 1"
141 .TH DSA 1 "0.9.6e" "2000-04-13" "OpenSSL"
142 .UC
143 .SH "NAME"
144 dsa \- \s-1DSA\s0 key processing
145 .SH "SYNOPSIS"
146 .IX Header "SYNOPSIS"
147 \&\fBopenssl\fR \fBdsa\fR
148 [\fB\-inform PEM|DER\fR]
149 [\fB\-outform PEM|DER\fR]
150 [\fB\-in filename\fR]
151 [\fB\-passin arg\fR]
152 [\fB\-out filename\fR]
153 [\fB\-passout arg\fR]
154 [\fB\-des\fR]
155 [\fB\-des3\fR]
156 [\fB\-idea\fR]
157 [\fB\-text\fR]
158 [\fB\-noout\fR]
159 [\fB\-modulus\fR]
160 [\fB\-pubin\fR]
161 [\fB\-pubout\fR]
162 .SH "DESCRIPTION"
163 .IX Header "DESCRIPTION"
164 The \fBdsa\fR command processes \s-1DSA\s0 keys. They can be converted between various
165 forms and their components printed out. \fBNote\fR This command uses the
166 traditional SSLeay compatible format for private key encryption: newer
167 applications should use the more secure PKCS#8 format using the \fBpkcs8\fR
168 .SH "COMMAND OPTIONS"
169 .IX Header "COMMAND OPTIONS"
170 .Ip "\fB\-inform DER|PEM\fR" 4
171 .IX Item "-inform DER|PEM"
172 This specifies the input format. The \fB\s-1DER\s0\fR option with a private key uses
173 an \s-1ASN1\s0 \s-1DER\s0 encoded form of an \s-1ASN\s0.1 \s-1SEQUENCE\s0 consisting of the values of
174 version (currently zero), p, q, g, the public and private key components
175 respectively as \s-1ASN\s0.1 INTEGERs. When used with a public key it uses a
176 SubjectPublicKeyInfo structure: it is an error if the key is not \s-1DSA\s0.
177 .Sp
178 The \fB\s-1PEM\s0\fR form is the default format: it consists of the \fB\s-1DER\s0\fR format base64
179 encoded with additional header and footer lines. In the case of a private key
180 PKCS#8 format is also accepted.
181 .Ip "\fB\-outform DER|PEM\fR" 4
182 .IX Item "-outform DER|PEM"
183 This specifies the output format, the options have the same meaning as the 
184 \&\fB\-inform\fR option.
185 .Ip "\fB\-in filename\fR" 4
186 .IX Item "-in filename"
187 This specifies the input filename to read a key from or standard input if this
188 option is not specified. If the key is encrypted a pass phrase will be
189 prompted for.
190 .Ip "\fB\-passin arg\fR" 4
191 .IX Item "-passin arg"
192 the input file password source. For more information about the format of \fBarg\fR
193 see the \fB\s-1PASS\s0 \s-1PHRASE\s0 \s-1ARGUMENTS\s0\fR section in openssl(1).
194 .Ip "\fB\-out filename\fR" 4
195 .IX Item "-out filename"
196 This specifies the output filename to write a key to or standard output by
197 is not specified. If any encryption options are set then a pass phrase will be
198 prompted for. The output filename should \fBnot\fR be the same as the input
199 filename.
200 .Ip "\fB\-passout arg\fR" 4
201 .IX Item "-passout arg"
202 the output file password source. For more information about the format of \fBarg\fR
203 see the \fB\s-1PASS\s0 \s-1PHRASE\s0 \s-1ARGUMENTS\s0\fR section in openssl(1).
204 .Ip "\fB\-des|\-des3|\-idea\fR" 4
205 .IX Item "-des|-des3|-idea"
206 These options encrypt the private key with the \s-1DES\s0, triple \s-1DES\s0, or the 
207 \&\s-1IDEA\s0 ciphers respectively before outputting it. A pass phrase is prompted for.
208 If none of these options is specified the key is written in plain text. This
209 means that using the \fBdsa\fR utility to read in an encrypted key with no
210 encryption option can be used to remove the pass phrase from a key, or by
211 setting the encryption options it can be use to add or change the pass phrase.
212 These options can only be used with \s-1PEM\s0 format output files.
213 .Ip "\fB\-text\fR" 4
214 .IX Item "-text"
215 prints out the public, private key components and parameters.
216 .Ip "\fB\-noout\fR" 4
217 .IX Item "-noout"
218 this option prevents output of the encoded version of the key.
219 .Ip "\fB\-modulus\fR" 4
220 .IX Item "-modulus"
221 this option prints out the value of the public key component of the key.
222 .Ip "\fB\-pubin\fR" 4
223 .IX Item "-pubin"
224 by default a private key is read from the input file: with this option a
225 public key is read instead.
226 .Ip "\fB\-pubout\fR" 4
227 .IX Item "-pubout"
228 by default a private key is output. With this option a public
229 key will be output instead. This option is automatically set if the input is
230 a public key.
231 .SH "NOTES"
232 .IX Header "NOTES"
233 The \s-1PEM\s0 private key format uses the header and footer lines:
234 .PP
235 .Vb 2
236 \& -----BEGIN DSA PRIVATE KEY-----
237 \& -----END DSA PRIVATE KEY-----
238 .Ve
239 The \s-1PEM\s0 public key format uses the header and footer lines:
240 .PP
241 .Vb 2
242 \& -----BEGIN PUBLIC KEY-----
243 \& -----END PUBLIC KEY-----
244 .Ve
245 .SH "EXAMPLES"
246 .IX Header "EXAMPLES"
247 To remove the pass phrase on a \s-1DSA\s0 private key:
248 .PP
249 .Vb 1
250 \& openssl dsa -in key.pem -out keyout.pem
251 .Ve
252 To encrypt a private key using triple \s-1DES:\s0
253 .PP
254 .Vb 1
255 \& openssl dsa -in key.pem -des3 -out keyout.pem
256 .Ve
257 To convert a private key from \s-1PEM\s0 to \s-1DER\s0 format: 
258 .PP
259 .Vb 1
260 \& openssl dsa -in key.pem -outform DER -out keyout.der
261 .Ve
262 To print out the components of a private key to standard output:
263 .PP
264 .Vb 1
265 \& openssl dsa -in key.pem -text -noout
266 .Ve
267 To just output the public part of a private key:
268 .PP
269 .Vb 1
270 \& openssl dsa -in key.pem -pubout -out pubkey.pem
271 .Ve
272 .SH "SEE ALSO"
273 .IX Header "SEE ALSO"
274 dsaparam(1), gendsa(1), rsa(1),
275 genrsa(1)