Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
|
Re: [Чайник] Анализ MD5 при условии chosen plaintext 05.05.03 15:07 Число просмотров: 2492
Автор: leo <Леонид Юрьев> Статус: Elderman
|
> Сразу оговорюсь - в крипто я не то что не профи, но даже не > адвансед. Прошу помощи в следующем: > есть функция генерения кукисов. > На входе - один 512 битный блок состоящий из: > A.32 бита - известны и фиксированы > B.2 - 32 бита - я могу задать (20-30 вариантов) > C.16 бит - известны и фиксированы > D.16 бит - известны и я могу их задать (65535 вариантов) > E.128 бит - неизвестны, берутся из SPRNG > остальное - md5 padding - соответственно известны и > фиксированы > на выходе я могу получить первые 32 бита хэша. Желательно: > после N таких прогонов получить возможность угадать с > точностью до 10^4 (10^5, 10^6) результат энтой функции при > известных и фиксированных полях всех кроме D. Какие есть > матаппараты для исследования хэшфункций? Куда копать? Вот. > Изъясняюсь я коряво, так как фени криптошной не знаю, но > хочется эту штуку понять. > > Пока.
Если я правильно понял условия, то все сводиться к тому, чтобы с некоторой вероятностью угадать значение "E", варьируя B и D, и зная 32 бита результата каждой итерации.
При решении "в лоб", вероятность угадывания - 1 из 2^96.
Можно применить криптоанализ, но (IMHO) даже близко к заданной вероятности не подойти. Например, полный перебор D, грубо говоря повысит шансы до 1 из 2^80. Есть конечно вероятность того, что при определенном "раскладе", выявятся очень "перспективные"/вероятные значения многих битов для E или hash-результата, но сама по себе вероятность такой ситуации очень мала.
Чтобы ответить конкретнее, нужно взять точную раскладку исходных бит проследить все преобразования, просчитать вероятности, и самые выгодные значение для В. Но это большая, рутинная и кропотливая работа...
|
<theory>
|
[Чайник] Анализ MD5 при условии chosen plaintext 01.05.03 19:00
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
Сразу оговорюсь - в крипто я не то что не профи, но даже не адвансед. Прошу помощи в следующем:
есть функция генерения кукисов.
На входе - один 512 битный блок состоящий из:
A.32 бита - известны и фиксированы
B.2 - 32 бита - я могу задать (20-30 вариантов)
C.16 бит - известны и фиксированы
D.16 бит - известны и я могу их задать (65535 вариантов)
E.128 бит - неизвестны, берутся из SPRNG
остальное - md5 padding - соответственно известны и фиксированы
на выходе я могу получить первые 32 бита хэша. Желательно: после N таких прогонов получить возможность угадать с точностью до 10^4 (10^5, 10^6) результат энтой функции при известных и фиксированных полях всех кроме D. Какие есть матаппараты для исследования хэшфункций? Куда копать? Вот. Изъясняюсь я коряво, так как фени криптошной не знаю, но хочется эту штуку понять.
Пока.
|
|
Re: [Чайник] Анализ MD5 при условии chosen plaintext 05.05.03 15:07
Автор: leo <Леонид Юрьев> Статус: Elderman
|
> Сразу оговорюсь - в крипто я не то что не профи, но даже не > адвансед. Прошу помощи в следующем: > есть функция генерения кукисов. > На входе - один 512 битный блок состоящий из: > A.32 бита - известны и фиксированы > B.2 - 32 бита - я могу задать (20-30 вариантов) > C.16 бит - известны и фиксированы > D.16 бит - известны и я могу их задать (65535 вариантов) > E.128 бит - неизвестны, берутся из SPRNG > остальное - md5 padding - соответственно известны и > фиксированы > на выходе я могу получить первые 32 бита хэша. Желательно: > после N таких прогонов получить возможность угадать с > точностью до 10^4 (10^5, 10^6) результат энтой функции при > известных и фиксированных полях всех кроме D. Какие есть > матаппараты для исследования хэшфункций? Куда копать? Вот. > Изъясняюсь я коряво, так как фени криптошной не знаю, но > хочется эту штуку понять. > > Пока.
Если я правильно понял условия, то все сводиться к тому, чтобы с некоторой вероятностью угадать значение "E", варьируя B и D, и зная 32 бита результата каждой итерации.
При решении "в лоб", вероятность угадывания - 1 из 2^96.
Можно применить криптоанализ, но (IMHO) даже близко к заданной вероятности не подойти. Например, полный перебор D, грубо говоря повысит шансы до 1 из 2^80. Есть конечно вероятность того, что при определенном "раскладе", выявятся очень "перспективные"/вероятные значения многих битов для E или hash-результата, но сама по себе вероятность такой ситуации очень мала.
Чтобы ответить конкретнее, нужно взять точную раскладку исходных бит проследить все преобразования, просчитать вероятности, и самые выгодные значение для В. Но это большая, рутинная и кропотливая работа...
|
| |
И ещё один вопрос :) 05.05.03 17:23
Автор: NKritsky <Nickolay A. Kritsky> Статус: Elderman
|
Спасибо что ответили. Возник сразу ещё один вопрос:
> Чтобы ответить конкретнее, нужно взять точную раскладку > исходных бит проследить все преобразования, просчитать > вероятности, и самые выгодные значение для В. Но это > большая, рутинная и кропотливая работа...
А есть ли инструменты для автоматизации этого процесса? я так прикинул, если развернуть 128 бит результата MD5 то мы получим 128 (очень) длинных битовых уравнений. Если знать кой какие исходные биты, то можно их упрощать и вертеть. Есть ли софтины для этого в инете, или нужно самому писать. Пробовал искать в инете - не нашел. Хотя я даже не знаю как такое называется. Или может воспользоваться имеющимися мат. пакетами типа derive, matcad?
|
|
|