Re[6]: Защита кода от декомпиляции
От: drol  
Дата: 30.10.11 16:04
Оценка: +1
Здравствуйте, enCobalt, Вы писали:

C>Бизнес-логику нельзя держать на клиенте! Чем тупее клиент — тем лучше.


Её и не держут. Написано же русским языком — базар про борьбу с читерами.

C>Он что, свой собственный игровой клиент нарисует?


Нет, он всего лишь сделает прокси, который будет анализировать обмен с сервером, и подшаманивать поток низкоуровневых клиентских событий таким образом, чтобы всегда белку в глаз с двух километров первым выстрелом.
Re[7]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 16:23
Оценка: +1 -2
Здравствуйте, drol, Вы писали:

D>Нет, он всего лишь сделает прокси, который будет анализировать обмен с сервером, и подшаманивать поток низкоуровневых клиентских событий таким образом, чтобы всегда белку в глаз с двух километров первым выстрелом.


Это и есть бизнес-логика на клиенте. А если передавать не событие "Попал в белку", а событие "Вектор выстрела", а сервер уже сам разберется была ли там белка? Если это что-то вроде 3D шутера, то на сервере фильтр по акселерометру истинного положения в пространстве (если слишком шустрый, значит не сам прицеливается). Все решаемо.
Хочу инвайт на хабру :)
Re[2]: Защита кода от декомпиляции
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 30.10.11 17:33
Оценка: +1
Здравствуйте, <Аноним>, Вы писали:

А>Такое впечатление создается. что тут советуют только люди просиживающие в какихто конторках и никогда не писавших коммерческий продукт!


Это скорее ты коммерческий продукт никогда не писал. Мы, к примеру, вообще часть исходников наружу отдаем. Нам самим так проще — баги быстрее вылавливаются.
... << RSDN@Home 1.2.0 alpha 5 rev. 1537 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[2]: Защита кода от декомпиляции
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 30.10.11 17:33
Оценка: 2 (1)
Здравствуйте, <Аноним>, Вы писали:

А>Обфусцированый код тоже ломается. Серьезно защищать стоит только серьезный софт, который от 100 килорублей стоит.


Вот как раз такой софт особого смысла защищать нет — те, кто в принципе способен такие суммы за софт платить, те все равно ворованным софтом пользоваться не будут.
Всякие программные псевдозащиты оправдываются больше всего для мелких шароварок.
... << RSDN@Home 1.2.0 alpha 5 rev. 1537 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[5]: Защита кода от декомпиляции
От: Aen Sidhe Россия Просто блог
Дата: 30.10.11 18:33
Оценка: 6 (1)
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, VladD2, Вы писали:


VD>>Я вижу смысл в защите кода только при одном условии, если это код защиты от копирования. В остальных это баловство.


А> Не только. Например (и это наиболее частый случай, кстати), прятать нужно реализации всяких проприетарных протоколов. Например, протоколы клиентов всяких MMORPG и прочей дребедени, чтобы читеры их не подделывали. А защита от копирования обычно отрубается вся целиком, и не важно, что там было у нее внутри.


Вы болеете? Зачем это обфусцировать, если весь ваш протокол смотрится сниффером?

Предваряя расспросы: я писал коммерчески успешные ММО.
С уважением, Анатолий Попов.
ICQ: 995-908
Re[3]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 20:58
Оценка: :)
Здравствуйте, AndrewVK, Вы писали:

А>>Обфусцированый код тоже ломается. Серьезно защищать стоит только серьезный софт, который от 100 килорублей стоит.


AVK>Вот как раз такой софт особого смысла защищать нет — те, кто в принципе способен такие суммы за софт платить, те все равно ворованным софтом пользоваться не будут.

AVK>Всякие программные псевдозащиты оправдываются больше всего для мелких шароварок.

Не скажи. Это как именно тот пример, когда нужна серьезная защита, хвардварная т.е. USB-донгл который имеет процессор и write-only память под код, куда прошиваются критичные участки кода + оригинал обфусцируется тем же ключем.
Представь себе что есть контора, которая пишет немассовый, но нужный софт, конкурентов по пальцам пересчитать. Но это НПО, сами продажами не занимаются, поиск клиентов, переговоры и продажа у дистрибьюторов, их десятки по всему СНГ + случайные "интеграторы" бывают. ПО самодостаточное, коробочное, полный комплект, нужный сервер в комплекте разворачивается у заказчика, а у многих заказчиков сеть по разным соображениям изолирована от интернета наглухо.
Стоимость софта >100 килорублей, из них дистрибьютор получает свои допустим 30к. Вопрос! Как долго дистрибьютор будет честно закупать коробочные комплекты для продажи?
Вот. Это случай когда защита нужна. Случай редкий, скорее исключение.
Навскидку могу придумать еще защиту артворка, когда спрайты и текстуры для игры были заказаны у самого Артемия Лебедева по его расценкам. гыгы.
Хочу инвайт на хабру :)
Re[8]: Защита кода от декомпиляции
От: drol  
Дата: 30.10.11 21:05
Оценка: +2
Здравствуйте, enCobalt, Вы писали:

