1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`GeneratePinData`](crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`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): <p>The <code>keyARN</code> of the PEK that Amazon Web Services Payment Cryptography uses for pin data generation.</p>
    ///   - [`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): <p>The <code>keyARN</code> of the PEK that Amazon Web Services Payment Cryptography uses to encrypt the PIN Block.</p>
    ///   - [`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): <p>The attributes and values to use for PIN, PVV, or PIN Offset generation.</p>
    ///   - [`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): <p>The length of PIN under generation.</p>
    ///   - [`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): <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>
    ///   - [`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): <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>
    /// - On success, responds with [`GeneratePinDataOutput`](crate::operation::generate_pin_data::GeneratePinDataOutput) with field(s):
    ///   - [`generation_key_arn(Option<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>
    ///   - [`generation_key_check_value(Option<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. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.</p>
    ///   - [`encryption_key_arn(Option<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.</p>
    ///   - [`encryption_key_check_value(Option<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. Amazon Web Services Payment Cryptography calculates the KCV by using standard algorithms, typically by encrypting 8 or 16 bytes or "00" or "01" and then truncating the result to the first 3 bytes, or 6 hex digits, of the resulting cryptogram.</p>
    ///   - [`encrypted_pin_block(Option<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>
    ///   - [`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>
    /// - On failure, responds with [`SdkError<GeneratePinDataError>`](crate::operation::generate_pin_data::GeneratePinDataError)
    pub fn generate_pin_data(&self) -> crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder {
        crate::operation::generate_pin_data::builders::GeneratePinDataFluentBuilder::new(self.handle.clone())
    }
}