aws-sdk-paymentcryptographydata 1.50.0 → 1.52.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.
@@ -65,6 +65,8 @@ module Aws::PaymentCryptographyData
65
65
  EncryptionMode = Shapes::StringShape.new(name: 'EncryptionMode')
66
66
  GenerateAs2805KekValidationInput = Shapes::StructureShape.new(name: 'GenerateAs2805KekValidationInput')
67
67
  GenerateAs2805KekValidationOutput = Shapes::StructureShape.new(name: 'GenerateAs2805KekValidationOutput')
68
+ GenerateAuthRequestCryptogramInput = Shapes::StructureShape.new(name: 'GenerateAuthRequestCryptogramInput')
69
+ GenerateAuthRequestCryptogramOutput = Shapes::StructureShape.new(name: 'GenerateAuthRequestCryptogramOutput')
68
70
  GenerateCardValidationDataInput = Shapes::StructureShape.new(name: 'GenerateCardValidationDataInput')
69
71
  GenerateCardValidationDataOutput = Shapes::StructureShape.new(name: 'GenerateCardValidationDataOutput')
70
72
  GenerateMacEmvPinChangeInput = Shapes::StructureShape.new(name: 'GenerateMacEmvPinChangeInput')
@@ -91,7 +93,7 @@ module Aws::PaymentCryptographyData
91
93
  IntegerRangeBetween0And6 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween0And6')
92
94
  IntegerRangeBetween3And5Type = Shapes::IntegerShape.new(name: 'IntegerRangeBetween3And5Type')
93
95
  IntegerRangeBetween4And12 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween4And12')
94
- IntegerRangeBetween4And16 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween4And16')
96
+ IntegerRangeBetween4And32 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween4And32')
95
97
  InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
96
98
  KekValidationRequest = Shapes::StructureShape.new(name: 'KekValidationRequest')
97
99
  KekValidationResponse = Shapes::StructureShape.new(name: 'KekValidationResponse')
@@ -130,6 +132,7 @@ module Aws::PaymentCryptographyData
130
132
  PlainTextType = Shapes::StringShape.new(name: 'PlainTextType')
131
133
  PrimaryAccountNumberType = Shapes::StringShape.new(name: 'PrimaryAccountNumberType')
132
134
  ProprietaryAuthenticationDataType = Shapes::StringShape.new(name: 'ProprietaryAuthenticationDataType')
135
+ RandomKeyMaxLength = Shapes::StringShape.new(name: 'RandomKeyMaxLength')
133
136
  RandomKeySendVariantMask = Shapes::StringShape.new(name: 'RandomKeySendVariantMask')
134
137
  ReEncryptDataInput = Shapes::StructureShape.new(name: 'ReEncryptDataInput')
135
138
  ReEncryptDataOutput = Shapes::StructureShape.new(name: 'ReEncryptDataOutput')
@@ -419,6 +422,17 @@ module Aws::PaymentCryptographyData
419
422
  GenerateAs2805KekValidationOutput.add_member(:random_key_receive, Shapes::ShapeRef.new(shape: As2805RandomKeyMaterial, required: true, location_name: "RandomKeyReceive"))
420
423
  GenerateAs2805KekValidationOutput.struct_class = Types::GenerateAs2805KekValidationOutput
421
424
 
