Quote:
Originally Posted by MX_Master
Так что ФС этот как второй барьер при попытке узнать ркон.
|
Видимо основной посыл моих постов так и не дошел
Основная мысль была в том, что нужно
адекватно оценивать угрозы. Подбор пароля методом грубой силы (перебором) NP - сложная задача.
Дано:
- Алфавит пароля: abcdefghijklmnopqrstuvwxyz0123456789 (36 символов)
- Скорость набора каждого следующего пароля игроком в игре: 1 пароль/секунда
- Длина пароля: 5 символов
Найти:
- Сколько нужно времени, чтобы подобрать такой пароль в ручную
Решение:
- Количество_комбинаций = множество_символов_пароля ^ длина_пароля = 36^5 = 60466176
- Время на подбор такого пароля = Количество_комбинаций / скорость = 60466176 / (1 пароль/секунда * 60 * 60 * 24 * 365) =
1,9 лет
Повторю еще раз вопрос: за чем защищать внутренний ркон сервера, если даже такой простой пароль игрок подобрать не сможет? Автоматических средств для такого подбора НЕТ. Что дает этот скрипт?
Он защищает от угрозы, которой нет, поэтому я его критикую.
А чтобы оценить NP сложность, можно увеличить длину пароля на 1 символ и повторить расчет
Quote:
Originally Posted by MX_Master
И опять же, если у тебя есть средство лучше, предложи его народу, и тока потом можешь говорить, что такой способ - плохой.
|
За такие вещи тут банят. Скрипт хороший, плохи базовые идеи в нем заложенные
И под конец лирическое замечание. Часто бывает важно организовать систему так, чтобы наиболее частые ошибки приводили к наименьшим последствиям и наиболее быстро обнаруживались.
Пример из программирования, кусочек программы на языке си:
Code:
int i;
...
if (i == 5) {
...
}
Это правильный код, и безусловно, можно программиста, который написал его так:
Code:
int i;
...
if (i = 5) { // Присваивание, вместо проверки на равенства
...
}
называть нубом и ламером, но вот я программирую на с/с++ более десяти лет и этим зарабатываю себе на жизнь, но несколько раз за год такие ляпы со мной случаются.
Я человек, соответвенно я ошибаюсь.
А если писать так:
Code:
int i;
...
if (5 == i) {
...
}
то такой ляп не возможен в принципе, так как 5 - rvalue и не может выступать в роли lvalue (компилятор не скомпилирует данный код)
Это пример того, как организационные меры уменьшают опасность ошибок.
Про рконы. Боитесь что ваш ркон узнают и вам насолят, примите организационные меры: не делайте совсем тривиальный пароли (123456 это плохо, также как и qwerty), меняйте пароли с какой то периодичностью (раз в месяц, например), протоколируйте все заходы в ркон и анализируйте данные логи с какой то периодичностью, как микс_мастер замерил, напишите скрипт, который не дает напечатать в общий чат ркон пароль (не дает печатать сообщения начинающиеся с "." (точки), не дает печатать сообщения с самим рконом), организуйте админку так, чтобы человек, знающий ркон не смог навредить серверу (например, удалить командой все профили пользователей) и возможно есть еще куча организационных и программных мер, которе защитят ваш сервер.