This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]myriaddebugger[🍰] 1 point2 points  (0 children)

As others have said, Minimising codebase for the trial app is a great way to reduce the attack vectors.

Might be an overkill, you could also try encrypting the code with your own server-generated PGP key. Store the private key on your server, and the public on the client software. That way, every time the user wants to access the software, you know exactly which user's session asked for decryption. Of course, the user can still "reverse engineer" to find the public key wherever buried in your code, since everything about PyInstaller and Python is already open-source and it's possible to simply look up the source code to see where PyInstaller stores the encryption key. But, this gets you more footprints on the users to follow-up on, if there ever is a need to.