gpt4 book ai didi

java - 在java中破译encfs卷 key

转载 作者:行者123 更新时间:2023-11-30 05:00:56 24 4
gpt4 key购买 nike

我正在尝试破译 Java 中的 encfs 卷 key 。我使用标准设置(即 192 位 aes 加密)运行 encfs。有什么办法可以做到这一点吗?

最佳答案

这并不是一个真正的 Java 问题,更多的是一个密码学问题。简要调查EncFS表明卷 key 由从用户密码派生的 key 加密。这很可能代表了最好的攻击 vector :对弱密码进行暴力攻击。不过我不会抱太大希望。

就其值(value)而言,javax.crypto 中的 Java JCE 类将是您在 Java 中执行对称加密的途径。以下代码片段显示了如何使用明文 key 执行某些 AES 解密:

byte[] keyBytes = ...
byte[] volumeKeyFileContents = ...

SecretKeyFactory factory = SecretKeyFactory.getInstance("AES");
SecretKey aesKey = factory.generateSecret(new SecretKeySpec(keyBytes, "AES"));

Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); // for example
cipher.init(Cipher.DECRYPT_MODE, aesKey);
byte[] plaintext = cipher.doFinal(volumeKeyFileContents);

// (written from memory so may not compile without tweaks)

然后,您需要使用明文值作为音量 key 的潜在候选值。显然,这是一个简化的解决方案,并做出了许多假设;您将需要更深入地研究这些卷 key 文件的格式以及在构建加密副本期间使用的算法、模式和填充。

祝你好运。

关于java - 在java中破译encfs卷 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6752633/

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