Compare commits
2 commits
1e2b240599
...
e63300e3a2
Author | SHA1 | Date | |
---|---|---|---|
e63300e3a2 | |||
9d452a6ba2 |
3 changed files with 13 additions and 9 deletions
|
@ -1,5 +1,9 @@
|
|||
encfs-java
|
||||
==========
|
||||
|
||||
This branch contains a hack to cache decoded values better.
|
||||
This is to use with encfs-brute.
|
||||
I made the modifications for encfs-brute. The aim was
|
||||
|
||||
1. to cache decoded values better,
|
||||
2. no exception throwing if the key is incorrect.
|
||||
|
||||
Those two items are important to improve speed.
|
||||
|
|
|
@ -30,24 +30,24 @@ public class EncFSPBKDF2Data
|
|||
throws InvalidKeySpecException
|
||||
{
|
||||
byte[] cipherSaltData = config.getSaltData();
|
||||
int keySizeInBytes = config.getConfig().getVolumeKeySizeInBits() / 8;
|
||||
int keySizeInBits = config.getConfig().getVolumeKeySizeInBits();
|
||||
KeySpec ks = new PBEKeySpec(password.toCharArray(), cipherSaltData,
|
||||
config.getConfig().getIterationForPasswordKeyDerivationCount(),
|
||||
(keySizeInBytes + EncFSVolume.IV_LENGTH_IN_BYTES) * 8
|
||||
keySizeInBits + EncFSVolume.IV_LENGTH_IN_BYTES * 8
|
||||
);
|
||||
byte[] pbkdf2Data = skf.generateSecret(ks).getEncoded();
|
||||
|
||||
EncFSPBKDF2Data obj;
|
||||
obj = EncFSPBKDF2Data.from(config, pbkdf2Data);
|
||||
obj = EncFSPBKDF2Data.from(config.getConfig(), pbkdf2Data);
|
||||
obj.password = password;
|
||||
return obj;
|
||||
}
|
||||
|
||||
public static EncFSPBKDF2Data from(EncFSBinaryConfig config, byte[] pbkdf2Data)
|
||||
public static EncFSPBKDF2Data from(EncFSConfig config, byte[] pbkdf2Data)
|
||||
throws InvalidKeySpecException
|
||||
{
|
||||
EncFSPBKDF2Data obj = new EncFSPBKDF2Data();
|
||||
int keySizeInBytes = config.getConfig().getVolumeKeySizeInBits() / 8;
|
||||
int keySizeInBytes = config.getVolumeKeySizeInBits() / 8;
|
||||
obj.pbkdf2Data = pbkdf2Data;
|
||||
obj.passKeyData = Arrays.copyOfRange(pbkdf2Data, 0, keySizeInBytes);
|
||||
obj.passIvData = Arrays.copyOfRange(pbkdf2Data, keySizeInBytes,
|
||||
|
|
|
@ -76,7 +76,7 @@ class VolumeKey {
|
|||
EncFSPBKDF2Data pbkdf2DataObj;
|
||||
try {
|
||||
binaryConfig = EncFSBinaryConfig.from(config);
|
||||
pbkdf2DataObj = EncFSPBKDF2Data.from(binaryConfig, pbkdf2Data);
|
||||
pbkdf2DataObj = EncFSPBKDF2Data.from(config, pbkdf2Data);
|
||||
} catch (Exception e) {
|
||||
throw new EncFSInvalidConfigException(e);
|
||||
}
|
||||
|
@ -212,7 +212,7 @@ class VolumeKey {
|
|||
config.setBase64EncodedVolumeKey(EncFSBase64.encodeBytes(encodedVolKey));
|
||||
}
|
||||
|
||||
private static class DecryptInfo {
|
||||
protected static class DecryptInfo {
|
||||
byte[] clearVolKeyData;
|
||||
Mac mac;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue