xref: /freebsd/crypto/openssl/doc/man7/OSSL_PROVIDER-legacy.pod (revision b077aed33b7b6aefca7b17ddb250cf521f938613)
1*b077aed3SPierre Pronchery=pod
2*b077aed3SPierre Pronchery
3*b077aed3SPierre Pronchery=head1 NAME
4*b077aed3SPierre Pronchery
5*b077aed3SPierre ProncheryOSSL_PROVIDER-legacy - OpenSSL legacy provider
6*b077aed3SPierre Pronchery
7*b077aed3SPierre Pronchery=head1 DESCRIPTION
8*b077aed3SPierre Pronchery
9*b077aed3SPierre ProncheryThe OpenSSL legacy provider supplies OpenSSL implementations of algorithms
10*b077aed3SPierre Proncherythat have been deemed legacy.  Such algorithms have commonly fallen out of
11*b077aed3SPierre Proncheryuse, have been deemed insecure by the cryptography community, or something
12*b077aed3SPierre Proncherysimilar.
13*b077aed3SPierre Pronchery
14*b077aed3SPierre ProncheryWe can consider this the retirement home of cryptographic algorithms.
15*b077aed3SPierre Pronchery
16*b077aed3SPierre Pronchery=head2 Properties
17*b077aed3SPierre Pronchery
18*b077aed3SPierre ProncheryThe implementations in this provider specifically has this property
19*b077aed3SPierre Proncherydefined:
20*b077aed3SPierre Pronchery
21*b077aed3SPierre Pronchery=over 4
22*b077aed3SPierre Pronchery
23*b077aed3SPierre Pronchery=item "provider=legacy"
24*b077aed3SPierre Pronchery
25*b077aed3SPierre Pronchery=back
26*b077aed3SPierre Pronchery
27*b077aed3SPierre ProncheryIt may be used in a property query string with fetching functions such as
28*b077aed3SPierre ProncheryL<EVP_MD_fetch(3)> or L<EVP_CIPHER_fetch(3)>, as well as with other
29*b077aed3SPierre Proncheryfunctions that take a property query string, such as
30*b077aed3SPierre ProncheryL<EVP_PKEY_CTX_new_from_name(3)>.
31*b077aed3SPierre Pronchery
32*b077aed3SPierre ProncheryIt isn't mandatory to query for any of these properties, except to
33*b077aed3SPierre Proncherymake sure to get implementations of this provider and none other.
34*b077aed3SPierre Pronchery
35*b077aed3SPierre Pronchery=head1 OPERATIONS AND ALGORITHMS
36*b077aed3SPierre Pronchery
37*b077aed3SPierre ProncheryThe OpenSSL legacy provider supports these operations and algorithms:
38*b077aed3SPierre Pronchery
39*b077aed3SPierre Pronchery=head2 Hashing Algorithms / Message Digests
40*b077aed3SPierre Pronchery
41*b077aed3SPierre Pronchery=over 4
42*b077aed3SPierre Pronchery
43*b077aed3SPierre Pronchery=item MD2, see L<EVP_MD-MD2(7)>
44*b077aed3SPierre Pronchery
45*b077aed3SPierre Pronchery=item MD4, see L<EVP_MD-MD4(7)>
46*b077aed3SPierre Pronchery
47*b077aed3SPierre Pronchery=item MDC2, see L<EVP_MD-MDC2(7)>
48*b077aed3SPierre Pronchery
49*b077aed3SPierre Pronchery=item WHIRLPOOL, see L<EVP_MD-WHIRLPOOL(7)>
50*b077aed3SPierre Pronchery
51*b077aed3SPierre Pronchery=item RIPEMD160, see L<EVP_MD-RIPEMD160(7)>
52*b077aed3SPierre Pronchery
53*b077aed3SPierre Pronchery=back
54*b077aed3SPierre Pronchery
55*b077aed3SPierre Pronchery=head2 Symmetric Ciphers
56*b077aed3SPierre Pronchery
57*b077aed3SPierre ProncheryNot all of these symmetric cipher algorithms are enabled by default.
58*b077aed3SPierre Pronchery
59*b077aed3SPierre Pronchery=over 4
60*b077aed3SPierre Pronchery
61*b077aed3SPierre Pronchery=item Blowfish, see L<EVP_CIPHER-BLOWFISH(7)>
62*b077aed3SPierre Pronchery
63*b077aed3SPierre Pronchery=item CAST, see L<EVP_CIPHER-CAST(7)>
64*b077aed3SPierre Pronchery
65*b077aed3SPierre Pronchery=item DES, see L<EVP_CIPHER-DES(7)>
66*b077aed3SPierre Pronchery
67*b077aed3SPierre ProncheryThe algorithm names are: DES_ECB, DES_CBC, DES_OFB, DES_CFB, DES_CFB1, DES_CFB8
68*b077aed3SPierre Proncheryand DESX_CBC.
69*b077aed3SPierre Pronchery
70*b077aed3SPierre Pronchery=item IDEA, see L<EVP_CIPHER-IDEA(7)>
71*b077aed3SPierre Pronchery
72*b077aed3SPierre Pronchery=item RC2, see L<EVP_CIPHER-RC2(7)>
73*b077aed3SPierre Pronchery
74*b077aed3SPierre Pronchery=item RC4, see L<EVP_CIPHER-RC4(7)>
75*b077aed3SPierre Pronchery
76*b077aed3SPierre Pronchery=item RC5, see L<EVP_CIPHER-RC5(7)>
77*b077aed3SPierre Pronchery
78*b077aed3SPierre ProncheryDisabled by default. Use I<enable-rc5> config option to enable.
79*b077aed3SPierre Pronchery
80*b077aed3SPierre Pronchery=item SEED, see L<EVP_CIPHER-SEED(7)>
81*b077aed3SPierre Pronchery
82*b077aed3SPierre Pronchery=back
83*b077aed3SPierre Pronchery
84*b077aed3SPierre Pronchery=head2 Key Derivation Function (KDF)
85*b077aed3SPierre Pronchery
86*b077aed3SPierre Pronchery=over 4
87*b077aed3SPierre Pronchery
88*b077aed3SPierre Pronchery=item PBKDF1
89*b077aed3SPierre Pronchery
90*b077aed3SPierre Pronchery=back
91*b077aed3SPierre Pronchery
92*b077aed3SPierre Pronchery=begin comment
93*b077aed3SPierre Pronchery
94*b077aed3SPierre ProncheryWhen algorithms for other operations start appearing, the
95*b077aed3SPierre Proncheryfollowing =head2 titles are appropriate to use:
96*b077aed3SPierre Pronchery
97*b077aed3SPierre Pronchery- Message Authentication Code (MAC)
98*b077aed3SPierre Pronchery
99*b077aed3SPierre Pronchery- Key Derivation Function (KDF)
100*b077aed3SPierre Pronchery
101*b077aed3SPierre Pronchery- Key Exchange
102*b077aed3SPierre Pronchery
103*b077aed3SPierre Pronchery- Signature
104*b077aed3SPierre Pronchery
105*b077aed3SPierre Pronchery- Asymmetric Cipher
106*b077aed3SPierre Pronchery
107*b077aed3SPierre Pronchery- Asymmetric Key Management
108*b077aed3SPierre Pronchery
109*b077aed3SPierre Pronchery=end comment
110*b077aed3SPierre Pronchery
111*b077aed3SPierre Pronchery=head1 SEE ALSO
112*b077aed3SPierre Pronchery
113*b077aed3SPierre ProncheryL<OSSL_PARAM(3)>,
114*b077aed3SPierre ProncheryL<openssl-core.h(7)>,
115*b077aed3SPierre ProncheryL<openssl-core_dispatch.h(7)>,
116*b077aed3SPierre ProncheryL<provider(7)>
117*b077aed3SPierre Pronchery
118*b077aed3SPierre Pronchery=head1 HISTORY
119*b077aed3SPierre Pronchery
120*b077aed3SPierre ProncheryThis functionality was added in OpenSSL 3.0.
121*b077aed3SPierre Pronchery
122*b077aed3SPierre Pronchery=head1 COPYRIGHT
123*b077aed3SPierre Pronchery
124*b077aed3SPierre ProncheryCopyright 2020-2021 The OpenSSL Project Authors. All Rights Reserved.
125*b077aed3SPierre Pronchery
126*b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License").  You may not use
127*b077aed3SPierre Proncherythis file except in compliance with the License.  You can obtain a copy
128*b077aed3SPierre Proncheryin the file LICENSE in the source distribution or at
129*b077aed3SPierre ProncheryL<https://www.openssl.org/source/license.html>.
130*b077aed3SPierre Pronchery
131*b077aed3SPierre Pronchery=cut
132