Я написал несколько программ на Perl и планирую их распространять. Они являются частью большого бинарного дистрибутива (в основном скомпилированного на C/C++). Если возможно, я предпочел бы отказаться как можно меньше (я отвечаю за поставку работающего программного обеспечения, а не за умные алгоритмы). Каков мой лучший выбор для сокрытия кода Perl, чтобы, если кто-то действительно хочет увидеть исходный код, ему пришлось бы приложить немного больше усилий, чем просто открыть файл в редакторе?
Как я могу скрыть код Perl?
Ответы (4)
Вы можете зашифровать свой код, а затем во время выполнения расшифровать его и отправить perl
stdin
. (конечно, дешифратор не будет зашифрован).
Я получил несколько минимальных/скомпилированных ответов на свой вопрос Как мне скомпилировать Perl-скрипт, чтобы сократить время запуска?
Filter::Crypto (возможно, через PAR::Filter::Crypto), безусловно, является наиболее продвинутым инструментом с открытым исходным кодом для этой работы (за исключением perlcc, который плохо работает для многих вещей, YMMV).
Если все, что вам нужно, это скрыть код от случайных хакеров, этого более более чем достаточно. Скрыть это от решительных и/или способных людей практически невозможно.
Это не усложнит простое открытие файлов, но обфускатор может затруднить понимание и изменение вашего кода. Посмотрите здесь или здесь для начала.