在解密密码时,EVP_CipherInit_ex在未使用时崩溃 代码的一部分在Android /iOS公共本机库C++代码上。p>

在解密密码时,EVP_CipherInit_ex在未使用时崩溃 代码的一部分在Android /iOS公共本机库C++代码上。p>,android,openssl,native,evp-cipher,Android,Openssl,Native,Evp Cipher,链接是针对OpenSSL 1.1.1的 在1.0或之前的版本中,我们曾经拥有EVP\u CIPHER\u CTX CTX(不是指针),我们曾经拥有EVP\u CipherInit\u ex,但是在关于使用EVP和1.1.1版本以及官方版本解密的各种帖子之后,我们删除了它 在解密密码的方法中,使用以下EVP序列 EVP_CIPHER_CTX *ctx; ctx = EVP_CIPHER_CTX_new() EVP_DecryptInit_ex(ctx, EVP_aes_256_cbc(), NUL

链接是针对OpenSSL 1.1.1的

在1.0或之前的版本中,我们曾经拥有
EVP\u CIPHER\u CTX CTX
(不是指针),我们曾经拥有
EVP\u CipherInit\u ex
,但是在关于使用EVP和1.1.1版本以及官方版本解密的各种帖子之后,我们删除了它

在解密密码的方法中,使用以下EVP序列

EVP_CIPHER_CTX *ctx;
ctx = EVP_CIPHER_CTX_new()
EVP_DecryptInit_ex(ctx, EVP_aes_256_cbc(), NULL, NULL, NULL)
EVP_DecryptInit_ex(ctx, EVP_aes_256_cbc(), NULL, ..., ...)
EVP_DecryptUpdate(ctx, decryptedPassword, ..., encrypted_data, length)
EVP_DecryptFinal_ex(ctx, ... , ...)
EVP_CIPHER_CTX_free(ctx);
偶尔会出现崩溃,回溯是单个密码引用,如下所示

#00 pc 0007253c  /data/app/com.xxxxxx==/lib/arm/xxxxxxx.so (EVP_CipherInit_ex+48)
所以问题是,是否应该使用
EVP\u CipherInit\u ex

还有,怎么可能在没有使用它的情况下发生碰撞呢