基于JAVA的移动终端鉴权系统和方法、服务器及终端
【技术领域】
本发明涉及移动通信技术领域,特别涉及基于JAVA的移动终端鉴权系统和方法、服务器及终端。
【背景技术】
随着移动终端技术的不断普及,用户对移动终端功能的要求也越来越高。
以手机为例,手机都会有国际移动装备辨识码(InternationalMobileEquipmentIdentitynumber,IMEI),因为IMEI被3GPP组织设计成移动设备的唯一标识码,因此,JAVA应用需要手机的IMEI号进行使用合法性鉴权和用户数统计。
但是,IMEI号本身是一个位于移动设备上的公开的信息,格式简单,便于被大批量的复制。因此,将IMEI直接作为鉴权依据和商业计数统计的基础有先天的技术缺陷,且法律和商业上都不能直接作为诉讼的数据统计依据。
如何提高对移动终端辨识码进行鉴权的合法性,避免基于JAVA的移动终端的非法接入,是移动终端技术领域研究的方向之一。
【发明内容】
本发明所要解决的技术问题是提供基于JAVA的移动终端鉴权系统和方法、服务器及终端,以实现对基于JAVA的移动终端进行鉴权,避免基于JAVA的移动终端的非法接入。
本发明为解决技术问题而采用的技术方案是提供一种基于JAVA的移动终端鉴权系统,所述系统包括至少一个的移动终端,还包括鉴权服务器,
所述移动终端,通过其内部的JAVA程序获取所述移动终端的识别码,将所述识别码按照加密算法进行加密,生成映射数据,所述移动终端将所述识别码扩展为IMEI+X,其中,X=F(IMEI,y),IMEI为识别码,X为映射数据,F为加密算法,y为密钥,并通过所述JAVA程序将所述识别码和所述映射数据发送至所述鉴权服务器;
所述鉴权服务器,接收所述识别码和所述映射数据,判断所述识别码是否为鉴权服务器上数据库中符合授权范围的识别码,若是,则对所述识别码进行加密,若能加密得到与接收到的映射数据相同的映射数据,则通知所述移动终端通过鉴权认证;若所述鉴权服务器没有存储同样的识别码,或者对所述识别码进行加密,不能生成与接收到的映射数据相同的映射数据,则判定鉴权未通过,将该未通过鉴权的识别码记录。
其中,所述映射数据的长度大于或者等于所述识别码的长度。
本发明为解决技术问题而采用的技术方案是提供一种移动终端,所述终端包括:
识别码获取模块,用于通过其内部的JAVA程序获取所述移动终端的识别码;
第一加密模块,用于将所述识别码按照加密算法进行加密,生成映射数据,将所述识别码扩展为IMEI+X,其中,X=F(IMEI,y),IMEI为识别码,X为映射数据,F为加密算法,y为密钥;
发送模块,用于通过所述JAVA程序将所述识别码和所述映射数据发送至鉴权服务器。
本发明为解决技术问题而采用的技术方案是提供一种鉴权服务器,所述服务器包括:
接收模块,用于接收来自基于JAVA的移动终端的识别码和映射数据,所述识别码扩展为IMEI+X,其中,X=F(IMEI,y),IMEI为识别码,X为映射数据,F为加密算法,y为密钥;
判断模块,用于判断所述识别码是否为鉴权服务器上数据库中符合授权范围的识别码;
第二加密模块,用于在所述识别码为鉴权服务器上数据库中符合授权范围的识别码时,对所述识别码进行加密;
所述判断模块,判断所述第二加密模块是否能加密得到与接收到的映射数据相同的映射数据;
通知模块,用于在所述第二加密模块能加密得到与接收到的映射数据相同的映射数据时,通知所述移动终端通过鉴权认证;若所述识别码不属于鉴权服务器上数据库中符合授权范围的识别码,或者对所述识别码进行加密,不能加密得到与接收到的映射数据相同的映射数据,则判定鉴权未通过,将该未通过鉴权的识别码记录。
本发明为解决技术问题而采用的技术方案是提供一种基于JAVA的移动终端鉴权方法,所述方法包括以下步骤:
提供鉴权服务器以及至少一个的移动终端;
所述移动终端通过其内部的JAVA程序获取所述移动终端的识别码,将所述识别码按照加密算法进行加密,生成映射数据,所述移动终端将所述识别码扩展为IMEI+X,其中,X=F(IMEI,y),IMEI为识别码,X为映射数据,F为加密算法,y为密钥,并通过所述JAVA程序将所述识别码和所述映射数据发送至所述鉴权服务器;
所述鉴权服务器接收所述识别码和所述映射数据,判断所述识别码是否为鉴权服务器上数据库中符合授权范围的识别码,若属于,则对所述识别码进行加密,若能加密得到与接收到的映射数据相同的映射数据,则通知所述移动终端通过鉴权认证;若所述识别码不属于鉴权服务器上数据库中符合授权范围的识别码,或者不能加密得到与接收到的映射数据相同的映射数据,则判定鉴权未通过,将该未通过鉴权的识别码记录。
本发明实施例中,移动终端将识别码加密,生成映射数据,将识别码和映射数据发送至鉴权服务器,鉴权服务器首先判断所述识别码是否属于鉴权服务器上数据库中符合授权范围的识别码,若属于,则按照预定算法对所述识别码进行加密,判断是否能加密得到与接收到的映射数据相同的映射数据,若能,则判断移动终端鉴权通过,本发明极大的提高了对移动终端辨识码进行鉴权的合法性,避免了基于JAVA的移动终端的非法接入。
【附图说明】
图1是本发明实施例提供的基于JAVA的移动终端鉴权系统的结构示意图;
图2是本发明实施例提供的移动终端的JAVA系统示意图;
图3是本发明实施例提供的基于JAVA的移动终端鉴权方法的流程图;
图4是本发明实施例提供的移动终端的结构示意图;
图5是本发明实施例提供的鉴权服务器的结构示意图。
【具体实施方式】
下面结合附图和实施例对本发明进行详细说明。
图1示出了本发明实施例提供的基于JAVA的移动终端鉴权系统的结构。其中,所述系统包括至少一个的移动终端11,还包括鉴权服务器12。
其中,移动终端11通过其内部的JAVA程序获取移动终端11的识别码,为便于说明,本发明以识别码为IMEI号为例,当然也可以是其它的识别码,此处不一一列举。
之后,移动终端11将识别码加密,生成映射数据,并通过JAVA程序将识别码和映射数据发送至鉴权服务器12。
在本发明实施例中,映射数据的长度大于或者等于识别码的长度。
鉴权服务器12接收所述识别码和所述映射数据,判断所述识别码是否为鉴权服务器12上数据库中符合授权范围的识别码,若是,则对所述识别码进行加密,若能加密得到与接收到的映射数据相同的映射数据,则通知所述移动终端通过鉴权认证,若不能,则判定鉴权未通过,将该未通过鉴权的识别码记录。
优选的,移动终端11为手机,当然也可以是其他的移动设备,此处不一一列举。
下面结合图2对关于移动终端11的工作过程进行如下描述:
移动终端11内存储有一具有可逆运算的加密算法F(IMEI,y),其输入参数为IMEI号(即识别码)和一个可选的密钥y。其中,密钥y和加密算法F的强度共同决定保密程度。
在具体实施过程中,移动终端11对IMEI号扩展为IMEI+X,X为映射数据,X=F(IMEI,y),IMEI号长度为15位,在本发明实施例中,X的长度大于等于15。
在移动终端11需要进行鉴权时,移动终端11内部的JAVA应用程序向移动终端平台提取IMEI号,平台从自身的记忆体中读取移动终端的IMEI号,并对IMEI号进行运算,得到映射数据X。之后,平台将IMEI+X返回给JAVA应用程序。JAVA应用程序将IMEI+X整体传送给鉴权服务器12。
关于本发明实施例提供的鉴权服务器12的工作原理描述如下:
鉴权服务器12接收移动终端11通过JAVA应用程序发送的识别码和映射数据。
鉴权服务器12在本地的IMEI数据库内查询是否有相同的识别码,如果不能在本地数据库里找到相同的识别码,说明该移动终端本身不属于被授权的范围,比如是一个其他制造商制造的终端设备,按照服务部署的情况,如果鉴权系统需要,则将鉴权未通过的IMEI号进行记录。如果能够找到相同的识别码,则对识别码进行加密,即X’=F(IMEI,y)。
如果X=X’,说明移动终端本身既支持该加密算法F,也掌握密钥y,所以该移动终端可以判断为授权终端,因此可答复移动终端为通过鉴权。如果X与X’不同,则说明移动终端没有掌握正确的加密算法F和密钥y,该IMEI号为伪冒,所以鉴权不通过,答复移动终端请求为不通过,按照服务部署的情况,如果鉴权系统需要,则将鉴权未通过的IMEI号进行记录。
图3示出了本发明实施例提供的基于JAVA的移动终端鉴权方法的流程。
在步骤S301中,提供鉴权服务器以及至少一个的移动终端。
在步骤S302中,移动终端通过其内部的JAVA程序获取移动终端的识别码。
在步骤S303中,移动终端将识别码加密,生成映射数据,并通过JAVA程序将识别码和映射数据发送至鉴权服务器。
在步骤S304中,鉴权服务器接收识别码和映射数据,判断所述识别码是否为鉴权服务器上数据库中符合授权范围的识别码,若是,则进行步骤S305,否则进行步骤S307。
在步骤S305中,鉴权服务器对所述识别码进行加密,判断是否能加密得到相同的映射数据,若是则进行步骤S306,否则进行步骤S307。
在步骤S306中,通过鉴权认证,
在步骤S307中,判定鉴权未通过,将该未通过鉴权的识别码记录。
优选的,映射数据的长度大于或者等于识别码的长度。
优选的,移动终端为手机,当然也可以是其它的终端设备,此处不一一列举。
图4示出了本发明实施例提供的移动终端的结构。
其中,识别码获取模块41通过其内部的JAVA程序获取所述移动终端的识别码。
第一加密模块42将所述识别码按照加密算法进行加密,生成映射数据。
发送模块43通过所述JAVA程序将所述识别码和映射数据发送至鉴权服务器。
优选的,所述识别码为所述移动终端的IMEI号。
图5示出了本发明实施例提供的鉴权服务器的结构。
其中,接收模块51接收来自基于JAVA的移动终端的待鉴权数据串。
判断模块52判断所述识别码是否为鉴权服务器上数据库中符合授权范围的识别码。
若所述识别码为鉴权服务器上数据库中符合授权范围的识别码,第二加密模块53按照对所述识别码进行加密,判断模块52判断所述第二加密模块是否能加密得到同样的映射数据。
若所述第二加密模块53能加密得到同样的映射数据时,通知模块54通知所述移动终端通过鉴权认证。
在判断模块52判断所述识别码不属于鉴权服务器上数据库中符合授权范围的识别码,或者第二加密模块53不能加密得到同样的映射数据时,信息记录模块55记录所述来自移动终端的识别码。
本发明极大地提高了对移动终端辨识码进行鉴权的合法性,避免了基于JAVA的移动终端的非法接入,利于手机等移动终端的推广
在上述实施例中,仅对本发明进行了示范性描述,但是本领域技术人员在阅读本专利申请后可以在不脱离本发明的精神和范围的情况下对本发明进行各种修改。