Digital signature generators.
Definition in file signers.hpp.
Go to the source code of this file.
#include <initializer_list>#include <memory>#include <string>#include <string_view>#include <userver/utils/flags.hpp>#include <userver/crypto/basic_types.hpp>#include <userver/crypto/certificate.hpp>#include <userver/crypto/exception.hpp>#include <userver/crypto/private_key.hpp>
This graph shows which files directly or indirectly include this file:Classes | |
| class | crypto::Signer |
| Base signer class. More... | |
| class | crypto::SignerNone |
| "none" algorithm signer More... | |
| class | crypto::HmacShaSigner< Bits > |
| HMAC-SHA signer. More... | |
| class | crypto::DsaSigner< Type, Bits > |
| Generic signer for asymmetric cryptography. More... | |
| class | crypto::CmsSigner |
Namespaces | |
| namespace | crypto |
| Cryptographic primitives: hashing, signatures, certificates, and randomness. | |
| namespace | crypto::weak |
| Non-cryptographic signature helpers. | |
Typedefs | |
| using | crypto::weak::SignerRs1 = DsaSigner<DsaType::kRsa, DigestSize::k160> |
| Outputs RSASSA signature using SHA-1 and PKCS1 padding. | |
| using | crypto::weak::SignerPs1 = DsaSigner<DsaType::kRsaPss, DigestSize::k160> |
Outputs HMAC SHA MAC. | |
| using | crypto::SignerHs1 = HmacShaSigner<DigestSize::k160> |
| using | crypto::SignerHs256 = HmacShaSigner<DigestSize::k256> |
| using | crypto::SignerHs384 = HmacShaSigner<DigestSize::k384> |
| using | crypto::SignerHs512 = HmacShaSigner<DigestSize::k512> |
Outputs RSASSA signature using SHA-2 and PKCS1 padding. | |
| using | crypto::SignerRs256 = DsaSigner<DsaType::kRsa, DigestSize::k256> |
| using | crypto::SignerRs384 = DsaSigner<DsaType::kRsa, DigestSize::k384> |
| using | crypto::SignerRs512 = DsaSigner<DsaType::kRsa, DigestSize::k512> |
Outputs ECDSA as per RFC7518. | |
OpenSSL generates ECDSA signatures in ASN.1/DER format, RFC7518 specifies signature as a concatenation of zero-padded big-endian | |
| using | crypto::SignerEs256 = DsaSigner<DsaType::kEc, DigestSize::k256> |
| using | crypto::SignerEs384 = DsaSigner<DsaType::kEc, DigestSize::k384> |
| using | crypto::SignerEs512 = DsaSigner<DsaType::kEc, DigestSize::k512> |
Outputs RSASSA signature using SHA-2 and PSS padding as per RFC7518. | |
JWA specifications require using MGF1 function with the same hash function as for the digest and salt length to be the same size as the hash output. | |
| using | crypto::SignerPs256 = DsaSigner<DsaType::kRsaPss, DigestSize::k256> |
| using | crypto::SignerPs384 = DsaSigner<DsaType::kRsaPss, DigestSize::k384> |
| using | crypto::SignerPs512 = DsaSigner<DsaType::kRsaPss, DigestSize::k512> |