|
josant
|
 |
« on: December 29, 2011, 04:05:25 PM » |
|
| Application Name | Habanero Simple Software Licensing | | Version | 1.0.0 - Version 2 is available from the website. | | Short Description | Really simple software licensing solution designed for microisv and freelance software developers Official product page | | Supported OSes | Windows 7, Vista probably Windows XP... | | Setup File | Download these files to use the application. The latest version can always be downloaded from the official site.
LicenseManager1.0.1.zip (306.53 KB - downloaded 91 times.) 1.0.1 of the license manager
LicenseValidator1.0.0.zip (25.69 KB - downloaded 78 times.) 1.0.0 of the license validation component
LicenseGenerator1.0.0.zip (33.17 KB - downloaded 79 times.) 1.0.0 of the license generation component
Paste the following license information into the license manager using the About menu item. ===== Product: Habanero Simple Software Licensing, Free, 1.0.1 Serialnumber: bb158d3c-6f1e-455a-82ae-ad190ca96a98 Licensed to: DonationCoder Valid until: 2012-06-30 5Y40HBB-EF05HJ-EC2TZ6Z-29HF1Q-BTTB72R-Y7JQ0P-76T27XA-X69WD7 =====
| | System Requirements | .Net 4 | | Author Info | Joshua Anthony has been developing software professionally since the mid 1990s and before that as a hobby for many years on such wonderful platforms as the ZX Spectrum, C64, MSX and others!
Currently he runs his own MicroISV and consulting company developing primarily for Microsoft platforms using .Net but also dabbling in cutting edge mobile HTML5 apps and experimenting with PHP.
Some random ramblings and interesting software development tidbits can be found on his blog.
Just to avoid unnecessary flames - I am a strong believer in permissive licensing, creative commons and open source which is one reason why I have developed this. Most of the licensing solutions that I have found as a small scale developer are in my opinion too expensive, too restrictive, aren't secure enough and try to make the end users life (and the developers) more painful than it needs to be! This is an attempt to change all that!
| | Description | Software licensing is tough and if you have little or no experience with cryptography and securing enterprise software systems it is really tough! This solution is designed to provide a good-enough licensing setup to discourage accidental and casual copying of the software without making it difficult for your licensed users to move their licenses to new computers or having to reactivate after a system crash. This licensing solution is also designed to integrate easily with Paypal IPN and Mailchimp webhooks if you want to send out license info via email automatically.
This is actually a product that I am going to sell as part of my regular business, but I recently joined DonationCoder and the NANY 2012 challenge inspired me to try and push something out the door earlier than I had planned. I will also set up a special DonationCoder license in the spirit of the official DonationCoder license (free with periodic renewals, no details on that yet) when this is officially released.
More info about how I think this could be of use for software developers.
| | Features | Military Grade encyption/hashing algorithms Named users with keys or anonymous serial/licenses Optionally limit license validity License generation can be automated and integrated with PayPal
More advanced features are on the drawing board but not being implemented yet...
| | Screenshots | Updated screen shots for version 1.0.1
 Basic GUI
The following screenshots are the old design but the functionality is the same.
 GUI with license file generated
 Sample license files
| | Installation | Unzip package and run exe file⦠| | Using the application | There are three parts to the solution: * the license manager is the part that you use to create serials and license files * the licensing component is the part that your code uses to get information about the users license * the license generator is used for generating licenses from code
More info on all the different components will be coming... | | Uninstalling | Delete files...
| | Known Issues | No software licensing solution can be 100% secure⦠Reverse engineering of your software (not the licensing solution) is the most likely and easy attack vector.
I have plans for making this solution even more secure by allowing you to embed critical application data inside the license file which would make it much more difficult to crack your software, although nowhere near impossible.
|
|
|
|
« Last Edit: March 25, 2012, 09:08:21 AM by josant; Reason: Updated reference to latest version, »
|
Logged
|
|
|
|
|
JavaJones
|
 |
« Reply #1 on: December 29, 2011, 05:31:11 PM » |
|
Oho, this looks quite interesting. How will it integrate with Paypal and Mailchimp? Will there be a web component? Any other integrations planned (e.g. Virtuemart, WorldPay, Authorize.net)?
- Oshyan
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #2 on: December 29, 2011, 05:47:38 PM » |
|
Both Paypal and Mailchimp can post signup/purchase data to a web page. I am developing a sample .net web page which uses the license key/file generation to create a user specific license file (the license file is just plain text) based on the variables posted by paypal and mailchimp. The end user can save the file into the directory where the software is installed. Alternatively you could provide an input form inside the application for entering the details of the license and include the license details directly in the email. The settings for the license generation are exported from the license manager in a format that the license generation component can read.
I am planning to look at other integrations, but nothing in the pipe at the moment. Since each api posts different data, formatted in different ways I must choose integrations which are of greatest interest to users of the software... I have worked with Paypal and Mailchimp integration which is why they are out first. I would love to hear if there are more integrations which would be of interest in addition to Paypal, Mailchimp, Amazon payments, Kagi, Virtuemart, Worldpay, Authorize.net?
|
|
|
|
|
Logged
|
|
|
|
|
|
josant
|
 |
