The invention relates to a micro controller encryption technology, is a kind of IP supplier object code protection micro controller code protection method and system specifically, the storage space in the microcontroller into a secure key storage area, object code and client code ciphertext storage storage area, storage security key, object code the ciphertext and the client code, by IP supplier of the need to protect the target code using security encryption key, generate the target code ciphertext, so when the program runs, must pass the decryption module micro controller to decrypt the ciphertext code, not only to ensure the confidentiality of the object code and object code ciphertext write and upgrade process all by the customers themselves, reduce the cost of manufacture and use.
【技术实现步骤摘要】
一种微控制器目标代码保护方法及系统
本专利技术涉及微控制器加密
,具体来说是对IP供应商的目标代码进行保护的一种微控制器目标代码保护方法及系统。
技术介绍
在现代产业分工合作的潮流下,有许多电子产业的设计公司可支持提供设备方案的电路图及核心目标代码给客户,以便客户进行生产及二次开发程序,而在这种合作模式下,如何保障IP供应商自主研发的知识产权,如目标代码等,并让IP供应商能够掌控客户的设备生产数量,是开发商和客户合作能够达成的关键所在。现有技术中是在某些微控制器中会引入存储保护单元(MPU),通过存储保护单元就可以实现对部分代码块进行保护,阻止内部非法读出从而在保护自己代码的情况下,允许客户进行二次程序开发。比较常见的是单芯片二次开发模式和双芯片二次开发模式。如图1所示,为单芯片二次开发模式流程,其主要是将微控制器存储区分为方案商代码存储区和客户代码存储区,存储保护单元可以保护方案商代码不被客户区代码读出。当具体操作时,第一步,首先由IP供应商把自己的代码写入方案商代码存储区(a),然后把微控制器交给客户;第二步,由客户把自己的代码写入客户代码存储区(b)。客户写入的客户代码可以调用方案商的代码执行,但不能读取代码的二进制值。但这个方法有两个致命缺点,一是目标代码的写入必须由IP供应商自己写入,否则如果目标代码提供给客户写入,就会导致目标代码泄露,客户就可以不经过原作者许可,生产更多设备,从而无法控制客户的生产数量;二是出厂后的设备中的代码升级的问题,如果需要对受保护的目标代码进行升级,会碰到“目标代码写入”同样的问题,必须对出厂的设备召回,由原作者 ...
【技术保护点】
一种微控制器目标代码保护方法,其特征在于,其中的微控制器内的存储空间分为安全密钥存储区、目标代码密文存储区和客户代码存储区,所述的目标代码保护方法的具体步骤为:S1.写入安全密钥:IP供应商将安全密钥写入微控制器内部的安全密钥存储区;S2.加密目标代码:IP供应商对需要保护的目标代码使用安全密钥进行加密,并将生成目标代码密文提供给客户;S3.写入目标代码密文:将目标代码密文写入目标代码密文存储区;S4.解密目标代码:微控制器内部的解密模块对目标代码密文进行解密,再将解密后的目标代码存入指令寄存器;S5.写入客户代码:客户将客户代码写入微控制器中的客户代码存储区。
【技术特征摘要】
1.一种微控制器目标代码保护方法,其特征在于,其中的微控制器内的存储空间分为安全密钥存储区、目标代码密文存储区和客户代码存储区,所述的目标代码保护方法的具体步骤为:S1.写入安全密钥:IP供应商将安全密钥写入微控制器内部的安全密钥存储区;S2.加密目标代码:IP供应商对需要保护的目标代码使用安全密钥进行加密,并将生成目标代码密文提供给客户;S3.写入目标代码密文:将目标代码密文写入目标代码密文存储区;S4.解密目标代码:微控制器内部的解密模块对目标代码密文进行解密,再将解密后的目标代码存入指令寄存器;S5.写入客户代码:客户将客户代码写入微控制器中的客户代码存储区。2.根据权利要求1所述的一种微控制器目标代码保护方法,其特征在于,所述的目标代码保护方法还包括:S6.更新目标代码:在需要更新目标代码时,IP供应商使用安全密钥对更新后的目标代码进行加密,将生成的目标代码密文提供给客户,由客户将目标代码密文写入目标代码密文存储区,以更新微控制器中的目标代码。3.根据权利要求1或2所述的一种微控制器目标代码保护方法,其特征在于,在步骤S4中,当微控制器的程序计数器需要读取目标代码时,由解密模块执行以下步骤:S4-1.根据取指地址从目标代码密文存储区中读取目标代码密文;S4-2.从安全密钥存储区中提取IP供应商写入的安全密钥;S4-3.使用安全密钥对目标代码密文进行解密,形成目标代码明文;S4-4.将目标代码明文存入指令寄存器。4.根据权利要求1所述的一种微控制器目标代码保护方法,其特征在于,在所述步骤S3中,目标代码密文由IP供应商或客户或微控制器的生产商写入。5.根据权利要求1所述的一种微控制器目标代码保护...
【专利技术属性】
技术研发人员:张松波,周玉洁,谭永伟,
申请(专利权)人:上海爱信诺航芯电子科技有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。