Форум программистов, компьютерный форум, киберфорум
Алгоритмы
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
1

Блочный алгоритм шифрования, который использует только xor

02.04.2016, 19:22. Показов 1004. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Я только начал учить криптографию в университете, прочитал про абсолютно криптостойкие системы (блокноты).
Немного поразмыслил, в голове появилась идея (я более чем уверен, что бердовая ввиду своей крайней простоты, но ответа я не нашел, что не дает мне успокоится).

Идея в следующем. Имеем ключ размера n бит и некоторый открытый текст, который мы разбиваем на блоки размером эти же n бит. Первый блок ксорим с ключом, это наш первый блок шифротекста. Следующий блок открытого текста ксорим с открытым текстом предыдущего блока, получаем второй блок шифротекста и дальше шифруем текст до конца таким же способом, как шифровали 2 блок. Вроде бы, никакой информации об том, что лежало в открытом тексте первого блока, нет, соответственно и ключ (первый блок открытого текста) к 2ому блоку тоже абсолютно неизвестен и т.д и т.п... Из видимых проблем вижу то, что если несколько блоков открытого текста подряд будет одинаковыми, то такими же одинаковыми будут и блоки шифротекста, но это можно исправить...

https://www.cyberforum.ru/atta... 1459614037

Скажите пожалуйста, это бред? И как это можно взломать?
Миниатюры
Блочный алгоритм шифрования, который использует только xor  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.04.2016, 19:22
Ответы с готовыми решениями:

Блочный алгоритм шифрования
Всем доброго времени суток. Данная тема является своего рода представлением моего творения, а...

Реализовать алгоритм XOR-шифрования
Реализовать алгоритм XOR-шифрования одного символа. Рассмотреть беззнаковое целое как четыре...

Реализовать алгоритм xor-шифрования с использованием модуля algorithm
как можно с помощью функций модуля algorithm реализовать простой алгоритм xor-шифрования? просто в...

Алгоритм шифрования и дешифорвания строковых данных методом XOR с ключом.
Кто может, напишите хотя бы один алгоритм, пожалуйста. Алгоритм шифрования и дешифорвания...

10
294 / 265 / 48
Регистрация: 09.04.2013
Сообщений: 1,037
04.04.2016, 13:37 2
Цитата Сообщение от PROtein_BY Посмотреть сообщение
Следующий блок открытого текста ксорим с открытым текстом предыдущего блока
Думаю что это оговорка, поправьте. Иначе теряется смысл использования ключа как такового для всего текста кроме первого блока.

Добавлено через 12 минут
Цитата Сообщение от PROtein_BY Посмотреть сообщение
И как это можно взломать?
- если раздобыть программу которая кодирует или декодирует и декомпилировать её
- если иметь на руках закодированный и раскодированный тексты то можно попробовать оценить поведение шифра
- (сложнее) если проводить анализ закодированного текста на поведение согласно известным методам шифрования.

Не по теме:

- термо-ректальный криптоанализ

0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
04.04.2016, 23:49  [ТС] 3
Ошибки нет, ключ влияет только на первый блок (это 1 из минусов, который, я думаю, реально закрыть).
Допустим, соперник знает, как работает алгоритм. Он имеет на руках шифротекст. Как ему его ломать? Длины ключа он не знает (может быть 128, может быть 1024, ...), ни 1 куска открытого текста он не знает, что ему делать?) Может, где то случится, что он обнаружит 2 одинаковых блока шифротекста и найдет длину ключа, но.... что дальше? Есть ли смысл дорабатывать алгоритм, что бы ключ влиял на все блоки и одинаковые блоки открытого текста давали разные блоки шифротекста? Пока что я не вижу пути взлома даже такого простого алгоритма, зная вообще все, кроме открытого текста и ключа (при условии, что он хотя бы больше, чем 256).
0
642 / 151 / 60
Регистрация: 08.04.2015
Сообщений: 390
05.04.2016, 03:52 4
Цитата Сообщение от PROtein_BY Посмотреть сообщение
Я только начал учить криптографию в университете
Видимо, до режимов шифрования ещё не добрались.
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
05.04.2016, 20:18  [ТС] 5
Я читал о них, там есть 1 режим (PCBC), который приблизительно где то пересекается с тем, что я описал, но не то.
Каким образом можно взломать именно такую систему, когда открытый текст шифруется предыдущим открытым текстом, а первый ОТ шифруется ключом?
0
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
05.04.2016, 22:54 6
Цитата Сообщение от PROtein_BY Посмотреть сообщение
Каким образом можно взломать именно такую систему
А её не особо и надо взламывать, т. к. знание одного блока открытого текста позволяет расшифровать весь текст и даже определить ключ. Уже это делает такой шифр абсолютно непригодным для защиты информации.
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
06.04.2016, 00:48  [ТС] 7
Да, действительно, но это исправимо. Меня волнует, возможно ли взломать это, не имя ничего, кроме шифротекста и алгоритма? Если нет, то можно думать дальше)
0
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
06.04.2016, 00:57 8
Ну пока сложность зависит от структуры и свойств открытого текста, а это уже очень плохо. Если это обычный текст на естественном языке, то вскрытие такого шифра проблем не представляет. Блоки ШТ представляют собой последовательность A+B, В+C, C+D и т. д. Складывая между собой можно свести всё к виду A+B, A+C, A+D, то есть получаем аналог шифра Виженера с коротким ключом, методы взлома которого хорошо известны и легко автоматизируются.
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
06.04.2016, 12:42  [ТС] 9
Да, Вы правы. Спасибо большое. Есть еще 1 вариант, если не сложно, скажите, что думаете о нем)
Ключ шифрует первый блок открытого текста, затем некий генератор генерирует новый ключ на основе старого, этот новый ключ шифруется старым ключом и записывается после зашифрованного текста. Следующий блок открытого текста шифруется уже на новый ключ. Опять гениться новый ключ (3ий уже) и записывается после 2 блока шифротекста. В итоге выйдет шифротекст вида [Шифрованный (на ключ 1) откр. текст 1][Шифрованный (на ключ 1) ключ 2][Шифрованный (на ключ 2) ОТ 2][Шифрованный (на ключ 2) ключ 3]... В итоге размер шифротекста будет почти в 2 раза больше размера открытого текста, но не будет прослеживаться никакой закономерности от шифруемых данных, верно? Это при условии наличия очень хорошего такого генератора, создание которого - отдельная задача.

Добавлено через 3 часа 30 минут
Даже можно новые ключи не вписывать, они синхронно появятся при расшифровке... и складывать блоки после первого нужно и с ключом и с открытым текстом...
0
Эксперт С++
2381 / 1665 / 279
Регистрация: 29.05.2011
Сообщений: 3,399
06.04.2016, 12:46 10
Ну вот генератор — это и есть блочный шифр, а режим шифрования — OFB
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 22
06.04.2016, 17:22  [ТС] 11
Спасибо большое, все не так просто, как я думал
0
06.04.2016, 17:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2016, 17:22
Помогаю со студенческими работами здесь

Алгоритм шифрования и дешифорвания строковых данных методом XOR с ключом.
Помогите хоть один написать. Алгоритм шифрования и дешифорвания строковых данных методом XOR с...

Intel GMA 4000 Не использует всю доступную графическую память, а использует только 32МБ
Здравствуйте. Взял ноутбук чисто для работы на i5 core, 6гб ддр3, intel gma 4000. Поставил старую...

Примеры XOR шифрования
Здравствуйте. Хотелось бы увидеть примеры XOR шифрования на C++, т.к. в интернете я не сильно много...

Повысить быстродействие XOR шифрования
Привет. Я было уже спрашивал по поводу данного кода, но теперь у меня другая проблема. Имею код:...

Оператор для xor шифрования
Разматриваю пример шифрования, возник детский вопрос ^ что делает этот оператор?

Небольшая доработка кода шифрования XOR
Пожалуйста помогите!!!%-) голова кругом вот этот код работает: void __fastcall...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru