1*89729f59Sschwarze.\" $OpenBSD: EVP_sm4_cbc.3,v 1.2 2023/11/16 20:27:43 schwarze Exp $ 279dafaaeSschwarze.\" full merge up to: OpenSSL 87103969 Oct 1 14:11:57 2018 -0700 379dafaaeSschwarze.\" 479dafaaeSschwarze.\" Copyright (c) 2017 Ribose Inc 579dafaaeSschwarze.\" Copyright (c) 2019 Ingo Schwarze <schwarze@openbsd.org> 679dafaaeSschwarze.\" The original version of this file 779dafaaeSschwarze.\" was written by Ronald Tse <ronald.tse@ribose.com>. 879dafaaeSschwarze.\" 979dafaaeSschwarze.\" Permission to use, copy, modify, and/or distribute this software for any 1079dafaaeSschwarze.\" purpose with or without fee is hereby granted, provided that the above 1179dafaaeSschwarze.\" copyright notice and this permission notice appear in all copies. 1279dafaaeSschwarze.\" 1379dafaaeSschwarze.\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHORS DISCLAIM ALL WARRANTIES 1479dafaaeSschwarze.\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 1579dafaaeSschwarze.\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR 1679dafaaeSschwarze.\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 1779dafaaeSschwarze.\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 1879dafaaeSschwarze.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 1979dafaaeSschwarze.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 2079dafaaeSschwarze.\" 21*89729f59Sschwarze.Dd $Mdocdate: November 16 2023 $ 2279dafaaeSschwarze.Dt EVP_SM4_CBC 3 2379dafaaeSschwarze.Os 2479dafaaeSschwarze.Sh NAME 2579dafaaeSschwarze.Nm EVP_sm4_cbc , 2679dafaaeSschwarze.Nm EVP_sm4_ecb , 2779dafaaeSschwarze.Nm EVP_sm4_cfb , 2879dafaaeSschwarze.Nm EVP_sm4_cfb128 , 2979dafaaeSschwarze.Nm EVP_sm4_ofb , 3079dafaaeSschwarze.Nm EVP_sm4_ctr 3179dafaaeSschwarze.Nd EVP SM4 cipher 3279dafaaeSschwarze.Sh SYNOPSIS 3379dafaaeSschwarze.In openssl/evp.h 3479dafaaeSschwarze.Ft const EVP_CIPHER * 3579dafaaeSschwarze.Fn EVP_sm4_cbc void 3679dafaaeSschwarze.Ft const EVP_CIPHER * 3779dafaaeSschwarze.Fn EVP_sm4_ecb void 3879dafaaeSschwarze.Ft const EVP_CIPHER * 3979dafaaeSschwarze.Fn EVP_sm4_cfb void 4079dafaaeSschwarze.Ft const EVP_CIPHER * 4179dafaaeSschwarze.Fn EVP_sm4_cfb128 void 4279dafaaeSschwarze.Ft const EVP_CIPHER * 4379dafaaeSschwarze.Fn EVP_sm4_ofb void 4479dafaaeSschwarze.Ft const EVP_CIPHER * 4579dafaaeSschwarze.Fn EVP_sm4_ctr void 4679dafaaeSschwarze.Sh DESCRIPTION 4779dafaaeSschwarzeThese functions provide the SM4 blockcipher in the 4879dafaaeSschwarze.Xr evp 3 4979dafaaeSschwarzeframework. 5079dafaaeSschwarze.Pp 5179dafaaeSschwarzeAll modes use a key length of 128 bits and act on blocks of 128 5279dafaaeSschwarzebits. 5379dafaaeSschwarze.Pp 5479dafaaeSschwarze.Fn EVP_sm4_cfb 5579dafaaeSschwarzeis an alias for 56*89729f59Sschwarze.Fn EVP_sm4_cfb128 , 57*89729f59Sschwarzeimplemented as a macro. 5879dafaaeSschwarze.Pp 5979dafaaeSschwarzeWith an argument of 6079dafaaeSschwarze.Qq sm4 6179dafaaeSschwarzeor 6279dafaaeSschwarze.Qq SM4 , 6379dafaaeSschwarze.Xr EVP_get_cipherbyname 3 6479dafaaeSschwarzereturns 6579dafaaeSschwarze.Fn EVP_sm4_cbc . 6679dafaaeSschwarze.Sh RETURN VALUES 6779dafaaeSschwarzeThese functions return an 6879dafaaeSschwarze.Vt EVP_CIPHER 6979dafaaeSschwarzestructure that provides the implementation of the symmetric cipher. 7079dafaaeSschwarze.Sh SEE ALSO 7179dafaaeSschwarze.Xr evp 3 , 7279dafaaeSschwarze.Xr EVP_EncryptInit 3 7379dafaaeSschwarze.Sh STANDARDS 7479dafaaeSschwarze.Rs 7579dafaaeSschwarze.%T Information security technology - SM4 block cipher algorithm 7679dafaaeSschwarze.%I National Standards of People's Republic of China 7779dafaaeSschwarze.%N GB/T 32907-2016 7879dafaaeSschwarze.%D August 29, 2016 7979dafaaeSschwarze.Re 8079dafaaeSschwarze.Sh HISTORY 8179dafaaeSschwarzeThese functions appeared in OpenSSL 1.1.1 and have been available since 8279dafaaeSschwarze.Ox 6.5 . 83