]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
crypto: Remove michael_mic from crypto_shash API
authorEric Biggers <ebiggers@kernel.org>
Wed, 8 Apr 2026 03:06:51 +0000 (20:06 -0700)
committerJohannes Berg <johannes.berg@intel.com>
Wed, 8 Apr 2026 08:11:37 +0000 (10:11 +0200)
Remove the "michael_mic" crypto_shash algorithm, since it's no longer
used.  Its only users were wireless drivers, which have now been
converted to use the michael_mic() function instead.

It makes sense that no other users ever appeared: Michael MIC is an
insecure algorithm that is specific to WPA TKIP, which itself was an
interim security solution to replace the broken WEP standard.

Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Acked-by: Herbert Xu <herbert@gondor.apana.org.au>
Link: https://patch.msgid.link/20260408030651.80336-7-ebiggers@kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
53 files changed:
arch/arm/configs/omap2plus_defconfig
arch/arm/configs/spitz_defconfig
arch/arm64/configs/defconfig
arch/m68k/configs/amiga_defconfig
arch/m68k/configs/apollo_defconfig
arch/m68k/configs/atari_defconfig
arch/m68k/configs/bvme6000_defconfig
arch/m68k/configs/hp300_defconfig
arch/m68k/configs/mac_defconfig
arch/m68k/configs/multi_defconfig
arch/m68k/configs/mvme147_defconfig
arch/m68k/configs/mvme16x_defconfig
arch/m68k/configs/q40_defconfig
arch/m68k/configs/sun3_defconfig
arch/m68k/configs/sun3x_defconfig
arch/mips/configs/bigsur_defconfig
arch/mips/configs/decstation_64_defconfig
arch/mips/configs/decstation_defconfig
arch/mips/configs/decstation_r4k_defconfig
arch/mips/configs/gpr_defconfig
arch/mips/configs/ip32_defconfig
arch/mips/configs/lemote2f_defconfig
arch/mips/configs/malta_qemu_32r6_defconfig
arch/mips/configs/maltaaprp_defconfig
arch/mips/configs/maltasmvp_defconfig
arch/mips/configs/maltasmvp_eva_defconfig
arch/mips/configs/maltaup_defconfig
arch/mips/configs/mtx1_defconfig
arch/mips/configs/rm200_defconfig
arch/mips/configs/sb1250_swarm_defconfig
arch/parisc/configs/generic-32bit_defconfig
arch/parisc/configs/generic-64bit_defconfig
arch/powerpc/configs/g5_defconfig
arch/powerpc/configs/linkstation_defconfig
arch/powerpc/configs/mvme5100_defconfig
arch/powerpc/configs/powernv_defconfig
arch/powerpc/configs/ppc64_defconfig
arch/powerpc/configs/ppc64e_defconfig
arch/powerpc/configs/ppc6xx_defconfig
arch/powerpc/configs/ps3_defconfig
arch/s390/configs/debug_defconfig
arch/s390/configs/defconfig
arch/sh/configs/sh2007_defconfig
arch/sh/configs/titan_defconfig
arch/sh/configs/ul2_defconfig
arch/sparc/configs/sparc32_defconfig
arch/sparc/configs/sparc64_defconfig
crypto/Kconfig
crypto/Makefile
crypto/michael_mic.c [deleted file]
crypto/tcrypt.c
crypto/testmgr.c
crypto/testmgr.h

index 0464f6552169bacac89f388dafe30a84226eccfd..ae2883d3ff0ea33b77bf4d271e60bdf0039229d3 100644 (file)
@@ -704,7 +704,6 @@ CONFIG_ROOT_NFS=y
 CONFIG_NLS_CODEPAGE_437=y
 CONFIG_NLS_ISO8859_1=y
 CONFIG_SECURITY=y
-CONFIG_CRYPTO_MICHAEL_MIC=y
 CONFIG_CRYPTO_GHASH_ARM_CE=m
 CONFIG_CRYPTO_AES=m
 CONFIG_CRYPTO_AES_ARM_BS=m
index c130af6d44d48e33033a89d40175c650767a5a18..f116a01c3f5f138cff8f5bd2c40523e554b1dec8 100644 (file)
@@ -230,7 +230,6 @@ CONFIG_CRYPTO_TEA=m
 CONFIG_CRYPTO_TWOFISH=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_FONTS=y
