| /linux-6.15/crypto/krb5/ |
| H A D | krb5_api.c | 42 if (krb5->etype == enctype) in crypto_krb5_find_enctype() 43 return krb5; in crypto_krb5_find_enctype() 73 return krb5->conf_len + data_size + krb5->cksum_len; in crypto_krb5_how_much_buffer() 110 if (WARN_ON(buffer_size < krb5->conf_len + 1 + krb5->cksum_len)) in crypto_krb5_how_much_data() 149 *_len -= krb5->conf_len + krb5->cksum_len; in crypto_krb5_where_is_the_data() 214 ret = krb5->profile->derive_encrypt_keys(krb5, TK, usage, &keys, gfp); in crypto_krb5_prepare_encryption() 282 ret = krb5->profile->derive_checksum_key(krb5, TK, usage, &keys, gfp); in crypto_krb5_prepare_checksum() 339 return krb5->profile->encrypt(krb5, aead, sg, nr_sg, sg_len, in crypto_krb5_encrypt() 370 return krb5->profile->decrypt(krb5, aead, sg, nr_sg, _offset, _len); in crypto_krb5_decrypt() 406 return krb5->profile->get_mic(krb5, shash, metadata, sg, nr_sg, sg_len, in crypto_krb5_get_mic() [all …]
|
| H A D | rfc3961_simplified.c | 275 keybytes = krb5->key_bytes; in rfc3961_calc_DK() 276 keylength = krb5->key_len; in rfc3961_calc_DK() 326 if (!krb5->random_to_key) { in rfc3961_calc_DK() 331 ret = krb5->random_to_key(krb5, &rawkey, result); in rfc3961_calc_DK() 400 tmp1.len = krb5->hash_len; in rfc3961_calc_PRF() 442 Ke.len = krb5->Ke_len; in authenc_derive_encrypt_keys() 443 Ki.len = krb5->Ki_len; in authenc_derive_encrypt_keys() 621 if (*_len < krb5->conf_len + krb5->cksum_len) in krb5_aead_decrypt() 643 *_len -= krb5->conf_len + krb5->cksum_len; in krb5_aead_decrypt() 727 if (len < krb5->cksum_len) in rfc3961_verify_mic() [all …]
|
| H A D | internal.h | 18 int (*calc_PRF)(const struct krb5_enctype *krb5, 25 int (*calc_Kc)(const struct krb5_enctype *krb5, 32 int (*calc_Ke)(const struct krb5_enctype *krb5, 39 int (*calc_Ki)(const struct krb5_enctype *krb5, 53 int (*load_encrypt_keys)(const struct krb5_enctype *krb5, 73 ssize_t (*encrypt)(const struct krb5_enctype *krb5, 81 int (*decrypt)(const struct krb5_enctype *krb5, 87 ssize_t (*get_mic)(const struct krb5_enctype *krb5, 95 int (*verify_mic)(const struct krb5_enctype *krb5, 199 int krb5_aead_decrypt(const struct krb5_enctype *krb5, [all …]
|
| H A D | selftest.c | 123 if (!krb5) in krb5_test_one_prf() 131 PREP_BUF(&result, krb5->prf_len); in krb5_test_one_prf() 138 ret = krb5->profile->calc_PRF(krb5, &key, &octet, &result, GFP_KERNEL); in krb5_test_one_prf() 214 if (!krb5) in krb5_test_one_key() 249 if (!krb5) in krb5_test_one_enc() 265 ret = krb5->profile->load_encrypt_keys(krb5, &Ke, &Ki, &keys, GFP_KERNEL); in krb5_test_one_enc() 270 if (VALID(conf.len != krb5->conf_len) || in krb5_test_one_enc() 271 VALID(ct.len != krb5->conf_len + plain.len + krb5->cksum_len)) in krb5_test_one_enc() 387 if (!krb5) in krb5_test_one_mic() 399 ret = krb5->profile->load_checksum_key(krb5, &Kc, &keys, GFP_KERNEL); in krb5_test_one_mic() [all …]
|
| H A D | krb5_kdf.c | 32 int crypto_krb5_calc_PRFplus(const struct krb5_enctype *krb5, in crypto_krb5_calc_PRFplus() argument 43 Tn.len = krb5->prf_len; in crypto_krb5_calc_PRFplus() 58 ret = krb5->profile->calc_PRF(krb5, K, &n_S, &Tn, gfp); in crypto_krb5_calc_PRFplus() 86 int krb5_derive_Kc(const struct krb5_enctype *krb5, const struct krb5_buffer *TK, in krb5_derive_Kc() argument 95 key->len = krb5->Kc_len; in krb5_derive_Kc() 96 return krb5->profile->calc_Kc(krb5, TK, &usage_constant, key, gfp); in krb5_derive_Kc() 110 int krb5_derive_Ke(const struct krb5_enctype *krb5, const struct krb5_buffer *TK, in krb5_derive_Ke() argument 119 key->len = krb5->Ke_len; in krb5_derive_Ke() 120 return krb5->profile->calc_Ke(krb5, TK, &usage_constant, key, gfp); in krb5_derive_Ke() 143 key->len = krb5->Ki_len; in krb5_derive_Ki() [all …]
|
| H A D | rfc8009_aes2.c | 128 octet_string, krb5->prf_len * 8, in rfc8009_calc_PRF() 145 &rfc8009_no_context, krb5->key_bytes * 8, in rfc8009_calc_Ke() 164 &rfc8009_no_context, krb5->cksum_len * 8, in rfc8009_calc_Ki() 185 if (WARN_ON(data_offset != krb5->conf_len)) in rfc8009_encrypt() 189 base_len = krb5->conf_len + data_len; in rfc8009_encrypt() 209 get_random_bytes(buffer, krb5->conf_len); in rfc8009_encrypt() 212 if (done != krb5->conf_len) in rfc8009_encrypt() 237 ret = secure_len + krb5->cksum_len; in rfc8009_encrypt() 266 if (*_len < krb5->conf_len + krb5->cksum_len) in rfc8009_decrypt() 294 *_offset += krb5->conf_len; in rfc8009_decrypt() [all …]
|
| H A D | Makefile | 6 krb5-y += \ 14 krb5-$(CONFIG_CRYPTO_KRB5_SELFTESTS) += \ 18 obj-$(CONFIG_CRYPTO_KRB5) += krb5.o
|
| H A D | rfc6803_camellia.c | 24 static int rfc6803_calc_KDF_FEEDBACK_CMAC(const struct krb5_enctype *krb5, in rfc6803_calc_KDF_FEEDBACK_CMAC() argument 40 shash = crypto_alloc_shash(krb5->cksum_name, 0, 0); in rfc6803_calc_KDF_FEEDBACK_CMAC() 115 static int rfc6803_calc_PRF(const struct krb5_enctype *krb5, in rfc6803_calc_PRF() argument 129 Kp.len = krb5->prf_len; in rfc6803_calc_PRF() 131 shash = crypto_alloc_shash(krb5->cksum_name, 0, 0); in rfc6803_calc_PRF() 151 ret = rfc6803_calc_KDF_FEEDBACK_CMAC(krb5, protocol_key, &prfconstant, in rfc6803_calc_PRF()
|
| /linux-6.15/include/crypto/ |
| H A D | krb5.h | 104 int (*random_to_key)(const struct krb5_enctype *krb5, 113 size_t crypto_krb5_how_much_buffer(const struct krb5_enctype *krb5, 116 size_t crypto_krb5_how_much_data(const struct krb5_enctype *krb5, 119 void crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5, 122 struct crypto_aead *crypto_krb5_prepare_encryption(const struct krb5_enctype *krb5, 125 struct crypto_shash *crypto_krb5_prepare_checksum(const struct krb5_enctype *krb5, 128 ssize_t crypto_krb5_encrypt(const struct krb5_enctype *krb5, 134 int crypto_krb5_decrypt(const struct krb5_enctype *krb5, 138 ssize_t crypto_krb5_get_mic(const struct krb5_enctype *krb5, 144 int crypto_krb5_verify_mic(const struct krb5_enctype *krb5, [all …]
|
| /linux-6.15/Documentation/crypto/ |
| H A D | krb5.rst | 46 #include <crypto/krb5.h> 118 int crypto_krb5_calc_PRFplus(const struct krb5_enctype *krb5, 141 size_t crypto_krb5_how_much_buffer(const struct krb5_enctype *krb5, 145 size_t crypto_krb5_how_much_data(const struct krb5_enctype *krb5, 161 void crypto_krb5_where_is_the_data(const struct krb5_enctype *krb5, 176 crypto_krb5_prepare_encryption(const struct krb5_enctype *krb5, 180 crypto_krb5_prepare_checksum(const struct krb5_enctype *krb5, 195 ssize_t crypto_krb5_encrypt(const struct krb5_enctype *krb5, 201 int crypto_krb5_decrypt(const struct krb5_enctype *krb5, 224 ssize_t crypto_krb5_get_mic(const struct krb5_enctype *krb5, [all …]
|
| H A D | index.rst | 29 krb5
|
| /linux-6.15/crypto/ |
| H A D | Makefile | 215 obj-$(CONFIG_CRYPTO_KRB5) += krb5/
|
| H A D | Kconfig | 1464 source "crypto/krb5/Kconfig"
|
| /linux-6.15/Documentation/admin-guide/cifs/ |
| H A D | usage.rst | 670 krb5 740 may use Kerberos security (krb5) 0x00008
|