作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的应用程序开发一个示例 OpenSSL 引擎。
#include <openssl/engine.h>
static const char *engine_id = "sample";
static const char *engine_name = "developed by Devang";
static int engine_init(ENGINE *e);
static EVP_PKEY *load_key(ENGINE *e, const char *id, UI_METHOD *ui, void *cb);
int bind_helper(ENGINE*e, const char *id) {
if(!ENGINE_set_id(e, engine_id) ||
!ENGINE_set_init_function(e, engine_init) ||
!ENGINE_set_load_privkey_function(e, load_key))
return 0;
return 1;
}
IMPLEMENT_DYNAMIC_CHECK_FN(); IMPLEMENT_DYANMIC_BIND_FN(bind_helper);
static int engine_init(ENGINE *e)
{
printf("In engine_init \n");
}
static EVP_PKEY *load_key(ENGINE *e, const char *id, UI_METHOD *ui, void *cb) {
printf(" In load_key function\n");
}
#include <openssl/engine.h>
int main(void)
{
ENGINE_load_dynamic();
ENGINE *en = ENGINE_by_id("sample");
ENGINE_init(en);
ENGINE_load_private_key(en, NULL, UI_OpenSSL(), NULL);
}
In engine_init
最佳答案
尝试从 engine_init() 函数返回 1。 Openssl 会认为您的引擎未能初始化,否则不会使用进一步的函数引用。
即:它认为您的“硬件加速器”没有插入或其他类型的故障。
static int engine_init(ENGINE *e)
{
printf("In engine_init \n");
return 1;
}
我将此添加到您的示例中,并从您正在寻找的 load_key() 获得了输出。
关于openssl - 链接到 OpenSSL 函数中的 ENGINE_load_private_key,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47750827/
我正在为我的应用程序开发一个示例 OpenSSL 引擎。 #include static const char *engine_id = "sample"; static const char *e
在将 Windows keystore 用于 OpenSSL 和客户端证书的过程中,我发现了这篇文章: https://anexdev.blogspot.com/2018/10/how-to-send
我是一名优秀的程序员,十分优秀!