summaryrefslogtreecommitdiff
path: root/static/freebsd/man7/EVP_SIGNATURE-RSA.7
diff options
context:
space:
mode:
Diffstat (limited to 'static/freebsd/man7/EVP_SIGNATURE-RSA.7')
-rw-r--r--static/freebsd/man7/EVP_SIGNATURE-RSA.7237
1 files changed, 237 insertions, 0 deletions
diff --git a/static/freebsd/man7/EVP_SIGNATURE-RSA.7 b/static/freebsd/man7/EVP_SIGNATURE-RSA.7
new file mode 100644
index 00000000..c455837e
--- /dev/null
+++ b/static/freebsd/man7/EVP_SIGNATURE-RSA.7
@@ -0,0 +1,237 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\"
+.\" Required to disable full justification in groff 1.23.0.
+.if n .ds AD l
+.\" ========================================================================
+.\"
+.IX Title "EVP_SIGNATURE-RSA 7ossl"
+.TH EVP_SIGNATURE-RSA 7ossl 2026-04-07 3.5.6 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
+EVP_SIGNATURE\-RSA
+\&\- The EVP_PKEY RSA signature implementation
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+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\*(Aqt 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. 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
+.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).
+.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
+.IP """none"" (\fBOSSL_PKEY_RSA_PAD_MODE_NONE\fR)" 4
+.IX Item """none"" (OSSL_PKEY_RSA_PAD_MODE_NONE)"
+.PD 0
+.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
+.IP """mgf1\-digest"" (\fBOSSL_SIGNATURE_PARAM_MGF1_DIGEST\fR) <UTF8 string>" 4
+.IX Item """mgf1-digest"" (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8 string>"
+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
+.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.
+.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.
+.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.
+.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
+.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"
+.IX Header "SEE ALSO"
+\&\fBEVP_PKEY_CTX_set_params\fR\|(3),
+\&\fBEVP_PKEY_sign\fR\|(3),
+\&\fBEVP_PKEY_verify\fR\|(3),
+\&\fBprovider\-signature\fR\|(7),
+.SH COPYRIGHT
+.IX Header "COPYRIGHT"
+Copyright 2020\-2026 The OpenSSL Project Authors. All Rights Reserved.
+.PP
+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 LICENSE in the source distribution or at
+<https://www.openssl.org/source/license.html>.