[SIZE=2][COLOR=#008080][FONT=Courier New]TripleDESCryptoServiceProvider[/FONT][/COLOR][/SIZE][FONT=Courier New][SIZE=2] des = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]TripleDESCryptoServiceProvider[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New]();[/FONT]
[FONT=Courier New]des.Key = [/FONT][/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New][] { 0xFA, 0x11, 0x45, 0x01, 0x88, 0xA9, 0x56, 0x00, 0xCD };[/FONT]
[FONT=Courier New]des.GenerateIV();[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New][] initVector = des.IV;[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]using[/COLOR][/SIZE][SIZE=2]([/SIZE][SIZE=2][COLOR=#008080]FileStream[/COLOR][/SIZE][SIZE=2] sourceFile=[/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]FileStream[/COLOR][/SIZE][SIZE=2]([/SIZE][SIZE=2][COLOR=#800000]"Source.txt"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]FileMode[/COLOR][/SIZE][SIZE=2].Open, [/SIZE][SIZE=2][COLOR=#008080]FileAccess[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New].Read))[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]using[/COLOR][/SIZE][SIZE=2] ([/SIZE][SIZE=2][COLOR=#008080]FileStream[/COLOR][/SIZE][SIZE=2] destFile = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]FileStream[/COLOR][/SIZE][SIZE=2]([/SIZE][SIZE=2][COLOR=#800000]"Dest.txt"[/COLOR][/SIZE][SIZE=2], [/SIZE][SIZE=2][COLOR=#008080]FileMode[/COLOR][/SIZE][SIZE=2].Create, [/SIZE][SIZE=2][COLOR=#008080]FileAccess[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New].Write))[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff]using[/COLOR][/SIZE][SIZE=2] ([/SIZE][SIZE=2][COLOR=#008080]CryptoStream[/COLOR][/SIZE][SIZE=2] encryptor = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#008080]CryptoStream[/COLOR][/SIZE][SIZE=2](destFile, des.CreateEncryptor(), [/SIZE][SIZE=2][COLOR=#008080]CryptoStreamMode[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New].Write))[/FONT]
[FONT=Courier New]{[/FONT]
[/SIZE][FONT=Courier New][SIZE=2][COLOR=#0000ff] byte[/COLOR][/SIZE][SIZE=2][] buffer = [/SIZE][SIZE=2][COLOR=#0000ff]new [/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]byte[/COLOR][/SIZE][/FONT][SIZE=2][FONT=Courier New][sourceFile.Length];[/FONT]
[FONT=Courier New] sourceFile.Read(buffer, 0, buffer.Length);[/FONT]
[FONT=Courier New] encryptor.Write(buffer, 0, buffer.Length);[/FONT]
[FONT=Courier New]}[/FONT]
[/SIZE]
Как зашифровать / дешифровать лубой файл (рисунок, приложение, тхт) используя пароль
Пожалуйста, помогите: мне надо зашифровать, а потом дешифровать файл [SIZE="5"]ЛЮБОГО ТИПА[/SIZE], а ещё лутше: папку. Главное: использовать пароль для шифровки / лешифровки, и не использовать сертефикаты пользователя.
Используя типы из System.Security.Cryptography.
А можно поподробнее? И работающий проэкт (исходник). И заранее благодарен!:)
Цитата: tva94
А можно поподробнее? И работающий проэкт (исходник). И заранее благодарен!:)
Да вот простой пример, шифруем файл при помощи Triple DES:
Код:
Единственный момент - вектор инициализации шифратора должен быть одинаковым при всех операциях шифрования/дешифрования, поэтому сгенерируй его один раз (как в примере), выведи в отладке его значение и замени потом GenerateIV на постянный вектор инициализации.
Файл шифронуло, а мне и дешифронуть его надо...
Ты пошутил???? ... вместо CreateEncryptor вызвать CreateDecryptor надо и фсё