Реально ли найти ключ

Тема в разделе "WASM.CRYPTO", создана пользователем ZEEMAN, 25 июл 2005.

  1. ZEEMAN

    ZEEMAN New Member

    Публикаций:
    0
    Регистрация:
    25 июл 2005
    Сообщения:
    2
    есть 128 бит открытого текста и соответствющие 128 бит

    зашифрованного стандартным DES реально ли найти ключ

    шифрования
     
  2. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    По идее: берем кол-во возможных комбинаций (3.4028236692093846346337460743177e+38), берем супер алгоритм брутфорсящий комбинацию за 1 такт и пенёк с частотой 3ГГц (3000000000 тактов\комбинаций в секунду), считаем:



    3.4028236692093846346337460743177e+38/3000000000 = 113427455640312821154458202477.23 сек/60

    = 1890457594005213685907636707.9539 мин/60 = 31507626566753561431793945.132565 час/24 = 1312817773614731726324747.7138569 дня/365 = 3596761023602004729656.8430516627 лет
     
  3. MHz

    MHz New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2004
    Сообщения:
    13
    ZEEMAN, а что за des 128 bit ?

    или это два блока? тогда у bogrus подсчеты неверные,

    возможных ключей - 18446744073709551616

    а если 3des , тогда да ...вселенная меньше живет
     
  4. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Какой бы там DES нибыл, подозреваю у нас обоих подсчеты не очень верные :), вот вычитал:



    http://reng.ru/board/viewtopic.php?t=2106&highlight=des+128



    HarmEr




    Конечно этот вариант куда реальнее ...
     
  5. Stiver

    Stiver Партизан дзена

    Публикаций:
    0
    Регистрация:
    18 дек 2004
    Сообщения:
    812
    Адрес:
    Germany
    bogrus





    Не совсем понятно к чему эта цитата, на reng.ru было сказано, что известны 2 байта ключа, отсюда и цифры.



    ZEEMAN



    Если про ключ не известно ничего, то надо перебирать все 2<sup>56</sup>(примерно 7*10<sup>16</sup>) комбинаций. С помощью дифференциального криптоанализа можно довести до примерно 2<sup>47</sup> комбинаций, но тогда здорово возрастет overhead. Специальные машины справляются с этим перебором за 1-2 дня, если перебирать самому, то уложишься наверное в пару недель.
     
  6. MHz

    MHz New Member

    Публикаций:
    0
    Регистрация:
    15 июн 2004
    Сообщения:
    13
    to Stiver

    про пару недель - шутка хорошая,

    хотя сейчас рекорд менее суток на des, но использовались

    огромные мощности, что касается дифференциального криптоанализа,

    это на практике не поможет - тк нужно огромное кол-во пар

    открытый/закрытый текст, кстати в случае в брутфорсами

    не особо помогает и знание что 1 бит идет на четность,

    тк брутить приходится все равно 8 байт (64 bit), иначе большие

    потери времени на откидывание ключей. помогает только в том что

    скажем при ключе [0303030303030303] коллизия произойдет раньше

    на ключе [0202020202020202] ...это и радует ....в остальном 64 bit

    перебирать как не крути ....des реально стойкий против

    всех вариантов криптоанализа
     
  7. OLS

    OLS New Member

    Публикаций:
    0
    Регистрация:
    8 янв 2005
    Сообщения:
    322
    Адрес:
    Russia
    bogrus

    Стойкость простого DES - 56 бит (и не придумывай из ниоткуда 42 бита) - 64 бита всего, из них 8 - контроль четности.



    ZEEMAN

    Да, специализированная сборка из миллиона ПЛМ, имеющаяся у США, подбирает ключ меньше чем за день. Нечто подобное можно попробовать сделать за счет распределения вычислений (если у тебя есть тысяча знакомых или например botnet), но все равно время получится основательное - я думаю не меньше года - 2^56 все еще очень немаленькая величина.
     
  8. ZEEMAN

    ZEEMAN New Member

    Публикаций:
    0
    Регистрация:
    25 июл 2005
    Сообщения:
    2
    ЗНАЧИТ НЕ СУДЬБА
     
  9. _DEN_

    _DEN_ DEN

    Публикаций:
    0
    Регистрация:
    8 окт 2003
    Сообщения:
    5.383
    Адрес:
    Йобастан
    О полном прямом переборе можно начать забывать с 40-50 бит.
     
  10. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Можно прикинуть зависимость времени перебора от кол-ва тактов на итерацию и доступного парка машин, для 2^56 при 3ГГц (средневероятное время пусть в два раза меньше)
    Код (Text):
    1. такт |        1 шт |    100 шт |     1000 шт |
    2. ================================================
    3.    1 |    278 дней |   2.78 дней |  0.278 дней |
    4. ================================================
    5.  100 |  27800 дней |    278 дней |   27.8 дней |
    6. ================================================
    7. 1000 | 278000 дней |   2780 дней |    278 дней |
    8. ================================================
    С DES не сталкивался, сколько там ~ тактов уйдет на комбинацию не знаю, ещё интересно как формируется ключ, если хеши от пароля - попробовать прогнать по словарю, если повезет пол дня и ключ на руках
     
  11. yureckor

    yureckor New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2004
    Сообщения:
    494
    Адрес:
    Russia
    а как определять, что пароль верен?

    Если проверять на текст, это ведь тоже время.
     
  12. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    yureckor Лишнее время пойдет только на формирование хешей по словарю, допустим словарь на 20000 слов и хеш 8 байт, получится 156Кб словарных хешей, располагаешь их в памяти один за другим, потом при брутфорсе вместо обычного инкремента ключа используется увеличение(+8) указателя на хеш, дальше обычная расшифровка блока и сравнение, просто всего 20000 комбинаций прогнать, как наиболее вероятные
     
  13. yureckor

    yureckor New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2004
    Сообщения:
    494
    Адрес:
    Russia
    я не знаю как устроен DES, но с прогоном начальных хешей понятно, а вот >...обычная расшифровка блока и сравнение...

    Сравнение с чем? Как определить что мы расшифровали блок? Или в DES crc расшифрованого блока стоит? Но и тогда вариантов все равно много; если знать что расшифровывается текст, то надо проверять расшифрованный блок с верной crc на "текстовость".
     
  14. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    yureckor У ZEEMAN "есть 128 бит открытого текста и соответствющие 128 бит зашифрованного", соотв. сверить есть с чем (все-равно при encrypt или decrypt)
     
  15. Stiver

    Stiver Партизан дзена

    Публикаций:
    0
    Регистрация:
    18 дек 2004
    Сообщения:
    812
    Адрес:
    Germany
    MHz





    Я имел в виду перебор 2<sup>47</sup>, хотя похоже все равно немного погорячился :) Но ты прав, что касается объемов данных - для частного лица очень дорого выйдет.



    OLS





    Можно еще купить время на большой машине, если по шее не дадут когда узнают для чего ;)