BASE 严格地说,属于编码格式,而非加密算法,通常将MD5产生的字节数组交给BASE64再加密一把,得到相应的字符串。
java中通常不会使用自带的包进行BASE64加密,而是使用commons codec和bouncy castle第三方jar包,
应用场景:
email、密钥,数字证书
以下为代码(先要导入commons codec和bouncy castle第三方jar包)
import org.apache.commons.codec.Encoder;
import org.bouncycastle.util.encoders.Base64Encoder;
public class base64demo {
static String str = "好好学习,天天向上";
public static void main(String[] args) {
ccDemo();
bcDemo();
}
//commons codec
public static void ccDemo() {
//加密
byte[] encodeBytes = org.apache.commons.codec.binary.Base64.encodeBase64(str.getBytes());
System.out.println(new String(encodeBytes));
//解密
byte[] decodeBytes = org.apache.commons.codec.binary.Base64.decodeBase64(encodeBytes);
System.out.println(new String(decodeBytes));
}
//bouncy castle
public static void bcDemo() {
//加密
byte[] encodeBytes = org.bouncycastle.util.encoders.Base64.encode(str.getBytes());
System.out.println(new String(encodeBytes));
//解密
byte[] decodeBytes = org.bouncycastle.util.encoders.Base64.decode(encodeBytes);
System.out.println(new String(decodeBytes));
}
}