Código PHP:
public String encriptar(String contrasenna) throws IllegalStateException {
MessageDigest md = null;
try {
md = MessageDigest.getInstance("SHA-512"); // Instancia de generador SHA-2
}
catch(NoSuchAlgorithmException e) {
throw new IllegalStateException(e.getMessage());
}
try {
md.update(contrasenna.getBytes("UTF-8")); // Generación de resumen de mensaje
}
catch(UnsupportedEncodingException e) {
throw new IllegalStateException(e.getMessage());
}
byte raw[] = md.digest(); // Obtención del resumen de mensaje
String hash = (new BASE64Encoder()).encode(raw); // Traducción a BASE64
return hash;
}
En Windows me funciona perfectamente, pero he pasado el programa a Linux y no me funciona la encriptación de contraseñas
¿El SHA-2 es dependiente del sistema operativo? ¿O qué puede estar fallando?