

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

# 基礎
<a name="cryptographic-details.foundations"></a>

この章のトピックでは、 AWS Payment Cryptography の暗号化プリミティブとその使用場所について説明します。また、 そのサービスの基本的な要素についても紹介します。

**Topics**
+ [暗号化の基本](#w2aac39c19b7)
+ [エントロピーと乱数生成](#w2aac39c19b9)
+ [対称キーのオペレーション](#w2aac39c19c11)
+ [非対称キーのオペレーション](#w2aac39c19c13)
+ [キーの保管](#w2aac39c19c15)
+ [対称キーを使用したキーインポート](#w2aac39c19c17)
+ [非対称キーを使用したキーのインポート](#w2aac39c19c19)
+ [キーエクスポート](#w2aac39c19c21)
+ [トランザクション単位の派生ユニークキー (DUKPT) プロトコル](#w2aac39c19c23)
+ [キー階層](#w2aac39c19c25)

## 暗号化の基本
<a name="w2aac39c19b7"></a>

AWS Payment Cryptography は、パラメータ対応の標準暗号化アルゴリズムを使用して、アプリケーションがユースケースに必要なアルゴリズムを実装できるようにします。一連の暗号アルゴリズムは PCI、ANSI X9、EMVCo、および ISO 規格によって定義されています。すべての暗号化は、PCI モードで動作する PCI PTS HSM 標準規格に登録されている HSM によって実行されます。

## エントロピーと乱数生成
<a name="w2aac39c19b9"></a>

 AWS Payment Cryptography キーの生成は AWS Payment Cryptography HSMs で実行されます。HSM には、サポートされているすべてのキータイプとパラメーターの PCI PTS HSM 要件を満たす乱数ジェネレーターが実装されています。

## 対称キーのオペレーション
<a name="w2aac39c19c11"></a>

 ANSI X9 TR 31、ANSI X9.24、および PCI PIN Annex C で定義されている対称キーアルゴリズムとキーストレングスは、以下でサポートされています。
+ **ハッシュ関数** — 出力サイズが 2551 を超える SHA2 および SHA3 ファミリーのアルゴリズム。ただし、PCI PTS POI v3 以前のターミナルとの下位互換性は除きます。
+ **暗号化と復号化** — キーサイズが 128 ビット以上の AES、または 112 ビット以上のキーサイズ (2 キーまたは 3 キー) の TDEA。
+ **メッセージ認証コード (MAC)**: AES を使用する CMAC または GMAC、および承認済みのハッシュ関数を使用し、キーサイズが 128 以上の HMAC。

 AWS Payment Cryptography は、HSM メインキー、データ保護キー、TLS セッションキーに AES 256 を使用します。

 注: リストされている関数の一部は、標準プロトコルとデータ構造をサポートするために内部的に使用されます。特定のアクションでサポートされているアルゴリズムについては、 API ドキュメントを参照してください。

## 非対称キーのオペレーション
<a name="w2aac39c19c13"></a>

 ANSI X9 TR 31、ANSI X9.24、および PCI PIN Annex C で定義されている非対称キーアルゴリズムとキーストレングスは、以下でサポートされています。
+ **承認されたキー確立スキーム** — NIST SP800-56A (ECC/FCC2 ベースのキーアグリーメント)、NIST SP800-56B (IFC ベースのキーアグリーメント)、および NIST SP800-38F (AES ベースのキー暗号化/ラッピング) で説明されているとおり。

 AWS Payment Cryptography ホストは、[完全な前方秘匿性](https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-52r2.pdf)を提供する暗号スイートで TLS を使用するサービスへの接続のみを許可します。

 注: リストされている関数の一部は、標準プロトコルとデータ構造をサポートするために内部的に使用されます。特定のアクションでサポートされているアルゴリズムについては、 API ドキュメントを参照してください。

## キーの保管
<a name="w2aac39c19c15"></a>

 AWS Payment Cryptography キーは HSM AES 256 メインキーによって保護され、暗号化されたデータベースの ANSI X9 TR 31 キーブロックに保存されます。データベースは Payment Cryptography AWS サーバーのインメモリデータベースにレプリケートされます。

 PCI PIN セキュリティ規範附属書 C によると、AES 256 キーは以下と同等かそれ以上の強度があります。
+ 3 キー TDEA
+ RSA 15360 ビット
+ ECC 512 ビット
+ DSA、DH、および MQV 15360/512

## 対称キーを使用したキーインポート
<a name="w2aac39c19c17"></a>

AWS Payment Cryptography は、インポート用に保護されたキーと同じくらい強力または強力な対称キー暗号化キー (KEK) を持つ対称キーまたはパブリックキーを持つ暗号文とキーブロックのインポートをサポートします。

## 非対称キーを使用したキーのインポート
<a name="w2aac39c19c19"></a>

 AWS Payment Cryptography は、インポート用に保護されたキーと同じくらい強力または強力なプライベートキー暗号化キー (KEK) で保護された対称キーまたはパブリックキーを持つ暗号文とキーブロックのインポートをサポートします。復号用に提供される公開キーは、顧客が信頼する機関からの証明書によって信頼性と完全性が保証されている必要があります。

 AWS Payment Cryptography が提供するパブリック KEK には、PCI PIN Security と PCI P2PE Annex A への準拠が証明された認証機関 (CA) の認証と整合性保護があります。

## キーエクスポート
<a name="w2aac39c19c21"></a>

 キーは、適切な KeyUsage を使用して、エクスポートするキーと同等かそれ以上の強度を持つキーによってエクスポートおよび保護できます。

## トランザクション単位の派生ユニークキー (DUKPT) プロトコル
<a name="w2aac39c19c23"></a>

 AWS Payment Cryptography は、ANSI X9.24-3 で説明されているように、TDEA および AES ベース派生キー (BDK) で をサポートします。

## キー階層
<a name="w2aac39c19c25"></a>

 AWS Payment Cryptography キー階層は、キーが保護するキーと同等以上の強度を持つキーによって常に保護されるようにします。

![AWS Payment Cryptography キー階層図](http://docs.aws.amazon.com/ja_jp/payment-cryptography/latest/userguide/images/cryptographic-details.key_hierarchy.png)


 AWS Payment Cryptography キーは、サービス内のキー保護に使用されます。


| キー | 説明 | 
| --- | --- | 
| リージョナルメインキー | 暗号処理に使用される仮想 HSM イメージまたはプロファイルを保護します。このキーは HSM と安全なバックアップにのみ存在します。 | 
| プロファイルメインキー | 最上位のカスタマーキー保護キーのことで、これまではカスタマーキーのローカルマスターキー (LMK) またはマスターファイルキー (MFK) と呼ばれていました。このキーは HSM と安全なバックアップにのみ存在します。プロファイルは、決済ユースケースのセキュリティ標準で要求される個別の HSM 設定を定義します。 | 
|  AWS Payment Cryptography パブリックキー暗号化キー (KEK) キーの信頼のルート | Payment AWS Cryptography が提供する非対称キーを使用したキーのインポートとエクスポート用のパブリックキーを認証および検証するための信頼できるルートパブリックキーと証明書。 | 

カスタマーキーは、他のキーを保護するためのキーと支払い関連データを保護するキーによってグループ分けされています。両タイプのカスタマーキーの例を以下に示します。


| キー | 説明 | 
| --- | --- | 
| お客様提供の公開 KEK キー用の信頼できるルート | 非対称キーを使用してキーをインポートおよびエクスポートする際に提供する公開キーを認証および検証するための信頼のルートとして、お客様から提供された公開キーと証明書。 | 
| キー暗号化キー (KEK) | KEK は、外部キーストアと AWS Payment Cryptography、ビジネスパートナー、支払いネットワーク、または組織内のさまざまなアプリケーション間の交換のために他のキーを暗号化するためにのみ使用されます。 | 
| トランザクション単位の派生ユニークキー (DUKPT) 基本派生キー (BDK) | BDK は、決済ターミナルごとに固有のキーを作成し、複数のターミナルからのトランザクションを 1 つの承継銀行または買収者のワーキングキーに変換するために使用されます。PCI Point-to-Point Encryption (P2PE) で求められるベストプラクティスは、ターミナルモデル、キーインジェクション、初期化サービス、その他のセグメンテーションごとに異なる BDK を使用し、BDK の侵害による影響を最小限に抑えることです。 | 
| 決済ネットワークゾーンコントロールマスターキー (ZCMK) | ZCMK はゾーンキーまたはゾーンマスターキーとも呼ばれ、決済ネットワークから初期動作キーを確立するために提供されます。 | 
| DUKPT トランザクションキー | DUKPT 用に設定された決済ターミナルは、ターミナルとトランザクションに固有のキーを導出します。トランザクションを受信する HSM は、ターミナル ID とトランザクションシーケンス番号からキーを決定できます。 | 
| カードデータ準備キー | EMV 発行者マスターキー、EMV カードキーと検証値、カードパーソナライゼーションデータファイル保護キーを使用して、カードパーソナライゼーションプロバイダーが使用する個々のカードのデータを作成します。これらのキーと暗号検証データは、発行銀行や発行会社が、取引の承認の一環としてカードデータを認証するためにも使用されます。 | 
| カードデータ準備キー | EMV 発行者マスターキー、EMV カードキーと検証値、カードパーソナライゼーションデータファイル保護キーを使用して、カードパーソナライゼーションプロバイダーが使用する個々のカードのデータを作成します。これらのキーと暗号検証データは、発行銀行や発行会社が、取引の承認の一環としてカードデータを認証するためにも使用されます。 | 
| 決済ネットワークのワーキングキー | 発行者ワーキングキーまたはアクワイアラーワーキングキーとも呼ばれ、決済ネットワークとの間で送受信されるトランザクションを暗号化するキーです。これらのキーは、ネットワークによって頻繁に (多くの場合、毎日、または 1 時間おきに) ローテーションされます。PIN /デビット取引用の PIN 暗号化キー (PEK) となります。 | 
| 個人識別番号 (PIN) 暗号化キー (PEK) | PIN ブロックを作成または復号化するアプリケーションでは、PEK を使用してクリアテキスト PIN の保存や送信を防止します。 | 