兼容多种智能卡的驱动方法

文档序号:7743803阅读:150来源:国知局
专利名称:兼容多种智能卡的驱动方法
技术领域
本发明涉及一种智能卡驱动方法,具体地说,是涉及一种能够兼容多种智能卡的驱动方法。
背景技术
条件接收(CA)系统用于对数字电视节目的内容进行数字加扰,以建立有效的收 费体系,被称为数字电视健康发展的技术保障系统。智能卡作为CA系统安全性的最重要设 备,在用户端完成所有的解密功能。根据目前CA系统的运行模式,一个机顶盒中一般只配 置一种CA系统,机顶盒支持与该CA系统相应的智能卡实现数字电视节目的条件接收。由于各地广电运营商所使用的CA加密系统不一定相同,作为客户端系统的机顶 盒要满足各地市场的需求、提高其通用性,就需要在机顶盒内集成多种不同厂商的CA系 统,以完成用户授权控制与管理信息的获取、生成、加密、发送及节目调度控制等工作,保证 只有已被授权的用户才能看到节目,从而保证节目制作商和运营商的利益。按照国际标准的规定,机顶盒采用智能卡实现CA时,智能卡应该遵循标准的 IS07816协议规范。但是目前的机顶盒市场上,机顶盒中应用的智能卡所采用的协议并不都 是标准的协议,不同CA系统厂商会定制一些基于标准协议的私有协议,且同一厂商的CA系 统所用的智能卡支持的协议也不一定相同。不同协议类型的智能卡对应不同的驱动参数及 不同的数据处理过程,需要采用不同的驱动系统进行驱动。因此,为适应不同市场的需求, 针对机顶盒中集成的多种CA系统选择相应的智能卡时,需要在机顶盒内开发和维护对应 不同协议类型智能卡的不同的驱动系统,并需要在不同驱动系统之间进行频繁更换。这样 一来,不仅会增加机顶盒系统的开发和维护成本,而且不利于机顶盒底层驱动的稳定和管 理。

发明内容
本发明的目的是提供一种兼容多种智能卡的驱动方法,该驱动方法在驱动智能卡 时,对不同类型CA系统的智能卡进行相应的初始化设置,并且对同一类型、不同协议的智 能卡实现自动切换,保证所有可支持的智能卡均能正常复位和通信,提高了智能卡驱动系 统的兼容性和通用性。为实现上述发明目的,本发明采用下述技术方案予以实现—种兼容多种智能卡的驱动方法,所述方法包括下述过程获取条件接收系统的类型,并根据所获取的条件接收系统的类型选择智能卡的当 前协议类型为默认协议类型;根据所述默认协议类型设置智能卡初始化参数,并执行相应的初始化操作;对智能卡进行复位操作,并判断复位是否成功;若复位成功,获取复位应答信息,然后进入相应的通信接口进行通信;若复位失败,切换智能卡的当前协议类型,并根据切换后的当前协议类型重新设置智能卡初始化参数,然后再对智能卡进行复位操作。根据本发明,所述默认协议类型是根据条件接收系统的类型预先设定的一种智能卡协议类型。根据本发明,为保证智能卡的有效性、防止用户插错卡,在获取复位应答信息之 后、进入相应的通信接口进行通信之前,先查看所述复位应答信息中的历史数据,并根据所 述历史数据判断智能卡的有效性;在智能卡有效时,进入相应的通信接口进行通信;在智 能卡无效时,返回错误信息。根据本发明,所述相应的通信接口是指与智能卡的当前协议类型相匹配的通信接□。根据本发明,所述条件接收系统的类型可以通过外部的条件接收系统传入。根据本发明,为进一步保证卡的有效性,在驱动智能卡的过程中,随时监测智能卡 的状态,判断是否有智能卡存在;若智能卡不存在,则退出驱动智能卡的过程。与现有技术相比,本发明的优点和积极效果是利用该驱动方法在驱动智能卡时, 可以自动匹配底层智能卡的通信协议,对不同类型CA系统的智能卡进行相应的初始化设 置,并且对同一类型、不同协议的智能卡实现自动切换,保证所有可支持的智能卡均能正常 复位和通信,提高了智能卡驱动系统的兼容性和通用性,避免了因对应不同的市场产品要 求而频繁更换底层驱动系统的不足,有利于使用智能卡的机顶盒等设备底层驱动的稳定和 管理。


