![]() |
|
|
![]()
|
|
| Shadowlord |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 275 Регистрация: 28.11.2006 Репутация: нет Всего: 5 |
Для демонстрации работы кластера решили написать не большую программку по полному перебору паролей.
Проблема стала как разделить генерацию пароле между узлами. То есть у нас есть алфавит, количество узлов и максимальная длина пароля. Нужно что бы каждый узел генерировал для себя часть общего списка паролей и в сумме они перекрывали все множество. Появилась идея каждому узлу отдавать n количество символов и что бы он генерировал только пароли начинающиеся на один из этих символов. Запутался пытаясь описать алгоритм. |
|||
|
||||
| esperanto |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 194 Регистрация: 31.5.2003 Репутация: 2 Всего: 4 |
Если паролей х, а кластеров м, то каждому из м, кластеров дайте с генирировать м\х паролей упорядоченых в лексикографическом порядке.
Если не хотите заморачиваться с алгоритмом, пусть каждый из кластеров сгенерирует просто случайно х\м* 2логарифм(х) паролей. --------------------
B.Sc ->M.Sc.->Microsoft SDE-> (Ph.D. student + Intel SDE + psyсhology B.A) - > Skype SDET |
|||
|
||||
| Shadowlord |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 275 Регистрация: 28.11.2006 Репутация: нет Всего: 5 |
esperanto, А при таком случайном подходе, с какой вероятностью мы закроем все множество паролей ?
|
|||
|
||||
| esperanto |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 194 Регистрация: 31.5.2003 Репутация: 2 Всего: 4 |
С вероятностью стремящейся к нолю с экспоненциальной скоростью.
Можно получить точную оценку используя неравенство Чернова, например --------------------
B.Sc ->M.Sc.->Microsoft SDE-> (Ph.D. student + Intel SDE + psyсhology B.A) - > Skype SDET |
|||
|
||||
| Silent |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 252 Регистрация: 3.10.2006 Репутация: 1 Всего: 9 |
Блин, дожили - кластер появляется вперед умений писать параллельные программы.
считаем количество возможных паролей (N!, N - мощность алфавита), делим на количество узлов M - столько паролей каждому (последнему может и не хватить, ну и пусть). Запускаем эти самые M процессов, каждому передаем два параметра - с номера какого пароля начинать, и сколько всего паролей обрабатывать. 100% покрытие (и тут смайлик в черных очках и с жевательной резинкой). |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |