Java 将DES加密字符串解密回纯文本
我正在研究DES加密算法。我可以将纯文本加密为密文,但无法将密文解密为普通纯文本 我应该使用什么转换器? 以下是我在加密方法中使用的代码:Java 将DES加密字符串解密回纯文本,java,encryption,des,Java,Encryption,Des,我正在研究DES加密算法。我可以将纯文本加密为密文,但无法将密文解密为普通纯文本 我应该使用什么转换器? 以下是我在加密方法中使用的代码: public static String encryptString(String src) throws Exception { String dst = ""; SecretKey secret_key = KeyGenerator.getInstance("DES").generateKey(); AlgorithmParam
public static String encryptString(String src) throws Exception {
String dst = "";
SecretKey secret_key = KeyGenerator.getInstance("DES").generateKey();
AlgorithmParameterSpec alogrithm_specs = new IvParameterSpec(initialization_vector);
encrypt = Cipher.getInstance("DES/CBC/PKCS5Padding");
encrypt.init(Cipher.ENCRYPT_MODE, secret_key, alogrithm_specs);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
CipherOutputStream cout = new CipherOutputStream(baos,encrypt);
cout.write(src.getBytes());
cout.flush(); //ByteOutputStream -> Write Encryption Text
cout.close();
dst = DatatypeConverter.printHexBinary(baos.toByteArray());
return dst;
}
以什么方式失败?你的解密代码在哪里?密钥应该在加密方法之外生成。在解密过程中,您还将如何使用它?除此之外,只需将
Cipher.ENCRYPT\u MODE
更改为Cipher.DECRYPT\u MODE
。我不确定这里的问题是什么。我改进了标题,以明确问题是关于什么的。我还修正了问题文本中的一些拼写错误。