【问题标题】:How to calculate the MD5 of a char* using C++ [duplicate]如何使用 C++ 计算 char* 的 MD5 [重复]
【发布时间】:2011-03-26 05:00:34
【问题描述】:

可能重复:
In C++, How to get MD5 hash of a file?

我目前正在使用 Ubuntu,并希望计算 char* 的 MD5。想知道是否有一个只需要包含的预安装库,还是我必须下载一个专门设计的库?

【问题讨论】:

    标签: c++ md5


    【解决方案1】:

    包含openssl/MD5.h并使用以下计算哈希

    MD5(<characters>, <length of it>, <the result(pointer)>);
    

    【讨论】:

      【解决方案2】:

      看看hashlib++Crypto API

      【讨论】:

      • 也推荐 hashlib++(如果只用于哈希)
      【解决方案3】:

      我会改写这个问题。在 C++ 的上下文中,您要求的是单个指向 char 的指针的 MD5 和,这实际上是没有意义的。

      'char *' 可以指代内存中的一个位置,该位置指代您所追求的文件内容,在这种情况下,您将需要某个地方的大小,或者它可以指以空字符结尾的字符串,或者一个帕斯卡字符串,或者,真的,其他任何东西。

      使用 ubuntu,我会做一些类似 'apt-cache search md5' 的事情,然后看看你会得到什么。在我的 debian 系统上,libgcrypt11 看起来很有趣。

      【讨论】:

      • 大多数 C/C++ 程序员都明白,通常 char * 指的是一个以 NULL 结尾的字符串。这可能意味着其他事情,但没必要那么迂腐。
      • 实际上,在 C++ 中,它可能更经常地指代任意一块内存——“char”被用作通用字节类型。通常会使用 std::string 代替。这是 C++,不是 C。
      • 别忘了,我实际上展示了如何自己找到这些信息,即使用包管理器 - 而且,我给出了一个很有希望的结果,可能有用。
      猜你喜欢
      • 1970-01-01
      • 2019-07-30
      • 1970-01-01
      • 1970-01-01
      • 2013-09-08
      • 2010-10-20
      • 2016-04-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多