KRB5_C_MAKE_CHECKSUM(3) | FreeBSD Library Functions Manual | KRB5_C_MAKE_CHECKSUM(3) |
名称
krb5_c_block_size, krb5_c_decrypt, krb5_c_encrypt, krb5_c_encrypt_length, krb5_c_enctype_compare, krb5_c_get_checksum, krb5_c_is_coll_proof_cksum, krb5_c_is_keyed_cksum, krb5_c_keylength, krb5_c_make_checksum, krb5_c_make_random_key, krb5_c_set_checksum, krb5_c_valid_cksumtype, krb5_c_valid_enctype, krb5_c_verify_checksum, krb5_c_checksum_length — Kerberos 5 暗号 APIライブラリ
Kerberos 5 ライブラリ (libkrb5, -lkrb5)書式
#include < krb5.h>
krb5_error_code
krb5_c_block_size( krb5_context context, krb5_enctype enctype, size_t *blocksize);
krb5_error_code
krb5_c_decrypt( krb5_context context, const krb5_keyblock key, krb5_keyusage usage, const krb5_data *ivec, krb5_enc_data *input, krb5_data *output);
krb5_error_code
krb5_c_encrypt( krb5_context context, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *ivec, const krb5_data *input, krb5_enc_data *output);
krb5_error_code
krb5_c_encrypt_length( krb5_context context, krb5_enctype enctype, size_t inputlen, size_t *length);
krb5_error_code
krb5_c_enctype_compare( krb5_context context, krb5_enctype e1, krb5_enctype e2, krb5_boolean *similar);
krb5_error_code
krb5_c_make_random_key( krb5_context context, krb5_enctype enctype, krb5_keyblock *random_key);
krb5_error_code
krb5_c_make_checksum( krb5_context context, krb5_cksumtype cksumtype, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *input, krb5_checksum *cksum);
krb5_error_code
krb5_c_verify_checksum( krb5_context context, const krb5_keyblock *key, krb5_keyusage usage, const krb5_data *data, const krb5_checksum *cksum, krb5_boolean *valid);
krb5_error_code
krb5_c_checksum_length( krb5_context context, krb5_cksumtype cksumtype, size_t *length);
krb5_error_code
krb5_c_get_checksum( krb5_context context, const krb5_checksum *cksum, krb5_cksumtype *type, krb5_data **data);
krb5_error_code
krb5_c_set_checksum( krb5_context context, krb5_checksum *cksum, krb5_cksumtype type, const krb5_data *data);
krb5_boolean
krb5_c_valid_enctype( krb5_enctype, etype");
krb5_boolean
krb5_c_valid_cksumtype( krb5_cksumtype ctype);
krb5_boolean
krb5_c_is_coll_proof_cksum( krb5_cksumtype ctype);
krb5_boolean
krb5_c_is_keyed_cksum( krb5_cksumtype ctype);
krb5_error_code
krb5_c_keylengths( krb5_context context, krb5_enctype enctype, size_t *inlength, size_t *keylength);
解説
krb5_c で始まる関数は、MIT kerberos にある compat 関数です。 krb5_enc_data
構造体は、暗号化されたデータを保持します。 krb5_enc_data
の 2 つのパブリックにアクセス可能なメンバがあります。暗号化されたデータの暗号化タイプを保持する enctype
と暗号化されたデータを含むかもしれない krb5_data である ciphertext
です。
krb5_c_block_size() は、暗号化タイプのブロックサイズを返します。
krb5_c_decrypt() は、 input の暗号解読をし、 output にデータを格納します。 ivec が NULL であるなら、その暗号化タイプのためのデフォルトの初期化ベクトルが、使用されます。
krb5_c_encrypt() は、 input の平文 (plaintext) を暗号化し、 output に暗号文を格納します。
krb5_c_encrypt_length() は、平文の長さを前提として、暗号化されたデータを長さを返します。
krb5_c_enctype_compare() は、暗号化タイプを比較し、それらが互換性のある暗号化キータイプを使用しているなら、返ります。
krb5_c_make_checksum() は、 data のデータのチェックサムタイプ cksumtype でチェックサム cksum を作成します。 key と usage は、チェックサムがキーのあるチェックサムタイプであるなら使用されます。 0 またはエラーコードを返します。
krb5_c_verify_checksum() は、キーの使用法 usage を使用して key で作成された cksum の data のチェックサムを検証します。 verify は、チェックサムが正しく検証されるなら、0 以外に設定され、そうでなければ、0 に設定されます。 0 またはエラーコードを返します。
krb5_c_checksum_length() は、チェックサムの長さを返します。
krb5_c_set_checksum() は、 type と data を前提として、 krb5_checksum
構造体を設定します。 cksum の内容は、 krb5_c_free_checksum_contents() で解放されるべきです。
krb5_c_get_checksum() は、 krb5_checksum
構造体の構成要素を検索します。 data は、 krb5_free_data() で解放されるべきです。 data または checksum のいずれも、アプリケーションに必要としないなら、 NULL を渡すことができます。
krb5_c_valid_enctype() は、 etype が有効な暗号化タイプであるなら、真を返します。
krb5_c_valid_cksumtype() は、 ctype が有効なチェックサムタイプであるなら、真を返します。
krb5_c_is_keyed_cksum() は、 ctype がキーのあるチェックサムタイプであるなら、真を返します。
krb5_c_is_coll_proof_cksum() は、 ctype が照合検査 (collation proof) チェックサムタイプであるなら、真を返します。
krb5_c_keylengths() は、キーを作成するために必要な最小の長さ ( inlength) と enctype のための結果のキーの長さ ( keylength) を返します。
November 17, 2006 | HEIMDAL |