One big customer asked me to supply my program to run within a balanced VM-images structure; I mean, the program will be recorded into an image which will be launched in "instances" to process a huge amount of data. So, we will have the same "image" running sometimes in 10 VM's (instances), sometimes in 100 VM.

My software has its license protected by "execution counter" and also by "expiration date".

My problem: how control the license once all VM's are based on a single "already installed" environment and the client does not allow any communication to the internet to get DateTime or even to write an execution-counter log?

I'm worried also that each VM may not be eligible to update its datetime accordingly. So, in the worst scenario, all VM's start with the same datetime and the same "launch counter".

Do you have any idea to solve that problem?

Thanks in advance!

  • 2
    If the question is how to control the software according to its licence by technical means, when the client controls all possible external inputs and outputs, and can control (and revert) any internal changes of state, then the simple answer is that you can't.
    – Steve
    Apr 2 '21 at 23:15
  • @Steve, thank you for your comment. Yes, I'm not seeing any solution for this problem too...
    – David BS
    Apr 2 '21 at 23:16
  • 1
    Simple: make the system require a separate hardware-key supported license server which does the counting and date-time controlling as a service for the VMs. The client has to run this server inside their own network (so no communication to the internet is necessary). There are ready-made, affordable hardware-key solutions available at the market, if necessary with inbuild clocks and memory.
    – Doc Brown
    Apr 3 '21 at 7:40
  • Hi @DocBrown, thank you. It's not clear if you're mentioning HSM with Certificate or just a simple "dongle". Dongles are not allowed there, and an HSM cannot be accessed by VM's. They utilize VM's as a "sandbox" environment - totally isolated of their own network. Really a challenge when we think how to control the license in the VM image...
    – David BS
    Apr 5 '21 at 14:13
  • 1
    Yes, I agree with you. I'm considering a way to license via perpetual term using a 5-years value (or something like this). It's really a challenge to make a SAAS in this scenario. Thank you very much @DocBrown for your time.
    – David BS
    Apr 5 '21 at 17:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.