]>
Commit | Line | Data |
---|---|---|
ef7eaa4c | 1 | =pod |
625c781d | 2 | {- OpenSSL::safe::output_do_not_edit_headers(); -} |
9fcb9702 | 3 | |
ef7eaa4c DSH |
4 | =head1 NAME |
5 | ||
b6b66573 | 6 | openssl-dhparam - DH parameter manipulation and generation |
ef7eaa4c DSH |
7 | |
8 | =head1 SYNOPSIS | |
9 | ||
41918458 | 10 | B<openssl dhparam> |
169394d4 | 11 | [B<-help>] |
e8769719 RS |
12 | [B<-inform> B<DER>|B<PEM>] |
13 | [B<-outform> B<DER>|B<PEM>] | |
41918458 BM |
14 | [B<-in> I<filename>] |
15 | [B<-out> I<filename>] | |
16 | [B<-dsaparam>] | |
fc1d88f0 | 17 | [B<-check>] |
ef7eaa4c DSH |
18 | [B<-noout>] |
19 | [B<-text>] | |
20 | [B<-C>] | |
09483c58 | 21 | [B<-2>] |
a38c878c | 22 | [B<-3>] |
09483c58 | 23 | [B<-5>] |
e8769719 | 24 | [B<-engine> I<id>] |
9fcb9702 | 25 | {- $OpenSSL::safe::opt_r_synopsis -} |
41918458 | 26 | [I<numbits>] |
ef7eaa4c | 27 | |
9f3c076b | 28 | =for openssl ifdef dsaparam engine |
1738c0ce | 29 | |
ef7eaa4c DSH |
30 | =head1 DESCRIPTION |
31 | ||
32 | This command is used to manipulate DH parameter files. | |
33 | ||
34 | =head1 OPTIONS | |
35 | ||
36 | =over 4 | |
37 | ||
169394d4 MR |
38 | =item B<-help> |
39 | ||
40 | Print out a usage message. | |
41 | ||
777182a0 | 42 | =item B<-inform> B<DER>|B<PEM>, B<-outform> B<DER>|B<PEM> |
ef7eaa4c | 43 | |
777182a0 RS |
44 | The input format and output format; the default is B<PEM>. |
45 | The object is compatible with the PKCS#3 B<DHparameter> structure. | |
46 | See L<openssl(1)/Format Options> for details. | |
ef7eaa4c | 47 | |
41918458 | 48 | =item B<-in> I<filename> |
ef7eaa4c DSH |
49 | |
50 | This specifies the input filename to read parameters from or standard input if | |
51 | this option is not specified. | |
52 | ||
41918458 | 53 | =item B<-out> I<filename> |
ef7eaa4c DSH |
54 | |
55 | This specifies the output filename parameters to. Standard output is used | |
56 | if this option is not present. The output filename should B<not> be the same | |
57 | as the input filename. | |
58 | ||
41918458 BM |
59 | =item B<-dsaparam> |
60 | ||
61 | If this option is used, DSA rather than DH parameters are read or created; | |
62 | they are converted to DH format. Otherwise, "strong" primes (such | |
63 | that (p-1)/2 is also prime) will be used for DH parameter generation. | |
64 | ||
65 | DH parameter generation with the B<-dsaparam> option is much faster, | |
66 | and the recommended exponent length is shorter, which makes DH key | |
67 | exchange more efficient. Beware that with such DSA-style DH | |
68 | parameters, a fresh DH key should be created for each use to | |
69 | avoid small-subgroup attacks that may be possible otherwise. | |
70 | ||
fc1d88f0 RS |
71 | =item B<-check> |
72 | ||
eeb21772 MC |
73 | Performs numerous checks to see if the supplied parameters are valid and |
74 | displays a warning if not. | |
fc1d88f0 | 75 | |
a38c878c | 76 | =item B<-2>, B<-3>, B<-5> |
09483c58 | 77 | |
a38c878c | 78 | The generator to use, either 2, 3 or 5. If present then the |
b5a379aa | 79 | input file is ignored and parameters are generated instead. If not |
2f0ea936 | 80 | present but I<numbits> is present, parameters are generated with the |
b5a379aa | 81 | default generator 2. |
09483c58 | 82 | |
41918458 | 83 | =item I<numbits> |
09483c58 | 84 | |
c4de074e | 85 | This option specifies that a parameter set should be generated of size |
b5a379aa EK |
86 | I<numbits>. It must be the last option. If this option is present then |
87 | the input file is ignored and parameters are generated instead. If | |
6de1fe90 | 88 | this option is not present but a generator (B<-2>, B<-3> or B<-5>) is |
b5a379aa | 89 | present, parameters are generated with a default length of 2048 bits. |
6de1fe90 | 90 | The minimim length is 512 bits. The maximum length is 10000 bits. |
09483c58 | 91 | |
ef7eaa4c DSH |
92 | =item B<-noout> |
93 | ||
c4de074e | 94 | This option inhibits the output of the encoded version of the parameters. |
ef7eaa4c DSH |
95 | |
96 | =item B<-text> | |
97 | ||
c4de074e | 98 | This option prints out the DH parameters in human readable form. |
ef7eaa4c DSH |
99 | |
100 | =item B<-C> | |
101 | ||
c4de074e | 102 | This option converts the parameters into C code. The parameters can then |
bbd86bf5 | 103 | be loaded by calling the get_dhNNNN() function. |
ef7eaa4c | 104 | |
e8769719 | 105 | =item B<-engine> I<id> |
bfa35550 | 106 | |
2f0ea936 | 107 | Specifying an engine (by its unique I<id> string) will cause B<dhparam> |
bfa35550 RL |
108 | to attempt to obtain a functional reference to the specified engine, |
109 | thus initialising it if needed. The engine will then be set as the default | |
110 | for all available algorithms. | |
111 | ||
9fcb9702 RS |
112 | {- $OpenSSL::safe::opt_r_item -} |
113 | ||
ef7eaa4c DSH |
114 | =back |
115 | ||
09483c58 DSH |
116 | =head1 WARNINGS |
117 | ||
35a810bb RL |
118 | This command combines the functionality of the L<openssl-dh(1)> and the |
119 | L<openssl-gendh(1)> commands in previous OpenSSL versions. | |
120 | The L<openssl-dh(1)> and L<openssl-gendh(1)> commands are retained for now but | |
121 | may have different purposes in future versions of OpenSSL. | |
09483c58 | 122 | |
ef7eaa4c DSH |
123 | =head1 NOTES |
124 | ||
ef7eaa4c DSH |
125 | OpenSSL currently only supports the older PKCS#3 DH, not the newer X9.42 |
126 | DH. | |
127 | ||
128 | This program manipulates DH parameters not keys. | |
129 | ||
130 | =head1 BUGS | |
131 | ||
ef7eaa4c DSH |
132 | There should be a way to generate and manipulate DH keys. |
133 | ||
134 | =head1 SEE ALSO | |
135 | ||
b6b66573 DMSP |
136 | L<openssl(1)>, |
137 | L<openssl-dsaparam(1)> | |
ef7eaa4c | 138 | |
e2f92610 RS |
139 | =head1 COPYRIGHT |
140 | ||
a38c878c | 141 | Copyright 2000-2019 The OpenSSL Project Authors. All Rights Reserved. |
e2f92610 | 142 | |
449040b4 | 143 | Licensed under the Apache License 2.0 (the "License"). You may not use |
e2f92610 RS |
144 | this file except in compliance with the License. You can obtain a copy |
145 | in the file LICENSE in the source distribution or at | |
146 | L<https://www.openssl.org/source/license.html>. | |
147 | ||
148 | =cut |