2.2.2.4 Crypt Key PDU (SNDCRYPT)
The Crypt Key PDU is a PDU used to send a 32-byte key from the server to the client. The key is used to encrypt some audio data sent over UDP. This PDU MUST be sent using virtual channels.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Header |
|||||||||||||||||||||||||||||||
Reserved |
|||||||||||||||||||||||||||||||
Seed (32 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
Header (4 bytes): A RDPSND PDU Header (section 2.2.1). The msgType field of the RDPSND PDU Header MUST be set to SNDC_CRYPTKEY (0x0008).
Reserved (4 bytes): A 32-bit unsigned integer. This field is unused. The value is arbitrary and MUST be ignored on receipt.
Seed (32 bytes): A 32-byte symmetric key used for encryption and decryption of audio data sent over UDP. A random number SHOULD be used as the symmetric key. When a Wave Encrypt PDU is sent, the key MUST be used to encrypt the audio data. When a UDP Wave PDU is sent with a UDP Wave Last PDU, there is no encrypted audio data and the key MUST be used instead to generate a signature.