Flex / Air запутывания

голоса
21

Я написал (большинство) приложений в Flex и я обеспокоен защитой исходного кода. Я запустил демо Trillix SWF Decompiler и открыл файл SWF , который был установлен в моей программе каталог файлов. Я видел , что все ACTIONSCRIPT пакетов , которые я написал , были там. Я не слишком обеспокоен с пакетами, даже если имеется значительное количество коды, потому что она по- прежнему кажется довольно непригодной для использования без MXML файлов. Я думаю , что они превращаются в Actionscript, или по крайней мере , я надеюсь. Тем не менее, я все же хотел бы изучить запутывание.

Кто-нибудь есть опыт работы с Flash / Actionscript 3 / Flex обфускаторов? Вы можете порекомендовать хороший продукт?

Задан 07/08/2008 в 15:41
источник пользователем
На других языках...                            


4 ответов

голоса
13

Вот что я хотел бы сделать.

  • Компиляция приложения к SWF-файл. Затем зашифровать SWF с помощью AES.

  • Сделать «обертку» приложение, которое загружает зашифрованную SWF в ByteArray с помощью URLLoader

  • Используйте as3crypto библиотеку для расшифровки SWF во время выполнения.

  • После расшифровки, используйте Loader.loadBytes для загрузки расшифрованный SWF в программе-оболочке.

Это позволит сделать это намного сложнее получить код. Не невозможно, но труднее.

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

Кроме того , здесь есть ссылка на AS3 обфускатор. Я не уверен , насколько хорошо она работает , хотя. http://www.ambiera.com/irrfuscator/index.html

Ответил 07/08/2008 в 17:28
источник пользователем

голоса
20

Процедура предложенной maclema не будет действительно остановить любой злоумышленника от получения источника - «обертка приложение» должно быть в незашифрованном виде, поэтому злоумышленник сможет узнать, что вы используете AES (или любой другой алгоритм), и он получит ключ дешифрования подобным образом (потому что он должен быть в незашифрованном виде где-то). После того, как он это, он сможет расшифровать ваш SWF-файл легко.

Единственное надежное решение (ну ...) является своего рода обфускатора - мы используем Amayeta , который работает для Flex в последней версии - пожалуйста , смотрите http://www.amayeta.com/software/swfencrypt/ .

Ответил 25/09/2008 в 12:03
источник пользователем

голоса
3

Ну, на мой взгляд, самым простым и безопасным решением является сочетание maclema и Borek ответ:

Сокрытие код может быть большим headach, если вы не включили его в процессе с самого начала, и если ваш aplplication довольно большой: это, вероятно, что запутывания сделать ваше приложение повреждено, если используются удаленные пакеты (и не заявить об этом обфускатору) если вы использовали для многих нетипизированных переменных в объектах или динамических классах ....

Итак: если вы делаете решение maclema на большом приложении и использовать запутывание на вашу обертке (который является небольшим приложением, скорее всего, будет очень легко запутать) вы код будет самым безопасным и наименее Hasle. Только очень сердится пират бы время, чтобы перепроектировать запутывание, чтобы расшифровать пакет .... Ну, если кто-то хочет, чтобы ваш код приложения Су плохо это или ЦРУ, связанное или вы уже очень богаты (или оба)

спасибо всем за ответы

Ответил 29/04/2011 в 17:33
источник пользователем

голоса
0

Я недавно выпустила игру IOS и Android с помощью Flash. Я посмотрел вокруг интернета для хорошей бесплатной программы для защиты исходного кода в моем SWF и не мог найти ничего, так что я написал один. Это все еще в разработке, и это «использование на свой страх и риск», но он работал на меня.

Он выпущен на GitHub. Проверьте его и дайте мне знать, что вы думаете.

https://github.com/Teesquared/flasturbate

Я загрузил окно двоичного, но я рекомендую вам следовать инструкциям, чтобы построить его самостоятельно, если вы хотите, чтобы дать ему попробовать.

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

Ответил 12/01/2014 в 18:31
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more