家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生 家电维修班,手机维修班,电脑维修班,电工班,焊工班,液晶电视维修班,电动工具维修班、电动车摩托车维修班、网络营销培训、网站设计培训、淘宝培训---全国招生

加密IC DM2016在数字电视加密中的设计应用

    据统计,全球每三款软件就有一款被拷贝或盗版,使得正规厂家的正版系统销量锐减。面对形形色色的解密公司,封装和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)成为实现其安全保密的物质基础。二者的有效结合为防止嵌入式系统开发成果被仿制或剽窃提供了有力的保障。

2011-10-25 22:20:49统计:[
技术空间

招生问答

»更多
  • 咨询热线:0731-85579057
  • 咨询热线:13308461099
  • 报名电话:0731-85579057
  • 技术专业

    »更多

    学校图片

    »更多
    点击这里给我发消息
    点击这里给我发消息
    点击这里给我发消息
    阳光电子学校
    电工培训学校 电动车维修学校 摩托车维修学校 摩托车维修培训 手机维修培训 家电维修培训 电脑维修培训 电动工具维修培训 液晶电视维修培训 安防监控培训 空调维修培训 网络营销培训 网站设计培训 淘宝网店培训 电器维修培训 家电维修学校 电工培训 焊工培训 电工学校
    中山市,固原市,银川市,玉树,海东,陇南市,酒泉市,张掖市,天水市,金昌市,兰州市,榆林市,延安市,渭南市,铜川市,阿里,山南,拉萨市,怒江,文山州,楚雄州,普洱市,昭通市,玉溪市,昆明市,毕节,铜仁,遵义市,贵阳市,甘孜州,资阳市,达州市,宜宾市,南充市,遂宁市,绵阳市,泸州市,自贡市,三亚市,崇左市,河池市,玉林市,钦州市,梧州市,柳州市,梅州市,肇庆市,湛江市,佛山市,珠海市,韶关市,湘西州,怀化市,郴州市,张家界市,邵阳市,株洲市,仙桃市,随州市,荆州市,荆门市,襄樊市,黄石市,驻马店市,信阳市,南阳市,漯河市,中卫市,石嘴山市,海西,海南藏州,黄南州,海北,甘南,庆阳市,平凉市,武威市,白银市,嘉峪关市,安康市,汉中市,咸阳市,宝鸡市,林芝,日喀则,昌都,迪庆,德宏,大理,西双版纳,红河州,临沧市,丽江市,保山市,曲靖市,黔东州,黔西州,安顺市,六盘水市,凉山州,阿坝州,雅安市,广安市,眉山市,内江市,广元市,德阳市,攀枝花市,成都市,海口市,来宾市,百色市,贵港市,北海市,桂林市,南宁市,云浮市,揭阳市,潮州市,清远市,阳江市,汕尾市,惠州市,茂名市,江门市,汕头市,深圳市,广州市,娄底市,永州市,益阳市,岳阳市,湘潭市,长沙市,恩施州,黄冈市,孝感市,鄂州市,十堰市,武汉市,周口市,商丘市,三门峡市,许昌市,焦作市,安阳市,鹤壁市,平顶山市,开封市,郑州市,聊城市,滨州市,德州市,莱芜市,日照市,泰安市,烟台市,潍坊市,东营市,淄博市,上饶市,济南市,抚州市,宜春市,赣州市,新余市,九江市,景德镇市,宁德市,南平市,泉州市,莆田市,厦门市,宣城市,亳州市,六安市,宿州市,黄山市,滁州市,安庆市,淮北市,马鞍山市,蚌埠市,芜湖市,合肥市,丽水市,舟山市,衢州市,金华市,湖州市,嘉兴市,宁波市,宿迁市,镇江市,盐城市,连云港市,苏州市,徐州市,南京市,绥化市,牡丹江市,佳木斯市,大庆市,鹤岗市,哈尔滨市,白城市,白山市,辽源市,吉林市,葫芦岛市,铁岭市,盘锦市,阜新市,锦州市,本溪市,鞍山市,沈阳市,锡林郭勒盟,通辽市,乌海市,吕梁市,忻州市,晋中市,晋城市,阳泉市,太原市,廊坊市,承德市,保定市,邯郸市,唐山市,宁夏,甘肃省,西藏,贵州省,重庆市,广西,湖南省,河南省,江西省,安徽省,江苏省,黑龙江省,辽宁省,山西省,天津市,四平市,内蒙古,吴忠市,果洛,西宁市,定西市,商洛市,西安市,那曲,黔南州,巴中市,乐山市,贺州市,防城港市,东莞市,河源市,常德市,衡阳市,咸宁市,宜昌市,濮阳市,新乡市,洛阳市,菏泽市,临沂市,威海市,济宁市,枣庄市,青岛市,吉安市,鹰潭市,萍乡市,南昌市,龙岩市,漳州市,三明市,福州市,池州市,巢湖市,阜阳市,铜陵市,淮南市,台州市,绍兴市,温州市,杭州市,泰州市,扬州市,淮安市,南通市,常州市,无锡市,大兴安岭,黑河市,七台河市,伊春市,双鸭山市,鸡西市,齐齐哈尔市,延边,松原市,通化市,长春市,朝阳市,辽阳市,营口市,丹东市,抚顺市,大连市,阿拉善盟,兴安盟,乌兰察布市,巴彦淖尔市,呼伦贝尔市,鄂尔多斯市,赤峰市,包头市,呼和浩特市,临汾市,运城市,朔州市,长治市,大同市,衡水市,沧州市,张家口市,邢台市,秦皇岛市,石家庄市,青海省,陕西省,云南省,四川省,海南省,广东省,湖北省,山东省,福建省,浙江省,上海市,吉林省,河北省,北京市