![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Nodir |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 9.5.2006 Где: Bukhara --> T ashkent --> Seoul Репутация: нет Всего: нет |
Доброго дня всем. Я хотел проверить число на простату с алгоритмом Рабин-Миллера и реализавал этот алгоритм из книги Брюса Шнайера "Прикладная криптография" Глава 11.5
Помогите с реализацией
Добавлено через 3 минуты и 14 секунд Сделал проверку с простым числом p=124739, результат
|
||||||
|
|||||||
| AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Может тебе самом проще будет дебагером пройтись по шагам ?
Потому как разбираться в чухой реализации бывает даже сложнее, чем написать свою. Если конечно кто-то это не делал раньше. Хотя кто знает - может найдется добрый человек. Подожди немного. |
|||
|
||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
Если исправишь ошибки в описании алгоритма, то можно и код нормальный сделать.
Например: Это как? Как n связана с p или b? Добавлено через 2 минуты и 22 секунды Да и непонятно, для чего эта n вообще нужна - больше она нигде не упоминается. Добавлено через 6 минут и 42 секунды Если n <==> m, то у тебя код неверен. явно не то же самое, что
Посмотри дебагером, что будет в m, если просто подумав не определяешь. -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
| Nodir |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 9.5.2006 Где: Bukhara --> T ashkent --> Seoul Репутация: нет Всего: нет |
Sorry, не обращал внимании на написание алгоритма там надо исправить
|
|||
|
||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
Всё равно в алгоритме ошибка. Проверяем:
р = 23 => b = 1 => m = 11 a = 3 => j = 0 => z = 10 проверка не проходит, значит не простое. Но что-то мне подсказывает, что 23 всё же простое число Добавлено через 1 минуту и 13 секунд Хорошенько проверь описание всего алгоритма, т.к. там есть ещё немало ошибок, похоже. -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
| Nodir |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 9.5.2006 Где: Bukhara --> T ashkent --> Seoul Репутация: нет Всего: нет |
Я тоже так думал, но в книге написана точна такое.
|
|||
|
||||
| LSD |
|
||||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 210 Всего: 538 |
В Java есть стандартные методы, генерация больших простых чисел:
проверка на простоту:
-------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
||||
|
|||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
Судя по краткому описанию тут приведённое в книге описание сделано очень некачественно. Могу рекомендовать лишь выбросить эту книгу подальше и больше не приобретать книги этого издательства и этого автора.
Нашёл ещё один вариант, где расписано получше, но тоже на английском. Ежели разберусь, то выложу что-нибудь (код или описание алгоритма). -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
| Nodir |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 48 Регистрация: 9.5.2006 Где: Bukhara --> T ashkent --> Seoul Репутация: нет Всего: нет |
|
|||
|
||||
| nornad |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1079 Регистрация: 16.2.2007 Где: в Караганде Репутация: 16 Всего: 31 |
М-да... не выходит пока что разобраться.
Было бы нормальное описание алгоритма на русском, да желательно без лишних математических знаков и терминов... -------------------- Три достоинства программиста: Леность, Нетерпение и Гордость Ларри Уолл |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |