Network System 0.1.1
High-performance modular networking library for scalable client-server applications
Loading...
Searching...
No Matches
keys.h File Reference
#include <array>
#include <cstdint>
#include <string>
Include dependency graph for keys.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kcenon::network::protocols::quic::quic_keys
 QUIC encryption keys for a single encryption level (RFC 9001 Section 5) More...
 
struct  kcenon::network::protocols::quic::key_pair
 A pair of read and write keys for bidirectional communication. More...
 

Namespaces

namespace  kcenon
 
namespace  kcenon::network
 Main namespace for all Network System components.
 
namespace  kcenon::network::protocols
 
namespace  kcenon::network::protocols::quic
 

Enumerations

enum class  kcenon::network::protocols::quic::encryption_level : uint8_t { kcenon::network::protocols::quic::initial = 0 , kcenon::network::protocols::quic::handshake = 1 , kcenon::network::protocols::quic::zero_rtt = 2 , kcenon::network::protocols::quic::application = 3 }
 QUIC encryption levels (RFC 9001 Section 4) More...
 

Functions

auto kcenon::network::protocols::quic::encryption_level_to_string (encryption_level level) -> std::string
 Convert encryption level to string for debugging.
 
constexpr auto kcenon::network::protocols::quic::encryption_level_count () noexcept -> size_t
 Get the encryption level count.
 

Variables

constexpr size_t kcenon::network::protocols::quic::aes_128_key_size = 16
 AES-128-GCM key size in bytes.
 
constexpr size_t kcenon::network::protocols::quic::aes_256_key_size = 32
 AES-256-GCM key size in bytes.
 
constexpr size_t kcenon::network::protocols::quic::aead_iv_size = 12
 AEAD IV/nonce size in bytes.
 
constexpr size_t kcenon::network::protocols::quic::aead_tag_size = 16
 AEAD authentication tag size in bytes.
 
constexpr size_t kcenon::network::protocols::quic::secret_size = 32
 Traffic secret size (SHA-256 output)
 
constexpr size_t kcenon::network::protocols::quic::hp_key_size = 16
 Header protection key size for AES-128.
 
constexpr size_t kcenon::network::protocols::quic::hp_sample_size = 16
 Header protection sample size.