krb5_string_to_key, krb5_string_to_key_data, krb5_string_to_key_data_salt,
Contents
Description
The string to key functions convert a string to a kerberos key.
krb5_string_to_key_data_salt_opaque() is the function that does all the work, the rest of the functions
are just wrappers around krb5_string_to_key_data_salt_opaque() that calls it with default values.
krb5_string_to_key_data_salt_opaque() transforms the password with the given salt-string salt and the
opaque, encryption type specific parameter opaque to a encryption key key according to the string to key
function associated with enctype.
The key should be freed with krb5_free_keyblock_contents().
If one of the functions that doesn't take a krb5_salt as it argument krb5_get_pw_salt() is used to get
the salt value.
krb5_get_pw_salt() get the default password salt for a principal, use krb5_free_salt() to free the salt
when done.
krb5_free_salt() frees the content of salt.
Library
Kerberos 5 Library (libkrb5, -lkrb5)
Name
krb5_string_to_key, krb5_string_to_key_data, krb5_string_to_key_data_salt,
krb5_string_to_key_data_salt_opaque, krb5_string_to_key_salt, krb5_string_to_key_salt_opaque,
krb5_get_pw_salt, krb5_free_salt — turns a string to a Kerberos key
See Also
krb5(3), krb5_data(3), krb5_keyblock(3), kerberos(8) HEIMDAL July 10, 2006 KRB5_STRING_TO_KEY(3)
Synopsis
#include<krb5.h>krb5_error_codekrb5_string_to_key(krb5_contextcontext, krb5_enctypeenctype, constchar*password,
krb5_principalprincipal, krb5_keyblock*key);
krb5_error_codekrb5_string_to_key_data(krb5_contextcontext, krb5_enctypeenctype, krb5_datapassword,
krb5_principalprincipal, krb5_keyblock*key);
krb5_error_codekrb5_string_to_key_data_salt(krb5_contextcontext, krb5_enctypeenctype, krb5_datapassword,
krb5_saltsalt, krb5_keyblock*key);
krb5_error_codekrb5_string_to_key_data_salt_opaque(krb5_contextcontext, krb5_enctypeenctype, krb5_datapassword,
krb5_saltsalt, krb5_dataopaque, krb5_keyblock*key);
krb5_error_codekrb5_string_to_key_salt(krb5_contextcontext, krb5_enctypeenctype, constchar*password, krb5_saltsalt,
krb5_keyblock*key);
krb5_error_codekrb5_string_to_key_salt_opaque(krb5_contextcontext, krb5_enctypeenctype, constchar*password,
krb5_saltsalt, krb5_dataopaque, krb5_keyblock*key);
krb5_error_codekrb5_get_pw_salt(krb5_contextcontext, krb5_const_principalprincipal, krb5_salt*salt);
krb5_error_codekrb5_free_salt(krb5_contextcontext, krb5_saltsalt);
