Last post Apr 08, 2012 11:51 PM by Keep it Simple
Mar 25, 2012 09:12 PM|rwkiii|LINK
I've developed an ASP.NET Web Application that uses an API compiled to a DLL. It's a fairly big solution with several 'projects'.
Am wondering what options there are to incorporate software licensing. I want to support several different licensing models. For example, a trial license. A license with support and one without. Possibly a license to lease the software. A license that enables
most features and one that enables only some of the features. Upgrade and renewal options. Online purchasing of licenses with ability to authorize download of software once a license is purchased or a trial is opted. Is this all mostly basic features of a
Have looked a little at the Microsoft Client Application Services solution. Anyone have any thoughts/experience on this? Does it support the things I'm looking to do above?
Would like to consider any free/open source options out there. Have also been looking at a few commercial options, but it's all very confusing.
Some of the things that concern me are ease of integration into my existing .NET software, management of license keys and user information. I'd like for there to be an online option for all of this - in other words, users go to a web site, read about the
software, try it online, opt to download a trial version that will expire and then revisit my site and opt for license purchase options.
I don't have any experience in software licensing as a developer. I understand why it exists, but not how it works and what sort of options there are. As a user of licensed software, I've seen some pretty neat implementations. Like managing software keys
online (as a user) and some fairly automated licensing models where upgrade options are offered right on the spot, once logged in.
Any open source projects that are reliable and support this kind of licensing? What are the commercial options for a limited budget?
Mar 28, 2012 11:43 AM|TATWORTH|LINK
For commercial options, I would take expert advice from:
For open source options search on Code Project.
Mar 28, 2012 09:41 PM|Keep it Simple|LINK
For commercial options, I would take expert advice from
TATWORTH, From what I can see, the recommended web sites offer a very wide range of software products from many differernt vendors.
I think the question is very specific (for us developers), and if I may, I would also like to ask virtually the same question:
Is there a software solution for managing installation and licenses of Web site or Web application projects, like what InstallShield or Microsoft ClickOnce is for Windows based applications?
Does anybody have some specific suggestions? Thanks.
Mar 30, 2012 06:51 AM|TATWORTH|LINK
>TATWORTH, From what I can see, the recommended web sites offer a very wide range of software products from many differernt vendors.
Yes they offer a wide range of commerical software. They are both specialists and if I was going to buy in a solution, I would ask them first.
I have looked on CodeProject but so far, without success.
Apr 03, 2012 11:28 AM|TATWORTH|LINK
Concerning an online solution, let us suppose an open source package does exist. What would such a package be like?
This would need to be hosted on a high-availability server server so that all the sold systems could periodically verify their licenses. Such hosting is not cheap. If you can allow your application a 24-hour (or longer) grace period between successful licence
checks before disabling then high availability requirement is lessened.
More thoughts later.
Apr 04, 2012 06:50 AM|TATWORTH|LINK
The next point to consider is that to frustrate hackers you will need to:
1) Obfuscate your DLL
2) Use an SSL certificate to make the verification traffic HTTPS. Some hosters will readily supply you a certificate.
To Test you system you will need:
A) A web site site to act as the licence server
B) Your public web site to sell you product and assign licence keys via site.
C) A test web site deploying your licenced solution. This site should be hosted at a different ISP to sites A and B
Apr 04, 2012 10:32 PM|Keep it Simple|LINK
Some very good points raised above.
1) Obfuscate your DLL
Visual Studio 2010 Professional comes with a very basic edition of Dotfuscator. More info at:
(A) and (B) above could be the same web site which reduces the attack surface, maintenance, and cost. The main difference between A and B is that: A is reading records, and B is inserting records (after a sale).
(C) would defintely have to be different web site. However, the test should include the same Hosting provider because the "end customer" may host with the same provider as your site.
Also, you would want to reduce the Trust setting in the web.config file.
Has anybody "rolled their own" ASP.NET licensing solution? Or purchased an "off the shelf" package?
Apr 06, 2012 11:43 AM|ssware|LINK
If commercial is fine, then take a look at CryptoLicensing. Take a look at their videos at
Apr 07, 2012 10:31 AM|TATWORTH|LINK
ssware's posting is good, however I would add SSWARE's obfuscator to my purchase. I consider that to be a very good investment.
I suggest that you spend some time examining the comparison between standard, professional and enterprise versions at
If anything is not clear in this comparison, then email their help desk.
Apr 08, 2012 11:51 PM|Keep it Simple|LINK
You may interested in the following MSDN articles: