| TpmIdentifierAlgorithm Class |
Namespace: com.softwarekey.Client.Licensing
The TpmIdentifierAlgorithm type exposes the following members.
| Name | Description | |
|---|---|---|
| TpmIdentifierAlgorithm |
Creates a new TpmIdentifierAlgorithm object.
|
| Name | Description | |
|---|---|---|
| Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
| Finalize | Allows an Object to attempt to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.) | |
| GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
| GetIdentifiers |
Generates a generic list of TpmIdentifier objects based on the system's TPM hardware.
(Overrides SystemIdentifierAlgorithmGetIdentifiers.) | |
| GetType | Gets the Type of the current instance. (Inherited from Object.) | |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
| ToString | Returns a String that represents the current Object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
| m_algorithmId | Static member for tracking default identifiers generated (Inherited from SystemIdentifierAlgorithm.) | |
| thisAlgorithmId |
The name of this algorithm used for identification and logging.
|
The TpmIdentifierAlgorithm extracts the public endorsement key from the system's TPM hardware to create a unique, tamper-resistant system identifier.
TPM (Trusted Platform Module) is a dedicated security chip that provides hardware-based security features. The endorsement key (EK) is a unique cryptographic key that is burned into the TPM during manufacturing and cannot be changed, making it an excellent identifier for the hardware.
This algorithm supports both TPM 1.2 and TPM 2.0 specifications, automatically detecting and using the appropriate version available on the system. It gracefully handles systems without TPM hardware by returning an empty list of identifiers.
This System Identifier should not be used as the sole means of system identification as the presence of a TPM chip is not guaranteed on all systems. Always combine this algorithm with other System Identifier algorithms to ensure reliable identification. |
TPM availability depends on several factors: - Hardware support: Not all computers have TPM chips - BIOS/UEFI settings: TPM may be disabled in firmware settings - Operating system: TPM services must be enabled in Windows - Virtualization: VM environments may not expose TPM to guests |
In corporate environments, TPM chips are sometimes cleared or re-provisioned during system reimaging, which would change the endorsement key. |