3.1.5.9 DPSP_MSG_SIGNED

When a DirectPlay 4 client receives a DPSP_MSG_SIGNED message (section 2.2.52), it MUST verify that the signature of the Message field matches the Signature field.

If bit 2 in the Flags field is equal to 1 (0x00000004), then the Message field MUST first be decrypted by using the encryption algorithm specified in section 3.1.1 and designating the Session.SessionKey as the encryption key.

If the Flags field is equal to 0x00000001, then the Signature field MUST be interpreted as a NTLMSSP_MESSAGE_SIGNATURE structure, as specified in [MS-NLMP] section 2.2.2.9.

If the Flags field is equal to 0x00000002, then the Signature field MUST be interpreted as a signature block created by the signature algorithm, as specified in section 3.1.1.

Once the Message field has been validated, then the DirectPlay client MUST reinterpret the Message field as if it were received from the sender.