[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [dm-devel] [PATCH] dm: remake of the verity target
- From: Mikulas Patocka <mpatocka redhat com>
- To: Mandeep Singh Baines <msb chromium org>
- Cc: Steffen Klassert <steffen klassert secunet com>, Will Drewry <wad chromium org>, linux-kernel vger kernel org, device-mapper development <dm-devel redhat com>, Elly Jones <ellyjones chromium org>, Olof Johansson <olofj chromium org>, Andrew Morton <akpm linux-foundation org>, Alasdair G Kergon <agk redhat com>, Milan Broz <mbroz redhat com>
- Subject: Re: [dm-devel] [PATCH] dm: remake of the verity target
- Date: Thu, 22 Mar 2012 17:52:11 -0400 (EDT)
On Thu, 22 Mar 2012, Mandeep Singh Baines wrote:
> Mikulas Patocka (mpatocka redhat com) wrote:
> >
> > This is improved patch that supports both the old format and the new
> > format. I checked that it is interoperable with with the old Google
> > userspace tool and with the original Google kernel driver.
> >
>
> Thanks much for doing this:)
>
> This looks good but would a prepend/append flag be better?
It does more than changing prepend/append salt. I changed alignment in the
new format so that it doesn't have to use a multiply instruction.
In the old format, if digest size is not a power of two, all digests are
placed first and the rest of the block is padded with zeros. In the new
format, each digest is padded with zeros to a power of two.
For example, when using sha1, the old format padding looks like this:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbb
bbbbbbbbbbbbbbbbccccccccccccccccccccccccccccccccccccccccdddddddd
dddddddddddddddddddddddddddddddd00000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
... and the new format padding looks like this:
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa000000000000000000000000
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb000000000000000000000000
cccccccccccccccccccccccccccccccccccccccc000000000000000000000000
dddddddddddddddddddddddddddddddddddddddd000000000000000000000000
The version "0" (first argument in the target line) actually means the old
style padding and the salt is hashed after the data. The version "1" means
new style padding and the salt is hashed before the data. If someone comes
with another format, we can use version "2" for it, etc.
Mikulas
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]