I have been researching LUKS vs TrueCrypt topics -- my only concern is security, but most of the discussions I see focus around usability / interoperability .
I know TrueCrypt has a bunch of nice passphrase features -- slow hashing algorithm, thousands of iterations, options for multiple keyfiles etc. These features make me feel that secret key security of the encrypted data is quite strong. But I do not know what LUKS does in this respect. I know in TrueCrypt if I make my passhphrase "abc" the final encryption key will not be "abc" it will be the result of some slow hash -- but if I use LUKS what will my key look like if the passphrase is "abc".
(This is a hypothetical example, I don't intend to use a three character passphrase ... I just need to demonstrate my point -- please no discussion of weak passphrases here, I know all about that, assume I will use the maximum amount of characters for any passphrase, LUKS or TrueCrypt.)
Also, I know TrueCrypt offers other features, such as multi-layered encryption with different algorithms and different keys. That sounds like a really good measure, does LUKS have any option like this? When I install the OS (MINT) I only have a checkbox option yes or no to encrypt. I don't see any further configuration options when installing. What are the defaults?
My primary concern here is that while I know a bit about TrueCrypt, and how it works with regards to my security desires, I have no idea how LUKS behaves. Let's say LUKS out of the box does not offer multi-layer encryption or slow hashing, is there a way to enable this post-install? What does it entail to change the LUKS configurations from an existing weaker installation to a stronger one more suited towards the features of TrueCrypt that appeal to me?
To re-iterate, I don't want a discussion of usability. Yes, I have heard the discussion of "poor usability is poor security", but in this case, even if my data isn't so sensitive it needs to be hidden from extra-terrestrial hackers with state financing. Consider this a practice environment to teach myself the strictest and most secure setup. If I suffer a usability related security weakness (human error) then I am to learn from such a mistake.
Thanks for the input, it's always very appreciated.