当我尝试使用OpenSSL中的CMS解密S/MIME加密消息时,解密方法返回值为0,表示未成功。
OpenSSL.org表示:
CMS_decrypt()成功返回1,失败返回0。可以从ERR_get_error(3)获取错误信息。
当我运行以下命令时...
有人有关于这里出了什么问题的建议吗?谢谢。
OpenSSL.org表示:
CMS_decrypt()成功返回1,失败返回0。可以从ERR_get_error(3)获取错误信息。
当我运行以下命令时...
out = BIO_new(BIO_s_mem());
if (!out)
assert(false);
int error = CMS_decrypt(cms, rkey, rcert, out, NULL, 0);
if (!error) {
fprintf(stderr, "Error Decrypting Data\n");
printf("error code: %d\n", ERR_get_error());
ERR_print_errors_fp(stderr);
assert(false);
}
在这段代码中,error变量的值为0,这意味着发生了错误,并且从ERR_get_error()
返回的错误代码也是0。此外,ERR_print_errors_fp()
没有输出任何内容,这意味着没有发生错误。
以上代码的输出:
Error Decrypting Data
error code: 0
Assertion failed: (false)
有人有关于这里出了什么问题的建议吗?谢谢。