sha256 c语言实现
时间: 2023-11-25 10:06:49 浏览: 203
以下是使用 OpenSSL 库实现 SHA256 的 C 代码示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <openssl/sha.h>
int main(int argc, char *argv[]) {
if (argc != 2) {
fprintf(stderr, "Usage: %s <string>\n", argv[0]);
return 1;
}
char *str = argv[1];
unsigned char hash[SHA256_DIGEST_LENGTH];
SHA256_CTX sha256;
SHA256_Init(&sha256);
SHA256_Update(&sha256, str, strlen(str));
SHA256_Final(hash, &sha256);
printf("SHA256 hash of \"%s\":\n", str);
for (int i = 0; i < SHA256_DIGEST_LENGTH; i++) {
printf("%02x", hash[i]);
}
printf("\n");
return 0;
}
```
该示例接受一个字符串作为命令行参数,计算其 SHA256 哈希值,并将哈希值以十六进制字符串的形式输出。请注意,此示例需要 OpenSSL 库的支持。
阅读全文