![]() |
Signet Forge 0.1.1
C++20 Parquet library with AI-native extensions
|
DEMO |
File-based local key store for on-premise deployments. More...
#include <kms_local.hpp>
Classes | |
| struct | Config |
Public Member Functions | |
| LocalKeyStore (Config config) | |
| Construct a LocalKeyStore from configuration. | |
| ~LocalKeyStore () override | |
| LocalKeyStore (const LocalKeyStore &)=delete | |
| LocalKeyStore & | operator= (const LocalKeyStore &)=delete |
| expected< std::vector< uint8_t > > | wrap_key (const std::vector< uint8_t > &dek, const std::string &key_id) const override |
| Wrap (encrypt) a DEK under the master key identified by key_id. | |
| expected< std::vector< uint8_t > > | unwrap_key (const std::vector< uint8_t > &wrapped_dek, const std::string &key_id) const override |
| Unwrap (decrypt) a wrapped DEK using the master key identified by key_id. | |
| expected< std::string > | generate_key (const std::string &key_id) |
| Generate a new AES-256 master key and store it under key_id. | |
| expected< void > | destroy_key (const std::string &key_id) |
| Destroy a master key (crypto-shredding for GDPR Art. 17). | |
| bool | has_key (const std::string &key_id) const |
| Check if a key exists in the store (cached or on disk). | |
Public Member Functions inherited from signet::forge::crypto::IKmsClient | |
| virtual | ~IKmsClient ()=default |
File-based local key store for on-premise deployments.
Wraps master keys under a passphrase-derived KEK and stores them on the local filesystem. Suitable for air-gapped or single-machine deployments where cloud KMS is not available.
Thread safety: All public methods are protected by a mutable mutex.
Usage:
Definition at line 72 of file kms_local.hpp.
|
inlineexplicit |
Construct a LocalKeyStore from configuration.
Definition at line 85 of file kms_local.hpp.
|
inlineoverride |
Definition at line 91 of file kms_local.hpp.
|
delete |
|
inline |
Destroy a master key (crypto-shredding for GDPR Art. 17).
Definition at line 160 of file kms_local.hpp.
|
inline |
Generate a new AES-256 master key and store it under key_id.
Definition at line 145 of file kms_local.hpp.
|
inline |
Check if a key exists in the store (cached or on disk).
Definition at line 176 of file kms_local.hpp.
|
delete |
|
inlineoverridevirtual |
Unwrap (decrypt) a wrapped DEK using the master key identified by key_id.
Implements signet::forge::crypto::IKmsClient.
Definition at line 124 of file kms_local.hpp.
|
inlineoverridevirtual |
Wrap (encrypt) a DEK under the master key identified by key_id.
Implements signet::forge::crypto::IKmsClient.
Definition at line 105 of file kms_local.hpp.