aboutsummaryrefslogtreecommitdiff
path: root/secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7
diff options
context:
space:
mode:
Diffstat (limited to 'secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7')
-rw-r--r--secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7285
1 files changed, 137 insertions, 148 deletions
diff --git a/secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7 b/secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7
index 25401e4167e9..c4b8a85899e4 100644
--- a/secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7
+++ b/secure/lib/libcrypto/man/man7/EVP_SIGNATURE-RSA.7
@@ -1,4 +1,5 @@
-.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.42)
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.0102 (Pod::Simple 3.45)
.\"
.\" Standard preamble:
.\" ========================================================================
@@ -15,29 +16,12 @@
.ft R
.fi
..
-.\" Set up some character translations and predefined strings. \*(-- will
-.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
-.\" double quote, and \*(R" will give a right double quote. \*(C+ will
-.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
-.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
-.\" nothing in troff, for use with C<>.
-.tr \(*W-
-.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
-. ds -- \(*W-
-. ds PI pi
-. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
-. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
-. ds L" ""
-. ds R" ""
. ds C` ""
. ds C' ""
'br\}
.el\{\
-. ds -- \|\(em\|
-. ds PI \(*p
-. ds L" ``
-. ds R" ''
. ds C`
. ds C'
'br\}
@@ -68,167 +52,172 @@
. \}
.\}
.rr rF
-.\" Fear. Run. Save yourself. No user-serviceable parts.
-. \" fudge factors for nroff and troff
-.if n \{\
-. ds #H 0
-. ds #V .8m
-. ds #F .3m
-. ds #[ \f1
-. ds #] \fP
-.\}
-.if t \{\
-. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
-. ds #V .6m
-. ds #F 0
-. ds #[ \&
-. ds #] \&
-.\}
-. \" simple accents for nroff and troff
-.if n \{\
-. ds ' \&
-. ds ` \&
-. ds ^ \&
-. ds , \&
-. ds ~ ~
-. ds /
-.\}
-.if t \{\
-. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
-. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
-. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
-. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
-. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
-. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
-.\}
-. \" troff and (daisy-wheel) nroff accents
-.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
-.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
-.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
-.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
-.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
-.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
-.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
-.ds ae a\h'-(\w'a'u*4/10)'e
-.ds Ae A\h'-(\w'A'u*4/10)'E
-. \" corrections for vroff
-.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
-.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
-. \" for low resolution devices (crt and lpr)
-.if \n(.H>23 .if \n(.V>19 \
-\{\
-. ds : e
-. ds 8 ss
-. ds o a
-. ds d- d\h'-1'\(ga
-. ds D- D\h'-1'\(hy
-. ds th \o'bp'
-. ds Th \o'LP'
-. ds ae ae
-. ds Ae AE
-.\}
-.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "EVP_SIGNATURE-RSA 7ossl"
-.TH EVP_SIGNATURE-RSA 7ossl "2023-09-19" "3.0.11" "OpenSSL"
+.TH EVP_SIGNATURE-RSA 7ossl 2025-09-30 3.5.4 OpenSSL
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
-.SH "NAME"
+.SH NAME
EVP_SIGNATURE\-RSA
\&\- The EVP_PKEY RSA signature implementation
-.SH "DESCRIPTION"
+.SH DESCRIPTION
.IX Header "DESCRIPTION"
-Support for computing \s-1RSA\s0 signatures.
-See \s-1\fBEVP_PKEY\-RSA\s0\fR\|(7) for information related to \s-1RSA\s0 keys.
+Support for computing RSA signatures.
+See \fBEVP_PKEY\-RSA\fR\|(7) for information related to RSA keys.
+.SS "Algorithm Names"
+.IX Subsection "Algorithm Names"
+In this list, names are grouped together to signify that they are the same
+algorithm having multiple names. This also includes the OID in canonical
+decimal form (which means that they are possible to fetch if the caller has a
+mere OID which came out in this form after a call to \fBOBJ_obj2txt\fR\|(3)).
+.IP """RSA"", ""rsaEncryption"", ""1.2.840.113549.1.1.1""" 4
+.IX Item """RSA"", ""rsaEncryption"", ""1.2.840.113549.1.1.1"""
+The base signature algorithm, supported explicitly fetched with
+\&\fBEVP_PKEY_sign_init_ex2\fR\|(3), and implicitly fetched (through
+RSA keys) with \fBEVP_DigestSignInit\fR\|(3) and
+\&\fBEVP_DigestVerifyInit\fR\|(3).
+.Sp
+It can't be used with \fBEVP_PKEY_sign_message_init\fR\|(3)
+.IP """RSA\-RIPEMD160"", ""ripemd160WithRSA"", ""1.3.36.3.3.1.2""" 4
+.IX Item """RSA-RIPEMD160"", ""ripemd160WithRSA"", ""1.3.36.3.3.1.2"""
+.PD 0
+.IP """RSA\-SHA2\-256"", ""RSA\-SHA256"", ""sha256WithRSAEncryption"", ""1.2.840.113549.1.1.11""" 4
+.IX Item """RSA-SHA2-256"", ""RSA-SHA256"", ""sha256WithRSAEncryption"", ""1.2.840.113549.1.1.11"""
+.IP """RSA\-SHA2\-384"", ""RSA\-SHA384"", ""sha384WithRSAEncryption"", ""1.2.840.113549.1.1.12""" 4
+.IX Item """RSA-SHA2-384"", ""RSA-SHA384"", ""sha384WithRSAEncryption"", ""1.2.840.113549.1.1.12"""
+.IP """RSA\-SHA2\-512"", ""RSA\-SHA512"", ""sha512WithRSAEncryption"", ""1.2.840.113549.1.1.13""" 4
+.IX Item """RSA-SHA2-512"", ""RSA-SHA512"", ""sha512WithRSAEncryption"", ""1.2.840.113549.1.1.13"""
+.IP """RSA\-SHA2\-224"", ""RSA\-SHA224"", ""sha224WithRSAEncryption"", ""1.2.840.113549.1.1.14""" 4
+.IX Item """RSA-SHA2-224"", ""RSA-SHA224"", ""sha224WithRSAEncryption"", ""1.2.840.113549.1.1.14"""
+.IP """RSA\-SHA2\-512/224"", ""RSA\-SHA512\-224"", ""sha512\-224WithRSAEncryption"", ""1.2.840.113549.1.1.15""" 4
+.IX Item """RSA-SHA2-512/224"", ""RSA-SHA512-224"", ""sha512-224WithRSAEncryption"", ""1.2.840.113549.1.1.15"""
+.IP """RSA\-SHA2\-512/256"", ""RSA\-SHA512\-256"", ""sha512\-256WithRSAEncryption"", ""1.2.840.113549.1.1.16""" 4
+.IX Item """RSA-SHA2-512/256"", ""RSA-SHA512-256"", ""sha512-256WithRSAEncryption"", ""1.2.840.113549.1.1.16"""
+.IP """RSA\-SHA3\-224"", ""id\-rsassa\-pkcs1\-v1_5\-with\-sha3\-224"", ""2.16.840.1.101.3.4.3.13""" 4
+.IX Item """RSA-SHA3-224"", ""id-rsassa-pkcs1-v1_5-with-sha3-224"", ""2.16.840.1.101.3.4.3.13"""
+.IP """RSA\-SHA3\-256"", ""id\-rsassa\-pkcs1\-v1_5\-with\-sha3\-256"", ""2.16.840.1.101.3.4.3.14""" 4
+.IX Item """RSA-SHA3-256"", ""id-rsassa-pkcs1-v1_5-with-sha3-256"", ""2.16.840.1.101.3.4.3.14"""
+.IP """RSA\-SHA3\-384"", ""id\-rsassa\-pkcs1\-v1_5\-with\-sha3\-384"", ""2.16.840.1.101.3.4.3.15""" 4
+.IX Item """RSA-SHA3-384"", ""id-rsassa-pkcs1-v1_5-with-sha3-384"", ""2.16.840.1.101.3.4.3.15"""
+.IP """RSA\-SHA3\-512"", ""id\-rsassa\-pkcs1\-v1_5\-with\-sha3\-512"", ""2.16.840.1.101.3.4.3.16""" 4
+.IX Item """RSA-SHA3-512"", ""id-rsassa-pkcs1-v1_5-with-sha3-512"", ""2.16.840.1.101.3.4.3.16"""
+.IP """RSA\-SM3"", ""sm3WithRSAEncryption"", ""1.2.156.10197.1.504""" 4
+.IX Item """RSA-SM3"", ""sm3WithRSAEncryption"", ""1.2.156.10197.1.504"""
+.PD
+PKCS#1 v1.5 RSA signature schemes with diverse message digest algorithms. They
+are all supported explicitly fetched with \fBEVP_PKEY_sign_init_ex2\fR\|(3) and
+\&\fBEVP_PKEY_sign_message_init\fR\|(3).
+They are all pre-set to use the pad mode "pkcs1". This cannot be changed.
.SS "Signature Parameters"
.IX Subsection "Signature Parameters"
The following signature parameters can be set using \fBEVP_PKEY_CTX_set_params()\fR.
This may be called after \fBEVP_PKEY_sign_init()\fR or \fBEVP_PKEY_verify_init()\fR,
-and before calling \fBEVP_PKEY_sign()\fR or \fBEVP_PKEY_verify()\fR.
-.ie n .IP """digest"" (\fB\s-1OSSL_SIGNATURE_PARAM_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``digest'' (\fB\s-1OSSL_SIGNATURE_PARAM_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "digest (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8 string>"
+and before calling \fBEVP_PKEY_sign()\fR or \fBEVP_PKEY_verify()\fR. They may also be set
+using \fBEVP_PKEY_sign_init_ex()\fR or \fBEVP_PKEY_verify_init_ex()\fR.
+.IP """digest"" (\fBOSSL_SIGNATURE_PARAM_DIGEST\fR) <UTF8 string>" 4
+.IX Item """digest"" (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8 string>"
.PD 0
-.ie n .IP """properties"" (\fB\s-1OSSL_SIGNATURE_PARAM_PROPERTIES\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``properties'' (\fB\s-1OSSL_SIGNATURE_PARAM_PROPERTIES\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "properties (OSSL_SIGNATURE_PARAM_PROPERTIES) <UTF8 string>"
+.IP """properties"" (\fBOSSL_SIGNATURE_PARAM_PROPERTIES\fR) <UTF8 string>" 4
+.IX Item """properties"" (OSSL_SIGNATURE_PARAM_PROPERTIES) <UTF8 string>"
.PD
+These are not supported with the RSA signature schemes that already include a
+message digest algorithm, See "Algorithm Names" above.
+.Sp
These common parameters are described in \fBprovider\-signature\fR\|(7).
-.ie n .IP """pad-mode"" (\fB\s-1OSSL_SIGNATURE_PARAM_PAD_MODE\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``pad-mode'' (\fB\s-1OSSL_SIGNATURE_PARAM_PAD_MODE\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "pad-mode (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8 string>"
+.IP """pad-mode"" (\fBOSSL_SIGNATURE_PARAM_PAD_MODE\fR) <UTF8 string>" 4
+.IX Item """pad-mode"" (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8 string>"
The type of padding to be used. Its value can be one of the following:
.RS 4
-.ie n .IP """none"" (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_NONE\s0\fR)" 4
-.el .IP "``none'' (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_NONE\s0\fR)" 4
-.IX Item "none (OSSL_PKEY_RSA_PAD_MODE_NONE)"
+.IP """none"" (\fBOSSL_PKEY_RSA_PAD_MODE_NONE\fR)" 4
+.IX Item """none"" (OSSL_PKEY_RSA_PAD_MODE_NONE)"
.PD 0
-.ie n .IP """pkcs1"" (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_PKCSV15\s0\fR)" 4
-.el .IP "``pkcs1'' (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_PKCSV15\s0\fR)" 4
-.IX Item "pkcs1 (OSSL_PKEY_RSA_PAD_MODE_PKCSV15)"
-.ie n .IP """x931"" (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_X931\s0\fR)" 4
-.el .IP "``x931'' (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_X931\s0\fR)" 4
-.IX Item "x931 (OSSL_PKEY_RSA_PAD_MODE_X931)"
-.ie n .IP """pss"" (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_PSS\s0\fR)" 4
-.el .IP "``pss'' (\fB\s-1OSSL_PKEY_RSA_PAD_MODE_PSS\s0\fR)" 4
-.IX Item "pss (OSSL_PKEY_RSA_PAD_MODE_PSS)"
+.IP """pkcs1"" (\fBOSSL_PKEY_RSA_PAD_MODE_PKCSV15\fR)" 4
+.IX Item """pkcs1"" (OSSL_PKEY_RSA_PAD_MODE_PKCSV15)"
+.IP """x931"" (\fBOSSL_PKEY_RSA_PAD_MODE_X931\fR)" 4
+.IX Item """x931"" (OSSL_PKEY_RSA_PAD_MODE_X931)"
+.PD
+This padding mode is no longer supported by the FIPS provider for signature
+generation, but may be used for signature verification for legacy use cases.
+(This is a FIPS 140\-3 requirement)
+.IP """pss"" (\fBOSSL_PKEY_RSA_PAD_MODE_PSS\fR)" 4
+.IX Item """pss"" (OSSL_PKEY_RSA_PAD_MODE_PSS)"
.RE
.RS 4
.RE
-.ie n .IP """mgf1\-digest"" (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``mgf1\-digest'' (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "mgf1-digest (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8 string>"
+.PD 0
+.IP """mgf1\-digest"" (\fBOSSL_SIGNATURE_PARAM_MGF1_DIGEST\fR) <UTF8 string>" 4
+.IX Item """mgf1-digest"" (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8 string>"
.PD
-The digest algorithm name to use for the maskGenAlgorithm used by \*(L"pss\*(R" mode.
-.ie n .IP """mgf1\-properties"" (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``mgf1\-properties'' (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "mgf1-properties (OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES) <UTF8 string>"
-Sets the name of the property query associated with the \*(L"mgf1\-digest\*(R" algorithm.
-\&\s-1NULL\s0 is used if this optional value is not set.
-.ie n .IP """saltlen"" (\fB\s-1OSSL_SIGNATURE_PARAM_PSS_SALTLEN\s0\fR) <integer> or <\s-1UTF8\s0 string>" 4
-.el .IP "``saltlen'' (\fB\s-1OSSL_SIGNATURE_PARAM_PSS_SALTLEN\s0\fR) <integer> or <\s-1UTF8\s0 string>" 4
-.IX Item "saltlen (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <integer> or <UTF8 string>"
-The \*(L"pss\*(R" mode minimum salt length. The value can either be an integer,
+The digest algorithm name to use for the maskGenAlgorithm used by "pss" mode.
+.IP """mgf1\-properties"" (\fBOSSL_SIGNATURE_PARAM_MGF1_PROPERTIES\fR) <UTF8 string>" 4
+.IX Item """mgf1-properties"" (OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES) <UTF8 string>"
+Sets the name of the property query associated with the "mgf1\-digest" algorithm.
+NULL is used if this optional value is not set.
+.IP """saltlen"" (\fBOSSL_SIGNATURE_PARAM_PSS_SALTLEN\fR) <integer> or <UTF8 string>" 4
+.IX Item """saltlen"" (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <integer> or <UTF8 string>"
+The "pss" mode minimum salt length. The value can either be an integer,
a string value representing a number or one of the following string values:
.RS 4
-.ie n .IP """digest"" (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST\s0\fR)" 4
-.el .IP "``digest'' (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST\s0\fR)" 4
-.IX Item "digest (OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST)"
+.IP """digest"" (\fBOSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST\fR)" 4
+.IX Item """digest"" (OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST)"
Use the same length as the digest size.
-.ie n .IP """max"" (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_MAX\s0\fR)" 4
-.el .IP "``max'' (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_MAX\s0\fR)" 4
-.IX Item "max (OSSL_PKEY_RSA_PSS_SALT_LEN_MAX)"
+.IP """max"" (\fBOSSL_PKEY_RSA_PSS_SALT_LEN_MAX\fR)" 4
+.IX Item """max"" (OSSL_PKEY_RSA_PSS_SALT_LEN_MAX)"
Use the maximum salt length.
-.ie n .IP """auto"" (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO\s0\fR)" 4
-.el .IP "``auto'' (\fB\s-1OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO\s0\fR)" 4
-.IX Item "auto (OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO)"
+.IP """auto"" (\fBOSSL_PKEY_RSA_PSS_SALT_LEN_AUTO\fR)" 4
+.IX Item """auto"" (OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO)"
Auto detect the salt length.
+.IP """auto-digestmax"" (\fBOSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX\fR)" 4
+.IX Item """auto-digestmax"" (OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX)"
+Auto detect the salt length when verifying. Maximize the salt length up to the
+digest size when signing to comply with FIPS 186\-4 section 5.5.
.RE
.RS 4
.RE
.PP
+The OpenSSL FIPS provider also supports the following parameters:
+.IP """key-check"" (\fBOSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK\fR) <integer>" 4
+.IX Item """key-check"" (OSSL_SIGNATURE_PARAM_FIPS_KEY_CHECK) <integer>"
+.PD 0
+.IP """digest-check"" (\fBOSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK\fR) <integer>" 4
+.IX Item """digest-check"" (OSSL_SIGNATURE_PARAM_FIPS_DIGEST_CHECK) <integer>"
+.IP """sign\-x931\-pad\-check"" (\fBOSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK\fR) <integer>" 4
+.IX Item """sign-x931-pad-check"" (OSSL_SIGNATURE_PARAM_FIPS_SIGN_X931_PAD_CHECK) <integer>"
+.PD
+These parameters are described in \fBprovider\-signature\fR\|(7).
+.IP """rsa-pss-saltlen-check"" (\fBOSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK\fR) <integer>" 4
+.IX Item """rsa-pss-saltlen-check"" (OSSL_SIGNATURE_PARAM_FIPS_RSA_PSS_SALTLEN_CHECK) <integer>"
+The default value of 1 causes an error during signature generation or
+verification if salt length (\fBOSSL_SIGNATURE_PARAM_PSS_SALTLEN\fR) is not between
+zero and the output block size of the digest function (inclusive).
+Setting this to zero will ignore the error and set the approved "fips-indicator"
+to 0.
+This option breaks FIPS compliance if it causes the approved "fips-indicator"
+to return 0.
+.PP
The following signature parameters can be retrieved using
\&\fBEVP_PKEY_CTX_get_params()\fR.
-.ie n .IP """algorithm-id"" (\fB\s-1OSSL_SIGNATURE_PARAM_ALGORITHM_ID\s0\fR) <octet string>" 4
-.el .IP "``algorithm-id'' (\fB\s-1OSSL_SIGNATURE_PARAM_ALGORITHM_ID\s0\fR) <octet string>" 4
-.IX Item "algorithm-id (OSSL_SIGNATURE_PARAM_ALGORITHM_ID) <octet string>"
-This common parameter is described in \fBprovider\-signature\fR\|(7).
-.ie n .IP """digest"" (\fB\s-1OSSL_SIGNATURE_PARAM_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``digest'' (\fB\s-1OSSL_SIGNATURE_PARAM_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "digest (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8 string>"
+.IP """algorithm-id"" (\fBOSSL_SIGNATURE_PARAM_ALGORITHM_ID\fR) <octet string>" 4
+.IX Item """algorithm-id"" (OSSL_SIGNATURE_PARAM_ALGORITHM_ID) <octet string>"
+.PD 0
+.IP """fips-indicator"" (\fBOSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR\fR) <integer>" 4
+.IX Item """fips-indicator"" (OSSL_SIGNATURE_PARAM_FIPS_APPROVED_INDICATOR) <integer>"
+.IP """verify-message"" (\fBOSSL_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE\fR <integer>" 4
+.IX Item """verify-message"" (OSSL_SIGNATURE_PARAM_FIPS_VERIFY_MESSAGE <integer>"
+.PD
+These common parameter are described in \fBprovider\-signature\fR\|(7).
+.IP """digest"" (\fBOSSL_SIGNATURE_PARAM_DIGEST\fR) <UTF8 string>" 4
+.IX Item """digest"" (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8 string>"
.PD 0
-.ie n .IP """pad-mode"" (\fB\s-1OSSL_SIGNATURE_PARAM_PAD_MODE\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``pad-mode'' (\fB\s-1OSSL_SIGNATURE_PARAM_PAD_MODE\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "pad-mode (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8 string>"
-.ie n .IP """mgf1\-digest"" (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.el .IP "``mgf1\-digest'' (\fB\s-1OSSL_SIGNATURE_PARAM_MGF1_DIGEST\s0\fR) <\s-1UTF8\s0 string>" 4
-.IX Item "mgf1-digest (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8 string>"
-.ie n .IP """saltlen"" (\fB\s-1OSSL_SIGNATURE_PARAM_PSS_SALTLEN\s0\fR) <integer> or <\s-1UTF8\s0 string>" 4
-.el .IP "``saltlen'' (\fB\s-1OSSL_SIGNATURE_PARAM_PSS_SALTLEN\s0\fR) <integer> or <\s-1UTF8\s0 string>" 4
-.IX Item "saltlen (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <integer> or <UTF8 string>"
+.IP """pad-mode"" (\fBOSSL_SIGNATURE_PARAM_PAD_MODE\fR) <UTF8 string>" 4
+.IX Item """pad-mode"" (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8 string>"
+.IP """mgf1\-digest"" (\fBOSSL_SIGNATURE_PARAM_MGF1_DIGEST\fR) <UTF8 string>" 4
+.IX Item """mgf1-digest"" (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8 string>"
+.IP """saltlen"" (\fBOSSL_SIGNATURE_PARAM_PSS_SALTLEN\fR) <integer> or <UTF8 string>" 4
+.IX Item """saltlen"" (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <integer> or <UTF8 string>"
.PD
These parameters are as described above.
.SH "SEE ALSO"
@@ -237,11 +226,11 @@ These parameters are as described above.
\&\fBEVP_PKEY_sign\fR\|(3),
\&\fBEVP_PKEY_verify\fR\|(3),
\&\fBprovider\-signature\fR\|(7),
-.SH "COPYRIGHT"
+.SH COPYRIGHT
.IX Header "COPYRIGHT"
-Copyright 2020\-2022 The OpenSSL Project Authors. All Rights Reserved.
+Copyright 2020\-2024 The OpenSSL Project Authors. All Rights Reserved.
.PP
-Licensed under the Apache License 2.0 (the \*(L"License\*(R"). You may not use
+Licensed under the Apache License 2.0 (the "License"). You may not use
this file except in compliance with the License. You can obtain a copy
-in the file \s-1LICENSE\s0 in the source distribution or at
+in the file LICENSE in the source distribution or at
<https://www.openssl.org/source/license.html>.