/linux/arch/s390/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 18 tristate "Hash functions: SHA-384 and SHA-512" 22 SHA-384 and SHA-512 secure hash algorithms (FIPS 180) 29 tristate "Hash functions: SHA-1" 33 SHA-1 secure hash algorithm (FIPS 180) 40 tristate "Hash functions: SHA-224 and SHA-256" 44 SHA-224 and SHA-256 secure hash algorithms (FIPS 180) 51 tristate "Hash functions: SHA3-224 and SHA3-256" 55 SHA3-224 and SHA3-256 secure hash algorithms (FIPS 202) 62 tristate "Hash functions: SHA3-384 and SHA3-512" [all …]
|
H A D | hmac_s390.c | 1 // SPDX-License-Identifier: GPL-2.0+ 20 * blocksize of the used hashing sha2-algorithm function codes. The param block 21 * contains the hash chaining value (cv), the input message bit-length (imbl) 22 * and the hmac-secret (key). To prevent code duplication, the sizes of all 25 * param-block: 26 * +-------+ 28 * +-------+ 30 * +-------+ 32 * +-------+ 35 * part | sh2-alg | calculation | size | type [all …]
|
/linux/arch/x86/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 14 - ADX (large integer arithmetic) 17 tristate "Ciphers: AES, modes: ECB, CBC, CTS, CTR, XCTR, XTS, GCM (AES-NI/VAES)" 28 Length-preserving ciphers: AES with ECB, CBC, CTS, CTR, XCTR, XTS 30 Architecture: x86 (32-bit and 64-bit) using: 31 - AES-NI (AES new instructions) 32 - VAES (Vector AES) 34 Some algorithm implementations are supported only in 64-bit builds, 45 Length-preserving ciphers: Blowfish with ECB and CBC modes 56 Length-preserving ciphers: Camellia with ECB and CBC modes [all …]
|
/linux/arch/arm64/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 13 GCM GHASH function (NIST SP800-38D) 16 - ARMv8 Crypto Extensions 26 - NEON (Advanced SIMD) extensions 37 - NEON (Advanced SIMD) extensions 40 tristate "Hash functions: SHA-1 (ARMv8 Crypto Extensions)" 45 SHA-1 secure hash algorithm (FIPS 180) 48 - ARMv8 Crypto Extensions 51 tristate "Hash functions: SHA-224 and SHA-256" 54 SHA-224 and SHA-256 secure hash algorithms (FIPS 180) [all …]
|
H A D | sha512-ce-glue.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * sha512-ce-glue.c - SHA-384/SHA-512 using ARMv8 Crypto Extensions 23 MODULE_DESCRIPTION("SHA-384/SHA-512 secure hash using ARMv8 Crypto Extensions"); 43 src += (blocks - rem) * SHA512_BLOCK_SIZE; in sha512_ce_transform() 51 sha512_block_data_order(sst->state, src, blocks); in sha512_arm64_transform() 92 .base.cra_driver_name = "sha384-ce", 104 .base.cra_driver_name = "sha512-ce",
|
H A D | sha512-glue.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 15 MODULE_DESCRIPTION("SHA-384/SHA-512 secure hash for arm64"); 29 sha512_block_data_order(sst->state, src, blocks); in sha512_arm64_transform() 61 .base.cra_driver_name = "sha512-arm64", 73 .base.cra_driver_name = "sha384-arm64",
|
/linux/arch/mips/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 34 tristate "Hash functions: SHA-1 (OCTEON)" 39 SHA-1 secure hash algorithm (FIPS 180) 44 tristate "Hash functions: SHA-224 and SHA-256 (OCTEON)" 49 SHA-224 and SHA-256 secure hash algorithms (FIPS 180) 54 tristate "Hash functions: SHA-384 and SHA-512 (OCTEON)" 59 SHA-384 and SHA-512 secure hash algorithms (FIPS 180) 69 Length-preserving ciphers: ChaCha20, XChaCha20, and XChaCha12
|
/linux/arch/sparc/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 12 Block cipher: DES (FIPS 46-2) cipher algorithm 13 Block cipher: Triple DES EDE (FIPS 46-3) cipher algorithm 14 Length-preserving ciphers: DES with ECB and CBC modes 15 Length-preserving ciphers: Tripe DES EDE with ECB and CBC modes 40 tristate "Hash functions: SHA-1" 45 SHA-1 secure hash algorithm (FIPS 180) 50 tristate "Hash functions: SHA-224 and SHA-256" 55 SHA-224 and SHA-256 secure hash algorithms (FIPS 180) 60 tristate "Hash functions: SHA-384 and SHA-512" [all …]
|
H A D | sha512_glue.c | 1 // SPDX-License-Identifier: GPL-2.0-only 6 * Copyright (c) Jean-Luc Cooke <jlcooke@certainkey.com> 34 if ((sctx->count[0] += len) < len) in __sha512_sparc64_update() 35 sctx->count[1]++; in __sha512_sparc64_update() 37 done = SHA512_BLOCK_SIZE - partial; in __sha512_sparc64_update() 38 memcpy(sctx->buf + partial, data, done); in __sha512_sparc64_update() 39 sha512_sparc64_transform(sctx->state, sctx->buf, 1); in __sha512_sparc64_update() 41 if (len - done >= SHA512_BLOCK_SIZE) { in __sha512_sparc64_update() 42 const unsigned int rounds = (len - done) / SHA512_BLOCK_SIZE; in __sha512_sparc64_update() 44 sha512_sparc64_transform(sctx->state, data + done, rounds); in __sha512_sparc64_update() [all …]
|
/linux/arch/riscv/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 13 Length-preserving ciphers: AES with ECB, CBC, CTS, CTR, XTS 16 - Zvkned vector crypto extension 17 - Zvbb vector extension (XTS) 18 - Zvkb vector crypto extension (CTR) 19 - Zvkg vector crypto extension (XTS) 27 Length-preserving ciphers: ChaCha20 stream cipher algorithm 30 - Zvkb vector crypto extension 37 GCM GHASH function (NIST SP 800-38D) 40 - Zvkg vector crypto extension [all …]
|
H A D | sha512-riscv64-glue.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 3 * SHA-512 and SHA-384 using the RISC-V vector crypto extensions 31 * Ensure struct sha512_state begins directly with the SHA-512 in riscv64_sha512_update() 32 * 512-bit internal state, as this is what the asm function expects. in riscv64_sha512_update() 89 .cra_driver_name = "sha512-riscv64-zvknhb-zvkb", 103 .cra_driver_name = "sha384-riscv64-zvknhb-zvkb", 117 return -ENODEV; in riscv64_sha512_mod_init() 129 MODULE_DESCRIPTION("SHA-512 (RISC-V accelerated)");
|
H A D | sha512-riscv64-zvknhb-zvkb.S | 1 /* SPDX-License-Identifier: Apache-2.0 OR BSD-2-Clause */ 3 // This file is dual-licensed, meaning that you can use it under your 40 // The generated code of this file depends on the following RISC-V extensions: 41 // - RV64I 42 // - RISC-V Vector ('V') with VLEN >= 128 43 // - RISC-V Vector SHA-2 Secure Hash extension ('Zvknhb') 44 // - RISC-V Vector Cryptography Bit-manipulation extension ('Zvkb') 70 // Do 4 rounds of SHA-512. w0 contains the current 4 message schedule words. 73 // computes 4 more message schedule words. w1-w3 contain the next 3 groups of 4 101 // message scheduling. There are 4 words, so an 8-bit mask suffices. [all …]
|
/linux/arch/arm/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 14 - NEON (Advanced SIMD) extensions 25 GCM GHASH function (NIST SP800-38D) 28 - PMULL (Polynomial Multiply Long) instructions 29 - NEON (Advanced SIMD) extensions 30 - ARMv8 Crypto Extensions 45 - NEON (Advanced SIMD) extensions 55 - NEON (Advanced SIMD) extensions 78 - NEON (Advanced SIMD) extensions 83 much faster than the SHA-2 family and slightly faster than [all …]
|
H A D | sha512-glue.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * sha512-glue.c - accelerated SHA-384/512 for ARM 19 MODULE_DESCRIPTION("Accelerated SHA-384/SHA-512 secure hash for ARM"); 25 MODULE_ALIAS_CRYPTO("sha384-arm"); 26 MODULE_ALIAS_CRYPTO("sha512-arm"); 59 .cra_driver_name = "sha384-arm", 73 .cra_driver_name = "sha512-arm",
|
/linux/Documentation/ABI/testing/ |
H A D | debugfs-pfo-nx-crypto | 1 What: /sys/kernel/debug/nx-crypto/* 7 These debugfs interfaces are built by the nx-crypto driver, built in 18 The most recent non-zero return code from the H_COP_OP hcall. -EBUSY is not 19 recorded here (the hcall will retry until -EBUSY goes away). 36 The total number of bytes hashed by the hardware using SHA-256. 39 The total number of SHA-256 operations submitted to the hardware. 42 The total number of bytes hashed by the hardware using SHA-512. 45 The total number of SHA-512 operations submitted to the hardware.
|
/linux/lib/crypto/ |
H A D | sha1.c | 1 // SPDX-License-Identifier: GPL-2.0 26 * suggested by Artur Skawina - that will also make gcc unable to 47 /* This "rolls" over the 512-bit array */ 52 * the input data, the next mix it from the 512-bit array. 70 * sha1_transform - single block SHA1 transform (deprecated) 73 * @data: 512 bits of data to hash 76 * This function executes SHA-1's internal compression function. It updates the 77 * 160-bit internal state (@digest) with a single 512-bit data block (@data). 79 * Don't use this function. SHA-1 is no longer considered secure. And even if 80 * you do have to use SHA-1, this isn't the correct way to hash something with [all …]
|
/linux/fs/crypto/ |
H A D | hkdf.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Implementation of HKDF ("HMAC-based Extract-and-Expand Key Derivation 19 * SHA-512 because it is well-established, secure, and reasonably efficient. 21 * HKDF-SHA256 was also considered, as its 256-bit security strength would be 22 * sufficient here. A 512-bit security strength is "nice to have", though. 23 * Also, on 64-bit CPUs, SHA-512 is usually just as fast as SHA-256. In the 24 * common case of deriving an AES-256-XTS key (512 bits), that can result in 25 * HKDF-SHA512 being much faster than HKDF-SHA256, as the longer digest size of 26 * SHA-512 causes HKDF-Expand to only need to do one iteration rather than two. 34 * 1. HKDF-Extract: extract a pseudorandom key of length HKDF_HASHLEN bytes from [all …]
|
/linux/tools/perf/pmu-events/arch/s390/cf_z16/ |
H A D | pai_crypto.json | 3 "Unit": "PAI-CRYPTO", 10 "Unit": "PAI-CRYPTO", 14 "PublicDescription": "KM-DEA function ending with CC=0" 17 "Unit": "PAI-CRYPTO", 21 "PublicDescription": "KM-TDEA-128 function ending with CC=0" 24 "Unit": "PAI-CRYPTO", 28 "PublicDescription": "KM-TDEA-192 function ending with CC=0" 31 "Unit": "PAI-CRYPTO", 35 "PublicDescription": "KM-Encrypted-DEA function ending with CC=0" 38 "Unit": "PAI-CRYPTO", [all …]
|
/linux/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 171 bool "Disable run-time self tests" 174 Disable run-time self tests that normally take place at 178 bool "Enable extra run-time crypto self tests" 181 Enable extra run-time self tests of registered crypto algorithms, 247 menu "Public-key cryptography" 250 tristate "RSA (Rivest-Shamir-Adleman)" 257 RSA (Rivest-Shamir-Adleman) public key algorithm (RFC8017) 260 tristate "DH (Diffie-Hellman)" 264 DH (Diffie-Hellman) key exchange algorithm [all …]
|
/linux/drivers/crypto/aspeed/ |
H A D | Kconfig | 32 SHA-1, SHA-224, SHA-256, SHA-384, SHA-512, and so on. 45 Supports AES/DES symmetric-key encryption and decryption
|
/linux/arch/mips/cavium-octeon/crypto/ |
H A D | octeon-sha512.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * SHA-512 and SHA-384 Secure Hash Algorithm. 11 * Copyright (c) Jean-Luc Cooke <jlcooke@certainkey.com> 26 #include "octeon-crypto.h" 29 * We pass everything as 64-bit. OCTEON can handle misaligned data. 34 write_octeon_64bit_hash_sha512(sctx->state[0], 0); in octeon_sha512_store_hash() 35 write_octeon_64bit_hash_sha512(sctx->state[1], 1); in octeon_sha512_store_hash() 36 write_octeon_64bit_hash_sha512(sctx->state[2], 2); in octeon_sha512_store_hash() 37 write_octeon_64bit_hash_sha512(sctx->state[3], 3); in octeon_sha512_store_hash() 38 write_octeon_64bit_hash_sha512(sctx->state[4], 4); in octeon_sha512_store_hash() [all …]
|
/linux/Documentation/admin-guide/ |
H A D | module-signing.rst | 2 ------------------------------ 6 .. - Overview. 7 .. - Configuring module signing. 8 .. - Generating signing keys. 9 .. - Public keys in the kernel. 10 .. - Manually signing modules. 11 .. - Signed modules and stripping. 12 .. - Loading signed modules. 13 .. - Non-valid signatures and unsigned modules. 14 .. - Administering/protecting the private key. [all …]
|
/linux/kernel/module/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 64 bool "Debug duplicate modules with auto-loading" 66 Module autoloading allows in-kernel code to request modules through 75 requests are non-fatal virtual memory is a limited resource and each 80 module requests to help identify if module auto-loading may be the 93 non-wait request_module() call is synchronous and waits until modprobe 94 completes. Subsequent auto-loading requests for the same module do 102 abuse was due to module auto-loading. These issues are currently only 105 module auto-loading is not the culprit. There may very well still be 106 many duplicate module auto-loading requests which could be optimized [all …]
|
/linux/drivers/crypto/ |
H A D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 39 called padlock-aes. 53 called padlock-sha. 61 Say 'Y' here to use the AMD Geode LX processor on-board AES 65 will be called geode-aes. 87 - A pkey base and API kernel module (pkey.ko) which offers the 89 and the sysfs API and the in-kernel API to the crypto cipher 91 - A pkey pckmo kernel module (pkey-pckmo.ko) which is automatically 94 - A pkey CCA kernel module (pkey-cca.ko) which is automatically 96 - A pkey EP11 kernel module (pkey-ep11.ko) which is automatically [all …]
|
/linux/drivers/crypto/ccp/ |
H A D | ccp-ops.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2013-2019 Advanced Micro Devices, Inc. 11 #include <linux/dma-mapping.h> 19 #include "ccp-dev.h" 21 /* SHA initial context values */ 56 #define CCP_NEW_JOBID(ccp) ((ccp->vdata->version == CCP_VERSION(3, 0)) ? \ 61 return atomic_inc_return(&ccp->current_id) & CCP_JOBID_MASK; in ccp_gen_jobid() 66 if (wa->dma_count) in ccp_sg_free() 67 dma_unmap_sg(wa->dma_dev, wa->dma_sg_head, wa->nents, wa->dma_dir); in ccp_sg_free() 69 wa->dma_count = 0; in ccp_sg_free() [all …]
|