首页
/ open62541 v1.4.9版本发布:OPC UA开源库的重要更新

open62541 v1.4.9版本发布:OPC UA开源库的重要更新

2025-06-17 03:57:53作者:侯霆垣

项目概述

open62541是一个开源的OPC UA(OPC统一架构/IEC 62541)实现,采用C语言编写。该项目提供了实现专用OPC UA客户端和服务器的必要工具,也可将OPC UA通信集成到现有应用中。作为一个平台无关的库,open62541通过可交换插件实现所有平台特定功能,便于移植到不同的嵌入式目标平台。

核心改进

v1.4.9版本在证书验证方面进行了重要增强,增加了对额外证书验证状态码的屏蔽处理。这一改进提升了安全通信的健壮性,特别是在处理ERR响应时能够更准确地识别和处理证书问题。

线程安全方面,该版本为客户端、服务器和发布订阅(PubSub)功能实现了递归锁机制,解决了多线程环境下的潜在竞争条件问题。同时修复了UA_KeyValueMap_remove()函数中可能导致双重递减的错误。

服务器端优化

在服务器功能方面,v1.4.9版本改进了mDNS服务发现机制,现在使用".local"域名发布记录,这符合现代网络服务发现的标准实践。同时解决了Windows架构标志使用不一致的问题,提升了跨平台兼容性。

服务器配置方面,增强了JSON配置插件的功能,新增了对Aes256_Sha256_RsaPss安全策略的支持,使安全配置更加灵活全面。

客户端改进

客户端功能在此版本中获得了更完善的证书处理能力。现在能够正确处理服务器在非对称头部中不发送ServerCertificate的情况(适用于#None安全模式)。这一改进使得客户端能够更灵活地适应不同的安全配置场景。

发布订阅(PubSub)增强

PubSub子系统在此版本中获得了多项重要改进:

  • 完善了SKS(安全密钥服务)密钥轮换回调处理机制
  • 修复了UA_PubSubKeyStorage_addKeyRolloverCallback中定时回调更新的问题
  • 确保密钥轮换过程更加可靠和稳定

安全插件改进

安全相关插件在此版本中获得了多项增强:

  • 自动将PEM格式转换为DER格式以支持RSA安全策略
  • 修复了MbedTLS插件中私钥格式生成错误的问题
  • 改进了UA_AccessControl_default()中清除先前插件的处理
  • 移除了CTT(一致性测试工具)不支持的authorityKeyIdentifier/subjectKeyIdentifier比较

技术细节

在底层实现上,v1.4.9版本继续完善了基于事件循环(EventLoop)的控制流模型,这是1.4系列版本引入的重要架构改进。同时保持了对OpenSSL 3.0的支持,并增强了各种安全策略的实现。

对于开发者而言,该版本进一步提升了API的线程安全性,所有主要组件(服务器、客户端和PubSub)现在都通过内部锁机制实现了线程安全访问。

总结

open62541 v1.4.9版本作为1.4系列的第九个补丁版本,主要聚焦于稳定性改进和安全增强。虽然没有引入重大新功能,但对现有功能的完善和问题修复使得整个框架更加健壮可靠。特别是安全相关的改进,如证书处理、密钥轮换和线程安全等方面的优化,使得这个版本成为生产环境中值得升级的选择。

对于正在使用open62541的项目,特别是那些对安全性和稳定性有较高要求的应用场景,建议考虑升级到这个版本以获得最佳的性能和安全保障。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
860
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
596
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K