OpenBSD manual page server

Manual Page Search Parameters

EVP_DES_CBC(3) Library Functions Manual EVP_DES_CBC(3)

EVP_des_cbc, EVP_des_cfb, EVP_des_cfb1, EVP_des_cfb8, EVP_des_cfb64, EVP_des_ecb, EVP_des_ofb, EVP_des_ede, EVP_des_ede_cbc, EVP_des_ede_cfb, EVP_des_ede_cfb64, EVP_des_ede_ecb, EVP_des_ede_ofb, EVP_des_ede3, EVP_des_ede3_cbc, EVP_des_ede3_cfb, EVP_des_ede3_cfb1, EVP_des_ede3_cfb8, EVP_des_ede3_cfb64, EVP_des_ede3_ecb, EVP_des_ede3_ofb, EVP_desx_cbcEVP DES cipher

#include <openssl/evp.h>

const EVP_CIPHER *
EVP_des_cbc(void);

const EVP_CIPHER *
EVP_des_cfb(void);

const EVP_CIPHER *
EVP_des_cfb1(void);

const EVP_CIPHER *
EVP_des_cfb8(void);

const EVP_CIPHER *
EVP_des_cfb64(void);

const EVP_CIPHER *
EVP_des_ecb(void);

const EVP_CIPHER *
EVP_des_ofb(void);

const EVP_CIPHER *
EVP_des_ede(void);

const EVP_CIPHER *
EVP_des_ede_cbc(void);

const EVP_CIPHER *
EVP_des_ede_cfb(void);

const EVP_CIPHER *
EVP_des_ede_cfb64(void);

const EVP_CIPHER *
EVP_des_ede_ecb(void);

const EVP_CIPHER *
EVP_des_ede_ofb(void);

const EVP_CIPHER *
EVP_des_ede3(void);

const EVP_CIPHER *
EVP_des_ede3_cbc(void);

const EVP_CIPHER *
EVP_des_ede3_cfb(void);

const EVP_CIPHER *
EVP_des_ede3_cfb1(void);

const EVP_CIPHER *
EVP_des_ede3_cfb8(void);

const EVP_CIPHER *
EVP_des_ede3_cfb64(void);

const EVP_CIPHER *
EVP_des_ede3_ecb(void);

const EVP_CIPHER *
EVP_des_ede3_ofb(void);

const EVP_CIPHER *
EVP_desx_cbc(void);

These functions provide the DES encryption algorithm in the evp(3) framework. DES is a block cipher operating on 64 bit blocks. The key length to be used for EVP_EncryptInit(3) is 64 bits. However, only 56 of these bits are used in the encryption algorithm. The least significant bit in each of the eight bytes is only used for checking parity. Using this algorithm is discouraged because the short key length makes it vulnerable to brute force attacks.

(), (), (), (), (), and () provide DES in CBC, CFB with 1-bit shift, CFB with 8-bit shift, CFB with 64-bit shift, ECB, and OFB modes. () is an alias for EVP_des_cfb64(), implemented as a macro.

(), (), (), and () provide two key triple DES in CBC, CFB with 64-bit shift, ECB, and OFB modes. () is an alias for EVP_des_ede_cfb64(), implemented as a macro. () is an alias for EVP_des_ede_ecb().

(), (), (), (), (), () provide three key triple DES in CBC, CFB with 1-bit shift, CFB with 8-bit shift, CFB with 64-bit shift, ECB, and OFB modes. () is an alias for EVP_des_ede3_cfb64(), implemented as a macro. () is an alias for EVP_des_ede3_ecb().

() provides the DES-X encryption algorithm in CBC mode. It uses a key length of 128 bits and acts on blocks of 128 bits.

These functions return an EVP_CIPHER structure that provides the implementation of the symmetric cipher.

evp(3), EVP_EncryptInit(3)

EVP_des_cbc(), EVP_des_cfb(), EVP_des_ecb(), EVP_des_ofb(), EVP_des_ede(), EVP_des_ede_cbc(), EVP_des_ede_cfb(), EVP_des_ede_ofb(), EVP_des_ede3(), EVP_des_ede3_cbc(), EVP_des_ede3_cfb(), and EVP_des_ede3_ofb() first appeared in SSLeay 0.5.1. EVP_desx_cbc() first appeared in SSLeay 0.6.2. These functions have been available since OpenBSD 2.4.

EVP_des_ede_ecb() and EVP_des_ede3_ecb() first appeared in OpenSSL 0.9.7 and have been available since OpenBSD 3.2.

EVP_des_cfb1(), EVP_des_cfb8(), EVP_des_cfb64(), EVP_des_ede_cfb64(), EVP_des_ede3_cfb1(), EVP_des_ede3_cfb8(), and EVP_des_ede3_cfb64() first appeared in OpenSSL 0.9.7e and have been available since OpenBSD 3.8.

November 9, 2024 OpenBSD-current