加密芯片DM2016在数字电视加密中的应用

2009-01-16 10:15:59来源: 互联网 关键字:加密芯片  嵌入式系统

引 言

  据统计,全球每三款软件就有一款被拷贝或盗版,使得正规厂家的正版系统销量锐减。面对形形色色的解密公司,封装和PCB布线的保护已经显得力不从心,而单纯的软件保护也无济于事,如E2PROM和MCU保护软件,由于E2PROM的易复制以及MCU的易读性,保护力度远远不能经受市场的考验。如果用硬件来保护软件,或软硬件相结合,就能加大盗版和破解的难度。

  针对MCU加密易被破解,防抄版嵌入式系统加密芯片DM2016内嵌了1024位E2PROM,采用特殊算法、明文随机数产生、密钥OTP(一次性可编程)写入数据线自动熔断等多种保护措施。加密芯片DM2016广泛适用于PMP、GPS、DVD、DVR、DVB等嵌入式应用系统。

  1 DM2016的特点

  DM2016的内部结构如图1所示。
    

DM2016的内部结构

点击看原图

DM2016有如下特性:

  ◆符合I2C总线标准;

  ◆支持2位I2C地址选择;

  ◆内置128位密钥解密算法,保密性能类似于3DES算法,且一次性烧录;

  ◆内置1 024位E2PROM;

  ◆采用随机数通信算法。

  2 DM2016在数字电视加密领域中的应用

  2.1 硬件结构

  图2是DM2016加密芯片在数字电视加密领域中的应用结构示意图。图中DMll05是一款针对性很强的芯片,它接收标准的TS流,选择进行解复用、解扰,将处理好的TS流以DMA方式通过PCI总线送到计算机内存。该芯片可以通过与接口控制芯片DMl021搭配,实现2个CAM卡控制,并可以接收外部红外遥控信号实现遥控功能。DMll05只需外挂加密芯片DM2016,通过I2C接口与DM2016连接,实现加密控制和部分内部寄存器上电配置。DM2016芯片内部具有128位密钥区,厂商可以一次写入,通过加密算法保护自己的软件。同时,DM2016还具有1 024位E2PROM区域,DM1105部分需配置的寄存器可以保存在此,上电时将其读入,完成DMll05部分寄存器的配置。

DM2016加密芯片在数字电视加密领域中的应用结构示意图

点击看原图

2.2 软件实现

  图3是DM2016加密芯片在数字电视加密领域中加、解密的认证流程。从该认证流程可看出,主处理芯片DMll05根据DM2016的返回值B产生64位随机数作为明文(如加密前的数字电视信号),该明文与DMll05程序里的密钥通过调用加密库来参与加密运算,得到运算结果暗文A,DMll05将暗文A通过I2C总线传到加密芯片DM2016,然后DM2016使用与DMll05程序里密钥相同的密钥对暗文A进行解密运算,并将得到的运算结果与加密前的64位随机数进行比较。如果一致则表示认证通过,此时被加密的数字电视信号就可以被解密还原成正常信号,合法用户就可以收看到相关的电视节目;否则就表示认证失败,被加密的数字电视信号不能被解密还原成正常信号,用户就不能收看到相关的电视节目。

DM2016加密芯片在数字电视加密领域中加

点击看原图

下面以BlowFish算法为例介绍加密算法在嵌入式系统中的应用。

  32位微处理器诞生后,Blowfistl算法在加密速度上超越了DES,引起了人们的关注。Blowfish算法没有注册专利,不需要授权,可以免费使用。正是由于这些特点,它广泛应用于很多产品中。在这里,BlowFish算法用来加密64位的字符串,BlowFish算法使用2个“盒”——unSigned long pbox[18]和unsigned long sbox[4,256]。BlowFish算法中,有一个核心加密函数:BF_En。该函数输入64位信息,运算后以64位密文的形式输出。用BlowFish算法加密信息需要2个过程,即密钥预处理和信息加密

  以密钥预处理为例,这时,BlowFish算法的源密钥——pbox和sbox是固定的。要加密一个信息,需要自己选择一个。key,用这个key对pbox和sbox进行变换,得到下一步信息加密所需的key_pbox和keg_sbox。具体的变换算法如下:

  ①用sbox填充key_sbox。

  ②用自己选择的key以8个一组去异或pbox,用异或的结果填充key_pbox。key可以循环使用。例如,选的key是”abcdefghijklmn”,则异或过程为

  keg_pbox[O]=pbox[O]abcdefgh

  keyr_pbox[1]=pbox[1]ijklmnab

  …………

  如此循环,直到key_box填充完毕。

  ③用BF_En加密一个全“O”的64位信息,用输出的结果替换key__pbox[O]和key_pbox[1]。此时,i=O。

  ④用BF_En加密替换后的key_pbox[i]和key_phox[i+1],用输出替代key_pbox[i+2]和key_phox[i+3]。


  ⑤i=i+2,继续第4步,直到key_pbox全部被替换。

  ⑥用key_pbox[16]和keyl_pbox[17]做首次输入(相当于上面的全“O”输入),用类似的方法替换key_sbox进行信息加密。信息加密就是用函数把待加密信息x分成32位的两部分:xL和xR,再用BF_En函数对输入信息进行变换。

  以下是初始化sbox、pbox及定义全局变量key_pbox、key_sbox的C程序例子。

程序

点击看原图

结 语

  随着嵌入式系统越来越广泛的应用,安全保密问题也越来越受到重视。密码学为其提供了正确的理论基础。同时,性能优良的硬件(如DM2016)成为实现其安全保密的物质基础。二者的有效结合为防止嵌入式系统开发成果被仿制或剽窃提供了有力的保障。

关键字:加密芯片  嵌入式系统

编辑:王婷婷 引用地址:http://www.eeworld.com.cn/szds/2009/0116/article_500.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:京东方3亿元增资合肥公司6代线项目
下一篇:HDMI创始人推出的下一代HDMI规范

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
加密芯片
嵌入式系统

小广播

独家专题更多

迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 电视相关 白色家电 数字家庭 PC互联网 数码影像 维修拆解 综合资讯 其他技术 技术产品 应用设计 论坛

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved