我尝试迁移 Blowfish算法到 Android Native ,这是在C ++上实现的。
但是我有些困惑!
我在
我在JNI中这样做:
...
click_link = $('<a></a>').html('clickable link');
click_link.on('click', function(e){
// function to show 3rd row
createExpand3(table);
})
我得到了这样的结果:
加密前:
JNIEXPORT jstring JNICALL Java_com_myview_myndk_LoadNative_e(JNIEnv *env, jobject this_obj,jstring src) {
const string key = "abcfgetq";
vector<char> k(key.begin(), key.end());
Blowfish blowfish(k);
jboolean isCopy;
const char *src_char = env->GetStringUTFChars(src, &isCopy);
LOGI("jchar %s======================",src_char);
const vector<char> src_vector(src_char,src_char+strlen(src_char));
vector<char> encyyption = blowfish.Encrypt(src_vector);
char *en_char = &encyyption[0];
const string en_str(en_char);
string base64_en = base64::encode(en_str);
const char *base64_de_char = base64::decode(base64_en).c_str();
vector<char> decryption = blowfish.Decrypt(vector<char>(base64_de_char,base64_de_char+strlen(base64_de_char)));
char *de_char = &decryption[0];
string de_str(de_char);
//log decryption
LOGI("decryption is %s======================",de_str.c_str());
return env->NewStringUTF(base64_en.c_str());
}
加密时:
Hello!!How Are You?!//..,,++||**
解密后:
8�{}�a�-�@e�ՠ�ϡz�P]#S�/��P(**
这有什么不对?
我在这工作了大约两天,我真的很困惑!
如果我错过了一些你正确的答案,请告诉我。
感谢您的智慧!