鍵テスト (CSNBKYT および CSNEKYT)

鍵テスト呼び出し可能サービスは、内部固定長鍵トークンにおける DES/AES 非暗号化鍵や DES/AES 暗号化鍵の セキュアな暗号検証パターンを生成したり検証したりする場合に使用します。 この呼び出し可能サービスが検証パターンを生成するのか検証するのかは、rule_array 内のキーワードで指定します。

DES 鍵では、DES アルゴリズム (単一長および倍長の鍵)で定義されているアルゴリズムがデフォルト・アルゴリズムとして 使用されます (3 倍長の DATA 鍵の場合を除く)。 このサービスでは、検証パターンの生成時に乱数が生成され、検証パターンが計算されます。 乱数と検証パターンは呼び出し側に返されます。 鍵の検証時には、検証パターンの検証に乱数と鍵が使用されます。

AES 鍵では、SHA-256 アルゴリズムがデフォルト・アルゴリズムとして使用されます。 指定された鍵に対して 8 バイトの検証パターンが生成されます。 乱数パラメーターは使用されません。

オプションの ENC-ZERO アルゴリズムは、すべての鍵で使用できます。 4 バイトの検証パターンが生成されます。 乱数パラメーターは使用されません。

CSNBKYT は、同じ名前の IBM 4765 PCIe 暗号化コプロセッサー verb と整合性があります。 IBM 4765 PCIe 暗号化コプロセッサー上で生成した鍵は、ICSF 上で検証できますし、その逆も可能です。

KEK を使用して暗号化された DES 鍵の値を検証するには、鍵テスト拡張 (CSNBKYTX および CSNEKTX)を参照してください。

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

形式

CALL CSNBKYT(
             return_code,
             reason_code,
             exit_data_length,
             exit_data,
             rule_array_count,
             rule_array,
             key_identifier,
             random_number,
             verification_pattern) 

パラメーター

return_code
方向 タイプ
出力 整数

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

reason_code
方向 タイプ
出力 整数

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

exit_data_length
方向 タイプ
入出力 整数

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

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

このデータはインストール出口に渡されます。

rule_array_count
方向 タイプ
入力 整数

rule_array パラメーターで指定するキーワードの数。 値は 2、3、または 4 にすることができます。

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

キーワードは、呼び出し可能サービスに制御情報を渡すものです。 表 1 に、キーワードがリストされています。キーワードは、連続するストレージ内になければならず、各キーワードはその 8 バイト位置で左寄せされ、右側にブランクが埋め込まれている必要があります。

表 1. 鍵テスト制御情報のキーワード
キーワード 意味
鍵または鍵パーツ規則 (いずれかのキーワードが必須)
CLR-A128 これは、128 ビット AES 非暗号化鍵を処理します。
CLR-A192 これは、192 ビット AES 非暗号化鍵を処理します。
CLR-A256 これは、256 ビット AES 非暗号化鍵を処理します。
KEY-CLR これは、key_identifier で指定される DES 鍵が単一長の非暗号化鍵であることを指定します。
KEY-CLRD これは、key_identifier で指定される DES 鍵が倍長の非暗号化鍵であることを指定します。
KEY-ENC これは、key_identifier で 指定される DES 鍵が固定長鍵トークンにおける単一長の暗号化鍵であることを指定します。
KEY-ENCD これは、key_identifier で 指定される DES 鍵が固定長鍵トークンにおける倍長の暗号化鍵であることを指定します。
TOKEN これは、AES 非暗号化/暗号化鍵トークンを処理します。
処理規則 (いずれかのキーワードが必須)
GENERATE これは、key_identifier で指定された鍵の検証パターンを生成します。
VERIFY これは、key_identifier で指定された鍵の検証パターンを検証します。
パリティー調整 - AES キーワードと一緒には指定できません (オプション)
ADJUST これは、検証パターンを生成または検証する前にテスト鍵のパリティーを奇数に調整します。 key_identifier フィールド自体は調整されません。
NOADJUST これは、検証パターンを生成または検証する前にテスト鍵のパリティーを奇数に調整しません。 これがデフォルトです。
検証処理規則 (オプション)
ENC-ZERO ENC-ZERO は、すべての規則で使用できます
SHA-256 これは、「SHA-256」方式を使用します。 CLR-A128、CLR-A192、CLR-A256、および TOKEN と併用してください。 SHA-256 は AES 規則のデフォルトでもあります。
key_identifier
方向 タイプ
入出力 ストリング

