1=pod 2 3=head1 NAME 4 5OSSL_PROVIDER-base - OpenSSL base provider 6 7=head1 DESCRIPTION 8 9The OpenSSL base provider supplies the encoding for OpenSSL's 10asymmetric cryptography. 11 12=head2 Properties 13 14The implementations in this provider specifically have this property 15defined: 16 17=over 4 18 19=item "provider=base" 20 21=back 22 23It may be used in a property query string with fetching functions. 24 25It isn't mandatory to query for this property, except to make sure to get 26implementations of this provider and none other. 27 28=over 4 29 30=item "type=parameters" 31 32=item "type=private" 33 34=item "type=public" 35 36=back 37 38These may be used in a property query string with fetching functions to select 39which data are to be encoded. Either the private key material, the public 40key material or the domain parameters can be selected. 41 42=over 4 43 44=item "format=der" 45 46=item "format=pem" 47 48=item "format=text" 49 50=back 51 52These may be used in a property query string with fetching functions to select 53the encoding output format. Either the DER, PEM and plaintext are 54currently permitted. 55 56=head1 OPERATIONS AND ALGORITHMS 57 58The OpenSSL base provider supports these operations and algorithms: 59 60=head2 Random Number Generation 61 62=over 4 63 64=item SEED-SRC, see L<EVP_RAND-SEED-SRC(7)> 65 66=item JITTER, see L<EVP_RAND-JITTER(7)> 67 68=back 69 70In addition to this provider, the "SEED-SRC" and "JITTER" algorithms 71are also available in the default provider. 72 73=head2 Asymmetric Key Encoder 74 75=over 4 76 77=item RSA 78 79=item RSA-PSS 80 81=item DH 82 83=item DHX 84 85=item DSA 86 87=item EC 88 89=item ED25519 90 91=item ED448 92 93=item X25519 94 95=item X448 96 97=item SM2 98 99=item ML-DSA-44 100 101=item ML-DSA-65 102 103=item ML-DSA-87 104 105=item ML-KEM-512 106 107=item ML-KEM-768 108 109=item ML-KEM-1024 110 111=item SLH-DSA-SHA2-128s 112 113=item SLH-DSA-SHA2-128f 114 115=item SLH-DSA-SHA2-192s 116 117=item SLH-DSA-SHA2-192f 118 119=item SLH-DSA-SHA2-256s 120 121=item SLH-DSA-SHA2-256f 122 123=item SLH-DSA-SHAKE-128s 124 125=item SLH-DSA-SHAKE-128f 126 127=item SLH-DSA-SHAKE-192s 128 129=item SLH-DSA-SHAKE-192f 130 131=item SLH-DSA-SHAKE-256s 132 133=item SLH-DSA-SHAKE-256f 134 135=back 136 137In addition to this provider, all of these encoding algorithms are also 138available in the default provider. Some of these algorithms may be used in 139combination with the FIPS provider. 140 141=head2 Asymmetric Key Decoder 142 143=over 4 144 145=item RSA 146 147=item RSA-PSS 148 149=item DH 150 151=item DHX 152 153=item DSA 154 155=item EC 156 157=item ED25519 158 159=item ED448 160 161=item X25519 162 163=item X448 164 165=item SM2 166 167=item DER 168 169=item ML-DSA-44 170 171=item ML-DSA-65 172 173=item ML-DSA-87 174 175=item ML-KEM-512 176 177=item ML-KEM-768 178 179=item ML-KEM-1024 180 181=item SLH-DSA-SHA2-128s 182 183=item SLH-DSA-SHA2-128f 184 185=item SLH-DSA-SHA2-192s 186 187=item SLH-DSA-SHA2-192f 188 189=item SLH-DSA-SHA2-256s 190 191=item SLH-DSA-SHA2-256f 192 193=item SLH-DSA-SHAKE-128s 194 195=item SLH-DSA-SHAKE-128f 196 197=item SLH-DSA-SHAKE-192s 198 199=item SLH-DSA-SHAKE-192f 200 201=item SLH-DSA-SHAKE-256s 202 203=item SLH-DSA-SHAKE-256f 204 205=back 206 207In addition to this provider, all of these decoding algorithms are also 208available in the default provider. Some of these algorithms may be used in 209combination with the FIPS provider. 210 211=head2 Stores 212 213=over 4 214 215=item file 216 217=item org.openssl.winstore, see L<OSSL_STORE-winstore(7)> 218 219=back 220 221In addition to this provider, all of these store algorithms are also 222available in the default provider. 223 224=head1 SEE ALSO 225 226L<OSSL_PROVIDER-default(7)>, L<openssl-core.h(7)>, 227L<openssl-core_dispatch.h(7)>, L<provider(7)> 228 229=head1 HISTORY 230 231This functionality was added in OpenSSL 3.0. 232 233Support for B<ML-DSA> and <ML-KEM> was added in OpenSSL 3.5. 234 235=head1 COPYRIGHT 236 237Copyright 2020-2025 The OpenSSL Project Authors. All Rights Reserved. 238 239Licensed under the Apache License 2.0 (the "License"). You may not use 240this file except in compliance with the License. You can obtain a copy 241in the file LICENSE in the source distribution or at 242L<https://www.openssl.org/source/license.html>. 243 244=cut 245