TurboActivate for VPS installations?

I have a product that runs in the context of another application - it is a C# assembly that is loaded by the other application at run-time.

I have no control over what type of machine the application might be loaded on. In fact, in this industry, the use of VPS is wide-spread. I have no access to the particular VPS on which it might be running.

Do you have a software protection solution to cover the VPS case? Again, I cannot load a seperate process to run on the VPS LAN as it seems is required for TurboFloat.

Thanks

Do you have a software protection solution to cover the VPS case?

A VPS is just another name for a Virtual Machine. OK, there's a bit more to VPS, but the basis of a VPS is to run multiple "instances" of an operating system on one computer.

So, yes, TurboActivate can run on a VPS -- TurboActivate will activate like it was on any other computer. And VPSs tend to reflect the underlying hardware rather. This is in contrast to certain VM configurations in which copied instances on separate hardware can be made to look like they're running on identical hardware.

Also, it's very unlikely, and frankly silly, for 1 customer to be running your app on multiple VPS instances on a single piece of hardware.

So, just enable VM activations for your product version and everything will just work. Or, enable the VM activations on a case by-case basis (i.e. per product key).

Tell me if that helps.

Thanks for the response.

My concerns about licensing in the VPS environment are two-fold:

1. A customer shares his license key with another individual on the same VPS so both can run under one subscription.

2. A customer uses two VPS sessions on the same server to run two copies of the software simultaneously.

I admit that both are unlikely, but neither are silly. Subscriptions are based on quantity and a user who can use his key on more than one machine (be it virtual or not) can circumvent our sales model. It would take a pretty unscrupulous individual (or individuals) to implement either of these scenarios, but it is against these people specifically that we act in the first place.

Using LimeLM and TurboActivate, are we covered in these scenarios?

Thanks

1. A customer shares his license key with another individual on the same VPS so both can run under one subscription.

2. A customer uses two VPS sessions on the same server to run two copies of the software simultaneously.

Yes, both of these are possibilities. The only solution is to use TurboFloat. They'll just have to install the TurboFloatServer on a piece of hardware somewhere on their network. It doesn't need a lot of resources (it runs fast and uses as little memory as possible).

Using LimeLM and TurboActivate, are we covered in these scenarios?

Just disallow VM activations and require customers on VPSs to use TurboFloat. Then yes.

Thanks for the response.

I still have the problem I identified in the original post: "I have no control over what type of machine the application might be loaded on." The customer is just as likely to be using a VPS in Singapore as a laptop in New York. I will be unable to mandate a TurboFloat installation unless it can be run inside the same VM in which I am installing the software.

Do you have any ideas to help me with this?

Thanks

Well, you have 2 choices:

  1. Allow VM activations and use just TurboActivate.
  2. Disallow VM activations and use TurboActivate for real computers and TurboFloat for VMs / VPSs.

If you want to get paid for every copy of your software use 2. If you can't use 2 because a customer can't / doesn't want to run TurboFloat on a real computer then use 1. Those are the only 2 choices.

because a customer can't / doesn't want to run TurboFloat on a real computer then use 1. Those are the only 2 choices.

*Can* a customer run TurboFloat in his VM on a VPS and have it affect all the other VMs on the machine?

*Can* a customer run TurboFloat

"TurboFloat" consists of 2 parts: TurboFloat (the part you include with your app) and TurboFloatServer (the part that runs on a computer somewhere on a network). TurboFloat (the part you include with your app) can be run on a VM / VPS. That's part of what it was designed for. But I suspect you're talking about TurboFloatServer.

In which case yes, you can, but you shouldn't run TurboFloatServer on a VM. Running TurboFloatServer on a VPS both defeats the purpose of TurboFloat (at least for the purpose of restricting VM installations). If the user can't run TurboFloatServer on a real computer then they should just use TurboActivate.

One more clarification on using TurboActivate on a VPS:

When two customers are using our product in two different VPS's on the same physical machine (without TurboFloat), do calls into the TurboActivate dll (like IsGenuine and GetPKey) function correctly for each customer?

What exactly is the potential licensing issue of running on a VPS?

Well, you've already listed the issues. We've also covered them in "Licensing from inside a virtual machine or hypervisor". VPSs are a slightly more restricted variant of VMs (that is, VPS are designed to reflect the base hardware -- so moving a VPS to a different machine will mean the VPS instance will have a different hardware fingerpring -- that of the new machine).