Hash de senhas
Armazenar senhas como hashes propositalmente lentos e com salt, em vez de digests rápidos.
Um hash rápido como o SHA-256 permite que o atacante teste bilhões de tentativas por segundo em uma GPU. O hash de senhas usa funções caras em tempo ou memória por projeto e acrescenta um salt único a cada senha, de modo que senhas idênticas geram hashes diferentes e as rainbow tables pré-calculadas deixam de ajudar.
O bcrypt é de 1999 e continua muito usado. O PBKDF2 foi padronizado na RFC 2898, em 2000, o scrypt foi publicado em 2009 e o Argon2 venceu a Password Hashing Competition em 2015. O ponto é que o custo pode ser aumentado à medida que o hardware fica mais rápido.