#[non_exhaustive]pub struct Key {Show 14 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>,
pub derive_key_usage: Option<DeriveKeyUsage>,
}
Expand description
Metadata about an Amazon Web Services Payment Cryptography key.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
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.
derive_key_usage: Option<DeriveKeyUsage>
The cryptographic usage of an ECDH derived key as defined in section A.5.2 of the TR-31 spec.
Implementations§
Source§impl Key
impl Key
Sourcepub fn key_attributes(&self) -> Option<&KeyAttributes>
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.
Sourcepub fn key_check_value(&self) -> &str
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.
Sourcepub fn key_check_value_algorithm(&self) -> &KeyCheckValueAlgorithm
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.
Sourcepub fn exportable(&self) -> bool
pub fn exportable(&self) -> bool
Specifies whether the key is exportable. This data is immutable after the key is created.
Sourcepub fn key_origin(&self) -> &KeyOrigin
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
.
Sourcepub fn create_timestamp(&self) -> &DateTime
pub fn create_timestamp(&self) -> &DateTime
The date and time when the key was created.
Sourcepub fn usage_start_timestamp(&self) -> Option<&DateTime>
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.
Sourcepub fn usage_stop_timestamp(&self) -> Option<&DateTime>
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.
Sourcepub fn delete_pending_timestamp(&self) -> Option<&DateTime>
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.
Sourcepub fn delete_timestamp(&self) -> Option<&DateTime>
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.
Sourcepub fn derive_key_usage(&self) -> Option<&DeriveKeyUsage>
pub fn derive_key_usage(&self) -> Option<&DeriveKeyUsage>
The cryptographic usage of an ECDH derived key as defined in section A.5.2 of the TR-31 spec.
Trait Implementations§
impl StructuralPartialEq for Key
Auto Trait Implementations§
impl Freeze for Key
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> 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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 moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);