index 0651a771f5c1867f3f35ce87da841317213ce97b..8b23430484653e9b791d876230dfce96b8289bd2 100644 (file)
@@ -1914,7 +1914,6 @@ CONFIG_CRYPTO_USER=y
 CONFIG_CRYPTO_CHACHA20=m
 CONFIG_CRYPTO_BENCHMARK=m
 CONFIG_CRYPTO_ECHAINIV=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA3=m
 CONFIG_CRYPTO_USER_API_RNG=m
 CONFIG_CRYPTO_GHASH_ARM64_CE=y
index c8b936bb702fe182ccacc5a46564b9394e02b848..510e16f25318222e1d5f873a84298515f54ba2d3 100644 (file)
@@ -538,7 +538,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index fc1792495bbcbac8e569618b3b495f4c50261e09..d1d8f02b4d968e6caabd18a3f27c83083100545f 100644 (file)
@@ -495,7 +495,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index e440c596e60bea7d67ccdcd828344e5cb8947c03..2e207af4add24c68b80de829c337dce2e29af0dc 100644 (file)
@@ -515,7 +515,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 7aa352d143630df275860ddfae20510790ad762b..d7546528989845b3e32a99418a0911e409b5f207 100644 (file)
@@ -487,7 +487,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 0baaf2a82c61186ff004d1565364b922ffaedd0a..c2011a749e108b377d4f17039609b88645a35b53 100644 (file)
@@ -497,7 +497,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 0cbbfe5aeaecfdc7a44fc73771d2ac7ebe74758a..e377443c56d4190a0bd8baa7d95c9a8e553b5909 100644 (file)
@@ -514,7 +514,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 2b96f90e1a4dd2428cafbb5722be73191f764aef..cdd0449f714137f673990017f699e6920b8aac7b 100644 (file)
@@ -601,7 +601,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index b49264cec9116d68f1e04cde92242f7aad8af28c..4e78ff8d793e8f7a2934830e2781c72c8e3bfc0c 100644 (file)
@@ -487,7 +487,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 96a974b0a7662d676b612dcb21dc9414f2738801..9fc30a3236e183251934b4ba6c01f474eab51b20 100644 (file)
@@ -488,7 +488,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index e5336158439369a87451875e3f11d97d1b202e36..c3b5fdabfe1604582293d4ea8ab150b5cf16ad3e 100644 (file)
@@ -504,7 +504,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index af89287c10931918b12387022ddec345f8792852..ea40f990eb22abad7b09354d6f7b0d8d9cd653f4 100644 (file)
@@ -485,7 +485,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index af210e8b77f90e53f1eaed98c116b7db0086856d..e20b6a9d26cdfa9e4f9750739efcc04075051995 100644 (file)
@@ -485,7 +485,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_AEGIS128=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 349e9e0b4f547743248ecf58a03f3303dfbc40e2..3b64e151e187f27feec6ff2e2a3a90e8ddd18ce0 100644 (file)
@@ -222,7 +222,6 @@ CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
index dad98c575292840f536761a75d1ea7d5a5ebb1f6..7c43352fac6bd23bd00f7e69b8309677b0eb3e1f 100644 (file)
@@ -180,7 +180,6 @@ CONFIG_CRYPTO_CMAC=m
 CONFIG_CRYPTO_XCBC=m
 CONFIG_CRYPTO_CRC32=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
index 4e1b51a4ad90005df29ec972bb9c713fbc589f7b..aee10274f0488aaa1859e56ef0604109608312af 100644 (file)
@@ -175,7 +175,6 @@ CONFIG_CRYPTO_CMAC=m
 CONFIG_CRYPTO_XCBC=m
 CONFIG_CRYPTO_CRC32=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
index 4e550dffc23df00505d5ce4ed9fcc31f474722fb..a1698049aa7a7123133a1fef572d06c9cd50570c 100644 (file)
@@ -175,7 +175,6 @@ CONFIG_CRYPTO_CMAC=m
 CONFIG_CRYPTO_XCBC=m
 CONFIG_CRYPTO_CRC32=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
index 437ef6dc0b4c2987b9060462152f21d96140c4ad..fdd28a89e336932a2fd1e39cd8f116e5a1932528 100644 (file)
@@ -275,7 +275,6 @@ CONFIG_CRYPTO_AUTHENC=m
 CONFIG_CRYPTO_BENCHMARK=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
index 7568838eb08b204d5f08ce0b7ffa1bf7d41b68d4..68558d0d3f52c5875fce71a867811960623fdd6e 100644 (file)
@@ -159,7 +159,6 @@ CONFIG_CRYPTO_PCBC=y
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=y
 CONFIG_CRYPTO_MD4=y
-CONFIG_CRYPTO_MICHAEL_MIC=y
 CONFIG_CRYPTO_SHA1=y
 CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=y
index 8d3f20ed19b5682c29932abcc1e58e526311aebd..eb3565a3f292cdf02ba62ae21bf6d6ef3091ab44 100644 (file)
@@ -308,7 +308,6 @@ CONFIG_CRYPTO_TWOFISH=m
 CONFIG_CRYPTO_LRW=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_WP512=m
index accb471a1d93f19f0f9a985164031cf3481f0a7c..46a69e8984c5abaa11ccf0b12937d0c696924e67 100644 (file)
@@ -167,7 +167,6 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index 6bda67c5f68f8732f99f2087b0e1f4bbcc93b992..74a0e5f6a88608aa7b0b37b0e64d37dd40e6e6a6 100644 (file)
@@ -168,7 +168,6 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index e4082537f80fb1cd7eb70137cd419aea80566603..873bfc59623b819d57320a2b5f94d42c523b91bd 100644 (file)
@@ -169,7 +169,6 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index 58f5af45fa983540d9d296b577830ee6e8dff0c5..c9230b2c4ea8d9b4705224d426155ba832b586af 100644 (file)
@@ -171,7 +171,6 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index 9bfef7de0d1cf060fa49cd999cc61284bf7af138..79fd3ccab339361d4c7bbb3d46675dbde797af81 100644 (file)
@@ -167,7 +167,6 @@ CONFIG_NLS_CODEPAGE_437=m
 CONFIG_NLS_ISO8859_1=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index 77050ae3945fccf34114e1a2ee6a3a909ebdbe15..930c0178cc67022d9f3cfa03cc34306532ed3a77 100644 (file)
@@ -663,7 +663,6 @@ CONFIG_CRYPTO_BENCHMARK=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index b507dc4dddd48e58222febe115e21aa0cf40de4b..b1e67ff0c4f08c976c6d43c5a9f35a0fb3437d91 100644 (file)
@@ -382,7 +382,6 @@ CONFIG_CRYPTO_LRW=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
 CONFIG_CRYPTO_BLOWFISH=m
index ae2afff00e01a00753b9ef9fd8032b2bec821393..4a25b8d3e5078860eb9838637b622b3efc9a77a3 100644 (file)
@@ -85,7 +85,6 @@ CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=m
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_BLOWFISH=m
index 5444ce6405f3aaf1866bc46d7e1708403a427a79..a2cb2a7a02db8c51cc0e3a325e5f14c9bdfea778 100644 (file)
@@ -259,7 +259,6 @@ CONFIG_CRYPTO_SERPENT=m
 CONFIG_CRYPTO_TWOFISH=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA1=y
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_DEFLATE=y
index ce91f9d1fdbfbba0b07390bae33ff5af622816ce..4dd6cf6a2cb9bb3089e0e378ae3e6ca21c71a8de 100644 (file)
@@ -287,7 +287,6 @@ CONFIG_CRYPTO_ECB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_MD4=m
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_DEFLATE=m
 # CONFIG_CRYPTO_HW is not set
 CONFIG_PRINTK_TIME=y
index 428f17b455132105dbe648d4beaefb99f8e6dd9f..466f196ee8b290038d22b4889cd14724f04ba13b 100644 (file)
@@ -238,7 +238,6 @@ CONFIG_BOOTX_TEXT=y
 CONFIG_CRYPTO_BENCHMARK=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
