|
libkeepass 0.2.0
KeePass key database importer/exporter library
|
Output streambuf that writes HMAC-authenticated, block-structured data (KDBX4 format). More...
#include <stream.hh>
Public Member Functions | |
| hmac_ostreambuf (std::ostream &dst, const uint8_t *hmac_key) | |
| Constructs an HMAC-signing output streambuf with the default 1 MiB block size. | |
| hmac_ostreambuf (std::ostream &dst, const uint8_t *hmac_key, uint32_t block_size) | |
| Constructs an HMAC-signing output streambuf with a custom block size. | |
| ~hmac_ostreambuf () | |
| Zeroizes the stored master HMAC key. | |
| int | overflow (int c) override |
| Buffers a character; flushes the current block when it reaches capacity. | |
| int | sync () override |
| Flushes any buffered data and writes the trailing empty end-of-stream block. | |
Output streambuf that writes HMAC-authenticated, block-structured data (KDBX4 format).
Each block is written with a 32-byte HMAC-SHA256 over the block index, block size, and block data. A trailing empty block is written on sync to signal end-of-stream.
Constructs an HMAC-signing output streambuf with the default 1 MiB block size.
| dst | The output stream to write HMAC-protected blocks to. |
| hmac_key | The 512-bit master HMAC key. |
|
inline |
Constructs an HMAC-signing output streambuf with a custom block size.
| dst | The output stream to write HMAC-protected blocks to. |
| hmac_key | The 512-bit master HMAC key. |
| block_size | The maximum number of data bytes per block. |