Struct ring::aead::chacha20_poly1305_openssh::OpeningKey [−][src]
A key for opening packets.
Implementations
impl OpeningKey
[src]
pub fn new(key_material: &[u8; 64]) -> OpeningKey
[src]
Constructs a new OpeningKey
.
pub fn decrypt_packet_length(
&self,
sequence_number: u32,
encrypted_packet_length: [u8; 4]
) -> [u8; 4]
[src]
&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]
&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 RefUnwindSafe for OpeningKey
impl Send for OpeningKey
impl Sync for OpeningKey
impl Unpin for OpeningKey
impl UnwindSafe for OpeningKey
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
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.
pub 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>,