Собственный клиент Google - Как защитить исходный код? - PullRequest
0 голосов
/ 13 декабря 2011

Может ли исходный код Google Native Client быть защищен, чтобы, в отличие от JavaScript, его не было видно в клиенте?

Если да, то как?Спасибо!

Ответы [ 3 ]

3 голосов
/ 13 декабря 2011

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

1 голос
/ 14 декабря 2011

Структурные требования собственного клиента для обеспечения надежной разборки, чтобы он мог выполнять статический анализ, могут сделать некоторые методы для запутывания кода непригодными для использования.Часто это те же самые методы, которые используются вредоносными программами для усложнения анализа вредоносных программ, т. Е. Имеют две правильные интерпретации потока команд, если они декодируются различными смещениями.Однако Native Client допускает форму самоизменяющегося кода, поскольку он поддерживает JIT.Например, Mono использует генерацию кода точно в срок, и те же интерфейсы можно использовать для создания запутанного кода, если код в формате JIT продолжает соответствовать требованиям безопасности NaCl.

ИспользованиеИнтерфейс JIT, конечно, сделает ваш код не переносимым на другие архитектуры ЦП.

1 голос
/ 13 декабря 2011

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

...