<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-4081939431034005983</atom:id><lastBuildDate>Sat, 14 Sep 2024 15:39:16 +0000</lastBuildDate><category>исходники c# скачать</category><category>C#</category><category>C# sources</category><category>безопасность информации</category><category>криптография</category><category>DES</category><category>TextBox</category><category>Triple DES</category><category>Шифрование с открытым ключом</category><category>блокнот</category><category>исходники</category><category>примеры</category><category>программирование</category><category>руководство</category><category>симметричное шифрование</category><category>симметричный ключ</category><category>создание программ</category><title>Исходники c# скачать - блог Павел Белоус</title><description>Исходники c# скачать - блог Павел Белоус - блог по программированию на C# .NET, C++</description><link>http://pavelbilous.blogspot.com/</link><managingEditor>noreply@blogger.com (Pavel Bilous)</managingEditor><generator>Blogger</generator><openSearch:totalResults>12</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-5592139613571548995</guid><pubDate>Fri, 06 Aug 2010 21:05:00 +0000</pubDate><atom:updated>2010-08-07T00:16:54.845+03:00</atom:updated><title>Создание файла и считывание его информации (время создания, атрибуты)</title><description>Для работы с файлами в C# есть два класса - &lt;b&gt;FileInfo&lt;/b&gt; и &lt;b&gt;FileStream&lt;/b&gt;. &lt;br /&gt;
Клас FileInfo содержит методы для создания, копирования, удаления, перемещения и открытия файлов.&lt;br /&gt;
Клас FileStream предоставляет Stream (поток) в файле, поддерживая синхронные и асинхронные операции чтения и записи.&lt;br /&gt;
Используя эти два класса можно написать любой сложности программы для работы с файлами, начиная от блокнота и заканчивая Total Commander&#39;ом. Более того можно использовать их как элементы в сложных проектах для создания лога событий например...&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Исходный код:&lt;/i&gt;&lt;br /&gt;
&lt;blockquote&gt;// Создаем новый файл в корневом каталоге диска D:&lt;br /&gt;
FileInfo f = new FileInfo(@&quot;D:\Test.txt&quot;);&lt;br /&gt;
&lt;br /&gt;
FileStream fs = f.Create();&lt;br /&gt;
&lt;br /&gt;
// Выводим основную информацию о созданном нами файле.&lt;br /&gt;
Console.WriteLine(&quot;CreationTime {0}&quot;, f.CreationTime);&lt;br /&gt;
Console.WriteLine(&quot;Full Name: {0}&quot;, f.FullName);&lt;br /&gt;
Console.WriteLine(&quot;Attributes {0}&quot;, f.Attributes.ToString());&lt;br /&gt;
&lt;br /&gt;
Console.WriteLine(&quot;Нажмите любую клавишу для удаления файла.&quot;);&lt;br /&gt;
Console.ReadKey();&lt;br /&gt;
&lt;br /&gt;
// Закрываем FileStream. &lt;br /&gt;
fs.Close();&lt;br /&gt;
// Удаляем файл.&lt;br /&gt;
f.Delete();  &lt;/blockquote&gt;&lt;br /&gt;
Программа создает файл Test.txt на диске D:\&lt;br /&gt;
Если диска D:\ нет в системе, укажите путь С:\ или любой другой.</description><link>http://pavelbilous.blogspot.com/2010/08/blog-post.html</link><author>noreply@blogger.com (Pavel Bilous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-6533940391721050130</guid><pubDate>Sat, 17 Jul 2010 08:10:00 +0000</pubDate><atom:updated>2010-07-17T11:13:30.304+03:00</atom:updated><title>Заработок в интернете без вложений advego.ru</title><description>Буквально на днях заинтересовался как можно зарабатывать в интернете без вложений. И наткнулся на сайт &lt;a href=&quot;http://advego.ru/53rU446fYn&quot;&gt;Advego.ru&lt;/a&gt;. На сайте размещены заказы на несложные работы типа копировать-вставить или просто постить на форумах за деньги. Вывод средств через &lt;a href=&quot;http://webmoney.com/&quot;&gt;webmoney.com&lt;/a&gt; в долларах, минимальная сума вывода - не менее $5. Также есть партнерская программа, что значит - Advego выплачивает вам 25% от своей комиссии с оборота приглашённого вами пользователя. Для начинающих зарабатывать - самое то.</description><link>http://pavelbilous.blogspot.com/2010/07/blog-post.html</link><author>noreply@blogger.com (Pavel Bilous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-7780412956358029343</guid><pubDate>Fri, 21 May 2010 04:42:00 +0000</pubDate><atom:updated>2010-06-19T09:53:47.574+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>Работа со строками и масивами исходники</title><description>&lt;b&gt;Задача:&lt;/b&gt;&lt;br /&gt;
Дан текстовый файл. Считать текст из файла и вывести на экран, поменяв местами 2 соседних слова.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwsJy3YGGtFkBrUcZ91ehyh1yZEaxkDQY3bwSF0yol7yDXnKtRH4fJfFatDeIr-pjybU9BfJu8Jk_Spx899Envkq3_rKPudd0ZhFv_CirzCEBLy6iS6GK_rkrxUBNW4YfVUG9oTeNkkqw/s1600/111.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;323&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwsJy3YGGtFkBrUcZ91ehyh1yZEaxkDQY3bwSF0yol7yDXnKtRH4fJfFatDeIr-pjybU9BfJu8Jk_Spx899Envkq3_rKPudd0ZhFv_CirzCEBLy6iS6GK_rkrxUBNW4YfVUG9oTeNkkqw/s640/111.PNG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Написал, переделав немного прогу Pooh&#39;a - &lt;a href=&quot;http://www.cyberforum.ru/csharp-net/thread130233.html&quot;&gt;http://www.cyberforum.ru/csharp-net/thread130233.html&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Логика программы&lt;/b&gt; &lt;br /&gt;
&lt;br /&gt;
Все слова разделенные пробелом записываем как отдельный элемент массива splitedText. Потом каждые два элемента меняем местами.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Код&lt;/b&gt;&lt;br /&gt;
&lt;blockquote&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;// Что-бы не выйти за границы масива splitedText &lt;/span&gt;&lt;br style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;// от его длинны отнимаем 2&lt;/span&gt;&lt;br style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;for (int i = 0; i &amp;lt;= splitedText.Length - 2; i += 2)&lt;/span&gt;&lt;br style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;br style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp; Console.Write(splitedText[i + 1] + &quot; &quot; + splitedText[i] + &quot; &quot;);&lt;/span&gt;&lt;br style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot; /&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt;&lt;br /&gt;
&lt;b&gt;Скачать исходники работающей программы&lt;/b&gt; - &lt;a href=&quot;http://rapidgator.net/134281/Text_reader_and_switcher_.rar.html&quot;&gt;http://rapidgator.net/134281/Text_reader_and_switcher_.rar.html&lt;/a&gt;.</description><link>http://pavelbilous.blogspot.com/2010/05/blog-post_21.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwsJy3YGGtFkBrUcZ91ehyh1yZEaxkDQY3bwSF0yol7yDXnKtRH4fJfFatDeIr-pjybU9BfJu8Jk_Spx899Envkq3_rKPudd0ZhFv_CirzCEBLy6iS6GK_rkrxUBNW4YfVUG9oTeNkkqw/s72-c/111.PNG" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-3160514839865814280</guid><pubDate>Thu, 20 May 2010 00:30:00 +0000</pubDate><atom:updated>2010-06-08T10:23:00.284+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>Реализация шифра Цезаря</title><description>&lt;b&gt;Вступление&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Шифр Цезаря — один из древнейших шифров. При шифровании каждый символ заменяется другим, отстоящим от него в алфавите на фиксированное число позиций. Шифр Цезаря можно классифицировать как шифр подстановки, при более узкой классификации — шифр простой замены.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhaf8gVnoI6jKbxTcdhgHnkcoQtReESjhXPx_ZKry6hm-tR8eXaHsUFEcwshcHFEM05U_1JwIAb2f97UHcYjKMwxjevjV3Irn27A_4bdrC6yWWCauKw4btGyLXIT9tBY5Y4txX_7qJulg/s1600/320px-Caesar3.svg.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;134&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhaf8gVnoI6jKbxTcdhgHnkcoQtReESjhXPx_ZKry6hm-tR8eXaHsUFEcwshcHFEM05U_1JwIAb2f97UHcYjKMwxjevjV3Irn27A_4bdrC6yWWCauKw4btGyLXIT9tBY5Y4txX_7qJulg/s320/320px-Caesar3.svg.png&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Шифр назван в честь римского императора Гая Юлия Цезаря, использовавшего его для секретной переписки. Естественным развитием шифра Цезаря стал шифр Виженера. С точки зрения современного криптоанализа, шифр Цезаря не имеет приемлемой стойкости.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Пример&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Шифрование с использованием ключа k = 3. Буква С «сдвигается» на три буквы вперед и становится буквой «Ф». Твердый знак, перемещённый на три буквы вперед, становится буквой «э», и так далее:&lt;br /&gt;
&lt;br /&gt;
Оригинальный текст:&lt;br /&gt;
&lt;i&gt;Съешь же ещё этих мягких французских булок, да выпей чаю.&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Шифрованный текст&lt;br /&gt;
&lt;i&gt;Фэзыя йз зьи ахлш пвёнлш чугрщцкфнлш дцосн, жг еютзм ъгб.&lt;/i&gt;&lt;br /&gt;
&lt;b&gt;&lt;br /&gt;
&amp;nbsp; Исходный программный код&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
В программе используется переменная в которой забиты все символы англ. и русского алфавита, знаки препинания, пробел и символ новой строки.&lt;br /&gt;
&lt;br /&gt;
public static string abc = @&quot;`1234567890-=\][poiuytrewqasdfghjkl;&#39;/., mnbvcxzQWERTYUIOPLKJHGFDSAZXCVBNMйцукенгшщзхъэждлорпавыфячсмитьбюЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮ&quot; + Environment.NewLine;&lt;br /&gt;
&lt;br /&gt;
Символ &#39;@&#39;нужен для отключения &#39;\]&#39; последовательности символов.&lt;br /&gt;
&lt;br /&gt;
Вся логика программы сосредоточена в этой строчке:&lt;br /&gt;
&lt;br /&gt;
Data2 += abc[abc.IndexOf(Data[i]) + key];&lt;br /&gt;
&lt;br /&gt;
В переменную Data2 мы заносим шифрованную букву, которую вычисляем из ключа key. &lt;br /&gt;
&lt;i&gt;Пример&lt;/i&gt;&lt;br /&gt;
Hello world!&lt;br /&gt;
Первая буква (при i = 1) - &#39;H&#39;. Ищем под каким номером она стоит в нашем алфавите abc - abc.IndexOf(&#39;H&#39;). Допустим под номером 30. К этому числу + 3 = 33. Дальше присваиваем Data2 += abc[33];&lt;br /&gt;
&lt;br /&gt;
Исходники лежат здесь -&lt;br /&gt;
скачать с upload.com.ua - &lt;a href=&quot;http://upload.com.ua/get/901647108/&quot;&gt;http://upload.com.ua/get/901647108/&lt;/a&gt; и здесь - скачать с rapidgator.net - &lt;a href=&quot;http://rapidgator.net/133591/Caesar_cipher_implementation.rar.html&quot;&gt;http://rapidgator.net/133591/Caesar_cipher_implementation.rar.html&lt;/a&gt;</description><link>http://pavelbilous.blogspot.com/2010/05/blog-post_20.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhaf8gVnoI6jKbxTcdhgHnkcoQtReESjhXPx_ZKry6hm-tR8eXaHsUFEcwshcHFEM05U_1JwIAb2f97UHcYjKMwxjevjV3Irn27A_4bdrC6yWWCauKw4btGyLXIT9tBY5Y4txX_7qJulg/s72-c/320px-Caesar3.svg.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-1680136641096843624</guid><pubDate>Mon, 17 May 2010 21:34:00 +0000</pubDate><atom:updated>2010-06-08T10:24:42.236+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>Генератор паролей RNGCryptoServiceProvider</title><description>&lt;b&gt;Вступление&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Все люди пользуются интернетом. Или вскоре начнут им пользоватся. А зайдя в интернет они полюбому будут ичпользовать сервисы типа почты, одноклассников, интернет магазинов или вебмани (web money). А здесь везде и всюду нужно вписывать свой пароль. А надежный пароль сходу так и не придумаешь. Но если пароль не надежен, то и система где его используют не может считатся надежной. &lt;br /&gt;
&lt;br /&gt;
Надежным пароль считается, когда он:&lt;br /&gt;
&amp;nbsp;- не состоит из простых слов типа &quot;pavel&quot;, &quot;armagedon&quot; и др.&lt;br /&gt;
&amp;nbsp;- содержит цифры, &lt;br /&gt;
&amp;nbsp;- содержит знаки препинания, &lt;br /&gt;
&amp;nbsp;- содержит большие и маленькие буквы. &lt;br /&gt;
&lt;br /&gt;
Вот мне и пришла идея использовать стандартные средства C#, что-бы сделать простой генератор паролей. Все преимущества такой программы налицо - нажал на кнопочку - вот тебе надежный пароль, притом в программе можно выбрать любую длину. Потом можно записать его куда-нибудь в надежное место, или просто скинуть в блокнот себе на компе, а файл для надежности закодировать. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Общая инфа&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
В программе используется пространство имен System.Security.Cryptography. Оно предоставляет криптографические службы, включающие безопасное кодирование и декодирование данных, а также целый ряд других функций, таких как хэширование, генерация случайных чисел и проверка подлинности сообщений.&lt;br /&gt;
&lt;br /&gt;
Программа выглядит следующим образом:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicmOh60pKzwZnE1qiT1VVRrVJbcjWl8CGDRvKnK-6PhyphenhyphenQEKU0iCC03gP3S6wc0cGwebdYLbzZvARZF5FOc0IxA4h-TZTaBaQhItN4vkhuyTt-oxpBf2Smf4DzeECZKRCSSGR7-jBa1ipQ/s1600/1.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;101&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicmOh60pKzwZnE1qiT1VVRrVJbcjWl8CGDRvKnK-6PhyphenhyphenQEKU0iCC03gP3S6wc0cGwebdYLbzZvARZF5FOc0IxA4h-TZTaBaQhItN4vkhuyTt-oxpBf2Smf4DzeECZKRCSSGR7-jBa1ipQ/s400/1.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Все просто - выбираем длину пароля и жмем &quot;Roll Dice&quot;. &lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Программный код (исходники)&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Form1.cs&lt;br /&gt;
&lt;br /&gt;
using System;&lt;br /&gt;
using System.Windows.Forms;&lt;br /&gt;
&lt;br /&gt;
namespace Char_generator_for_VS2008&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; public partial class Form1 : Form&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public Form1()&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InitializeComponent();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void button1_Click_1(object sender, EventArgs e)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (Convert.ToInt32(textBox2.Text) &amp;lt; 35)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox1.Clear();&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] temp = Generator.RollDice(Convert.ToInt32(textBox2.Text));&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; temp.Length; i++)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox1.Text += (char)temp[i];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception ex)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(ex.Message);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;Введите число меньше 35!!!&quot;);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private void Form1_Load(object sender, EventArgs e)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox2.Text = &quot;16&quot;;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Мы вызываем метод RollDice() класса Generator. Програмный код этого класса:&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
Generator.cs&lt;br /&gt;
&lt;br /&gt;
using System.Security.Cryptography;&lt;br /&gt;
&lt;br /&gt;
namespace Char_generator_for_VS2008&lt;br /&gt;
{&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; class Generator&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static byte[] RollDice(int passLenght)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] randomNumber = new byte[passLenght];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] password = new byte[passLenght];&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a new instance of the RNGCryptoServiceProvider.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RNGCryptoServiceProvider Gen = new RNGCryptoServiceProvider();&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Fill the array with a random value.&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Gen.GetBytes(randomNumber);&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; randomNumber.Length; i++)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ((int)randomNumber[i] &amp;gt; 48 &amp;amp;&amp;amp; (int)randomNumber[i] &amp;lt; 57 ||&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (int)randomNumber[i] &amp;gt; 65 &amp;amp;&amp;amp; (int)randomNumber[i] &amp;lt; 90 ||&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (int)randomNumber[i] &amp;gt; 97 &amp;amp;&amp;amp; (int)randomNumber[i] &amp;lt; 122)&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; password[i] = randomNumber[i];&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Gen.GetBytes(randomNumber);&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; i--;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return password;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Логика следующая:&lt;br /&gt;
- Генерируем число от 0 до 256&lt;br /&gt;
- Если сгенерированное число входит в интервалы&lt;br /&gt;
от 48 до 57,&lt;br /&gt;
от 65 до 90 и&lt;br /&gt;
от 97 до 122,&lt;br /&gt;
сохраняем его в текстбокс.&lt;br /&gt;
В противном случае снова генерируем число от 0 до 256.&lt;br /&gt;
&lt;br /&gt;
Скачать исходники можно здесь - &lt;a href=&quot;http://upload.com.ua/get/901646946/&quot;&gt;http://upload.com.ua/get/901646946/&lt;/a&gt;&lt;br /&gt;
или здесь - &lt;a href=&quot;http://rapidgator.net/133533/Char_generator_for_VS2008.rar.html&quot;&gt;http://rapidgator.net/133533/Char_generator_for_VS2008.rar.html&lt;/a&gt;</description><link>http://pavelbilous.blogspot.com/2010/05/blog-post.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicmOh60pKzwZnE1qiT1VVRrVJbcjWl8CGDRvKnK-6PhyphenhyphenQEKU0iCC03gP3S6wc0cGwebdYLbzZvARZF5FOc0IxA4h-TZTaBaQhItN4vkhuyTt-oxpBf2Smf4DzeECZKRCSSGR7-jBa1ipQ/s72-c/1.PNG" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-6288181175840912544</guid><pubDate>Mon, 25 Jan 2010 18:52:00 +0000</pubDate><atom:updated>2010-06-08T10:25:25.783+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">TextBox</category><category domain="http://www.blogger.com/atom/ns#">блокнот</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>MyNotepad</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIhSnTzHIcxIErQmLk5tEQjJ7cGxOK4U8v3W396-Nm2dRtxoCQapPkzpLbV5QMopF7fTbh3yO7ESbPxexXsi-kKpi2G6p4rDa7U1e7KSoWVSp34-AIeoMzF1rCrgOC36SIm2Lj_NRN3Lk/s1600-h/2.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIhSnTzHIcxIErQmLk5tEQjJ7cGxOK4U8v3W396-Nm2dRtxoCQapPkzpLbV5QMopF7fTbh3yO7ESbPxexXsi-kKpi2G6p4rDa7U1e7KSoWVSp34-AIeoMzF1rCrgOC36SIm2Lj_NRN3Lk/s320/2.jpg&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Блокнот - очень удобный и быстрый инструмент для редактирования текста. Вот один из примеров как можно его написать. &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;Заметьте, в программе использовалась конструкция&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#region RegionName&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;#endregion&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
для разделения методов и событий. Очено удобно и помагает какбы охватить структуру программы одним взглядом. Хорошим тоном в программировании является разделение программы на поля, методы, события, опции и т.д. &lt;br /&gt;
&lt;br /&gt;
В общем Notepad был написан где-то за два часа. Везде и всюду использовались свойства TextBox&#39;а. В частности свойство для смены шрифта - Font. А также окно выбора шрифта - fontDialog.&lt;br /&gt;
Кроме этого диалога использовались еще диалоги - openFileDialog и saveFileDialog. Также очень удобный и полезный элемент - menuStrip. Представляет собой простую менюшку.&lt;br /&gt;
&lt;br /&gt;
Вот внешний вид блокнота:&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiod3PHCKUR-H1wHTSCasiEIAIS7Rf8r-zDruxCzLGOngCyugeRzkIhWI9eest7ZRIgnmXpMJxnXcsIz8oX9YXrufWVHqFiODbIbpOpxoAbNanSFcDi-j6bq9TrW8q_TM8A10Fvh2356z0/s1600-h/1.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiod3PHCKUR-H1wHTSCasiEIAIS7Rf8r-zDruxCzLGOngCyugeRzkIhWI9eest7ZRIgnmXpMJxnXcsIz8oX9YXrufWVHqFiODbIbpOpxoAbNanSFcDi-j6bq9TrW8q_TM8A10Fvh2356z0/s320/1.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Скачать исходники можно здесь - &lt;a href=&quot;http://rapidgator.net/45551/MyNotepad_0.1.rar.html&quot;&gt;http://rapidgator.net/45551/MyNotepad_0.1.rar.html&lt;/a&gt;</description><link>http://pavelbilous.blogspot.com/2010/01/mynotepad.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIhSnTzHIcxIErQmLk5tEQjJ7cGxOK4U8v3W396-Nm2dRtxoCQapPkzpLbV5QMopF7fTbh3yO7ESbPxexXsi-kKpi2G6p4rDa7U1e7KSoWVSp34-AIeoMzF1rCrgOC36SIm2Lj_NRN3Lk/s72-c/2.jpg" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-991080996720148384</guid><pubDate>Fri, 08 Jan 2010 00:47:00 +0000</pubDate><atom:updated>2011-05-14T10:18:54.449+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">DES</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>TripleDES. Часть вторая</title><description>Нашел таки время на продолжение статьи. На тему кодирование TripleDES.&lt;br /&gt;
&lt;br /&gt;
Итак у нас есть готовая форма с контролами, осталось только &quot;прицепить&quot; к кнопкам обработчики событий. Но это еще не все. В моей программе я использую отдельный файл - CryptText.cs - для методов шифрования и дешифрования.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&quot;Шифрование&quot;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Програмный код для обработчиков событий:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;- button1&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;OpenFileDialog ofd = new OpenFileDialog();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;ofd.Filter = &quot;Txt files (*.txt)|*.txt|All files (*.*)|*.*&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;ofd.ShowDialog();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;if (ofd.FileName != &quot;&quot;)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;{&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tbText.Text = new FileInfo(ofd.FileName).OpenText().ReadToEnd();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;}&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Заметки: &lt;br /&gt;
Здесь мы вместо использования контрола OpenFileDialog напрямую создаем экземпляр класса OpenFileDialog. Также используем свойство Filter для открытия только текстовых файлов. Содержимое окна OpenFileDialog отфильтровывается так, что будут показаны только папки и текстовые файлы. Далее мы одной строчкой открываем текстовый файл и читаем его с начала в конец. Здесь я использовал слабую ссылку на обьект FileInfo.&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;- button2&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;SaveFileDialog sfd = new SaveFileDialog();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;sfd.InitialDirectory = &quot;C:\\&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;sfd.Filter = &quot;txt files (*.txt)|*.txt|All files (*.*)|*.*&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;sfd.ShowDialog();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;tbPath.Text = sfd.FileName;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Тот же код, но для сохранения.&lt;br /&gt;
&lt;i&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;i&gt;&lt;b&gt;- button3&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;try&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Создаем новый TripleDESCryptoServiceProvider обьект&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // для генерирования вектора инициализации (IV).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TripleDESCryptoServiceProvider tDESalg = new TripleDESCryptoServiceProvider();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Для наглядности выводим значение вектора инициализации&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string temp = null;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0; i &amp;lt; tDESalg.IV.Length; i++)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; temp += tDESalg.IV[i].ToString();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox4.Text = temp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label9.Text = temp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Запоминаем вектор в локальной переменной IVector&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; IVector = tDESalg.IV;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Строка для шифрования&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string sData = textBox1.Text;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Получаем ключ, преобразовываем в массив байтов и &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // дополняем до длинны 24. Не больше и не меньше.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string strKey = textBox2.Text;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bKey = new byte[24];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0, j = 0; i &amp;lt; 24; i++, j++)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j == strKey.Length)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; j = 0;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bKey[i] = (byte)strKey[j];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Указываем файл, куда будем шифровать&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string FileName = textBox3.Text;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Шифруем текст в файл. &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // При этом указываем имя файла, ключ и вектор инициализации.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptText.EncryptTextToFile(sData, FileName, bKey, tDESalg.IV);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Сообщаем о результате&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;Текст успешно зашифрован !!!&quot;);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception exc)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(exc.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Заметки: Для использования класса TripleDESCryptoServiceProvider нужно подключит пространство имен &lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;using System.Security.Cryptography;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Для хранения вектора инициализации я использовал переменную IVector. Обьявляется она сразу после&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Z-6mjfZkrpFPWzgsMKP2y7Zj03Ns1bWOZ1QzQVIC640d8QbOyrEDelQOlkVzmpDD1aRJziorPcdN_kkJ550RmPetxh529uDXUOieN3DvhyphenhyphenN8ww_mTOXMmMOcpTz_UKFW4Yc9t4RAsEI/s1600-h/pic1.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Z-6mjfZkrpFPWzgsMKP2y7Zj03Ns1bWOZ1QzQVIC640d8QbOyrEDelQOlkVzmpDD1aRJziorPcdN_kkJ550RmPetxh529uDXUOieN3DvhyphenhyphenN8ww_mTOXMmMOcpTz_UKFW4Yc9t4RAsEI/s320/pic1.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;protected byte[] IVector = null;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Здесь как вы видете используется метод EncryptTextToFile() из класса CryptText. Как я уже говорил, этот клас находится в отдельном модуле (или отдельном файле). Также используется конструкция try - catch для обработки исключений и их вывода на екран в виде MessageBox.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;&quot;Дешифрование&quot;&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Програмный код для обработчиков событий:&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;&lt;b&gt;- button4&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: xx-small;&quot;&gt; OpenFileDialog ofd = new OpenFileDialog();&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ofd.Filter = &quot;Txt files (*.txt)|*.txt|All files (*.*)|*.*&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ofd.ShowDialog();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ofd.FileName != &quot;&quot;)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox5.Text = new FileInfo(ofd.FileName).FullName;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;i&gt;&lt;b&gt;- button5&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;try&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Создаем новый TripleDESCryptoServiceProvider обьект&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // для генерирования вектора инициализации (IV).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TripleDESCryptoServiceProvider tDESalg = new TripleDESCryptoServiceProvider();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Получаем ключ, преобразовываем в массив байтов и &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // дополняем до длинны 24. Не больше и не меньше.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string strKey = textBox6.Text;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; byte[] bKey = new byte[24];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (int i = 0, j = 0; i &amp;lt; 24; i++, j++)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (j == strKey.Length)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; j = 0;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bKey[i] = (byte)strKey[j];&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Указываем файл для дешифрования&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string FileName = textBox5.Text;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Дешифруем текст из файла. &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // При этом указываем имя файла, ключ и вектор инициализации IVector.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox7.Clear();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox7.Text += CryptText.DecryptTextFromFile(FileName, bKey, IVector);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Сообщаем о результате&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;Текст успешно дешифрован !!!&quot;);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (Exception exc)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(exc.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Теперь добавляем в проект класс таким образом: открываем SolutionExplorer, клацаем по MyTripleDES правой &lt;br /&gt;
&lt;br /&gt;
кнопкой мышки и жмем добавить-класс (Add-Class). Называем его CryptText.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsWyxbTqZ2Kp7wUhA2kBdJ4PoyPGB_2_zvQ8Q6KUixK4ZcYN-vu7rPORxB8tLTgX-R4gymeKq_lxQAef7iVGahClhN5dBzfkw1QxMHjSGuLxUOOiM-KxIKpCo85SN38A9Gqz-NB0lzgN8/s1600-h/pic2.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjsWyxbTqZ2Kp7wUhA2kBdJ4PoyPGB_2_zvQ8Q6KUixK4ZcYN-vu7rPORxB8tLTgX-R4gymeKq_lxQAef7iVGahClhN5dBzfkw1QxMHjSGuLxUOOiM-KxIKpCo85SN38A9Gqz-NB0lzgN8/s400/pic2.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&amp;nbsp;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZaDteWaySR2teYjslU6Ek9SF3b34EcAocmlPx6YiCpqXUvYHpaHA93Rcr5Lex046vkppSJLzUcxExJP8fHhV2TVpKAknvELWw4dnFnv98NzL7yWN8eycA0u2Dn7_oiIehzGzgJvtwWYk/s1600-h/pic3.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiZaDteWaySR2teYjslU6Ek9SF3b34EcAocmlPx6YiCpqXUvYHpaHA93Rcr5Lex046vkppSJLzUcxExJP8fHhV2TVpKAknvELWw4dnFnv98NzL7yWN8eycA0u2Dn7_oiIehzGzgJvtwWYk/s320/pic3.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Не забываем подключить в наш только что созданный класс&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;using System.Security.Cryptography;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;using System.IO;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;using System.Windows.Forms;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Далее в класс вставляем код:&lt;br /&gt;
&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;// Конструктор&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public CryptText() { }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;summary&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// Метод шифрует текст в файл&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/summary&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;Data&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Текст для шифрования&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;FileName&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Полный путь к файлу&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;Key&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Ключ (пароль)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;IV&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Вектор инициализации&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static void EncryptTextToFile(String Data, String FileName, byte[] Key, byte[] IV)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create or open the specified file.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fStream = File.Open(FileName, FileMode.OpenOrCreate);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a CryptoStream using the FileStream &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // and the passed key and initialization vector (IV).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(fStream,&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new TripleDESCryptoServiceProvider().CreateEncryptor(Key, IV),&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStreamMode.Write);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a StreamWriter using the CryptoStream.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamWriter sWriter = new StreamWriter(cStream);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Write the data to the stream &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // to encrypt it.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sWriter.WriteLine(Data);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Close the streams and&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // close the file.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sWriter.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fStream.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (CryptographicException e)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;A Cryptographic error occurred: {0}&quot;, e.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (UnauthorizedAccessException e)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;A file access error occurred: {0}&quot;, e.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;summary&gt;&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// Метод дешифрует текст из файла&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/summary&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;FileName&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Полный путь к файлу&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;Key&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Ключ (пароль)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;/span&gt;&lt;/div&gt;&lt;param name=&quot;IV&quot; /&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;Вектор инициализации&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &lt;returns&gt;Текст в дешифрованном виде&lt;/returns&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static string DecryptTextFromFile(String FileName, byte[] Key, byte[] IV)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; try&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create or open the specified file. &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; FileStream fStream = File.Open(FileName, FileMode.OpenOrCreate);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a CryptoStream using the FileStream &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // and the passed key and initialization vector (IV).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStream cStream = new CryptoStream(fStream,&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new TripleDESCryptoServiceProvider().CreateDecryptor(Key, IV),&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; CryptoStreamMode.Read);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Create a StreamReader using the CryptoStream.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; StreamReader sReader = new StreamReader(cStream);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Read the data from the stream &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // to decrypt it.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; string val = sReader.ReadToEnd();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Close the streams and&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // close the file.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sReader.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; cStream.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fStream.Close();&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Return the string. &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return val;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (CryptographicException e)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;A Cryptographic error occurred: {0}&quot;, e.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; catch (UnauthorizedAccessException e)&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MessageBox.Show(&quot;A file access error occurred: {0}&quot;, e.Message);&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return null;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
Осталось пару штрихов. Создаем обработчик события на загрузку формы Form1. Вставляем код:&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style=&quot;font-size: xx-small;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: xx-small;&quot;&gt;textBox3.Text = @&quot;C:\Encoded.txt&quot;;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox2.Text = &quot;key&quot;;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-size: xx-small;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; textBox6.Text = &quot;key&quot;; &lt;/span&gt;&lt;/div&gt;Удаляем пространства имен, которые не используем. Для этого правой кнопкой мышки клацаем по коду и жмем &lt;br /&gt;
&lt;br /&gt;
Organize Usings - Remove Unused Usings&lt;br /&gt;
&lt;br /&gt;
Вуаля. Наша программа готова !!! Можна тестировать. Отзывы и советы пишите в&lt;br /&gt;
комментарии.&lt;br /&gt;
Исходники качаем отсюдова &lt;a href=&quot;http://www.megaupload.com/?d=1SELPDBQ&quot;&gt;hhttp://www.megaupload.com/?d=1SELPDBQ&lt;/a&gt;.</description><link>http://pavelbilous.blogspot.com/2010/01/blog-post_08.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4Z-6mjfZkrpFPWzgsMKP2y7Zj03Ns1bWOZ1QzQVIC640d8QbOyrEDelQOlkVzmpDD1aRJziorPcdN_kkJ550RmPetxh529uDXUOieN3DvhyphenhyphenN8ww_mTOXMmMOcpTz_UKFW4Yc9t4RAsEI/s72-c/pic1.PNG" height="72" width="72"/><thr:total>3</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-8679333375318879537</guid><pubDate>Tue, 05 Jan 2010 13:50:00 +0000</pubDate><atom:updated>2011-05-14T10:11:30.457+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">Triple DES</category><category domain="http://www.blogger.com/atom/ns#">безопасность информации</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><category domain="http://www.blogger.com/atom/ns#">криптография</category><title>TripleDES. Часть первая</title><description>&lt;style type=&quot;text/css&quot;&gt;
        .style1
        {
            font-family: &quot;Courier New&quot; , Courier, monospace;
        }
        .style2
        {
            font-family: &quot;Courier New&quot; , Courier, monospace;
            margin-left: 88px;
        }
        .style3
        {
            color: #0033CC;
            font-size: small;
        }
        .style4
        {
            font-family: &quot;Courier New&quot; , Courier, monospace;
            font-size: small;
        }
        .style5
        {
            font-size: small;
        }
        .style7
        {
            color: #2B91AF;
        }
        .style9
        {
            color: #0000CC;
        }
        .style11
        {
            color: #003399;
        }
    
&lt;/style&gt;      &lt;br /&gt;
Статья по криптографии, которую я разместил немного ниже, объясняет базовые принципы         сохранения конфиденциальности информации. Это конечно хорошо, но можно ли написать         программу на C# так, чтобы она кодировала наш текст, и соответственно декодировала         его?     &lt;br /&gt;
Да. И достаточно просто.     &lt;br /&gt;
Я написал программу, которая демонстрирует алгоритм шифрования TripleDES. Немного         об алгоритме: алгоритм симметричный, то есть шифруем и дешифруем текст, при помощи         одного и того же пароля (ключа). Если верить Википедии, то –     &lt;br /&gt;
&lt;b&gt;Triple DES&lt;/b&gt; (3DES)&amp;nbsp;— симметричный блочный шифр, созданный Уитфилдом Диффи,         Мартином Хеллманом и Уолтом Тачманном в 1978 году на основе алгоритма DES, с целью         устранения главного недостатка последнего&amp;nbsp;— малой длины ключа (56 бит), который         может быть взломан методом полного перебора ключа. Скорость работы 3DES в 3 раза         ниже, чем у DES, но криптостойкость намного выше&amp;nbsp;— время, требуемое для криптоанализа         3DES, может быть в миллиард раз больше, чем время, нужное для вскрытия DES. (c)Wikipedia     &lt;br /&gt;
В нашей программе мы будем использовать класс TripleDESCryptoServiceProvider.         Он определяет объект-оболочку для доступа к реализации алгоритма TripleDES, предоставляемой         поставщиком служб шифрования (CSP). Для использования этого класса нужно использовать         пространство имен System.Security.Cryptography.     &lt;br /&gt;
&lt;div class=&quot;style2&quot;&gt;using System.Security.Cryptography;              &lt;/div&gt;Поставщик служб шифрования (Cryptography Service Provider, CSP) - это посредник         между операционной системой, которая может управлять им с помощью стандартных функций         CryptoAPI, и исполнителем криптографических операций(это может быть как программа,         так и аппаратный комплекс). программа, так и аппаратный комплекс).     &lt;br /&gt;
Итак, создаем пустой проект WindowsFormsApplication и называем его TripleDES. На         форме Form1 размещаем такие контролы:     &lt;br /&gt;
- TabControl (находим в ToolBox-Containers)     &lt;br /&gt;
- Button – на первой закладке – 3, на второй – 2 шт.     &lt;br /&gt;
-TextBox – на первой закладке – 4, на второй – 3 шт.     &lt;br /&gt;
-Label – на первой закладке – 4, на второй – 5 шт.     &lt;br /&gt;
Смотрим на рисунки:&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhypzi-SOS4HlFDDYi8QBXVbjrKdxKAFZxRTSsdLdjk7ucbulWZwa5CaYyhvUNYMUxqanCzYdgZviRFp_8toctm3grgxegJ-E6MqRAKLuTUdqPf7kRMI9NOYg8wvUHNaFsMdzlKXt3kBHg/s1600-h/pic1.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;         &lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhypzi-SOS4HlFDDYi8QBXVbjrKdxKAFZxRTSsdLdjk7ucbulWZwa5CaYyhvUNYMUxqanCzYdgZviRFp_8toctm3grgxegJ-E6MqRAKLuTUdqPf7kRMI9NOYg8wvUHNaFsMdzlKXt3kBHg/s320/pic1.PNG&quot; /&gt;&lt;/a&gt;             &lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwbI_zI34ZzoTRjeEcpLs4agj7_-nCFOogrq3Yiaafmu4AEy1a6HTmxaAVtB1zRnvtNnFVHlUEeEs8pnIW5r5WI3OjuHbpt8x275TFINuGKnHS954eqTYjUzccImQt9pgBxnkAEo94l2U/s1600-h/pic2.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;                 &lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwbI_zI34ZzoTRjeEcpLs4agj7_-nCFOogrq3Yiaafmu4AEy1a6HTmxaAVtB1zRnvtNnFVHlUEeEs8pnIW5r5WI3OjuHbpt8x275TFINuGKnHS954eqTYjUzccImQt9pgBxnkAEo94l2U/s320/pic2.PNG&quot; /&gt;&lt;/a&gt;     &lt;br /&gt;
&lt;br /&gt;
После этого каждому элементу задаем свойство текст такие:&lt;br /&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf5w3wnRlD2453P6SCZBt30kUaibVsWw6-weUEWFJNmfjsM8hU0uHVyDRugNULLUbofLCD0kUoNlCo5hYrG-zGNmPrATDhRtcTxhxTk8A9eRo8cFsBU6CMTZFZIA5i4dFNxOinExXjqVs/s1600-h/pic3.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;         &lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf5w3wnRlD2453P6SCZBt30kUaibVsWw6-weUEWFJNmfjsM8hU0uHVyDRugNULLUbofLCD0kUoNlCo5hYrG-zGNmPrATDhRtcTxhxTk8A9eRo8cFsBU6CMTZFZIA5i4dFNxOinExXjqVs/s320/pic3.PNG&quot; /&gt;&lt;/a&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxh9I9vbdEDQVIAlwbuXP1BJ9GWB_-DckK5sYf7AJ2Ybex8Krb2p41bkFsT_pGPq4MHF89tXCV5AE7gYprr6eqier_y6ET6YX-YkTs9pNLBGKw7gIVM7OVfkOJQVrVORGOW3i7aYihGEg/s1600-h/pic4.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxh9I9vbdEDQVIAlwbuXP1BJ9GWB_-DckK5sYf7AJ2Ybex8Krb2p41bkFsT_pGPq4MHF89tXCV5AE7gYprr6eqier_y6ET6YX-YkTs9pNLBGKw7gIVM7OVfkOJQVrVORGOW3i7aYihGEg/s320/pic4.PNG&quot; /&gt;&lt;/a&gt;     &lt;br /&gt;
&lt;br /&gt;
Теперь немного объясню, что зачем.     &lt;br /&gt;
&lt;div style=&quot;font-weight: 700;&quot;&gt;Вкладка «Шифрование»     &lt;/div&gt;Здесь мы можем выбрать текст из файла, или же напечатать текст в TextBox для текста         (большой такой). Если вы открываете текст из текстового файла (*.doc не поддерживаются),         тогда текст из файла автоматически отобразится в TextBox для текста.     &lt;br /&gt;
Пароль – нужен фиксированной длинны, которая равна 24 буквам. На одну букву приходится         8 байт памяти, и в итоге пароль получается длинной в 24 * 8 = 192 байта. В нашем         случае может использоваться пароль любой длинны, если только он меньше 24 символов.         В моей программе короткий пароль дублируется и дописывается к уже существующему         несколько раз. То есть вы ввели «ключ», а программа сделает «ключключключключключ».     &lt;br /&gt;
Вектор инициализации (IV) – нужен для задания параметров блочного шифрования. Он         генерируется при шифровании, а также генерируется совершенно другим при дешифровании.         Поэтому мы запоминаем его в локальной переменной IVector.     &lt;br /&gt;
&lt;div style=&quot;font-family: &#39;Courier New&#39;,Courier,monospace; font-size: small; margin-left: 88px;&quot;&gt;protected byte[] IVector = null;     &lt;/div&gt;Путь куда шифруем – путь, куда сохраняем текстовый файл.     &lt;br /&gt;
&lt;div style=&quot;font-weight: 700;&quot;&gt;Вкладка «Дешифрование»     &lt;/div&gt;Путь к файлу – путь к файлу для дешифровки. Вектор (IV) – берем с переменной IVector.         Для наглядности отображает его через метку label9.     &lt;br /&gt;
&lt;div style=&quot;font-family: &#39;Courier New&#39;,Courier,monospace; font-size: small; margin-left: 88px;&quot;&gt;&lt;br /&gt;
// Создаем новый TripleDESCryptoServiceProvider обьект          &lt;br /&gt;
// для генерирования вектора инициализации (IV).         &lt;br /&gt;
TripleDESCryptoServiceProvider tDESalg = new TripleDESCryptoServiceProvider();         &lt;br /&gt;
&lt;br /&gt;
// Для наглядности выводим значение вектора инициализации         &lt;br /&gt;
string temp = null;         &lt;br /&gt;
&lt;br /&gt;
for (int i = 0; i &amp;lt; tDESalg.IV.Length; i++)         &lt;br /&gt;
{         &lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp; temp += tDESalg.IV[i].ToString();         &lt;br /&gt;
}         &lt;br /&gt;
&lt;br /&gt;
tbVector.Text = temp;         &lt;br /&gt;
lVector.Text = temp;         &lt;br /&gt;
&lt;br /&gt;
// Запоминаем вектор в локальной переменной         &lt;br /&gt;
IVector IVector = tDESalg.IV;         &lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;Дешифрованная инф. – наш текст после дешифровки.     &lt;br /&gt;
Подведем итоги – чтобы зашифровать информацию алгоритмом TripleDES, нужен пароль         (ключ) и вектор инициализации. Чтобы расшифровать информацию, нужны тот же пароль         и вектор инициализации.     &lt;br /&gt;
На этом первая часть разработки программы закончена. Вторую допечатаю немного позже.         Там уже будет код для обработчиков событий, код методов для кодирования, декодирования.         Как говорится в фильмах – продолжение следует.</description><link>http://pavelbilous.blogspot.com/2010/01/tripledes_05.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhypzi-SOS4HlFDDYi8QBXVbjrKdxKAFZxRTSsdLdjk7ucbulWZwa5CaYyhvUNYMUxqanCzYdgZviRFp_8toctm3grgxegJ-E6MqRAKLuTUdqPf7kRMI9NOYg8wvUHNaFsMdzlKXt3kBHg/s72-c/pic1.PNG" height="72" width="72"/><thr:total>2</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-7256633454264303978</guid><pubDate>Sat, 02 Jan 2010 19:18:00 +0000</pubDate><atom:updated>2010-06-08T09:57:05.299+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>Интересные видео-доклады на techdays.ru</title><description>&lt;span style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;На днях заинтересовалься ASP.NET. Сделал поиск по видео-урокам, и наткнулся на techdays.ru. &lt;/span&gt; &lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk011YomyLwTxHYqDNGNP7rFckRn1O6gPR9RwOlyZc9ZOjpvPEeIthIhOojMAZGIyYXnW-H7DawPKL0OiMoZgb7mNMWC04E3LXuWbKHY4H0fT22Y5Mtl8DD-apEzH0fI54VoOwqLbde5o/s1600-h/pic111.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk011YomyLwTxHYqDNGNP7rFckRn1O6gPR9RwOlyZc9ZOjpvPEeIthIhOojMAZGIyYXnW-H7DawPKL0OiMoZgb7mNMWC04E3LXuWbKHY4H0fT22Y5Mtl8DD-apEzH0fI54VoOwqLbde5o/s320/pic111.PNG&quot; /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;/div&gt;&lt;div face=&quot;Verdana,sans-serif&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Сайт представляет собой сборник видео-семинаров на тему современных технологий. Если вы уверены в своих знаниях, можете попробовать себя в роли учителя, и сделать доклад. Далее просто выложить его на techdays.ru. techdays.ru своего рода википедия, но болше ВИДЕОпедия.&lt;/span&gt; &lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;/div&gt;&lt;div face=&quot;Verdana,sans-serif&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Там я нашел видео-семинар по теме ASP.NET. Изложено простым языком. Только практика. Если чесно, я такого не ожидал. Все понятно. Если посмотреть видео несколько раз, то можно по памяти написать простой Web-application.&lt;/span&gt; &lt;/div&gt;&lt;div face=&quot;Verdana,sans-serif&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;/div&gt;&lt;div style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;Это видео я решил выложить на своем блоге. Вот, наслаждайтесь:&lt;/span&gt;&lt;a href=&quot;http://upload.com.ua/get/901280284/&quot;&gt;&lt;/a&gt; &lt;a href=&quot;http://www.data-stock.com/16153/200-ASP.NET_ASP.NET_dlja_PHP_razrabotchika_webcast640.wmv.html&quot;&gt;http://www.data-stock.com/16153/200-ASP.NET_ASP.NET_dlja_PHP_razrabotchika_webcast640.wmv.html&lt;/a&gt; &lt;/div&gt;</description><link>http://pavelbilous.blogspot.com/2010/01/techdaysru.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk011YomyLwTxHYqDNGNP7rFckRn1O6gPR9RwOlyZc9ZOjpvPEeIthIhOojMAZGIyYXnW-H7DawPKL0OiMoZgb7mNMWC04E3LXuWbKHY4H0fT22Y5Mtl8DD-apEzH0fI54VoOwqLbde5o/s72-c/pic111.PNG" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-8798285103757229852</guid><pubDate>Fri, 01 Jan 2010 22:22:00 +0000</pubDate><atom:updated>2011-05-14T09:56:15.260+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">исходники</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><category domain="http://www.blogger.com/atom/ns#">примеры</category><category domain="http://www.blogger.com/atom/ns#">программирование</category><category domain="http://www.blogger.com/atom/ns#">руководство</category><category domain="http://www.blogger.com/atom/ns#">создание программ</category><title>Простой блокнот (только чтение из файла)</title><description>Рассмотрим пример простой программы на C#.&lt;br /&gt;
&lt;br /&gt;
Что вообще необходимо сделать, чтобы начать программировать? Раздобыть комп и установить туда среду разработки. В нашем случае – это Visual Studio 2008 Team System. Ищем на торрентах или смотрим по ссылкам.&lt;br /&gt;
&lt;br /&gt;
Программа использует такие контролы:&lt;br /&gt;
&lt;br /&gt;
- MenuStrip&lt;br /&gt;
&lt;br /&gt;
- OpenFileDiag&lt;br /&gt;
&lt;br /&gt;
- TextBox&lt;br /&gt;
&lt;br /&gt;
Для начала создадим пустой проект в Visual Studio 2008 (File-New-Project). В окне New project проходимся по пунктам 1-4, смотрите на рисунок. &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihSUJ1cDIdUf6ZXH2BO_4cNkQfM_rsoT_Kfkhd12thgSeHaJDqlbAfJJeKUtwgmWoGYb6rg0Fe9ViJxGr3J58H0XNtqhU8d2r6WbAJu5QjswLrHLijYwkBH9iNJxBAbQ5CTsXZ9zYlQeI/s1600/pic1.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;276&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihSUJ1cDIdUf6ZXH2BO_4cNkQfM_rsoT_Kfkhd12thgSeHaJDqlbAfJJeKUtwgmWoGYb6rg0Fe9ViJxGr3J58H0XNtqhU8d2r6WbAJu5QjswLrHLijYwkBH9iNJxBAbQ5CTsXZ9zYlQeI/s400/pic1.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
У нас теперь отображается форма на которую перетягиваем контрол MenuStrip, который находится в Toolbox. Контрол MenuStrip является стандартным меню для всех программ. Если вы не видете Toolbox&#39;а, тогда откройте его через меню: View-Toolbox. &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0L38-X0Z3xlC1b3MH15Ph-6AYn6t6Z_2BXmfycvLumJxivahhQGAiGFLPPcOkIAjeqP06WRtrB1fsFWLUqEgxkESYDITDPoHvCibnZfbjuDJecE-NXKZO2uClZQt4_S_zaI3iwQSxRw0/s1600/pic2.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;247&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0L38-X0Z3xlC1b3MH15Ph-6AYn6t6Z_2BXmfycvLumJxivahhQGAiGFLPPcOkIAjeqP06WRtrB1fsFWLUqEgxkESYDITDPoHvCibnZfbjuDJecE-NXKZO2uClZQt4_S_zaI3iwQSxRw0/s400/pic2.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
После называем один раздел меню “File”. В нем – два подраздела – “Open” и “Exit”.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhObxZ2pxj7M6G_npigIwkxbTFE2Dl5IZrk6grkfonlsJtxGVp4rMpN7eyoNTslcgWVtJ8X49btFh9NJopSlxPOpyPGFLH_VtBQrXaYN5pjvDx15IVKjlqP0zoH1PgEk51ci2bBCQ3pZIk/s1600/pic3.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;232&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhObxZ2pxj7M6G_npigIwkxbTFE2Dl5IZrk6grkfonlsJtxGVp4rMpN7eyoNTslcgWVtJ8X49btFh9NJopSlxPOpyPGFLH_VtBQrXaYN5pjvDx15IVKjlqP0zoH1PgEk51ci2bBCQ3pZIk/s400/pic3.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Теперь перетаскиваем на нашу форму OpenFileDiag. Этот элемент не отобразится на форме, но его будет видно в нижнем левом углу Студии.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr6xYTpdApVparPSj5l0oAWQ70Hd8s4HjduPP6zGvrWLa0xfdOyuBxGkuu4ENR66RMCl8kZT2a8-UkPdkQQzxlvBYC7xGRR99HXceStEnhRO1CQmJc-WlfcsVbRdZwfgfN_1AZ7aeWGtQ/s1600/pic4.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhr6xYTpdApVparPSj5l0oAWQ70Hd8s4HjduPP6zGvrWLa0xfdOyuBxGkuu4ENR66RMCl8kZT2a8-UkPdkQQzxlvBYC7xGRR99HXceStEnhRO1CQmJc-WlfcsVbRdZwfgfN_1AZ7aeWGtQ/s400/pic4.PNG&quot; width=&quot;323&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Теперь добавим контрол в котором будем отображать текст из файла – TextBox. В свойствах контрола ставим галочку напротив MultiLine. Далее правой кнопкой мышки клацаем по нашему TextBoxу и выбираем Properties (Свойства). В свойствах ищем ScrollBars и устанавливаем Vertical. Теперь ищем свойство Dock и устанавливаем в Fill. &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpO3zoYD7feTsoBkmuaFq8PmZzGy0SwfWOroX4_f49lrmL7ouye4Zq52u34b0291E2OZk04xITUh5n55irj4UgTGqW5umMD6ualz6rn9JxfjuA73b3IJ88Uc3ZXwt1auWjh_cgo-QAK5E/s1600/pic5.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgpO3zoYD7feTsoBkmuaFq8PmZzGy0SwfWOroX4_f49lrmL7ouye4Zq52u34b0291E2OZk04xITUh5n55irj4UgTGqW5umMD6ualz6rn9JxfjuA73b3IJ88Uc3ZXwt1auWjh_cgo-QAK5E/s400/pic5.PNG&quot; width=&quot;375&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Теперь у нас есть все контролы и нам осталость дописать пару сточек кода. Начнем с того, что зададим действие для клика по элементу меню File – Open. Для этого достаточно клацнуть по нему два раза мышкой. Студия автоматически сгенирирует для нас обработчик события и назвет его openToolStripMenuItem_Click. &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicPk2n13wieRzi_3XVVHfKYE6UlFQLFbQx2XdtzItrlv2TxsE1kcbDWdKiGPjGaaOV8TxDuWfSVlLO8kCh7vUk8cXZtgDVfxPDo5ejGHDWqnKURchdcgLSCvYq5AAO7hWyxgwguIZwQGk/s1600/pic6.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;256&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEicPk2n13wieRzi_3XVVHfKYE6UlFQLFbQx2XdtzItrlv2TxsE1kcbDWdKiGPjGaaOV8TxDuWfSVlLO8kCh7vUk8cXZtgDVfxPDo5ejGHDWqnKURchdcgLSCvYq5AAO7hWyxgwguIZwQGk/s400/pic6.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Здесь между двух кавычек&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
вставляем код:&lt;br /&gt;
&lt;br /&gt;
if (openFileDialog1.ShowDialog() == DialogResult.OK) &lt;br /&gt;
{&lt;br /&gt;
StreamReader sr = new StreamReader(openFileDialog1.FileName); &lt;br /&gt;
textBox1.Text = sr.ReadToEnd(); &lt;br /&gt;
sr.Close(); &lt;br /&gt;
} &lt;br /&gt;
&lt;br /&gt;
Что значит: если была нажата кнопка ОК на контроле openFileDialog1, тогда делаем то, что заключено в кавычки. А в кавычках мы создаем экземпляр (или обьект) класса StreamReader. Называем его коротко – “sr”. Класс StreamReader представляет нам базовый функционал для чтения текстовых файлов, что нам и нужно. Инициализируем этот обьект класса полным путем к файлу, который получаем из контрола openFileDialog1 через свойство FileName.&lt;br /&gt;
&lt;br /&gt;
Теперь на экземпляре обьекта “sr” вызываем метод ReadToEnd(). Метод возвращает нам текст в формате string. Этот текст мы присваиваем левому операнду textBox1.Text: &lt;br /&gt;
&lt;br /&gt;
textBox1.Text = sr.ReadToEnd(); &lt;br /&gt;
&lt;br /&gt;
Далее закрываем поток sr методом Close(). &lt;br /&gt;
&lt;br /&gt;
sr.Close();&lt;br /&gt;
&lt;br /&gt;
Второй шаг – создание обработчика события для элемента меню File-Exit. Как и в предыдущем случае, клацаем по нему два раза мышкокой. Теперь вставляем код: &lt;br /&gt;
&lt;br /&gt;
this.Close(); &lt;br /&gt;
&lt;br /&gt;
И последний штрих – чтобы наша программа работала – добавляем сверху в файле Form1.cs строчку кода: &lt;br /&gt;
&lt;br /&gt;
using System.IO;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjISkcLk0u-6OjyD6KerOx86xYXPQEswG0xgnaJO3vnlXGEN0evmR6d5NhtKgQhyphenhyphen_cBGgcy31Ziob16qsfhP-6t9FaaCLqVM5VmAeK5QrrVO-ZpQw9Vz8LG4RN8BM8mzPrQJ5iBVuD9gGk/s1600/pic7.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjISkcLk0u-6OjyD6KerOx86xYXPQEswG0xgnaJO3vnlXGEN0evmR6d5NhtKgQhyphenhyphen_cBGgcy31Ziob16qsfhP-6t9FaaCLqVM5VmAeK5QrrVO-ZpQw9Vz8LG4RN8BM8mzPrQJ5iBVuD9gGk/s320/pic7.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Теперь мы готовы запустить нашу прграмму на выполнение – для этого нажимаем на клавиатуре F6, Ctrl+F5. Или жмем на &lt;br /&gt;
&lt;br /&gt;
зеленую стрелочку Run.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj84MX0MowNTdZcpdLsPunsZM4vJ3f9yHY4-Y2skNYkg6etjGeMTEWzr_t435p8izmOCREjR2qlBfx3akkyzlnXI8akOkSwz1cyIDw3IkO9uwtTVdOdp8g1btSjff07oF56Ed1kSIJr0Cg/s1600/pic8.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj84MX0MowNTdZcpdLsPunsZM4vJ3f9yHY4-Y2skNYkg6etjGeMTEWzr_t435p8izmOCREjR2qlBfx3akkyzlnXI8akOkSwz1cyIDw3IkO9uwtTVdOdp8g1btSjff07oF56Ed1kSIJr0Cg/s320/pic8.PNG&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
Исходник кода рассмотреной только-что прграммы - &lt;br /&gt;
&lt;a href=&quot;http://www.megaupload.com/?d=GR6YL6D6&quot;&gt;http://www.megaupload.com/?d=GR6YL6D6&lt;/a&gt; или -  &lt;a href=&quot;http://upload.com.ua/get/901643971/&quot;&gt;http://upload.com.ua/get/901643971/&lt;/a&gt;.</description><link>http://pavelbilous.blogspot.com/2010/01/blog-post_8306.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEihSUJ1cDIdUf6ZXH2BO_4cNkQfM_rsoT_Kfkhd12thgSeHaJDqlbAfJJeKUtwgmWoGYb6rg0Fe9ViJxGr3J58H0XNtqhU8d2r6WbAJu5QjswLrHLijYwkBH9iNJxBAbQ5CTsXZ9zYlQeI/s72-c/pic1.PNG" height="72" width="72"/><thr:total>4</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-1188751039821389951</guid><pubDate>Fri, 01 Jan 2010 19:29:00 +0000</pubDate><atom:updated>2010-06-08T09:58:23.300+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">C# sources</category><category domain="http://www.blogger.com/atom/ns#">Шифрование с открытым ключом</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><title>Шифрование с открытым ключом</title><description>&lt;div class=&quot;section&quot; id=&quot;sectionSection2&quot; name=&quot;collapseableSection&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;При шифровании с открытым ключом используются закрытый ключ, который должен  храниться в секрете от неправомочных пользователей, а также открытый ключ,  который может предоставляться кому угодно. Открытый и закрытый ключи  математически взаимосвязаны; данные, зашифрованные с помощью открытого ключа,  можно расшифровать исключительно с помощью соответствующего закрытого ключа, а  цифровая подпись данных, подписанных с помощью закрытого ключа, может быть  проверена только с помощью соответствующего открытого ключа. Открытый ключ может  быть предоставлен любому лицу; он используется для шифрования данных, которые  должны быть отправлены хранителю закрытого ключа. Алгоритмы шифрования с  открытым ключом также известны как асимметричные алгоритмы, потому что для  шифрования данных требуется один ключ, а для расшифровки — другой ключ. Оба  ключа должны быть уникальными для сеанса связи. Однако хотя это требование  распространяется на симметричные алгоритмы, на практике асимметричные ключи  обычно используются в течение длительного срока.&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;font-size: small;&quot;&gt;Шифрование с открытым ключом имеет намного большее пространство ключей, т. е.  диапазон возможных значений ключа, и поэтому является менее восприимчивым к  атакам методом полного перебора, когда проверяется каждое возможное значение  ключа. Открытые ключи можно легко распространять, поскольку они не требуют  особой защиты при условии, что существует некий способ установления подлинности  источника. Некоторые алгоритмы шифрования с открытым ключом (такие как RSA и  DSA, но не Diffie-Hellman) могут быть использованы для создания цифровых  подписей, служащих для подтверждения идентичности лица, от которого исходят  данные. Однако алгоритмы шифрования с открытым ключом являются весьма медленными  (по сравнению с алгоритмами шифрования с закрытым ключом) и не предназначены для  шифрования больших объемов данных. Использование шифрования с открытым ключом  имеет смысл только при передаче очень малых массивов данных. Обычно шифрование с  открытым ключом применяется для того, чтобы зашифровать ключ и вектор  инициализации, которые будут использоваться при шифровании с закрытым ключом.  После передачи ключа и вектора инициализации используется уже шифрование с  закрытым ключом.&lt;/span&gt; &lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;font-size: small;&quot;&gt;(c)MSDN &lt;/span&gt; &lt;/div&gt;</description><link>http://pavelbilous.blogspot.com/2010/01/blog-post_01.html</link><author>noreply@blogger.com (Pavel Bilous)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-4081939431034005983.post-340736802542383863</guid><pubDate>Fri, 01 Jan 2010 17:52:00 +0000</pubDate><atom:updated>2010-06-08T09:59:34.762+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C#</category><category domain="http://www.blogger.com/atom/ns#">безопасность информации</category><category domain="http://www.blogger.com/atom/ns#">исходники c# скачать</category><category domain="http://www.blogger.com/atom/ns#">криптография</category><category domain="http://www.blogger.com/atom/ns#">симметричное шифрование</category><category domain="http://www.blogger.com/atom/ns#">симметричный ключ</category><title>Безопасность информации - основные понятия</title><description>&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Для начала – несколько слов о понятии «криптография»… Начнем издалека.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Допустим, вы написали сложную,  дорогую программу, или же сделали какие-нибудь заметки вашей личной жизни, и не хотите, чтобы кто-либо все это прочитал (скопипастил).  В этом деле вам как раз пригодится «криптография», а точнее то, что она делает.  &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Или же нужно вам чтобы автором статьи признавали вас, а не, допустим, Сидорова Вовочку. Здесь вам также пригодится криптография. Ее заданием есть сохранение авторства и целостности напечатанного вами текста (информации).  Но если уже использовали криптографию, но отказаться от авторства своего текста не сможете.&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Если сказать упрощенно, то криптография – это наука, как защитить информацию от «левых» глаз.&lt;/span&gt; &lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Идем дальше. Информация передается в основном двумя способами. Онлайн или офлайн. Онлайн – это когда через интернет. Офлайн  - это когда через флешку. Но эти каналы передачи информации не защищены. Текст в основном передается в открытом виде. Так вот криптография позволяет создать защищенный канал для передачи информации в любых других каналах (интеренете, через флеху, диск, телефон и т.д.).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Сам  процесс происходит так – берем информацию (ваш текст), кодируем, передаем. На другом конце провода – принимаем, декодируем и читаем. Все просто. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Но для того чтобы закодировать информацию нужно указать &lt;/span&gt; &lt;/div&gt;&lt;ul style=&quot;font-family: Verdana,sans-serif; margin-top: 0cm;&quot; type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;каким методом будем кодировать&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;ввести пароль для кодирования (ключ)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;А вот методы бывают разные. Одни надежны, другие - не очень. Каким методом лучше  шифровать – зависит от обстоятельств.  Когда нужно очень быстро – получите. Вот только не очень надежно. Хотите шифровать надежно – тоже можно. Но нужно будет подождать. Вот несколько из методов:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;ul style=&quot;font-family: Verdana,sans-serif; margin-top: 0cm;&quot; type=&quot;disc&quot;&gt;&lt;li class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;симметричные &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;DES&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, ГОСТ 28147-89, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;AES&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;,      &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Camellia&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Twofish&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Blowfish&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;IDEA&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;RC&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;4, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;асимметричные &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;RSA&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;Elgamal&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;
&lt;li class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;хэш-функций &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;MD&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;4, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;MD&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;5, &lt;/span&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;SHA&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;-1, ГОСТ Р 34.11-94&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div face=&quot;Verdana,sans-serif&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Вообще слово «методы» правильней было бы заменить на «алгоритмы». Итак мы имеем симметричные алгоритмы (методы), асимметричные алгоритмы и алгоритмы хеш-функций. Что есть что сейчас и рассмотрим.&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small; font-weight: bold;&quot;&gt;Симметричные алгоритмы. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif; text-align: left;&quot;&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;Когда один и тот же пароль используется при кодировке и при декодировке – это симметричный алгоритм кодирования. По другому – шифрование с закрытым ключом (паролем). Пароль же секретный. Поэтому и способ называется с закрытым ключ&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;о&lt;/span&gt;&lt;span lang=&quot;RU&quot; style=&quot;font-size: small;&quot;&gt;м. На рисунке показан симметричный алгоритм кодирования.&lt;/span&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC5CVGPX9NMXKBMSG523SfhYs_LLyB3MlunSMe0-UAmo_3R1McgA0o7vNVUs31oimHVkHAO4yV6XL-QPipjvCZvyxz3edEwtN3GPRZY4dmbnsWX58e4wj2_4Gh8y0_zCwMWGG3aUXENiY/s1600-h/img1.png&quot; onblur=&quot;try {parent.deselectBloggerImageGracefully();} catch(e) {}&quot;&gt;&lt;img alt=&quot;&quot; border=&quot;0&quot; height=&quot;146&quot; id=&quot;BLOGGER_PHOTO_ID_5421832420912263522&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC5CVGPX9NMXKBMSG523SfhYs_LLyB3MlunSMe0-UAmo_3R1McgA0o7vNVUs31oimHVkHAO4yV6XL-QPipjvCZvyxz3edEwtN3GPRZY4dmbnsWX58e4wj2_4Gh8y0_zCwMWGG3aUXENiY/s640/img1.png&quot; style=&quot;float: left; height: 73px; margin: 0pt 10px 10px 0pt; width: 320px;&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;font-family: Verdana,sans-serif;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; face=&quot;Verdana,sans-serif&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt; &lt;/span&gt; &lt;/div&gt;</description><link>http://pavelbilous.blogspot.com/2010/01/blog-post.html</link><author>noreply@blogger.com (Pavel Bilous)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhC5CVGPX9NMXKBMSG523SfhYs_LLyB3MlunSMe0-UAmo_3R1McgA0o7vNVUs31oimHVkHAO4yV6XL-QPipjvCZvyxz3edEwtN3GPRZY4dmbnsWX58e4wj2_4Gh8y0_zCwMWGG3aUXENiY/s72-c/img1.png" height="72" width="72"/><thr:total>1</thr:total></item></channel></rss>