Digital signature verifiers.
Definition in file verifiers.hpp.
Go to the source code of this file.
#include <initializer_list>#include <memory>#include <string>#include <string_view>#include <userver/crypto/basic_types.hpp>#include <userver/crypto/certificate.hpp>#include <userver/crypto/exception.hpp>#include <userver/crypto/public_key.hpp>#include <userver/utils/flags.hpp>
This graph shows which files directly or indirectly include this file:Classes | |
| class | crypto::Verifier |
| Base verifier class. More... | |
| class | crypto::VerifierNone |
| "none" algorithm verifier More... | |
| class | crypto::HmacShaVerifier< Bits > |
| HMAC-SHA verifier. More... | |
| class | crypto::DsaVerifier< Type, Bits > |
| Generic verifier for asymmetric cryptography. More... | |
| class | crypto::CmsVerifier |
Namespaces | |
| namespace | crypto |
| Cryptographic primitives: hashing, signatures, certificates, and randomness. | |
| namespace | crypto::weak |
| Non-cryptographic signature helpers. | |
Typedefs | |
| using | crypto::weak::VerifierRs1 = DsaVerifier<DsaType::kRsa, DigestSize::k160> |
| Verifies RSASSA signature using SHA-1 and PKCS1 padding. | |
| using | crypto::weak::VerifierPs1 = DsaVerifier<DsaType::kRsaPss, DigestSize::k160> |
Verifies HMAC SHA MAC. | |
| using | crypto::VerifierHs1 = HmacShaVerifier<DigestSize::k160> |
| using | crypto::VerifierHs256 = HmacShaVerifier<DigestSize::k256> |
| using | crypto::VerifierHs384 = HmacShaVerifier<DigestSize::k384> |
| using | crypto::VerifierHs512 = HmacShaVerifier<DigestSize::k512> |
Verifies RSASSA signature using SHA-2 and PKCS1 padding. | |
| using | crypto::VerifierRs256 = DsaVerifier<DsaType::kRsa, DigestSize::k256> |
| using | crypto::VerifierRs384 = DsaVerifier<DsaType::kRsa, DigestSize::k384> |
| using | crypto::VerifierRs512 = DsaVerifier<DsaType::kRsa, DigestSize::k512> |
Verifies 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::VerifierEs256 = DsaVerifier<DsaType::kEc, DigestSize::k256> |
| using | crypto::VerifierEs384 = DsaVerifier<DsaType::kEc, DigestSize::k384> |
| using | crypto::VerifierEs512 = DsaVerifier<DsaType::kEc, DigestSize::k512> |
Verifies 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::VerifierPs256 = DsaVerifier<DsaType::kRsaPss, DigestSize::k256> |
| using | crypto::VerifierPs384 = DsaVerifier<DsaType::kRsaPss, DigestSize::k384> |
| using | crypto::VerifierPs512 = DsaVerifier<DsaType::kRsaPss, DigestSize::k512> |