为防止网络传输过程中重要数据被篡改,客户端与服务端都会对发出的数据签名或加密,对收到的数据验签或解密。签名可能用到MD5,SHA1,加解密可能用到3DES,AES,RSA等。加密数据传输一般以字符串形式,通常会用到BASE64,HEX转换工具。
一、JAVA方式
笔者搜集了上面提到的主要几种加解密方式及转换的实现,在此分享出来供大家参考,欢迎提意见,我会进一步完善~
GitHub地址: https://github.com/panxw/java-algorithm-helper
二、JNI封装算法
以上方式为JAVA实现,为了增加代码反编译的难度,大家还可以尝试将算法及KEY封装在JNI中,可参考:
GitHub地址 : https://github.com/ panxw /android-develop-toolkit/tree/master/JNIHelperProject
一、JAVA方式
笔者搜集了上面提到的主要几种加解密方式及转换的实现,在此分享出来供大家参考,欢迎提意见,我会进一步完善~
GitHub地址: https://github.com/panxw/java-algorithm-helper
二、JNI封装算法
以上方式为JAVA实现,为了增加代码反编译的难度,大家还可以尝试将算法及KEY封装在JNI中,可参考:
GitHub地址 : https://github.com/ panxw /android-develop-toolkit/tree/master/JNIHelperProject