Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 86, средняя оценка - 4.86
-Andriy-
0 / 0 / 0
Регистрация: 28.04.2010
Сообщений: 26
#1

программа для шифрования и расшифровки текстовых файлов - C++

13.05.2010, 09:40. Просмотров 11421. Ответов 54
Метки нет (Все метки)

программа для шифрования и расшифровки текстовых файлов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2010, 09:40
Здравствуйте! Я подобрал для вас темы с ответами на вопрос программа для шифрования и расшифровки текстовых файлов (C++):

Написать программы шифрования и расшифровки файла методом циклического сдвига - C++
Написать программы шифрования и расшифровки файла методом циклического сдвига. Т.е. каждый символ исходного файла (исходный код - K1)...

Программа шифрования файлов с возможностью расширения функционала - C++
Всем добрый вечер! Очень прошу помощи! Завтра сдавать задание: Написать программу, для шифрования файлов. В программе должно быть...

Программа для шифрования - C++
Я сис-админ, не уверен что правильно будет писать на Си, но это единственный язык, который еле еле знаю, акромя вбс и проч, разумеется ...

Чтение текстовых файлов для новичков (getline) - C++
Задача чтения и обработки текстового файла - одна из самых распространенных. Она сравнительно проста, но у новичков порой возникают...

Программа для шифрования английского текста шифром ROT13 - C++
Доброго времени суток, формучане! Очень нужна ваша помощь, не могу понять, как написать программу для шифрования текста шифром ROT13. В С++...

Использование массивов и текстовых файлов//это не для слабаков..и если толком ничего не знаете то даже не пытайтесь решить - C++
1. Сформировать массив из произведений положительных элементов каждой строки массива С; если их в строке нет, результат должен быть равен...

54
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
21.05.2010, 09:24 #16
Цитата Сообщение от odip Посмотреть сообщение
Это почему жестоко ?
С помощью библиотеки openssl если брать высокоуровневые функции то зашифровать/зашифровать будет стоить штук 5 функций из openssl. Готовые примеры кода можно спокойно найти.
Добавлено через 41 секунду
Причем смена одного алгоритма на другой - это все лишь один параметр в одной функции
жестоко потому что библиотеку надо еще создать, подключить и воспользоваться теми самыми примерами... говоря про конкретный случай, хм хм...
1
GFarit
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 7
28.08.2011, 20:46 #17
Цитата Сообщение от fasked Посмотреть сообщение
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
#include <stdio.h>
 
int main()
{
      char key[] = "qwerty";
      FILE *input  = fopen("file.txt", "rb");
      FILE *output = fopen("out_.txt", "wb");
      if ( input != NULL && output != NULL )
      {
         unsigned char buffer[BUFSIZ];
         size_t count, i, j = 0;
         do {
            count = fread(buffer, sizeof *buffer, sizeof buffer, input);
            for ( i = 0; i < count; ++i )
            {
               buffer[i] ^= key[j++];
               if ( key[j] == '\0' )
                  j = 0;
            }
            fwrite(buffer, sizeof *buffer, count, output);
         } while ( count == sizeof buffer );
         fclose(input);
         fclose(output);
      }
   return 0;
}
Добавлено через 1 минуту
Шифрование методом XOR;
в строке key хранится ключ шифрования.
input - файл для шифрования
ouput - зашифрованный файл на выходе.
для расшифрования прогнать уже зашифрованный файл на том же ключе
Спасибо за отличный пример!
Довёл ваш пример до полной работоспособности, заодно, исправил один момент,
связанный с работой с текстовыми файлами. В таком виде "\r\n" заменяются на "\0".
Если кому интересно, могу выложить как я исправил это.
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.08.2011, 21:10 #18
Представленные здесь методы шифрования абсолютно ЛЕГКО взламываются. А кто-то про RSA упомянул - это для шифрования только ключей. Используйте шифры AES, ГОСТ, RC6 и т.д.

Добавлено через 1 минуту
Цитата Сообщение от GFarit Посмотреть сообщение
Спасибо за отличный пример!...Если кому интересно, могу выложить как я исправил это.
Это шифр Вернама с периодической гаммой, взломать такой не составит большого труда. Как бы вы его не исправили - не надежный шифр.

