博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VC++6 0环境下利用openssl编程入门(以计算md5值为例)的全解析------openssl库直接给大家弄好,
阅读量:4105 次
发布时间:2019-05-25

本文共 1578 字,大约阅读时间需要 5 分钟。

分享一下我老师大神的人工智能教程!零基础,通俗易懂!

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

        做软件开发的人, 基本都应该听说过大名鼎鼎的开源软件openssl, 下面, 我们来入门openssl编程吧。 初学者如果想了解openssl编程, 最不喜欢是生气: 还没有懂怎么利用openssl是怎么个玩法, 就不得不学openssl本身的编译。 在本文中, 我直接省略如何编译openssl这个过程, 直接把编译的最后结果(库和头文件)提供给大家, 希望大家能用得上。先用openssl来玩一下, 感觉有趣的话, 再去学学openssl的编译。

       下面来进行详细的介绍, 介绍openssl的使用(而不是openssl的库的编译):

        1. 首先在我的博客资源中下载Win32OpenSSL-1_0_1.rar, 然后解压得到Win32OpenSSL-1_0_1.exe, 对了, 我马上就上传到我的csdn资源中, 免费提供, 不需要积分哈, 不要害怕, 动起来。

        2. 安装Win32OpenSSL-1_0_1.exe, 主要是为了得到编译好的openssl库和头文件。 安装后, 在安装目录中有OpenSSL-Win32这个文件夹, 我是直接安装在C盘里面的, 所以其目录是:C:\OpenSSL-Win32,  在这个C:\OpenSSL-Win32目录下, 有很多openssl的库和头文件, 截图给大家看看, 方便大家核对:

        

        3. 在VC++6.0中建立代码文件main.cpp(这个过程我就不讲了), 随后要记得增加对C:\OpenSSL-Win32目录下的库和头文件的索引, 方法是, 选择菜单栏中的"Tools", 然后选择“Options...”, 然后添加索引, 如图:

        好了, 至此为止, VC++就增加了对openssl的索引, 前戏已经搞完, 可以开始做正事了。

     4. man.cpp中的C++代码为:

#include 
#include
// 如果你直接拷贝我的程序运行, 那注定找不到md5.h#pragma comment(lib, "libeay32.lib")#pragma comment(lib, "ssleay32.lib")  // 在本程序中, 可以注释掉这句using namespace std;int main(){    const char *data = "hello world";   // 原始数据    unsigned char md[16] = {
0}; MD5_CTX ctx;    MD5_Init(&ctx);    MD5_Update(&ctx, data, strlen(data));    MD5_Final(md, &ctx);     int i = 0; char buf[33] = {
0};    char tmp[3] = {
0};    for(i = 0; i < 16; i++ ) {        sprintf(tmp,"%02X", md[i]);        strcat(buf, tmp);    }    cout << buf << endl;  // data的md5值    return 0;}
       5.  编译, 连接, 运行上述程序, 结果为:5EB63BBBE01EEED093CB22BB8F5ACDC3, 而用其他工具计算出来的结果也为:5EB63BBBE01EEED093CB22BB8F5ACDC3.  可见, 上述程序的结果是正确的。

      完毕, 又是小小的兴奋, 是该睡觉了微笑

           

给我老师的人工智能教程打call!

这里写图片描述
你可能感兴趣的文章