There is an option within the WIRE_PROTOCOL QoS Policy to enable and check for CRC at the DDS layer.
I don't believe this is enabled by default, but that doesn't mean there isn't other integretity checks at other layers of the lower level protocols. Also if you're using Connext DDS Secure with authentication/integrity then that might meet your needs
Adds RTPS CRC submessage to every message when this field is set to value of DDS_Boolean data type. The computed CRC covers the entire RTPS message excluding the RTPS header.
There is an option within the WIRE_PROTOCOL QoS Policy to enable and check for CRC at the DDS layer.
I don't believe this is enabled by default, but that doesn't mean there isn't other integretity checks at other layers of the lower level protocols. Also if you're using Connext DDS Secure with authentication/integrity then that might meet your needs
Both compute CRC and check crc are by default false.
WireProtocolQosPolicy::compute_crc [default -false]
Adds RTPS CRC submessage to every message when this field is set to value of DDS_Boolean data type. The computed CRC covers the entire RTPS message excluding the RTPS header.
DDS_WireProtocolQosPolicy::check_crc [default - false]
Adds RTPS CRC submessage to every message when this field is set to DDS_BOOLEAN_TRUE.
https://community.rti.com/static/documentation/connext-dds/6.0.1/doc/api/connext_dds/api_cpp/structDDS__WireProtocolQosPolicy.html#ac24a0b3d69224d739404b2726160ee4d