Re:Playing with ZFS encryption on Linux
by aidenn0 on Monday June 19, 2017 @10:48PM
(#14591869)
64 bytes seems like an arbitrarily short limit for passphrases; it's going to be hashed at some point anyway (preferably with a decent KDF designed for the purpose) and 64 bytes is nowhere near long enough for natural English language text to be used to derive 32 bytes of entropy (estimates of English language text are ~1.5bits of entropy per character).
[ Parent
| on HN ]
I suggest posting this feedback in the pull request.
Re:Playing with ZFS encryption on Linux
by RJIb8RBYxzAMX9u on Tuesday June 20, 2017 @12:15AM
(#14592153)
At the risk of invoking Cunningham's Law, nobody uses passphrases anywhere near 64 bytes that he / she has to memorize. And if you're using a password manager, just use the raw or hex key option.
32 bytes => 64 hex digits, which is probably not a coincidence. :-)
> At the risk of invoking Cunningham's Law, nobody uses passphrases anywhere near 64 bytes that he / she has to memorize.
http://52.24.230.241/bc/password_generation.php
This produces memorable passphrases pretty close to that limit, as described in http://www-scf.usc.edu/~mghazvin/papers/marjan15.pdf
Password yes, passphprase it's quite possible.
Eh, Materialistic doesn't allow me to edit my comment. I mean you're right about passwords, but a passphrases (e.g. a sentences) are easy to remember, more secure and can often be longer than 64 bytes.
Re:Playing with ZFS encryption on Linux
by yjftsjthsd-h on Tuesday June 20, 2017 @06:58AM
(#14593504)
Er, of course it's not a coincidence; hex is base 16, so it takes 4 bits to represent each digit, which is half a byte. That is, hex always is 2 digits per byte.
Or did I miss your point?
64 bytes is a bit arbitrary. Up until now I had not heard any complaints about this since most people I know who would use a 64 character passphrase are using a password manager instead. I am adding a test to the PR today and when I do I'll bump it to 512 bytes. We don't want arbitrary password lengths to prevent crazy amounts of passphrase hashing.
We use PBKDF2 as a key derivation function, which is specifically designed to turn low entropy, arbitrary length strings into fixed length, high entropy keys suitable for encryption. It also has the added bonus of making password brute forcing significantly harder.