1 使用NEC单片机保护您的设计--杭州精灵电子
用户中心  购物篮
会员登陆  收藏夹
  精灵电子元件网购商城是专业的电子元件批发、零售、网购服务的网站,本商城主要在线销售小家电产品,电子制作小产品,网上购物流行商品,以及数码产品和电脑产品家电维修配件电子元件等等,提供个人以及团体网上最实惠、最安全的购物环境,奉献给广大的网上购物消费者最贴心的服务和最实惠的商品。精灵电子元件物商城的网上购物:价格最低!质量最好!服务最优! 电子元件邮购 小电器,家用电器,网上购物,购物商城。 精灵电子
     星期一
 您的位置: 杭州精灵电子>>电子技术学习园地>>使用NEC单片机保护您的设计
   后您也可以发表文章的哦使用NEC单片机保护您的设计

使用NEC单片机保护您的设计

如今,一款新产品刚推出不久,市场上往往就会出现仿冒的产品,给先期研发的企业和个人造成知识产权的侵犯和经济利益的损害。作为工程师,在产品设计初期应该尽量考虑到产品被抄袭的可能,选择一款具有良好保密性的单片机并对单片机系统进行加密设计,防止竞争对手的抄袭。

破解单片机程序的方法

对单片机内的程序窃取主要有两种方法:侵入式和非侵入式。侵入式的方法是破坏芯片的封装,并利用半导体测试设备、显微镜和微定位器等仪器找到芯片内保护熔丝的位置并将其擦除,使其变成未经加密的芯片,然后用编程器将程序读出,或者直接将探针放在芯片内部总线上读出存储器中的程序。非侵入式的方法是利用芯片设计或芯片编程时序中的某些漏洞对芯片进行解密,例如针对早期的AT89C系列芯片在擦除操作时序设计上的漏洞,使用自编程序在擦除加密锁定位后停止下一步擦除片内程序存储器数据的操作,从而使加密的单片机变成没加密似的,然后利用普通编程器就可读出片内的程序了。

可以看到,使用侵入式的解密方法需要使用昂贵的设备,并且需要花费较长的时间,其解密成本较高;而使用非侵入式的解密方法需要的设备相对较廉价,只要能找出芯片设计中的漏洞就有可能实现解密,但是需要解密者有深厚的专业知识。

图1:NEC 78K系列单片机的保密功能。
图1:NEC 78K系列单片机的保密功能。

NEC单片机的保密设计

理论上来说,单片机的程序不可能做到百分之百的保密,对单片机程序进行加密只是为了提高破解成本。当一个产品的破解成本高到和自主设计一个相同产品的成本相当的时候,便没人会有兴趣破解此产品。

产品设计中,为了避免增加外围硬件从而增加产品成本,产品软件的保密通常主要依靠所选用单片机的保密性来保证,因此选用一款保密性良好的单片机来提高抄袭者的破解成本就显得尤为重要。NEC(日电电子)在其FLASH型的78K系列单片机中设计了充足的保护措施来保证单片机程序代码的安全。

 

通常除了开发者的原因外,单片机程序目标文件的泄露无外乎三个原因:1.量产时程序烧写过程中目标文件被窃取;2.产品上市后被窃密者拿到,利用侵入式或非侵入式的方法获取单片机内的目标文件;3.使用BootLoader程序通过串口、CAN接口等进行产品现场升级时应用程序目标文件被窃取。

图2:量产编程器的加密设置。
图2:量产编程器的加密设置。

量产编程时的程序保密

第三方为NEC设计的量产编程器FL-G03可以支持对8片芯片的同时烧写。开发工程师使用128位密钥将原始HEX文件加密,并将该密钥固化到编程中用于烧写时的解密,工程师还可在编程器上设置烧写芯片的数量限制,然后将编程器和加密过的HEX文件提供给程序烧写人员。这样避免了其它人员接触原始HEX文件,且最多只能烧写设定数量的芯片。

 

图3:即使保密位被破坏也无法读出程序。
图3:即使保密位被破坏也无法读出程序。

