pub struct AccessPoint<E>{ /* private fields */ }Expand description
Access to an in-memory vault optionally mirroring changes to storage.
It stores the derived private key in memory so should only be used on client implementations.
Calling lock() will zeroize the private key in memory and prevent
any access to the vault until unlock() is called successfully.
To allow for meta data to be displayed before secret decryption certain parts of a vault are encrypted separately which means that technically it would be possible to use different private keys for different secrets and for the meta data however this would be a very poor user experience and would lead to confusion so the access point is also responsible for ensuring the same private key is used to encrypt the different chunks.
Implementations§
Source§impl<E> AccessPoint<E>
impl<E> AccessPoint<E>
Sourcepub fn new_mirror(
vault: Vault,
mirror: Box<dyn EncryptedEntry<Error = E> + Send + Sync + 'static>,
) -> Self
pub fn new_mirror( vault: Vault, mirror: Box<dyn EncryptedEntry<Error = E> + Send + Sync + 'static>, ) -> Self
Create a new access point that writes in-memory changes to a mirror.