425
+ GenerateAuthRequestCryptogramInput.add_member(:key_identifier, Shapes::ShapeRef.new(shape: KeyArnOrKeyAliasType, required: true, location_name: "KeyIdentifier"))
426
+ GenerateAuthRequestCryptogramInput.add_member(:transaction_data, Shapes::ShapeRef.new(shape: TransactionDataType, required: true, location_name: "TransactionData"))
427
+ GenerateAuthRequestCryptogramInput.add_member(:major_key_derivation_mode, Shapes::ShapeRef.new(shape: MajorKeyDerivationMode, required: true, location_name: "MajorKeyDerivationMode"))
428
+ GenerateAuthRequestCryptogramInput.add_member(:session_key_derivation_attributes, Shapes::ShapeRef.new(shape: SessionKeyDerivation, required: true, location_name: "SessionKeyDerivationAttributes"))
429
+ GenerateAuthRequestCryptogramInput.struct_class = Types::GenerateAuthRequestCryptogramInput
430
+
431
+ GenerateAuthRequestCryptogramOutput.add_member(:key_arn, Shapes::ShapeRef.new(shape: KeyArn, required: true, location_name: "KeyArn"))
432
+ GenerateAuthRequestCryptogramOutput.add_member(:key_check_value, Shapes::ShapeRef.new(shape: KeyCheckValue, required: true, location_name: "KeyCheckValue"))
433
+ GenerateAuthRequestCryptogramOutput.add_member(:auth_request_cryptogram, Shapes::ShapeRef.new(shape: AuthRequestCryptogramType, required: true, location_name: "AuthRequestCryptogram"))
434
+ GenerateAuthRequestCryptogramOutput.struct_class = Types::GenerateAuthRequestCryptogramOutput
435
+
422
436
  GenerateCardValidationDataInput.add_member(:key_identifier, Shapes::ShapeRef.new(shape: KeyArnOrKeyAliasType, required: true, location_name: "KeyIdentifier"))
423
437
  GenerateCardValidationDataInput.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
424
438
  GenerateCardValidationDataInput.add_member(:generation_attributes, Shapes::ShapeRef.new(shape: CardGenerationAttributes, required: true, location_name: "GenerationAttributes"))
@@ -453,7 +467,7 @@ module Aws::PaymentCryptographyData
453
467
  GenerateMacInput.add_member(:key_identifier, Shapes::ShapeRef.new(shape: KeyArnOrKeyAliasType, required: true, location_name: "KeyIdentifier"))
454
468
  GenerateMacInput.add_member(:message_data, Shapes::ShapeRef.new(shape: MessageDataType, required: true, location_name: "MessageData"))
455
469
  GenerateMacInput.add_member(:generation_attributes, Shapes::ShapeRef.new(shape: MacAttributes, required: true, location_name: "GenerationAttributes"))
456
- GenerateMacInput.add_member(:mac_length, Shapes::ShapeRef.new(shape: IntegerRangeBetween4And16, location_name: "MacLength"))
470
+ GenerateMacInput.add_member(:mac_length, Shapes::ShapeRef.new(shape: IntegerRangeBetween4And32, location_name: "MacLength"))
457
471
  GenerateMacInput.struct_class = Types::GenerateMacInput
458
472
 
459
473
  GenerateMacOutput.add_member(:key_arn, Shapes::ShapeRef.new(shape: KeyArn, required: true, location_name: "KeyArn"))
@@ -526,6 +540,7 @@ module Aws::PaymentCryptographyData
526
540
  InternalServerException.struct_class = Types::InternalServerException
527
541
 
528
542
  KekValidationRequest.add_member(:derive_key_algorithm, Shapes::ShapeRef.new(shape: SymmetricKeyAlgorithm, required: true, location_name: "DeriveKeyAlgorithm"))
543
+ KekValidationRequest.add_member(:random_key_max_length, Shapes::ShapeRef.new(shape: RandomKeyMaxLength, location_name: "RandomKeyMaxLength"))
529
544
  KekValidationRequest.struct_class = Types::KekValidationRequest
530
545
 
531
546
  KekValidationResponse.add_member(:random_key_send, Shapes::ShapeRef.new(shape: As2805RandomKeyMaterial, required: true, location_name: "RandomKeySend"))
@@ -668,7 +683,7 @@ module Aws::PaymentCryptographyData
668
683
  SessionKeyMastercard.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
669
684
  SessionKeyMastercard.add_member(:pan_sequence_number, Shapes::ShapeRef.new(shape: NumberLengthEquals2, required: true, location_name: "PanSequenceNumber"))
670
685
  SessionKeyMastercard.add_member(:application_transaction_counter, Shapes::ShapeRef.new(shape: HexLengthEquals4, required: true, location_name: "ApplicationTransactionCounter"))
671
- SessionKeyMastercard.add_member(:unpredictable_number, Shapes::ShapeRef.new(shape: HexLengthBetween2And8, required: true, location_name: "UnpredictableNumber"))
686
+ SessionKeyMastercard.add_member(:unpredictable_number, Shapes::ShapeRef.new(shape: HexLengthEquals8, required: true, location_name: "UnpredictableNumber"))
672
687
  SessionKeyMastercard.struct_class = Types::SessionKeyMastercard
673
688
 
674
689
  SessionKeyVisa.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
@@ -771,7 +786,7 @@ module Aws::PaymentCryptographyData
771
786
  VerifyMacInput.add_member(:message_data, Shapes::ShapeRef.new(shape: MessageDataType, required: true, location_name: "MessageData"))
772
787
  VerifyMacInput.add_member(:mac, Shapes::ShapeRef.new(shape: MacType, required: true, location_name: "Mac"))
773
788
  VerifyMacInput.add_member(:verification_attributes, Shapes::ShapeRef.new(shape: MacAttributes, required: true, location_name: "VerificationAttributes"))
774
- VerifyMacInput.add_member(:mac_length, Shapes::ShapeRef.new(shape: IntegerRangeBetween4And16, location_name: "MacLength"))
789
+ VerifyMacInput.add_member(:mac_length, Shapes::ShapeRef.new(shape: IntegerRangeBetween4And32, location_name: "MacLength"))
775
790
  VerifyMacInput.struct_class = Types::VerifyMacInput
776
791
 
777
792
  VerifyMacOutput.add_member(:key_arn, Shapes::ShapeRef.new(shape: KeyArn, required: true, location_name: "KeyArn"))
@@ -895,6 +910,19 @@ module Aws::PaymentCryptographyData
895
910
  o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
896
911
  end)
897
912
 
