Ребята, есть серьёзный вопрос)
В сети не могу найти внятного/точного ответа на некоторые нюансы.
На всякий случай спрошу тут.
Знающие люди разъясните, пожалуйста, такой момент:
Допустим я написал программу на пайтоне (program.py) и сделал exe-обертку для неё при помощи pyinstaller… а затем бесплатно скинул в сеть…Для того, чтоб прогой пользовались (+1 к карме и тщеславию).
Однако, я не сильно хочу, чтоб кто-то брал мой код и подгонял его под свои нужды…или что-то переделывал в нём, а затем юзал…
Как известно, exe-обертку можно будет легко “декомпилировать” и вытащить исходник.
(При помощи pyinstxtractor.py и uncomply6 в cmd-шке любой юзер может достать мой program.py из exe-обертки).
Собственно, я сам это проделал со своей прогой (достал исходник за 2 минуты). Код как на ладони. Ничего не спрятать.
Есть вариант “защитить” код при помощи обфускации (потом попробую это выполнить).
Но сейчас у меня другой важный вопрос.
При помощи nuitka и mingw64 я “скомпилировал” прогу в небольшой экзешник. Все работает, все норм, вес проги маленький) Круть.
CMD: python -m nuitka –windows-disable-console –mingw64 program.py
При помощи pyinstxtractor теперь исходник не достанешь (ибо через nuitka все “компилировалось”).
Однако, наверное и на такой вариант есть свой способ достать исходник…
(В сети я что-то не нашёл такого способа)…
1) Не подскажете насколько серьёзно защищен исходник через компиляцию nuitka (понятно, что “декомпилировать” можно всё… но можно ли будет достать “целый” исходник?
2) Возможно ли будет вытащить из такого экзешника код так, как в экзешнике “скомпилированного” pyinstaller-ом (типо насколько читабелен будет исходник?)?
При обертке через pyinstaller в исходнике все практически точно также, только пробелы и отступы слегка съехали…читай не хочу
3) Насколько серьёзной будет защита если я сначала пропущу через обфускатор свой пайтон-файл, а потом скомпилирую его через nuitka/mingw64 ?
P.S.
С pyinstaller все понятно (как запускается и работает прога).
Если не сложно, то объясните, пожалуйста, пошагово то, как именно все работает в экзешнике полученным через nuitka… Мой исходник получается теперь переписан языком “С” и при его запуске все загружается в память устройства и исполняется программой?? (пардон, если вопрос бредовый).