Estoy usando php y estaba buscando almacenar contraseñas en una base de datos mysql. Me preguntaba qué sería más seguro utilizar un cifrado hash o openssl con sal. Si utilizo un hash salado generado al azar único para cada usuario y almaceno la sal en la base de datos, ¿hay alguna manera de que alguien pueda descubrir la sal y descifrarla? ¿O si uso la función openssl_public_encrypt para cifrar la contraseña usando la clave pública, es más seguro que usar un hash con sal?