openssl的安卓移植

在项目中遇到了使用必须原生RSA的需求,之前此一直是JNI反射的上层RSAUtil类,导致了代码语义性差,性能损耗之类的问题。最近有个新的需求就是再次添加AES加密APP与服务器的部分通信,整个需求就是由于某部分数据体较大,不适合RSA这类非对称加密算法,因此采用了AES进行通信过程加密,但由于项目比较特殊,因此更多的添加外部安全算法java类比较不适合,只能推翻以前的做法,换成纯原生依赖。对于移植有两个比较好的参考文章,标上地址做个备份:

1、https://www.jianshu.com/p/b790c548e787

2、https://blog.csdn.net/sslinp/article/details/84306781

对于移植,大多教程都通用,除了一些编译前的参数需要自定义之外,比如NDK版本,NDK路径,交叉编译的平台之类的。

总体过程较顺利,我记录一下我遇到的问题:

1、`$'do\r'' 这个问题比较简单,重点关注换行符,因为我是linux环境wget了setenv-android.sh此脚本,这个脚本的话,应该是作者在windows下的编辑器写的,带了\n\r双符号,因此识别了\n后,\r不被unix系列成功转义,导致了异常,解决办法就是转换

*** dos2unix工具 ***

在unix系列分支上安装dos2unix工具:sudo apt-get install dos2unix(系统不同命令不同,这里我是ubuntu,是debian分支系列的,centos参考yum)

安装成功后可以定义一个shell脚本,或者手动执行一下命令

dos2unix  你的脚本.sh

看到 dos2unix: converting file eval1.sh to Unix format ..就算成功,重新执行即可!!!

2、还有一个头文件找不到的问题,经排查是 ./config 命令执行未成功导致的,此时需要开发者make clean库目录,然后重新执行 ./config ,然后等待无误完成后再make depend命令,最后执行make all -j线程数 & make install自动安装到上面的 ./config 定义的输出目录,

不积硅步,无以至千里,不积小流,无以成江海。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值