> For the complete documentation index, see [llms.txt](https://docs.payments.thalescloud.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.payments.thalescloud.io/xpay-enablement/ja/dta/google-pay-nopsonaraizu.md).

# Google Pay のパーソナライズ

TSHはGoogle Payソリューション向けのEMVアプリケーションを完全にパーソナライズすることが可能です。以下は「submitTokenData」操作でTSPから必要とされるデータのセットです。

{% hint style="info" %}
**注1**:

データ要素名は大文字小文字を区別しません。\
例えば、DEK\_KCV と dek\_kcv は同等です
{% endhint %}

{% hint style="info" %}
**注2**:

プロジェクト構成に応じて、いくつかのデータ要素が追加または削除される場合があります
{% endhint %}

### PUREおよびDISCOVERの共通データ要素

| 名前                   | フォーマット    | 長さ    | 説明                                                                                                                                                                                                                                                                                                                                                                                                             | 例                                                                                                              |
| -------------------- | --------- | ----- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| kek\_label           | ASCII 文字列 | 最大64  | 支払い用キー暗号化に使用されるキーのラベル。値はキーセレモニー中に定義されます。                                                                                                                                                                                                                                                                                                                                                                       | "G062C.TEST.SGKEK.TKSUK.01"                                                                                    |
| kek\_kcv             | 16進文字列    | 6     | <p>支払い用キー暗号化に使用されるキーのKCV。<br>KEKキーのKCVは、ECBモードを使用して8バイトの00h（3DESの場合）を暗号化するか、16バイトの00hに対してCMACを使用して（AESの場合）計算されます。</p>                                                                                                                                                                                                                                                                                          | "E95500"                                                                                                       |
| dek\_label           | ASCII 文字列 | 最大64  | Track2データ（"track2\_data"）暗号化に使用される鍵のラベル。値は鍵のセレモニー中に定義されます。                                                                                                                                                                                                                                                                                                                                                     | "G062C.TEST.SGDEK.MKDATA.01"                                                                                   |
| dek\_kcv             | 16進文字列    | 6     | <p>トラック2データ暗号化に使用されるキーのKCV。<br>KCVは、DEKキーを使用してECBモードで8バイトの00h（3DESの場合）または16バイトの01h（AESの場合）を暗号化することにより計算されます。</p>                                                                                                                                                                                                                                                                                               | "50FE57"                                                                                                       |
| track2\_data         | 16進文字列    | 最大64  | <p>Track 2 同等データ（最大長は 19 バイト）<br>クリアテキストでのフォーマットは：<br></p><ul><li>トークン PAN 最大 19 桁: 'ppppppppppppppppppp'</li><li>'D'</li><li>有効期限: 'yymm'</li><li>サービスコード: 'sss'</li><li>（オプション）裁量データ（PAN の長さに依存）</li><li> 'F'（必要に応じて全バイトを確保するため）<br><br>track2\_dataは暗号アルゴリズムのブロックサイズに到達するように80h + 00h..00hでパディングされます（ISO7816-4パディング）。<br><br>track2\_dataはDEK鍵の下でCBCモードを用いて暗号化されます。<br>暗号アルゴリズムはプロジェクト設定時に定義されます。</li></ul> | "FAB7FF4EFE1989AC25EBBEC2ED72378BDA79D244B89F7F25"                                                             |
| payment\_keys        | 文字列       | -     | 以下のフォーマットを参照してください。                                                                                                                                                                                                                                                                                                                                                                                            | -                                                                                                              |
| psn                  | 16進文字列    | 2     | アプリケーションにパーソナライズする PAN シーケンス番号。                                                                                                                                                                                                                                                                                                                                                                                | "01"                                                                                                           |
| par                  | ASCII バイト | 58    | 支払い口座参照。                                                                                                                                                                                                                                                                                                                                                                                                       | <p>"323352305041594D454E544143434F554E545245464552454E43455858"<br>は "23R0PAYMENTACCOUNTREFERENCEXX" を表します</p> |
| app\_preferred\_name | ASCII バイト | 最大 16 | アプリケーション優先名                                                                                                                                                                                                                                                                                                                                                                                                    | <p>"4465626974"<br>は "Debit" を表します</p>                                                                         |

### PUREの追加データ要素

| 名前           | フォーマット | 長さ | 説明                    | 例    |
| ------------ | ------ | -- | --------------------- | ---- |
| cmk\_ac\_dki | 16進文字列 | 2  | アプリケーションクリプトグラム鍵のDKI。 | "01" |
| cmk\_rp\_dki | 16進文字列 | 2  | リモートペイメントキーのDKI。      | "02" |

### DISCOVERの追加データ要素

| 名前             | フォーマット | 長さ   | 説明                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 例                                                  |
| -------------- | ------ | ---- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| track1\_data   | 16進文字列 | 最大64 | <p>トラック1データ<br><br>復号後の形式はASCIIバイトです。デコード後の形式は次の通りです：</p><ul><li>'B'</li><li>トークン PAN 最大 19 桁: 'ppppppppppppppppppp'</li><li>'^'</li><li>名前、2から26文字（姓、名などの間の区切り文字を含む場合がある）</li><li>'^'</li><li>有効期限：'yymm' または '^'</li><li>サービスコード：'sss' または '^'</li><li>（オプション）裁量データ（PAN の長さに依存）</li></ul><p><br>track1\_dataは暗号化アルゴリズムのブロックサイズに到達するように80h + 00h..00hでパディングされます（ISO7816-4パディング）。<br><br>track1\_dataはDEKキーでCBCモードを用いて暗号化されます。<br>暗号化アルゴリズムはプロジェクト設定時に定義されます。</p> | "FAB7FF4EFE1989AC25EBBEC2ED72378BDA79D244B89F7F25" |
| cmk\_emv\_dki  | 16進文字列 | 2    | EMVキーのDKI。                                                                                                                                                                                                                                                                                                                                                                                                                                                        | "01"                                               |
| cmk\_cavv\_dki | 16進文字列 | 2    | CAVVキーのDKI。                                                                                                                                                                                                                                                                                                                                                                                                                                                       | "02"                                               |

### payment\_keysのフォーマット

payment\_keysは以下に定義されたJSON配列の文字列表現です：

```json
[
  object1,
  object2,
  ...
]
```

{% hint style="info" %}
**注3**:\
設定されるSU Kの最大数（上記のobjectと呼ばれる）は40です。
{% endhint %}

{% hint style="info" %}
**Note4**:\
AES SUKの場合、暗号化アルゴリズムはRFC 3394に従ったAES-KWとし、KCVアルゴリズムはRFC4493に従い16バイトの00hに対するCMACとします。\
3DES SUKの場合、暗号化アルゴリズムは3DES-ECBとし、KCVアルゴリズムはEMV-CPSに従って、関連するキーでECBモードにより8バイトの00hを暗号化して計算します。\
いずれの場合も、上位3バイトがKCVとして使用されます。
{% endhint %}

#### PUREのpayment\_keysフォーマット

上記で定義した配列の各オブジェクトは、以下のように定義されたJSONオブジェクトです：

| JSONパラメータ名 | M/O/C | 説明                                              |
| ---------- | ----- | ----------------------------------------------- |
| acKey      | 必須（M） | KEKキーで暗号化されたアプリケーションクリプトグラムSUK                  |
| acKeyKcv   | 必須（M） | アプリケーションクリプトグラムSUKのKCV                          |
| rpKey      | 任意（O） | KEKキーで暗号化されたリモートペイメントSUK                        |
| rpKeyKcv   | 条件（C） | <p>リモートペイメントSUKのKCV<br>rpKeyが存在する場合に提供されるもの</p> |
| lcKey      | 必須（M） | KEKキーで暗号化されたローカルCDCVMスタンプ生成SUK                  |
| lcKeyKcv   | 必須（M） | ローカルCDCVMスタンプ生成SUKのKCV                          |
| atc        | 必須（M） | アプリケーショントランザクションカウンタ                            |

例：

```json
{
  "acKey": "2C2ECFF7A1578049B2A40EA861966CFC",
  "acKeyKcv": "AB33DF",
  "rpKey": "765D07ABCA8B2F1A90E69D6B82CE8786",
  "rpKeyKcv": "24AA55",
  "lcKey": "EBFCD0659B5109FA0316B44BF12E78C1",
  "lcKeyKcv": "E1BCA2",
  "atc": "0001"
}
```

#### DISCOVERのpayment\_keysフォーマット

上記で定義した配列の各オブジェクトは、以下のように定義されたJSONオブジェクトです：

| JSONパラメータ名 | M/O/C | 説明                                            |
| ---------- | ----- | --------------------------------------------- |
| emvKey     | 必須（M） | KEKキーで暗号化されたEMVアプリケーションクリプトグラムSUK             |
| emvKeyKcv  | 必須（M） | EMVアプリケーションクリプトグラムSUKのKCV                     |
| cavvKey    | 任意（O） | KEKキーで暗号化された顧客認証検証値（CAVV）SUK                  |
| cavvKeyKcv | 条件（C） | <p>CAVV SUKのKCV<br>cavvKeyが存在する場合に提供されるもの</p> |
| msKey      | 任意（O） | KEKキーで暗号化されたマグストライブSUK                        |
| msKeyKcv   | 条件（C） | <p>マグストライブSUKのKCV<br>msKeyが存在する場合に提供されるもの</p> |
| atc        | 必須（M） | アプリケーショントランザクションカウンタ                          |

例：

```json
{
  "emvKey": "2C2ECFF7A1578049B2A40EA861966CFC",
  "emvKeyKcv": "AB33DF",
  "cavvKey": "765D07ABCA8B2F1A90E69D6B82CE8786",
  "cavvKeyKcv": "24AA55",
  "msKey": "EBFCD0659B5109FA0316B44BF12E78C1",
  "msKeyKcv": "E1BCA2",
  "atc": "0001"
}
```

### CPACE Girocard データ要素

| 名前          | フォーマット    | 長さ   | 説明                                                 | 例                                       |
| ----------- | --------- | ---- | -------------------------------------------------- | --------------------------------------- |
| type        | 文字列       | 最大64 | <p>CPACEパーソナライズタイプ。<br>値は「Girocard」である必要があります。</p> | "Girocard"                              |
| profile     | Base64文字列 | -    | Perso FF仕様に準拠したトークンプロファイル                          | "ANcB1wLXAA8AhAEBAHFl+OnQaqq2...Fwkf6n" |
| diversifier | 16進文字列    | 32   | セッションキー生成の導出データとして使用される16バイトのダイバシファイア値             | "F5CFEA0C7C17EE5275566A33DAA1DFA9"      |


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.payments.thalescloud.io/xpay-enablement/ja/dta/google-pay-nopsonaraizu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
