Hello im working on a desktop application that I wish to publish but I don't want people easily to just reverse engineer my code if they really wanted to. I was thinking about python both frontend and backend. And for obfuscation using pyarmor Pro with Cython and pyinstaller for the executable. As well as paying for a azure signing certificate for trust. Do you generally think thats enough for commercial or do I need more security? I get that nothing will be secure 100% but I just dont want the average person to just steal my code simply... I do plan to implement a paymention option for some services within it as well. Any opinions or input on if im going the right direction?
#π Desktop Application Security
36 messages Β· Page 1 of 1 (latest)
@late marsh
Remember to:
- Ask your Python question, not if you can ask or if there's an expert who can help.
- Show a code sample as text (rather than a screenshot) and the error message, if you've got one.
- Explain what you expect to happen and what actually happens.
:warning: Do not pip install anything that isn't related to your question, especially if asked to over DMs.
Closes after a period of inactivity, or when you send !close.
how is a signing cert going to help against reverse engineering?
Not for that reason just for trust against virus detection
That will probably be enough for your purposes.
I keep getting told that it should be done in like Java or C++ just because its more frownd upon doing it in python for desktop apps but I really dont get why..
I have mixed experiences distributing Java desktop apps
Care to share so I could understand?
the story isn't really better than Python
well, I built and maintained an ERP app with a desktop client for several years
the client was Java
granted, the installation required users to install a JRE
that can be avoided but it means shipping a JRE with every installer
gotcha
and signing became a requirement later in the game, not by me or the customer but by the JRE itself
even then we saw some really bizarre issues that were not reproduceable across all machines
I would not go that route if I had to make an app like that again
haha, makes sense. But why are some against python specifically for distribution?
ignorance, perhaps?
My guess too. I just couldnt find anything concrete myself
Ren'py apps are good examples of well-planned Python distributable apps
they "just work" in my experience, and the Python stuff they come with is pretty non-intrusive
Nuitka is an alternative but I have mixed experiences with that β don't try a full compilation!
I prefer python backened just because for this specific purpose of the app its not crazy complicated and I would like it done pretty fast honestly so python was my go to. However GUI side I used Qt framework but again its not crazy good compared to like what Java or C++ have to offer but its good enough..
PyInstaller is the "safe" alternative
Qt is probably the best overall desktop UI framework out there
Yea and after all of that thinking my last thought was just security considering I know how other covnert to binaries and stuff. Wasn't really sure how pyinstaller and others worked
Thats why I wanted to assk about security wise.
PyArmor probably has some good docs on this
they have a free version which you've probably tried already
Yup they do. I just wanted to consult with someone else about it before i commit. I was sepcifically gonna use the pro version since its commerical use.
But thanks again for everything.
This help channel has been closed. Feel free to create a new post in #1035199133436354600. To maximize your chances of getting a response, check out this guide on asking good questions.