本申请涉及系统安全领域,具体而言,涉及电子盘系统授权方法和装置。
背景技术:电子盘具有性能稳定、工作环境强、耗电低、寿命高、体积小等特点,它克服了机械硬盘的弊病,被广泛用于工业控制、公共安全、电信、军工、航空等高可靠性需求的数据领域,常作为专用机和工业控制机的操作系统存储介质。电子盘给产品的带来的便利性,同时也却给不法分子制作盗版产品带来了便利。即使电子盘系统经过加密保护,盗版商仍然可以复制整个电子盘数据,使用相同型号的电子盘,生产出相同功能的盗版产品,将会给电子盘系统的正版生产商带来巨大的损失。因此,提供一种通用的、安全的、不影响系统应用服务的电子盘系统保护或授权的措施具有重大而紧迫的现实意义。本发明的发明人在研究过程中发现,相关技术中的保护方法分别存在以下的技术问题:1、采用硬件防盗版的方法。处理器芯片与带序列号的专用硬件相连,将序列号与产品库中的序列号比较,验证失败,产品停止运行。这种方法由于依赖专用的硬件平台,供应商相对单一,配件的选择也受到限制,而且这种硬件防盗版芯片的价格比高出许多,减少了企业的利润。2、将产品密钥保存到主板基本输入输出系统(BasicInputOutputSystem,简称为BIOS)中,一台工控机绑定一个密钥。这种方法需要企业与硬件供应商沟通合作来生产,而且正版产品BIOS中的密钥可能被读取,并写入到盗版产品的BIOS中。3、发放软件序列号注册产品。该方法存在通用性,一个激活码可以用在多台机器上,而且算法可能被破解,制作出算号器或注册机。4、在线注册产品。需要用户联网才能激活产品,在无法上网的环境下无法注册;并要求生产商长期维护一个注册数据库。针对相关技术中对电子盘系统的保护的安全性能低的问题,目前尚未提出有效的解决方案。
技术实现要素:本申请提供了一种电子盘系统授权方法和装置,以至少解决对电子盘系统的保护的安全性能低的问题。根据本申请的一个方面,提供了一种电子盘系统授权方法,包括:分别获取运行电子盘系统的终端的多个硬件的硬件标识;根据所述硬件标识,生成第一硬件码和密钥;根据所述密钥解密所述电子盘系统中存储的加密的第二硬件码,并判断所述第一硬件码与所述第二硬件码是否一致;在判断结果为一致的情况下,向所述终端授权所述电子盘系统的服务。优选地,在解密所述第二硬件码之前,所述方法还包括:判断所述电子盘系统是否激活;在所述电子盘未激活的情况下,激活所述电子盘系统,并存储加密的所述第二硬件码。优选地,激活所述电子盘系统包括:获取激活过程中产生的随机数;将所述随机数和所述第一硬件码发送给所述电子盘系统的提供商,并获取激活码激活所述电子盘系统,其中,所述激活码是所述提供商根据所述随机数和所述第一硬件码生成的;根据所述密钥加密所述第二硬件码,并将加密的所述第二硬件码存储在所述电子盘系统中。优选地,所述方法在每次所述电子盘系统启动时执行。优选地,在以下之一的情况下终止或者限制向所述终端的授权:判断到所述第一硬件码与所述第二硬件码不一致;所述方法中的任一操作无法正常执行。根据本申请的另一方面,还提供了一种电子盘系统授权装置,包括:获取模块,用于分别获取运行电子盘系统的终端的多个硬件的硬件标识;生成模块,用于根据所述硬件标识,生成第一硬件码和密钥;处理模块,用于根据所述密钥解密所述电子盘系统中存储的加密的第二硬件码,并判断所述第一硬件码与所述第二硬件码是否一致;授权模块,用于在判断结果为一致的情况下,向所述终端授权所述电子盘系统的服务。优选地,所述装置还包括:判断模块,用于判断所述电子盘系统是否激活;激活模块,用于在所述电子盘未激活的情况下,激活所述电子盘系统,并存储加密的所述第二硬件码。优选地,所述激活模块包括:获取单元,用于获取激活过程中产生的随机数;收发单元,用于将所述随机数和所述第一硬件码发送给所述电子盘系统的提供商,并获取激活码激活所述电子盘系统,其中,所述激活码是所述提供商根据所述随机数和所述第一硬件码生成的;处理单元,用于根据所述密钥加密所述第二硬件码,并将加密的所述第二硬件码存储在所述电子盘系统中。优选地,所述装置在每次所述电子盘系统启动时执行。优选地,所述授权模块还用于在以下之一的情况下终止或者限制向所述终端的授权:判断到所述第一硬件码与所述第二硬件码不一致;所述装置中的任一模块无法正常执行。通过本申请,采用分别获取运行电子盘系统的终端的多个硬件的硬件标识;根据硬件标识,生成第一硬件码和密钥;根据密钥解密电子盘系统中存储的加密的第二硬件码,并判断第一硬件码与第二硬件码是否一致;在判断结果一致的情况下,向终端授权电子盘系统的服务的方式,解决了对电子盘系统的保护的安全性能低的问题,提高了对电子盘系统的保护的安全性能。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是根据本申请实施例的电子盘系统授权方法的流程示意图;图2是根据本申请实施例的电子盘系统授权装置的结构框图;图3是根据本申请实施例的电子盘系统授权装置的优选结构框图一;图4是根据本申请实施例的电子盘系统授权装置的优选结构框图二;图5是根据本申请优选实施例的系统激活检测装置的结构框图;图6是根据本申请优选实施例的系统激活检测方法的流程示意图;图7是根据本申请优选实施例的硬件绑定检测方法的流程示意图;图8是根据本申请优选实施例的系统激活方法的流程示意图。具体实施方式需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。本实施例提供了一种电子盘系统授权方法,图1是根据本申请实施例的电子盘系统授权方法的流程示意图,如图1所示,包括如下步骤:步骤S102,分别获取运行电子盘系统的终端的多个硬件的硬件标识;步骤S104,根据硬件标识,生成第一硬件码和密钥;步骤S106,根据密钥解密电子盘系统中存储的加密的第二硬件码,并判断第一硬件码与第二硬件码是否一致;步骤S108,在判断结果为一致的情况下,向终端授权电子盘系统的服务。通过上述步骤,采用了根据终端的多个硬件的硬件标识得到的第一硬件码和密钥,并使用得到的密钥解密电子盘系统中加密存储的第二硬件码,通过比较第一硬件码和第二硬件码一致的方式确定对终端授权电子盘系统的服务的方式。用户在更换硬件之后,由于硬件标识是唯一的,所以得到的第一硬件码和密钥与更换硬件之前的不会一致。在这种情况下,即使将整个系统完全移植到同样的终端中,由于同样的终端的硬件标识也不可能完全是一样的,使得这样复制得到的电子盘系统不会授权其他终端正常运行电子盘系统的所有服务,从而解决了对电子盘系统的保护的安全性能低的问题,提高了对电子盘系统的保护的安全性能。需要说明的是,上述方法对电子盘系统的硬件的功能没有特别要求,只要能够获取硬件的硬件标识即可。因此,上述方法的通用性强,能够应用于通用的终端中,避免了使用硬件防盗版和防止非法授权导致的成本升高。并且,该方式仅需要设定由多个硬件标识生成第一硬件码和密钥的算法即可,并不依赖于互联网,也无需由生产商维护注册数据库。优选地,在解密第二硬件码之前,该方法还包括:判断电子盘系统是否激活;在电子盘未激活的情况下,激活电子盘系统,并存储加密的第二硬件码。在系统激活前,电子盘系统中是没有保存加密的第二硬件码的,因此,在获得第一硬件码和密钥之后,在电子盘系统没有激活的情况下,需要提示用户进行激活,并存储加密的第二硬件码。在该方式中提供了一种激活电子盘系统的方法。需要说明的是,如果电子盘系统是首次激活,则电子盘系统中存储的加密的第二硬件码就是加密的第一硬件码。优选地,激活电子盘系统包括:获取激活过程中产生的随机数;将随机数和硬件码发送给电子盘系统的提供商,并获取激活码激活电子盘系统,其中,激活码是提供商根据随机数和硬件码生成的;根据密钥加密第二硬件码,并将加密的第二硬件码存储在电子盘系统中。在该方法中,提供了一种是用随机数和硬件码生成激活码的方法,使得激活还需要借助随机码。提供商可以使用一般的算法对随机码和第二硬件码进行计算,由于随机码在每一次生成时都是不一样的,因此如果通过暴力破解以激活电子盘系统,则至少需要使用同一个终端执行许多次正常的激活过程。而这样的破解过程几乎是无法实现的。因此,采用该方式避免了电子盘系统的激活算法被暴力破解,提高了安全性能。优选地,上述的方法在每次电子盘系统启动时执行。使得系统启动的同时就开始获得保护。优选地,在以下之一的情况下终止或者限制向终端的授权:判断到第一硬件码与第二硬件码不一致;上述方法中的任一操作无法正常执行。采用该方法,在电子盘系统运行异常时,可能是用户企图破解未激活的电子盘系统,此时,可以采用一定的策略终止或限制向终端的授权。优选地,可以在上述方法中的预定几个操作无法正常执行的情况下,才终止或者限制向终端的授权。本实施例还可以提供一个用于执行上述实施例的计算机程序以及保存上述计算机程序的载体,即本申请上述实施例可以通过一个合适的计算体系结构来进行符合自然规律的运行过程。另外,尽管在上述上下文中描述本申请,但上述用于实现执行步骤的计算机程序并不意味着是限制性的,所描述的动作和操作的各方面也可用硬件来实现。本实施例还提供了一种电子盘系统授权装置,该装置用于实现上述电子盘系统授权方法。图2是根据本申请实施例的电子盘系统授权装置的结构框图,如图2所示,该装置包括:获取模块22、生成模块24、处理模块26和授权模块28,其中,获取模块22,用于分别获取运行电子盘系统的终端的多个硬件的硬件标识;生成模块24耦合至上述获取模块22,用于根据硬件标识生成第一硬件码和密钥;处理模块26耦合至上述生成模块24,用于根据密钥解密电子盘系统中存储的加密的第二硬件码,并判断第一硬件码与第二硬件码是否一致;授权模块28耦合至处理模块26,用于在判断结果为一致的情况下,向终端授权电子盘系统的服务。通过上述装置,采用获取模块22分别获取运行电子盘系统的终端的多个硬件的硬件标识;生成模块24根据硬件标识生成第一硬件码和密钥;处理模块26根据密钥解密电子盘系统中存储的加密的第二硬件码,并判断第一硬件码与第二硬件码是否一致;授权模块28在判断结果为一致的情况下,向终端授权电子盘系统的服务的方式,用户在更换硬件之后,由于硬件标识是唯一的,所以得到的第一硬件码和密钥与更换硬件之前的不会一致。在这种情况下,即使将整个系统完全移植到同样的终端中,由于同样的终端的硬件标识也不可能完全是一样的,使得这样复制得到的电子盘系统不会授权其他终端正常运行电子盘系统的所有服务,从而解决了对电子盘系统的保护的安全性能低的问题,提高了对电子盘系统的保护的安全性能。本实施例中所涉及到的模块、单元可以通过软件的方式实现,也可以通过硬件的方式来实现。本实施例中所描述的模块、单元也可以设置在处理器中,例如,可以描述为:一种处理器包括获取模块22、生成模块24、处理模块26和授权模块28。其中,这些模块的名称在某些情况下并不构成对该模块本身的限定,例如,获取模块还可以被描述为“用于分别获取运行电子盘系统的终端的多个硬件的硬件标识的模块”。并且,装置实施例中描述的电子盘系统授权装置对应于上述的方法实施例,其具体的实现过程在方法实施例中已经进行过详细说明,在此不再赘述。图3是根据本申请实施例的电子盘系统授权装置的优选结构框图一,如图3所示,优选地,该装置还包括:判断模块32耦合至生成模块24,用于判断电子盘系统是否激活;激活模块34耦合至判断模块32,用于在电子盘未激活的情况下,激活电子盘系统,并存储加密的第二硬件码。图4是根据本申请实施例的电子盘系统授权装置的优选结构框图二,如图4所示,优选地,激活模块34包括:获取单元42,用于获取激活过程中产生的随机数;收发单元44耦合至获取单元42,用于将随机数和第一硬件码发送给电子盘系统的提供商,并获取激活码激活电子盘系统,其中,激活码是提供商根据随机数和第一硬件码生成的;处理单元46耦合至收发单元44,用于根据密钥加密第二硬件码,并将加密的第二硬件码存储在电子盘系统中。优选地,其中的第二硬件码为第一硬件码。优选地,电子盘系统授权装置在每次电子盘系统启动时执行。优选地,授权模块28还用于在以下之一的情况下终止或者限制向终端的授权:判断到第一硬件码与第二硬件码不一致;上述电子盘系统授权装置中的任一模块无法正常执行。下面将结合优选的实施例对其实现过程进行详细描述。本优选实施例提供了一种系统激活检测的方案,图5是根据本申请优选实施例的系统激活检测装置的结构框图,如图5所示。下面对图5中示出的装置的模块和功能进行介绍。硬件指纹:是程序从硬件设备中获取的某项标识信息;硬件特征码(包括新硬件码和注册硬件码,又称为硬件码):通过收集多项硬件指纹而得到的;注册硬件码:激活过的系统所保存的硬件码,采用密文存储;硬件码生成模块:负责采集多项硬件指纹生成硬件码;硬件绑定检测模块:负责检测系统是否激活;其中,硬件码生成模块与硬件绑定检测模块,被多个系统服务共享调用;系统激活模块:负责激活系统并更新存储的硬件码;激活服务:提供用户注册产品的服务。图6是根据本申请优选实施例的系统激活检测方法的流程示意图,在图6中示出了详细的流程步骤,该方法执行流程简述如下:步骤1,采用硬件绑定注册激活的方法授权终端用户,未激活的系统不能使用或受限使用系统的各项功能;步骤2,系统服务每次启动时都会根据当前硬件环境收集指纹信息并生成新的硬件码,同时读取加密过的注册硬件码并解密,二者进行比较,若不相同视为更换了若干硬件,停止服务;步骤3,用户将激活程序显示的随机码与硬件码发送给厂家,厂家使用采用了约定算法的激活程序计算出激活码,发回给用户;步骤4,用户使用激活码成功激活系统后,将新硬件码加密后更新到系统中,并启动系统服务重新进行硬件绑定检测。盗版系统虽然可能成功启动,但硬件与激活过的系统会有区别(即使同一型号的硬件信息也不尽相同),一旦硬件发生变成变化,硬件码就会变化,无法通过硬件绑定检测,就不能正常使用系统功能。注册硬件码为密文存储,密钥可以是若干项硬件指纹的散列值,即使电子盘系统被破解进入,在不知道加密算法与密钥的情况下,无法解密出注册硬件码。另一方面,每次启动激活程序时都会生成一个随机码,大大增加了激活码算法被破解的难度,这样就能达到有效防止电子盘产品被盗版的目的。优选地,图7是根据本申请优选实施例的硬件绑定检测方法的流程示意图,如图7所示,该方法包括如下步骤:步骤a,硬件码生成模块从硬件资源中收集硬件指纹信息;步骤b,硬件码生成模块使用哈希算法将硬件指纹信息散列成为新硬件码与密钥;步骤c,硬件绑定检测模块用密码将加密的注册硬件码解密;步骤d,硬件绑定检测模块将新硬件码与注册硬件码做比较;步骤e,硬件绑定检测通过,正常运行服务;步骤f,硬件绑定检测失败,停止服务。优选地,图8是根据本申请优选实施例的系统激活方法的流程示意图,如图8所示,该方法包括如下步骤:步骤a,用户通过系统激活模块得到随机码;步骤b,系统激活模块调用硬件码生成模块的接口;步骤c,硬件码生成模块返回新硬件码与密钥;步骤d,用户将随机码与新硬件码发送给厂商;步骤e,厂商根据随机码与新硬件码计算出激活码;步骤f,厂商将激活码发回给用户;步骤g,用户使用系统激活模块,输入激活码,激活系统;步骤h,系统激活模块使用密钥将新硬件码加密并将结果保存。综上所述,通过上述的实施例、优选实施例和优选实施方式,提供了一种适用于所有电子盘的防盗版方法,由于采用了根据多项硬件信息生成唯一码(即硬件特征码),难以伪造所有的硬件信息,而难以将已经授权的系统直接复制到新的终端上使用,即,难以通过伪造硬件信息注册产品;产品注册加入随机码,大大增加暴力破解的难度,激活产品的相关算法不易被破解,并且激活码具有唯一性,不可复制或重复使用;硬件码采用对称加密算法加密保护后存储,加密密钥与硬件信息相关,无法通过破解系统得到;硬件绑定检测模块在服务启动时调用,系统破解后难以通过替换程序绕过检测;万一系统被破解,不能通过简单替换程序来使用系统。解决了对电子盘系统的保护的安全性能低的问题,提高了对电子盘系统的保护的安全性能。显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。