913
+ api.add_operation(:generate_auth_request_cryptogram, Seahorse::Model::Operation.new.tap do |o|
914
+ o.name = "GenerateAuthRequestCryptogram"
915
+ o.http_method = "POST"
916
+ o.http_request_uri = "/cryptogram/generate"
917
+ o.input = Shapes::ShapeRef.new(shape: GenerateAuthRequestCryptogramInput)
918
+ o.output = Shapes::ShapeRef.new(shape: GenerateAuthRequestCryptogramOutput)
919
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
920
+ o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
921
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
922
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
923
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
924
+ end)
925
+
898
926
  api.add_operation(:generate_card_validation_data, Seahorse::Model::Operation.new.tap do |o|
899
927
  o.name = "GenerateCardValidationData"
900
928
  o.http_method = "POST"
@@ -1097,8 +1097,8 @@ module Aws::PaymentCryptographyData
1097
1097
  # @return [String]
1098
1098
  #
1099
1099
  # @!attribute [rw] kek_validation_type
1100
- # Parameter information for generating a random key for KEK validation
1101
- # to perform node-to-node initialization.
1100
+ # Defines whether to generate a KEK validation request or KEK
1101
+ # validation response for node-to-node initialization.
1102
1102
  # @return [Types::As2805KekValidationType]
1103
1103
  #
1104
1104
  # @!attribute [rw] random_key_send_variant_mask
@@ -1147,6 +1147,69 @@ module Aws::PaymentCryptographyData
1147
1147
  include Aws::Structure
1148
1148
  end
1149
1149
 
1150
+ # @!attribute [rw] key_identifier
1151
+ # The `keyARN` of the IMK-AC (TR31\_E0\_EMV\_MKEY\_APP\_CRYPTOGRAMS)
1152
+ # that Amazon Web Services Payment Cryptography uses to generate the
1153
+ # ARQC.
1154
+ # @return [String]
1155
+ #
1156
+ # @!attribute [rw] transaction_data
1157
+ # The transaction data that Amazon Web Services Payment Cryptography
1158
+ # uses for ARQC generation. The same transaction data is used for ARQC
1159
+ # verification by the issuer using VerifyAuthRequestCryptogram.
1160
+ # @return [String]
1161
+ #
1162
+ # @!attribute [rw] major_key_derivation_mode
1163
+ # The method to use when deriving the major encryption key for ARQC
1164
+ # generation within Amazon Web Services Payment Cryptography.
1165
+ # @return [String]
1166
+ #
1167
+ # @!attribute [rw] session_key_derivation_attributes
1168
+ # The attributes and values to use for deriving a session key for ARQC
1169
+ # generation within Amazon Web Services Payment Cryptography.
1170
+ # @return [Types::SessionKeyDerivation]
1171
+ #
1172
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateAuthRequestCryptogramInput AWS API Documentation
1173
+ #
1174
+ class GenerateAuthRequestCryptogramInput < Struct.new(
1175
+ :key_identifier,
1176
+ :transaction_data,
1177
+ :major_key_derivation_mode,
1178
+ :session_key_derivation_attributes)
1179
+ SENSITIVE = [:transaction_data]
1180
+ include Aws::Structure
1181
+ end
1182
+
1183
+ # @!attribute [rw] key_arn
1184
+ # The `keyARN` of the IMK-AC that Amazon Web Services Payment
1185
+ # Cryptography uses for ARQC generation.
1186
+ # @return [String]
1187
+ #
1188
+ # @!attribute [rw] key_check_value
1189
+ # The key check value (KCV) of the encryption key. The KCV is used to
1190
+ # check if all parties holding a given key have the same key or to
1191
+ # detect that a key has changed.
1192
+ #
1193
+ # Amazon Web Services Payment Cryptography computes the KCV according
1194
+ # to the CMAC specification.
1195
+ # @return [String]
1196
+ #
1197
+ # @!attribute [rw] auth_request_cryptogram
1198
+ # The Authorization Request Cryptogram (ARQC) generated by Amazon Web
1199
+ # Services Payment Cryptography using the specified key and
1200
+ # transaction data.
1201
+ # @return [String]
1202
+ #
1203
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateAuthRequestCryptogramOutput AWS API Documentation
1204
+ #
1205
+ class GenerateAuthRequestCryptogramOutput < Struct.new(
1206
+ :key_arn,
1207
+ :key_check_value,
1208
+ :auth_request_cryptogram)
1209
+ SENSITIVE = [:auth_request_cryptogram]
1210
+ include Aws::Structure
1211
+ end
1212
+
1150
1213
  # @!attribute [rw] key_identifier
1151
1214
  # The `keyARN` of the CVK encryption key that Amazon Web Services
1152
1215
  # Payment Cryptography uses to generate card data.
@@ -1739,10 +1802,16 @@ module Aws::PaymentCryptographyData
1739
1802
  # request.
1740
1803
  # @return [String]
1741
1804
  #
1805
+ # @!attribute [rw] random_key_max_length
1806
+ # The maximum length of the random key to generate for a KEK
1807
+ # validation request.
1808
+ # @return [String]
1809
+ #
1742
1810
  # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/KekValidationRequest AWS API Documentation
1743
1811
  #
1744
1812
  class KekValidationRequest < Struct.new(
1745
- :derive_key_algorithm)
1813
+ :derive_key_algorithm,
1814
+ :random_key_max_length)
1746
1815
  SENSITIVE = []
1747
1816
  include Aws::Structure
1748
1817
  end
@@ -1751,7 +1820,8 @@ module Aws::PaymentCryptographyData
1751
1820
  # node-to-node initialization.
1752
1821
  #
1753
1822
  # @!attribute [rw] random_key_send
1754
- # The random key for generating a KEK validation response.
1823
+ # The random key send value received from the initiating node to
1824
+ # generate a KEK validation response.
1755
1825
  # @return [String]
1756
1826
  #
1757
1827
  # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/KekValidationResponse AWS API Documentation
