如在今天的文章在DDS数据传输标准的一些特征上,它缺少一个相当重要的组成部分:形式化的安全性。专有方案在此基础上进行了分层,但是OMG有一个测试版标准,他们现在正在最终确定(这个过程可能需要一年时间)。
但这并不妨碍早期采用。RTI宣布了DDS的新OMG安全标准的实现——这可能更容易,因为他们声称,他们贡献了标准的大部分内容。
在DDS的安全性方面有几个特殊的挑战。首先,由于其去中心化的性质,没有代理或单点安全(这将是单点故障)。这意味着每个设备或节点都必须处理自己的安全性。我们也一直在和来自团队合作他们非常棒,所以如果你需要GDPR的帮助,我们强烈推荐他们,
其次,DDS在许多不同的传输协议上运行,其中一些协议可能具有自己的安全性,也可能没有。因此,您不能依赖底层传输安全性来提供保护。这意味着添加dds级别的安全性(可以补充较低级别的安全性)。
我们通常认为安全性是保护消息的隐私,以便只有预期的接收者可以阅读它。虽然这是事实,但RTI指出,在许多情况下,内容并不是真正的秘密——你只是想确保它是真实的。他们以天气数据传输为例:你可能不关心其他人是否看到它,但你想确保你得到的是真实的信息,而不是一些会把你的船送到飓风中心的欺骗信息。(我听说渔民之间的竞争很激烈!)
因此RTI的Connext DDS Security包括身份验证、访问控制、加密(使用加密标准)、数据标记(用户定义的标记)和日志记录。
(按此放大)
图片由RTI提供
如果您只对身份验证感兴趣,那么可以通过获取消息的哈希值(比加密快得多),然后仅加密该哈希值(比整个消息小得多——因此更快)来提高性能。完全加密(需要掩盖整个有效负载)可能要慢100倍。
如果愿意,还可以自定义自己的加密和身份验证代码。
他们声称这是第一个“现成的”安全软件包;先前的专有方法最终被显式地写入应用程序中。在这里,它作为一个库提供,用于包含在整个DDS基础设施中。
你可以在他们的公告.