404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.145.82.96: ~ $
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef _CRYPTO_LRW_H
#define _CRYPTO_LRW_H

#include <crypto/b128ops.h>

struct scatterlist;
struct gf128mul_64k;
struct blkcipher_desc;

#define LRW_BLOCK_SIZE 16

struct lrw_table_ctx {
	/* optimizes multiplying a random (non incrementing, as at the
	 * start of a new sector) value with key2, we could also have
	 * used 4k optimization tables or no optimization at all. In the
	 * latter case we would have to store key2 here */
	struct gf128mul_64k *table;
	/* stores:
	 *  key2*{ 0,0,...0,0,0,0,1 }, key2*{ 0,0,...0,0,0,1,1 },
	 *  key2*{ 0,0,...0,0,1,1,1 }, key2*{ 0,0,...0,1,1,1,1 }
	 *  key2*{ 0,0,...1,1,1,1,1 }, etc
	 * needed for optimized multiplication of incrementing values
	 * with key2 */
	be128 mulinc[128];
};

int lrw_init_table(struct lrw_table_ctx *ctx, const u8 *tweak);
void lrw_free_table(struct lrw_table_ctx *ctx);

struct lrw_crypt_req {
	be128 *tbuf;
	unsigned int tbuflen;

	struct lrw_table_ctx *table_ctx;
	void *crypt_ctx;
	void (*crypt_fn)(void *ctx, u8 *blks, unsigned int nbytes);
};

int lrw_crypt(struct blkcipher_desc *desc, struct scatterlist *dst,
	      struct scatterlist *src, unsigned int nbytes,
	      struct lrw_crypt_req *req);

#endif  /* _CRYPTO_LRW_H */

Filemanager

Name Type Size Permission Actions
internal Folder 0755
ablk_helper.h File 773 B 0644
acompress.h File 7.89 KB 0644
aead.h File 18.1 KB 0644
aes.h File 1.03 KB 0644
akcipher.h File 11.7 KB 0644
algapi.h File 11.12 KB 0644
authenc.h File 845 B 0644
b128ops.h File 2.41 KB 0644
blake2s.h File 2.37 KB 0644
blowfish.h File 415 B 0644
cast5.h File 590 B 0644
cast6.h File 636 B 0644
cast_common.h File 232 B 0644
cbc.h File 3.48 KB 0644
chacha20.h File 1.01 KB 0644
cryptd.h File 2.5 KB 0644
crypto_wq.h File 161 B 0644
ctr.h File 524 B 0644
des.h File 542 B 0644
dh.h File 2.62 KB 0644
drbg.h File 9.05 KB 0644
ecdh.h File 2.67 KB 0644
engine.h File 4 KB 0644
gcm.h File 140 B 0644
gf128mul.h File 9.41 KB 0644
ghash.h File 381 B 0644
hash.h File 31.48 KB 0644
hash_info.h File 1.13 KB 0644
hmac.h File 173 B 0644
if_alg.h File 7 KB 0644
kpp.h File 9.68 KB 0644
lrw.h File 1.22 KB 0644
mcryptd.h File 2.37 KB 0644
md5.h File 497 B 0644
null.h File 569 B 0644
padlock.h File 649 B 0644
pcrypt.h File 1.4 KB 0644
pkcs7.h File 1.21 KB 0644
poly1305.h File 920 B 0644
public_key.h File 2.08 KB 0644
rng.h File 6.66 KB 0644
scatterwalk.h File 3.67 KB 0644
serpent.h File 712 B 0644
sha.h File 2.88 KB 0644
sha1_base.h File 2.47 KB 0644
sha256_base.h File 3.03 KB 0644
sha3.h File 704 B 0644
sha512_base.h File 3.19 KB 0644
skcipher.h File 20.7 KB 0644
sm3.h File 833 B 0644
sm3_base.h File 2.95 KB 0644
twofish.h File 755 B 0644
xts.h File 1.81 KB 0644