关于使用openssl做AES加解密中KEY和IV长度问题

 

 

错误示例

 BIO_set_cipher(baes, EVP_aes_128_cbc(),(unsigned char*)key.c_str(), (unsigned char*)iv.c_str(), 1);

key和IV的长度不是有字符串的结尾来决定的,而是使用EVP_aes_128_cbc()算法的默认key和IV长度,传入的字符串长度不够会使用字符串后面内存(长度不够时要自己先补0在传入),存入的字符串超长部分会被截断。

 

 

参考:

https://liwugang.github.io/2019/04/21/openssl_decrypt_fail.html

posted @ 2020-11-17 10:15  mingzhang  阅读(2960)  评论(0编辑  收藏  举报