aws-sdk-paymentcryptographydata 1.25.0 → 1.27.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -23,6 +23,51 @@ module Aws::PaymentCryptographyData
23
23
  include Aws::Structure
24
24
  end
25
25
 
26
+ # Parameters to derive the confidentiality and integrity keys for a
27
+ # payment card using Amex derivation method.
28
+ #
29
+ # @!attribute [rw] major_key_derivation_mode
30
+ # The method to use when deriving the master key for a payment card
31
+ # using Amex derivation.
32
+ # @return [String]
33
+ #
34
+ # @!attribute [rw] primary_account_number
35
+ # The Primary Account Number (PAN) of the cardholder.
36
+ # @return [String]
37
+ #
38
+ # @!attribute [rw] pan_sequence_number
39
+ # A number that identifies and differentiates payment cards with the
40
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
41
+ # is provided by the terminal.
42
+ # @return [String]
43
+ #
44
+ # @!attribute [rw] application_transaction_counter
45
+ # The transaction counter of the current transaction that is provided
46
+ # by the terminal during transaction processing.
47
+ # @return [String]
48
+ #
49
+ # @!attribute [rw] authorization_request_key_identifier
50
+ # The `keyArn` of the issuer master key for cryptogram (IMK-AC) for
51
+ # the payment card.
52
+ # @return [String]
53
+ #
54
+ # @!attribute [rw] current_pin_attributes
55
+ # The encrypted pinblock of the old pin stored on the chip card.
56
+ # @return [Types::CurrentPinAttributes]
57
+ #
58
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/AmexAttributes AWS API Documentation
59
+ #
60
+ class AmexAttributes < Struct.new(
61
+ :major_key_derivation_mode,
62
+ :primary_account_number,
63
+ :pan_sequence_number,
64
+ :application_transaction_counter,
65
+ :authorization_request_key_identifier,
66
+ :current_pin_attributes)
67
+ SENSITIVE = [:primary_account_number]
68
+ include Aws::Structure
69
+ end
70
+
26
71
  # Card data parameters that are required to generate a Card Security
27
72
  # Code (CSC2) for an AMEX payment card.
28
73
  #
@@ -345,6 +390,26 @@ module Aws::PaymentCryptographyData
345
390
  include Aws::Structure
346
391
  end
347
392
 
393
+ # The parameter values of the current PIN to be changed on the EMV chip
394
+ # card.
395
+ #
396
+ # @!attribute [rw] current_pin_pek_identifier
397
+ # The `keyArn` of the current PIN PEK.
398
+ # @return [String]
399
+ #
400
+ # @!attribute [rw] current_encrypted_pin_block
401
+ # The encrypted pinblock of the current pin stored on the chip card.
402
+ # @return [String]
403
+ #
404
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/CurrentPinAttributes AWS API Documentation
405
+ #
406
+ class CurrentPinAttributes < Struct.new(
407
+ :current_pin_pek_identifier,
408
+ :current_encrypted_pin_block)
409
+ SENSITIVE = [:current_encrypted_pin_block]
410
+ include Aws::Structure
411
+ end
412
+
348
413
  # @!attribute [rw] key_identifier
349
414
  # The `keyARN` of the encryption key that Amazon Web Services Payment
350
415
  # Cryptography uses for ciphertext decryption.
@@ -406,6 +471,57 @@ module Aws::PaymentCryptographyData
406
471
  include Aws::Structure
407
472
  end
408
473
 
