gpt4 book ai didi

java - 获取 key 流 - Java 解密

转载 作者:行者123 更新时间:2023-12-02 04:02:29 25 4
gpt4 key购买 nike

我正在使用Java的Cipher类进行解密。

几个问题:

  1. 将 DES 解密与 OFB 结合使用,对于多部分解密,是否可以在第一次迭代中生成 key 流,但不使用该 key 流进行异或,但仍将 key 流馈送到下一个分组密码中?

我的代码(简要)如下:

desCipher = Cipher.getInstance("DES/OFB56/NoPadding");
desCipher.init(Cipher.DECRYPT_MODE, secretKey, ivParameter);
for (i=0;i<subframeCount;i++){
// perform the skip iteration here
if (firstFrame){
byte[] dummy = new byte[7];
dummy[0] = 1;dummy[1] = 12;dummy[2] = 12;dummy[3] = 15;dummy[4] = 26;dummy[5] = 12;dummy[6] = 12;
desCipher.update(dummy);
}
if (not_last_frame){
decryptedVCW = desCipher.update(vcwShift_E);
}
else{
decryptedVCW = desCipher.doFinal(vcwShift_E);
}

}

我不确定它是否确实在更新(虚拟)操作中跳过异或运算,然后使用 key 流进行下一个分组密码。

  • 是否可以检索每个操作的 key 流?很高兴看到到底生成了什么。
  • 谢谢希夫

    最佳答案

    1. 是的,这就是 OFB 的工作原理:加密的输出( key 流)直接作为下一个 block 的输入,因此 XOR 部分独立于加密引擎,就像流密码一样。

    2. 获取 key 流而不是与明文进行异或的另一种方法是仅使用零进行异或(或调用 update()/doFinal()),您将获得实际的 key 流 key 流。以防万一您想查看 key 流的样子。但你的方法显然也有效,我只是为了完整起见添加这个。

    关于java - 获取 key 流 - Java 解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34756927/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com