Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.56/18: Рейтинг темы: голосов - 18, средняя оценка - 4.56
88 / 4 / 2
Регистрация: 07.12.2009
Сообщений: 60
1

Побитово зашифровать и сохранить файл

07.12.2009, 07:36. Просмотров 3657. Ответов 1
Метки нет (Все метки)


Всем привет!
Такая проблема: Есть набор битов, нужно создать новый файл, который будет в виде этих битов.
Если подробнее, то нужно побитово зашифровать файл, т.е. есть какой нибудь файл например mic.mp3, нужно последовательно перебирать и шифровать его байты. Перебирать и зашифровать получается, а вот правельно сохранить нет (

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#region Зашифровать файл
        public void SochrFile(string FName)
        {
            System.IO.FileStream fs;
            BinaryReader binReader =  new BinaryReader(File.Open(FName,  FileMode.Open));  //сохраняем виты в binRead
               
            if (!System.IO.File.Exists("new"+FName)) //создаем новый файл 
            {
                using (fs = System.IO.File.Create(FName))
                {
                 while (binReader.PeekChar() != -1)  //не знаю как правельно задать длину в байтах
                    {
                        fs.WriteByte(binReader.ReadByte());
                    }
                }
            }
 
        }
       #endregion

или еще вариант
C#
1
2
3
4
5
6
7
8
9
10
11
12
System.IO.FileStream fs2;
            System.IO.FileStream fs1;
           
                using (fs1 = System.IO.File.OpenRead(FName))
                {
                   fs2=System.IO.File.Create("new"+FName);
                   for (int i = 0; i <= fs1.Length - 1; i++)
                   {
                       fs2.WriteByte((byte)fs1.ReadByte());
                   }
                   }
            }
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.12.2009, 07:36
Ответы с готовыми решениями:

Можно ли как-то зашифровать файл?
В своей программе я создаю файл с какой-то информацией(Editor). Но мне нужно сделать так что-бы его...

Как и чем зашифровать файл перед тем как передать его серверу/клиенту
Народ, такое вот условие есть некий сервер, к которому подключаются клиенты, и могут пересылать...

Данные с сервера зашифровать, сжать и сохранить на диск
Принцип следующий. Получаешь данные с сервера (oracle) полученные данные сохраняешь на локальном...

Как зашифровать текстовый файл для открытия только в моей программе?
Как зашифровать текстовый файл для открытия только в моей программе?

1
88 / 4 / 2
Регистрация: 07.12.2009
Сообщений: 60
09.12.2009, 12:31  [ТС] 2
Разобрался

Вот пример, код конечно тестовый, но то, что мне надо, он делает )
Создает файл, изменяя все его байты сдигов влево

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
byte[] byData = new byte[8220672];   // масив байтов заранее знаю размер, потом поменяю
           try
            {    // файловый поток, открывает файл (при отсутсвии создает) только для чтения
                FileStream fs = new FileStream("wer.mp3", FileMode.OpenOrCreate, FileAccess.Read);
                if (fs.CanSeek == true) // если можно производить поиск
                {
                    fs.Seek(55, SeekOrigin.Begin);  // делаем отступ на 55 байт с начала файла
                    // чтение данных и запись в масив байтов, со двигом в мас. 0, и длинной в 100 байт
                    fs.Read(byData, 0, 8220672);
                }
                fs.Dispose(); // освобождаем ресурсы
            }
 
   {
          //      MessageBox.Show(err.Message);  return;
            }
 
 try
            {
                using (FileStream fs=File.Create("new.mp3"))
                {
                fs.Seek(55, SeekOrigin.Begin);
           
                    for (int i = 0; i <= fs.Length; i++)
                    byData[i] = (byte)(byData[i]>>1);  // Изменяем ,fqns сдвигом 
                    fs.Write(byData, 0, byData.Length); // запись массива байт
                 }
            }
            catch (Exception err)
            {
          //      MessageBox.Show(err.Message); return;
            }
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.12.2009, 12:31

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Как сохранить файл настроек в отдельный свой файл?
Никто не подскажет как сохранить файл настроек Settings в отдельный файл? Есть идея сохранять...

Зашифровать файл
В корневой папке программы есть еще одна папка. В этой папке сохраняются фото. Возможно как то...

Как зашифровать файл?
Здравствуйте, возможно как-то любым способом зашифровать файл?

Как зашифровать и расшифровать файл?
Есть файл &quot;myfile&quot;. Нужно, чтобы при нажати на одну кнопку файл зашифровывался, а при нажатии на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.