用户识别模块工具套件的实时模拟开发方法及系统.pdf

上传人:a*** 文档编号:638523 上传时间:2018-02-28 格式:PDF 页数:20 大小:1.06MB
返回 下载 相关 举报
摘要
申请专利号:

CN200410103982.3

申请日:

2004.12.31

公开号:

CN1622674A

公开日:

2005.06.01

当前法律状态:

授权

有效性:

有权

法律详情:

专利实施许可合同备案的生效IPC(主分类):H04Q 7/34合同备案号:2016110000008让与人:大唐微电子技术有限公司受让人:北京大唐智能卡技术有限公司发明名称:用户识别模块工具套件的实时模拟开发方法及系统申请日:20041231申请公布日:20050601授权公告日:20070606许可种类:普通许可备案日期:20160422|||授权|||实质审查的生效|||公开

IPC分类号:

H04Q7/34; G06F9/455; G06F11/36

主分类号:

H04Q7/34; G06F9/455; G06F11/36

申请人:

大唐微电子技术有限公司;

发明人:

杨延辉; 秦预; 黄浦; 张伟

地址:

100083北京市海淀区学院路40号

优先权:

专利代理机构:

北京安信方达知识产权代理有限公司

代理人:

颜涛;龙洪

PDF下载: PDF下载
内容摘要

本发明公开一种用户识别模块工具套件的实时模拟开发方法和系统,首先建立模拟开发系统,包括用户识别模块的仿真卡、模拟操作模块和网络交互模块,以及插入用户识别模块的手机和通讯网络;手机和用户识别模块在初始化过程中建立事件监控;对所述菜单进行操作后,模拟操作模块将操作指令发送给仿真卡,仿真卡对模拟操作模块返回数据进行处理并返回结果;模拟操作模块更新模拟界面显示,如果涉及网络操作,将操作信息通过网络交互模块发送给所述手机,由该手机和用户识别模块完成相应操作;监控事件由用户识别模块经网络交互模块发送到模拟操作模块显示,并下发给仿真卡。本发明可实现SIM卡STK功能及UIM卡UTK功能等的实时、实网模拟调试。

权利要求书

1、  一种用户识别模块工具套件的实时模拟开发方法,包括以下步骤:
(a)建立一个模拟开发系统,包括在计算机上实现的用户识别模块的仿真卡、模拟操作模块和网络交互模块,以及插入有用户识别模块的手机和通讯网络;
(b)所述用户识别模块在手机对其进行初始化过程中,建立对设定事件的监控;所述模拟操作模块与所述仿真卡之间也通过数据交互完成用户识别模块工具套件菜单的初始化;
(c)等待调试人员对所述菜单进行操作,操作后,所述模拟操作模块将操作指令通过接口发送给所述仿真卡,所述仿真卡对所述模拟操作模块返回的数据进行处理,并将结果数据发送回所述模拟操作模块;
(d)所述模拟操作模块根据返回数据更新模拟界面显示,并判断是否涉及网络操作,如果不涉及,返回步骤(c),如果涉及,将操作信息发送到所述网络交互模块,执行下一步;
(e)所述网络交互模块再将操作信息发送给所述手机,由该手机和用户识别模块完成相应的操作;
(f)所述手机有相应的监控事件发生时会通知所述用户识别模块,所述用户识别模块再将事件结果的信息经网络交互模块发送到所述模拟操作模块;
(g)所述模拟操作模块根据事件结果信息在屏幕上进行显示,并通过接口发回到所述仿真卡处理,返回步骤(c)。

2、
  如权利要求1所述的实时模拟开发方法,其特征在于,所述步骤(b)中建立监控的设定事件包括MT呼叫、呼叫连接、呼叫断开、位置状态中的一种或任意组合,所述步骤(f)中相应的监控事件包括为MT呼叫、呼叫连接、呼叫断开、位置状态、二级短信息和位置信息中的一种或任意组合。

3、
  如权利要求1所述的实时模拟开发方法,其特征在于,所述用户识别模块在初始化时建立一块事件缓存区,先将从手机收到的事件结果存储在该缓存区内,在收到所述网络交互模块的查询指令后,再从该缓存区取出事件结果发送给所述网络交互模块。

