topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Saturday December 14, 2024, 11:45 am
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Author Topic: NANY 2012 Release: Simple Software Licensing  (Read 36909 times)

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
NANY 2012 Release: Simple Software Licensing
« on: December 29, 2011, 04:05 PM »
NANY 2012 Entry Information

Application Name Habanero Simple Software Licensing
Version 1.0.0 - Version 2 is available from the website.
Short DescriptionReally 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 861 times.) 1.0.1 of the license manager
* LicenseValidator1.0.0.zip (25.69 kB - downloaded 732 times.) 1.0.0 of the license validation component
* LicenseGenerator1.0.0.zip (33.17 kB - downloaded 705 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 InfoJoshua 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!

DescriptionSoftware 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.
FeaturesMilitary 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...
ScreenshotsUpdated screen shots for version 1.0.1

Fullproduct_front.png
Basic GUI

The following screenshots are the old design but the functionality is the same.
screenshot7.png
GUI with license file generated

Screenshot3.png
Sample license files
InstallationUnzip package and run exe file…
Using the applicationThere 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...
UninstallingDelete files...
Known IssuesNo 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 AM by josant, Reason: Updated reference to latest version, »

JavaJones

  • Review 2.0 Designer
  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,739
    • View Profile
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing
« Reply #1 on: December 29, 2011, 05:31 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

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing
« Reply #2 on: December 29, 2011, 05:47 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?

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing
« Reply #3 on: December 29, 2011, 05:55 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!  :D

tranglos

  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 1,081
    • View Profile
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing
« Reply #4 on: December 29, 2011, 08:15 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.

cranioscopical

  • Friend of the Site
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 4,776
    • View Profile
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing
« Reply #5 on: December 29, 2011, 08:41 PM »
Thanks for your contribution, josant!

JavaJones

  • Review 2.0 Designer
  • Charter Member
  • Joined in 2005
  • ***
  • Posts: 2,739
    • View Profile
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing and Early Beta
« Reply #6 on: December 30, 2011, 03:29 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

kyrathaba

  • N.A.N.Y. Organizer
  • Moderator
  • Joined in 2006
  • *****
  • Posts: 3,200
    • View Profile
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing and Early Beta
« Reply #7 on: December 30, 2011, 07:44 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.

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Late Pledge: Simple Software Licensing and Early Beta
« Reply #8 on: December 31, 2011, 04:05 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!

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 After-Deadline Release: Simple Software Licensing
« Reply #9 on: January 02, 2012, 10:02 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...

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #10 on: January 03, 2012, 04:08 PM »
A Screencast of the application will be posted on the 4th of January.

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #11 on: January 04, 2012, 11:39 AM »
I've posted a screencast demo on youtube:

License Manager Demo

kyrathaba

  • N.A.N.Y. Organizer
  • Moderator
  • Joined in 2006
  • *****
  • Posts: 3,200
    • View Profile
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #12 on: January 04, 2012, 07:25 PM »
Nice demo!

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #13 on: January 04, 2012, 08:20 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.

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #14 on: January 17, 2012, 11:05 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  :up: 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.

cranioscopical

  • Friend of the Site
  • Supporting Member
  • Joined in 2006
  • **
  • Posts: 4,776
    • View Profile
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #15 on: January 17, 2012, 02:21 PM »
First time posting anything to Youtube.
Nicely done. Simple, clear, informative.  :up:

40hz

  • Supporting Member
  • Joined in 2007
  • **
  • Posts: 11,859
    • View Profile
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #16 on: January 17, 2012, 02:47 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.

 :)

Deozaan

  • Charter Member
  • Joined in 2006
  • ***
  • Points: 1
  • Posts: 9,778
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #17 on: January 19, 2012, 06:15 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. :Thmbsup:

Nice work!

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #18 on: January 21, 2012, 10:55 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 :tellme: 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.

 :)

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #19 on: January 21, 2012, 10:57 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. :Thmbsup:

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...

Deozaan

  • Charter Member
  • Joined in 2006
  • ***
  • Points: 1
  • Posts: 9,778
    • View Profile
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #20 on: January 21, 2012, 08:30 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. :)

josant

  • Participant
  • Joined in 2011
  • *
  • Posts: 19
    • View Profile
    • NSilverbullet
    • Read more about this member.
    • Donate to Member
Re: NANY 2012 Release: Simple Software Licensing
« Reply #21 on: January 22, 2012, 03:02 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?"
...