Po drátě 2: Komentář k úloze č. 8

Tato úloha vesměs nečinila lidem problémy, možná byla nápověda opravdu až příliš štědrá. Při testování úlohy v SUSE jsme zjistili, že mnozí lidé úlohu řeší rovnou pomocí md5, aniž si všimnou, že před sebou mají různé soubory. Přidali jsme tedy ještě sha1 hash a doufali, že řešitelům ukáže, jak je to doopravdy, a přitom je moc nezmate.

Ukázalo se, že existoval ještě jeden nečekaný způsob, jak se dostat k heslu: Správná osmice souborů se náhodou navzájem vyxorovala do nuly.

Heslo k této úloze mělo být vzpomínkou na loňský ročník a jeho antidatla a antikrtka. Nejčastěji zasílaným chybným řešením byl label ke cramfs filesystému "Have lots of fun," zaujala nás ale taky dvakrát nezávisle zaslaná sekvence podivných znaků "faeyrbvntsoeyyaoaavtfsiznsrcbkvaedtetrajledocovavppkifbzbpcaeuct."

Přestože kontrola md5 u cramfs souboru měla být původně jen nápověda, nakonec na ni doopravdy došlo: Anička se rozhodla, že soubor by měl ležet na nějakém "podezřelém" (tedy ne na susím) serveru a nechala ho u sebe, přičemž zapomněla, že tam má apache, který automaticky překódovává češtinu. Jirka Benc pak zažil perné chvilky, když si při testování úlohy myslel, že jeho úkolem je spravit ono rozbité (velmi, velmi rozbité) cramfs.

Tuto úlohu vytvořili Anička a Martin Mareš, který se tím diskvalifikoval ze soutěže a umožnil letos vyhrát zas někomu jinému. Největší zásluhu o to, že mohla vzniknout, má ale pan Vlastimil Klíma, který nám ukázal, že najít kolize v md5 není žádný problém, a že bychom ji už neměli považovat za bezpečnou hashovací funkci. Samotná úloha byla vytvořena díky projektu HashClash.