15 Oracle Key VaultクライアントSDKのユーティリティAPI
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault機能とともに使用することで共通の操作を簡略化できます。
Oracle Key Vaultユーティリティ関数で使用される要素と属性の索引は、「属性索引と要素索引」で説明されているものと同じ意味です。
- Oracle Key VaultクライアントSDKのユーティリティAPIについて
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault APIとともに使用することで共通の操作を簡略化できます。 - okvAttrExtractTTLV
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。 - okvAttrMakeTTLV
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造体に変換します。 - okvCryptoContextCreate
okvCryptoContextCreate
では、暗号化および復号化操作に必要な暗号化コンテキストを作成します。 - okvCryptoContextFree
okvCryptoContextFree
では、暗号化コンテキスト構造体に割り当てられたメモリーを解放します。 - okvCryptoContextGetAuthEncryptionAdditionalData
okvCryptoContextGetAuthEncryptionAdditionalData
により、暗号化コンテキスト構造体から認証済暗号化の追加データのパラメータ値を取得します。 - okvCryptoContextGetAuthEncryptionTag
okvCryptoContextGetAuthEncryptionTag
により、暗号化コンテキスト構造体から認証済暗号化のタグのパラメータ値を取得します。 - okvCryptoContextGetBlockCipherMode
okvCryptoContextGetBlockCipherMode
により、暗号化コンテキスト構造体からブロック暗号モードのパラメータ値を取得します。 - okvCryptoContextGetIV
okvCryptoContextGetIV
により、暗号化コンテキスト構造体からIVのパラメータ値を取得します。 - okvCryptoContextGetPadding
okvCryptoContextGetPadding
により、暗号化コンテキスト構造体からパディングのパラメータ値を取得します。 - okvCryptoContextGetRandomIV
okvCryptoContextGetRandomIV
により、暗号化コンテキスト構造体からランダムなIVのパラメータ値を取得します。 - okvCryptoContextSetAuthEncryptionAdditionalData
okvCryptoContextSetAuthEncryptionAdditionalData
では、暗号化コンテキスト構造体に認証済暗号化の追加データのパラメータ値を設定します。 - okvCryptoContextSetAuthEncryptionTag
okvCryptoContextSetAuthEncryptionTag
では、暗号化コンテキスト構造体に認証済暗号化のタグのパラメータ値を設定します。 - okvCryptoContextSetBlockCipherMode
okvCryptoContextSetBlockCipherMode
では、暗号化コンテキスト構造体にブロック暗号モードのパラメータ値を設定します。 - okvCryptoContextSetIV
okvCryptoContextSetIV
では、暗号化コンテキスト構造体にIVのパラメータ値を設定します。 - okvCryptoContextSetPadding
okvCryptoContextSetPadding
では、暗号化コンテキスト構造体にパディングのパラメータ値を設定します。 - okvCryptoContextSetRandomIV
okvCryptoContextSetRandomIV
では、暗号化コンテキスト構造体にランダムなIVのパラメータ値を設定します。 - okvCryptoResponseGetAuthEncryptionTag
okvCryptoResponseGetAuthEncryptionTag
により、暗号化レスポンス構造体から認証済暗号化のタグの値を取得します。 - okvCryptoResponseGetDecryptedData
okvCryptoResponseGetDecryptedData
により、復号化レスポンス構造体から、復号化されたデータ値を取得します。 - okvCryptoResponseGetEncryptedData
okvCryptoResponseGetEncryptedData
により、暗号化レスポンス構造体から、暗号化されたデータ値を取得します。 - okvCryptoResponseGetIV
okvCryptoResponseGetIV
により、ランダムなIVが設定されてIVがリクエストで指定されなかった場合に、暗号化のためにサーバーによって使用される暗号化レスポンス構造体から、IVの値を取得します。 - okvDecryptResponseCreate
okvDecryptResponseCreate
では、復号化操作のレスポンスの詳細を保持する復号化レスポンス構造体を作成します。 - okvDecryptResponseFree
okvDecryptResponseFree
では、復号化レスポンス構造体に割り当てられたメモリーを解放します。 - okvEncryptResponseCreate
okvEncryptResponseCreate
では、暗号化操作のレスポンスの詳細を保持する暗号化レスポンス構造体を作成します。 - okvEncryptResponseFree
okvEncryptResponseFree
では、暗号化レスポンス構造体に割り当てられたメモリーを解放します。 - okvGetTextForAttributeNum
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。 - okvGetTextForTag
okvGetTextForTag
は、有効なKMIPタグの名前を返します。 - okvGetTextForTagEnum
okvGetTextForTagEnum
は、ENUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。 - okvGetTextForTagType
okvGetTextForTagType
は、有効なKMIP型の名前を返します。 - okvGetTextLenForAttributeNum
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。 - okvObjGetAttrNo
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
15.1 Oracle Key VaultクライアントSDKのユーティリティAPIについて
Oracle Key VaultクライアントSDKのユーティリティAPIは、その他のOracle Key Vault APIとともに使用することで共通の操作を簡略化できます。
クライアントSDKのユーティリティAPIの要素と属性の索引は、Oracle Key Vault KMIP属性APIと同じ構造です。
15.2 okvAttrExtractTTLV
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。
カテゴリ
KMIPユーティリティAPI
用途
okvAttrExtractTTLV
では、指定したOKVTTLV親オブジェクトの子OKVTTLVオブジェクトである属性をOKVAttr
に変換します。
構文
OKVErrNo okvAttrExtractTTLV(OKVEnv *env, OKVTTLV *attr_ttlv, OKVAttr *attr_col);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
attr_ttlv |
IN |
属性が含まれているTTLV親オブジェクト。 |
attr_col |
OUT |
属性のコレクション。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
なし。
例
OKVAttr attr_struct; ub4 index = 0; memset((void *)&attr_struct, 0, sizeof(attr_struct)); ... okvAttrExtractTTLV(env, ttlv, &attr_struct); printf("\nAttributes Extracted:"); printf("\nName: %s ", attr_struct.name[index].name); printf("\nName Length: %d ", attr_struct.name[index].namel); /* Null terminate the unique identifier */ attr_struct.unique_identifier.id[attr_struct.unique_identifier.idl] = 0; printf("\nUnique ID: %s ", attr_struct.unique_identifier.id); printf("\nUnique ID Length: %d ", attr_struct.unique_identifier.idl); printf("\nCryptographic Algorithm: %d ", attr_struct.crypto_algorithm);
関連項目
15.3 okvAttrMakeTTLV
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造体に変換します。
カテゴリ
KMIPユーティリティAPI
用途
okvAttrMakeTTLV
では、OKVAttr
をOKVTTLV構造に変換し、OKVTTLV内のすべての新規属性が指定されたOKVTTLV親オブジェクトの下に収集されます。
構文
OKVErrNo okvAttrMakeTTLV(OKVEnv *env, OKVAttr *attr_col OKVTTLV *attr_ttlv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
IN |
Oracle Key Vault環境ハンドル。 |
attr_col |
IN |
属性のコレクション。 |
attr_ttlv |
OUT |
属性が含まれているTTLV親オブジェクト。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
コメント
複数インスタンス属性については、属性の数を設定する必要があります。たとえば、name
は複数インスタンス属性です。そのため、name
を追加する場合は、name_count
も指定する必要があります。
例
OKVTTLV *ttlv = (OKVTTLV *)NULL; OKVOps *ops; OKVAttr attrs; memset((void *)&attrs, 0, sizeof(attrs)); ... /* Adding name attribute to the structure */ ub4 index = 0; attrs.name_count = 1; attrs.name[index].name = "attr_name"; attrs.name[index].namel = strlen(attrs.name[index].name); attrs.name[index].type = 1; /* Adding cryptographic algo attribute to the structure */ attrs.crypto_algorithm = CRYPTO_ALG_AES; /* Adding unique identifier attribute to the structure */ attrs.unique_identifier.id = uid; attrs.unique_identifier.idl = strlen(attrs.unique_identifier.id); ops = okvOpsCreate(env, OKVOpAddAttribute); ttlv = okvTTLVGetRequest(env, ops); /* Convert OKVAttr structure to TTLV Attributes Object */ okvAttrMakeTTLV(env, &attrs, ttlv);
15.4 okvCryptoContextCreate
okvCryptoContextCreate
では、暗号化および復号化操作に必要な暗号化コンテキストを作成します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextCreate
では、暗号化および復号化操作に必要な暗号化コンテキストを作成します。
構文
OKVCryptoContext *okvCryptoContextCreate(OKVEnv *env, OKVOpsNo operation);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
operation |
|
KMIP操作。 |
戻り値
戻り値 | 説明 |
---|---|
OKVCryptoContext * |
OKVCryptoContextオブジェクトへのポインタ。 成功: OKVCryptoContextオブジェクトへのポインタ。 失敗: NULLポインタ。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt);
15.5 okvCryptoContextFree
okvCryptoContextFree
では、暗号化コンテキスト構造体に割り当てられたメモリーを解放します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextFree
では、暗号化コンテキスト構造体に割り当てられたメモリーを解放します。
構文
void okvCryptoContextFree(OKVEnv *env, OKVCryptoContext** crypto_context);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
戻り値
値は返されません。
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); ... okvCryptoContextFree(env, &crypto_context);
15.6 okvCryptoContextGetAuthEncryptionAdditionalData
okvCryptoContextGetAuthEncryptionAdditionalData
により、暗号化コンテキスト構造体から認証済暗号化の追加データのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetAuthEncryptionAdditionalData
により、暗号化コンテキスト構造体から認証済暗号化の追加データのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetAuthEncryptionAdditionalData(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *auth_encryption_additional_data, ub4 *auth_encryption_additional_datal);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
auth_encryption_additional_data |
|
認証済暗号化の追加データ値。 |
auth_encryption_additional_datal |
|
認証済暗号化の追加データ値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 *auth_enc_addl_data = (ub1 *)NULL; ub4 auth_enc_addl_datal = 0; okvCryptoContextGetAuthEncryptionAdditionalData (env, crypto_context, auth_enc_addl_data, &auth_enc_addl_datal);
15.7 okvCryptoContextGetAuthEncryptionTag
okvCryptoContextGetAuthEncryptionTag
により、暗号化コンテキスト構造体から認証済暗号化のタグのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetAuthEncryptionTag
により、暗号化コンテキスト構造体から認証済暗号化のタグのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetAuthEncryptionTag(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *auth_encryption_tag, ub4 *auth_encryption_tagl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
auth_encryption_tag |
|
認証済暗号化のタグの値。 |
auth_encryption_tagl |
|
認証済暗号化のタグの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 *auth_enc_tag = (ub1 *)NULL; ub4 auth_enc_tagl = 0; okvCryptoContextGetAuthEncryptionTag(env, crypto_context, auth_enc_tag, &auth_enc_tagl);
15.8 okvCryptoContextGetBlockCipherMode
okvCryptoContextGetBlockCipherMode
により、暗号化コンテキスト構造体からブロック暗号モードのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetBlockCipherMode
により、暗号化コンテキスト構造体からブロック暗号モードのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetBlockCipherMode(OKVEnv *env, OKVCryptoContext *crypto_context, ub4 *block_cipher_mode);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
block_cipher_mode |
|
ブロック暗号モードの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub4 block_cipher_mode; okvCryptoContextGetBlockCipherMode(env, crypto_context, &block_cipher_mode);
15.9 okvCryptoContextGetIV
okvCryptoContextGetIV
により、暗号化コンテキスト構造体からIVのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetIV
により、暗号化コンテキスト構造体からIVのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetIV(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *iv, ub4 *ivl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
iv |
|
IVの値。 |
ivl |
|
IVの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 *iv = (ub1 *)NULL; ub4 ivl = 0; okvCryptoContextGetIV(env, crypto_context, iv, &ivl);
15.10 okvCryptoContextGetPadding
okvCryptoContextGetPadding
により、暗号化コンテキスト構造体からパディングのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetPadding
により、暗号化コンテキスト構造体からパディングのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetPadding(OKVEnv *env, OKVCryptoContext *crypto_context, ub4 *padding);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
padding |
|
パディングの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub4 padding; okvCryptoContextGetPadding(env, crypto_context, &padding);
15.11 okvCryptoContextGetRandomIV
okvCryptoContextGetRandomIV
により、暗号化コンテキスト構造体からランダムなIVのパラメータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextGetRandomIV
により、暗号化コンテキスト構造体からランダムなIVのパラメータ値を取得します。
構文
OKVErrNo okvCryptoContextGetRandomIV(OKVEnv *env, OKVCryptoContext *crypto_context, ub8 *random_iv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
random_iv |
|
ランダムなIVの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub8 random_iv; okvCryptoContextGetRandomIV(env, crypto_context, &random_iv);
15.12 okvCryptoContextSetAuthEncryptionAdditionalData
okvCryptoContextSetAuthEncryptionAdditionalData
では、暗号化コンテキスト構造体に認証済暗号化の追加データのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetAuthEncryptionAdditionalData
では、暗号化コンテキスト構造体に認証済暗号化の追加データのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetAuthEncryptionAdditionalData(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *auth_encryption_additional_data, ub4 auth_encryption_additional_datal);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
auth_encryption_additional_data |
|
認証済暗号化の追加データ値。 |
auth_encryption_additional_datal |
|
認証済暗号化の追加データ値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); ub1 auth_enc_addl_data[] = "Additional Data"; ub4 auth_enc_addl_datal = strlen((const char *) auth_enc_addl_data); okvCryptoContextSetAuthEncryptionAdditionalData(env, crypto_context, auth_enc_addl_data, auth_enc_addl_datal);
15.13 okvCryptoContextSetAuthEncryptionTag
okvCryptoContextSetAuthEncryptionTag
では、暗号化コンテキスト構造体に認証済暗号化のタグのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetAuthEncryptionTag
では、暗号化コンテキスト構造体に認証済暗号化のタグのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetAuthEncryptionTag(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *auth_encryption_tag, ub4 auth_encryption_tagl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
auth_encryption_tag |
|
認証済暗号化のタグの値。 |
auth_encryption_tagl |
|
認証済暗号化のタグの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); ub1 auth_enc_tag[] = "Auth Tag"; ub4 auth_enc_tagl = strlen((const char *) auth_enc_tag); okvCryptoContextSetAuthEncryptionTag(env, crypto_context, auth_enc_tag, auth_enc_tagl);
15.14 okvCryptoContextSetBlockCipherMode
okvCryptoContextSetBlockCipherMode
では、暗号化コンテキスト構造体にブロック暗号モードのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetBlockCipherMode
では、暗号化コンテキスト構造体にブロック暗号モードのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetBlockCipherMode(OKVEnv *env, OKVCryptoContext *crypto_context, ub4 block_cipher_mode);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
block_cipher_mode |
|
ブロック暗号モードの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); okvCryptoContextSetBlockCipherMode(env, crypto_context, BLK_CIPHER_CBC);
15.15 okvCryptoContextSetIV
okvCryptoContextSetIV
では、暗号化コンテキスト構造体にIVのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetIV
では、暗号化コンテキスト構造体にIVのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetIV(OKVEnv *env, OKVCryptoContext *crypto_context, ub1 *iv, ub4 ivl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
iv |
|
IVの値。 |
ivl |
|
IVの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); ub1 iv[] = "5432109876543210"; ub4 ivl = strlen((const char *) iv); okvCryptoContextSetIV(env, crypto_context, iv, ivl);
15.16 okvCryptoContextSetPadding
okvCryptoContextSetPadding
では、暗号化コンテキスト構造体にパディングのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetPadding
では、暗号化コンテキスト構造体にパディングのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetPadding(OKVEnv *env, OKVCryptoContext *crypto_context, ub4 padding);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
padding |
|
パディングの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); okvCryptoContextSetPadding(env, crypto_context, PADDING_PKCS5);
15.17 okvCryptoContextSetRandomIV
okvCryptoContextSetRandomIV
では、暗号化コンテキスト構造体にランダムなIVのパラメータ値を設定します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoContextSetRandomIV
では、暗号化コンテキスト構造体にランダムなIVのパラメータ値を設定します。
構文
OKVErrNo okvCryptoContextSetRandomIV(OKVEnv *env, OKVCryptoContext *crypto_context, ub8 random_iv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
crypto_context |
|
暗号化コンテキストには、暗号化パラメータやIVなどの暗号化/復号化に必要なパラメータが含まれています。 |
random_iv |
|
ランダムなIVの値。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVCryptoContext *crypto_context = okvCryptoContextCreate(env, OKVOpEncrypt); okvCryptoContextSetRandomIV(env, crypto_context, (ub8)1);
15.18 okvCryptoResponseGetAuthEncryptionTag
okvCryptoResponseGetAuthEncryptionTag
により、暗号化レスポンス構造体から認証済暗号化のタグの値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoResponseGetAuthEncryptionTag
により、暗号化レスポンス構造体から認証済暗号化のタグの値を取得します。
構文
OKVErrNo okvCryptoResponseGetAuthEncryptionTag(OKVEnv *env, OKVEncryptResponse *encrypt_response, ub1 *auth_encryption_tag, ub4 *auth_encryption_tagl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
encrypt_response |
|
暗号化操作のレスポンス。 |
auth_encryption_tag |
|
認証済暗号化のタグの値。 |
auth_encryption_tagl |
|
認証済暗号化のタグの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 auth_enc_tag[100]; ub4 auth_enc_tagl = sizeof(auth_enc_tag); ... /* Perform Encrypt operation and get encrypt operation response in 'encrypt_response' */ ... memset(auth_enc_tag, 0, auth_enc_tagl); okvCryptoResponseGetAuthEncryptionTag(env, encrypt_response, auth_enc_tag, &auth_enc_tagl);
15.19 okvCryptoResponseGetDecryptedData
okvCryptoResponseGetDecryptedData
により、復号化レスポンス構造体から、復号化されたデータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoResponseGetDecryptedData
により、復号化レスポンス構造体から、復号化されたデータ値を取得します。
構文
OKVErrNo okvCryptoResponseGetDecryptedData(OKVEnv *env, OKVDecryptResponse *decrypt_response, ub1 *decrypted_data, ub4 *decrypted_datal);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
decrypt_response |
|
復号化操作のレスポンス。 |
decrypted_data |
|
復号化されたデータ値。 |
decrypted_datal |
|
復号化されたデータ値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 decrypted_data[100]; ub4 decrypted_datal = sizeof(decrypted_data); ... /* Perform Decrypt operation and get decrypt operation response in 'decrypt_response' */ ... memset(decrypted_data, 0, decrypted_datal); okvCryptoResponseGetDecryptedData(env, decrypt_response, decrypted_data, &decrypted_datal);
15.20 okvCryptoResponseGetEncryptedData
okvCryptoResponseGetEncryptedData
により、暗号化レスポンス構造体から、暗号化されたデータ値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoResponseGetEncryptedData
により、暗号化レスポンス構造体から、暗号化されたデータ値を取得します。
構文
OKVErrNo okvCryptoResponseGetEncryptedData(OKVEnv *env, OKVEncryptResponse *encrypt_response, ub1 *encrypted_data, ub4 *encrypted_datal);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
encrypt_response |
|
暗号化操作のレスポンス。 |
encrypted_data |
|
暗号化されたデータ値。 |
encrypted_datal |
|
暗号化されたデータ値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 encrypted_data[100]; ub4 encrypted_datal = sizeof(encrypted_data); ... /* Perform Encrypt operation and get encrypt operation response in 'encrypt_response' */ ... memset(encrypted_data, 0, encrypted_datal); okvCryptoResponseGetEncryptedData(env, encrypt_response, encrypted_data, &encrypted_datal);
15.21 okvCryptoResponseGetIV
okvCryptoResponseGetIV
により、ランダムなIVが設定されてIVがリクエストで指定されなかった場合に、暗号化のためにサーバーによって使用される暗号化レスポンス構造体から、IVの値を取得します。
カテゴリ
KMIPユーティリティAPI
用途
okvCryptoResponseGetIV
により、ランダムなIVが設定されてIVがリクエストで指定されなかった場合に、暗号化のためにサーバーによって使用される暗号化レスポンス構造体から、IVの値を取得します。
構文
OKVErrNo okvCryptoResponseGetIV(OKVEnv *env, OKVEncryptResponse *encrypt_response, ub1 *iv, ub4 *ivl);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
encrypt_response |
|
暗号化操作のレスポンス。 |
iv |
|
IVの値。 |
ivl |
|
IVの値の長さ。 |
戻り値
戻り値 | 説明 |
---|---|
OKVErrNo |
Oracle Key Vaultエラー番号。 成功: OKV_SUCCESS (0)が返されます。 失敗: エラー・スタックの最上部にあるエラーの有効なエラー番号が返されます。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
ub1 iv[100]; ub4 ivl = sizeof(iv); ... /* Perform Encrypt operation and get encrypt operation response in 'encrypt_response' */ ... memset(iv, 0, ivl); okvCryptoResponseGetIV(env, encrypt_response, iv, &ivl);
15.22 okvDecryptResponseCreate
okvDecryptResponseCreate
では、復号化操作のレスポンスの詳細を保持する復号化レスポンス構造体を作成します。
カテゴリ
KMIPユーティリティAPI
用途
okvDecryptResponseCreate
では、復号化操作のレスポンスの詳細を保持する復号化レスポンス構造体を作成します。
構文
OKVDecryptResponse *okvDecryptResponseCreate(OKVEnv *env);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
戻り値
戻り値 | 説明 |
---|---|
OKVDecryptResponse * |
OKVDecryptResponseオブジェクトへのポインタ。 成功: OKVDecryptResponseオブジェクトへのポインタ。 失敗: NULLポインタ。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVDecryptResponse *decrypt_response = okvDecryptResponseCreate(env);
15.23 okvDecryptResponseFree
okvDecryptResponseFree
では、復号化レスポンス構造体に割り当てられたメモリーを解放します。
カテゴリ
KMIPユーティリティAPI
用途
okvDecryptResponseFree
では、復号化レスポンス構造体に割り当てられたメモリーを解放します。
構文
void okvDecryptResponseFree(OKVEnv *env, OKVDecryptResponse** decrypt_response);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
decrypt_response |
|
復号化操作のレスポンス。 |
戻り値
値は返されません。
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVDecryptResponse *decrypt_response = okvDecryptResponseCreate(env); ... okvDecryptResponseFree(env, &decrypt_response);
15.24 okvEncryptResponseCreate
okvEncryptResponseCreate
では、暗号化操作のレスポンスの詳細を保持する暗号化レスポンス構造体を作成します。
カテゴリ
KMIPユーティリティAPI
用途
okvEncryptResponseCreate
では、暗号化操作のレスポンスの詳細を保持する暗号化レスポンス構造体を作成します。
構文
OKVEncryptResponse *okvEncryptResponseCreate(OKVEnv *env);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
戻り値
戻り値 | 説明 |
---|---|
OKVEncryptResponse * |
OKVEncryptResponseオブジェクトへのポインタ。 成功: OKVEncryptResponseオブジェクトへのポインタ。 失敗: NULLポインタ。 |
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVEncryptResponse *encrypt_response = okvEncryptResponseCreate(env);
15.25 okvEncryptResponseFree
okvEncryptResponseFree
では、暗号化レスポンス構造体に割り当てられたメモリーを解放します。
カテゴリ
KMIPユーティリティAPI
用途
okvEncryptResponseFree
では、暗号化レスポンス構造体に割り当てられたメモリーを解放します。
構文
void okvEncryptResponseFree(OKVEnv *env, OKVEncryptResponse** encrypt_response);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
encrypt_response |
|
暗号化操作のレスポンス。 |
戻り値
値は返されません。
サポートされているバージョン
Oracle Key Vault C SDKリリース21.4.0.0.0以降。
コメント
なし。
例
OKVEncryptResponse *encrypt_response = okvEncryptResponseCreate(env); ... okvEncryptResponseFree(env, &encrypt_response);
15.26 okvGetTextForAttributeNum
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名を返します。
構文
oratext *okvGetTextForAttributeNum(OKVAttrNo attrno);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
attrno |
|
KMIP属性のOracle Key Vault属性番号。 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP属性の名前。 成功: KMIP属性の名前への有効なポインタ。 失敗: NULLポインタが返されます。 |
コメント
なし。
例
printf("%s", okvGetTextForAttributeNum(OKVAttrActivationDate));
15.27 okvGetTextForTag
okvGetTextForTag
は、有効なKMIPタグの名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTag
は、有効なKMIPタグの名前を返します。無効なKMIPタグの場合は、NULL
値が返されます。
構文
oratext *okvGetTextForTag(OKVTag tag);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
tag |
IN |
KMIPタグ |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIPタグ名。 成功: KMIPタグ名への有効なポインタが返されます。 失敗: |
コメント
なし。
例
printf("%s", okvGetTextForTag(OKVDEF_TAG_ID));
15.28 okvGetTextForTagEnum
okvGetTextForTagEnum
は、ENUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTagEnum
は、EMUMERATION
型の有効なKMIPタグに対応する列挙値の名前を返します。
構文
oratext *okvGetTextForTagEnum(OKVTag tag, ub4 val);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
tag |
IN |
KMIP列挙タグ |
val |
IN |
KMIP列挙タグ値 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP列挙タグ値の名前。 成功: KMIP列挙タグ値の名前への有効なポインタが返されます。 失敗: |
コメント
KMIPタグが無効な場合やKMIPタグの値が無効な場合、またはKMIPタグがENUMERATION
型でない場合は、NULL
値が返されます。
例
printf("%s", okvGetTextForTagEnum(OKVDEF_TAG_STATE, OKVDEF_STATE_ACTIVE));
15.29 okvGetTextForTagType
okvGetTextForTagType
は、有効なKMIP型の名前を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextForTagType
は、有効なKMIP型の名前を返します。無効なKMIP型の場合は、NULL
値が返されます。
構文
oratext *okvGetTextForTagType(OKVType typ);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
typ |
IN |
KMIP型 |
戻り値
戻り値 | 説明 |
---|---|
oratext* |
KMIP型名。 成功: KMIP型名への有効なポインタが返されます。 失敗: |
コメント
なし。
例
printf("%s", okvGetTextForTagType(OKVDEF_ITEM_TYPE_INT));
15.30 okvGetTextLenForAttributeNum
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。
カテゴリ
KMIPユーティリティAPI
用途
okvGetTextLenForAttributeNum
は、特定のOracle Key Vault属性番号に対応する属性名の長さを返します。
構文
ub4 okvGetTextLenForAttributeNum(OKVAttrNo attrno);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
attrno |
|
KMIP属性のOracle Key Vault属性番号。 |
戻り値
戻り値 | 説明 |
---|---|
ub4 |
属性名の長さ。 成功: バッファの長さが戻されます。 失敗: |
コメント
なし。
例
printf("%d", okvGetTextLenForAttributeNum(OKVAttrActivationDate));
15.31 okvObjGetAttrNo
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
カテゴリ
KMIPユーティリティAPI
用途
okvObjGetAttrNo
は、特定のTTLVオブジェクトに対応するOracle Key Vault属性番号を返します。
構文
OKVAttrNo okvObjGetAttrNo(OKVEnv *env, OKVTTLV *ttlv);
パラメータ
パラメータ | IN/OUT | 説明 |
---|---|---|
env |
|
Oracle Key Vault環境ハンドル。 |
ttlv |
IN |
OKVTTLVオブジェクト。 |
戻り値
戻り値 | 説明 |
---|---|
OKVAttrNo |
TTLVオブジェクトのOracle Key Vault属性番号。 成功: 特定のTTLVオブジェクトに対応するOracle Key Vault属性番号が返されます。 失敗: |
コメント
なし。
例
OKVTTLV *ttlv = (OKVTTLV *) NULL; ... switch (okvObjGetAttrNo(env, ttlv)) { ... case OKVAttrObjType: ... case OKVAttrCryptoAlg: ... case OKVAttrCryptoLen: ... case OKVAttrCryptoUsageMask: ... }