Если уж будете его использовать, то храните ключи в файле и по возможности ключ по длиннее используйте, хотя и это вас не всегда спасет.
0
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.08.2011, 21:12 #19
Цитата Сообщение от Thinker Посмотреть сообщение
Представленные здесь методы шифрования абсолютно ЛЕГКО взламываются.
Вот так удивил...
Цитата Сообщение от Thinker Посмотреть сообщение
А кто-то про RSA упомянул - это для шифрования только ключей.
Что-что, простите?
Цитата Сообщение от Thinker Посмотреть сообщение
Используйте шифры AES, ГОСТ, RC6 и т.д.
Какой именно ГОСТ? Вы хотя бы в курсе, чем эти криптоалгоритмы отличаются друг от друга? Натолкали кучу алгоритмов в одну кучу без определения контекста задачи.
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.08.2011, 21:16 #20
Это блочные шифры для данной задачи.
Про RSA. Это шифр с открытым ключом. Используется для ШИФРОВАНИЯ КЛЮЧЕЙ ДЛЯ БЛОЧНЫХ ШИФРОВ.
0
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.08.2011, 21:18 #21
Цитата Сообщение от Thinker Посмотреть сообщение
Про RSA. Это шифр с открытым ключом. Используется для ШИФРОВАНИЯ КЛЮЧЕЙ ДЛЯ БЛОЧНЫХ ШИФРОВ.
У меня даже слов нет... Хотя бы википедию почитайте.
0
GFarit
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 7
28.08.2011, 21:27 #22
Цитата Сообщение от Thinker Посмотреть сообщение
Представленные здесь методы шифрования абсолютно ЛЕГКО взламываются. А кто-то про RSA упомянул - это для шифрования только ключей. Используйте шифры AES, ГОСТ, RC6 и т.д.

Добавлено через 1 минуту


Это шифр Вернама с периодической гаммой, взломать такой не составит большого труда. Как бы вы его не исправили - не надежный шифр.

Если уж будете его использовать, то храните ключи в файле и по возможности ключ по длиннее используйте, хотя и это вас не всегда спасет.
Раздел, вообще-то, для начинающих... И я исправил не надёжность шифра, а особенность обработки
текстовых файлов...

Раз уж про надёжность заговорили... А как насчёт переменного ключа?
Про такой слышали?
0
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.08.2011, 21:31 #23
GFarit, да тут смысл в том, что более-менее приемлимую надежность для данного алгоритма в любом случае не получить. Слишком простое преобразование.
Под словом "приемлимую" я подразумеваю приемлимую для защиты данных коммерческого характера.
0
GFarit
0 / 0 / 0
Регистрация: 28.08.2011
Сообщений: 7
28.08.2011, 21:40 #24
Fasked, А у вас есть опыт создания "коммерческой" защиты?
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.08.2011, 21:43 #25
Цитата Сообщение от fasked Посмотреть сообщение
У меня даже слов нет... Хотя бы википедию почитайте.
Странно, а еще пытаетесь умные вещи говорить...

Добавлено через 1 минуту
Цитата Сообщение от GFarit Посмотреть сообщение
А как насчёт переменного ключа?
Про такой слышали?
Странный вопрос, видать вам многому еще учиться надо.
0
villu
203 / 204 / 4
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
28.08.2011, 21:44 #26
RC4
реализация проста.
скорость высокая.
от школьников файлик спрятать хватит.
Ну или ГОСТ.
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.08.2011, 21:45 #27
Цитата Сообщение от villu Посмотреть сообщение
RC4
реализация проста.
скорость высокая.
от школьников файлик спрятать хватит.
Ну или ГОСТ.
А ничего, что ГОСТ - российский стандарт шифрования? И речь была о RC6.
0
fasked
Эксперт С++
4945 / 2525 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
28.08.2011, 21:46 #28
Цитата Сообщение от GFarit Посмотреть сообщение
А у вас есть опыт создания "коммерческой" защиты?
Вся "коммерческая" защита строится на грамотной инфраструктуре управления ключами, управлении доступом и политике информационной безопасности в целом, и уже в последнюю очередь на конкретном алгоритме.
Допустим, чтобы повысить "надежность" надо будет увеличить размеры ключей и уменьшить их время использования.
0
Thinker
Эксперт С++
4227 / 2201 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
28.08.2011, 21:47 #29
fasked, вы знаете, что в википедии учиться - себя не уважать?
0
villu
203 / 204 / 4
Регистрация: 06.08.2011
Сообщений: 600
Записей в блоге: 1
28.08.2011, 21:47 #30
Цитата Сообщение от Thinker Посмотреть сообщение
А ничего, что ГОСТ - российский стандарт шифрования?
и?
Цитата Сообщение от Thinker Посмотреть сообщение
И речь была j RC6.
и? Я так понял человек сильно начинающий, а RC4 на коленке рисуется за 10 минут.
0
28.08.2011, 21:47
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.08.2011, 21:47
Привет! Вот еще темы с ответами:

Конкатенация текстовых файлов - C++
Подскажите примерно как действовать. Нужно соединить данные(строки)из 2ух текстовых файлов и результат вывести в выходной файл. В...

Обработка текстовых файлов - C++
Помогите написать программу для заданного файла удалить все строки, яки начинаются с &quot;*&quot;. Результат сохранить в том же файли. ...

Конкатенация текстовых файлов - C++
Доброго времени суток. Нужно объединить заданное количество текстовых файлов. Результат слияния заданных файлов должен быть отображен через...

Обработка текстовых файлов - C++
Я написал программу, которая выводит с файла допустим dfgdfg dfgdfg dfgdfg dfgdfg dfgdfg dfdfgdf Код: #include &lt;fstream.h&gt; ...


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

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

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