工业级数据分发服务DDS之安全篇

这篇具有很好参考价值的文章主要介绍了工业级数据分发服务DDS之安全篇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

引出问题

在DDS系统中,我们在以数据为中心的发布-订阅模型中有一组发布者和订阅者。例如,让我们分析下图所示的系统,其中我们有以下节点:

  • Alice:发布Topic-T的合法应用程序,允许发布信息。
  • Bob:订阅Topic-T的合法应用程序,允许访问信息。
  • Eve:未经授权订阅Topic-T的窃听者,执行未经授权的订阅(1)。
  • Trudy:未经授权发布数据的入侵者,执行未经授权的发布(2)。
  • Mallory:一个恶意的内部人员(例如,被授权订阅数据但不能发布),试图执行篡改和重播(3)。
  • Trent:合法订阅和发布数据的监控服务。
    工业级数据分发服务DDS之安全篇

因为AliceBob和Trent是合法的应用程序,所以它们应该能够按照设计的方式进行通信。而对于非法程序Eve和Trudy,他们是不能执行任何操作的。但是这里面的Mallory是系统内部人士,只有有限权限,那么他就不能做未经授权的操作。

分析问题

  • 未授权订阅者
    未经授权的订阅(又称窃听)意味着能够在未经授权的情况下读取敏感数据。
    首先以Eve为原型,解释未经授权的窃听者,说明Eve能够在未经授权的情况下读取到敏感数据。假设Eve是系统之外的一个节点,他本不应该出现,也不应该获取到系统中的任何数据,但是在一个不安全的网络中,Eve和Alice可以实现发布订阅。由于DDS和RTPS标准没有专门解决安全性问题,所以没有定义任何机制来验证Eve是否被授权订阅Topic-T。
    窃听有时候并不会造成严重的后果,但是当Topic-T携带非常敏感的数据时,就必须对他进行保护,防止窃听。

  • 未授权发布者
    未经授权发布是指未经授权将数据发布到DDS系统中。
    以Trudy为原型,一个可以发布Topic-T数据的发布节点。在一个不安全的场景中,Trudy和Bob会互相发现对方,然后Trudy会开始向Bob发送数据。因此Bob会收到Alice的数据,也会收到Trudy的数据,这样的系统存在很大的安全隐患。

  • 截胡篡改
    篡改包括在将数据发送给合法订阅者之前拦截和修改数据。
    当系统中存在敏感信息时,Mallory可以截胡消息,并对其进行修改,然后再发不出去,由于Bob分不清消息的来源是否可靠,造成严重的问题。
    当Mallory订阅系统中的主题Topic-T,那么他就可以将消息以高频率发不出去,造成Bob严重的资源消耗,甚至是宕机。

  • 跨域攻击
    如果监控服务加入一个被恶意domainparticipant攻击的域,上述所有威胁都可能跨越DDS域。

解决问题

引入安全插件:

  • 安全插件提供了保护数据机密性的机制,保证只有经过授权的订阅者才能订阅Topic-T并解析发布给它的数据。
  • 安全插件提供了认证发布者和订阅者应用程序的机制,防止来自外部的未经授权的发布。此外,安全插件设置了访问控制机制,以防止未经授权的发布者。
  • 安全插件设置了保护数据完整性的机制,从而可以防止篡改和攻击。

官方标准

为了解决DDS安全的问题,OMG定义了DDS安全规范标准,该规范为符合DDS的实现定义了安全模型和服务插件接口(Service Plugin Interface)服务体系框架。DDS安全模型是通过DDS实现调用服务插件接口来实现的。
规范中服务插件接口,支持即插即用的安全性,并且能够实现DDS应用程序之间互操作。
服务插件接口允许用户自定义DDS框架中用于信息保证的行为和技术,例如,自定义身份验证、访问控制、加密、消息身份验证、数字签名、日志记录和数据标记等。

工业级数据分发服务DDS之安全篇

  • 认证服务插件,认证DDS应用程序,包括在参与者之间执行相互身份验证和建立共享秘密的功能。
  • 访问控制服务插件,对域、主题等实施访问控制。
  • 加密服务插件,维护数据的完整性和机密性,包括加密、解密、哈希、数字签名等。
  • 日志服务插件,支持审计所有DDS安全相关的事件。
  • 数据标记服务插件,提供向数据添加标记的方法。

安全插件

DDS安全插件主要实现两个方面的保护。其一是域级安全防护,保护DDS域免受外来者的攻击。其二是域内安全防护。

域级安全

