掌桥专利:专业的专利平台
掌桥专利
首页

基于websocket的设备统一管理系统

文献发布时间:2024-04-18 19:58:53


基于websocket的设备统一管理系统

技术领域

本发明涉及设备接入领域,尤其涉及一种基于websocket的设备统一管理系统。

背景技术

由于硬件种类繁多,同一种类硬件由不同硬件厂商提供,因此导致硬件接口各不相同,在各业务系统开发的过程中,对硬件接口的封装不尽相同,导致了硬件开发程序不通用,不同的软件版本,不同的调用方式,使得硬件开发工作繁琐且重复工作量大。

发明内容

为了解决上述问题,本发明的目的在于提供一种基于websocket的设备统一管理系统,实现不同种类的硬件的统一接入管理。

为实现上述目的,本发明采用以下技术方案:

一种基于websocket的设备统一管理系统,包括接口单元、驱动单元、WebSocket服务单元、设备管理控制单元和服务端硬件管理平台;设备接入系统时,在服务端硬件管理平台进行注册登记,预先定义设备类型,设备型号,同时获取设备唯一编号和设备当前版本,并通过接口单元调用对应类型的设备接口;所述设备管理控制台通过驱动单元与接口单元交互,实现设备监控,设备注册,版本升级;所述WebSocket服务单元基于预设的调用标准,提供硬件调用服务。

进一步的,所述WebSocket服务单元还设有设备接入认证机制,基于SM2密码算法实现,具体如下:系统管理员调用初始化Setup算法确定系统参数P,并保存至服务端硬件管理平台;设备接入系统时,在服务端硬件管理平台进行注册登记并获取系统参数P,并生成一对公私钥对;设备在接入服务器时,向WebSocket服务单元发送接入请求;所述WebSocket服务单元将获取设备类型和设备私钥与服务端硬件管理平台保存的数据进行匹配和认证;如果匹配和认证成功,则说明设备是合法的,并且建立WebSocket连接,并基于设备类型调用对应的接口。

进一步的,所述系统参数P,具体如下:

随机选取大素数

其中,

选取哈希函数

输出系统参数

进一步的,所述接入请求,具体如下:

所述接入请求数据包括设备唯一编号ID、设备当前版本PB、类型号LX、系统参数P以及随机数Q,利用公钥对随机数Q进行加密,得到PKS(Q),采用SM2数字签名算法使用私钥对对随机数Q的哈希值H(Q)进行签名得到SKS(H(Q)),并基于设备唯一编号ID、设备当前版本PB、类型号LX、系统参数P、加密随机数PKS(Q)和签名哈希值SKS(H(Q)),构建接入请求M:

M={SN,ID,PB,LX,P,PKS(Q),SKS(H(Q))}。

进一步的,所述匹配和认证,具体如下:

所述服务端硬件管理平台基于接入请求M,根据系统参数P进行初步接入确认,然后获取设备唯一编号ID与平台存储的设备唯一编号进行匹配,并确认设备当前版本是否有误;

基于SM2公钥加密算法使用设备的私钥对加密随机数PKS(Q)进行解密得到随机数Q,然后利用公钥验证签名哈希值SKS(H(Q)),若验证无误则根据类型号LX,基于WebSocket服务单元调用对应的接口接入。

进一步的,所述WebSocket服务单元还设有心跳机制,接入的设备定期发送心跳包确认连接的存活状态。

进一步的,所述设备定期发送心跳包,具体如下:

预设心跳包的格式和内容;

根据不同设备的实际需求和网络环境,设置相应的心跳间隔;

在设备中设置一个定时器,以心跳间隔时间,发送心跳包至WebSocket服务单元;

所述WebSocket服务单元收到心跳包时,更新设备的在线状态。

进一步的,所述WebSocket服务单元收到心跳包时,更新设备的在线状态,具体如下:

当服务器接收到设备发送的心跳包时,可以通过以下步骤更新设备的在线状态:

WebSocket服务单元监听设备发送的心跳包,并在接收到心跳包时进行处理;

根据设备的设备唯一编号找到对应的设备记录,并更新设备的在线状态为在线;

并设置一个超时时间,如果在一定时间内没有接收到设备的心跳包,则判断设备为离线状态。

进一步的,所述预设的调用标准包括根据业务制定的设备调用封装参数标准、输入输出参数标准、设备类型参数、设备编号参数以及设备版本参数。

本发明具有如下有益效果:

