pub struct PrecomputedKey(pub [u8; 32]);Expand description
Applications that send several messages to the same receiver can gain speed by
splitting seal() into two steps, precompute() and seal_precomputed().
Similarly, applications that receive several messages from the same sender can gain
speed by splitting open() into two steps, precompute() and open_precomputed().
When a PrecomputedKey goes out of scope its contents will be zeroed out
Tuple Fields§
§0: [u8; 32]Implementations§
Source§impl PrecomputedKey
impl PrecomputedKey
Sourcepub fn from_slice(bs: &[u8]) -> Option<PrecomputedKey>
pub fn from_slice(bs: &[u8]) -> Option<PrecomputedKey>
from_slice() creates an object from a byte slice
This function will fail and return None if the length of
the byte-slice isn’t equal to the length of the object
Trait Implementations§
Source§impl AsRef<[u8]> for PrecomputedKey
impl AsRef<[u8]> for PrecomputedKey
Source§impl Clone for PrecomputedKey
impl Clone for PrecomputedKey
Source§fn clone(&self) -> PrecomputedKey
fn clone(&self) -> PrecomputedKey
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PrecomputedKey
impl Debug for PrecomputedKey
Source§impl<'de> Deserialize<'de> for PrecomputedKey
Available on crate feature serde only.
impl<'de> Deserialize<'de> for PrecomputedKey
serde only.Source§fn deserialize<D>(
deserializer: D,
) -> Result<PrecomputedKey, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<PrecomputedKey, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
Source§impl Drop for PrecomputedKey
impl Drop for PrecomputedKey
Source§impl Index<Range<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
impl Index<Range<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
WARNING: it might be tempting to do comparisons on objects
by using x[a..b] == y[a..b]. This will open up for timing attacks
when comparing for example authenticator tags. Because of this only
use the comparison functions exposed by the sodiumoxide API.
Source§impl Index<RangeFrom<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
impl Index<RangeFrom<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
WARNING: it might be tempting to do comparisons on objects
by using x[a..] == y[a..]. This will open up for timing attacks
when comparing for example authenticator tags. Because of this only
use the comparison functions exposed by the sodiumoxide API.
Source§impl Index<RangeFull> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
impl Index<RangeFull> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
WARNING: it might be tempting to do comparisons on objects
by using x[] == y[]. This will open up for timing attacks
when comparing for example authenticator tags. Because of this only
use the comparison functions exposed by the sodiumoxide API.
Source§impl Index<RangeTo<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
impl Index<RangeTo<usize>> for PrecomputedKey
Allows a user to access the byte contents of an object as a slice.
WARNING: it might be tempting to do comparisons on objects
by using x[..b] == y[..b]. This will open up for timing attacks
when comparing for example authenticator tags. Because of this only
use the comparison functions exposed by the sodiumoxide API.
Source§impl PartialEq for PrecomputedKey
impl PartialEq for PrecomputedKey
Source§impl Serialize for PrecomputedKey
Available on crate feature serde only.
impl Serialize for PrecomputedKey
serde only.