c494e0705d
A lot of cypher modes need multiplications in GF(2^128). LRW, ABL, GCM... I use functions from this library in my LRW implementation and I will also use them in my ABL (Arbitrary Block Length, an unencumbered (correct me if I am wrong, wide block cipher mode). Elements of GF(2^128) must be presented as u128 *, it encourages automatic and proper alignment. The library contains support for two different representations of GF(2^128), see the comment in gf128mul.h. There different levels of optimization (memory/speed tradeoff). The code is based on work by Dr Brian Gladman. Notable changes: - deletion of two optimization modes - change from u32 to u64 for faster handling on 64bit machines - support for 'bbe' representation in addition to the, already implemented, 'lle' representation. - move 'inline void' functions from header to 'static void' in the source file - update to use the linux coding style conventions The original can be found at: http://fp.gladman.plus.com/AES/modes.vc8.19-06-06.zip The copyright (and GPL statement) of the original author is preserved. Signed-off-by: Rik Snel <rsnel@cube.dyndns.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
47 lines
1.5 KiB
Makefile
47 lines
1.5 KiB
Makefile
#
|
|
# Cryptographic API
|
|
#
|
|
|
|
obj-$(CONFIG_CRYPTO) += api.o scatterwalk.o cipher.o digest.o compress.o
|
|
|
|
crypto_algapi-$(CONFIG_PROC_FS) += proc.o
|
|
crypto_algapi-objs := algapi.o $(crypto_algapi-y)
|
|
obj-$(CONFIG_CRYPTO_ALGAPI) += crypto_algapi.o
|
|
|
|
obj-$(CONFIG_CRYPTO_BLKCIPHER) += blkcipher.o
|
|
|
|
crypto_hash-objs := hash.o
|
|
obj-$(CONFIG_CRYPTO_HASH) += crypto_hash.o
|
|
|
|
obj-$(CONFIG_CRYPTO_MANAGER) += cryptomgr.o
|
|
obj-$(CONFIG_CRYPTO_HMAC) += hmac.o
|
|
obj-$(CONFIG_CRYPTO_XCBC) += xcbc.o
|
|
obj-$(CONFIG_CRYPTO_NULL) += crypto_null.o
|
|
obj-$(CONFIG_CRYPTO_MD4) += md4.o
|
|
obj-$(CONFIG_CRYPTO_MD5) += md5.o
|
|
obj-$(CONFIG_CRYPTO_SHA1) += sha1.o
|
|
obj-$(CONFIG_CRYPTO_SHA256) += sha256.o
|
|
obj-$(CONFIG_CRYPTO_SHA512) += sha512.o
|
|
obj-$(CONFIG_CRYPTO_WP512) += wp512.o
|
|
obj-$(CONFIG_CRYPTO_TGR192) += tgr192.o
|
|
obj-$(CONFIG_CRYPTO_GF128MUL) += gf128mul.o
|
|
obj-$(CONFIG_CRYPTO_ECB) += ecb.o
|
|
obj-$(CONFIG_CRYPTO_CBC) += cbc.o
|
|
obj-$(CONFIG_CRYPTO_DES) += des.o
|
|
obj-$(CONFIG_CRYPTO_BLOWFISH) += blowfish.o
|
|
obj-$(CONFIG_CRYPTO_TWOFISH) += twofish.o
|
|
obj-$(CONFIG_CRYPTO_TWOFISH_COMMON) += twofish_common.o
|
|
obj-$(CONFIG_CRYPTO_SERPENT) += serpent.o
|
|
obj-$(CONFIG_CRYPTO_AES) += aes.o
|
|
obj-$(CONFIG_CRYPTO_CAST5) += cast5.o
|
|
obj-$(CONFIG_CRYPTO_CAST6) += cast6.o
|
|
obj-$(CONFIG_CRYPTO_ARC4) += arc4.o
|
|
obj-$(CONFIG_CRYPTO_TEA) += tea.o
|
|
obj-$(CONFIG_CRYPTO_KHAZAD) += khazad.o
|
|
obj-$(CONFIG_CRYPTO_ANUBIS) += anubis.o
|
|
obj-$(CONFIG_CRYPTO_DEFLATE) += deflate.o
|
|
obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
|
|
obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
|
|
|
|
obj-$(CONFIG_CRYPTO_TEST) += tcrypt.o
|