CCF
Loading...
Searching...
No Matches
Public Member Functions | List of all members
ccf::crypto::EdDSAPublicKey Class Referenceabstract

#include <eddsa_public_key.h>

Inherited by ccf::crypto::EdDSAPublicKey_OpenSSL.

Public Member Functions

 EdDSAPublicKey ()=default
 
virtual ~EdDSAPublicKey ()=default
 
 EdDSAPublicKey (const Pem &pem)
 
virtual Pem public_key_pem () const =0
 
virtual bool verify (const std::vector< uint8_t > &contents, const std::vector< uint8_t > &signature)
 
virtual bool verify (const uint8_t *contents, size_t contents_size, const uint8_t *signature, size_t signature_size)=0
 
virtual CurveID get_curve_id () const =0
 
virtual JsonWebKeyEdDSAPublic public_key_jwk_eddsa (const std::optional< std::string > &kid=std::nullopt) const =0
 

Constructor & Destructor Documentation

◆ EdDSAPublicKey() [1/2]

ccf::crypto::EdDSAPublicKey::EdDSAPublicKey ( )
default

◆ ~EdDSAPublicKey()

virtual ccf::crypto::EdDSAPublicKey::~EdDSAPublicKey ( )
virtualdefault

◆ EdDSAPublicKey() [2/2]

ccf::crypto::EdDSAPublicKey::EdDSAPublicKey ( const Pem pem)

Construct from PEM

Member Function Documentation

◆ get_curve_id()

virtual CurveID ccf::crypto::EdDSAPublicKey::get_curve_id ( ) const
pure virtual

◆ public_key_jwk_eddsa()

virtual JsonWebKeyEdDSAPublic ccf::crypto::EdDSAPublicKey::public_key_jwk_eddsa ( const std::optional< std::string > &  kid = std::nullopt) const
pure virtual

◆ public_key_pem()

virtual Pem ccf::crypto::EdDSAPublicKey::public_key_pem ( ) const
pure virtual

◆ verify() [1/2]

virtual bool ccf::crypto::EdDSAPublicKey::verify ( const std::vector< uint8_t > &  contents,
const std::vector< uint8_t > &  signature 
)
inlinevirtual

Verify that a signature was produced on contents with the private key associated with the public key held by the object.

Parameters
contentsSequence of bytes that was signed
signatureSignature as a sequence of bytes
Returns
Whether the signature matches the contents and the key

◆ verify() [2/2]

virtual bool ccf::crypto::EdDSAPublicKey::verify ( const uint8_t *  contents,
size_t  contents_size,
const uint8_t *  signature,
size_t  signature_size 
)
pure virtual

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