zoukankan      html  css  js  c++  java
  • VC2008下使用OpenSSL 1.0.0g(免编译)

      OpenSSL整个软件包大概可以分成三个主要的功能部分:密码算法库、SSL协议库以及应用程序。

    官网:http://www.openssl.org/
    OpenSSL for Windows:http://www.slproweb.com/products/Win32OpenSSL.html

    在这里,我使用已编译好的OpenSSL库(上面第二个网址下载),安装过程如下:

    安装过程中,会提示将DLL拷贝到系统目录,还是OpenSSL目录下的bin文件夹,如下图所示:


    下面进行测试使用OpenSSL:
    1.打开VS2008,新建一个Win32控制台应用程序,勾选"空项目";
    2.菜单→"项目"→"添加新项"→"C++ 文件(.cpp)",名称为"main";
    3.输入以下测试代码:

    01
    02
    03
    04
    05
    06
    07
    08
    09
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
      #include <string> 
    #include <iostream> 
    #include "openssl/md5.h" 
     
    int main() 

        std::string str = "1234"; 
        std::string strMd5 = ""; 
        unsigned char md[MD5_DIGEST_LENGTH]; 
        char tmp[3] = {0}; 
     
        MD5((const unsigned char*)str.c_str(), str.size(), md); 
        for (int i = 0; i < MD5_DIGEST_LENGTH; i++) 
        { 
            sprintf_s(tmp, "%02X", md[i]); 
            strMd5.append(tmp); 
        } 
     
        std::cout<<strMd5<<std::endl; 
        return 0; 

    4.菜单→"项目"→"属性",根据不同的运行库,进行设置:

    附加包含目录:"D:OpenSSL-Win32include"
    附加库目录:"D:OpenSSL-Win32libVC"
    运行时库 附加依赖项
    多线程(/MT) libeay32MT.lib ssleay32MT.lib
    多线程调试(/MTd) libeay32MTd.lib ssleay32MTd.lib
    多线程 DLL (/MD) libeay32MDd.lib ssleay32MDd.lib
    多线程调试 DLL (/MDd) libeay32MD.lib ssleay32MD.lib

    5.若是要静态链接,则将附加库目录设置为:"D:OpenSSL-Win32libVCstatic",附加依赖项再添加如下:
    User32.lib
    Advapi32.lib
    Gdi32.lib
    Ws2_32.lib
    Crypt32.lib
    以上根据使用到OpenSSL的具体功能,而进行添加。
    6.运行如下图所示:

    http://blog.csdn.net/akof1314/article/details/7241829

  • 相关阅读:
    神经网络的数学推导
    矩阵乘法的梯度计算
    深入理解设计矩阵(Design Matrix)
    拉格朗日乘子
    PRML中文版(马春鹏)勘误表
    增强学习笔记 第三章 马尔科夫决策过程
    贝叶斯统计推断的阅读笔记
    Kalman Filter的数学推导
    线性代数随笔(二):矩阵和向量乘法
    线性代数随笔(一):线性变换,特征分解,二次型
  • 原文地址:https://www.cnblogs.com/findumars/p/5436169.html
Copyright © 2011-2022 走看看