Tienes razón. Salting realmente hace que el pirateo de la contraseña sea más difícil para las contraseñas no triviales, pero si algunos usuarios usan contraseñas comunes, todavía pueden hackear la contraseña mediante fuerza bruta unas cuantas veces.
Si la sal es pública / se almacena junta, como en su caso, solo se usa para evitar la búsqueda de hashes de contraseña pre-calculada, es decir, tabla de arco iris.
Por lo tanto, si se tratara de algoritmos similares en aplicaciones web, sugeriría que también puede preparar una clave secreta constante específica de la aplicación para la contraseña de los usuarios, antes de aplicar hashing con el algoritmo salado. Por supuesto, si se filtra la clave secreta de la aplicación, esta mejora de seguridad desaparecerá. Por lo tanto, almaceno esa clave secreta en el código para separarla de la base de datos de hashes de contraseña. (Eso es inalcanzable en el archivo shadow de Linux)
Comentario adicional : el punto principal de agregar la "clave secreta" (o pimienta) extra: incluso el hash de una contraseña simple no puede ser una fuerza bruta solo unos pocos miles de veces para descifrarla ( son tan difíciles como contraseñas complicadas a fuerza bruta), dado que el pirata informático solo conoce el hash de la contraseña, pero aún no puede ver la clave secreta en su código. (Mientras tanto, no protege los intentos de fuerza bruta de la contraseña del sitio web, guarda el intento fuera de línea de descifrar el hash solo)