OSSL_PROVIDER-base.pod 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. =pod
  2. =head1 NAME
  3. OSSL_PROVIDER-base - OpenSSL base provider
  4. =head1 DESCRIPTION
  5. The OpenSSL base provider supplies the encoding for OpenSSL's
  6. asymmetric cryptography.
  7. =head2 Properties
  8. The implementations in this provider specifically have this property
  9. defined:
  10. =over 4
  11. =item "provider=base"
  12. =back
  13. It may be used in a property query string with fetching functions.
  14. It isn't mandatory to query for this property, except to make sure to get
  15. implementations of this provider and none other.
  16. =over 4
  17. =item "type=parameters"
  18. =item "type=private"
  19. =item "type=public"
  20. =back
  21. These may be used in a property query string with fetching functions to select
  22. which data are to be encoded. Either the private key material, the public
  23. key material or the domain parameters can be selected.
  24. =over 4
  25. =item "format=der"
  26. =item "format=pem"
  27. =item "format=text"
  28. =back
  29. These may be used in a property query string with fetching functions to select
  30. the encoding output format. Either the DER, PEM and plaintext are
  31. currently permitted.
  32. =head1 OPERATIONS AND ALGORITHMS
  33. The OpenSSL base provider supports these operations and algorithms:
  34. =head2 Random Number Generation
  35. =over 4
  36. =item SEED-SRC, see L<EVP_RAND-SEED-SRC(7)>
  37. =back
  38. In addition to this provider, the "SEED-SRC" algorithm is also available in the
  39. default provider.
  40. =head2 Asymmetric Key Encoder
  41. =over 4
  42. =item RSA
  43. =item RSA-PSS
  44. =item DH
  45. =item DHX
  46. =item DSA
  47. =item EC
  48. =item ED25519
  49. =item ED448
  50. =item X25519
  51. =item X448
  52. =item SM2
  53. =back
  54. In addition to this provider, all of these encoding algorithms are also
  55. available in the default provider. Some of these algorithms may be used in
  56. combination with the FIPS provider.
  57. =head2 Asymmetric Key Decoder
  58. =over 4
  59. =item RSA
  60. =item RSA-PSS
  61. =item DH
  62. =item DHX
  63. =item DSA
  64. =item EC
  65. =item ED25519
  66. =item ED448
  67. =item X25519
  68. =item X448
  69. =item SM2
  70. =item DER
  71. =back
  72. In addition to this provider, all of these decoding algorithms are also
  73. available in the default provider. Some of these algorithms may be used in
  74. combination with the FIPS provider.
  75. =head2 Stores
  76. =over 4
  77. =item file
  78. =item org.openssl.winstore, see L<OSSL_STORE-winstore(7)>
  79. =back
  80. In addition to this provider, all of these store algorithms are also
  81. available in the default provider.
  82. =head1 SEE ALSO
  83. L<OSSL_PROVIDER-default(7)>, L<openssl-core.h(7)>,
  84. L<openssl-core_dispatch.h(7)>, L<provider(7)>
  85. =head1 HISTORY
  86. This functionality was added in OpenSSL 3.0.
  87. =head1 COPYRIGHT
  88. Copyright 2020-2024 The OpenSSL Project Authors. All Rights Reserved.
  89. Licensed under the Apache License 2.0 (the "License"). You may not use
  90. this file except in compliance with the License. You can obtain a copy
  91. in the file LICENSE in the source distribution or at
  92. L<https://www.openssl.org/source/license.html>.
  93. =cut