@@ -55,7 +55,7 @@ module Aws::PaymentCryptographyData
55
55
  autoload :EndpointProvider, 'aws-sdk-paymentcryptographydata/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-paymentcryptographydata/endpoints'
57
57
 
58
- GEM_VERSION = '1.50.0'
58
+ GEM_VERSION = '1.52.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -88,45 +88,8 @@ module Aws
88
88
  def decrypt_data: (
89
89
  key_identifier: ::String,
90
90
  cipher_text: ::String,
91
- decryption_attributes: {
92
- symmetric: {
93
- mode: ("ECB" | "CBC" | "CFB" | "CFB1" | "CFB8" | "CFB64" | "CFB128" | "OFB"),
94
- initialization_vector: ::String?,
95
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
96
- }?,
97
- asymmetric: {
98
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
99
- }?,
100
- dukpt: {
101
- key_serial_number: ::String,
102
- mode: ("ECB" | "CBC")?,
103
- dukpt_key_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?,
104
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")?,
105
- initialization_vector: ::String?
106
- }?,
107
- emv: {
108
- major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
109
- primary_account_number: ::String,
110
- pan_sequence_number: ::String,
111
- session_derivation_data: ::String,
112
- mode: ("ECB" | "CBC")?,
113
- initialization_vector: ::String?
114
- }?
115
- },
116
- ?wrapped_key: {
117
- wrapped_key_material: {
118
- tr_31_key_block: ::String?,
119
- diffie_hellman_symmetric_key: {
120
- certificate_authority_public_key_identifier: ::String,
121
- public_key_certificate: ::String,
122
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
123
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
124
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
125
- shared_information: ::String
126
- }?
127
- },
128
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
129
- }
91
+ decryption_attributes: Params::encryption_decryption_attributes,
92
+ ?wrapped_key: Params::wrapped_key
130
93
  ) -> _DecryptDataResponseSuccess
131
94
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DecryptDataResponseSuccess
132
95
 
@@ -140,45 +103,8 @@ module Aws
140
103
  def encrypt_data: (
141
104
  key_identifier: ::String,
142
105
  plain_text: ::String,
143
- encryption_attributes: {
144
- symmetric: {
145
- mode: ("ECB" | "CBC" | "CFB" | "CFB1" | "CFB8" | "CFB64" | "CFB128" | "OFB"),
146
- initialization_vector: ::String?,
147
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
148
- }?,
149
- asymmetric: {
150
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
151
- }?,
152
- dukpt: {
153
- key_serial_number: ::String,
154
- mode: ("ECB" | "CBC")?,
155
- dukpt_key_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?,
156
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")?,
157
- initialization_vector: ::String?
158
- }?,
159
- emv: {
160
- major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
161
- primary_account_number: ::String,
162
- pan_sequence_number: ::String,
163
- session_derivation_data: ::String,
164
- mode: ("ECB" | "CBC")?,
165
- initialization_vector: ::String?
166
- }?
167
- },
168
- ?wrapped_key: {
169
- wrapped_key_material: {
170
- tr_31_key_block: ::String?,
171
- diffie_hellman_symmetric_key: {
172
- certificate_authority_public_key_identifier: ::String,
173
- public_key_certificate: ::String,
174
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
175
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
176
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
177
- shared_information: ::String
178
- }?
179
- },
180
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
181
- }
106
+ encryption_attributes: Params::encryption_decryption_attributes,
107
+ ?wrapped_key: Params::wrapped_key
182
108
  ) -> _EncryptDataResponseSuccess
183
109
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _EncryptDataResponseSuccess
184
110
 
@@ -194,7 +120,8 @@ module Aws
194
120
  key_identifier: ::String,
