/
usr
/
src
/
linux-headers-5.15.0-190
/
include
/
crypto
/
/usr/src/linux-headers-5.15.0-190/include/crypto
mkdir
upload
Name
Size
Mode
Actions
internal/
-
0755
rm
acompress.h
9073
0644
edit
dl
rm
aead.h
18832
0644
edit
dl
rm
aes.h
2563
0644
edit
dl
rm
akcipher.h
13232
0644
edit
dl
rm
algapi.h
7545
0644
edit
dl
rm
arc4.h
484
0644
edit
dl
rm
asym_tpm_subtype.h
521
0644
edit
dl
rm
authenc.h
635
0644
edit
dl
rm
b128ops.h
2471
0644
edit
dl
rm
blake2b.h
1637
0644
edit
dl
rm
blake2s.h
2680
0644
edit
dl
rm
blowfish.h
415
0644
edit
dl
rm
cast5.h
590
0644
edit
dl
rm
cast6.h
607
0644
edit
dl
rm
cast_common.h
232
0644
edit
dl
rm
chacha.h
3395
0644
edit
dl
rm
chacha20poly1305.h
1699
0644
edit
dl
rm
cryptd.h
2050
0644
edit
dl
rm
ctr.h
1456
0644
edit
dl
rm
curve25519.h
2065
0644
edit
dl
rm
des.h
1724
0644
edit
dl
rm
dh.h
2574
0644
edit
dl
rm
drbg.h
9209
0644
edit
dl
rm
ecc_curve.h
1337
0644
edit
dl
rm
ecdh.h
2487
0644
edit
dl
rm
engine.h
4209
0644
edit
dl
rm
gcm.h
867
0644
edit
dl
rm
gf128mul.h
9647
0644
edit
dl
rm
ghash.h
388
0644
edit
dl
rm
hash.h
34859
0644
edit
dl
rm
hash_info.h
998
0644
edit
dl
rm
hmac.h
173
0644
edit
dl
rm
if_alg.h
6844
0644
edit
dl
rm
kpp.h
10144
0644
edit
dl
rm
md5.h
497
0644
edit
dl
rm
nhpoly1305.h
2236
0644
edit
dl
rm
null.h
346
0644
edit
dl
rm
padlock.h
438
0644
edit
dl
rm
pcrypt.h
815
0644
edit
dl
rm
pkcs7.h
1181
0644
edit
dl
rm
poly1305.h
2500
0644
edit
dl
rm
public_key.h
2440
0644
edit
dl
rm
rng.h
6748
0644
edit
dl
rm
scatterwalk.h
3989
0644
edit
dl
rm
serpent.h
696
0644
edit
dl
rm
sha1.h
1210
0644
edit
dl
rm
sha1_base.h
2512
0644
edit
dl
rm
sha2.h
3849
0644
edit
dl
rm
sha3.h
879
0644
edit
dl
rm
sha256_base.h
2621
0644
edit
dl
rm
sha512_base.h
3255
0644
edit
dl
rm
skcipher.h
20428
0644
edit
dl
rm
sm2.h
749
0644
edit
dl
rm
sm3.h
897
0644
edit
dl
rm
sm3_base.h
2608
0644
edit
dl
rm
sm4.h
1144
0644
edit
dl
rm
streebog.h
949
0644
edit
dl
rm
twofish.h
743
0644
edit
dl
rm
xts.h
1125
0644
edit
dl
rm
Edit:
/usr/src/linux-headers-5.15.0-190/include/crypto/aes.h
(2563B)
/* SPDX-License-Identifier: GPL-2.0 */ /* * Common values for AES algorithms */ #ifndef _CRYPTO_AES_H #define _CRYPTO_AES_H #include <linux/types.h> #include <linux/crypto.h> #define AES_MIN_KEY_SIZE 16 #define AES_MAX_KEY_SIZE 32 #define AES_KEYSIZE_128 16 #define AES_KEYSIZE_192 24 #define AES_KEYSIZE_256 32 #define AES_BLOCK_SIZE 16 #define AES_MAX_KEYLENGTH (15 * 16) #define AES_MAX_KEYLENGTH_U32 (AES_MAX_KEYLENGTH / sizeof(u32)) /* * Please ensure that the first two fields are 16-byte aligned * relative to the start of the structure, i.e., don't move them! */ struct crypto_aes_ctx { u32 key_enc[AES_MAX_KEYLENGTH_U32]; u32 key_dec[AES_MAX_KEYLENGTH_U32]; u32 key_length; }; extern const u32 crypto_ft_tab[4][256] ____cacheline_aligned; extern const u32 crypto_it_tab[4][256] ____cacheline_aligned; /* * validate key length for AES algorithms */ static inline int aes_check_keylen(unsigned int keylen) { switch (keylen) { case AES_KEYSIZE_128: case AES_KEYSIZE_192: case AES_KEYSIZE_256: break; default: return -EINVAL; } return 0; } int crypto_aes_set_key(struct crypto_tfm *tfm, const u8 *in_key, unsigned int key_len); /** * aes_expandkey - Expands the AES key as described in FIPS-197 * @ctx: The location where the computed key will be stored. * @in_key: The supplied key. * @key_len: The length of the supplied key. * * Returns 0 on success. The function fails only if an invalid key size (or * pointer) is supplied. * The expanded key size is 240 bytes (max of 14 rounds with a unique 16 bytes * key schedule plus a 16 bytes key which is used before the first round). * The decryption key is prepared for the "Equivalent Inverse Cipher" as * described in FIPS-197. The first slot (16 bytes) of each key (enc or dec) is * for the initial combination, the second slot for the first round and so on. */ int aes_expandkey(struct crypto_aes_ctx *ctx, const u8 *in_key, unsigned int key_len); /** * aes_encrypt - Encrypt a single AES block * @ctx: Context struct containing the key schedule * @out: Buffer to store the ciphertext * @in: Buffer containing the plaintext */ void aes_encrypt(const struct crypto_aes_ctx *ctx, u8 *out, const u8 *in); /** * aes_decrypt - Decrypt a single AES block * @ctx: Context struct containing the key schedule * @out: Buffer to store the plaintext * @in: Buffer containing the ciphertext */ void aes_decrypt(const struct crypto_aes_ctx *ctx, u8 *out, const u8 *in); extern const u8 crypto_aes_sbox[]; extern const u8 crypto_aes_inv_sbox[]; #endif
Save
cmd:
run