调用'EVP_DigestFinal'没有匹配函数 - 在C++中使用 openssl lib
No matching function for call to 'EVP_DigestFinal' - Using openssl lib in C++
我已经成功地将openssl
开发库集成到main.cpp
文件中。目前包括openssl/evp.h
。
我可以成功使用EVP_DigestInit
, EVP_DigestUpdate
功能,没有任何错误。但是如果我尝试调用EVP_DigestFinal
,它会给出以下错误:
No matching function for call to 'EVP_DigestFinal'
然而,函数是在同一个头文件evp.h
中定义的。我该怎么做才能使用这个函数呢?谢谢你的帮助。
相关代码:
EVP_MD_CTX ctx;
char ch[128];
int val = 128;
EVP_DigestFinal(&ctx, ch, val);
从我在OpenSSL.org上找到的,签名是
int EVP_DigestFinal(EVP_MD_CTX *ctx, unsigned char *md, int *s);
要匹配,第二个参数需要unsigned char
,第三个参数需要地址,类似于
EVP_MD_CTX ctx;
unsigned char ch[128];
_______^
int val = 128;
EVP_DigestFinal(&ctx, ch, &val);
__________________________^
相关文章:
- Openssl 1.1.1d无效使用不完整的类型"struct dsa_st"
- 如何在openssl-ecc中获取十六进制格式的私钥
- LINK 尝试使用 OpenSSL evp aes 256 c++ 时出错
- 如何在OpenSSL中从configuration.h.in获取configuration.h
- OpenSSL TLS服务器-使用客户端证书白名单
- 通过 Openssl 命令行加密,通过 c++ 解密
- 使用已使用 java 编码的 openssl 解码数据
- OpenSSL没有共享密码
- OpenSSL 解密功能无法正常工作
- OpenSSL BIO and SSL_read
- 如何在OpenSSL库的名称中添加后缀'd'?
- 避免碎片化的ClientHellos with OpenSSL (DTLS)
- Boost.Asio/OpenSSL HTTPS GET certificate trouble
- 使用 OpenSSL 从内存中读取原始 SSL/TLS 证书
- 验证openssl c++中的签名,这是由JAVA DSA签名的?
- OpenSSL: EC_POINT_set_compressed_coordinates_GFp segfault
- 在 C/C++ 中加载 OpenSSL 自定义引擎
- 我的应用程序无法在安卓上使用OpenSSL进行链接
- OpenSSL fips in C++ wrapper Library 如何?错误:指纹不匹配
- 比较两个公钥与OpenSSL API