老古开发网首页
导航:老古开发网首页文章索引索引第2113页文章分类单片机第43页→[AT89cxx加密原理]
| -文章搜索 - 最新文章 - |

第2705篇:AT89cxx加密原理

发布时间:2006年8月2日 点击次数:1676
来源:   作者:
 
AT89cxx加密原理  
  单片机解密简单就是擦除单片机片内的加密锁定位。由于AT89C系列单片机擦除操作时序设计上的不合理。使在擦除片内程序之前首先擦除加密锁定位成为可能。AT89C系列单片机擦除操作的时序为:擦除开始---->擦除操作硬件初始化(10微秒)---->擦除加密锁定位(50----200微秒)--->擦除片内程序存储器内的数据(10毫秒)----->擦除结束。如果用程序监控擦除过程,一旦加密锁定位被擦除就终止擦除操作,停止进一步擦除片内程序存储器,加过密的单片机就变成没加密的单片机了。片内程序可通过总线被读出。对于AT89C系列单片机有两种不可破解的加密方法。
一、永久性地破坏单片机的加密位的加密方法。简称OTP加密模式。
二、永久性地破坏单片机的数据总线的加密方法。简称烧总线加密模式。
一、OTP加密模式原理
  这种编程加密算法烧坏加密锁定位(把芯片内的硅片击穿),面不破坏其它部分,不占用单片机任何资源。加密锁定位被烧坏后不再具有擦除特性,89C51/52/55有3个加密位进一步增加了加密的可靠性。一旦用OTP模式加密后,单片机片内的加密位和程序存储器内的数据就不能被再次擦除,89C51/52/55单片机就好象变成了一次性编程的OTP型单片机一样。如果用户程序长度大于89C51单片机片内存储器的容量,也可使用OPT模式做加密,具体方法如下:
1、按常规扩展一片大容量程序存储器,如27C512(64K)。
 2、把关键的程序部分安排在程序的前4K中。
 3、把整个程序写入27C512,再把27C512的前4K填充为0。
 4、把程序的前4K固化到AT89C51中,用OPT模式做加密。
 5、把单片机的EA脚接高电平。
这样程序的前4K在单片机内部运行,后60K在片外运行。盗版者无法读出程序的前4K程序,即使知道后60K也无济于事。
二、炼总线加密模式原理
因为单片机片内的程序代码最终都要通过数据总线读出,如果指导单片机的数据总线的其中一条线永久性地破坏,解密者即使擦除了加密位,也无法读出片内的程序的正确代码。89C1051/2051的数据总线为P1口烧总线模式烧坏89C2051的P1.0端口,原程序代码为02H、01H、00H。读出的数据则为03H,01H,00H。其中最低位始终为1,读出的程序代码显然为错码。这种加密模式用于加密89C1051/2051单片机。缺点是占用单片机的资源。开发设计人员在设计单片机硬件系统时只要预留出口线P1.0不用,以后就可用烧总线模式对单片机加密。

欢迎进入老古论坛进行讨论
[单片机] 相关文章:
如何用PIC做红外线遥控接收?(二)
简介:
红外接收目前用的比较多的有三种方法. 1,查询法,既软件不停地查询是否为低(遥控信号)然后通过精确延时读头码.和 数据0或1码. 2,读到有信号输入时开打开定时计数器,然后通过读定时器的中断次数,来判定头码和0,1的. 3 RB0或RB4-RB7加定时器(或软件延时)利用输入中断的好处是可做实时控制. 如下: ;***发射为6221,把接收到的码值送到ICD的PORTC口显示****** ;**************** *************** ......

如何用PIC做红外线遥控接收?(一)
PIC系列单片机程序设计基础四
PIC系列单片机程序设计基础三
PIC系列单片机程序设计基础二
 
下一个:[单片机]如何用PIC做红外线遥控接收?(三)
简介:
关于红外线接收的一点思路 我现在在做电视机红外线接受,发射器,看了一些书,书上说信号被调制在38khz的调制信号上,但我通过一颗红外接收管加两级放大后看红外线波形,示波器要打到10ms档上才能看到完整波形,照书上说的话应该打到50us档上就能看到波形了,而且这个波形像梯形波,请问这是怎么一回是,我用的红外线源就是长虹电视机的遥控器,这样的话我的接收程序怎么写呢? 你不用管他怎么调制的,你只需要用一个接收头就可以了,出来的就是方波......

上一个:[单片机][转载]基于单片机的OLED显示器的应用

老古开发网版权所有 2006年9月 asp.Net V2.0 设计:老古
页面缓存:30分钟 执行时间:31毫秒