| /linux/include/crypto/internal/ |
| H A D | cipher.h | 21 * DOC: Single Block Cipher API 23 * The single block cipher API is used with the ciphers of type 24 * CRYPTO_ALG_TYPE_CIPHER (listed as type "cipher" in /proc/crypto). 26 * Using the single block cipher API calls, operations with the basic cipher 27 * primitive can be implemented. These cipher primitives exclude any block 30 * The purpose of this single block cipher API is to support the implementation 31 * of templates or other concepts that only need to perform the cipher operation 32 * on one block at a time. Templates invoke the underlying cipher primitive 33 * block-wise and process either the input or the output data of these cipher 43 * crypto_alloc_cipher() - allocate single block cipher handle [all …]
|
| /linux/include/crypto/ |
| H A D | aead.h | 18 * DOC: Authenticated Encryption With Associated Data (AEAD) Cipher API 20 * The AEAD cipher API is used with the ciphers of type CRYPTO_ALG_TYPE_AEAD 25 * with the following cipher string: 27 * authenc(keyed message digest, block cipher) 31 * The example code provided for the symmetric key cipher operation applies 36 * decryption operation. Another deviation from the asynchronous block cipher 40 * code is the key bonus an AEAD cipher has over "standard" block chaining 105 * struct aead_alg - AEAD cipher definition 135 * @base: Definition of a generic crypto cipher algorithm. 183 * crypto_alloc_aead() - allocate AEAD cipher handle [all …]
|
| H A D | rng.h | 75 * message digest cipher 76 * @type: specifies the type of the cipher 77 * @mask: specifies the mask for the cipher 79 * Allocate a cipher handle for a random number generator. The returned struct 80 * crypto_rng is the cipher handle that is required for any subsequent 89 * Return: allocated cipher handle in case of success; IS_ERR() is true in case 117 * @tfm: cipher handle to be freed 128 * @tfm: cipher handle 136 * cipher handle. 149 * @tfm: cipher handle [all …]
|
| /linux/Documentation/crypto/ |
| H A D | userspace-if.rst | 13 consumer and never as a provider of a transformation or cipher 56 A cipher is accessed with the same name as done for the in-kernel API 61 user space application. User space invokes the cipher operation with the 62 send()/write() system call family. The result of the cipher operation is 73 parameter specified below for the different cipher types. 79 particular cipher instance. When invoking send/write or recv/read 83 In-place Cipher operation 87 space interface allows the cipher operation in-place. That means that 90 is of particular interest for symmetric cipher operations where a 101 The message digest type to be used for the cipher operation is selected [all …]
|
| H A D | intro.rst | 19 Therefore, a cipher handle variable usually has the name "tfm". Besides 37 Note: The terms "transformation" and cipher algorithm are used 56 to as a "cipher handle". Such a cipher handle is always subject to the 58 a cipher handle: 60 1. Initialization of a cipher handle. 62 2. Execution of all intended cipher operations applicable for the handle 63 where the cipher handle must be furnished to every API call. 65 3. Destruction of a cipher handle. 67 When using the initialization API calls, a cipher handle is created and
|
| H A D | devel-algos.rst | 1 Developing Cipher Algorithms 47 Single-Block Symmetric Ciphers [CIPHER] 53 implementations, that being the CIPHER type used for symmetric ciphers. 54 The CIPHER type is used for transformations which operate on exactly one 60 The registration of [CIPHER] algorithm is specific in that struct 61 crypto_alg field .cra_type is empty. The .cra_u.cipher has to be 66 Cipher Definition With struct cipher_alg 69 Struct cipher_alg defines a single block cipher. 103 This section describes the multi-block cipher transformation 111 The registration of multi-block cipher algorithms is one of the most [all …]
|
| /linux/crypto/ |
| H A D | Kconfig | 247 tristate "Kerberos 5 combined hash+cipher support" 253 Combined hash and cipher support for Kerberos 5 RFC3961 simplified 365 AES cipher algorithms (Rijndael)(FIPS-197, ISO/IEC 18033-3) 383 Anubis cipher algorithm 385 Anubis is a variable key length cipher which can use keys from 396 ARIA cipher algorithm (RFC5794) 412 Blowfish cipher algorithm, by Bruce Schneier 414 This is a variable key length cipher which can use keys from 32 423 Common parts of the Blowfish cipher algorithm shared by the 430 Camellia cipher algorithms (ISO/IEC 18033-3) [all …]
|
| /linux/drivers/crypto/cavium/nitrox/ |
| H A D | nitrox_skcipher.c | 24 * supported cipher list 41 const struct nitrox_cipher *cipher = flexi_cipher_table; in flexi_cipher_type() local 43 while (cipher->name) { in flexi_cipher_type() 44 if (!strcmp(cipher->name, name)) in flexi_cipher_type() 46 cipher++; in flexi_cipher_type() 48 return cipher->value; in flexi_cipher_type() 83 struct crypto_skcipher *cipher = crypto_skcipher_reqtfm(skreq); in nitrox_cbc_cipher_callback() local 84 int ivsize = crypto_skcipher_ivsize(cipher); in nitrox_cbc_cipher_callback() 165 static inline int nitrox_skcipher_setkey(struct crypto_skcipher *cipher, in nitrox_skcipher_setkey() argument 169 struct crypto_tfm *tfm = crypto_skcipher_tfm(cipher); in nitrox_skcipher_setkey() [all …]
|
| /linux/net/sunrpc/auth_gss/ |
| H A D | gss_krb5_crypto.c | 66 * pad minimum plaintext length to at least a single cipher block. 88 * @tfm: initialized cipher transform 96 * cipher's ivsize. 393 gss_krb5_cts_crypt(struct crypto_sync_skcipher *cipher, struct xdr_buf *buf, in gss_krb5_cts_crypt() argument 398 SYNC_SKCIPHER_REQUEST_ON_STACK(req, cipher); in gss_krb5_cts_crypt() 427 skcipher_request_set_sync_tfm(req, cipher); in gss_krb5_cts_crypt() 450 memcpy(iv, data, crypto_sync_skcipher_ivsize(cipher)); in gss_krb5_cts_crypt() 460 * @cts_tfm: CBC cipher with CTS 461 * @cbc_tfm: base CBC cipher 468 * To provide confidentiality, encrypt using cipher block chaining [all …]
|
| /linux/drivers/nvme/common/ |
| H A D | keyring.c | 200 enum nvme_tcp_tls_cipher cipher; member 204 .cipher = NVME_TCP_TLS_CIPHER_SHA384, }, 207 .cipher = NVME_TCP_TLS_CIPHER_SHA256, }, 210 .cipher = NVME_TCP_TLS_CIPHER_SHA384, }, 213 .cipher = NVME_TCP_TLS_CIPHER_SHA256, }, 216 .cipher = NVME_TCP_TLS_CIPHER_SHA384, }, 219 .cipher = NVME_TCP_TLS_CIPHER_SHA256, }, 222 .cipher = NVME_TCP_TLS_CIPHER_SHA384, }, 225 .cipher = NVME_TCP_TLS_CIPHER_SHA256, }, 241 enum nvme_tcp_tls_cipher cipher = nvme_tls_psk_prio[prio].cipher; in nvme_tls_psk_default() local [all …]
|
| /linux/drivers/crypto/cavium/cpt/ |
| H A D | cptvf_algs.c | 232 static int cvm_xts_setkey(struct crypto_skcipher *cipher, const u8 *key, in cvm_xts_setkey() argument 235 struct cvm_enc_ctx *ctx = crypto_skcipher_ctx(cipher); in cvm_xts_setkey() 240 err = xts_verify_key(cipher, key, keylen); in cvm_xts_setkey() 288 static int cvm_setkey(struct crypto_skcipher *cipher, const u8 *key, in cvm_setkey() argument 291 struct cvm_enc_ctx *ctx = crypto_skcipher_ctx(cipher); in cvm_setkey() 302 static int cvm_cbc_aes_setkey(struct crypto_skcipher *cipher, const u8 *key, in cvm_cbc_aes_setkey() argument 305 return cvm_setkey(cipher, key, keylen, AES_CBC); in cvm_cbc_aes_setkey() 308 static int cvm_ecb_aes_setkey(struct crypto_skcipher *cipher, const u8 *key, in cvm_ecb_aes_setkey() argument 311 return cvm_setkey(cipher, key, keylen, AES_ECB); in cvm_ecb_aes_setkey() 314 static int cvm_cbc_des3_setkey(struct crypto_skcipher *cipher, const u8 *key, in cvm_cbc_des3_setkey() argument [all …]
|
| /linux/Documentation/netlink/specs/ |
| H A D | ovpn.yaml | 21 name: cipher-alg 248 name: cipher-alg 250 doc: The cipher to be used when communicating with the peer 251 enum: cipher-alg 266 name: cipher-key 268 doc: The actual key to be used by the cipher 276 obtain the actual cipher IV 291 name: cipher-alg 323 doc: Peer specific cipher configuration 450 doc: Add a cipher key for a specific peer [all …]
|
| /linux/net/wireless/ |
| H A D | wext-compat.c | 429 if (params->cipher == WLAN_CIPHER_SUITE_AES_CMAC) { in cfg80211_set_encryption() 475 wdev->wext.keys->params[idx].cipher = 0; in cfg80211_set_encryption() 500 else if (params->cipher != WLAN_CIPHER_SUITE_WEP40 && in cfg80211_set_encryption() 501 params->cipher != WLAN_CIPHER_SUITE_WEP104) in cfg80211_set_encryption() 511 if (!addr && (params->cipher == WLAN_CIPHER_SUITE_WEP40 || in cfg80211_set_encryption() 512 params->cipher == WLAN_CIPHER_SUITE_WEP104)) { in cfg80211_set_encryption() 520 if ((params->cipher == WLAN_CIPHER_SUITE_WEP40 || in cfg80211_set_encryption() 521 params->cipher == WLAN_CIPHER_SUITE_WEP104) && in cfg80211_set_encryption() 547 if (params->cipher == WLAN_CIPHER_SUITE_AES_CMAC && in cfg80211_set_encryption() 617 params.cipher = WLAN_CIPHER_SUITE_WEP40; in cfg80211_wext_siwencode() [all …]
|
| /linux/drivers/crypto/bcm/ |
| H A D | cipher.c | 38 #include "cipher.h" 72 MODULE_PARM_DESC(cipher_pri, "Priority for cipher algos"); 154 if ((ctx->cipher.mode == CIPHER_MODE_XTS) && in spu_skcipher_rx_sg_create() 218 if ((ctx->cipher.mode == CIPHER_MODE_XTS) && in spu_skcipher_tx_sg_create() 281 * handle_skcipher_req() - Submit as much of a block cipher request as fits in 323 cipher_parms.alg = ctx->cipher.alg; in handle_skcipher_req() 324 cipher_parms.mode = ctx->cipher.mode; in handle_skcipher_req() 349 if ((ctx->cipher.mode == CIPHER_MODE_CBC) && in handle_skcipher_req() 365 if ((ctx->cipher.mode == CIPHER_MODE_CBC) && in handle_skcipher_req() 374 } else if (ctx->cipher.mode == CIPHER_MODE_CTR) { in handle_skcipher_req() [all …]
|
| H A D | spum.h | 37 * max cipher key len - 264 (RC4) 43 * For SPU2, FMD_SIZE (32) plus lengths of hash and cipher keys, 44 * hash and cipher IVs. If SPU2 does not support RC4, then 149 /* word 1: cipher flags */ 152 /* word 2: Extended cipher flags */
|
| /linux/Documentation/admin-guide/device-mapper/ |
| H A D | dm-crypt.rst | 13 <cipher> <key> <iv_offset> <device path> \ 16 <cipher> 17 Encryption cipher, encryption mode and Initial Vector (IV) generator. 19 The cipher specifications format is:: 21 cipher[:keycount]-chainmode-ivmode[:ivopts] 29 Cipher format also supports direct specification with kernel crypt API 34 The crypto API cipher specifications format is:: 55 You can only use key sizes that are valid for the selected cipher 210 # Create a crypt device using cryptsetup and LUKS header with default cipher
|
| /linux/tools/testing/crypto/chacha20-s390/ |
| H A D | test-cipher.c | 50 /* Perform cipher operations with the chacha lib */ 51 static int test_lib_chacha(u8 *revert, u8 *cipher, u8 *plain) in test_lib_chacha() argument 72 chacha_crypt_arch(&chacha_state, cipher, plain, data_size, 20); in test_lib_chacha() 78 16, 1, cipher, in test_lib_chacha() 87 chacha_crypt_arch(&chacha_state, revert, cipher, data_size, 20); in test_lib_chacha() 100 /* Perform cipher operations with skcipher */ 125 /* Initialize and trigger cipher operations */ 126 static int test_skcipher(char *name, u8 *revert, u8 *cipher, u8 *plain) in test_skcipher() argument 174 sg_init_one(&sk.sgout, cipher, data_size); in test_skcipher() 191 16, 1, cipher, in test_skcipher() [all...] |
| /linux/drivers/gpu/drm/nouveau/nvkm/engine/cipher/ |
| H A D | g84.c | 24 #include <engine/cipher.h> 80 g84_cipher_intr(struct nvkm_engine *cipher) in g84_cipher_intr() argument 82 struct nvkm_subdev *subdev = &cipher->subdev; in g84_cipher_intr() 92 chan = nvkm_chan_get_inst(cipher, (u64)inst << 12, &flags); in g84_cipher_intr() 108 g84_cipher_init(struct nvkm_engine *cipher) in g84_cipher_init() argument 110 struct nvkm_device *device = cipher->subdev.device; in g84_cipher_init()
|
| /linux/net/tls/ |
| H A D | tls_main.c | 61 #define CHECK_CIPHER_DESC(cipher,ci) \ argument 62 static_assert(cipher ## _IV_SIZE <= TLS_MAX_IV_SIZE); \ 63 static_assert(cipher ## _SALT_SIZE <= TLS_MAX_SALT_SIZE); \ 64 static_assert(cipher ## _REC_SEQ_SIZE <= TLS_MAX_REC_SEQ_SIZE); \ 65 static_assert(cipher ## _TAG_SIZE == TLS_TAG_SIZE); \ 66 static_assert(sizeof_field(struct ci, iv) == cipher ## _IV_SIZE); \ 67 static_assert(sizeof_field(struct ci, key) == cipher ## _KEY_SIZE); \ 68 static_assert(sizeof_field(struct ci, salt) == cipher ## _SALT_SIZE); \ 69 static_assert(sizeof_field(struct ci, rec_seq) == cipher ## _REC_SEQ_SIZE); 78 #define CIPHER_DESC(cipher,ci,algname,_offloadable) [cipher - TLS_CIPHER_MIN] = { \ argument [all …]
|
| /linux/drivers/net/wireless/ralink/rt2x00/ |
| H A D | rt2x00debug.c | 87 * All statistics are stored separately per cipher type. 113 enum cipher cipher = rxdesc->cipher; in rt2x00debug_update_crypto() local 116 if (cipher == CIPHER_TKIP_NO_MIC) in rt2x00debug_update_crypto() 117 cipher = CIPHER_TKIP; in rt2x00debug_update_crypto() 118 if (cipher == CIPHER_NONE || cipher >= CIPHER_MAX) in rt2x00debug_update_crypto() 122 cipher--; in rt2x00debug_update_crypto() 124 intf->crypto_stats[cipher].success += (status == RX_CRYPTO_SUCCESS); in rt2x00debug_update_crypto() 125 intf->crypto_stats[cipher].icv_error += (status == RX_CRYPTO_FAIL_ICV); in rt2x00debug_update_crypto() 126 intf->crypto_stats[cipher].mic_error += (status == RX_CRYPTO_FAIL_MIC); in rt2x00debug_update_crypto() 127 intf->crypto_stats[cipher].key_error += (status == RX_CRYPTO_FAIL_KEY); in rt2x00debug_update_crypto() [all …]
|
| /linux/tools/testing/selftests/bpf/progs/ |
| H A D | crypto_bench.c | 14 char cipher[128] = {}; variable 34 if (!cipher[0] || !key_len || key_len > 256) { in crypto_setup() 39 __builtin_memcpy(¶ms.algo, cipher, sizeof(cipher)); in crypto_setup()
|
| /linux/drivers/net/wireless/mediatek/mt7601u/ |
| H A D | mac.c | 516 switch (key->cipher) { in mt76_mac_get_key_info() 533 enum mt76_cipher_type cipher; in mt76_mac_wcid_set_key() local 538 cipher = mt76_mac_get_key_info(key, key_data); in mt76_mac_wcid_set_key() 539 if (cipher == MT_CIPHER_NONE && key) in mt76_mac_wcid_set_key() 549 if (cipher >= MT_CIPHER_TKIP) { in mt76_mac_wcid_set_key() 561 val |= FIELD_PREP(MT_WCID_ATTR_PKEY_MODE, cipher & 7) | in mt76_mac_wcid_set_key() 562 FIELD_PREP(MT_WCID_ATTR_PKEY_MODE_EXT, cipher >> 3); in mt76_mac_wcid_set_key() 574 enum mt76_cipher_type cipher; in mt76_mac_shared_key_setup() local 578 cipher = mt76_mac_get_key_info(key, key_data); in mt76_mac_shared_key_setup() 579 if (cipher == MT_CIPHER_NONE && key) in mt76_mac_shared_key_setup() [all …]
|
| /linux/net/mac80211/ |
| H A D | key.c | 205 switch (key->conf.cipher) { in ieee80211_key_enable_hw_accel() 459 is_wep = new->conf.cipher == WLAN_CIPHER_SUITE_WEP40 || in ieee80211_key_replace() 460 new->conf.cipher == WLAN_CIPHER_SUITE_WEP104; in ieee80211_key_replace() 464 is_wep = old->conf.cipher == WLAN_CIPHER_SUITE_WEP40 || in ieee80211_key_replace() 465 old->conf.cipher == WLAN_CIPHER_SUITE_WEP104; in ieee80211_key_replace() 593 ieee80211_key_alloc(u32 cipher, int idx, size_t key_len, in ieee80211_key_alloc() argument 617 key->conf.cipher = cipher; in ieee80211_key_alloc() 620 switch (cipher) { in ieee80211_key_alloc() 681 if (cipher == WLAN_CIPHER_SUITE_AES_CMAC) in ieee80211_key_alloc() 748 switch (key->conf.cipher) { in ieee80211_key_free_common() [all …]
|
| /linux/drivers/net/wireless/silabs/wfx/ |
| H A D | key.c | 167 if (key->cipher == WLAN_CIPHER_SUITE_WEP40 || in wfx_add_key() 168 key->cipher == WLAN_CIPHER_SUITE_WEP104) { in wfx_add_key() 173 } else if (key->cipher == WLAN_CIPHER_SUITE_TKIP) { in wfx_add_key() 179 } else if (key->cipher == WLAN_CIPHER_SUITE_CCMP) { in wfx_add_key() 184 } else if (key->cipher == WLAN_CIPHER_SUITE_SMS4) { in wfx_add_key() 189 } else if (key->cipher == WLAN_CIPHER_SUITE_AES_CMAC) { in wfx_add_key() 193 dev_warn(wdev->dev, "unsupported key type %d\n", key->cipher); in wfx_add_key()
|
| /linux/drivers/crypto/intel/keembay/ |
| H A D | ocs-aes.h | 68 const u8 *key, const enum ocs_cipher cipher); 72 enum ocs_cipher cipher, 97 enum ocs_cipher cipher, 109 enum ocs_cipher cipher,
|