1

我想知道如何破译使用特定密钥加密的随机数 DES/CBC。

我的协议规定如下: 我正在发送一个 KeyNo(例如 0x00) 在发送 KeyNo 后,我得到一个 8 字节(DES)随机数。这个随机数是用选定的密钥加密的。

我的问题是如何破译收到的数据,使用 Cipher 找到随机数

谢谢你。

4

1 回答 1

3

要解密 DES 加密流,只需执行以下操作:

Key key = SecretKeyFactory.getInstance("DES").generateSecret(new DESKeySpec(bytesOfThe Key)); // bytesOfTheKey should be 8 bytes long
Cipher cipher = Cipher.getInstance("DES");
cipher.init(Cipher.DECRYPT_MODE, key);
return new CipherInputStream(inputStream, cipher);

您可能还对适用于 byteBuffers 的doFinal方法感兴趣。

于 2012-07-06T10:59:12.137 回答