Простое шифрование файла на C#

279
10 июня 2018, 23:20

У меня простая windows form. Две кнопки: одна шифрует файл любым способом, сохраняет файл и в конце расширения дописывает .crypt; другая расшифровывает. Поиск в интернете дал только шифровку string строк. Помогите в реализации кода.

Answer 1

Для самого простого случая можно использовать шифр XOR. Для шифрования и дешифрирования будет использоваться одна и та же кнопка button1. Функция шифрования и дешифрования:

byte[] Crypt(byte[] bytes)
    {
        for (int i = 0; i < bytes.Length; i++)
            bytes[i] ^= 1;
        return bytes;
    }

Функция получения нового имени файла:

string GetNewFileName(string FileName)
    {
        return FileName.EndsWith(".crypt") ? FileName.Remove(FileName.LastIndexOf(".crypt")) : FileName + ".crypt";
    }

Пример использования в программе:

private void button1_Click(object sender, EventArgs e)
        {
            byte[] MyFile = File.ReadAllBytes(MyFilePath);
            byte[] NewFile = Crypt(MyFile);
            string NewFileName = GetNewFileName(MyFileName);
            File.WriteAllBytes(NewFileName, NewFile);
        }
READ ALSO
Как получить нажатие клавиши без вывода ее в консоль

Как получить нажатие клавиши без вывода ее в консоль

Имею вот такую вот простенькую реализацию игры Mined Out:

225
Почему не сохраняет в базу данных данные [закрыт]

Почему не сохраняет в базу данных данные [закрыт]

Почему не сохраняет в базу данных (SQL Server) данные из dataGridView? Код без ошибок

187
Избавится от SELECT в выражении WHERE

Избавится от SELECT в выражении WHERE

Есть такая таблица в БД:

194