Home | History | Annotate | Line # | Download | only in man7
      1 =pod
      2 
      3 =head1 NAME
      4 
      5 EVP_CIPHER-SM4 - The SM4 EVP_CIPHER implementations
      6 
      7 =head1 DESCRIPTION
      8 
      9 Support for SM4 symmetric encryption using the B<EVP_CIPHER> API.
     10 
     11 =head2 Algorithm Names
     12 
     13 The following algorithms are available in the default provider:
     14 
     15 =over 4
     16 
     17 =item "SM4-CBC:SM4"
     18 
     19 =item "SM4-ECB"
     20 
     21 =item "SM4-CTR"
     22 
     23 =item "SM4-OFB" or "SM4-OFB128"
     24 
     25 =item "SM4-CFB" or "SM4-CFB128"
     26 
     27 =item "SM4-GCM"
     28 
     29 =item "SM4-CCM"
     30 
     31 =item "SM4-XTS"
     32 
     33 =back
     34 
     35 =head2 Parameters
     36 
     37 This implementation supports the parameters described in
     38 L<EVP_EncryptInit(3)/PARAMETERS>.
     39 
     40 =head1 NOTES
     41 
     42 The SM4-XTS implementation allows streaming to be performed, but each
     43 L<EVP_EncryptUpdate(3)> or L<EVP_DecryptUpdate(3)> call requires each input
     44 to be a multiple of the blocksize. Only the final EVP_EncryptUpdate() or
     45 EVP_DecryptUpdate() call can optionally have an input that is not a multiple
     46 of the blocksize but is larger than one block. In that case ciphertext
     47 stealing (CTS) is used to fill the block.
     48 
     49 =head1 SEE ALSO
     50 
     51 L<provider-cipher(7)>, L<OSSL_PROVIDER-default(7)>
     52 
     53 =head1 COPYRIGHT
     54 
     55 Copyright 2021 The OpenSSL Project Authors. All Rights Reserved.
     56 
     57 Licensed under the Apache License 2.0 (the "License").  You may not use
     58 this file except in compliance with the License.  You can obtain a copy
     59 in the file LICENSE in the source distribution or at
     60 L<https://www.openssl.org/source/license.html>.
     61 
     62 =cut
     63