C库OpenSSL安装与VisualStudio配置

目录

OpenSSL主要功能

一、安装OpenSSL

[二 安装](#二 安装)

[三 目录结构(配置)](#三 目录结构(配置))

[四、为Visual Studio2022项目配置OpenSSL](#四、为Visual Studio2022项目配置OpenSSL)


OpenSSL 是一个开源的加密库,广泛用于实现安全通信协议和数据加密。它提供了一系列的加密算法和工具,主要用于以下几个方面:

OpenSSL主要功能

  1. 加密与解密(免杀静态)

    • 支持对称加密和非对称加密算法,如 AES、RSA、DES 等。
  2. 数字证书

    • 提供生成和管理数字证书的功能,支持 X.509 证书标准。
  3. 安全通信协议

    • 实现了 SSL(安全套接层)和 TLS(传输层安全性)协议,用于保护网络通信的安全。
  4. 哈希函数

    • 提供多种哈希函数,如 SHA-256、MD5 等,用于数据完整性校验。
  5. 随机数生成

    • 提供强随机数生成器,确保加密操作的安全性。

一、安装OpenSSL

1.下载OpenSSL

  • Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions可以下载已经编译好的包含 lib 和 include 文件的安装包

    • 有Win32和Win64可选,这里的位数指的是你使用OpenSSL开发出来的软件的位数版本,而不是你计算机的位数。

    • 注意,不要下载 light 版本,因为 light 版本不带 lib 和 include。

  • https://slproweb.com/products/Win32OpenSSL.html

二 安装

  • 我选择安装到C:\Program Files\OpenSSL-Win64目录下,选择把dll复制到OpenSSL目录下方便后续查找路径。
  • 后续一直点击Next,最后点击Install开始安装。

三 目录结构(配置)

  • 我们来看看他的目录结构。

    • bin:包含了测试程序、存储证书和密钥的文件(*.pem)。

    • include:包含了所有的头文件(例如:aes.h、md5.h)。

    • lib:包含了所有的库文件(例如:libcrypto.lib、libssl.lib)。

  • 我安装的OpenSSL的lib目录下,有四个文件夹。
  • 它们四个的不同点在于:

    • MD(多线程 DLL 版本)用于 Release 模式。

    • MDd(多线程 DLL 版本,调试)用于 Debug 模式。

    • MT(多线程静态版本)用于 Release 静态链接。

    • MTd(多线程静态版本,调试)用于 Debug 静态链接。

    • 具体选用哪个lib目录,可根据自己情况选择。

2.测试环境变量是否配置成功

  • 打开运行窗口,输入cmd打开命令框,执行命令:openssl version,如果可以给出OpenSSL的版本即可证明已成功安装并成功配置环境变量。

四、为Visual Studio2022项目配置OpenSSL

  • 将include路径添加到外部包含目录,将lib路径添加到库目录

  • 头文件目录C:\Program Files\OpenSSL-Win64\include

  • 库文件选择多线程静态调试版本,目录C:\Program Files\OpenSSL-Win64\lib\VC\x64\MTd

2.链接OpenSSL库

  • 具体步骤为:链接器 -> 输入 -> 附加依赖项,将下面两项添加到附加依赖项

  • libssl.lib

  • libcrypto.lib

  • 将bin目录下的libcrypto-3-x64.dll、libssl-3-x64.dll文件复制到项目文件下

程序测试

相关推荐
std78794 小时前
微软Visual Studio 2026正式登场,AI融入开发核心操作体验更流畅
人工智能·microsoft·visual studio
猿小猴子4 小时前
主流 AI IDE 之一的 Meituan CatPaw IDE 介绍
ide·meituan catpaw
蜡笔大新7985 小时前
IDEA中的异常
java·ide·intellij-idea
小龙报7 小时前
《VScode搭建教程(附安装包)--- 开启你的编程之旅》
c语言·c++·ide·vscode·单片机·物联网·编辑器
木易 士心7 小时前
Android Studio + Gemini 移动开发领域的一次范式转移
android·ide·android studio
洛克大航海8 小时前
PyCharm 软件关联 GitHub 账户
ide·pycharm·github
无糖冰可乐2113 小时前
IDEA多java版本切换
java·ide·intellij-idea
brucelee18613 小时前
IntelliJ IDEA 设置 Local History 永久保留
java·ide·intellij-idea
獨枭18 小时前
C# 本地项目引用失效与恢复全攻略
开发语言·c#·visual studio