EN JA
Heimdal Kerberos 5 cryptography functions(3)
Heimdal Kerberos 5 cryptography functions(3) HeimdalKerberos5library Heimdal Kerberos 5 cryptography functions(3)

名称

Heimdal Kerberos 5 暗号化関数-

関数


KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_valid (krb5_context context, krb5_enctype etype)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cksumtype_to_enctype (krb5_context context, krb5_cksumtype ctype, krb5_enctype *etype)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_encrypt_iov_ivec (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov *data, int num_data, void *ivec)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_decrypt_iov_ivec (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov *data, unsigned int num_data, void *ivec)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_create_checksum_iov (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov *data, unsigned int num_data, krb5_cksumtype *type)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_verify_checksum_iov (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov *data, unsigned int num_data, krb5_cksumtype *type)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_init (krb5_context context, const krb5_keyblock *key, krb5_enctype etype, krb5_crypto *crypto)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_destroy (krb5_context context, krb5_crypto crypto)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getblocksize (krb5_context context, krb5_crypto crypto, size_t *blocksize)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getenctype (krb5_context context, krb5_crypto crypto, krb5_enctype *enctype)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getpadsize (krb5_context context, krb5_crypto crypto, size_t *padsize)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getconfoundersize (krb5_context context, krb5_crypto crypto, size_t *confoundersize)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_disable (krb5_context context, krb5_enctype enctype)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_enable (krb5_context context, krb5_enctype enctype)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_allow_weak_crypto (krb5_context context, krb5_boolean enable)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_random_to_key (krb5_context context, krb5_enctype type, const void *data, size_t size, krb5_keyblock *key)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_fx_cf2 (krb5_context context, const krb5_crypto crypto1, const krb5_crypto crypto2, krb5_data *pepper1, krb5_data *pepper2, krb5_enctype enctype, krb5_keyblock *res)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_generate_subkey_extended (krb5_context context, const krb5_keyblock *key, krb5_enctype etype, krb5_keyblock **subkey)
 
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_keyblock_zero (krb5_keyblock *keyblock)
 
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_free_keyblock_contents (krb5_context context, krb5_keyblock *keyblock)
 
KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_free_keyblock (krb5_context context, krb5_keyblock *keyblock)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_copy_keyblock_contents (krb5_context context, const krb5_keyblock *inblock, krb5_keyblock *to)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_copy_keyblock (krb5_context context, const krb5_keyblock *inblock, krb5_keyblock **to)
 
KRB5_LIB_FUNCTION krb5_enctype KRB5_LIB_CALL krb5_keyblock_get_enctype (const krb5_keyblock *block)
 
KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_keyblock_init (krb5_context context, krb5_enctype type, const void *data, size_t size, krb5_keyblock *key)
 

詳細説明

 

関数説明

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_allow_weak_crypto (krb5_context context, krb5_boolean enable)

すべての弱い暗号化タイプを有効にするかまたは、無効にします。

パラメータ:

context Kerberos 5 コンテキスト。
 
enable 有効にする true、無効にする false。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_cksumtype_to_enctype (krb5_context context, krb5_cksumtype ctype, krb5_enctype * etype)

チェックサムのタイプのために対応する暗号化タイプを返します。

パラメータ:

context Kerberos コンテキスト。
 
ctype 結果の enctype を取得するチェックサムのタイプ。
 
etype 返される暗号化、比較する etype が見つからないとき、 etype は、ETYPE_NULL に設定されます。

返り値:

失敗すれば、エラーコードを返し、成功すれば、0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_copy_keyblock (krb5_context context, const krb5_keyblock * inblock, krb5_keyblock ** to)

キーブロックをコピーします、 krb5_free_keyblock() で出力キーブロックを解放します。

パラメータ:

context Kerberos 5 コンテキスト。
 
inblock コピー元のキー。
 
to 出力キー。

返り値:

成功すれば、0、または Kerberos 5 エラーコード。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_copy_keyblock_contents (krb5_context context, const krb5_keyblock * inblock, krb5_keyblock * to)

キーブロックをコピーします、 krb5_free_keyblock_contents() で出力キーブロックを解放します。

パラメータ:

context Kerberos 5 コンテキスト。
 
inblock コピー元のキー。
 
to 出力キー。

返り値:

成功すれば、0、または Kerberos 5 エラーコード。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_create_checksum_iov (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov * data, unsigned int num_data, krb5_cksumtype * type)

Kerberos メッセージのチェックサムを作成します。

パラメータ:

context Kerberos コンテキスト。
 
crypto Kerberos 暗号コンテキスト。
 
usage このバッファのためのキーの使用法。
 
data プロセスへのバッファの配列。
 
