aws-sdk-paymentcryptographydata 1.44.0 → 1.45.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-paymentcryptographydata/client.rb +127 -27
- data/lib/aws-sdk-paymentcryptographydata/client_api.rb +59 -0
- data/lib/aws-sdk-paymentcryptographydata/types.rb +176 -12
- data/lib/aws-sdk-paymentcryptographydata.rb +1 -1
- data/sig/client.rbs +34 -2
- data/sig/types.rbs +55 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: ff21887001aaf2cf33492d3c77b72cce29a87296e58f53812666004266b0a6bd
|
|
4
|
+
data.tar.gz: ba425d1d3bef675edc20735245d79c6805cbb0c1bab754eba91f61267cb88415
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: fedee9f38efd8ee58c30eaad7b18ab227a6740c730144f5e83794757713b0aa65effeb75f3974cba466d8b763948deb86ac584a5a9ff89a6357518a61b9cd9ca
|
|
7
|
+
data.tar.gz: 41248d20e036cfa63af43c3302de50c8b39b729fc702a91321e3ced7d5e78c1657272567a501605802abb0eb150c94ff3938936bbed74316bd89abc08bfe1e58
|
data/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
Unreleased Changes
|
|
2
2
|
------------------
|
|
3
3
|
|
|
4
|
+
1.45.0 (2025-12-17)
|
|
5
|
+
------------------
|
|
6
|
+
|
|
7
|
+
* Feature - Support for AS2805 standard. New API GenerateAs2805KekValidation and changes to translate pin, GenerateMac and VerifyMac to support AS2805 key variants.
|
|
8
|
+
|
|
4
9
|
1.44.0 (2025-11-21)
|
|
5
10
|
------------------
|
|
6
11
|
|
data/VERSION
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
1.
|
|
1
|
+
1.45.0
|
|
@@ -791,6 +791,92 @@ module Aws::PaymentCryptographyData
|
|
|
791
791
|
req.send_request(options)
|
|
792
792
|
end
|
|
793
793
|
|
|
794
|
+
# Establishes node-to-node initialization between payment processing
|
|
795
|
+
# nodes such as an acquirer, issuer or payment network using Australian
|
|
796
|
+
# Standard 2805 (AS2805).
|
|
797
|
+
#
|
|
798
|
+
# During node-to-node initialization, both communicating nodes must
|
|
799
|
+
# validate that they possess the correct Key Encrypting Keys (KEKs)
|
|
800
|
+
# before proceeding with session key exchange. In AS2805, the sending
|
|
801
|
+
# KEK (KEKs) of one node corresponds to the receiving KEK (KEKr) of its
|
|
802
|
+
# partner node. Each node uses its KEK to encrypt and decrypt session
|
|
803
|
+
# keys exchanged between the nodes. A KEK can be created or imported
|
|
804
|
+
# into Amazon Web Services Payment Cryptography using either the
|
|
805
|
+
# [CreateKey][1] or [ImportKey][2] operations.
|
|
806
|
+
#
|
|
807
|
+
# The node initiating communication can use
|
|
808
|
+
# `GenerateAS2805KekValidation` to generate a combined KEK validation
|
|
809
|
+
# request and KEK validation response to send to the partnering node for
|
|
810
|
+
# validation. When invoked, the API internally generates a random
|
|
811
|
+
# sending key encrypted under KEKs and provides a receiving key
|
|
812
|
+
# encrypted under KEKr as response. The initiating node sends the
|
|
813
|
+
# response returned by this API to its partner for validation.
|
|
814
|
+
#
|
|
815
|
+
# For information about valid keys for this operation, see
|
|
816
|
+
# [Understanding key attributes][3] and [Key types for specific data
|
|
817
|
+
# operations][4] in the *Amazon Web Services Payment Cryptography User
|
|
818
|
+
# Guide*.
|
|
819
|
+
#
|
|
820
|
+
# **Cross-account use**: This operation can't be used across different
|
|
821
|
+
# Amazon Web Services accounts.
|
|
822
|
+
#
|
|
823
|
+
#
|
|
824
|
+
#
|
|
825
|
+
# [1]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_CreateKey.html
|
|
826
|
+
# [2]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_ImportKey.html
|
|
827
|
+
# [3]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html
|
|
828
|
+
# [4]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html
|
|
829
|
+
#
|
|
830
|
+
# @option params [required, String] :key_identifier
|
|
831
|
+
# The `keyARN` of sending KEK that Amazon Web Services Payment
|
|
832
|
+
# Cryptography uses for node-to-node initialization
|
|
833
|
+
#
|
|
834
|
+
# @option params [required, Types::As2805KekValidationType] :kek_validation_type
|
|
835
|
+
# Parameter information for generating a random key for KEK validation
|
|
836
|
+
# to perform node-to-node initialization.
|
|
837
|
+
#
|
|
838
|
+
# @option params [required, String] :random_key_send_variant_mask
|
|
839
|
+
# The key variant to use for generating a random key for KEK validation
|
|
840
|
+
# during node-to-node initialization.
|
|
841
|
+
#
|
|
842
|
+
# @return [Types::GenerateAs2805KekValidationOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
843
|
+
#
|
|
844
|
+
# * {Types::GenerateAs2805KekValidationOutput#key_arn #key_arn} => String
|
|
845
|
+
# * {Types::GenerateAs2805KekValidationOutput#key_check_value #key_check_value} => String
|
|
846
|
+
# * {Types::GenerateAs2805KekValidationOutput#random_key_send #random_key_send} => String
|
|
847
|
+
# * {Types::GenerateAs2805KekValidationOutput#random_key_receive #random_key_receive} => String
|
|
848
|
+
#
|
|
849
|
+
# @example Request syntax with placeholder values
|
|
850
|
+
#
|
|
851
|
+
# resp = client.generate_as_2805_kek_validation({
|
|
852
|
+
# key_identifier: "KeyArnOrKeyAliasType", # required
|
|
853
|
+
# kek_validation_type: { # required
|
|
854
|
+
# kek_validation_request: {
|
|
855
|
+
# derive_key_algorithm: "TDES_2KEY", # required, accepts TDES_2KEY, TDES_3KEY, AES_128, AES_192, AES_256, HMAC_SHA256, HMAC_SHA384, HMAC_SHA512, HMAC_SHA224
|
|
856
|
+
# },
|
|
857
|
+
# kek_validation_response: {
|
|
858
|
+
# random_key_send: "As2805RandomKeyMaterial", # required
|
|
859
|
+
# },
|
|
860
|
+
# },
|
|
861
|
+
# random_key_send_variant_mask: "VARIANT_MASK_82C0", # required, accepts VARIANT_MASK_82C0, VARIANT_MASK_82
|
|
862
|
+
# })
|
|
863
|
+
#
|
|
864
|
+
# @example Response structure
|
|
865
|
+
#
|
|
866
|
+
# resp.key_arn #=> String
|
|
867
|
+
# resp.key_check_value #=> String
|
|
868
|
+
# resp.random_key_send #=> String
|
|
869
|
+
# resp.random_key_receive #=> String
|
|
870
|
+
#
|
|
871
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateAs2805KekValidation AWS API Documentation
|
|
872
|
+
#
|
|
873
|
+
# @overload generate_as_2805_kek_validation(params = {})
|
|
874
|
+
# @param [Hash] params ({})
|
|
875
|
+
def generate_as_2805_kek_validation(params = {}, options = {})
|
|
876
|
+
req = build_request(:generate_as_2805_kek_validation, params)
|
|
877
|
+
req.send_request(options)
|
|
878
|
+
end
|
|
879
|
+
|
|
794
880
|
# Generates card-related validation data using algorithms such as Card
|
|
795
881
|
# Verification Values (CVV/CVV2), Dynamic Card Verification Values
|
|
796
882
|
# (dCVV/dCVV2), or Card Security Codes (CSC). For more information, see
|
|
@@ -922,7 +1008,7 @@ module Aws::PaymentCryptographyData
|
|
|
922
1008
|
# by setting generation attributes and algorithm to the associated
|
|
923
1009
|
# values. The MAC generation encryption key must have valid values for
|
|
924
1010
|
# `KeyUsage` such as `TR31_M7_HMAC_KEY` for HMAC generation, and the key
|
|
925
|
-
# must have `KeyModesOfUse` set to `Generate
|
|
1011
|
+
# must have `KeyModesOfUse` set to `Generate`.
|
|
926
1012
|
#
|
|
927
1013
|
# For information about valid keys for this operation, see
|
|
928
1014
|
# [Understanding key attributes][1] and [Key types for specific data
|
|
@@ -969,7 +1055,7 @@ module Aws::PaymentCryptographyData
|
|
|
969
1055
|
# key_identifier: "KeyArnOrKeyAliasType", # required
|
|
970
1056
|
# message_data: "MessageDataType", # required
|
|
971
1057
|
# generation_attributes: { # required
|
|
972
|
-
# algorithm: "ISO9797_ALGORITHM1", # accepts ISO9797_ALGORITHM1, ISO9797_ALGORITHM3, CMAC, HMAC, HMAC_SHA224, HMAC_SHA256, HMAC_SHA384, HMAC_SHA512
|
|
1058
|
+
# algorithm: "ISO9797_ALGORITHM1", # accepts ISO9797_ALGORITHM1, ISO9797_ALGORITHM3, CMAC, HMAC, HMAC_SHA224, HMAC_SHA256, HMAC_SHA384, HMAC_SHA512, AS2805_4_1
|
|
973
1059
|
# emv_mac: {
|
|
974
1060
|
# major_key_derivation_mode: "EMV_OPTION_A", # required, accepts EMV_OPTION_A, EMV_OPTION_B
|
|
975
1061
|
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
@@ -1259,8 +1345,7 @@ module Aws::PaymentCryptographyData
|
|
|
1259
1345
|
# except that the fill digits are random values from 10 to 15.
|
|
1260
1346
|
#
|
|
1261
1347
|
# The `ISO_Format_4` PIN block format is the only one supporting AES
|
|
1262
|
-
# encryption.
|
|
1263
|
-
# length by padding with fill digit A and random values from 10 to 15.
|
|
1348
|
+
# encryption.
|
|
1264
1349
|
#
|
|
1265
1350
|
# @option params [Types::WrappedKey] :encryption_wrapped_key
|
|
1266
1351
|
# Parameter information of a WrappedKeyBlock for encryption key
|
|
@@ -1517,16 +1602,16 @@ module Aws::PaymentCryptographyData
|
|
|
1517
1602
|
req.send_request(options)
|
|
1518
1603
|
end
|
|
1519
1604
|
|
|
1520
|
-
# Translates an
|
|
1521
|
-
# importing the key into Amazon Web Services Payment
|
|
1605
|
+
# Translates an cryptographic key between different wrapping keys
|
|
1606
|
+
# without importing the key into Amazon Web Services Payment
|
|
1607
|
+
# Cryptography.
|
|
1522
1608
|
#
|
|
1523
1609
|
# This operation can be used when key material is frequently rotated,
|
|
1524
1610
|
# such as during every card transaction, and there is a need to avoid
|
|
1525
1611
|
# importing short-lived keys into Amazon Web Services Payment
|
|
1526
|
-
# Cryptography. It translates short-lived transaction keys such as
|
|
1527
|
-
#
|
|
1528
|
-
#
|
|
1529
|
-
# another KEK (Key Encryption Key) wrapping key.
|
|
1612
|
+
# Cryptography. It translates short-lived transaction keys such as
|
|
1613
|
+
# [PEK][1] generated for each transaction and wrapped with an [ECDH][2]
|
|
1614
|
+
# derived wrapping key to another [KEK][3] wrapping key.
|
|
1530
1615
|
#
|
|
1531
1616
|
# Before using this operation, you must first request the public key
|
|
1532
1617
|
# certificate of the ECC key pair generated within Amazon Web Services
|
|
@@ -1536,13 +1621,11 @@ module Aws::PaymentCryptographyData
|
|
|
1536
1621
|
# parameters to generate a derived key. The service uses this derived
|
|
1537
1622
|
# key to unwrap the incoming transaction key received as a
|
|
1538
1623
|
# TR31WrappedKeyBlock and re-wrap using a user provided KEK to generate
|
|
1539
|
-
# an outgoing Tr31WrappedKeyBlock.
|
|
1540
|
-
# ECDH derived keys, see the [Creating keys][1] in the *Amazon Web
|
|
1541
|
-
# Services Payment Cryptography User Guide*.
|
|
1624
|
+
# an outgoing Tr31WrappedKeyBlock.
|
|
1542
1625
|
#
|
|
1543
1626
|
# For information about valid keys for this operation, see
|
|
1544
|
-
# [Understanding key attributes][
|
|
1545
|
-
# operations][
|
|
1627
|
+
# [Understanding key attributes][4] and [Key types for specific data
|
|
1628
|
+
# operations][5] in the *Amazon Web Services Payment Cryptography User
|
|
1546
1629
|
# Guide*.
|
|
1547
1630
|
#
|
|
1548
1631
|
# **Cross-account use**: This operation can't be used across different
|
|
@@ -1550,20 +1633,22 @@ module Aws::PaymentCryptographyData
|
|
|
1550
1633
|
#
|
|
1551
1634
|
# **Related operations:**
|
|
1552
1635
|
#
|
|
1553
|
-
# * [CreateKey][
|
|
1636
|
+
# * [CreateKey][6]
|
|
1554
1637
|
#
|
|
1555
|
-
# * [GetPublicCertificate][
|
|
1638
|
+
# * [GetPublicCertificate][7]
|
|
1556
1639
|
#
|
|
1557
|
-
# * [ImportKey][
|
|
1640
|
+
# * [ImportKey][8]
|
|
1558
1641
|
#
|
|
1559
1642
|
#
|
|
1560
1643
|
#
|
|
1561
|
-
# [1]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/
|
|
1562
|
-
# [2]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/
|
|
1563
|
-
# [3]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/
|
|
1564
|
-
# [4]: https://docs.aws.amazon.com/payment-cryptography/latest/
|
|
1565
|
-
# [5]: https://docs.aws.amazon.com/payment-cryptography/latest/
|
|
1566
|
-
# [6]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/
|
|
1644
|
+
# [1]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/terminology.html#terms.pek
|
|
1645
|
+
# [2]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/terminology.html#terms.ecdh
|
|
1646
|
+
# [3]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/terminology.html#terms.kek
|
|
1647
|
+
# [4]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/keys-validattributes.html
|
|
1648
|
+
# [5]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/crypto-ops-validkeys-ops.html
|
|
1649
|
+
# [6]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_CreateKey.html
|
|
1650
|
+
# [7]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_GetPublicKeyCertificate.html
|
|
1651
|
+
# [8]: https://docs.aws.amazon.com/payment-cryptography/latest/APIReference/API_ImportKey.html
|
|
1567
1652
|
#
|
|
1568
1653
|
# @option params [required, Types::IncomingKeyMaterial] :incoming_key_material
|
|
1569
1654
|
# Parameter information of the TR31WrappedKeyBlock containing the
|
|
@@ -1574,7 +1659,8 @@ module Aws::PaymentCryptographyData
|
|
|
1574
1659
|
# key in the outgoing TR31WrappedKeyBlock.
|
|
1575
1660
|
#
|
|
1576
1661
|
# @option params [String] :key_check_value_algorithm
|
|
1577
|
-
# The key check value (KCV) algorithm used for calculating the KCV
|
|
1662
|
+
# The key check value (KCV) algorithm used for calculating the KCV of
|
|
1663
|
+
# the derived key.
|
|
1578
1664
|
#
|
|
1579
1665
|
# @return [Types::TranslateKeyMaterialOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
1580
1666
|
#
|
|
@@ -1731,6 +1817,10 @@ module Aws::PaymentCryptographyData
|
|
|
1731
1817
|
# The WrappedKeyBlock containing the encryption key for encrypting
|
|
1732
1818
|
# outgoing PIN block data.
|
|
1733
1819
|
#
|
|
1820
|
+
# @option params [Types::As2805PekDerivationAttributes] :incoming_as_2805_attributes
|
|
1821
|
+
# The attributes and values to use for incoming AS2805 encryption key
|
|
1822
|
+
# for PIN block translation.
|
|
1823
|
+
#
|
|
1734
1824
|
# @return [Types::TranslatePinDataOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
|
|
1735
1825
|
#
|
|
1736
1826
|
# * {Types::TranslatePinDataOutput#pin_block #pin_block} => String
|
|
@@ -1754,6 +1844,9 @@ module Aws::PaymentCryptographyData
|
|
|
1754
1844
|
# iso_format_4: {
|
|
1755
1845
|
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
1756
1846
|
# },
|
|
1847
|
+
# as_2805_format_0: {
|
|
1848
|
+
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
1849
|
+
# },
|
|
1757
1850
|
# },
|
|
1758
1851
|
# outgoing_translation_attributes: { # required
|
|
1759
1852
|
# iso_format_0: {
|
|
@@ -1767,6 +1860,9 @@ module Aws::PaymentCryptographyData
|
|
|
1767
1860
|
# iso_format_4: {
|
|
1768
1861
|
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
1769
1862
|
# },
|
|
1863
|
+
# as_2805_format_0: {
|
|
1864
|
+
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
1865
|
+
# },
|
|
1770
1866
|
# },
|
|
1771
1867
|
# encrypted_pin_block: "HexEvenLengthBetween16And32", # required
|
|
1772
1868
|
# incoming_dukpt_attributes: {
|
|
@@ -1807,6 +1903,10 @@ module Aws::PaymentCryptographyData
|
|
|
1807
1903
|
# },
|
|
1808
1904
|
# key_check_value_algorithm: "CMAC", # accepts CMAC, ANSI_X9_24, HMAC, SHA_1
|
|
1809
1905
|
# },
|
|
1906
|
+
# incoming_as_2805_attributes: {
|
|
1907
|
+
# system_trace_audit_number: "SystemTraceAuditNumberType", # required
|
|
1908
|
+
# transaction_amount: "TransactionAmountType", # required
|
|
1909
|
+
# },
|
|
1810
1910
|
# })
|
|
1811
1911
|
#
|
|
1812
1912
|
# @example Response structure
|
|
@@ -2137,7 +2237,7 @@ module Aws::PaymentCryptographyData
|
|
|
2137
2237
|
# message_data: "MessageDataType", # required
|
|
2138
2238
|
# mac: "MacType", # required
|
|
2139
2239
|
# verification_attributes: { # required
|
|
2140
|
-
# algorithm: "ISO9797_ALGORITHM1", # accepts ISO9797_ALGORITHM1, ISO9797_ALGORITHM3, CMAC, HMAC, HMAC_SHA224, HMAC_SHA256, HMAC_SHA384, HMAC_SHA512
|
|
2240
|
+
# algorithm: "ISO9797_ALGORITHM1", # accepts ISO9797_ALGORITHM1, ISO9797_ALGORITHM3, CMAC, HMAC, HMAC_SHA224, HMAC_SHA256, HMAC_SHA384, HMAC_SHA512, AS2805_4_1
|
|
2141
2241
|
# emv_mac: {
|
|
2142
2242
|
# major_key_derivation_mode: "EMV_OPTION_A", # required, accepts EMV_OPTION_A, EMV_OPTION_B
|
|
2143
2243
|
# primary_account_number: "PrimaryAccountNumberType", # required
|
|
@@ -2335,7 +2435,7 @@ module Aws::PaymentCryptographyData
|
|
|
2335
2435
|
tracer: tracer
|
|
2336
2436
|
)
|
|
2337
2437
|
context[:gem_name] = 'aws-sdk-paymentcryptographydata'
|
|
2338
|
-
context[:gem_version] = '1.
|
|
2438
|
+
context[:gem_version] = '1.45.0'
|
|
2339
2439
|
Seahorse::Client::Request.new(handlers, context)
|
|
2340
2440
|
end
|
|
2341
2441
|
|
|
@@ -19,6 +19,9 @@ module Aws::PaymentCryptographyData
|
|
|
19
19
|
AmexCardSecurityCodeVersion1 = Shapes::StructureShape.new(name: 'AmexCardSecurityCodeVersion1')
|
|
20
20
|
AmexCardSecurityCodeVersion2 = Shapes::StructureShape.new(name: 'AmexCardSecurityCodeVersion2')
|
|
21
21
|
ApplicationCryptogramType = Shapes::StringShape.new(name: 'ApplicationCryptogramType')
|
|
22
|
+
As2805KekValidationType = Shapes::UnionShape.new(name: 'As2805KekValidationType')
|
|
23
|
+
As2805PekDerivationAttributes = Shapes::StructureShape.new(name: 'As2805PekDerivationAttributes')
|
|
24
|
+
As2805RandomKeyMaterial = Shapes::StringShape.new(name: 'As2805RandomKeyMaterial')
|
|
22
25
|
AsymmetricEncryptionAttributes = Shapes::StructureShape.new(name: 'AsymmetricEncryptionAttributes')
|
|
23
26
|
AuthRequestCryptogramType = Shapes::StringShape.new(name: 'AuthRequestCryptogramType')
|
|
24
27
|
AuthResponseValueType = Shapes::StringShape.new(name: 'AuthResponseValueType')
|
|
@@ -60,6 +63,8 @@ module Aws::PaymentCryptographyData
|
|
|
60
63
|
EncryptedPinBlockType = Shapes::StringShape.new(name: 'EncryptedPinBlockType')
|
|
61
64
|
EncryptionDecryptionAttributes = Shapes::UnionShape.new(name: 'EncryptionDecryptionAttributes')
|
|
62
65
|
EncryptionMode = Shapes::StringShape.new(name: 'EncryptionMode')
|
|
66
|
+
GenerateAs2805KekValidationInput = Shapes::StructureShape.new(name: 'GenerateAs2805KekValidationInput')
|
|
67
|
+
GenerateAs2805KekValidationOutput = Shapes::StructureShape.new(name: 'GenerateAs2805KekValidationOutput')
|
|
63
68
|
GenerateCardValidationDataInput = Shapes::StructureShape.new(name: 'GenerateCardValidationDataInput')
|
|
64
69
|
GenerateCardValidationDataOutput = Shapes::StructureShape.new(name: 'GenerateCardValidationDataOutput')
|
|
65
70
|
GenerateMacEmvPinChangeInput = Shapes::StructureShape.new(name: 'GenerateMacEmvPinChangeInput')
|
|
@@ -88,6 +93,8 @@ module Aws::PaymentCryptographyData
|
|
|
88
93
|
IntegerRangeBetween4And12 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween4And12')
|
|
89
94
|
IntegerRangeBetween4And16 = Shapes::IntegerShape.new(name: 'IntegerRangeBetween4And16')
|
|
90
95
|
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
|
96
|
+
KekValidationRequest = Shapes::StructureShape.new(name: 'KekValidationRequest')
|
|
97
|
+
KekValidationResponse = Shapes::StructureShape.new(name: 'KekValidationResponse')
|
|
91
98
|
KeyArn = Shapes::StringShape.new(name: 'KeyArn')
|
|
92
99
|
KeyArnOrKeyAliasType = Shapes::StringShape.new(name: 'KeyArnOrKeyAliasType')
|
|
93
100
|
KeyCheckValue = Shapes::StringShape.new(name: 'KeyCheckValue')
|
|
@@ -123,6 +130,7 @@ module Aws::PaymentCryptographyData
|
|
|
123
130
|
PlainTextType = Shapes::StringShape.new(name: 'PlainTextType')
|
|
124
131
|
PrimaryAccountNumberType = Shapes::StringShape.new(name: 'PrimaryAccountNumberType')
|
|
125
132
|
ProprietaryAuthenticationDataType = Shapes::StringShape.new(name: 'ProprietaryAuthenticationDataType')
|
|
133
|
+
RandomKeySendVariantMask = Shapes::StringShape.new(name: 'RandomKeySendVariantMask')
|
|
126
134
|
ReEncryptDataInput = Shapes::StructureShape.new(name: 'ReEncryptDataInput')
|
|
127
135
|
ReEncryptDataOutput = Shapes::StructureShape.new(name: 'ReEncryptDataOutput')
|
|
128
136
|
ReEncryptionAttributes = Shapes::UnionShape.new(name: 'ReEncryptionAttributes')
|
|
@@ -141,15 +149,18 @@ module Aws::PaymentCryptographyData
|
|
|
141
149
|
String = Shapes::StringShape.new(name: 'String')
|
|
142
150
|
SymmetricEncryptionAttributes = Shapes::StructureShape.new(name: 'SymmetricEncryptionAttributes')
|
|
143
151
|
SymmetricKeyAlgorithm = Shapes::StringShape.new(name: 'SymmetricKeyAlgorithm')
|
|
152
|
+
SystemTraceAuditNumberType = Shapes::StringShape.new(name: 'SystemTraceAuditNumberType')
|
|
144
153
|
ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
|
|
145
154
|
Tr31WrappedKeyBlock = Shapes::StringShape.new(name: 'Tr31WrappedKeyBlock')
|
|
146
155
|
TrackDataType = Shapes::StringShape.new(name: 'TrackDataType')
|
|
156
|
+
TransactionAmountType = Shapes::StringShape.new(name: 'TransactionAmountType')
|
|
147
157
|
TransactionDataType = Shapes::StringShape.new(name: 'TransactionDataType')
|
|
148
158
|
TranslateKeyMaterialInput = Shapes::StructureShape.new(name: 'TranslateKeyMaterialInput')
|
|
149
159
|
TranslateKeyMaterialOutput = Shapes::StructureShape.new(name: 'TranslateKeyMaterialOutput')
|
|
150
160
|
TranslatePinDataInput = Shapes::StructureShape.new(name: 'TranslatePinDataInput')
|
|
151
161
|
TranslatePinDataOutput = Shapes::StructureShape.new(name: 'TranslatePinDataOutput')
|
|
152
162
|
TranslationIsoFormats = Shapes::UnionShape.new(name: 'TranslationIsoFormats')
|
|
163
|
+
TranslationPinDataAs2805Format0 = Shapes::StructureShape.new(name: 'TranslationPinDataAs2805Format0')
|
|
153
164
|
TranslationPinDataIsoFormat034 = Shapes::StructureShape.new(name: 'TranslationPinDataIsoFormat034')
|
|
154
165
|
TranslationPinDataIsoFormat1 = Shapes::StructureShape.new(name: 'TranslationPinDataIsoFormat1')
|
|
155
166
|
ValidationDataType = Shapes::StringShape.new(name: 'ValidationDataType')
|
|
@@ -195,6 +206,18 @@ module Aws::PaymentCryptographyData
|
|
|
195
206
|
AmexCardSecurityCodeVersion2.add_member(:service_code, Shapes::ShapeRef.new(shape: ServiceCodeType, required: true, location_name: "ServiceCode"))
|
|
196
207
|
AmexCardSecurityCodeVersion2.struct_class = Types::AmexCardSecurityCodeVersion2
|
|
197
208
|
|
|
209
|
+
As2805KekValidationType.add_member(:kek_validation_request, Shapes::ShapeRef.new(shape: KekValidationRequest, location_name: "KekValidationRequest"))
|
|
210
|
+
As2805KekValidationType.add_member(:kek_validation_response, Shapes::ShapeRef.new(shape: KekValidationResponse, location_name: "KekValidationResponse"))
|
|
211
|
+
As2805KekValidationType.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
|
|
212
|
+
As2805KekValidationType.add_member_subclass(:kek_validation_request, Types::As2805KekValidationType::KekValidationRequest)
|
|
213
|
+
As2805KekValidationType.add_member_subclass(:kek_validation_response, Types::As2805KekValidationType::KekValidationResponse)
|
|
214
|
+
As2805KekValidationType.add_member_subclass(:unknown, Types::As2805KekValidationType::Unknown)
|
|
215
|
+
As2805KekValidationType.struct_class = Types::As2805KekValidationType
|
|
216
|
+
|
|
217
|
+
As2805PekDerivationAttributes.add_member(:system_trace_audit_number, Shapes::ShapeRef.new(shape: SystemTraceAuditNumberType, required: true, location_name: "SystemTraceAuditNumber"))
|
|
218
|
+
As2805PekDerivationAttributes.add_member(:transaction_amount, Shapes::ShapeRef.new(shape: TransactionAmountType, required: true, location_name: "TransactionAmount"))
|
|
219
|
+
As2805PekDerivationAttributes.struct_class = Types::As2805PekDerivationAttributes
|
|
220
|
+
|
|
198
221
|
AsymmetricEncryptionAttributes.add_member(:padding_type, Shapes::ShapeRef.new(shape: PaddingType, location_name: "PaddingType"))
|
|
199
222
|
AsymmetricEncryptionAttributes.struct_class = Types::AsymmetricEncryptionAttributes
|
|
200
223
|
|
|
@@ -385,6 +408,17 @@ module Aws::PaymentCryptographyData
|
|
|
385
408
|
EncryptionDecryptionAttributes.add_member_subclass(:unknown, Types::EncryptionDecryptionAttributes::Unknown)
|
|
386
409
|
EncryptionDecryptionAttributes.struct_class = Types::EncryptionDecryptionAttributes
|
|
387
410
|
|
|
411
|
+
GenerateAs2805KekValidationInput.add_member(:key_identifier, Shapes::ShapeRef.new(shape: KeyArnOrKeyAliasType, required: true, location_name: "KeyIdentifier"))
|
|
412
|
+
GenerateAs2805KekValidationInput.add_member(:kek_validation_type, Shapes::ShapeRef.new(shape: As2805KekValidationType, required: true, location_name: "KekValidationType"))
|
|
413
|
+
GenerateAs2805KekValidationInput.add_member(:random_key_send_variant_mask, Shapes::ShapeRef.new(shape: RandomKeySendVariantMask, required: true, location_name: "RandomKeySendVariantMask"))
|
|
414
|
+
GenerateAs2805KekValidationInput.struct_class = Types::GenerateAs2805KekValidationInput
|
|
415
|
+
|
|
416
|
+
GenerateAs2805KekValidationOutput.add_member(:key_arn, Shapes::ShapeRef.new(shape: KeyArn, required: true, location_name: "KeyArn"))
|
|
417
|
+
GenerateAs2805KekValidationOutput.add_member(:key_check_value, Shapes::ShapeRef.new(shape: KeyCheckValue, required: true, location_name: "KeyCheckValue"))
|
|
418
|
+
GenerateAs2805KekValidationOutput.add_member(:random_key_send, Shapes::ShapeRef.new(shape: As2805RandomKeyMaterial, required: true, location_name: "RandomKeySend"))
|
|
419
|
+
GenerateAs2805KekValidationOutput.add_member(:random_key_receive, Shapes::ShapeRef.new(shape: As2805RandomKeyMaterial, required: true, location_name: "RandomKeyReceive"))
|
|
420
|
+
GenerateAs2805KekValidationOutput.struct_class = Types::GenerateAs2805KekValidationOutput
|
|
421
|
+
|
|
388
422
|
GenerateCardValidationDataInput.add_member(:key_identifier, Shapes::ShapeRef.new(shape: KeyArnOrKeyAliasType, required: true, location_name: "KeyIdentifier"))
|
|
389
423
|
GenerateCardValidationDataInput.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
|
|
390
424
|
GenerateCardValidationDataInput.add_member(:generation_attributes, Shapes::ShapeRef.new(shape: CardGenerationAttributes, required: true, location_name: "GenerationAttributes"))
|
|
@@ -491,6 +525,12 @@ module Aws::PaymentCryptographyData
|
|
|
491
525
|
InternalServerException.add_member(:message, Shapes::ShapeRef.new(shape: String, location_name: "Message"))
|
|
492
526
|
InternalServerException.struct_class = Types::InternalServerException
|
|
493
527
|
|
|
528
|
+
KekValidationRequest.add_member(:derive_key_algorithm, Shapes::ShapeRef.new(shape: SymmetricKeyAlgorithm, required: true, location_name: "DeriveKeyAlgorithm"))
|
|
529
|
+
KekValidationRequest.struct_class = Types::KekValidationRequest
|
|
530
|
+
|
|
531
|
+
KekValidationResponse.add_member(:random_key_send, Shapes::ShapeRef.new(shape: As2805RandomKeyMaterial, required: true, location_name: "RandomKeySend"))
|
|
532
|
+
KekValidationResponse.struct_class = Types::KekValidationResponse
|
|
533
|
+
|
|
494
534
|
MacAlgorithmDukpt.add_member(:key_serial_number, Shapes::ShapeRef.new(shape: HexLength16Or20Or24, required: true, location_name: "KeySerialNumber"))
|
|
495
535
|
MacAlgorithmDukpt.add_member(:dukpt_key_variant, Shapes::ShapeRef.new(shape: DukptKeyVariant, required: true, location_name: "DukptKeyVariant"))
|
|
496
536
|
MacAlgorithmDukpt.add_member(:dukpt_derivation_type, Shapes::ShapeRef.new(shape: DukptDerivationType, location_name: "DukptDerivationType"))
|
|
@@ -660,6 +700,7 @@ module Aws::PaymentCryptographyData
|
|
|
660
700
|
TranslatePinDataInput.add_member(:outgoing_dukpt_attributes, Shapes::ShapeRef.new(shape: DukptDerivationAttributes, location_name: "OutgoingDukptAttributes"))
|
|
661
701
|
TranslatePinDataInput.add_member(:incoming_wrapped_key, Shapes::ShapeRef.new(shape: WrappedKey, location_name: "IncomingWrappedKey"))
|
|
662
702
|
TranslatePinDataInput.add_member(:outgoing_wrapped_key, Shapes::ShapeRef.new(shape: WrappedKey, location_name: "OutgoingWrappedKey"))
|
|
703
|
+
TranslatePinDataInput.add_member(:incoming_as_2805_attributes, Shapes::ShapeRef.new(shape: As2805PekDerivationAttributes, location_name: "IncomingAs2805Attributes"))
|
|
663
704
|
TranslatePinDataInput.struct_class = Types::TranslatePinDataInput
|
|
664
705
|
|
|
665
706
|
TranslatePinDataOutput.add_member(:pin_block, Shapes::ShapeRef.new(shape: EncryptedPinBlockType, required: true, location_name: "PinBlock"))
|
|
@@ -671,14 +712,19 @@ module Aws::PaymentCryptographyData
|
|
|
671
712
|
TranslationIsoFormats.add_member(:iso_format_1, Shapes::ShapeRef.new(shape: TranslationPinDataIsoFormat1, location_name: "IsoFormat1"))
|
|
672
713
|
TranslationIsoFormats.add_member(:iso_format_3, Shapes::ShapeRef.new(shape: TranslationPinDataIsoFormat034, location_name: "IsoFormat3"))
|
|
673
714
|
TranslationIsoFormats.add_member(:iso_format_4, Shapes::ShapeRef.new(shape: TranslationPinDataIsoFormat034, location_name: "IsoFormat4"))
|
|
715
|
+
TranslationIsoFormats.add_member(:as_2805_format_0, Shapes::ShapeRef.new(shape: TranslationPinDataAs2805Format0, location_name: "As2805Format0"))
|
|
674
716
|
TranslationIsoFormats.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
|
|
675
717
|
TranslationIsoFormats.add_member_subclass(:iso_format_0, Types::TranslationIsoFormats::IsoFormat0)
|
|
676
718
|
TranslationIsoFormats.add_member_subclass(:iso_format_1, Types::TranslationIsoFormats::IsoFormat1)
|
|
677
719
|
TranslationIsoFormats.add_member_subclass(:iso_format_3, Types::TranslationIsoFormats::IsoFormat3)
|
|
678
720
|
TranslationIsoFormats.add_member_subclass(:iso_format_4, Types::TranslationIsoFormats::IsoFormat4)
|
|
721
|
+
TranslationIsoFormats.add_member_subclass(:as_2805_format_0, Types::TranslationIsoFormats::As2805Format0)
|
|
679
722
|
TranslationIsoFormats.add_member_subclass(:unknown, Types::TranslationIsoFormats::Unknown)
|
|
680
723
|
TranslationIsoFormats.struct_class = Types::TranslationIsoFormats
|
|
681
724
|
|
|
725
|
+
TranslationPinDataAs2805Format0.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
|
|
726
|
+
TranslationPinDataAs2805Format0.struct_class = Types::TranslationPinDataAs2805Format0
|
|
727
|
+
|
|
682
728
|
TranslationPinDataIsoFormat034.add_member(:primary_account_number, Shapes::ShapeRef.new(shape: PrimaryAccountNumberType, required: true, location_name: "PrimaryAccountNumber"))
|
|
683
729
|
TranslationPinDataIsoFormat034.struct_class = Types::TranslationPinDataIsoFormat034
|
|
684
730
|
|
|
@@ -836,6 +882,19 @@ module Aws::PaymentCryptographyData
|
|
|
836
882
|
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
|
837
883
|
end)
|
|
838
884
|
|
|
885
|
+
api.add_operation(:generate_as_2805_kek_validation, Seahorse::Model::Operation.new.tap do |o|
|
|
886
|
+
o.name = "GenerateAs2805KekValidation"
|
|
887
|
+
o.http_method = "POST"
|
|
888
|
+
o.http_request_uri = "/as2805kekvalidation/generate"
|
|
889
|
+
o.input = Shapes::ShapeRef.new(shape: GenerateAs2805KekValidationInput)
|
|
890
|
+
o.output = Shapes::ShapeRef.new(shape: GenerateAs2805KekValidationOutput)
|
|
891
|
+
o.errors << Shapes::ShapeRef.new(shape: ValidationException)
|
|
892
|
+
o.errors << Shapes::ShapeRef.new(shape: AccessDeniedException)
|
|
893
|
+
o.errors << Shapes::ShapeRef.new(shape: ResourceNotFoundException)
|
|
894
|
+
o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
|
|
895
|
+
o.errors << Shapes::ShapeRef.new(shape: InternalServerException)
|
|
896
|
+
end)
|
|
897
|
+
|
|
839
898
|
api.add_operation(:generate_card_validation_data, Seahorse::Model::Operation.new.tap do |o|
|
|
840
899
|
o.name = "GenerateCardValidationData"
|
|
841
900
|
o.http_method = "POST"
|
|
@@ -104,6 +104,55 @@ module Aws::PaymentCryptographyData
|
|
|
104
104
|
include Aws::Structure
|
|
105
105
|
end
|
|
106
106
|
|
|
107
|
+
# Parameter information for generating a random key for KEK validation
|
|
108
|
+
# to perform node-to-node initialization.
|
|
109
|
+
#
|
|
110
|
+
# @note As2805KekValidationType is a union - when making an API calls you must set exactly one of the members.
|
|
111
|
+
#
|
|
112
|
+
# @!attribute [rw] kek_validation_request
|
|
113
|
+
# Parameter information for generating a KEK validation request during
|
|
114
|
+
# node-to-node initialization.
|
|
115
|
+
# @return [Types::KekValidationRequest]
|
|
116
|
+
#
|
|
117
|
+
# @!attribute [rw] kek_validation_response
|
|
118
|
+
# Parameter information for generating a KEK validation response
|
|
119
|
+
# during node-to-node initialization.
|
|
120
|
+
# @return [Types::KekValidationResponse]
|
|
121
|
+
#
|
|
122
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/As2805KekValidationType AWS API Documentation
|
|
123
|
+
#
|
|
124
|
+
class As2805KekValidationType < Struct.new(
|
|
125
|
+
:kek_validation_request,
|
|
126
|
+
:kek_validation_response,
|
|
127
|
+
:unknown)
|
|
128
|
+
SENSITIVE = []
|
|
129
|
+
include Aws::Structure
|
|
130
|
+
include Aws::Structure::Union
|
|
131
|
+
|
|
132
|
+
class KekValidationRequest < As2805KekValidationType; end
|
|
133
|
+
class KekValidationResponse < As2805KekValidationType; end
|
|
134
|
+
class Unknown < As2805KekValidationType; end
|
|
135
|
+
end
|
|
136
|
+
|
|
137
|
+
# Parameter information to use a PEK derived using AS2805.
|
|
138
|
+
#
|
|
139
|
+
# @!attribute [rw] system_trace_audit_number
|
|
140
|
+
# The system trace audit number for the transaction.
|
|
141
|
+
# @return [String]
|
|
142
|
+
#
|
|
143
|
+
# @!attribute [rw] transaction_amount
|
|
144
|
+
# The transaction amount for the transaction.
|
|
145
|
+
# @return [String]
|
|
146
|
+
#
|
|
147
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/As2805PekDerivationAttributes AWS API Documentation
|
|
148
|
+
#
|
|
149
|
+
class As2805PekDerivationAttributes < Struct.new(
|
|
150
|
+
:system_trace_audit_number,
|
|
151
|
+
:transaction_amount)
|
|
152
|
+
SENSITIVE = []
|
|
153
|
+
include Aws::Structure
|
|
154
|
+
end
|
|
155
|
+
|
|
107
156
|
# Parameters for plaintext encryption using asymmetric keys.
|
|
108
157
|
#
|
|
109
158
|
# @!attribute [rw] padding_type
|
|
@@ -1042,6 +1091,62 @@ module Aws::PaymentCryptographyData
|
|
|
1042
1091
|
class Unknown < EncryptionDecryptionAttributes; end
|
|
1043
1092
|
end
|
|
1044
1093
|
|
|
1094
|
+
# @!attribute [rw] key_identifier
|
|
1095
|
+
# The `keyARN` of sending KEK that Amazon Web Services Payment
|
|
1096
|
+
# Cryptography uses for node-to-node initialization
|
|
1097
|
+
# @return [String]
|
|
1098
|
+
#
|
|
1099
|
+
# @!attribute [rw] kek_validation_type
|
|
1100
|
+
# Parameter information for generating a random key for KEK validation
|
|
1101
|
+
# to perform node-to-node initialization.
|
|
1102
|
+
# @return [Types::As2805KekValidationType]
|
|
1103
|
+
#
|
|
1104
|
+
# @!attribute [rw] random_key_send_variant_mask
|
|
1105
|
+
# The key variant to use for generating a random key for KEK
|
|
1106
|
+
# validation during node-to-node initialization.
|
|
1107
|
+
# @return [String]
|
|
1108
|
+
#
|
|
1109
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateAs2805KekValidationInput AWS API Documentation
|
|
1110
|
+
#
|
|
1111
|
+
class GenerateAs2805KekValidationInput < Struct.new(
|
|
1112
|
+
:key_identifier,
|
|
1113
|
+
:kek_validation_type,
|
|
1114
|
+
:random_key_send_variant_mask)
|
|
1115
|
+
SENSITIVE = []
|
|
1116
|
+
include Aws::Structure
|
|
1117
|
+
end
|
|
1118
|
+
|
|
1119
|
+
# @!attribute [rw] key_arn
|
|
1120
|
+
# The `keyARN` of sending KEK that Amazon Web Services Payment
|
|
1121
|
+
# Cryptography validates for node-to-node initialization
|
|
1122
|
+
# @return [String]
|
|
1123
|
+
#
|
|
1124
|
+
# @!attribute [rw] key_check_value
|
|
1125
|
+
# The key check value (KCV) of the sending KEK that Amazon Web
|
|
1126
|
+
# Services Payment Cryptography validates for node-to-node
|
|
1127
|
+
# initialization.
|
|
1128
|
+
# @return [String]
|
|
1129
|
+
#
|
|
1130
|
+
# @!attribute [rw] random_key_send
|
|
1131
|
+
# The random key generated for sending KEK validation.
|
|
1132
|
+
# @return [String]
|
|
1133
|
+
#
|
|
1134
|
+
# @!attribute [rw] random_key_receive
|
|
1135
|
+
# The random key generated for receiving KEK validation. The
|
|
1136
|
+
# initiating node sends this key to its partner node for validation.
|
|
1137
|
+
# @return [String]
|
|
1138
|
+
#
|
|
1139
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/GenerateAs2805KekValidationOutput AWS API Documentation
|
|
1140
|
+
#
|
|
1141
|
+
class GenerateAs2805KekValidationOutput < Struct.new(
|
|
1142
|
+
:key_arn,
|
|
1143
|
+
:key_check_value,
|
|
1144
|
+
:random_key_send,
|
|
1145
|
+
:random_key_receive)
|
|
1146
|
+
SENSITIVE = [:random_key_send, :random_key_receive]
|
|
1147
|
+
include Aws::Structure
|
|
1148
|
+
end
|
|
1149
|
+
|
|
1045
1150
|
# @!attribute [rw] key_identifier
|
|
1046
1151
|
# The `keyARN` of the CVK encryption key that Amazon Web Services
|
|
1047
1152
|
# Payment Cryptography uses to generate card data.
|
|
@@ -1308,9 +1413,7 @@ module Aws::PaymentCryptographyData
|
|
|
1308
1413
|
# except that the fill digits are random values from 10 to 15.
|
|
1309
1414
|
#
|
|
1310
1415
|
# The `ISO_Format_4` PIN block format is the only one supporting AES
|
|
1311
|
-
# encryption.
|
|
1312
|
-
# block length by padding with fill digit A and random values from 10
|
|
1313
|
-
# to 15.
|
|
1416
|
+
# encryption.
|
|
1314
1417
|
# @return [String]
|
|
1315
1418
|
#
|
|
1316
1419
|
# @!attribute [rw] encryption_wrapped_key
|
|
@@ -1628,6 +1731,37 @@ module Aws::PaymentCryptographyData
|
|
|
1628
1731
|
include Aws::Structure
|
|
1629
1732
|
end
|
|
1630
1733
|
|
|
1734
|
+
# Parameter information for generating a KEK validation request during
|
|
1735
|
+
# node-to-node initialization.
|
|
1736
|
+
#
|
|
1737
|
+
# @!attribute [rw] derive_key_algorithm
|
|
1738
|
+
# The key derivation algorithm to use for generating a KEK validation
|
|
1739
|
+
# request.
|
|
1740
|
+
# @return [String]
|
|
1741
|
+
#
|
|
1742
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/KekValidationRequest AWS API Documentation
|
|
1743
|
+
#
|
|
1744
|
+
class KekValidationRequest < Struct.new(
|
|
1745
|
+
:derive_key_algorithm)
|
|
1746
|
+
SENSITIVE = []
|
|
1747
|
+
include Aws::Structure
|
|
1748
|
+
end
|
|
1749
|
+
|
|
1750
|
+
# Parameter information for generating a KEK validation response during
|
|
1751
|
+
# node-to-node initialization.
|
|
1752
|
+
#
|
|
1753
|
+
# @!attribute [rw] random_key_send
|
|
1754
|
+
# The random key for generating a KEK validation response.
|
|
1755
|
+
# @return [String]
|
|
1756
|
+
#
|
|
1757
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/KekValidationResponse AWS API Documentation
|
|
1758
|
+
#
|
|
1759
|
+
class KekValidationResponse < Struct.new(
|
|
1760
|
+
:random_key_send)
|
|
1761
|
+
SENSITIVE = [:random_key_send]
|
|
1762
|
+
include Aws::Structure
|
|
1763
|
+
end
|
|
1764
|
+
|
|
1631
1765
|
# Parameters required for DUKPT MAC generation and verification.
|
|
1632
1766
|
#
|
|
1633
1767
|
# @!attribute [rw] key_serial_number
|
|
@@ -2320,7 +2454,8 @@ module Aws::PaymentCryptographyData
|
|
|
2320
2454
|
# @return [Types::OutgoingKeyMaterial]
|
|
2321
2455
|
#
|
|
2322
2456
|
# @!attribute [rw] key_check_value_algorithm
|
|
2323
|
-
# The key check value (KCV) algorithm used for calculating the KCV
|
|
2457
|
+
# The key check value (KCV) algorithm used for calculating the KCV of
|
|
2458
|
+
# the derived key.
|
|
2324
2459
|
# @return [String]
|
|
2325
2460
|
#
|
|
2326
2461
|
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/TranslateKeyMaterialInput AWS API Documentation
|
|
@@ -2395,6 +2530,11 @@ module Aws::PaymentCryptographyData
|
|
|
2395
2530
|
# outgoing PIN block data.
|
|
2396
2531
|
# @return [Types::WrappedKey]
|
|
2397
2532
|
#
|
|
2533
|
+
# @!attribute [rw] incoming_as_2805_attributes
|
|
2534
|
+
# The attributes and values to use for incoming AS2805 encryption key
|
|
2535
|
+
# for PIN block translation.
|
|
2536
|
+
# @return [Types::As2805PekDerivationAttributes]
|
|
2537
|
+
#
|
|
2398
2538
|
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/TranslatePinDataInput AWS API Documentation
|
|
2399
2539
|
#
|
|
2400
2540
|
class TranslatePinDataInput < Struct.new(
|
|
@@ -2406,7 +2546,8 @@ module Aws::PaymentCryptographyData
|
|
|
2406
2546
|
:incoming_dukpt_attributes,
|
|
2407
2547
|
:outgoing_dukpt_attributes,
|
|
2408
2548
|
:incoming_wrapped_key,
|
|
2409
|
-
:outgoing_wrapped_key
|
|
2549
|
+
:outgoing_wrapped_key,
|
|
2550
|
+
:incoming_as_2805_attributes)
|
|
2410
2551
|
SENSITIVE = [:encrypted_pin_block]
|
|
2411
2552
|
include Aws::Structure
|
|
2412
2553
|
end
|
|
@@ -2446,21 +2587,25 @@ module Aws::PaymentCryptographyData
|
|
|
2446
2587
|
# @note TranslationIsoFormats is a union - when making an API calls you must set exactly one of the members.
|
|
2447
2588
|
#
|
|
2448
2589
|
# @!attribute [rw] iso_format_0
|
|
2449
|
-
# Parameters that are required for ISO9564 PIN format 0
|
|
2590
|
+
# Parameters that are required for ISO9564 PIN format 0 translation.
|
|
2450
2591
|
# @return [Types::TranslationPinDataIsoFormat034]
|
|
2451
2592
|
#
|
|
2452
2593
|
# @!attribute [rw] iso_format_1
|
|
2453
|
-
# Parameters that are required for ISO9564 PIN format 1
|
|
2594
|
+
# Parameters that are required for ISO9564 PIN format 1 translation.
|
|
2454
2595
|
# @return [Types::TranslationPinDataIsoFormat1]
|
|
2455
2596
|
#
|
|
2456
2597
|
# @!attribute [rw] iso_format_3
|
|
2457
|
-
# Parameters that are required for ISO9564 PIN format 3
|
|
2598
|
+
# Parameters that are required for ISO9564 PIN format 3 translation.
|
|
2458
2599
|
# @return [Types::TranslationPinDataIsoFormat034]
|
|
2459
2600
|
#
|
|
2460
2601
|
# @!attribute [rw] iso_format_4
|
|
2461
|
-
# Parameters that are required for ISO9564 PIN format 4
|
|
2602
|
+
# Parameters that are required for ISO9564 PIN format 4 translation.
|
|
2462
2603
|
# @return [Types::TranslationPinDataIsoFormat034]
|
|
2463
2604
|
#
|
|
2605
|
+
# @!attribute [rw] as_2805_format_0
|
|
2606
|
+
# Parameters that are required for AS2805 PIN format 0 translation.
|
|
2607
|
+
# @return [Types::TranslationPinDataAs2805Format0]
|
|
2608
|
+
#
|
|
2464
2609
|
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/TranslationIsoFormats AWS API Documentation
|
|
2465
2610
|
#
|
|
2466
2611
|
class TranslationIsoFormats < Struct.new(
|
|
@@ -2468,6 +2613,7 @@ module Aws::PaymentCryptographyData
|
|
|
2468
2613
|
:iso_format_1,
|
|
2469
2614
|
:iso_format_3,
|
|
2470
2615
|
:iso_format_4,
|
|
2616
|
+
:as_2805_format_0,
|
|
2471
2617
|
:unknown)
|
|
2472
2618
|
SENSITIVE = []
|
|
2473
2619
|
include Aws::Structure
|
|
@@ -2477,11 +2623,29 @@ module Aws::PaymentCryptographyData
|
|
|
2477
2623
|
class IsoFormat1 < TranslationIsoFormats; end
|
|
2478
2624
|
class IsoFormat3 < TranslationIsoFormats; end
|
|
2479
2625
|
class IsoFormat4 < TranslationIsoFormats; end
|
|
2626
|
+
class As2805Format0 < TranslationIsoFormats; end
|
|
2480
2627
|
class Unknown < TranslationIsoFormats; end
|
|
2481
2628
|
end
|
|
2482
2629
|
|
|
2483
|
-
# Parameters that are required for
|
|
2484
|
-
# 0
|
|
2630
|
+
# Parameters that are required for translation between AS2805 PIN format
|
|
2631
|
+
# 0 translation.
|
|
2632
|
+
#
|
|
2633
|
+
# @!attribute [rw] primary_account_number
|
|
2634
|
+
# The Primary Account Number (PAN) of the cardholder. A PAN is a
|
|
2635
|
+
# unique identifier for a payment credit or debit card and associates
|
|
2636
|
+
# the card to a specific account holder.
|
|
2637
|
+
# @return [String]
|
|
2638
|
+
#
|
|
2639
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/payment-cryptography-data-2022-02-03/TranslationPinDataAs2805Format0 AWS API Documentation
|
|
2640
|
+
#
|
|
2641
|
+
class TranslationPinDataAs2805Format0 < Struct.new(
|
|
2642
|
+
:primary_account_number)
|
|
2643
|
+
SENSITIVE = [:primary_account_number]
|
|
2644
|
+
include Aws::Structure
|
|
2645
|
+
end
|
|
2646
|
+
|
|
2647
|
+
# Parameters that are required for translation between ISO9564 PIN
|
|
2648
|
+
# format 0,3,4 translation.
|
|
2485
2649
|
#
|
|
2486
2650
|
# @!attribute [rw] primary_account_number
|
|
2487
2651
|
# The Primary Account Number (PAN) of the cardholder. A PAN is a
|
|
@@ -2497,7 +2661,7 @@ module Aws::PaymentCryptographyData
|
|
|
2497
2661
|
include Aws::Structure
|
|
2498
2662
|
end
|
|
2499
2663
|
|
|
2500
|
-
# Parameters that are required for ISO9564 PIN format 1
|
|
2664
|
+
# Parameters that are required for ISO9564 PIN format 1 translation.
|
|
2501
2665
|
#
|
|
2502
2666
|
# @api private
|
|
2503
2667
|
#
|
data/sig/client.rbs
CHANGED
|
@@ -182,6 +182,28 @@ module Aws
|
|
|
182
182
|
) -> _EncryptDataResponseSuccess
|
|
183
183
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _EncryptDataResponseSuccess
|
|
184
184
|
|
|
185
|
+
interface _GenerateAs2805KekValidationResponseSuccess
|
|
186
|
+
include ::Seahorse::Client::_ResponseSuccess[Types::GenerateAs2805KekValidationOutput]
|
|
187
|
+
def key_arn: () -> ::String
|
|
188
|
+
def key_check_value: () -> ::String
|
|
189
|
+
def random_key_send: () -> ::String
|
|
190
|
+
def random_key_receive: () -> ::String
|
|
191
|
+
end
|
|
192
|
+
# https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/PaymentCryptographyData/Client.html#generate_as_2805_kek_validation-instance_method
|
|
193
|
+
def generate_as_2805_kek_validation: (
|
|
194
|
+
key_identifier: ::String,
|
|
195
|
+
kek_validation_type: {
|
|
196
|
+
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")
|
|
198
|
+
}?,
|
|
199
|
+
kek_validation_response: {
|
|
200
|
+
random_key_send: ::String
|
|
201
|
+
}?
|
|
202
|
+
},
|
|
203
|
+
random_key_send_variant_mask: ("VARIANT_MASK_82C0" | "VARIANT_MASK_82")
|
|
204
|
+
) -> _GenerateAs2805KekValidationResponseSuccess
|
|
205
|
+
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GenerateAs2805KekValidationResponseSuccess
|
|
206
|
+
|
|
185
207
|
interface _GenerateCardValidationDataResponseSuccess
|
|
186
208
|
include ::Seahorse::Client::_ResponseSuccess[Types::GenerateCardValidationDataOutput]
|
|
187
209
|
def key_arn: () -> ::String
|
|
@@ -240,7 +262,7 @@ module Aws
|
|
|
240
262
|
key_identifier: ::String,
|
|
241
263
|
message_data: ::String,
|
|
242
264
|
generation_attributes: {
|
|
243
|
-
algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512")?,
|
|
265
|
+
algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "AS2805_4_1")?,
|
|
244
266
|
emv_mac: {
|
|
245
267
|
major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
|
|
246
268
|
primary_account_number: ::String,
|
|
@@ -523,6 +545,9 @@ module Aws
|
|
|
523
545
|
}?,
|
|
524
546
|
iso_format_4: {
|
|
525
547
|
primary_account_number: ::String
|
|
548
|
+
}?,
|
|
549
|
+
as_2805_format_0: {
|
|
550
|
+
primary_account_number: ::String
|
|
526
551
|
}?
|
|
527
552
|
},
|
|
528
553
|
outgoing_translation_attributes: {
|
|
@@ -536,6 +561,9 @@ module Aws
|
|
|
536
561
|
}?,
|
|
537
562
|
iso_format_4: {
|
|
538
563
|
primary_account_number: ::String
|
|
564
|
+
}?,
|
|
565
|
+
as_2805_format_0: {
|
|
566
|
+
primary_account_number: ::String
|
|
539
567
|
}?
|
|
540
568
|
},
|
|
541
569
|
encrypted_pin_block: ::String,
|
|
@@ -576,6 +604,10 @@ module Aws
|
|
|
576
604
|
}?
|
|
577
605
|
},
|
|
578
606
|
key_check_value_algorithm: ("CMAC" | "ANSI_X9_24" | "HMAC" | "SHA_1")?
|
|
607
|
+
},
|
|
608
|
+
?incoming_as_2805_attributes: {
|
|
609
|
+
system_trace_audit_number: ::String,
|
|
610
|
+
transaction_amount: ::String
|
|
579
611
|
}
|
|
580
612
|
) -> _TranslatePinDataResponseSuccess
|
|
581
613
|
| (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _TranslatePinDataResponseSuccess
|
|
@@ -692,7 +724,7 @@ module Aws
|
|
|
692
724
|
message_data: ::String,
|
|
693
725
|
mac: ::String,
|
|
694
726
|
verification_attributes: {
|
|
695
|
-
algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512")?,
|
|
727
|
+
algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "AS2805_4_1")?,
|
|
696
728
|
emv_mac: {
|
|
697
729
|
major_key_derivation_mode: ("EMV_OPTION_A" | "EMV_OPTION_B"),
|
|
698
730
|
primary_account_number: ::String,
|
data/sig/types.rbs
CHANGED
|
@@ -34,6 +34,26 @@ module Aws::PaymentCryptographyData
|
|
|
34
34
|
SENSITIVE: [:card_expiry_date, :service_code]
|
|
35
35
|
end
|
|
36
36
|
|
|
37
|
+
class As2805KekValidationType
|
|
38
|
+
attr_accessor kek_validation_request: Types::KekValidationRequest
|
|
39
|
+
attr_accessor kek_validation_response: Types::KekValidationResponse
|
|
40
|
+
attr_accessor unknown: untyped
|
|
41
|
+
SENSITIVE: []
|
|
42
|
+
|
|
43
|
+
class KekValidationRequest < As2805KekValidationType
|
|
44
|
+
end
|
|
45
|
+
class KekValidationResponse < As2805KekValidationType
|
|
46
|
+
end
|
|
47
|
+
class Unknown < As2805KekValidationType
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
class As2805PekDerivationAttributes
|
|
52
|
+
attr_accessor system_trace_audit_number: ::String
|
|
53
|
+
attr_accessor transaction_amount: ::String
|
|
54
|
+
SENSITIVE: []
|
|
55
|
+
end
|
|
56
|
+
|
|
37
57
|
class AsymmetricEncryptionAttributes
|
|
38
58
|
attr_accessor padding_type: ("PKCS1" | "OAEP_SHA1" | "OAEP_SHA256" | "OAEP_SHA512")
|
|
39
59
|
SENSITIVE: []
|
|
@@ -317,6 +337,21 @@ module Aws::PaymentCryptographyData
|
|
|
317
337
|
end
|
|
318
338
|
end
|
|
319
339
|
|
|
340
|
+
class GenerateAs2805KekValidationInput
|
|
341
|
+
attr_accessor key_identifier: ::String
|
|
342
|
+
attr_accessor kek_validation_type: Types::As2805KekValidationType
|
|
343
|
+
attr_accessor random_key_send_variant_mask: ("VARIANT_MASK_82C0" | "VARIANT_MASK_82")
|
|
344
|
+
SENSITIVE: []
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
class GenerateAs2805KekValidationOutput
|
|
348
|
+
attr_accessor key_arn: ::String
|
|
349
|
+
attr_accessor key_check_value: ::String
|
|
350
|
+
attr_accessor random_key_send: ::String
|
|
351
|
+
attr_accessor random_key_receive: ::String
|
|
352
|
+
SENSITIVE: [:random_key_send, :random_key_receive]
|
|
353
|
+
end
|
|
354
|
+
|
|
320
355
|
class GenerateCardValidationDataInput
|
|
321
356
|
attr_accessor key_identifier: ::String
|
|
322
357
|
attr_accessor primary_account_number: ::String
|
|
@@ -458,6 +493,16 @@ module Aws::PaymentCryptographyData
|
|
|
458
493
|
SENSITIVE: []
|
|
459
494
|
end
|
|
460
495
|
|
|
496
|
+
class KekValidationRequest
|
|
497
|
+
attr_accessor derive_key_algorithm: ("TDES_2KEY" | "TDES_3KEY" | "AES_128" | "AES_192" | "AES_256" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "HMAC_SHA224")
|
|
498
|
+
SENSITIVE: []
|
|
499
|
+
end
|
|
500
|
+
|
|
501
|
+
class KekValidationResponse
|
|
502
|
+
attr_accessor random_key_send: ::String
|
|
503
|
+
SENSITIVE: [:random_key_send]
|
|
504
|
+
end
|
|
505
|
+
|
|
461
506
|
class MacAlgorithmDukpt
|
|
462
507
|
attr_accessor key_serial_number: ::String
|
|
463
508
|
attr_accessor dukpt_key_variant: ("BIDIRECTIONAL" | "REQUEST" | "RESPONSE")
|
|
@@ -475,7 +520,7 @@ module Aws::PaymentCryptographyData
|
|
|
475
520
|
end
|
|
476
521
|
|
|
477
522
|
class MacAttributes
|
|
478
|
-
attr_accessor algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512")
|
|
523
|
+
attr_accessor algorithm: ("ISO9797_ALGORITHM1" | "ISO9797_ALGORITHM3" | "CMAC" | "HMAC" | "HMAC_SHA224" | "HMAC_SHA256" | "HMAC_SHA384" | "HMAC_SHA512" | "AS2805_4_1")
|
|
479
524
|
attr_accessor emv_mac: Types::MacAlgorithmEmv
|
|
480
525
|
attr_accessor dukpt_iso_9797_algorithm_1: Types::MacAlgorithmDukpt
|
|
481
526
|
attr_accessor dukpt_iso_9797_algorithm_3: Types::MacAlgorithmDukpt
|
|
@@ -717,6 +762,7 @@ module Aws::PaymentCryptographyData
|
|
|
717
762
|
attr_accessor outgoing_dukpt_attributes: Types::DukptDerivationAttributes
|
|
718
763
|
attr_accessor incoming_wrapped_key: Types::WrappedKey
|
|
719
764
|
attr_accessor outgoing_wrapped_key: Types::WrappedKey
|
|
765
|
+
attr_accessor incoming_as_2805_attributes: Types::As2805PekDerivationAttributes
|
|
720
766
|
SENSITIVE: [:encrypted_pin_block]
|
|
721
767
|
end
|
|
722
768
|
|
|
@@ -732,6 +778,7 @@ module Aws::PaymentCryptographyData
|
|
|
732
778
|
attr_accessor iso_format_1: Types::TranslationPinDataIsoFormat1
|
|
733
779
|
attr_accessor iso_format_3: Types::TranslationPinDataIsoFormat034
|
|
734
780
|
attr_accessor iso_format_4: Types::TranslationPinDataIsoFormat034
|
|
781
|
+
attr_accessor as_2805_format_0: Types::TranslationPinDataAs2805Format0
|
|
735
782
|
attr_accessor unknown: untyped
|
|
736
783
|
SENSITIVE: []
|
|
737
784
|
|
|
@@ -743,10 +790,17 @@ module Aws::PaymentCryptographyData
|
|
|
743
790
|
end
|
|
744
791
|
class IsoFormat4 < TranslationIsoFormats
|
|
745
792
|
end
|
|
793
|
+
class As2805Format0 < TranslationIsoFormats
|
|
794
|
+
end
|
|
746
795
|
class Unknown < TranslationIsoFormats
|
|
747
796
|
end
|
|
748
797
|
end
|
|
749
798
|
|
|
799
|
+
class TranslationPinDataAs2805Format0
|
|
800
|
+
attr_accessor primary_account_number: ::String
|
|
801
|
+
SENSITIVE: [:primary_account_number]
|
|
802
|
+
end
|
|
803
|
+
|
|
750
804
|
class TranslationPinDataIsoFormat034
|
|
751
805
|
attr_accessor primary_account_number: ::String
|
|
752
806
|
SENSITIVE: [:primary_account_number]
|