1e71b7053SJung-uk Kim=pod 2e71b7053SJung-uk Kim 3e71b7053SJung-uk Kim=head1 NAME 4e71b7053SJung-uk Kim 5e71b7053SJung-uk KimEVP_rc2_cbc, 6e71b7053SJung-uk KimEVP_rc2_cfb, 7c9cf7b5cSJung-uk KimEVP_rc2_cfb64, 8e71b7053SJung-uk KimEVP_rc2_ecb, 9e71b7053SJung-uk KimEVP_rc2_ofb, 10e71b7053SJung-uk KimEVP_rc2_40_cbc, 11e71b7053SJung-uk KimEVP_rc2_64_cbc 12e71b7053SJung-uk Kim- EVP RC2 cipher 13e71b7053SJung-uk Kim 14e71b7053SJung-uk Kim=head1 SYNOPSIS 15e71b7053SJung-uk Kim 16e71b7053SJung-uk Kim #include <openssl/evp.h> 17e71b7053SJung-uk Kim 18b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_cbc(void); 19b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_cfb(void); 20b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_cfb64(void); 21b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_ecb(void); 22b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_ofb(void); 23b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_40_cbc(void); 24b077aed3SPierre Pronchery const EVP_CIPHER *EVP_rc2_64_cbc(void); 25e71b7053SJung-uk Kim 26e71b7053SJung-uk Kim=head1 DESCRIPTION 27e71b7053SJung-uk Kim 28e71b7053SJung-uk KimThe RC2 encryption algorithm for EVP. 29e71b7053SJung-uk Kim 30e71b7053SJung-uk Kim=over 4 31e71b7053SJung-uk Kim 32e71b7053SJung-uk Kim=item EVP_rc2_cbc(), 33e71b7053SJung-uk KimEVP_rc2_cfb(), 34c9cf7b5cSJung-uk KimEVP_rc2_cfb64(), 35e71b7053SJung-uk KimEVP_rc2_ecb(), 36e71b7053SJung-uk KimEVP_rc2_ofb() 37e71b7053SJung-uk Kim 38e71b7053SJung-uk KimRC2 encryption algorithm in CBC, CFB, ECB and OFB modes respectively. This is a 39e71b7053SJung-uk Kimvariable key length cipher with an additional parameter called "effective key 40e71b7053SJung-uk Kimbits" or "effective key length". By default both are set to 128 bits. 41e71b7053SJung-uk Kim 42e71b7053SJung-uk Kim=item EVP_rc2_40_cbc(), 43e71b7053SJung-uk KimEVP_rc2_64_cbc() 44e71b7053SJung-uk Kim 45e71b7053SJung-uk KimRC2 algorithm in CBC mode with a default key length and effective key length of 46e71b7053SJung-uk Kim40 and 64 bits. 47e71b7053SJung-uk Kim 48e71b7053SJung-uk KimWARNING: these functions are obsolete. Their usage should be replaced with the 49e71b7053SJung-uk KimEVP_rc2_cbc(), EVP_CIPHER_CTX_set_key_length() and EVP_CIPHER_CTX_ctrl() 50e71b7053SJung-uk Kimfunctions to set the key length and effective key length. 51e71b7053SJung-uk Kim 52e71b7053SJung-uk Kim=back 53e71b7053SJung-uk Kim 54b077aed3SPierre Pronchery=head1 NOTES 55b077aed3SPierre Pronchery 56b077aed3SPierre ProncheryDevelopers should be aware of the negative performance implications of 57b077aed3SPierre Proncherycalling these functions multiple times and should consider using 58*ad991e4cSEd MasteL<EVP_CIPHER_fetch(3)> with L<EVP_CIPHER-RC2(7)> instead. 59b077aed3SPierre ProncherySee L<crypto(7)/Performance> for further information. 60b077aed3SPierre Pronchery 61e71b7053SJung-uk Kim=head1 RETURN VALUES 62e71b7053SJung-uk Kim 63e71b7053SJung-uk KimThese functions return an B<EVP_CIPHER> structure that contains the 64e71b7053SJung-uk Kimimplementation of the symmetric cipher. See L<EVP_CIPHER_meth_new(3)> for 65e71b7053SJung-uk Kimdetails of the B<EVP_CIPHER> structure. 66e71b7053SJung-uk Kim 67e71b7053SJung-uk Kim=head1 SEE ALSO 68e71b7053SJung-uk Kim 69e71b7053SJung-uk KimL<evp(7)>, 70e71b7053SJung-uk KimL<EVP_EncryptInit(3)>, 71e71b7053SJung-uk KimL<EVP_CIPHER_meth_new(3)> 72e71b7053SJung-uk Kim 73e71b7053SJung-uk Kim=head1 COPYRIGHT 74e71b7053SJung-uk Kim 75b077aed3SPierre ProncheryCopyright 2017-2023 The OpenSSL Project Authors. All Rights Reserved. 76e71b7053SJung-uk Kim 77b077aed3SPierre ProncheryLicensed under the Apache License 2.0 (the "License"). You may not use 78e71b7053SJung-uk Kimthis file except in compliance with the License. You can obtain a copy 79e71b7053SJung-uk Kimin the file LICENSE in the source distribution or at 80e71b7053SJung-uk KimL<https://www.openssl.org/source/license.html>. 81e71b7053SJung-uk Kim 82e71b7053SJung-uk Kim=cut 83e71b7053SJung-uk Kim 84