> From: zfs-discuss-boun...@opensolaris.org [mailto:zfs-discuss- > boun...@opensolaris.org] On Behalf Of Gregg Wonderly > > 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?
Maybe I misunderstand what you're saying, but if I got it right, what you're saying is physically impossible to do in the time of the universe... And guaranteed to fail even if you had all the computational power of God. I think you're saying ... In a block of 128k, sequentially step through all the possible values ... starting with 0, 1, 2, ... 2^128k ... and compute the hashes of each value, and see if you ever find a hash collision. If this is indeed what you're saying, recall, the above operation will require on order 2^128k operations to complete. But present national security standards accept 2^256 operations as satisfactory to protect data from brute force attacks over the next 30 years. Furthermore, in a 128k block, there exist 2^128k possible values, while in a 512bit hash, there exist only 2^512 possible values (which is still a really huge number.) This means there will exist at least 2^127.5k collisions. However, these numbers are so astronomically universally magnanimously huge, it will still take more than a lifetime to find any one of those collisions. So it's impossible to perform such a computation, and if you could, you would be guaranteed to find a LOT of collisions. _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss