ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Cifradi vigenere


Enviado por   •  3 de Abril de 2018  •  Tutoriales  •  1.871 Palabras (8 Páginas)  •  112 Visitas

Página 1 de 8

package _vigenere_;

public class Vigenere extends javax.swing.JFrame {

private String tabla = "abcdefghijklmnñopqrstuvwxyzáéíóúABCDEFGHIJKLMNÑOPQRSTUVWXYZÁÉÍÓÚ1234567890.,;_:+-*/ @$€#¿?!¡=()[]{}\\\"";

   

 public Vigenere() {

     

        initComponents();

       

        setLocationRelativeTo(this);

    }

       private String Limpiar_texto(String texto)

     {

         texto = texto.replaceAll("\n", "");  

         

        for(int x = 0; x < texto.length(); x++)

        {

            int posicion = tabla.indexOf(texto.charAt(x));

           

            if (posicion == -1)

            {

                texto = texto.replace(texto.charAt(x), ' ');

            }

        }        

        return texto;

    }

       

public  String Encriptar(String texto,String clave)

{

  String texto_limpioo = Limpiar_texto(texto);

       

  String cifrado = "";

 

  for(int t = 0,k= 0; t < texto_limpioo.length(); t++,k= (k+1) % clave.length())

  {

    int posicion = (tabla.indexOf(texto_limpioo.charAt(t)) + tabla.indexOf(clave.charAt(k))) % tabla.length();

   cifrado += tabla.charAt(posicion );

  }

   return cifrado;

}

public String Desencriptar(String texto,String clave  )

{

  String texto_limpioo = Limpiar_texto(texto);  

   

  String descifrado = "";

  for(int t = 0, c = 0; t < texto_limpioo.length(); t++, c = (c +1) % clave .length())

  {

   int posicion = (tabla.indexOf(texto_limpioo.charAt(t)) - tabla.indexOf(clave.charAt(c)));

   posicion = (posicion < 0)?(posicion + tabla.length()): posicion;

   descifrado += tabla.charAt(posicion);

   }

  return descifrado;

}

    //                          

    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();

        area_salida = new javax.swing.JTextArea();

        jScrollPane2 = new javax.swing.JScrollPane();

        area_entrada = new javax.swing.JTextArea();

        boton_encriptar = new javax.swing.JButton();

        boton_desencriptar = new javax.swing.JButton();

        jLabel1 = new javax.swing.JLabel();

        campo_clave = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        area_salida.setColumns(20);

        area_salida.setRows(5);

        jScrollPane1.setViewportView(area_salida);

        area_entrada.setColumns(20);

        area_entrada.setRows(5);

        jScrollPane2.setViewportView(area_entrada);

        boton_encriptar.setText("Encriptar");

        boton_encriptar.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                boton_encriptarActionPerformed(evt);

            }

        });

        boton_desencriptar.setText("Desencriptar");

        boton_desencriptar.addActionListener(new java.awt.event.ActionListener() {

            public void actionPerformed(java.awt.event.ActionEvent evt) {

                boton_desencriptarActionPerformed(evt);

            }

        });

        jLabel1.setText("Introduzca clave");

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

        getContentPane().setLayout(layout);

        layout.setHorizontalGroup(

            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

            .addGroup(layout.createSequentialGroup()

                .addContainerGap()

                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

                    .addComponent(jScrollPane2)

                    .addComponent(jScrollPane1)

                    .addGroup(layout.createSequentialGroup()

                        .addComponent(boton_encriptar, javax.swing.GroupLayout.PREFERRED_SIZE, 107, javax.swing.GroupLayout.PREFERRED_SIZE)

...

Descargar como (para miembros actualizados)  txt (7.1 Kb)   pdf (51.9 Kb)   docx (11.9 Kb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com