セキュア鍵インポート (CSNBSKI および CSNESKI)
セキュア鍵インポート呼び出し可能サービスは、DES マスター鍵またはインポーター鍵暗号鍵で単一長または倍長の非暗号化鍵を暗号化する場合に 使用します。 暗号化の後で、非暗号化鍵を任意の使用可能な鍵タイプとしてインポートできます。 このサービスでは、鍵パリティーの調整は行われません。
この呼び出し可能サービスは、ICSF が 特殊セキュア・モードになっている場合にのみ実行できます。 このモードについては、特殊セキュア・モードを参照してください。
倍長および 3 倍長の DATA 鍵、または倍長の MAC、MACVER、CIPHER、DECIPHER、ENCIPHER 鍵をインポートするには、 複数セキュア鍵インポート呼び出し可能サービスを使用します。 複数セキュア鍵インポート (CSNBSKM および CSNESKM)を参照してください。
AES DATA 鍵をインポートするには、複数セキュア鍵インポート・サービス (複数セキュア鍵インポート (CSNBSKM および CSNESKM)) を使用します。
AMODE(64) 呼び出しの呼び出し可能サービス名は CSNESKI です。
形式
CALL CSNBSKI(
return_code,
reason_code,
exit_data_length,
exit_data,
clear_key,
key_type,
key_form,
importer_key_identifier,
key_identifier)
パラメーター
- return_code
-
方向 タイプ 出力 整数 戻りコードは、呼び出し可能サービスの一般的な結果を示しています。 ICSF および暗号化コプロセッサーの戻りコードおよび理由コードに、戻りコードがリストされています。
- reason_code
-
方向 タイプ 出力 整数 理由コードは、アプリケーション・プログラムに返される、呼び出し可能サービスの結果を示しています。 戻りコードにはそれぞれ、特定の処理問題を示すさまざまな理由コードがあります。 ICSF および暗号化コプロセッサーの戻りコードおよび理由コード に、理由コードがリストされています。
- exit_data_length
-
方向 タイプ 入出力 整数 インストール・システム出口に渡されるデータの長さ。 データは exit_data パラメーターで識別されます。
- exit_data
-
方向 タイプ 入出力 ストリング このデータはインストール出口に渡されます。
- clear_key
-
方向 タイプ 入力 ストリング 暗号化される非暗号化鍵。 16 バイト・ストリング (非暗号化鍵値) を指定してください。 単一長の鍵の場合、値は左寄せにして、ゼロを埋め込む必要があります。 有効な単一長の鍵の場合は、右半分の値は左半分の値と等しくなければなりません。 倍長の鍵の場合は、左の鍵値と右の鍵値を指定します。注: 単一長または倍長にできる鍵タイプの場合に、ゼロの clear_key 値を指定すると、単一長の暗号化鍵が生成されます。 - key_type
-
方向 タイプ 入力 文字ストリング マスター鍵またはインポーター鍵で暗号化される鍵のタイプ。 このリストにあるキーワードやキーワード TOKEN を含まなければならない 8 バイト・フィールドを指定します。 鍵タイプが TOKEN の 場合、ICSF は key_identifier パラメーターにける CV から 鍵タイプを判別します。
セキュア鍵インポート呼び出し可能サービスの 鍵タイプ値は、CIPHER、 CIPHERXI、 CIPHERXL、 CIPHERXO、 CVARDEC、 CVARENC、 CVARPINE、 CVARXCVL、 CVARXCVR、 DATA、 DECIPHER、 ENCIPHER、 EXPORTER、 IKEYXLAT、 IMPORTER、 IMP-PKA、 IPINENC、 MAC、 MACVER、 OKEYXLAT、 OPINENC、 PINGEN、 および PINVER です。
- key_form
-
方向 タイプ 入力 文字ストリング 生成される鍵形式。 鍵をマスター鍵 (OP) で暗号化すべきかインポーター鍵暗号鍵 (IM) で暗号化すべきかを指定する 4 バイトのキーワードを入力します。 このキーワードは左寄せにして、ブランクを埋め込む必要があります。 有効なキーワード値は、OP (マスター鍵で暗号化する場合) または IM (インポーター鍵暗号鍵で暗号化する場合) です。 IM を指定する場合は、importer_key_identifier パラメーターでインポーター鍵暗号鍵を指定する必要があります。 key_type が IMP-PKA の場合、このサービスは OP key_form のみをサポートします。
- importer_key_identifier
-
方向 タイプ 入出力 文字ストリング 非暗号化鍵の暗号化に使用するインポーター鍵暗号鍵。 内部鍵フォーマットまたは鍵ラベルの 64 バイト・ストリングを指定します。 key_form パラメーターに対して IM を指定する 場合は、importer_key_identifier パラメーターが必要です。
- key_identifier
-
方向 タイプ 入出力 文字ストリング 生成対象暗号化鍵。 このパラメーターは 64 バイト・ストリングです。 この呼び出し可能サービスでは、マスター鍵で非暗号化鍵が暗号化された (key_form が OP だった) 場合は 内部鍵トークンが返され、インポーター鍵暗号鍵で非暗号化鍵が暗号化された (key_form が IM だった) 場合は 外部鍵トークンが返されます。
key_type パラメーターが TOKEN ではない場合、 このパラメーターはゼロの 16 進数の 64 バイト・ストリングでなければなりません。
インポートされた key_type が IMPORTER または EXPORTER であり、key_form が OP である 場合、key_identifier パラメーターの方向が入力と出力の両方に変更されます。 このパラメーターで IMPORTER 鍵または EXPORTER 鍵に対して有効な内部鍵トークンをアプリケーションが渡すと、 インポートされた鍵トークンに NOCV ビットが伝搬されます。
セキュア鍵インポート・サービスでは、鍵パリティーの調整は行いません。
ICSF は、対称鍵トークンにおいて鍵値をラップする方式として、元の ECB ラップ方式と、ANSI X9.24 準拠の拡張 CBC ラップ方式の 2 つの方式をサポートします。 出力される key_identifier では、入力としてスケルトン・トークンが指定されている場合を除き、 デフォルト・ラップ方式が使用されます。 入力としてスケルトン・トークンが指定されている場合は、スケルトン・トークンにおけるラップ方式が使用されます。
使用上の注意
呼び出し側がこの呼び出し可能サービス、鍵ラベル、または CKDS に保管された内部セキュア鍵トークンの使用を許可されているかを検査するために、SAF が呼び出される場合があります。
アクセス制御点
下表に、このサービスの機能を制御するドメイン役割内のアクセス制御点を示します。
鍵形式 | アクセス制御点 |
---|---|
OP | Secure Key Import - DES, OP |
IM | Secure Key Import - DES, IM |
セキュア鍵インポート・サービスで NOCV 鍵暗号鍵を使用するには、リストされているアクセス制御点の一方または両方に 加えて、「NOCV KEK usage for import-related functions」アクセス制御点が有効になっていなければなりません。
- 「Prohibit weak wrapping - Transport keys」アクセス制御点が有効になっている場合、サービスは失敗します。
- 「Warn when weak wrap - Transport keys」アクセス制御点が有効になっている場合、サービスは正常に完了し、警告戻りコードが返されます。
必須ハードウェア
下表に、各サーバー・タイプに必要な暗号化ハードウェアを示し、この呼び出し可能サービスの制約事項について説明します。
サーバー | 必須暗号化ハードウェア | 制約事項 |
---|---|---|
IBM eServer zSeries 990 |
PCI X 暗号化コプロセッサー Crypto Express2 コプロセッサー |
|
IBM System z9 EC |
Crypto Express2 コプロセッサー | |
IBM System z10 EC |
Crypto Express2 コプロセッサー Crypto Express3 コプロセッサー |
|
IBM zEnterprise 196 |
Crypto Express3 コプロセッサー | |
IBM zEnterprise EC12 |
Crypto Express3 コプロセッサー Crypto Express4 CCA コプロセッサー |
|
IBM z13 |
Crypto Express5 CCA コプロセッサー |