Vanetza
 
Loading...
Searching...
No Matches
vanetza::security::Backend Class Referenceabstract

#include <backend.hpp>

Inheritance diagram for vanetza::security::Backend:

Public Member Functions

virtual EcdsaSignature sign_data (const ecdsa256::PrivateKey &private_key, const ByteBuffer &data)=0
 calculate signature for given data and private key
 
virtual bool verify_data (const ecdsa256::PublicKey &public_key, const ByteBuffer &data, const EcdsaSignature &sig)=0
 try to verify data using public key and signature
 
virtual bool verify_digest (const PublicKey &public_key, const ByteBuffer &digest, const Signature &sig)=0
 try to verify digest using public key and signature
 
virtual boost::optional< Uncompresseddecompress_point (const EccPoint &ecc_point)=0
 decompress a possibly compressed elliptic curve point
 
virtual ByteBuffer calculate_hash (KeyType, const ByteBuffer &)=0
 

Detailed Description

Interface to cryptographic features

Definition at line 22 of file backend.hpp.

Member Function Documentation

◆ calculate_hash()

virtual ByteBuffer vanetza::security::Backend::calculate_hash ( KeyType  ,
const ByteBuffer &   
)
pure virtual

◆ decompress_point()

virtual boost::optional< Uncompressed > vanetza::security::Backend::decompress_point ( const EccPoint &  ecc_point)
pure virtual

decompress a possibly compressed elliptic curve point

Parameters
ecc_pointelliptic curve point
Returns
uncompressed point

Implemented in vanetza::security::BackendCryptoPP, vanetza::security::BackendNull, and vanetza::security::BackendOpenSsl.

◆ sign_data()

virtual EcdsaSignature vanetza::security::Backend::sign_data ( const ecdsa256::PrivateKey private_key,
const ByteBuffer &  data 
)
pure virtual

calculate signature for given data and private key

Parameters
private_keySecret private key
databuffer with plaintext data
Returns
calculated signature

Implemented in vanetza::security::BackendCryptoPP, vanetza::security::BackendNull, and vanetza::security::BackendOpenSsl.

◆ verify_data()

virtual bool vanetza::security::Backend::verify_data ( const ecdsa256::PublicKey public_key,
const ByteBuffer &  data,
const EcdsaSignature sig 
)
pure virtual

try to verify data using public key and signature

Parameters
public_keyPublic key
dataplaintext
sigsignature of data
Returns
true if the data could be verified

Implemented in vanetza::security::BackendCryptoPP, vanetza::security::BackendNull, and vanetza::security::BackendOpenSsl.

◆ verify_digest()

virtual bool vanetza::security::Backend::verify_digest ( const PublicKey public_key,
const ByteBuffer &  digest,
const Signature sig 
)
pure virtual

try to verify digest using public key and signature

Parameters
public_keypublic key
digesthash value of data
sigsignature of data
Returns
true if data could be verified

Implemented in vanetza::security::BackendCryptoPP, vanetza::security::BackendNull, and vanetza::security::BackendOpenSsl.


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