index b564f9e33a0dfa3ff10ddf61d662fdee862372a2..31f84d08b6efe37145906ff94e8207d067d040da 100644 (file)
@@ -129,7 +129,6 @@ CONFIG_MAGIC_SYSRQ=y
 CONFIG_DEBUG_KERNEL=y
 CONFIG_DETECT_HUNG_TASK=y
 CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_BLOWFISH=m
 CONFIG_CRYPTO_SERPENT=m
index fa2b3b9c594528e74009e4acf17e868d474424eb..c82754c14e15e99832078808ea0a77d157b84186 100644 (file)
@@ -115,7 +115,6 @@ CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=20
 CONFIG_CRYPTO_CBC=y
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA1=m
 CONFIG_CRYPTO_BLOWFISH=m
 CONFIG_CRYPTO_DES=y
index 9ac746cfb4be316cad421dd13ecc4b32c7c9cb16..675462b7832006ff74e3e821b85c312131b1721a 100644 (file)
@@ -319,7 +319,6 @@ CONFIG_XMON=y
 CONFIG_CRYPTO_BENCHMARK=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
index 2b0720f2753bc043c4e77e8e47e12ff8381c7b40..e3e1cad668d9afb03465c5a8f38a207f2b646a74 100644 (file)
@@ -382,7 +382,6 @@ CONFIG_CRYPTO_CAST6=m
 CONFIG_CRYPTO_SERPENT=m
 CONFIG_CRYPTO_TWOFISH=m
 CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_LZO=m
index 90247b2a0ab0cf18d67b778b8627444c0ea11391..e877598fe3562207ec73f4fc88dddf2fa53957fe 100644 (file)
@@ -225,7 +225,6 @@ CONFIG_CRYPTO_CCM=m
 CONFIG_CRYPTO_GCM=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_HMAC=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_WP512=m
 CONFIG_CRYPTO_ANUBIS=m
index 3c08f46f3d41f9714bb6444564e4e1f91718579e..27d4350e8fdbe61eaf0795d45e7a28915afc1067 100644 (file)
@@ -1077,7 +1077,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA1=y
 CONFIG_CRYPTO_SHA512=m
index 0b48d2b776c443b4c0e06157efb185c13721cd97..7cfae0b7b2f35ab15f698fb64d3de7cbc870ddd1 100644 (file)
@@ -146,7 +146,6 @@ CONFIG_NLS=y
 CONFIG_NLS_CODEPAGE_437=y
 CONFIG_NLS_ISO8859_1=y
 CONFIG_CRYPTO_PCBC=m
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_LZO=m
 CONFIG_PRINTK_TIME=y
 CONFIG_DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT=y
index 98fd0a2f51c6af2dba075156eccf9ed618634dca..b74f96eec46588344d3ae66c71fb07bd83714cb5 100644 (file)
@@ -794,7 +794,6 @@ CONFIG_CRYPTO_GCM=y
 CONFIG_CRYPTO_SEQIV=y
 CONFIG_CRYPTO_MD4=m
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA3=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index 0f4cedcab3cef4005fef1db2b4a10ea5205b7d36..0c831481e43fd8cfe3101263e881f7527cdfed14 100644 (file)
@@ -778,7 +778,6 @@ CONFIG_CRYPTO_GCM=y
 CONFIG_CRYPTO_SEQIV=y
 CONFIG_CRYPTO_MD4=m
 CONFIG_CRYPTO_MD5=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_RMD160=m
 CONFIG_CRYPTO_SHA3=m
 CONFIG_CRYPTO_SM3_GENERIC=m
index e32d2ce72699fed26be7d68135451db04c4a976e..5d90804994857cf8a66e4e7e0102616b94a97238 100644 (file)
@@ -170,7 +170,6 @@ CONFIG_CRYPTO_XTS=y
 CONFIG_CRYPTO_HMAC=y
 CONFIG_CRYPTO_XCBC=y
 CONFIG_CRYPTO_MD4=y
-CONFIG_CRYPTO_MICHAEL_MIC=y
 CONFIG_CRYPTO_SHA1=y
 CONFIG_CRYPTO_SHA256=y
 CONFIG_CRYPTO_SHA512=y
index 896e980d04e1491e2cd470cc29abfaa7f8156a0a..00863ecb228e88b72f7878eba5a99870d904288c 100644 (file)
@@ -246,7 +246,6 @@ CONFIG_DEBUG_KERNEL=y
 CONFIG_CRYPTO_NULL=m
 CONFIG_CRYPTO_ECB=y
 CONFIG_CRYPTO_MD4=m
