MAC の生成と検証 - AWS Payment Cryptography

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

MAC の生成と検証

メッセージ認証コード (MAC) は通常、メッセージの完全性 (変更されているかどうか) を認証するために使用されます。HMAC (ハッシュベースのメッセージ認証コード)、CBC-MAC、CMAC (暗号ベースのメッセージ認証コード) などの暗号化ハッシュは、暗号化を利用して MAC の送信者をさらに保証します。HMAC はハッシュ関数をベースにしていますが、CMAC はブロック暗号に基づいています。このサービスは、CBC-MAC のタイプである ISO9797 アルゴリズム 1 および 3 もサポートしています。 MACs

すべての MAC アルゴリズムは、暗号化ハッシュ関数と共有シークレットキーを組み合わせます。これらはメッセージとシークレットキー ( キーのキーマテリアルなど) を使用して、一意のタグまたはmacを返します。メッセージの文字が 1 字でも変更されている場合、またはシークレットキーが同一ではない場合、結果として得られるタグはまったく異なるものになります。暗号化MAC は、シークレットキーをリクエストすることによって信頼性も提供するため、シークレットキーがなければ、同一の HMAC タグを生成することは不可能となります。Cryptographic MAC は対称署名と呼ばれることもあります。これらはデジタル署名のように機能しますが、署名と検証の両方に単一のキーを使用するからです。

AWS Payment Cryptography は、いくつかのタイプの MACs をサポートしています。

ISO9797 アルゴリズム 1

ISO9797_ALGORITHM1 KeyUsageの で表されます。フィールドがブロックサイズの倍数でない場合 (TDES では 8 バイト/16 進数文字、AES では 16 バイト/32 文字)、 AWS Payment Cryptography は ISO9797 パディング方法 1 を自動的に適用します。他のパディング方法が必要な場合は、サービスを呼び出す前に適用できます。

ISO9797 アルゴリズム 3 (リテールマック)

ISO9797_ALGORITHM3 KeyUsageの で表されます。アルゴリズム 1 と同じパディングルールが適用されます

ISO9797 アルゴリズム 5 (CMAC)

TR31_M6_ISO_9797_5_CMAC_KEYの KeyUsage で示されます。

HMAC

TR31_M7_HMAC_KEY including HMAC_SHA224、HMAC_SHA256、HMAC_SHA384、HMAC_SHA512の KeyUsage で示されます。

AS2805.4.1 MAC

TR31_M0_ISO_16609_MAC_KEY KeyUsageの で表されます。AS2805 の詳細については、「」を参照してください。 AS2805

DUKPT MAC

DUKPT MAC は通常、支払いターミナルとの間で送受信されるメッセージのソースとペイロードを確認するために使用されます。DUKPT 取得手法を使用してキーを取得し、MAC を実行します。このオプションで使用されるキーは、TR31_B0_BASE_DERIVATION_KEY KeyUsageの によって示されます。

EMV MAC

EMV MAC は通常、EMV ドキュメントでは整合性キーと呼ばれます。EMV 導出手法を使用してキーを取得し、内部的に ISO9797_ALGORITHM3 を使用します。通常、発行者スクリプトをチップカードに送信して再プログラミングするために使用されます。このオプションで使用されるキーは、TR31_E2_EMV_MKEY_INTEGRITY KeyUsageの で示されます。スクリプトを送信し、オフラインピンを更新する場合は、これらのオペレーションの両方を実行する GenerateMacEmvPinChange を参照してください。