您的位置:首页 > 编程语言 > Java开发

关于安卓和java使用BASE64Decoder包加密解密

2016-11-21 21:53 525 查看
java使用BASE64Decoder加密直接引用jdk自带的包就行



安卓使用BASE64Decoder加密要下载一个BASE64的jar包,直接像java引用系统jdk自带的包会报找不到sun.misc.BASE64Decoder的错误



[b]BASE64Decoder的加密解密工具类[/b]

Encrypt.java文件

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

public class Encrypt {
public Encrypt(){}

//MD5调用到的方法
public String bytesToHex(byte[] bytes) {
StringBuffer md5str = new StringBuffer();
for (int i = 0; i < bytes.length; ++i) {
int digital = bytes[i];

if (digital < 0)
digital += 256;

if (digital < 16)
md5str.append("0");

md5str.append(Integer.toHexString(digital));
}
return md5str.toString().toUpperCase();
}

/* BASE64解密
*
* @param key
* @return
* @throws Exception
*/
public static byte[] decryptBASE64(String key) throws Exception {
return (new BASE64Decoder()).decodeBuffer(key);
}

/**
* BASE64加密
* @param key
* @return
* @throws Exception
*/
public static String encryptBASE64(byte[] key) throws Exception {
BASE64Encoder encoder = new BASE64Encoder();

return encoder.encodeBuffer(key);
}
}
BASE64Encrypt.java文件
public class BASE64Encrypt {

/**
4000
* 数据加密方法
* @param code 需要加密的内容
* @return 加密后的数据
*/
public static String encryptCode(String code){
try {
Encrypt objEncrypt = new Encrypt();
byte[] codeByte = code.getBytes();
return objEncrypt.encryptBASE64(codeByte);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}

/**
* 数据解密方法
* @param code 填入该算法加密过的内容
* @return 解密后的内容
*/
public static String deciphering(String code){
try {
Encrypt objEncrypt = new Encrypt();
byte[] deciphering = objEncrypt.decryptBASE64(code);
return new String(deciphering);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Android java base64 加密