Как я могу защитить активы Javascript в приложении Adobe AIR? - PullRequest
0 голосов
/ 22 марта 2011

У меня большое javascript / HTML-приложение Adobe AIR, и я ищу способ защиты файлов javascript, которые упакованы в установщике и установлены (в виде простого текста) на ПК конечного пользователя.Я думаю, может быть, есть хорошая схема шифрования для использования.Я хотел бы, чтобы это было решение, которое я могу применить при создании установщика, и (поскольку приложение уже довольно большое), в идеале, я бы хотел, чтобы это было решение, которое не требует от меня изменения местоположенияjs файлы в моей базе кода, хотя это выполнимо при необходимости.

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

Важно: я ищу не только минимизацию js или ее запутывание, в идеале я ищу решение, включающее шифрование, но я открыт для других предложений.

Есть идеи?Я много гуглял в поисках решений и пробовал группу популярных пользователей, но не повезло.Я думаю, что это будет актуально для любого, кто делает приложение AIR в js / HTML, а не для приложения с открытым исходным кодом.

Спасибо!

Ответы [ 2 ]

3 голосов
/ 22 марта 2011

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

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

0 голосов
/ 24 марта 2011

Если я понимаю, что вы пытаетесь сделать, мы только что протестировали это с нашим набором инструментов шифрования / защиты. Ключевым моментом является то, что исполняемый файл, который установлен на компьютере пользователя, зашифрован, поэтому javascript никогда не бывает в виде простого текста. Расшифровка происходит во время выполнения посредством обмена симметричным ключом. Ключи хранятся в программном обеспечении или на аппаратном устройстве (ключ).

Однако, поскольку вы используете Air, а не просто c ++ или что-то подобное, есть некоторые проблемы, которые не могут быть решены нашим набором инструментов. Вы можете связаться со мной для получения дополнительной информации, если вам это нужно. Но я не думаю, что это обязательно невозможно.

...