5.6.1. Discovery and Authentication

5.6.1.1. [Critical] Unable to communicate with DomainParticipants that propagate a different authentication class_id version

Secure DomainParticipants that had different versions in the class_id of their Authentication plugin failed to communicate.

For example, if a DomainParticipant following the 1.0 DDS Security specification discovered and tried to authenticate a remote DomainParticipant following version 1.2 of the specification, you would see a log message similar to the following:

RTI_Security_Authentication_begin_handshake_reply: received unexpected
handshake message, probably from a participant that this one lost liveliness
with before ongoing authentication completed. Once this participant sends an
authentication request, communication should be restored.
ERROR [[...]|RECEIVE SAMPLE|PROCESS HANDSHAKE|BEGIN HANDSHAKE REPLY|LC:Security]
DDS_DomainParticipantTrustPlugins_forwardBeginHandshakeReply:FAILED TO VALIDATE
| begin_handshake_reply returned VALIDATION_FAILED.

This release fixes the issue, so a difference in the minor version of the class_id doesn’t prevent communication.

Note that the Builtin Security Plugins 7.4.0 (and later releases) propagate the older DDS:Auth:PKI-DH:1.0 class_id to former RTI releases. This ensures interoperability between RTI releases, even if the older ones are affected by the class_id bug. Interoperability is only broken between releases affected by this bug and other vendors that propagate the newer DDS:Auth:PKI-DH:1.2 class_id.

[RTI Issue ID SEC-2473]