C> А если передавать не событие "Попал в белку", а событие "Вектор выстрела", а сервер уже сам разберется была ли там белка?


Да без разницы. Читерский прокси с точно таким же успехом подкрутит куда надо и Ваш вектор. Положение игрока\белки ему ведь известно — как иначе движку их рисовать, а Вам стрелять ?

C> Если это что-то вроде 3D шутера, то на сервере фильтр по акселерометру истинного положения в пространстве (если слишком шустрый, значит не сам прицеливается).


Ещё смешнее Какой акселерометр, в час ночи ??? Даже средние игроки умеют такую реакцию выдавать, что имеющий смысл фильтр такого рода не построишь.

C> Все решаемо.


Угу-угу. То-то люди мучаются и всякие PunkBuster'ы ваяют, а всё оказывается так просто... "Ну тупы-ы-ы-е" (c) не мой
Re[4]: Защита кода от декомпиляции
От: drol  
Дата: 30.10.11 21:08
Оценка:
Здравствуйте, enCobalt, Вы писали:

C>Представь себе что есть контора, которая пишет немассовый

C> ...
C>продажа у дистрибьюторов, их десятки по всему СНГ + случайные "интеграторы" бывают.

Вы уж определитесь: то ли "немассовый", то ли "десятки дистрибьюторов"...
Re[5]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 21:28
Оценка:
Здравствуйте, drol, Вы писали:


C>>продажа у дистрибьюторов, их десятки по всему СНГ + случайные "интеграторы" бывают.


D>Вы уж определитесь: то ли "немассовый", то ли "десятки дистрибьюторов"...


А одно другое исключает? Много дистрибьюторов != частые продажи.
Хочу инвайт на хабру :)
Re[9]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 21:38
Оценка:
Здравствуйте, drol, Вы писали:

D>Здравствуйте, enCobalt, Вы писали:


D>Да без разницы. Читерский прокси с точно таким же успехом подкрутит куда надо и Ваш вектор. Положение игрока\белки ему ведь известно — как иначе движку их рисовать, а Вам стрелять ?

C>> Если это что-то вроде 3D шутера, то на сервере фильтр по акселерометру истинного положения в пространстве (если слишком шустрый, значит не сам прицеливается).
D>Ещё смешнее Какой акселерометр, в час ночи ??? Даже средние игроки умеют такую реакцию выдавать, что имеющий смысл фильтр такого рода не построишь.

Построишь. Тут уже во-первых ваше не знание матчасти за пределами программирования. Во-вторых это спор слепого с глухим — я не знаю ни что у вас за проект ни механику ни даже 3D это или нет и шутер или тетрис. Никто не сможет дать вам универсальный совет в диапазоне сразу от Тетриса до CoD. Мой опыт мне подсказывает что: а) обфускация и защита не нужна для большинства проектов если архитектура правильная. б) если неправильная обфускация и защита все-равно не помогают.
Я предлагаю закончить, или перейти в личку, может смогу что-то посоветовать, если узнаю больше деталей об этом конкретном проекте с проблемой.
Хочу инвайт на хабру :)
Re[4]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 22:37
Оценка:
Но наверное да, я может немного погорячился по 100 килорублей. У каждый производителя ПО могут быть свои калькуляции целесообразности, исходя из стоимости подобного юсб-ключа около 700-800 рублей + доставка не знамо куда + сроки доставки + какой почтой. Обычная почта у нас (РФ) такая своеобразная...
Хочу инвайт на хабру :)
Re[5]: Защита кода от декомпиляции
От: enCobalt  
Дата: 30.10.11 22:44
Оценка:
ADD

И конечно сфера применимости ключа. Если это не какое-то специализированное целевое ПО, но вы заказчику на форме заказа выкатите "Позравляем, вы только что купили Megasoft SuperGame, а теперь подождите 2-3 недели доставки usb-ключа".. то скорее всего все будет плохо.
Хочу инвайт на хабру :)
Re[4]: Защита кода от декомпиляции
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 31.10.11 08:36
Оценка:
Здравствуйте, enCobalt, Вы писали:

C>Стоимость софта >100 килорублей, из них дистрибьютор получает свои допустим 30к. Вопрос! Как долго дистрибьютор будет честно закупать коробочные комплекты для продажи?


Ну вот в той компании, в которой я работаю, ситуация примерно такая, т.е. головная корпорация особо продажами не занимается (а по моему продукту даже прикладная разработка почти вся ушла к партнерам). Только никаких спецжелезок для устранения проблемы не нужно. Достаточно просто не отдавать дилерам право генерировать ключи.
... << RSDN@Home 1.2.0 alpha 5 rev. 1537 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[8]: Защита кода от декомпиляции
От: Аноним  
Дата: 31.10.11 09:40
Оценка:
Здравствуйте, enCobalt, Вы писали:

C>Это и есть бизнес-логика на клиенте. А если передавать не событие "Попал в белку", а событие "Вектор выстрела", а сервер уже сам разберется была ли там белка? Если это что-то вроде 3D шутера, то на сервере фильтр по акселерометру истинного положения в пространстве (если слишком шустрый, значит не сам прицеливается). Все решаемо.


А сам факт того, что суслик там есть — тоже ведь в протоколе зашит, даже если он сидит под кустиком и его не должно быть хорошо видно. А читерский клиент его высветит. Или на сервере еще и всю графику обсчитывать?

Одно из возможных решений — постоянно мутирующий протокол, с постоянными (даже в рантайме) обновлениями клиентов. Тогда и сниффер не поможет, и декомпиляция клиента.
Re[6]: Защита кода от декомпиляции
От: Аноним  
Дата: 31.10.11 09:47
Оценка:
Здравствуйте, Aen Sidhe, Вы писали:

AS>Вы болеете? Зачем это обфусцировать, если весь ваш протокол смотрится сниффером?


Сравни трудоемкость вскрытия протокола по дампам сниффера и по готовому, чистенькому коду клиента.

Пока со сниффером возиться будут, протокол уже три раза поменяется.

Как я понимаю, главное, чего боятся разработчики ММО — это что к их жирным клиентам напишут альтернативный сервер (как это было со всякими там WOW и Lineage). Делать клиенты менее жирными пропускная способность этих ваших интернетов не позволяет.
Re[7]: Защита кода от декомпиляции
От: Aen Sidhe Россия Просто блог
Дата: 31.10.11 09:55
Оценка: +1
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Aen Sidhe, Вы писали:


AS>>Вы болеете? Зачем это обфусцировать, если весь ваш протокол смотрится сниффером?


А> Сравни трудоемкость вскрытия протокола по дампам сниффера и по готовому, чистенькому коду клиента.


Да как бы пофиг. Надо будут — вскроют. Можно же инжектнуть код прямо в процесс и смотреть всё оттуда.

А> Пока со сниффером возиться будут, протокол уже три раза поменяется.


Смена протокола — дорогое удовольствие в ММО.

А> Как я понимаю, главное, чего боятся разработчики ММО — это что к их жирным клиентам напишут альтернативный сервер (как это было со всякими там WOW и Lineage). Делать клиенты менее жирными пропускная способность этих ваших интернетов не позволяет.


Ну, сервера — это да. С другой стороны всем в принципе, пофиг. Протокол им в этом не поможет.

Потому что сервер надо поддерживать, обновлять, следить за идиотами. Это не так просто, как кажется. Основная проблема — читерство, да. В платежных системах особенно опасно. Но делается просто — всё считаем на сервере, на клиенте приделываем только команды "выстрелить туда, шаг влево" и т.д.
С уважением, Анатолий Попов.
ICQ: 995-908
Re[8]: Защита кода от декомпиляции
От: Аноним  
Дата: 31.10.11 10:01
Оценка:
Здравствуйте, Aen Sidhe, Вы писали:

AS>Да как бы пофиг. Надо будут — вскроют. Можно же инжектнуть код прямо в процесс и смотреть всё оттуда.


Если вскрывать будут дольше, чем живет текущий протокол — то пусть себе вскрывают.

А>> Пока со сниффером возиться будут, протокол уже три раза поменяется.


AS>Смена протокола — дорогое удовольствие в ММО.


С какой такой радости? Абсолютно несовместимые друг с другом и друг на друга не похожие протоколы можно автоматически генерить в неограниченных количествах.
Re[9]: Защита кода от декомпиляции
От: Aen Sidhe Россия Просто блог
Дата: 31.10.11 10:03
Оценка:
Здравствуйте, Аноним, Вы писали:

А>>> Пока со сниффером возиться будут, протокол уже три раза поменяется.


AS>>Смена протокола — дорогое удовольствие в ММО.


А> С какой такой радости? Абсолютно несовместимые друг с другом и друг на друга не похожие протоколы можно автоматически генерить в неограниченных количествах.


Я вам говорю, что это дорогое удовольствие в разработке обычно, раз.
Два, не всегда можно дропать все старые клиенты.
С уважением, Анатолий Попов.
ICQ: 995-908
Re[10]: Защита кода от декомпиляции
От: Аноним  
Дата: 31.10.11 10:28
Оценка: :)
Здравствуйте, Aen Sidhe, Вы писали:

AS>Я вам говорю, что это дорогое удовольствие в разработке обычно, раз.


Ну, для некоторых гигантов мысли и "Hello, world!" — дорогое удовольствие в разработке. Задача-то тривиальная.

AS>Два, не всегда можно дропать все старые клиенты.


С какой радости? Клиенты (а точнее, реализацию протокола) можно обновнлять вообще не отходя от кассы. Пока не обновится, дальше не поедет.
Re[11]: Защита кода от декомпиляции
От: Aen Sidhe Россия Просто блог
Дата: 31.10.11 10:32
Оценка: +2
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Aen Sidhe, Вы писали:


AS>>Я вам говорю, что это дорогое удовольствие в разработке обычно, раз.


А> Ну, для некоторых гигантов мысли и "Hello, world!" — дорогое удовольствие в разработке. Задача-то тривиальная.


У вас, я смотрю, богатый опыт в разработке ММО. До свидания :D
С уважением, Анатолий Попов.
ICQ: 995-908
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.