/Linux-v5.10/drivers/crypto/ccp/ |
D | ccp-crypto-aes-xts.c | 3 * AMD Cryptographic Coprocessor (CCP) AES XTS crypto API support 16 #include <crypto/xts.h> 29 .name = "xts(aes)", 30 .drv_name = "xts-aes-ccp", 170 rctx->cmd.u.xts.type = CCP_AES_TYPE_128; in ccp_aes_xts_crypt() 171 rctx->cmd.u.xts.action = (encrypt) ? CCP_AES_ACTION_ENCRYPT in ccp_aes_xts_crypt() 173 rctx->cmd.u.xts.unit_size = unit_size; in ccp_aes_xts_crypt() 174 rctx->cmd.u.xts.key = &ctx->u.aes.key_sg; in ccp_aes_xts_crypt() 175 rctx->cmd.u.xts.key_len = ctx->u.aes.key_len; in ccp_aes_xts_crypt() 176 rctx->cmd.u.xts.iv = &rctx->iv_sg; in ccp_aes_xts_crypt() [all …]
|
D | ccp-ops.c | 1090 struct ccp_xts_aes_engine *xts = &cmd->u.xts; in ccp_run_xts_aes_cmd() local 1100 switch (xts->unit_size) { in ccp_run_xts_aes_cmd() 1121 if (xts->key_len == AES_KEYSIZE_128) in ccp_run_xts_aes_cmd() 1123 else if (xts->key_len == AES_KEYSIZE_256) in ccp_run_xts_aes_cmd() 1128 if (!xts->final && (xts->src_len & (AES_BLOCK_SIZE - 1))) in ccp_run_xts_aes_cmd() 1131 if (xts->iv_len != AES_BLOCK_SIZE) in ccp_run_xts_aes_cmd() 1134 if (!xts->key || !xts->iv || !xts->src || !xts->dst) in ccp_run_xts_aes_cmd() 1147 op.u.xts.type = aestype; in ccp_run_xts_aes_cmd() 1148 op.u.xts.action = xts->action; in ccp_run_xts_aes_cmd() 1149 op.u.xts.unit_size = xts->unit_size; in ccp_run_xts_aes_cmd() [all …]
|
D | Makefile | 19 ccp-crypto-aes-xts.o \
|
/Linux-v5.10/arch/x86/crypto/ |
D | serpent_avx2_glue.c | 15 #include <crypto/xts.h> 77 .fn_u = { .xts = serpent_xts_enc_16way } 80 .fn_u = { .xts = serpent_xts_enc_8way_avx } 83 .fn_u = { .xts = serpent_xts_enc } 125 .fn_u = { .xts = serpent_xts_dec_16way } 128 .fn_u = { .xts = serpent_xts_dec_8way_avx } 131 .fn_u = { .xts = serpent_xts_dec }
|
D | camellia_aesni_avx2_glue.c | 12 #include <crypto/xts.h> 78 .fn_u = { .xts = camellia_xts_enc_32way } 81 .fn_u = { .xts = camellia_xts_enc_16way } 84 .fn_u = { .xts = camellia_xts_enc } 132 .fn_u = { .xts = camellia_xts_dec_32way } 135 .fn_u = { .xts = camellia_xts_dec_16way } 138 .fn_u = { .xts = camellia_xts_dec }
|
D | cast6_avx_glue.c | 18 #include <crypto/xts.h> 96 .fn_u = { .xts = cast6_xts_enc_8way } 99 .fn_u = { .xts = cast6_xts_enc } 135 .fn_u = { .xts = cast6_xts_dec_8way } 138 .fn_u = { .xts = cast6_xts_dec } 182 /* first half of xts-key is for crypt */ in xts_cast6_setkey() 187 /* second half of xts-key is for tweak */ in xts_cast6_setkey()
|
D | serpent_avx_glue.c | 18 #include <crypto/xts.h> 89 /* first half of xts-key is for crypt */ in xts_serpent_setkey() 94 /* second half of xts-key is for tweak */ in xts_serpent_setkey() 131 .fn_u = { .xts = serpent_xts_enc_8way_avx } 134 .fn_u = { .xts = serpent_xts_enc } 170 .fn_u = { .xts = serpent_xts_dec_8way_avx } 173 .fn_u = { .xts = serpent_xts_dec }
|
D | twofish_avx_glue.c | 18 #include <crypto/xts.h> 73 /* first half of xts-key is for crypt */ in xts_twofish_setkey() 78 /* second half of xts-key is for tweak */ in xts_twofish_setkey() 120 .fn_u = { .xts = twofish_xts_enc_8way } 123 .fn_u = { .xts = twofish_xts_enc } 165 .fn_u = { .xts = twofish_xts_dec_8way } 168 .fn_u = { .xts = twofish_xts_dec }
|
D | camellia_aesni_avx_glue.c | 12 #include <crypto/xts.h> 92 .fn_u = { .xts = camellia_xts_enc_16way } 95 .fn_u = { .xts = camellia_xts_enc } 137 .fn_u = { .xts = camellia_xts_dec_16way } 140 .fn_u = { .xts = camellia_xts_dec } 185 /* first half of xts-key is for crypt */ in xts_camellia_setkey() 190 /* second half of xts-key is for tweak */ in xts_camellia_setkey()
|
D | aesni-intel_glue.c | 27 #include <crypto/xts.h> 528 /* first half of xts-key is for crypt */ in xts_aesni_setkey() 534 /* second half of xts-key is for tweak */ in xts_aesni_setkey() 566 .fn_u = { .xts = aesni_xts_enc8 } 569 .fn_u = { .xts = aesni_xts_enc } 579 .fn_u = { .xts = aesni_xts_dec8 } 582 .fn_u = { .xts = aesni_xts_dec }
|
/Linux-v5.10/drivers/crypto/vmx/ |
D | aes_xts.c | 3 * AES XTS routines supporting VMX In-core instructions on Power 8 15 #include <crypto/xts.h> 31 fallback = crypto_alloc_skcipher("xts(aes)", 0, in p8_aes_xts_init() 35 pr_err("Failed to allocate xts(aes) fallback: %ld\n", in p8_aes_xts_init() 147 .base.cra_name = "xts(aes)",
|
/Linux-v5.10/arch/powerpc/crypto/ |
D | aes-spe-regs.h | 14 #define rIP r8 /* potiner to IV (CBC/CTR/XTS modes) */ 15 #define rKT r9 /* pointer to tweak key (XTS mode) */ 34 #define rG0 r28 /* endian reversed tweak (XTS mode) */
|
D | aes-spe-glue.c | 21 #include <crypto/xts.h> 30 * a single load and store unit (LSU). XTS-AES-256 takes ~780 operations per 474 .base.cra_name = "xts(aes)", 475 .base.cra_driver_name = "xts-ppc-spe", 515 MODULE_DESCRIPTION("AES-ECB/CBC/CTR/XTS, SPE optimized"); 521 MODULE_ALIAS_CRYPTO("xts(aes)");
|
/Linux-v5.10/arch/arm/crypto/ |
D | Kconfig | 89 CTR and XTS modes 92 and for XTS mode encryption, CBC and XTS mode decryption speedup is 104 Use an implementation of AES in CBC, CTR and XTS modes that uses
|
/Linux-v5.10/Documentation/crypto/ |
D | api-samples.rst | 7 This code encrypts some data with AES-256-XTS. For sake of example, 21 u8 iv[16]; /* AES-256-XTS takes a 16-byte IV */ 22 u8 key[64]; /* AES-256-XTS takes a 64-byte key */ 33 tfm = crypto_alloc_skcipher("xts(aes)", 0, 0); 35 pr_err("Error allocating xts(aes) handle: %ld\n", PTR_ERR(tfm));
|
/Linux-v5.10/arch/arm64/crypto/ |
D | Kconfig | 87 tristate "AES in ECB/CBC/CTR/XTS modes using ARMv8 Crypto Extensions" 95 tristate "AES in ECB/CBC/CTR/XTS modes using NEON instructions" 121 tristate "AES in ECB/CBC/CTR/XTS modes using bit-sliced NEON algorithm"
|
/Linux-v5.10/crypto/ |
D | xts.c | 2 /* XTS: as defined in IEEE1619/D16 19 #include <crypto/xts.h> 386 err = crypto_inst_setname(skcipher_crypto_instance(inst), "xts", in xts_create() 410 "xts(%s)", ctx->name) >= CRYPTO_MAX_ALG_NAME) { in xts_create() 446 .name = "xts", 465 MODULE_DESCRIPTION("XTS block cipher mode"); 466 MODULE_ALIAS_CRYPTO("xts");
|
D | tcrypt.c | 1718 ret += tcrypt_test("xts(twofish)"); in do_test() 1726 ret += tcrypt_test("xts(serpent)"); in do_test() 1733 ret += tcrypt_test("xts(aes)"); in do_test() 1763 ret += tcrypt_test("xts(cast6)"); in do_test() 1836 ret += tcrypt_test("xts(camellia)"); in do_test() 2066 test_cipher_speed("xts(aes)", ENCRYPT, sec, NULL, 0, in do_test() 2068 test_cipher_speed("xts(aes)", DECRYPT, sec, NULL, 0, in do_test() 2122 test_cipher_speed("xts(twofish)", ENCRYPT, sec, NULL, 0, in do_test() 2124 test_cipher_speed("xts(twofish)", DECRYPT, sec, NULL, 0, in do_test() 2171 test_cipher_speed("xts(camellia)", ENCRYPT, sec, NULL, 0, in do_test() [all …]
|
D | Kconfig | 451 tristate "XTS support" 456 XTS: IEEE1619/D16 narrow block cipher use with aes-xts-plain, 503 AES-XTS. 507 bound. Unlike XTS, Adiantum is a true wide-block encryption 509 security than XTS, subject to the security bound. 537 the SoC in question has accelerated CBC but not XTS, making CBC 1159 ECB, CBC, LRW, XTS. The 64 bit version has additional 1195 for popular block cipher modes ECB, CBC, CTR and XTS is supported.
|
/Linux-v5.10/include/linux/ |
D | ccp.h | 192 /***** XTS-AES engine *****/ 194 * ccp_xts_aes_unit_size - XTS unit size 212 * struct ccp_xts_aes_engine - CCP XTS AES operation 214 * @unit_size: unit size of the XTS operation 215 * @key: key to be used for this XTS AES operation 217 * @iv: IV to be used for this XTS AES operation 222 * @final: indicates final XTS operation 594 * @CCP_ENGINE_XTS_AES: 128-bit XTS AES operation 652 struct ccp_xts_aes_engine xts; member
|
/Linux-v5.10/Documentation/admin-guide/device-mapper/ |
D | dm-crypt.rst | 26 aes-xts-plain64 27 serpent-xts-plain64 41 capi:xts(aes)-plain64 46 capi:authenc(hmac(sha256),xts(aes))-random
|
/Linux-v5.10/Documentation/devicetree/bindings/crypto/ |
D | samsung-slimsss.yaml | 16 -- Advanced Encryption Standard (AES) with ECB,CBC,CTR,XTS and (CBC/XTS)/CTS
|
/Linux-v5.10/arch/s390/crypto/ |
D | aes_s390.c | 33 #include <crypto/xts.h> 413 /* Split the XTS key into the two subkeys */ in xts_aes_set_key() 433 u8 xts[16]; in xts_aes_crypt() member 459 memset(pcc_param.xts, 0, sizeof(pcc_param.xts)); in xts_aes_crypt() 465 memcpy(xts_param.init, pcc_param.xts, 16); in xts_aes_crypt() 498 pr_err("Allocating XTS fallback algorithm %s failed\n", in xts_fallback_init() 515 .base.cra_name = "xts(aes)", 516 .base.cra_driver_name = "xts-aes-s390",
|
D | paes_s390.c | 26 #include <crypto/xts.h> 490 u8 xts[16]; in xts_paes_crypt() member 511 memcpy(xts_param.init, pcc_param.xts, 16); in xts_paes_crypt() 544 .base.cra_name = "xts(paes)", 545 .base.cra_driver_name = "xts-paes-s390",
|
/Linux-v5.10/fs/crypto/ |
D | hkdf.c | 20 * a 64-byte digest, deriving an AES-256-XTS key preserves all 64 bytes of 35 * length HKDF_HASHLEN bytes. However, cipher modes other than AES-256-XTS take
|