6847|4

8

帖子

0

TA的资源

一粒金砂(中级)

楼主
 

[转]实际的“单片机解密”是如何做的? [复制链接]

网上N多的文章,说单片机解密,如何如何操作,又是这法又是那法的,让我们这些寻求单片机保护的电工找不到北。


真的是那么复杂,那几百块起步的解密费怎么赚钱?
实际那些做此生意的人是如何做的?
或者说多数情况下,单片机是如何破解的?
这才是电工保护自己的代码所迫切需要了解的。

单片机破解,现在有很多公司提供此服务。
做为电工,我们对此类行为没有一丝的好感。
为了保护我们的技术汗水,就要提高别人的破解成本。


1、漏洞破解
   早年Atmel的一个Flash片子有一个bug,就是芯片擦除的时候,会先擦除保护位再擦除内容。
   于是破解法就来了,擦除的时候,准确定时,中途断电,于是保护去掉了,内容也可以读出了。
   但此类,越来越少,新芯片用此法几乎绝种了,因为没有一个客户会容忍自己的供应商竟然如此置客户代码安全于不顾。


2、后门破解
   因为FAE芯片分析,很多厂商在IC内部放入后门,通过花花肠子式的时序进入测试模式,然后可以读出用户程序。也有的芯片内部藏有另外一个存储区,必要时候写一段代码进去,然后用这段代码把用户程序读取出来。
   这个也越来越少,但仍有一些厂商一直保留有此类后门。但进入不是那么简单的时序,资料管控也不是大陆的低端IC厂可比的。


3、FIB修改
   很多电工有PCB割线的经验,芯片破解也一样,把芯片打开后,用离子束把保护逻辑破坏,而保持其他电路不变,然后用标准的烧录器读取出来。这个最麻烦的是,寻找IC内部的保护逻辑电路。很多二手的低端FIB设备,也从IC测试领域逐步流向单片机破解行业。




目前FIB修改,是破解的主力。想想STC破解成本高的原因,不是它保护技术高,是因为它没有公开的读取工具。还有就是PIC的熔丝深埋技术,就是把保护逻辑放在IC的内层,也是大幅提高破解成本。还有烧断烧录IO也是个好法子,但最近很多搞破解的,开始从IO口的前级Buffer把线引出来取数据。


破解无法避免,我们能做的就是提高破解成本。

此帖出自单片机论坛
点赞 关注
 

回复
举报

8

帖子

0

TA的资源

一粒金砂(中级)

沙发
 
烧短IO可以大幅提高破解成本

为什么说“烧短IO可以大幅提高破解成本”?

破解的法子很多,比如脉冲攻击、电子照相..................
但应用最多的是开盖 + FIB + 读出,注:绝大多数读出用的是IC厂家自己的读取工具。

烧IO实际上是破解CMOS的输出的PMOS和NMOS两个管子。
因为只烧一个,破解者可以用上拉和下拉的方式低成本的补上。

烧断了读出IO脚,破解者要进行IO的重建,那破解成本已经上了一个数量级。
比如,一些PIC芯片的IO口buffer重建,有人只要几千块钱就给做。


烧IO还具有“杀敌一千,自损九百”的效果,不建议采用。
此帖出自单片机论坛
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

板凳
 
【转】通过烧断管脚来实现加密的方法

电压型烧断:
        工具:使用15V电源串47~470欧小电阻(不能太小),并联一路串二极管保护的发光管,发光管限流后接Vcc或Gnd(极性不同),接一探针。

        再使用-15V电源,电源的地接IC的Vcc,至发光管亮,注意极性为负极性!

        目的是击穿Pin的Pmos管(即上拉管);再用5V电源,直接加在待烧Pin上,再次把已短路的Pmos,烧开路。

        使用+15V电源,把探针点在待烧管脚至发光管亮,注意不能超过3秒,否则IC会损坏。发光管亮说明Pin的输出Nmos(即下拉管)击穿;再用5V电源烧开路。

        就OK啦,这个Pin将永远失效了!!
        
        过程:电压烧坏Pmos—电流烧坏Pmos—电压烧坏Nmos—电流烧坏Nmos
        如此烧断后,解密者就很难判断那个口被烧断了。
        说明:EA是读入脚(对MCU来说),而烧Pin的原理是烧坏Pin的输出推挽管,如果想烧坏Pin的输入则要冒IC被烧坏的风险!
所以不能选只读的脚来烧,一定要烧编程时回读数据的IO口,最好烧断两个。
        建议:根据以上原理,自己用MCU做一个自动烧断器,烧断就会非常可靠!
        解密者一般是利用我们烧Pin的漏洞,钻空子才能解密的。如只执行了上述烧Pin的某一步就留下了漏洞。那是不是完全烧坏Pin以后就不能解密了呢,也不是!但要想解密,完全烧坏两Pin的费用,可能要¥nW,几千就搞不定了,还要找到真正的邪派高手(开发者是正派)。

        并行和串行的分别

        并行指MCU使用多数据线编程,一次打入数据为四位或8位不等,如AT89系列,Holtek等。

        串行指MCU使用1~2条数据线,一条时钟线编程,也有使用SPI、SIO接口的,都属于串行编程MCU,如Samsung。

        也有并行、串行兼容的,如AVR。

        SuperPro L+属于初级烧断,如果没记错,大概只烧短路了Nmos管,通过上面的贴子,你应该理解就算把Nmos完全烧坏也没什么用的。好的烧断器只有自己做,做个中级的足已。

        烧Pin的方法,针对的是CMOS

        不管是OTP还是MTP,完全烧断可回读数据的Pin,加密效果不完全相同。对于并行编程的MCU这是中级的烧断方法。对于串行编程的MCU烧断DAT Pin的输出就足够高级了。
        更高级的烧断是烧坏编程时钟或片选的输入逻辑,不过操作不当对芯片有相当危险。

        当并行的时钟输入逻辑或串行的DAT输出被烧坏后,解密者无法判断是否解密成功,就不敢开芯片,就会知难而退了。
        对于中级烧断,在读保护被打开后,就可以找到被烧断的Pin,因为该位数据全部是高电平,使用强水打开芯片,再使用一种昴贵的设备制造一个Bond位,重新邦定就可解密。而这种设备大陆是很难租用到的,一般都要到台湾做,租用以¥nK/小时来计算的,所以最好烧断2Pin以上,给解密者制造费用。
        一般的解密者遇到这种情况,只有苦笑的份。
        如果没有完全烧断Pin那是低级烧断,则邪派的一般高手就轻易可以解密,所以一定要完全烧断!
此帖出自单片机论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

4
 
单片机的破解行业的形成

单片机的破解行业的形成:
1、市场有此需求
2、大量淘汰的IC测试设备
3、IC设计行业的逆向工程也为MCU破解行业提供了人力资源

至少6成的MCU破解是:开盖、FIB修改、标准烧录器读出


所以,只要挡住“读出”这一条路就能阻止这半数以上的破解。
STC的单片机为什么破解费用比其它单片机高10倍甚至100倍,就是靠它。
关闭读出,是高科技吗?显然不是,甚至比打开读出还简单。



至于,输入干扰测其辐射等,根本不是搞破解的人能玩的。
此帖出自单片机论坛
 
 
 

回复

8

帖子

0

TA的资源

一粒金砂(中级)

5
 
破解是个很令人疲倦的的话题
但国内的低价破解对自主开发的打击太严重了,长此以往,我等工程师的竞争更激烈,薪水压得更低
所以,关系到工程师的群体利益,我们每个人都应该关注
此帖出自单片机论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表