2.2.2.3 Client License Information (CLIENT_LICENSE_INFO)

The Client License Information packet is sent by a client that already has a license issued to it in response to the Server License Request (section 2.2.2.1) message.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

PreferredKeyExchangeAlg

PlatformId

ClientRandom (32 bytes)

...

...

EncryptedPreMasterSecret (variable)

...

LicenseInfo (variable)

...

EncryptedHWID (variable)

...

MACData (16 bytes)

...

...

PreferredKeyExchangeAlg (4 bytes): The content and format of this field are the same as the PreferredKeyExchangeAlg field of the Client New License Request (section 2.2.2.2) message.

PlatformId (4 bytes): The content and format of this field are the same as the PlatformId field of the Client New License Request message.

ClientRandom (32 bytes): The content and format of this field are the same as the ClientRandom field of the Client New License Request message.

EncryptedPreMasterSecret (variable): The content and format of this field are the same as the EncryptedPreMasterSecret field of the Client New License Request message.

LicenseInfo (variable): A Licensing Binary BLOB structure (see [MS-RDPBCGR] section 2.2.1.12.1.2) of type BB_DATA_BLOB (0x0001). This BLOB contains the CAL (see the pbLicenseInfo field in section 2.2.2.6.1) that is retrieved from the client's license store.

EncryptedHWID (variable): A Licensing Binary BLOB structure (see [MS-RDPBCGR] section 2.2.1.12.1.2). This BLOB contains a Client Hardware Identification (section 2.2.2.3.1) structure encrypted with the licensing encryption keys (see section 5.1.2), using RC4 (for instructions on how to perform the encryption, see section 5.1.3).

MACData (16 bytes): An array of 16 bytes containing an MD5 digest (Message Authentication Code (MAC)) that is generated over the unencrypted Client Hardware Identification structure. For instructions on how to generate this message digest, see section 5.1.5; for a description of how the server uses the MACData field to verify the integrity of the Client Hardware Identification structure, see section 3.1.5.1.