Здравствуйте, Aen Sidhe, Вы писали:
AS>У вас, я смотрю, богатый опыт в разработке ММО. До свидания :D
Не хамите, юноша. У меня имеется опыт в разработке протоколов и в разработке самомодифицирующегося кода. Ничего там сложного нет, вообще. А что мало кто это делает, ну так дураков вообще намного больше чем умных.
Если есть что возразить конкретно (например, доказать, что автоматическая генерация реализации протоколов невозможна) — вперед, с песнями. Будет как минимум забавно. А вот понтоваться своим коротеньким "опытом" лучше не надо, это не аргумент в разговоре цивилизованных инженеров.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Aen Sidhe, Вы писали:
AS>>У вас, я смотрю, богатый опыт в разработке ММО. До свидания :D
А> Не хамите, юноша. У меня имеется опыт в разработке протоколов и в разработке самомодифицирующегося кода. Ничего там сложного нет, вообще. А что мало кто это делает, ну так дураков вообще намного больше чем умных.
Никто не хамил. У меня есть опыт разработки ММО, и там на моей памяти такого не делали и не планировали.
А> Если есть что возразить конкретно (например, доказать, что автоматическая генерация реализации протоколов невозможна) — вперед, с песнями. Будет как минимум забавно. А вот понтоваться своим коротеньким "опытом" лучше не надо, это не аргумент в разговоре цивилизованных инженеров.
Есть. Business value этой штуки — ноль. Только когда у нас замаячила возможность создания двух разных клиентов (флеш и не флеш), руководство дало добро на разработку автоматической генерации протоколов. Но потом второй клиент дропнули (во флеше придумали 3д), и опять всё задвинули в задний ящик.
С уважением, Анатолий Попов.
ICQ: 995-908
Re: Защита кода от декомпиляции
От:
Аноним
Дата:
31.10.11 10:46
Оценка:
Здравствуйте, YaroslavPavlov, Вы писали:
YP>Не так давно перешел на программирование под .Net, а тут мне сказали, что для .Net, есть специальные декомпиляторы. YP>Которые преобразуют скомпилированную программу обратно в удобочитаемый код. Правда ли это? И как тогда вообще защищать YP>программы от такого?
Не слушайте дураков. Защита — больное место дотнета, поэтому фанбои так и возбудились. Пишут, проблемы нет. А проблема есть.
В качестве примера: понадобился нам парсер формул из шаропоинта, чтобы обеспечить обработку формул, 1:1 как в нем (требование заказчика). Ну что — достали рефлектор и посмотрели шаропоинту в кишки, с мыслью, что через час выкусим нужный код, перекомпилим и избавимся от зависимости в виде MOSS. Ага... выкусили. В другом только смысле. Рефлектор показал, что внутри комовские бинари. Пришлось вызывать их код. Так Майкрософт сумел прибить свой сраный шаропоинт гвоздями к нашему продукту, хотя изначально связь виделась семантически-платонической. Потому они и хапают миллиардами, в то время как продукт на букву Н. бесплатно не берут. Ум у них есть.
Самое обидное, что писать на чистом дотнете сплошное удовольствие, в смысле расхода человеко-часов и качества исходников. Боюсь, надежно эта проблема решается только при выполнении вашего кода на изолированном сервере, как в случае с веб-скриптами. Или, вот, как с шаропоинтом.
Re[14]: Защита кода от декомпиляции
От:
Аноним
Дата:
31.10.11 10:47
Оценка:
Здравствуйте, Aen Sidhe, Вы писали:
AS>Никто не хамил. У меня есть опыт разработки ММО, и там на моей памяти такого не делали и не планировали.
Однако, такое делается вне ММО частенько. И ничто не мешает позаимствовать опыт.
AS>Есть. Business value этой штуки — ноль.
Надежная защита от читерства — это не такой уж и "ноль".
AS> Только когда у нас замаячила возможность создания двух разных клиентов (флеш и не флеш), руководство дало добро на разработку автоматической генерации протоколов. Но потом второй клиент дропнули (во флеше придумали 3д), и опять всё задвинули в задний ящик.
Вот уж с флешем генерацию протокола вообще проще простого было бы сделать. Возможно даже и несколько проще, чем статический протокол.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, Aen Sidhe, Вы писали:
AS>>Никто не хамил. У меня есть опыт разработки ММО, и там на моей памяти такого не делали и не планировали.
А> Однако, такое делается вне ММО частенько. И ничто не мешает позаимствовать опыт.
Конечно, да.
AS>>Есть. Business value этой штуки — ноль.
А> Надежная защита от читерства — это не такой уж и "ноль".
Надёжная защита от читерства делается другими методами (хранение состояния на сервере и валидация запросов от сервера). И у нас она была. Поэтому ноль.
Частая смена протокола — это скорее защита от ботов или альтернативных клиентов. Как и всякие другие мелкие фишки, типа невидимых вещей в луте и т.д.
AS>> Только когда у нас замаячила возможность создания двух разных клиентов (флеш и не флеш), руководство дало добро на разработку автоматической генерации протоколов. Но потом второй клиент дропнули (во флеше придумали 3д), и опять всё задвинули в задний ящик.
А> Вот уж с флешем генерацию протокола вообще проще простого было бы сделать. Возможно даже и несколько проще, чем статический протокол.
Ну, на флеше-то только клиент =) Всё остальное — дотнет. Ну и всегда следует понимать, что есть уже текущий код, который надо будет адаптировать.
Здравствуйте, enCobalt, Вы писали:
C>Это уже ваш фейл, такую кривую бизнес-модель нужно прекращать, чем раньше — тем меньше убытков в печальном итоге.
Всё, что вы написали — оно теоретически ооочень верно, и про новые бизнес модели и про "уникальный продукт" — ну просто золотые слова из саксесс стори.
Только на практике всё немного не так и привязка софта к железу чисто по политическим причинам — весьма распространённая ситуация.
Здравствуйте, Aen Sidhe, Вы писали:
AS>Надёжная защита от читерства делается другими методами (хранение состояния на сервере и валидация запросов от сервера). И у нас она была. Поэтому ноль.
От ботов оно как поможет? Или вы такими вещами не заморачивались?
Здравствуйте, yoriсk.kiev.ua, Вы писали:
YKU>Здравствуйте, Aen Sidhe, Вы писали:
AS>>Надёжная защита от читерства делается другими методами (хранение состояния на сервере и валидация запросов от сервера). И у нас она была. Поэтому ноль.
YKU>От ботов оно как поможет? Или вы такими вещами не заморачивались?
Защита от ботов классическая — смотрим количество запросов в секунду. В целом — не заморачивались. От ботов как раз надо делать частые смены протокола и всякие другие вещи (типа уже упомянутых невидимых вещей в луте и прочих маркеров, которые игрок не увидит, а бот поймается).
Здравствуйте, Aen Sidhe, Вы писали:
AS>>>Надёжная защита от читерства делается другими методами (хранение состояния на сервере и валидация запросов от сервера). И у нас она была. Поэтому ноль. YKU>>От ботов оно как поможет? Или вы такими вещами не заморачивались? AS>Защита от ботов классическая — смотрим количество запросов в секунду.
Смешно.
AS>В целом — не заморачивались.
Т.е. никакой заявленой "надёжной защиты от читерства" и не пахнет.
AS>От ботов как раз надо делать частые смены протокола и всякие другие вещи
Ну слава богу, таки договорились, что иногда всё-таки протокол желательно иметь позакрытие, клиент — тоже и т.д.
Здравствуйте, yoriсk.kiev.ua, Вы писали:
YKU>Здравствуйте, Aen Sidhe, Вы писали:
AS>>>>Надёжная защита от читерства делается другими методами (хранение состояния на сервере и валидация запросов от сервера). И у нас она была. Поэтому ноль. YKU>>>От ботов оно как поможет? Или вы такими вещами не заморачивались? AS>>Защита от ботов классическая — смотрим количество запросов в секунду.
YKU>Смешно.
Да. 99% ботов отсекались. Было ещё более смешно. Серьёзно
AS>>В целом — не заморачивались.
YKU>Т.е. никакой заявленой "надёжной защиты от читерства" и не пахнет.
Читерство и ботоводство — две ортогональные, никак не связанные друг с другом вещи.
AS>>От ботов как раз надо делать частые смены протокола и всякие другие вещи
YKU>Ну слава богу, таки договорились, что иногда всё-таки протокол желательно иметь позакрытие, клиент — тоже и т.д.
Нет, не договорились. Защита от ботов тоже не всегда важна. Плюс, частая смена и закрытие — две разные вещи.
Здравствуйте, Аноним, Вы писали:
А> А сам факт того, что суслик там есть — тоже ведь в протоколе зашит, даже если он сидит под кустиком и его не должно быть хорошо видно. А читерский клиент его высветит. Или на сервере еще и всю графику обсчитывать?
Кстати, есть такая штука в штатах, там была история про игровой сервис с мощным и серваками и тонким клиентом. Вроде уже запустили, но боюсь название даже забыл.
А насчет белки в кустах.. тут тупик. Вроде запуска под отладочной версией Direct3D. Но, как говорится, не можешь победить врага — возглавь его! Пойду дедспейс ломать, ато задолбали внезапно выскакивать
P.S. это я намекаю на читы, которые выпускает сам производитель игр, но которые работают криво и глючно, зато они в разных вариантах заполонили все интернеты — попробуй найди настоящий
.
Здравствуйте, Aen Sidhe, Вы писали:
YKU>>Смешно. AS>Да. 99% ботов отсекались. Было ещё более смешно. Серьёзно
Да с такими методами "надёжной защиты" боты у вас цвели и пахли, просто вы о них не догадывались. Отсеивались-то ну совсем уж школьники.
YKU>>Т.е. никакой заявленой "надёжной защиты от читерства" и не пахнет. AS>Читерство и ботоводство — две ортогональные, никак не связанные друг с другом вещи.
Ботоводство — разновидность читерства. Вы с ММОРПГ имели дело когда-нибуть?
YKU>>Ну слава богу, таки договорились, что иногда всё-таки протокол желательно иметь позакрытие, клиент — тоже и т.д. AS>Нет, не договорились. Защита от ботов тоже не всегда важна.
Именно это я и написал, вообще-то.
Спор ради спора?
AS>Плюс, частая смена и закрытие — две разные вещи.
На кой чёрт чего-то менять, если по открытым исходникам(как тут предполагалось) все изменения будут внесены злоумышленником в ботфермы в течении часов?
Здравствуйте, yoriсk.kiev.ua, Вы писали:
YKU>Здравствуйте, Aen Sidhe, Вы писали:
YKU>>>Смешно. AS>>Да. 99% ботов отсекались. Было ещё более смешно. Серьёзно
YKU>Да с такими методами "надёжной защиты" боты у вас цвели и пахли, просто вы о них не догадывались. Отсеивались-то ну совсем уж школьники.
Да как и бы и всё равно. Бизнесу не мешало. Боты не всегда плохо.
YKU>>>Т.е. никакой заявленой "надёжной защиты от читерства" и не пахнет. AS>>Читерство и ботоводство — две ортогональные, никак не связанные друг с другом вещи.
YKU>Ботоводство — разновидность читерства. Вы с ММОРПГ имели дело когда-нибуть?
Здравствуйте, Аноним, Вы писали:
А>Не слушайте дураков. Защита — больное место дотнета, поэтому фанбои так и возбудились. Пишут, проблемы нет. А проблема есть.
Как будто native намного сложнее реверсить.
А>Самое обидное, что писать на чистом дотнете сплошное удовольствие, в смысле расхода человеко-часов и качества исходников. Боюсь, надежно эта проблема решается только при выполнении вашего кода на изолированном сервере, как в случае с веб-скриптами. Или, вот, как с шаропоинтом.
А на скриптовых языках еще большее удовольствие писать. Но там код вообще не проблема реверсить.
Здравствуйте, AndrewVK, Вы писали:
AVK>Ну вот в той компании, в которой я работаю, ситуация примерно такая, т.е. головная корпорация особо продажами не занимается (а по моему продукту даже прикладная разработка почти вся ушла к партнерам). Только никаких спецжелезок для устранения проблемы не нужно. Достаточно просто не отдавать дилерам право генерировать ключи.
А как вы решили проблему с хьюман инжиниринг? Вот допустим вы ключ к железу привязываете, а вам звонит один из интеграторов "тут у клиента сервак сгорел, мы поменяли, сгенерируйте нам новый ключ". Откуда вы знаете старый это клиент или новый. Я имею ввиду автономное ПО в сети без интернета.
Хочу инвайт на хабру :)
Re[3]: Защита кода от декомпиляции
От:
Аноним
Дата:
31.10.11 13:22
Оценка:
Здравствуйте, Аноним, Вы писали:
А> Как будто native намного сложнее реверсить.
Не сложнее, а труднее.
А>>Самое обидное, что писать на чистом дотнете сплошное удовольствие, в смысле расхода человеко-часов и качества исходников. Боюсь, надежно эта проблема решается только при выполнении вашего кода на изолированном сервере, как в случае с веб-скриптами. Или, вот, как с шаропоинтом.
А> А на скриптовых языках еще большее удовольствие писать.
На любителя. По мне, так дотнет несет больше удовольствия. Но спорить не буду.
>Но там код вообще не проблема реверсить.
Проблема его выковырять с сервера. Если это серверные скрипты. А если нет, то, конечно, не проблема.
Здравствуйте, Aen Sidhe, Вы писали:
AS>Да как и бы и всё равно. Бизнесу не мешало. Боты не всегда плохо.
Вы имете ввиду когда монетизация через продажу внутриигровых вещей?
Вообще, я не сталкивался с геймдевом, может организуете соответствующу ветку
типа .Net геймдев защита, с удовольствием бы почитал.
Здравствуйте, enCobalt, Вы писали:
C>Здравствуйте, Aen Sidhe, Вы писали:
AS>>Да как и бы и всё равно. Бизнесу не мешало. Боты не всегда плохо.
C>Вы имете ввиду когда монетизация через продажу внутриигровых вещей?
Ну, допустим, если ММО на подписке, то какая разница — человек там играет или бот, если он уже занёс 10-20 долларов за месяц? Если аккаунт активен не 24 часа в сутки, а 6-8, то как бы и фиг с ним.
C>Вообще, я не сталкивался с геймдевом, может организуете соответствующу ветку типа .Net геймдев защита, с удовольствием бы почитал.
Я давно отстал от жизни, так что будет малоактуально.
Здравствуйте, enCobalt, Вы писали:
C>А как вы решили проблему с хьюман инжиниринг?
С чем?
C> Вот допустим вы ключ к железу привязываете, а вам звонит один из интеграторов "тут у клиента сервак сгорел, мы поменяли, сгенерируйте нам новый ключ".
Не надо ничего допускать. Ключ мы к железу не привязываем.
C> Откуда вы знаете старый это клиент или новый.
По названию юрлица клиента, которое в ключе присутствует.
... << RSDN@Home 1.2.0 alpha 5 rev. 1537 on Windows 7 6.1.7601.65536>>
Ё-моё, да вы лицуху к любой ММОРПГ почитайте.
Или вашу несчастную википедию на русский язык переключите:Читерство в сетевых игр — там целый раздел этому посвещён. Заодно и узнаете, почему это плохо, зачем шифруется трафк и т.д.