/
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/poly1305.h
(2500B)
/* SPDX-License-Identifier: GPL-2.0 */ /* * Common values for the Poly1305 algorithm */ #ifndef _CRYPTO_POLY1305_H #define _CRYPTO_POLY1305_H #include <linux/types.h> #include <linux/crypto.h> #define POLY1305_BLOCK_SIZE 16 #define POLY1305_KEY_SIZE 32 #define POLY1305_DIGEST_SIZE 16 /* The poly1305_key and poly1305_state types are mostly opaque and * implementation-defined. Limbs might be in base 2^64 or base 2^26, or * different yet. The union type provided keeps these 64-bit aligned for the * case in which this is implemented using 64x64 multiplies. */ struct poly1305_key { union { u32 r[5]; u64 r64[3]; }; }; struct poly1305_core_key { struct poly1305_key key; struct poly1305_key precomputed_s; }; struct poly1305_state { union { u32 h[5]; u64 h64[3]; }; }; struct poly1305_desc_ctx { /* partial buffer */ u8 buf[POLY1305_BLOCK_SIZE]; /* bytes used in partial buffer */ unsigned int buflen; /* how many keys have been set in r[] */ unsigned short rset; /* whether s[] has been set */ bool sset; /* finalize key */ u32 s[4]; /* accumulator */ struct poly1305_state h; /* key */ union { struct poly1305_key opaque_r[CONFIG_CRYPTO_LIB_POLY1305_RSIZE]; struct poly1305_core_key core_r; }; }; void poly1305_init_arch(struct poly1305_desc_ctx *desc, const u8 key[POLY1305_KEY_SIZE]); void poly1305_init_generic(struct poly1305_desc_ctx *desc, const u8 key[POLY1305_KEY_SIZE]); static inline void poly1305_init(struct poly1305_desc_ctx *desc, const u8 *key) { if (IS_ENABLED(CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305)) poly1305_init_arch(desc, key); else poly1305_init_generic(desc, key); } void poly1305_update_arch(struct poly1305_desc_ctx *desc, const u8 *src, unsigned int nbytes); void poly1305_update_generic(struct poly1305_desc_ctx *desc, const u8 *src, unsigned int nbytes); static inline void poly1305_update(struct poly1305_desc_ctx *desc, const u8 *src, unsigned int nbytes) { if (IS_ENABLED(CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305)) poly1305_update_arch(desc, src, nbytes); else poly1305_update_generic(desc, src, nbytes); } void poly1305_final_arch(struct poly1305_desc_ctx *desc, u8 *digest); void poly1305_final_generic(struct poly1305_desc_ctx *desc, u8 *digest); static inline void poly1305_final(struct poly1305_desc_ctx *desc, u8 *digest) { if (IS_ENABLED(CONFIG_CRYPTO_ARCH_HAVE_LIB_POLY1305)) poly1305_final_arch(desc, digest); else poly1305_final_generic(desc, digest); } #endif
Save
cmd:
run