Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Blowfish незапатентован, и будет таким оставаться во всех странах. Алгоритм тем самым помещен в общую область и может быть использован любым




Наиболее эффективный способ взломать Blowfish - через полный перебор ключей Исходный текст на Си и тестовые векторы может получить любой, желающий реализовать алгоритм, в соответствие с законами США об экспорте.

Меньшее количество итераций. Вероятно, возможно уменьшение количества итераций с 16 до 8 без сильного ослабления защиты. Число итераций требуемых для защиты может зависеть от длины ключа. Обратите внимание, что с имеющейся процедурой порождения подключа, алгоритм с 8 итерациями не может обрабатывать ключ длиной больше 192 бит.

ВОЗМОЖНЫЕ УПРОЩЕНИЯ

Сеть Feistel, составляющая тело Blowfish, разработана так, чтобы при наибольшей простоте она сохраняла свои криптографические свойства.

РЕАЛИЗАЦИЯ ПРОЕКТА

MINI-BLOWFISH

Всего, 521 итерация требуются, для генерации всех требуемых подключей. Прикладные программы могут сохранить подключи, чтобы сократить время.

Следующие малые версии Blowfish определены исключительно для криптоанализа. Они не предлагаются для реализации. Blowfish-32 имеет размер блока в 32 бита, и массивы подключей с 16 битными входами (каждый S-блок имеет 16 входов). Blowfish-16 имеет размер блока в 16-бит, и массивы подключей с 8-битными входами (каждый S-блок имеет 4 входа).

Вероятность ошибок в реализации алгоритма мала, т.к. сами S блоки и P-блок очень просты. 64-битный блок в действительности разбивается на 32-битные слова, что совместимо с существующими алгоритмами. В Blowfish можно легко повышать размер блока до 128-бит, и понижать размер блока. Криптоанализ вариантов мини-Blowfish может быть значительно проще, чем криптоанализ полной версии.

В проекте алгоритма существует два способа гарантировать, что ключ является достаточно длинным, чтобы достичь нужного уровня защиты. Первый в том, чтобы тщательно разработать алгоритм так, чтобы энтропия случайно введенного ключа сохранялась, так как тогда не существует другого метода криптоанализа, кроме атаки в "лоб". Другой способ - в увеличении длины ключа настолько, что уменьшение эффективности ключа на несколько битов не дает больших преимуществ. Так как Blowfish разработан для больших процессоров с большим размером памяти я выбрал последний способ.

Отнимающий много времени процесс порождения подключей добавляет сложность для нападения "в лоб". Всего 522 итераций алгоритма шифрования требуется, чтобы проверить один ключ, что добавляет 29 шагов при любом нападение в лоб.

Непрерывное вычисление подключа. Текущий метод вычисления подключей требует, чтобы все подключи вычислялись перед любым шифрованием. Фактически невозможно вычислить последний подключ последнего S-блока без вычисления перед этим предыдущего ключа. Был бы предпочтительней альтернативный метод вычисления подключа: когда каждый подключ может быть вычислен независимо от другого подключа. Высококачественные реализации могли бы предварительно вычислять подключи для более высокой скорости, но реализации с низкими требованиями могут вычислять подключи, когда это необходимо.

Blowfish - это простая и легкая в понимании программа. Панель инструментов содержит только картинки и ни одного слова. Четкая система подсказок. Выбрав файл, и нажав на изображение «замка», вы получите сообщение, что сейчас возможно использование шифрования только с ключом из пяти позиций, но после регистрации доступными будут и 32000-символьные ключи шифрования. После введения ключа процесс шифрования длится несколько секунд. Файл получает новое расширение (.BFA), которое служит командой для операционной системы при встрече с ним запустить в действие Blowfish Advanced.

В сети существует также защитная программа под Windows 95/NT, которая использует механизм Blowfish. EncLib 5/5 Использует для шифрования варианты Blowfish CDC и ECB.




Поделиться с друзьями:


Дата добавления: 2015-07-13; Просмотров: 323; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.