![]() |
Цитата:
А если учитывать, что без этой проги я не допущюсь к экзамену, так вообще нужно вешаться :( |
в чём ты увидел его похожесть на RSA? :)
Blowfish - это симметричный блочный шифр RSA - асимметричный :) что конкретно не ясно? как проиходит шифрование? дык втыкай в исходные коды. |
Цитата:
http://forum.tuts4you.com/index.php?showtopic=15259&hl=Blowfish |
Блин, всем реально большущее спасибо за ссылки и т.п., но не могли бы Вы мне еще разок такому глупому помочь(я понимаю достал Вас), необходимо чтобы текст введенный в Edit1 был зашиврован по паролю который указан в Edit2 и выведен в Edit3, опять же по алгоритму BlowFish. Просто тот материал который Вы давали, слишком большой и сложный, для универа и тем более преподаватель не поверит, что я такое смог написать =(
|
Я в паскале не силен, на C\C++ выглядеть это будет примерно так:
Код:
string BlowfishCrypt(string key, string text) // вот так выглядит твоя функция вP.S. Кстати чаво сам то не реализовал?=) В Википедии вроде все ясно для 32 битного блока. |
Цитата:
А прога должна быть на Делфи. |
А что там: шифрование 2-х субблоков по 32 бита (в сумме блок 64 бита),накладываешь ключ раунда каждый субблок шифруетсо функцией F (X1, X2, X3, X4), где X1, X2, X3, X4 байты субблока, после чего меняешь местами субблоки. Вот собственно так и делаються первые 16 раундов.В 17-м и 18-м раундах блоки не меняються! Таблицы замены можно найти на офф сайте ключи раундов тоже там есть. Исходников под паскаль море: www.google.ru - в руки.
Кста, тут вечерком подумал, а что те мишает повыеживаться перед преподом? BlowFish самый быстрый алгоритм, уязвимое место его расчет таблиц подстановки и генерация ключей раундов. А в наш время компы мощные, быстрые, с большим кол-вом памяти. Вот тебе и предложение возьми готовые реализации MD5, SHA-1, SHA-2 и с помощью них заполни таблицы и ключи. Например: MD5 дает 16 байт, вот тебе первые 4-е ключа раундов, отсюда и требование шоб пароль разбивался на 5 блоков, от которых возьмеш хэш. Для таблиц замены можешь также взять хэши, либо просто какой-нить расходящийся ряд, которые тебе увеличит пароль до словаря. Главное подбери простые алгоритмы дающие большую дисперсию при малом шаге, ну и работающие соответственно быстро. P.S. вот линка на офф сайт http://www.schneier.com/resources.html Там исходники написаны на любой вкус и цвет! |
| Время: 16:58 |