android jni 3des加密,使用JNI调用openssl des_ede3_cbc_encrypt加密算法

本文详细介绍了如何使用JNI在Android应用中调用本地C++代码,结合OpenSSL库实现3DES_CBC加密。通过Java代码调用JNI、JNI在C++中的使用、C++代码编写及编译、混合使用jdb和gdb调试,以及3DES_ede3_cbc_encrypt算法的调用方法。内容包括JNI规范、JNIEnv的使用、字符串和数组的转换、C++内存管理和调试技巧。
摘要由CSDN通过智能技术生成

a4c26d1e5885305701be709a3d33442f.png

本文旨在记录通过JNI调用本地代码的全过程,以期让后来人少走弯路。

由于本人在JNI和C++代码方面是入门级别,所以记录较为详细,高手就只有飘过了。

具体涉及的技术主要有:

1.java代码如何调用JNI

2.JNI在C++中如何使用

3.C++代码的写法以及编译链接过程

4.使用jdb和gdb联合混调JNI

5.des_ede3_cbc_encrypt加密算法调用

1.java代码如何调用JNI

事实上,比起其他步骤,这是最简单的,有三步需要注意。一是注意申明装载本地库,装载本地库的时候应当注意的是,默认jvm会去java.library.path下找这个库,另外linux下这个库的全名实际上是libDesJni.so,但是多写了lib或者.so都是找不到的,够变态吧。二是申明要调用的本地方法,看方法前的native关键字。三是使用javah生成一个c++的头文件,使用如下命令:javah

-d %curr_dir%\src\com\aaa\bbb\ccc\

aaa.bbb.ccc.JniTripleDesLinux,表示生成JniTripleDesLinux这个类的c++头文件到-d指定的目录下。

static {

System.loadLi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值