195
121
  kek_validation_type: {
196
122
  kek_validation_request: {
197
- derive_key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224")
123
+ derive_key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
124
+ random_key_max_length: ("BYTES_8" | "BYTES_16" | "BYTES_24")?
198
125
  }?,
199
126
  kek_validation_response: {
200
127
  random_key_send: ::String
@@ -204,6 +131,21 @@ module Aws
204
131
  ) -> _GenerateAs2805KekValidationResponseSuccess
205
132
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GenerateAs2805KekValidationResponseSuccess
206
133
 
134
+ interface _GenerateAuthRequestCryptogramResponseSuccess
135
+ include ::Seahorse::Client::_ResponseSuccess[Types::GenerateAuthRequestCryptogramOutput]
136
+ def key_arn: () -> ::String
137
+ def key_check_value: () -> ::String
138
+ def auth_request_cryptogram: () -> ::String
139
+ end
140
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/PaymentCryptographyData/Client.html#generate_auth_request_cryptogram-instance_method
141
+ def generate_auth_request_cryptogram: (
142
+ key_identifier: ::String,
143
+ transaction_data: ::String,
144
+ major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
145
+ session_key_derivation_attributes: Params::session_key_derivation
146
+ ) -> _GenerateAuthRequestCryptogramResponseSuccess
147
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GenerateAuthRequestCryptogramResponseSuccess
148
+
207
149
  interface _GenerateCardValidationDataResponseSuccess
208
150
  include ::Seahorse::Client::_ResponseSuccess[Types::GenerateCardValidationDataOutput]
209
151
  def key_arn: () -> ::String
@@ -261,34 +203,7 @@ module Aws
261
203
  def generate_mac: (
262
204
  key_identifier: ::String,
263
205
  message_data: ::String,
264
- generation_attributes: {
265
- algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "AS2805_4_1")?,
266
- emv_mac: {
267
- major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
268
- primary_account_number: ::String,
269
- pan_sequence_number: ::String,
270
- session_key_derivation_mode: ("EMV_COMMON_SESSION_KEY" | "EMV2000" | "AMEX" | "MASTERCARD_SESSION_KEY" | "VISA"),
271
- session_key_derivation_value: {
272
- application_cryptogram: ::String?,
273
- application_transaction_counter: ::String?
274
- }
275
- }?,
276
- dukpt_iso_9797_algorithm_1: {
277
- key_serial_number: ::String,
278
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
279
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
280
- }?,
281
- dukpt_iso_9797_algorithm_3: {
282
- key_serial_number: ::String,
283
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
284
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
285
- }?,
286
- dukpt_cmac: {
287
- key_serial_number: ::String,
288
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
289
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
290
- }?
291
- },
206
+ generation_attributes: Params::mac_attributes,
292
207
  ?mac_length: ::Integer
293
208
  ) -> _GenerateMacResponseSuccess
294
209
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GenerateMacResponseSuccess
@@ -408,20 +323,7 @@ module Aws
408
323
  ?pin_data_length: ::Integer,
409
324
  ?primary_account_number: ::String,
410
325
  pin_block_format: ("ISO_FORMAT_0" | "ISO_FORMAT_1" | "ISO_FORMAT_3" | "ISO_FORMAT_4"),
411
- ?encryption_wrapped_key: {
412
- wrapped_key_material: {
413
- tr_31_key_block: ::String?,
414
- diffie_hellman_symmetric_key: {
415
- certificate_authority_public_key_identifier: ::String,
416
- public_key_certificate: ::String,
417
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
418
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
419
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
420
- shared_information: ::String
421
- }?
422
- },
423
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
424
- }
326
+ ?encryption_wrapped_key: Params::wrapped_key
425
327
  ) -> _GeneratePinDataResponseSuccess
426
328
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GeneratePinDataResponseSuccess
427
329
 
@@ -436,62 +338,10 @@ module Aws
436
338
  incoming_key_identifier: ::String,
437
339
  outgoing_key_identifier: ::String,
438
340
  cipher_text: ::String,
