Virtual Machine License Validation Module
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Software companies face challenges in effectively restricting trial versions of their applications, as existing methods like date-based or time-based licensing can be easily circumvented by users, and require development of code for native system resources for credential-based restrictions.
Innovation Solution
A system and method for managing the execution of application modules on a virtual machine using a license validation module, which stores and secures license registration and status information, and communicates with a virtual machine to authorize execution based on valid license information, preventing unauthorized access and circumvention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If date-based or time-based licensing methods are used, then license restriction functionality is provided, but the licensing system can be easily circumvented by users
Solution Approach 1:
The patent introduces a licensing server as an intermediary component between the application and the user's computing device. The server validates license status by receiving device identification information, determining whether the device is authorized, and returning validation results. This server-based intermediary prevents direct client-side manipulation of license timing mechanisms, thereby preventing circumvention while maintaining reliable license restriction functionality.
2Reliability
If credential-based access restriction is implemented, then secure access control is achieved, but developers must write code for native system resources
Solution Approach 1:
The patent employs a licensing server as an intermediary that handles credential validation and device authorization. Instead of requiring developers to implement native system code for access control, the server receives device identification information, determines authorization status, and returns validation results. This intermediary approach maintains secure access control while significantly reducing code development complexity.
Solution Approach 2:
The licensing server provides universal license validation functionality that can be applied across different application types and platforms. The server handles various device identification methods and authorization scenarios through a single unified system, eliminating the need for developers to write platform-specific native code for each implementation.
3Reliability
If trial version restrictions are implemented, then product licensing control is maintained, but the restrictions can be circumvented by setting back the system clock
Solution Approach 1:
The patent uses a licensing server as an intermediary that receives device identification information and determines authorization status independently of the user's local system clock. The server validates license status based on server-time references and authorization decisions, making the trial license control resistant to clock manipulation while maintaining reliable licensing control.
Data Source
AI summary
A computer readable medium includes instructions for managing execution of an application module by receiving a request to execute the application module, where the application module is configured to execute on a virtual machine, retrieving license registration information and license status information associated with the application module, communicating the license registration information and the license status information to a license validation module to obtain an authorization response, where the license validation module is associated with the application module and registered with the virtual machine, and executing the application module, if the authorization response indicates that the license registration information and the license status information are valid.


