Indeed it would be interesting to know how its kept protected. But just to make something clear, I mean, if I would have developed such a great functionality , I would have written it as a c# or c++ dll.
But if we talk about this, then we are talking about something very different. There is a fundamental difference between protecting arrangements of nodes on a canvas or invoking external functionality from a protected library.
Writing plain code almost always leads to much better edge case handling , because conditionals are much easier to write, and its also much easier to protect against āaverageā user.
If we talk about plain C++ in particular a reversing strategy is almost always limited to disassembling, and my knowledge with this is very limited, although I achieved cracking/patching my own software, I would never ever risk to do this with commercial software. Especially because of the laws in my country, Iām not planning to ever try. I do have a different opinion on decompiling, which is far more gray. I think its always up to the purposeā¦
Anyway, I think whatever you do for protecting, the most efficient thing to do is to keep code away or break/inform silently, but in the end you always have a false sense of security, so you have to make sure that you only work in a trusted environment.
I know this is difficult in many offices, because they are simply too small to take legal actions against copyright violations, and also have a high frequency of replacing employees.
But to sum it up, if you are not able to protect efficiently then stop caring at all. It may also indicate that your script is not so great as you think.
To end this with a wisdom from a chinese fortune cookie:
āThe more you know, the less you feel to know. (and vice versa) ā