防止侵入式和非侵入式的程序窃取


侵入式的破解方法可以将加密过的芯片变成非加密的芯片,然后用编程器读出程序,当然也可以用探针从芯片内部总线读取程序,但这样做的成本相当之高;非侵入式的破解方法最后一般都要通过编程器将程序读出。NEC的78K系列单片机没有PROGRAM READ功能,因此无法利用编程器将程序读出。(注:用编程器给芯片编程时的校验功能并不是将程序读出来进行校验,而是编程器将数据送给芯片,由芯片内核独立完成与存储区数据的比较,然后将比较结果返回给编程器)。

图4:使用加密的目标文件进行现场升级。
图4:使用加密的目标文件进行现场升级。

产品现场升级时的程序保密

如果单片机程序设计者使用了BootLoader功能,则可以在产品售出后方便地通过串口等通讯口对单片机程序进行升级,但是这也给窃密者留下了可乘之机,新版本的应用程序目标文件有可能被泄露。解决办法是设计者将应用程序的目标文件按自定义的某种算法进行加密,并将解密算法放在 BootLoader程序中。升级的时候BootLoader程序对目标文件进行解密,然后写入目标FLASH区。这可以避免原始的目标文件泄露出去。

防止芯片程序被意外擦除或改写

除了上面谈到的防止程序被泄露或破解的措施外,78K系列单片机还采取了多项措施来保证程序不会被意外擦除或者改写。78K系列单片机可以在编程时通过编程软件对FLASH进行如下安全设置:

1. 禁止全片擦除操作。

2. 禁止块擦除操作。

3. 禁止写操作。

4. 禁止改写boot cluster0区。

这些设置可以禁止通过编程器对芯片进行擦除和写入操作,但是芯片内的用户程序仍然可以对FLASH区进行擦除和写入操作。一旦设置了“禁止全片擦除操作”后,芯片内的程序将不可再被擦除和改写,此设置也无法再被取消。

各项安全设置与操作命令的关系见表1。

表1: 各项安全设置与操作命令的关系。
表1: 各项安全设置与操作命令的关系。

结语

NEC的78K系列单片机从多个方面采取措施使得单片机程序的保密性得到加强,尤其它没有READ命令,无法将程序数据读出到片外的特点使得其破解成本大大提高,有效地保护设计者的知识产权。

发布人:wujinlin 发布时间:2015年4月19日 已被浏览 3216
上一篇基于NEC单片机的电动车充电器控制系统设计
下一篇三段式音调控制器电路
电子技术学习园地
 常用颜色代码表以及中国传统颜色名录
 基于NEC单片机的电动车充电器控制系统设计
 基于电能计量芯片CSE7759的计量插座设计
 采用LNK304PN的LED 220V照明灯
 NEC单片机入门及使用
 基于FC7759的智能断电节能插座设计
 PROTEL99SE 菜单对话框中英文对照
 COOL EDIT PRO录音详细教程
 大功率智能充电器的研究与设计
 普通整流二极管参数表
电路图纸软件下载排行
长虹29N16彩色电视机电路原理
长虹2132FB(北松管)彩色电
创维5Y30彩色电视机电源电路原
创维5M01彩色电视机数字单元电
百合花DCC-1电磁炉主板电路
MC3362低功率调频窄频带接收
MC4558技术资料
长虹B2116彩色电视机电路原理
海信TF2988彩电存储器数据资
海信TF2507H彩电存储器数据
友情链接: 电子制作实验室 互易中国 淘宝店 神州宏网 波茵电子 耐王科技淘宝店 电子套件DIY
查ip手机 百度搜索 51单片机论坛 立创EDA开源 
客服:286124798@qq.com  点击这里给我发消息 旺旺: 点击这里给我发消息
© 杭州精灵电子  页面执行时间 110.3516 毫秒 访问量:20664019 
本站淘宝店地址:http://shop34111169.taobao.com/  杭州电子市场
   浙ICP备17031801号