LIC File Documentation


Summary

A .lic file is a Software License File: data an application reads to confirm you are allowed to run it or to unlock paid features. It is not a document and has no single format — .lic is a generic extension reused by many unrelated vendors, so its MIME type is typically application/octet-stream. Some are plain text you can view in a text editor; many are signed or encrypted tokens that look like gibberish. Do not edit one: any change breaks the signature and the program rejects it.

Technical details

FeatureValue
Full nameSoftware License File
File extension.lic
MIME typeapplication/octet-stream
Format typeApplication-defined license / activation file (no single format)
DeveloperNone — a generic extension used by many vendors
CategorySettings / activation file
Internal contentsPlain text, XML, or a signed / encrypted binary token
Magic numberNone (identity comes from the issuing program, not a signature)
Common sourceFlexLM / FlexNet Publisher (Revenera), and countless per-app systems
Machine bindingOften tied to a host ID, MAC address, dongle or activation account
Editable?No — editing invalidates the cryptographic signature
Read byThe application that issued it (via its activation dialog or a licenses folder)
Inspect withA text editor, for readable (text) licenses only
Related extensions.license, .key, .dat, .reg, .cfg, .xml

What is a LIC file?

A LIC file holds licensing information that a program checks to confirm it is authorized to run or to enable paid features. There is no single .lic standard and no vendor that owns the extension. It is a generic convention that thousands of unrelated applications reuse, so what is inside a .lic depends entirely on which software issued it. The file is created by a vendor’s licensing system during purchase, activation or trial registration, and it is read by that same application, usually at startup.

Because the extension is not a format, there is no magic number to identify a .lic and no fixed byte layout to describe. You identify one by the program it belongs to, not by inspecting a header. That is the honest starting point for anything you do with the file.

Readable text versus signed tokens

Broadly, .lic files fall into two camps. Some are human-readable. The best-known example is FlexLM / FlexNet Publisher (now owned by Revenera), the licensing system behind a lot of engineering and CAD software. Its license files are plain text with recognisable lines:

SERVER myhost 001122334455 27000
DAEMON vendord /opt/vendor/vendord
FEATURE product_x vendord 2027.12 31-dec-2027 5 \
        HOSTID=001122334455 SIGN="0A1B 2C3D 4E5F ..."
INCREMENT addon_y vendord 2027.12 permanent 2 SIGN="..."

Here SERVER and DAEMON describe a network license server and its vendor daemon; FEATURE and INCREMENT lines say which product features are licensed, at which version, with an expiry date and a seat count; and the HOSTID plus SIGN fields bind the entitlement to a machine and carry a cryptographic signature that prevents editing.

The other camp is not readable. Many vendors store the license as XML, and a large share ship it as a binary or base64 token that is digitally signed so it cannot be altered. Opened in a text editor those look like random characters. That is normal, not corruption: only the issuing program knows how to parse and verify the token.

Why a license is tied to one machine

The reason you cannot simply copy a .lic to another computer is binding. The signature is computed over identifiers such as a host ID, a network card’s MAC address, a disk serial, a hardware dongle, or an activation account. When the application validates the file, it recomputes those identifiers on the current machine and checks them against the signed values. On different hardware they do not match, so the license is rejected even though the file copied fine.

This is also why editing a .lic almost always breaks it. The signature is a hash over the license contents. Change a single character, even in a readable FlexLM file, and the recomputed hash no longer matches the stored signature, so the software refuses the file. There is no way to hand-edit an expiry date or feature count and have it accepted, because defeating exactly that is the point of the signature.

How the owning program consumes it

You do not really “open” a .lic the way you open a document. You give it to the application it belongs to. In practice that means one of two things: placing the file where the vendor’s documentation specifies (often a licenses folder next to the program, or a path an environment variable points at), or using the application’s License or Activation dialog to import it. For network licensing, the .lic lives on a license server that client machines check out seats from.

If you only want to know what a text-based license contains, opening it read-only in a text editor is safe and lets you read the feature and expiry lines. Just do not save changes over it. For binary or signed tokens there is nothing meaningful to read, and no general-purpose viewer exists, because the layout is private to the vendor.

Frequently asked questions

How do I open a LIC file?

You usually give it to the program it belongs to, through that program’s activation dialog or by placing it in the vendor-specified folder. To merely inspect a text-based license such as a FlexLM file, open it read-only in a text editor, but do not save changes.

Why does my LIC file look like random characters?

Because it is a signed or encrypted binary or base64 token rather than plain text. That is normal for many licensing systems: only the issuing program can use it, and a text editor cannot display it meaningfully.

I moved to a new PC and my LIC stopped working — why?

Most licenses are bound to a machine (host ID, MAC address, disk serial) or to an activation account, so the old file is invalid on new hardware. Ask the vendor to re-host or re-activate; copying the .lic alone will not work.

References