num_data 配列の長さ。
 
type 出力データ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_destroy (krb5_context context, krb5_crypto crypto)

krb5_crypto_init() によって作成された暗号コンテキストを解放します。

パラメータ:

context Kerberos コンテキスト。
 
crypto 解放する暗号コンテキスト。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_fx_cf2 (krb5_context context, const krb5_crypto crypto1, const krb5_crypto crypto2, krb5_data * pepper1, krb5_data * pepper2, krb5_enctype enctype, krb5_keyblock * res)

FAST と preauth フレームワークで使用される FX-CF2 キー派生関数。

パラメータ:

context Kerberos 5 コンテキスト。
 
crypto1 組み合わせる最初のキー。
 
crypto2 組み合わせる 2 番目のキー。
 
pepper1 独自性を生成する最初のキーと組み合わせるファクタ。
 
pepper2 独自性を生成する 2 番目のキーと組み合わせるファクタ。
 
enctype 結果のキーの暗号化タイプ。
 
res 割り付けられたキー、 krb5_free_keyblock_contents() で解放します。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getblocksize (krb5_context context, krb5_crypto crypto, size_t * blocksize)

暗号のコンテキストによって参照されるアルゴリズムを使用するブロックサイズに返します。

パラメータ:

context Kerberos コンテキスト。
 
crypto 問い合わせる暗号コンテキスト。
 
blocksize 結果のブロックサイズ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getconfoundersize (krb5_context context, krb5_crypto crypto, size_t * confoundersize)

暗号コンテキストによって使用される交絡因子 (confounder) のサイズを返します。

パラメータ:

context Kerberos コンテキスト。
 
crypto 問い合わせる暗号コンテキスト。
 
confoundersize 返される交絡因子 (confounder) のサイズ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getenctype (krb5_context context, krb5_crypto crypto, krb5_enctype * enctype)

暗号コンテキストによって使用される暗号化タイプを返します。

パラメータ:

context Kerberos コンテキスト。
 
crypto 問い合わせる暗号コンテキスト。
 
enctype 結果の暗号化タイプ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_getpadsize (krb5_context context, krb5_crypto crypto, size_t * padsize)

暗号コンテキストによって使用されるパディングサイズを返します。

パラメータ:

context Kerberos コンテキスト。
 
crypto 問い合わせる暗号コンテキスト。
 
padsize 返されるパディングサイズ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_crypto_init (krb5_context context, const krb5_keyblock * key, krb5_enctype etype, krb5_crypto * crypto)

すべての暗号化と署名操作に使用される暗号コンテキストを作成します。使用する暗号化タイプは、キーから得られますが、enctype パラメータで上書きすることができます。互換性のある (例えば DES) 暗号化タイプに、これを役に立たせることができます。

暗号コンテキストを解放するためには、 krb5_crypto_destroy() を使用します。

パラメータ:

context Kerberos コンテキスト。
 
key すべてのキーデータがあるキーブロック情報。
 
etype 暗号化タイプ。
 
crypto 結果の暗号コンテキスト。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_decrypt_iov_ivec (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov * data, unsigned int num_data, void * ivec)

Kerberos メッセージをインラインで復号化します。

パラメータ:

context Kerberos コンテキスト。
 
crypto Kerberos の暗号コンテキスト。
 
usage このバッファのためのキーの使用法。
 
data プロセスへのバッファの配列。
 
num_data 配列の長さ。
 
ivec 最初の cbc/cts ベクトル。

返り値:

エラーコードまたは 0 を返します。

1. KRB5_CRYPTO_TYPE_HEADER、 2. 1 つの KRB5_CRYPTO_TYPE_DATA と任意の順序の KRB5_CRYPTO_TYPE_SIGN_ONLY の配列 [0,...]、しかしながら、レシーバは、順序を知っていなければなりません。 KRB5_CRYPTO_TYPE_SIGN_ONLY は、一般的に使用される暗号化を行わないプロトコルヘッダとトレーラです。出力データは、入力データと同じサイズか、またはより短くなります。

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_encrypt_iov_ivec (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov * data, int num_data, void * ivec)

kerberos メッセージをインラインで暗号化する。

パラメータ:

context Kerberos コンテキスト。
 
crypto Kerberos の暗号コンテキスト。
 
usage このバッファのためのキーの使用法。
 
data プロセスへのバッファの配列。
 
num_data 配列の長さ。
 
ivec 最初の cbc/cts ベクトル。

返り値:

エラーコードまたは 0 を返します。

Kerberos 暗号化されたデータは、次のように見えます:

