All of lore.kernel.org
 help / color / mirror / Atom feed
* [dm-crypt] Whirlpool in gcrypt <= 1.5.3 broken (if writes in chunks)?
@ 2014-01-17 18:25 Milan Broz
  2014-01-17 20:26 ` Werner Koch
  0 siblings, 1 reply; 6+ messages in thread
From: Milan Broz @ 2014-01-17 18:25 UTC (permalink / raw)
  To: gcrypt-devel; +Cc: dm-crypt

Hi,

since this commit (present in 1.6.0)

"md: Fix Whirlpool flaw."
http://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commitdiff;h=0a28b2d2c9181a536fc894e24626714832619923

seems that Whirlpool hash produces different output
if data are written in parts.
(If entered as one buffer, it seems to be compatible though.)

Unfortunately, cryptsetup in its anti-forensic filter uses something like this:
  gcry_md_write(iv, iv_size)
  gcry_md_write(buf, buf_size)
  gcry_md_read ...

Change above seems to breaks all LUKS devices which used Whirlpool as hash
before and upgraded to gcrypt 1.6.0 (cryptsetup cannot open them anymore).

See for example https://bbs.archlinux.org/viewtopic.php?id=175737

Is my assumption that all whirlpool implementations before
libgcrypt 1.6.0 are broken if used this way?

(Using different crypto backend seems to support this assumption...)

Thanks,
Milan

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2014-01-20  8:06 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-17 18:25 [dm-crypt] Whirlpool in gcrypt <= 1.5.3 broken (if writes in chunks)? Milan Broz
2014-01-17 20:26 ` Werner Koch
2014-01-17 20:58   ` Milan Broz
2014-01-19 14:13     ` Werner Koch
2014-01-19 19:49       ` Milan Broz
2014-01-20  7:56         ` Werner Koch

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.