Since there is a finite number of bit patterns per block, have you tried to
just calculate the SHA-256 or SHA-512 for every possible bit pattern to see if
there is ever a collision? If you found an algorithm that produced no
collisions for any possible block bit pattern, wouldn't that be the win?
On Jul 11, 2012, at 5:56 AM, Sašo Kiselkov wrote:
> On 07/11/2012 12:24 PM, Justin Stringfellow wrote:
>>> Suppose you find a weakness in a specific hash algorithm; you use this
>>> to create hash collisions and now imagined you store the hash collisions
>>> in a zfs dataset with dedup enabled using the same hash algorithm.....
>> Sorry, but isn't this what dedup=verify solves? I don't see the problem
>> here. Maybe all that's needed is a comment in the manpage saying hash
>> algorithms aren't perfect.
> It does solve it, but at a cost to normal operation. Every write gets
> turned into a read. Assuming a big enough and reasonably busy dataset,
> this leads to tremendous write amplification.
> zfs-discuss mailing list
zfs-discuss mailing list