pub enum OrganizationSharedKey {
V1(UnsignedSharedKey),
}Expand description
The organization key, shared with one member.
Variants§
V1(UnsignedSharedKey)
The organization key encapsulated to the member’s public key.
Encapsulation does not authenticate the sender. Anyone who knows the member’s public key can make one, and a swapped public key hands the organization key to whoever holds the matching private key.
Implementations§
Sourcepub fn make<Ids: KeySlotIds>(
organization_key: Ids::Symmetric,
member_public_key: &PublicKey,
trust_proof: &TrustProof<Ids>,
ctx: &KeyStoreContext<'_, Ids>,
) -> Result<Self, OrganizationSharedKeyMakeError>
pub fn make<Ids: KeySlotIds>( organization_key: Ids::Symmetric, member_public_key: &PublicKey, trust_proof: &TrustProof<Ids>, ctx: &KeyStoreContext<'_, Ids>, ) -> Result<Self, OrganizationSharedKeyMakeError>
Makes an organization shared key for a member, after the member’s public key passes
trust_proof.
Sourcepub fn make_untrusted<Ids: KeySlotIds>(
organization_key: Ids::Symmetric,
member_public_key: &PublicKey,
ctx: &KeyStoreContext<'_, Ids>,
) -> Result<Self, OrganizationSharedKeyMakeUntrustedError>
pub fn make_untrusted<Ids: KeySlotIds>( organization_key: Ids::Symmetric, member_public_key: &PublicKey, ctx: &KeyStoreContext<'_, Ids>, ) -> Result<Self, OrganizationSharedKeyMakeUntrustedError>
Makes a V1 organization shared key for a member, without verifying the member’s public key.
Only for V1 flows that have no way to verify the public key. A swapped public key hands the organization key to whoever holds the matching private key.
Sourcepub fn unseal<Ids: KeySlotIds>(
&self,
own_private_key: Ids::Private,
ctx: &mut KeyStoreContext<'_, Ids>,
) -> Result<Ids::Symmetric, OrganizationSharedKeyUnsealError>
pub fn unseal<Ids: KeySlotIds>( &self, own_private_key: Ids::Private, ctx: &mut KeyStoreContext<'_, Ids>, ) -> Result<Ids::Symmetric, OrganizationSharedKeyUnsealError>
Opens the organization key with the member’s own private key, returning the id it was added to the context under.
Trait Implementations§
Source§fn from(value: &OrganizationSharedKey) -> Self
fn from(value: &OrganizationSharedKey) -> Self
Auto Trait Implementations§
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T, UT> HandleAlloc<UT> for T
impl<T, UT> HandleAlloc<UT> for T
§fn new_handle(value: Arc<T>) -> Handle
fn new_handle(value: Arc<T>) -> Handle
§unsafe fn clone_handle(handle: Handle) -> Handle
unsafe fn clone_handle(handle: Handle) -> Handle
§unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
unsafe fn consume_handle(handle: Handle) -> Arc<T> ⓘ
Arc<> Read more§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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> ⓘ
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> ⓘ
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