1. KRB5_CRYPTO_TYPE_HEADER、 2. 配列 [1,...] KRB5_CRYPTO_TYPE_DATA と任意の順序の配列 [0,...] KRB5_CRYPTO_TYPE_SIGN_ONLY、しかしながら、レシーバは、順序を知っていなければなりません。 KRB5_CRYPTO_TYPE_SIGN_ONLY は、一般的に使用されるヘッダとトレーラです。 3. KRB5_CRYPTO_TYPE_PADDING、少なくとも padsize > 1 なら、長い padsize。 4. KRB5_CRYPTO_TYPE_TRAILER。

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_disable (krb5_context context, krb5_enctype enctype)

暗号化タイプを無効にします。

パラメータ:

context Kerberos 5 コンテキスト。
 
enctype 無効にする暗号化タイプ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_enable (krb5_context context, krb5_enctype enctype)

暗号化タイプを有効にします。

パラメータ:

context Kerberos 5 コンテキスト。
 
enctype 有効にする暗号化タイプ。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_enctype_valid (krb5_context context, krb5_enctype etype)

enctype が有効かどうかチェックして、そうであるなら、0 を返します。

パラメータ:

context Kerberos コンテキスト。
 
etype 有効かどうかチェックする enctype。

返り値:

失敗すれば、エラーコードを返し、(enctype が有効) 成功すれば、0 を返します。

 

KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_free_keyblock (krb5_context context, krb5_keyblock * keyblock)

キーブロックを解放し、また、キーブロックの内容を 0 クリアし、内容を解放するために krb5_free_keyblock_contents() を使用します。

パラメータ:

context Kerberos 5 コンテキスト。
 
keyblock 解放するキーブロック、NULL は、有効な引数です。

 

KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_free_keyblock_contents (krb5_context context, krb5_keyblock * keyblock)

キーブロックの内容を解放します、また、キーブロックの内容を 0 クリアします。

パラメータ:

context Kerberos 5 コンテキスト。
 
keyblock 解放するキーブロック、NULL は、有効な引数です。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_generate_subkey_extended (krb5_context context, const krb5_keyblock * key, krb5_enctype etype, krb5_keyblock ** subkey)

キーブロックから、サブキーを生成します。

パラメータ:

context Kerberos コンテキスト。
 
key セッションキー。
 
etype サブキーの暗号化タイプ、ETYPE_NULL であるなら、キーの enctype を使用します。
 
返される新しいサブキー、 krb5_free_keyblock() で解放します。

返り値:

成功すれば、0、または Kerberos 5 エラーコード。

 

KRB5_LIB_FUNCTION krb5_enctype KRB5_LIB_CALL krb5_keyblock_get_enctype (const krb5_keyblock * block)

キーブロックの暗号化タイプを取得する。

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_keyblock_init (krb5_context context, krb5_enctype type, const void * data, size_t size, krb5_keyblock * key)

長さ `size' `data' からタイプ `enctype' のキーデータで `key' に書き込みます。キーは、 krb5_free_keyblock_contents() を使用して解放されるべきです。

返り値:

成功すれば、0、または Kerberos 5 エラーコード。

 

KRB5_LIB_FUNCTION void KRB5_LIB_CALL krb5_keyblock_zero (krb5_keyblock * keyblock)

キーブロックを 0 クリアします。

パラメータ:

keyblock 0 クリアするキーブロック。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_random_to_key (krb5_context context, krb5_enctype type, const void * data, size_t size, krb5_keyblock * key)

ランダムなバイト文字列を Kerberos の暗号のフレームワークに従うプロトコルキーに変換します。たとえランダムなソースに存在するエントロピーが制限されても、入力文字列のすべてのビットが等しくランダムであると仮定されます。

パラメータ:

context Kerberos 5 コンテキスト。
 
type enctype の結果のキー。
 
data キーに変換する入力のランダムデータ。
 
size 入力のランダムデータのサイズ、少なくとも krb5_enctype_keysize() の長さ。
 
key キー、出力キー、 krb5_free_keyblock_contents() で開放します。

返り値:

エラーコードまたは 0 を返します。

 

KRB5_LIB_FUNCTION krb5_error_code KRB5_LIB_CALL krb5_verify_checksum_iov (krb5_context context, krb5_crypto crypto, unsigned usage, krb5_crypto_iov * data, unsigned int num_data, krb5_cksumtype * type)

Kerberos メッセージチェックサムを検証します。

パラメータ:

context Kerberos コンテキスト。
 
crypto Kerberos の暗号コンテキスト。
 
usage このバッファのためのキーの使用法。
 
data プロセスへのバッファの配列。
 
num_data 配列の長さ。
 
type NULL でないなら、チェックサムのタイプを返します。

返り値:

エラーコードまたは 0 を返します。

 
11 Jan 2012 Version 1.5.2