#[non_exhaustive]pub struct CrossSigningKey {
pub user_id: OwnedUserId,
pub usage: Vec<KeyUsage>,
pub keys: BTreeMap<OwnedCrossSigningKeyId, String>,
pub signatures: CrossSigningOrDeviceSignatures,
}
Expand description
A cross-signing key.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.user_id: OwnedUserId
The ID of the user the key belongs to.
usage: Vec<KeyUsage>
What the key is used for.
keys: BTreeMap<OwnedCrossSigningKeyId, String>
The public key.
The object must have exactly one property.
signatures: CrossSigningOrDeviceSignatures
Signatures of the key.
The master key should be signed by the device key and can be signed by other users’ user-signing key. The user-signing and self-signing keys must be signed by the master key.
Only optional for the master key.
Implementations§
Source§impl CrossSigningKey
impl CrossSigningKey
Sourcepub fn new(
user_id: OwnedUserId,
usage: Vec<KeyUsage>,
keys: BTreeMap<OwnedCrossSigningKeyId, String>,
signatures: CrossSigningOrDeviceSignatures,
) -> Self
pub fn new( user_id: OwnedUserId, usage: Vec<KeyUsage>, keys: BTreeMap<OwnedCrossSigningKeyId, String>, signatures: CrossSigningOrDeviceSignatures, ) -> Self
Creates a new CrossSigningKey
with the given user ID, usage, keys and signatures.
Trait Implementations§
Source§impl Clone for CrossSigningKey
impl Clone for CrossSigningKey
Source§fn clone(&self) -> CrossSigningKey
fn clone(&self) -> CrossSigningKey
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for CrossSigningKey
impl Debug for CrossSigningKey
Source§impl<'de> Deserialize<'de> for CrossSigningKey
impl<'de> Deserialize<'de> for CrossSigningKey
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
Auto Trait Implementations§
impl Freeze for CrossSigningKey
impl RefUnwindSafe for CrossSigningKey
impl Send for CrossSigningKey
impl Sync for CrossSigningKey
impl Unpin for CrossSigningKey
impl UnwindSafe for CrossSigningKey
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