Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Факторизация. Правильно ли?

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
dcc0
Отправлено: 30 Июня, 2015 - 15:58:45
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Решил разобраться с RSA. Есть некоторое недопонимание.
Вот допустим есть числа:
q=11, p=7
Перемножим - 77.
Применим функцию Эйлера для m, (11-1)*(7-1)=60
Найдем e взаимно простое с ним, но меньше, допустим e=19
Найдем, такое, что - d (19*79) mod 60=1.
т.е. d=79.

И вот тут вопрос первый: d может быть больше 77?
Получим:
Открытый ключ (77, 19) = 1463
Закрытый ключ (77, 79) = 6083

Факторизуем методом Ферма открытый ключ, получим:
77*19
133*11
209*7
1463*1
И вот вопрос второй. Существенно ли нам определять, каким из 4-х вариантов был получен открытый ключ? Ладно, отбросим тривиальный вариант и остальные и возьмем первый.
77*19
Нам надо найти вторую часть закрытого ключа, т.е. 79,
вроде бы логично, что для этого надо найти m=60,
Посмотрим на 77, станет понятно, что m < 77, так вроде бы следует из самого описания алгоритма. Получим 60
И вот надо вычислить d, но d может быть равно не 79, а например: 2059.
Т.е. надо все варианты перебирать? Или все же, возвращаясь к вопросу номер 1 , d не должно быть больше 77?

(Отредактировано автором: 30 Июня, 2015 - 16:30:04)



-----
Март 2021. Бросил программирование
 
 Top
IllusionMH
Отправлено: 30 Июня, 2015 - 16:07:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




dcc0, mod это ж остаток от целочисленного деления?
 
 Top
dcc0
Отправлено: 30 Июня, 2015 - 16:23:25
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




IllusionMH, ну да
т.е.

19*79mod60=1
19*2059mod60=1

(Отредактировано автором: 30 Июня, 2015 - 16:25:08)



-----
Март 2021. Бросил программирование
 
 Top
dcc0
Отправлено: 01 Июля, 2015 - 13:14:39
Post Id


Участник


Покинул форум
Сообщений всего: 1043
Дата рег-ции: Июль 2014  


Помог: 10 раз(а)




Интересно еще, если знать открытый ключ, можно ли определить диапазон, в котором лежит закрытый ключ?


-----
Март 2021. Бросил программирование
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Прочее »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB