EVP_MD_CTX md_ctx 转 unsigned char openssl
要将 EVP_MD_CTX md_ctx 转换为 unsigned char 数组,可以使用 EVP_DigestFinal_ex 函数来完成。这个函数用于从 EVP_MD_CTX 对象中提取最终的消息摘要并存储在指定的 unsigned char 数组中。
以下是一个示例代码:
EVP_MD_CTX* md_ctx = EVP_MD_CTX_new();
// 初始化 md_ctx 对象
unsigned char digest[EVP_MAX_MD_SIZE];
unsigned int digest_len;
EVP_DigestFinal_ex(md_ctx, digest, &digest_len);
// 将 md_ctx 中的消息摘要复制到 digest 数组中
EVP_MD_CTX_free(md_ctx);
// 释放 md_ctx 对象
在上面的代码中,digest 数组用于存储消息摘要,digest_len 变量用于存储消息摘要的长度。最后,使用 EVP_MD_CTX_free 函数释放 md_ctx 对象。
注意:在使用 EVP_DigestFinal_ex 函数之前,需要确保已经通过 EVP_DigestInit_ex 函数进行了相应的初始化操作,并通过 EVP_DigestUpdate 函数提供了足够的输入数据
原文地址: http://www.cveoy.top/t/topic/iFf1 著作权归作者所有。请勿转载和采集!