eoe 移动开发者论坛

 找回密码
 加入eoe

QQ登录

只需一步,快速开始

查看: 76|回复: 3
收起左侧

[Android算法] Android NDK JNI 加密后编码问题,求解

[复制链接]

该用户从未签到

16

主题

99

帖子

250

e币
发表于 2017-4-18 20:10:15 | 显示全部楼层 |阅读模式
100e币
如标题  这是我2个函数 AES加解密没有写错  编码始终不对,求大神帮忙看看,帮我改正哈/**
* AES加密
*/
JNIEXPORT jstring  JNICALL
Java_com_wetu_libear_MainActivity_stringAESEncode(JNIEnv *env, jobject, jstring str) {
    //str是java传过来的字符串
    const char *msg = env->GetStringUTFChars(str, 0);
    const unsigned char* p = (const unsigned char*)(char*)msg;
    int src_len = strlen(msg);
    int encodedlen = 0;
    //使用AES加密
    unsigned char* output = encode(p, src_len, &encodedlen);

    if(!output){
        wt_log("%s\n", "encode failed");
    }
    //加密后转换回去
    jbyteArray jarray = env->NewByteArray(src_len);
    env->SetByteArrayRegion(jarray, 0, src_len, (jbyte *) output);
    jstring strs = env->NewStringUTF("utf-8");
    jclass strClass = env->FindClass("java/lang/String");
    jmethodID ctorID = env->GetMethodID(strClass, "<init>", "([BLjava/lang/String;)V");
    jstring str2 = (jstring) env->NewObject(strClass, ctorID, jarray, strs);
    env->DeleteLocalRef(jarray);
    return str2;

}




/**
* AES解密
*/
JNIEXPORT jstring  JNICALL
Java_com_wetu_libear_MainActivity_stringAESDecode(JNIEnv *env, jobject, jstring str) {

    const char *msg = env->GetStringUTFChars(str, 0);
    const unsigned char* p2 = (const unsigned  char*)(char*)msg;
    int src_len = strlen(msg);
    int decodedlen = 0;
    unsigned char* output2 = decode(p2, src_len, &decodedlen);
    jbyteArray jarray = env->NewByteArray(src_len);
    env->SetByteArrayRegion(jarray, 0, src_len, (jbyte *) output2);
    jstring strs = env->NewStringUTF("utf-8");
    jclass strClass = env->FindClass("java/lang/String");
    jmethodID ctorID = env->GetMethodID(strClass, "<init>", "([BLjava/lang/String;)V");
    jstring str2 = (jstring) env->NewObject(strClass, ctorID, jarray, strs);
    env->DeleteLocalRef(jarray);
    return str2;

}


该用户从未签到

16

主题

99

帖子

250

e币
 楼主| 发表于 2017-4-18 20:11:45 | 显示全部楼层
求大神帮忙看看,第一次搞这个

该用户从未签到

16

主题

99

帖子

250

e币
 楼主| 发表于 2017-4-19 13:56:33 | 显示全部楼层
已经解决了,,。。。。

签到天数: 76 天

连续签到: 1 天

[LV.6]常住居民II

6

主题

208

帖子

804

e币
发表于 2017-4-20 10:01:33 | 显示全部楼层
什么问题导致的?
*滑动验证:
您需要登录后才可以回帖 登录 | 加入eoe

本版积分规则

推荐阅读
赞助商们

QQ|联系我们|小黑屋|手机版|eoe 移动开发者论坛 ( 京ICP备11018032 京公网安11010802020210  

GMT+8, 2017-6-27 06:28 , Processed in 0.497543 second(s), 21 queries , Memcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表
关闭

扫一扫 关注eoe官方微信