[−][src]Struct ring::aead::chacha20_poly1305_openssh::OpeningKey
A key for opening packets.
Methods
impl OpeningKey[src]
impl OpeningKeypub fn new(key_material: &[u8; 64]) -> OpeningKey[src]
pub fn new(key_material: &[u8; 64]) -> OpeningKeyConstructs a new OpeningKey.
pub fn decrypt_packet_length(
&self,
sequence_number: u32,
encrypted_packet_length: [u8; 4]
) -> [u8; 4][src]
pub fn decrypt_packet_length(
&self,
sequence_number: u32,
encrypted_packet_length: [u8; 4]
) -> [u8; 4]Returns the decrypted, but unauthenticated, packet length.
Importantly, the result won't be authenticated until open_in_place is
called.
pub fn open_in_place<'a>(
&self,
sequence_number: u32,
ciphertext_in_plaintext_out: &'a mut [u8],
tag: &[u8; 16]
) -> Result<&'a [u8], Unspecified>[src]
pub fn open_in_place<'a>(
&self,
sequence_number: u32,
ciphertext_in_plaintext_out: &'a mut [u8],
tag: &[u8; 16]
) -> Result<&'a [u8], Unspecified>Opens (authenticates and decrypts) a packet.
ciphertext_in_plaintext_out must be of the form
encrypted_packet_length||ciphertext where ciphertext is the
encrypted plaintext. When the function succeeds the ciphertext is
replaced by the plaintext and the result is Ok(plaintext), where
plaintext is &ciphertext_in_plaintext_out[PACKET_LENGTH_LEN..];
otherwise the contents of ciphertext_in_plaintext_out are unspecified
and must not be used.
Auto Trait Implementations
impl Send for OpeningKey
impl Send for OpeningKeyimpl Sync for OpeningKey
impl Sync for OpeningKeyBlanket Implementations
impl<T, U> TryFrom for T where
T: From<U>, [src]
impl<T, U> TryFrom for T where
T: From<U>, type Error = !
🔬 This is a nightly-only experimental API. (
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>impl<T> From for T[src]
impl<T> From for Timpl<T, U> TryInto for T where
U: TryFrom<T>, [src]
impl<T, U> TryInto for T where
U: TryFrom<T>, type Error = <U as TryFrom<T>>::Error
🔬 This is a nightly-only experimental API. (
try_from)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>impl<T, U> Into for T where
U: From<T>, [src]
impl<T, U> Into for T where
U: From<T>, impl<T> Borrow for T where
T: ?Sized, [src]
impl<T> Borrow for T where
T: ?Sized, impl<T> BorrowMut for T where
T: ?Sized, [src]
impl<T> BorrowMut for T where
T: ?Sized, fn borrow_mut(&mut self) -> &mut T[src]
fn borrow_mut(&mut self) -> &mut Timpl<T> Any for T where
T: 'static + ?Sized, [src]
impl<T> Any for T where
T: 'static + ?Sized, fn get_type_id(&self) -> TypeId[src]
fn get_type_id(&self) -> TypeId