当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]LPC2100系列ARM7微控制器加密ARM芯片

  1. 加密原理说明

  LPC2100系列ARM7微控制器是世界首款可加密的ARM芯片,对其加密的方法是通过用户程序在指定地址上设置规定的数据。PHILIPS公司规定,对于LPC2100芯片(除LPC2106/2105/2104外),当片内FLASH地址0x000001FC处的数据为0x87654321时,芯片即被加密。在加密设置后,JTAG调试接口无效,ISP功能只提供读ID及全片擦除功能。注意:将带有加密设置的程序下载到芯片内部FLASH,在下一次系统复位后加密生效。

  2. 加密程序实现

  为了实现加密设置,用户必须保证在0x000001FC处定义数据0x87654321。我们先来分析一下带有加密设置的程序结构,如图1所示,地址0x000000~0x00000020为异常向量表,若向量表中使用L DR指令跳转,可以在0x00000020~0x00000040之间定义各个异常服务入口地址;在异常向量表之后,0x000001FC地址之前,这一小块空间可以编写部分初始化代码或FIQ中断处理程序;然后使用NOP指令填充,直到0x000001FC地址,在该地址上定义数据0x87654321即可,用户的其它程序代码紧跟其后。

  异常向量表

  部分初始化代码

  或

  FIQ中断处理

  NOP

  NOP

  …

  DCD 0x87654321

  用户代码

    加密程序的实现部分在LPC2100的起动代码Startup.s文件中,如程序清单1所示。程序首先使用IF伪指令判断是否已定义EN_CRP全局变量,若已声明,则编译程序清单1(2)~(8)的代码,进行加密设置。说明:EN_CRP全局变量可以在汇编器中预定义或在该文件开头用GBLA/GBLL声明。

  程序清单1(2)是用来判断当前代码地址是否已超过0x000001FC,若超过则使用INFO伪指令显示出错信息,见程序清单1(3)。程序清单1(5)~(7)用于填充NOP指令,直到0x000001FC为此。程序清单1(8)即是在0x000001FC地址上定义数据0x87654321,以实现加密设置。

  0x00000000

  0x00000020

  0x000001FC

  程序清单1 LPC2100加密程序实现代码 ;

  异常向量表

  …

  …

  IF

 

EF: EN_CRP (1)
 

  IF . >= 0x1fc (2)

  INFO 1,"nThe data at 0x000001fc must be 0x87654321.nPlease delete some source before this line." (3)

  ENDIF (4)

  CrpData WHILE . < 0x1fc (5)

  NOP (6)

  WEND (7)

  CrpData1 DCD 0x87654321 (8)

  ENDIF (9)

  3. 工程模板中可加密的目标

  使用LPC2100专用工程模板建立的工程,当选用RelInFLASH目标时,将会生成带有加密设置的程序。

  对于Thumb Executable Image for UCOSII(for lpc21xx) 工程模板,当选用ThumbRelInFLASH目标时,将会生成带有加密设置的程序。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

e络盟技术专家制作的最新解决方案综合指南提供丰富的电动汽车充电信息资源

关键字: 电动汽车 充电站 微控制器

【2024年5月13日,德国慕尼黑和斯图加特讯】随着汽车行业向软件定义汽车和新E/E架构过渡,市场对高性能硬件和强大网络安全解决方案的需求也逐渐增加。为满足这一需求,全球功率系统和物联网领域的半导体领导者英飞凌科技股份公...

关键字: 微控制器 半导体 物联网

本文针对电动两轮车自燃防控装置的开发与分析进行了研究。通过电动两轮车自燃原因分析,提出了电动两轮车的自燃防控智能装置设计思路,介绍了电动两轮车的自燃防控智能

关键字: STC89C52RC 单片机 微控制器

【2024年5月9日,德国慕尼黑讯】信息安全与功能安全在汽车行业发挥着日益重要的作用,即便在低端微控制器应用中也不例外。与此同时,汽车制造商正在用触摸表面取代机械按钮,实现简洁的驾驶舱和方向盘。因此,电子电路的空间受到很...

关键字: 物联网 电子电路 微控制器

【2024年5月8日,德国慕尼黑讯】Rust编程语言凭借其独特的内存安全特性,已经成为汽车软件开发中C/C++的有效补充和潜在替代品。全球功率系统和物联网领域的半导体领导者英飞凌科技股份公司(FSE代码:IFX / OT...

关键字: 编译器 微控制器

2024年5月6日 – 专注于引入新品的全球电子元器件和工业自动化产品授权代理商贸泽电子 (Mouser Electronics) 即日起开售Analog Devices, Inc. (ADI) 的MAX32690微控制...

关键字: 可穿戴设备 微控制器 片上系统

【2024年4月29日, 德国慕尼黑讯】嵌入式安全被认为是物联网(IoT)应用部署的一个重要属性。英飞凌科技股份公司(FSE代码:IFX / OTCQX代码:IFNNY)近日宣布,其新型PSOC™ Edge E8x MC...

关键字: 微控制器 MCU 物联网

2024年4月26日,中国 – 服务多重电子应用领域、全球排名前列的半导体公司意法半导体 (STMicroelectronics,简称ST;纽约证券交易所代码:STM) 公布了按照美国通用会计准则 (U.S. GAAP)...

关键字: 微控制器 模拟器件

利用LogiCoA™微控制器,以更低功耗实现与全数字控制电源同等的功能

关键字: 微控制器 电源 CPU

台湾新竹 – 2024年4月23日 – 著名的微控制器供货商新唐科技公司,与全软件开发生命周期提供跨平台解决方案的全球软件公司Qt Group宣布深化合作,扩展新唐科技人机界面(HMI)平台支持「Qt for MCUs」...

关键字: 微控制器 嵌入式系统 MCU
关闭
关闭