Home
last modified time | relevance | path

Searched +full:aes +full:- +full:gcm (Results 1 – 25 of 78) sorted by relevance

1234

/linux/arch/powerpc/crypto/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
5 # Arch-specific CryptoAPI modules.
8 obj-$(CONFIG_CRYPTO_AES_PPC_SPE) += aes-ppc-spe.o
9 obj-$(CONFIG_CRYPTO_AES_GCM_P10) += aes-gcm-p10-crypto.o
10 obj-$(CONFIG_CRYPTO_DEV_VMX_ENCRYPT) += vmx-crypto.o
12 aes-ppc-spe-y := aes-spe-core.o aes-spe-keys.o aes-tab-4k.o aes-spe-modes.o aes-spe-glue.o
13 aes-gcm-p10-crypto-y := aes-gcm-p10-glue.o aes-gcm-p10.o ghashp10-ppc.o aesp10-ppc.o
14 vmx-crypto-objs := vmx.o aesp8-ppc.o ghashp8-ppc.o aes.o aes_cbc.o aes_ctr.o aes_xts.o ghash.o
17 override flavour := linux-ppc64le
20 override flavour := linux-ppc64-elfv2
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
6 tristate "Ciphers: AES, modes: ECB/CBC/CTR/XTS (SPE)"
10 Block ciphers: AES cipher algorithms (FIPS-197)
11 Length-preserving ciphers: AES with ECB, CBC, CTR, and XTS modes
14 - SPE (Signal Processing Engine) extensions
17 - Processor Type: Freescale 8500
18 - CPU selection: e500 (8540)
21 without hardware AES acceleration (e.g. caam crypto). It reduces the
22 size of the AES tables from 16KB to 8KB + 256 bytes and mitigates
25 tables or 256 bytes S-boxes.
[all …]
/linux/arch/arm64/crypto/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0-only
8 obj-$(CONFIG_CRYPTO_SHA3_ARM64) += sha3-ce.o
9 sha3-ce-y := sha3-ce-glue.o sha3-ce-core.o
11 obj-$(CONFIG_CRYPTO_SM3_NEON) += sm3-neon.o
12 sm3-neon-y := sm3-neon-glue.o sm3-neon-core.o
14 obj-$(CONFIG_CRYPTO_SM3_ARM64_CE) += sm3-ce.o
15 sm3-ce-y := sm3-ce-glue.o sm3-ce-core.o
17 obj-$(CONFIG_CRYPTO_SM4_ARM64_CE) += sm4-ce-cipher.o
18 sm4-ce-cipher-y := sm4-ce-cipher-glue.o sm4-ce-cipher-core.o
20 obj-$(CONFIG_CRYPTO_SM4_ARM64_CE_BLK) += sm4-ce.o
[all …]
/linux/tools/perf/pmu-events/arch/s390/cf_z16/
H A Dpai_crypto.json3 "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/drivers/crypto/ccp/
H A Dccp-crypto-aes-galois.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * AMD Cryptographic Coprocessor (CCP) AES GCM crypto API support
17 #include <crypto/aes.h>
19 #include <crypto/gcm.h>
22 #include "ccp-crypto.h"
36 ctx->u.aes.type = CCP_AES_TYPE_128; in ccp_aes_gcm_setkey()
39 ctx->u.aes.type = CCP_AES_TYPE_192; in ccp_aes_gcm_setkey()
42 ctx->u.aes.type = CCP_AES_TYPE_256; in ccp_aes_gcm_setkey()
45 return -EINVAL; in ccp_aes_gcm_setkey()
48 ctx->u.aes.mode = CCP_AES_MODE_GCM; in ccp_aes_gcm_setkey()
[all …]
/linux/tools/perf/pmu-events/arch/s390/cf_z17/
H A Dpai_crypto.json3 "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/arch/s390/crypto/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
6 tristate "Hash functions: SHA3-224 and SHA3-256"
9 SHA3-224 and SHA3-256 secure hash algorithms (FIPS 202)
16 tristate "Hash functions: SHA3-384 and SHA3-512"
19 SHA3-384 and SHA3-512 secure hash algorithms (FIPS 202)
29 GCM GHASH hash function (NIST SP800-38D)
36 tristate "Ciphers: AES, modes: ECB, CBC, CTR, XTS, GCM"
40 Block cipher: AES cipher algorithms (FIPS 197)
41 AEAD cipher: AES with GCM
42 Length-preserving ciphers: AES with ECB, CBC, XTS, and CTR modes
[all …]
/linux/lib/crypto/
H A Daesgcm.c1 // SPDX-License-Identifier: GPL-2.0
3 * Minimal library implementation of GCM
9 #include <crypto/gcm.h>
21 * In AES-GCM, both the GHASH key derivation and the CTR mode in aesgcm_encrypt_block()
23 * timing attacks on the encryption key. The AES library already in aesgcm_encrypt_block()
24 * mitigates this risk to some extent by pulling the entire S-box into in aesgcm_encrypt_block()
34 * aesgcm_expandkey - Expands the AES and GHASH keys for the AES-GCM key
37 * @ctx: The data structure that will hold the AES-GCM key schedule
38 * @key: The AES encryption input key
40 * @authsize: The size in bytes of the GCM authentication tag
[all …]
/linux/Documentation/devicetree/bindings/crypto/
H A Dxlnx,zynqmp-aes.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/crypto/xlnx,zynqmp-aes.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: Xilinx ZynqMP AES-GCM Hardware Accelerator
10 - Kalyani Akula <kalyani.akula@amd.com>
11 - Michal Simek <michal.simek@amd.com>
14 The ZynqMP AES-GCM hardened cryptographic accelerator is used to
19 const: xlnx,zynqmp-aes
22 - compatible
[all …]
H A Dnvidia,tegra234-se-aes.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: http://devicetree.org/schemas/crypto/nvidia,tegra234-se-aes.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
7 title: NVIDIA Tegra Security Engine for AES algorithms
10 The Tegra Security Engine accelerates the following AES encryption/decryption
11 algorithms - AES-ECB, AES-CBC, AES-OFB, AES-XTS, AES-CTR, AES-GCM, AES-CCM,
12 AES-CMAC
15 - Akhil R <akhilrajeev@nvidia.com>
19 const: nvidia,tegra234-se-aes
[all …]
/linux/arch/x86/crypto/
H A Daesni-intel_glue.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Support for AES-NI and VAES instructions. This file contains glue code.
4 * The real AES implementations are in aesni-intel_asm.S and other .S files.
9 * Added RFC4106 AES-GCM support for 128-bit keys under the AEAD
10 * interface for 64-bit kernels.
25 #include <crypto/aes.h>
27 #include <crypto/gcm.h>
43 #define AES_BLOCK_MASK (~(AES_BLOCK_SIZE - 1))
44 #define AESNI_ALIGN_EXTRA ((AESNI_ALIGN - 1) & ~(CRYPTO_MINALIGN - 1))
170 nbytes &= AES_BLOCK_SIZE - 1; in ecb_encrypt()
[all …]
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
6 tristate "Ciphers: AES, modes: ECB, CBC, CTS, CTR, XCTR, XTS, GCM (AES-NI/VAES)"
13 Block cipher: AES cipher algorithms
14 AEAD cipher: AES with GCM
15 Length-preserving ciphers: AES with ECB, CBC, CTS, CTR, XCTR, XTS
17 Architecture: x86 (32-bit and 64-bit) using:
18 - AES-NI (AES new instructions)
19 - VAES (Vector AES)
21 Some algorithm implementations are supported only in 64-bit builds,
32 Length-preserving ciphers: Blowfish with ECB and CBC modes
[all …]
H A Daes-gcm-aesni-x86_64.S1 /* SPDX-License-Identifier: Apache-2.0 OR BSD-2-Clause */
3 // AES-NI optimized AES-GCM for x86_64
9 //------------------------------------------------------------------------------
11 // This file is dual-licensed, meaning that you can use it under your choice of
17 // http://www.apache.org/licenses/LICENSE-2.0
49 //------------------------------------------------------------------------------
51 // This file implements AES-GCM (Galois/Counter Mode) for x86_64 CPUs that
52 // support the original set of AES instructions, i.e. AES-NI. Two
55 // that the AVX implementation takes advantage of VEX-coded instructions in some
57 // implementation does *not* use 256-bit vectors, as AES is not supported on
[all …]
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
5 obj-$(CONFIG_CRYPTO_TWOFISH_586) += twofish-i586.o
6 twofish-i586-y := twofish-i586-asm_32.o twofish_glue.o
7 obj-$(CONFIG_CRYPTO_TWOFISH_X86_64) += twofish-x86_64.o
8 twofish-x86_64-y := twofish-x86_64-asm_64.o twofish_glue.o
9 obj-$(CONFIG_CRYPTO_TWOFISH_X86_64_3WAY) += twofish-x86_64-3way.o
10 twofish-x86_64-3way-y := twofish-x86_64-asm_64-3way.o twofish_glue_3way.o
11 obj-$(CONFIG_CRYPTO_TWOFISH_AVX_X86_64) += twofish-avx-x86_64.o
12 twofish-avx-x86_64-y := twofish-avx-x86_64-asm_64.o twofish_avx_glue.o
14 obj-$(CONFIG_CRYPTO_SERPENT_SSE2_586) += serpent-sse2-i586.o
[all …]
/linux/drivers/crypto/intel/keembay/
H A DKconfig2 tristate "Support for Intel Keem Bay OCS AES/SM4 HW acceleration"
9 Support for Intel Keem Bay Offload and Crypto Subsystem (OCS) AES and
13 cbc(aes), ctr(aes), ccm(aes), gcm(aes), cbc(sm4), ctr(sm4), ccm(sm4)
14 and gcm(sm4).
17 enabled: ecb(aes), cts(cbc(aes)), ecb(sm4) and cts(cbc(sm4)).
20 bool "Support for Intel Keem Bay OCS AES/SM4 ECB HW acceleration"
24 AES/SM4 ECB mode hardware acceleration for use with Crypto API.
26 Provides OCS version of ecb(aes) and ecb(sm4)
28 Intel does not recommend use of ECB mode with AES/SM4.
31 bool "Support for Intel Keem Bay OCS AES/SM4 CTS HW acceleration"
[all …]
/linux/security/keys/trusted-keys/
H A Dtrusted_dcp.c1 // SPDX-License-Identifier: GPL-2.0-only
7 #include <crypto/aes.h>
9 #include <crypto/gcm.h>
11 #include <keys/trusted-type.h>
12 #include <linux/key-type.h>
25 * The Data Co-Processor (DCP) provides hardware-bound AES keys using its
26 * AES encryption engine only. It does not provide direct key sealing/unsealing.
28 * our own custom format that uses a hardware-bound key to secure the sealing
31 * Whenever a new trusted key using DCP is generated, we generate a random 128-bit
32 * blob encryption key (BEK) and 128-bit nonce. The BEK and nonce are used to
[all …]
/linux/drivers/crypto/ccree/
H A Dcc_aead.h1 /* SPDX-License-Identifier: GPL-2.0 */
2 /* Copyright (C) 2012-2019 ARM Limited (or its affiliates). */
15 /* mac_cmp - HW writes 8 B but all bytes hold the same value */
20 /* defines for AES GCM configuration buffer */
28 /* Offsets into AES CCM configuration buffer */
39 ccm_header_size_null = -1,
49 * Used for both: digest HW compare and CCM/GCM MAC value
54 //used in gcm
75 //used in gcm
76 /* buffer for internal gcm configurations */
[all …]
/linux/tools/testing/selftests/net/
H A Dl2tp.sh2 # SPDX-License-Identifier: GPL-2.0
6 # host-1 | router | host-2
30 if [ ${rc} -eq ${expected} ]; then
31 printf "TEST: %-60s [ OK ]\n" "${msg}"
36 printf "TEST: %-60s [FAIL]\n" "${msg}"
63 if [ "$VERBOSE" = "1" -a -n "$out" ]; then
81 [ -z "${addr}" ] && addr="-"
82 [ -z "${addr6}" ] && addr6="-"
84 if [ "${addr}" != "-" ]; then
85 ip -netns ${ns} addr add dev lo ${addr}
[all …]
/linux/arch/arm/crypto/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
14 GCM GHASH function (NIST SP800-38D)
17 - PMULL (Polynomial Multiply Long) instructions
18 - NEON (Advanced SIMD) extensions
19 - ARMv8 Crypto Extensions
21 Use an implementation of GHASH (used by the GCM AEAD chaining mode)
34 - NEON (Advanced SIMD) extensions
44 - NEON (Advanced SIMD) extensions
49 much faster than the SHA-2 family and slightly faster than
50 SHA-1.
[all …]
/linux/drivers/crypto/nx/
H A DMakefile1 # SPDX-License-Identifier: GPL-2.0
2 obj-$(CONFIG_CRYPTO_DEV_NX_ENCRYPT) += nx-crypto.o
3 nx-crypto-objs := nx.o \
4 nx-aes-cbc.o \
5 nx-aes-ecb.o \
6 nx-aes-gcm.o \
7 nx-aes-ccm.o \
8 nx-aes-ctr.o \
9 nx-aes-xcbc.o \
10 nx-sha256.o \
[all …]
/linux/net/xfrm/
H A Dxfrm_algo.c1 // SPDX-License-Identifier: GPL-2.0-or-later
29 .name = "rfc4106(gcm(aes))",
48 .name = "rfc4106(gcm(aes))",
67 .name = "rfc4106(gcm(ae
[all...]
/linux/crypto/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
156 cbc(aes), and the support for the crypto self-tests.
175 cbc(aes).
178 bool "Enable cryptographic self-tests"
181 Enable the cryptographic self-tests.
183 The cryptographic self-tests run at boot time, or at algorithm
188 - Development and pre-release testing. In this case, also enable
192 - Production kernels, to help prevent buggy drivers from being used
193 and/or meet FIPS 140-3 pre-operational testing requirements. In
197 bool "Enable the full set of cryptographic self-tests"
[all …]
/linux/arch/riscv/crypto/
H A DKconfig1 # SPDX-License-Identifier: GPL-2.0
6 tristate "Ciphers: AES, modes: ECB, CBC, CTS, CTR, XTS"
12 Block cipher: AES cipher algorithms
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)
26 GCM GHASH function (NIST SP 800-38D)
29 - Zvkg vector crypto extension
[all …]
/linux/drivers/crypto/bcm/
H A Dcipher.h2 /* SPDX-License-Identifier: GPL-2.0-only */
11 #include <linux/mailbox/brcm-message.h>
13 #include <crypto/aes.h>
18 #include <crypto/gcm.h>
41 /* size of salt value for AES-GCM-ESP and AES-CCM-ESP */
53 * Maximum number of bytes from a non-final hash request that can be deferred
59 /* Force at least 4-byte alignment of all SPU message fields */
80 * SPUM_NS2 and SPUM_NSP are the SPU-M block on Northstar 2 and Northstar Plus,
126 * SPU request message header. For SPU-M, holds MH, EMH, SCTX, BDESC,
140 /* SPU-M request message STATUS field */
[all …]
H A Dspu.h1 /* SPDX-License-Identifier: GPL-2.0-only */
8 * SPU message formats: SPU-M and SPU2. The hardware uses different values to
9 * identify the same things in SPU-M vs SPU2. So this file defines values that
12 * spu.c and spu2.c convert these to hardware-specific values.
135 /* length of hash pad. signed, needs to handle roll-overs */
142 u8 aad_pad_len; /* For AES GCM/CCM, length of padding after AAD */
143 u8 data_pad_len;/* For AES GCM/CCM, length of padding after data */
153 /* Max length of padding for 4-byte alignment of STATUS field */
156 /* Max length of pad fragment. 4 is for 4-byte alignment of STATUS field */
160 /* GCM and CCM require 16-byte alignment */
[all …]

1234