Is there existing open-source software to sell own Unity3D programs with license keys?

I made a program with Unity which I want to sell now. I can’t use services like Steam because it’s not a game. My plan was to create an installer for this program. Not problem so far. The installer should now ask for a license key which will be checked against the ones laying on my server. If ok, the installer will install my program, otherwise abort.
I really don’t know anything about existing installer frameworks with this feature and it seems that no one has asked here about how to do this. But hopefully somebody can answer my question.

PS: I don’t want to write such a system myself cause it is likely to be insecure.

All such client side verification systems are insecure. Actually chances are better when you ship your own way than using a well established solution. Well established protections usually are already broken by cracker groups. So when there’s enough interest on your software it’s just a matter of time until it’s broken.

I’ve posted a relatively simple solution for a self-verifying serial key system where the key contains an expiration date.

To be harder to crack the actual verification code might be written in a natively compiled language so it’s harder to analyse. However your application still need to interact with that native code plugin and your managed code is very easy to decompile. A native library can be replaced by a mock version. Again, no system is ever secure, even systems that require an account and a connection to a server as this can be patched out given enough time.

The only true secure solution is to not ship the actual software to the enduser but keep it on your server. That way you can ensure no modifications to the software.