背景技术
随着3G网络在全球的普及以及运营商之间竞争的加剧,无线终端设备(Wireless Terminal Device)的销售方式除了传统的生产厂商销售渠道销售,大多数采用的是运营商定制,大规模补贴***给最终用户,这时无线终端设备针对特定运营商的锁网功能就显得特别重要。
典型的无线终端设备有无线USB MODEM、无线数据卡、手机等。手机的锁网功能主要是根据运营商的需要,定制的手机只能在特定的网络下,采用特定的客户识别模块(Subscriber Identity Model,以下简称SIM)卡才能使用,其通过特殊的软件工具对终端进行开户,并使终端自动锁定该运营商的国际移动用户识别码(International Mobile Subscriber Identification number,以下简称IMSI),以此实现终端与运营商的绑定功能,从而维护运营商的利益,防止非法解锁到别的运营商下使用。
通常,手机的锁网功能利用加密算法进行设置。比较常见的有利用非对称加密算法(Asymmetric Encoding Algorithm)进行锁网设置。非对称加密算法需要两个密钥:公开密钥(Public Key)和私有密钥(Private Key)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。
现有的专利文献申请号为CN200710087431名称为“基于非对称算法的移动终端安全锁网锁卡保护和解锁方法”就是采用非对称算法实现对移动终端安全锁网锁卡保护。
然而,CN200710087431专利申请存在以下不足:1)采用非对称加密算法,在移动终端中存储解锁码和密钥,而其密钥或者解锁码与终端是一对一关系,因此对移动终端必须逐一加锁,锁网麻烦且浪费大量时间;2)采用置移动终端在非工作模式来实现锁网,在此情况下,用户则不能使用与网络无关的业务,如修改电话本、拨打紧急号码等;3)因为其从SIM卡中IMSI中提取出移动国家码(Mobile Country Code,以下简称MCC)和移动网络码(Mobile Network Code,以下简称MNC),然后在加锁的MCC-MNC列表中查找,如果有则允许移动终端工作,而一个SIM卡只有一组MCC和MNC,这样就无法实现跨国运营商的一张SIM卡在其允许注册的漫游网络中使用。
发明内容
本发明所要解决的技术问题是,提供一种锁网方便、能使用与网络无关的业务、实现SIM卡漫游使用的无线终端设备锁网方法。
为了解决上述问题,本发明公开了一种无线终端锁网方法,包括以下步骤:
步骤一、判断所述无线终端是否存在加密文件,若是,执行步骤二,否则,所述无线终端不锁网,进行网络注册;
步骤二、通过加锁软件发送加锁指令包到所述无线终端设备,计算所述加锁指令包内信息的信息摘要算法值,将其保存到所述加密文件中,并设置最大允许解锁次数;
步骤三、依次判断所述无线终端设备存储的公众陆地移动通信网值的信息摘要算法值与所述加密文件中的信息摘要算法值是否相同,若是,则表示其为允许注册的网络,进行网络注册,否则,执行步骤四;
步骤四、判断解锁次数是否超过所述最大允许解锁次数,若是,不允许进行网络注册,否则发送解锁请求进行解锁。
进一步地,上述方法中,所述步骤二中的加锁指令包包括至少一组要加锁的移动国家码和移动网络码列表信息。
进一步地,上述方法中,所述步骤四中发送解锁请求进行解锁包括以下步骤:
步骤(1)、所述发送解锁请求得到响应并获得解锁码,对所述解锁码进行信息摘要算法映射计算,得到第一校验码;
步骤(2)、读取所述无线终端设备的IMEI号和SIM卡的IMSI号,两次信息摘要算法映射计算,得到第二校验码;
步骤(3)、判断所述第一校验码和所述第二校验码是否相等,若是,则解锁成功,否则,解锁失败,并判断解锁次数是否超过所述最大允许解锁次数,若是,则舍弃所述公众陆地移动通信网值,不允许终端注册,否则执行所述步骤(1)。
其中,所述步骤(1)中的发送解锁请求得到响应,具体包括以下步骤,用户向运营商申请解锁码,运营商接受用户请求,对用户进行个人身份认证,根据用户提供的信息查到所述无线终端设备的IMEI号和SIM卡的IMSI号。
所述步骤(1)中的解锁码是由所述无线终端设备的IMEI号和SIM卡的IMSI号组成字符串进行信息摘要算法映射计算得到。
所述解锁成功时,所述加密文件存储的锁网标志为解锁成功。
与现有技术相比较,本发明无线终端锁网方法采用信息摘要算法进行加密,不存在密钥保管和分发问题,安全性更高。此外,通过加锁软件发送加锁指令包到无线终端设备,加锁指令包包括多组要加锁的移动国家码和移动网络码列表信息,无线终端设备的加锁功能模块计算加锁指令包内移动国家码和移动网络码列表信息的信息摘要算法值,将其保存到加密文件,完成加锁,不需要逐一对无线终端设备加锁,从而实现批量对无线终端设备加锁,并且采用一个加密文件就能方便地控制加锁或者不加锁。再则,加锁后,即使不允许用户注册某个网络,终端工作模式也正常,可以保证用户使用与网络无关的操作。最后,本发明无线终端锁网方法满足根据用户个人是否需要解锁的需求,使得一张SIM卡在漫游地区可正常使用。
在结合附图阅读本发明实施方式的详细描述后,本发明的特点和优点将变得更加清楚。
具体实施方式
下面结合附图对本发明无线终端设备锁网方法进行说明。
请参阅图1,其是本发明无线终端设备锁网方法的流程图。
步骤S1、判断无线终端设备是否存在加密(Encrypting File System,以下简称EFS)文件,若是,执行步骤二,否则,所述无线终端不锁网,进行网络注册;
EFS文件为无线终端设备上一个自定义新生成的文件。无线终端设备根据是否存在EFS文件来表明其是否锁网。判断是否存在EFS文件,如果存在,则表明此无线终端设备锁网;否则,表明此无线终端设备不锁网,进行网络注册。,EFS文件生成后,无线终端设备程序重新初始化时便打开EFS文件,以防止用户删除。
步骤S2、通过加锁软件发送加锁指令包到所述无线终端设备,计算所述加锁指令包内信息的信息摘要算法(Message-digest Algorithm 5,以下简称MD5)值,将其保存到所述EFS文件中,并设置最大允许解锁次数;
所述加锁软件安装在个人电脑或者台式机上,其通过串口给无线终端设备发送加锁指令包。所述的加锁指令包包括多组要加锁的MCC-MNC列表信息,即移动国家码和移动网络码列表信息。
无线终端设备包括一加锁功能模块和一锁网功能模块。加锁功能模块用于对无线终端设备配置锁网信息。锁网功能模块用于判断用户给出的信息是否与加锁功能模块配置的锁网信息是否一致。无线终端设备接收加锁指令包,并通过其加锁功能模块对加锁指令包内的每一组MCC-MNC列表信息计算MD5值,并把结果保存到EFS文件中。接着,加锁功能模块保存一个解锁标志和一个最大允许解锁次数到EFS文件。然后,无线终端设备给加锁软件返回加锁成功的消息。
步骤S3、依次判断所述无线终端设备存储的公众陆地移动通信网(PublicLand Mobile-communication Network,以下简称PLMN)值的MD5值与所述EFS文件中的MD5值是否相同,若是,则表示其为允许注册的网络,进行网络注册,否则,执行步骤四;
所述网络注册,即搜索PLMN值,其包括自动找网和手动找网。其中,自动找网,包括无线终端设备开机或脱网后的重新找网。
请参阅图2,其是本发明无线终端设备锁网方法中网络注册的流程示意图。步骤S3具体包括以下步骤:
步骤301、依次判断所述无线终端设备存储的PLMN值的MD5值与所述EFS文件中的MD5值是否相同。若是,则表示其为允许注册的网络,执行步骤408,否则,执行步骤401;
无线终端设备包括一非接入层功能模块和一接入层模块。非接入层功能模块利用无线终端设备存储的PLMN值信息选择一个PLMN值。所述的PLMN值信息包括SIM卡中存储的本地公用陆地移动网络(Home PLMN,简称HPLMN)值和已注册的公用陆地移动网络(Registered PLMN,简称RPLMN)值。
步骤S4、判断解锁次数是否超过所述最大允许解锁次数,若是,则舍弃所述无线终端设备存储的PLMN值,否则发送解锁请求进行解锁。步骤S4具体包括以下步骤:
步骤401、判断剩下解锁次数是否大于0。若是,则执行步骤402,否则,执行步骤410;
步骤402、判断是否需要解锁。根据用户个人需求判断是否需要解锁,若是,则执行步骤403,否则,执行步骤410;
步骤403、判断是否获得解锁码。若是,则执行步骤404,否则,执行步骤410。用户向运营商发送解锁请求,如果运营商接受用户请求,对用户进行一些个人身份认证,然后根据用户提供的信息查到该无线终端设备的国际移动身份识别(International Mobile Equipment Identity,以下简称IMEI)号和SIM卡的IMSI号,把这两组数组成一个字符串进行一次MD5映射计算,得到一个解锁码;
步骤404、对解锁码进行一次MD5映射计算,得到一个校验码。所述校验码定义为第一校验码;
步骤405、读取无线终端设备的IMEI号和SIM卡的IMSI号,两次MD5映射计算一个校验码。在用户输入解锁码后,锁网功能模块读取无线终端设备的IMEI号和SIM卡的IMSI号,并进行两次MD5映射计算,得到最终校验码,定义为第二校验码;
步骤406、判断两个校验码是否相等。即判断第一校验码和第二校验码是否相等,若是,则执行步骤407,否则,执行步骤409。
步骤407、设置EFS文件中锁网标志为解锁成功;
步骤408、允许搜索所述PLMN值。无线终端设备命令接入层功能模块去搜索所述PLMN值。接入层功能模块利用无线终端设备中存储的小区列表信息来选择、捕获小区,或启动通用的小区搜索程序来搜索属于所述PLMN值的小区。如果捕获成功,则将搜索结果报告非接入层;否则,将由非接入层再次选择一个PLMN值,重新启动网络注册流程;
步骤409、剩下解锁次数减1,接着执行步骤401;
步骤410、不允许搜索所述PLMN值。舍弃所述无线终端设备存储的PLMN值。
另外,加锁后,即使不允许用户注册某个网络,无线终端设备工作模式也正常,这样就可以保证用户使用与网络无关的操作,如修改电话本和拨打紧急号码等。
所述手动找网的流程与自动找网的流程区别仅在于:无线终端设备开机或脱网时,无线终端设备的非接入层功能模块命令接入层去搜索所有的PLMN值,接入层将搜索到的所有PLMN值信息报告给非接入层,由用户通过一些手动操作来选定一个特定的PLMN值。
另外,由于MD5算法属于不可逆加密算法,而本发明无线终端锁网方法采用MD5算法进行加密,所以其具有运用不可逆加密算法进行加密的优点。不可逆加密算法的特征是加密过程中不需要使用密钥,输入明文后由***直接经过加密算法处理成密文,这种加密后的数据是无法被解密的,只有重新输入明文,并再次经过同样不可逆的加密算法处理,得到相同的加密密文并被***重新识别后,才能真正解密。显然,在这类加密过程中,加密是自己,解密还得是自己,而所谓解密,实际上就是重新加一次密,所应用的“密码”也就是输入的明文。可见,不可逆加密算法不存在密钥保管和分发问题。
与现有技术相比较,本发明无线终端锁网方法采用MD5算法进行加密,不存在密钥保管和分发问题,安全性更高。此外,通过加锁软件发送加锁指令包到无线终端设备,加锁指令包包括多组要加锁的MCC-MNC列表信息,无线终端设备的加锁功能模块计算加锁指令包内MCC-MNC列表信息的MD5值,将其保存到EFS文件,完成加锁,不需要逐一对无线终端设备加锁,从而实现批量对无线终端设备加锁,并且采用一个EFS文件就能方便地控制加锁或者不加锁。再则,加锁后,即使不允许用户注册某个网络,终端工作模式也正常,可以保证用户使用与网络无关的操作。最后,本发明无线终端锁网方法满足根据用户个人是否需要解锁的需求,使得一张SIM卡在漫游地区可正常使用。
以上仅为本发明的优选实施案例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。