Salting je bezpečnostní technika používaná v kryptografii k ochraně hesel uložených v databázích. Salting zabraňuje útočníkům v efektivním využití předpočítaných tabulek, známých jako rainbow tables, a dalších metod pro rychlé dekódování ukradených hesel. Tato technika zvyšuje bezpečnost ukládaných hesel tím, že do nich přidává náhodně generovanou hodnotu, známou jako „salt“.
Při registraci uživatele nebo změně hesla systém automaticky generuje náhodný řetězec (salt), který je poté připojen k uživatelskému heslu předtím, než je heslo hashováno. Tento proces vytváří unikátní hash pro každé heslo, dokonce i v případě, že dva uživatelé používají stejné heslo, protože každé heslo bude mít jiný salt.
Správná implementace saltingu vyžaduje, aby byl salt dostatečně dlouhý a náhodně generovaný pro každé heslo. Salt by měl být uložen společně s hashovaným heslem v databázi, aby bylo možné heslo ověřit při přihlašování uživatele. Při autentizaci se stejný salt použije na heslo zadané uživatelem, a výsledný hash se porovná s hashem uloženým v databázi.
Salting je klíčová technika v oblasti bezpečnosti hesel, která, když je správně implementována společně s bezpečnými hashovacími algoritmy, výrazně zvyšuje ochranu uživatelských hesel před různými typy kybernetických útoků. Tato metoda je nezbytnou součástí moderních strategií pro bezpečné ukládání hesel a ochranu osobních dat v digitálním prostředí.