Re:Ask HN: Developers who sell desktop software, what do you...
by ezekg on Thursday January 26, 2017 @05:25PM
(#13495844)
Is there any specific reason that you went with public/private keys as opposed to user accounts w/ associated license keys? Then again, maybe your app is primarily used while offline so you may need to do it that way.
Re:Ask HN: Developers who sell desktop software, what do you...
by laurent123456 on Friday January 27, 2017 @04:19AM
(#13498663)
I wanted the license file to be associated with the user's personal information (name and email) so that there's an incentive to keep it private and not share it on forum, etc. (I think that's how Total Commander does it as well, as I see my name and post code/town in the About box).
The public/private key allows doing this by signing the user's information. A serial number is more anonymous as it doesn't carry in plain text any information.
To be honest I think I've tried to do something too complicated. If I was doing it again I'd go for something much simpler since, anyway, no matter how complex the protection is, the application can eventually be cracked.
So I'd suggest a very simple system where the user inputs a serial number (that fastspring.com can generate directly), then the app verifies if it is valid. If it is, save it to the Windows registry (or similar place) and check it again every time the application starts. That way, you don't need to bother with any manual process like I do and it won't add much complexity to your app.
[0] http://easyhanzi.com/