474
+ # Parameters to derive the payment card specific confidentiality and
475
+ # integrity keys.
476
+ #
477
+ # @note DerivationMethodAttributes is a union - when making an API calls you must set exactly one of the members.
478
+ #
479
+ # @!attribute [rw] emv_common
480
+ # Parameters to derive the confidentiality and integrity keys for a
481
+ # payment card using Emv common derivation method.
482
+ # @return [Types::EmvCommonAttributes]
483
+ #
484
+ # @!attribute [rw] amex
485
+ # Parameters to derive the confidentiality and integrity keys for a
486
+ # payment card using Amex derivation method.
487
+ # @return [Types::AmexAttributes]
488
+ #
489
+ # @!attribute [rw] visa
490
+ # Parameters to derive the confidentiality and integrity keys for a a
491
+ # payment card using Visa derivation method.
492
+ # @return [Types::VisaAttributes]
493
+ #
494
+ # @!attribute [rw] emv_2000
495
+ # Parameters to derive the confidentiality and integrity keys for a
496
+ # payment card using Emv2000 derivation method.
497
+ # @return [Types::Emv2000Attributes]
498
+ #
499
+ # @!attribute [rw] mastercard
500
+ # Parameters to derive the confidentiality and integrity keys for a
501
+ # payment card using Mastercard derivation method.
502
+ # @return [Types::MasterCardAttributes]
503
+ #
504
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/DerivationMethodAttributes AWS API Documentation
505
+ #
506
+ class DerivationMethodAttributes < Struct.new(
507
+ :emv_common,
508
+ :amex,
509
+ :visa,
510
+ :emv_2000,
511
+ :mastercard,
512
+ :unknown)
513
+ SENSITIVE = []
514
+ include Aws::Structure
515
+ include Aws::Structure::Union
516
+
517
+ class EmvCommon < DerivationMethodAttributes; end
518
+ class Amex < DerivationMethodAttributes; end
519
+ class Visa < DerivationMethodAttributes; end
520
+ class Emv2000 < DerivationMethodAttributes; end
521
+ class Mastercard < DerivationMethodAttributes; end
522
+ class Unknown < DerivationMethodAttributes; end
523
+ end
524
+
409
525
  # Parameters that are required to generate or verify dCVC (Dynamic Card
410
526
  # Verification Code).
411
527
  #
@@ -598,6 +714,142 @@ module Aws::PaymentCryptographyData
598
714
  include Aws::Structure
599
715
  end
600
716
 
