La clase MessageDigest permite el uso de los algoritmos MD2, MD5, SHA-1, SHA-256, SHA-348, SHA-512.
En el siguiente código se puede observar un ejemplo de MD5, SHA-1 y SHA-512:
Como se puede observar simplemente obtenemos la instancia del algoritmo que se desea, le agregamos la cadena en forma de bytes con el método update y lo trasformamos. Para poder visualizarlo en forma Hexadecimal se utiliza la clase Hex que se obtiene de la librería commons-codec de Apache, la cual se puede descargar en el siguiente link o directamente de la pagina de Apache.
Al final se obtiene lo siguiente:
793d5ecd344bd91c808917d8821ae74b4c84550964b67906bdeb6c7dc0146bef90b5a2b326ac31049b0e3930a0d697b760c13236596da2d142e6947a1e3386b5
8e8725edeaa090c62110e9c7b23a243873d61b36
1462a2da3e9d67e5824c71b2ac91bc66
hay alguna forma de revertirlo sabiendo la string?
ResponderEliminarLo que se produce con estos algoritmos de cifrado no se pueden revertir. Existen métodos para encontrar la clave original como la tabla arco iris pero estos simplemente son una tabla de claves generadas para comparar.
EliminarHola, como podria pasar el hash de salida a su representacion en binario?
ResponderEliminarComo pasarlo auna variable string el resultado
ResponderEliminarHola, es siempre necesario encapsular el proceso en un try catch?
ResponderEliminarNo siempre. Esto es para poder manejar el error en caso algo salga mal. Siempre puedes dejar que el código solo falle.
Eliminar