LPC178x/177x微控制器的加密程序实现与CRP设置
需积分: 45 100 浏览量
更新于2024-08-06
收藏 18.87MB PDF 举报
本资源主要讨论的是LPC178x/177x系列Cortex-M3微控制器的加密程序实现及其与固件安全的关系。标题《加密程序实现:word.origins.the.secret.histories.of.english.words.from.a.to.z》可能是在探讨软件加密技术在电子设备中的应用,特别是针对该系列微控制器的具体实施。
描述中提到的关键知识点包括:
1. **代码写保护软/硬件交互**:CRP (Code Read Protection)是确保代码安全的一种机制,通过控制特定引脚的电平和JTAG接口的状态来启用或禁用对代码的访问。如果在编程时启用CRP并允许通过ISP(In-System Programming)模式访问,未经授权的操作将导致CODE_READ_PROTECTION_ENABLED错误代码。
2. **加密设置**:用户需要在内存地址0x000002FC处定义数据CRPx格式,例如CRP2的值(如0x8765 4321),以实现加密。这个过程涉及修改启动代码startup_LPC177x_8x.s,使用IF伪指令检查NO_CRP是否被定义,如果没有,则编译CRP_Key进行设置。非加密状态下,该位置会被写入0xFFFF FFFF;加密则替换为CRPx数据,加密后的程序只有在系统复位后才会生效。
3. **加密程序实现**:代码实现部分位于LPC178x/177x的启动代码中,它负责判断加密设置,并在必要时启用加密。这显示了在嵌入式系统开发中,如何通过编程手段来保护知识产权和敏感信息。
4. **E2PROM存储器**:作为存储设备,E2PROM(Electrically Erasable Programmable Read-Only Memory)在系统中用于存储非易失性数据,如配置信息和加密密钥。章节详细描述了其功能、特性和寄存器操作,表明了其在加密程序实现中的角色。
5. **外部存储器控制器(EMC)**:外部存储器的管理也是关键,如闪存,它不仅用于加载程序,也可能与加密相关,因为外部存储器的访问权限可以影响到代码的保护。
这部分内容主要关注了嵌入式系统的安全措施,包括硬件和软件层面,以及如何在实际开发过程中集成加密机制来保护知识产权和敏感数据。了解这些细节对于开发人员设计安全的嵌入式系统至关重要。
2013-02-15 上传
2022-06-20 上传
2019-02-18 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-11-06 上传
2024-11-06 上传
Fesgrome
- 粉丝: 37
- 资源: 3821
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