Skip to content

Commit 578bdaa

Browse files
zx2c4herbertx
authored andcommitted
crypto: speck - remove Speck
These are unused, undesired, and have never actually been used by anybody. The original authors of this code have changed their mind about its inclusion. While originally proposed for disk encryption on low-end devices, the idea was discarded [1] in favor of something else before that could really get going. Therefore, this patch removes Speck. [1] https://marc.info/?l=linux-crypto-vger&m=153359499015659 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com> Acked-by: Eric Biggers <ebiggers@google.com> Cc: stable@vger.kernel.org Acked-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
1 parent 9dbe307 commit 578bdaa

31 files changed

+2
-2558
lines changed

Documentation/filesystems/fscrypt.rst

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -191,21 +191,11 @@ Currently, the following pairs of encryption modes are supported:
191191

192192
- AES-256-XTS for contents and AES-256-CTS-CBC for filenames
193193
- AES-128-CBC for contents and AES-128-CTS-CBC for filenames
194-
- Speck128/256-XTS for contents and Speck128/256-CTS-CBC for filenames
195194

196195
It is strongly recommended to use AES-256-XTS for contents encryption.
197196
AES-128-CBC was added only for low-powered embedded devices with
198197
crypto accelerators such as CAAM or CESA that do not support XTS.
199198

200-
Similarly, Speck128/256 support was only added for older or low-end
201-
CPUs which cannot do AES fast enough -- especially ARM CPUs which have
202-
NEON instructions but not the Cryptography Extensions -- and for which
203-
it would not otherwise be feasible to use encryption at all. It is
204-
not recommended to use Speck on CPUs that have AES instructions.
205-
Speck support is only available if it has been enabled in the crypto
206-
API via CONFIG_CRYPTO_SPECK. Also, on ARM platforms, to get
207-
acceptable performance CONFIG_CRYPTO_SPECK_NEON must be enabled.
208-
209199
New encryption modes can be added relatively easily, without changes
210200
to individual filesystems. However, authenticated encryption (AE)
211201
modes are not currently supported because of the difficulty of dealing

arch/arm/crypto/Kconfig

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,4 @@ config CRYPTO_CHACHA20_NEON
121121
select CRYPTO_BLKCIPHER
122122
select CRYPTO_CHACHA20
123123

124-
config CRYPTO_SPECK_NEON
125-
tristate "NEON accelerated Speck cipher algorithms"
126-
depends on KERNEL_MODE_NEON
127-
select CRYPTO_BLKCIPHER
128-
select CRYPTO_SPECK
129-
130124
endif

arch/arm/crypto/Makefile

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ obj-$(CONFIG_CRYPTO_SHA1_ARM_NEON) += sha1-arm-neon.o
1010
obj-$(CONFIG_CRYPTO_SHA256_ARM) += sha256-arm.o
1111
obj-$(CONFIG_CRYPTO_SHA512_ARM) += sha512-arm.o
1212
obj-$(CONFIG_CRYPTO_CHACHA20_NEON) += chacha20-neon.o
13-
obj-$(CONFIG_CRYPTO_SPECK_NEON) += speck-neon.o
1413

1514
ce-obj-$(CONFIG_CRYPTO_AES_ARM_CE) += aes-arm-ce.o
1615
ce-obj-$(CONFIG_CRYPTO_SHA1_ARM_CE) += sha1-arm-ce.o
@@ -54,7 +53,6 @@ ghash-arm-ce-y := ghash-ce-core.o ghash-ce-glue.o
5453
crct10dif-arm-ce-y := crct10dif-ce-core.o crct10dif-ce-glue.o
5554
crc32-arm-ce-y:= crc32-ce-core.o crc32-ce-glue.o
5655
chacha20-neon-y := chacha20-neon-core.o chacha20-neon-glue.o
57-
speck-neon-y := speck-neon-core.o speck-neon-glue.o
5856

5957
ifdef REGENERATE_ARM_CRYPTO
6058
quiet_cmd_perl = PERL $@

0 commit comments

Comments
 (0)