4、
  如权利要求1或3所述的实时模拟开发方法,其特征在于,所述网络交互模块和手机间通过AT指令进行交互,对于AT指令不支持的操作信息,由所述网络交互模块将其编码转换为标准AT指令后,经手机发送到所述用户识别模块由其解码处理;对于AT指令不支持的事件结果信息,由所述用户识别模块将其编码转换为标准的AT指令应答后,再经手机发送到所述网络交互模块由其解码处理。

5、
  如权利要求1所述的实时模拟开发方法,其特征在于,所述网络交互模块与所述模拟操作模块之间通过进程间的通讯接口进行信息交互,所述模拟操作模块与所述仿真卡之间按照标准ISO7816协议通过套接字接口进行信息交互。

6、
  如权利要求1所述的实时模拟开发方法,其特征在于,所述建立的模拟开发系统中还包括一个在计算机上模拟的空中下载服务器,所述步骤(c)中,如果调试人员进行了空中下载的操作,直接交给该空中下载服务器,由该空中下载服务器按照预定协议组织下行数据,经网络交互模块发送给所述模拟操作模块显示,再发送到所述仿真卡。

7、
  一种用户识别模块工具套件的实时模拟开发系统,包括开发时所用软件调试环境构成的用户识别模块工具套件的仿真卡、手机和通讯网络,其特征在于,还包括模拟操作模块、网络交互模块和用户识别模块,所述仿真卡、模拟操作模块和网络交互模块在计算机上实现,所述用户识别模块插入在所述手机内,其中:
所述仿真卡包括要调试的用户识别模块工具套件及与所述模拟操作模块间通讯的接口;
所述模拟操作模块用于实现真实手机上使用用户识别模块工具套件业务的模拟,将操作指令下发给所述仿真卡并接收返回结果,将其中涉及网络操作的信息提交给所述网络交互模块并接收其下发的事件结果信息,再发送到所述仿真卡;
所述网络交互模块用于将所述模拟操作模块发来信息组织为手机可以识别的指令,发送到所述手机并接收其返回的事件结果信息,再将该结果信息传送给所述模拟操作模块;
所述用户识别模块在标准用户识别模块的基础上,还将所述手机发来的设定事件的结果信息组织为所述网络交互模块发送指令的应答所要求的格式,经所述手机发送到所述网络交互模块。

8、
  如权利要求7所述的实时模拟开发系统,其特征在于,所述模拟操作模块进一步包括协议分析处理单元、指令显示单元、指令操作单元、与所述仿真卡间的通讯接口以及与所述网络交互模块间的通讯接口,其中:
所述协议分析处理单元用于将用户操作按照协议转化为所述仿真卡可识别指令经接口下发给该仿真卡,对所述仿真卡返回的数据,分析其是否符合规范,并加工转化为可以识别的数据结构;
所述指令显示单元用于提供操作所需的图形界面,并在接收到所述协议分析处理单元加工好的数据后在屏幕上显示返回的信息;
所述指令操作单元用于接受用户的有效操作,调用所述协议分析处理单元将用户的操作转化后下发给所述仿真卡;
与所述仿真卡间的通讯接口用于实现所述模拟操作模块和所述仿真卡之间信息的双向传递;
与所述网络交互模块间的通讯接口,用于通过进程间的通讯实现模拟操作模块和网络交互模块之间信息的双向传递。

9、
  如权利要求8所述的实时模拟开发系统,其特征在于,所述仿真卡与所述模拟操作模块之间的接口包括直接进行数据交换的ISO7816逻辑接口,以及用套接字实现的与该逻辑接口协调工作的通用数据接口。

10、
  如权利要求8所述的实时模拟开发系统,其特征在于,所述模拟操作模块与所述网络交互模块之间采用进程间的通讯接口交互信息。

11、
  如权利要求8所述的实时模拟开发系统,其特征在于,所述模拟操作模块还包括短信逻辑接口,用于通过套接字开放短信通道。

12、
  如权利要求8所述的实时模拟开发系统,其特征在于,所述模拟操作模块和所述仿真卡上均还包括一个开放的ISO7816逻辑接口。

13、
  如权利要求7所述的实时模拟开发系统,其特征在于,所述网络交互模块进一步包括进程间通讯接口、指令发送接收单元、信息翻译单元和信息查询单元,其中:
