pub struct TranscipheringServerKey { /* private fields */ }Expand description
Key material of the transciphering subsystem.
Taking this rather than a plain OprfServerKey is what keeps the ciphers from drawing their
key material from the general purpose OPRF key or, through it, from the compute key.
Implementations§
Source§impl TranscipheringServerKey
impl TranscipheringServerKey
pub fn new(sk: &TranscipheringPrivateKey, target_ck: &ClientKey) -> Result<Self>
pub fn oprf_key(&self) -> &OprfServerKey
pub fn from_raw_parts(oprf_key: OprfServerKey) -> Self
pub fn into_raw_parts(self) -> OprfServerKey
Trait Implementations§
Source§impl Clone for TranscipheringServerKey
impl Clone for TranscipheringServerKey
Source§fn clone(&self) -> TranscipheringServerKey
fn clone(&self) -> TranscipheringServerKey
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl<'de> Deserialize<'de> for TranscipheringServerKey
impl<'de> Deserialize<'de> for TranscipheringServerKey
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 Named for TranscipheringServerKey
impl Named for TranscipheringServerKey
Source§impl ParameterSetConformant for TranscipheringServerKey
The key bootstraps into the compute key, so it is checked against the compute parameters, plus
the OPRF parameters it was generated with.
impl ParameterSetConformant for TranscipheringServerKey
The key bootstraps into the compute key, so it is checked against the compute parameters, plus the OPRF parameters it was generated with.
A key that does not match them makes the pseudo random generation it is used for panic.
type ParameterSet = OprfKeyConformanceParams
fn is_conformant(&self, parameter_set: &Self::ParameterSet) -> bool
Source§impl Serialize for TranscipheringServerKey
impl Serialize for TranscipheringServerKey
Source§impl Unversionize for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl Unversionize for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
Source§fn unversionize(
versioned: Self::VersionedOwned,
) -> Result<Self, UnversionizeError>
fn unversionize( versioned: Self::VersionedOwned, ) -> Result<Self, UnversionizeError>
Creates an object from a versioned enum, and eventually upgrades from previous
variants.
Source§impl UnversionizeVec for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl UnversionizeVec for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
fn unversionize_vec( versioned: Self::VersionedVec, ) -> Result<Vec<Self>, UnversionizeError>
Source§impl Version for TranscipheringServerKey
impl Version for TranscipheringServerKey
Source§impl Versionize for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl Versionize for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
Source§type Versioned<'vers> = <TranscipheringServerKeyVersions as VersionsDispatch<TranscipheringServerKey>>::Ref<'vers>
type Versioned<'vers> = <TranscipheringServerKeyVersions as VersionsDispatch<TranscipheringServerKey>>::Ref<'vers>
The equivalent versioned type. It should have a variant for each version.
It may own the underlying data or only hold a read-only reference to it.
Source§fn versionize(&self) -> Self::Versioned<'_>
fn versionize(&self) -> Self::Versioned<'_>
Wraps the object into a versioned enum with a variant for each version. This will
use references on the underlying types if possible.
Source§impl VersionizeOwned for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl VersionizeOwned for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
type VersionedOwned = <TranscipheringServerKeyVersions as VersionsDispatch<TranscipheringServerKey>>::Owned
Source§fn versionize_owned(self) -> Self::VersionedOwned
fn versionize_owned(self) -> Self::VersionedOwned
Wraps the object into a versioned enum with a variant for each version. This will
clone the underlying types.
Source§impl VersionizeSlice for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl VersionizeSlice for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
type VersionedSlice<'vers> = Vec<<TranscipheringServerKey as Versionize>::Versioned<'vers>>
fn versionize_slice(slice: &[Self]) -> Self::VersionedSlice<'_>
Source§impl VersionizeVec for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
impl VersionizeVec for TranscipheringServerKeywhere
TranscipheringServerKeyVersions: VersionsDispatch<Self>,
type VersionedVec = Vec<<TranscipheringServerKey as VersionizeOwned>::VersionedOwned>
fn versionize_vec(vec: Vec<Self>) -> Self::VersionedVec
Auto Trait Implementations§
impl Freeze for TranscipheringServerKey
impl RefUnwindSafe for TranscipheringServerKey
impl Send for TranscipheringServerKey
impl Sync for TranscipheringServerKey
impl Unpin for TranscipheringServerKey
impl UnsafeUnpin for TranscipheringServerKey
impl UnwindSafe for TranscipheringServerKey
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more