Memory

>What is a Memory File?

>Comparison of Default and User-Created Memory

>Lifecycle Stages of a Memory File

>Defining a User-Created Memory File

>Memory File Attributes

>Actions for Memory Files

New to Sentinel EMS?
See How to Use Sentinel EMS?

What is a Memory File?

A memory file is a data file that is used for storing strings in a Sentinel key. Usage examples might include migrating existing license data to Sentinel EMS, storing homegrown license data, or usage counters.

You can associate a memory file with any product in the same namespace.

Sentinel EMS provides two types of memory files for different needs—Default and User-Created.

User-created and Default memory files on Memory page

Comparison of Default and User-Created Memory

  Default Memory Files User-Created Memory Files
Description

Product-specific, out-of-the-box memory files that you can use as a basis for minimal memory data needs in Sentinel keys.

Default memory files have a very small file size.

Their data cannot be shared between products.

Standalone memory files that are defined per namespace and then added to one or more products. This enables you to use the same user-created memory files in multiple products.

Useful for large data content, pre-defined content, or multiple files. You can define and associate user-created memory files as needed.

Size and file attributes

Each default memory file has a fixed file size, which is much smaller than the size available for user-created memory files*.

>Default (Read/Write) 4032 bytes**

>Default (Read-Only) 2048 bytes**

You can associate a maximum of one read-only memory file and one read-write memory file in each product.

Each file size is customizable, enabling you to optimize the use of available space. The overall space available for user-created memory files is much larger than the space available for default memory*.

Each user-created memory file can contain read-only, read-write, or write once memory, providing you with more options than default memory. This lets you "mix-and-match" memory files with the same or different "read" attributes. In addition, "write once" memory enables you to convert a read-write file to a read-only file after a single edit.

Supported Sentinel Keys

Default memory files are supported for:

>Sentinel SL AdminMode keys

>Sentinel SL UserMode keys

>Sentinel HL (Driverless configuration) keys (excluding Sentinel HL Basic keys)

>Sentinel HL (HASP configuration) keys (excluding Sentinel HL Basic keys)

User-created memory files are supported for:

>Sentinel SL AdminMode keys

>Sentinel SL UserMode keys

>Sentinel HL (Driverless configuration) keys (excluding Sentinel HL Basic keys)

When do you define memory files?

You define default memory files when creating or editing a product.

You can set the text value when associating a default memory file with a product as described in Associate Memory Files.

If overwrite is allowed, the order taker can set the text when creating an entitlement.

You define user-created memory files in advance.

Then you can associate one or more of your user-created memory files when creating or editing a product.

If overwrite is allowed, the order taker can update the text when creating an entitlement.

For best results

>Consider the size of each file when determining the data to use.

>When both default memory files are associated with a product, you must carefully set the offset and size of each file to ensure that the files do not overlap and overwrite each other.

>Include a single piece of data in each user-created memory file, such as a variable or a constant.

>Set the file size to the maximum required for the data in that file. Smaller files generate faster than larger files.

>For large amounts of data, consider the Sentinel key type when determining the maximum file size. For details, see Size (Bytes).

*For details on the memory file sizes available for the various Sentinel HL keys, see Sentinel HL Data Sheet.

Lifecycle Stages of a Memory File

The Deployed attribute indicates whether a memory file is included in a product or not.

>Deployed: The memory file is included in a product.

>Not Deployed: The memory file is not included in a product.

 

Defining a User-Created Memory File

You can create memory files for use with one or more products in a namespace. For example, you may require a larger file size than available in the default memory files, or you may need to include multiple memory files in a product. After a memory file is created, you can associate the memory file with a product.

To create a memory file:

1.From the navigation pane, select Catalog > Memory to view the Memory page.

2.Click the Add Memory button.

3.Fill in the memory file attributes.

Add Memory page

4.Click Save. The Add Memory page closes, and the memory file is added to the list on the Memory page.

Memory File Attributes

NOTE   The combined value of Text and Offset must not exceed the memory file Size (Bytes).

Attribute Description Required/Optional Valid Values
Namespace (Visible only if more than one namespace is available.)

The namespace allotted by Thales. (In Sentinel LDK, this is known as batch code.)

Required

>Any namespace in the list that is allocated for the required enforcement

File Name

A descriptive name of the memory file.

Required

> 1-50 characters

>Must be unique

File ID

Integer that identifies the memory file and is used by your application to refer to that file.

Each memory file associated with the same product must have a unique File ID.

Required

Integer from 1-65471

Can be:

>An automatically generated, sequential file ID

>Your own numeric identifier

File Type File permissions for the data stored in the memory file. Required

One of the following:

>Read Only: (Default) Data that cannot be changed. The data is read at runtime when the deployed, protected application is running.

Usage examples: The product ID, text to be used in a “Welcome” message, and fixed threshold values for counters.

>Read/Write: Data that can be updated at runtime when the deployed, protected application is running.

Usage example: Dynamic values for counters

>Read/Write Once: Data that can be updated only once at runtime when the deployed, protected application is running. After a successful update, the memory file becomes read-only.

Description Description of the memory file. Optional Maximum: 500 characters
Text

The memory data in text format.

NOTE   To insert hexadecimal data instead of text, use the REST API for memory files.

Optional

You can also add or edit text when:

>associating the memory file with a product as described in Associate Memory Files.

>configuring an entitlement—if the Allow Overwrite check box is selected when creating the product containing the memory file.

Maximum:

User-defined memory:

>Sentinel SL keys: 65535 bytes

>Sentinel HL key version 6.x keys: 65535 bytes

>Sentinel HL key version 4.x keys: 25944 bytes

Default memory:

>Default (Read/Write): 4032 bytes*

>Default (Read-Only): 2048 bytes*

Additional Attributes

Ref ID 1

Reference identifier that identifies the feature in an external system.

Optional Maximum: 100 characters
Ref ID 2

Reference identifier that identifies the feature in an external system.

Optional Maximum: 100 characters
Offset

The hexadecimal starting point of the memory file in bytes.

Optional

If not specified, the file offset is assigned automatically.

A hexadecimal number.

Default: 0

Size (Bytes)

Size of the memory file in bytes.

Optional

If not specified, the file size is assigned automatically based on the amount of data that is written to the file.

Maximum:

User-defined memory:

>Sentinel SL keys: 65535 bytes

>Sentinel HL key version 6.x keys: 65535 bytes

>Sentinel HL key version 4.x keys: 25944 bytes

Default memory:

>Default (Read/Write): 4032 bytes*

>Default (Read-Only): 2048 bytes*

Actions for Memory Files

Action Description
Edit button Edit

Makes the data file editable so you can update the data in an existing memory file. The editable attributes depend on the lifecycle stage of the memory file. (Available only for non-default memory files.)

>Deployed. You can edit: Description, Ref ID 1, Ref ID 2

>Not Deployed. You can edit all details.

Delete button Delete

Deletes the memory file. (Available only for non-default and non-deployed memory files.)

End of Life button End of Life

Marks a deployed memory file as End of Life (EOL) to make the file obsolete. You cannot add EOL memory files to products, but EOL memory files may still be included in products that are already deployed.

You can restore an EOL memory file by clicking Restore Complete button. This makes the memory file available for products. (Available only for non-default memory files.)