本发明为各类硬件模块制定统一标准,并基于WebSocket进行统一接入,有效提高硬件设备的接入管理效率;并基于SM2加密算法进行加密,有效提高设备接入认证的可靠性和安全性。

附图说明

图1为本发明系统架构示意图。

具体实施方式

以下结合附图和具体实施例对本发明做进一步详细说明:

参考图1,本发明提供一种基于websocket的设备统一管理系统,包括接口单元、驱动单元、WebSocket服务单元、设备管理控制单元和服务端硬件管理平台;设备接入系统时,在服务端硬件管理平台进行注册登记,预先定义设备类型,设备型号,同时获取设备唯一编号和设备当前版本,并通过接口单元调用对应类型的设备接口;所述设备管理控制台通过驱动单元与接口单元交互,实现设备监控,设备注册,版本升级;所述WebSocket服务单元基于预设的调用标准,提供硬件调用服务。

在本实施例中,为各类硬件模块制定统一标准,包括:

统一标准名称:文件名、接口名、接口端口号等接口相关信息。

统一交换格式:采用JSON格式进行数据交换,数据交换过程中采用统一的数据验签、数据加密模块。

在本实施例中,WebSocket服务单元还设有设备接入认证机制,基于SM2密码算法实现,具体如下:

系统管理员调用初始化Setup算法确定系统参数P,并保存至服务端硬件管理平台;设备接入系统时,在服务端硬件管理平台进行注册登记并获取系统参数P,并生成一对公私钥对;设备在接入服务器时,向WebSocket服务单元发送接入请求;所述WebSocket服务单元将获取设备类型和设备私钥与服务端硬件管理平台保存的数据进行匹配和认证;如果匹配和认证成功,则说明设备是合法的,并且建立WebSocket连接,并基于设备类型调用对应的接口。

在本实施例中,系统参数P,具体如下:

随机选取大素数

其中,

选取哈希函数

输出系统参数

在本实施例中,接入请求,具体如下:

所述接入请求数据包括设备唯一编号ID、设备当前版本PB、类型号LX、系统参数P以及随机数Q,利用公钥对随机数Q进行加密,得到PKS(Q),采用SM2数字签名算法使用私钥对对随机数Q的哈希值H(Q)进行签名得到SKS(H(Q)),并基于设备唯一编号ID、设备当前版本PB、类型号LX、系统参数P、加密随机数PKS(Q)和签名哈希值SKS(H(Q)),构建接入请求M:

M={SN,ID,PB,LX,P,PKS(Q),SKS(H(Q))}。

在本实施例中,匹配和认证,具体如下:

所述服务端硬件管理平台基于接入请求M,根据系统参数P进行初步接入确认,然后获取设备唯一编号ID与平台存储的设备唯一编号进行匹配,并确认设备当前版本是否有误;

基于SM2公钥加密算法使用设备的私钥对加密随机数PKS(Q)进行解密得到随机数Q,然后利用公钥验证签名哈希值SKS(H(Q)),若验证无误则根据类型号LX,基于WebSocket服务单元调用对应的接口接入。

在本实施例中,WebSocket服务单元还设有心跳机制,接入的设备定期发送心跳包确认连接的存活状态。

在本实施例中,设备定期发送心跳包,具体如下:

预设心跳包的格式和内容;

根据不同设备的实际需求和网络环境,设置相应的心跳间隔;

在设备中设置一个定时器,以心跳间隔时间,发送心跳包至WebSocket服务单元;

所述WebSocket服务单元收到心跳包时,更新设备的在线状态。

在本实施例中,WebSocket服务单元收到心跳包时,更新设备的在线状态,具体如下:

当服务器接收到设备发送的心跳包时,可以通过以下步骤更新设备的在线状态:

WebSocket服务单元监听设备发送的心跳包,并在接收到心跳包时进行处理;

根据设备的设备唯一编号找到对应的设备记录,并更新设备的在线状态为在线;

并设置一个超时时间,如果在一定时间内没有接收到设备的心跳包,则判断设备为离线状态。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅是本发明的较佳实施例而已,并非是对本发明作其它形式的限制,任何熟悉本专业的技术人员可能利用上述揭示的技术内容加以变更或改型为等同变化的等效实施例。但是凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与改型,仍属于本发明技术方案的保护范围。

相关技术
  • 一种基于区块链的用户接入设备的统一协同管理方法、管理系统和存储介质
  • 基于安全模块的终端设备统一管理系统及其管理方法
技术分类

06120116513127