717
+ # Parameters required to establish ECDH based key exchange.
718
+ #
719
+ # @!attribute [rw] certificate_authority_public_key_identifier
720
+ # The `keyArn` of the certificate that signed the client's
721
+ # `PublicKeyCertificate`.
722
+ # @return [String]
723
+ #
724
+ # @!attribute [rw] public_key_certificate
725
+ # The client's public key certificate in PEM format (base64 encoded)
726
+ # to use for ECDH key derivation.
727
+ # @return [String]
728
+ #
729
+ # @!attribute [rw] key_algorithm
730
+ # The key algorithm of the derived ECDH key.
731
+ # @return [String]
732
+ #
733
+ # @!attribute [rw] key_derivation_function
734
+ # The key derivation function to use for deriving a key using ECDH.
735
+ # @return [String]
736
+ #
737
+ # @!attribute [rw] key_derivation_hash_algorithm
738
+ # The hash type to use for deriving a key using ECDH.
739
+ # @return [String]
740
+ #
741
+ # @!attribute [rw] shared_information
742
+ # A byte string containing information that binds the ECDH derived key
743
+ # to the two parties involved or to the context of the key.
744
+ #
745
+ # It may include details like identities of the two parties deriving
746
+ # the key, context of the operation, session IDs, and optionally a
747
+ # nonce. It must not contain zero bytes, and re-using shared
748
+ # information for multiple ECDH key derivations is not recommended.
749
+ # @return [String]
750
+ #
751
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/EcdhDerivationAttributes AWS API Documentation
752
+ #
753
+ class EcdhDerivationAttributes < Struct.new(
754
+ :certificate_authority_public_key_identifier,
755
+ :public_key_certificate,
756
+ :key_algorithm,
757
+ :key_derivation_function,
758
+ :key_derivation_hash_algorithm,
759
+ :shared_information)
760
+ SENSITIVE = [:public_key_certificate]
761
+ include Aws::Structure
762
+ end
763
+
764
+ # Parameters to derive the confidentiality and integrity keys for a
765
+ # payment card using EMV2000 deruv.
766
+ #
767
+ # @!attribute [rw] major_key_derivation_mode
768
+ # The method to use when deriving the master key for the payment card.
769
+ # @return [String]
770
+ #
771
+ # @!attribute [rw] primary_account_number
772
+ # The Primary Account Number (PAN) of the cardholder.
773
+ # @return [String]
774
+ #
775
+ # @!attribute [rw] pan_sequence_number
776
+ # A number that identifies and differentiates payment cards with the
777
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
778
+ # is provided by the terminal.
779
+ # @return [String]
780
+ #
781
+ # @!attribute [rw] application_transaction_counter
782
+ # The transaction counter of the current transaction that is provided
783
+ # by the terminal during transaction processing.
784
+ # @return [String]
785
+ #
786
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/Emv2000Attributes AWS API Documentation
787
+ #
788
+ class Emv2000Attributes < Struct.new(
789
+ :major_key_derivation_mode,
790
+ :primary_account_number,
791
+ :pan_sequence_number,
792
+ :application_transaction_counter)
793
+ SENSITIVE = [:primary_account_number]
794
+ include Aws::Structure
795
+ end
796
+
797
+ # Parameters to derive the confidentiality and integrity keys for an Emv
798
+ # common payment card.
799
+ #
800
+ # @!attribute [rw] major_key_derivation_mode
801
+ # The method to use when deriving the master key for the payment card.
802
+ # @return [String]
803
+ #
804
+ # @!attribute [rw] primary_account_number
805
+ # The Primary Account Number (PAN) of the cardholder.
806
+ # @return [String]
807
+ #
808
+ # @!attribute [rw] pan_sequence_number
809
+ # A number that identifies and differentiates payment cards with the
810
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
811
+ # is provided by the terminal.
812
+ # @return [String]
813
+ #
814
+ # @!attribute [rw] application_cryptogram
815
+ # The application cryptogram for the current transaction that is
816
+ # provided by the terminal during transaction processing.
817
+ # @return [String]
818
+ #
819
+ # @!attribute [rw] mode
820
+ # The block cipher method to use for encryption.
821
+ # @return [String]
822
+ #
823
+ # @!attribute [rw] pin_block_padding_type
824
+ # The padding to be added to the PIN block prior to encryption.
825
+ #
826
+ # Padding type should be `ISO_IEC_7816_4`, if `PinBlockLengthPosition`
827
+ # is set to `FRONT_OF_PIN_BLOCK`. No padding is required, if
828
+ # `PinBlockLengthPosition` is set to `NONE`.
829
+ # @return [String]
830
+ #
831
+ # @!attribute [rw] pin_block_length_position
832
+ # Specifies if PIN block length should be added to front of the pin
833
+ # block.
834
+ #
835
+ # If value is set to `FRONT_OF_PIN_BLOCK`, then PIN block padding type
836
+ # should be `ISO_IEC_7816_4`.
837
+ # @return [String]
838
+ #
839
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/EmvCommonAttributes AWS API Documentation
840
+ #
841
+ class EmvCommonAttributes < Struct.new(
842
+ :major_key_derivation_mode,
843
+ :primary_account_number,
844
+ :pan_sequence_number,
845
+ :application_cryptogram,
846
+ :mode,
847
+ :pin_block_padding_type,
848
+ :pin_block_length_position)
849
+ SENSITIVE = [:primary_account_number, :application_cryptogram]
850
+ include Aws::Structure
851
+ end
852
+
601
853
  # Parameters for plaintext encryption using EMV keys.
602
854
  #
603
855
  # @!attribute [rw] major_key_derivation_mode
@@ -613,7 +865,8 @@ module Aws::PaymentCryptographyData
613
865
  #
614
866
  # @!attribute [rw] pan_sequence_number
615
867
  # A number that identifies and differentiates payment cards with the
616
- # same Primary Account Number (PAN).
868
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
869
+ # is provided by the terminal.
617
870
  # @return [String]
618
871
  #
619
872
  # @!attribute [rw] session_derivation_data
@@ -821,6 +1074,114 @@ module Aws::PaymentCryptographyData
821
1074
  include Aws::Structure
822
1075
  end
823
1076
 
1077
+ # @!attribute [rw] new_pin_pek_identifier
1078
+ # The `keyARN` of the PEK protecting the incoming new encrypted PIN
1079
+ # block.
1080
+ # @return [String]
1081
+ #
1082
+ # @!attribute [rw] new_encrypted_pin_block
1083
+ # The incoming new encrypted PIN block data for offline pin change on
1084
+ # an EMV card.
1085
+ # @return [String]
1086
+ #
1087
+ # @!attribute [rw] pin_block_format
1088
+ # The PIN encoding format of the incoming new encrypted PIN block as
1089
+ # specified in ISO 9564.
1090
+ # @return [String]
1091
+ #
1092
+ # @!attribute [rw] secure_messaging_integrity_key_identifier
1093
+ # The `keyARN` of the issuer master key (IMK-SMI) used to authenticate
1094
+ # the issuer script response.
1095
+ # @return [String]
1096
+ #
1097
+ # @!attribute [rw] secure_messaging_confidentiality_key_identifier
1098
+ # The `keyARN` of the issuer master key (IMK-SMC) used to protect the
1099
+ # PIN block data in the issuer script response.
1100
+ # @return [String]
1101
+ #
1102
+ # @!attribute [rw] message_data
1103
+ # The message data is the APDU command from the card reader or
1104
+ # terminal. The target encrypted PIN block, after translation to ISO2
1105
+ # format, is appended to this message data to generate an issuer
1106
+ # script response.
1107
+ # @return [String]
1108
+ #
1109
+ # @!attribute [rw] derivation_method_attributes
1110
+ # The attributes and data values to derive payment card specific
1111
+ # confidentiality and integrity keys.
1112
+ # @return [Types::DerivationMethodAttributes]
1113
+ #
1114
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateMacEmvPinChangeInput AWS API Documentation
1115
+ #
1116
+ class GenerateMacEmvPinChangeInput < Struct.new(
1117
+ :new_pin_pek_identifier,
1118
+ :new_encrypted_pin_block,
1119
+ :pin_block_format,
1120
+ :secure_messaging_integrity_key_identifier,
1121
+ :secure_messaging_confidentiality_key_identifier,
1122
+ :message_data,
1123
+ :derivation_method_attributes)
1124
+ SENSITIVE = [:new_encrypted_pin_block, :message_data]
1125
+ include Aws::Structure
1126
+ end
1127
+
1128
+ # @!attribute [rw] new_pin_pek_arn
1129
+ # Returns the `keyArn` of the PEK protecting the incoming new
1130
+ # encrypted PIN block.
1131
+ # @return [String]
1132
+ #
1133
+ # @!attribute [rw] secure_messaging_integrity_key_arn
1134
+ # Returns the `keyArn` of the IMK-SMI used by the operation.
1135
+ # @return [String]
1136
+ #
1137
+ # @!attribute [rw] secure_messaging_confidentiality_key_arn
1138
+ # Returns the `keyArn` of the IMK-SMC used by the operation.
1139
+ # @return [String]
1140
+ #
1141
+ # @!attribute [rw] mac
1142
+ # Returns the mac of the issuer script containing message data and
1143
+ # appended target encrypted pin block in ISO2 format.
1144
+ # @return [String]
1145
+ #
1146
+ # @!attribute [rw] encrypted_pin_block
1147
+ # Returns the incoming new encrpted PIN block.
1148
+ # @return [String]
1149
+ #
1150
+ # @!attribute [rw] new_pin_pek_key_check_value
1151
+ # The key check value (KCV) of the PEK uprotecting the incoming new
1152
+ # encrypted PIN block.
1153
+ # @return [String]
1154
+ #
1155
+ # @!attribute [rw] secure_messaging_integrity_key_check_value
1156
+ # The key check value (KCV) of the SMI issuer master key used by the
1157
+ # operation.
1158
+ # @return [String]
1159
+ #
1160
+ # @!attribute [rw] secure_messaging_confidentiality_key_check_value
1161
+ # The key check value (KCV) of the SMC issuer master key used by the
1162
+ # operation.
1163
+ # @return [String]
1164
+ #
1165
+ # @!attribute [rw] visa_amex_derivation_outputs
1166
+ # The attribute values used for Amex and Visa derivation methods.
1167
+ # @return [Types::VisaAmexDerivationOutputs]
1168
+ #
1169
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateMacEmvPinChangeOutput AWS API Documentation
1170
+ #
1171
+ class GenerateMacEmvPinChangeOutput < Struct.new(
1172
+ :new_pin_pek_arn,
1173
+ :secure_messaging_integrity_key_arn,
1174
+ :secure_messaging_confidentiality_key_arn,
1175
+ :mac,
1176
+ :encrypted_pin_block,
1177
+ :new_pin_pek_key_check_value,
1178
+ :secure_messaging_integrity_key_check_value,
1179
+ :secure_messaging_confidentiality_key_check_value,
1180
+ :visa_amex_derivation_outputs)
1181
+ SENSITIVE = [:mac, :encrypted_pin_block]
1182
+ include Aws::Structure
1183
+ end
1184
+
824
1185
  # @!attribute [rw] key_identifier
