著录项信息
专利名称 | 导航软件升级管理的方法及服务器 |
申请号 | CN201210058595.7 | 申请日期 | 2012-03-07 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2012-08-01 | 公开/公告号 | CN102622251A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06F9/445 | IPC分类号 | G;0;6;F;9;/;4;4;5;;;G;0;6;Q;3;0;/;0;0;;;G;0;6;Q;5;0;/;0;0查看分类表>
|
申请人 | 深圳市凯立德欣软件技术有限公司 | 申请人地址 | 广东省深圳市福田区天安创新科技广场B907(仅限办公)
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 深圳市凯立德欣软件技术有限公司 | 当前权利人 | 深圳市凯立德欣软件技术有限公司 |
发明人 | 张文星 |
代理机构 | 深圳市顺天达专利商标代理有限公司 | 代理人 | 蔡晓红;纪媛媛 |
摘要
本发明涉及导航软件升级管理的方法及服务器。所述方法包括:A、接收位置服务终端的导航软件升级请求;B、获取位置服务终端当前所存储的导航软件的主程序及相应的版本号;C、基于消息算法对从所述位置服务终端获取的所述导航软件的主程序进行运算,以计算出相应的第一值;D、将所述第一值与服务器中所存储的与所述版本号相对应的第二值进行比较;及E1、当判断所述第一值与所述第二值一致时,对所述位置服务终端进行所述导航软件升级。实施本发明,通过在导航软件升级过程中使用信息算法对导航软件的主程序进行验证,使得盗版导航软件无法升级,因而能够有效地防止盗版导航软件的使用,保护软件厂商的合法权益。
1.一种导航软件升级管理的方法,其特征在于,包括:
A、接收位置服务终端的导航软件升级请求;
B、获取所述位置服务终端当前所存储的导航软件的主程序及相应的版本号;
C、基于消息摘要算法对从所述位置服务终端获取的所述导航软件的主程序进行运算,以计算出相应的第一摘要值;
D、将所述第一摘要值与服务器中所存储的与所述版本号相对应的第二摘要值进行比较;及
E1、当判断所述第一摘要值与所述第二摘要值一致时,对所述位置服务终端进行所述导航软件升级;其中,所述第二摘要值是基于所述消息摘要算法对预先存储的所述版本号的正版导航软件的主程序进行运算而得到;其中,相对于所述版本号,所述第二摘要值是唯一的;
其中,所述对所述位置服务终端进行所述导航软件升级包括:
F1、获取所述位置服务终端的设备特征码;
G、基于所述位置服务终端的设备特征码生成合法激活码,其中所述合法激活码对于每一设备特征码是唯一的;
H、发送所述合法激活码至所述位置服务终端;
I、所述位置服务终端获取升级软件;
J、进入升级软件安装程序,请求用户输入激活码;
K、比较用户输入的激活码与位置服务终端生成的合法激活码是否一致,当一致时,继续安装程序,当不一致时,终止安装程序。
2.根据权利要求1所述的导航软件升级管理的方法,其特征在于,在步骤G之前,还包括:
F21、基于步骤F1中所获取的设备特征码,查找有关所述位置服务终端的升级付费记录;
F22、当查找到所述位置服务终端的升级付费记录时,执行步骤G;且
当未找到所述位置服务终端的升级付费记录时,终止升级操作。
3.根据权利要求1至2中任一项所述的导航软件升级管理的方法,其特征在于,所述消息摘要算法为MD5算法,所述第一摘要值和第二摘要值为MD5值。
4.一种用于导航软件升级管理的服务器,其特征在于,包括:
通信模块,用于接收位置服务终端的导航软件升级请求;
第一获取模块,用于通过所述通信模块获取所述位置服务终端当前所存储的导航软件的主程序及相应的版本号;
算法模块,用于基于消息摘要算法对从所述位置服务终端获取的所述导航软件的主程序进行运算,以计算出相应的第一摘要值;
存储模块,其中存储有所述版本号、以及基于所述消息摘要算法对预先存储的所述版本号的正版导航软件的主程序进行运算而得到第二摘要值;相对于所述版本号,所述第二摘要值是唯一的;
第一比较模块,用于将所述第一摘要值和所述第二摘要值进行比较;
升级操作控制模块,用于当所述第一摘要值与所述第二摘要值一致时,控制所述位置服务终端进行所述导航软件升级的操作;
其中,所述升级操作控制模块包括:
第二获取模块,用于通过所述通信模块获取所述位置服务终端的设备特征码;
合法激活码生成模块,用于基于所述位置服务终端的设备特征码生成合法激活码,其中所述合法激活码对于每一设备特征码是唯一的;
所述通信模块还用于发送所述合法激活码至所述位置服务终端。
5.根据权利要求4所述的用于导航软件升级管理的服务器,其特征在于,还包括:
付费确认模块,用于基于所获取的设备特征码,查找有关所述位置服务终端的升级付费记录;其中,
当查找到所述位置服务终端的升级付费记录时,向合法激活码生成模块发送生成合法激活码的指令;且
当未找到所述位置服务终端的升级付费记录时,发出终止升级操作的指令。
6.根据权利要求4所述的用于导航软件升级管理的服务器,其特征在于,所述消息摘要算法为MD5算法,所述第一摘要值和第二摘要值为MD5值。
导航软件升级管理的方法及服务器\n技术领域\n[0001] 本发明涉及导航信息服务领域,更具体地说,涉及一种导航软件升级管理的方法及用于导航软件升级管理的服务器。\n背景技术\n[0002] 对于外出旅行、自驾游等活动而言,位置服务日愈成为人们依赖、期待的服务项目。位置服务设备是指本身具备与位置相关的各种功能的设备,或者能够通过远端在线方式向用户提供位置服务及其相关功能的设备。位置服务设备可以是电脑、手机、导航设备等。位置服务设备以导航设备为例,其工作原理为:导航设备确定目标位置的位置坐标,将其与自身储存的电子地图中记载的位置坐标进行匹配,以此来确定搭载该导航设备的导航对象在电子地图中的准确位置。导航设备可以是车载设备、便携式导航仪、手机设备等。\n[0003] 位置服务设备之所以能够具备导航功能是因为位置服务设备中存储有导航软件,导航软件中包括电子地图,通过用户的操作,可以对电子地图进行操作,也可以实现导航功能。由于地理信息会随时间发生变化,导航的相关功能及设计也会进行优化,所以导航软件每过一段时间,就会进行升级。目前市场上存在有导航软件的盗版,由于导航软件盗版有可能对导航软件进行了修改,因此,在进行导航软件升级的时候,就有可能升级不成功,或者升级后的导航软件存在诸多问题,影响用户的使用体验,同时也损害了商家的合法权益。因此,为了防止使用盗版软件,同时为了保证服务质量,需要一种对导航软件的升级进行有效管理的办法及系统。\n发明内容\n[0004] 本发明要解决的技术问题在于,针对现有技术中存在的导航软件容易被盗版的问题,提供一种导航软件升级管理的方法,以杜绝盗版导航软件。\n[0005] 本发明要解决的另一技术问题在于,针对现有技术中存在的导航软件容易被盗版的问题,提供一种用于导航软件升级管理的服务器,以杜绝盗版导航软件。\n[0006] 本发明解决其技术问题所采用的技术方案是:提供一种导航软件升级管理的方法,包括:\n[0007] A、接收位置服务终端的导航软件升级请求;\n[0008] B、获取所述位置服务终端当前所存储的导航软件的主程序及相应的版本号;\n[0009] C、基于消息摘要算法对从所述位置服务终端获取的所述导航软件的主程序进行运算,以计算出相应的第一摘要值;\n[0010] D、将所述第一摘要值与管理服务器中所存储的与所述版本号相对应的第二摘要值进行比较;及\n[0011] E1、当判断所述第一摘要值与所述第二摘要值一致时,对所述位置服务终端进行所述导航软件升级。\n[0012] 在本发明所述的导航软件升级管理的方法中,所述第二摘要值是基于所述消息摘要算法对预先存储的所述版本号的正版导航软件的主程序进行运算而得到;其中,相对于所述版本号,所述第二摘要值是唯一的。\n[0013] 在本发明所述的导航软件升级管理的方法中,所述对所述位置服务终端进行所述导航软件升级包括:\n[0014] F1、获取所述位置服务终端的设备特征码;\n[0015] G、基于所述位置服务终端的设备特征码生成合法激活码,其中所述合法激活码对于每一设备特征码是唯一的;\n[0016] H、发送所述合法激活码至所述位置服务终端;\n[0017] I、所述位置服务终端获取升级软件;\n[0018] J、进入升级软件安装程序,请求用户输入激活码;\n[0019] K、比较用户输入的激活码与位置服务终端生成的合法激活码是否一致,当一致时,继续安装程序,当不一致时,终止安装程序。\n[0020] 在本发明所述的导航软件升级管理的方法中,在步骤G之前,还包括:\n[0021] F21、基于步骤F1中所获取的设备特征码,查找有关所述位置服务终端的升级付费记录;\n[0022] F22、当查找到所述位置服务终端的升级付费记录时,执行步骤G;且[0023] 当未找到所述位置服务终端的升级付费记录时,终止升级操作。\n[0024] 在本发明所述的导航软件升级管理的方法中,所述消息摘要算法为MD5算法,所述第一摘要值和第二摘要值为MD5值。\n[0025] 本发明解决其技术问题所采用的另一技术方案是:构造一种用于导航软件升级管理的服务器,其特征在于,包括:\n[0026] 通信模块,用于接收位置服务终端的导航软件升级请求,\n[0027] 第一获取模块,用于通过所述通信模块获取所述位置服务终端当前所存储的导航软件的主程序及相应的版本号;\n[0028] 算法模块,用于基于消息摘要算法对从所述位置服务终端获取的所述导航软件的主程序进行运算,以计算出相应的第一摘要值;\n[0029] 存储模块,其中存储有所述版本号、以及基于所述消息摘要算法对预先存储的的所述版本号的正版导航软件的主程序进行运算而得到第二摘要值;\n[0030] 第一比较模块,用于将所述第一摘要值和所述第二摘要值进行比较;\n[0031] 升级操作控制模块,用于当所述第一摘要值与所述第二摘要值一致时,控制所述位置服务终端进行所述导航软件升级的操作。\n[0032] 在本发明所述的用于导航软件升级管理的服务器中,相对于所述版本号,所述第二摘要值是唯一的。\n[0033] 在本发明所述的用于导航软件升级管理的服务器中,所述升级操作控制模块包括:\n[0034] 第二获取模块,用于通过所述通信模块获取所述位置服务终端的设备特征码;\n[0035] 合法激活码生成模块,用于基于所述位置服务终端的设备特征码生成合法激活码,其中所述合法激活码对于每一设备特征码是唯一的;\n[0036] 所述通信模块还用于发送所述合法激活码至所述位置服务终端。\n[0037] 在本发明所述的用于导航软件升级管理的服务器中,还包括:\n[0038] 付费确认模块,用于基于所获取的设备特征码,查找有关所述位置服务终端的升级付费记录;其中,\n[0039] 当查找到所述位置服务终端的升级付费记录时,向合法激活码生成模块发送生成合法激活码的指令;且\n[0040] 当未找到所述位置服务终端的升级付费记录时,发出终止升级操作的指令。\n[0041] 在本发明所述的用于导航软件升级管理的服务器中,所述消息摘要算法为MD5算法,所述第一摘要值和第二摘要值为MD5值。\n[0042] 实施本发明,具有以下有益效果:通过在导航软件升级过程中使用信息摘要算法对导航软件的主程序进行验证,使得盗版导航软件无法升级,因而能够有效地防止盗版导航软件的使用,保护软件厂商的合法权益。\n附图说明\n[0043] 下面将结合附图及实施例对本发明作进一步说明,附图中:\n[0044] 图1是本发明用于导航软件升级管理的服务器的结构示意图;\n[0045] 图2是本发明导航软件升级管理的方法的流程图;\n[0046] 图3是根据本发明第一实施例的导航软件升级管理的方法的流程图。\n具体实施方式\n[0047] 在计算机安全领域,涉及到一个重要的范畴,那就是加密解密技术。加密解密技术的发展,为计算机安全提供了很大的保障,同时也随着破解技术的蔓延,对计算机安全带来了挑战。在计算机加密算法当中,主要存在对称密钥体制、非对称密钥体制公钥体系、消息摘要、以及数字签名等大类型的算法。\n[0048] 信息摘要算法例如MD2,MD4和MD5算法是一种被广泛使用的HASH函数,是由Ron Rivest设计的专门用于加密处理的单散列函数,通过MD5算法运算之后将产生一个128位(16字节)的信息摘要,除非使用暴力破解,没能找到其他好的方法,而一般计算机运算能力暴力破解时间一般需要一千多年之久,因此MD5算法是一种优秀的加密算法。\n[0049] 哈希函数(HASH)的运算原理为:任意输入一个任何长度的任何字符串,通过哈希函数运算之后返回一串固定长度的字符串,该字符串即称为HASH值,用于计算哈希值的单向HASH函数将用于产生目标信息摘要。使用HASH函数主要可以解决两个问题:第一,无法从经过哈希函数产生的哈希值反向计算出运算前的信息原文;第二,无法查找两个经HASH操作后生成相同HASH值的不同原文。因此利用哈希函数,在数字签名中就可以解决验证签名和用户身份验证的问题。\n[0050] 由于信息摘要能简要地描述了一份较长的信息或文件,因此信息摘要被称为“数字指纹”。对于某一个文件原文,产生的信息摘要是唯一的。同时,也由于我们无法逆向计算出原文,信息摘要也就不怕被公开,即使公开,也无法得到原文信息。\n[0051] 本发明提出一种导航软件升级管理方法,其中采用信息摘要算法来对导航软件进行验证,以判断位置服务终端所使用的是否是正版软件。\n[0052] 如图1所示,本发明的用于导航软件升级管理的服务器100包括通信模块10、第一获取模块20、存储模块30、算法模块40、第一比较模块50及升级操作控制模块60。其中升级操作控制模块60进一步包括第二获取模块62、付费确认模块64和合法激活码生成模块\n66。\n[0053] 通信模块10包括适当的逻辑、电路和/或代码,用于与位置服务终端进行通信,例如,接收位置服务终端的导航软件升级请求、向位置服务终端发送指令。通信模块10可通过通信网络与位置服务终端进行通信。位置服务终端也设置有无线通信模块,例如但不限于GMS通信模块、CDMA通信模块或GPRS通信模块,以通过无线通信网络与服务器100进行通信。\n[0054] 第一获取模块20包括适当的逻辑、电路和/或代码,用于通过通信模块10获取位置服务终端当前所存储的导航软件的主程序及相应的版本号。例如,当接收到位置服务终端的导航软件升级请求后,第一获取模块20通过通信模块10向位置服务终端发送指令,要求位置服务终端将其当前使用并存储的导航软件的主程序及相应的版本号上传至服务器。\n[0055] 算法模块40包括适当的逻辑、电路和/或代码,用于基于消息摘要算法对导航软件的主程序进行运算,以计算出相应的第一摘要值。例如对从位置服务终端获取的导航软件的主程序进行运算,从而得到第一摘要值。\n[0056] 存储模块30包括适当的逻辑、电路和/或代码,用于存储导航软件升级管理所需要使用的数据。例如,存储模块30中存储有导航软件的版本号、以及基于消息摘要算法对与该版本号对应的正版导航软件的主程序进行运算而得到第二摘要值。例如,存储模块30中可以存储导航软件的多个版本号及各个版本号所对应的正版导航软件的主程序的第二摘要值,类似于存储有“版本号vs第二摘要值”对照表。另外,存储模块30中还可以存储各个版本号所对应的正版导航软件或正版导航软件的主程序。在本发明的一个优选实施例中,所采用的消息摘要算法为MD5算法,其中第一摘要值和第二摘要值均为MD5值。\n[0057] 第一比较模块50包括适当的逻辑、电路和/或代码,用于将算法模块40计算出的第一摘要值和存储模块30中所存储的对应于同一个版本号的正版导航软件的主程序的第二摘要值进行比较,得到一比较结果。根据比较结果,导航软件升级管理服务器确定是否需要升级操作控制模块60继续为位置服务终端提供升级服务。具体地,若第一摘要值与第二摘要值一致,则允许位置服务终端进行导航软件升级;若第一摘要值与第二摘要值不同,则不允许升级。\n[0058] 升级操作控制模块60中的第二获取模块62、付费确认模块64和合法激活码生成模块66,用于当所述第一摘要值与所述第二摘要值一致时,控制位置服务终端进行导航软件升级的操作。\n[0059] 第二获取模块62包括适当的逻辑、电路和/或代码,用于通过通信模块10获取位置服务终端的设备特征码。例如,在第一摘要值与第二摘要值一致的情况下,第二获取模块\n62通过通信模块10向位置服务终端发送指令,要求位置服务终端将其设备特征码上传至服务器。\n[0060] 合法激活码生成模块64包括适当的逻辑、电路和/或代码,用于基于位置服务终端的设备特征码及MD5算法生成合法激活码。针对每一个设备特征码,该合法激活码是唯一的。所生成的合法激活码通过通信模块10发送至位置服务终端。\n[0061] 付费确认模块66包括适当的逻辑、电路和/或代码,用于基于所获取的设备特征码,查找有关位置服务终端的升级付费记录,并基于查找结果确定是否继续提供后续服务。\n具体地,当查找到位置服务终端的升级付费记录后,向合法激活码生成模块66发送生成合法激活码的指令;当未找到位置服务终端的升级付费记录时,发出终止升级操作的指令。\n[0062] 在本发明的一些实施例中,例如对于免费升级服务,在接收到位置服务终端的设备特征码后立即生成合法激活码并发送。而在另一些实施例中,例如对于有偿升级服务,还需要对位置服务终端的升级付费情况进行确认,待确认已付费之后,才基于设备特征码生成合法激活码。\n[0063] 本发明中,位置服务终端包括通信模块、存储模块和第二比较模块。该存储模块中存储有位置服务终端的设备特征码、导航软件、导航软件的版本号等。通过通信模块位置服务终端可获取升级软件(例如通过下载等方式)。运行升级软件安装程序后,可要求用户可输入激活码,用户可根据接收到的合法激活码进行输入,位置服务终端可以根据MD5算法及设备特征码算出合法激活码并判断用户输入的激活码是否与合法激活码一致,当一致时,继续安装程序,当不一致时,终止安装程序。\n[0064] 以下结合图2和图3,对本发明导航软件升级管理的方法进行详细说明。如图1所示,在步骤A,用于导航软件升级管理的服务器100接收位置服务终端的导航软件升级请求。之后,在步骤B,服务器100中的第一获取模块20通过通信模块10获取位置服务终端当前所存储的导航软件的主程序及相应的版本号。在步骤C,算法模块40基于消息摘要算法对从位置服务终端获取的导航软件的主程序进行运算,以计算出相应的第一摘要值。在步骤D,第一比较模块50将计算得出的第一摘要值与服务器100的存储器30中所存储的与步骤B中所获取的版本号相对应的第二摘要值进行比较。之后,根据比较结果,确定是否提供后续服务。当判断第一摘要值与第二摘要值一致时,进入步骤E1,对位置服务终端进行导航软件升级。当判断第一摘要值与第二摘要值不同时,进入步骤E2,不允许对位置服务终端进行所述导航软件升级。\n[0065] 需要说明的是,如前所述,存储模块30中可以存储导航软件的多个版本号及各个版本号所对应的正版导航软件的主程序的第二摘要值,类似于存储有“版本号vs第二摘要值”对照表。另外,存储模块30中还可以存储各个版本号所对应的正版导航软件或正版导航软件的主程序。第一比较模块50可从存储模块30中读取所需要的版本号相对应的第二摘要值。其中,对应于同一个版本号的正版导航软件的主程序,利用消息摘要算法计算出的第二摘要值是唯一的。\n[0066] 根据本发明的一实施例,图3进一步示出了图2中步骤E所包括的详细步骤。如图3所示,对位置服务终端进行导航软件升级包括:步骤F1,服务器100中第二获取模块62向位置服务终端发送指令,以获取位置服务终端的设备特征码。之后在步骤F21,付费确认模块基于步骤F1中所获取的设备特征码,查找有关位置服务终端的升级付费记录。在步骤F22,基于查找结果确定是否继续提供后续服务,具体地,当查找到位置服务终端的升级付费记录时,执行步骤G;当未找到位置服务终端的升级付费记录时,执行步骤K2,终止升级操作。\n[0067] 在步骤G中,服务器100中的合法激活码生成模块64基于位置服务终端的设备特征码及MD5算法生成合法激活码。需要指出的是,该合法激活码对于每一设备特征码是唯一的。之后,在步骤H,服务器100通过通信模块10将合法激活码发送至位置服务终端。\n[0068] 在步骤I,位置服务终端获取升级软件,例如通过下载的方式。之后,在步骤J,位置服务终端运行升级软件安装程序,在安装界面,显示请求用户输入激活码。用户可以根据接收到的合法激活码进行输入,当用户输入激活码后,进入步骤K,位置服务终端可以根据MD5算法及设备特征码算出合法激活码并判断用户输入的激活码是否与合法激活码一致,当一致时,执行步骤K1,允许位置服务终端进行导航软件的升级,继续安装程序;当不一致时,执行步骤K2,终止升级软件安装程序。\n[0069] 需要说明的是,在本发明的导航软件升级管理的方法中,步骤F21和步骤F22是可选步骤,在图3中采用虚线框表示。例如,对于有偿升级服务,需要执行步骤F21和F22;而对于免费升级服务,则无需执行步骤F21和F22。\n[0070] 本发明是通过一些实施例进行描述的,本领域技术人员知悉,在不脱离本发明的精神和范围的情况下,可以对这些特征和实施例进行各种改变或等同替换。另外,在本发明的教导下,可以对这些特征和实施例进行修改以适应具体的情况及材料而不会脱离本发明的精神和范围。因此,本发明不受此处所公开的具体实施例的限制,所有落入本申请的权利要求范围内的实施例都属于本发明的保护范围。
法律信息
- 2016-01-06
- 2013-01-16
实质审查的生效
IPC(主分类): G06F 9/445
专利申请号: 201210058595.7
申请日: 2012.03.07
- 2012-08-01
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2007-04-18
|
2006-04-24
| | |
2
| |
2010-10-20
|
2010-05-21
| | |
3
| |
2010-08-04
|
2010-01-29
| | |
4
| |
2009-10-14
|
2009-05-06
| | |
5
| |
2011-12-07
|
2011-08-19
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |