基于安全协商的DDS安全通信中间件设计

doi:10.3969/j.issn.1671-1122.2021.06.003
基于安全协商的DDS安全通信中间件设计
沈卓炜1,2,高鹏1,2,许心宇1,2
(1.东南大学网络空间安全学院,南京 211189;2.东南大学计算机网络和信息集成教育部重点实验室,南京 211189)
摘 要:针对关键核心领域中基于数据分发服务的分布式实时应用面临的安全威胁,文章以公钥基础设施为基础,提出一种支持身份认证、权限控制和数据加解密的
插件化DDS安全通信中间件方案。该方案在保持API与原DDS中间件一致的同时,
将安全协商过程与DDS发现机制相融合,利用自定义的安全服务质量,采用标准化的
QoS协商手段,完成安全服务等级和加密算法的灵活配置,以非对称加密和对称加密
相结合的方式实现数据分发的机密性和访问控制。理论分析和原型系统测试表明,文
章提出的DDS安全通信中间件方案能解决数据分发过程中未授权的订阅、未授权的发
布和非安全的信道传输等安全威胁,时延较原DDS通信中间件仅有少量增加,兼顾了
安全性与高效性。
关键词:数据分发服务;中间件;身份认证;访问控制;数据机密性
中图分类号:TP309  文献标志码: A  文章编号:1671-1122(2021)06-0019-07
中文引用格式:沈卓炜,高鹏,许心宇.基于安全协商的DDS安全通信中间件设计[J].信息网络安全,2021,21(6):19-25.
英文引用格式:SHEN Zhuowei, GAO Peng, XU Xinyu. Design of DDS Secure Communication Middleware Based on Security Negotiation[J]. Netinfo Security, 2021, 21(6): 19-25.
Design of DDS Secure Communication Middleware Based on
Security Negotiation
SHEN Zhuowei1,2, GAO Peng1,2, XU Xinyu1,2
(1. School of Cyber Science and Engineering, Southeast University, Nanjing 211189, China;2. Key Laboratory of
Computer Network and Information Integration(Southeast University), Ministry of Education,
Nanjing 211189, China)
Abstract: In response to the security threats faced by distributed real-time applications based on DDS in critical areas, a PKI based DDS secure communication middleware scheme
is proposed, which adopts plug-in design and supports the functions of identity authentication,
access control and data encryption and decryption. The scheme not only keeps the APIs consistent
with the original DDS middleware, but also integrates the security negotiation process with the
discovery mechanism of DDS. By using the customized security QoS and standardized QoS
negotiation mechanism, the security service level and encryption algorithm can be chosen and
基金项目:国家重点研发计划[2018YFB1800602]
作者简介:沈卓炜(1974—),男,江苏,副教授,博士,主要研究方向为分布式系统与网络安全;高鹏(1986—),男,甘肃,硕士研究生,主要研究方向为分布式系统与网络安全;许心宇(1998—),男,安徽,硕士研究生,主要研究方向为分布式系统与网络安全。
通信作者:
configured flexibly. The confidentiality of data distribution is achieved by combing asymmetric encryption and symmetric encryption. Theoretical analysis and prototype system test show that the proposed DDS middleware can solve the security threats such as unauthorized subscription, unauthorized publishing and insecure channel transmission in the process of data distribution, and the delay is only slightly increased compared with the original DDS middleware. This scheme gives consideration to both security and efficiency.
Key words: data distribution service; middleware; identity authentication; access control; data confidentiality
0 引言
数据分发服务(Data Distribution Service,DDS)是OMG组织制定的通信中间件规范[1],以数据为中心的发布订阅(Data-centric Publish-subscribe,DCPS)模型为基本通信机制,通过服务质量(Quality of Service,QoS)控制服务行为,为分布式实时系统中的数据传输提供松耦合、高性能、高可靠和可扩展的解决方案[2],近年来在国防、工业自动化、智能能源等关键核心领域得到广泛应用[3]。传统的DDS技术关注信息发布订阅的实时性、可靠性和性能等指标,对于关键分布式应用环境中面临的安全威胁关注不多,严重制约了DDS在这些领域的深入应用[4]。为此,OMG组织于2016年和2018年分别发布了DDS安全规范1.0版和1.1版,在DDS中增加安全机制以应对未授权的订阅、未授权的发布、非安全的信道传输等安全威胁[5]。
文献[6]在分析DDS面临的安全威胁及相应策略的基础上,提出一种拓展DDS内置主题与数字证书相结合的方式,实现DDS身份认证。文献[7]针对身份认证与密钥协商协议缺乏公平性、一致性和完整性问题,提出一种基于D-H密钥交换和非对称加密的高安全身份认证协议。文献[8]针对舰载通信系统,以信息系统等级保护的基本要求为起点,结合信息安全3个基本属性,提出一种DDS安全域划分方法和Q
超市手推车广告oS策略配置方法。文献[9]通过分析DDS通信的QoS配置、数据域的划分、舰载网络结构和舰载网络控制安全相关因素,构建一套舰载DDS网络的安全评估指标体系。文献[10]提出一种基于证书的DDS参与者动态访问控制方法,提供灵活可配置的访问控制。上述相关研究成果还存在一些问题:1)仅涉及DDS安全服务中的单一要素,缺少集成身份认证、权限控制和数据加解密等多要素的数据分发安全服务整体方案,难以满足实际工程应用中的安全需求。2)用户配置安全服务不够灵活,需要更改DDS应用开发者使用习惯。3)安全要素与DDS原有实现机制的结合不够紧密。例如,需要在DDS发现过程后补充安全握手协议以实现身份认证和安全协商,增加了系统实现的复杂度,降低了DDS的性能。
诱捕黄鳝
为此,本文在已有自主研发的DDS通信中间件的基础上,基于DDS安全规范,提出一种包含身份认证、权限控制和数据加解密功能的DDS安全通信中间件模型。该模型依托插件化设计,实现安全服务的灵活配置;通过将安全握手协议与DDS发现过程相结合,设计并实现了DDS安全通信中间件的身份认证、权限控制和密钥协商机制;通过理论分析和性能测试,验证了DDS安全通信中间件方案及其原型系统的安全性和高效性。
1 DDS安全通信中间件模型
针对未授权的订阅、未授权的发布和非安全的信道传输3种安全威胁,DDS安全通信中间件至少应保
证发布订阅过程中参与者的真实性、主题数据的发布订阅权限控制,以及发布数据的机密性。为此,基于DDS安全规范,本文提出如图1所示的DDS安全通信中间件模型。
模型在原DDS通信中间件的基础上增加了与安全相关的CA证书授权中心(CA中心)、身份认证组件、权限控制组件和加解密组件4个模块。CA中心为DDS 外部的可信第三方,是安全通信的基础,通过安全信
道为各参与者签发数字证书,并将DDS域中系统管理员制定的具备CA完整性签名的访问控制权限文件下发至域内各参与者。其余3个模块在DDS通信中间件内部以服务插件形式与DDS实体相互配合,为用户程序提供功能完整的数据分发安全服务。身份认证组件对远端参与者进行身份认证;权限控制组件根据CA中心下发的访问控制权限文件验证远端参与者的发布和订阅权限;加解密组件在发布端生成发布密钥(对称加密密钥),按照协商的密码算法对发布数据进行加密,在订阅端利用发布端分发的发布密钥对接收到的订阅数据进行解密。
DDS安全通信中间件中新增一个自定义的安全QoS (Security_QoS),其定义如表1所示。针对具有不同安全防护需求的DDS参与者,用户可灵活配置各字段的值,形成不同级别的安全域,满足不同安全防护等级的单向通信、加密算法可定制的安全通信等多种应用需求。用户无须改变原有编程模式,使用与原DDS中间件相同的API即可基于DDS安全通信中间件开发应用程序。如果有身份认证、权限控制和加解密等安全需求,仅需增加安全QoS的配置。
表1 安全策略定义
QoS策略字段语义
Security_QoS
Security_level参与者安全防护等级
Crypto_kind数据加解密算法标识
Public_ parameters加解密算法公开参数
Session_key发布密钥(自动生成的对称加密密钥)2 基于DDS发现协议的安全协商机制
为实现发布和订阅过程中的权限控制和加密信息传输,DDS数据域中的参与者之间、参与者与CA中心之间需要进行安全协商,以认证参与者身份并确定相关安全参数。为降低安全协商对性能的影响,需将该过程与DDS发现机制有机融合。DDS规范中,发现协议用于实现域内参与者的互相发现和主题匹配,是DDS的核心实现机制。DDS发现机制分为SPDP(Simple Participant Discovery Protocol)和SEDP(Simple Endpoint Discovery Protocol)两个阶段[11]。本文在不改变DDS发现机制和用户编程模式的基础上,将安全协商过程融入发现协议,在SPDP阶段进行参与者双方的身份认证和访问授权控制,在SEDP阶段进行安全协商。具体过程如图2所示。
图2 DDS安全通信中间件发现过程图1 DDS安全通信中间件模型
巴氏杀菌锅在SPDP阶段,参与者定期将身份认证信息(ID)和SPDP消息(D(SPDP))组播到域中其他参与者,并对对方进行身份验证和权限控制,为SEDP阶段提供身份真实性保证。
在SEDP阶段,发布端利用订阅端的公钥加密发布密钥,并嵌入Security_QoS,随SEDP消息(D(SEDP))传递给订阅端。接收消息后,订阅端进行SEDP阶段的发现过程。QoS匹配成功后,利用自身私钥解密发布密钥,实现DDS端点发现匹配和密钥的安全传递。
2.1 SPDP阶段身份认证与访问控制干手器
为实现对参与双方进行授权检查,首先要对其身份真实性进行验证。身份认证组件在参与者创建身份信息时验证本端参与者身份信息,结合SPDP阶段进行远端参与者身份认证。以参与者A和B为例,参与者A通过身份认证组件验证并生成身份认证信息(ID(A)),包括参与者A的数字证书和自身私钥对数字证书的签名(<C A||Sign(PR A,C A)>)。参与者A将身份认证信息发送给参与者B,参与者B依托自身的身份认证组件对参与者A的身份信息进行验证。验证主要分为以下两个阶段。
1)数字证书验证:通过C CA验证ID(A)中传递的数字证书C A是否真实有效。
2)身份验证:在确定C A真实有效的基础上,验证参与者A与CA中心注册用户是否一致,即通过C A 验证参与者A对自身数字证书的签名是否真实有效。
确定参与者双方身份后,权限控制组件从数字证书中读取参与者身份信息,从CA中心保证完整性的权限文件读取相应参与者的权限,判断参与双方是否能够建立发布订阅关系,防止实体非授权发布和非授权订阅。
2.2 SEDP阶段安全协商
DDS参与者之间采用混合加密方式保证数据传输的机密性,即发布端使用对称加密算法对RTPS报文中的载荷进行加密,并将对称加密密钥通过非对称加密算法加密后分发到订阅端。SEDP阶段在原始端点QoS 一致性匹配检测环节加入安全协商过程,实现安全策略匹配和密钥安全传递。
安全通信中间件策略匹配流程如图3所示。安全策略根据发布端和订阅端各自Security_QoS的Security_ level、Crypto_kind和Public_parameters字段的取值,确定双方的安全等级、对称加密算法和相关参数是否匹配。
图3 DDS安全通信中间件策略匹配流程
只有双方策略满足一致性要求,发布端才能利用对方公钥加密发布密钥,并写入本端Security_QoS的Session_key字段;订阅端才能利用自身私钥解密远端Session_key,获取发布密钥,实现密钥安全传递。为保证参与双方密钥协商的公平性,发布数据的发布密钥由发布端随机产生。图4以参与者A和参
与者B的发布订阅过程来为例,展示参与者B内部各组件间的调用关系。
安全协商完成后,DDS各参与方进入待发布订阅阶段。如果有数据需要发布,发布端利用发布密钥将数据加密后发布在域中,订阅端通过加解密组件保存的相应发布端发布密钥进行解密,实现DDS数据发布订阅的机密通信。
3 安全性分析
dc偏置
本文方案中,身份认证组件的数字证书验证和身份
验证由非对称加密算法实现,保证了参与者身份信息的真实性,从而为后续权限控制和数据加解密组件提供准确的基础信息。安全相关组件结合DDS实体创建和发现过程提供安全服务的工作流程如图5所示。
1)未授权的发布和订阅
为防止未授权的发布和订阅,权限控制组件依据CA中心签名的权限文件,在参与者身份确定的基础上,进一步确定通信双方的发布和订阅权限。在DDS实体初
始化阶段验证本地实体的发布和订阅权限。在SPDP阶段验证远端实体的发布和订阅权限,确保参与发布和订阅的实体在系统授权的参与者范围内进行。在SEDP阶段,发布端利用订阅端的公钥加密发布密钥,只有拥有相应私钥的订阅端才能解密出数据发布密钥,进一步应对非授权订阅威胁,加强系统的可用性。
2)非安全的信道传输
为防止在公开信道中传输的数据泄露,所有发布和订阅数据都加密传输,确保机密性。在SEDP阶段,发布和订阅双方基于安全协商机制,通过用户自定义的Security_QoS,利用Security_level字段灵活定义参与者安全防护等级,满足用户自定义的强制防护控制的机密性;利用Crypot_kind、Public_parameters字段协商数据发布的加密方式,保持发布和订阅加解密的一致性。发布端利用Session_key字段将发布密钥分发给通过订阅权限检验的订阅端。在数据发布订阅过程中,所有数据都按照安全协商确定的加密方式经发布密钥进行加密,只有解密出数据发布密钥的订阅端才能解密发布数据,保证发布订阅过程中非安全信道传输数据的安全性。
4 性能分析与验证
为满足工程实践应用需求,DDS安全通信中间件方案不仅要考虑安全性,还要考虑对DDS性能的影响。本文首先将DDS安全通信中间件方案与文献[5,6]方案
图4 DDS安全通信中间件内部发布密钥加解密序列
应对的安全威胁:①未授权的订阅;②未授权的发布;③非安全的信道传输
图5 安全相关组件提供安全服务的工作流程
漏水探测器

本文发布于:2024-09-22 07:13:38,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/201980.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:发布   订阅   身份   参与者   数据   密钥   认证
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议