http://ompldr.org/vZnMxZQ
Hasta el momento solo puedo hacer que lo que se ingresa pase a donde debiera estar el texto cifrado en MD5, esto lo hago creando el evento en el jButton "convertir" con el siguiente código
Código
.
md5Text.setText(ingresoTexto.getText());
El problema es que no se como ni donde poner el código para cifrar de texto a MD5, si hacerlo a continuación de
Código
. o en una clase aparte y crear instancias y llamarlas dentro de la clase "ventana".
md5Text.setText(ingresoTexto.getText());
como se puede ver tengo 3 clases,
- "Cifrados" que es la main, y que solo tengo el siguiente código
Código
.
package cifrados; public class Cifrados { ventana instancia = new ventana(); instancia.setVisible(true); } }
- "Prueba" que es donde tengo el código que hace el trabajo de convertir a MD5, que lo dejo acá
Código
package cifrados; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class prueba { /*":", no es usado como operador, que se utilizará para iteración a través de la matriz de la matriz denominada "digest" #se conserva la variable aux e itera el array digest * Convierte un arreglo de bytes a String usando valores hexadecimales * @param digest arreglo de bytes a convertir * @return String creado a partir de digest */ for(byte aux : digest){ int b = aux & 0xff; } return hash; } /*** * cifra un mensaje de texto mediante algoritmo de resumen de mensaje. * @param message texto a cifrar * @param algorithm algoritmo de encriptacion, MD5 * @return mensaje cifrado */ byte[] digest = null; byte[] buffer = message.getBytes(); try{ messageDigest.reset(); messageDigest.update(buffer); digest = messageDigest.digest(); } return toHexadecimal(digest); } }
- "ventana" que es donde tengo el entorno gráfico, con el siguiente código.
Código
package cifrados; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import javax.swing.JOptionPane; import cifrados.prueba; public ventana() { initComponents(); } private void initComponents() { jLabel1.setText("Ingrese Texto"); ingresoTexto.setText("jTextField1"); convertir.setText("Convertir"); convertirActionPerformed(evt); } }); jLabel2.setText("MD5"); md5Text.setText("jTextField2"); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(57, 57, 57) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addComponent(jLabel2) .addComponent(jLabel1)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) .addComponent(md5Text)) .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() .addComponent(convertir) .addGap(211, 211, 211)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(25, 25, 25) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(ingresoTexto, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel1)) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(convertir) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(md5Text, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jLabel2)) ); pack(); } /*creo el evento, lo que esta en "ingresoTexto" pase a "md5Text"*/ md5Text.setText(ingresoTexto.getText()); /*aca deberia ingresar el codigo de la clase "prueba" ?? o solo deberia crear una instancia de la clase "prueba" pidiendo el ingreso de datos y otra para convertir a MD5 ??*/ } try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { break; } } java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); java.util.logging.Logger.getLogger(ventana.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } public void run() { new ventana().setVisible(true); } }); } }