Logger System 0.1.3
High-performance C++20 thread-safe logging system with asynchronous capabilities
Loading...
Searching...
No Matches
encrypted_writer.h File Reference

Encryption wrapper for log writers providing AES-256-GCM encryption. More...

#include "decorator_writer_base.h"
#include "../security/secure_key_storage.h"
#include "../core/error_codes.h"
#include <kcenon/logger/logger_export.h>
#include <array>
#include <memory>
#include <mutex>
#include <atomic>
#include <chrono>
#include <optional>
#include <vector>
#include <cstdint>
#include <functional>
Include dependency graph for encrypted_writer.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::logger::encryption_config
 Configuration for encrypted_writer. More...
 
struct  kcenon::logger::encrypted_log_header
 Header prepended to each encrypted log entry. More...
 
class  kcenon::logger::encrypted_writer
 Decorator that encrypts log data before writing. More...
 
class  kcenon::logger::log_decryptor
 Utility class for decrypting encrypted log files. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::logger
 

Enumerations

enum class  kcenon::logger::encryption_algorithm { kcenon::logger::aes_256_gcm , kcenon::logger::aes_256_cbc , kcenon::logger::chacha20_poly1305 }
 Supported encryption algorithms for log encryption. More...
 

Detailed Description

Encryption wrapper for log writers providing AES-256-GCM encryption.

Author
kcenon
Since
1.3.0
4.0.0 Refactored to use decorator_writer_base

This file provides an encrypted_writer class that wraps any existing log_writer_interface and encrypts log data before writing. Essential for compliance with GDPR, HIPAA, PCI DSS, and SOC 2 regulations.

Security features:

  • AES-256-GCM authenticated encryption
  • Unique IV per log entry
  • Secure key management via secure_key_storage
  • Key rotation support
  • RAII-based key cleanup

Definition in file encrypted_writer.h.