825
1186
  # The `keyARN` of the MAC generation encryption key.
826
1187
  # @return [String]
@@ -886,7 +1247,8 @@ module Aws::PaymentCryptographyData
886
1247
  #
887
1248
  # @!attribute [rw] encryption_key_identifier
888
1249
  # The `keyARN` of the PEK that Amazon Web Services Payment
889
- # Cryptography uses to encrypt the PIN Block.
1250
+ # Cryptography uses to encrypt the PIN Block. For ECDH, it is the
1251
+ # `keyARN` of the asymmetric ECC key.
890
1252
  # @return [String]
891
1253
  #
892
1254
  # @!attribute [rw] generation_attributes
@@ -917,6 +1279,11 @@ module Aws::PaymentCryptographyData
917
1279
  # except that the fill digits are random values from 10 to 15.
918
1280
  # @return [String]
919
1281
  #
1282
+ # @!attribute [rw] encryption_wrapped_key
1283
+ # Parameter information of a WrappedKeyBlock for encryption key
1284
+ # exchange.
1285
+ # @return [Types::WrappedKey]
1286
+ #
920
1287
  # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GeneratePinDataInput AWS API Documentation
921
1288
  #
922
1289
  class GeneratePinDataInput < Struct.new(
@@ -925,7 +1292,8 @@ module Aws::PaymentCryptographyData
925
1292
  :generation_attributes,
926
1293
  :pin_data_length,
927
1294
  :primary_account_number,
928
- :pin_block_format)
1295
+ :pin_block_format,
1296
+ :encryption_wrapped_key)
929
1297
  SENSITIVE = [:primary_account_number]
930
1298
  include Aws::Structure
931
1299
  end
@@ -946,7 +1314,8 @@ module Aws::PaymentCryptographyData
946
1314
  #
947
1315
  # @!attribute [rw] encryption_key_arn
948
1316
  # The `keyARN` of the PEK that Amazon Web Services Payment
949
- # Cryptography uses for encrypted pin block generation.
1317
+ # Cryptography uses for encrypted pin block generation. For ECDH, it
1318
+ # is the `keyARN` of the asymmetric ECC key.
950
1319
  # @return [String]
951
1320
  #
952
1321
  # @!attribute [rw] encryption_key_check_value
@@ -1270,6 +1639,39 @@ module Aws::PaymentCryptographyData
1270
1639
  class Unknown < MacAttributes; end
1271
1640
  end
1272
1641
 
