Hlavní navigace

Názor k článku Shambles je útok, který snižuje bezpečnost SHA-1 na úroveň MD5 od Vít Šesták - > jestli to nemá přesně opačný efekt. Jediný problém...

  • Článek je starý, nové názory již nelze přidávat.
  • 10. 1. 2020 22:47

    Vít Šesták

    > jestli to nemá přesně opačný efekt.

    Jediný problém by mohl být, kdyby ty hashovací funkce měly podobnou konstrukci. Pak by jednotlivé bity mohly být korelované a vzájemně se vyrušit (1^1 = 0^0 = 0). Myslím si ale, že něco takového udělat by muselo být celkem nápadné každému, kdo vidí více do hloubky jednotlivých hashovacích funkcí. Pro opatrnost bych tedy nevolil kombinace jako SHA-256 a SHA-512 (obojí patří do SHA2), ale třeba SHA2 s SHA3 by mělo být OK.

    Jinak v tom problém nevidím. Budou-li funkce produkovat nekorelovaný výstup, pak snad jakékoliv selhání kterékoliv funkce zachrání přítomnost alespoň jedné dobré funkce.

    V případě sřetězení místo xoru dokonce ani nevadí korelovaný výstup, akorát dostaneme delší hash.

    Nelze ovšem moc spoléhat, že takto ze dvou nebezpečných hashovacích funkcí (např. MD5 a SHA1) vznikne jedna bezpečná. Útok to může ztížit, ale zrovna u MD5 a SHA1 jsem po zceřejnění Shattered popisoval, že najít současnou kolizi MD5 s SHA1 je zřejmě realizovatelné s dostatečným (byť ne malým) rozpočtem. Stručně, je potřeba najít několik (na sobě závislých) kolizí SHA1, z toho spočítat multikolize (počet kolizních párů nám naroste exponenciálně) a následně mezi nimi dělat kolize MD5 hrubou silou. Kolize MD5 hrubou silou sice může znít jako špatný vtip, ale je to díky narozeninovému paradoxu zvládnutelné a lépe to neumím, pokud chci vybírat z kolizních párů pro SHA1.