Software licensing is often a contentious issue.

Balancing the need for developers to protect their products while at the same time providing a simple and flexible system for the end user is not easy.

Cantabile 3 introduces a new licensing system and this post explains the thought process behind it.

My approach to software licensing has always been to lean towards keeping things simple for the user and to generally give the benefit of doubt. Yes, I need to protect my product from piracy but there’s nothing worse than a licensing system that’s a pain to deal with.

Cantabile 2 licenses were floating licenses — once issued they could be installed on any machine. Installing the license was a little tedious — you had to copy/paste a big chunk of random looking digits but then you could basically forget about it. Most users coped with this quite well.

The problem is that on more than one occasion Cantabile was purchased on a fraudulent credit card and the serial number posted to hacker sites.

At this point the cat’s out of the bag and can’t be put back in.

My only recourse in this situation is to black-list the stolen serial numbers in subsequent builds. That’s a band-aid solution — and not a very good one.

The Alternatives

The alternatives basically fall into one of two categories — hardware dongles and online activation.

Hardware solutions are a pain — there’s nothing worse than trying to use a laptop with an ugly dongle hanging out the side. If you use the software rarely you generally need to go find the dongle and the tools for managing licenses are often terrible.

So I’ve decided to go with online activation for Cantabile 3 but I’ve put a lot of thought and effort into making it simple and fair. I’ve also taken steps to address the common criticisms of product activation.

How it Works

Here’s how Cantabile 3’s licensing works:

  • There are no longer different installations for different editions. Cantabile will automatically re-configure itself between Lite, Solo and Performer depending on which license is active.
  • On the website there is a new User Portal (well there will be soon). Through the portal you can view your licenses and receipts but you should rarely need to use it.

Installing a license on a machine with internet access couldn’t be simpler:

  1. Enter your login details into Cantabile
  2. Choose which license to use

That’s it and from then on you don’t need internet access for Cantabile to run.

If you don’t have internet access it’s a little more complicated:

  1. Click Cantabile’s “Offline Licensing” button — you’ll be shown a code
  2. Login into the portal on another machine
  3. Enter the code and choose which license you want to use
  4. The portal will generate a downloadable license file
  5. Transfer the file to the target machine and double click it to install

Addressing the Concerns

If you look at the Wikipedia page for Product Activation, you’ll see it’s not without it’s criticism. Here’s my thoughts on these:

  • “It can enforce software license agreement restrictions that may be legally invalid”.
  • Yes. But I hope that this post shows that I’m not in this to screw over my customers.
  • “the purchased product may become unusable or incapable of being (re)installed”.
  • In my opinion, this is the most legitimate concern with product activation. See below.
  • “no straightforward way to transfer the license to another person”
  • I’ve always supported resale of Cantabile licenses between users. In fact activation better supports this as I can more reliably ensure the previous owner is no longer using the software. If you want to transfer your license to someone else, just email me.
  • “the activation request usually happens encrypted… the user cannot see or check if additional data from his/her machine gets transferred, creating privacy concerns”.
  • Cantabile will be using an encrypted connection for activation but will only send information relating to the activation — certainly nothing of a private nature. If you’re really worried about this you can always use offline activation.

What if Topten Software Disappears?

Of the above concerns, the most valid is: What happens if Topten Software disappears, or I abandon the project, or I die.

This is a valid concern (especially the bit about me dying). The only response I can give is to say is that I’ve put in place mechanisms to unlock the licensing if one of these scenarios occurs.

As part of this, I’ve made available Cantabile 3 KeyGen Tool. It won’t function without an associated private key file but it’s a token gesture to show that I’m taking this seriously.

The private key file is in the hands of a trusted friend and several family members with instructions on how to release it should something happen and the business needs to be shut down.

What if the Website is Down?

Another possible problem is if you need to urgently re-install the software and the Cantabile website is down.

Firstly, the activations are tied to a hash of your Windows product key. If you’re re-installing Windows and using the same Windows product key, or you’re re-installing on the same Windows installation you can backup your old license file and you won’t need to re-activate.

If you’re installing on a Windows installation for the first time, it’s probably not right before the gig anyway and it therefore shouldn’t be super urgent. The likelihood of needing to urgently re-install and the site being down at the same time are probably quite low, but in that case email me and I’ll manually issue your activation.

How Many Activations Do I Get?

Some companies have very strict limits on the number of times you can activate the software — typically three. To move a license to another machine you often need to deactivate on the old machine and re-activate on the new machine.

Cantabile’s activation mechanism won’t work like this. You won’t need to deactivate and there’s no unreasonable limit on the number of activations.

Let me re-iterate this: the intent of the activation mechanism is not to restrict properly licensed users. It’s to prevent the runaway situation that happens when a license key is stolen and published for public use.

Yes, I’ll be using heuristics to spot suspicious activation patterns but so long as you’re using the software for yourself you’ll never hit the wall.


To sum up, Cantabile 3 will be switching to a license activation mechanism. While these systems are often criticized I hope this post addresses these concerns and for most users, most of the time, licensing will be simpler and easier than before.