数字电视智能卡CA的工作原理

最近数字电视CA的安全性讨论甚嚣,笔者从流行欧美的数字电视共享技术角度,用图解加文字的形式,为了给大家一个直观的认识,将神秘的数字电视CA展现在读者面前。

数字电视CA的各个部分是紧密连接在一起的,一旦一部分出问题,其他也会受牵连。 CA的破解都是从局部的破解开始,直到最后彻底被攻破。根据从以往被破解的CA过程,分别解释如下:

首先要了解一下CA的结构,见图一的智能卡,这里面保存了CA公司的全部家当。并注明了各部分大体的重要性分量。

图一

算法:这一部分的算法设计水平可以决定智能卡的成本高低,如果能设计一个高效的算法,可以降低对智能卡的要求,智能卡成本就高,反之,智能卡成本就低;但大多CA公司的核心算法都是3DES甚至DES,因为在智能卡里面运算DES算法很耗费时间,对设计要求较高。也是因为这个原因,对同一家CA公司而言,批量供货的智能卡肯定都是同一种算法。DES(数据加密标准)在1977年被美国国家标准技术协会认可成为均衡加密算法的标准,是一种公开的算法,直到现在还在广泛应用。机顶盒中解解密流的解扰器也是采用的DES算法。采用算法保密的CA一般在DES或3DES基础上加上一个壳,就起到算法保密的作用,但这种作用在通讯接口配破解后,有的高水平的黑客就可以根据明文和密文的规律对应关系,将这个壳剥离掉。

密钥:这部分一般根据不同的运营商单独设置,也有的CA公司针对好多规模不很大的运营商都用同一组密钥。在采用DES或3DES的情况下,密钥长度为64位,去掉8个校验位,实际长度为56位。这个密钥长度,表明有数量庞大的密钥可能性,在使用DES标准的当初,要破解一个DES密钥,普通的PC机要运行上百年。得益于计算速度的加快,早在1998年,就有人制造了一台专用于破解des的机器,这台机器叫做Deep Crack ,总共耗资20万美元,平均破解(穷举)出一个正确的key需耗时4天左右。即使现在,破解这样一个,现在制造这样一台机器花费也要超过1万美元。国外也有报道,采用高速DSP或FPGA,花费不到5000美元,每秒钟可以穷举超过1000亿个密钥,这样也能在几天内将正确的密钥找出来。不过,如果有足够多的明文和密文对样板,很多人用PC机协同操作,采用碰撞法,也很可能在短时间内将正确的密钥找到。虽然密钥的数据量不大,但在CA中的位置是举足轻重的,在知道但当知道了CA所采用的算法之后,即使不破坏智能卡,推出密钥只是时间问题。

通讯接口,包含以下两部分:1、COS接口,这是CA公司在开发CA时所必须的接口,也是向智能卡里写算法和密钥的接口,每张智能卡里都一样。2、和算法密钥沟通的通讯及命令接口,就是将机顶盒接收到的ECM送到算法部分,根据索引取得对应的密钥进行解密。通讯接口是靠近密钥和算法最近的部分。在通讯接口被破解之后,可以获得足够的明文CW和密文ECM对,有利于采取团队合作的方式用碰撞法获得密钥,这对于采取密钥保密措施的数字电视CA威胁很大。另一方面,黑客可以利用已经被破解的通讯接口,对智能卡里的算法进行更进一步的攻击。

图二是一种传统的CA算法破解方式,是采用物理方法将智能卡内部的算法和密钥读出来,再复制盗版卡。因为花费比较大,再加上现在的CW网络共享成本很低,一般情况下就不再采取这种方式破解了。但是,在互联网不发达的时候,第一代CA几乎全部是用这种方式被破解的,这是一种非常彻底的破解,解决的唯一办法就是换卡。

图二

图三中是CW加密传输的CA原理与破解,有的CA在CW传输构成中进行了加密,但这种加密几乎没有对黑客形成阻碍。

图四,是一种流行最早最广泛的网络共享技术,最著名的就是德国生产的Dream系列