« Reply #3 on: December 29, 2011, 05:55:23 PM » |
|
I have looked at the apis of Virtuemart, WorldPay & Authorize.net. Worldpay and Authorized.net seem to support transaction notifications which resemble the Paypal flow so developing integrations for these should be possible. And thanks for your interest Oshyan! 
|
|
|
|
|
Logged
|
|
|
|
|
tranglos
|
 |
« Reply #4 on: December 29, 2011, 08:15:30 PM » |
|
This is wonderful, Josant, thank you! Great to see the DC spirit in action! I would so use this if only I had software to protect  Alas, I must have looked the other way when they were giving out business hats. But (in my salad-er days) I did look more than once at the available protection solutions, and they're all highly expensive. This is a wonderful gift to DC.
|
|
|
|
|
Logged
|
|
|
|
|
cranioscopical
|
 |
« Reply #5 on: December 29, 2011, 08:41:43 PM » |
|
Thanks for your contribution, josant!
|
|
|
|
|
Logged
|
Chris
|
|
|
|
JavaJones
|
 |
« Reply #6 on: December 30, 2011, 03:29:48 PM » |
|
My company currently uses WorldPay so support for that would definitely increase the likelihood we could use this system. We'd be happy to pay for it too, just that most existing solutions are either very expensive or highly proprietary. Anyway, this is definitely of interest, I'll keep an eye on it. And thanks for sharing it with DC!
- Oshyan
|
|
|
|
|
Logged
|
|
|
|
|
kyrathaba
|
 |
« Reply #7 on: December 30, 2011, 07:44:41 PM » |
|
josant, looks from your official page like this is a pretty well-developed project. Is it okay to for me to update the title of this thread to contain the word Release?. Basically everyone who has pledged but not yet Released needs to officially release their app, so we can sceencast it and do a writeup.
|
|
|
|
|
Logged
|
Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 20.0 _________________________________________________________________________________________ I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF http://kyrathaba.dcmembers.com/donate.htm
|
|
|
|
josant
|
 |
« Reply #8 on: December 31, 2011, 04:05:22 PM » |
|
This will be a late release I am afraid. I have gone on a last minute New Years trip with my family and wasn't able to finish and upload the Donationcoder release of it before we left. I will push this out on Monday afternoon (GMT+1) I can also do a screen cast of how it works on Monday.
Sorry about the delay and Happy New Year to everyone!
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #9 on: January 02, 2012, 10:02:51 AM » |
|
The first DonationCoder licensed version of this application has now been released.
I'll be creating a screencast of how to use this for simple licensing including validating license validity. The version number will change to 1.0 before I do the screen cast but everything else will be the same...
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #10 on: January 03, 2012, 04:08:04 PM » |
|
A Screencast of the application will be posted on the 4th of January.
|
|
|
|
|
Logged
|
|
|
|
|
|
|
kyrathaba
|
 |
« Reply #12 on: January 04, 2012, 07:25:42 PM » |
|
Nice demo!
|
|
|
|
|
Logged
|
Win 7 Home Premium 64bit-SP1 AMD Athlon II X2 220 Socket AM3 (938) @ 2.1GHz 6GB RAM Firefox 20.0 _________________________________________________________________________________________ I'm fighting against patent trolls. Join me and tell your representative to support the #SHIELDAct: https://eff.org/r.b6JJ /via @EFF http://kyrathaba.dcmembers.com/donate.htm
|
|
|
|
josant
|
 |
« Reply #13 on: January 04, 2012, 08:20:17 PM » |
|
Thanks! First time posting anything to Youtube.
I'll be adding more screencasts next week of validating licenses from code and generating licenses from code.
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #14 on: January 17, 2012, 11:05:18 AM » |
|
I have created a new web site for this product and updated the user interface (with a little help from others). If anyone wants a special DonationCoder license please  my site or page on facebook  . Actually just send me a personal message through DonationCoder and I will issue you a special license which you can use with the application. Feedback and feature requests are most welcome too.
|
|
|
|
|
Logged
|
|
|
|
|
cranioscopical
|
 |
« Reply #15 on: January 17, 2012, 02:21:40 PM » |
|
First time posting anything to Youtube.
Nicely done. Simple, clear, informative. 
|
|
|
|
|
Logged
|
Chris
|
|
|
|
40hz
|
 |
