[]Struct keychain_services::keychain::key::Key

pub struct Key(_);

Object which represents a cryptographic key.

Wrapper for the SecKey/SecKeyRef types: https://developer.apple.com/documentation/security/seckeyref

Methods

impl Key
[src]

Find a Key in the keyring using the given ItemQuery.

Wrapper for SecItemCopyMatching. See: https://developer.apple.com/documentation/security/1398306-secitemcopymatching

Get the AttrApplicationLabel for this Key.

Get the AttrApplicationTag for this Key.

Get the AttrLabel for this Key.

Create a cryptographic signature of the given data using this key.

Wrapper for the SecKeyCreateSignature function. See: https://developer.apple.com/documentation/security/1643916-seckeycreatesignature

Export this key as an external representation.

If the key is not exportable the operation will fail (e.g. if it was generated inside of the Secure Enclave, or if the "Extractable" flag is set to NO).

The data returned depends on the key type:

  • RSA: PKCS#1 format
  • EC: ANSI X9.63 bytestring:
    • Public key: 04 || X || Y
    • Private key: Concatenation of public key with big endian encoding of the secret scalar, i.e. 04 || X || Y || K

All representations use fixed-size integers with leading zeroes.

Wrapper for the SecKeyCopyExternalRepresentation function. See: https://developer.apple.com/documentation/security/1643698-seckeycopyexternalrepresentation

Trait Implementations

impl PartialEq<Key> for Key

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

impl Eq for Key

impl Clone for Key

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

impl Drop for Key

Executes the destructor for this type. Read more

impl Debug for Key
[src]

Formats the value using the given formatter. Read more

impl ConcreteCFType for Key

impl TCFType for Key

The reference type wrapped inside this type.

Returns the object as its concrete TypeRef.

Returns an instance of the object, wrapping the underlying CFTypeRef subclass. Use this when following Core Foundation's "Get Rule". The reference count is bumped. Read more

Returns the object as a raw CFTypeRef. The reference count is not adjusted.

Returns an instance of the object, wrapping the underlying CFTypeRef subclass. Use this when following Core Foundation's "Create Rule". The reference count is not bumped. Read more

Returns the type ID for this class.

Returns the object as a wrapped CFType. The reference count is incremented by one.

Returns the object as a wrapped CFType. Consumes self and avoids changing the reference count. Read more

Returns the reference count of the object. It is unwise to do anything other than test whether the return value of this method is greater than zero. Read more

Returns the type ID of this object.

Writes a debugging version of this object on standard error.

Returns true if this value is an instance of another type.

impl<'a> ToVoid<Key> for &'a Key

impl ToVoid<Key> for Key

impl ToVoid<Key> for CFTypeRef

Auto Trait Implementations

impl !Send for Key

impl !Sync for Key

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

recently added

Uses borrowed data to replace owned data, usually by cloning. Read more

impl<T> From for T
[src]

Performs the conversion.

impl<T, U> Into for T where
    U: From<T>, 
[src]

Performs the conversion.

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Borrow for T where
    T: ?Sized
[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut for T where
    T: ?Sized
[src]

Mutably borrows from an owned value. Read more

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Any for T where
    T: 'static + ?Sized
[src]

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

impl<T> FromVoid for T where
    T: TCFType, 

impl<T> FromMutVoid for T where
    T: TCFType,