OpenSSL

密码学和SSL/TLS工具包

EVP_SIGNATURE-RSA

名称

EVP_SIGNATURE-RSA - EVP_PKEY RSA签名实现

描述

支持计算RSA签名。有关RSA密钥的信息,请参见EVP_PKEY-RSA(7)

签名参数

可以使用EVP_PKEY_CTX_set_params()设置以下签名参数。这可以在调用EVP_PKEY_sign_init()或EVP_PKEY_verify_init()之后,以及在调用EVP_PKEY_sign()或EVP_PKEY_verify()之前调用。

"digest" (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8字符串>
"properties" (OSSL_SIGNATURE_PARAM_PROPERTIES) <UTF8字符串>

这些通用参数在provider-signature(7)中进行了描述。

"pad-mode" (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8字符串>

要使用的填充类型。其值可以是以下值之一

"none" (OSSL_PKEY_RSA_PAD_MODE_NONE)
"pkcs1" (OSSL_PKEY_RSA_PAD_MODE_PKCSV15)
"x931" (OSSL_PKEY_RSA_PAD_MODE_X931)
"pss" (OSSL_PKEY_RSA_PAD_MODE_PSS)
"mgf1-digest" (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8字符串>

"pss"模式使用的maskGenAlgorithm的摘要算法名称。

"mgf1-properties" (OSSL_SIGNATURE_PARAM_MGF1_PROPERTIES) <UTF8字符串>

设置与"mgf1-digest"算法关联的属性查询的名称。如果未设置此可选值,则使用NULL。

"saltlen" (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <整数> 或 <UTF8字符串>

"pss"模式的最小盐长度。该值可以是整数、表示数字的字符串值或以下字符串值之一

"digest" (OSSL_PKEY_RSA_PSS_SALT_LEN_DIGEST)

使用与摘要大小相同的长度。

"max" (OSSL_PKEY_RSA_PSS_SALT_LEN_MAX)

使用最大盐长度。

"auto" (OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO)

自动检测盐长度。

"auto-digestmax" (OSSL_PKEY_RSA_PSS_SALT_LEN_AUTO_DIGEST_MAX)

在验证时自动检测盐长度。在签名时将盐长度最大化到摘要大小,以符合FIPS 186-4第5.5节。

可以使用EVP_PKEY_CTX_get_params()检索以下签名参数。

"algorithm-id" (OSSL_SIGNATURE_PARAM_ALGORITHM_ID) <八位字节串>

此通用参数在provider-signature(7)中进行了描述。

"digest" (OSSL_SIGNATURE_PARAM_DIGEST) <UTF8字符串>
"pad-mode" (OSSL_SIGNATURE_PARAM_PAD_MODE) <UTF8字符串>
"mgf1-digest" (OSSL_SIGNATURE_PARAM_MGF1_DIGEST) <UTF8字符串>
"saltlen" (OSSL_SIGNATURE_PARAM_PSS_SALTLEN) <整数> 或 <UTF8字符串>

这些参数如上所述。

参见

EVP_PKEY_CTX_set_params(3)EVP_PKEY_sign(3)EVP_PKEY_verify(3)provider-signature(7)

版权所有 2020-2021 OpenSSL 项目作者。保留所有权利。

根据 Apache 许可证 2.0(“许可证”)获得许可。除非符合许可证,否则您不得使用此文件。您可以在源代码分发中的 LICENSE 文件或https://www.openssl.org/source/license.html中获得副本。