Re: Some thoughts about providing data block checksumming for ext4

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On Tue, 4 Nov 2014, Mikulas Patocka wrote:

> 
> 
> > > Recovery after a power fail
> > > ---------------------------
> > > 
> > > If the dm-protected device was not cleanly shut down, then we need to
> > > examine all of the checksum blocks in the Active Area.  For each
> > > checksum block in the AA, the checksums for all of their data blocks
> > > should machine either the checksum found in the AA, or the checksum
> > > found in the checksum block in the checksum group.
> > 
> > ... and if the checksum of the block matches BOTH the checksum in the AA 
> > and the checksum in the checksum group (because of checksum function 
> > collision), you don't know which 4-bit nibble belongs to the data in the 
> > block.
> 
> Though, I realize that you could avoid this problem by selecting the 
> appropriate checksum function - that never results in collision if the 
> 4-bit nibble differs.

Hmm, that is still not sufficient.

Suppose that "a" and "b" is sector content without the 4-bit nibble and 
"x" and "y" are two different nibbles.

Now, we have this situation:

a + x -> checksum1
b + x -> checksum1
a + y -> checksum2
b + y -> checksum2

Suppose that we do crash recovery and we have (x,checksum1) in the 
checksum block and (y,checksum2) in the active area - we can't really tell 
which one is valid.

So you really need cryptographic hashes instead of checksums to avoid the 
collisions.

Mikulas

--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel




[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux