iOS openssl编译及使用(基于1.1.1b)
2019-03-06 本文已影响1人
amove_xu
最近在做非对称加密,研究了一下gmssl,无奈编译出来的库问题太多。转openssl,踩了一些坑,现将方法分享出来。
我们先去下载 https://github.com/x2on/OpenSSL-for-iPhone.git。同时下载需要编译的openssl-1.1.1b.tar.gz,放入OpenSSL-for-iPhone-master目录(注意下载完成后mac会自动解压,记得将其再压缩成gz的格式,用命令 gzip FileName)。
下载完成后找到build-libssl.sh这个文件,用sublime 或者xcode打开,因为我们最新的模拟器版本不再支持iphone5,iphone4s,所以去掉DEFAULTARCHS和DEFAULTTARGETS中对i386的支持。
并将DEFAULTVERSION设置成你下载的openssl版本,这里我们替换成1.1.1b。
修改完后脚步头部如下
build-libssl.sh 修改后如图如果您编译的是1.1.1以前的版本,打开终端,cd到OpenSSL-for-iPhone-master目录,输入./build-libssl.sh,即可完成编译。
如果您是1.1.1版本及以后的,需要在OpenSSL-for-iPhone-master/config下的20-ios-tvos-cross.conf,添加一行代码my %targets = ();添加完后如下图:
20-ios-tvos-cross.conf保存完,打开终端,cd到OpenSSL-for-iPhone-master目录,输入./build-libssl.sh,即可完成编译。
编译完成后即可运行OpenSSL-for-iOS.xcodeproj,进行测试。