types

package
v1.24.8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 25, 2025 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AccessDeniedException

type AccessDeniedException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

You do not have sufficient access to perform this action.

func (*AccessDeniedException) Error

func (e *AccessDeniedException) Error() string

func (*AccessDeniedException) ErrorCode

func (e *AccessDeniedException) ErrorCode() string

func (*AccessDeniedException) ErrorFault

func (e *AccessDeniedException) ErrorFault() smithy.ErrorFault

func (*AccessDeniedException) ErrorMessage

func (e *AccessDeniedException) ErrorMessage() string

type AmexAttributes added in v1.15.0

type AmexAttributes struct {

	// The transaction counter of the current transaction that is provided by the
	// terminal during transaction processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// The keyArn of the issuer master key for cryptogram (IMK-AC) for the payment
	// card.
	//
	// This member is required.
	AuthorizationRequestKeyIdentifier *string

	// The method to use when deriving the master key for a payment card using Amex
	// derivation.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder.
	//
	// This member is required.
	PrimaryAccountNumber *string

	// The encrypted pinblock of the old pin stored on the chip card.
	CurrentPinAttributes *CurrentPinAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using Amex derivation method.

type AmexCardSecurityCodeVersion1

type AmexCardSecurityCodeVersion1 struct {

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a Card Security Code (CSC2) for an AMEX payment card.

type AmexCardSecurityCodeVersion2

type AmexCardSecurityCodeVersion2 struct {

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string

	// The service code of the AMEX payment card. This is different from the Card
	// Security Code (CSC).
	//
	// This member is required.
	ServiceCode *string
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a Card Security Code (CSC2) for an AMEX payment card.

type AsymmetricEncryptionAttributes

type AsymmetricEncryptionAttributes struct {

	// The padding to be included with the data.
	PaddingType PaddingType
	// contains filtered or unexported fields
}

Parameters for plaintext encryption using asymmetric keys.

type CardGenerationAttributes

type CardGenerationAttributes interface {
	// contains filtered or unexported methods
}

Card data parameters that are required to generate Card Verification Values (CVV/CVV2), Dynamic Card Verification Values (dCVV/dCVV2), or Card Security Codes (CSC).

The following types satisfy this interface:

CardGenerationAttributesMemberAmexCardSecurityCodeVersion1
CardGenerationAttributesMemberAmexCardSecurityCodeVersion2
CardGenerationAttributesMemberCardHolderVerificationValue
CardGenerationAttributesMemberCardVerificationValue1
CardGenerationAttributesMemberCardVerificationValue2
CardGenerationAttributesMemberDynamicCardVerificationCode
CardGenerationAttributesMemberDynamicCardVerificationValue
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.CardGenerationAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.CardGenerationAttributesMemberAmexCardSecurityCodeVersion1:
		_ = v.Value // Value is types.AmexCardSecurityCodeVersion1

	case *types.CardGenerationAttributesMemberAmexCardSecurityCodeVersion2:
		_ = v.Value // Value is types.AmexCardSecurityCodeVersion2

	case *types.CardGenerationAttributesMemberCardHolderVerificationValue:
		_ = v.Value // Value is types.CardHolderVerificationValue

	case *types.CardGenerationAttributesMemberCardVerificationValue1:
		_ = v.Value // Value is types.CardVerificationValue1

	case *types.CardGenerationAttributesMemberCardVerificationValue2:
		_ = v.Value // Value is types.CardVerificationValue2

	case *types.CardGenerationAttributesMemberDynamicCardVerificationCode:
		_ = v.Value // Value is types.DynamicCardVerificationCode

	case *types.CardGenerationAttributesMemberDynamicCardVerificationValue:
		_ = v.Value // Value is types.DynamicCardVerificationValue

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type CardGenerationAttributesMemberAmexCardSecurityCodeVersion1

type CardGenerationAttributesMemberAmexCardSecurityCodeVersion1 struct {
	Value AmexCardSecurityCodeVersion1
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a Card Security Code (CSC2) for an AMEX payment card.

type CardGenerationAttributesMemberAmexCardSecurityCodeVersion2

type CardGenerationAttributesMemberAmexCardSecurityCodeVersion2 struct {
	Value AmexCardSecurityCodeVersion2
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a Card Security Code (CSC2) for an AMEX payment card.

type CardGenerationAttributesMemberCardHolderVerificationValue

type CardGenerationAttributesMemberCardHolderVerificationValue struct {
	Value CardHolderVerificationValue
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a cardholder verification value for the payment card.

type CardGenerationAttributesMemberCardVerificationValue1

type CardGenerationAttributesMemberCardVerificationValue1 struct {
	Value CardVerificationValue1
	// contains filtered or unexported fields
}

Card data parameters that are required to generate Card Verification Value (CVV) for the payment card.

type CardGenerationAttributesMemberCardVerificationValue2

type CardGenerationAttributesMemberCardVerificationValue2 struct {
	Value CardVerificationValue2
	// contains filtered or unexported fields
}

Card data parameters that are required to generate Card Verification Value (CVV2) for the payment card.

type CardGenerationAttributesMemberDynamicCardVerificationCode

type CardGenerationAttributesMemberDynamicCardVerificationCode struct {
	Value DynamicCardVerificationCode
	// contains filtered or unexported fields
}

Card data parameters that are required to generate CDynamic Card Verification Code (dCVC) for the payment card.

type CardGenerationAttributesMemberDynamicCardVerificationValue

type CardGenerationAttributesMemberDynamicCardVerificationValue struct {
	Value DynamicCardVerificationValue
	// contains filtered or unexported fields
}

Card data parameters that are required to generate CDynamic Card Verification Value (dCVV) for the payment card.

type CardHolderVerificationValue

type CardHolderVerificationValue struct {

	// The transaction counter value that comes from a point of sale terminal.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// A random number generated by the issuer.
	//
	// This member is required.
	UnpredictableNumber *string
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a cardholder verification value for the payment card.

type CardVerificationAttributes

type CardVerificationAttributes interface {
	// contains filtered or unexported methods
}

Card data parameters that are requried to verify Card Verification Values (CVV/CVV2), Dynamic Card Verification Values (dCVV/dCVV2), or Card Security Codes (CSC).

The following types satisfy this interface:

CardVerificationAttributesMemberAmexCardSecurityCodeVersion1
CardVerificationAttributesMemberAmexCardSecurityCodeVersion2
CardVerificationAttributesMemberCardHolderVerificationValue
CardVerificationAttributesMemberCardVerificationValue1
CardVerificationAttributesMemberCardVerificationValue2
CardVerificationAttributesMemberDiscoverDynamicCardVerificationCode
CardVerificationAttributesMemberDynamicCardVerificationCode
CardVerificationAttributesMemberDynamicCardVerificationValue
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.CardVerificationAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.CardVerificationAttributesMemberAmexCardSecurityCodeVersion1:
		_ = v.Value // Value is types.AmexCardSecurityCodeVersion1

	case *types.CardVerificationAttributesMemberAmexCardSecurityCodeVersion2:
		_ = v.Value // Value is types.AmexCardSecurityCodeVersion2

	case *types.CardVerificationAttributesMemberCardHolderVerificationValue:
		_ = v.Value // Value is types.CardHolderVerificationValue

	case *types.CardVerificationAttributesMemberCardVerificationValue1:
		_ = v.Value // Value is types.CardVerificationValue1

	case *types.CardVerificationAttributesMemberCardVerificationValue2:
		_ = v.Value // Value is types.CardVerificationValue2

	case *types.CardVerificationAttributesMemberDiscoverDynamicCardVerificationCode:
		_ = v.Value // Value is types.DiscoverDynamicCardVerificationCode

	case *types.CardVerificationAttributesMemberDynamicCardVerificationCode:
		_ = v.Value // Value is types.DynamicCardVerificationCode

	case *types.CardVerificationAttributesMemberDynamicCardVerificationValue:
		_ = v.Value // Value is types.DynamicCardVerificationValue

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type CardVerificationAttributesMemberAmexCardSecurityCodeVersion1

type CardVerificationAttributesMemberAmexCardSecurityCodeVersion1 struct {
	Value AmexCardSecurityCodeVersion1
	// contains filtered or unexported fields
}

Card data parameters that are required to generate a Card Security Code (CSC2) for an AMEX payment card.

type CardVerificationAttributesMemberAmexCardSecurityCodeVersion2

type CardVerificationAttributesMemberAmexCardSecurityCodeVersion2 struct {
	Value AmexCardSecurityCodeVersion2
	// contains filtered or unexported fields
}

Card data parameters that are required to verify a Card Security Code (CSC2) for an AMEX payment card.

type CardVerificationAttributesMemberCardHolderVerificationValue

type CardVerificationAttributesMemberCardHolderVerificationValue struct {
	Value CardHolderVerificationValue
	// contains filtered or unexported fields
}

Card data parameters that are required to verify a cardholder verification value for the payment card.

type CardVerificationAttributesMemberCardVerificationValue1

type CardVerificationAttributesMemberCardVerificationValue1 struct {
	Value CardVerificationValue1
	// contains filtered or unexported fields
}

Card data parameters that are required to verify Card Verification Value (CVV) for the payment card.

type CardVerificationAttributesMemberCardVerificationValue2

type CardVerificationAttributesMemberCardVerificationValue2 struct {
	Value CardVerificationValue2
	// contains filtered or unexported fields
}

Card data parameters that are required to verify Card Verification Value (CVV2) for the payment card.

type CardVerificationAttributesMemberDiscoverDynamicCardVerificationCode

type CardVerificationAttributesMemberDiscoverDynamicCardVerificationCode struct {
	Value DiscoverDynamicCardVerificationCode
	// contains filtered or unexported fields
}

Card data parameters that are required to verify CDynamic Card Verification Code (dCVC) for the payment card.

type CardVerificationAttributesMemberDynamicCardVerificationCode

type CardVerificationAttributesMemberDynamicCardVerificationCode struct {
	Value DynamicCardVerificationCode
	// contains filtered or unexported fields
}

Card data parameters that are required to verify CDynamic Card Verification Code (dCVC) for the payment card.

type CardVerificationAttributesMemberDynamicCardVerificationValue

type CardVerificationAttributesMemberDynamicCardVerificationValue struct {
	Value DynamicCardVerificationValue
	// contains filtered or unexported fields
}

Card data parameters that are required to verify CDynamic Card Verification Value (dCVV) for the payment card.

type CardVerificationValue1

type CardVerificationValue1 struct {

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string

	// The service code of the payment card. This is different from Card Security Code
	// (CSC).
	//
	// This member is required.
	ServiceCode *string
	// contains filtered or unexported fields
}

Card data parameters that are required to verify CVV (Card Verification Value) for the payment card.

type CardVerificationValue2

type CardVerificationValue2 struct {

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string
	// contains filtered or unexported fields
}

Card data parameters that are required to verify Card Verification Value (CVV2) for the payment card.

type CryptogramAuthResponse

type CryptogramAuthResponse interface {
	// contains filtered or unexported methods
}

Parameters that are required for Authorization Response Cryptogram (ARPC) generation after Authorization Request Cryptogram (ARQC) verification is successful.

The following types satisfy this interface:

CryptogramAuthResponseMemberArpcMethod1
CryptogramAuthResponseMemberArpcMethod2
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.CryptogramAuthResponse
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.CryptogramAuthResponseMemberArpcMethod1:
		_ = v.Value // Value is types.CryptogramVerificationArpcMethod1

	case *types.CryptogramAuthResponseMemberArpcMethod2:
		_ = v.Value // Value is types.CryptogramVerificationArpcMethod2

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type CryptogramAuthResponseMemberArpcMethod1

type CryptogramAuthResponseMemberArpcMethod1 struct {
	Value CryptogramVerificationArpcMethod1
	// contains filtered or unexported fields
}

Parameters that are required for ARPC response generation using method1 after ARQC verification is successful.

type CryptogramAuthResponseMemberArpcMethod2

type CryptogramAuthResponseMemberArpcMethod2 struct {
	Value CryptogramVerificationArpcMethod2
	// contains filtered or unexported fields
}

Parameters that are required for ARPC response generation using method2 after ARQC verification is successful.

type CryptogramVerificationArpcMethod1

type CryptogramVerificationArpcMethod1 struct {

	// The auth code used to calculate APRC after ARQC verification is successful.
	// This is the same auth code used for ARQC generation outside of Amazon Web
	// Services Payment Cryptography.
	//
	// This member is required.
	AuthResponseCode *string
	// contains filtered or unexported fields
}

Parameters that are required for ARPC response generation using method1 after ARQC verification is successful.

type CryptogramVerificationArpcMethod2

type CryptogramVerificationArpcMethod2 struct {

	// The data indicating whether the issuer approves or declines an online
	// transaction using an EMV chip card.
	//
	// This member is required.
	CardStatusUpdate *string

	// The proprietary authentication data used by issuer for communication during
	// online transaction using an EMV chip card.
	ProprietaryAuthenticationData *string
	// contains filtered or unexported fields
}

Parameters that are required for ARPC response generation using method2 after ARQC verification is successful.

type CurrentPinAttributes added in v1.15.0

type CurrentPinAttributes struct {

	// The encrypted pinblock of the current pin stored on the chip card.
	//
	// This member is required.
	CurrentEncryptedPinBlock *string

	// The keyArn of the current PIN PEK.
	//
	// This member is required.
	CurrentPinPekIdentifier *string
	// contains filtered or unexported fields
}

The parameter values of the current PIN to be changed on the EMV chip card.

type DerivationMethodAttributes added in v1.15.0

type DerivationMethodAttributes interface {
	// contains filtered or unexported methods
}

Parameters to derive the payment card specific confidentiality and integrity keys.

The following types satisfy this interface:

DerivationMethodAttributesMemberAmex
DerivationMethodAttributesMemberEmv2000
DerivationMethodAttributesMemberEmvCommon
DerivationMethodAttributesMemberMastercard
DerivationMethodAttributesMemberVisa
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.DerivationMethodAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.DerivationMethodAttributesMemberAmex:
		_ = v.Value // Value is types.AmexAttributes

	case *types.DerivationMethodAttributesMemberEmv2000:
		_ = v.Value // Value is types.Emv2000Attributes

	case *types.DerivationMethodAttributesMemberEmvCommon:
		_ = v.Value // Value is types.EmvCommonAttributes

	case *types.DerivationMethodAttributesMemberMastercard:
		_ = v.Value // Value is types.MasterCardAttributes

	case *types.DerivationMethodAttributesMemberVisa:
		_ = v.Value // Value is types.VisaAttributes

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type DerivationMethodAttributesMemberAmex added in v1.15.0

type DerivationMethodAttributesMemberAmex struct {
	Value AmexAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using Amex derivation method.

type DerivationMethodAttributesMemberEmv2000 added in v1.15.0

type DerivationMethodAttributesMemberEmv2000 struct {
	Value Emv2000Attributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using Emv2000 derivation method.

type DerivationMethodAttributesMemberEmvCommon added in v1.15.0

type DerivationMethodAttributesMemberEmvCommon struct {
	Value EmvCommonAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using Emv common derivation method.

type DerivationMethodAttributesMemberMastercard added in v1.15.0

type DerivationMethodAttributesMemberMastercard struct {
	Value MasterCardAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using Mastercard derivation method.

type DerivationMethodAttributesMemberVisa added in v1.15.0

type DerivationMethodAttributesMemberVisa struct {
	Value VisaAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a a payment card using Visa derivation method.

type DiffieHellmanDerivationData added in v1.24.0

type DiffieHellmanDerivationData interface {
	// contains filtered or unexported methods
}

The shared information used when deriving a key using ECDH.

The following types satisfy this interface:

DiffieHellmanDerivationDataMemberSharedInformation
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.DiffieHellmanDerivationData
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.DiffieHellmanDerivationDataMemberSharedInformation:
		_ = v.Value // Value is string

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type DiffieHellmanDerivationDataMemberSharedInformation added in v1.24.0

type DiffieHellmanDerivationDataMemberSharedInformation struct {
	Value string
	// contains filtered or unexported fields
}

A string containing information that binds the ECDH derived key to the two parties involved or to the context of the key.

It may include details like identities of the two parties deriving the key, context of the operation, session IDs, and optionally a nonce. It must not contain zero bytes. It is not recommended to reuse shared information for multiple ECDH key derivations, as it could result in derived key material being the same across different derivations.

type DiscoverDynamicCardVerificationCode

type DiscoverDynamicCardVerificationCode struct {

	// The transaction counter value that comes from the terminal.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string

	// A random number that is generated by the issuer.
	//
	// This member is required.
	UnpredictableNumber *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify dCVC (Dynamic Card Verification Code).

type DukptAttributes

type DukptAttributes struct {

	// The key type derived using DUKPT from a Base Derivation Key (BDK) and Key
	// Serial Number (KSN). This must be less than or equal to the strength of the BDK.
	// For example, you can't use AES_128 as a derivation type for a BDK of AES_128 or
	// TDES_2KEY .
	//
	// This member is required.
	DukptDerivationType DukptDerivationType

	// The unique identifier known as Key Serial Number (KSN) that comes from an
	// encrypting device using DUKPT encryption method. The KSN is derived from the
	// encrypting device unique identifier and an internal transaction counter.
	//
	// This member is required.
	KeySerialNumber *string
	// contains filtered or unexported fields
}

Parameters that are used for Derived Unique Key Per Transaction (DUKPT) derivation algorithm.

type DukptDerivationAttributes

type DukptDerivationAttributes struct {

	// The unique identifier known as Key Serial Number (KSN) that comes from an
	// encrypting device using DUKPT encryption method. The KSN is derived from the
	// encrypting device unique identifier and an internal transaction counter.
	//
	// This member is required.
	KeySerialNumber *string

	// The key type derived using DUKPT from a Base Derivation Key (BDK) and Key
	// Serial Number (KSN). This must be less than or equal to the strength of the BDK.
	// For example, you can't use AES_128 as a derivation type for a BDK of AES_128 or
	// TDES_2KEY
	DukptKeyDerivationType DukptDerivationType

	// The type of use of DUKPT, which can be for incoming data decryption, outgoing
	// data encryption, or both.
	DukptKeyVariant DukptKeyVariant
	// contains filtered or unexported fields
}

Parameters required for encryption or decryption of data using DUKPT.

type DukptDerivationType

type DukptDerivationType string
const (
	DukptDerivationTypeTdes2key DukptDerivationType = "TDES_2KEY"
	DukptDerivationTypeTdes3key DukptDerivationType = "TDES_3KEY"
	DukptDerivationTypeAes128   DukptDerivationType = "AES_128"
	DukptDerivationTypeAes192   DukptDerivationType = "AES_192"
	DukptDerivationTypeAes256   DukptDerivationType = "AES_256"
)

Enum values for DukptDerivationType

func (DukptDerivationType) Values

Values returns all known values for DukptDerivationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DukptEncryptionAttributes

type DukptEncryptionAttributes struct {

	// The unique identifier known as Key Serial Number (KSN) that comes from an
	// encrypting device using DUKPT encryption method. The KSN is derived from the
	// encrypting device unique identifier and an internal transaction counter.
	//
	// This member is required.
	KeySerialNumber *string

	// The key type encrypted using DUKPT from a Base Derivation Key (BDK) and Key
	// Serial Number (KSN). This must be less than or equal to the strength of the BDK.
	// For example, you can't use AES_128 as a derivation type for a BDK of AES_128 or
	// TDES_2KEY
	DukptKeyDerivationType DukptDerivationType

	// The type of use of DUKPT, which can be incoming data decryption, outgoing data
	// encryption, or both.
	DukptKeyVariant DukptKeyVariant

	// An input used to provide the intial state. If no value is provided, Amazon Web
	// Services Payment Cryptography defaults it to zero.
	InitializationVector *string

	// The block cipher method to use for encryption.
	//
	// The default is CBC.
	Mode DukptEncryptionMode
	// contains filtered or unexported fields
}

Parameters that are required to encrypt plaintext data using DUKPT.

type DukptEncryptionMode

type DukptEncryptionMode string
const (
	DukptEncryptionModeEcb DukptEncryptionMode = "ECB"
	DukptEncryptionModeCbc DukptEncryptionMode = "CBC"
)

Enum values for DukptEncryptionMode

func (DukptEncryptionMode) Values

Values returns all known values for DukptEncryptionMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DukptKeyVariant

type DukptKeyVariant string
const (
	DukptKeyVariantBidirectional DukptKeyVariant = "BIDIRECTIONAL"
	DukptKeyVariantRequest       DukptKeyVariant = "REQUEST"
	DukptKeyVariantResponse      DukptKeyVariant = "RESPONSE"
)

Enum values for DukptKeyVariant

func (DukptKeyVariant) Values

func (DukptKeyVariant) Values() []DukptKeyVariant

Values returns all known values for DukptKeyVariant. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DynamicCardVerificationCode

type DynamicCardVerificationCode struct {

	// The transaction counter value that comes from the terminal.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The data on the two tracks of magnetic cards used for financial transactions.
	// This includes the cardholder name, PAN, expiration date, bank ID (BIN) and
	// several other numbers the issuing bank uses to validate the data received.
	//
	// This member is required.
	TrackData *string

	// A random number generated by the issuer.
	//
	// This member is required.
	UnpredictableNumber *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Dynamic Card Verification Value (dCVV).

type DynamicCardVerificationValue

type DynamicCardVerificationValue struct {

	// The transaction counter value that comes from the terminal.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// The expiry date of a payment card.
	//
	// This member is required.
	CardExpiryDate *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The service code of the payment card. This is different from Card Security Code
	// (CSC).
	//
	// This member is required.
	ServiceCode *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Dynamic Card Verification Value (dCVV).

type EcdhDerivationAttributes added in v1.16.0

type EcdhDerivationAttributes struct {

	// The keyArn of the certificate that signed the client's PublicKeyCertificate .
	//
	// This member is required.
	CertificateAuthorityPublicKeyIdentifier *string

	// The key algorithm of the derived ECDH key.
	//
	// This member is required.
	KeyAlgorithm SymmetricKeyAlgorithm

	// The key derivation function to use for deriving a key using ECDH.
	//
	// This member is required.
	KeyDerivationFunction KeyDerivationFunction

	// The hash type to use for deriving a key using ECDH.
	//
	// This member is required.
	KeyDerivationHashAlgorithm KeyDerivationHashAlgorithm

	// The client's public key certificate in PEM format (base64 encoded) to use for
	// ECDH key derivation.
	//
	// This member is required.
	PublicKeyCertificate *string

	// A byte string containing information that binds the ECDH derived key to the two
	// parties involved or to the context of the key.
	//
	// It may include details like identities of the two parties deriving the key,
	// context of the operation, session IDs, and optionally a nonce. It must not
	// contain zero bytes, and re-using shared information for multiple ECDH key
	// derivations is not recommended.
	//
	// This member is required.
	SharedInformation *string
	// contains filtered or unexported fields
}

Parameters required to establish ECDH based key exchange.

type Emv2000Attributes added in v1.15.0

type Emv2000Attributes struct {

	// The transaction counter of the current transaction that is provided by the
	// terminal during transaction processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// The method to use when deriving the master key for the payment card.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a payment card using EMV2000 deruv.

type EmvCommonAttributes added in v1.15.0

type EmvCommonAttributes struct {

	// The application cryptogram for the current transaction that is provided by the
	// terminal during transaction processing.
	//
	// This member is required.
	ApplicationCryptogram *string

	// The method to use when deriving the master key for the payment card.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// The block cipher method to use for encryption.
	//
	// This member is required.
	Mode EmvEncryptionMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// Specifies if PIN block length should be added to front of the pin block.
	//
	// If value is set to FRONT_OF_PIN_BLOCK , then PIN block padding type should be
	// ISO_IEC_7816_4 .
	//
	// This member is required.
	PinBlockLengthPosition PinBlockLengthPosition

	// The padding to be added to the PIN block prior to encryption.
	//
	// Padding type should be ISO_IEC_7816_4 , if PinBlockLengthPosition is set to
	// FRONT_OF_PIN_BLOCK . No padding is required, if PinBlockLengthPosition is set
	// to NONE .
	//
	// This member is required.
	PinBlockPaddingType PinBlockPaddingType

	// The Primary Account Number (PAN) of the cardholder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for an Emv common payment card.

type EmvEncryptionAttributes added in v1.8.0

type EmvEncryptionAttributes struct {

	// The EMV derivation mode to use for ICC master key derivation as per EMV version
	// 4.3 book 2.
	//
	// This member is required.
	MajorKeyDerivationMode EmvMajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN), a unique identifier for a payment credit or
	// debit card and associates the card to a specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string

	// The derivation value used to derive the ICC session key. It is typically the
	// application transaction counter value padded with zeros or previous ARQC value
	// padded with zeros as per EMV version 4.3 book 2.
	//
	// This member is required.
	SessionDerivationData *string

	// An input used to provide the intial state. If no value is provided, Amazon Web
	// Services Payment Cryptography defaults it to zero.
	InitializationVector *string

	// The block cipher method to use for encryption.
	Mode EmvEncryptionMode
	// contains filtered or unexported fields
}

Parameters for plaintext encryption using EMV keys.

type EmvEncryptionMode added in v1.8.0

type EmvEncryptionMode string
const (
	EmvEncryptionModeEcb EmvEncryptionMode = "ECB"
	EmvEncryptionModeCbc EmvEncryptionMode = "CBC"
)

Enum values for EmvEncryptionMode

func (EmvEncryptionMode) Values added in v1.8.0

Values returns all known values for EmvEncryptionMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EmvMajorKeyDerivationMode added in v1.8.0

type EmvMajorKeyDerivationMode string
const (
	EmvMajorKeyDerivationModeEmvOptionA EmvMajorKeyDerivationMode = "EMV_OPTION_A"
	EmvMajorKeyDerivationModeEmvOptionB EmvMajorKeyDerivationMode = "EMV_OPTION_B"
)

Enum values for EmvMajorKeyDerivationMode

func (EmvMajorKeyDerivationMode) Values added in v1.8.0

Values returns all known values for EmvMajorKeyDerivationMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EncryptionDecryptionAttributes

type EncryptionDecryptionAttributes interface {
	// contains filtered or unexported methods
}

Parameters that are required to perform encryption and decryption operations.

The following types satisfy this interface:

EncryptionDecryptionAttributesMemberAsymmetric
EncryptionDecryptionAttributesMemberDukpt
EncryptionDecryptionAttributesMemberEmv
EncryptionDecryptionAttributesMemberSymmetric
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.EncryptionDecryptionAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.EncryptionDecryptionAttributesMemberAsymmetric:
		_ = v.Value // Value is types.AsymmetricEncryptionAttributes

	case *types.EncryptionDecryptionAttributesMemberDukpt:
		_ = v.Value // Value is types.DukptEncryptionAttributes

	case *types.EncryptionDecryptionAttributesMemberEmv:
		_ = v.Value // Value is types.EmvEncryptionAttributes

	case *types.EncryptionDecryptionAttributesMemberSymmetric:
		_ = v.Value // Value is types.SymmetricEncryptionAttributes

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type EncryptionDecryptionAttributesMemberAsymmetric

type EncryptionDecryptionAttributesMemberAsymmetric struct {
	Value AsymmetricEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters for plaintext encryption using asymmetric keys.

type EncryptionDecryptionAttributesMemberDukpt

type EncryptionDecryptionAttributesMemberDukpt struct {
	Value DukptEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters that are required to encrypt plaintext data using DUKPT.

type EncryptionDecryptionAttributesMemberEmv added in v1.8.0

type EncryptionDecryptionAttributesMemberEmv struct {
	Value EmvEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters for plaintext encryption using EMV keys.

type EncryptionDecryptionAttributesMemberSymmetric

type EncryptionDecryptionAttributesMemberSymmetric struct {
	Value SymmetricEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters that are required to perform encryption and decryption using symmetric keys.

type EncryptionMode

type EncryptionMode string
const (
	EncryptionModeEcb    EncryptionMode = "ECB"
	EncryptionModeCbc    EncryptionMode = "CBC"
	EncryptionModeCfb    EncryptionMode = "CFB"
	EncryptionModeCfb1   EncryptionMode = "CFB1"
	EncryptionModeCfb8   EncryptionMode = "CFB8"
	EncryptionModeCfb64  EncryptionMode = "CFB64"
	EncryptionModeCfb128 EncryptionMode = "CFB128"
	EncryptionModeOfb    EncryptionMode = "OFB"
)

Enum values for EncryptionMode

func (EncryptionMode) Values

func (EncryptionMode) Values() []EncryptionMode

Values returns all known values for EncryptionMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Ibm3624NaturalPin

type Ibm3624NaturalPin struct {

	// The decimalization table to use for IBM 3624 PIN algorithm. The table is used
	// to convert the algorithm intermediate result from hexadecimal characters to
	// decimal.
	//
	// This member is required.
	DecimalizationTable *string

	// The unique data for cardholder identification.
	//
	// This member is required.
	PinValidationData *string

	// The padding character for validation data.
	//
	// This member is required.
	PinValidationDataPadCharacter *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 natural PIN.

type Ibm3624PinFromOffset

type Ibm3624PinFromOffset struct {

	// The decimalization table to use for IBM 3624 PIN algorithm. The table is used
	// to convert the algorithm intermediate result from hexadecimal characters to
	// decimal.
	//
	// This member is required.
	DecimalizationTable *string

	// The PIN offset value.
	//
	// This member is required.
	PinOffset *string

	// The unique data for cardholder identification.
	//
	// This member is required.
	PinValidationData *string

	// The padding character for validation data.
	//
	// This member is required.
	PinValidationDataPadCharacter *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 PIN from offset PIN.

type Ibm3624PinOffset

type Ibm3624PinOffset struct {

	// The decimalization table to use for IBM 3624 PIN algorithm. The table is used
	// to convert the algorithm intermediate result from hexadecimal characters to
	// decimal.
	//
	// This member is required.
	DecimalizationTable *string

	// The encrypted PIN block data. According to ISO 9564 standard, a PIN Block is an
	// encoded representation of a payment card Personal Account Number (PAN) and the
	// cardholder Personal Identification Number (PIN).
	//
	// This member is required.
	EncryptedPinBlock *string

	// The unique data for cardholder identification.
	//
	// This member is required.
	PinValidationData *string

	// The padding character for validation data.
	//
	// This member is required.
	PinValidationDataPadCharacter *string
	// contains filtered or unexported fields
}

Pparameters that are required to generate or verify Ibm3624 PIN offset PIN.

type Ibm3624PinVerification

type Ibm3624PinVerification struct {

	// The decimalization table to use for IBM 3624 PIN algorithm. The table is used
	// to convert the algorithm intermediate result from hexadecimal characters to
	// decimal.
	//
	// This member is required.
	DecimalizationTable *string

	// The PIN offset value.
	//
	// This member is required.
	PinOffset *string

	// The unique data for cardholder identification.
	//
	// This member is required.
	PinValidationData *string

	// The padding character for validation data.
	//
	// This member is required.
	PinValidationDataPadCharacter *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 PIN verification PIN.

type Ibm3624RandomPin

type Ibm3624RandomPin struct {

	// The decimalization table to use for IBM 3624 PIN algorithm. The table is used
	// to convert the algorithm intermediate result from hexadecimal characters to
	// decimal.
	//
	// This member is required.
	DecimalizationTable *string

	// The unique data for cardholder identification.
	//
	// This member is required.
	PinValidationData *string

	// The padding character for validation data.
	//
	// This member is required.
	PinValidationDataPadCharacter *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 random PIN.

type IncomingDiffieHellmanTr31KeyBlock added in v1.24.0

type IncomingDiffieHellmanTr31KeyBlock struct {

	// The keyArn of the certificate that signed the client's PublicKeyCertificate .
	//
	// This member is required.
	CertificateAuthorityPublicKeyIdentifier *string

	// The shared information used when deriving a key using ECDH.
	//
	// This member is required.
	DerivationData DiffieHellmanDerivationData

	// The key algorithm of the derived ECDH key.
	//
	// This member is required.
	DeriveKeyAlgorithm SymmetricKeyAlgorithm

	// The key derivation function to use for deriving a key using ECDH.
	//
	// This member is required.
	KeyDerivationFunction KeyDerivationFunction

	// The hash type to use for deriving a key using ECDH.
	//
	// This member is required.
	KeyDerivationHashAlgorithm KeyDerivationHashAlgorithm

	// The keyARN of the asymmetric ECC key pair.
	//
	// This member is required.
	PrivateKeyIdentifier *string

	// The client's public key certificate in PEM format (base64 encoded) to use for
	// ECDH key derivation.
	//
	// This member is required.
	PublicKeyCertificate *string

	// The WrappedKeyBlock containing the transaction key wrapped using an ECDH
	// dervied key.
	//
	// This member is required.
	WrappedKeyBlock *string
	// contains filtered or unexported fields
}

Parameter information of a TR31KeyBlock wrapped using an ECDH derived key.

type IncomingKeyMaterial added in v1.24.0

type IncomingKeyMaterial interface {
	// contains filtered or unexported methods
}

Parameter information of the incoming WrappedKeyBlock containing the transaction key.

The following types satisfy this interface:

IncomingKeyMaterialMemberDiffieHellmanTr31KeyBlock
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.IncomingKeyMaterial
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.IncomingKeyMaterialMemberDiffieHellmanTr31KeyBlock:
		_ = v.Value // Value is types.IncomingDiffieHellmanTr31KeyBlock

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type IncomingKeyMaterialMemberDiffieHellmanTr31KeyBlock added in v1.24.0

type IncomingKeyMaterialMemberDiffieHellmanTr31KeyBlock struct {
	Value IncomingDiffieHellmanTr31KeyBlock
	// contains filtered or unexported fields
}

Parameter information of the TR31WrappedKeyBlock containing the transaction key wrapped using an ECDH dervied key.

type InternalServerException

type InternalServerException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

The request processing has failed because of an unknown error, exception, or failure.

func (*InternalServerException) Error

func (e *InternalServerException) Error() string

func (*InternalServerException) ErrorCode

func (e *InternalServerException) ErrorCode() string

func (*InternalServerException) ErrorFault

func (e *InternalServerException) ErrorFault() smithy.ErrorFault

func (*InternalServerException) ErrorMessage

func (e *InternalServerException) ErrorMessage() string

type KeyCheckValueAlgorithm added in v1.11.0

type KeyCheckValueAlgorithm string
const (
	KeyCheckValueAlgorithmCmac     KeyCheckValueAlgorithm = "CMAC"
	KeyCheckValueAlgorithmAnsiX924 KeyCheckValueAlgorithm = "ANSI_X9_24"
	KeyCheckValueAlgorithmHmac     KeyCheckValueAlgorithm = "HMAC"
	KeyCheckValueAlgorithmSha1     KeyCheckValueAlgorithm = "SHA_1"
)

Enum values for KeyCheckValueAlgorithm

func (KeyCheckValueAlgorithm) Values added in v1.11.0

Values returns all known values for KeyCheckValueAlgorithm. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type KeyDerivationFunction added in v1.16.0

type KeyDerivationFunction string
const (
	KeyDerivationFunctionNistSp800 KeyDerivationFunction = "NIST_SP800"
	KeyDerivationFunctionAnsiX963  KeyDerivationFunction = "ANSI_X963"
)

Enum values for KeyDerivationFunction

func (KeyDerivationFunction) Values added in v1.16.0

Values returns all known values for KeyDerivationFunction. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type KeyDerivationHashAlgorithm added in v1.16.0

type KeyDerivationHashAlgorithm string
const (
	KeyDerivationHashAlgorithmSha256 KeyDerivationHashAlgorithm = "SHA_256"
	KeyDerivationHashAlgorithmSha384 KeyDerivationHashAlgorithm = "SHA_384"
	KeyDerivationHashAlgorithmSha512 KeyDerivationHashAlgorithm = "SHA_512"
)

Enum values for KeyDerivationHashAlgorithm

func (KeyDerivationHashAlgorithm) Values added in v1.16.0

Values returns all known values for KeyDerivationHashAlgorithm. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MacAlgorithm

type MacAlgorithm string
const (
	MacAlgorithmIso9797Algorithm1 MacAlgorithm = "ISO9797_ALGORITHM1"
	MacAlgorithmIso9797Algorithm3 MacAlgorithm = "ISO9797_ALGORITHM3"
	MacAlgorithmCmac              MacAlgorithm = "CMAC"
	MacAlgorithmHmac              MacAlgorithm = "HMAC"
	MacAlgorithmHmacSha224        MacAlgorithm = "HMAC_SHA224"
	MacAlgorithmHmacSha256        MacAlgorithm = "HMAC_SHA256"
	MacAlgorithmHmacSha384        MacAlgorithm = "HMAC_SHA384"
	MacAlgorithmHmacSha512        MacAlgorithm = "HMAC_SHA512"
)

Enum values for MacAlgorithm

func (MacAlgorithm) Values

func (MacAlgorithm) Values() []MacAlgorithm

Values returns all known values for MacAlgorithm. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MacAlgorithmDukpt

type MacAlgorithmDukpt struct {

	// The type of use of DUKPT, which can be MAC generation, MAC verification, or
	// both.
	//
	// This member is required.
	DukptKeyVariant DukptKeyVariant

	// The unique identifier known as Key Serial Number (KSN) that comes from an
	// encrypting device using DUKPT encryption method. The KSN is derived from the
	// encrypting device unique identifier and an internal transaction counter.
	//
	// This member is required.
	KeySerialNumber *string

	// The key type derived using DUKPT from a Base Derivation Key (BDK) and Key
	// Serial Number (KSN). This must be less than or equal to the strength of the BDK.
	// For example, you can't use AES_128 as a derivation type for a BDK of AES_128 or
	// TDES_2KEY .
	DukptDerivationType DukptDerivationType
	// contains filtered or unexported fields
}

Parameters required for DUKPT MAC generation and verification.

type MacAlgorithmEmv

type MacAlgorithmEmv struct {

	// The method to use when deriving the master key for EMV MAC generation or
	// verification.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN), a unique identifier for a payment credit or
	// debit card and associates the card to a specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string

	// The method of deriving a session key for EMV MAC generation or verification.
	//
	// This member is required.
	SessionKeyDerivationMode SessionKeyDerivationMode

	// Parameters that are required to generate session key for EMV generation and
	// verification.
	//
	// This member is required.
	SessionKeyDerivationValue SessionKeyDerivationValue
	// contains filtered or unexported fields
}

Parameters that are required for EMV MAC generation and verification.

type MacAttributes

type MacAttributes interface {
	// contains filtered or unexported methods
}

Parameters that are required for DUKPT, HMAC, or EMV MAC generation or verification.

The following types satisfy this interface:

MacAttributesMemberAlgorithm
MacAttributesMemberDukptCmac
MacAttributesMemberDukptIso9797Algorithm1
MacAttributesMemberDukptIso9797Algorithm3
MacAttributesMemberEmvMac
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.MacAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.MacAttributesMemberAlgorithm:
		_ = v.Value // Value is types.MacAlgorithm

	case *types.MacAttributesMemberDukptCmac:
		_ = v.Value // Value is types.MacAlgorithmDukpt

	case *types.MacAttributesMemberDukptIso9797Algorithm1:
		_ = v.Value // Value is types.MacAlgorithmDukpt

	case *types.MacAttributesMemberDukptIso9797Algorithm3:
		_ = v.Value // Value is types.MacAlgorithmDukpt

	case *types.MacAttributesMemberEmvMac:
		_ = v.Value // Value is types.MacAlgorithmEmv

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type MacAttributesMemberAlgorithm

type MacAttributesMemberAlgorithm struct {
	Value MacAlgorithm
	// contains filtered or unexported fields
}

The encryption algorithm for MAC generation or verification.

type MacAttributesMemberDukptCmac

type MacAttributesMemberDukptCmac struct {
	Value MacAlgorithmDukpt
	// contains filtered or unexported fields
}

Parameters that are required for MAC generation or verification using DUKPT CMAC algorithm.

type MacAttributesMemberDukptIso9797Algorithm1

type MacAttributesMemberDukptIso9797Algorithm1 struct {
	Value MacAlgorithmDukpt
	// contains filtered or unexported fields
}

Parameters that are required for MAC generation or verification using DUKPT ISO 9797 algorithm1.

type MacAttributesMemberDukptIso9797Algorithm3

type MacAttributesMemberDukptIso9797Algorithm3 struct {
	Value MacAlgorithmDukpt
	// contains filtered or unexported fields
}

Parameters that are required for MAC generation or verification using DUKPT ISO 9797 algorithm3.

type MacAttributesMemberEmvMac

type MacAttributesMemberEmvMac struct {
	Value MacAlgorithmEmv
	// contains filtered or unexported fields
}

Parameters that are required for MAC generation or verification using EMV MAC algorithm.

type MajorKeyDerivationMode

type MajorKeyDerivationMode string
const (
	MajorKeyDerivationModeEmvOptionA MajorKeyDerivationMode = "EMV_OPTION_A"
	MajorKeyDerivationModeEmvOptionB MajorKeyDerivationMode = "EMV_OPTION_B"
)

Enum values for MajorKeyDerivationMode

func (MajorKeyDerivationMode) Values

Values returns all known values for MajorKeyDerivationMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MasterCardAttributes added in v1.15.0

type MasterCardAttributes struct {

	// The application cryptogram for the current transaction that is provided by the
	// terminal during transaction processing.
	//
	// This member is required.
	ApplicationCryptogram *string

	// The method to use when deriving the master key for the payment card.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a Mastercard payment card.

type OutgoingKeyMaterial added in v1.24.0

type OutgoingKeyMaterial interface {
	// contains filtered or unexported methods
}

Parameter information of the outgoing TR31WrappedKeyBlock containing the transaction key.

The following types satisfy this interface:

OutgoingKeyMaterialMemberTr31KeyBlock
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.OutgoingKeyMaterial
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.OutgoingKeyMaterialMemberTr31KeyBlock:
		_ = v.Value // Value is types.OutgoingTr31KeyBlock

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type OutgoingKeyMaterialMemberTr31KeyBlock added in v1.24.0

type OutgoingKeyMaterialMemberTr31KeyBlock struct {
	Value OutgoingTr31KeyBlock
	// contains filtered or unexported fields
}

Parameter information of the TR31WrappedKeyBlock containing the transaction key wrapped using a KEK.

type OutgoingTr31KeyBlock added in v1.24.0

type OutgoingTr31KeyBlock struct {

	// The keyARN of the KEK used to wrap the transaction key.
	//
	// This member is required.
	WrappingKeyIdentifier *string
	// contains filtered or unexported fields
}

Parameter information of the TR31WrappedKeyBlock containing the transaction key wrapped using a KEK.

type PaddingType

type PaddingType string
const (
	PaddingTypePkcs1      PaddingType = "PKCS1"
	PaddingTypeOaepSha1   PaddingType = "OAEP_SHA1"
	PaddingTypeOaepSha256 PaddingType = "OAEP_SHA256"
	PaddingTypeOaepSha512 PaddingType = "OAEP_SHA512"
)

Enum values for PaddingType

func (PaddingType) Values

func (PaddingType) Values() []PaddingType

Values returns all known values for PaddingType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PinBlockFormatForEmvPinChange added in v1.15.0

type PinBlockFormatForEmvPinChange string
const (
	PinBlockFormatForEmvPinChangeIsoFormat0 PinBlockFormatForEmvPinChange = "ISO_FORMAT_0"
	PinBlockFormatForEmvPinChangeIsoFormat1 PinBlockFormatForEmvPinChange = "ISO_FORMAT_1"
	PinBlockFormatForEmvPinChangeIsoFormat3 PinBlockFormatForEmvPinChange = "ISO_FORMAT_3"
)

Enum values for PinBlockFormatForEmvPinChange

func (PinBlockFormatForEmvPinChange) Values added in v1.15.0

Values returns all known values for PinBlockFormatForEmvPinChange. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PinBlockFormatForPinData

type PinBlockFormatForPinData string
const (
	PinBlockFormatForPinDataIsoFormat0 PinBlockFormatForPinData = "ISO_FORMAT_0"
	PinBlockFormatForPinDataIsoFormat1 PinBlockFormatForPinData = "ISO_FORMAT_1"
	PinBlockFormatForPinDataIsoFormat3 PinBlockFormatForPinData = "ISO_FORMAT_3"
	PinBlockFormatForPinDataIsoFormat4 PinBlockFormatForPinData = "ISO_FORMAT_4"
)

Enum values for PinBlockFormatForPinData

func (PinBlockFormatForPinData) Values

Values returns all known values for PinBlockFormatForPinData. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PinBlockLengthPosition added in v1.15.0

type PinBlockLengthPosition string
const (
	PinBlockLengthPositionNone            PinBlockLengthPosition = "NONE"
	PinBlockLengthPositionFrontOfPinBlock PinBlockLengthPosition = "FRONT_OF_PIN_BLOCK"
)

Enum values for PinBlockLengthPosition

func (PinBlockLengthPosition) Values added in v1.15.0

Values returns all known values for PinBlockLengthPosition. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PinBlockPaddingType added in v1.15.0

type PinBlockPaddingType string
const (
	PinBlockPaddingTypeNoPadding   PinBlockPaddingType = "NO_PADDING"
	PinBlockPaddingTypeIsoIec78164 PinBlockPaddingType = "ISO_IEC_7816_4"
)

Enum values for PinBlockPaddingType

func (PinBlockPaddingType) Values added in v1.15.0

Values returns all known values for PinBlockPaddingType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PinData

type PinData interface {
	// contains filtered or unexported methods
}

Parameters that are required to generate, translate, or verify PIN data.

The following types satisfy this interface:

PinDataMemberPinOffset
PinDataMemberVerificationValue
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.PinData
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.PinDataMemberPinOffset:
		_ = v.Value // Value is string

	case *types.PinDataMemberVerificationValue:
		_ = v.Value // Value is string

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type PinDataMemberPinOffset

type PinDataMemberPinOffset struct {
	Value string
	// contains filtered or unexported fields
}

The PIN offset value.

type PinDataMemberVerificationValue

type PinDataMemberVerificationValue struct {
	Value string
	// contains filtered or unexported fields
}

The unique data to identify a cardholder. In most cases, this is the same as cardholder's Primary Account Number (PAN). If a value is not provided, it defaults to PAN.

type PinGenerationAttributes

type PinGenerationAttributes interface {
	// contains filtered or unexported methods
}

Parameters that are required for PIN data generation.

The following types satisfy this interface:

PinGenerationAttributesMemberIbm3624NaturalPin
PinGenerationAttributesMemberIbm3624PinFromOffset
PinGenerationAttributesMemberIbm3624PinOffset
PinGenerationAttributesMemberIbm3624RandomPin
PinGenerationAttributesMemberVisaPin
PinGenerationAttributesMemberVisaPinVerificationValue
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.PinGenerationAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.PinGenerationAttributesMemberIbm3624NaturalPin:
		_ = v.Value // Value is types.Ibm3624NaturalPin

	case *types.PinGenerationAttributesMemberIbm3624PinFromOffset:
		_ = v.Value // Value is types.Ibm3624PinFromOffset

	case *types.PinGenerationAttributesMemberIbm3624PinOffset:
		_ = v.Value // Value is types.Ibm3624PinOffset

	case *types.PinGenerationAttributesMemberIbm3624RandomPin:
		_ = v.Value // Value is types.Ibm3624RandomPin

	case *types.PinGenerationAttributesMemberVisaPin:
		_ = v.Value // Value is types.VisaPin

	case *types.PinGenerationAttributesMemberVisaPinVerificationValue:
		_ = v.Value // Value is types.VisaPinVerificationValue

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type PinGenerationAttributesMemberIbm3624NaturalPin

type PinGenerationAttributesMemberIbm3624NaturalPin struct {
	Value Ibm3624NaturalPin
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 natural PIN.

type PinGenerationAttributesMemberIbm3624PinFromOffset

type PinGenerationAttributesMemberIbm3624PinFromOffset struct {
	Value Ibm3624PinFromOffset
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 PIN from offset PIN.

type PinGenerationAttributesMemberIbm3624PinOffset

type PinGenerationAttributesMemberIbm3624PinOffset struct {
	Value Ibm3624PinOffset
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 PIN offset PIN.

type PinGenerationAttributesMemberIbm3624RandomPin

type PinGenerationAttributesMemberIbm3624RandomPin struct {
	Value Ibm3624RandomPin
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 random PIN.

type PinGenerationAttributesMemberVisaPin

type PinGenerationAttributesMemberVisaPin struct {
	Value VisaPin
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PIN.

type PinGenerationAttributesMemberVisaPinVerificationValue

type PinGenerationAttributesMemberVisaPinVerificationValue struct {
	Value VisaPinVerificationValue
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PIN Verification Value (PVV).

type PinVerificationAttributes

type PinVerificationAttributes interface {
	// contains filtered or unexported methods
}

Parameters that are required for PIN data verification.

The following types satisfy this interface:

PinVerificationAttributesMemberIbm3624Pin
PinVerificationAttributesMemberVisaPin
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.PinVerificationAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.PinVerificationAttributesMemberIbm3624Pin:
		_ = v.Value // Value is types.Ibm3624PinVerification

	case *types.PinVerificationAttributesMemberVisaPin:
		_ = v.Value // Value is types.VisaPinVerification

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type PinVerificationAttributesMemberIbm3624Pin

type PinVerificationAttributesMemberIbm3624Pin struct {
	Value Ibm3624PinVerification
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Ibm3624 PIN.

type PinVerificationAttributesMemberVisaPin

type PinVerificationAttributesMemberVisaPin struct {
	Value VisaPinVerification
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PIN.

type ReEncryptionAttributes

type ReEncryptionAttributes interface {
	// contains filtered or unexported methods
}

Parameters that are required to perform reencryption operation.

The following types satisfy this interface:

ReEncryptionAttributesMemberDukpt
ReEncryptionAttributesMemberSymmetric
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.ReEncryptionAttributes
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.ReEncryptionAttributesMemberDukpt:
		_ = v.Value // Value is types.DukptEncryptionAttributes

	case *types.ReEncryptionAttributesMemberSymmetric:
		_ = v.Value // Value is types.SymmetricEncryptionAttributes

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type ReEncryptionAttributesMemberDukpt

type ReEncryptionAttributesMemberDukpt struct {
	Value DukptEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters that are required to encrypt plaintext data using DUKPT.

type ReEncryptionAttributesMemberSymmetric

type ReEncryptionAttributesMemberSymmetric struct {
	Value SymmetricEncryptionAttributes
	// contains filtered or unexported fields
}

Parameters that are required to encrypt data using symmetric keys.

type ResourceNotFoundException

type ResourceNotFoundException struct {
	Message *string

	ErrorCodeOverride *string

	ResourceId *string
	// contains filtered or unexported fields
}

The request was denied due to an invalid resource error.

func (*ResourceNotFoundException) Error

func (e *ResourceNotFoundException) Error() string

func (*ResourceNotFoundException) ErrorCode

func (e *ResourceNotFoundException) ErrorCode() string

func (*ResourceNotFoundException) ErrorFault

func (*ResourceNotFoundException) ErrorMessage

func (e *ResourceNotFoundException) ErrorMessage() string

type SessionKeyAmex

type SessionKeyAmex struct {

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive session key for an Amex payment card.

type SessionKeyDerivation

type SessionKeyDerivation interface {
	// contains filtered or unexported methods
}

Parameters to derive a session key for Authorization Response Cryptogram (ARQC) verification.

The following types satisfy this interface:

SessionKeyDerivationMemberAmex
SessionKeyDerivationMemberEmv2000
SessionKeyDerivationMemberEmvCommon
SessionKeyDerivationMemberMastercard
SessionKeyDerivationMemberVisa
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.SessionKeyDerivation
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.SessionKeyDerivationMemberAmex:
		_ = v.Value // Value is types.SessionKeyAmex

	case *types.SessionKeyDerivationMemberEmv2000:
		_ = v.Value // Value is types.SessionKeyEmv2000

	case *types.SessionKeyDerivationMemberEmvCommon:
		_ = v.Value // Value is types.SessionKeyEmvCommon

	case *types.SessionKeyDerivationMemberMastercard:
		_ = v.Value // Value is types.SessionKeyMastercard

	case *types.SessionKeyDerivationMemberVisa:
		_ = v.Value // Value is types.SessionKeyVisa

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type SessionKeyDerivationMemberAmex

type SessionKeyDerivationMemberAmex struct {
	Value SessionKeyAmex
	// contains filtered or unexported fields
}

Parameters to derive session key for an Amex payment card for ARQC verification.

type SessionKeyDerivationMemberEmv2000

type SessionKeyDerivationMemberEmv2000 struct {
	Value SessionKeyEmv2000
	// contains filtered or unexported fields
}

Parameters to derive session key for an Emv2000 payment card for ARQC verification.

type SessionKeyDerivationMemberEmvCommon

type SessionKeyDerivationMemberEmvCommon struct {
	Value SessionKeyEmvCommon
	// contains filtered or unexported fields
}

Parameters to derive session key for an Emv common payment card for ARQC verification.

type SessionKeyDerivationMemberMastercard

type SessionKeyDerivationMemberMastercard struct {
	Value SessionKeyMastercard
	// contains filtered or unexported fields
}

Parameters to derive session key for a Mastercard payment card for ARQC verification.

type SessionKeyDerivationMemberVisa

type SessionKeyDerivationMemberVisa struct {
	Value SessionKeyVisa
	// contains filtered or unexported fields
}

Parameters to derive session key for a Visa payment cardfor ARQC verification.

type SessionKeyDerivationMode

type SessionKeyDerivationMode string
const (
	SessionKeyDerivationModeEmvCommonSessionKey  SessionKeyDerivationMode = "EMV_COMMON_SESSION_KEY"
	SessionKeyDerivationModeEmv2000              SessionKeyDerivationMode = "EMV2000"
	SessionKeyDerivationModeAmex                 SessionKeyDerivationMode = "AMEX"
	SessionKeyDerivationModeMastercardSessionKey SessionKeyDerivationMode = "MASTERCARD_SESSION_KEY"
	SessionKeyDerivationModeVisa                 SessionKeyDerivationMode = "VISA"
)

Enum values for SessionKeyDerivationMode

func (SessionKeyDerivationMode) Values

Values returns all known values for SessionKeyDerivationMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SessionKeyDerivationValue

type SessionKeyDerivationValue interface {
	// contains filtered or unexported methods
}

Parameters to derive session key value using a MAC EMV algorithm.

The following types satisfy this interface:

SessionKeyDerivationValueMemberApplicationCryptogram
SessionKeyDerivationValueMemberApplicationTransactionCounter
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.SessionKeyDerivationValue
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.SessionKeyDerivationValueMemberApplicationCryptogram:
		_ = v.Value // Value is string

	case *types.SessionKeyDerivationValueMemberApplicationTransactionCounter:
		_ = v.Value // Value is string

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type SessionKeyDerivationValueMemberApplicationCryptogram

type SessionKeyDerivationValueMemberApplicationCryptogram struct {
	Value string
	// contains filtered or unexported fields
}

The cryptogram provided by the terminal during transaction processing.

type SessionKeyDerivationValueMemberApplicationTransactionCounter

type SessionKeyDerivationValueMemberApplicationTransactionCounter struct {
	Value string
	// contains filtered or unexported fields
}

The transaction counter that is provided by the terminal during transaction processing.

type SessionKeyEmv2000

type SessionKeyEmv2000 struct {

	// The transaction counter that is provided by the terminal during transaction
	// processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive session key for an Emv2000 payment card for ARQC verification.

type SessionKeyEmvCommon

type SessionKeyEmvCommon struct {

	// The transaction counter that is provided by the terminal during transaction
	// processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive session key for an Emv common payment card for ARQC verification.

type SessionKeyMastercard

type SessionKeyMastercard struct {

	// The transaction counter that is provided by the terminal during transaction
	// processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string

	// A random number generated by the issuer.
	//
	// This member is required.
	UnpredictableNumber *string
	// contains filtered or unexported fields
}

Parameters to derive session key for Mastercard payment card for ARQC verification.

type SessionKeyVisa

type SessionKeyVisa struct {

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN).
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters to derive session key for Visa payment card for ARQC verification.

type SymmetricEncryptionAttributes

type SymmetricEncryptionAttributes struct {

	// The block cipher method to use for encryption.
	//
	// This member is required.
	Mode EncryptionMode

	// An input used to provide the intial state. If no value is provided, Amazon Web
	// Services Payment Cryptography defaults it to zero.
	InitializationVector *string

	// The padding to be included with the data.
	PaddingType PaddingType
	// contains filtered or unexported fields
}

Parameters requried to encrypt plaintext data using symmetric keys.

type SymmetricKeyAlgorithm added in v1.16.0

type SymmetricKeyAlgorithm string
const (
	SymmetricKeyAlgorithmTdes2key   SymmetricKeyAlgorithm = "TDES_2KEY"
	SymmetricKeyAlgorithmTdes3key   SymmetricKeyAlgorithm = "TDES_3KEY"
	SymmetricKeyAlgorithmAes128     SymmetricKeyAlgorithm = "AES_128"
	SymmetricKeyAlgorithmAes192     SymmetricKeyAlgorithm = "AES_192"
	SymmetricKeyAlgorithmAes256     SymmetricKeyAlgorithm = "AES_256"
	SymmetricKeyAlgorithmHmacSha256 SymmetricKeyAlgorithm = "HMAC_SHA256"
	SymmetricKeyAlgorithmHmacSha384 SymmetricKeyAlgorithm = "HMAC_SHA384"
	SymmetricKeyAlgorithmHmacSha512 SymmetricKeyAlgorithm = "HMAC_SHA512"
	SymmetricKeyAlgorithmHmacSha224 SymmetricKeyAlgorithm = "HMAC_SHA224"
)

Enum values for SymmetricKeyAlgorithm

func (SymmetricKeyAlgorithm) Values added in v1.16.0

Values returns all known values for SymmetricKeyAlgorithm. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ThrottlingException

type ThrottlingException struct {
	Message *string

	ErrorCodeOverride *string
	// contains filtered or unexported fields
}

The request was denied due to request throttling.

func (*ThrottlingException) Error

func (e *ThrottlingException) Error() string

func (*ThrottlingException) ErrorCode

func (e *ThrottlingException) ErrorCode() string

func (*ThrottlingException) ErrorFault

func (e *ThrottlingException) ErrorFault() smithy.ErrorFault

func (*ThrottlingException) ErrorMessage

func (e *ThrottlingException) ErrorMessage() string

type TranslationIsoFormats

type TranslationIsoFormats interface {
	// contains filtered or unexported methods
}

Parameters that are required for translation between ISO9564 PIN block formats 0,1,3,4.

The following types satisfy this interface:

TranslationIsoFormatsMemberIsoFormat0
TranslationIsoFormatsMemberIsoFormat1
TranslationIsoFormatsMemberIsoFormat3
TranslationIsoFormatsMemberIsoFormat4
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.TranslationIsoFormats
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.TranslationIsoFormatsMemberIsoFormat0:
		_ = v.Value // Value is types.TranslationPinDataIsoFormat034

	case *types.TranslationIsoFormatsMemberIsoFormat1:
		_ = v.Value // Value is types.TranslationPinDataIsoFormat1

	case *types.TranslationIsoFormatsMemberIsoFormat3:
		_ = v.Value // Value is types.TranslationPinDataIsoFormat034

	case *types.TranslationIsoFormatsMemberIsoFormat4:
		_ = v.Value // Value is types.TranslationPinDataIsoFormat034

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type TranslationIsoFormatsMemberIsoFormat0

type TranslationIsoFormatsMemberIsoFormat0 struct {
	Value TranslationPinDataIsoFormat034
	// contains filtered or unexported fields
}

Parameters that are required for ISO9564 PIN format 0 tranlation.

type TranslationIsoFormatsMemberIsoFormat1

type TranslationIsoFormatsMemberIsoFormat1 struct {
	Value TranslationPinDataIsoFormat1
	// contains filtered or unexported fields
}

Parameters that are required for ISO9564 PIN format 1 tranlation.

type TranslationIsoFormatsMemberIsoFormat3

type TranslationIsoFormatsMemberIsoFormat3 struct {
	Value TranslationPinDataIsoFormat034
	// contains filtered or unexported fields
}

Parameters that are required for ISO9564 PIN format 3 tranlation.

type TranslationIsoFormatsMemberIsoFormat4

type TranslationIsoFormatsMemberIsoFormat4 struct {
	Value TranslationPinDataIsoFormat034
	// contains filtered or unexported fields
}

Parameters that are required for ISO9564 PIN format 4 tranlation.

type TranslationPinDataIsoFormat034

type TranslationPinDataIsoFormat034 struct {

	// The Primary Account Number (PAN) of the cardholder. A PAN is a unique
	// identifier for a payment credit or debit card and associates the card to a
	// specific account holder.
	//
	// This member is required.
	PrimaryAccountNumber *string
	// contains filtered or unexported fields
}

Parameters that are required for tranlation between ISO9564 PIN format 0,3,4 tranlation.

type TranslationPinDataIsoFormat1

type TranslationPinDataIsoFormat1 struct {
	// contains filtered or unexported fields
}

Parameters that are required for ISO9564 PIN format 1 tranlation.

type UnknownUnionMember

type UnknownUnionMember struct {
	Tag   string
	Value []byte
	// contains filtered or unexported fields
}

UnknownUnionMember is returned when a union member is returned over the wire, but has an unknown tag.

type ValidationException

type ValidationException struct {
	Message *string

	ErrorCodeOverride *string

	FieldList []ValidationExceptionField
	// contains filtered or unexported fields
}

The request was denied due to an invalid request error.

func (*ValidationException) Error

func (e *ValidationException) Error() string

func (*ValidationException) ErrorCode

func (e *ValidationException) ErrorCode() string

func (*ValidationException) ErrorFault

func (e *ValidationException) ErrorFault() smithy.ErrorFault

func (*ValidationException) ErrorMessage

func (e *ValidationException) ErrorMessage() string

type ValidationExceptionField

type ValidationExceptionField struct {

	// The request was denied due to an invalid request error.
	//
	// This member is required.
	Message *string

	// The request was denied due to an invalid request error.
	//
	// This member is required.
	Path *string
	// contains filtered or unexported fields
}

The request was denied due to an invalid request error.

type VerificationFailedException

type VerificationFailedException struct {
	Message *string

	ErrorCodeOverride *string

	Reason VerificationFailedReason
	// contains filtered or unexported fields
}

This request failed verification.

func (*VerificationFailedException) Error

func (*VerificationFailedException) ErrorCode

func (e *VerificationFailedException) ErrorCode() string

func (*VerificationFailedException) ErrorFault

func (*VerificationFailedException) ErrorMessage

func (e *VerificationFailedException) ErrorMessage() string

type VerificationFailedReason

type VerificationFailedReason string
const (
	VerificationFailedReasonInvalidMac                   VerificationFailedReason = "INVALID_MAC"
	VerificationFailedReasonInvalidPin                   VerificationFailedReason = "INVALID_PIN"
	VerificationFailedReasonInvalidValidationData        VerificationFailedReason = "INVALID_VALIDATION_DATA"
	VerificationFailedReasonInvalidAuthRequestCryptogram VerificationFailedReason = "INVALID_AUTH_REQUEST_CRYPTOGRAM"
)

Enum values for VerificationFailedReason

func (VerificationFailedReason) Values

Values returns all known values for VerificationFailedReason. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VisaAmexDerivationOutputs added in v1.15.0

type VisaAmexDerivationOutputs struct {

	// The keyArn of the issuer master key for cryptogram (IMK-AC) used by the
	// operation.
	//
	// This member is required.
	AuthorizationRequestKeyArn *string

	// The key check value (KCV) of the issuer master key for cryptogram (IMK-AC) used
	// by the operation.
	//
	// This member is required.
	AuthorizationRequestKeyCheckValue *string

	// The keyArn of the current PIN PEK.
	CurrentPinPekArn *string

	// The key check value (KCV) of the current PIN PEK.
	CurrentPinPekKeyCheckValue *string
	// contains filtered or unexported fields
}

The attributes values used for Amex and Visa derivation methods.

type VisaAttributes added in v1.15.0

type VisaAttributes struct {

	// The transaction counter of the current transaction that is provided by the
	// terminal during transaction processing.
	//
	// This member is required.
	ApplicationTransactionCounter *string

	// The keyArn of the issuer master key for cryptogram (IMK-AC) for the payment
	// card.
	//
	// This member is required.
	AuthorizationRequestKeyIdentifier *string

	// The method to use when deriving the master key for the payment card.
	//
	// This member is required.
	MajorKeyDerivationMode MajorKeyDerivationMode

	// A number that identifies and differentiates payment cards with the same Primary
	// Account Number (PAN). Typically 00 is used, if no value is provided by the
	// terminal.
	//
	// This member is required.
	PanSequenceNumber *string

	// The Primary Account Number (PAN) of the cardholder.
	//
	// This member is required.
	PrimaryAccountNumber *string

	// The encrypted pinblock of the old pin stored on the chip card.
	CurrentPinAttributes *CurrentPinAttributes
	// contains filtered or unexported fields
}

Parameters to derive the confidentiality and integrity keys for a Visa payment card.

type VisaPin

type VisaPin struct {

	// The value for PIN verification index. It is used in the Visa PIN algorithm to
	// calculate the PVV (PIN Verification Value).
	//
	// This member is required.
	PinVerificationKeyIndex *int32
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PIN.

type VisaPinVerification

type VisaPinVerification struct {

	// The value for PIN verification index. It is used in the Visa PIN algorithm to
	// calculate the PVV (PIN Verification Value).
	//
	// This member is required.
	PinVerificationKeyIndex *int32

	// Parameters that are required to generate or verify Visa PVV (PIN Verification
	// Value).
	//
	// This member is required.
	VerificationValue *string
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PIN.

type VisaPinVerificationValue

type VisaPinVerificationValue struct {

	// The encrypted PIN block data to verify.
	//
	// This member is required.
	EncryptedPinBlock *string

	// The value for PIN verification index. It is used in the Visa PIN algorithm to
	// calculate the PVV (PIN Verification Value).
	//
	// This member is required.
	PinVerificationKeyIndex *int32
	// contains filtered or unexported fields
}

Parameters that are required to generate or verify Visa PVV (PIN Verification Value).

type WrappedKey added in v1.11.0

type WrappedKey struct {

	// Parameter information of a WrappedKeyBlock for encryption key exchange.
	//
	// This member is required.
	WrappedKeyMaterial WrappedKeyMaterial

	// The algorithm that Amazon Web Services Payment Cryptography uses to calculate
	// the key check value (KCV). It is used to validate the key integrity.
	//
	// For TDES keys, the KCV is computed by encrypting 8 bytes, each with value of
	// zero, with the key to be checked and retaining the 3 highest order bytes of the
	// encrypted result. For AES keys, the KCV is computed using a CMAC algorithm where
	// the input data is 16 bytes of zero and retaining the 3 highest order bytes of
	// the encrypted result.
	KeyCheckValueAlgorithm KeyCheckValueAlgorithm
	// contains filtered or unexported fields
}

Parameter information of a WrappedKeyBlock for encryption key exchange.

type WrappedKeyMaterial added in v1.11.0

type WrappedKeyMaterial interface {
	// contains filtered or unexported methods
}

Parameter information of a WrappedKeyBlock for encryption key exchange.

The following types satisfy this interface:

WrappedKeyMaterialMemberDiffieHellmanSymmetricKey
WrappedKeyMaterialMemberTr31KeyBlock
Example (OutputUsage)
package main

import (
	"fmt"
	"github.com/aws/aws-sdk-go-v2/service/paymentcryptographydata/types"
)

func main() {
	var union types.WrappedKeyMaterial
	// type switches can be used to check the union value
	switch v := union.(type) {
	case *types.WrappedKeyMaterialMemberDiffieHellmanSymmetricKey:
		_ = v.Value // Value is types.EcdhDerivationAttributes

	case *types.WrappedKeyMaterialMemberTr31KeyBlock:
		_ = v.Value // Value is string

	case *types.UnknownUnionMember:
		fmt.Println("unknown tag:", v.Tag)

	default:
		fmt.Println("union is nil or unknown type")

	}
}

type WrappedKeyMaterialFormat added in v1.24.0

type WrappedKeyMaterialFormat string
const (
	WrappedKeyMaterialFormatKeyCryptogram WrappedKeyMaterialFormat = "KEY_CRYPTOGRAM"
	WrappedKeyMaterialFormatTr31KeyBlock  WrappedKeyMaterialFormat = "TR31_KEY_BLOCK"
	WrappedKeyMaterialFormatTr34KeyBlock  WrappedKeyMaterialFormat = "TR34_KEY_BLOCK"
)

Enum values for WrappedKeyMaterialFormat

func (WrappedKeyMaterialFormat) Values added in v1.24.0

Values returns all known values for WrappedKeyMaterialFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type WrappedKeyMaterialMemberDiffieHellmanSymmetricKey added in v1.16.0

type WrappedKeyMaterialMemberDiffieHellmanSymmetricKey struct {
	Value EcdhDerivationAttributes
	// contains filtered or unexported fields
}

The parameter information for deriving a ECDH shared key.

type WrappedKeyMaterialMemberTr31KeyBlock added in v1.11.0

type WrappedKeyMaterialMemberTr31KeyBlock struct {
	Value string
	// contains filtered or unexported fields
}

The TR-31 wrapped key block.

type WrappedWorkingKey added in v1.24.0

type WrappedWorkingKey struct {

	// The key check value (KCV) of the key contained within the outgoing
	// TR31WrappedKeyBlock.
	//
	// The KCV is used to check if all parties holding a given key have the same key
	// or to detect that a key has changed. For more information on KCV, see [KCV]in the
	// Amazon Web Services Payment Cryptography User Guide.
	//
	// [KCV]: https://docs.aws.amazon.com/payment-cryptography/latest/userguide/terminology.html#terms.kcv
	//
	// This member is required.
	KeyCheckValue *string

	// The wrapped key block of the outgoing transaction key.
	//
	// This member is required.
	WrappedKeyMaterial *string

	// The key block format of the wrapped key.
	//
	// This member is required.
	WrappedKeyMaterialFormat WrappedKeyMaterialFormat
	// contains filtered or unexported fields
}

The parameter information of the outgoing wrapped key block.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL