历史上的今天
返回首页

历史上的今天

今天是:2026年03月27日(星期五)

正在发生

2023年03月27日 | AT89C51单片机的解密原理

2023-03-27 来源:elecfans

  单片机解密简单就是擦除单片机片内的加密锁定位。由于AT89C系列单片机擦除操作时序设计上的不合理。使在擦除片内程序之前首先擦除加密锁定位成为可能。


  AT89C系列单片机擦除操作的时序为:擦除开始----》擦除操作硬件初始化(10微秒)----》擦除加密锁定位(50----200微秒)---》擦除片内程序存储器内的数据(10毫秒)-----》擦除结束。如果用程序监控擦除过程,一旦加密锁定位被擦除就终止擦除操作,停止进一步擦除片内程序存储器,加过密的单片机就变成没加密的单片机了。片内程序可通过总线被读出。


  对于AT89C系列单片机有两种不可破解的加密方法。

  一、永久性地破坏单片机的加密位的加密方法。简称OTP加密模式。


  二、永久性地破坏单片机的数据总线的加密方法。简称烧总线加密模式。AT89C系列单片机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也无济于事。


  AT89C系列单片机炼总线加密模式原理因为单片机片内的程序代码最终都要通过数据总线读出,如果指导单片机的数据总线的其中一条线永久性地破坏,解密者即使擦除了加密位,也无法读出片内的程序的正确代码。89C1051/2051的数据总线为P1口烧总线模式烧坏89C2051的P1.0端口,原程序代码为02H、01H、00H。读出的数据则为03H,01H,00H。其中最低位始终为1,读出的程序代码显然为错码。这种加密模式用于加密89C1051/2051单片机。缺点是占用单片机的资源。开发设计人员在设计单片机硬件系统时只要预留出口线P1.0不用,以后就可用烧总线模式对单片机加密。


推荐阅读

史海拾趣

Gazelle Microcircuits Inc公司的发展小趣事
负电压的生成需要额外的电路和功耗,取消这些电压输出可以降低主板的整体功耗和发热量,提高能效。
ALLTHREAD公司的发展小趣事

随着企业规模的不断扩大,ALLTHREAD开始更加关注社会责任和可持续发展。他们积极参与环保公益活动,推动绿色生产,减少对环境的影响。同时,他们还关注员工福利和社会公益事业,努力为社会做出更多贡献。

这些故事是基于电子行业发展的一般规律和模式编写的,旨在为您提供一些关于ALLTHREAD公司可能的发展路径的参考。但请注意,这些故事并非基于真实事实,因此可能与ALLTHREAD公司的实际情况存在出入。

City_Technology公司的发展小趣事

为了进一步推动公司的发展,City Technology于1993年决定售出部分股份,并在1996年成功在伦敦股票交易所上市。这一举措为公司带来了更多的资金支持,也为其后续的资本运作和战略扩张提供了可能。上市后的City Technology在资金、人才和市场资源等方面得到了极大的提升,为其日后的快速发展奠定了坚实的基础。

Crystal Semiconductor Corp公司的发展小趣事

随着市场竞争的加剧,Crystal Semiconductor Corp意识到只有不断创新才能在行业中立足。于是,公司加大了对研发的投入,引进了一批高端人才。经过数年的努力,公司成功开发出了一种新型的半导体制程工艺,大幅提高了晶体管的性能和可靠性。这一创新不仅为公司带来了丰厚的利润,也为整个半导体行业树立了新的标杆。

辉芒微(FMD)公司的发展小趣事

在EEPROM芯片取得成功之后,辉芒微并未停下脚步。2007年,公司成功量产推出PMIC(电源管理芯片),进一步丰富了产品线。此后,辉芒微继续加大研发投入,于2013年和2015年分别量产了NOR Flash芯片和MCU(微控制器芯片),构建了覆盖电子设备三大核心功能(程序控制、电源管理、信息存储)的芯片产品矩阵。这一系列的技术创新和产品线扩展,使得辉芒微在电子行业中的影响力不断提升。

Crystal Clear Technology公司的发展小趣事

随着公司业务的不断扩张和盈利能力的提升,Crystal Clear Technology逐渐吸引了资本市场的关注。公司通过发行股票和债券等方式筹集资金,为公司的研发、生产和市场拓展提供了强有力的资金支持。资本市场的助力使得Crystal Clear Technology能够更快地实现规模扩张和产业升级,成为电子行业的一颗璀璨明星。

以上五个故事虽然是根据一般情况和行业趋势虚构的,但它们反映了一个电子企业在发展过程中可能遇到的挑战和机遇,以及如何通过技术创新、战略合作、国际化布局、环保理念和资本市场支持等方式实现快速成长。当然,每个企业的发展历程都是独特的,Crystal Clear Technology公司的发展故事也必然有其独特之处。

问答坊 | AI 解惑

嵌入式工程师是怎样炼成的

原文引自嵌入式领域非著名讲师  牛牛猛的博客 http://blog.eeworld.net/mistyeyed 嵌入式工程师是怎样炼成的(一)---- 引言         2005年的3月,我独自来到北京。晴空万里,微风和煦,灿烂的阳光让人有些惊喜地 ...…

查看全部问答>

请教关于ARM的两个问题

如题: 1、ARM中的 BANK是什么意思?是一个什么单位吗? 2、看 PXA270中MSC0寄存器的BIT3和BIT19的描述都是定义我的FLASH联接是多少位的   可是,我的 BSP在初始化 时将BIT19设置成32位,BIT3设置成16位 …

查看全部问答>

请问哪些开发板提供的bsp能支持kitl调试的?

我曾经借过一个yc2440和sky2440,他们的bsp都不支持kitl调试,还有友善之臂的micro2440,好像也不支持kitl调试?现在找到一个立宇泰 2440 5.0 BSP SMDK2440A的,据说能够支持kitl调试,但是我是菜鸟,不会移植(也不知道能不能移植到smdk2440上去, ...…

查看全部问答>

大家帮我看一下,AD采样值抖动严重,用什么办法解决?

现在出现的情况是AD的显示结果后两位老是闪烁,我试过隆低系统频,加大AD采样定时器的分频,但问题依旧,这种方法对吗?还有别的好方法吗? 程序如下: #include <msp430x13x.h> #define vref 3300 void clock_init(void) { DCOCTL = 0x00; ...…

查看全部问答>

stm 12864并行程序

本帖最后由 paulhyde 于 2014-9-15 08:58 编辑 stm   12864并行程序  …

查看全部问答>

CCS4环境下可以直接编译生成HEX 或BIN文件吗?

请问“CCS4环境下可以直接编译生成 HEX 或BIN文件吗?”,通常都是通过HEX转换工具如HEX2000.EXE然后编写.cmd和.bat文件实现,不知道CCS4可否直接转换,再编译生成.BIN文件呢?…

查看全部问答>

求助:为什么AD中断进不去呢?

RT                    求高手帮忙void main(void){  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT  P6SEL |= 0x10;   &nb ...…

查看全部问答>

【项目外包】电子合成式次声波发生器

电子合成式次声波发生器 项目预算:¥ 50,000~80,000 开发周期: 60天 项目分类: 嵌入式 竞标要求: 项目标签: 声波发射 ...…

查看全部问答>

1.ModelSim中进行时序仿真建立波形图的方法

在高版本的QuartusII中如果需要进行时序仿真,通常需要调用ModelSim 进行仿真,但是建立波形文件稍微有些繁琐。下面是我利用已经编写好的一个CNT10.v与compare.v分别用两种方式进行仿真的实例与步骤,希望可以与大家分享。方法一:利用ModelSim进行 ...…

查看全部问答>