private void btnCifrar_Click(object sender, RoutedEventArgs e) { try { ManipulacaoArquivo manipulacaoarquivo = new ManipulacaoArquivo(rsaBits); if (textoOriginal.Text.Length == 0 || this.textoOriginal.Text.Length > this.tamanhoTexto) { throw new ArgumentException("Digite uma mensagem de até " + tamanhoTexto.ToString() + " caracteres!"); } if (!Directory.Exists(edtCaminhoRepositorio.Text)) { throw new ArgumentException("Não foi encontrado o caminho do repositório de chaves públicas: " + edtCaminhoRepositorio.Text); } string arquivoChavePublica = ""; manipulacaoarquivo.getNomeArquivoChavePublica(edtCaminhoRepositorio.Text, ref arquivoChavePublica); if (arquivoChavePublica != "") { Cursor = System.Windows.Input.Cursors.Wait; btnCifrar.Content = "Aguarde..."; btnCifrar.IsEnabled = false; System.Windows.Forms.Application.DoEvents(); // Libera Mensagens do processamento do Windows string xmlChavePublica = manipulacaoarquivo.carregarConteudo(arquivoChavePublica); if (xmlChavePublica != "") { string bitsString = xmlChavePublica.Substring(0, xmlChavePublica.IndexOf("</RSABits>") + 10); xmlChavePublica = xmlChavePublica.Replace(bitsString, ""); // Limpando parte da sring int bits = Convert.ToInt32(bitsString.Replace("<RSABits>", "").Replace("</RSABits>", "")); UtilizacaoRSA rsa = new UtilizacaoRSA(bits); rsa.mensagem = textoOriginal.Text; rsa.xmlChave = xmlChavePublica; textoCifrado.Text = rsa.Cifrar(); textoOriginal.Text = ""; } } } catch (Exception E) { System.Windows.MessageBox.Show(E.Message, "Erro"); } finally { Cursor = System.Windows.Input.Cursors.Arrow; btnCifrar.Content = "Cifrar >>"; btnCifrar.IsEnabled = true; } }
private void btnTextoCarregar_Click(object sender, RoutedEventArgs e) { if (!Directory.Exists(edtCaminhoTrocaMensagem.Text)) { System.Windows.MessageBox.Show("Diretório de troca de mensagens não encontrado!", "Erro"); } else { string arquivo = ""; ManipulacaoArquivo manipulacaoarquivo = new ManipulacaoArquivo(rsaBits); manipulacaoarquivo.getNomeArquivoMensagemCriptografadaExistente(ref arquivo, edtCaminhoTrocaMensagem.Text); if (arquivo != "") { textoCifrado.Text = manipulacaoarquivo.carregarConteudo(arquivo); textoOriginal.Text = ""; } } }
private void btnDecifrar_Click(object sender, RoutedEventArgs e) { try { if (!Directory.Exists(edtCaminhoRepositorio.Text)) { throw new Exception("Diretório do caminho do repositório não foi encontrado!"); } ManipulacaoArquivo manipulacaoarquivo = new ManipulacaoArquivo(rsaBits); if (textoCifrado.Text.Length == 0) { System.Windows.MessageBox.Show("Cole ou carrege algum texto cifrado!", "Erro"); } else { string arquivo = ""; manipulacaoarquivo.getNomeArquivoChavePrivadaExistente(ref arquivo); if (arquivo != "") { Cursor = System.Windows.Input.Cursors.Wait; btnDecifrar.Content = "Aguarde..."; btnDecifrar.IsEnabled = false; System.Windows.Forms.Application.DoEvents(); // Libera Mensagens do processamento do Windows string xmlChavePrivada = manipulacaoarquivo.carregarConteudo(arquivo); if (xmlChavePrivada != "") { string bitsString = xmlChavePrivada.Substring(0, xmlChavePrivada.IndexOf("</RSABits>") + 10); xmlChavePrivada = xmlChavePrivada.Replace(bitsString, ""); // Limpando parte da sring int bits = Convert.ToInt32(bitsString.Replace("<RSABits>", "").Replace("</RSABits>", "")); UtilizacaoRSA rsa = new UtilizacaoRSA(bits); rsa.mensagem = textoCifrado.Text; rsa.xmlChave = xmlChavePrivada; textoOriginal.Text = rsa.Decifrar(); textoCifrado.Text = ""; } } } } catch (Exception E) { this.textoOriginal.Text = ""; System.Windows.MessageBox.Show(E.Message, "Erro"); } finally { Cursor = System.Windows.Input.Cursors.Arrow; btnDecifrar.Content = "<< Decifrar"; btnDecifrar.IsEnabled = true; } }