0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
||||||
1 | ||||||
Шифрование и дешифрование с использованием алгоритма "исключающее ИЛИ"06.05.2014, 16:37. Показов 6649. Ответов 15
Метки нет (Все метки)
Мне нужно создать программу шифрования или дешифрования с помощью алгоритма "исключающее ИЛИ".
Нашла что-то подобное,но при вводе х(любое слово) и ключа(любая цифра) программа у меня вылетает и пишет ошибку программа завершилась с кодом 0. Может я что то не так понимаю? как работает эта программа? Желательно построчно =) Спасибо.
0
|
06.05.2014, 16:37 | |
Ответы с готовыми решениями:
15
Произвести шифрование с использованием поразрядной операции «исключающее или» Шифрование/дешифрование указанного файла алгоритмом "Исключающее или" Шифрование и дешифрование посредством алгоритма двойных перестановок Шифрование и дешифрование с использованием XOR Шифрование/дешифрование методом Цезаря (с использованием процедур) |
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
||||||
06.05.2014, 16:45 | 2 | |||||
0
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
|
06.05.2014, 16:53 [ТС] | 3 |
А это куда именно его вставить?
0
|
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
|
06.05.2014, 16:58 | 5 |
В функцию Shifr.
В твоей реализации сомнительна строка 11 - и инкремент и обращение по указателю одновременно.
0
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
|
06.05.2014, 17:01 [ТС] | 6 |
Kuzia domovenok, с++ знаю, но не настолько хорошо что бы "шарить" в нем. Поэтому и написала в тему с++ для НАЧИНАЮЩИХ)
Добавлено через 19 секунд nmcf, спасибо,сейчас попробую))
0
|
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
|
06.05.2014, 17:02 | 7 |
Только key не должен быть пустой строкой, иначе зациклится. Этот случай надо отдельной проверкой обрабатывать.
0
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
|
06.05.2014, 17:15 [ТС] | 8 |
а теперь почему-то после ввода ключа он замалкивает,и больше ничего не нажимается и не запрашивает. но пишет что ошибок нет..
0
|
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
|
06.05.2014, 17:20 | 9 |
После кодирования могут получиться неотображаемые символы, поэтому выводить их непосредственно не стоит. Используй для вывода шестнадцатеричное представление.
0
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
||||||
06.05.2014, 22:44 [ТС] | 10 | |||||
nmcf, в общем сделала так
как мне сделать что бы при вводе ключа программа воспринимала цифры от 10 и более как единую. Ведь когда мы вводим ключ 12345 он применяет шифрование с отдельными цифрами..надеюсь вы меня поняли =))
0
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
|
06.05.2014, 22:51 [ТС] | 11 |
что бы можно было к каждой букве присвоить букву в алфавите после И..у которых номер это двухзначное число..
0
|
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
|
06.05.2014, 23:04 | 12 |
Не понял. Ты шифруешь символы другими символами используя их коды. Как надо по-другому?
0
|
Заблокирован
|
|
06.05.2014, 23:13 | 13 |
Не по теме: Как жаль что админы не слышать большую часть не новичков этого форума и не делают второй раздел, чтоб было два: А теперь по теме. ТС. Твоё исключающее или называется XOR (ксор), шифровать им - это самое простое шифрование, которое только можно придумать, но и его хватает в некоторых случаях. Как им шифровать? Очень просто. У тебя есть любая информация, не важно какая и не важно как ты её создаёшь или там заполняешь... Так же у тебя есть ключ. Так вот по своей исходной информации пробегаешься циклом и каждый её байт ксоришь (XOR) ключём (побайтово как бы), всё - ты зашифровал исходные данные. Для расшифровки делаешь тоже самое - зашифрованную информацию побайтово ксоришь ключом и получаешь расшифрованную информацию ... Ясно? (ну это в самом простом случае)
1
|
0 / 0 / 0
Регистрация: 18.03.2014
Сообщений: 22
|
|
06.05.2014, 23:26 [ТС] | 14 |
nmcf, даже не знаю как объяснить на письме. Сам метод состоит в том,что берется какое то слово. К каждой букве этого слова присваивается ее номер в алфавите. Так же мы берем произвольный ключ с любыми порядковыми номерами. Но что бы их количество соответствовало количеству букв в слове. Переводим все это в двоичный код и применяем операцию xor. Что бы дешифровать зашифрованный текст нужно просто к результату опять применить операцию xor. Так вот в моей получившейся программе получилось что в ключе нельзя присвоить букве двухзначное число..или я что то сама недопонимаю
Добавлено через 4 минуты newbie666, всё то,что вы написали я знаю. И описала сообщением выше. Возможно, что мы недопонимаем друг друга. Я всего лишь хочу понять,как мне присвоить в коде двухзначное число каждой букве..
0
|
7785 / 6553 / 2983
Регистрация: 14.04.2014
Сообщений: 28,621
|
|
07.05.2014, 07:58 | 16 |
Вместо символов их номера использовать, что ли? Опиши на примере.
0
|
07.05.2014, 07:58 | |
07.05.2014, 07:58 | |
Помогаю со студенческими работами здесь
16
Шифрование и дешифрование кодом Цезаря с использованием классов Выполнить шифрование и дешифрование текста с использованием магических квадратов Шифрование/дешифрование методом замены с использованием таблицы Ascii Выполнить шифрование и дешифрование текста с использованием ассоциативных магических квадратов Шифрование с использованием алгоритма о рюкзаке Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |