一种虚拟SIM卡的快速鉴权方法、系统、服务器及终端与流程

文档序号:11139617阅读:430来源:国知局
一种虚拟SIM卡的快速鉴权方法、系统、服务器及终端与制造工艺

本申请涉及一种虚拟SIM卡的鉴权方案。



背景技术:

广义来说,SIM(subscriber identity module,用户身份模块)卡是指移动终端所使用的智能卡,其中存储有用户身份识别数据、鉴权算法及相应密钥等,用来对移动终端接入移动通讯网络进行识别和鉴权。早期的SIM卡仅适用于GSM终端,并且SIM卡片与SIM应用绑定在一起,“SIM卡”既可以指物理卡片,也可以指SIM应用。早期的cdmaOne终端中实现“SIM卡”功能的是R-UIM(Removable User Identity Module)卡,也称UIM(User Identity Module)卡。早期的SIM卡和R-UIM卡如今均已被淘汰。

进入3G时代以后,SIM卡实际是指UICC(Universal Integrated Circuit Card,通用集成电路卡)。在硬件层面上,UICC卡主要包括CPU(中央处理器)、ROM(只读存储器)、RAM(随机存取存储器)、EEPROM(电可擦除可编程只读存储器)、I/O(输入/输出)电路等。在软件层面上,UICC卡至少保存以下四部分数据以实现鉴权。

其一,用来接入不同的移动通讯网络的一种或多种应用。例如,SIM应用可以接入GSM网络,USIM(UMTS subscriber identity module)应用可以接入GSM网络和W-CDMA网络和TD-SCDMA网络,CSIM(CDMA subscriber identity module)应用可以接入cdmaOne网络和CDMA2000网络,ISIM(IP Multimedia Services Identity Module)应用可以接入IMS(IP Multimedia Subsystem,IP多媒体子系统)。为便于描述,上述各个应用均包含用户可读写的EF文件(Elementary File,基本文件),这些EF文件是驻网所必须的。

其二,加密算法,例如3GPP、3GPP2标准所公开的算法。

其三,鉴权密钥,供加密算法使用。例如是Ki密钥(Key identifier,根密钥)。移动通讯运营商通常不会公开鉴权密钥,用户也无法直接获取鉴权密钥。网络侧的鉴权中心(AuC,Authentication Center)保存有所有合法用户的鉴权密钥。SIM应用(或USIM应用、CSIM应用等)与网络侧传递数据时,发送方将该数据以鉴权密钥加密,接收方以同一个鉴权密钥对数据解密,由此实现以鉴权密钥确保用户身份合法。

其四,STK应用(Sim application Tool Kit),用于建立应用与用户的交互操作、以及定义应用如何访问或控制网络。

请参阅图1,这是现有的移动终端与鉴权中心之间的鉴权方法的主要流程示意图。所述方法包括如下步骤。

第1步S101:SIM卡上电,向终端发送ATR(Answer to Reset,复位应答)报文。所述SIM卡是广义概念,包括狭义的SIM卡、R-UIM卡、UICC卡等移动终端所使用的智能卡。当代指UICC卡时,SIM卡主要是指其中的SIM应用、USIM应用、CSIM应用和/或ISIM应用。

第2步S102:终端与SIM卡之间进行PPS(ProtocolandParameters Selection,协议和参数选择)协商。

第3步S103:终端向SIM卡发送第一条报文,获取SIM卡的类型。所述SIM卡的类型主要包括三种:狭义的SIM卡(即早期的SIM卡)、R-UIM卡或UICC卡。当代指UICC卡时,SIM卡主要是指其中的SIM应用、USIM应用、CSIM应用和/或ISIM应用。

第4步S104:终端读取SIM卡中的基本的EF文件。所述基本的EF文件是指主文件级别(MF level,Master File level)的EF文件,也就是不属于USIM目录、CSIM目录、ISIM目录、SIM目录、RUIM目录的EF文件,包括EF_ICCID、EF_PL、EF_ARR、EF_DIR等。

第5步S105:终端确认SIM卡的PIN码(Personal Identification Number)保护是否打开,如PIN码保护打开则进一步对SIM卡进行PIN码校验。如PIN码保护未打开则省略PIN码校验。

第6步S106:终端向SIM卡发送初始化SIM应用(或USIM应用、CSIM应用、ISIM应用等)的指令。

第7步S107:终端读取SIM卡中的SIM应用(或USIM应用、CSIM应用、ISIM应用等)下的必须的EF文件。所述必须的EF文件是指应用专用文件级别(ADF Level,Application Dedicated File)或电信级别(TELECOM level)的EF文件,也就是属于USIM目录、CSIM目录、ISIM目录、SIM目录、RUIM目录下或它们的子目录下的EF文件,例如包括IMSI码(International mobile subscriber identity,国际移动用户识别码)、FPLMN表(forbidden public land mobile network,禁用的公共陆地移动网络)、EHPLMN表(Equivalent Home Public Land Mobile Network,等效本地公共陆地移动网络)、UST(USIM Service Table,USIM服务表)、SST(SIM Service Table,SIM服务表)、ACC(Access Control Class,接入控制等级)中的一项或多项。

第8步S108:终端向SIM卡发送SIM应用(或USIM应用、CSIM应用、ISIM应用等)初始化完成指令。

第9步S109:网络侧的鉴权中心向终端发送鉴权数据,终端将鉴权数据发送给SIM卡。

第10步S110:SIM卡进行相应的鉴权运算,生成鉴权响应数据发送给终端,终端将鉴 权响应数据发送给网络侧的鉴权中心。

上述鉴权方法中,第1步至第8步是SIM卡初始化以及缓存EF文件的过程,第9步至第10步是鉴权过程。现有的鉴权方法在SIM卡与网络侧的鉴权中心之间进行鉴权之前,需要经过较长时间的等待SIM卡初始化以及缓存EF文件的过程。

除了部分cdmaOne终端和CDMA2000终端以外,其余移动终端主要使用以物理卡片为载体的SIM卡,称为实体SIM卡或物理SIM卡。随着技术发展,如今也出现了虚拟SIM(Virtual SIM)卡、软SIM(Multi SIM)卡、云SIM卡、eSIM(或e-SIM)等技术。这些技术虽然名称各异,核心内容却非常相似,就是省略了物理卡片作为SIM卡的载体,可以预先在移动终端内部写入SIM卡的信息,并可在随后通过网络远程对移动终端内部的SIM卡信息进行增加、修改、删除等操作。为使表述简略,以下统一采用“虚拟SIM卡”来代表上述各种省略物理卡片的SIM卡技术。

申请公布号为CN105263133A、申请公布日为2016年1月20日的中国发明专利申请公开了一种虚拟SIM卡的实现方案。该方案是先将虚拟SIM卡数据存储在云端服务器,所述虚拟SIM卡数据包括卡号码、鉴权数据、密钥。然后移动终端读取云端服务器中的虚拟SIM卡数据,通过鉴权与虚拟SIM卡建立映射关系。

申请公布号为CN105451213A、申请公布日为2016年3月30日的中国发明专利申请公开了一种虚拟的用户识别模块卡(即虚拟SIM卡)的实现方案。该方案是由服务器向电子设备分配虚拟SIM卡数据,其中包含Ki密钥;电子设备利用接收的虚拟SIM卡数据与网络侧进行鉴权,从而接入网络。

上述两份文献需要移动通讯运营商将鉴权密钥等敏感数据向移动终端厂商或虚拟SIM卡运营商公开,这在实践层面很难实现。以Ki密钥为代表的鉴权密钥是移动通讯运营商的重要资产,在全球范围内愿意提供Ki密钥的移动通讯运营商寥寥无几,所覆盖的用户数量更是有限。上述两份文献还将鉴权密钥等敏感数据保存在自己的服务器中,这些服务器的网络安全防护往往难以达到移动通讯运营商的鉴权中心的同等程度。一旦服务器被入侵,鉴权密钥等敏感数据泄露,则可能导致SIM卡被随意复制等严重后果。

