Rainbow tables (duhové tabulky) jsou sofistikovaný a efektivní nástroj používaný v kryptografii a kybernetické bezpečnosti k prolomení hesel hashovaných pomocí hashovacích funkcí. Jedná se o předpočítané tabulky, které mapují hashované hodnoty zpět na jejich původní hesla. Tyto tabulky umožňují útočníkům rychle najít odpovídající heslo k danému hashi, aniž by museli provádět časově náročný proces brute-force útoku, který zkouší všechny možné kombinace znaků až do nalezení shody.
Rainbow tables využívají matematické techniky k efektivní redukci prostoru potřebného pro uložení vztahů mezi hashovanými hodnotami a původními hesly. Toho je dosaženo pomocí řetězců redukcí a hashování, které transformují dlouhé seznamy možných hesel do kompaktnější formy. Každý řetězec v tabulce začíná původním heslem, provádí se hash, poté se použije redukční funkce k vytvoření nového hesla, a proces se opakuje. Výsledkem je řada „duhových“ řetězců, které pokrývají široký rozsah možných hesel.
Rainbow tables jsou primárně používány pro prolomení hesel uložených ve formě hashů, bez nutnosti saltingu. Salting hesel – proces přidání náhodných dat k heslu před jeho hashováním – je běžná obranná strategie, která značně snižuje účinnost rainbow tables, protože každé heslo má svůj jedinečný salt, což vyžaduje vytvoření zvláštní rainbow table pro každý salt.
Rainbow tables jsou mocným nástrojem v rukou útočníků pro prolomení hashovaných hesel, zejména tam, kde nebyla použita ochranná opatření, jako je salting. Pochopení principů rainbow tables a mechanismů obrany proti nim je klíčové pro vývojáře a bezpečnostní odborníky, aby mohli chránit citlivá hesla a data před neoprávněným přístupem.
https://en.wikipedia.org/wiki/Rainbow_table
https://cs.wikipedia.org/wiki/Duhov%C3%A1_tabulka