![]() |
|
![]() ![]() ![]() |
|
koroplysov |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 29.8.2009 Репутация: нет Всего: нет |
Смотрю я и вижу, народ хочет зашифровать но не может. А если может, то шифры замены, подстановки, перестановка и др. которые для новичка криптоаналитика не составляет труда взломать. Говорят про разные сложные шифры: MARS, AES, RC(4,5,6) и другие. Зачем так сложно для того, чтобы зашифровать файл. Конечно лучше взять специализированную литературу и понять смысл симметричных и асимметричных криптосистем, ЭЦП, хэш. У нас в России есть стандарт симметричного криптографического преобразования ГОСТ 28147-89. Схема очень проста, но на столько же эффективна. За время его существования американцы освоили 2 шифра. А наш живет и будет жить.
Короче прилагаю исходники шифра ГОСТ 28147-89(64 бит блок, 256 бит ключ) для режима гаммирования и для шифрования одного блока. При гаммировании синхропосылкой являются константы C1 и C2. Для тех кто не знает, в режиме гаммирования блочный шифр "превращается" в поточный, то есть не нужно входную информацию выравнивать кратно блоку шифра. Ну и естественно есть функция шифрования одного блока. Исходник брал из своего диплома, там была система классов для различных типов шифров, поэтому немного избыточен код. Функция шифрования блока имеется на ассемблере(вставка) и на С(дело вкуса). Шифр основан на сети Фейстеля поэтому для шифрования и расшифрования используется одна функция(все зависит от порядка следования ключей, поэтому вынесено в отдельные функции). Для простоты использования таблицы замен, они предварительно приводятся с 4 битного размера ячейки к 1 байту, так легче использовать при многократных операциях. Когда писал диплом проверял результат. Сейчас нет. Поэтому могут и ошибки быть, но я старался. Прилагаю исходники. Присоединённый файл ( Кол-во скачиваний: 143 ) ![]() |
|||
|
||||
xvr |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 48 Всего: 223 |
Да не хочет народ ничего шифровать, если бы хотел - взял бы CryptoAPI ![]() То, что тут пробегало вообще нельзя (даже вредно) называть шифрованием! Т.к. дает ничем не обоснованную видимость защиты информации, каковой на самом деле и не пахнет ![]()
RC4 пишется в 10 строчек, и является на порядок более простым шифром (точнее, генератором гаммы), чем ГОСТ. Остальные тоже не сильно отличаются от ГОСТа по сложности. Так что про 'сложные шифры' вы несколько преувеличили ![]() |
|||
|
||||
koroplysov |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 29.8.2009 Репутация: нет Всего: нет |
По поводу RC4 согласен, погорячился. Простой. Но ГОСТ 28147-89 не сильно сложнее и можно реализовать примерно в таком же объеме кода запросто. Просто его можно оптимизировать по скорости, что я и попытался.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++ Builder" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C++ Builder | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |