#define APPLINK_STDIN 1
#define APPLINK_STDOUT 2
#define APPLINK_STDERR 3
#define APPLINK_FPRINTF 4
#define APPLINK_FGETS 5
#define APPLINK_FREAD 6
#define APPLINK_FWRITE 7
#define APPLINK_FSETMOD 8
#define APPLINK_FEOF 9
#define APPLINK_FCLOSE 10 /* should not be used */
#define APPLINK_FOPEN 11 /* solely for completeness */
#define APPLINK_FSEEK 12
#define APPLINK_FTELL 13
#define APPLINK_FFLUSH 14
#define APPLINK_FERROR 15
#define APPLINK_CLEARERR 16
#define APPLINK_FILENO 17 /* to be used with below */
#define APPLINK_OPEN 18 /* formally can't be used, as flags can vary */
#define APPLINK_READ 19
#define APPLINK_WRITE 20
#define APPLINK_LSEEK 21
#define APPLINK_CLOSE 22
#define APPLINK_MAX 22 /* always same as last macro */
#ifndef APPMACROS_ONLY
# include <stdio.h>
# include <io.h>
# include <fcntl.h>
static void *app_stdin(void)
{
return stdin;
}
static void *app_stdout(void)
{
return stdout;
}
static void *app_stderr(void)
{
return stderr;
}
static int app_feof(FILE *fp)
{
return feof(fp);
}
static int app_ferror(FILE *fp)
{
return ferror(fp);
}
static void app_clearerr(FILE *fp)
{
clearerr(fp);
}
static int app_fileno(FILE *fp)
{
return _fileno(fp);
}
static int app_fsetmod(FILE *fp, char mod)
{
return _setmode(_fileno(fp), mod == 'b' ? _O_BINARY : _O_TEXT);
}
#ifdef __cplusplus
extern "C" {
#endif
__declspec(dllexport)
void **
# if defined(__BORLANDC__)
/*
* __stdcall appears to be the only way to get the name
* decoration right with Borland C. Otherwise it works
* purely incidentally, as we pass no parameters.
*/
__stdcall
# else
__cdecl
# endif
OPENSSL_Applink(void)
{
static int once = 1;
static void *OPENSSL_ApplinkTable[APPLINK_MAX + 1] =
{ (void *)APPLINK_MAX };
if (once) {
OPENSSL_ApplinkTable[APPLINK_STDIN] = app_stdin;
OPENSSL_ApplinkTable[APPLINK_STDOUT] = app_stdout;
OPENSSL_ApplinkTable[APPLINK_STDERR] = app_stderr;
OPENSSL_ApplinkTable[APPLINK_FPRINTF] = fprintf;
OPENSSL_ApplinkTable[APPLINK_FGETS] = fgets;
OPENSSL_ApplinkTable[APPLINK_FREAD] = fread;
OPENSSL_ApplinkTable[APPLINK_FWRITE] = fwrite;
OPENSSL_ApplinkTable[APPLINK_FSETMOD] = app_fsetmod;
OPENSSL_ApplinkTable[APPLINK_FEOF] = app_feof;
OPENSSL_ApplinkTable[APPLINK_FCLOSE] = fclose;
OPENSSL_ApplinkTable[APPLINK_FOPEN] = fopen;
OPENSSL_ApplinkTable[APPLINK_FSEEK] = fseek;
OPENSSL_ApplinkTable[APPLINK_FTELL] = ftell;
OPENSSL_ApplinkTable[APPLINK_FFLUSH] = fflush;
OPENSSL_ApplinkTable[APPLINK_FERROR] = app_ferror;
OPENSSL_ApplinkTable[APPLINK_CLEARERR] = app_clearerr;
OPENSSL_ApplinkTable[APPLINK_FILENO] = app_fileno;
OPENSSL_ApplinkTable[APPLINK_OPEN] = _open;
OPENSSL_ApplinkTable[APPLINK_READ] = _read;
OPENSSL_ApplinkTable[APPLINK_WRITE] = _write;
OPENSSL_ApplinkTable[APPLINK_LSEEK] = _lseek;
OPENSSL_ApplinkTable[APPLINK_CLOSE] = _close;
once = 0;
}
return OPENSSL_ApplinkTable;
}
#ifdef __cplusplus
}
#endif
#endif
OpenSSL 1.0.2 Windows 64位



