/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the payment-cryptography-data-2022-02-03.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.PaymentCryptographyData.Model { /// /// Container for the parameters to the DecryptData operation. /// Decrypts ciphertext data to plaintext using symmetric, asymmetric, or DUKPT data encryption /// key. For more information, see Decrypt /// data in the Amazon Web Services Payment Cryptography User Guide. /// /// /// /// You can use an encryption key generated within Amazon Web Services Payment Cryptography, /// or you can import your own encryption key by calling ImportKey. /// For this operation, the key must have KeyModesOfUse set to Decrypt. /// In asymmetric decryption, Amazon Web Services Payment Cryptography decrypts the ciphertext /// using the private component of the asymmetric encryption key pair. For data encryption /// outside of Amazon Web Services Payment Cryptography, you can export the public component /// of the asymmetric key pair by calling GetPublicCertificate. /// /// /// /// For symmetric and DUKPT decryption, Amazon Web Services Payment Cryptography supports /// TDES and AES algorithms. For asymmetric decryption, Amazon /// Web Services Payment Cryptography supports RSA. When you use DUKPT, for /// TDES algorithm, the ciphertext data length must be a multiple of 16 bytes. /// For AES algorithm, the ciphertext data length must be a multiple of 32 /// bytes. /// /// /// /// For information about valid keys for this operation, see Understanding /// key attributes and Key /// types for specific data operations in the Amazon Web Services Payment Cryptography /// User Guide. /// /// /// /// Cross-account use: This operation can't be used across different Amazon Web /// Services accounts. /// /// /// /// Related operations: /// /// /// public partial class DecryptDataRequest : AmazonPaymentCryptographyDataRequest { private string _cipherText; private EncryptionDecryptionAttributes _decryptionAttributes; private string _keyIdentifier; /// /// Gets and sets the property CipherText. /// /// The ciphertext to decrypt. /// /// [AWSProperty(Required=true, Sensitive=true, Min=16, Max=4096)] public string CipherText { get { return this._cipherText; } set { this._cipherText = value; } } // Check to see if CipherText property is set internal bool IsSetCipherText() { return this._cipherText != null; } /// /// Gets and sets the property DecryptionAttributes. /// /// The encryption key type and attributes for ciphertext decryption. /// /// [AWSProperty(Required=true)] public EncryptionDecryptionAttributes DecryptionAttributes { get { return this._decryptionAttributes; } set { this._decryptionAttributes = value; } } // Check to see if DecryptionAttributes property is set internal bool IsSetDecryptionAttributes() { return this._decryptionAttributes != null; } /// /// Gets and sets the property KeyIdentifier. /// /// The keyARN of the encryption key that Amazon Web Services Payment Cryptography /// uses for ciphertext decryption. /// /// [AWSProperty(Required=true, Min=7, Max=322)] public string KeyIdentifier { get { return this._keyIdentifier; } set { this._keyIdentifier = value; } } // Check to see if KeyIdentifier property is set internal bool IsSetKeyIdentifier() { return this._keyIdentifier != null; } } }