Corrected the typo From: Paramashivaiah, Sunil Hi All, I am trying to upgrade our application to use openssl 3.0 from openssl 1.0.2. I am trying to replace DES_ede3_cbc_encrypt with EVP API’s as below. DES_ede3_cbc_encrypt accepts 3 keys got from des_key_sched. But for same thing to work using EVP API we have option for only one key. EVP_EncryptInit_ex2(ctx, EVP_des_ede3_cbc(), (unsigned char *)key->v, (unsigned char *)iv->v, NULL) Please suggest if this is correct. Even for decrypt, will passing only one key to EVP_DecryptInit_ex2
work Old Code: if (des_key_sched((void *)key->v, ks1) != 0) return NULL; if (des_key_sched((void *)(key->v + 8), ks2) != 0) return NULL; if (des_key_sched((void *)(key->v + 16), ks3) != 0) return NULL; /* decryption data */ DES_ede3_cbc_encrypt((const unsigned char *)data->v, (unsigned char *)res->v, data->l, &ks1, &ks2, &ks3, (unsigned char (*)[8])iv->v, DES_ENCRYPT); New Code: EVP_EncryptInit_ex2(ctx, EVP_des_ede3_cbc(), (unsigned char *)key->v, (unsigned char *)iv->v, NULL) EVP_EncryptUpdate(ctx, (unsigned char *)res->v, &outl, (unsigned char *)data->v, data->l) EVP_EncryptFinal_ex(ctx, (unsigned char *) res->v + outl, &tmpl)
Thanks and Regards, Sunil Notice: This e-mail together with any attachments may contain information of Ribbon Communications Inc. and its Affiliates that is confidential and/or proprietary for the sole use of the intended recipient. Any review, disclosure, reliance or distribution by others or forwarding without express permission is strictly prohibited. If you are not the intended recipient, please notify the sender immediately and then delete all copies, including any attachments. |