Salted Challenge Response Authentication Mechanism (SCRAM), to oparty na hasłach protokół wzajemnego uwierzytelniania. Ma on utrudnić atak polegający na podsłuchiwaniu (tj. man-in-the-middle). Korzystając z kryptograficznych technik mieszania, klient może udowodnić serwerowi, że użytkownik zna sekret uzyskany z hasła użytkownika bez wysyłania samego hasła. Serwer może udowodnić klientowi, że zna sekret wyprowadzony z hasła użytkownika również bez konieczności przesyłania samego hasła.
Używając funkcji skrótu, tajne informacje (tj. hasło), oprócz kryptograficznie bezpiecznej wartości losowej, są wykorzystywane do obliczania innej wartości na każdym końcu kanału komunikacyjnego. Przesyłana jest ta obliczona wartość. Po otrzymaniu przesłanej wartości strony komunikujące się porównują swoją obliczoną wartość z wartością odebraną. Jeśli te wartości są zgodne, proces uwierzytelniania się powiedzie, w przeciwnym razie zakończy się niepowodzeniem.
Chociaż SCRAM zapewnia dodatkowe zabezpieczenie przed podsłuchiwaniem, zaleca się używanie SCRAM przez bezpieczny kanał komunikacyjny (tj. TLS).