Sól () lub ciąg zaburzający – dane losowe dodawane do hasła podczas obliczania funkcji skrótu przechowywanej w systemach informatycznych. Celem soli jest ochrona systemowej bazy haseł przed atakami słownikowymi. Jako że sól jest przechowywana jawnie, nie ma ona znaczenia względem ataków brute-force. Podobne znaczenie i zastosowanie ma wektor inicjujący.

Przyczyny stosowania Podczas tworzenia skrótów Podczas tworzenia skrótów, które mają być trudne do podrobienia (tzn. trudno ustalić dane, które będą dawały dany skrót), stosuje się sól w celu powiększenia rozmiaru danych będących argumentem funkcji skrótu bez potrzeby rzeczywistego zwiększenia rozmiarów danych. Ma to zastosowanie przy zapisywaniu skrótów np. haseł, gdy nie możemy zmusić użytkowników do wydłużenia hasła.

Podczas sprawdzania skrótu (np. weryfikacji hasła przy logowaniu) należy dodać sól w tym samym miejscu, w którym została dodana podczas tworzenia skrótu (np. przy zakładaniu konta), do którego porównujemy.

Przykład obrony przez zwiększenie liczby kombinacji Załóżmy, że mamy 3-znakowe hasło.