使用 OpenSSL 库在 C++ 中生成 SHA 哈希

Generate SHA hash in C++ using OpenSSL library(使用 OpenSSL 库在 C++ 中生成 SHA 哈希)

本文介绍了使用 OpenSSL 库在 C++ 中生成 SHA 哈希的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用 OpenSSL 库生成 SHA1 或 SHA2 哈希?

How can I generate SHA1 or SHA2 hashes using the OpenSSL libarary?

我搜索了谷歌,找不到任何函数或示例代码.

I searched google and could not find any function or example code.

推荐答案

从命令行,很简单:

printf "compute sha1" | openssl sha1

你可以像这样调用这个库:

You can invoke the library like this:

#include <stdio.h>
#include <string.h>
#include <openssl/sha.h>

int main()
{
    unsigned char ibuf[] = "compute sha1";
    unsigned char obuf[20];

    SHA1(ibuf, strlen(ibuf), obuf);

    int i;
    for (i = 0; i < 20; i++) {
        printf("%02x ", obuf[i]);
    }
    printf("
");

    return 0;
}

这篇关于使用 OpenSSL 库在 C++ 中生成 SHA 哈希的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用 OpenSSL 库在 C++ 中生成 SHA 哈希

基础教程推荐