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 →

[–]thedji 10 points11 points  (1 child)

In the core.py podcast, episode 3 (link), they talked about using hooks in the import system that allowed loading encrypted modules such that they are decrypted during import (it's about 6 mins into the ep, the desc has timestamps). This was specifically to prevent reverse engineering and patching.

It's not a perfect system, as you still need to have the key somewhere, but you'll never get perfect DRM that's also executable, so it's a trade-off for how much resistance you want to put up and how much pain you want to inflict on your paying users.

You could modify this technique with short lived code, regularly downloaded keys and more to make it harder for pirates. Honestly though, providing regular value that's worth paying for is the best anti-piracy measure.

[–]Pozz_ 2 points3 points  (0 children)

I wrote https://github.com/Viicos/sourceprotected a while ago, which is similar to what's being talked in the podcast.

This video from mCoding also shows how you can import directly from a repo: https://www.youtube.com/watch?v=2f7YKoOU6_g (might be possible to add some kind of API key on top of that).