登录站点

用户名

密码

TI-DSP程序加密问题探讨

已有 445 次阅读  2010-11-12 09:12   标签程序  探讨 

 

 

 

 

 

 

 

TI-DSP程序加密问题探讨
 
目前,最常用的TI DSP有C2000、C5000和C6000三大系列。
C2000是TI的入门级DSP,主要用在工业控制领域,如电机控制(变频调速)、数字电源等,以及计算机外设,如打印机、扫描仪等;
C5000是TI高性价比、低功耗DSP,应用范围广,特别在通信领域,如路由器、交换机、嵌入式WEB服务器等;
C6000是TI高性能DSP,主要用在各种高档数字信号处理领域,如数字图像处理(编码压缩)、频谱分析(FFT)、数字滤波器(FIR)等。
1、C2000DSP的F24xxA和F28xx系列使用片内Flash作为程序存储器,自带加mi机制,128位mi钥,要实现程序加mi就很简单了,有两种加密方法:
(1) "显式“mi钥法,使用TI提供的Flash在线编程工具(On-chip Flash Programmer)时,在“Code Security Password”区域设置好128位mi钥,然后点击“Program Password”确定mi钥设置。在设置mi钥的时候,注意不要将Key0-Key8全设置为0,如果全为0,则芯片将会永久“Lock”!
这种方式在产品批量生产时除设计者知道mi钥外,生产时的编程写入人员也知道。
(2) ”隐式“mi钥法,设计者将128位mi钥用汇编代码方式嵌入源程序中,并在连接配置文件(命令文件)*.CMD中将其定位到DSPmi钥存储区,最后编译生成.out文件一起写入Flash中。这种方式就只有设计者本人知道mi钥了。
2、C5000和C6000均使用外部Flash,程序无法加mi。这时可以采用内置大容量Flash、可加mi的单片机(如性价比高的STC51系列单片机)来完成加mi工作,具体做法是:
将DSP程序写入单片机的片内Flash中,单片机通过模拟SPI口将程序加载到DSP片内RAM中运行。这种方法程序被解mi复制的可能性有2种:一是单片机被解mi,唯一防解mi的途径是采用最新型号(或版本)的单片机,增加破解难度和时间;二是用逻辑分析仪监视SPI总线上的加载数据流,但这种破解方法难度较大,一般人不易掌握,特别是DSP的C语言源程序编译后都比较大。

上一篇: stm32应用例程 下一篇: LabCVI2009编程开发使用经验

分享 举报