访问手机版页面
你的位置:老古开发网 > 其他 > 正文  
经验谈:实现程序分割的加密方法
内容导读:

  目前,国内流行使用的单片机按加密程度可大致分为两类:一类用硬件手段实现了程序不能被读出;另一类做不到这一点,于是就采取各种手段进行加密,常见的方法是防止程序被别人读懂但却无法防止别人拷贝过去盗用。本人找到了一种方法可以做到即使拷贝过去也无法使用。

1. 用软件实现电位器功能的系统

  在一些智能仪表和家用电器的控制系统中,过去在模拟系统中要实现零点调整和量程调整往往各用一个电位器;而在单片机应用系统中,可以在软件中采用一个直线方程,用调整直线的斜率和截距的方法来实现。在这样的系统中,程序一般分成两部分:(1)正常运行部分;(2)标定/设置部分。为了防止别人乱动,进入设置部分往往还有密码,但密码一般很容易得到。为了实现掉电保护,通常将斜率和截距存放在EEPROM中(如:24C02、93C46、28C64等)。程序的结构一般如图1所示。


图1

2. 用于设置的程序

  相当于原先的全部程序。

3. 用于运行的程序

  在原先的程序中去掉设置部分,把EEPROM中存好的斜率和截距当作常数来使用。

4.使用方法

  将安装CPU(或EEPROM)芯片处焊上1个IC插座,设置时插入设置程序芯片。完成设置以后要出厂时,拔下设置程序芯片再插入运行程序芯片即可。

5. 加密原理

  由于硬件部分的离散性,只得到运行程序调不出来达到设计精度的系统;而设置程序又没有随产品出厂,甚至读出EEPROM中的内容也是没有用的,所以只从产品上拷贝程序这条路基本上是堵住了。

标签:
来源:单片机与嵌入式系统应用 作者:济南大学 王小平 时间:2006/2/12 0:00:00
相关阅读
推荐阅读
阅读排行
最近更新
商品推荐