Skip to main content

aws_sdk_paymentcryptographydata/client/
generate_auth_request_cryptogram.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 [`GenerateAuthRequestCryptogram`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`key_identifier(impl Into<String>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::key_identifier) / [`set_key_identifier(Option<String>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::set_key_identifier):<br>required: **true**<br><p>The <code>keyARN</code> of the IMK-AC (TR31_E0_EMV_MKEY_APP_CRYPTOGRAMS) that Amazon Web Services Payment Cryptography uses to generate the ARQC.</p><br>
7    ///   - [`transaction_data(impl Into<String>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::transaction_data) / [`set_transaction_data(Option<String>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::set_transaction_data):<br>required: **true**<br><p>The transaction data that Amazon Web Services Payment Cryptography uses for ARQC generation. The same transaction data is used for ARQC verification by the issuer using <code>VerifyAuthRequestCryptogram</code>.</p><br>
8    ///   - [`major_key_derivation_mode(MajorKeyDerivationMode)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::major_key_derivation_mode) / [`set_major_key_derivation_mode(Option<MajorKeyDerivationMode>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::set_major_key_derivation_mode):<br>required: **true**<br><p>The method to use when deriving the major encryption key for ARQC generation within Amazon Web Services Payment Cryptography.</p><br>
9    ///   - [`session_key_derivation_attributes(SessionKeyDerivation)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::session_key_derivation_attributes) / [`set_session_key_derivation_attributes(Option<SessionKeyDerivation>)`](crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::set_session_key_derivation_attributes):<br>required: **true**<br><p>The attributes and values to use for deriving a session key for ARQC generation within Amazon Web Services Payment Cryptography.</p><br>
10    /// - On success, responds with [`GenerateAuthRequestCryptogramOutput`](crate::operation::generate_auth_request_cryptogram::GenerateAuthRequestCryptogramOutput) with field(s):
11    ///   - [`key_arn(String)`](crate::operation::generate_auth_request_cryptogram::GenerateAuthRequestCryptogramOutput::key_arn): <p>The <code>keyARN</code> of the IMK-AC that Amazon Web Services Payment Cryptography uses for ARQC generation.</p>
12    ///   - [`key_check_value(String)`](crate::operation::generate_auth_request_cryptogram::GenerateAuthRequestCryptogramOutput::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>
13    ///   - [`auth_request_cryptogram(String)`](crate::operation::generate_auth_request_cryptogram::GenerateAuthRequestCryptogramOutput::auth_request_cryptogram): <p>The Authorization Request Cryptogram (ARQC) generated by Amazon Web Services Payment Cryptography using the specified key and transaction data.</p>
14    /// - On failure, responds with [`SdkError<GenerateAuthRequestCryptogramError>`](crate::operation::generate_auth_request_cryptogram::GenerateAuthRequestCryptogramError)
15    pub fn generate_auth_request_cryptogram(
16        &self,
17    ) -> crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder {
18        crate::operation::generate_auth_request_cryptogram::builders::GenerateAuthRequestCryptogramFluentBuilder::new(self.handle.clone())
19    }
20}