关于OpenSSL静态库的编译和使用
详细信息 | |
源码下载与解压 | 从[OpenSSL官网](https://www.openssl.org)下载源码,例如当前最新版本为1.1.0f,下载地址为: https://www.openssl.org/source/old/1.1.0/openssl-1.1.0f.tar.gz 下载后进行解压。 |
编译配置 | 进入解压后的目录,如openssl-1.1.0f ,执行以下命令来配置编译选项:./config -fPIC no-shared -fPIC 表示生成位置无关代码,no-shared 表示生成静态库。 |
编译过程 | 在配置完成后,运行make 命令进行编译,最终会在当前目录下生成两个静态库文件:libssl.a 和libcrypto.a 。 |
开发使用 | 在开发过程中,需要将生成的头文件目录拷贝到自己的模块头文件目录(如./inc ),并将静态库文件拷贝到库文件目录(如./lib ),在Makefile中添加如下内容:INCLUDE += -I./inc LIB += -L./lib -lssl -lcrypto 在使用OpenSSL库函数时,按需包含相应的头文件,如: #include #include #include |
注意事项 | 编译生成的库libssl.a 和libcrypto.a 存在依赖关系,需将libssl.a 放在libcrypto.a 前面,否则可能出现未定义错误。 |
OpenSSL编译选项解读
(图片来源网络,侵删)
选项类型 | 详细描述 |
全局选项 | 这些选项影响整体编译行为。--openssldir=OPENSSLDIR :安装目录,默认是/usr/local/ssl 。--prefix=PREFIX :设置lib 、include 、bin 目录的前缀,默认为OPENSSLDIR 目录。--install_prefix=DESTDIR :设置安装时的“根”目录,通常用于打包,默认为空。 |
算法选项 | 这些选项禁用某些加密算法。no-md2 ,no-md4 ,no-mdc2 ,no-ripemd :禁用摘要算法。no-des ,no-rc2 ,no-rc4 ,no-rc5 ,no-idea ,no-bf ,no-cast ,no-camellia :禁用对称加密算法。no-ec ,no-dsa ,no-ecdsa ,no-dh ,no-ecdh :禁用不对称加密算法。no-comp :禁用数据压缩算法。no-store :禁用对象存储功能。 |
附录
以下是一些有用的链接和资源:
1、[使用OpenSSL命令行构建CA及证书](http://www.linuxidc.com/Linux/2015-10/124682.htm)
2、[Ubuntu安装OpenSSL](http://www.linuxidc.com/Linux/2015-05/124001.htm)
3、[通过OpenSSL提供FTP+SSL/TLS认证功能](http://www.linuxidc.com/Linux/2013-05/121749.htm)
(图片来源网络,侵删)
4、[Linux下使用OpenSSL生成证书](http://www.linuxidc.com/Linux/2015-05/117034.htm)
5、[利用OpenSSL签署多域名证书](http://www.linuxidc.com/Linux/2014-10/124682.htm)
6、[在OpenSSL中添加自定义加密算法](http://www.linuxidc.com/Linux/2015-08/121749.htm)
以上内容就是解答有关openssl linux 静态库的详细内容了,我相信这篇文章可以为您解决一些疑惑,有任何问题欢迎留言反馈,谢谢阅读。
(图片来源网络,侵删)
本文来源于互联网,如若侵权,请联系管理员删除,本文链接:https://www.9969.net/80069.html