本发明涉及虚拟SIM卡系统,还涉及到使用该虚拟SIM卡系统的移动终端使用虚拟SIM卡的方法。
背景技术:
手机是目前人们日常工作生活的一个必需品,每个手机内都设有SIM卡,SIM卡也叫用户身份模块(Subscriber Identity Module,SIM),是主要用于存储用户身份识别数据、短信息数据和电话号码的智能卡。手机或者其他移动终端读取物理SIM卡的信息,进行相关的鉴权,通过后在3GPP/3GPP2网络下进行无线通信。
现有技术中一个国家内有多家不同的网络运营商,各国的网络运营商又各不相同,每一张物理SIM卡会对应其中一个国家的唯一的一个运营商网络,若是经常出国、商务出差或境外旅行,手机内安装的物理SIM卡在境外将需要支付昂贵的漫游费,而一直是他们不得不接受的硬性消费。
为了解决上述问题,现有技术中出现了一种虚拟SIM卡,特征在于包括两个通信系统,主模块为全球漫游卡,从模块为本地流量卡。通过全球漫游的主模块下载本地流量SIM卡信息到从设备。写号过程通过串行接口,数据线,时钟线及复位线硬件接口,将相关SIM卡信息写进从设备,从设备再通过写进来的卡号信息进行无线网络的注册,鉴权。需借助硬件接口动态的写物理SIM卡,这样就能进行无线通信,因此用户可以通过申请多个虚拟SIM卡来获取多个号码。
技术实现要素:
本发明为了解决现有技术中存在的上述技术问题,提出了一种虚拟SIM卡系统,一种虚拟SIM卡系统,包括:
物理SIM卡池,存储了不同国家或地区的不同运营商的物理SIM卡;
SIM卡管理模块,设于远程服务器,对所述物理SIM卡的信息进行管理,根据分配策略从物理SIM卡池中筛选相应的物理SIM卡的信息,并将发送给对应的移动终端;
移动终端,具有双通信通道的高通LTE芯片,以及一个全球漫游卡,所述全球漫游卡使用其中一个通信通道向SIM卡管理模块汇报当前所处位置,所述高通LTE芯片的APPS模块接收相应的物理SIM卡的信息,该SIM卡的信息将作为一个虚拟SIM卡使用另一个通信通道,通过SIM卡管理模块向对应的物理SIM卡获取鉴权数据,然后将所述鉴权数据采用核间透传给高通LTE芯片的MPSS模块,所述MPSS模块与当前所处位置的基站通讯,完成对应的物理SIM卡的功能。
本发明还提出了一种采用上述虚拟SIM卡系统实现移动终端使用虚拟SIM卡的方法,包括如下步骤:
在移动终端内安装全球漫游卡;
通过全球漫游卡向SIM卡管理模块汇报当前所处位置;
移动终端采用高通LTE芯片的APPS模块接收相应的物理SIM卡的信息,APPS模块与SIM卡管理模块通讯,通过SIM卡管理模块向对应的物理SIM卡获取鉴权数据;
将所述鉴权数据采用核间透传给高通LTE芯片的MPSS模块,所述MPSS模块与当前所处位置的基站通讯,完成对应的物理SIM卡的功能。
本发明不需要安装物理SIM卡,通过软件方式实现了物理SIM卡的功能,包括虚拟SIM卡文件系统、2G&3G鉴权算法的实现等,并提供多套IMSI等鉴权数据的传输和管理功能,通过调用Modem接口,来驱动虚拟SIM卡的功能和相关信息的传送。通过将虚拟SIM存入云SIM卡池,提高了数据的安全性,保证了鉴权密钥(Key Identifier,KI)、源信令点编码(Original Point Code,OPC)等核心鉴权信息不被泄露。同时,软件写号的方法极大的降低了开发成本以及维护成本。当用户更换平台时,软件接口拥有更好的可移植性,非常方便快捷。本发明只有需要网络鉴权操作时,移动终端才通过SIM卡管理模块与卡池中的物理SIM卡进行通讯,整个过程在移动终端内部使用的是软件接口,不需要对已有终端进行硬件上修改,显著降低地区漫游和国际漫游的费用,同时降低移动终端更新成本。
附图说明
图1为本发明的整体模块框图;
图2为本发明的核间透传的结构原理图;
图3为本发明鉴权数据信息流图;
图4为本发明的流程图。
具体实施方式
下面结合附图对本发明的原理及方法进行详细说明。
如图1所示,本发明提出的虚拟SIM卡系统,在远程设有一个物理SIM卡池和一个SIM卡管理模块,物理SIM卡池内存储了不同国家或地区的不同运营商的各种物理SIM卡,物理SIM卡的数量不受限制,可以是海量级的,可以在其中选择对应国家、运营商、资费套餐、网络制式的物理SIM卡。SIM卡管理模块设于远程服务器,对物理SIM卡池中的物理SIM卡的信息进行管理,会根据一些分配策略从物理SIM卡池中筛选相应的物理SIM卡的信息,并将发送给对应的移动终端。分配策略可以根据移动终端当前所处的国家/地区、当前所处的时段、用户的使用需求选择资费最低的物理SIM卡的信息。用户的使用需求包括短信量需求、网络流量需求、通话时长需求。例如,当前某个移动终端位于日本,处于晚上9点,用户的使用需求设置为500M流量5天,则SIM卡管理模块从物理SIM卡池中选择一个最合适的物理SIM卡,并将该SIM卡的相关信息发送给移动终端,这是一种各个条件均结合起来进行组合筛选的方式,本发明并不限于这一种方式,也可以只根据所处的国家或者地区来分配相应国家或地区的SIM卡,也可以是根据运营商的资费标准,在不同国家或地区调用不同的资费套餐的SIM卡,或者是根据设备使用时间段来分配相应的SIM卡,以求达到最低资费开销的。再例如一张SIM卡资费套餐有200M免费流量,当前SIM卡使用完200M流量后,SIM卡管理服务器会自动调用相同资费套餐的SIM卡供终端设备使用,按照每日,每月通话时长切换策略,按照优惠时段切换策略,按通信套餐切换策略,按地理位置切换策略等等。
在移动终端方面,需要在移动终端(下面均以手机为例说明)中插入一张全球漫游卡,当用户在国外时,通过全球漫游卡向SIM卡管理模块报告当前所处的位置,从SIM卡管理模块那获取一个适用于当地的SIM卡信息。获取到的物理SIM卡的信息其中包含了物理SIM卡的国际移动用户识别码(IMSI)和客户鉴权键Ki。移动终端将通过IMSI去完成鉴权注册,一旦移动终端完成鉴权注册,将从全球漫游卡切换到“虚拟SIM卡”,由“虚拟SIM卡”来实现对应的物理SIM卡的功能。
手机上还设有高通LTE芯片,具体的可以采用型号为Qualcomm9x15系列的高通芯片,该芯片运行多个CPU处理器以及多个模块,在本发明中主要对其中两个模块进行了改进: APPS模块(应用处理模块)以及MPSS模块(无线协议栈模块)。
APPS模块可以实现的功能有:处理音频、板支持包、Flash存储、USB传输、运行Android操作系统。远程服务器的SIM卡管理模块能和APPS模块直接通讯,但是无法与MPSS模块直接通讯。所有实现虚拟SIM卡的相关应用软件均设置在了APPS模块。
MPSS模块可以实现的功能有:处理无线协议栈、语音电话、数据业务、GPS、射频、短信、SIM卡功能,即无线通信协议相关功能。传统的物理SIM卡通过硬件接口与MPSS模块连接,实现相应的通话、发短信等功能。
现有的各运营商发行的物理SIM卡都会在其内设置加密的鉴权算法,只有通过鉴权算法得到相应的鉴权数据(鉴权信息),才能完成SIM卡相应的功能。而本发明缺乏相应的物理SIM卡来与MPSS模块连接,实现相应的SIM卡功能。如图3所示,本发明通过虚拟SIM卡来实现物理SIM卡功能的主要原因在于:高通LTE芯片的APPS模块接收相应的物理SIM卡的信息,这个物理SIM卡的信息中由于包含了其IMSI,APPS模块可以通过这个IMSI去物理SIM卡处获取鉴权信息(鉴权数据),然后将鉴权信息通过核间透传,传递给MPSS模块,MPSS模块与当前所处位置的基站通讯,从而使MPSS模块可以像与物理SIM卡连接着一样实现相应的功能。
如图2所示,本发明所指的核间透传是指SIM卡驱动程序及相关业务功能运行在Modem处理器的MPSS模块,而生成虚拟SIM卡的应用程序运行在AP处理器的APPS模块,因此我们需要在Modem处理器与AP处理器之间建立一条管道,用于传输各种数据。我们用到了高通平台的内存共享单元(SMD, Share Memory Deliver)和高通编程接口(QMI, Qualcomm message interface)。
内存共享单元在不同处理器之间实现内存共享,通过USB接口传输数据包,称之透传。但是SMD层的USB格式数据包,无法直接使用,由此引入QMI层的可编程格式数据包。
高通编程接口封装高通平台可编程的应用接口,QMI层运行在SMD层之上,将USB格式数据包封装为更加人性化的软件接口,所以通过QMI实现不同处理器之间通讯。进而通过QMI实现APPS模块的虚拟SIM应用程序与MPSS模块的SIM驱动程序以及业务功能之间的交互。Qualcomm平台的不同处理器之间通讯功能由此实现。
进一步的,在APPS模块以及MPSS模块可以分别设计定制化可编程接口,以实现一些增值业务。
图4所示系统流程图,在移动终端通过虚拟SIM卡系统实现使用虚拟SIM卡的方法,需要在移动终端内其中一个通道安装全球漫游卡,通过全球漫游卡向SIM卡管理模块汇报当前所处位置。当用户下了飞机,手机开机后将会对远程服务器发起接入验证和连接请求,SIM卡管理模块验证终端用户合法性。接着手机通过全球漫游卡主动上报包含当前位置的消息。通过分析手机的位置信息,SIM卡管理模块分配最合适的物理SIM卡的信息给手机。移动终端采用高通LTE芯片的APPS模块接收相应的物理SIM卡的信息,APPS模块与SIM卡管理模块通讯,通过SIM卡管理模块向对应的物理SIM卡获取鉴权数据,将鉴权数据采用核间透传给高通LTE芯片的MPSS模块,MPSS模块与当前所处位置的基站通讯,完成对应的另一个通道物理SIM卡的功能。整个系统可以设置分布式的云转发节点,覆盖全球各大区域,手机与远程服务器的通讯将会通过最近的节点来实现。
移动终端注册成功后,在运行过程中会周期性主动上报消息给SIM卡管理模块,上报消息包括了终端当前电信运营商、网络制式、数据业务状态,小区能力信息、信号强度等。该过程称之为心跳数据。
SIM卡管理模块根据心跳数据判断是否需要重新动态绑定虚拟SIM卡。小区切换过程需要云SIM服务器管理,由于终端地理位置上的移动,原注册SIM卡变成了资费昂贵漫游卡,或原运营商在该地没有服务信号。此时需要云SIM服务器通过终端心跳数据,从数据库中调用出最优化的物理SIM卡,重新进行虚拟SIM卡写号,该过程称之为动态绑定。
本发明实施的虚拟SIM实现方法,通过生成虚拟SIM卡,无需像现有技术那样借助硬件接口写卡号,极大的降低了开发成本以及维护成本。同时,用户更换平台时,软件接口拥有更好的可移植性,非常方便快捷。
以上具体实施例仅用以举例说明本发明的结构,本领域的普通技术人员在本发明的构思下可以做出多种变形和变化,这些变形和变化均包括在本发明的保护范围之内。