Ir al contenido principal

Encriptar texto con MD5 en java


Saludos amigos en esta oportunidad enfocamos la seguridad a java, para todo lo que se refiere a la encripcion de contraseñas en java a continuacion dejo una funcion que encripta en md5:


//funcion para encriptar md5
public static String md5(String clear) throws Exception {
    MessageDigest md = MessageDigest.getInstance("MD5");
    byte[] b = md.digest(clear.getBytes());
    int size = b.length;
    StringBuffer h = new StringBuffer(size);
    //algoritmo y arreglo md5
        for (int i = 0; i < size; i++) {
            int u = b[i] & 255;
                if (u < 16) {
                    h.append("0" + Integer.toHexString(u));
                }
               else {
                    h.append(Integer.toHexString(u));
               }
           }
      //clave encriptada
      return h.toString();
    }

La forma de llamar esta funcion  es la siguiente:
  
//para llamar la  funcion md5 
try {
    System.out.println(md5(jtfPalabra.getText()));
   }catch (Exception ex){}


Deja tu comentario o agradecimiento...

Comentarios

  1. Hola gracias por compartir el algoritmo.

    cual seria la forma o el metodo para desencriptar..???

    Saludos...

    ResponderEliminar
  2. millones y millones de graciaaas! :D había tenido muchos problemas con este método... para compararlo con una BD y que pudiera ingresar al sistema y gracias a ti lo logre :D

    ResponderEliminar
  3. Gracias por el método! me has salvado de una bien grande.
    Saludos :) !

    ResponderEliminar
  4. Al Colocar ññññññññññññññ o palabras largas con ñ, se cuelga el programa...

    ResponderEliminar
  5. Acabo de hacer la pruebas con el codigo y en la aplicacion donde utilizo no se cuelga como tu mencionas, lo que puede estar ocurriendo es algún error en la forma en la que lo llamas o si lo utilizas embebido en alguna web (Applet) verifica eso.... Saludos

    ResponderEliminar
  6. MD5, es un tipo de encriptación de una sola via, lo cual significa que no se puede revertir ahora esto no quiere decir que no existan metodos que lo hagan pero lo que se hace es guardar el hash, y luego convertir el input del usuario con el algoritmo y comparar el resultante con lo que tienes guardado.

    yo nunca lo he intentado esto seria mas un tema de hacking puedes utilizar otro tipo de encriptación que si lo permita.

    ResponderEliminar
  7. como puedo usar el md5 en jsp

    ResponderEliminar
  8. Se que ya tiene mucho tiempo pero quiero agradecer ya que me funciono para Android todo perfecto. Muchas gracias y disculpas por revivir post tan viejos

    ResponderEliminar
  9. Felicidades Gran Aporte. Saludos desde El Salvador.

    ResponderEliminar
  10. no me funciona :( la ultimas lineas donde se llama a ala funcion es en otra clase????

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Fireworks CS3 portable

Para que hagas los logos, botones e imagenes para tus aplicaciones facil y rapido... ¿Qué es Fireworks? Adobe Fireworks es una aplicación en forma de estudio (basada en la forma de estudio de Adobe Flash ), pero con más parecido a un taller destinado para el manejo híbrido de gráficos vectoriales con Gráficos en mapa de bits y que ofrece un ambiente eficiente tanto para la creación rápida de prototipos de sitios Web e interfaces de usuario, como para la creación y Optimización de Imágenes para web. Originalmente fue desarrollado por Macromedia , compañía que fue comprada en 2005 por Adobe Systems . Fireworks está disponible de forma individual o integrado en Adobe CS3/CS4/CS5 y por tanto ha sido diseñado para integrarse con otros productos de Adobe, como Dreamweaver y Flash . Integración con Adobe Flash La integración con Adobe Flash se ha ido reduciendo paulatinamente desde que Flash, en su versión 7, integró la herramienta PolyStar que hace un polígono

Pasar de una ventana a otra en java

Hola a todos en esta oportunidad estamos postiando algo que cuando empezamos con java es muy necesario y es como pasar de una ventana a otra, ya sea JDialog o JFrame; creados en tiempo de ejecucion o en aplicaciones de escritorio: Para llamar a un JDialog:        JDialog1 dialogo = new JDialog1 ( this , true );        dialogo . show (); y para cerrar un JDialogo de una plicacion de escritorio se puede utilizar:        dispose (); Para llamar a un JFrame:        JFrame1 frame = new JFrame1 ();        frame . show (); Para cerrar un JFrame de una plicacion de escritorio:                 dispose ();   o tambien: System. exit (0); y si se contruye a partir de la clase JFrame se coloca el siguiente codigo en la parte publica del documento:       setDefaultCloseOperation ( EXIT_ON_CLOSE ); Espero los siguientes ejemplos les sean de mucha ayuda... Deja tu comentario o agradecimiento.

Limitar texto con CSS

HTML: <span class= "text" > Hello world this is a long sentence </span> CSS: .text {   display : block ;   width : 100px ;   overflow : hidden ;   white-space : nowrap ;   text - overflow : ellipsis; }  RESULTADO: Hello world t...