域级安全是一个相当简单的模型,将安全范围控制在域内,由开发者或维护者决定域的成员,被包含在域内的成员在域内允许执行任何被授权的操作。域内成员对topic的访问权限也由其域身份所决定。但是站在域的内部看,域内就像是一个没有经过安全防护的网络。此安全协议的目标是防止出现未经授权的域参与者的出现(在不考虑域内访问控制规则的情况下)。
工业级数据分发服务DDS之安全篇
基于域的安全防护可以达到如下效果:
1)检测针对消息的篡改和注入,即完整性保护;
2)保护消息内容,及加密性保护;
关于域级别的安全防护需要明确的一点是,域级别的安全防护一般通过TLS 或 DTLS来实现,即通过传输层的安全特性来实现安全域。

域内安全

域内安全遵循最小权限原则(Principle of Least Privilege),提供了更高级的保护类型,这意味着参与者为了完成任务,不能做未经授权的事情。最小权限原则基于每个主题和分区的读写访问规则。在定义这些访问规则之后,安全插件将约束对每个topic和partition的读、写权限。
工业级数据分发服务DDS之安全篇
上面图,其中三个参与者(P1、P2和P3)拥有发布和订阅蓝色主题的权限,而只有P1对红色Topic有发布和订阅权限——P2对蓝色主题有订阅权限,但P3没有访问它的权限。这个场景表明,域内部的保护适用于特定的主题和分区,并不是每个DomainParticipant都被允许发布或订阅每个主题或分区。可以分别为每个主题或者分区设置访问规则,进而实现机密性和完整性的要求。因此,对于每个域,都可以根据需要在每个主题或每个分区上配置不同的防护规则。

基于RTPS协议的安全

为了防止在域中出现未经授权的操作,DDS安全规范对RTPS协议进行了安全增强。由于开放的网络,任何人都可以加入其中并开始接收数据,因此惟一可用的保护机制是保护RTPS消息本身。
安全插件将添加信息并修改RTPS消息以保护它们。在RTPS级别应用的所有保护都基于对称加密,这是一次性加密一对多分发所必需的。因此,发送方和接收方都需要知道密钥。身份验证过程结束后,参与者交换密钥,使用Diffie-Hellman(一种确保共享KEY安全 穿越 不安全网络的方法,它是OAKLEY的一个组成部分。)建立共享秘密。对于身份验证,参与者使用非对称密码学。

  • 完整性保护
    通过向原始消息追加消息验证码(MAC)来保护消息的完整性。默认情况下,该代码的长度为16字节。MAC的内容取决于原始消息的内容以及密钥。您需要密钥来创建和验证MAC。因此,发送方和接收方都需要知道密钥。发送方和所有接收方都使用相同的密钥。如果在接收端验证MAC失败,就意味着数据完整性遭到了破坏。
    工业级数据分发服务DDS之安全篇

  • 机密性保护
    MAC提供完整性保护,因此攻击者将无法篡改数据,因为对数据的修改将被检测为未能通过MAC验证。然而,MAC本身不保护机密性。如果需要保密,则必须在数据通过网络发送之前对其进行加密。加密字节由消息和密钥生成。因此,发送方和接收方都需要知道相同的密钥。

    加密本身并不能保证数据的完整性。因此,安全插件计算经过加密的数据的MAC,并将其包含在结果消息中。在实践中,DDS安全规范定义了完整性保护和机密性以及完整性保护。

    遵循OMG数据分发服务(DDS)标准的理念,DDS安全规范遵循以数据为中心的模型,其中所有内容都是分布式的。这意味着所有加入DDS域的合法参与者都将执行所需的保护。这就是它们彼此之间可以进行通信的方式(它们执行相同类型的保护),同时阻止外部人员参与(因为这种保护)。换句话说,如果一个参与者不执行所需的保护,它将无法与安全域中的其他参与者通信。

  • 来源认证保护
    还可以强制数据源身份验证。例如,如果您有一个与多个datareader匹配的DataWriter,那么所有的读取器都从同一个写入器接收数据。因此,所有的读取器都需要知道用于加密和解密数据以及计算和验证MAC的相同的秘密密钥。如果这个秘密密钥在数百个读取器之间共享,那么所有这些读取器都拥有重现MAC的加密和计算的知识,因为该密钥与写入器使用的密钥相同。换句话说,读取器可以冒充写入器,从而破坏访问控制机制。如果读者之间互不信任,您可以设置来源身份验证保护。

    这种类型的保护需要在系统中使用额外的密钥。更具体地说,除了发送方密钥之外,每个发送方-接收方对还将有一个特定于接收方的密钥。注意,datawriter和datareader都可以充当发送方和接收方。此外,RTPS消息和子消息将附加额外的mac(每个接收器一个)。

    在前面的例子中,DataWriter将附加一个包含额外的特定于接收器的MAC的列表到通用MAC。然后,在常规的通用MAC验证之后,每个DataReader必须在该列表中找到它的特定于接收器的MAC,并验证特定于接收器的MAC是用它专门为自己和DataWriter之间使用而创建的秘密密钥计算的。通过验证公共MAC, DataReader可以相信数据没有被任何没有发送方密钥的人篡改过,因为生成公共MAC需要这个密钥。通过验证接收方特定MAC, DataReader可以验证发送数据的匹配DataWriter,因为它是与接收方特定密钥共享的唯一实体。

RTI方案

RTI DDS通过安全插件的机制实现诸如认证、加密等安全功能。安全插件支持可插拔的方式满足数据总线安全要求,每个安全插件覆盖不同的安全范围,主要包含以下几个方面:

  • 身份认证:提供针对调用DDS接口的应用程序或用户的身份认证。还包括通信双方相互认证和共享密钥的基础设施;
  • 访问控制:提供针对DDS实体可执行操作的访问控制决策;
  • 数据加解密:实现加解密算法、hash算法、签名算法等。还包括从共享密钥衍生密钥的算法;
  • 日志记录:审计所有安全相关的事件,以此增强系统的透明度,保证系统的可用性。
    工业级数据分发服务DDS之安全篇

安全插件的特性

  • 解耦插件来解决不同的安全问题,例如OMG DDS安全规范中定义的身份验证、访问控制、加密、消息身份验证、数字签名、日志记录和数据标记等。
  • 安全插件理论上可以在任何传输协议上运行,当然包括内置的UDP多播传输协议和TCP传输协议。
  • 安全多播支持将数据高效且可扩展地分发给多个订阅者。
  • 支持自定义安全插件,以适应专有的或FIPS 140-2兼容的加密解决方案,利用自定义安全硬件或者以多种方式更改插件的行为。安全插件SDK能够自定义安全插件以满足系统的安全需求。
  • OMG DDS安全规范定义了一对多并且以数据为中心的方式解决通信的安全问题,使应用程序能够根据共享数据的性质定义不同的安全策略。这与DDS去中心化目标相一致,因此也具有以下优势:
    • 无单点故障。
    • 高性能、可扩展

支持的加解密算法

RTI安全插件实现了多种加解密算法,包括OMG DDS安全规范中定义的所有加解密算法,以满足安全的多方面要求。下面介绍所有支持的加解密算法。文章来源地址https://www.toymoban.com/news/detail-418070.html

用于数据流保护的密码算法
  • 针对数据完整性:
    算法:AES-GCM, used in GMAC mode (not configurable)
    密钥大小:128, 192 or 256 bits (selectable via configuration)
  • 针对数据保密性和完整性:
    算法:AES-GCM (not configurable)
    密钥大小:128, 192 or 256 bits (selectable via configuration)
  • 数据源认证
    算法:AES-GCM, used in GMAC mode (not configurable)
    密钥大小:256 (not configurable)
用于密钥交换的密码算法
  • Shared secret agreement:
    • Support for Diffie-Hellman in ephemeral mode (DHE), with 2048-bit MODP Group parameters as specified in RFC 3526 (not configurable)
    • Support for EC Diffie-Hellman in ephemeral mode (ECDHE), with secp256r1 as specified in FIPS PUB 186-4 1 as its curve (not configurable)
    • Selection between DHE and ECDHE happens via configuration
  • Key derivation:
    • HMAC-based Key Derivation Function (HKDF) with SHA-256 as specified in RFC5869 (not configurable)
  • Key exchange confidentiality, which includes integrity:
    • AES-GCM with 256 bits key (not configurable)
用于数字签名的密码算法
  • Builtin support for RSA keypairs with SHA-256
    • RTI Security Plugins allow any RSA keypair supported by OpenSSL
    • Support for PKCS#1 PSS padding and PKCS#1 standard padding (selectable)
    • The only key size tested for the Security Plugins is 2048 bits due to the DDS Security specification (version 1.1) calling out this specific key size
  • Builtin support for EC keypairs (ECDSA) with SHA-256
    • RTI Security Plugins allow any EC keypair supported by OpenSSL
    • The only curve tested for the Security Plugins is secp256r1 due to the DDS Security specification (version 1.1) calling out this specific curve
RTPS-HMAC-Only插件用于数据流保护的加密算法
  • Data integrity:
    • Algorithms: HMAC-SHA256 (not configurable)
    • Key sizes: 256 bits (not configurable)
  • Data confidentiality:
    • None
  • Data source authentication:
    • None

分布式系统安全

参考声明

  • rti_connext_dds-6.1.1安全手册
  • DDS-Security v1.1标准

