Showing results for 
Show  only  | Search instead for 
Did you mean: 

How do you prevent a VM from spoofing a Device ID?

How do you prevent a VM from spoofing a Device ID?


Use case: You've enabled VM detection using the API function, then ran a series of tests and proved that you can get a license for a Feature without increasing your feature licensing count in FNO by spoofing a Device ID like a MAC address.

The free license occurs because the regenerative factor, so when a 2nd device with the same Device ID asks for a license, it grants it, but still only sees 1 license count in use (rather than 2 or more).

What is the suggested best practice to not permit VM's to spoof a Device ID? Would it be to make a VM device ID a combination of the virtual MAC Address as well as the UUID or similar GUID type ID that is assigned to each VM by the VM host manager software? If so, how would you prevent the UUID from being spoofed as well? The host manager programs (such as VMware and Mac Parallels) do not seem to allow the user to set the UUID, though it may be possible that it can be done.

What is the best practice to prevent a VM from spoofing a Device ID?


We have a contrib library for obtaining the VM_UUID for 32 and 64 bit Linux and Windows, called FlxContribVmUuid-<platform>-<version>.

As for the host ID, if you're using the XT kits, we provide API functions that return a list of the host Ids we detect on the system. For Java, it?s ILicenseManager.getHostIds(). For C-XT, it?s FlcGetHostIds(), etc?

Additional Information

Or, as a possible more outside the box solution (don't have an example for this - it's just a theory), you could perhaps create a Producer-defined Hostids based on the Microsoft Generation ID which will change when a machine has been cloned.
Was this article helpful? Yes No
No ratings
Version history
Last update:
‎Nov 12, 2018 09:18 PM
Updated by: