aws_sdk_paymentcryptographydata/client/generate_pin_data.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`GeneratePinData`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`generation_key_identifier(impl Into<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::generation_key_identifier) / [`set_generation_key_identifier(Option<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_generation_key_identifier):<br>required: **true**<br><p>The <code>keyARN</code> of the PEK that Amazon Web Services Payment Cryptography uses for pin data generation.</p><br>
7 /// - [`encryption_key_identifier(impl Into<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::encryption_key_identifier) / [`set_encryption_key_identifier(Option<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_encryption_key_identifier):<br>required: **true**<br><p>The <code>keyARN</code> of the PEK that Amazon Web Services Payment Cryptography uses to encrypt the PIN Block. For ECDH, it is the <code>keyARN</code> of the asymmetric ECC key.</p><br>
8 /// - [`generation_attributes(PinGenerationAttributes)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::generation_attributes) / [`set_generation_attributes(Option<PinGenerationAttributes>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_generation_attributes):<br>required: **true**<br><p>The attributes and values to use for PIN, PVV, or PIN Offset generation.</p><br>
9 /// - [`pin_data_length(i32)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::pin_data_length) / [`set_pin_data_length(Option<i32>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_pin_data_length):<br>required: **false**<br><p>The length of PIN under generation.</p><br>
10 /// - [`primary_account_number(impl Into<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::primary_account_number) / [`set_primary_account_number(Option<String>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_primary_account_number):<br>required: **true**<br><p>The Primary Account Number (PAN), a unique identifier for a payment credit or debit card that associates the card with a specific account holder.</p><br>
11 /// - [`pin_block_format(PinBlockFormatForPinData)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::pin_block_format) / [`set_pin_block_format(Option<PinBlockFormatForPinData>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_pin_block_format):<br>required: **true**<br><p>The PIN encoding format for pin data generation as specified in ISO 9564. Amazon Web Services Payment Cryptography supports <code>ISO_Format_0</code> and <code>ISO_Format_3</code>.</p> <p>The <code>ISO_Format_0</code> PIN block format is equivalent to the ANSI X9.8, VISA-1, and ECI-1 PIN block formats. It is similar to a VISA-4 PIN block format. It supports a PIN from 4 to 12 digits in length.</p> <p>The <code>ISO_Format_3</code> PIN block format is the same as <code>ISO_Format_0</code> except that the fill digits are random values from 10 to 15.</p><br>
12 /// - [`encryption_wrapped_key(WrappedKey)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::encryption_wrapped_key) / [`set_encryption_wrapped_key(Option<WrappedKey>)`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::set_encryption_wrapped_key):<br>required: **false**<br><p>Parameter information of a WrappedKeyBlock for encryption key exchange.</p><br>
13 /// - On success, responds with [`GeneratePinDataOutput`](crate::operation::generate_pin_data::GeneratePinDataOutput) with field(s):
14 /// - [`generation_key_arn(String)`](crate::operation::generate_pin_data::GeneratePinDataOutput::generation_key_arn): <p>The <code>keyARN</code> of the pin data generation key that Amazon Web Services Payment Cryptography uses for PIN, PVV or PIN Offset generation.</p>
15 /// - [`generation_key_check_value(String)`](crate::operation::generate_pin_data::GeneratePinDataOutput::generation_key_check_value): <p>The key check value (KCV) of the encryption key. The KCV is used to check if all parties holding a given key have the same key or to detect that a key has changed.</p> <p>Amazon Web Services Payment Cryptography computes the KCV according to the CMAC specification.</p>
16 /// - [`encryption_key_arn(String)`](crate::operation::generate_pin_data::GeneratePinDataOutput::encryption_key_arn): <p>The <code>keyARN</code> of the PEK that Amazon Web Services Payment Cryptography uses for encrypted pin block generation. For ECDH, it is the <code>keyARN</code> of the asymmetric ECC key.</p>
17 /// - [`encryption_key_check_value(String)`](crate::operation::generate_pin_data::GeneratePinDataOutput::encryption_key_check_value): <p>The key check value (KCV) of the encryption key. The KCV is used to check if all parties holding a given key have the same key or to detect that a key has changed.</p> <p>Amazon Web Services Payment Cryptography computes the KCV according to the CMAC specification.</p>
18 /// - [`encrypted_pin_block(String)`](crate::operation::generate_pin_data::GeneratePinDataOutput::encrypted_pin_block): <p>The PIN block encrypted under PEK from Amazon Web Services Payment Cryptography. The encrypted PIN block is a composite of PAN (Primary Account Number) and PIN (Personal Identification Number), generated in accordance with ISO 9564 standard.</p>
19 /// - [`pin_data(Option<PinData>)`](crate::operation::generate_pin_data::GeneratePinDataOutput::pin_data): <p>The attributes and values Amazon Web Services Payment Cryptography uses for pin data generation.</p>
20 /// - On failure, responds with [`SdkError<GeneratePinDataError>`](crate::operation::generate_pin_data::GeneratePinDataError)
21 pub fn generate_pin_data(&self) -> crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder {
22 crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::new(self.handle.clone())
23 }
24}