gpt4 book ai didi

c - openssl 0.9.8 EVP EVP_PKEY_CTX 未定义

转载 作者:太空宇宙 更新时间:2023-11-04 02:50:27 33 4
gpt4 key购买 nike

我正在使用 openssl 0.9.8(目前无法更改为更高版本)。我正在使用 openssl evp api(evp - 高级加密函数)用 aes 加密数据,用 rsa 加密 key 。

调用:

EVP_PKEY_CTX *ctx = EVP_PKEY_CTX_new_id(EVP_PKEY_RSA, NULL);

导致编译错误:

error: 'EVP_PKEY_CTX' was not declared in this scope

根据这个link

VP_PKEY_CTX is only in 1.0.0 and later.

但是 evp 已经存在于 0.9.8 中。那么我应该为我的指针变量 *ctx 使用什么类型而不是 EVP_PKEY_CTX?

最佳答案

But evp allready existed in 0.9.8. so what type should i use instead of EVP_PKEY_CTX for my pointer variable *ctx?

EVP_PKEY 和 friend 可能在 OpenSSL 0.9.8 中可用。例如:

$ grep -R EVP_PKEY_new *
apps/req.c: if ((pkey=EVP_PKEY_new()) == NULL) goto end;
apps/apps.c: pkey = EVP_PKEY_new();
crypto/evp/p_lib.c:EVP_PKEY *EVP_PKEY_new(void)
...

但我看不到 EVP_PKEY_CTX_new_idEVP_PKEY_CTX 在 OpenSSL 0.9.8 中可用的位置。这与文档告诉您的内容一致。

$ grep -R EVP_PKEY_CTX_new_id *
$

$ grep -R EVP_PKEY_CTX *
crypto/cms/cms_sd.c: if (EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_SIGN,
crypto/cms/cms_sd.c: if (EVP_PKEY_CTX_ctrl(pctx, -1, EVP_PKEY_OP_SIGN,
$

关于c - openssl 0.9.8 EVP EVP_PKEY_CTX 未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22712162/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com