EVP_SM4_CBC(3)

NAME
EVP_sm4_cbc, EVP_sm4_ecb, EVP_sm4_cfb, EVP_sm4_cfb128, EVP_sm4_ofb, EVP_sm4_ctr - EVP SM4 cipher

SYNOPSIS
#include <openssl/evp.h>
const EVP_CIPHER *
EVP_sm4_cbc(void);
const EVP_CIPHER *
EVP_sm4_ecb(void);
const EVP_CIPHER *
EVP_sm4_cfb(void);
const EVP_CIPHER *
EVP_sm4_cfb128(void);
const EVP_CIPHER *
EVP_sm4_ofb(void);
const EVP_CIPHER *
EVP_sm4_ctr(void);

DESCRIPTION
These functions provide the SM4 blockcipher in the evp(3) framework.

All modes use a key length of 128 bits and act on blocks of 128 bits.

EVP_sm4_cfb() is an alias for EVP_sm4_cfb128(), implemented as a macro.

With an argument of "sm4" or "SM4", EVP_get_cipherbyname(3) returns EVP_sm4_cbc().

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

SEE ALSO
evp(3), EVP_EncryptInit(3)

STANDARDS
Information security technology - SM4 block cipher algorithm, National Standards of People's Republic of China, GB/T 32907-2016, August 29, 2016.

HISTORY
These functions appeared in OpenSSL 1.1.1 and have been available since OpenBSD 6.5.