所述进程间通讯接口用于实现和所述模拟操作模块间信息的双向传递;
所述指令发送接收单元用于将所述模拟操作模块发来的信息组织为AT指令,完成与所述手机之间的AT指令的发送与接收,并将从所述手机接收的AT指令转化为APDU格式后,再传送到所述模拟操作模块;
所述信息翻译单元用于将AT指令不支持的操作信息编码转换为标准AT指令,并对所述手机返回的扩展的AT指令进行解码;
所述信息查询单元用于向所述手机发送AT指令,查询所述手机当前的状态以及所述用户识别模块接收到的事件结果信息。

14、
  如权利要求13所述的实时模拟开发系统,其特征在于,所述指令发送接收单元内部还包括上行和下行方向的两套消息队列,用于在数据传递时进行一定的协调。

15、
  如权利要求7所述的实时模拟开发系统,其特征在于,所述用户识别模块进一步包括信息暂存单元、指令编解码单元和指令监控单元,其中:
所述信息暂存单元用于对所述手机发来的设定事件的监控通知中的信息进行记录,暂存在事件缓存区中;
所述指令编解码单元用于对缓存区的信息进行编码,使之符合标准AT指令的结构,并对发来的扩展的AT指令进行解码;
所述指令监控单元用于对所有发给所述用户识别模块的指令进行监控,当收到设定事件的监控通知时,通知所述信息暂存单元暂存;当发现所述网络交互模块发来的查询指令时,调用所述指令编解码单元编码下发;当收到其他指令时,转入正常的处理流程。

16、
  如权利要求7或8所述的实时模拟开发系统,其特征在于,所述网络交互模块中还包括一个模拟的空中下载服务器,用于在虚拟网络运行时模拟真实的与空中下载有关的增值服务,采用函数调用的方式实现数据交换。

17、
  如权利要求16所述的实时模拟开发系统,其特征在于,所述模拟操作模块中还内嵌有一个数据监控模块,用于在发现有空中下载相关的操作信息后,判断是否处于实网运行,如果是,调用AT指令发送给所述手机并等待实际网络的响应;如果是虚拟网络运行,则直接交给所述空中下载服务器,该服务器按照预定协议组织下行数据,发送给所述模拟操作模块。

说明书

