1.在这里先说下关于DES算法的ECB模式,单DES加密需要的密钥长度必须是8个字节,则就是长度为16的十六进制字符串,下面自是其中的一种方式
public static String encrypt(String key, String data) {
// 将传过来的key和data转换为byte型
byte[] bKey = HexConversionUtil.hexToByte(key);
int k = 0;
byte[] bData = HexConversionUtil.hexToByte(data);
String ds = “”;
// 创建一个DESKeySpec对象
SecretKeySpec spec = new SecretKeySpec(bKey, “DES”);
// Cipher对象实际完成加密操作
try {
Cipher cipher = Cipher.getInstance(“DES/ECB/NoPadding”);
// 实例化cipher
cipher.init(Cipher.ENCRYPT_MODE, spec);
// 真正的开始加密
byte[] cData = cipher.doFinal(bData);
// 将加密后的数据,转化为16进制
ds = HexConversionUtil.Bytes2HexString(cData);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
} catch (InvalidKeyException e) {
e.printStackTrace(); <
JAVA实现DES的ECB/CBC的加密算法
最新推荐文章于 2023-08-31 17:37:33 发布
本文介绍了JAVA中如何实现DES算法的ECB和CBC模式加密,包括单DES、3DES的加密与解密方法,以及CBC模式的3DES加密算法的详细步骤。通过示例代码展示了加密和解密过程。
摘要由CSDN通过智能技术生成