-CONFIG_CRYPTO_MICHAEL_MIC=y
 CONFIG_CRYPTO_SHA256=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_TGR192=m
index 0d1c858754dbbc6bf8e597d790ddbf8d8619d7e2..00a37944b043c1119f03d56074e6f16c4e477355 100644 (file)
@@ -79,4 +79,3 @@ CONFIG_NLS_CODEPAGE_437=y
 CONFIG_NLS_CODEPAGE_932=y
 CONFIG_NLS_ISO8859_1=y
 # CONFIG_ENABLE_MUST_CHECK is not set
-CONFIG_CRYPTO_MICHAEL_MIC=y
index e021ecfb5a77174194bceea7e8b1056711c59cfe..48d834acafb4a9d552537a7a0de3acf9ae8b50b3 100644 (file)
@@ -82,7 +82,6 @@ CONFIG_CRYPTO_NULL=m
 CONFIG_CRYPTO_ECB=m
 CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_MD4=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA256=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_AES=m
index 9f3f41246ae6daabb9e795e8843394604425a689..632081a262baefe2ab5cf3b82e1e41f49c37475c 100644 (file)
@@ -210,7 +210,6 @@ CONFIG_CRYPTO_PCBC=m
 CONFIG_CRYPTO_XTS=m
 CONFIG_CRYPTO_XCBC=y
 CONFIG_CRYPTO_MD4=y
-CONFIG_CRYPTO_MICHAEL_MIC=m
 CONFIG_CRYPTO_SHA256=m
 CONFIG_CRYPTO_SHA512=m
 CONFIG_CRYPTO_TGR192=m
index b4bb85e8e226120946a50c1a9d648090ded0db6c..769aef52a7851ece600d32f08d5e8a2bbcc5f0d8 100644 (file)
@@ -916,18 +916,6 @@ config CRYPTO_MD5
        help
          MD5 message digest algorithm (RFC1321), including HMAC support.
 
-config CRYPTO_MICHAEL_MIC
-       tristate "Michael MIC"
-       select CRYPTO_HASH
-       help
-         Michael MIC (Message Integrity Code) (IEEE 802.11i)
-
-         Defined by the IEEE 802.11i TKIP (Temporal Key Integrity Protocol),
-         known as WPA (Wif-Fi Protected Access).
-
-         This algorithm is required for TKIP, but it should not be used for
-         other purposes because of the weakness of the algorithm.
-
 config CRYPTO_RMD160
        tristate "RIPEMD-160"
        select CRYPTO_HASH
index 04e269117589ac9ffc5d57e834b3734f7f4baf3c..aa35ba03222f78656c48baafbfae3b8e6bbc7cca 100644 (file)
@@ -150,7 +150,6 @@ obj-$(CONFIG_CRYPTO_ARIA) += aria_generic.o
 obj-$(CONFIG_CRYPTO_CHACHA20) += chacha.o
 CFLAGS_chacha.o += -DARCH=$(ARCH)
 obj-$(CONFIG_CRYPTO_DEFLATE) += deflate.o
-obj-$(CONFIG_CRYPTO_MICHAEL_MIC) += michael_mic.o
 obj-$(CONFIG_CRYPTO_CRC32C) += crc32c-cryptoapi.o
 crc32c-cryptoapi-y := crc32c.o
 obj-$(CONFIG_CRYPTO_CRC32) += crc32-cryptoapi.o
diff --git a/crypto/michael_mic.c b/crypto/michael_mic.c
deleted file mode 100644 (file)
index 69ad35f..0000000
+++ /dev/null
@@ -1,176 +0,0 @@
-// SPDX-License-Identifier: GPL-2.0-only
-/*
- * Cryptographic API
- *
- * Michael MIC (IEEE 802.11i/TKIP) keyed digest
- *
- * Copyright (c) 2004 Jouni Malinen <j@w1.fi>
- */
-#include <crypto/internal/hash.h>
-#include <linux/unaligned.h>
-#include <linux/init.h>
-#include <linux/module.h>
-#include <linux/string.h>
-#include <linux/types.h>
-
-
-struct michael_mic_ctx {
-       u32 l, r;
-};
-
-struct michael_mic_desc_ctx {
-       __le32 pending;
-       size_t pending_len;
-
-       u32 l, r;
-};
-
-static inline u32 xswap(u32 val)
-{
-       return ((val & 0x00ff00ff) << 8) | ((val & 0xff00ff00) >> 8);
-}
-
-
-#define michael_block(l, r)    \
-do {                           \
-       r ^= rol32(l, 17);      \
-       l += r;                 \
-       r ^= xswap(l);          \
-       l += r;                 \
-       r ^= rol32(l, 3);       \
-       l += r;                 \
-       r ^= ror32(l, 2);       \
-       l += r;                 \
-} while (0)
-
-
-static int michael_init(struct shash_desc *desc)
-{
-       struct michael_mic_desc_ctx *mctx = shash_desc_ctx(desc);
-       struct michael_mic_ctx *ctx = crypto_shash_ctx(desc->tfm);
-       mctx->pending_len = 0;
-       mctx->l = ctx->l;
-       mctx->r = ctx->r;
-
-       return 0;
-}
-
-
-static int michael_update(struct shash_desc *desc, const u8 *data,
-                          unsigned int len)
-{
-       struct michael_mic_desc_ctx *mctx = shash_desc_ctx(desc);
-
-       if (mctx->pending_len) {
-               int flen = 4 - mctx->pending_len;
-               if (flen > len)
-                       flen = len;
-               memcpy((u8 *)&mctx->pending + mctx->pending_len, data, flen);
-               mctx->pending_len += flen;
-               data += flen;
-               len -= flen;
-
-               if (mctx->pending_len < 4)
-                       return 0;
-
-               mctx->l ^= le32_to_cpu(mctx->pending);
-               michael_block(mctx->l, mctx->r);
-               mctx->pending_len = 0;
-       }
-
-       while (len >= 4) {
-               mctx->l ^= get_unaligned_le32(data);
-               michael_block(mctx->l, mctx->r);
-               data += 4;
-               len -= 4;
-       }
-
-       if (len > 0) {
-               mctx->pending_len = len;
-               memcpy(&mctx->pending, data, len);
-       }
-
-       return 0;
-}
-
-
-static int michael_final(struct shash_desc *desc, u8 *out)
-{
-       struct michael_mic_desc_ctx *mctx = shash_desc_ctx(desc);
-       u8 *data = (u8 *)&mctx->pending;
-
-       /* Last block and padding (0x5a, 4..7 x 0) */
-       switch (mctx->pending_len) {
-       case 0:
-               mctx->l ^= 0x5a;
-               break;
-       case 1:
-               mctx->l ^= data[0] | 0x5a00;
-               break;
-       case 2:
-               mctx->l ^= data[0] | (data[1] << 8) | 0x5a0000;
-               break;
-       case 3:
-               mctx->l ^= data[0] | (data[1] << 8) | (data[2] << 16) |
-                       0x5a000000;
-               break;
-       }
-       michael_block(mctx->l, mctx->r);
-       /* l ^= 0; */
-       michael_block(mctx->l, mctx->r);
-
-       put_unaligned_le32(mctx->l, out);
-       put_unaligned_le32(mctx->r, out + 4);
-
-       return 0;
-}
-
-
-static int michael_setkey(struct crypto_shash *tfm, const u8 *key,
-                         unsigned int keylen)
-{
-       struct michael_mic_ctx *mctx = crypto_shash_ctx(tfm);
-
-       if (keylen != 8)
-               return -EINVAL;
-
-       mctx->l = get_unaligned_le32(key);
-       mctx->r = get_unaligned_le32(key + 4);
-       return 0;
-}
-
-static struct shash_alg alg = {
-       .digestsize             =       8,
-       .setkey                 =       michael_setkey,
-       .init                   =       michael_init,
-       .update                 =       michael_update,
-       .final                  =       michael_final,
-       .descsize               =       sizeof(struct michael_mic_desc_ctx),
-       .base                   =       {
-               .cra_name               =       "michael_mic",
-               .cra_driver_name        =       "michael_mic-generic",
-               .cra_blocksize          =       8,
-               .cra_ctxsize            =       sizeof(struct michael_mic_ctx),
-               .cra_module             =       THIS_MODULE,
-       }
-};
-
-static int __init michael_mic_init(void)
-{
-       return crypto_register_shash(&alg);
-}
-
-
-static void __exit michael_mic_exit(void)
-{
-       crypto_unregister_shash(&alg);
-}
-
-
-module_init(michael_mic_init);
-module_exit(michael_mic_exit);
-
-MODULE_LICENSE("GPL v2");
-MODULE_DESCRIPTION("Michael MIC");
-MODULE_AUTHOR("Jouni Malinen <j@w1.fi>");
-MODULE_ALIAS_CRYPTO("michael_mic");
index aded37546137419594b8aad1464a1442fb817e4b..24f0ccc767961784e07ed9329705510b14f1e0c8 100644 (file)
@@ -1557,10 +1557,6 @@ static int do_test(const char *alg, u32 type, u32 mask, int m, u32 num_mb)
                ret = min(ret, tcrypt_test("ecb(arc4)"));
                break;
 
-       case 17:
-               ret = min(ret, tcrypt_test("michael_mic"));
-               break;
-
        case 18:
                ret = min(ret, tcrypt_test("crc32c"));
                break;
index 4985411dedaec6dd8f804428f36fae53a2550b9c..d5c38683bf46fbacee10f18048d1157598d00b0f 100644 (file)
@@ -5197,12 +5197,6 @@ static const struct alg_test_desc alg_test_descs[] = {
                .suite = {
                        .hash = __VECS(md5_tv_template)
                }
-       }, {
-               .alg = "michael_mic",
-               .test = alg_test_hash,
-               .suite = {
-                       .hash = __VECS(michael_mic_tv_template)
-               }
        }, {
                .alg = "p1363(ecdsa-nist-p192)",
                .test = alg_test_null,
index 1c69c11c0cdb4847076c0645dde60c2a9f53f63f..11911bff5f793dcbe0696b218923c8fc8b1241fa 100644 (file)
@@ -32808,56 +32808,6 @@ static const struct comp_testvec lzorle_decomp_tv_template[] = {
        },
 };
 
-/*
- * Michael MIC test vectors from IEEE 802.11i
- */
-#define MICHAEL_MIC_TEST_VECTORS 6
-
-static const struct hash_testvec michael_mic_tv_template[] = {
-       {
-               .key = "\x00\x00\x00\x00\x00\x00\x00\x00",
-               .ksize = 8,
-               .plaintext = zeroed_string,
-               .psize = 0,
-               .digest = "\x82\x92\x5c\x1c\xa1\xd1\x30\xb8",
-       },
-       {
-               .key = "\x82\x92\x5c\x1c\xa1\xd1\x30\xb8",
-               .ksize = 8,
-               .plaintext = "M",
-               .psize = 1,
-               .digest = "\x43\x47\x21\xca\x40\x63\x9b\x3f",
-       },
-       {
-               .key = "\x43\x47\x21\xca\x40\x63\x9b\x3f",
-               .ksize = 8,
-               .plaintext = "Mi",
-               .psize = 2,
-               .digest = "\xe8\xf9\xbe\xca\xe9\x7e\x5d\x29",
-       },
-       {
-               .key = "\xe8\xf9\xbe\xca\xe9\x7e\x5d\x29",
-               .ksize = 8,
-               .plaintext = "Mic",
-               .psize = 3,
-               .digest = "\x90\x03\x8f\xc6\xcf\x13\xc1\xdb",
-       },
-       {
-               .key = "\x90\x03\x8f\xc6\xcf\x13\xc1\xdb",
-               .ksize = 8,
-               .plaintext = "Mich",
-               .psize = 4,
-               .digest = "\xd5\x5e\x10\x05\x10\x12\x89\x86",
-       },
-       {
-               .key = "\xd5\x5e\x10\x05\x10\x12\x89\x86",
-               .ksize = 8,
-               .plaintext = "Michael",
-               .psize = 7,
-               .digest = "\x0a\x94\x2b\x12\x4e\xca\xa5\x46",
-       }
-};
-
 /*
  * CRC32 test vectors
  */