検証パターンを生成または検証するときの対象となる鍵。 このパラメーターは、内部トークン、鍵ラベル、または非暗号化鍵の値を左寄せにした 64 バイト・ストリングです。

注: このパラメーターに対して鍵ラベルを指定する場合、鍵ラベルは CKDS 上で固有でなければなりません。

鍵トークンが指定されている場合に、鍵が、古いマスター鍵で暗号化されたものであると、 トークンは現行マスター鍵で暗号化されて返されます。

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

これは、テスト・パターン検証処理に対して入力として 指定されてテスト・パターン生成処理で出力として返される乱数を含む 8 バイト・フィールドです。 random_number は、DES 操作可能鍵のデフォルト・アルゴリズムのみと併用されます。

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

これは、テスト・パターン検証処理に対して入力として 指定されてテスト・パターン生成処理で出力として返される検証パターンを含む 8 バイト・フィールドです。

制約事項

この呼び出し可能サービスは、バージョン X'10' 外部 DES 鍵トークン (RKX 鍵トークン) をサポートしていません。

使用上の注意

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

鍵を生成するときは、鍵の検証パターンを生成できます。 鍵とともにパターンを配布すれば、そのパターンを受信側ノードで検証できます。 ユーザーは、このようにして、送信側と受信側で同じ鍵が使用されていることを確認できます。 鍵形式 (すなわち、非暗号化、操作可能、および外部) を任意に組み合わせて鍵を生成したり検証したりできます。

DES 鍵のパリティーはテストされません。

ENC-ZERO 検証処理に対して、単一長、倍長、および 3 倍長の鍵を生成したり検証したりすることがサポートされます。 3 倍長の鍵の場合、KEY-ENC または KEY-ENCD を ENC-ZERO と併用します。 3 倍長の非暗号化鍵はサポートされません。

IBM 4765 PCIe/4764 PCI-X 暗号化コプロセッサーに関しては、KEY-ENC と KEY-ENCD のどちらも、 暗号化された単一長/倍長の鍵をサポートします。 これらは、CV のバイト 5 にある鍵形式ビットを使用して鍵の長さを判別します。 整合性を保つため、ICSF では、KEY-ENC と KEY-ENCD の両方で単一長の鍵と倍長の鍵が扱われます。 どちらの製品でも、キーワードは実質的に無視されます。 これらは互換性の理由だけで提供されています。

アクセス制御点

このサービスの機能を制御するドメイン役割におけるアクセス制御点は「Key Test and Key Test 2」です。 このアクセス制御点は無効にはできません。 これは ICSF マスター鍵検証に必要です。

アクセス制御点「Key Test - Warn when keyword inconsistent with key length」が有効になっている場合は、指定された鍵規則が、指定された key_identifier に適合しないと、 警告が生成されます。

必須ハードウェア

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

表 2. 鍵テスト必須ハードウェア
サーバー 必須暗号化ハードウェア 制約事項

IBM eServer zSeries 990
IBM eServer zSeries 890

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

Crypto Express2 コプロセッサー

3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。

AES 鍵はサポートされていません。

IBM System z9 EC
IBM System z9 BC

Crypto Express2 コプロセッサー 3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。

セキュア AES 鍵サポートには、2008 年 11 月以降のライセンス内部コード (LIC) が必要です。

IBM System z10 EC
IBM System z10 BC

Crypto Express2 コプロセッサー

Crypto Express3 コプロセッサー

3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。

セキュア AES 鍵サポートには、2008 年 11 月以降のライセンス内部コード (LIC) が必要です。

IBM zEnterprise 196
IBM zEnterprise 114

Crypto Express3 コプロセッサー 3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。

IBM zEnterprise EC12
IBM zEnterprise BC12

Crypto Express3 コプロセッサー

Crypto Express4 CCA コプロセッサー

3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。

IBM z13

Crypto Express5 CCA コプロセッサー 3 倍長の非暗号化鍵はサポートされません。 3 倍長の暗号化鍵は ENC-ZERO キーワードでのみサポートされます。