用户识别模块工具套件的实时模拟开发方法及系统
技术领域
本发明涉及智能卡的开发,尤其涉及SIM卡STK(SIM卡工具套件)或UIM卡UTK(UIM卡工具套件)等用户识别模块工具套件的模拟开发方法及系统。
背景技术
目前,智能卡软件开发过程比较繁琐,无法实现SIM卡STK功能或UIM卡UTK功能等的实时、实网模拟调试,必须要在成卡阶段借助辅助手段才能够进行后期软件仿真,同时对真实手机、网络和数据采集器的依赖性过大。如何简化智能卡软件的开发过程,以及减少对手机和网络的依赖,提高开发的效率,成为关注的问题。
发明内容
本发明要解决的技术问题是提供一种用户识别模块工具套件的实时模拟开发方法,以实现SIM卡STK功能、UIM卡UTK功能等的实时、实网模拟调试。本发明还要提供一种实现上述方法的系统。
为了解决上述技术问题,本发明提供了一种用户识别模块工具套件的实时模拟开发方法,包括以下步骤:
(a)建立一个模拟开发系统,包括在计算机上实现的用户识别模块的仿真卡、模拟操作模块和网络交互模块,以及插入有用户识别模块的手机和通讯网络;
(b)所述用户识别模块在手机对其进行初始化过程中,建立对设定事件的监控;所述模拟操作模块与所述仿真卡之间也通过数据交互完成用户识别模块工具套件菜单的初始化;
(c)等待调试人员对所述菜单进行操作,操作后,所述模拟操作模块将操作指令通过接口发送给所述仿真卡,所述仿真卡对所述模拟操作模块返回的数据进行处理,并将结果数据发送回所述模拟操作模块;
(d)所述模拟操作模块根据返回数据更新模拟界面显示,并判断是否涉及网络操作,如果不涉及,返回步骤(c),如果涉及,将操作信息发送到所述网络交互模块,执行下一步;
(e)所述网络交互模块再将操作信息发送给所述手机,由该手机和用户识别模块完成相应的操作;
(f)所述手机有相应的监控事件发生时会通知所述用户识别模块,所述用户识别模块再将事件结果的信息经网络交互模块发送到所述模拟操作模块;
(g)所述模拟操作模块根据事件结果信息在屏幕上进行显示,并通过接口发回到所述仿真卡处理,返回步骤(c)。
进一步地,上述实时模拟开发方法可具有以下特点:所述步骤(b)中建立监控的设定事件包括MT呼叫、呼叫连接、呼叫断开、位置状态中的一种或任意组合,所述步骤(f)中相应的监控事件包括为MT呼叫、呼叫连接、呼叫断开、位置状态、二级短信息和位置信息中的一种或任意组合。
进一步地,上述实时模拟开发方法可具有以下特点:所述用户识别模块在初始化时建立一块事件缓存区,先将从手机收到的事件结果存储在该缓存区内,在收到所述网络交互模块的查询指令后,再从该缓存区取出事件结果发送给所述网络交互模块。
进一步地,上述实时模拟开发方法可具有以下特点:所述网络交互模块和手机间通过AT指令进行交互,对于AT指令不支持的操作信息,由所述网络交互模块将其编码转换为标准AT指令后,经手机发送到所述用户识别模块由其解码处理;对于AT指令不支持的事件结果信息,由所述用户识别模块将其编码转换为标准的AT指令应答后,再经手机发送到所述网络交互模块由其解码处理。
进一步地,上述实时模拟开发方法可具有以下特点:所述网络交互模块与所述模拟操作模块之间通过进程间的通讯接口进行信息交互,所述模拟操作模块与所述仿真卡之间按照标准ISO7816协议通过套接字接口进行信息交互。
进一步地,上述实时模拟开发方法可具有以下特点:所述建立的模拟开发系统中还包括一个在计算机上模拟的空中下载服务器,所述步骤(c)中,如果调试人员进行了空中下载的操作,直接交给该空中下载服务器,由该空中下载服务器按照预定协议组织下行数据,经网络交互模块发送给所述模拟操作模块显示,再发送到所述仿真卡。
为了解决上述技术问题,本发明提供的用户识别模块工具套件的实时模拟开发系统包括开发时所用软件调试环境构成的用户识别模块工具套件的仿真卡、手机和通讯网络,其特征在于,还包括模拟操作模块、网络交互模块和用户识别模块,所述仿真卡、模拟操作模块和网络交互模块在计算机上实现,所述用户识别模块插入在所述手机内,其中:
所述仿真卡包括要调试的用户识别模块工具套件及与所述模拟操作模块间通讯的接口;
所述模拟操作模块用于实现真实手机上使用用户识别模块工具套件业务的模拟,将操作指令下发给所述仿真卡并接收返回结果,将其中涉及网络操作的信息提交给所述网络交互模块并接收其下发的事件结果信息,再发送到所述仿真卡;
所述网络交互模块用于将所述模拟操作模块发来信息组织为手机可以识别的指令,发送到所述手机并接收其返回的事件结果信息,再将该结果信息传送给所述模拟操作模块;
所述用户识别模块在标准用户识别模块的基础上,还将所述手机发来的设定事件的结果信息组织为所述网络交互模块发送指令的应答所要求的格式,经所述手机发送到所述网络交互模块。
进一步地,上述实时模拟开发系统可具有以下特点:所述模拟操作模块进一步包括协议分析处理单元、指令显示单元、指令操作单元、与所述仿真卡间的通讯接口以及与所述网络交互模块间的通讯接口,其中:
所述协议分析处理单元用于将用户操作按照协议转化为所述仿真卡可识别指令经接口下发给该仿真卡,对所述仿真卡返回的数据,分析其是否符合规范,并加工转化为可以识别的数据结构;
所述指令显示单元用于提供操作所需的图形界面,并在接收到所述协议分析处理单元加工好的数据后在屏幕上显示返回的信息;
所述指令操作单元用于接受用户的有效操作,调用所述协议分析处理单元将用户的操作转化后下发给所述仿真卡;
与所述仿真卡间的通讯接口用于实现所述模拟操作模块和所述仿真卡之间信息的双向传递;
与所述网络交互模块间的通讯接口,用于通过进程间的通讯实现模拟操作模块和网络交互模块之间信息的双向传递。
进一步地,上述实时模拟开发系统可具有以下特点:所述仿真卡与所述模拟操作模块之间的接口包括直接进行数据交换的ISO7816逻辑接口,以及用套接字实现的与该逻辑接口协调工作的通用数据接口。
进一步地,上述实时模拟开发系统可具有以下特点:所述模拟操作模块与所述网络交互模块之间采用进程间的通讯接口交互信息。
进一步地,上述实时模拟开发系统可具有以下特点:所述模拟操作模块还包括短信逻辑接口,用于通过套接字开放短信通道。
进一步地,上述实时模拟开发系统可具有以下特点:所述模拟操作模块和所述仿真卡上均还包括一个开放地ISO7816逻辑接口。
进一步地,上述实时模拟开发系统可具有以下特点:所述网络交互模块进一步包括进程间通讯接口、指令发送接收单元、信息翻译单元和信息查询单元,其中:
所述进程间通讯接口用于实现和所述模拟操作模块间信息的双向传递;
所述指令发送接收单元用于将所述模拟操作模块发来的信息组织为AT指令,完成与所述手机之间的AT指令的发送与接收,并将从所述手机接收的AT指令转化为APDU格式后,再传送到所述模拟操作模块;
所述信息翻译单元用于将AT指令不支持的操作信息编码转换为标准AT指令,并对所述手机返回的扩展的AT指令进行解码;
所述信息查询单元用于向所述手机发送AT指令,查询所述手机当前的状态以及所述用户识别模块接收到的事件结果信息。
进一步地,上述实时模拟开发系统可具有以下特点:所述指令发送接收单元内部还包括上行和下行方向的两套消息队列,用于在数据传递时进行一定的协调。
进一步地,上述实时模拟开发系统可具有以下特点:所述用户识别模块进一步包括信息暂存单元、指令编解码单元和指令监控单元,其中:
所述信息暂存单元用于对所述手机发来的设定事件的监控通知中的信息进行记录,暂存在事件缓存区中;
所述指令编解码单元用于对缓存区的信息进行编码,使之符合标准AT指令的结构,并对发来的扩展的AT指令进行解码;
所述指令监控单元用于对所有发给所述用户识别模块的指令进行监控,当收到设定事件的监控通知时,通知所述信息暂存单元暂存;当发现所述网络交互模块发来的查询指令时,调用所述指令编解码单元编码下发;当收到其他指令时,转入正常的处理流程。
进一步地,上述实时模拟开发系统可具有以下特点:所述网络交互模块中还包括一个模拟的空中下载服务器,用于在虚拟网络运行时模拟真实的与空中下载有关的增值服务,采用函数调用的方式实现数据交换。
进一步地,上述实时模拟开发系统可具有以下特点:所述模拟操作模块中还内嵌有一个数据监控模块,用于在发现有空中下载相关的操作信息后,判断是否处于实网运行,如果是,用AT指令发送给所述手机并等待实际网络的响应;如果是虚拟网络运行,则直接交给所述空中下载服务器,该服务器按照预定协议组织下行数据,发送给所述模拟操作模块。
由上可知,本发明通过专用COS(CPU卡操作系统)和扩展AT指令实现了仿真卡与系统端的实时联调,减少了对手机和数据采集器的依赖。可以作为各种SIM/UIM卡的STK/UTK开发、演示平台。该方案为智能卡软件测试提供半自动化解决方案,通过把目前必须依靠手机进行的一些测试项目,转移到计算机上来完成,从而简化了智能卡的开发流程、提高了开发效率。
附图说明
图1是本发明实施例SIM卡STK实时模拟开发系统的示意图。
图2是本发明实施例SIM卡STK实时模拟开发系统的功能框图。
具体实施方式
本实施例以SIM卡STK的实时模拟开发为例,图1所示是开发系统的示意图。如图所示,该系统由STK仿真卡1、模拟操作模块2、网络交互模块3,SIM卡4、手机5以及通讯网络6组成,其中STK仿真卡1、模拟操作模块2和网络交互模块3以软件形式在计算机上实现,特殊COS的SIM卡4装在手机5内,是用实体实现。
图中,STK仿真卡1即开发时所用的STK软件调试环境,相当于实现STK功能的软仿真虚拟卡,该卡通过ISO7816逻辑接口和windows socket实现的通用数据接口与其相连的模拟操作模块2在计算机上实现手机STK菜单操作的模拟执行,当操作不涉及网络功能时,只在这两个模块之间进行信息交互,当STK菜单操作中涉及网络功能(如呼叫、收发短信、下载等)时,模拟操作模块2通过进程间的通讯将信息通知网络交互模块3,网络交互模块再通过AT指令传递给手机5,由手机5(内插SIM卡4)将信息发送到GSM或其他通讯网络6上。
SIM卡4采用特殊的COS,相当于用于实现网络功能的通讯卡,与手机5之间建立对短信、话音等事件的监控,一旦有相应事件发生,如呼入、收到短信或下载数据等,手机5会立即通知手机内的SIM卡4,特殊COS的SIM卡4对信息进行缓存,在收到网络交互模块3定期发送的查询的AT指令后,将缓存区中的信息经过按照AT指令应答的格式要求进行编码(可以理解为扩展的AT指令),然后将信息传送到网络交互模块3,网络交互模块3获得的信息也通过进程间的通讯传送回模拟操作模块2,模拟操作模块2将信息还原成SIM卡监控的事件结果,在屏幕上显示并最终送回STK仿真卡1。
通过以上过程,实现了SIM卡STK功能的实时、实网模拟调试。
以下结合图2描述本实施例每一功能模块的具体实现结构:
STK仿真卡,除包括调试的STK功能软件外,还包括:同模拟操作模块的接口,一个是ISO7816逻辑接口,一个是通过windows socket实现的通用数据接口。前者使用进程间通讯实现,具有较高的效率但需要编写相应的接口程序,是直接同模拟操作模块进行数据交换的通道。后者通过套接字实现,开发者无需了解具体的内部实现过程,只需要按照约定的套接字就可完成数据的交互,但存在效率相对比较低的缺点。这两部分的协调工作使得模拟操作模块可以与一个选定的开发环境进行信息的交互。从模拟操作模块的角度看仿佛外接了一张真实的SIM卡,从通用的开发环境角度看仿佛外接了一部真实的手机。
模拟操作模块主要包括协议分析处理单元、STK指令显示单元、STK指令操作单元、ISO7816逻辑接口和通用数据接口、进程间通讯接口和短信逻辑接口,其中:
所述协议分析处理单元用于将用户的操作按照GSM11.14协议转化为STK仿真卡可以识别的APDU指令经接口下发给STK仿真卡。此外,还用于对STK仿真卡返回的数据是否符合规范进行分析,并将返回的数据按照其目的根据模拟操作模块可以识别的数据结构进行加工转化。
所述STK指令显示单元,用于提供操作所需的图形界面,并在接收到协议分析处理单元加工好的数据后在显示器屏幕上显示STK仿真卡刚才返回数据的信息,例如,STK仿真卡上一条返回的是Get Input指令,则在屏幕上显示一个输入提示框等待用户输入。如果返回的是Display Text指令,则在屏幕上显示一段提示信息。
所述STK指令操作单元,模拟操作模块调用STK指令显示单元后,就处在等待用户进行下步操作的模式,一旦用户进行了一次有效的操作,STK指令操作单元就调用协议分析处理单元,将用户的操作按照协议转化为STK仿真卡可以识别的APDU指令,然后下发给SIM仿真卡。
所述ISO7816逻辑接口和通用数据接口,用Win Socket套接字实现,用作模拟操作模块和STK仿真卡之间的接口,通过Win Socket套接字同STK仿真卡进行数据交互。
所述进程间通讯接口,用于通过进程间的通讯实现模拟操作模块和网络交互模块之间信息的双向传递。
所述短信逻辑接口:通过Win Socket套接字将短信通道开放出来,使得其他开发人员无需对开发环境进行任何改动的前提下进行二次开发。
基于以上结构组成的模拟操作模块是整个开发系统的信息调度中心,用软件实现了真实手机上使用STK/UTK业务的模拟,同时将涉及网络操作的功能通过进程间通讯接口将信息提交给网络交互模块,也是通过进程间通讯接口获得网络下发的信息。
另外,还可以在STK仿真卡和模拟操作模块上增加一个开放的ISO7816逻辑接口单元,使这一套实时仿真调试系统不是绑定在一个软件开发环境上,而是可以有多个数据的输入接口,例如它可以接收Vc开发环境的调试数据,可以接一个智能卡读写器使用一张真实的SIM卡,可以同Keil的开发环境协调工作等。
网络交互模块主要包括进程间通讯接口、AT指令发送接收单元、信息翻译单元和信息查询单元。其中:
所述进程间通讯接口用于通过进程间的通讯实现网络交互模块和模拟操作模块间信息的双向传递。
AT指令发送接收单元用于将模拟操作模块发来的数据结构包含的信息组织为AT指令,加入上行消息队列;完成与手机之间的AT指令的发送与接收,并将从手机接收的AT指令转化为APDU格式,加入下行消息队列。该单元内部维护了上行和下行方向的两套消息队列,以在网络操作模块和模拟操作模块之间进行数据的传递需要进行一定的协调。本实施例中,网络交互模块和手机之间的AT指令交互通过有线方式实现,接口为常用的USB接口或是串行数据接口,其实也可以通过红外线等接口。
信息翻译单元用于负责将模拟操作模块感兴趣而标准AT指令又不支持的信息(如模拟执行模块希望能获取手机接收的二级短信息)按照标准AT编码转换成标准AT指令,使得对于手机而言是收到了一条可识别的AT指令,并用于对手机返回的扩展AT指令进行解码。
信息查询单元用于定期地向手机发送AT指令,查询手机当前的状态以及特殊COS的SIM卡接收到的信息。
SIM卡4采用特殊的COS,在标准的SIM卡单元的基础上增加了信息暂存单元、AT指令编解码单元和指令监控单元,其中:
信息暂存单元用于对手机发来的事件监控通知中的信息进行记录,暂存在SIM卡的事件缓存区中,等待网络交互模块的查询。
AT指令编解码单元用于对缓存区的信息进行编码,使之符合标准AT指令的结构,并用于对信息翻译单元编码得到的扩展的AT指令进行解码。通过这种方式,将SIM卡上原先不被标准AT指令识别的一些信息对手机而言是一条标准的AT指令的返回结果。
通常,采用对SIM卡上的ADN和SMS进行新的编码,之所以对ADN和SMS的内容进行新的编码主要是他们的作用比较特殊,AT指令中有对ADN和SMS操作的函数,这样通过计算机向下发送的AT指令例如读取ADN最终会传递到SIM卡上,SIM卡将卡上缓存的信息按照特定的编码作为ADN的读取结果返回给手机。对手机而言它以为是一条ADN,于是又将内容送回给计算机。
指令监控单元,用于对所有发给SIM卡的指令进行监控,当发现有需要返回STK仿真卡的事件后,将他们存入事件缓存区中;当发现网络交互模块通过AT指令查询当前SIM卡的信息时,调用指令编解码单元;当下发的APDU指令不属于上述情况时,转入正常的处理流程。
相应地,本实施例SIM卡STK实时模拟开发的流程包括以下步骤:
步骤一,建立一个模拟开发系统,包括在计算机上实现的STK仿真卡、模拟操作模块和网络交互模块,以及插入SIM卡(采用特殊COS)的手机和通讯网络;
步骤二,手机开机后,特殊COS的SIM卡接收到手机发送下来的Terminal Profile指令后返回Terminal Profile应答,然后提出对包含今后需要用到的信息的事件(如MT呼叫、呼叫连接、呼叫断开、位置状态等)提出事件监控请求,手机返回事件监控建立应答,完成初始化;同时,在该特殊COS的SIM卡在复位上电后,在卡内开辟一块事件缓存区,用于对手机下发的事件进行缓存,因为网络交互模块并不能保证在事件下载后立即将该事件取走;
步骤三,模拟操作模块按照真实手机的开机过程与STK仿真卡之间按照标准ISO7816协议通过套接字接口进行数据交互,包括关键文件的读取、网络鉴权、ADN和SMS的读取,最后发送Terminal Profile指令,完成STK菜单初始化;
步骤四,等待调试人员对屏幕上的STK菜单进行操作,操作后,模拟操作模块将操作指令发送给STK仿真卡,所述仿真卡对所述模拟操作模块返回的数据进行处理,结果再通过上述接口交还给模拟操作模块;
步骤五,模拟操作模块分析STK仿真卡返回的数据,更新模拟界面的显示,并判断是否涉及网络操作,如果不涉及,返回步骤四,如果是,向网络交互模块发送相关操作信息,执行下一步;
步骤六,将相关操作的指令加入到网络交互模块的上行消息队列,必要时进行编码转换,等待合适的时机调用AT指令发送给手机(插入有SIM卡),手机和特殊COS的SIM卡按正常流程完成相应的功能,如发送短信、呼叫等等;
在下行方向上:
步骤七,手机有相应的监控事件(如MT呼叫、呼叫连接、呼叫断开、位置状态、二级短信息、位置信息等等)发生时会通知SIM卡后,将这一系列事件缓存起来;
步骤八,网络交互模块定期通过AT指令查询手机监控事件的响应,手机转换为APDU指令后下发给特殊COS的SIM卡;
步骤九,SIM卡收到查询AT指令后,到事件缓存区中进行查找,如果有,则将事件按AT指令应答格式的要求进行编码打包,返回数据给手机,使得编码后的数据对手机而言认为是对先前发送下来的AT指令的响应,手机再通过查询AT指令应答发送到网络交互模块;
步骤十,网络交互模块将AT指令的返回结果还原为APDU指令(该转换也可以由模拟操作模块的单元来完成,效果等同),加入下行消息队列,在合适的时机通过进程间的通讯接口发送给模拟操作模块;
步骤十一,模拟操作模块根据返回信息在屏幕上进行显示,并通过套接字接口最终发回到STK仿真卡处理。
综上所述,本发明将一张实际的SIM卡按照功能分解为实现网络功能的通讯卡和STK功能的软仿真虚拟卡。对常规的SIM卡COS进行了改造,使其具备了对特殊事件进行管理、存储,并利用特殊的编码使之符合标准AT指令的结构,实现了计算机通过标准AT指令可以访问SIM卡内的特定信息。并利用Windows系统多任务特性,在模拟操作模块和开发者使用的调试环境之间建立数据交互通道。从而实现了对SIM卡STK功能的“实时”实网调试仿真。本发明的系统和方法也完全适用于UIM卡UTK功能等用户识别模块工具套件的实时调试,只需将SIM卡相应地更换为UIM卡并采用特殊的COS,将STK仿真卡替换为UTK软仿真卡,手机由GSM手机改为CDMA手机,其它功能模块的功能是相同的。
对于OTA(空中下载技术)等相关业务,实施例的模拟开发系统是采用实网运行,但也可以采用虚拟网络运行或根据配置从两种方式中选择一种。在选择虚拟网络运行的情况下,可以在模拟操作模块中内嵌一个数据监控模块,当发现有OTA操作相关的数据后,判断是否处于实网运行,如果是,按实施例流程调用AT指令发送给目的地,并等待实际网络的响应。如果是虚拟网络运行,则直接交给OTA模拟服务器,服务器按照预定协议组织下行数据,加入到下行消息队列中等待时机发送给模拟操作模块显示,由其再发送给STK仿真卡。该OTA模拟服务器作为网络交互模块中的一部分,它负责在虚拟网络运行时模拟一些真实与空中下载有关的增值服务,采用函数调用的方式进行数据交换。
上述实施例系统中很多模块和单元是用软件实现的,所以可能有很多变换的环节,例如各个模块可以合并或再拆分,模块之间的接口,所用的指令也可以采用其他的类型,只要保证可靠的数据通讯即可。

用户识别模块工具套件的实时模拟开发方法及系统.pdf_第1页
第1页 / 共20页
用户识别模块工具套件的实时模拟开发方法及系统.pdf_第2页
第2页 / 共20页
用户识别模块工具套件的实时模拟开发方法及系统.pdf_第3页
第3页 / 共20页
点击查看更多>>
资源描述

《用户识别模块工具套件的实时模拟开发方法及系统.pdf》由会员分享,可在线阅读,更多相关《用户识别模块工具套件的实时模拟开发方法及系统.pdf(20页珍藏版)》请在专利查询网上搜索。

本发明公开一种用户识别模块工具套件的实时模拟开发方法和系统,首先建立模拟开发系统,包括用户识别模块的仿真卡、模拟操作模块和网络交互模块,以及插入用户识别模块的手机和通讯网络;手机和用户识别模块在初始化过程中建立事件监控;对所述菜单进行操作后,模拟操作模块将操作指令发送给仿真卡,仿真卡对模拟操作模块返回数据进行处理并返回结果;模拟操作模块更新模拟界面显示,如果涉及网络操作,将操作信息通过网络交互模块。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 电学 > 电通信技术


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1