|
| DVBCN数字电视中文网 日期:06-01-12 16:28:47 作者:北京算通科技发展有限公司 陈君华 点击率:[ ] |
[摘要]:论述基于智能卡的“机卡分离”技术在广播宽带网络中的设计和应用。
3 系统实现
为了确保其方案正确的实施,在实现机卡分离中我们采取了如下的一些关键技术:
3.1 分层结构
采用ISO OSI分层结构来描述CA中间件,以便满足在将来实现中变化的需求。为了减少在机卡分离通用接口上的通信额外开销,将应用协议数据单元(APTU)采用通用的APDU格式定义,直接放在链接层内(ISO/IEC 7816-3 T=0传输协议)或者放在链接层之上(ISO/IEC 7816-3 T=1传输协议)。应用层定义为所有使用通用接口的应用,传输层和链接层采用ISO/IEC 7816的规定。
3.2 通用接口
在通用接口上的通信协议以分层的方式来定义以便提供必要的功能。这些功能表现为:为智能卡和机顶盒之间的复杂操作组合提供传输支持,一组可扩展的数据对象以便机顶盒为智能卡提供需要的资源。这种分层如图所示。
 图2
所有的应用层都使用通用的应用层协议数据单元(APDU)在机顶盒和智能卡之间通信。应用层协议的一部分包含发送一个命令,在接收端处理这个命令,然后发送回这个命令的响应。因此,一个特定的响应对应于一个特定的命令,从而构成一个命令-响应对。
3.3 数据编码
对所有采用通用接口传输的数据都以数据对象的格式进行定义。即数据对象按照通用的BER Tag-Length-Value的格式做了如下的规定:
 图3
采用以BER TLV方式编码的数据对象使得可以按需要添加新的数据对象,现存的数据对象也可以加以扩展,在tag分配和数据对象长度上也没有任何限制。
3.4 通信协议
通信模块是整个机卡分离方案实现的首要任务。它负责管理整个机卡分离其他模块的工作状态,承担同智能卡之间的各种交互操作。 其采取的通信协议负责处理“机卡分离”CA中间件中通过7816接口的数据传输及交互控制协议,接口上传输的数据包括ECM、EMM数据、CW数据、用户安全信息以及各种控制命令等。 由于智能卡上数据的敏感性,要求机卡分离技术不能对智能卡上的数据结构作详细的规定,从而给CA公司设计卡上系统留下更大的灵活空间,也保护了CA公司私有系统的安全性。但是,为了实现机顶盒与智能卡之间能准确地通信,必须对它们之间的接口通信协议做出准确的定义。并详细规定哪些数据能写到智能卡上,那些数据能读出智能卡。在机卡分离技术中只采用几条基本指令进行通信,所有在此接口上传输的数据都采用数据对象的方式进行封装。 传输或处理的所有数据对象的比特流表示都遵从图3的格式,即高位在前。
 图4
3.5 安全机制
由于机顶盒和智能卡之间公开了CA数据的接口,存在数据被截获和复制的可能性。为此,需要在智能卡和机顶盒之间的传输通道上建立可靠的安全机制,并且在机卡之前进行有效数据传输之前必须进行机卡的安全认证。安全机制模块的设计就是为了这一目的。 通常情况下,建立安全机制属于各个CA 厂商的事情,机卡分离后的机顶盒生产与CA实现无关。建立可靠的安全机制:比如机卡认证、安全的数据传输通道。在机卡分离系统中我们采用常用的两种密码算法: (1) 对称密钥密码算法或私钥密钥密码算法(DES,3DES, Compunicate算法,IDEA); (2) 非对称密钥密码算法或公钥密钥密码算法(RSA)。 机卡之间的相互认证以及数据的加密均可采用这两种密码算法中的一种。比如我们在机卡认证中采用对称密钥认证体制。这种认证体制的特点是加密和解密采用的是一个共同的密钥。 当机顶盒执行对智能卡的鉴别时,首先由机顶盒产生一个随机数R,并发送给智能卡。智能卡收到机顶盒的数据R,并结合卡内存储的密钥K,进行加密运算f, 并产生出密文X’。然后智能卡将X’回送给机顶盒,机顶盒从密钥库中检索出该卡片的密钥K,利用K和X’进行解密运算f’,得到R’。如果R’=R,则说明该智能卡是合法的。其认证过程如图4所示:
 图5
同样,如果智能卡需要对机顶盒进行鉴别时,也可以采用上述方法,只是数据流向相反,由智能卡产生随机数,并且在卡内判断机顶盒合法性。 |
|
|
|
|