#[non_exhaustive]
pub struct Key {
Show 13 fields pub key_arn: String, pub key_attributes: Option<KeyAttributes>, pub key_check_value: String, pub key_check_value_algorithm: KeyCheckValueAlgorithm, pub enabled: bool, pub exportable: bool, pub key_state: KeyState, pub key_origin: KeyOrigin, pub create_timestamp: DateTime, pub usage_start_timestamp: Option<DateTime>, pub usage_stop_timestamp: Option<DateTime>, pub delete_pending_timestamp: Option<DateTime>, pub delete_timestamp: Option<DateTime>,
}
Expand description

Metadata about an Amazon Web Services Payment Cryptography 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.
§key_arn: String

The Amazon Resource Name (ARN) of the key.

§key_attributes: Option<KeyAttributes>

The role of the key, the algorithm it supports, and the cryptographic operations allowed with the key. This data is immutable after the key is created.

§key_check_value: String

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.

§key_check_value_algorithm: KeyCheckValueAlgorithm

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

§enabled: bool

Specifies whether the key is enabled.

§exportable: bool

Specifies whether the key is exportable. This data is immutable after the key is created.

§key_state: KeyState

The state of key that is being created or deleted.

§key_origin: KeyOrigin

The source of the key material. For keys created within Amazon Web Services Payment Cryptography, the value is AWS_PAYMENT_CRYPTOGRAPHY. For keys imported into Amazon Web Services Payment Cryptography, the value is EXTERNAL.

§create_timestamp: DateTime

The date and time when the key was created.

§usage_start_timestamp: Option<DateTime>

The date and time after which Amazon Web Services Payment Cryptography will start using the key material for cryptographic operations.

§usage_stop_timestamp: Option<DateTime>

The date and time after which Amazon Web Services Payment Cryptography will stop using the key material for cryptographic operations.

§delete_pending_timestamp: Option<DateTime>

The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when KeyState is DELETE_PENDING and the key is scheduled for deletion.

§delete_timestamp: Option<DateTime>

The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when when the KeyState is DELETE_COMPLETE and the Amazon Web Services Payment Cryptography key is deleted.

Implementations§

source§

impl Key

source

pub fn key_arn(&self) -> &str

The Amazon Resource Name (ARN) of the key.

source

pub fn key_attributes(&self) -> Option<&KeyAttributes>

The role of the key, the algorithm it supports, and the cryptographic operations allowed with the key. This data is immutable after the key is created.

source

pub fn key_check_value(&self) -> &str

The key check value (KCV) is used to check if all parties holding a given key have the same key or to detect that a key has changed.

source

pub fn key_check_value_algorithm(&self) -> &KeyCheckValueAlgorithm

The algorithm that Amazon Web Services Payment Cryptography uses to calculate the key check value (KCV). It is used to validate the key integrity.

For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of zero, with the key to be checked and retaining the 3 highest order bytes of the encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where the input data is 16 bytes of zero and retaining the 3 highest order bytes of the encrypted result.

source

pub fn enabled(&self) -> bool

Specifies whether the key is enabled.

source

pub fn exportable(&self) -> bool

Specifies whether the key is exportable. This data is immutable after the key is created.

source

pub fn key_state(&self) -> &KeyState

The state of key that is being created or deleted.

source

pub fn key_origin(&self) -> &KeyOrigin

The source of the key material. For keys created within Amazon Web Services Payment Cryptography, the value is AWS_PAYMENT_CRYPTOGRAPHY. For keys imported into Amazon Web Services Payment Cryptography, the value is EXTERNAL.

source

pub fn create_timestamp(&self) -> &DateTime

The date and time when the key was created.

source

pub fn usage_start_timestamp(&self) -> Option<&DateTime>

The date and time after which Amazon Web Services Payment Cryptography will start using the key material for cryptographic operations.

source

pub fn usage_stop_timestamp(&self) -> Option<&DateTime>

The date and time after which Amazon Web Services Payment Cryptography will stop using the key material for cryptographic operations.

source

pub fn delete_pending_timestamp(&self) -> Option<&DateTime>

The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when KeyState is DELETE_PENDING and the key is scheduled for deletion.

source

pub fn delete_timestamp(&self) -> Option<&DateTime>

The date and time after which Amazon Web Services Payment Cryptography will delete the key. This value is present only when when the KeyState is DELETE_COMPLETE and the Amazon Web Services Payment Cryptography key is deleted.

source§

impl Key

source

pub fn builder() -> KeyBuilder

Creates a new builder-style object to manufacture Key.

Trait Implementations§

source§

impl Clone for Key

source§

fn clone(&self) -> Key

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Key

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for Key

source§

fn eq(&self, other: &Key) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for Key

Auto Trait Implementations§

§

impl RefUnwindSafe for Key

§

impl Send for Key

§

impl Sync for Key

§

impl Unpin for Key

§

impl UnwindSafe for Key

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

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

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more