用于加密锁的加密方法和装置制造方法

文档序号:6508692阅读:223来源:国知局
用于加密锁的加密方法和装置制造方法
【专利摘要】本发明提供了一种用于加密锁的加密方法和装置,其中的方法包括:在使用加密锁过程中,先检测所述加密锁是否被共享;如果检测结果为所述加密锁被共享,则中止所述加密锁的正常应用,否则,允许所述加密锁的正常应用。本发明提供的技术方案可以有效的防止通过USB等接口外接的加密锁被共享的现象,从而可以有效的防止采用一个加密锁来装多套软件的问题。
【专利说明】用于加密锁的加密方法和装置

【技术领域】
[0001]本发明涉及信息安全【技术领域】,特别是涉及用于加密锁的加密方法和装置。

【背景技术】
[0002]加密锁是目前常用的软件加密方式,常规的加密锁通常采用各种计算机接口(如USB接口等)接入计算机。
[0003]发明人在实现本发明过程中发现:现有的加密锁存在一个安全漏洞,黑客有可能通过共享加密锁所使用的USB接口,来共享加密锁,从而入侵加密锁,使得软件加密失败,进而给用户造成损失。


【发明内容】

[0004]针对现有技术中存在的缺陷,本发明的目的是提供用于加密锁的加密方法和装置。采用本发明的方法和装置,可以有效的防止通过USB等接口外接的加密锁被共享的现象,从而可以有效的防止采用一个加密锁来装多套软件的问题。
[0005]为了实现以上目的,本发明提供的用于加密锁的加密方法主要包括以下步骤:在加密锁的使用过程中,先检测所述加密锁是否被共享;如果上述检测的结果为所述加密锁被共享,则中止所述加密锁的正常应用,否则,允许所述加密锁的正常应用。
[0006]本发明提供的用于加密锁的加密装置主要包括:检测模块,用于在加密锁的使用过程中,先检测所述加密锁是否被共享;控制模块,用于如果所述检测的结果为所述加密锁被共享,则中止所述加密锁的正常应用,否则,允许所述加密锁的正常应用。
[0007]本发明的效果在于:采用本发明所述的方法及装置,能够有效的防止通过USB等接口外接的加密锁被共享的现象发生,这对于依靠加密锁来保护的软件来说,可以有效的防止用一个加密锁来安装多套软件的现象,对于软件企业来说,有效保护了企业的利益,可以为可以企业带来更多的利润。

【专利附图】

【附图说明】
[0008]图1是本发明的方法实施例的流程图。

【具体实施方式】
[0009]下面将参考附图并结合实施例,来详细说明本发明。
[0010]针对现有技术的加密锁存在的安全漏洞,本发明提供了一种方法和装置,可以有效的防止USB等接口的加密锁被共享这种情况的发生。本发明提供的方法包括如下步骤:[0011 ] 步骤(I )、在首次访问加密锁(即被加密的软件首次访问加密锁)时,读取该被加密的软件所在机器的硬件信息(也可以称为硬件标识),如读取被加密的商业软件上的硬件信息,并存储该硬件信息,如将该硬件信息存储在加密锁中。上述硬件信息应该可以唯一表示出一台机器。
[0012]本发明可以采用标志位的形式来表示加密锁的本次使用是否为首次访问,一个具体的例子为:在出厂或者销售时,开发商或者销售商可以将加密锁内部的首次访问标志位设置为0,这样,用户在使用加密锁时,可以对加密锁中的该标志位的取值进行检测,如果该标志位的取值为1,则表示本次使用不为首次使用;如果该标志位的取值为0,则表示本次使用为首次使用,且在本次使用过程中需要将该标志位的取值设置为I。
[0013]步骤(2 )、在被加密的软件第二次以及以后的每次访问加密锁时,读取被加密的软件所在机器的硬件信息,并将该读取的硬件信息与步骤(I)中存储的硬件信息(如存储在加密锁中的硬件信息)进行比较,以判断这两者是否一致。
[0014]步骤(3)、如果两者不一致,则说明加密锁已经被共享了,应采用相应的措施,中止加密锁的正常使用,如执行报错并退出等操作,从而可以防止加密锁被共享的现象发生;如果两者一致,则说明加密锁并没有被共享,应允许加密锁的正常使用,即被加密软件可以利用加密锁正常执行后续的相关操作。
[0015]本发明提供的用于加密锁的加密装置主要包括:检测模块以及控制模块,且该装置通常设置于加密锁中。
[0016]检测模块主要用于在使用加密锁过程中,先检测该加密锁是否被共享。
[0017]具体的,在首次访问加密锁(即被加密的软件首次访问加密锁)时,检测模块应读取该被加密的软件所在机器的硬件信息,并存储该硬件信息。
[0018]本发明可以采用标志位的形式来表示加密锁的本次访问是否为首次访问,一个具体的例子为:在出厂或者销售时,开发商或者销售商将加密锁内部的首次访问标志位设置为0,这样,在使用加密锁,检测模块可以读取加密锁中的该标志位的取值,如果该标志位为1,则表示本次使用不为首次使用;如果该标志位取值为0,则表示本次使用为首次使用,且在加密锁的本次使用过程中,检测模块模块需将该标志位置为I。
[0019]在被加密的软件第二次以及以后的每次访问加密锁时,检测模块应读取被加密的软件所在机器的硬件信息,检测模块不会再存储该硬件信息,而是将其读取的硬件信息与其存储的硬件信息进行比较,以判断两者是否一致。
[0020]如果上述两者不一致,则说明加密锁已经被共享了,控制模块应采用相应的措施,中止加密锁的正常使用,如控制模块执行报错并退出等操作,从而可以防止加密锁被共享的现象发生;如果两者一致,则说明加密锁并没有被共享,控制模块应允许加密锁的正常使用,即被加密软件可以利用加密锁正常执行后续的相关操作。
[0021]到目前为止,通过实际应用来看,本发明提供的方法和装置已经满足了防止加密锁共享的目的;由于对软件保护来说,加密锁是最有效的保护方式,因此,本发明具有非常重大的现实意义。
[0022]一个具体的例子,设定有一款C/S结构的软件,该软件的服务器(Server)被部署在机器A上,客户端(Client)被部署在机器B和机器C上,当然,该客户端也可以被部署在更多的机器上;这样,机器A上的USB设备可以被机器B和机器C共享。对于USB接口的加密锁来说,由于该加密锁也相当于一种USB设备,因此USB接口的加密锁同样也可以被机器B和机器C共享;从而这对软件的加密来说是一种极大的挑战,其原因在于,在这种情况下,用户只需买一套软件,就可以将该软件应用到诸多的机器上。如果在这种情况下应用本发明提供的技术方案,那么服务器上的加密软件在首次访问加密锁时,加密锁中会存储服务器的硬件信息,而在机器B或者机器C上的加密软件访问加密锁时,由于机器B和机器C上的硬件信息与加密锁中存储的硬件信息部一致,从而可以判断出加密锁已经被共享了,通过报错退出等手段完全可以防止加密锁被共享的现象。
[0023]显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
[0024]以上所述仅为本发明的优选实施例而已,并不用于限制本发明所要求保护的范围,对于本领域的技术人员来说,本发明可以有多种更改和变化。凡在本发明所提出的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明所要求保护的范围之内。
【权利要求】
1.一种用于加密锁的加密方法,其特征在于,包括: 在使用加密锁过程中,先检测所述加密锁是否被共享; 如果所述检测的结果为所述加密锁被共享,则中止所述加密锁的正常应用,否则,允许所述加密锁的正常应用。
2.根据权利要求1所述的方法,其特征在于,检测所述加密锁是否被共享包括: 在加密软件首次访问所述加密锁时,获取所述加密软件当前所在机器的硬件标识,并存储所述硬件标识; 在加密软件再次访问所述加密锁时,获取所述加密软件当前所在机器的硬件标识,并将其与所述存储的硬件标识进行比较; 在两者不一致时,确定所述加密锁被共享,否则,确定所述加密锁没有被共享。
3.根据权利要求2所述的方法,其特征在于,所述存储所述硬件标识包括:将所述硬件标识存储于加密锁中。
4.根据权利要求1或2或3所述的方法,其特征在于,所述中止所述加密锁的正常应用包括:报错并退出。
5.一种用于加密锁的加密装置,其特征在于,包括: 检测模块,用于在使用加密锁过程中,先检测所述加密锁是否被共享; 控制模块,用于如果所述检测的结果为所述加密锁被共享,则中止所述加密锁的正常应用,否则,允许所述加密锁的正常应用。
6.根据权利要求5所述的装置,其特征在于,所述检测模块具体用于: 在加密软件首次访问所述加密锁时,获取所述加密软件当前所在机器的硬件标识,并存储所述硬件标识; 在加密软件再次访问所述加密锁时,获取所述加密软件当前所在机器的硬件标识,并将其与所述存储的硬件标识进行比较; 在两者不一致时,确定所述加密锁被共享,否则,确定所述加密锁没有被共享。
【文档编号】G06F21/34GK104424401SQ201310371357
【公开日】2015年3月18日 申请日期:2013年8月23日 优先权日:2013年8月23日
【发明者】郭相军 申请人:北大方正集团有限公司, 方正信息产业控股有限公司, 北京北大方正电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1