1642
+ # Parameters to derive the confidentiality and integrity keys for a
1643
+ # Mastercard payment card.
1644
+ #
1645
+ # @!attribute [rw] major_key_derivation_mode
1646
+ # The method to use when deriving the master key for the payment card.
1647
+ # @return [String]
1648
+ #
1649
+ # @!attribute [rw] primary_account_number
1650
+ # The Primary Account Number (PAN) of the cardholder.
1651
+ # @return [String]
1652
+ #
1653
+ # @!attribute [rw] pan_sequence_number
1654
+ # A number that identifies and differentiates payment cards with the
1655
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
1656
+ # is provided by the terminal.
1657
+ # @return [String]
1658
+ #
1659
+ # @!attribute [rw] application_cryptogram
1660
+ # The application cryptogram for the current transaction that is
1661
+ # provided by the terminal during transaction processing.
1662
+ # @return [String]
1663
+ #
1664
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/MasterCardAttributes AWS API Documentation
1665
+ #
1666
+ class MasterCardAttributes < Struct.new(
1667
+ :major_key_derivation_mode,
1668
+ :primary_account_number,
1669
+ :pan_sequence_number,
1670
+ :application_cryptogram)
1671
+ SENSITIVE = [:primary_account_number, :application_cryptogram]
1672
+ include Aws::Structure
1673
+ end
1674
+
1273
1675
  # Parameters that are required to generate, translate, or verify PIN
1274
1676
  # data.
1275
1677
  #
@@ -1763,14 +2165,15 @@ module Aws::PaymentCryptographyData
1763
2165
  # The `keyARN` of the encryption key under which incoming PIN block
1764
2166
  # data is encrypted. This key type can be PEK or BDK.
1765
2167
  #
1766
- # When a WrappedKeyBlock is provided, this value will be the
1767
- # identifier to the key wrapping key for PIN block. Otherwise, it is
1768
- # the key identifier used to perform the operation.
2168
+ # For dynamic keys, it is the `keyARN` of KEK of the TR-31 wrapped
2169
+ # PEK. For ECDH, it is the `keyARN` of the asymmetric ECC key.
1769
2170
  # @return [String]
1770
2171
  #
1771
2172
  # @!attribute [rw] outgoing_key_identifier
1772
2173
  # The `keyARN` of the encryption key for encrypting outgoing PIN block
1773
2174
  # data. This key type can be PEK or BDK.
2175
+ #
2176
+ # For ECDH, it is the `keyARN` of the asymmetric ECC key.
1774
2177
  # @return [String]
1775
2178
  #
1776
2179
  # @!attribute [rw] incoming_translation_attributes
@@ -2210,6 +2613,11 @@ module Aws::PaymentCryptographyData
2210
2613
  # The attributes and values for the DUKPT encrypted PIN block data.
2211
2614
  # @return [Types::DukptAttributes]
2212
2615
  #
2616
+ # @!attribute [rw] encryption_wrapped_key
2617
+ # Parameter information of a WrappedKeyBlock for encryption key
2618
+ # exchange.
2619
+ # @return [Types::WrappedKey]
2620
+ #
2213
2621
  # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/VerifyPinDataInput AWS API Documentation
2214
2622
  #
2215
2623
  class VerifyPinDataInput < Struct.new(
@@ -2220,7 +2628,8 @@ module Aws::PaymentCryptographyData
2220
2628
  :primary_account_number,
2221
2629
  :pin_block_format,
2222
2630
  :pin_data_length,
2223
- :dukpt_attributes)
2631
+ :dukpt_attributes,
2632
+ :encryption_wrapped_key)
2224
2633
  SENSITIVE = [:encrypted_pin_block, :primary_account_number]
2225
2634
  include Aws::Structure
2226
2635
  end
@@ -2264,6 +2673,81 @@ module Aws::PaymentCryptographyData
2264
2673
  include Aws::Structure
2265
2674
  end
2266
2675
 
