Vanetza
 
Loading...
Searching...
No Matches
vanetza::security::DelegatingSecurityEntity Class Reference

#include <delegating_security_entity.hpp>

Inheritance diagram for vanetza::security::DelegatingSecurityEntity:

Public Member Functions

 DelegatingSecurityEntity (std::unique_ptr< SignService > sign, std::unique_ptr< VerifyService > verify)
 Create security entity from primitive services.
 
EncapConfirm encapsulate_packet (EncapRequest &&encap_request) override
 Creates a security envelope covering the given payload.
 
DecapConfirm decapsulate_packet (DecapRequest &&decap_request) override
 Decapsulates the payload within a SecuredMessage.
 

Private Attributes

std::unique_ptr< SignServicem_sign_service
 
std::unique_ptr< VerifyServicem_verify_service
 

Detailed Description

Implementation of SecurityEntity delegating to SignService and VerifyService

Definition at line 17 of file delegating_security_entity.hpp.

Constructor & Destructor Documentation

◆ DelegatingSecurityEntity()

vanetza::security::DelegatingSecurityEntity::DelegatingSecurityEntity ( std::unique_ptr< SignService sign,
std::unique_ptr< VerifyService verify 
)

Create security entity from primitive services.

A std::invalid_argument exception is thrown at construction if any given service is not callable.

Parameters
signSN-SIGN service
verifySN-VERIFY service

Definition at line 10 of file delegating_security_entity.cpp.

Member Function Documentation

◆ decapsulate_packet()

DecapConfirm vanetza::security::DelegatingSecurityEntity::decapsulate_packet ( DecapRequest &&  request)
overridevirtual

Decapsulates the payload within a SecuredMessage.

Verifies the Signature and SignerInfo of a SecuredMessage.

Parameters
requestcontaining a SecuredMessage
Returns
decapsulation confirmation including plaintext payload

Implements vanetza::security::SecurityEntity.

Definition at line 33 of file delegating_security_entity.cpp.

◆ encapsulate_packet()

EncapConfirm vanetza::security::DelegatingSecurityEntity::encapsulate_packet ( EncapRequest &&  request)
overridevirtual

Creates a security envelope covering the given payload.

The payload consists of the CommonHeader, ExtendedHeader and the payload of the layers above the network layer. The entire security envelope is used to calculate a signature which gets added to the resulting SecuredMessage.

Parameters
requestcontaining payload to sign
Returns
confirmation containing signed SecuredMessage

Implements vanetza::security::SecurityEntity.

Definition at line 21 of file delegating_security_entity.cpp.

Member Data Documentation

◆ m_sign_service

std::unique_ptr<SignService> vanetza::security::DelegatingSecurityEntity::m_sign_service
private

Definition at line 35 of file delegating_security_entity.hpp.

◆ m_verify_service

std::unique_ptr<VerifyService> vanetza::security::DelegatingSecurityEntity::m_verify_service
private

Definition at line 36 of file delegating_security_entity.hpp.


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