图1是本发明所述兼容多种智能卡的驱动方法一个实施例的工作流程图;图2是图1实施例对智能卡进行复位的具体工作流程图。
具体实施例方式下面结合附图和具体实施方式
对本发明的技术方案作进一步详细的说明。首先简要介绍一下本发明技术方案提出的必要性和意义所在以机顶盒为例,其 软件结构从下至上可以分为驱动层、中间层和应用层。为满足各地市场需求,在机顶盒中集 成不同厂商的CA系统时,都要涉及到所述三个软件层。对于集成不同CA系统的机顶盒,保 证驱动层的稳定和统一是非常重要的,因此,在面对不同的CA系统及其所用的不同协议的 智能卡时,如果能将机顶盒底层驱动统一起来,使其能够兼容多种智能卡,则有利于维护驱 动层的稳定和统一,避免针对多种市场和产品而频繁更换底层驱动的麻烦。图1示出了本发明所述兼容多种智能卡的驱动方法一个实施例的工作流程图。 该实施例以机顶盒使用智能卡实现条件接收为例,如图所示,该实施例的具体工作流程如 下SlOl 驱动流程开始。S102 首先获取CA系统的类型,确定智能卡所属的CA系统。可以采用下述方式获 取CA系统的类型一方面,对于机顶盒实现条件接收而言,具体集成哪些类型的CA系统主 要在于中间层和应用层,因此,可在中间层调用驱动层驱动智能卡时,直接根据机顶盒中所 集成的CA系统告知驱动层CA系统的类型;另一方面,也可以采用机顶盒软件在批处理文件中配置是否将CA打开及打开哪种CA等信息,然后根据所配置的宏的信息获取CA系统的类型。S103 根据CA系统类型选择智能卡的默认协议类型,并将该默认协议类型记录到一个全局变量中;所述默认协议类型为预先设定的一种智能卡协议类型。同一种CA系统所 用的智能卡协议不一定相同,就目前的CA系统而言,一般包括有一种或两种协议类型。对 于只包括一种协议类型的智能卡的CA系统,智能卡的默认协议类型即为该CA系统所用的 智能卡的协议类型;对于包括两种或以上协议类型的智能卡的CA系统,智能卡的默认协议 类型可以选定为该CA系统经常用的一种智能卡协议类型。S104 根据默认协议类型设置智能卡初始化参数。由于不同的智能卡协议对初始 化参数的设置要求不同,因此,根据所选择的默认协议类型来设置智能卡初始化参数,如波 特率、校验方式、基本单元时间等参数。S105 执行相应的初始化操作。设置好初始化参数后,对智能卡驱动层所用到的硬 件模块,如通用异步接收器和发送器、I/O控制模块,以及软件模块,如事件管理模块等进行 初始化,并创建智能卡的总管理任务。在后续中间层对智能卡进行卡复位、卡状态检测及卡 通信等所有对智能卡的操作都在所创建的智能卡的总管理任务中进行管理。S106 对智能卡进行复位。为获知智能卡的生产厂家、卡号等信息,需要对智能卡 进行复位操作。S107 在复位成功后获取相应的复位应答信息。复位的具体工作流程如图2所示。S108 查看复位应答信息中的历史数据,判断智能卡的有效性。设置该步骤的目的 是为了保证智能卡的有效性、防止用户插错卡。不同类型的CA系统所用的智能卡协议可能 相同,在用户插入的智能卡是不同于当前CA系统、但其协议是当前CA系统所用的一种协议 时,智能卡也能复位成功。虽然复位成功,但由于插入的卡与当前CA系统不匹配,是无法实 现正常的条件接收的。为避免此错误的发生,可以根据复位应答信息中历史数据,判断出插 入的智能卡是否是当前CA系统所对应的智能卡,即是否为有效卡。具体的,历史数据中包 括卡生产商、卡的版权和版本等信息,通过将读到的复位应答信息中的历史数据与已知CA 系统所用智能卡的历史数据信息相比较,若两者相同,判断为有效卡;否则判断未无效卡。S109 判断智能卡是否有效。在智能卡有效时,执行步骤Slll ;在智能卡无效时, 执行步骤Sl 10。SllO 在所插入的智能卡为无效智能卡时,返回错误信息,提示用户智能卡错误。Slll 在智能卡有效时,进入相应的通信接口进行通信。此处所说的相应的通信接 口是指与智能卡的当前协议类型相匹配的通信接口。由于不同CA系统的不同协议的智能 卡在通信时的处理流程不相同,所以应该根据智能卡的当前协议类型调用相应的通信接口 进行数据通信。Sl 12:驱动流程结束。图2所示为图1实施例中复位操作的具体工作流程图。如图2所示,采用下述流 程实现智能卡的复位操作S106 对智能卡进行复位。S21 判断复位是否成功。若复位成功,执行步骤S107,获取复位应答信息;若复位 失败,执行步骤S22。
S22:若复位失败,表明智能卡的当前协议类型并不是默认的协议类型,此时需要 切换智能卡的当前协议类型。由于在上述步骤S102中已经获取了 CA系统的类型,那么该 CA系统所对应的智能卡的所有协议类型也是已知的,则在该步骤中将智能卡的当前协议类 型切换到其他不同于复位失败的协议类型。S23 智能卡协议类型改变,相应的初始化参数也会发生变化,因此,在切换智能卡 的当前协议类型后,根据切换后的当前协议类型重新设置智能卡初始化参数,然后再转至 步骤S106对智能卡进行复位操作。直至智能卡复位成功,再执行步骤S107,获取复位应答 fn息ο在上述图1和图2所示的流程中,可以随时监测智能卡的状态,以判断智能卡是否 存在。若智能卡不存在,则退出驱动智能卡的过程,并返回相应的错误信息。上述实施例是以机顶盒驱动用于条件接收的智能卡为例介绍了兼容多种智能卡 的驱动方法,但并不局限于此,该驱动方法也可用于数字电视以外其他应用智能卡的终端 设备中,例如交通行业、公共事业等领域的智能卡终端设备。以上实施例仅用以说明本发明的技术方案,而非对其进行限制;尽管参照前述实 施例对本发明进行了详细的说明,对于本领域的普通技术人员来说,依然可以对前述实施 例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替 换,并不使相应技术方案的本质脱离本发明所要求保护的技术方案的精神和范围。
权利要求
一种兼容多种智能卡的驱动方法,其特征在于,所述方法包括下述过程获取条件接收系统的类型,并根据所获取的条件接收系统的类型选择智能卡的当前协议类型为默认协议类型;根据所述默认协议类型设置智能卡初始化参数,并执行相应的初始化操作;对智能卡进行复位操作,并判断复位是否成功;若复位成功,获取复位应答信息,然后进入相应的通信接口进行通信;若复位失败,切换智能卡的当前协议类型,并根据切换后的当前协议类型重新设置智能卡初始化参数,然后再对智能卡进行复位操作。
2.根据权利要求1所述的驱动方法,其特征在于,所述默认协议类型是根据条件接收 系统的类型预先设定的一种智能卡协议类型。
3.根据权利要求1或2所述的驱动方法,其特征在于,在获取复位应答信息之后、进入 相应的通信接口进行通信之前,先查看所述复位应答信息中的历史数据,并根据所述历史 数据判断智能卡的有效性;在智能卡有效时,进入相应的通信接口进行通信;在智能卡无 效时,返回错误信息。
4.根据权利要求3所述的驱动方法,其特征在于,所述相应的通信接口是与智能卡的 当前协议类型相匹配的通信接口。
5.根据权利要求1所述的驱动方法,其特征在于,所述条件接收系统的类型通过外部 的条件接收系统传入。
6.根据权利要求3所述的驱动方法,其特征在于,在驱动智能卡的过程中,随时监测智 能卡的状态,判断是否有智能卡存在;若智能卡不存在,则退出驱动智能卡的过程。
全文摘要
本发明公开了一种兼容多种智能卡的驱动方法,包括下述过程获取条件接收系统的类型,并据其选择智能卡的当前协议类型为默认协议类型;根据所述默认协议类型设置智能卡初始化参数;对智能卡进行复位操作,并根据复位是否成功分别执行调用通信接口进行通信或重新设置智能卡初始化参数的步骤。利用本发明的驱动方法在驱动智能卡时,对不同类型CA系统的智能卡进行相应的初始化设置,并且对同一类型、不同协议的智能卡实现自动切换,保证所有可支持的智能卡均能正常复位和通信,提高了智能卡驱动系统的兼容性和通用性。
文档编号H04N7/16GK101814037SQ201010125559
公开日2010年8月25日 申请日期2010年3月12日 优先权日2010年3月12日
发明者张丽萍 申请人:青岛海信宽带多媒体技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1