Handling Multiple License Keys and Product Licenses

A Charon host system can have access to several local and remote license keys. Each license key can contain one or more product licenses.

The Charon emulator products can only use one active license at one time. Without additional configuration, they cannot make decisions about which product license or license key to use. If there is more than one available license key, the default license key will be used. The default license key is determined by the Sentinel software. As this can lead to undesirable effects, newer Charon emulator products have configuration parameters that allow the definition of a primary (or production) and a secondary (or backup) key, or the creation of a list of license keys or product licenses sorted by priority.

The following sections describe the options available to achieve a more deterministic license selection. If only one license is available, either locally installed or via the network, this section does not apply.

Please note: for Charon-AXP/VAX before version 4.9, Charon-PAR before version 1.10, and other older Charon products: the parameters described in this section can only be used to define a primary key and a backup key, or to specify the correct key if there is a conflicting license for a different Charon product on the same system. It is not possible with these versions of Charon to combine a local license (black dongle) with other licenses (local or network) to increase the number of concurrent instances of the same Charon product on one host system. Newer versions allow a more flexible use of multiple licenses. Both variants are described in the following sections.

Contents

Backup License Key Characteristics


It is strongly recommended to order a backup key to recover immediately from damage or loss of the main license key. A backup license key can also help in situations where the Charon host hardware fails and the software must be moved to a different system, thus invalidating the original software license.

Backup keys typically use a counter (integer) value programmed in the key. This integer value corresponds to a number of hours the Charon software is allowed to run. Each time the Charon software checks the license (at start and then every hour), the value is decreased (by 1 hour). Please note that backup keys can have additional restrictions: 

  • The runtime is typically limited to 720 hours (30 days). This is the time available to get a replacement license from Stromasys.
  • A backup license key may be valid only until a certain date.

Please note: if you start and stop the emulator frequently (e.g., frequent runs with a duration of under one hour), the runtime may be significantly less than 30 days, because the license check during the start of an emulator will reduce the counter by one.


Support for Multiple License Keys and Product Licenses

The following table provides an overview of the license key and product license ID parameters supported by the different products as well as the names of the applicable configuration parameters. The behavior of the system when such parameters are defined is described in the next section System Behavior Depending on Parameter Settings.

ProductConfiguration Parameters

Charon-AXP/VAX on Linux and 

Charon-AXP/VAX/PDP on Windows

before version 4.9

Options to define primary and backup license key:

set session license_key_id[0]=<primary-key-id>

set session license_key_id[1]=<secondary-key-id>

Charon-AXP/VAX on Linux and 

Charon-AXP/VAX/PDP on Windows

starting with version 4.9

Option to define a prioritized list of license keys:

set session license_key_id = "<key-id-prio1>, <key-id-prio2>,...[,any]"

Option to define a prioritized list of product license IDs:

set session license_id = "<lic-id-prio1>, <lic-id-prio2>,..."

Charon-SSP on Linux

starting with version 1.4.1

Options to define primary and backup license key:

regular_key_id = <primary-key-id>

backup_key_id = <secondary-key-id>

Charon-AXP/SMA on Windows

starting with version 2.3.3

Options to define primary and backup license key:

regular_key_id <primary-key-id>

backup_key_id <secondary-key-id>

Charon-PAR on Linux

before version 1.10

Options to define primary and backup license key:

primary_license <primary-key-id>

secondary_license <secondary-key-id>

Charon-PAR on Linux

starting with version 1.10

Define a prioritized list of license keys:

license_key_id <key-id-prio1>

license_key_id <key-id-prio2>   (more than two key ID entries are possible) 

license_use_any_key false|true    (optional parameter, default = false)

Option to define a prioritized list of product license IDs:

license_id "<lic-id-prio1>"

license_id "<lic-id-prio2>"              (more than two entries are possible)


The parameters listed above must be added to the emulator configuration file and the emulator must be restarted for the parameters to become active. Please refer to the respective product user's guides (Documentation) for more information about modifying configuration files.


System Behavior Depending on Parameter Settings

This section describes how Charon emulator products behave in the presence or absence of the configuration parameters specifying how multiple licenses are to be used.

Relevant Parameters in License View Output

The two parameters identified by license key id and product key ID can be viewed in the output of hasp_srm_view (Linux) and hasp_view (Microsoft Windows). The system behavior when including these parameters in the emulator configuration file is described below. The following image shows a sample of the parameters in question:


Old Behavior (Only Primary and Secondary Keys are Possible)

Depending on the presence of the primary and/or secondary license key IDs in the configuration file, the emulator system behaves differently:

  1. No keys are specified
    The Charon software performs an unqualified search for any suitable key. If no suitable key is found, the emulator exits.

  2. Both keys are specified
    The Charon software performs a qualified search for the primary license key. If it is not found, the system performs a qualified search for secondary license key. If it is not found, the emulator exits.

  3. Only the primary key is specified
    The Charon software performs a qualified search for the primary license key. If it is not found, the system performs an unqualified search for any suitable key. If none is found, the emulator exits.

  4. Only the backup key is specified
    The Charon software performs an unqualified search for any suitable key. If no suitable key is found, the emulator exits.

If the primary key is no longer present, the Charon software switches to the secondary key. If the primary key becomes available again, the system reverts automatically to this key to avoid depleting the backup key counters unnecessarily.

New Behavior (License Keys and Product Sections can be Prioritized)

Newer Charon emulator products (e.g., version 4.9 of Charon-AXP/VAX and Charon-PAR version 1.10 and higher) have parameters to specify

  • either a prioritized list of license key IDs (i.e., IDs of dongles or software licenses), or
  • a prioritized list of product license IDs (i.e., IDs of specific product sections stored on a license key).

Depending on the settings of these parameters, the emulator system behaves differently as described below.

License Key ID Parameter

  1. No keys are specified
    The Charon software performs an unqualified search for any suitable key. If no suitable key is found, the emulator exits.

  2. One or more keys are specified without the keyword "any" or "license_use_any_key" set to "true"
    The Charon software performs a qualified search for the first (highest priority) key in the list.  If it is not found, the emulator performs a qualified search for the next key in the list. If none of the keys in the list is found, the emulator exits.

  3. One or more keys are specified with the keyword "any" or "license_use_any_key" set to "true"
    The Charon software performs a qualified search for the first (highest priority) key in the list.  If it is not found, the emulator performs a qualified search for the next key in the list. If none of the keys in the list is found, the emulator performs an unqualified search for any suitable key. If no suitable key is found the emulator exits.

If the highest priority key is no longer present, the Charon software switches to the next key in the list. If a higher priority key becomes available again, the system reverts automatically to this key to avoid depleting backup key counters unnecessarily.

Product License ID Parameter

  1. One or more product license IDs are specified
    All available license keys are searched for a product section with the product specified license IDs. The first entry in the product license ID list has the highest priority. If a product section with this ID is found, it is used by the emulator. If no product section with this ID is found, the next product license ID in the list is used (if found during search). If none of the specified product license IDs are found, the emulator exits.
  2. One or more product license IDs and one or more license key IDs are specified
    Similar to the procedure described in point 1. However, only the product licenses specified in the list of license key IDs are searched for the relevant product license IDs (unless the keyword any is specified). Please note: this option can currently be configured but will only be fully supported in a later product version.

Additional Information

The article Charon licensing options on the Stromasys web-page provides additional information for licenses in complex environments.

  • Have 2 licenses per Charon instance – a production and a backup key.
  • Configure them explicitly in the Charon configuration files.
  • Mix the license types. Physical dongles are recommended as backup licenses, because they are much more flexible in all disaster recovery scenarios. The production license can be served over the network or be a software license.



© Stromasys, 1999-2024  - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described.