2
0

EVP_sm4_cbc.pod 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. =pod
  2. =head1 NAME
  3. EVP_sm4_cbc,
  4. EVP_sm4_ecb,
  5. EVP_sm4_cfb,
  6. EVP_sm4_cfb128,
  7. EVP_sm4_ofb,
  8. EVP_sm4_ctr
  9. - EVP SM4 cipher
  10. =head1 SYNOPSIS
  11. #include <openssl/evp.h>
  12. const EVP_CIPHER *EVP_sm4_cbc(void);
  13. const EVP_CIPHER *EVP_sm4_ecb(void);
  14. const EVP_CIPHER *EVP_sm4_cfb(void);
  15. const EVP_CIPHER *EVP_sm4_cfb128(void);
  16. const EVP_CIPHER *EVP_sm4_ofb(void);
  17. const EVP_CIPHER *EVP_sm4_ctr(void);
  18. =head1 DESCRIPTION
  19. The SM4 blockcipher (GB/T 32907-2016) for EVP.
  20. All modes below use a key length of 128 bits and acts on blocks of 128 bits.
  21. =over 4
  22. =item EVP_sm4_cbc(),
  23. EVP_sm4_ecb(),
  24. EVP_sm4_cfb(),
  25. EVP_sm4_cfb128(),
  26. EVP_sm4_ofb(),
  27. EVP_sm4_ctr()
  28. The SM4 blockcipher with a 128-bit key in CBC, ECB, CFB, OFB and CTR modes
  29. respectively.
  30. =back
  31. =head1 NOTES
  32. Developers should be aware of the negative performance implications of
  33. calling these functions multiple times and should consider using
  34. L<EVP_CIPHER_fetch(3)> with L<EVP_CIPHER-SM4(7)> instead.
  35. See L<crypto(7)/Performance> for further information.
  36. =head1 RETURN VALUES
  37. These functions return a B<EVP_CIPHER> structure that contains the
  38. implementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for
  39. details of the B<EVP_CIPHER> structure.
  40. =head1 SEE ALSO
  41. L<evp(7)>,
  42. L<EVP_EncryptInit(3)>,
  43. L<EVP_CIPHER_meth_new(3)>
  44. =head1 COPYRIGHT
  45. Copyright 2017-2023 The OpenSSL Project Authors. All Rights Reserved.
  46. Copyright 2017 Ribose Inc. All Rights Reserved.
  47. Licensed under the Apache License 2.0 (the "License"). You may not use
  48. this file except in compliance with the License. You can obtain a copy
  49. in the file LICENSE in the source distribution or at
  50. L<https://www.openssl.org/source/license.html>.
  51. =cut