暗号化 PIN 変換 (CSNBPTR および CSNEPTR)

暗号化 PIN 変換呼び出し可能サービスは、ある PIN 暗号鍵から別の暗号鍵に PIN ブロックを再暗号化し、オプションで PIN ブロック・フォーマット (埋め込み数字やシーケンス番号など) を変更する場合に使用します。

単一長鍵または倍長鍵の unique-key-per-transaction 鍵導出が、暗号化 PIN 変換サービスで使用できます。 このサポートは、REFORMAT と TRANSLAT の両方の処理規則の input_PIN_encrypting_key_identifier パラメーターおよび output_PIN_encrypting_key_identifier パラメーターで使用可能です。 rule_array キーワードにより、どの PIN 鍵が導出鍵であるかが判別されます。

暗号化 PIN 変換サービスは、unique-key-per-transaction 鍵導出に使用できます。

暗号化 PIN ブロックを IBM 3621 フォーマットまたは IBM 3624 フォーマットにする場合は、拡張 PIN セキュリティー・モードを使用できます。 これを行うには、「PTR Enhanced PIN Security」アクセス制御点をドメイン役割で有効にする必要があります。 このモードがアクティブ化されると、PIN の検査は 10 進数字に限定されます。 その他の PIN ブロック整合性検査は行われません。

拡張 PIN セキュリティー・モードはまた、暗号化 PIN ブロックから PIN を抽出します。 このモードは、IBM 3621 または IBM 3624 の PIN ブロックに対して PIN 抽出方式を指定した場合にのみ適用されます。 ドメイン役割で「Enhanced PIN Security」アクセス制御点を有効にする必要があります。 このモードがアクティブ化されると、PIN の検査は 10 進数字に限定され、最小 4 の PIN 長が適用されます。 暗号化 PIN ブロックのフォーマット設定と同様に、その他の PIN ブロック整合性検査は行われません。

ANSI X9.8 PIN 標準に必要な制限を実施するには、CEX3C 以降での拡張 PIN セキュリティー・モードを使用できます。 これらの制限を実施するには、以下の制御点をドメイン役割で有効にする必要があります。
  • ANSI X9.8 PIN - Enforce PIN block restrictions
  • ANSI X9.8 PIN - Allow modification of PAN
  • ANSI X9.8 PIN - Allow only ANSI PIN blocks

AMODE(64) 呼び出しの呼び出し可能サービス名は CSNEPTR です。

形式

CALL CSNBPTR(
             return_code,
             reason_code,
             exit_data_length,
             exit_data,
             input_PIN_encrypting_key_identifier,
             output_PIN_encrypting_key_identifier,
             input_PIN_profile,
             PAN_data_in,
             PIN_block_in,
             rule_array_count,
             rule_array,
             output_PIN_profile,
             PAN_data_out,
             sequence_number,
             PIN_block_out) 

パラメーター

return_code
方向 タイプ
出力 整数

戻りコードは、呼び出し可能サービスの一般的な結果を示しています。 ICSF および暗号化コプロセッサーの戻りコードおよび理由コードに戻りコードがリストされています。

reason_code
方向 タイプ
出力 整数

理由コードは、アプリケーション・プログラムに返される、呼び出し可能サービスの結果を示しています。 戻りコードにはそれぞれ、特定の処理問題を示すさまざまな理由コードがあります。 ICSF および暗号化コプロセッサーの戻りコードおよび理由コードに理由コードがリストされています。

exit_data_length
方向 タイプ
入出力 整数

インストール・システム出口に渡されるデータの長さ。 データは exit_data パラメーターで識別されます。

exit_data
方向 タイプ
入出力 ストリング
インストール・システム出口に渡されるデータ。
input_PIN_encrypting_key_identifier
方向 タイプ
入出力 ストリング

64 バイト内部鍵トークンまたは鍵ラベルとして指定される PIN_block_in パラメーター用の入力 PIN 暗号鍵 (IPINENC)。 キーワード UKPTIPIN、UKPTBOTH、DUKPT-IP、または DUKPT-BH rule_array で指定されている場合は、input_PIN_encrypting_key_identifier で、UKPT 使用ビットが有効になっている KEYGENKY の鍵トークンまたは鍵ラベルを指定する必要があります。

output_PIN_encrypting_key_identifier
方向 タイプ
入出力 ストリング

64 バイト内部鍵トークンまたは鍵ラベルとして指定される PIN_block_out パラメーター用の出力 PIN 暗号鍵 (OPINENC)。 キーワード UKPTOPIN、UKPTBOTH、DUKPT-OP、または DUKPT-BH rule_array で指定されている場合は、output_PIN_encrypting_key_identifier で、UKPT 使用ビットが有効になっている KEYGENKY の鍵トークンまたは鍵ラベルを指定する必要があります。

input_PIN_profile
方向 タイプ
入力 文字ストリング

フォーマット設定済み PIN ブロックを作成するため、またはフォーマット設定された PIN ブロックから PIN を抽出するために必要な情報を含む、3 つの 8 バイト文字エレメント。 PIN プロファイルは、PIN ブロックが呼び出し可能サービスによって暗号化されているか復号されているかに応じて、入力 PIN プロファイルまたは出力 PIN プロファイルのいずれかになります。 追加情報については、PIN プロファイルを参照してください。

REFORMAT 処理規則 (rule_array パラメーター) を使用して暗号化 PIN 変換呼び出し可能サービス内の 3624 または 3621 PIN ブロックから PIN を抽出するには、埋め込み数字が必要です。 処理規則が TRANSLAT の場合、埋め込み数字は無視されます。

PAN_data_in
方向 タイプ
入力 文字ストリング

処理規則 (rule_array パラメーター) が REFORMAT であり、入力 PIN フォーマットが ISO-0 または VISA-4 のみの場合は、個人アカウント番号 (PAN)。 その他の場合、このパラメーターは無視されます。 12 桁のアカウント・データを文字フォーマットで指定します。

ISO-0 の場合、チェック・ディジットを除き、PAN の右端 12 桁を使用します。

VISA-4 の場合、チェック・ディジットを除き、PAN の左端 12 桁を使用します。

PIN_block_in
方向 タイプ
入力 ストリング

変換する PIN を含む 8 バイトの暗号化 PIN ブロック。

rule_array_count
方向 タイプ
入力 整数

rule_array パラメーターで指定された処理規則数。 値は 1、2、3 のいずれかです。

rule_array
方向 タイプ
入力 文字ストリング

呼び出し可能サービスの処理規則。

表 1. 暗号化 PIN 変換のキーワード
キーワード 意味
処理規則 (必須)
REFORMAT PIN フォーマット、PIN ブロックの内容、および PIN 暗号鍵を変更します。
TRANSLAT PIN 暗号鍵のみを変更します。 PIN フォーマットおよび PIN ブロックの内容は変更されません。
PIN ブロック・フォーマットおよび PIN 抽出方式 (オプション) 追加情報と、PIN ブロック・フォーマットおよび PIN 抽出方式キーワードのリストについては、PIN ブロック・フォーマットおよび PIN 抽出方式キーワードを参照してください。
注: PIN 抽出方式が指定されていない場合、表 1にリストされる最初の PIN ブロック・フォーマットがデフォルトになります。
DUKPT キーワード - 単一長鍵導出 (オプション)
UKPTIPIN input_PIN_encrypting_key_identifier は単一長鍵として導出されます。 input_PIN_encrypting_key_identifier は、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 input_PIN_profile は 48 バイトで、鍵シリアル番号が含まれていなければなりません。
UKPTOPIN output_PIN_encrypting_key_identifier は単一長鍵として導出されます。 output_PIN_encrypting_key_identifier は、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 output_PIN_profile は 48 バイトで、鍵シリアル番号が含まれていなければなりません。
UKPTBOTH input_PIN_encrypting_key_identifier および output_PIN_encrypting_key_identifier はいずれも単一長鍵として導出されます。 input_PIN_encrypting_key_identifier および output_PIN_encrypting_key_identifier はいずれも、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 input_PIN_profile および output_PIN_profile はいずれも 48 バイトで、それぞれの鍵シリアル番号が含まれていなければなりません。
DUKPT キーワード - 倍長鍵導出 (オプション) - 2004 年 5 月以降のバージョンのライセンス内部コード (LIC) が必要です
DUKPT-IP input_PIN_encrypting_key_identifier は倍長鍵として導出されます。 input_PIN_encrypting_key_identifier は、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 input_PIN_profile は 48 バイトで、鍵シリアル番号が含まれていなければなりません。
DUKPT-OP output_PIN_encrypting_key_identifier は倍長鍵として導出されます。 output_PIN_encrypting_key_identifier は、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 output_PIN_profile は 48 バイトで、鍵シリアル番号が含まれていなければなりません。
DUKPT-BH input_PIN_encrypting_key_identifier および output_PIN_encrypting_key_identifier はいずれも倍長鍵として導出されます。 input_PIN_encrypting_key_identifier および output_PIN_encrypting_key_identifier はいずれも、UKPT 使用ビットが有効になっている KEYGENKY 鍵でなければなりません。 input_PIN_profile および output_PIN_profile はいずれも 48 バイトで、それぞれの鍵シリアル番号が含まれていなければなりません。
output_PIN_profile
方向 タイプ
入力 文字ストリング
フォーマット設定済み PIN ブロックを作成するため、またはフォーマット設定された PIN ブロックから PIN を抽出するために必要な情報を含む、3 つの 8 バイト文字エレメント。 PIN プロファイルは、PIN ブロックが呼び出し可能サービスによって暗号化されているか復号されているかに応じて、入力 PIN プロファイルまたは出力 PIN プロファイルのいずれかになります。
  • rule_array パラメーターで REFORMAT 処理規則を選択した場合、入力 PIN プロファイルおよび出力 PIN プロファイルでは異なる PIN ブロック・フォーマットを使用できます。
  • rule_array パラメーターで UKPTOPIN または UKPTBOTH を指定する場合、output_PIN_profile は 48 バイト・フィールドに拡張され、現行鍵シリアル番号を含んでいなければなりません。 追加情報については、PIN プロファイルを参照してください。
  • rule_array パラメーターで DUKPT-OP または DUKPT-BH を指定する場合、output_PIN_profile は 48 バイト・フィールドに拡張され、現行鍵シリアル番号を含んでいなければなりません。 追加情報については、PIN プロファイルを参照してください。
PAN_data_out
方向 タイプ
入力 文字ストリング

処理規則 (rule_array パラメーター) が REFORMAT であり、出力 PIN フォーマットが ISO-0 または VISA-4 のみの場合は、個人アカウント番号 (PAN)。 その他の場合、このパラメーターは無視されます。 12 桁のアカウント・データを文字フォーマットで指定します。

ISO-0 の場合、チェック・ディジットを除き、PAN の右端 12 桁を使用します。

VISA-4 の場合、チェック・ディジットを除き、PAN の左端 12 桁を使用します。

sequence_number
方向 タイプ
入力 整数

処理規則 (rule_array パラメーター) が REFORMAT であり、出力 PIN ブロック・フォーマットが 3621 または 4704-EPP のみの場合は、シーケンス番号。 整数値 99999 を指定します。 その他の場合、このパラメーターは無視されます。

PIN_block_out
方向 タイプ
出力 ストリング

再暗号化された 8 バイトの出力 PIN ブロック。

制約事項

「Enhanced PIN Security」アクセス制御点が有効であり、出力 PIN プロファイルで 3624 または 3621 が PIN ブロック・フォーマットとして指定されている場合、埋め込み数字は 10 進数以外の数字に制限されます。

PIN プロファイルで指定されているフォーマット制御は、NONE でなければなりません。

使用上の注意

呼び出し側がこの呼び出し可能サービス、鍵ラベル、または CKDS か PKDS に保管された内部セキュア鍵トークンの使用を許可されているかを検査するために、SAF が呼び出される場合があります。

一部の PIN ブロック・フォーマットは複数の名前で認識されています。 下表に、追加の名前を示します。

表 2. PIN フォーマットの追加の名前
PIN フォーマット 追加の名前
ISO-0 ANSI X9.8、VISA フォーマット 1、ECI フォーマット 1
ISO-1 ECI フォーマット 4

アクセス制御点

下表に、このサービスの機能を制御するドメイン役割内のアクセス制御点を示します。

表 3. 暗号化 PIN 変換に必要なアクセス制御点
処理規則 アクセス制御点
TRANSLAT Encrypted PIN Translate - Translate
REFORMAT Encrypted PIN Translate - Reformat

「トランザクション単位の固有鍵」規則配列キーワードのいずれかが指定されている場合は、「UKPT - PIN Verify, PIN Translate」アクセス制御点が有効になっていなければなりません。

必須ハードウェア

下表に、各サーバー・タイプに必要な暗号化ハードウェアを示し、この呼び出し可能サービスの制約事項について説明します。

表 4. 暗号化 PIN 変換必須ハードウェア
サーバー 必須暗号化ハードウェア 制約事項

IBM eServer zSeries 990
IBM eServer zSeries 890

PCI X 暗号化コプロセッサー

Crypto Express2 コプロセッサー

ISO-3 PIN ブロック・フォーマットはサポートされていません。

IBM System z9 EC
IBM System z9 BC

Crypto Express2 コプロセッサー

ISO-3 PIN ブロック・フォーマットには、2007 年 11 月以降のライセンス内部コード (LIC) が必要です。

IBM System z10 EC
IBM System z10 BC

Crypto Express2 コプロセッサー

Crypto Express3 コプロセッサー

ISO-3 PIN ブロック・フォーマットには、2007 年 11 月以降のライセンス内部コード (LIC) が必要です。

IBM zEnterprise 196
IBM zEnterprise 114

Crypto Express3 コプロセッサー  

IBM zEnterprise EC12
IBM zEnterprise BC12

Crypto Express3 コプロセッサー

Crypto Express4 CCA コプロセッサー

 

IBM z13

Crypto Express5 CCA コプロセッサー