一种基于u盘物理序列号的数控系统权限管理方法

文档序号:10515214阅读:268来源:国知局
一种基于u盘物理序列号的数控系统权限管理方法
【专利摘要】本发明提供一种基于U盘物理序列号的数控系统权限管理方法,包括:权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号;所述权限管理模块解密所述U盘内存储的加密授权文件,并核对所述加密授权文件中的验证物理序列号是否与所述U盘的物理序列号一致;若是,则授权管理数控系统,若否,则不授权管理所述数控系统,所述加密授权文件包括:验证物理序列号、用户标识、单位标识、授权期限以及授权级别。本发明使用通用U盘,不增加额外的硬件成本,可以有效改进现有数控系统权限管理方法的不足。
【专利说明】
一种基于U盘物理序列号的数控系统权限管理方法
技术领域
[0001]本发明实施例涉及数控系统权限管理领域,尤其涉及一种基于U盘物理序列号的数控系统权限管理方法。
【背景技术】
[0002]数控系统在控制机床进行运动的过程中需要用到许多由数控系统进行管理的程序、数据或参数,如加工程序、内部循环变量、坐标系数据、刀具参数、机床参数等,这些数据需要允许机床调试人员或者操作者根据实际情况和需要进行修改。由于这些程序、数据或参数对机床运行有着重要的影响,一旦修改不当就可能造成如加工零件或刀具报废、机床撞机、人身伤害等重大事故,同时由于某些程序或数据还可能涉及到某些商业秘密,所以数控系统对这些程序、数据或参数的查看和修改权限的保护一直是数控系统安全管理的重点问题,普通操作者应只具备一些基本的操作权限,数控系统需要可靠地保证某些数据只允许具有特定权限的人员查看或修改。
[0003]对于这一问题目前普遍采用的解决办法是为数控系统的调试人员和操作者分别发布具有不同的权限密码,或者基于此种方法的改进方案,如允许创建多个操作账号和密码并且允许修改密码,但是这类方案目前都有如下弊端:密码输入不便。简单的密码容易泄露、而复杂的密码输入繁琐,容易泄露。密码如果发生泄露也不易被发现或察觉,有可能持续的泄露某些秘密或留有安全隐患。如果因为密码泄露等原因需要修改密码,由于机床工作的车间一般不具备联网条件,所以即便是同一厂商的同种型号数控系统,如果需要修改密码也需要逐台进行手工修改。对于调试人员一人需要维护多台设备则显得非常麻烦。

【发明内容】

[0004]本发明实施例提供一种基于U盘物理序列号的数控系统权限管理方法,以克服上述技术问题。
[0005]本发明基于U盘物理序列号的数控系统权限管理方法,包括:
[0006]权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号;
[0007]所述权限管理模块解密所述U盘内存储的加密授权文件,并核对所述加密授权文件中的验证物理序列号是否与所述U盘的物理序列号一致;若是,则授权管理数控系统,若否,则不授权管理所述数控系统,所述加密授权文件包括:验证物理序列号、用户标识、单位标识、授权期限以及授权级别。
[0008]进一步地,所述权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号之前,还包括:
[0009]授权模块将加密授权文件写入所述U盘。
[0010]进一步地,所述授权模块将加密授权文件写入所述U盘,包括:
[0011 ]授权模块初始化缓冲区所有字节为随机数;
[0012]所述授权模块将加密授权文件从任意偏移位置写入所述缓冲区;
[0013]所述授权模块将所述缓冲区每个字节按位取反;
[0014]所述授权模块将所述缓冲区写入U盘。
[0015]进一步地,所述提取所述U盘的物理序列号,包括:
[0016]权限管理模块根据Windows接口函数枚举本地盘符;
[0017]所述权限管理模块根据所述本地盘符对应的磁盘类型确定U盘名称;
[0018]所述权限管理模块根据注册表查找所述U盘名称对应的注册表键值;
[0019]所述权限管理模块根据所述注册表键值获取所述U盘的物理序列号。
[0020]进一步地,所述解密所述U盘内存储的加密授权文件,包括:
[0021 ]权限管理模块读取所述U盘内存储的加密授权文件;
[0022]所述权限管理模块将加密授权文件每个字节按位取反。
[0023]本发明采用U盘物理序列号作为key,然后用U盘物理序列号与授权信息包括验证物理序列号、用户标识、单位标识、授权期限以及权限级别,生成授权文件存储于U盘内部,为了确保授权信息不被破解,授权文件需要进行加密存储。由于每个U盘物理序列号是互不相同且不能够被修改的,并且授权文件中存储了 U盘物理序列号,所以保证了授权的唯一性和验证的可靠性。
【附图说明】
[0024]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0025]图1为本发明基于U盘物理序列号的数控系统权限管理方法流程图;
[0026]图2为本发明提取U盘物理序列号流程图;
[0027]图3为本发明加密授权文件写入U盘流程图。
【具体实施方式】
[0028]为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0029]图1为本发明基于U盘物理序列号的数控系统权限管理方法流程图,本实施例方法,包括:
[0030]步骤101、权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号;
[0031]步骤102、所述权限管理模块解密所述U盘内存储的加密授权文件,并核对所述加密授权文件中的验证物理序列号是否与所述U盘的物理序列号一致;若是,则授权管理数控系统,若否,则不授权管理所述数控系统,所述加密授权文件包括:验证物理序列号、用户标识、单位标识、授权期限以及授权级别。
[0032]具体来说,权限管理模块监视U盘插拔。监视U盘插拔的模块需要集成在数控系统软件的权限验证部分,需要首先创建一个隐藏的窗口用于接收Windows消息,每当有U盘插入或者拔出时该窗口将接收到WM_DEVICECHANGE消息。数控系统软件操作权限检查。数控系统软件中执行涉及安全或保密的操作之前需要先调用权限验证模块的接口检查当前的授权权限是否满足。使用的授权U盘为普通U盘,可以用作数控拷贝程序或者备份数据的多种用途。
[0033]进一步地,所述提取所述U盘的物理序列号,包括:
[0034]权限管理模块根据Windows接口函数枚举本地盘符;
[0035]所述权限管理模块根据所述本地盘符对应的磁盘类型确定U盘名称;
[0036]所述权限管理模块根据注册表查找所述U盘名称对应的注册表键值;
[0037]所述权限管理模块根据所述注册表键值获取所述U盘的物理序列号。
[0038]具体来说,如图2所示,权限管理模块读取U盘物理序列号首先需要通过GetLogicalDriveStrings函数枚举出所有本地盘符,然后通过GetDriveType判断每个盘符的磁盘类型,只有类型为DRIVE_REMOVABLE才是U盘的盘符(需要先排除软盘的盘符A:和B:),然后在使用注册表查找 API 在 “HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices” 路径下查找\D0sDevices\a符对应的注册表键值,然后过滤无用信息得到U盘的物理序列号。
[0039]本实施例中授权模块对于加密授权文件的加密过程为:
[0040]授权模块初始化缓冲区所有字节为随机数;
[0041 ]所述授权模块将加密授权文件从任意偏移位置写入所述缓冲区;
[0042]所述授权模块将所述缓冲区每个字节按位取反;
[0043 ]所述授权模块将所述缓冲区写入U盘。
[0044]授权模块解密所述U盘内存储的加密授权文件,包括:
[0045]权限管理模块读取所述U盘内存储的加密授权文件;
[0046]所述权限管理模块将加密授权文件每个字节按位取反。
[0047]具体来说,存储授权文件的加密解密方法。授权文件需要定义为固定大小的缓冲区(比如4096字节),然后首先将缓冲区所有字节都初始化为随机数,然后将授权信息的明文从某个偏移位置(比如1024)写入缓冲区,然后将整个缓冲区每字节按位取反,最后将缓冲区写入U盘。此加密方法实现简单且能够保证不会被轻易破解,此过程的逆向过程即为解密方法。如图3所示。
[0048]本发明的技术方案:发布授权时使用WindowsAPI查询U盘的物理序列号,然后结合授权信息生成授权文件并加密存储于对应U盘;权限验证时检查授权信息文件和U盘物理序列号是否匹配以及授权有效期限和权限等级问题。
[0049]本发明具有如下优点:
[0050]1、使用方便。插入U盘即可自动识别授权,拔出U盘授权即刻失效,直观简便,不存在泄漏问题。
[0051]2、无额外硬件成本。采用的U盘和USB接口都是通用硬件,没有额外的硬件成本。
[0052]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【主权项】
1.一种基于U盘物理序列号的数控系统权限管理方法,其特征在于,包括:权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号; 所述权限管理模块解密所述U盘内存储的加密授权文件,并核对所述加密授权文件中的验证物理序列号是否与所述U盘的物理序列号一致;若是,则授权管理数控系统,若否,则不授权管理所述数控系统,所述加密授权文件包括:验证物理序列号、用户标识、单位标识、授权期限以及授权级别。2.根据权利要求1所述的方法,其特征在于,所述权限管理模块根据Windows接口函数提取与所述权限管理模块连接的U盘的物理序列号之前,还包括: 授权模块将加密授权文件写入所述U盘。3.根据权利要求2所述的方法,其特征在于,所述授权模块将加密授权文件写入所述U盘,包括: 授权模块初始化缓冲区所有字节为随机数; 所述授权模块将加密授权文件从任意偏移位置写入所述缓冲区; 所述授权模块将所述缓冲区每个字节按位取反; 所述授权模块将所述缓冲区写入U盘。4.根据权利要求1或2所述的方法,其特征在于,所述提取所述U盘的物理序列号,包括: 权限管理模块根据Windows接口函数枚举本地盘符; 所述权限管理模块根据所述本地盘符对应的磁盘类型确定U盘名称; 所述权限管理模块根据注册表查找所述U盘名称对应的注册表键值; 所述权限管理模块根据所述注册表键值获取所述U盘的物理序列号。5.根据权利要求3所述的方法,其特征在于,所述解密所述U盘内存储的加密授权文件,包括: 权限管理模块读取所述U盘内存储的加密授权文件; 所述权限管理模块将加密授权文件每个字节按位取反。
【文档编号】G06F21/34GK105871558SQ201610369422
【公开日】2016年8月17日
【申请日】2016年5月30日
【发明人】林猛, 董大鹏, 刘沛, 程浩, 蒋文彬
【申请人】科德数控股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1