MDK 如何 加密ARM

it2022-05-08  8

用keil编写的程序是没有加密功能的,而用ADS编写则可以选择加密(RelInflash)   不加密(DebugInflash/DebugInram)。虽然ADS功能很强大,但很多开发者可能更喜   欢用keil来开发的,一是keil支持扩展了的C语言,即keil C,应该说编写程序比在   ADS中用标准C来得灵活、简便;二是51的开发均为keil,便于从51单片机向ARM的   过渡。然而,很多商用的领域上,需要保护自己的知识产权,均要求程序具有加   密功能。能不能在keil中实现加密呢?        一开始走了一条弯路:将keil程序转为标准C然后在ADS中编译实现加密。这种   法虽然理论上行得通,但实际做起来工程量很大,keil中对ARM芯片一般只需要   一个启动加载文件(startup.s),而ADS中有多个,差别蛮大。          后来发现,加密的机理其实很简单:对Philips的Lpc系列ARM芯片,加密就是向   Flash地址单元0x1FC(用户Flash扇区0)写入0x87654321来使能!因此,只要在keil   中程序中在中断向量表后面一直用nop;填充到0x1FC,再在该单元写入   0x87654321。OK了...

转载于:https://www.cnblogs.com/hnrainll/archive/2010/11/17/1880232.html

相关资源:飞天诚信ROCKEYARM加密方案

最新回复(0)