pub struct EncryptionKeyManager;Expand description
Encryption key management utilities
Implementations§
Source§impl EncryptionKeyManager
impl EncryptionKeyManager
Sourcepub fn generate_key() -> [u8; 32]
pub fn generate_key() -> [u8; 32]
Generate a new random 256-bit encryption key
Sourcepub fn rotate_key(_old_key: &[u8; 32]) -> ([u8; 32], [u8; 32])
pub fn rotate_key(_old_key: &[u8; 32]) -> ([u8; 32], [u8; 32])
Rotate key: generate new key and return both old and new For rotation, you might want to re-encrypt data with the new key
Sourcepub fn export_key(key: &[u8; 32]) -> String
pub fn export_key(key: &[u8; 32]) -> String
Export key as hex
Sourcepub fn import_key(hex: &str) -> Result<[u8; 32], CryptoError>
pub fn import_key(hex: &str) -> Result<[u8; 32], CryptoError>
Import key from hex
Sourcepub fn derive_key_from_passphrase(
passphrase: &str,
) -> Result<(Vec<u8>, [u8; 32]), CryptoError>
pub fn derive_key_from_passphrase( passphrase: &str, ) -> Result<(Vec<u8>, [u8; 32]), CryptoError>
Generate a key from a passphrase using the default KDF
Sourcepub fn derive_key_from_passphrase_with_salt(
passphrase: &str,
salt: &[u8],
) -> Result<[u8; 32], CryptoError>
pub fn derive_key_from_passphrase_with_salt( passphrase: &str, salt: &[u8], ) -> Result<[u8; 32], CryptoError>
Generate a key from a passphrase using the provided salt
Auto Trait Implementations§
impl Freeze for EncryptionKeyManager
impl RefUnwindSafe for EncryptionKeyManager
impl Send for EncryptionKeyManager
impl Sync for EncryptionKeyManager
impl Unpin for EncryptionKeyManager
impl UnwindSafe for EncryptionKeyManager
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more