zoukankan      html  css  js  c++  java
  • openssl 安装配置

    Openssl是个为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。首先下载Openssl包:(http://www.openssl.org/),这是一个C语言类库包,在Windows下可以通过Perl对该类库包进行MakeBuild,产生libeay32、ssleay32的Lib以及Dll文件,具体操作详见:http://blogger.org.cn/blog/more.asp?name=OpenSSL&id=18972,通过编译产生这样一系列文件:

    image

    inc32里面放置C语言头文件。

    1. 现在我要在Visual Studio 2010工程项目中使用到它,首先我要创建一个VC++.NET的项目,我这里创建了一个MFC应用程序:

    image

    在项目名称中点击“右键”,选择“属性”,从里面找到“VC++目录”:

    image

    找到两个目录选项:

    image

    其中包含目录指向你的Openssl的头文件的目录,库目录指向你的Lib、Dll所在的目录。

    image

    image

    从这里新建目录来指向引导的目录:

    然后切换到“链接器”-> “输入”:

    image

    在“附加依赖项”中,加入两个Lib文件:

    image

    这样就完成了静态库的引用。

    2. 现在看下项目中怎么引用它(以SHA256算法为例):

    1. #include <openssl/sha.h

    方法展示

    1. // SHA256算法字符串加密   
    2.  void sha256(char* string, char outputBuffer[64])   
    3. {   
    4.  unsigned char hash[SHA256_DIGEST_LENGTH];   
    5.  SHA256_CTX sha256;   
    6.  SHA256_Init(&sha256);   
    7.  SHA256_Update(&sha256, string, strlen(string));   
    8.  SHA256_Final(hash, &sha256);   
    9. int i = 0;   
    10.  for(i = 0; i < SHA256_DIGEST_LENGTH; i++)   
    11.  {   
    12.  sprintf(outputBuffer + (i * 2), "%02x", hash[i]);   
    13.  }   
    14.  }   
    15.  

    调用:

    1. static unsigned char buffer[64];   
    2.  sha256(signature, (char*)buffer);  

    由于Openssl包需要利用Perl进行编译形成Lib以及Dll文件,这里我附上已经制作好的文件,方便大家使用!

  • 相关阅读:
    tcpdump抓包
    openldap quick start guide
    深入理解PHP内核(六)函数的定义、传参及返回值
    深入理解PHP内核(五)函数的内部结构
    mongodb 关系、引用、覆盖索引查询
    mongodb php
    mongodb-$type、limit、skip、sort方法、索引、聚合
    mongodb简介与增删该查
    深入理解PHP内核(四)概览-PHP脚本的执行
    深入理解PHP内核(三)概览-SAPI概述
  • 原文地址:https://www.cnblogs.com/djiankuo/p/5092073.html
Copyright © 2011-2022 走看看