亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial Internet of Things >> 物联网技术

使用您选择的密码库保护您的 IIoT 系统!

现在,您可能已经了解了 OMG DDS 安全规范,它通过安全架构和模型增强了现有的 DDS 标准。该规范的 1.0 版即将由 OMG 最终确定。这意味着以数据为中心的安全模型现在将原生集成到 DDS 标准中——这是唯一旨在提供构建复杂实时应用程序所需的灵活性、可靠性和速度的开放式通信标准,包括多种类型的工业物联网

DDS 安全规范中引入的一项引人注目的功能是服务插件接口 (SPI) 架构的概念。 SPI 机制允许用户自定义 DDS 实现用于信息保障的行为和技术,而无需更改应用程序代码。

这篇博文简要解释了 SPI 架构,并演示了一种利用 RTI Connext DDS Secure 内置安全插件的简单方法,让它们使用你的选择。

DDS 安全服务插件接口 (SPI)

DDS 安全规范没有对应用程序与 DDS 基础架构的交互方式进行任何更改。相反,它定义了五个不同的插件组件,在需要时由基础设施利用。这些组件中的每一个都提供了信息保障功能的某个方面,并具有 DDS 安全规范所定义的标准化接口。这就是服务插件接口 (SPI) 所指的名称。插件架构如下图所示。

如您所见,有五个 SPI 共同为 DDS 系统提供信息保障。它们的名称和用途如下:

SPI 名称 其类型和操作的目的 身份验证支持对 DDS 域参与者身份的验证,包括执行相互身份验证和建立共享秘密的设施。访问控制决定允许经过身份验证的 DDS 域参与者执行哪些受保护的 DDS 相关操作,包括加入 DDS 域和创建主题、数据读取器和 DataWriters.CryptographySupport 加密操作,包括加密和解密、散列、数字签名和消息身份验证代码。LoggingSupport 记录 DDS DomainParticipant 的安全相关事件。Data Tagging 提供向数据添加安全标签或标记的能力,用于应用程序-特定用途。

SPI 架构让您可以自由地自定义安全 DDS 系统的信息保障方面。可以使用您自己的 SPI 实现来修改或重新实现上述项目符号列表中提到的所有方面。你不能改变的是机制when DDS 实现实际上调用了 SPI 的方法——它们只是在必要时被调用。这实际上是一件好事,因为这意味着中间件会继续按照规范中的规定运行,您不必担心会破坏它。

除了 SPI 的接口之外,DDS 安全规范还提供了所谓的内置插件的功能描述,在该文档的第 9 章中有详细描述。他们的主要目的是在不同的 DDS 安全实现之间提供开箱即用的互操作性。使用 RTI Connext Secure DDS,内置插件也恰好是自定义的绝佳起点。

自定义 RTI Connext DDS Secure 内置插件

Connext DDS Secure 附带的内置安全插件二进制文件可以开箱即用地创建包含信息保障的 DDS 系统。您需要做的就是按照规范中的说明正确配置 DomainParticipant 的 PropertyQosPolicy,以指向所需的安全工件,例如访问控制和治理配置文件以及身份证书等。

对于那些希望修改插件行为的人,我们还提供了一组可构建的源代码文件。然而,在许多情况下,Connext DDS 安全插件提供了一个更简单的选择。进入 OpenSSL EVP API...

交换加密算法实现

内置的 Connext DDS 安全插件源代码利用了 OpenSSL 加密库——不是为了它的 SSL 或 TLS 功能,而是为了它的一组加密函数实现和许多与那些一起使用的帮助类。如果您熟悉 OpenSSL 编程,您就会知道利用所谓的 EVP 接口是一种很好的做法。 (如果您对此感到疑惑,就像我一样:EVP 代表 EnVeloPe。)Connext DDS Secure 插件调用其功能的一个子集,即与下表中的项目相关的那些:

功能 为内置 DDS 安全插件指定的算法 128 位或 256 位密钥大小的伽罗瓦计数器模式 (GCM) 中的对称加密和解密 AES 签名和验证使用 SHA-256 作为哈希函数的 RSA-PSS 或 ECDSA 签名算法密钥交换 Diffie-Hellman 使用模算术 (DH) 或椭圆曲线 ( ECDH),指定参数消息认证码HMAC,以SHA-256为散列函数,GMACSecure散列函数SHA-256随机数生成任意加密强随机数生成器

插件自带该产品使用这些功能的 OpenSSL 实现,如标准 OpenSSL EVP 引擎中所示。但是,它们也支持插入您自己的引擎。您的 OpenSSL 引擎实现可以调用这些加密函数的其他实现,例如利用您选择的加密库,可能是因为您需要使用符合 FIPS 的实现。一些库已经支持 EVP 引擎,在这种情况下,您只需配置插件。否则,您将不得不编写一个 shim 层来从您的库中调用正确的函数。

修改内置插件本身

可能会发生上一节中概述的内置插件中的算法和机制不能满足您项目的需要。在这种情况下,您将不得不修改实际插件的代码,即调用 EVP 函数的代码。例如,您可以进行小的修改,例如选择与规范定义的算法不同的算法,可能使用不同的密钥大小或算法参数。再举一个例子,如果您愿意,您可以从动态链接更改为静态链接。

有可能超越微小的变化,例如,引入一种完全不同的身份认证机制。沿着这条路走下去很快就会变得复杂,我们强烈建议您联系我们讨论您的需求和计划。我们期待与您合作!


物联网技术

  1. DDS 安全硬件(硬件)方式 - SGX 第 3 部分:强化 DDS 服务
  2. DDS Security the Hard(ware) Way - SGX:Part 2 (Micro + Security + SCONE)
  3. DDS 安全硬件(硬件)方式 - SGX:第 1 部分(概述)
  4. 黑客如何破解云;使用 AWS
  5. 应对 ICS 和 IIoT 日益增长的威胁形势
  6. 未来是相连的,我们有责任保护它
  7. IIoT 之旅从远程遥测开始
  8. 由于与伊朗的紧张关系,ICS 安全成为焦点
  9. 由于与伊朗的紧张关系,ICS 安全成为焦点
  10. 安全是工业物联网的最大威胁吗?
  11. 提高智能家居安全性的方法
  12. IIoT 如何提高资产监控系统的可行性?