« Reply #16 on: January 17, 2012, 02:47:04 PM » |
|
@josant - Very nice product. I was wondering if you ever considered combining the validator part with a wrapper for a document file. Ideally, the manager could be a simple utility to drop something like a PDF into it and create a one off license. Then the PDF could be combined with a locked launcher. The document could then only be unlocked and launched the first time by the buyer using the provided license key. After that however, it would just display a splash screen with an "Exclusively licensed to: {name} call-out which you'd need to click through every time you opened the actual document. Might be nice too if the file required a reapplication of its license key if it ever got transferred to a different PC. That could be a real boon to people who produce and sell licensed instructional materials. Would go a long way towards cutting down on casual license violations. 
|
|
|
|
|
Logged
|
|
|
|
|
Deozaan
|
 |
« Reply #17 on: January 19, 2012, 06:15:14 PM » |
|
Wow. That's neat! Two days ago an idea popped into my head for a licensing method and I started hacking away at it trying to create one (in mono). I'd guess I'm about halfway done with it now but I sure wish I had seen this first.  Nice work!
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #18 on: January 21, 2012, 10:55:05 AM » |
|
I have actually been looking at a solution for locking Excel files which would be possible to do with PDFs too, unfortunately Adobe require a $50,000 per year  DRM agreement if you add plugins to Adobe reader which restrict access to or encrypt PDFs... So I wont be implementing that anytime soon! It would be of course be possible to implement the license as an executable file which then opened an embedded PDF - unfortunately you would have to open the pdf through the launcher each time to retain any kind of security. But it should work. I will create a proof of concept to see what is possible! @josant - Very nice product. I was wondering if you ever considered combining the validator part with a wrapper for a document file. Ideally, the manager could be a simple utility to drop something like a PDF into it and create a one off license. Then the PDF could be combined with a locked launcher. The document could then only be unlocked and launched the first time by the buyer using the provided license key. After that however, it would just display a splash screen with an "Exclusively licensed to: {name} call-out which you'd need to click through every time you opened the actual document. Might be nice too if the file required a reapplication of its license key if it ever got transferred to a different PC. That could be a real boon to people who produce and sell licensed instructional materials. Would go a long way towards cutting down on casual license violations. 
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #19 on: January 21, 2012, 10:57:26 AM » |
|
Wow. That's neat! Two days ago an idea popped into my head for a licensing method and I started hacking away at it trying to create one (in mono). I'd guess I'm about halfway done with it now but I sure wish I had seen this first.  Nice work! It's not too late to try this instead! I would actually be very interested in knowing if this works in Mono, it should do but you just never know...
|
|
|
|
|
Logged
|
|
|
|
|
Deozaan
|
 |
« Reply #20 on: January 21, 2012, 08:30:49 PM » |
|
I've got some feedback. I was just playing with the Habanero License Manager. I filled out some various information and checked some boxes and then suddenly a prompt popped up with a message something like: "New Version detected, do you want to save it?" Did that mean that it detected a new version of Habanero and it's asking me if I want to update to it? I had just created the Product Secret, was it talking about a new Product Secret? I had no idea what it was talking about but I clicked yes just to be safe. Then nothing happened. Or if something happened, it appeared as though nothing happened. I now see a LicenseManager.lic in the LicenseManager folder. I'm guessing that's the file it saved to? Is that even what happened due to this dialog prompt? I hadn't previously saved the file, so I was expecting a prompt for what to name the license file. I played around with the Manager some more and found out the dialog prompt in the first place was talking about the Product Version I entered in. Perhaps that dialog could be made clearer by saying something like "You added a new Product Version. Would you like to save these changes?" It's not too late to try this instead! I would actually be very interested in knowing if this works in Mono, it should do but you just never know...
I don't yet know how to import DLLs into mono projects, so this isn't something I could just quickly try. I'll probably take some time to try it out though, but not today. 
|
|
|
|
|
Logged
|
|
|
|
|
josant
|
 |
« Reply #21 on: January 22, 2012, 03:02:19 AM » |
|
Thanks great feedback - yeah the prompt is a little/very unclear... And probably completely unnecessary, I think it should just save the new product version if it looks valid since the user just explicitly edited it - I will be changing that. I am also going to add Netsparkle (or other updater) to the application to allow proper automatic updating of the binaries. That will make it very clear when there is a new version of the license manager available and what has been updated. I've got some feedback. ... "New Version detected, do you want to save it?" ... I played around with the Manager some more and found out the dialog prompt in the first place was talking about the Product Version I entered in. Perhaps that dialog could be made clearer by saying something like "You added a new Product Version. Would you like to save these changes?" ...
|
|
|
|
|
Logged
|
|
|
|
|