Прочитать текст из файла, зашифровать по алгоритму RSA и вывести результат в RichTextBox - C#

Узнай цену своей работы

Формулировка задачи:

Здравствуйте программирую на шарпе сравнительно не долго - столкнулся с проблемой есть код который выводит в richTextBox1 текст открываемого файла - необходимо чтобы перед открытием этот файл был декриптован по алгоритму RSA код открытия
        private void открытьToolStripMenuItem_Click(object sender, EventArgs e)
        {
            Stream myStream = null;
            OpenFileDialog openFileDialog1 = new OpenFileDialog();
 
            openFileDialog1.InitialDirectory = "c:\\";
            openFileDialog1.Filter = "txt files (*.txt)|*.txt";
            openFileDialog1.FilterIndex = 2;
            openFileDialog1.RestoreDirectory = true;
 
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    if ((myStream = openFileDialog1.OpenFile()) != null)
                    {
                        using (myStream)
                        {
                            System.IO.StreamReader streamReader;
                            streamReader = new System.IO.StreamReader(openFileDialog1.FileName,
                            System.Text.Encoding.GetEncoding("Utf-8"));
                            richTextBox1.Text = streamReader.ReadToEnd();
                            streamReader.Close();
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: Could not read file from disk. Original error: " + ex.Message);
                }
            }
        }
понимаю что это надо делать где-то в steamreader перерыл уже кучу примеров использования rsa но так и не смог сообразить ключ примерно так будет
RSACryptoServiceProvider publicKey = new RSACryptoServiceProvider();
        publicKey.FromXmlString("<RSAKeyValue><Modulus>ключ</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>");
вообщем подскажите кодом как можно при открытии файла производить одновременно его декрипт по RSA Заранее благодарю

Решение задачи: «Прочитать текст из файла, зашифровать по алгоритму RSA и вывести результат в RichTextBox»

textual
Листинг программы
 private void открытьToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog dialog = new OpenFileDialog();
            dialog.Filter = "Текстовые файлы |*.*";
 
            if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                RSACryptoServiceProvider rsa = new RSACryptoServiceProvider();
                rsa.FromXmlString("<RSAKeyValue><Modulus>0jhwehyiuhiewhvge5vRJzWjN11JrjF/Lb77yKCGMoqpnAg7KPDXltIARWgEPsmURQdoOFRvmTI9u4ieaPvFIB4rk+sdEl4gRUt6gY7h0KvYD4riIBbq2m4zrctcZDYBeKEvlgnn5D1mBgj/nSOAVc1L+ybdgchopnghd=</Modulus><Exponent>AQAB</Exponent></RSAKeyValue>");
 
                UnicodeEncoding unicode = new UnicodeEncoding();
                byte[] toDecrypt = File.ReadAllBytes(dialog.FileName);
                byte[] decrypted = rsa.Decrypt(toDecrypt, false);// тут пишет что Размер данных для                   дешифрования превышает максимум для этого модуля, 128 байт.
                richTextBox1.Text = unicode.GetString(decrypted);
                rsa.Dispose(); // тут пишет что недоступен из за уровня защиты
            }
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 3.8 из 5
Похожие ответы