439
- incoming_encryption_attributes: {
440
- symmetric: {
441
- mode: ("ECB" | "CBC" | "CFB" | "CFB1" | "CFB8" | "CFB64" | "CFB128" | "OFB"),
442
- initialization_vector: ::String?,
443
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
444
- }?,
445
- dukpt: {
446
- key_serial_number: ::String,
447
- mode: ("ECB" | "CBC")?,
448
- dukpt_key_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?,
449
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")?,
450
- initialization_vector: ::String?
451
- }?
452
- },
453
- outgoing_encryption_attributes: {
454
- symmetric: {
455
- mode: ("ECB" | "CBC" | "CFB" | "CFB1" | "CFB8" | "CFB64" | "CFB128" | "OFB"),
456
- initialization_vector: ::String?,
457
- padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")?
458
- }?,
459
- dukpt: {
460
- key_serial_number: ::String,
461
- mode: ("ECB" | "CBC")?,
462
- dukpt_key_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?,
463
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")?,
464
- initialization_vector: ::String?
465
- }?
466
- },
467
- ?incoming_wrapped_key: {
468
- wrapped_key_material: {
469
- tr_31_key_block: ::String?,
470
- diffie_hellman_symmetric_key: {
471
- certificate_authority_public_key_identifier: ::String,
472
- public_key_certificate: ::String,
473
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
474
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
475
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
476
- shared_information: ::String
477
- }?
478
- },
479
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
480
- },
481
- ?outgoing_wrapped_key: {
482
- wrapped_key_material: {
483
- tr_31_key_block: ::String?,
484
- diffie_hellman_symmetric_key: {
485
- certificate_authority_public_key_identifier: ::String,
486
- public_key_certificate: ::String,
487
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
488
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
489
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
490
- shared_information: ::String
491
- }?
492
- },
493
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
494
- }
341
+ incoming_encryption_attributes: Params::re_encryption_attributes,
342
+ outgoing_encryption_attributes: Params::re_encryption_attributes,
343
+ ?incoming_wrapped_key: Params::wrapped_key,
344
+ ?outgoing_wrapped_key: Params::wrapped_key
495
345
  ) -> _ReEncryptDataResponseSuccess
496
346
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ReEncryptDataResponseSuccess
497
347
 
