据统计,全球每三款软件就有一款被拷贝或盗版,使得正规厂家的正版系统销量锐减。面对形形色色的解密公司,封装和PCB布线的保护已经显得力不从心,而单纯的软件保护也无济于事,如E2PROM和MCU保护软件,由于E2PROM的易复制以及MCU的易读性,保护力度远远不能经受市场的考验。如果用硬件来保护软件,或软硬件相结合,就能加大盗版和破解的难度。
针对MCU加密易被破解,防抄版嵌入式系统加密芯片DM2016内嵌了1024位E2PROM,采用特殊算法、明文随机数产生、密钥OTP(一次性可编程)写入数据线自动熔断等多种保护措施。加密芯片DM2016广泛适用于PMP、GPS、DVD、DVR、DVB等嵌入式应用系统。
1 DM2016的特点
DM2016的内部结构如图1所示。

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部分寄存器的配置。

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

下面以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个过程,即密钥预处理和信息加密。
以密钥预处理为例,这时,Bl
首页 上一页 下一页 末页 共3页 当前是第1页
(责任编辑:{xiaolin)
更多报道: