Logger System 1.0.0
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
kcenon::logger::security::integrity_policy Class Referenceabstract

Abstract interface for log integrity signing. More...

#include <integrity_policy.h>

Inheritance diagram for kcenon::logger::security::integrity_policy:
Inheritance graph
Collaboration diagram for kcenon::logger::security::integrity_policy:
Collaboration graph

Public Member Functions

virtual ~integrity_policy ()=default
 
virtual std::string sign (const std::string &record) const =0
 Produce a signature for record.
 
virtual bool verify (const std::string &record, const std::string &signature) const =0
 Verify that signature matches record.
 
virtual std::string name () const =0
 Short identifier used as a prefix in serialized signatures (e.g. "HMAC-SHA256"). Implementations must return a stable non-empty ASCII string.
 

Detailed Description

Abstract interface for log integrity signing.

Implementations must be thread-safe: sign() and verify() may be invoked concurrently from writer threads.

Definition at line 53 of file integrity_policy.h.

Constructor & Destructor Documentation

◆ ~integrity_policy()

virtual kcenon::logger::security::integrity_policy::~integrity_policy ( )
virtualdefault

Member Function Documentation

◆ name()

virtual std::string kcenon::logger::security::integrity_policy::name ( ) const
pure virtual

Short identifier used as a prefix in serialized signatures (e.g. "HMAC-SHA256"). Implementations must return a stable non-empty ASCII string.

Implemented in kcenon::logger::security::hmac_sha256_integrity_policy.

Referenced by kcenon::logger::security::format_signature_suffix().

Here is the caller graph for this function:

◆ sign()

virtual std::string kcenon::logger::security::integrity_policy::sign ( const std::string & record) const
pure virtual

Produce a signature for record.

Parameters
recordThe serialized log record to sign.
Returns
Hex-encoded signature, or empty string on failure.

Implemented in kcenon::logger::security::hmac_sha256_integrity_policy.

Referenced by kcenon::logger::security::format_signature_suffix().

Here is the caller graph for this function:

◆ verify()

virtual bool kcenon::logger::security::integrity_policy::verify ( const std::string & record,
const std::string & signature ) const
pure virtual

Verify that signature matches record.

Parameters
recordThe original log record.
signatureThe signature previously emitted by sign().
Returns
true if the signature is valid, false otherwise.

Implemented in kcenon::logger::security::hmac_sha256_integrity_policy.


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