@@ -534,38 +384,8 @@ module Aws
534
384
  def translate_pin_data: (
535
385
  incoming_key_identifier: ::String,
536
386
  outgoing_key_identifier: ::String,
537
- incoming_translation_attributes: {
538
- iso_format_0: {
539
- primary_account_number: ::String
540
- }?,
541
- iso_format_1: {
542
- }?,
543
- iso_format_3: {
544
- primary_account_number: ::String
545
- }?,
546
- iso_format_4: {
547
- primary_account_number: ::String
548
- }?,
549
- as_2805_format_0: {
550
- primary_account_number: ::String
551
- }?
552
- },
553
- outgoing_translation_attributes: {
554
- iso_format_0: {
555
- primary_account_number: ::String
556
- }?,
557
- iso_format_1: {
558
- }?,
559
- iso_format_3: {
560
- primary_account_number: ::String
561
- }?,
562
- iso_format_4: {
563
- primary_account_number: ::String
564
- }?,
565
- as_2805_format_0: {
566
- primary_account_number: ::String
567
- }?
568
- },
387
+ incoming_translation_attributes: Params::translation_iso_formats,
388
+ outgoing_translation_attributes: Params::translation_iso_formats,
569
389
  encrypted_pin_block: ::String,
570
390
  ?incoming_dukpt_attributes: {
571
391
  key_serial_number: ::String,
@@ -577,34 +397,8 @@ module Aws
577
397
  dukpt_key_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?,
578
398
  dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")?
579
399
  },
580
- ?incoming_wrapped_key: {
581
- wrapped_key_material: {
582
- tr_31_key_block: ::String?,
583
- diffie_hellman_symmetric_key: {
584
- certificate_authority_public_key_identifier: ::String,
585
- public_key_certificate: ::String,
586
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
587
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
588
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
589
- shared_information: ::String
590
- }?
591
- },
592
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
593
- },
594
- ?outgoing_wrapped_key: {
595
- wrapped_key_material: {
596
- tr_31_key_block: ::String?,
597
- diffie_hellman_symmetric_key: {
598
- certificate_authority_public_key_identifier: ::String,
599
- public_key_certificate: ::String,
600
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
601
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
602
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
603
- shared_information: ::String
604
- }?
605
- },
606
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
607
- },
400
+ ?incoming_wrapped_key: Params::wrapped_key,
401
+ ?outgoing_wrapped_key: Params::wrapped_key,
608
402
  ?incoming_as_2805_attributes: {
609
403
  system_trace_audit_number: ::String,
610
404
  transaction_amount: ::String
@@ -624,32 +418,7 @@ module Aws
624
418
  transaction_data: ::String,
625
419
  auth_request_cryptogram: ::String,
626
420
  major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
627
- session_key_derivation_attributes: {
628
- emv_common: {
629
- primary_account_number: ::String,
630
- pan_sequence_number: ::String,
631
- application_transaction_counter: ::String
632
- }?,
633
- mastercard: {
634
- primary_account_number: ::String,
635
- pan_sequence_number: ::String,
636
- application_transaction_counter: ::String,
637
- unpredictable_number: ::String
638
- }?,
639
- emv_2000: {
640
- primary_account_number: ::String,
641
- pan_sequence_number: ::String,
642
- application_transaction_counter: ::String
643
- }?,
644
- amex: {
645
- primary_account_number: ::String,
646
- pan_sequence_number: ::String
647
- }?,
648
- visa: {
649
- primary_account_number: ::String,
650
- pan_sequence_number: ::String
651
- }?
652
- },
421
+ session_key_derivation_attributes: Params::session_key_derivation,
653
422
  ?auth_response_attributes: {
654
423
  arpc_method_1: {
655
424
  auth_response_code: ::String
@@ -723,34 +492,7 @@ module Aws
723
492
  key_identifier: ::String,
724
493
  message_data: ::String,
725
494
  mac: ::String,
726
- verification_attributes: {
727
- algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "AS2805_4_1")?,
728
- emv_mac: {
729
- major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
730
- primary_account_number: ::String,
731
- pan_sequence_number: ::String,
732
- session_key_derivation_mode: ("EMV_COMMON_SESSION_KEY" | "EMV2000" | "AMEX" | "MASTERCARD_SESSION_KEY" | "VISA"),
733
- session_key_derivation_value: {
734
- application_cryptogram: ::String?,
735
- application_transaction_counter: ::String?
736
- }
737
- }?,
738
- dukpt_iso_9797_algorithm_1: {
739
- key_serial_number: ::String,
740
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
741
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
742
- }?,
743
- dukpt_iso_9797_algorithm_3: {
744
- key_serial_number: ::String,
745
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
746
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
747
- }?,
748
- dukpt_cmac: {
749
- key_serial_number: ::String,
750
- dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE"),
751
- dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")?
752
- }?
753
- },
495
+ verification_attributes: Params::mac_attributes,
754
496
  ?mac_length: ::Integer
755
497
  ) -> _VerifyMacResponseSuccess
756
498
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _VerifyMacResponseSuccess
@@ -786,20 +528,7 @@ module Aws
786
528
  key_serial_number: ::String,
787
529
  dukpt_derivation_type: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256")
788
530
  },
789
- ?encryption_wrapped_key: {
790
- wrapped_key_material: {
791
- tr_31_key_block: ::String?,
792
- diffie_hellman_symmetric_key: {
793
- certificate_authority_public_key_identifier: ::String,
794
- public_key_certificate: ::String,
795
- key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224"),
796
- key_derivation_function: ("NIST_SP800" | "ANSI_X963"),
797
- key_derivation_hash_algorithm: ("SHA_256" | "SHA_384" | "SHA_512"),
798
- shared_information: ::String
799
- }?
800
- },
801
- key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
802
- }
531
+ ?encryption_wrapped_key: Params::wrapped_key
803
532
  ) -> _VerifyPinDataResponseSuccess
804
533
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _VerifyPinDataResponseSuccess
805
534
  end