Шифрования DES, как подлючить кириллицу? - C#

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

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

Всем привет! Друзья вот код программы :
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using System.IO;
  10. using System.Security.Cryptography;
  11.  
  12. namespace DESCryptoSystem
  13. {
  14. public partial class DESForm : Form
  15. {
  16. public DESForm()
  17. {
  18. InitializeComponent();
  19. }
  20. private void button1_Click(object sender, EventArgs e)
  21. {
  22. if (openFileDialog1.ShowDialog() == DialogResult.OK)
  23. {
  24. txtPathFile.Text = openFileDialog1.FileName;
  25. }
  26. }
  27. private void button2_Click(object sender, EventArgs e)
  28. {
  29. if (saveFileEncrypt.ShowDialog() == DialogResult.OK)
  30. {
  31. if (saveFileKey.ShowDialog() == DialogResult.OK)
  32. {
  33. FileStream fs = File.Create(saveFileEncrypt.FileName);
  34. DESCryptoServiceProvider dsp = new DESCryptoServiceProvider();
  35. CryptoStream cs = new CryptoStream(fs, dsp.CreateEncryptor(), CryptoStreamMode.Write);
  36. StreamWriter sw = new StreamWriter(cs);
  37. StreamReader sr = new StreamReader(txtPathFile.Text);
  38. string line = sr.ReadLine();
  39. while (line != null)
  40. {
  41. sw.WriteLine(line);
  42. line = sr.ReadLine();
  43. }
  44. sr.Close();
  45. sw.Flush();
  46. sw.Close();
  47. FileStream keyFs = File.Create(saveFileKey.FileName);
  48. BinaryWriter bw = new BinaryWriter(keyFs);
  49. bw.Write(dsp.Key);
  50. bw.Write(dsp.IV);
  51. bw.Flush();
  52. bw.Close();
  53. }
  54. }
  55. }
  56. private void button3_Click(object sender, EventArgs e)
  57. {
  58. if (openKeyFileDialog2.ShowDialog() == DialogResult.OK)
  59. {
  60. if (saveDecryptFileDialog1.ShowDialog() == DialogResult.OK)
  61. {
  62. FileStream keyFs = File.OpenRead(openKeyFileDialog2.FileName);
  63. FileStream fsOut = File.Create(saveDecryptFileDialog1.FileName);
  64. FileStream fsIn = File.OpenRead(txtPathFile.Text);
  65. DESCryptoServiceProvider dsp = new DESCryptoServiceProvider();
  66. BinaryReader br = new BinaryReader(keyFs);
  67. dsp.Key = br.ReadBytes(8);
  68. dsp.IV = br.ReadBytes(8);
  69. CryptoStream cs = new CryptoStream(fsIn, dsp.CreateDecryptor(), CryptoStreamMode.Read);
  70. StreamWriter sw = new StreamWriter(fsOut);
  71. StreamReader sr = new StreamReader(cs);
  72. sw.Write(sr.ReadToEnd());
  73. sr.Close();
  74. sw.Flush();
  75. sw.Close();
  76. fsOut.Close();
  77. fsIn.Close();
  78. keyFs.Close();
  79. }
  80. }
  81. }
  82. }
  83. }
При расшифровании кирилицы т.е русс. буквы не правильно выдает начальную данные, как подключить кириллицы(или юникод) для правильного шифрование.

Решение задачи: «Шифрования DES, как подлючить кириллицу?»

textual
Листинг программы
  1.     StreamWriter sw = new StreamWriter(cs, Encoding.UTF8);

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


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

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

7   голосов , оценка 3.571 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут