Struct seckey::SecKey
[−]
[src]
pub struct SecKey<T: Sized>(_);
Secure Bytes Box.
The use memsec/malloc protection secret bytes. When you need the password stored in the memory, you should use it.
More docs see Secure memory · libsodium.
Methods
impl<T> SecKey<T> where T: Sized
[src]
fn new(t: &mut T) -> Option<SecKey<T>>
fn read_map<U, F: FnOnce(&T) -> U>(&self, f: F) -> U
Map read. returns closure return value.
use seckey::SecKey; let mut pass: [u8; 8] = [8; 8]; let secpass = SecKey::new(&mut pass).unwrap(); assert_eq!(pass, [0; 8]); assert!(secpass.read_map(|b| b == &[8u8; 8]));
fn write_map<U, F: FnOnce(&mut T) -> U>(&mut self, f: F) -> U
Map write. returns closure return value.
secpass.write_map(|bs| bs[0] = 0); let bs = secpass.read_map(|bs| { let mut pass = [0; 8]; pass.clone_from_slice(bs); pass }); assert_eq!(bs, [0, 8, 8, 8, 8, 8, 8, 8]);