[−][src]Struct safe_crypto::SecretEncryptKey
Reference counted secret encryption key used to decrypt data previously encrypted with
PublicEncryptKey
.
Use gen_encrypt_keypair()
to generate a public and secret key pair.
Methods
impl SecretEncryptKey
[src]
pub fn from_bytes(secret_key: [u8; 32]) -> Self
[src]
Construct secret key from given bytes. Useful when secret key was serialised before.
pub fn shared_secret(&self, their_pk: &PublicEncryptKey) -> SharedSecretKey
[src]
Computes a shared secret from our secret key and the recipient's public key.
pub fn into_bytes(self) -> [u8; 32]
[src]
Get the inner secret key representation.
pub fn anonymously_decrypt<T>(
&self,
ciphertext: &[u8],
my_pk: &PublicEncryptKey
) -> Result<T, Error> where
T: Serialize + DeserializeOwned,
[src]
&self,
ciphertext: &[u8],
my_pk: &PublicEncryptKey
) -> Result<T, Error> where
T: Serialize + DeserializeOwned,
Decrypts serialised ciphertext
encrypted using anonymous encryption.
With anonymous encryption we won't be able to verify the sender and tell who sent the ciphertext.
Returns deserialised type T
in case of success.
Can return Error
in case of a deserialisation error, if the ciphertext is
not valid, or if it can not be decrypted.
pub fn anonymously_decrypt_bytes(
&self,
ciphertext: &[u8],
my_pk: &PublicEncryptKey
) -> Result<Vec<u8>, Error>
[src]
&self,
ciphertext: &[u8],
my_pk: &PublicEncryptKey
) -> Result<Vec<u8>, Error>
Decrypts bytestring ciphertext
encrypted using anonymous encryption.
With anonymous encryption we won't be able to verify the sender and tell who sent the ciphertext.
Returns plaintext in case of success.
Can return Error
if the ciphertext is not valid or if it can not be decrypted.
Trait Implementations
impl Eq for SecretEncryptKey
[src]
impl Clone for SecretEncryptKey
[src]
fn clone(&self) -> SecretEncryptKey
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl PartialEq<SecretEncryptKey> for SecretEncryptKey
[src]
fn eq(&self, other: &SecretEncryptKey) -> bool
[src]
fn ne(&self, other: &SecretEncryptKey) -> bool
[src]
impl Debug for SecretEncryptKey
[src]
impl Serialize for SecretEncryptKey
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl<'de> Deserialize<'de> for SecretEncryptKey
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
Auto Trait Implementations
impl Send for SecretEncryptKey
impl Unpin for SecretEncryptKey
impl Sync for SecretEncryptKey
impl RefUnwindSafe for SecretEncryptKey
impl UnwindSafe for SecretEncryptKey
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> From<T> for T
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> DebugAny for T where
T: Any + Debug,
T: Any + Debug,
impl<T> CloneAny for T where
T: Clone + Any,
T: Clone + Any,
fn clone_any(&self) -> Box<dyn CloneAny + 'static>
fn clone_any_send(&self) -> Box<dyn CloneAny + 'static + Send> where
T: Send,
T: Send,
fn clone_any_sync(&self) -> Box<dyn CloneAny + 'static + Sync> where
T: Sync,
T: Sync,
fn clone_any_send_sync(&self) -> Box<dyn CloneAny + 'static + Sync + Send> where
T: Send + Sync,
T: Send + Sync,
impl<T> UnsafeAny for T where
T: Any,
T: Any,