1、又称单片机解密、芯片解密(单片机(MCU)一般都有内部EEPROM/FLASH供用户存放程序和工作数据。
2、为了防止未经授权访问或拷贝单片机的机内程序,大部分单片机都带有加密锁定位或者加密字节,以保护片内程序。
3、如果在编程时加密锁定位被使能(锁定),就无法用普通编程器直接读取单片机内的程序,这就叫单片机加密或芯片加密。
4、单片机攻击者借助专用设备或者自制设备,利用单片机芯片设计上的漏洞或软件缺陷,通过多种技术手段,就可以从芯片中提取关键信息,获取单片机内程序这就叫IC解密。
5、)又叫单片机解密,单片机破解,芯片破解,IC解密,但是这严格说来这几种称呼都不科学,但已经成了习惯叫法,把CPLD解密,DSP解密都习惯称为芯片解密。
6、单片机只是能装载程序芯片的其中一个类。
7、能烧录程序并能加密的芯片还有DSP,CPLD,PLD,AVR,ARM等。
8、也有专门设计有加密算法用于专业加密的芯片或设计验证厂家代码工作等功能芯片,该类芯片业能实现防止电子产品复制的目的。
9、目前IC解密有两种做法,一种是一软件为主,称为非侵入型攻击,要借助一些软件,如类似编程器的自制设备,这种方法不破坏母片(解密后芯片处于不加密状态)。
10、还有一种是硬件为主,辅助软件,称为侵入型攻击,这种方法需要剥开母片(开盖或叫开封,decapsulation),然后做电路修改(通常称FIB、focusedionbeam),这种破坏芯片外形结构和芯片管芯线路只影响加密功能,不改变芯片本身功能。
二、芯片破解的应对芯片破解的建议1、任何一款单片机从理论上讲,攻击者均可利用足够的投资和时间使用以上方法来攻破。
2、这是系统设计者应该始终牢记的基本原则。
3、因此,作为电子产品的设计工程师有必要了解当前单片机攻击的新技术,做到知己知彼,心中有数,才能有效防止自己花费大量金钱和时间辛辛苦苦设计出来的产品被人家一夜之间仿冒的事情发生。
4、我们根据沪生的解密实践提出下面建议、(1)在选定加密芯片前,要充分调研,了解芯片破解技术的新进展,包括哪些单片机是已经确认可以破解的。
5、尽量不选用已可破解或同系列、同型号的芯片选择采用新工艺、新结构、上市时间较短的单片机,如可以使用ATMEGA88/ATMEGA88V,这种国内破解的费用一需要6K左右,另外相对难解密的有ST12系列,DSPPIC等。
6、其他也可以和CPLD结合加密,这样解密费用很高,解密一般的CPLD也要1万左右。
7、(2)尽量不要选用MCS51系列单片机,因为该单片机在国内的普及程度高,被研究得也透。
8、(3)产品的原创者,一般具有产量大的特点,所以可选用比较生僻、偏冷门的单片机来加大仿冒者采购的难度,选用一些生僻的单片机,比如ATTINY2313,AT89C51RD2,AT89C51RCmotorola单片机等比较难解密的芯片,目前国内会开发使用熟悉motorola单片机的人很少,所以破解的费用也相当高,从3000~3万左右。
9、(4)在设计成本许可的条件下,应选用具有硬件自毁功能的智能卡芯片,以有效对付物理攻击。
10、另外程序设计的时候,加入时间到计时功能,比如使用到1年,自动停止所有功能的运行,这样会增加破解者的成本。
11、(5)如果条件许可,可采用两片不同型号单片机互为备份,相互验证,从而增加破解成本。
12、(6)打磨掉芯片型号等信息或者重新印上其它的型号,以假乱真(注意,反面有LOGO的也要抹掉,很多芯片,解密者可以从反面判断出型号,比如51,WINBOND,MDT等)。
13、(7)可以利用单片机未公开,未被利用的标志位或单元,作为软件标志位。
14、(8)利用MCS-51中A5指令加密,其实世界上所有资料,包括英文资料都没有讲这条指令,其实这是很好的加密指令,A5功能是二字节空操作指令加密方法在A5后加一个二字节或三字节操作码,因为所有反汇编软件都不会反汇编A5指令,造成正常程序反汇编乱套,执行程序无问题仿制者就不能改变你的源程序。
15、(9)你应在程序区写上你的大名单位开发时间及仿制必究的说法,以备获得法律保护。
16、另外写上你的大名的时候,可以是随机的,也就是说,采用某种算法,外部不同条件下,你的名字不同,比如wwwhusooncom10wwwhusooncn1012等,这样比较难反汇编修改。
17、(10)采用高档的编程器,烧断内部的部分管脚,还可以采用自制的设备烧断金线,这个目前国内几乎不能解密,即使解密,也需要上万的费用,需要多个母片。
18、(11)采用保密硅胶(环氧树脂灌封胶)封住整个电路板,PCB上多一些没有用途的焊盘,在硅胶中还可以掺杂一些没有用途的元件,同时把MCU周围电路的电子元件尽量抹掉型号。
19、(12)对SyncMos,Winbond单片机,将把要烧录的文件转成HEX文件,这样烧录到芯片内部的程序空位自动添00,如果你习惯BIN文件,也可以用编程器把空白区域中的FF改成00,这样一般解密器也就找不到芯片中的空位,也就无法执行以后的解密操作。
20、当然,要想从根本上防止单片机被解密,那是不可能的,加密技术不断发展,解密技术也不断发展,不管哪个单片机,只要有人肯出钱去做,基本都可以做出来,只不过代价高低和周期长短的问题,编程者还可以从法律的途径对自己的开发作出保护(比如专利)。
三、芯片破解的芯片破解方法1、软件攻击该技术通常使用处理器通信接口并利用协议、加密算法或这些算法中的安全漏洞来进行攻击。
2、软件攻击取得成功的一个典型事例是对早期ATMELAT89C系列单片机的攻击。
3、攻击者利用了该系列单片机擦除操作时序设计上的漏洞,使用自编程序在擦除加密锁定位后,停止下一步擦除片内程序存储器数据的操作,从而使加过密的单片机变成没加密的单片机,然后利用编程器读出片内程序。
4、在其他加密方法的基础上,可以研究出一些设备,配合一定的软件,来做软件攻击。
5、近期国内出现了了一种51芯片破解设备(成都一位高手搞出来的),这种解密器主要针对SyncMos.Winbond,在生产工艺上的漏洞,利用某些编程器定位插字节,通过一定的方法查找芯片中是否有连续空位,也就是说查找芯片中连续的FFFF字节,插入的字节能够执行把片内的程序送到片外的指令,然后用解密的设备进行截获,这样芯片内部的程序就被解密完成了。
6、电子探测攻击该技术通常以高时间分辨率来监控处理器在正常操作时所有电源和接口连接的模拟特性,并通过监控它的电磁辐射特性来实施攻击。
7、因为单片机是一个活动的电子器件,当它执行不同的指令时,对应的电源功率消耗也相应变化。
8、这样通过使用特殊的电子测量仪器和数学统计方法分析和检测这些变化,即可获取单片机中的特定关键信息。
9、RF编程器可以直接读出老的型号的加密MCU中的程序,就是采用这个原理。
10、过错产生技术该技术使用异常工作条件来使处理器出错,然后提供额外的访问来进行攻击。
11、使用广泛的过错产生攻击手段包括电压冲击和时钟冲击。
12、低电压和高电压攻击可用来禁止保护电路工作或强制处理器执行错误操作。
13、时钟瞬态跳变也许会复位保护电路而不会破坏受保护信息。
14、电源和时钟瞬态跳变可以在某些处理器中影响单条指令的解码和执行。
15、探针技术该技术是直接暴露芯片内部连线,然后观察、操控、干扰单片机以达到攻击目的。
16、为了方便起见,人们将以上四种攻击技术分成两类,一类是侵入型攻击(物理攻击),这类攻击需要破坏封装,然后借助半导体测试设备、显微镜和微定位器,在专门的实验室花上几小时甚至几周时间才能完成。
17、所有的微探针技术都属于侵入型攻击。
18、另外三种方法属于非侵入型攻击,被攻击的单片机不会被物理损坏。
19、在某些场合非侵入型攻击是特别危险的,这是因为非侵入型攻击所需设备通常可以自制和升级,因此廉价。
20、大部分非侵入型攻击需要攻击者具备良好的处理器知识和软件知识。
21、与之相反,侵入型的探针攻击则不需要太多的初始知识,而且通常可用一整套相似的技术对付宽范围的产品。
22、因此,对单片机的攻击往往从侵入型的反向工程开始,积累的经验有助于开发更加廉价和快速的非侵入型攻击技术。
四、怎样解密DS28E01芯片的FPGA加密认证系统设计?1、DS28E01芯片及其加密原理。MAXIM公司生产的DS28E01将1024位EEPROM与符合ISO/IEC110118-3安全散列算法(SHA-1)的质询响应安全认证结合在一起。在单个芯片内集成了1024位EEPROM(分为4页,每页256位)、64位密钥、一个寄存器页、512位SHA-1引擎和64位ROM序列码。DS28E01对数据按照1-Wire协议串行传送,通信速率为153kbps(标准速率模式)或125kbps(高速模式),只需要一根数据线和一根返回地线,大限度的节省了对控制器I/O口的占用。SHA-1算法是一种通过直接构造复杂的非线性关系达到单向要求,设计单向散列函数的算法,具有“不可逆”、“防碰撞”以及良好的“雪崩效应”,防止了盗窃者利用相近的输入来达到破解密码的可能性。 DS28E01内部的加密过程是在内部的加密引擎中进行的,其加密引擎利用的是HSAH函数的SHA-1算法,但是和标准的SHA-1算法又有几点不一样。标准算法的输入值可以小于、等于或大于分组长度512bit,但是SHA-1引擎的SHA-1算法输入的是固定的512bit,也就是标准SHA-1算法的分组长度。并且标准SHA-1算法每个分组的后一次循环体的输出都要和输入每个分组的初始常量做MOD232加法,而在DS28E01的SHA-1引擎中由于只有一个512bit的循环体,后就省略了将初始常量添加回结果的终步骤。至于引擎的SHA-1算法的其他步骤则与标准的SHA-1算法相同。。
2、加密模块设计。目前由很多能实现FPGA加密的方法,如在XilinxVirtex-II和Virtex-4这类的高端FPGA中,支持对配置数据流的加密操作。这样仅当FPGA中含有相同的密钥时,这些数据流才可以工作。但是这种加密的方法对更为广泛的、对成本比较敏感的应用场合来说不甚合适。因此,这里利用另一种可行的身份识别法来防止意外拷贝。这种方法对所有FPGA家族都使用,包括低端的XilinxSpartan-3系列FPGA。。
3、加密模块的原理图设计。识别号及附加数据(常数)在内的HASH运算结果,运算的结果是160位的MAC(消息认证码),同时,FPGA内部也会同安全存储器一样进行包含密钥、随机数、附加数据及器件识别号在内的HASH计算并产生一个期望的MAC。然后,在FPGA内会对这两个MAC进行比较,如果一样,则FPGA认为该电路是“合法”电路,因为它拥有正确的密钥。此时FPGA进入正常工作状态,开启/执行其配置数据中的所有功能,会执行所有的功能。如果FPGA和DS28EO1两者产生的MAC不匹配,则系统会认为该电路是一个“非法”电路,因为该系统不具有正确的密码。此时FPGA进入非正常运行状态,只执行有限的功能。。
4、加密认证模块的程序设计。为了实现加密认证的功能,我们在FPGA中利用VHDL语言设计了IFF模块,在IFF模块的内部是根据SHA-1算法实现了对输入密码的HASH函数运算以及与DS28E01中产生的MAC的比较功能,IFF模块的接口定义。 其中,CLKIN是一个大于20M的时钟;IFF是认证启动信号,在IFF信号上升沿的时候模块内部开始启动HSAH运算过程以及密码比较过程;RESET是复位信号,高电平有效;IB则是FPGA通过1-Wire协议与DS28E01通讯的信号;FOE信号是IFF模块的输出线,在IFF内部MAC比较完成后,如果FPGA认定该电路具有正确的密码,则会置FOE信号为低电平,反之如果FPGA认定该电路不是合法的电路,则会置FOE信号为高电平,在FPGA内部可以根据FOE的信号来实现不同的功能。这样,系统就可以根据电路是否是被拷贝的来实现不同的功能,防止了设计被拷贝。 在IFF模块中,实现了标准的SHA-1算法,在FPGA配置完成之后,在RESET信号与时钟信号的控制下,FPGA内部就会运行SHA-1算法产生相应的MAC,与由DS28E01产生的MAC进行比较,根据比较结果将FOE设置为不同的状态,然后FPGA就可以根据FOE的状态来判断是否是合法电路。其中的初始化主要完成消息填充和附加原始消息长度以及在算法中需要的函数和常数的定义。。
五、怎样防范应对单片机解密1、在选定加密芯片前,要充分调研,了解单片机破解技术的新进展,包括哪些单片机是已经确认可以破解的。尽量不选用已可破解或同系列、同型号的芯片,或者解密代价大的芯片。。
2、尽量不要选用MCS51系列单片机,因为该单片机在国内的普及程度高,解密也为广泛普及。。
3、选用比较生僻、偏冷门的单片机来加大仿冒者采购的难度。。
4、选择采用新工艺、新结构、上市时间较短的单片机,如ATMELAVR系列单片机、XilinxFPGAalteraCPLD系列等。。
5、在设计成本许可的条件下,应选用具有硬件自毁功能的智能卡芯片,以有效对付物理攻击。。
6、打磨掉芯片型号等信息或者重新印上其它的型号。。
7、不光单片机可以防范解密,偏冷门的相关元器件同样能够起到防范解密的作用。 。
六、AT89C51芯片怎么解密?1、在选定加密芯片前,要充分调研,了解单片机破解技术的新进展,包括哪些单片机是已经确认可以破解的。
2、尽量不选用已可破解或同系列、同型号的芯片,或者解密代价大的芯片。
七、作为智能时代的核心,如何预防芯片被解密1、对于现如今的社会来讲,只要有足够的时间和资金支持,那么无论什么芯片都将会有被破解的一天;因此我们在选择芯片前,首先要了解该芯片目前是否已可被破解,如果是,那么我们就不要再选择该品牌该系列的芯片了,因为往往一个品牌的一个芯片被破解成功后,该系列的芯片都将是不安全的!。
2、对于半导体行业的人员都知道,刚开始接触单片机时人们就是对于C51单片机的学习,该系列芯片的普及度高,因此也是不可取的;与此同时,我们可以选取一些偏冷门,上市时间短的芯片,这样解密具有一定的难度,且空芯片的购买相对来说难度也比较大,解密的话就需要花费大量的成本!。
3、后我们还可以通过采取将芯片型号抹掉或者印上别的型号以此来迷惑解密者,不过致芯解密专家表示,这种办法对于现代的科技来说预防性很小;如果在成本允许的条件下,可以采取两片不同型号单片机互为备份,相互验证,从而增加破解难度和代价;所以在小编看来,还是从成本上来预防的安全性较大!。
八、液化气钢罐带双芯片怎么解密码1、液化气钢罐,带双芯片解密码的方法如下。
2、打开液化气钢罐燃烧片,连接电脑解析密码即可。
九、怎么对stc11芯片解密?1、深圳双高科技科技提供NXP全系列mcu芯片解密单片机ic破解。