可以使用 OpenSSL 库中提供的函数实现。具体使用步骤为:
- 引入头文件
#include <openssl/md5.h>
- 定义字符数组存储加密结果,如
unsigned char result[MD5_DIGEST_LENGTH];
- 调用函数
MD5(unsigned char *data, size_t len, unsigned char *result)
进行加密,其中data
表示待加密的数据,len
表示数据长度,result
表示加密结果存储的数组。
完整代码如下:
代码语言:c复制/**
* @author: 冲哥 @C语言中文社区
* @date: 2023/03/20
* @description:C 语言代码使用 md5 实现加密
*/
#include <stdio.h>
#include <string.h>
#include <openssl/md5.h>
int main(int argc, char **argv) {
unsigned char digest[MD5_DIGEST_LENGTH];
char string[] = "Hello, world!n";
size_t len = strlen(string);
MD5((unsigned char*)&string, len, (unsigned char*)&digest);
for (int i = 0; i < MD5_DIGEST_LENGTH; i ) {
printf("x", digest[i]);
}
printf("n");
return 0;
}