一种客户端软件保护方法、装置及客户端的制作方法

文档序号:9730204阅读:335来源:国知局
一种客户端软件保护方法、装置及客户端的制作方法
【技术领域】
[0001]本发明涉及软件安全技术领域,尤其涉及一种客户端软件保护方法、装置及客户端。
【背景技术】
[0002]目前,很多客户端开发方采用加密狗的方式对其出售的客户端软件(软件产品)进行权限保护,从而防止因非法用户复制传播软件,而给客户端开发方带来的经济损失。
[0003]加密狗是一种插在计算机并行口上的软硬件结合的加密产品,外形酷似U盘,其外部接口主要是USB接口。目前采用加密狗的方式对客户端进行权限保护的方式为:当用户第一次运行客户端时,将加密狗插在客户端运行的主机上,这样才能保证客户端的运行,如果不插入加密狗,客户端将无法运行;并且,在客户端第一运行时,客户端将加密狗中的信息调出,并保存到客户端的可执行程序所在的路径,当该客户端在同一主机上第二次运行客户端,则无需再次插入加密狗,直接调用保存的加密狗中的信息即可。
[0004]但是,通过加密狗对客户端进行权限保护的方式,只在用户设备侧对客户端进行了保护,一旦加密狗中的信息被破解,则非法用户即可随意复制传播客户端软件,客户端开发方无法阻止非法用户的这种复制传播行为,通过加密狗的方式对客户端保护的方式的保护力度不够,安全性不高。
[0005]因此,目前亟需一种在开发方的服务器侧能够对客户端软件进行保护的方法,从而提高客户端软件的安全性和保护力度。

【发明内容】

[0006]本发明提供一种客户端软件保护方法、装置及客户端,用以解决现有技术通过加密狗的方式对客户端保护的方式的保护力度不够,安全性不高的问题你。
[0007]—种客户端软件保护方法,包括:
[0008]服务器接收客户端发送的业务请求消息,所述业务请求消息中携带所述客户端对应的许可证书,所述业务请求消息为激活请求消息、认证请求消息或授权请求消息,所述许可证书用于验证所述客户端的合法性;
[0009]服务器判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0010]如果是,确定所述客户端合法并执行所述业务请求消息对应的操作;
[0011]否则,确定所述客户端不合法并向所述客户端返回告警消息。
[0012]所述方法中,所述业务请求消息为认证请求消息时,所述执行所述业务请求消息对应的操作,具体包括:
[0013]对所述客户端进行认证,并向所述客户端返回认证成功消息;
[0014]所述业务请求消息为认证请求消息时,向所述客户端返回告警消息,具体包括:
[0015]向所述客户端返回认证失败消息,并指示关闭所述客户端的所有功能。
[0016]所述方法,还包括:
[0017]接收所述客户端发送的升级包查看请求消息,所述升级包查看请求消息中携带所述客户端对应的许可证书;
[0018]判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0019]如果是,确定所述客户端合法,从升级包站点提取所述升级包,并允许所述客户端查看升级包;
[0020]否则,确定所述客户端不合法,不允许所述客户端查看升级包,并向所述客户端返回查看失败消息。
[0021]所述方法,进一步包括:
[0022]接收所述客户端发送的升级包下载请求消息,所述升级包下载请求消息中携带所述客户端对应的许可证书;
[0023]判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0024]如果是,确定所述客户端合法,并允许所述客户端下载升级包;
[0025]否则,确定所述客户端不合法,不允许所述客户端下载升级包,并向所述客户端返回下载失败消息。
[0026]所述方法中,所述客户端对应的许可证书包括:许可证书的唯一标识、加密后的哈希值以及第一随机数;
[0027]则,判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书,具体包括:
[0028]根据所述客户端对应的许可证书的唯一标识,从所述许可证书数据库中提取与该唯一标识相同的许可证书;
[0029]获取提取的许可证书对应的哈希值,并根据预设的加密算法对提取的许可证书对应的哈希值进行加密,得到提取的许可证书的加密后的哈希值;
[0030]判断是否满足所述客户端对应的许可证书的加密后的哈希值与提取的许可证书的加密后的哈希值相同,且,所述第一随机数在预设范围之内;
[0031]如果是,确定所述客户端对应的许可证书与提取的许可证书匹配,并将第二随机数返回给所述客户端;
[0032]否则,确定所述客户端对应的许可证书与提取的许可证书不匹配。
[0033]所述方法,向所述客户端返回认证成功消息后,进一步包括:
[0034]确定在预设时长内未接收到所述客户端发送的认证请求消息时,向所述客户端返回激活提示消息。
[0035]本发明还提供一种客户端软件保护方法,包括:
[0036]客户端接收用户导入的许可证书,所述客户端安装在用户的网关设备上,所述许可证书用于验证所述客户端的合法性;
[0037]客户端确定向服务器发送业务请求消息时,将所述导入的许可证书编辑到所述业务请求消息中发送给所述服务器,所述许可证书的保存在用户侧的监控设备上,所述业务请求消息为激活请求消息、认证请求消息或授权请求消息。
[0038]所述方法,客户端将提取的许可证书编辑到认证请求消息中发送给所述服务器后,还包括:
[0039]接收到所述服务器返回的认证成功消息后,间隔设定时长向所述服务器发送认证请求消息。
[0040]所述方法,还包括:
[0041]确定向服务器发送升级包查看请求消息时,将所述导入的许可证书编辑到升级包查看请求消息,发送给所述服务器;或者,
[0042]确定向服务器发送升级包下载请求消息时,将所述导入的许可证书编辑到升级包下载请求消息中,发送给所述服务器。
[0043]所述方法,进一步包括:
[0044]确定接收到所述服务器返回的认证失败消息时,关闭所述客户端的所有功能。
[0045]所述方法,还包括:
[0046]接收所述服务器针对所述业务请求消息返回的处理结果消息;
[0047]确定所述处理结果消息中携带的第二随机数在预设范围之内时,进行相应的业务操作。
[0048]本发明还提供一种客户端软件保护装置,包括:
[0049]接收单元,用于接收客户端发送的业务请求消息,所述业务请求消息中携带所述客户端对应的许可证书,所述业务请求消息为激活请求消息、认证请求消息或授权请求消息,所述许可证书用于验证所述客户端的合法性;
[0050]判断单元,用于判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0051 ]第一确定单元,用于在判断单元判断是的情况下,确定所述客户端合法并执行所述业务请求消息对应的操作;
[0052]第二确定单元,用于在判断单元判断否的情况下,,确定所述客户端不合法并向所述客户端返回告警消息。
[0053]所述装置中,所述第一确定单元具体用于:
[0054]在所述业务请求消息为认证请求消息时,对所述客户端进行认证,并向所述客户端返回认证成功消息;
[0055]所述第二确定单元具体用于,在所述业务请求消息为认证请求消息时,向所述客户端返回认证失败消息,并指示关闭所述客户端的所有功能。
[0056]所述装置中,所述接收单元还用于,接收所述客户端发送的升级包查看请求消息,所述升级包查看请求消息中携带所述客户端对应的许可证书;
[0057]所述判断单元还用于,判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0058]所述第一确定单元还用于,在所述判断单元判断是的情况下,确定所述客户端合法,从升级包站点提取所述升级包,并允许所述客户端查看升级包;
[0059]所述第二确定单元还用于,在所述判断单元判断否的情况下,确定所述客户端不合法,不允许所述客户端查看升级包,并向所述客户端返回查看失败消息。
[0060]所述装置中所述接收单元还用于,接收所述客户端发送的升级包下载请求消息,所述升级包下载请求消息中携带所述客户端对应的许可证书;
[0061]所述判断单元还用于,判断是否在保存的许可证书数据库中匹配到所述客户端对应的许可证书;
[0062]所述第一确定单元还用于,在所述判断单元判断是的情况下,,确定所述客户端合法,并允许所述客户端下载升级包;
[0063]所述第二确定单元还用于,在所述判断单元判断否的情况下,确定所述客户端不合法,不允许所述客户端下载升级包,并向所述客户端返回下载失败消息。
[0064]所述装置中,所述判断单元具体用于:
[0065]在所述客
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1