OpenSSL 是一个强大的安全套接层 (SSL) 和传输层安全 (TLS) 库,用于加密通信,确保网络数据传输的安全性。它包含了各种加密算法、常用的密钥和证书处理功能,以及SSL/TLS协议的实现。在Windows操作系统上,OpenSSL的安装和使用对于开发者和系统管理员来说至关重要,特别是在配置HTTPS服务器、开发安全应用程序或者进行网络安全测试时。 标题"OpenSSL 1.0.2 Windows 64位"表明这是一个专为Windows 64位操作系统编译的OpenSSL版本。OpenSSL 1.0.2o是该库的一个特定发行版,它可能包含了一些安全修复和性能优化,与更早或更晚的版本相比,可能具有特定的特性或兼容性优势。 描述中提到的是官方下载的“openssl-1.0.2o”源码编译成功的二进制文件。这意味着这些文件不是预编译的二进制版本,而是从源代码编译得到的,这通常是为了确保与特定系统环境的兼容性,或者是出于对编译选项和安全性的特殊需求。编译过程涉及解压源码、配置构建环境、编译源代码以及运行测试来验证其功能。 在Windows环境中,安装OpenSSL 1.0.2o的二进制文件通常包括以下几个步骤: 1. 下载并解压“openssl-1.0.2o-bin”压缩包。 2. 添加解压后的bin目录到系统PATH环境变量,使得命令行可以找到OpenSSL的可执行文件。 3. 验证安装,通过命令行运行`openssl version`,如果正确安装,应显示OpenSSL的版本信息。 OpenSSL 的主要组件包括: - `openssl.exe`:命令行工具,用于执行各种加密操作,如生成RSA密钥对、创建自签名证书等。 - `libeay32.dll`:OpenSSL的核心加密库。 - `ssleay32.dll`:负责SSL/TLS协议处理的部分。 使用OpenSSL,你可以执行以下操作: 1. 生成RSA、DSA、EC等类型的密钥对。 2. 创建X.509证书,包括自签名证书和证书请求(CSR)。 3. 加密和解密数据,支持多种加密算法。 4. 对文件进行哈希计算,如MD5、SHA1、SHA256等。 5. 进行TLS/SSL的端到端加密测试。 对于开发者而言,OpenSSL还可以用于: 1. 在C/C++程序中集成SSL/TLS功能,提供安全的网络连接。 2. 使用OpenSSL API编写加密和解密功能。 3. 在其他编程语言(如Python、Java等)中通过绑定OpenSSL库实现加密功能。 OpenSSL 1.0.2 Windows 64位是一个用于Windows系统的安全库,为开发者和系统管理员提供了丰富的加密和安全通信工具。通过正确的安装和配置,它可以增强网络应用的安全性和可靠性。



























































































































- 1

- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整
- wj3716594272023-11-25谢谢,确实可以用,库是64位的,在VS2017的环境下可以用
- tengguo2021-08-30谢谢,可以用
- yy198701012020-12-02谢谢,非常感谢分享
- 「已注销」2019-06-10嗯,主要还是不是特别会安装,先用一下把
- zxmlove3692019-06-03谢谢,不大会安装珠海超级郭大侠2019-06-06这个是编译好的(Windows 64位,我的机器是Win10)。 切换到“openssl-1.0.2o-bin\bin”目录,或者将这个目录加入到环境变量PATH中, 直接在控制台上运行 openssl.exe,就会出现“OpenSSL>”提示符,然后就可以正常地进行后续的命令操作。

- 粉丝: 3
- 资源: 5
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 陕西省省级非物质文化遗产传统舞蹈经纬度数据统计表
- 基于CNN的水果识别MATLAB源码(含GUI)
- 陕西省省级非物质文化遗产传统戏剧经纬度数据统计表
- 基于C语言的通讯录管理系统
- hcip第一次作业 hcia复习
- 基于C语言的图书租凭管理系统
- 基于C语言的学生成绩管理系统
- 基于LSTM的故障诊断MATLAB源码
- 基于MATLAB的传染病模型实现
- C语言实现企业考勤管理系统
- Windows软件插件-音视频文件读取器
- ORB-SLAM3课程电子书课件V0.5
- php开源在线批量递交seo外链增加工具 执刀人专版(可二开商用版).zip
- 零基础Python趣味AI项目.zip
- 基于MATLAB的电梯模拟仿真(含GUI)
- network-server


