Защитите вызовы методов в SWC, находящемся в другом SWC - PullRequest
1 голос
/ 13 мая 2011

У меня есть SWC, скомпилированный по алхимии, который содержит методы для выполнения определенных ключевых алгоритмов.Эти методы должны возвращать значения только в том случае, если пользователь авторизован (купил лицензию в онлайн-сервисе) в целях безопасности.Поэтому я планирую добавить еще один SWC, в котором есть все необходимое для лицензионного кода.Но когда я импортирую сгенерированный Алхимией SWC внутри моего пользовательского SWC, все методы алхимии раскрываются.Есть идеи как ограничить их доступ.то есть я хочу, чтобы эти методы использовались только в пользовательском компоненте, а не для тех, кто использует пользовательский компонент.

Ответы [ 2 ]

1 голос
/ 20 мая 2011

Ответ Ascension Systems верен: вы не можете предотвратить кражу кода, запущенного на клиенте.Лучшее, что вы можете сделать - это запутать.

В этом ключе вы можете использовать обфускатор C / C ++ code в вашем источнике Алхимии перед его компиляцией.По крайней мере, это сделало бы функции Алхимии (FSM_Z18blahblahblah и т. Д.) Бессмысленными и сложными для понимания.

1 голос
/ 13 мая 2011

Добро пожаловать в мир безопасности во флэш-памяти, где такого нет.Проблема в том, что у клиента всегда есть ваш код.Поэтому вы не можете использовать любую тактику, чтобы всегда защищать свой код от клиента.Даже шифруя и расшифровывая ваши двоичные файлы, код всегда находится в памяти или ключе.Это одна из причин, по которой игровые компании следующего поколения пытаются создавать игры, работающие на серверах, и просто предоставляют удаленный пользовательский интерфейс для конечных пользователей.Таким образом, единственный способ защитить что-либо - написать функциональность на стороне сервера.См. Этот комментарий для получения дополнительной информации:

Каков наилучший способ остановить людей, взламывающих таблицу рекордов на основе PHP для Flash-игры

Также я просто хочу сказать, что яЯ не просто говорю своим ухом здесь.Однажды я разработал схему двоичного шифрования / дешифрования в реальном времени в алхимии для флэш-памяти и попытался стать гением, который сделал флэш-защиту такой службой.Хотя да, возможно, такая вещь могла бы защитить контент от обычного пользователя, вы всегда будете иметь свои двоичные файлы и, следовательно, свой исходный код или, по крайней мере, свой криптографический алгоритм + ключ, предоставляемый конечному пользователю, так что в конечном итоге кто-то собираетсяПриходите и скомпрометируйте вашу систему.

...