Skip to main content
QUICK REVIEW

[论文解读] Security and Performance Considerations in ROS 2: A Balancing Act

Jongkil Kim, Jonathon M. Smereka|arXiv (Cornell University)|Sep 24, 2018
Advanced Data Storage Technologies参考文献 9被引用 39
一句话总结

本文通过在有线和无线网络中测量 ROS 2 在 DDS 安全和 VPN 配置下的延迟和吞吐量,评估了 ROS 2 中性能与安全之间的权衡。研究发现,DDS 安全规范与 ROS 2 中实际实现之间存在关键的实现差距,特别是在 AES-GCM 的 IV 大小和随机数生成器(RNG)合规性方面,并建议采用符合 FIPS 标准的密码学实践,以在不牺牲可靠性的前提下增强安全性。

ABSTRACT

Robot Operating System (ROS) 2 is a ground-up re-design of ROS 1 to support performance critical cyber-physical systems (CPSs) using the Data Distribution Service (DDS) middleware. Accordingly, the security of ROS 2 is highly reliant on the security of its DDS communication protocol. However, finding a balance between the performance and security is non-trivial task. Inappropriate security implementations may cause not only significant loss on performance of the system, but also security failures in the system. In this paper, we provide an analysis of the DDS security protocol as well as an overview on how to find the balance between performance and security. To accomplish this, we evaluate the latency and throughput of the communication protocols of ROS 2 in both wired and wireless networks, and measure the efficiency loss caused by the enabling of security protocols such as Virtual Private Network (VPN) and DDS security protocol in ROS 2 in both network setups. The result can be directly used by robotics developers to find the optimal and balanced settings of ROS 2 applications. Additionally, we analyzed the security specification of DDS using existing security standards and tested the implementation of the DDS protocol by performing static analysis. The results of this work can be used to enhance the security of ROS 2.

研究动机与目标

  • 分析在有线和无线网络中,通过 DDS 安全和 VPN 启用安全功能对 ROS 2 性能的影响。
  • 评估 ROS 2 中 DDS 安全实现的正确性和合规性,参照 NIST SP 800-53 和 FIPS 140-2 等既定标准。
  • 识别 OMG DDS 安全规范与 eProsima RTPS 中间件中实际实现之间的不一致之处。
  • 提供可操作的建议以改进 ROS 2 的安全性,包括前向保密和符合 FIPS 标准的密码学实践。
  • 通过检测和修复实现缺陷,提升 ROS 2 在真实网络物理系统(CPS)中的整体安全态势。

提出的方法

  • 在有线和无线网络环境中,通过物理实验测量 ROS 2 在启用和禁用 DDS 安全及 VPN 时的通信延迟和吞吐量。
  • 构建一个安全网络环境,比较 VPN 与原生 DDS 安全协议在性能开销上的差异。
  • 使用 Cppcheck 对 ROS 2 Ardent Apalone 源代码进行静态代码分析,以检测内存管理和初始化错误。
  • 针对 NIST 和 FIPS 标准评估 eProsima RTPS 中间件,重点关注密码算法正确性和密钥管理。
  • 使用 ProVerif 对 DDS 握手协议进行形式化验证,以确保协议正确性且无逻辑缺陷。
  • 分析 eProsima RTPS 中 OpenSSL 的使用情况,并评估将标准 OpenSSL 替换为经过 FIPS 验证模块的潜在优势。

实验结果

研究问题

  • RQ1在有线和无线网络中,启用 ROS 2 中的 DDS 安全功能如何影响通信延迟和吞吐量?
  • RQ2对于实时 CPS 应用,VPN 的性能与 ROS 2 中原生 DDS 安全协议相比如何?
  • RQ3eProsima RTPS 对 DDS 安全的实现与 OMG 规范以及 NIST/FIPS 标准的符合程度如何?
  • RQ4DDS 规范与 ROS 2 中实际使用之间存在哪些关键的安全实现缺陷?
  • RQ5哪些密码学和架构改进可以在不降低性能的前提下增强 ROS 2 的安全性?

主要发现

  • 可靠的 VPN 提供了优于原生 DDS 安全的性能,使其成为对低延迟通信有要求的系统的更优选择。
  • DDS 安全引入了显著的性能开销,导致延迟明显增加,吞吐量显著降低,尤其在无线网络中更为明显。
  • eProsima RTPS 实现中 AES-GCM 使用了 128 位的 IV,违反了 OMG 规范中规定的 96 位 IV,可能导致互操作性和安全问题。
  • 用于主密钥挑战的随机数生成器不符合 NIST 推荐标准,而是依赖于 OpenSSL 的 BN_rand,缺乏必要的密码学鲁棒性。
  • 静态代码分析发现了七个真实的安全相关问题,包括未初始化变量、内存泄漏和空指针解引用,涉及 ROS 2 和 RViz 组件。
  • 使用 ProVerif 的形式化验证确认了 DDS 握手协议的正确性,表明尽管存在实现缺陷,协议设计本身并无逻辑缺陷。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。