Знаете ли вы о каком-либо инструменте, который мог бы помочь мне в запутывании кода python?Python Code Obfuscation
ответ
Первая ссылка теперь перенаправляется на https://github.com/astrand/pyobfuscate – ashes999
Во многих ситуациях вы можете грузят байт скомпилированные .pyc файлов вместо .py исходных файлов. Это дает вам некоторый уровень обфускации. Как предполагает pyobfuscate README, это имеет ограничения. Но вы можете комбинировать два подхода.
Ваше проблемное пространство недоказано. Это для приложения командной строки? Этот код предполагается использовать в качестве библиотеки?
В дополнение к двум другим ответам вы можете вставить код в двоичный код. Когда он запускается, декодируйте код и оценивайте строку. Это работает и для расширения общей библиотеки. Вы также можете сделать это с байтовым кодом, я думаю, но это было бы не так просто, как вызвать Py_EvalCode.
py2exe или freeze - это другое решение, которое преобразует код в исполняемый файл. Он просто включает код в двоичном формате и не делает какого-либо серьезного обдумывания, но все равно сложнее открыть файл .py.
Вы можете написать код в Cython, который похож на Python и записывает файлы расширения Python в C, для использования в качестве .so. Это, пожалуй, самое сложное из них - перепроектировать и по-прежнему дать вам язык высокого уровня для развития.
Все они взломаны, как и все решения. Как вам тяжело это быть?
Стандартная библиотека Python включает в себя compileall.py. Вы можете запустить это в каталоге, и он будет генерировать файлы .pyc для всех ваших исходных файлов. Файлы .pyc будут включать только байт-коды и docstrings, а также исключить все комментарии. Затем вы можете скопировать этот каталог, а затем запустить что-то вроде rm -rf $(find . -name .py)
, чтобы удалить исходные исходные файлы.
Ваш лучший выбор - скомпилировать его, используя Shed Skin, экспериментальный компилятор Python-to-C++.
Существует также Pypy, но он недокументирован и очень ограничен в коде, который он принимает. – Antimony
@ Anthony: Вы говорите о RPython?PyPy (который использует RPython) - это полная реализация Python и вовсе не ограничена в коде, который он принимает. –
@John Да, я говорю о RPython. Это часть проекта PyPy. – Antimony
Я действительно нашел очень хороший проект, который в основном преобразует Python в C++ и создает двоичный, статически связанный файл.
Проверьте это: http://www.nuitka.net/
Хотя это не делает запутывание, это Python recipe очень хорошо работает для минимизации размера кода Python, в том числе зачистки комментариев.
- 1. Objective-C Code Obfuscation
- 2. Obfuscation Ruby code
- 3. Код Obfuscation?
- 4. JNI proguard obfuscation
- 5. Netbeans Obfuscation
- 6. Obfuscation + Reflection
- 7. obfuscation macro
- 8. AngularJS Obfuscation
- 9. PHP obfuscation
- 10. Spring obfuscation
- 11. Java obfuscation
- 12. Pycharm: Python Qt code code
- 13. Код Silverlight Obfuscation
- 14. Advanced Javascript Obfuscation
- 15. gson obfuscation proguard ошибки
- 16. Obfuscation из .NET EXE/DLL
- 17. python code parser в python
- 18. Python - Преобразование CSV в объекты - Code Code
- 19. Только что попробовал Obfuscation
- 20. параметр строки запроса obfuscation
- 21. GWT Java Obfuscation
- 22. Proguard для антурирования obfuscation
- 23. javascript double obfuscation
- 24. CompileAssemblyFromSource + Obfuscation = не работает
- 25. obfuscation для Android aar
- 26. java.lang.NoClassDefFoundError после proguard obfuscation
- 27. iOS obfuscation поддерживающих файлов
- 28. Obfuscation в проектах Xamarin
- 29. Код javascript obfuscation tool
- 30. Proguard Obfuscation in eclipse
Конвертировать в Perl? Бум, бум, спасибо за прослушивание, я здесь всю неделю :-) – paxdiablo
Дубликат: http://stackoverflow.com/questions/261638/how-do-i-protect-python-code –
И более общее обсуждение: http : //stackoverflow.com/questions/164137/how-do-i-deploy-a-python-desktop-application – tzot