You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Packagers like PyInstaller, Py2exe and cx_Freeze can package app into an executable, however they do not provide good security for source codes. Sources when using these packagers are protected by compiling them to bytecode, but that bytecode can be easily converted into original almost complete source codes with only code comments removed. All variables names, functions names, modules, strings, everything can be seen as in original code. PyInstaller provides an additional security by setting a secret cipher that allows to encrypt bytecode compiled code, however this is only security by obscurity and can be easily broken as well.
The only viable options to better protect sources codes are:
Use Cython to compile .py files to .pyd/.so modules (real binaries) and only then package app using e.g. PyInstaller.
Cython repo: https://github.com/cython/cython
Packagers like PyInstaller, Py2exe and cx_Freeze can package app into an executable, however they do not provide good security for source codes. Sources when using these packagers are protected by compiling them to bytecode, but that bytecode can be easily converted into original almost complete source codes with only code comments removed. All variables names, functions names, modules, strings, everything can be seen as in original code. PyInstaller provides an additional security by setting a secret cipher that allows to encrypt bytecode compiled code, however this is only security by obscurity and can be easily broken as well.
The only viable options to better protect sources codes are:
See also related issues labeled with: packaging .
The text was updated successfully, but these errors were encountered: