Protecting a "virtual appliance"

One of my products is sold as a VMware "virtual appliance" built using VMware studio and normally distributed as a virtual machine image that can be loaded into VMware ESX or VMware Workstation.

If I license the proprietary applications in this VM using LimeLM, will the hardware fingerprint detect that the VM has been moved to an indentical "host" machine? I know that VMware passes the host CPU information to the Guest OS, so LimeLM should pick up on the VM being moved to a different host machine.

The situation I am trying to guard against is a reseller buying 5 identical VMware servers each with the same IP address/network configuration. The first server is gets my appliance software deployed and licensed legitimately. The other 4 servers are then loaded with a copy of the activated VM (MAC address remains the same, all HDD info and volume info are the same). Each server would then run at a different location, so they are never on a LAN together at the same time.

Would this scenario trigger a fail the IsActivated() or IsGenuine() check?

This is a good question. As of version 3.2.x TurboActivate detects if you're using a VM but doesn't do anything about it. Sometimes VMs have different "fingeprints", sometimes VMs have identical fingerprints.

We've gotten a number of feature requests surrounding the topic of Virtualization and how to use hardware-locked licensing effectively in VMs.

The good news is in TurboActivate 3.3 we're making this easy. In TA 3.3 you'll have the option whether to allow or restrict users from activating (or use trials) on a VM. If you disallow a user to run on a VM then you can force them to use the floating license server, TurboFloat, coming out at the same time as TA 3.3.

With the floating license server you'll be able to sell your software to be used on VMs while also being able to strictly control how many times they can be used.

Also, to answer the likely followup question: we're trying to get TurboFloat and TA 3.3 out by the end of September.

Tell me if this helps.

Floating licenses are a definite possiblity for some of our virtual appliance customers. Those that run multiple VM instances would probably prefer it to a normal hardware fingerprint + activation.For smaller installations with only one instance of the VM, they don't like the requirement to run a license server very much (this is how we currently handle virtual appliances).

I was hoping for a "magic" solution 🤣 that somehow guarantees a unique fingerprint on virtual machines (even if it was VMware only or Hyper-V only), but I understand that isn't totally feasible without the hypervisor providing some crucial bit of uniqueness to add to the "fingerprint".