openssl-1.0.2t 交叉编译
程序员文章站
2022-07-08 19:22:03
...
一、下载
源码包去如下官网下载:
https://www.openssl.org/source
二、交叉编译
这里以openssl-1.0.2t为例,下载源码包,然后解压tar zxvf openssl-1.0.2t.tar.gz
cd openssl-1.0.2t/
源码根目录下,配置交叉编译工具链,XXXX为交叉编译工具链,no-asm表示不使用汇编,否则有些平台会编译失败。
./config no-asm --prefix=$PWD/install --cross-compile-prefix=XXXX
编译动态库 ./config 需要加入shared
./config no-asm -shared --prefix=$PWD/install --cross-compile-prefix=XXXX
打开Makefile,去掉两处-m64的使用,然后执行编译
make
make install
在源码包根目录下的 install 目录获取编译成功的库文件及头文件。
三、查看openssl版本
openssl可执行程序在install目录bin目录下获取。
./openssl version
OpenSSL 1.0.f 6 Jan 2014
如果仅有头文件及库文件如何确认?可通过查看opensslv.h查看
# define OPENSSL_VERSION_TEXT "OpenSSL 1.0.2t 10 Sep 2019"
四、查看TLS握手支持的加密方式
使用openssl库常常用于TLS握手,有时会因为当前openssl支持的加密类型服务器不支持而握手失败,可以通过如下命令查看openssl支持的加密类型。openssl可执行程序在install目录bin目录下获取。./openssl ciphers -v
结果如下:
ECDHE-RSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AESGCM(256) Mac=AEAD
ECDHE-ECDSA-AES256-GCM-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AESGCM(256) Mac=AEAD
ECDHE-RSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA384
ECDHE-ECDSA-AES256-SHA384 TLSv1.2 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA384
ECDHE-RSA-AES256-SHA SSLv3 Kx=ECDH Au=RSA Enc=AES(256) Mac=SHA1
ECDHE-ECDSA-AES256-SHA SSLv3 Kx=ECDH Au=ECDSA Enc=AES(256) Mac=SHA1
SRP-DSS-AES-256-CBC-SHA SSLv3 Kx=SRP Au=DSS Enc=AES(256) Mac=SHA1
SRP-RSA-AES-256-CBC-SHA SSLv3 Kx=SRP Au=RSA Enc=AES(256) Mac=SHA1
SRP-AES-256-CBC-SHA SSLv3 Kx=SRP Au=SRP Enc=AES(256) Mac=SHA1
..............
上一篇: spring mvc 参数校验
下一篇: List中对元素属性排序