| TpmIdentifier Class |
Namespace: com.softwarekey.Client.Licensing
The TpmIdentifier type exposes the following members.
| Name | Description | |
|---|---|---|
| TpmIdentifier |
Creates a new TpmIdentifier object with an auto-generated name.
| |
| TpmIdentifier(String) |
Creates a new TpmIdentifier object, initialized with the TPM public key value.
| |
| TpmIdentifier(String, String) |
Creates a new TpmIdentifier object, initialized with a specific name and TPM public key value.
| |
| TpmIdentifier(String, String, String) |
Creates a new TpmIdentifier object, initialized with the name, value, and pre-computed hash.
|
| Name | Description | |
|---|---|---|
| Name | Gets or sets the name of the system identifier. (Inherited from SystemIdentifier.) | |
| Type |
Gets this system identifier's type ("TpmIdentifier").
(Overrides SystemIdentifierType.) | |
| Value | Gets or sets the plain-text value of the system identifier. (Inherited from SystemIdentifier.) | |
| ValueHash | Gets or sets the SHA-512 hash generated from the Value. (Inherited from SystemIdentifier.) |
| Name | Description | |
|---|---|---|
| Equals | Compares two SystemIdentifier objects to see if they identify a the same component. (Inherited from SystemIdentifier.) | |
| 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 SystemIdentifier.) | |
| GetType | Gets the Type of the current instance. (Inherited from Object.) | |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
| ToActivationDataString | Generates an XML formatted string of the system identifier, formatted for SOLO Server's XmlActivationService web service. (Inherited from SystemIdentifier.) | |
| ToString | Generates an XML formatted string of the SystemIdentifier. (Inherited from SystemIdentifier.) | |
| ToXml | Generates an XmlDocument of the SystemIdentifier. (Inherited from SystemIdentifier.) |
| Name | Description | |
|---|---|---|
| m_name | The unique identifier name (Inherited from SystemIdentifier.) | |
| m_tpmIdentifierId |
The static member for tracking default identifiers generated.
This ensures each TpmIdentifier gets a unique default name if not specified.
| |
| m_type | The type of identifier (Inherited from SystemIdentifier.) | |
| m_value | The identifier value (Inherited from SystemIdentifier.) | |
| m_valueHash | The hash of the identifier value (Inherited from SystemIdentifier.) |
The TpmIdentifier uses the public endorsement key from the system's TPM hardware as a unique identifier. This provides a highly secure, tamper-resistant hardware identifier that cannot be easily changed or spoofed.
TPM (Trusted Platform Module) is a dedicated microcontroller designed to secure hardware through integrated cryptographic keys. The endorsement key is a unique RSA key pair that is burned into the TPM chip during manufacturing and cannot be changed. This makes it an excellent choice for system identification.
This identifier supports both TPM 1.2 and TPM 2.0 specifications, automatically detecting and using the appropriate version available on the system.
TPM availability varies by system. Not all computers have TPM hardware, and even when present, it may be disabled in BIOS/UEFI settings. The algorithm will return an empty list of identifiers when TPM is not available. |
Some virtualization environments may not expose TPM hardware to guest operating systems, or may provide virtualized TPM instances that could change between VM migrations. |