@aws-sdk/client-payment-cryptography-data 3.349.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +294 -0
  3. package/dist-cjs/PaymentCryptographyData.js +33 -0
  4. package/dist-cjs/PaymentCryptographyDataClient.js +41 -0
  5. package/dist-cjs/commands/DecryptDataCommand.js +47 -0
  6. package/dist-cjs/commands/EncryptDataCommand.js +47 -0
  7. package/dist-cjs/commands/GenerateCardValidationDataCommand.js +47 -0
  8. package/dist-cjs/commands/GenerateMacCommand.js +47 -0
  9. package/dist-cjs/commands/GeneratePinDataCommand.js +47 -0
  10. package/dist-cjs/commands/ReEncryptDataCommand.js +47 -0
  11. package/dist-cjs/commands/TranslatePinDataCommand.js +47 -0
  12. package/dist-cjs/commands/VerifyAuthRequestCryptogramCommand.js +47 -0
  13. package/dist-cjs/commands/VerifyCardValidationDataCommand.js +47 -0
  14. package/dist-cjs/commands/VerifyMacCommand.js +47 -0
  15. package/dist-cjs/commands/VerifyPinDataCommand.js +47 -0
  16. package/dist-cjs/commands/index.js +14 -0
  17. package/dist-cjs/endpoint/EndpointParameters.js +12 -0
  18. package/dist-cjs/endpoint/endpointResolver.js +12 -0
  19. package/dist-cjs/endpoint/ruleset.js +7 -0
  20. package/dist-cjs/index.js +10 -0
  21. package/dist-cjs/models/PaymentCryptographyDataServiceException.js +12 -0
  22. package/dist-cjs/models/index.js +4 -0
  23. package/dist-cjs/models/models_0.js +526 -0
  24. package/dist-cjs/protocols/Aws_restJson1.js +963 -0
  25. package/dist-cjs/runtimeConfig.browser.js +39 -0
  26. package/dist-cjs/runtimeConfig.js +48 -0
  27. package/dist-cjs/runtimeConfig.native.js +15 -0
  28. package/dist-cjs/runtimeConfig.shared.js +21 -0
  29. package/dist-es/PaymentCryptographyData.js +29 -0
  30. package/dist-es/PaymentCryptographyDataClient.js +37 -0
  31. package/dist-es/commands/DecryptDataCommand.js +43 -0
  32. package/dist-es/commands/EncryptDataCommand.js +43 -0
  33. package/dist-es/commands/GenerateCardValidationDataCommand.js +43 -0
  34. package/dist-es/commands/GenerateMacCommand.js +43 -0
  35. package/dist-es/commands/GeneratePinDataCommand.js +43 -0
  36. package/dist-es/commands/ReEncryptDataCommand.js +43 -0
  37. package/dist-es/commands/TranslatePinDataCommand.js +43 -0
  38. package/dist-es/commands/VerifyAuthRequestCryptogramCommand.js +43 -0
  39. package/dist-es/commands/VerifyCardValidationDataCommand.js +43 -0
  40. package/dist-es/commands/VerifyMacCommand.js +43 -0
  41. package/dist-es/commands/VerifyPinDataCommand.js +43 -0
  42. package/dist-es/commands/index.js +11 -0
  43. package/dist-es/endpoint/EndpointParameters.js +8 -0
  44. package/dist-es/endpoint/endpointResolver.js +8 -0
  45. package/dist-es/endpoint/ruleset.js +4 -0
  46. package/dist-es/index.js +5 -0
  47. package/dist-es/models/PaymentCryptographyDataServiceException.js +8 -0
  48. package/dist-es/models/index.js +1 -0
  49. package/dist-es/models/models_0.js +488 -0
  50. package/dist-es/protocols/Aws_restJson1.js +938 -0
  51. package/dist-es/runtimeConfig.browser.js +34 -0
  52. package/dist-es/runtimeConfig.js +43 -0
  53. package/dist-es/runtimeConfig.native.js +11 -0
  54. package/dist-es/runtimeConfig.shared.js +17 -0
  55. package/dist-types/PaymentCryptographyData.d.ts +88 -0
  56. package/dist-types/PaymentCryptographyDataClient.d.ts +174 -0
  57. package/dist-types/commands/DecryptDataCommand.d.ts +133 -0
  58. package/dist-types/commands/EncryptDataCommand.d.ts +138 -0
  59. package/dist-types/commands/GenerateCardValidationDataCommand.d.ts +144 -0
  60. package/dist-types/commands/GenerateMacCommand.d.ts +134 -0
  61. package/dist-types/commands/GeneratePinDataCommand.d.ts +155 -0
  62. package/dist-types/commands/ReEncryptDataCommand.d.ts +150 -0
  63. package/dist-types/commands/TranslatePinDataCommand.d.ts +147 -0
  64. package/dist-types/commands/VerifyAuthRequestCryptogramCommand.d.ts +150 -0
  65. package/dist-types/commands/VerifyCardValidationDataCommand.d.ts +156 -0
  66. package/dist-types/commands/VerifyMacCommand.d.ts +137 -0
  67. package/dist-types/commands/VerifyPinDataCommand.d.ts +134 -0
  68. package/dist-types/commands/index.d.ts +11 -0
  69. package/dist-types/endpoint/EndpointParameters.d.ts +20 -0
  70. package/dist-types/endpoint/endpointResolver.d.ts +5 -0
  71. package/dist-types/endpoint/ruleset.d.ts +2 -0
  72. package/dist-types/index.d.ts +11 -0
  73. package/dist-types/models/PaymentCryptographyDataServiceException.d.ts +13 -0
  74. package/dist-types/models/index.d.ts +1 -0
  75. package/dist-types/models/models_0.d.ts +2191 -0
  76. package/dist-types/protocols/Aws_restJson1.d.ts +101 -0
  77. package/dist-types/runtimeConfig.browser.d.ts +42 -0
  78. package/dist-types/runtimeConfig.d.ts +42 -0
  79. package/dist-types/runtimeConfig.native.d.ts +41 -0
  80. package/dist-types/runtimeConfig.shared.d.ts +18 -0
  81. package/dist-types/ts3.4/PaymentCryptographyData.d.ts +194 -0
  82. package/dist-types/ts3.4/PaymentCryptographyDataClient.d.ts +181 -0
  83. package/dist-types/ts3.4/commands/DecryptDataCommand.d.ts +35 -0
  84. package/dist-types/ts3.4/commands/EncryptDataCommand.d.ts +35 -0
  85. package/dist-types/ts3.4/commands/GenerateCardValidationDataCommand.d.ts +42 -0
  86. package/dist-types/ts3.4/commands/GenerateMacCommand.d.ts +35 -0
  87. package/dist-types/ts3.4/commands/GeneratePinDataCommand.d.ts +38 -0
  88. package/dist-types/ts3.4/commands/ReEncryptDataCommand.d.ts +35 -0
  89. package/dist-types/ts3.4/commands/TranslatePinDataCommand.d.ts +38 -0
  90. package/dist-types/ts3.4/commands/VerifyAuthRequestCryptogramCommand.d.ts +42 -0
  91. package/dist-types/ts3.4/commands/VerifyCardValidationDataCommand.d.ts +42 -0
  92. package/dist-types/ts3.4/commands/VerifyMacCommand.d.ts +35 -0
  93. package/dist-types/ts3.4/commands/VerifyPinDataCommand.d.ts +35 -0
  94. package/dist-types/ts3.4/commands/index.d.ts +11 -0
  95. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +32 -0
  96. package/dist-types/ts3.4/endpoint/endpointResolver.d.ts +8 -0
  97. package/dist-types/ts3.4/endpoint/ruleset.d.ts +2 -0
  98. package/dist-types/ts3.4/index.d.ts +5 -0
  99. package/dist-types/ts3.4/models/PaymentCryptographyDataServiceException.d.ts +8 -0
  100. package/dist-types/ts3.4/models/index.d.ts +1 -0
  101. package/dist-types/ts3.4/models/models_0.d.ts +1168 -0
  102. package/dist-types/ts3.4/protocols/Aws_restJson1.d.ts +137 -0
  103. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +96 -0
  104. package/dist-types/ts3.4/runtimeConfig.d.ts +93 -0
  105. package/dist-types/ts3.4/runtimeConfig.native.d.ts +87 -0
  106. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +20 -0
  107. package/package.json +99 -0
@@ -0,0 +1,147 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
+ import { TranslatePinDataInput, TranslatePinDataOutput } from "../models/models_0";
5
+ import { PaymentCryptographyDataClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../PaymentCryptographyDataClient";
6
+ /**
7
+ * @public
8
+ */
9
+ export { __MetadataBearer, $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link TranslatePinDataCommand}.
14
+ */
15
+ export interface TranslatePinDataCommandInput extends TranslatePinDataInput {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link TranslatePinDataCommand}.
21
+ */
22
+ export interface TranslatePinDataCommandOutput extends TranslatePinDataOutput, __MetadataBearer {
23
+ }
24
+ /**
25
+ * @public
26
+ * <p>Translates encrypted PIN block from and to ISO 9564 formats 0,1,3,4. For more information, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/translate-pin-data.html">Translate PIN data</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>.</p>
27
+ * <p>PIN block translation involves changing the encrytion of PIN block from one encryption key to another encryption key and changing PIN block format from one to another without PIN block data leaving Amazon Web Services Payment Cryptography. The encryption key transformation can be from PEK (Pin Encryption Key) to BDK (Base Derivation Key) for DUKPT or from BDK for DUKPT to PEK. Amazon Web Services Payment Cryptography supports <code>TDES</code> and <code>AES</code> key derivation type for DUKPT tranlations. You can use this operation for P2PE (Point to Point Encryption) use cases where the encryption keys should change but the processing system either does not need to, or is not permitted to, decrypt the data.</p>
28
+ * <p>The allowed combinations of PIN block format translations are guided by PCI. It is important to note that not all encrypted PIN block formats (example, format 1) require PAN (Primary Account Number) as input. And as such, PIN block format that requires PAN (example, formats 0,3,4) cannot be translated to a format (format 1) that does not require a PAN for generation. </p>
29
+ * <p>For information about valid keys for this operation, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html">Understanding key attributes</a> and <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html">Key types for specific data operations</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>.</p>
30
+ * <note>
31
+ * <p>At this time, Amazon Web Services Payment Cryptography does not support translations to PIN format 4.</p>
32
+ * </note>
33
+ * <p>
34
+ * <b>Cross-account use</b>: This operation can't be used across different Amazon Web Services accounts.</p>
35
+ * <p>
36
+ * <b>Related operations:</b>
37
+ * </p>
38
+ * <ul>
39
+ * <li>
40
+ * <p>
41
+ * <a>GeneratePinData</a>
42
+ * </p>
43
+ * </li>
44
+ * <li>
45
+ * <p>
46
+ * <a>VerifyPinData</a>
47
+ * </p>
48
+ * </li>
49
+ * </ul>
50
+ * @example
51
+ * Use a bare-bones client and the command you need to make an API call.
52
+ * ```javascript
53
+ * import { PaymentCryptographyDataClient, TranslatePinDataCommand } from "@aws-sdk/client-payment-cryptography-data"; // ES Modules import
54
+ * // const { PaymentCryptographyDataClient, TranslatePinDataCommand } = require("@aws-sdk/client-payment-cryptography-data"); // CommonJS import
55
+ * const client = new PaymentCryptographyDataClient(config);
56
+ * const input = { // TranslatePinDataInput
57
+ * IncomingKeyIdentifier: "STRING_VALUE", // required
58
+ * OutgoingKeyIdentifier: "STRING_VALUE", // required
59
+ * IncomingTranslationAttributes: { // TranslationIsoFormats Union: only one key present
60
+ * IsoFormat0: { // TranslationPinDataIsoFormat034
61
+ * PrimaryAccountNumber: "STRING_VALUE", // required
62
+ * },
63
+ * IsoFormat1: {},
64
+ * IsoFormat3: {
65
+ * PrimaryAccountNumber: "STRING_VALUE", // required
66
+ * },
67
+ * IsoFormat4: {
68
+ * PrimaryAccountNumber: "STRING_VALUE", // required
69
+ * },
70
+ * },
71
+ * OutgoingTranslationAttributes: {// Union: only one key present
72
+ * IsoFormat0: {
73
+ * PrimaryAccountNumber: "STRING_VALUE", // required
74
+ * },
75
+ * IsoFormat1: {},
76
+ * IsoFormat3: {
77
+ * PrimaryAccountNumber: "STRING_VALUE", // required
78
+ * },
79
+ * IsoFormat4: "<TranslationPinDataIsoFormat034>",
80
+ * },
81
+ * EncryptedPinBlock: "STRING_VALUE", // required
82
+ * IncomingDukptAttributes: { // DukptDerivationAttributes
83
+ * KeySerialNumber: "STRING_VALUE", // required
84
+ * DukptKeyDerivationType: "STRING_VALUE",
85
+ * DukptKeyVariant: "STRING_VALUE",
86
+ * },
87
+ * OutgoingDukptAttributes: {
88
+ * KeySerialNumber: "STRING_VALUE", // required
89
+ * DukptKeyDerivationType: "STRING_VALUE",
90
+ * DukptKeyVariant: "STRING_VALUE",
91
+ * },
92
+ * };
93
+ * const command = new TranslatePinDataCommand(input);
94
+ * const response = await client.send(command);
95
+ * // { // TranslatePinDataOutput
96
+ * // PinBlock: "STRING_VALUE", // required
97
+ * // KeyArn: "STRING_VALUE", // required
98
+ * // KeyCheckValue: "STRING_VALUE", // required
99
+ * // };
100
+ *
101
+ * ```
102
+ *
103
+ * @param TranslatePinDataCommandInput - {@link TranslatePinDataCommandInput}
104
+ * @returns {@link TranslatePinDataCommandOutput}
105
+ * @see {@link TranslatePinDataCommandInput} for command's `input` shape.
106
+ * @see {@link TranslatePinDataCommandOutput} for command's `response` shape.
107
+ * @see {@link PaymentCryptographyDataClientResolvedConfig | config} for PaymentCryptographyDataClient's `config` shape.
108
+ *
109
+ * @throws {@link AccessDeniedException} (client fault)
110
+ * <p>You do not have sufficient access to perform this action.</p>
111
+ *
112
+ * @throws {@link InternalServerException} (server fault)
113
+ * <p>The request processing has failed because of an unknown error, exception, or failure.</p>
114
+ *
115
+ * @throws {@link ResourceNotFoundException} (client fault)
116
+ * <p>The request was denied due to an invalid resource error.</p>
117
+ *
118
+ * @throws {@link ThrottlingException} (client fault)
119
+ * <p>The request was denied due to request throttling.</p>
120
+ *
121
+ * @throws {@link ValidationException} (client fault)
122
+ * <p>The request was denied due to an invalid request error.</p>
123
+ *
124
+ * @throws {@link PaymentCryptographyDataServiceException}
125
+ * <p>Base exception class for all service exceptions from PaymentCryptographyData service.</p>
126
+ *
127
+ */
128
+ export declare class TranslatePinDataCommand extends $Command<TranslatePinDataCommandInput, TranslatePinDataCommandOutput, PaymentCryptographyDataClientResolvedConfig> {
129
+ readonly input: TranslatePinDataCommandInput;
130
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
131
+ /**
132
+ * @public
133
+ */
134
+ constructor(input: TranslatePinDataCommandInput);
135
+ /**
136
+ * @internal
137
+ */
138
+ resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: PaymentCryptographyDataClientResolvedConfig, options?: __HttpHandlerOptions): Handler<TranslatePinDataCommandInput, TranslatePinDataCommandOutput>;
139
+ /**
140
+ * @internal
141
+ */
142
+ private serialize;
143
+ /**
144
+ * @internal
145
+ */
146
+ private deserialize;
147
+ }
@@ -0,0 +1,150 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
+ import { VerifyAuthRequestCryptogramInput, VerifyAuthRequestCryptogramOutput } from "../models/models_0";
5
+ import { PaymentCryptographyDataClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../PaymentCryptographyDataClient";
6
+ /**
7
+ * @public
8
+ */
9
+ export { __MetadataBearer, $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link VerifyAuthRequestCryptogramCommand}.
14
+ */
15
+ export interface VerifyAuthRequestCryptogramCommandInput extends VerifyAuthRequestCryptogramInput {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link VerifyAuthRequestCryptogramCommand}.
21
+ */
22
+ export interface VerifyAuthRequestCryptogramCommandOutput extends VerifyAuthRequestCryptogramOutput, __MetadataBearer {
23
+ }
24
+ /**
25
+ * @public
26
+ * <p>Verifies Authorization Request Cryptogram (ARQC) for a EMV chip payment card authorization. For more information, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/data-operations.verifyauthrequestcryptogram.html">Verify auth request cryptogram</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>.</p>
27
+ * <p>ARQC generation is done outside of Amazon Web Services Payment Cryptography and is typically generated on a point of sale terminal for an EMV chip card to obtain payment authorization during transaction time. For ARQC verification, you must first import the ARQC generated outside of Amazon Web Services Payment Cryptography by calling <a href="https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_ImportKey.html">ImportKey</a>. This operation uses the imported ARQC and an major encryption key (DUKPT) created by calling <a href="https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_CreateKey.html">CreateKey</a> to either provide a boolean ARQC verification result or provide an APRC (Authorization Response Cryptogram) response using Method 1 or Method 2. The <code>ARPC_METHOD_1</code> uses <code>AuthResponseCode</code> to generate ARPC and <code>ARPC_METHOD_2</code> uses <code>CardStatusUpdate</code> to generate ARPC. </p>
28
+ * <p>For information about valid keys for this operation, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html">Understanding key attributes</a> and <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html">Key types for specific data operations</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>.</p>
29
+ * <p>
30
+ * <b>Cross-account use</b>: This operation can't be used across different Amazon Web Services accounts.</p>
31
+ * <p>
32
+ * <b>Related operations:</b>
33
+ * </p>
34
+ * <ul>
35
+ * <li>
36
+ * <p>
37
+ * <a>VerifyCardValidationData</a>
38
+ * </p>
39
+ * </li>
40
+ * <li>
41
+ * <p>
42
+ * <a>VerifyPinData</a>
43
+ * </p>
44
+ * </li>
45
+ * </ul>
46
+ * @example
47
+ * Use a bare-bones client and the command you need to make an API call.
48
+ * ```javascript
49
+ * import { PaymentCryptographyDataClient, VerifyAuthRequestCryptogramCommand } from "@aws-sdk/client-payment-cryptography-data"; // ES Modules import
50
+ * // const { PaymentCryptographyDataClient, VerifyAuthRequestCryptogramCommand } = require("@aws-sdk/client-payment-cryptography-data"); // CommonJS import
51
+ * const client = new PaymentCryptographyDataClient(config);
52
+ * const input = { // VerifyAuthRequestCryptogramInput
53
+ * KeyIdentifier: "STRING_VALUE", // required
54
+ * TransactionData: "STRING_VALUE", // required
55
+ * AuthRequestCryptogram: "STRING_VALUE", // required
56
+ * MajorKeyDerivationMode: "STRING_VALUE", // required
57
+ * SessionKeyDerivationAttributes: { // SessionKeyDerivation Union: only one key present
58
+ * EmvCommon: { // SessionKeyEmvCommon
59
+ * PrimaryAccountNumber: "STRING_VALUE", // required
60
+ * PanSequenceNumber: "STRING_VALUE", // required
61
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
62
+ * },
63
+ * Mastercard: { // SessionKeyMastercard
64
+ * PrimaryAccountNumber: "STRING_VALUE", // required
65
+ * PanSequenceNumber: "STRING_VALUE", // required
66
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
67
+ * UnpredictableNumber: "STRING_VALUE", // required
68
+ * },
69
+ * Emv2000: { // SessionKeyEmv2000
70
+ * PrimaryAccountNumber: "STRING_VALUE", // required
71
+ * PanSequenceNumber: "STRING_VALUE", // required
72
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
73
+ * },
74
+ * Amex: { // SessionKeyAmex
75
+ * PrimaryAccountNumber: "STRING_VALUE", // required
76
+ * PanSequenceNumber: "STRING_VALUE", // required
77
+ * },
78
+ * Visa: { // SessionKeyVisa
79
+ * PrimaryAccountNumber: "STRING_VALUE", // required
80
+ * PanSequenceNumber: "STRING_VALUE", // required
81
+ * },
82
+ * },
83
+ * AuthResponseAttributes: { // CryptogramAuthResponse Union: only one key present
84
+ * ArpcMethod1: { // CryptogramVerificationArpcMethod1
85
+ * AuthResponseCode: "STRING_VALUE", // required
86
+ * },
87
+ * ArpcMethod2: { // CryptogramVerificationArpcMethod2
88
+ * CardStatusUpdate: "STRING_VALUE", // required
89
+ * ProprietaryAuthenticationData: "STRING_VALUE",
90
+ * },
91
+ * },
92
+ * };
93
+ * const command = new VerifyAuthRequestCryptogramCommand(input);
94
+ * const response = await client.send(command);
95
+ * // { // VerifyAuthRequestCryptogramOutput
96
+ * // KeyArn: "STRING_VALUE", // required
97
+ * // KeyCheckValue: "STRING_VALUE", // required
98
+ * // AuthResponseValue: "STRING_VALUE",
99
+ * // };
100
+ *
101
+ * ```
102
+ *
103
+ * @param VerifyAuthRequestCryptogramCommandInput - {@link VerifyAuthRequestCryptogramCommandInput}
104
+ * @returns {@link VerifyAuthRequestCryptogramCommandOutput}
105
+ * @see {@link VerifyAuthRequestCryptogramCommandInput} for command's `input` shape.
106
+ * @see {@link VerifyAuthRequestCryptogramCommandOutput} for command's `response` shape.
107
+ * @see {@link PaymentCryptographyDataClientResolvedConfig | config} for PaymentCryptographyDataClient's `config` shape.
108
+ *
109
+ * @throws {@link AccessDeniedException} (client fault)
110
+ * <p>You do not have sufficient access to perform this action.</p>
111
+ *
112
+ * @throws {@link InternalServerException} (server fault)
113
+ * <p>The request processing has failed because of an unknown error, exception, or failure.</p>
114
+ *
115
+ * @throws {@link ResourceNotFoundException} (client fault)
116
+ * <p>The request was denied due to an invalid resource error.</p>
117
+ *
118
+ * @throws {@link ThrottlingException} (client fault)
119
+ * <p>The request was denied due to request throttling.</p>
120
+ *
121
+ * @throws {@link ValidationException} (client fault)
122
+ * <p>The request was denied due to an invalid request error.</p>
123
+ *
124
+ * @throws {@link VerificationFailedException} (client fault)
125
+ * <p>This request failed verification.</p>
126
+ *
127
+ * @throws {@link PaymentCryptographyDataServiceException}
128
+ * <p>Base exception class for all service exceptions from PaymentCryptographyData service.</p>
129
+ *
130
+ */
131
+ export declare class VerifyAuthRequestCryptogramCommand extends $Command<VerifyAuthRequestCryptogramCommandInput, VerifyAuthRequestCryptogramCommandOutput, PaymentCryptographyDataClientResolvedConfig> {
132
+ readonly input: VerifyAuthRequestCryptogramCommandInput;
133
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
134
+ /**
135
+ * @public
136
+ */
137
+ constructor(input: VerifyAuthRequestCryptogramCommandInput);
138
+ /**
139
+ * @internal
140
+ */
141
+ resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: PaymentCryptographyDataClientResolvedConfig, options?: __HttpHandlerOptions): Handler<VerifyAuthRequestCryptogramCommandInput, VerifyAuthRequestCryptogramCommandOutput>;
142
+ /**
143
+ * @internal
144
+ */
145
+ private serialize;
146
+ /**
147
+ * @internal
148
+ */
149
+ private deserialize;
150
+ }
@@ -0,0 +1,156 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
+ import { VerifyCardValidationDataInput, VerifyCardValidationDataOutput } from "../models/models_0";
5
+ import { PaymentCryptographyDataClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../PaymentCryptographyDataClient";
6
+ /**
7
+ * @public
8
+ */
9
+ export { __MetadataBearer, $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link VerifyCardValidationDataCommand}.
14
+ */
15
+ export interface VerifyCardValidationDataCommandInput extends VerifyCardValidationDataInput {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link VerifyCardValidationDataCommand}.
21
+ */
22
+ export interface VerifyCardValidationDataCommandOutput extends VerifyCardValidationDataOutput, __MetadataBearer {
23
+ }
24
+ /**
25
+ * @public
26
+ * <p>Verifies card-related validation data using algorithms such as Card Verification Values (CVV/CVV2), Dynamic Card Verification Values (dCVV/dCVV2) and Card Security Codes (CSC). For more information, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/verify-card-data.html">Verify card data</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>.</p>
27
+ * <p>This operation validates the CVV or CSC codes that is printed on a payment credit or debit card during card payment transaction. The input values are typically provided as part of an inbound transaction to an issuer or supporting platform partner. Amazon Web Services Payment Cryptography uses CVV or CSC, PAN (Primary Account Number) and expiration date of the card to check its validity during transaction processing. In this operation, the CVK (Card Verification Key) encryption key for use with card data verification is same as the one in used for <a>GenerateCardValidationData</a>. </p>
28
+ * <p>For information about valid keys for this operation, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html">Understanding key attributes</a> and <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html">Key types for specific data operations</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>. </p>
29
+ * <p>
30
+ * <b>Cross-account use</b>: This operation can't be used across different Amazon Web Services accounts.</p>
31
+ * <p>
32
+ * <b>Related operations:</b>
33
+ * </p>
34
+ * <ul>
35
+ * <li>
36
+ * <p>
37
+ * <a>GenerateCardValidationData</a>
38
+ * </p>
39
+ * </li>
40
+ * <li>
41
+ * <p>
42
+ * <a>VerifyAuthRequestCryptogram</a>
43
+ * </p>
44
+ * </li>
45
+ * <li>
46
+ * <p>
47
+ * <a>VerifyPinData</a>
48
+ * </p>
49
+ * </li>
50
+ * </ul>
51
+ * @example
52
+ * Use a bare-bones client and the command you need to make an API call.
53
+ * ```javascript
54
+ * import { PaymentCryptographyDataClient, VerifyCardValidationDataCommand } from "@aws-sdk/client-payment-cryptography-data"; // ES Modules import
55
+ * // const { PaymentCryptographyDataClient, VerifyCardValidationDataCommand } = require("@aws-sdk/client-payment-cryptography-data"); // CommonJS import
56
+ * const client = new PaymentCryptographyDataClient(config);
57
+ * const input = { // VerifyCardValidationDataInput
58
+ * KeyIdentifier: "STRING_VALUE", // required
59
+ * PrimaryAccountNumber: "STRING_VALUE", // required
60
+ * VerificationAttributes: { // CardVerificationAttributes Union: only one key present
61
+ * AmexCardSecurityCodeVersion1: { // AmexCardSecurityCodeVersion1
62
+ * CardExpiryDate: "STRING_VALUE", // required
63
+ * },
64
+ * AmexCardSecurityCodeVersion2: { // AmexCardSecurityCodeVersion2
65
+ * CardExpiryDate: "STRING_VALUE", // required
66
+ * ServiceCode: "STRING_VALUE", // required
67
+ * },
68
+ * CardVerificationValue1: { // CardVerificationValue1
69
+ * CardExpiryDate: "STRING_VALUE", // required
70
+ * ServiceCode: "STRING_VALUE", // required
71
+ * },
72
+ * CardVerificationValue2: { // CardVerificationValue2
73
+ * CardExpiryDate: "STRING_VALUE", // required
74
+ * },
75
+ * CardHolderVerificationValue: { // CardHolderVerificationValue
76
+ * UnpredictableNumber: "STRING_VALUE", // required
77
+ * PanSequenceNumber: "STRING_VALUE", // required
78
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
79
+ * },
80
+ * DynamicCardVerificationCode: { // DynamicCardVerificationCode
81
+ * UnpredictableNumber: "STRING_VALUE", // required
82
+ * PanSequenceNumber: "STRING_VALUE", // required
83
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
84
+ * TrackData: "STRING_VALUE", // required
85
+ * },
86
+ * DynamicCardVerificationValue: { // DynamicCardVerificationValue
87
+ * PanSequenceNumber: "STRING_VALUE", // required
88
+ * CardExpiryDate: "STRING_VALUE", // required
89
+ * ServiceCode: "STRING_VALUE", // required
90
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
91
+ * },
92
+ * DiscoverDynamicCardVerificationCode: { // DiscoverDynamicCardVerificationCode
93
+ * CardExpiryDate: "STRING_VALUE", // required
94
+ * UnpredictableNumber: "STRING_VALUE", // required
95
+ * ApplicationTransactionCounter: "STRING_VALUE", // required
96
+ * },
97
+ * },
98
+ * ValidationData: "STRING_VALUE", // required
99
+ * };
100
+ * const command = new VerifyCardValidationDataCommand(input);
101
+ * const response = await client.send(command);
102
+ * // { // VerifyCardValidationDataOutput
103
+ * // KeyArn: "STRING_VALUE", // required
104
+ * // KeyCheckValue: "STRING_VALUE", // required
105
+ * // };
106
+ *
107
+ * ```
108
+ *
109
+ * @param VerifyCardValidationDataCommandInput - {@link VerifyCardValidationDataCommandInput}
110
+ * @returns {@link VerifyCardValidationDataCommandOutput}
111
+ * @see {@link VerifyCardValidationDataCommandInput} for command's `input` shape.
112
+ * @see {@link VerifyCardValidationDataCommandOutput} for command's `response` shape.
113
+ * @see {@link PaymentCryptographyDataClientResolvedConfig | config} for PaymentCryptographyDataClient's `config` shape.
114
+ *
115
+ * @throws {@link AccessDeniedException} (client fault)
116
+ * <p>You do not have sufficient access to perform this action.</p>
117
+ *
118
+ * @throws {@link InternalServerException} (server fault)
119
+ * <p>The request processing has failed because of an unknown error, exception, or failure.</p>
120
+ *
121
+ * @throws {@link ResourceNotFoundException} (client fault)
122
+ * <p>The request was denied due to an invalid resource error.</p>
123
+ *
124
+ * @throws {@link ThrottlingException} (client fault)
125
+ * <p>The request was denied due to request throttling.</p>
126
+ *
127
+ * @throws {@link ValidationException} (client fault)
128
+ * <p>The request was denied due to an invalid request error.</p>
129
+ *
130
+ * @throws {@link VerificationFailedException} (client fault)
131
+ * <p>This request failed verification.</p>
132
+ *
133
+ * @throws {@link PaymentCryptographyDataServiceException}
134
+ * <p>Base exception class for all service exceptions from PaymentCryptographyData service.</p>
135
+ *
136
+ */
137
+ export declare class VerifyCardValidationDataCommand extends $Command<VerifyCardValidationDataCommandInput, VerifyCardValidationDataCommandOutput, PaymentCryptographyDataClientResolvedConfig> {
138
+ readonly input: VerifyCardValidationDataCommandInput;
139
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
140
+ /**
141
+ * @public
142
+ */
143
+ constructor(input: VerifyCardValidationDataCommandInput);
144
+ /**
145
+ * @internal
146
+ */
147
+ resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: PaymentCryptographyDataClientResolvedConfig, options?: __HttpHandlerOptions): Handler<VerifyCardValidationDataCommandInput, VerifyCardValidationDataCommandOutput>;
148
+ /**
149
+ * @internal
150
+ */
151
+ private serialize;
152
+ /**
153
+ * @internal
154
+ */
155
+ private deserialize;
156
+ }
@@ -0,0 +1,137 @@
1
+ import { EndpointParameterInstructions } from "@aws-sdk/middleware-endpoint";
2
+ import { Command as $Command } from "@aws-sdk/smithy-client";
3
+ import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@aws-sdk/types";
4
+ import { VerifyMacInput, VerifyMacOutput } from "../models/models_0";
5
+ import { PaymentCryptographyDataClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../PaymentCryptographyDataClient";
6
+ /**
7
+ * @public
8
+ */
9
+ export { __MetadataBearer, $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link VerifyMacCommand}.
14
+ */
15
+ export interface VerifyMacCommandInput extends VerifyMacInput {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link VerifyMacCommand}.
21
+ */
22
+ export interface VerifyMacCommandOutput extends VerifyMacOutput, __MetadataBearer {
23
+ }
24
+ /**
25
+ * @public
26
+ * <p>Verifies a Message Authentication Code (MAC). </p>
27
+ * <p>You can use this operation when keys won't be shared but mutual data is present on both ends for validation. In this case, known data values are used to generate a MAC on both ends for verification without sending or receiving data in ciphertext or plaintext. You can use this operation to verify a DUPKT, HMAC or EMV MAC by setting generation attributes and algorithm to the associated values. Use the same encryption key for MAC verification as you use for <a>GenerateMac</a>. </p>
28
+ * <p>For information about valid keys for this operation, see <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html">Understanding key attributes</a> and <a href="https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html">Key types for specific data operations</a> in the <i>Amazon Web Services Payment Cryptography User Guide</i>. </p>
29
+ * <p>
30
+ * <b>Cross-account use</b>: This operation can't be used across different Amazon Web Services accounts.</p>
31
+ * <p>
32
+ * <b>Related operations:</b>
33
+ * </p>
34
+ * <ul>
35
+ * <li>
36
+ * <p>
37
+ * <a>GenerateMac</a>
38
+ * </p>
39
+ * </li>
40
+ * </ul>
41
+ * @example
42
+ * Use a bare-bones client and the command you need to make an API call.
43
+ * ```javascript
44
+ * import { PaymentCryptographyDataClient, VerifyMacCommand } from "@aws-sdk/client-payment-cryptography-data"; // ES Modules import
45
+ * // const { PaymentCryptographyDataClient, VerifyMacCommand } = require("@aws-sdk/client-payment-cryptography-data"); // CommonJS import
46
+ * const client = new PaymentCryptographyDataClient(config);
47
+ * const input = { // VerifyMacInput
48
+ * KeyIdentifier: "STRING_VALUE", // required
49
+ * MessageData: "STRING_VALUE", // required
50
+ * Mac: "STRING_VALUE", // required
51
+ * VerificationAttributes: { // MacAttributes Union: only one key present
52
+ * Algorithm: "STRING_VALUE",
53
+ * EmvMac: { // MacAlgorithmEmv
54
+ * MajorKeyDerivationMode: "STRING_VALUE", // required
55
+ * PrimaryAccountNumber: "STRING_VALUE", // required
56
+ * PanSequenceNumber: "STRING_VALUE", // required
57
+ * SessionKeyDerivationMode: "STRING_VALUE", // required
58
+ * SessionKeyDerivationValue: { // SessionKeyDerivationValue Union: only one key present
59
+ * ApplicationCryptogram: "STRING_VALUE",
60
+ * ApplicationTransactionCounter: "STRING_VALUE",
61
+ * },
62
+ * },
63
+ * DukptIso9797Algorithm1: { // MacAlgorithmDukpt
64
+ * KeySerialNumber: "STRING_VALUE", // required
65
+ * DukptKeyVariant: "STRING_VALUE", // required
66
+ * DukptDerivationType: "STRING_VALUE",
67
+ * },
68
+ * DukptIso9797Algorithm3: {
69
+ * KeySerialNumber: "STRING_VALUE", // required
70
+ * DukptKeyVariant: "STRING_VALUE", // required
71
+ * DukptDerivationType: "STRING_VALUE",
72
+ * },
73
+ * DukptCmac: {
74
+ * KeySerialNumber: "STRING_VALUE", // required
75
+ * DukptKeyVariant: "STRING_VALUE", // required
76
+ * DukptDerivationType: "STRING_VALUE",
77
+ * },
78
+ * },
79
+ * MacLength: Number("int"),
80
+ * };
81
+ * const command = new VerifyMacCommand(input);
82
+ * const response = await client.send(command);
83
+ * // { // VerifyMacOutput
84
+ * // KeyArn: "STRING_VALUE", // required
85
+ * // KeyCheckValue: "STRING_VALUE", // required
86
+ * // };
87
+ *
88
+ * ```
89
+ *
90
+ * @param VerifyMacCommandInput - {@link VerifyMacCommandInput}
91
+ * @returns {@link VerifyMacCommandOutput}
92
+ * @see {@link VerifyMacCommandInput} for command's `input` shape.
93
+ * @see {@link VerifyMacCommandOutput} for command's `response` shape.
94
+ * @see {@link PaymentCryptographyDataClientResolvedConfig | config} for PaymentCryptographyDataClient's `config` shape.
95
+ *
96
+ * @throws {@link AccessDeniedException} (client fault)
97
+ * <p>You do not have sufficient access to perform this action.</p>
98
+ *
99
+ * @throws {@link InternalServerException} (server fault)
100
+ * <p>The request processing has failed because of an unknown error, exception, or failure.</p>
101
+ *
102
+ * @throws {@link ResourceNotFoundException} (client fault)
103
+ * <p>The request was denied due to an invalid resource error.</p>
104
+ *
105
+ * @throws {@link ThrottlingException} (client fault)
106
+ * <p>The request was denied due to request throttling.</p>
107
+ *
108
+ * @throws {@link ValidationException} (client fault)
109
+ * <p>The request was denied due to an invalid request error.</p>
110
+ *
111
+ * @throws {@link VerificationFailedException} (client fault)
112
+ * <p>This request failed verification.</p>
113
+ *
114
+ * @throws {@link PaymentCryptographyDataServiceException}
115
+ * <p>Base exception class for all service exceptions from PaymentCryptographyData service.</p>
116
+ *
117
+ */
118
+ export declare class VerifyMacCommand extends $Command<VerifyMacCommandInput, VerifyMacCommandOutput, PaymentCryptographyDataClientResolvedConfig> {
119
+ readonly input: VerifyMacCommandInput;
120
+ static getEndpointParameterInstructions(): EndpointParameterInstructions;
121
+ /**
122
+ * @public
123
+ */
124
+ constructor(input: VerifyMacCommandInput);
125
+ /**
126
+ * @internal
127
+ */
128
+ resolveMiddleware(clientStack: MiddlewareStack<ServiceInputTypes, ServiceOutputTypes>, configuration: PaymentCryptographyDataClientResolvedConfig, options?: __HttpHandlerOptions): Handler<VerifyMacCommandInput, VerifyMacCommandOutput>;
129
+ /**
130
+ * @internal
131
+ */
132
+ private serialize;
133
+ /**
134
+ * @internal
135
+ */
136
+ private deserialize;
137
+ }