锁网移动终端的反破解方法和装置、 及锁网移动终端 技术领域 本发明涉及锁网通信技术, 特别是涉及一种锁网移动终端的反破解方法和装置、 及锁网移动终端。
背景技术 随着移动通信的发展, 移动终端已经在全球非常普及, 于是各移动通信的运营商 为争夺市场而展开了激烈的竞争。 运营商为了扩大市场占有率往往会向移动终端制造商集 中采购大量移动终端, 并且要求所采购的移动终端锁定其自身运营的网络, 运营商再通过 补贴将采购的移动终端以低于成本价并结合非常优惠的套餐卖出, 以迅速增加自身的市场 占有率。
但是, 由于上述移动终端都是锁网移动终端, 所以只有插特定运营商的用户识别 码 (SIM, Subscriber Identity Module) 卡才能正常使用, 否则无法找到网络。然而, 目前 已开发出了可以破解锁网移动终端的 Unlock SimCard, 该 Unlock SimCard 类似于 SIM 卡,
几乎能够破解市场上所有的主流品牌的锁网移动终端。 “Unlock SimCard” 的出现使得移动 终端的锁网功能失效, 使运营商投入的大量补贴付之东流, 而且大大影响了运营商的市场 占有率, 严重损害了运营商的利益。 因此, 运营商迫切需要一种防止锁网移动终端被破解的 方法来保证其自身的利益不受侵犯。 发明内容
有鉴于此, 本发明的主要目的在于提供一种锁网移动终端的反破解方法和装置、 及锁网移动终端, 能防止锁网移动终端被破解。
为达到上述目的, 本发明公开了一种锁网移动终端的反破解方法, 包括 : 移动终端 开机, 用户识别码 SIM 卡向移动终端上报第一锁网信息 ; 该移动终端处于激活锁网状态时, 判断所述第一锁网信息是否合法, 若不合法则锁住 SIM 卡 ; 若所述第一锁网信息合法, 则主 动读取第二锁网信息并判断所述第二锁网信息是否合法, 如果合法, 则开始寻找网络 ; 如果 不合法, 则锁住 SIM 卡。
其中, 所述主动读取第二锁网信息, 包括 : 判断 SIM 卡是否完成初始化, 如果没有 完成初始化, 则等待 SIM 卡继续初始化 ; 如果完成初始化, 则主动读取第二锁网信息。
上述方法中, 所述第一锁网信息包括 : 移动国家号 MCC、 移动网号 MNC, 或集成电路 卡识别码 ICCID ; MCC、 MNC 为第一锁网信息时, 所述判断第一锁网信息是否合法为 : 将 SIM 卡上报的 MCC、 MNC 与移动终端中保存的 IMSI 中相对应的信息作比较, 如果相同则合法, 如 果不同则不合法 ; 或者, ICCID 为第一锁网信息时, 所述判断第一锁网信息是否合法为 : 将 SIM 卡上报的 ICCID 与移动终端中保存的 ICCID 作比较, 如果相同则合法, 如果不同则不合 法。
其中, 所述第二锁网信息包括国际移动用户识别码 IMSI、 或 ICCID ; IMSI 为第二锁 网信息时, 所述判断第二锁网信息是否合法为 : 将读取到的 IMSI 与移动终端中保存的 IMSI进行比较, 如果相同则合法, 如果不同则不合法 ; 或者, ICCID 为第二锁网信息时, 所述判断 第二锁网信息是否合法为 : 将读取到的 ICCID 与移动终端中保存的 ICCID 作比较, 如果相同 则合法, 如果不同则不合法。
为实现上述方法, 本发明提供一种锁网移动终端, 包括 : SIM 卡、 激活判断模块、 锁 网模块、 找网模块、 锁卡模块、 反破解装置 ; 其中, SIM 卡, 用于向锁网模块上报第一锁网信 息; 激活判断模块, 用于判断是否处于激活锁网状态, 并在处于激活锁网状态时通知锁网模 块; 处于未激活锁网状态时通知找网模块 ; 锁网模块, 用于接收并判断所述第一锁网信息 是否合法, 在第一锁网信息不合法时通知锁卡模块 ; 找网模块, 用于寻找网络 ; 锁卡模块, 用于锁住 SIM 卡 ; 反破解装置, 用于主动读取并判断第二锁网信息是否合法, 在第二锁网信 息合法时通知找网模块, 并在第二锁网信息不合法时通知锁卡模块。
其中, 所述反破解装置具体用于 : 定时判断 SIM 卡是否完成初始化, 并在 SIM 卡完 成初始化后主动读取第二锁网信息 ; 在 SIM 卡未完成初始化时等待一定时间间隔再判断 SIM 卡是否完成初始化。
上述终端中, 所述反破解装置包括 : 初始化判断单元、 读取单元、 判断单元 ; 其中, 初始化判断单元, 用于定时判断 SIM 卡是否完成初始化, 并在初始化完成时通知所述读取 单元 ; 读取单元, 用于在 SIM 卡完成初始化后主动读取第二锁网信息 ; 判断单元, 用于判断 所述第二锁网信息是否合法, 并在第二锁网信息合法时通知锁网移动终端寻找网络, 不合 法时通知锁网移动终端锁住 SIM 卡。
其中, 所述第一锁网信息包括 : MCC、 MNC, 或 ICCID ; 所述第二锁网信息包括 : IMSI、 或 ICCID。
相应地, 本发明还提供一种锁网移动终端的反破解装置, 包括 : 初始化判断单元、 读取单元、 判断单元 ; 其中, 初始化判断单元, 用于定时判断 SIM 卡是否完成初始化, 并在初 始化完成时通知所述读取单元 ; 读取单元, 用于在 SIM 卡完成初始化后主动读取第二锁网 信息 ; 判断单元, 用于判断所述第二锁网信息是否合法, 并在第二锁网信息合法时通知锁网 移动终端寻找网络, 不合法时通知锁网移动终端锁住 SIM 卡。
其中, 所述第一锁网信息包括 : MCC、 MNC, 或 ICCID ; 所述第二锁网信息包括 : IMSI、 或 ICCID。
由以上技术方案可以看出, 本发明利用移动终端的人机界面 (MMI, ManMachine Interface) 层在 SIM 初始化完成后, 采用主动并强制读取 SIM 卡的国际移动用户识别码 (IMSI) 并判断读取到的 IMSI 是否合法, 从而通过读取到的 SIM 卡中真实的锁网信息来防 止类似于 Unlock SimCard 的这类破解方式破解锁网移动终端。这样, 即使类似于 Unlock SimCard 的这类破解方式上报了假的 IMSI, 移动终端仍是以读取到的 SIM 卡的真实的 IMSI 为准。此外, 由于移动国家号 (MCC)、 移动网号 (MNC)、 IMSI、 集成电路卡识别码 (ICCID) 等 均为国际通用信息, 因此本发明具有很强的通用性, 并且还适用于市场上所有的主流品牌 的移动终端。
而且, 本发明具有很强的实用性且简单易行, 这是因为, 只需掌握锁网的相关信息 如 MCC/MNC、 或 IMSI、 或 ICCID 等, 并从 SIM 卡里读出正确的锁网信息进行比较, 以确定 SIM 卡中锁网信息的准确性。
因此, 本发明锁网移动终端的反破解方法, 能够防止黑客通过如 UnlockSimCard等方式来破解锁网移动终端, 从而满足移动终端反解锁的需要。 附图说明
图 1 为 Unlock SimCard 破解锁网的流程示意图 ; 图 2 为本发明锁网移动终端的反破解方法的流程示意图 ; 图 3 为本发明锁网移动终端的组成结构示意图 ; 图 4 为本发明锁网移动终端的反破解装置的组成结构示意图。具体实施方式
本发明的基本思想在于 : 移动终端根据 SIM 卡上报的第一锁网信息和主动读取的 第二锁网信息, 来分别判断所述第一锁网信息、 第二锁网信息是否合法, 如果均合法则开始 寻找网络 ; 否则停止寻找网络。
需要说明的是, 所述第一锁网信息包括 : MCC、 MNC, 或 ICCID 等, 所述第二锁网信息 包括 : IMSI、 或 ICCID 等信息。其中, IMSI 共有 15 位, 其结构为 : MCC+MNC+ 移动电话用户识 别码 (MSIN, Mobile Subscriber IdentificationNumber)。其中, MCC 通常共 3 位, 每个国 家只有一个 MCC, 如中国为 460 ; MNC 通常共 2 位 ( 有些南美国家的 MNC 为 3 位 ), 对运营商 来讲该 MNC 也是唯一的, 如中国联通 CDMA 系统使用的是 03。此外, 所述移动终端包括在锁 网状态下进行移动通信的终端, 如锁网移动电话等。这里, 所述 ICCID 为 SIM 卡的唯一识别 号码, 固化在移动终端 SIM 卡中, 共有 20 位数字组成。 为使本发明上述目的、 特征和优点能够更加明显易懂, 下面结合附图和具体实施 例对本发明作进一步详细的说明。
这里, 在详细说明本发明的具体实施例之前, 先来说明一下 Unlock SimCard 破解 锁网的原理, 如图 1 所示。此处, 可将 Unlock SimCard 当作一个伪造的 SIM 卡, 使用时将 Unlock SimCard 和一般的 SIM 卡一起插入到移动终端中, UnlockSimCard 保存有一个虚假 的 IMSI, 那么 Unlock SimCard 的破解过程为 :
步骤 101, 在移动终端开机后, SIM 卡进行初始化并上报 IMSI ;
步骤 102, Unlock SimCard 会截取 SIM 卡上报真实的 IMSI 并缓存起来 ;
步骤 103, Unlock SimCard 将虚假的 IMSI 发送给移动终端, 以骗过移动终端上的 锁网模块 ;
其中, 所述锁网模块用于实现移动终端的锁网功能, 锁住运营商指定该移动终端 必须使用的网络。
步骤 104, 在 SIM 卡初始化完成后, 移动终端开始寻找网络时, UnlockSimCard 再将 SIM 卡上报的真实的 IMSI 发给移动终端, 移动终端根据真实的 IMSI 寻找网络。
如此, 便绕过了移动终端上的锁网模块, 使移动终端的锁网功能失效, 从而达到破 解锁网的目的。因此, 针对上述 Unlock SimCard 这类破解锁网的原理, 本发明中提出一种 锁网移动终端的反破解方法, 参照图 2, 本实施例的主要步骤如下 :
步骤 201, 移动终端开机 ;
步骤 202, SIM 卡初始化, 并向移动终端上报第一锁网信息 ;
在初始化 SIM 卡的过程中, SIM 卡会自动向移动终端上报信息, 在其所上报的信息
中可包括第一锁网信息, 该第一锁网信息包括 : MCC、 MNC, 或者 ICCID 等。本实施例采用 SIM 卡上报的 MCC、 MNC 作为第一锁网信息。
步骤 203, 移动终端判断是否处于激活锁网状态, 如果处于激活锁网状态, 则执行 步骤 204 ; 如果处于未激活锁网状态, 则执行步骤 208 ;
在进行寻找网络之前, 判断是否处于激活锁网状态, 即判断该移动终端是否启用 锁网功能。其中, 如果具有锁网激活标记, 则该移动终端处于激活锁网状态, 为锁网移动终 端。如果不具有锁网激活标记, 则该移动终端处于未激活锁网状态, 为非锁网移动终端。
步骤 204, 移动终端判断 SIM 卡上报的第一锁网信息是否合法, 如果合法, 则执行 步骤 205 ; 如果不合法, 则执行步骤 209 ;
其中, 判断所述第一锁网信息是否合法主要是指 : 将 SIM 卡上报的 MCC、 MNC 与移动 终端所保存的已锁网络的 IMSI 中相对应的信息作比较, 如果相同则合法, 如果不同则不合 法。其中, 所述 IMSI 中相对应的信息是指 IMSI 中的 MCC、 MNC。
需要指出的是, 若采用 SIM 卡向移动终端上报的 ICCID 作为第一锁网信息, 则判断 第一锁网信息是否合法主要是指 : 将 SIM 卡上报的 ICCID 与移动终端中保存的 ICCID 作比 较, 如果相同则合法, 如果不同则不合法。 步骤 205, 移动终端定时判断 SIM 卡是否完成初始化, 如果未完成初始化, 则等待 一定的时间间隔继续判断 SIM 卡是否完成初始化 ; 如果完成初始化, 则执行步骤 206 ;
此处, 可根据 SIM 卡是否上报了初始化完成消息来判断 SIM 卡是否完成初始化, 如 果查找到 SIM 卡已上报的初始化完成消息, 则确定 SIM 卡完成初始化。 如果没有查找到 SIM 卡的初始化完成消息, 则确定 SIM 卡未完成初始化。其中, 所述一定的时间间隔一般在 0 ~ 10 分钟之间, 通常采用的时间间隔为 6 分钟。
步骤 206, 移动终端主动读取第二锁网信息 ;
这里, 本实施例通过在移动终端 MMI 层中写入反破解代码, 主动并强制地读取 SIM 卡的 IMSI。其中, 所述第二锁网信息包括 : SIM 卡中的 IMSI、 或 ICCID 等信息。这里, 本实 施例采用 SIM 卡中的 IMSI 作为第二锁网信息, 根据全球移动通信系统 (GSM) 协议 11.11 得 知, IMSI 在 SIM 卡中存储的文件为国际移动用户识别符 (EFIMSI) 存储文件。于是, 在 SIM 卡初始化完成后, 移动终端可调用函数主动读取 SIM 卡中保存的锁网相关信息, 如直接访 问 EFIMSI 存储文件来读取 IMSI。这样, 即使类似于 Unlock SimCard 的这类破解方式上报 了假的 IMSI, 移动终端仍是以读取到的 SIM 卡的真实的 IMSI 为准。
需要指出的是, 若采用主动读取的 SIM 卡的 ICCID 作为第二锁网信息, 则判断第一 锁网信息是否合法主要是指 : 将读取到的 ICCID 与移动终端中保存的 ICCID 作比较, 如果相 同则合法, 如果不同则不合法。
步骤 207, 移动终端判断读取到的第二锁网信息是否合法, 如果合法, 则执行步骤 208 ; 如果不合法, 则执行步骤 209 ;
其中, 所述第二锁网信息为 SIM 卡中的 IMSI, 所述判断读取到的 IMSI 是否合法 是指 : 将读到的真实的 IMSI 与移动终端中保存的已锁网络的 IMSI 中相对应的信息进行比 较, 如果相同则合法, 如果不同则不合法。 例如 : 若要锁定中国移动通信的网络, 移动终端从 SIM 卡中读取 IMSI, 并将读取到的 IMSI 中的 MCC、 MNC 分别与保存的已锁网络的 IMSI 中的 460、 00 比较, 如果相同则合法。
需要说明的是, 至此, 本实施例需要进行两次锁网信息合法性的判断, 而所采用的 判断依据为合法的 MCC、 MNC, 或 IMSI, 即所述移动终端保存的已锁网络的 MCC、 MNC, 或 IMSI。 那么, 移动终端在进行第一次锁网信息合法性判断时, 判断依据为所存储的 MCC、 MNC ; 在进 行第二次锁网信息合法性判断时, 判断依据为所存储的 IMSI。另外, 移动终端可主动读取 IMSI 的全部信息, 也可只读取 IMSI 中对应的 MCC、 MNC 等信息, 然后将读取到的 IMSI 中的 MCC、 MNC 分别与合法的 IMSI 中相对应的 MCC、 MNC 进行比较, 例如 : 将读取到的 IMSI 前八位 中的 MCC、 MNC 与合法的 IMSI 相对应的信息进行比较。这里, 之所以划定 IMSI 中的前八位 是因为 IMSI 的前八位包括 MCC、 MNC 以及一些固定字符, 为读取并比较到完整的 MCC、 MNC, 故划定 IMSI 的前八位作为读取和比较范围。
步骤 208, 开始寻找网络, 寻找到网络后, 进入待机状态, 并执行步骤 210 ;
步骤 209, 停止寻找网络, 锁住 SIM 卡, 进入 SIM 卡密码锁 (SIM LOCK) 状态, 并执行 步骤 210 ;
当第一、 第二锁网信息不合法时, 移动终端会断开网络连接, 并锁住 SIM 卡, 进入 SIM LOCK 状态。
步骤 210, 结束本次反破解流程。 对于上述的各实施例, 为了简单描述, 故将其都表述为一系列的动作组合, 但是本 领域技术人员应该知悉, 本发明并不受所描述的动作顺序的限制, 因为依据本发明, 某些步 骤可以采用其他顺序或者同时进行。
为实现上述方法, 本发明还提供一种锁网移动终端, 如图 3 所示, 包括 : SIM 卡、 激 活判断模块、 锁网模块、 找网模块、 锁卡模块、 反破解装置 ; 其中,
SIM 卡, 用于在初始化时向锁网模块上报第一锁网信息 ;
激活判断模块, 用于判断是否处于激活锁网状态, 并在处于激活锁网状态时通知 锁网模块 ; 处于未激活锁网状态时通知找网模块 ;
锁网模块, 用于接收并判断所述第一锁网信息是否合法, 在第一锁网信息不合法 时通知锁卡模块 ;
找网模块, 用于寻找网络 ;
锁卡模块, 用于锁住 SIM 卡 ;
反破解装置, 用于主动读取并判断第二锁网信息是否合法 ; 以及在第二锁网信息 合法时通知找网模块, 并在第二锁网信息不合法时通知锁卡模块。
其中, 所述反破解装置具体用于 : 定时判断 SIM 卡是否完成初始化, 并在 SIM 卡完 成初始化后主动读取第二锁网信息 ; 在 SIM 卡未完成初始化时等待一定时间间隔再判断 SIM 卡是否完成初始化。所述第一锁网信息包括 : MCC、 MNC, 或 ICCID ; 所述第二锁网信息包 括: IMSI、 或 ICCID。
相应地, 本发明可在锁网移动终端的上层应用中增设一种锁网移动终端的反破解 装置, 来防止锁网移动终端被破解, 在 SIM 卡初始化的过程中锁网移动终端的锁网模块会 对第一锁网信息进行验证, 即判断其合法性, 如果不合法, SIM 卡便被锁住并断开网络连接, 就不会启动反破解装置 ; 如果合法, 该反破解装置便在 SIM 卡初始化完成后, 获取并判断第 二锁网信息的合法性。
为此, 下面来进一步说明所述反破解装置的结构组成, 如图 4 所示, 主要包括 : 初
始化判断单元、 读取单元、 判断单元 ; 其中,
初始化判断单元, 用于定时判断 SIM 卡是否完成初始化, 并在初始化完成时通知 所述读取单元 ;
读取单元, 用于在 SIM 卡完成初始化后主动读取第二锁网信息 ;
判断单元, 用于判断所述第二锁网信息是否合法, 并在第二锁网信息合法时通知 锁网移动终端寻找网络, 不合法时通知锁网移动终端锁住 SIM 卡。
其中, 所述第一锁网信息包括 : MCC、 MNC, 或 ICCID ; 所述第二锁网信息包括 : IMSI、 或 ICCID。
在上述实施例中, 对各个实施例的描述都各有侧重, 某个实施例中没有详述的部 分, 可以参见其他实施例的相关描述即可。以上所述, 仅为本发明的较佳实施例而已, 只是 用来说明和解释本发明, 并非用于限定本发明的保护范围。在本发明的精神和权利要求保 护范围之内, 对本发明所作的任何修改、 等同替换, 都落入本发明的保护范围。