RSA-PSS.7ossl 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. .\" -*- mode: troff; coding: utf-8 -*-
  2. .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
  3. .\"
  4. .\" Standard preamble:
  5. .\" ========================================================================
  6. .de Sp \" Vertical space (when we can't use .PP)
  7. .if t .sp .5v
  8. .if n .sp
  9. ..
  10. .de Vb \" Begin verbatim text
  11. .ft CW
  12. .nf
  13. .ne \\$1
  14. ..
  15. .de Ve \" End verbatim text
  16. .ft R
  17. .fi
  18. ..
  19. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
  20. .ie n \{\
  21. . ds C` ""
  22. . ds C' ""
  23. 'br\}
  24. .el\{\
  25. . ds C`
  26. . ds C'
  27. 'br\}
  28. .\"
  29. .\" Escape single quotes in literal strings from groff's Unicode transform.
  30. .ie \n(.g .ds Aq \(aq
  31. .el .ds Aq '
  32. .\"
  33. .\" If the F register is >0, we'll generate index entries on stderr for
  34. .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
  35. .\" entries marked with X<> in POD. Of course, you'll have to process the
  36. .\" output yourself in some meaningful fashion.
  37. .\"
  38. .\" Avoid warning from groff about undefined register 'F'.
  39. .de IX
  40. ..
  41. .nr rF 0
  42. .if \n(.g .if rF .nr rF 1
  43. .if (\n(rF:(\n(.g==0)) \{\
  44. . if \nF \{\
  45. . de IX
  46. . tm Index:\\$1\t\\n%\t"\\$2"
  47. ..
  48. . if !\nF==2 \{\
  49. . nr % 0
  50. . nr F 2
  51. . \}
  52. . \}
  53. .\}
  54. .rr rF
  55. .\" ========================================================================
  56. .\"
  57. .IX Title "RSA-PSS 7ossl"
  58. .TH RSA-PSS 7ossl 2025-01-17 3.4.0 OpenSSL
  59. .\" For nroff, turn off justification. Always turn off hyphenation; it makes
  60. .\" way too many mistakes in technical documents.
  61. .if n .ad l
  62. .nh
  63. .SH NAME
  64. RSA\-PSS \- EVP_PKEY RSA\-PSS algorithm support
  65. .SH DESCRIPTION
  66. .IX Header "DESCRIPTION"
  67. The \fBRSA-PSS\fR EVP_PKEY implementation is a restricted version of the RSA
  68. algorithm which only supports signing, verification and key generation
  69. using PSS padding modes with optional parameter restrictions.
  70. .PP
  71. It has associated private key and public key formats.
  72. .PP
  73. This algorithm shares several control operations with the \fBRSA\fR algorithm
  74. but with some restrictions described below.
  75. .SS "Signing and Verification"
  76. .IX Subsection "Signing and Verification"
  77. Signing and verification is similar to the \fBRSA\fR algorithm except the
  78. padding mode is always PSS. If the key in use has parameter restrictions then
  79. the corresponding signature parameters are set to the restrictions:
  80. for example, if the key can only be used with digest SHA256, MGF1 SHA256
  81. and minimum salt length 32 then the digest, MGF1 digest and salt length
  82. will be set to SHA256, SHA256 and 32 respectively.
  83. .SS "Key Generation"
  84. .IX Subsection "Key Generation"
  85. By default no parameter restrictions are placed on the generated key.
  86. .SH NOTES
  87. .IX Header "NOTES"
  88. The public key format is documented in RFC4055.
  89. .PP
  90. The PKCS#8 private key format used for RSA-PSS keys is similar to the RSA
  91. format except it uses the \fBid-RSASSA-PSS\fR OID and the parameters field, if
  92. present, restricts the key parameters in the same way as the public key.
  93. .SH "CONFORMING TO"
  94. .IX Header "CONFORMING TO"
  95. RFC 4055
  96. .SH "SEE ALSO"
  97. .IX Header "SEE ALSO"
  98. \&\fBEVP_PKEY_CTX_set_rsa_pss_keygen_md\fR\|(3),
  99. \&\fBEVP_PKEY_CTX_set_rsa_pss_keygen_mgf1_md\fR\|(3),
  100. \&\fBEVP_PKEY_CTX_set_rsa_pss_keygen_saltlen\fR\|(3),
  101. \&\fBEVP_PKEY_CTX_new\fR\|(3),
  102. \&\fBEVP_PKEY_CTX_ctrl_str\fR\|(3),
  103. \&\fBEVP_PKEY_derive\fR\|(3)
  104. .SH COPYRIGHT
  105. .IX Header "COPYRIGHT"
  106. Copyright 2017\-2018 The OpenSSL Project Authors. All Rights Reserved.
  107. .PP
  108. Licensed under the Apache License 2.0 (the "License"). You may not use
  109. this file except in compliance with the License. You can obtain a copy
  110. in the file LICENSE in the source distribution or at
  111. <https://www.openssl.org/source/license.html>.