pub enum CryptScheme {
Native,
Php,
}Expand description
Which payload envelope this application writes.
Selected by APP_CIPHER, and deliberately a closed set: writing the
wrong envelope is not a preference that degrades gracefully, it is a
column nothing can read.
use rainier_crypt::CryptScheme;
use rainier_support::Setting;
assert_eq!(CryptScheme::parse("php").unwrap(), CryptScheme::Php);
assert!(CryptScheme::parse("hpp").is_err());Variants§
Native
Rainier’s own: a self-describing, URL-safe payload naming its algorithm and its key.
The default, and what a new application wants — rotation and a cipher change are both possible without re-encrypting anything.
Php
The {iv, value, mac} envelope, for a database PHP already wrote.
A migration position, not a destination — see the module docs.
Implementations§
Trait Implementations§
Source§impl AsRef<str> for CryptScheme
impl AsRef<str> for CryptScheme
Source§impl Clone for CryptScheme
impl Clone for CryptScheme
impl Copy for CryptScheme
Source§impl Debug for CryptScheme
impl Debug for CryptScheme
Source§impl Default for CryptScheme
impl Default for CryptScheme
Source§impl<'de> Deserialize<'de> for CryptScheme
impl<'de> Deserialize<'de> for CryptScheme
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Display for CryptScheme
impl Display for CryptScheme
impl Eq for CryptScheme
Source§impl FromStr for CryptScheme
impl FromStr for CryptScheme
Source§impl Hash for CryptScheme
impl Hash for CryptScheme
Source§impl PartialEq for CryptScheme
impl PartialEq for CryptScheme
Source§impl Serialize for CryptScheme
impl Serialize for CryptScheme
Source§impl Setting for CryptScheme
impl Setting for CryptScheme
impl StructuralPartialEq for CryptScheme
Auto Trait Implementations§
impl Freeze for CryptScheme
impl RefUnwindSafe for CryptScheme
impl Send for CryptScheme
impl Sync for CryptScheme
impl Unpin for CryptScheme
impl UnsafeUnpin for CryptScheme
impl UnwindSafe for CryptScheme
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