小编K. *_*ath的帖子

OpenSSL链接未定义的引用'EVP_MD_CTX_new'和'... fre'

我正在尝试使用openssl库提供的哈希算法.我安装了openssl和libssl-dev.版本是1.1.0f.我尝试运行openssl.org网站的示例代码:

#include <stdio.h>

#include <openssl/evp.h>

int main(int argc, char *argv[]){
EVP_MD_CTX *mdctx;
const EVP_MD *md;
char mess1[] = "Test Message\n";
char mess2[] = "Hello World\n";
unsigned char md_value[EVP_MAX_MD_SIZE];
int md_len, i;

if(!argv[1]) {
    printf("Usage: mdtest digestname\n");
    exit(1);
 }

md = EVP_get_digestbyname(argv[1]);

if(!md) {
    printf("Unknown message digest %s\n", argv[1]);
    exit(1);
}

mdctx = EVP_MD_CTX_new();
EVP_DigestInit_ex(mdctx, md, NULL);
EVP_DigestUpdate(mdctx, mess1, strlen(mess1));
EVP_DigestUpdate(mdctx, mess2, strlen(mess2));
EVP_DigestFinal_ex(mdctx, md_value, &md_len);
EVP_MD_CTX_free(mdctx);

printf("Digest is: ");
for (i = 0; i < md_len; i++)
    printf("%02x", md_value[i]);
printf("\n"); …
Run Code Online (Sandbox Code Playgroud)

c linux linker openssl

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

c ×1

linker ×1

linux ×1

openssl ×1