示例#1
0
        private void btnCifrar_Click(object sender, EventArgs e)
        {
            try
            {
                string textoClaro = string.Empty;
                bool   flag       = false;

                textoClaro = rtUp.Text;

                String key = tbKey.Text;

                if (cbKey.Text.Contains("128"))
                {
                    if (tbKey.TextLength == 16)
                    {
                        flag = true;
                    }
                    else
                    {
                        MessageBox.Show("El tamaño de llave para 128 bits es de 16 caracteres.");
                    }
                }
                if (cbKey.Text.Contains("192"))
                {
                    if (tbKey.TextLength == 24)
                    {
                        flag = true;
                    }
                    else
                    {
                        MessageBox.Show("El tamaño de llave para 192 bits es de 24 caracteres.");
                    }
                }
                if (cbKey.Text.Contains("256"))
                {
                    if (tbKey.TextLength == 32)
                    {
                        flag = true;
                    }
                    else
                    {
                        MessageBox.Show("El tamaño de llave para 256 bits es de 32 caracteres.");
                    }
                }

                if (flag)
                {
                    Cifrado       = AES_Class.encrypt(Encoding.ASCII.GetBytes(textoClaro), Encoding.ASCII.GetBytes(key));
                    bytesAGuardar = Cifrado;

                    rtDown.Text = System.Text.Encoding.Default.GetString(Cifrado);
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
示例#2
0
        private void btnDescifrar_Click(object sender, EventArgs e)
        {
            bool flag = false;

            if (cbKey.Text.Contains("128"))
            {
                if (tbKey.TextLength == 16)
                {
                    flag = true;
                }
                else
                {
                    MessageBox.Show("El tamaño de llave para 128 bits debe ser de 16 caracteres.");
                }
            }
            if (cbKey.Text.Contains("192"))
            {
                if (tbKey.TextLength == 24)
                {
                    flag = true;
                }
                else
                {
                    MessageBox.Show("El tamaño de llave para 192 bits debe ser de 24 caracteres.");
                }
            }
            if (cbKey.Text.Contains("256"))
            {
                if (tbKey.TextLength == 32)
                {
                    flag = true;
                }
                else
                {
                    MessageBox.Show("El tamaño de llave para 256 bits debe ser de 32 caracteres.");
                }
            }

            if (flag)
            {
                String textoCifrado  = rtUp.Text;
                String key           = tbKey.Text;
                byte[] bytesFromHexa = GetBytesFromFile(txtFile.Text);

                byte[] Respuesta = AES_Class.decrypt(bytesFromHexa, Encoding.ASCII.GetBytes(key));
                bytesAGuardar = Respuesta;
                rtDown.Text   = System.Text.Encoding.Default.GetString(Respuesta);
            }
        }