申请公布号为CN105101167A、申请公布日为2015年11月25日的中国发明专利申请公开了一种虚拟SIM卡的实现方案。该方法需要移动终端有两个调制解调器模块(即MODEM),第二MODEM用于加载用户的实体SIM卡、或者是包含鉴权密钥的虚拟SIM卡,从而建立第一通信链路。移动终端利用第一通信链路从服务器获取不包含鉴权密钥的第二虚拟SIM卡,对第二虚拟SIM卡鉴权通过后建立第二通信链路。该文献中的第二虚拟SIM卡不需要获取及存储鉴权密钥等敏感数据,不需要得到移动通讯运营商的许可授权,更有可能实现。但是该文 献并不涉及第二虚拟SIM卡如何进行初始化和缓存EF文件等过程。

实际上,当移动终端采用实体SIM卡时,实体SIM卡的鉴权方法是固定不变的。当移动终端采用虚拟SIM卡后,大量的SIM卡资源位于网络上的服务器,此时对虚拟SIM卡的鉴权方法就可以进行优化,从而减少鉴权前的SIM卡初始化以及缓存EF文件的等待时间。



技术实现要素:

本申请所要解决的技术问题是提供一种虚拟SIM卡的快速鉴权方法。为此,本申请还要提供一种虚拟SIM卡的快速鉴权系统、服务器及终端。

为解决上述技术问题,本申请虚拟SIM卡的快速鉴权方法为:具有多个SIM卡的服务器对一个或多个SIM卡初始化,并且缓存初始化完成的各个SIM卡的EF文件。当任意终端向服务器请求虚拟SIM卡时,服务器为该终端分配一个SIM卡,并将所分配的SIM卡在服务器上缓存的EF文件发给该终端。该终端利用接收的SIM卡的EF文件接入移动通讯网络,接入过程中的鉴权计算由服务器中的SIM卡进行。

本申请实现虚拟SIM卡快速鉴权的服务器具有多个SIM卡,这些SIM卡中的至少一部分被初始化且EF文件缓存在服务器中。所述服务器为终端分配SIM卡,并将所分配的SIM卡在服务器中缓存的EF文件发给终端。所述服务器接收终端转发的来自于鉴权中心的鉴权数据,并交由SIM卡进行鉴权计算得到鉴权响应数据,将鉴权响应数据通过终端转发给鉴权中心。

本申请实现虚拟SIM卡快速鉴权的终端向服务器请求虚拟SIM卡,并接收服务器发送的所分配的SIM卡在服务器中缓存的EF文件。所述终端接收鉴权中心发送的鉴权数据并转发给服务器,还接收服务器发送的鉴权响应数据并转发给鉴权中心。

本申请虚拟SIM卡的快速鉴权系统包括上述服务器与终端。

本申请也是提供一种虚拟SIM卡的实现方案,是在服务器中设置大量的SIM卡资源通过网络提供给大量终端使用。如果采用现有的鉴权方案,需要在终端与服务器上的SIM卡之间进行多次数据交互,考虑到网络延迟因素,将会导致整个鉴权流程耗时较长。改用本申请的鉴权方案以后,服务器预先与SIM之间进行了多次数据交互并且缓存有用的数据,可以让终端与服务器之间仅通过一次数据交互就取得所需的有用数据,从而极大地减少整体的鉴权过程的所需时间。如果在服务器中设置的以实体SIM卡为主,那就不需要在服务器中存储SIM卡的鉴权密钥等敏感数据,避免了这些重要数据的泄漏风险。

附图说明

图1是现有的移动终端与鉴权中心之间的鉴权方法的流程图。

图2是本申请的虚拟SIM卡的快速鉴权方法的流程图。

图3是本申请的虚拟SIM卡的快速鉴权方法的一个实施例的流程图。

具体实施方式

请参阅图2,这是本申请的虚拟SIM卡的快速鉴权方法的流程图,其包括如下步骤。

第1步S201:具有多个SIM卡的服务器对一个或多个SIM卡初始化,并且缓存初始化完成的各个SIM卡的EF文件。

优选地,该步骤中具有多个SIM卡的服务器对所有SIM卡进行初始化,并且缓存初始化完成的所有SIM卡的EF文件。

第2步S202:当任意终端向服务器请求虚拟SIM卡时,服务器为该终端分配一个SIM卡,并将所分配的SIM卡在服务器上缓存的EF文件发给该终端。

该步骤中,如果所分配的SIM卡尚未初始化,则要先初始化所分配的SIM卡,然后在服务器上缓存初始化完成的所分配SIM卡的EF文件。

该步骤中,如果所分配的SIM卡已经完成初始化,但在服务器上尚未缓存ED文件,则要先在服务器上缓存初始化完成的所分配SIM卡的EF文件。

该步骤中,服务器优选地是根据终端的地理位置为其分配具有较低资费的SIM卡。例如,终端上报的小区信息、有线或无线局域网的IP地址等信息都可以反映其地理位置,那么服务器优选地将终端当时所在的城市或国家的SIM分配给终端,从而使终端能够享受当时所在的城市或国家的最低资费。

第3步S203:该终端利用接收的SIM卡的EF文件尝试接入移动通讯网络,在接入过程中鉴权中心发送的鉴权数据通过终端中转发给服务器,由服务器中的SIM卡根据鉴权密钥进行鉴权计算并得到鉴权响应数据,该鉴权响应数据再由服务器发给该终端中转并最终发给鉴权中心。

该步骤中,由于鉴权密钥等敏感数据被加密存储在SIM卡中,因此鉴权计算要放在SIM卡中进行,终端只是作为鉴权数据与鉴权响应数据在鉴权中心与SIM之间传输的中转媒介。这种鉴权方案被称为远程鉴权。在远程鉴权过程中,终端内部并未插入实体SIM卡,因此是一种虚拟SIM卡的实现方案。

与所述SIM卡的快速鉴权方法相对应的服务器是:第一方面,具有多个SIM卡,这些SIM卡中的至少一部分已被预先初始化且将EF文件缓存在服务器中。第二方面,为终端分配SIM卡,并将所分配的SIM卡在服务器中缓存的EF文件发给终端。第三方面,接收终端转发的来自于鉴权中心的鉴权数据,并交由SIM卡根据鉴权密钥进行鉴权计算得到鉴权响应数据,将鉴权响应数据通过终端转发给鉴权中心。

所述服务器所具有的多个SIM卡可以是实体SIM卡和/或包含鉴权密钥的虚拟SIM卡。 某些移动通讯运营商不开放授权虚拟SIM卡的鉴权密钥,那么服务器就插着这些运营商的实体SIM卡。另一些移动通讯运营商开放授权虚拟SIM卡的鉴权密钥,那么服务器或者插有这些运营商的实体SIM卡,或者存储有这些运营商的包含鉴权密钥的虚拟SIM卡。全部采用实体SIM卡是优选方案,这样各个SIM卡的鉴权密钥保存在各个实体SIM卡中,不用担心存储鉴权密钥的服务器的安全性。

如果服务器将某个实体SIM卡分配给某个终端作为虚拟SIM卡,那么最终由该实体SIM卡进行鉴权计算。如果服务器将某个包含鉴权密钥的虚拟SIM卡的数据分配给某个终端作为虚拟SIM卡,那么最终由该包含鉴权密钥的虚拟SIM卡进行鉴权计算。

优选地,服务器将所有SIM卡预先初始化且将初始化完成的SIM卡的EF文件缓存在服务器中。如果由于种种限制无法做到预先初始化并缓存所有SIM卡,那么只能预先初始化并缓存部分SIM卡,此时可以为不同的城市或国家预先初始化并缓存大致相同数量的SIM卡,或者预先初始化并缓存资费较低的SIM卡,或者结合SIM卡的发行地和资费两个因素综合考虑决定预先初始化并缓存的SIM卡。