2676
+ # The attributes values used for Amex and Visa derivation methods.
2677
+ #
2678
+ # @!attribute [rw] authorization_request_key_arn
2679
+ # The `keyArn` of the issuer master key for cryptogram (IMK-AC) used
2680
+ # by the operation.
2681
+ # @return [String]
2682
+ #
2683
+ # @!attribute [rw] authorization_request_key_check_value
2684
+ # The key check value (KCV) of the issuer master key for cryptogram
2685
+ # (IMK-AC) used by the operation.
2686
+ # @return [String]
2687
+ #
2688
+ # @!attribute [rw] current_pin_pek_arn
2689
+ # The `keyArn` of the current PIN PEK.
2690
+ # @return [String]
2691
+ #
2692
+ # @!attribute [rw] current_pin_pek_key_check_value
2693
+ # The key check value (KCV) of the current PIN PEK.
2694
+ # @return [String]
2695
+ #
2696
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/VisaAmexDerivationOutputs AWS API Documentation
2697
+ #
2698
+ class VisaAmexDerivationOutputs < Struct.new(
2699
+ :authorization_request_key_arn,
2700
+ :authorization_request_key_check_value,
2701
+ :current_pin_pek_arn,
2702
+ :current_pin_pek_key_check_value)
2703
+ SENSITIVE = []
2704
+ include Aws::Structure
2705
+ end
2706
+
2707
+ # Parameters to derive the confidentiality and integrity keys for a Visa
2708
+ # payment card.
2709
+ #
2710
+ # @!attribute [rw] major_key_derivation_mode
2711
+ # The method to use when deriving the master key for the payment card.
2712
+ # @return [String]
2713
+ #
2714
+ # @!attribute [rw] primary_account_number
2715
+ # The Primary Account Number (PAN) of the cardholder.
2716
+ # @return [String]
2717
+ #
2718
+ # @!attribute [rw] pan_sequence_number
2719
+ # A number that identifies and differentiates payment cards with the
2720
+ # same Primary Account Number (PAN). Typically 00 is used, if no value
2721
+ # is provided by the terminal.
2722
+ # @return [String]
2723
+ #
2724
+ # @!attribute [rw] application_transaction_counter
2725
+ # The transaction counter of the current transaction that is provided
2726
+ # by the terminal during transaction processing.
2727
+ # @return [String]
2728
+ #
2729
+ # @!attribute [rw] authorization_request_key_identifier
2730
+ # The `keyArn` of the issuer master key for cryptogram (IMK-AC) for
2731
+ # the payment card.
2732
+ # @return [String]
2733
+ #
2734
+ # @!attribute [rw] current_pin_attributes
2735
+ # The encrypted pinblock of the old pin stored on the chip card.
2736
+ # @return [Types::CurrentPinAttributes]
2737
+ #
2738
+ # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/VisaAttributes AWS API Documentation
2739
+ #
2740
+ class VisaAttributes < Struct.new(
2741
+ :major_key_derivation_mode,
2742
+ :primary_account_number,
2743
+ :pan_sequence_number,
2744
+ :application_transaction_counter,
2745
+ :authorization_request_key_identifier,
2746
+ :current_pin_attributes)
2747
+ SENSITIVE = [:primary_account_number]
2748
+ include Aws::Structure
2749
+ end
2750
+
2267
2751
  # Parameters that are required to generate or verify Visa PIN.
2268
2752
  #
2269
2753
  # @!attribute [rw] pin_verification_key_index
@@ -2360,16 +2844,22 @@ module Aws::PaymentCryptographyData
2360
2844
  # The TR-31 wrapped key block.
2361
2845
  # @return [String]
2362
2846
  #
2847
+ # @!attribute [rw] diffie_hellman_symmetric_key
2848
+ # The parameter information for deriving a ECDH shared key.
2849
+ # @return [Types::EcdhDerivationAttributes]
2850
+ #
2363
2851
  # @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/WrappedKeyMaterial AWS API Documentation
2364
2852
  #
2365
2853
  class WrappedKeyMaterial < Struct.new(
2366
2854
  :tr_31_key_block,
2855
+ :diffie_hellman_symmetric_key,
2367
2856
  :unknown)
2368
2857
  SENSITIVE = [:tr_31_key_block]
2369
2858
  include Aws::Structure
2370
2859
  include Aws::Structure::Union
2371
2860
 
2372
2861
  class Tr31KeyBlock < WrappedKeyMaterial; end
2862
+ class DiffieHellmanSymmetricKey < WrappedKeyMaterial; end
2373
2863
  class Unknown < WrappedKeyMaterial; end
2374
2864
  end
2375
2865
 
@@ -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.25.0'
58
+ GEM_VERSION = '1.27.0'
59
59
 
60
60
  end
61
61