在 OPC UA 中要验证多少次应用程序实例证书?
How many number of times application instance certificates are to be validated in OPC UA?
请求澄清从打开 SecureChannel 到激活 OPC UA 安全架构中的会话验证应用程序实例证书(均为 client/server)的次数?
- 来自 Mahnke、Leitner、Damm 的 'OPC Unified Architecture' 一书,下图显示了已验证应用程序实例证书的位置。 (第 214 页中的图 7.4)
- 根据规范第 4 部分服务,第 6.1.5 节 - 图 22 显示在会话创建期间再次验证应用程序实例证书。
为什么标准和书中描述的概念之间存在这种差异?
是否真的有必要在会话创建期间再次验证应用程序实例证书?我注意到如果我没记错的话,Milo 示例在打开 SecureChannel 时只验证一次。
我认为图表不正确或已过时。
信任的验证和验证必须在第一次client/server看到证书时发生,也就是建立通道时。
在 Create/Activate 中,使用在 requests/responses 中交换的签名证明会话服务拥有证书。
编辑:总结评论,仅当正在使用的传输层不在那里验证时,才需要在会话创建期间进行验证,但在 Milo 的情况下,它始终是二进制 TCP 传输,因此在会话创建期间进行验证是多余的.
规范(OPC UA 规范第 4 部分。6.1 安全性(v.1.03))确实指定了参与证书验证的两个阶段:
- 创建 SecureChannel 和
- 正在创建会话。
在创建 SecureChannel 时,证书针对 CA 签名、颁发和到期日期以及吊销列表进行验证。在创建Session时,可以进行完整的验证。
主要区别在于 ApplicationDescriptions 在 CreateSession 阶段可用,因此证书的 ApplicationUri 字段只能在此阶段验证。
请求澄清从打开 SecureChannel 到激活 OPC UA 安全架构中的会话验证应用程序实例证书(均为 client/server)的次数?
- 来自 Mahnke、Leitner、Damm 的 'OPC Unified Architecture' 一书,下图显示了已验证应用程序实例证书的位置。 (第 214 页中的图 7.4)
- 根据规范第 4 部分服务,第 6.1.5 节 - 图 22 显示在会话创建期间再次验证应用程序实例证书。
为什么标准和书中描述的概念之间存在这种差异? 是否真的有必要在会话创建期间再次验证应用程序实例证书?我注意到如果我没记错的话,Milo 示例在打开 SecureChannel 时只验证一次。
我认为图表不正确或已过时。
信任的验证和验证必须在第一次client/server看到证书时发生,也就是建立通道时。
在 Create/Activate 中,使用在 requests/responses 中交换的签名证明会话服务拥有证书。
编辑:总结评论,仅当正在使用的传输层不在那里验证时,才需要在会话创建期间进行验证,但在 Milo 的情况下,它始终是二进制 TCP 传输,因此在会话创建期间进行验证是多余的.
规范(OPC UA 规范第 4 部分。6.1 安全性(v.1.03))确实指定了参与证书验证的两个阶段:
- 创建 SecureChannel 和
- 正在创建会话。
在创建 SecureChannel 时,证书针对 CA 签名、颁发和到期日期以及吊销列表进行验证。在创建Session时,可以进行完整的验证。
主要区别在于 ApplicationDescriptions 在 CreateSession 阶段可用,因此证书的 ApplicationUri 字段只能在此阶段验证。