Take the 2-minute tour ×
Information Security Stack Exchange is a question and answer site for Information security professionals. It's 100% free, no registration required.

The main difference being TrueCrypt creates containers and 7-Zip encrypts the file itself, so file sizes can be guessed. Now let's just talk about the strength and breakability of the encryption.

Update: http://forums.truecrypt.org/viewtopic.php?p=107396

share|improve this question
    
"The main difference being TrueCrypt creates containers and 7-Zip encrypts the file itself, so file sizes can be guessed." How do you figure this? Sure, a ZIP file's size will be more closely related to the total size of all the files it contains. But ZIP files are still just another sort of container - given the possibility that they contain any number of files, reliably guessing at the size of any individual file within the container is effectively impossible. –  Iszi Jun 2 at 19:46

3 Answers 3

up vote 30 down vote accepted

If implemented correctly, AES is AES; the output between two different implementations is identical, and therefore no distinction is possible in after-the-fact comparison -- if done correctly, the one is exactly the same as the other.

But there are a few points where differences can crop in:

Operation Mode
Truecrypt implements a modified counter mode called XTS. It's pretty well vetted and has withstood some serious abuse from some powerful attackers (such as the US Government).

From examining the p7zip source code, it appears that AES encoding for the 7-zip format operates in CBC mode. This is certainly not necessarily insecure; it's the mode most popularly used in protocols such as TLS, but it is potentially vulnerable to padding oracle attacks. See this discussion on operation modes for more information.

Key Derivation
Truecrypt uses PBKDF2 to turn your password into an encryption key. It's difficult to come up with a better alternative than that. p7zip uses a salted SHA256 hash repeated over a configurable number of iterations. PBKDF2 is a bit more configurable, but 7-zip's alternative is functionally similar and arguably reaches the same goals.

Vetted Implementation
Here's probably the biggest difference: TrueCrypt's code has been poured over by cryptographers and carefully examined for implementation mistakes. 7-zip's has not (at least not to the same degree). This means that there is a higher probability that 7-zip's code contains some sort of mistake that could allow for some sort of as-yet-unknown attack. That's not to say that such a mistake exists, and that's not to say that such a mistake couldn't be found in TrueCrypt instead. But the this is a matter of probability, not certainty.

All in all, the differences are minor, and for most use cases you shouldn't expect any difference at all from a security perspective. If it's a matter of life-and-death, I'd probably pick TrueCrypt. But for matters of mere secrecy, I'd recommend going with whichever solution fits your problem the best.

share|improve this answer
4  
The difference in work factor is a significant point in favour of 7z. –  CodesInChaos Jan 20 '13 at 22:11
1  
@CodesInChaos, would you please elaborate on that? –  Adnan Jan 22 '13 at 14:13
1  
@Adnan 7z uses more hash rounds than truecrypt. Truecrypt uses PBKDF2 while 7zip does it manually; but 7zip's standard is to do more of it. –  tylerl Jan 22 '13 at 20:25
    
@tylerl, thanks for explaining. –  Adnan Jan 23 '13 at 10:43
    
Do you have something to support the statements that TrueCrypt has been more thoroughly reviewed than 7-Zip? Both solutions are open source. While that does mean anyone can review them, it doesn't necessarily mean anyone has. (Poster child for this these days being OpenSSL and Heartbleed.) There is a crowdfunded project currently underway at istruecryptauditedyet.com but they haven't gotten through the crypto implementation audit yet. –  Iszi Jun 2 at 19:30

The security of a cipher depends on its specific implementation in a software utility. As far as I know, there are no known AES implementation issues in 7-Zip or TrueCrypt.

AES is a fast cipher, and hardware acceleration features such as AES-NI make it much faster. So protecting against brute-force requires strengthening the key through key extension mechanisms.

Brute-forcing tools exist for both 7-Zip and TrueCrypt and they support hardware acceleration.

7-Zip uses key extension to increase the time to brute-force. The user password is hashed 130,000 to 524,288 times (depending on the version) using SHA256.

TrueCrypt also uses PBKDF2 for key extension with 1000 iterations which is 2 orders of magnitude lower than 7-Zip. An issue is that TrueCrypt uses the minimum number of iterations recommended 10 years ago.

When the PBKDF2 standard was written in 2000, the recommended minimum number of iterations was 1000, but the parameter is intended to be increased over time as CPU speeds increase.

It also uses 512 bit salting that decreases vulnerabilities to dictionary and rainbow tables attacks.

So from a brute-force perspective, 7-Zip is a bit better than TrueCrypt, but both are considered fairly resilient to brute-force attacks.

There is a story where the FBI tried to crack a TrueCrypt volume for 12 months and failed.

share|improve this answer
1  
Forgot if it was 7z or rar, but one of them used ECB mode. This isn't a big problem for compressed files, but for uncompressed files the weakness of ECB can leak something. –  CodesInChaos Jan 20 '13 at 10:54
    
@CodesInChaos The original 7-zip isn't open source, but p7zip (compatible, and by the same author) is. Digging through the source for p7zip shows that it uses CBC for 7z files. Since they're compatible with the original 7-zip, that would suggest that the original 7-zip also uses CBC. –  tylerl Jan 20 '13 at 22:01
1  
@tylerl Seems to have been .rar with AES-ECB blog.zorinaq.com/?e=15 –  CodesInChaos Jan 20 '13 at 22:07
1  
@tylerl: The only part that isn't open-source is the RAR extraction support, which isn't relevant for this. The rest is LGPL. –  Mechanical snail Jan 22 '13 at 4:50
    
To the guy here who mentioned " FBI tried to crack a this kind of software with this level of implementation and PR(it was available for Windows, linux and mac from a long time, if anyone knows software programing h/she knows how hard it is to maintain several packages with this efficiency at this level), can't be without funding. If some shadow organisation has implemented it, then why they would want to share the backdoor with po-leece!!! It would ruin their project. Its for them and them only. FBI's power to do overseas ops doesn't make them a top/secret arm. –  user45955 May 4 at 4:26

I would differ with to tylerl's answer in that, at the time of the writing of the question and the answer, TrueCrypt's source code had NOT been audited by cryptographers. In fact, as of now, only a partial audit by respected cryptographers has been completed.

So, currently the the core cryptographic routines of both projects have the same level of review by expert cryptographers: none. Hopefully that will change soon for both codebases, but there's no effort underway to audit 7zip's code, AFAICT.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.