pub enum KeyPurpose {
Commits,
Metadata,
Content,
Index,
Stash,
Staged,
ScopedRead(String),
}Expand description
Key purposes for derivation.
Each purpose produces a cryptographically independent key from the same root key via HKDF with a unique info string.
Variants§
Commits
Key for encrypting commits.
Metadata
Key for encrypting metadata bundles.
Content
Key for encrypting content (file data).
Index
Key for encrypting the index.
Stash
Key for encrypting stash entries.
Staged
Key for encrypting staged blobs.
ScopedRead(String)
Scoped read key for limited access (scope is a path or branch pattern).
Trait Implementations§
Source§impl Clone for KeyPurpose
impl Clone for KeyPurpose
Source§fn clone(&self) -> KeyPurpose
fn clone(&self) -> KeyPurpose
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for KeyPurpose
impl Debug for KeyPurpose
Source§impl PartialEq for KeyPurpose
impl PartialEq for KeyPurpose
impl Eq for KeyPurpose
impl StructuralPartialEq for KeyPurpose
Auto Trait Implementations§
impl Freeze for KeyPurpose
impl RefUnwindSafe for KeyPurpose
impl Send for KeyPurpose
impl Sync for KeyPurpose
impl Unpin for KeyPurpose
impl UnsafeUnpin for KeyPurpose
impl UnwindSafe for KeyPurpose
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more