Base64 加密, 这个其实不可以算作加密方法,它可以看作是一种编码方式,它的用途只是二进制数字和字符串进行相互转化。
Base64是网络上最常见的用于传输 8Bit字节码的编码方式之一,是一种基于64个可打印字符来表示二进制数据的方法。Base64一般用于在 HTTP协议下传输二进制数据,由于 HTTP协议是文本协议,所以在 HTTP协议下传输二进制数据需要将二进制数据转换为字符数据。然而直接转换是不行的。因为网络传输只能传输可打印字符。
MD5加密 散列函数计算,一种不安全的加密算法,通常用于账号密码的加密,但是一般都需要加盐处理,单纯的MD5的加密后的字符串可以被破解,或者通过字典查出。
java 实现base64加解密:
//Base64 加解密
//编码加密
String encodeStr = Base64.getEncoder().encodeToString(str.getBytes("UTF-8"));
System.out.println("Base64加密后的字符串为:" + encodeStr);
//解码解密
String decoderStr = new String(Base64.getDecoder().decode(encodeStr), StandardCharsets.UTF_8); //
// 推荐使用StandardCharsets类指定
System.out.println("Base64解密后的字符串为" + decoderStr);
对称加密算法:DES、AES
DES算法加密的安全等级相对较低,通过同一个密钥进行加密解密。

Java实现DES加解密
/**
* 偏移变量,固定占8位字节
*/
private final static String IV_PARAMETER = "12345678";
/**
* 密钥算法
*/
private static final String ALGORITHM = "DES";
/**
* 加密/解密算法-工作模式-填充模式
*/
private static final String CIPHER_ALGORITHM = "DES/CBC/PKCS5Padding";
/**
* 默认编码
*/
private static final String CHARSET = "utf-8";
/**
* 生成key
*
* @param password
* @return
* @throws Exception
*/
private static Key generateKey(String password) throws Exception {
DESKeySpec dks = new DESKeySpec(password.getBytes(CHARSET));
SecretKeyFactory keyFactory = Secret

本文介绍了Java中常见的四种加解密方法:Base64作为二进制与字符串转化的方式,不应用于安全加密;MD5是一种不安全的散列加密;对称加密算法如DES、AES,其中DES安全性较低,AES更为安全;非对称加密算法RSA使用公钥和私钥,适合敏感数据加密。文中还提供了Java实现这些加密方式的示例。
最低0.47元/天 解锁文章
1211

被折叠的 条评论
为什么被折叠?



