引自别人的一个demo: https://segmentfault.com/a/1190000008995392

java8中发现使用私钥解密移动端的加密数据时,会报错:

Base64$Decoder.decode    java.lang.IllegalArgumentException: Illegal base64 character 5c

解决方案参考: https://blog.csdn.net/java_4_ever/article/details/80978089

使用org.apache.commons.codec.binary.Base64进行base64的编码和解码。

/**
    * BASE64 解码
    * @param key 需要Base64解码的字符串
    * @return 字节数组
    */
public static byte[] decryptBase64(String key) {
    return Base64.decodeBase64(key);
}

/**
    * BASE64 编码
    * @param key 需要Base64编码的字节数组
    * @return 字符串
    */
public static String encryptBase64(byte[] key) {
    return new String(Base64.encodeBase64(key));
}

完整代码见gist