java 后端加密 前段解密和后端解密结果不一样

新手上路,请多包涵

private static byte[] iv = { 1, 2, 3, 4, 5, 6, 7, 8 };
/**

 * 加密
 */
public static String encryptDES(String encryptString, String encryptKey) {
try {
    IvParameterSpec zeroIv = new IvParameterSpec(iv);
    SecretKeySpec key = new SecretKeySpec(encryptKey.getBytes(), "DES");
    Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
    cipher.init(Cipher.ENCRYPT_MODE, key, zeroIv);
    byte[] encryptedData = cipher.doFinal(encryptString.getBytes());
    return Base64.encode(encryptedData);
} catch (Exception e) {
    e.printStackTrace();
    return "";
}


/**
 * 解密
 */
public static String decryptDES(String decryptString, String decryptKey) {
try {
    byte[] byteMi = Base64.decode(decryptString);
    IvParameterSpec zeroIv = new IvParameterSpec(iv);
    SecretKeySpec key = new SecretKeySpec(decryptKey.getBytes(), "DES");
    Cipher cipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
    cipher.init(Cipher.DECRYPT_MODE, key, zeroIv);
    byte decryptedData[] = cipher.doFinal(byteMi);

    return new String(decryptedData);
} catch (Exception e) {
    e.printStackTrace();
    return "";
}
阅读 2k
1 个回答

我不知道为什么不一样。
我疑惑的是要是放前端解密了,后端加密了又有什么用呢?

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题