当前位置:   article > 正文

Openssl3.0 Android平台编译教程_openssl android 编译

openssl android 编译

【前言】

     Android要想实现RSA/AES之类的加密,最简便的方式是直接使用Android提供的Java层api,但是使用Java层提供的api去加密,别人很容易通过反编译看到你的加密逻辑,然后直接模拟你的加密逻辑去刷接口或者抓包时候直接解密即可,安全系数比较低;要想提高被别人反编译看到加密逻辑的门槛,需要把相关加密逻辑代码放到C层去实现,但是要是自己去实现RSA/AES加密逻辑,那是很浪费时间而且完全没必要的事情,可以借助Openssl提供的crypto这个库去实现加密或者md5
     网上的openssl编译教程大部分都是比较旧的或者是不太详细,故而有此教程详细记录openssl的编译过程

一、环境要求

1、Linux系统,可以在VMware中装ubuntu linux系统
2、下载Linux版 NDK,解压

二、下载Openssl源码

1、在shell终端中输入git命令下载openssl源码到当前目录下

git clone git://git.openssl.org/openssl.git
  • 1

在这里插入图片描述

二、编译源码

1、cd进入到openssl目录下,即Configure文件所在目录
在这里插入图片描述
2、使用export命令新增/修改环境变量ANDROID_NDK_ROOT指向你的NDK目录,export 的效力仅限于该次登录操作

export ANDROID_NDK_ROOT=/home/jimmy/android-ndk-r23b-linux/android-ndk-r23b
  • 1

3、将编译openssl所需的NDK命令所在的目录添加到环境变量PATH

PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/linux-x86_64/bin:$PATH
  • 1

4、运行./Configure脚本生成Makefile文件,这里指定生成arm64的.so

./Configure android-arm64 -D__ANDROID_API__=30
  • 1

执行完之后会在当前目录下生成一下两个文件
在这里插入图片描述

5、使用make命令进行编译

make
  • 1

等待一段时间,执行完之后,就会在当前目录下生成了想要的.so文件了,将生成的两个.so复制到android项目下arm64-v8a下即可
在这里插入图片描述
6、要想继续生成其他平台的.so, 可以删掉第4、5步生成的文件,重复第4、5步即可
其中,armeabi 对应 android-arm, arm64-v8a 对应 android-arm64, x86 对应 android-x86x86_64对应 android-x86_64
【注意】除了把生成对应平台的.so拷贝到Android项目之外,记得也得把当前目录下的include目录一起拷贝过去用,include里面是需要引入的头文件,而且需要注意的一定得编译完成之后再拷贝,拷贝没编译前的include文件,到时引入时会报错,因为有些文件是编译时候才生成的

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/198060
推荐阅读
相关标签
  

闽ICP备14008679号