与所述SIM卡的快速鉴权方法相对应的终端是:第一方面,向服务器请求虚拟SIM卡,并接收服务器发送的所分配的SIM卡在服务器中缓存的EF文件。第二方面,接收鉴权中心发送的鉴权数据并转发给服务器,还接收服务器发送的鉴权响应数据并转发给鉴权中心。

为了连接服务器并与其通讯,终端需要先建立网络连接,这可以有多种实现方式。例如,所述终端具有一个调制解调器和一个有线或无线的网络适配器,先由网络适配器接入有线或无线的局域网,再利用该网络进行后续操作。又如,所述终端具有两个调制解调器,第一调制解调器中插有实体SIM卡,先由实体SIM卡接入移动通讯网络,再利用该网络进行后续操作。再如,所述终端具有两个调制解调器,并非易失性地保存有包含鉴权密钥的虚拟SIM卡,先由包含鉴权密钥的虚拟SIM卡通过第一调制解调器接入移动通讯网络,再利用该网络进行后续操作。

上述服务器与终端便构成了本申请的虚拟SIM卡的快速鉴权系统。

请参阅图3,这是本申请的采用虚拟SIM卡的移动终端与鉴权中心之间的鉴权方法的一个实施例。所述方法包括如下步骤。

第1步S301:SIM卡上电,向服务器发送ATR报文。所述SIM卡是广义概念,包括狭义的SIM卡、R-UIM卡、UICC卡等移动终端所使用的智能卡。当代指UICC卡时,SIM卡主要是指其中的SIM应用、USIM应用、CSIM应用和/或ISIM应用。

第2步S302:服务器与SIM卡之间进行PPS协商。

第3步S303:服务器向SIM卡发送第一条报文,获取SIM卡的类型。

第4步S304:服务器读取SIM卡中的基本的EF文件,并缓存在服务器中。

第5步S305:服务器确认SIM卡的PIN码保护状态。如PIN码保护打开则进一步对SIM卡进行PIN码校验。如PIN码保护未打开则省略PIN码校验。

第6步S306:服务器向SIM卡发送初始化SIM应用(或USIM应用、CSIM应用、ISIM应用等)的指令。

第7步S307:服务器读取SIM卡中的SIM应用(或USIM应用、CSIM应用、ISIM应用等)下的必须的EF文件,并缓存在服务器中。

第8步S308:服务器向SIM卡发送SIM应用(或USIM应用、CSIM应用、ISIM应用等)初始化完成指令。

第9步S309:任意终端向服务器请求虚拟SIM卡。

第10步S310:服务器向终端分配一张SIM卡,并将所分配的SIM卡在服务器缓存的EF文件发送给终端。

第11步S311:网络侧的鉴权中心向终端发送鉴权数据,终端将鉴权数据发送给服务器,服务器将鉴权数据发送给SIM卡。

第12步S312:SIM卡进行相应的鉴权运算,生成鉴权响应数据发送给服务器,服务器将鉴权响应数据发送给终端,终端将鉴权响应数据发送给网络侧的鉴权中心。

与现有的虚拟SIM卡的实现方案相比,本申请具有如下技术优势。

其一,服务器具有多个SIM卡,如果采用全部是实体SIM卡的优选方案,那么就不需要得到移动通讯运营商的授权即可实现。鉴权密钥被加密存储在各个实体SIM卡中,被泄密的风险远小于将多个鉴权密钥集中存储在服务器中。

其二,现有的实体SIM卡或虚拟SIM卡的鉴权方案,需要在终端与SIM之间进行多次数据交互,例如图1所示的步骤S101至步骤S108。每次数据交互都要耗费一定时间,因此整体的鉴权过程需要耗费较长时间。

本申请的虚拟SIM卡的快速鉴权方案,将SIM卡初始化和缓存EF文件等过程提前进行,相当于提前使各个SIM卡处于激活状态。一旦有终端需要虚拟SIM卡,服务器就将预先缓存的所分配的SIM卡的EF文件迅速发送给终端,立即进入后续的鉴权过程,从而大大减少了整体的鉴权过程的时间。

以上仅为本申请的优选实施例,并不用于限定本申请。对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1