Network System 0.1.1
High-performance modular networking library for scalable client-server applications
Loading...
Searching...
No Matches
XorTransformer Class Reference

A simple XOR "encryption" transformer. More...

Collaboration diagram for XorTransformer:
Collaboration graph

Public Member Functions

 XorTransformer (uint8_t key)
 
bool transform (std::vector< uint8_t > &data)
 
bool reverse_transform (std::vector< uint8_t > &data)
 

Private Attributes

uint8_t key_
 

Detailed Description

A simple XOR "encryption" transformer.

Definition at line 281 of file concepts_example.cpp.

Constructor & Destructor Documentation

◆ XorTransformer()

XorTransformer::XorTransformer ( uint8_t key)
inlineexplicit

Definition at line 283 of file concepts_example.cpp.

283: key_(key) {}

Member Function Documentation

◆ reverse_transform()

bool XorTransformer::reverse_transform ( std::vector< uint8_t > & data)
inline

Definition at line 292 of file concepts_example.cpp.

292 {
293 // XOR is its own inverse
294 return transform(data);
295 }
bool transform(std::vector< uint8_t > &data)

References transform().

Here is the call graph for this function:

◆ transform()

bool XorTransformer::transform ( std::vector< uint8_t > & data)
inline

Definition at line 285 of file concepts_example.cpp.

285 {
286 for (auto& byte : data) {
287 byte ^= key_;
288 }
289 return true;
290 }

References key_.

Referenced by reverse_transform().

Here is the caller graph for this function:

Member Data Documentation

◆ key_

uint8_t XorTransformer::key_
private

Definition at line 298 of file concepts_example.cpp.

Referenced by transform().


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