1

我了解 openssl ```ENGINE 和 evp 的工作原理,以及如何在 libcrypto C 语言编程中使用引擎(对纯数据应用摘要/加密/签名等)。

现在我想学习如何为 SSL 函数背后的所有加密过程应用引擎,包括密码套装。似乎没有用于 SSL 函数的参数或初始化函数来指定ENGINEEVP_EncryptInit_ex() 等中的内容。

我知道 libssl 中的加密过程是基于 libcrypto 的,所以也许我可以使用相同的方式,即在调用任何 SSL 函数之前指定默认引擎:

    ENGINE_load_dynamic();
    foo_engine = ENGINE_by_id("foo");
    int init_res = ENGINE_init(foo_engine);
    ENGINE_set_default(foo_engine, ENGINE_METHOD_ALL);

    SSL_CTX_new()
    ......

它有效吗?

或者我应该加载 openssl.cnf 吗?虽然我觉得是一样的。

4

0 回答 0