到了这里,关于工业级数据分发服务DDS之安全篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 超详细!工业级RK3568核心板性能测试与压力测试记录

    HD-RK3568-IOT底板是基于HD-RK3568-CORE工业级核心板设计的,具有双网口、双CAN、5路串口等丰富接口,适用于工业现场应用需求,方便用户评估核心板及CPU性能,可用于工业自动化控制、人机界面、医疗分析器、电力等多种行业应用。HD-RK3568-CORE系列核心板使用Rockchip RK3568系列Qua

    2024年02月06日
    浏览(94)
  • 工业级路由器在智能交通系统(ITS)中的创新应用

    智能交通系统(ITS)作为一种先进的交通管理与控制系统,旨在提高交通运输系统的效率、安全性和便捷性。随着科技的不断发展,智能交通系统已经成为城市交通管理的重要组成部分。而工业级路由器作为一种可靠的网络通信设备,其在智能交通系统中的创新应用正逐渐受

    2024年02月04日
    浏览(55)
  • 68元工业级双核A7,全新T113核心板震撼上市!

    万象奥科全新T113核心板震撼上市,仅68元、工业级品质、双核A7处理器、外设丰富,诠释极致性价比! 参数速递 1.全志T113工业级处理器,主频1.2GHz 2.双核Cortex-A7+玄铁C906 RISC-V + HiFi4 DSP异构多核 3.内存128MB/256MB/512MB,存储256MB/8GB 4.支持Video Decoding H.265/H.264,Video Encoding JPEG/MJPEG

    2024年02月06日
    浏览(46)
  • 工业级开源facechain人物写真sd-webui插件使用方式

    facechain人物写真应用自8月11日开源了第一版证件照生成后。目前在github(https://github.com/modelscope/facechain)上已有近6K的star,论文链接:FaceChain: A Playground for Identity-Preserving Portrait Generation:https://arxiv.org/abs/2308.14256。facechain社区非常活跃,fork、commit数都很大,相应截图如下

    2024年01月20日
    浏览(92)
  • ToB还是ToC?工业级与消费级AR眼镜都能干什么?

    随着科技的飞速发展,增强现实(AR)技术逐渐融入我们的日常生活。我国AR眼镜消费市场分为消费级和工业级应用。其中消费级主要分为游戏、影视、直播以及社交购物与旅游;工业级主要应用于医疗、汽车、工业、船舶、电力和仓储等专业领域。我们从以下几个方面来介绍

    2024年02月04日
    浏览(46)
  • 工业级高性能3D模型渲染引擎,专注于3D Web轻量化!

    一、技术概览 HOOPS Communicator 是一个SDK,用于在Web浏览器中开发3D工程应用程序,重点在于: 完全访问工程数据 使用方便 快速发展 高性能可视化 快速模型流 灵活使用和部署 点击此处获取3D模型轻量化及格式转换解决方案 它的主要组件是 HOOPS Web查看器,这是一个功能强大

    2024年02月07日
    浏览(32)
  • 【论文阅读】Paraformer工业级非自回归端到端语音识别模型

    论文下载 目前ASR常用的Transformer模型虽然效果比较好,但是因为引入了自回归的解码器,所以计算相对效率低一些。为了加速推理,设计了非自回归模型并行生成识别结果,比如单步自回归模型。然而由于输出标签之间的独立性假设,单步自回归模型的效果相比自回归模型会

    2024年02月09日
    浏览(49)
  • 3D模型格式转换工具HOOPS Exchange对工业级3D产品HOOPS的支持与应用

    一、概述 HOOPS Exchange是一套高性能模型转换软件库,可以给软件提供强大的模型的导入和导出功能,我们可以将其单独作为转换工具使用,也可以将其集成到自己的软件中。 同样,HOOPS 的其它产品,也离不开HOOPS Exchange的支持,它们也需要HOOPS Exchange为其提供模型的导入和导

    2024年02月07日
    浏览(45)
  • 工业级成熟航运港口人工智能产品全球前三船公司及港口码头落地,中国上海人工智能独角兽中集飞瞳全球应用最广规模最大最先进港航AI企业

    中国上海人工智能独角兽CIMCAI中集飞瞳,是全球应用落地最广,规模最大的港口航运人工智能高科技企业。中国人工智能独角兽CIMCAI中集飞瞳 巅峰产品行业第一,产品在全球港区及集装箱枢纽规模投产包括:全球港口码头智能闸口;全球港口岸边卸/装船;全球航运船公司;

    2024年02月05日
    浏览(45)
  • 系统平台同一网络下不同设备及进程的话题通讯--DDS数据分发服务中间件

    提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理

    2024年02月08日
    浏览(86)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包