[データの暗号化] - AWS Payment Cryptography

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

[データの暗号化]

Encrypt Dataこの API は、DUKPT や EMV の派生キーだけでなく、対称データ暗号化キーと非対称データ暗号化キーを使用してデータを暗号化するのにも使用されます。TDESRSAAES など、さまざまなアルゴリズムとバリエーションをサポートしています。

主な入力は、データの暗号化に使用される暗号化キー、暗号化対象の HexBinary 形式のプレーンテキストデータ、TDES などのブロック暗号の初期化ベクトルやモードなどの暗号化属性です。プレーンテキストデータは、は 8 バイト、は 16 バイトTDES、の場合はキーの長さの倍数である必要があります。AES RSA入力データがこれらの要件を満たさない場合は、対称キー入力 (TDES、AES、DUKPT、EMV) をパディングする必要があります。次の表は、各キータイプのプレーンテキストの最大長と、RSA キーに定義するパディングタイプを示しています。EncryptionAttributes

パディングタイプ RSA_2048 RSA_3072 RSA_4096
OAEP SHA1 428 684 940
OAEP SHA256 380 636 892
OAEP SHA512 252 508 764
PKCS1 488 744 1,000
None 488 744 1,000

主な出力には、HexBinary 形式の暗号文として暗号化されたデータと、暗号化キーのチェックサム値が含まれます。使用可能なすべてのオプションの詳細については、『Encrypt 用 API ガイド』を参照してください。

AES 対称キーを使用したデータの暗号化

注記

どの例も、関連するキーがすでに存在することを前提としています。キーはオペレーションを使用して作成することも、CreateKeyオペレーションを使用してインポートすることもできます。ImportKey

この例では、オペレーションを使用して作成された、CreateKeyまたはオペレーションを使用してインポートされた対称キーを使用して、プレーンテキストデータを暗号化します。ImportKeyこの操作では、キーがに設定され、 KeyModesOfUse Encryptに設定されている必要があります。 KeyUsage TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEYその他のオプションについては、「暗号化オペレーション用キー」を参照してください。

$ aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 31323334313233343132333431323334 --encryption-attributes 'Symmetric={Mode=CBC}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

DUKPT キーを使用したデータの暗号化

この例では、DUKPT キーを使用してプレーンテキストデータを暗号化します。 AWS 支払い暗号化は DUKPT キーをサポートします。TDES AESこの操作では、DeriveKeyキーがに設定され KeyUsage 、 KeyModesOfUse がに設定されている必要があります。TR31_B0_BASE_DERIVATION_KEYその他のオプションについては、「暗号化オペレーション用キー」を参照してください。

$ aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 31323334313233343132333431323334 --encryption-attributes 'Dukpt={KeySerialNumber=FFFF9876543210E00001}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

EMV 由来の対称鍵を使用してデータを暗号化します。

この例では、すでに作成されている EMV 由来の対称鍵を使用してクリアテキストデータを暗号化します。このようなコマンドを使用して EMV カードにデータを送信できます。この操作では、 KeyModesOfUse Deriveキーがに設定され、 KeyUsage TR31_E1_EMV_MKEY_CONFIDENTIALITYTR31_E6_EMV_MKEY_OTHERかに設定されている必要があります。詳細については、「暗号化操作用のキー」を参照してください。

$ aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 33612AB9D6929C3A828EB6030082B2BD --encryption-attributes 'Emv={MajorKeyDerivationMode=EMV_OPTION_A,PanSequenceNumber=27,PrimaryAccountNumber=1000000000000432,SessionDerivationData=02BB000000000000, InitializationVector=1500000000000999,Mode=CBC}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

RSA キーを使用したセッションデータの暗号化

この例では、操作を使用してインポートされた RSA 公開鍵を使用してプレーンテキストデータを暗号化しますImportKeyこの操作では、キーがに設定され、 KeyModesOfUse Encryptがに設定されている必要があります。 KeyUsage TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTIONその他のオプションについては、「暗号化オペレーション用キー」を参照してください。

PKCS #7 または現在サポートされているないその他のパディングスキームについては、サービスを呼び出す前に申請し、パディングインジケータ「'Asymmetric={}'」を省略してパディングなしを選択してください。

$ aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/thfezpmsalcfwmsg --plain-text 31323334313233343132333431323334 --encryption-attributes 'Asymmetric={PaddingType=OAEP_SHA256}'
{ "CipherText": "12DF6A2F64CC566D124900D68E8AFEAA794CA819876E258564D525001D00AC93047A83FB13 \ E73F06329A100704FA484A15A49F06A7A2E55A241D276491AA91F6D2D8590C60CDE57A642BC64A897F4832A3930 \ 0FAEC7981102CA0F7370BFBF757F271EF0BB2516007AB111060A9633D1736A9158042D30C5AE11F8C5473EC70F067 \ 72590DEA1638E2B41FAE6FB1662258596072B13F8E2F62F5D9FAF92C12BB70F42F2ECDCF56AADF0E311D4118FE3591 \ FB672998CCE9D00FFFE05D2CD154E3120C5443C8CF9131C7A6A6C05F5723B8F5C07A4003A5A6173E1B425E2B5E42AD \ 7A2966734309387C9938B029AFB20828ACFC6D00CD1539234A4A8D9B94CDD4F23A", "KeyArn": "arn:aws:payment-cryptography:us-east-1:529027455495:key/5dza7xqd6soanjtb", "KeyCheckValue": "FF9DE9CE" }