From: Sebastian Morr Date: Wed, 07 Dec 2011 15:54:11 GMT Subject: Re: Yo dawg, I heard you like trees... Message-ID: <20111207155411.GB2003@thinkpad> In-Reply-To: > Git uses a DAG. The A stands for "acyclic". Loops are not allowed. I'm aware of that. It's acyclic by design, but is this actually enforced by the code? Or does it simply trust that no loops will ever occur, because it's so improbable? After Andrew's response I investigated a bit, and it seems I overvalued the attempts to "break" SHA-1. Wikipedia quotes a 2008 attack, that can create a collision with 2^51 hash function calls. Which, of course, is still way to much. Good for you! :-)