发明内容
本发明实施例所要解决的技术问题在于提供一种能生成稳定有效的密钥和注册码来有效保护软件产品的一种注册码的密钥生成方法及系统以及软件的注册方法及系统。
为解决上述技术问题,本发明实施例提供一种注册码的密钥生成方法,其包括以下步骤:
获取终端的识别码,所述终端为移动终端或者是嵌入式终端,所述识别码为通信模块号或者是电子序列号;
将所述识别码加密成密钥;
将所述密钥提示给用户,以使用户将所述密钥提供给软件提供者,软件提供者再把所述密钥转换成注册码发给用户。
本发明实施例还提供一种注册码的密钥生成系统,其包括:
识别码获取模块,用于获取终端的识别码;
密钥生成模块,用于将所述识别码加密成密钥;
密钥提示模块,用于将所述密钥提示给用户,以使用户将所述密钥提供给软件提供者,软件提供者再把所述密钥转换成注册码发给用户。
本发明实施例还提供一种软件的注册方法,其包括以下步骤:
接收用户输入的注册码;
获取由终端的识别码加密成的密钥,并将所述密钥转换成注册码;
判断所述用户输入的注册码是否与所述由密钥转换成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败。
本发明实施例还提供一种软件的注册系统,其包括:
注册码接收模块,用于接收用户输入的注册码;
密钥获取模块,用于获取由终端的识别码加密成的密钥;
注册码生成模块,用于将所述密钥转换成注册码;
验证模块,用于判断所述用户输入的注册码是否与所述由密钥转换成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败。
由于本发明实施例将终端的识别码加密成密钥并提示给用户,以使用户将所述密钥提供给软件提供者,软件提供者再把所述密钥转换成注册码发给用户,在软件注册时,再将用户输入的注册码与从终端中获取密钥生成注册码相比较,一致时注册成功,而又由于终端的识别码的唯一的,而且是不易修改的,因此本发明实施例能生成稳定有效的密钥和注册码来有效保护软件产品。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,本发明第一实施例提供的在终端上对运行在其中的软件进行注册的方法包括以下步骤:
A1、接收用户输入的注册码,该注册码的密钥生成包括以下步骤:
A11、运行该软件的终端获取终端的识别码;
A12、将该识别码加密成密钥;
A13、将该密钥提示给用户,以使用户可以将该密钥提供给软件提供者,软件提供者再把该密钥经过注册码生成算法转换成注册码发给用户;
A2、获取由终端的识别码加密成的密钥,并将该密钥采用注册码生成算法转换成注册码;
A3、判断用户输入的注册码是否与步骤A2所生成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败,退出软件注册程序。
当然,本发明第一实施例提供的在终端上对运行在其中的软件进行注册的方法中的步骤A2也可以在步骤A1之前或与步骤A1同时进行。
本发明第二实施例提供的与终端相连的设备上对运行在其中的软件进行注册的方法包括以下步骤:
B1、接收用户输入的注册码,该注册码的密钥生成包括以下步骤:
B11、与终端相连的设备通过特定接口远程调用放置在终端的密钥生成代理程序获取密钥,并提示给用户,以使用户可以将该密钥提供给软件提供者,软件提供者再把该密钥经过注册码生成算法转换成注册码发给用户,放置在终端的密钥生成代理程序生成密钥的方法包括以下步骤:
B111、终端获取移动终端的识别码;
B112、将该识别码加密成密钥;
B2、获取与运行该软件的设备相连接的终端的识别码加密成的密钥,并将该密钥采用注册码生成算法转换成注册码;
B3、判断用户输入的注册码是否与步骤B2所生成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败,退出软件注册程序。
当然,本发明第二实施例提供的与终端相连的设备上对运行在其中的软件进行注册的方法中的步骤B2也可以在步骤B1之前或与步骤B1同时进行。
由于本发明实施例将终端的识别码加密成密钥并提示给用户,以使用户将所述密钥提供给软件提供者,软件提供者再把所述密钥转换成注册码发给用户,在软件注册时,再将用户输入的注册码与从终端中获取密钥生成注册码相比较,一致时注册成功,而又由于终端的识别码的唯一的,而且是不易修改的,因此本发明实施例能生成稳定有效的密钥和注册码来有效保护软件产品。另外,由于注册过程所需的密钥是在终端上生成的,从而避免了在与终端相连的设备上生成容易被跟踪或破解。
请参阅图2,本发明实施例提供的运行在终端上的软件的注册码的密钥生成系统包括:
识别码获取模块,用于获取终端的识别码;
密钥生成模块,用于将所述识别码加密成密钥;
密钥提示模块,用于将所述密钥提示给用户,以使用户将所述密钥提供给软件提供者,软件提供者再把所述密钥转换成注册码发给用户。
另外,若软件是运行在与终端相连的设备上,则上述注册码的密钥生成系统中的识别码获取模块和密钥生成模块位于终端,所述系统还包括:
远程调用模块,用于与终端相连接的设备远程控制位于终端的识别码获取模块和密钥生成模块。
请参阅图3,本发明实施例提供的一种软件的注册系统包括:
注册码接收模块,用于接收用户输入的注册码;
密钥获取模块,用于获取由终端的识别码加密成的密钥;
注册码生成模块,用于将所述密钥转换成注册码;
验证模块,用于判断所述用户输入的注册码是否与所述由密钥转换成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败。
本发明实施例提供的注册码的密钥生成方法及系统以及软件的注册方法及系统适用于移动终端、嵌入式终端或者其他智能终端等,下面以应用于移动终端的软件的注册方法为例对本发明实施例的软件的注册方法作详细描述。
本发明实施例在移动终端上对运行在其中的软件进行注册的方法包括以下步骤:
C1、移动终端获取移动终端的识别码,该识别码可以是通信模块号或电子序列号,这些号码跟特定移动终端硬件相关,比较隐蔽,也不会被轻易修改;
C2、将该识别码加密成密钥;
C3、将该密钥提示给用户,以使用户可以将该密钥提供给软件提供者,软件提供者再把该密钥经过注册码生成算法转换成注册码发给用户;
C4、进行软件注册时,移动终端接收用户输入的注册码;
C5、从移动终端中获取密钥,并采用上述注册码生成算法转换成注册码;
C6、移动终端判断用户输入的注册码是否与步骤C5所生成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败,退出软件注册程序。
本发明实施例在与移动终端相连的PC机或者其他设备上对运行在其中的软件进行注册的方法包括以下步骤:
D1、将PC机与移动终端连接;
D2、PC机通过特定接口(例如WINCE平台,微软的ActiveSync提供了RAPI接口)远程调用放置在移动终端的密钥生成代理程序获取密钥,具体包括以下步骤:
D21、移动终端获取移动终端的识别码,该识别码可以是通信模块号或电子序列号,这些号码跟特定移动终端硬件相关,比较隐蔽,也不会被轻易修改;
D22、将该识别码加密成密钥,并提示给用户,以使用户可以将该密钥提供给软件提供者,软件提供者再把该密钥经过注册码生成算法转换成注册码发给用户;
D3、PC机进行软件注册时,接收用户输入的注册码;
D4、PC机获取密钥,并通过上述注册码生成算法转换成注册码;
D5、PC机判断用户输入的注册码是否与步骤D4所生成的注册码一致,如果一致,则软件注册成功,如果不一致,则软件注册失败,退出软件注册程序。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。