build - Rewire secure, remove conflicts from libmd, libcrypt
[dragonfly.git] / usr.bin / openssl / man / pkey.1
1 .\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28)
2 .\"
3 .\" Standard preamble:
4 .\" ========================================================================
5 .de Sp \" Vertical space (when we can't use .PP)
6 .if t .sp .5v
7 .if n .sp
8 ..
9 .de Vb \" Begin verbatim text
10 .ft CW
11 .nf
12 .ne \\$1
13 ..
14 .de Ve \" End verbatim text
15 .ft R
16 .fi
17 ..
18 .\" Set up some character translations and predefined strings.  \*(-- will
19 .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
20 .\" double quote, and \*(R" will give a right double quote.  \*(C+ will
21 .\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
22 .\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
23 .\" nothing in troff, for use with C<>.
24 .tr \(*W-
25 .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
26 .ie n \{\
27 .    ds -- \(*W-
28 .    ds PI pi
29 .    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
30 .    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
31 .    ds L" ""
32 .    ds R" ""
33 .    ds C` ""
34 .    ds C' ""
35 'br\}
36 .el\{\
37 .    ds -- \|\(em\|
38 .    ds PI \(*p
39 .    ds L" ``
40 .    ds R" ''
41 .    ds C`
42 .    ds C'
43 'br\}
44 .\"
45 .\" Escape single quotes in literal strings from groff's Unicode transform.
46 .ie \n(.g .ds Aq \(aq
47 .el       .ds Aq '
48 .\"
49 .\" If the F register is turned on, we'll generate index entries on stderr for
50 .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
51 .\" entries marked with X<> in POD.  Of course, you'll have to process the
52 .\" output yourself in some meaningful fashion.
53 .\"
54 .\" Avoid warning from groff about undefined register 'F'.
55 .de IX
56 ..
57 .nr rF 0
58 .if \n(.g .if rF .nr rF 1
59 .if (\n(rF:(\n(.g==0)) \{
60 .    if \nF \{
61 .        de IX
62 .        tm Index:\\$1\t\\n%\t"\\$2"
63 ..
64 .        if !\nF==2 \{
65 .            nr % 0
66 .            nr F 2
67 .        \}
68 .    \}
69 .\}
70 .rr rF
71 .\"
72 .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
73 .\" Fear.  Run.  Save yourself.  No user-serviceable parts.
74 .    \" fudge factors for nroff and troff
75 .if n \{\
76 .    ds #H 0
77 .    ds #V .8m
78 .    ds #F .3m
79 .    ds #[ \f1
80 .    ds #] \fP
81 .\}
82 .if t \{\
83 .    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
84 .    ds #V .6m
85 .    ds #F 0
86 .    ds #[ \&
87 .    ds #] \&
88 .\}
89 .    \" simple accents for nroff and troff
90 .if n \{\
91 .    ds ' \&
92 .    ds ` \&
93 .    ds ^ \&
94 .    ds , \&
95 .    ds ~ ~
96 .    ds /
97 .\}
98 .if t \{\
99 .    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
100 .    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
101 .    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
102 .    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
103 .    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
104 .    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
105 .\}
106 .    \" troff and (daisy-wheel) nroff accents
107 .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
108 .ds 8 \h'\*(#H'\(*b\h'-\*(#H'
109 .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
110 .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
111 .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
112 .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
113 .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
114 .ds ae a\h'-(\w'a'u*4/10)'e
115 .ds Ae A\h'-(\w'A'u*4/10)'E
116 .    \" corrections for vroff
117 .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
118 .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
119 .    \" for low resolution devices (crt and lpr)
120 .if \n(.H>23 .if \n(.V>19 \
121 \{\
122 .    ds : e
123 .    ds 8 ss
124 .    ds o a
125 .    ds d- d\h'-1'\(ga
126 .    ds D- D\h'-1'\(hy
127 .    ds th \o'bp'
128 .    ds Th \o'LP'
129 .    ds ae ae
130 .    ds Ae AE
131 .\}
132 .rm #[ #] #H #V #F C
133 .\" ========================================================================
134 .\"
135 .IX Title "PKEY 1"
136 .TH PKEY 1 "2016-05-03" "1.0.2h" "OpenSSL"
137 .\" For nroff, turn off justification.  Always turn off hyphenation; it makes
138 .\" way too many mistakes in technical documents.
139 .if n .ad l
140 .nh
141 .SH "NAME"
142 pkey \- public or private key processing tool
143 .SH "SYNOPSIS"
144 .IX Header "SYNOPSIS"
145 \&\fBopenssl\fR \fBpkey\fR
146 [\fB\-inform PEM|DER\fR]
147 [\fB\-outform PEM|DER\fR]
148 [\fB\-in filename\fR]
149 [\fB\-passin arg\fR]
150 [\fB\-out filename\fR]
151 [\fB\-passout arg\fR]
152 [\fB\-cipher\fR]
153 [\fB\-text\fR]
154 [\fB\-text_pub\fR]
155 [\fB\-noout\fR]
156 [\fB\-pubin\fR]
157 [\fB\-pubout\fR]
158 [\fB\-engine id\fR]
159 .SH "DESCRIPTION"
160 .IX Header "DESCRIPTION"
161 The \fBpkey\fR command processes public or private keys. They can be converted
162 between various forms and their components printed out.
163 .SH "COMMAND OPTIONS"
164 .IX Header "COMMAND OPTIONS"
165 .IP "\fB\-inform DER|PEM\fR" 4
166 .IX Item "-inform DER|PEM"
167 This specifies the input format \s-1DER\s0 or \s-1PEM.\s0
168 .IP "\fB\-outform DER|PEM\fR" 4
169 .IX Item "-outform DER|PEM"
170 This specifies the output format, the options have the same meaning as the 
171 \&\fB\-inform\fR option.
172 .IP "\fB\-in filename\fR" 4
173 .IX Item "-in filename"
174 This specifies the input filename to read a key from or standard input if this
175 option is not specified. If the key is encrypted a pass phrase will be
176 prompted for.
177 .IP "\fB\-passin arg\fR" 4
178 .IX Item "-passin arg"
179 the input file password source. For more information about the format of \fBarg\fR
180 see the \fB\s-1PASS PHRASE ARGUMENTS\s0\fR section in \fIopenssl\fR\|(1).
181 .IP "\fB\-out filename\fR" 4
182 .IX Item "-out filename"
183 This specifies the output filename to write a key to or standard output if this
184 option is not specified. If any encryption options are set then a pass phrase
185 will be prompted for. The output filename should \fBnot\fR be the same as the input
186 filename.
187 .IP "\fB\-passout password\fR" 4
188 .IX Item "-passout password"
189 the output file password source. For more information about the format of \fBarg\fR
190 see the \fB\s-1PASS PHRASE ARGUMENTS\s0\fR section in \fIopenssl\fR\|(1).
191 .IP "\fB\-cipher\fR" 4
192 .IX Item "-cipher"
193 These options encrypt the private key with the supplied cipher. Any algorithm
194 name accepted by \fIEVP_get_cipherbyname()\fR is acceptable such as \fBdes3\fR.
195 .IP "\fB\-text\fR" 4
196 .IX Item "-text"
197 prints out the various public or private key components in
198 plain text in addition to the encoded version.
199 .IP "\fB\-text_pub\fR" 4
200 .IX Item "-text_pub"
201 print out only public key components even if a private key is being processed.
202 .IP "\fB\-noout\fR" 4
203 .IX Item "-noout"
204 do not output the encoded version of the key.
205 .IP "\fB\-pubin\fR" 4
206 .IX Item "-pubin"
207 by default a private key is read from the input file: with this
208 option a public key is read instead.
209 .IP "\fB\-pubout\fR" 4
210 .IX Item "-pubout"
211 by default a private key is output: with this option a public
212 key will be output instead. This option is automatically set if
213 the input is a public key.
214 .IP "\fB\-engine id\fR" 4
215 .IX Item "-engine id"
216 specifying an engine (by its unique \fBid\fR string) will cause \fBpkey\fR
217 to attempt to obtain a functional reference to the specified engine,
218 thus initialising it if needed. The engine will then be set as the default
219 for all available algorithms.
220 .SH "EXAMPLES"
221 .IX Header "EXAMPLES"
222 To remove the pass phrase on an \s-1RSA\s0 private key:
223 .PP
224 .Vb 1
225 \& openssl pkey \-in key.pem \-out keyout.pem
226 .Ve
227 .PP
228 To encrypt a private key using triple \s-1DES:\s0
229 .PP
230 .Vb 1
231 \& openssl pkey \-in key.pem \-des3 \-out keyout.pem
232 .Ve
233 .PP
234 To convert a private key from \s-1PEM\s0 to \s-1DER\s0 format:
235 .PP
236 .Vb 1
237 \& openssl pkey \-in key.pem \-outform DER \-out keyout.der
238 .Ve
239 .PP
240 To print out the components of a private key to standard output:
241 .PP
242 .Vb 1
243 \& openssl pkey \-in key.pem \-text \-noout
244 .Ve
245 .PP
246 To print out the public components of a private key to standard output:
247 .PP
248 .Vb 1
249 \& openssl pkey \-in key.pem \-text_pub \-noout
250 .Ve
251 .PP
252 To just output the public part of a private key:
253 .PP
254 .Vb 1
255 \& openssl pkey \-in key.pem \-pubout \-out pubkey.pem
256 .Ve
257 .SH "SEE ALSO"
258 .IX Header "SEE ALSO"
259 \&\fIgenpkey\fR\|(1), \fIrsa\fR\|(1), \fIpkcs8\fR\|(1),
260 \&\fIdsa\fR\|(1), \fIgenrsa\fR\|(1), \fIgendsa\fR\|(1)