嵌入式防抄版加密芯片DM2016及其应用

2013-09-03 07:17洪家平高美珍
关键词:洪家明文密文

洪家平,高美珍

(1.湖北师范学院 计算机科学与技术学院,湖北 黄石 435002;2.湖北师范学院 物理与电子科学学院,湖北 黄石 435002)

0 概述

据统计,全球每三款嵌入式应用系统中就有一款应用软件被非法拷贝或盗版,而面对种类众多的解密公司,单纯的软件保护已无济于事, 且其保护力度也远远不能经受市场的考验,如果用特定的硬件来保护这些嵌入式系统应用软件,或使用软硬件相结合的保护技术,这样就有可能有效地加大对盗版和破解的难度。针对这种MCU加密易被破解的局面,防抄版嵌入式加密芯片DM2016能有效地解决上述问题。

1 DM2016结构与特点

DM2016的内部结构如图1所示,在结构上内嵌了1024bits的E2PROM,采用明文随机数产生方式、密钥OTP写入、数据线自动熔断不可读等多种保护措施。嵌入式加密芯片DM2016广泛应用于GPS、DVD、DVR、DVB以及大部分嵌入式应用系统中。

DM2016还有如下特性,如表1所示:

表1 DM2016的特性

2 DM2016的加密和解密原理

DM2016是一款基于嵌入式系统的专业防抄版加密与解密芯片,如图2所示,是CPU与DM2016在进行加、解密时数据传递关系原理图。DM2016通过I2C总线与主控器芯片CPU相连,通过在主程序中嵌入加密程序,当加密程序被调用运行时,即从RAM里面随机调用一组数据作为明文,与程序里面的密钥混合后产生一组暗文,暗文再通过I2C总线传送到加密芯片,按反算法与加密芯片中密钥产生明文,再与RAM中的明文进行比较,两者一致则资格认证通过,程序继续运行, 如果两者不一致则程序中断退出,从而保护用户程序。如图3是DM2016加密与解密系统流程图。

图1 DM2016的内部结构图 图2 CPU与DM2016加、解密数据传递关系原理图

图3 DM2016加密与解密流程图

3 DM2016在嵌入式系统加密领域中的应用

3.1 DM2016与处理器的硬件连接

如图4所示,是DM2016加密芯片在嵌入式系统加密领域中的应用结构原理示意图。从图中可以看出,DM2016是通过I2C总线与微处理器(Processor)相连的。DM2016与微处理器之间的数据传输与通信完全遵守I2C总线的通信协议。

3.2 微处理器对DM2016的读写操作

微处理器对DM2016的读写操作分两种情况:

首先看微处理器对DM2016的E2PROM执行写操作,只能使用I2C总线的单字节写,不能使用I2C总线的多字节写方式,E2PROM写一个字节大约需要5ms的时间。但处理器对DM2016的E2PROM执行读操作时,则既可以使用I2C总线的多字节读,也可以使用I2C总线的单字节读方式。

另外,微处理器往DM2016中写密文时,要使用I2C总线的多字节写方式,一次写8个字节,立即读明文。处理器从DM2016中读明文时要使用I2C总线的多字节读方式,也是一次读8个字节。

3.3 部分应用软件代码

下面是一个实际数据输入的例子:

{

......

unsigned char srcData[8]; //存放原始数据(随机数)

unsigned char decData[8]; //存放需加密的运算数据(随机数)或运算结果(密文)

......

//在具体的开发平台上产生一组随机数共64位,假设数据为0x01、0x23、0x45、0x67、0x89、0xab、0xcd、0xef

SrcData [0]=0x01;

SrcData [1]=0x23;

SrcData [2]=0x45;

SrcData [3]=0x67;

SrcData [4]=0x89;

SrcData [5]=0xab;

SrcData [6]=0xcd;

SrcData [7]=0xef;

DecData [0]=0x01;

DecData [1]=0x23;

DecData [2]=0x45;

DecData [3]=0x67;

DecData [4]=0x89;

DecData [5]=0xab;

DecData [6]=0xcd;

DecData [7]=0xef;

.....

//用户自定一个128位的Key1,该值与芯片中烧入的值一样,这里假设定义的值如下:

unsigned char Key [16]=

{ 0x01,0x23,0x45,0x67,0x89,0xab,0xcd0xef,

0xfe,0xdc,0xba,0x98,0x76,0x54,0x32,0x10};

unsigned char result=EDesEn_Crypt (decData, Key);

If (result! =0)

{

//进行出错处理

}

//此时在decData数组中存放着密文,值为0xf7、0x73、0x72、0xb7、0xba、0xdf、0x2f、0x81

//将产生的decData数组中存放着的这8个字节密文通过I2C 总线送给DM2016芯片进行解密。

图4 DM2016与嵌入式芯片连接原理图

4 结束语

本文介绍了嵌入式防抄版加密解密系统加密芯片DM2016的结构、特点,同时给出了DM2016在嵌入式系统中的加密方法及应用。随着嵌入式系统越来越广泛的应用,嵌入式系统的安全保密问题也越来越受到广泛的重视。而嵌入式防抄版芯片DM2016为防止嵌入式系统开发成果被仿制或剽窃提供了更为强有力的保障。

[1]洪家平.基于嵌入式系统的数字视频加密技术[J] 电子技术应用,2009,5:141~144.

[2]洪家平.加密芯片DM2016在数字电视加密中的应用[J]. 单片机与嵌入式系统应用,2008,8:38~40.

[3]洪家平.AES在嵌入式系统起动加载程序中的应用[J]. 信息安全与通信保密,2007,2:54~56.

[4]李桂满,李 国.加解密算法BlowFish在单片机上的应用 [J].单片机与嵌入式系统应用,2007,10:12~14.

[5]洪家平,董武世.基于嵌入式系统的时分多址通信协议的实现 [J].微计算机信息,2005,7:31~33.

[6]宋 凯,严丽平,甘 岚. 嵌入式图像处理系统的设计与实现[J]. 计算机工程与设计,2009,(19) :4368~4370.

[7]郭协潮.遗传算法在信息安全中的应用研究[J]. 计算机工程与应用,2012,(3):127~131.

[8]郑更生,方 勇,肖 婧. 嵌入式无线视频监控系统的设计与实现[J]. 武汉工程大学学报,2012(10):66~68.

猜你喜欢
洪家明文密文
洪家滩游记
一种支持动态更新的可排名密文搜索方案
基于模糊数学的通信网络密文信息差错恢复
奇怪的处罚
一种基于密文分析的密码识别技术*
奇怪的处罚
携手共建美丽乡村——湖南省林勘院洪家关项目规划建设纪实
四部委明文反对垃圾焚烧低价竞争
云存储中支持词频和用户喜好的密文模糊检索
富有西方建筑魅力的济南洪家楼教堂