openssl 安装配置
2015-12-31 16:16
363 查看
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,通过编译产生这样一系列文件:
inc32里面放置C语言头文件。
1. 现在我要在Visual Studio 2010工程项目中使用到它,首先我要创建一个VC++.NET的项目,我这里创建了一个MFC应用程序:
在项目名称中点击“右键”,选择“属性”,从里面找到“VC++目录”:
找到两个目录选项:
其中包含目录指向你的Openssl的头文件的目录,库目录指向你的Lib、Dll所在的目录。
从这里新建目录来指向引导的目录:
然后切换到“链接器”-> “输入”:
在“附加依赖项”中,加入两个Lib文件:
这样就完成了静态库的引用。
2. 现在看下项目中怎么引用它(以SHA256算法为例):
#include <openssl/sha.h>
方法展示
// SHA256算法字符串加密
void sha256(char* string, char outputBuffer[64])
{
unsigned char hash[SHA256_DIGEST_LENGTH];
SHA256_CTX sha256;
SHA256_Init(&sha256);
SHA256_Update(&sha256, string, strlen(string));
SHA256_Final(hash, &sha256);
int i = 0;
for(i = 0; i < SHA256_DIGEST_LENGTH; i++)
{
sprintf(outputBuffer + (i * 2), "%02x", hash[i]);
}
}
调用:
static unsigned char buffer[64];
sha256(signature, (char*)buffer);
由于Openssl包需要利用Perl进行编译形成Lib以及Dll文件,这里我附上已经制作好的文件,方便大家使用!
inc32里面放置C语言头文件。
1. 现在我要在Visual Studio 2010工程项目中使用到它,首先我要创建一个VC++.NET的项目,我这里创建了一个MFC应用程序:
在项目名称中点击“右键”,选择“属性”,从里面找到“VC++目录”:
找到两个目录选项:
其中包含目录指向你的Openssl的头文件的目录,库目录指向你的Lib、Dll所在的目录。
从这里新建目录来指向引导的目录:
然后切换到“链接器”-> “输入”:
在“附加依赖项”中,加入两个Lib文件:
这样就完成了静态库的引用。
2. 现在看下项目中怎么引用它(以SHA256算法为例):
#include <openssl/sha.h>
方法展示
// SHA256算法字符串加密
void sha256(char* string, char outputBuffer[64])
{
unsigned char hash[SHA256_DIGEST_LENGTH];
SHA256_CTX sha256;
SHA256_Init(&sha256);
SHA256_Update(&sha256, string, strlen(string));
SHA256_Final(hash, &sha256);
int i = 0;
for(i = 0; i < SHA256_DIGEST_LENGTH; i++)
{
sprintf(outputBuffer + (i * 2), "%02x", hash[i]);
}
}
调用:
static unsigned char buffer[64];
sha256(signature, (char*)buffer);
由于Openssl包需要利用Perl进行编译形成Lib以及Dll文件,这里我附上已经制作好的文件,方便大家使用!
相关文章推荐
- Linux(Ubuntu)安装jdk1.8
- tomcat下JVM参数设置及优化
- Codeforces Good Bye 2015 B. New Year and Old Property (DFS)
- CentOS ZendStudio installation
- 专治linux不服——centos6.7下的一些小问题
- Linux/Unix命令之Ethtool (设置千兆网卡速度及模式)
- openstack rc
- YZR之AOP
- centos7 安装firefox
- Tomcat 7优化前及优化后的性能对比
- OpenGLES入门笔记三
- Linux内核的namespace机制分析
- CentOS 开启.htaccess
- nginx+tomcat:负载均衡配置(使用粘性session)
- centos7 配置本地yum源,供局域网使用
- Keras 文本TOPIC分类小结
- 使用Maven自动部署Java Web项目到Tomcat问题小记
- tomcat在管理界面部署项目,设置管理用户
- Linux下安装Tomcat(tar.gz)
- 基于hadoop的电影推荐结果可视化