A method and system for activating and obtaining a license for a software
product is disclosed. A local license is obtained from a storage medium
of the software product and is stored with the software product on a
user's computer. The local license allows for one of multiple license
types to be activated from a single software product. The user enters a
product key containing a channel ID. The compact disk or other storage
medium is searched for the appropriate local license for the channel ID.
The local license includes a MSIID, a channel ID range for each supported
license type, a license type for each channel id range, and an optional
product expiration date for the license type. The license type is
determined by looking up the product key's channel id in the local
license's channel id range table. If activation is required based on the
license type, then an installation ID including a product ID (PID) and a
hardware ID (H/W ID) are transmitted to an activation authority. The
activation authority uses the PID to determine whether the software
product has been activated before and uses the channel ID to determine
the type of backend license to grant. If the PID is found in the
database, the activation authority applies various unlocking rules to
determine whether or not the backend license should be issued and, if so,
the he activation authority transmits a backend license.