Skip to content

Commit 737a303

Browse files
committed
FastColl recordings
1 parent 1fe621e commit 737a303

File tree

4 files changed

+404
-0
lines changed

4 files changed

+404
-0
lines changed

README.html

+1
Original file line numberDiff line numberDiff line change
@@ -339,6 +339,7 @@ <h3 id="fastcoll-md5"><a href="https://www.win.tue.nl/hashclash/">FastColl</a> (
339339
</code></pre>
340340
<p>Other examples, with an identical prefix: <a href="examples/fastcoll1.bin">1</a><a href="examples/fastcoll2.bin">2</a></p>
341341
<p><strong>Variant</strong>: there is a <a href="https://marc-stevens.nl/research/md5-1block-collision/">single-block MD5 collision</a> but it takes five weeks of computation.</p>
342+
<p>Here is a <a href="examples/fastcoll.svg">recording</a> of a FastColl computation without any prefix and <a href="examples/fastcoll-prefix.svg">another one</a> with a prefix.</p>
342343
<h3 id="unicoll-md5"><a href="unicoll.md">UniColl</a> (MD5)</h3>
343344
<p>Documented in <a href="https://www.cwi.nl/system/files/PhD-Thesis-Marc-Stevens-Attacks-on-Hash-Functions-and-Applications.pdf#page=199">2012</a>, implemented in <a href="https://github.com/cr-marcstevens/hashclash/blob/95c2619a8078990056beb7aaa59104021714ee3c/scripts/poc_no.sh">2017</a></p>
344345
<p><a href="https://github.com/cr-marcstevens/hashclash#create-you-own-identical-prefix-collision">UniColl</a> lets you control a few bytes in the collision blocks, before and after the first difference, which makes it an identical-prefix collision with some controllable differences, almost like a chosen-prefix collision. This is very handy, and even better the difference can be very predictable: in the case of <code>m2+= 2^8</code> (a.k.a. <code>N=1</code> / <code>m2 9</code> in HashClash <a href="https://github.com/cr-marcstevens/hashclash/blob/master/scripts/poc_no.sh#L30">poc_no.sh</a> script), the difference is +1 on the 9th byte, which makes it very exploitable, as you can even think about the collision in your head: the 9th character of that sentence will be replaced with the next one: <code>0</code> replaced by <code>1</code>, <code>a</code> replaced by <code>b</code>..</p>

README.md

+3
Original file line numberDiff line numberDiff line change
@@ -261,6 +261,9 @@ Other examples, with an identical prefix: [1](examples/fastcoll1.bin) ⟷ [2](ex
261261
262262
**Variant**: there is a [single-block MD5 collision](https://marc-stevens.nl/research/md5-1block-collision/) but it takes five weeks of computation.
263263
264+
Here is a [recording](examples/fastcoll.svg) of a FastColl computation without any prefix
265+
and [another one](examples/fastcoll-prefix.svg) with a prefix.
266+
264267
265268
### [UniColl](unicoll.md) (MD5)
266269

examples/fastcoll-prefix.svg

+200
Loading

examples/fastcoll.svg

+200
Loading

0 commit comments

Comments
 (0)