/linux-6.8/arch/s390/crypto/ |
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 …]
|
D | prng.c | 1 // SPDX-License-Identifier: GPL-2.0 42 MODULE_PARM_DESC(prng_mode, "PRNG mode: 0 - auto, 1 - TDES, 2 - SHA512"); 68 * of course, in a state of sin. -- John von Neumann 120 * the random bytes given back is assumed to have at least 50% - meaning 126 * at least 512 stckf() values are needed. The entropy relevant part of the 156 return -ENOMEM; in generate_entropy() 163 /* exor upper 2k with 512 stckf values, offset 4 bytes each */ in generate_entropy() 164 for (n = 0; n < 512; n++) { in generate_entropy() 165 int offset = (PAGE_SIZE / 2) + (n * 4) - 4; in generate_entropy() 175 nbytes -= n; in generate_entropy() [all …]
|
/linux-6.8/arch/x86/crypto/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0 14 - ADX (large integer arithmetic) 17 tristate "Ciphers: AES, modes: ECB, CBC, CTS, CTR, XTR, XTS, GCM (AES-NI)" 27 Length-preserving ciphers: AES with ECB, CBC, CTS, CTR, XTR, XTS 29 Architecture: x86 (32-bit and 64-bit) using: 30 - AES-NI (AES new instructions) 40 Length-preserving ciphers: Blowfish with ECB and CBC modes 51 Length-preserving ciphers: Camellia with ECB and CBC modes 56 tristate "Ciphers: Camellia with modes: ECB, CBC (AES-NI/AVX)" 63 Length-preserving ciphers: Camellia with ECB and CBC modes [all …]
|
/linux-6.8/arch/mips/crypto/ |
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-6.8/arch/arm64/crypto/ |
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 …]
|
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",
|
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-6.8/arch/sparc/crypto/ |
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 …]
|
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-6.8/arch/arm/crypto/ |
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 …]
|
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"); 61 .cra_driver_name = "sha384-arm", 75 .cra_driver_name = "sha512-arm",
|
/linux-6.8/Documentation/ABI/testing/ |
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-6.8/fs/crypto/ |
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-6.8/drivers/crypto/aspeed/ |
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-6.8/tools/perf/pmu-events/arch/s390/cf_z16/ |
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-6.8/lib/crypto/ |
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-6.8/crypto/ |
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)" 256 RSA (Rivest-Shamir-Adleman) public key algorithm (RFC8017) 259 tristate "DH (Diffie-Hellman)" 263 DH (Diffie-Hellman) key exchange algorithm [all …]
|
D | sha3_generic.c | 1 // SPDX-License-Identifier: GPL-2.0-or-later 5 * SHA-3, as specified in 8 * SHA-3 code by Jeff Garzik <jeff@garzik.org> 19 * On some 32-bit architectures (h8300), GCC ends up using 21 * in keccakf(). On the other hand, on 64-bit architectures with plenty 22 * of [64-bit wide] general purpose registers, not inlining it severely 23 * hurts performance. So let's use 64-bitness as a heuristic to decide 164 unsigned int digest_size = crypto_shash_digestsize(desc->tfm); in crypto_sha3_init() 166 sctx->rsiz = 200 - 2 * digest_size; in crypto_sha3_init() 167 sctx->rsizw = sctx->rsiz / 8; in crypto_sha3_init() [all …]
|
/linux-6.8/arch/mips/cavium-octeon/crypto/ |
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-6.8/Documentation/admin-guide/ |
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-6.8/drivers/crypto/ |
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. 131 and uses triple-DES to generate secure random numbers like the 132 ANSI X9.17 standard. User-space programs access the 133 pseudo-random-number device through the char device /dev/prandom. 149 sub-units. One set provides the Modular Arithmetic Unit, 250 This option provides the kernel-side support for the TRNG hardware [all …]
|
/linux-6.8/drivers/crypto/ccp/ |
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 …]
|
D | ccp-debugfs.c | 1 // SPDX-License-Identifier: GPL-2.0-only 13 #include "ccp-dev.h" 17 #define OBUFLEN 512 18 #define OBUFSPC (OBUFLEN - oboff) 45 struct ccp_device *ccp = filp->private_data; in ccp5_debugfs_info_read() 56 return -ENOMEM; in ccp5_debugfs_info_read() 58 oboff += OSCNPRINTF("Device name: %s\n", ccp->name); in ccp5_debugfs_info_read() 59 oboff += OSCNPRINTF(" RNG name: %s\n", ccp->rngname); in ccp5_debugfs_info_read() 60 oboff += OSCNPRINTF(" # Queues: %d\n", ccp->cmd_q_count); in ccp5_debugfs_info_read() 61 oboff += OSCNPRINTF(" # Cmds: %d\n", ccp->cmd_count); in ccp5_debugfs_info_read() [all …]
|
/linux-6.8/include/linux/ |
D | ccp.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 27 * ccp_present - check if a CCP device is present 29 * Returns zero if a CCP device is present, -ENODEV otherwise. 34 #define CCP_VMASK ((unsigned int)((1 << CCP_VSIZE) - 1)) 39 * ccp_version - get the version of the CCP 46 * ccp_enqueue_cmd - queue an operation for processing by the CCP 55 * result in a return code of -EBUSY. 61 * will be -EINPROGRESS. Any other "err" value during callback is 65 * the return code is -EINPROGRESS or 66 * the return code is -EBUSY and CCP_CMD_MAY_BACKLOG flag is set [all …]
|
/linux-6.8/kernel/module/ |
D | Kconfig | 1 # SPDX-License-Identifier: GPL-2.0-only 63 bool "Debug duplicate modules with auto-loading" 65 Module autoloading allows in-kernel code to request modules through 74 requests are non-fatal virtual memory is a limited resource and each 79 module requests to help identify if module auto-loading may be the 92 non-wait request_module() call is synchronous and waits until modprobe 93 completes. Subsequent auto-loading requests for the same module do 101 abuse was due to module auto-loading. These issues are currently only 104 module auto-loading is not the culprit. There may very well still be 105 many duplicate module auto-loading requests which could be optimized [all …]
|