Struct infinitree::crypto::ChangeHeaderKey
source · pub struct ChangeHeaderKey<H, N, I> { /* private fields */ }
Expand description
Change the header key on sealing a tree.
You will need to use this key to open a the tree, then create a commit or reseal to apply the changes.
Examples
use infinitree::{*, crypto::*, fields::VersionedMap, backends::Directory};
let key = ChangeHeaderKey::swap_on_seal(
UsernamePassword::with_credentials("username".to_string(),
"old_password".to_string()).unwrap(),
UsernamePassword::with_credentials("username".to_string(),
"new_password".to_string()).unwrap(),
);
let mut tree = Infinitree::<VersionedMap<String, String>>::open(
Directory::new("/storage").unwrap(),
key
).unwrap();
tree.reseal();
Implementations§
source§impl<H, N, I> ChangeHeaderKey<H, N, I>
impl<H, N, I> ChangeHeaderKey<H, N, I>
pub fn swap_on_seal( original: KeyingScheme<H, I>, new: KeyingScheme<N, I> ) -> Self
Trait Implementations§
Auto Trait Implementations§
impl<H, N, I> RefUnwindSafe for ChangeHeaderKey<H, N, I>where H: RefUnwindSafe, I: RefUnwindSafe, N: RefUnwindSafe,
impl<H, N, I> Send for ChangeHeaderKey<H, N, I>where H: Send + Sync, I: Send, N: Send + Sync,
impl<H, N, I> Sync for ChangeHeaderKey<H, N, I>where H: Send + Sync, I: Sync, N: Send + Sync,
impl<H, N, I> Unpin for ChangeHeaderKey<H, N, I>where I: Unpin,
impl<H, N, I> UnwindSafe for ChangeHeaderKey<H, N, I>where H: RefUnwindSafe, I: UnwindSafe, N: RefUnwindSafe,
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