Botan 2.19.1
Crypto and TLS for C&
Public Member Functions | List of all members
Botan::ISO_9796_DS3 Class Referencefinal

#include <iso9796.h>

Inheritance diagram for Botan::ISO_9796_DS3:

Public Member Functions

EMSAclone () override
virtual AlgorithmIdentifier config_for_x509 (const Private_Key &key, const std::string &cert_hash_name) const
 ISO_9796_DS3 (HashFunction *hash, bool implicit=false)
std::string name () const override

Detailed Description

ISO-9796-2 - Digital signature scheme 3 (deterministic)

Definition at line 64 of file iso9796.h.

Constructor & Destructor Documentation

◆ ISO_9796_DS3()

Botan::ISO_9796_DS3::ISO_9796_DS3 ( HashFunction hash,
bool  implicit = false 
hashfunction to use
implicitwhether or not the trailer is implicit

Definition at line 71 of file iso9796.h.

71 : m_hash(hash), m_implicit(implicit)
72 {}
MechanismType hash

Referenced by clone().

Member Function Documentation

◆ clone()

EMSA * Botan::ISO_9796_DS3::clone ( )
a new object representing the same encoding method as *this

Implements Botan::EMSA.

Definition at line 272 of file iso9796.cpp.

273 {
274 return new ISO_9796_DS3(m_hash->clone(), m_implicit);
275 }
ISO_9796_DS3(HashFunction *hash, bool implicit=false)
Definition: iso9796.h:71

References ISO_9796_DS3().

◆ config_for_x509()

AlgorithmIdentifier Botan::EMSA::config_for_x509 ( const Private_Key key,
const std::string &  cert_hash_name 
) const

Prepare sig_algo for use in choose_sig_format for x509 certs

keyused for checking compatibility with the encoding scheme
cert_hash_nameis checked to equal the hash for the encoding
algorithm identifier to signatures created using this key, padding method and hash.

Reimplemented in Botan::EMSA1, Botan::EMSA_PKCS1v15, and Botan::PSSR.

Definition at line 38 of file emsa.cpp.

40 {
41 throw Not_Implemented("Encoding " + name() + " not supported for signing X509 objects");
42 }
virtual std::string name() const =0

References Botan::EMSA::name().

◆ name()

std::string Botan::ISO_9796_DS3::name ( ) const
the SCAN name of the encoding/padding scheme

Implements Botan::EMSA.

Definition at line 317 of file iso9796.cpp.

318 {
319 return "ISO_9796_DS3(" + m_hash->name() + "," +
320 (m_implicit ? "imp" : "exp") + ")";
321 }

The documentation for this class was generated from the following files: