On Fri, 2017-02-24 at 16:18 +0100, Aymeric Vitte via bitcoin-dev wrote: > Not sure that you really read deeply what I sent, because stating > that > hashing files continuously instead of hashing the intermediate steps > just gives more latitude to the attacker can't be true when the > attacker > has absolutely no control over the past files What prevents the attacker to provide different past files when talking to parties who are still in the initial state?
Then the question is: knowing the hash state, is it as easy to find a > collision between two files that will be computed in the next round > than > finding a collision between two files only? With the original usage of the hash function, the hash state is always the initial state. Now that the attacker has some control over the hash state even. In other words, if the original use of the hash function was vulnerable, then your scheme is vulnerable for the initial state. Concrete attack: If you can find x != y with H(x) = H(y), then you can also find m, x != y, with H(m||x) = H(m||y), just by setting m = "". Not sure if this is the right place to discuss that issue though... Best, Tim _______________________________________________ bitcoin-dev mailing list bitcoin-dev@lists.linuxfoundation.org https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev