LINUX.ORG.RU

Помогите придумать защиту для демо-режима «программы»

 , ,


1

2

Введение

Есть JS-файл. В нем реализована некая фунциональность. Он используется как плагин в офтоп-программе, но распостраняется отдельно. Он закодирован (неважно как). Программа после загрузки плагина декодирует его. Скрипт выполняется в VM Internet Explorer`а. Соответственно через ActiveX у мене есть доступ к диску, реестру, и shell`у. Также у меня в скрипт включена CryptoJS (openssl на JavaScript`e).

К сожалению в скрипте нет возможности урезать часть самой важной функциональности, дабы представить такую версию в качестве демо. Кроме того, хотелось бы показать клиенту продукт во всей красе прежде чем он его купит. Тоесть желательно бы ограничить его использование по дате или количеству запусков.

Как я это вижу. Поскольку у меня есть доступ к диску и опессл, можна писать на диск шифрованные файлы. Если у этой задачи и есть решение то imho нужно двигатся в этом направлении.

Буду благодарен за любые советы

★★★★★

Последнее исправление: ZuBB (всего исправлений: 1)

Ответ на: комментарий от ZuBB

хорошо, тогда время работы операционной системы есть. смотри на него.

anonymous
()
Ответ на: комментарий от kamre

Для Diablo 3 уже вскрыли или этот «продукт» не востребован?

«Вскрыли», гуглить по «mooege». Правда там ведь серверную часть писать надо, так что она естественно корявая и отстаёт от официальных обновлений (если вообще не забросили).

А вот «пиратских серверов» ВоВ вообще много.

DarkEld3r ★★★★★
()

Он используется как плагин в офтоп-программе
Он закодирован
Internet Explorer
ActiveX
реестр

Язабан.

MiniRoboDancer ★☆
()
Ответ на: комментарий от ZuBB

и каждый день пользователя заставлять перекачивать демку?

Зачем ее перекачивать? Она должна работать +30 дней после сборки.

r ★★★★★
()

показывать демку через vnc уже предлогали?

anonymous
()
Ответ на: комментарий от buddhist

Причем здесь opensource или linux?

при том что это форум о линухе очевидно же

anonymous
()
Ответ на: комментарий от Deneb

И что, уже появился такой эмулятор, который позволяет играть в Diablo 3 также как на Battle.net серверах? Только кривые и косые недоделки:

серверную часть писать надо, так что она естественно корявая и отстаёт от официальных обновлений (если вообще не забросили)

Вполне успешно работает такая защита с вынесением всех основных расчетов на сервера.

kamre ★★★
()
Ответ на: комментарий от kamre

И что, уже появился такой эмулятор, который позволяет играть в Diablo 3 также как на Battle.net серверах?

Не знаю про дьяблу, а под эту вашу вовку сервера видел, не помогли расчёты на сервере.

anonymous
()
Ответ на: комментарий от anonymous

под эту вашу вовку сервера видел, не помогли расчёты на сервере

Никогда не играл в вовку, но разе эти пиратские сервера имеют такой же контент как и официальные от Blizzard?

kamre ★★★
()
Ответ на: комментарий от ZuBB

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

deterok ★★★★★
()
Ответ на: комментарий от kamre

Никогда не играл в вовку, но разе эти пиратские сервера имеют такой же контент как и официальные от Blizzard?

Контент - понятье растяжимое. Если ты о программной части, контент естественно появляется с опозданием и бажный. Через какое-то время допиливают до состояния «вон там рыбацкий квест забагован, но на рыбалку всем пофиг». Короче хуже близзарда, но играбельно.

На некоторые серверах, помню, фиксят баги, но не ставят новые аддоны, ибо казуальщина. Это имхо самый профит от пиратских серверов.

anonymous
()
Ответ на: комментарий от pathfinder

Если нет своего постоянного сервиса в интернете, можно попользоваться не своими. Предположим, что сайт http://www.google.com будет существовать неограниченно долго. Делаем по HTTP Get запрос. Извлекаем из поля «Date» время и относительно этого времени определяем, истек ли триальный период.

Пусть теперь результат HTTP-Get запроса всегда 01.01.01 . Триальный период не истечёт никогда. Я знаю, как реализовать это как минимум тремя способами.

Если уж обращаться к внешним ресурсам, они должны производить некую незаменимую операцию, чтобы их работу нельзя было симулировать или просто выкорчевать из защищаемого кода. Например, в широко известном в узких кругах Steinberg Cubase насчитывается не менее 900 включений кода защиты, выдающего различные ключи в зависимости от ID места включения. Причём, там хитро считается место дальнейшего перехода в зависимости от полученного ключа. То есть без дампа всех ответов от DRM невозможно восстановить корректную работу всех функций программы.

Sadler ★★★
()
Ответ на: комментарий от kamre

Но игоры, которые не будут работать через несколько лет, не нужны!

buddhist ★★★★★
()
Ответ на: комментарий от one_more_hokum

А вот, к стати, нет (или за последние пару месяцев ничего не изменилось). Сервер только периодически запоминает текущее положение дел. (там даже обновление состояния соседних городов люто запаздывает - у нас были задержки по полчаса...)

RiseOfDeath ★★★★
()
Ответ на: комментарий от RiseOfDeath

Ну так «может быть легко сделано» и «сделано» слегка разные вещи, не так ли? Может, админы тех серверов положили на свои обязанности свои же эти самые.

one_more_hokum ★★★
()

Удваиваю за интернет. Если продуктов несколько, то запиливание сервера поможет удешевить процесс.

Мой опыт навряд ли поможет, я обычно «привязываю» к железу. Правда у меня продукты в основном системные.

Deleted
()
Ответ на: комментарий от Sadler

Пусть теперь результат HTTP-Get запроса всегда 01.01.01 . Триальный период не истечёт никогда. Я знаю, как реализовать это как минимум тремя способами.

Это решение для бедных. Я не говорил, что оно очень надежное.

pathfinder ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.