Прошу совета у знатоков криптографии и RSA в частности.

Тема в разделе "WASM.CRYPTO", создана пользователем man0war, 3 ноя 2004.

  1. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Исследовал недавно одну программу . Данная вещь использует

    компонент TRSA и естественно алгоритм RSA :) для

    проверки валидного регистрационного номера .

    Длина ключа - 512 бит. Факторизовать подобное число -

    процесс о-о-о-чень долгий. Но скачав компонент и

    скомпилировав пример я обнаружил , что публичный ключ

    является частью приватного.

    Для примера:

    начало публичного ключа -

    ++11Ik:qEoIUOseLfOoZK3G-a4RmZH20xb6K-DK3lWsXQdPf3Q

    начало приватного ключа -

    qEoIUOseLfOoZK3G-a4RmZH20xb6K-DK3lWsXQdPf3Q



    Что это особенность реализации

    алгоритма или особенность самого алгоритма ?

    Второй вопрос - можно ли , учитывая , что это особенность реализации , сократить время поиска приватного ключа ?

    И третий вопрос - можно ли сократить время поиска приватного ключа , учитывая реализацию PRNG Delphi (Builder) ?

    Заранее спасибо всем ответившим.
     
  2. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine




    Это не особенность, загляни в конец статьи, публичным является modulus (число "n")
     
  3. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Формат структур CryptoAPI понятен и в них действительно

    совпадающей частью является modulus. Но в компоненте

    TRSA , если совпадающая часть тоже modulus ,

    то она факторизуется на минимум 4 простых множителя ,

    что не есть правильно для RSA , я так понимаю ?

    Значит совпадающая часть не modulus.
     
  4. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine




    Ну если это и modulus, то не RSA
     
  5. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia


    это base64-подобная кодировка по ходу...
     
  6. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Правильно , Infern0 . Это и есть base64 кодировка.

    Вот линк на компоненты RSA h**p://www.crypto-central.com/

    Я прочитал в хэлпе о структуре ключей и вот , что написано

    о публичном :

    "The public key consists of a “Modulus” – a large integer which can be used to encrypt data together with the “Exponent” ,

    а вот , что о приватном

    "The private key consists of an “Inverse” – a large integer, which can be used to decrypt the encrypted data, together with the “Modulus”.



    Значит это всё-таки modulus , но почему он факторизуется

    на 4 и более простых множителя ?

    И какой из этого можно сделать вывод ?
     
  7. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia
    приведи модуль, публичную и приватную экспоненты в 16-ном виде для твоего примера (modulus, exponent и inverse).

    ps: факторизаватся модуль может из-за неправильного (обратного) порядка битов. в РСАтул попробуй сделай inverse
     
  8. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Вот публичный ключ программы :



    ++11IE:pGQKLK-NACiKpFfdc-PxcKOZAGeL0HPFm97h-sDIVWHjRC0c1xQYH

    XZx13o-oXQ2j2xaBjBL-SodBMOSXzIjo+



    Я так понял , что ++11IE - exponent ,

    а после : modulus.

    Inverse привести не могу , так как в программе нет

    ( естественно )приватного ключа.



    Порядок байт вещь конечно определяющая

    23 - простое число , а 32 нет , например .

    Но порядок байт я менял в RSATool и всё-равно modulus

    раскладывается на несколько множителей.
     
  9. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Чего tE! не предусмотрел, так это перекодирования base64 :)
     
  10. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Чего tE! не предосмотрел, так это перекодирования base64 :)



    Не соглашусь с Bogrus . Перекодировка возможна .

    Введи число в любой их форм , а затем смени Number base .
     
  11. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    Гм... точно :)

    Но с числом все равно что-то не так
     
  12. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia


    это точно вся строка ?
     
  13. captain cobalt

    captain cobalt New Member

    Публикаций:
    0
    Регистрация:
    21 дек 2003
    Сообщения:
    222
    Адрес:
    /ru/perm
    RSA - это выбранные особым образом числа n, e и d.

    Публичный ключ - это числа n и e

    Приватный ключ - это числа n и d

    Число n является частью как публичного так и приватного ключа.
     
  14. volodya

    volodya wasm.ru

    Публикаций:
    0
    Регистрация:
    22 апр 2003
    Сообщения:
    1.169
    Налицо нетвердое знание теории :)
     
  15. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    infern0

    „++11IE:pGQKLK-NACiKpFfdc-PxcKOZAGeL0HPFm97h-sDIVWHjRC0c1xQYH

    XZx13o-oXQ2j2xaBjBL-SodBMOSXzIjo+ “

    это точно вся строка ?




    Это вся строка . Точно.
     
  16. snatch

    snatch New Member

    Публикаций:
    0
    Регистрация:
    27 июл 2003
    Сообщения:
    27
    Адрес:
    Belarus
    Привет.

    А что это за программа, если не секрет ? :)

    Не Shadow Security Scanner случаем ? :)



    Заранее благодарен. ;)
     
  17. man0war

    man0war New Member

    Публикаций:
    0
    Регистрация:
    19 июл 2004
    Сообщения:
    85
    Адрес:
    Albania
    Нет. Программка для фотографов ,

    стоимостью 45 $. Просто для такой дешевой программы всё было сделано весьма красиво.
     
  18. bogrus

    bogrus Active Member

    Публикаций:
    0
    Регистрация:
    24 окт 2003
    Сообщения:
    1.338
    Адрес:
    ukraine
    В base64 используется такой ряд:



    <span style="background-color: white]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/</span><!--back-->



    А у того фотографа в хелпе вычитал, что вроде используется такой:



    <span style="background-color: white]+-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz</span><!--back-->



    Т.е. получается там "A"=0..."/"=63, а там "+"=0..."z"=63 ?

    Может ты лучше сдампишь в отладчике нормальный хекс?
     
  19. snatch

    snatch New Member

    Публикаций:
    0
    Регистрация:
    27 июл 2003
    Сообщения:
    27
    Адрес:
    Belarus
    Так у этой программы имя есть ? :x

    Как же она называется ?
     
  20. infern0

    infern0 New Member

    Публикаций:
    0
    Регистрация:
    7 окт 2003
    Сообщения:
    811
    Адрес:
    Russia
    ** Может ты лучше сдампишь в отладчике нормальный хекс? **

    во-во, я это сразу предлагал. В общем хекс-представление параметров в студию.