最新下载
24小时阅读排行榜
- 1 《ARC Raiders》上线!耕升 RTX 5070 Ti 追风 OC 2.0体验搜打撤新秀
- 2 Go语言JSON编码:深入解析Marshal操作
- 3 一加周销量创历史新高:市占率达3.3%
- 4 cURL 8.17.0 发布
- 5 Java循环中避免IndexOutOfBoundsException的策略与实践
- 6 如何在Go测试代码中获取堆栈跟踪
- 7 JavaScript中嵌套函数访问全局变量:理解作用域与变量遮蔽
- 8 React中API数据处理与.map渲染:类型定义与状态管理实践
- 9 深入理解Go语言中基于Handler的中间件与请求数据传递
- 10 Go语言中生成安全会话令牌:加密级随机数的应用与实践
- 11 Maven BOM 依赖详解:理解与应用
- 12 Unicode与多语言字符识别:告别十六进制边界误区
- 13 Java模型类中标准Getter和Setter方法的规范与实践
- 14 Java中文件上传前重命名策略详解
- 15 理解JavaScript事件节流:setTimeout的正确应用与常见误区
最新教程
-
- Node.js 教程
- 7406 2025-08-28
-
- CSS3 教程
- 1042940 2025-08-27
-
- Rust 教程
- 11752 2025-08-27
-
- Vue 教程
- 13983 2025-08-22
-
- PostgreSQL 教程
- 10759 2025-08-21
-
- Git 教程
- 5127 2025-08-21
<?php
$error_level = E_ALL & E_STRICT;
ini_set('error_reporting', $error_level);
ini_set('display_errors', 1);
$tcryptoLocation = dirname(__DIR__) . DIRECTORY_SEPARATOR . 'library' . DIRECTORY_SEPARATOR . 'TCrypto';
require $tcryptoLocation . DIRECTORY_SEPARATOR . 'Loader.php';
require 'apps.php';
$loader = new TCrypto\Loader();
$loader->register();
$settings = new TCrypto\Tools\SettingStore();
$cli = new TCrypto\Tools\Cli\Horde\Cli();
if (file_exists('keytool.config.php'))
{
$optionParser = new TCrypto\Tools\ArrayOptionParser('keytool.config.php');
}TCrypto是可以很方便加密解密的库,可以使用它来对需要在网络中传输的数据加密。可以使用非对称加密:公钥加密,私钥解密。openssl提供了对RSA的支持,但RSA存在计算效率低的问题,所以一般的做法是使用对称密钥加密数据,然后再把这个只在当前有效的临时生成的对称密钥用非对称密钥的公钥加密之后传递给目标方,目标方使用约定好的非对称密钥中的私钥解开,得到数据加密的密钥,再进行数据解密,得到数据,这种使用方式很常见,可以认为是对HTTPS的裁剪。对称密钥加密可以选择AES,比DES更优秀。
下载源码之后,开始编译:
产生动态库的做法:
1、安装ActivePerl
2、进入OpenSSL所在文件夹,运行:perl Configure VC-WIN32 --prefix=C:\openssl-dll
3、进入VC/BIN目录,运行 VCVARS32.BAT 设置环境变量
4、返回OpenSSL目录,运行 ms\do_ms
5、在OpenSSL目录下执行编译 nmake -f ms\ntdll.mak
6、把必要生成物拷贝到prefix定义的目录中 nmake -f ms\ntdll.mak install
注意:可以通过修改ntdll.mak文件中的CFLAG,确定编译MT、MD库
产生静态库的做法:
1、安装ActivePerl
2、perl configure VC-WIN32 --prefix=C:\openssl-lib
3、ms\do_ms.bat
4、nmake -f ms\nt.mak
5、nmake -f ms\nt.mak install
注意:可以通过修改nt.mak文件中的CFLAG,确定编译MT、MD库。重编的时候把生成物删掉。

