OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » AT89S52另类加密猜想

共2条 1/1 1 跳转至

AT89S52另类加密猜想

助工
2014-12-09 16:14:03    评分
我一直想对辛辛苦苦编写出来的单片机程序进行加密,但无从下手,大家知道,像S51、S52这类型的ISP下载的MCU,你即然可以ISP写入,
别人也很容易读取,写的程序一样被人家偷_窥无疑。我在网上搜索良久,找的方法无疑就三种:
1.使用有加密功能的单片机,但现在解密的编程器大把,很快就把你的程序偷取了。
2.把单片机的管脚烧毁,无疑这种方法最好,但是没有人提供正确的烧断步骤。为此我特地发了一个贴讨论过,都没有人知道怎么烧!
3.程序内部加密,但是你的板如果能正常运行,别人也仿照和你的板一模一样,别人也一样可以正常运行。这个方法不可行。


我自己就想,硬件烧断管脚我不会,那我就采用EEPROM(AT24C02)存储器进行加密,把加密值放入EEPROM中。


第一:
例如,我做一个4*4键盘的密码锁的电磁门锁产品。用的是AT24C02来存储用户的设置密码,假设地址1和地址2用来存放用户设置的密码,而地址10
和地址11、地址12用来存放我的加密值。我只要在程序中判断:地址10+地址11=地址12,那么条件成立,程序正常运行。否则就是盗版的,
我会让程序在24小时后陷入死循环锁坏,让用户开不了门,非得破门而入,让用户去投诉盗版公司,让他们的生意做不成。呵呵,想到这里我就想笑。
(注;加密值是我事先写入EEPROM中,并不会在产品程序中写入,这样的话,盗版的人就不知道我有加密过,给他们认为这是一个无加密的产品)


第二:
第二个产品就是烘烤箱,例如烘烤各类果实的果干。使用的是AT89S52和AT24C02和DS18B20,我的加密值同样也放在EEPROM中,大家知道,每个18B20
都独有一个序列号,我也把这相序列号存入EEPEOM中,在程序中也做相应的对应关系,能对应上就可以正常运行程序,否则就让程序在10分钟后拼命的
加热烧烤,烧死它,而让数码管显示的温度值是一个非常正常的数值。呵呵,想到这里我就会偷偷的笑!


第三:
我不会用平常的P0、P1口去驱动数码管,而是从P0-P3四个I/O口中任意取几个脚,只要凑够8个脚就行了,同理,键盘输入也是这样取管脚。
然后我用0.5平方的细漆包线进行连接管脚和元件,再用农机胶把这些细小的漆包线和整个AT89S52全部封住,让别人不知道这些管脚到底接的是哪个
元件,如果他们拆除农机胶进行查看,呵呵,因为农机胶很硬,拆不出就算拆出来,也会同时把漆包线弄断,更不可能知道管脚和元件的连接关系。


以上是我想到的加密方法,不知可不可行,请大家发表一下意见,如何才能做得更好。

专家
2014-12-12 16:13:48    评分
2楼
我看2 3靠谱。1的话,直接剪短管脚算不算

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]