芯片加密与芯片解密技术方法的发展史!

芯片加密与芯片解密技术方法的发展史

IC集成电路在早期,除法律和经济外,几乎没有保护措施来防止复制这些设备。例如:ROM 是用低成本的掩模技术制造的,可用EPROM 轻易复制,但后者通常要贵 3-10 倍或更多。或定制掩模ROM,那就需要很长的时间和很大的投资。工业控制器的硬件安全措施与嵌入式系统同时开始发展。40年前的可编程工业控制器是由分离的部件如 CPU,ROM,RAM,I/O 缓冲器,串口和其他通信与控制接口组成的。通用的嵌入式控制器。PCB 上的每个部件很容易辨别且极易被复制。如下图:

硅芯片安全措施的演变:

第1代,芯片加密解密:

是在游戏机中广泛使用的简易ASIC,这些ASIC主要用于I/O部分来取代数十个逻辑器件,在降低成本的同时防止竞争者的复制,使之不得不应用更大且更贵的解决方案。实际上ASIC不会更安全,用示波器来简单分析信号或穷举所有可能的引脚组合就可以在数小时内得知它的具体功能。游戏机中的专用集成电路(ASIC),实例如下图:

第2代,芯片加密解密:

从70年代后期开始,微控制器提供一种非常好的取代基于 CPU控制板方法。它有内部存储器和通用 I/O 接口,还有一些保护措施以防止未经授权访问内部存储器的内容。 不幸的是,早期的单片机没有提供非易失存储能力,重要数据不得不存在单片机外部存储器中,很容易被读出数据。最近销售的一些廉价 USB 狗也用此法来进行软件保护,如图所示:

第3代,芯片加密解密:

安全工艺措施是把EEPROM数据存储芯片和单片机MCU装在同一封装内部。破解这些芯片是不容易的。一种专业的方法是打开样品的封装,用微探针来获得数据。或将芯片重新焊在一个分开的封装内。这两种设备都不是低级破解者所能拥有的。这些破解者会尝试用自制的微探针(旧芯片的焊线区域是相当大的)或利用软件上的缺陷来读出数据。

实例1:微芯Microchip的PIC12CE518微控制器打开封装后的照片,可见非易失数据存储器和 MCU 是分开封在同一封装内部的。如下图所示:

实例2:近来的堆叠芯片,如手机中用的Flash+SRAM的combo存储器,结构与之类似,不同的是在垂直方向叠加。破解方法亦类似。例如意法ST某型32位MCU 打开封装后的SEM,如下图:

第4代,芯片加密特殊的加密:

个别一些公司设计的 MCU(单片机) 始终没有任何特殊的硬件安全保护。它们仅仅是基于不公开编程算法来保护。这可能有伪装回读功能,或用校验功能来代替。一般这些 MCU 不会提供非常好的保护能力。实际上,在一些智能卡中,适当使用校验功能能够起到很强的保护作用。

第5代,芯片加密解密:

增强数据安全的措施是增加一个硬件安全熔丝(security fuse 安全熔丝就是寄存器)来禁止访问数据。这很容易做到,无需完全重新设计MCU架构,仅利用熔丝(寄存器)控制编程接口的回读功能。缺点是熔丝位很容易被定位并进行入侵攻击。例如:熔丝(寄存器)状态可以通过直接把熔丝位(寄存器)的输出连到电源或地线上来进行修改。有些例子中仅仅用激光或聚焦离子束来切断熔丝的感应电路就可以了。用非侵入式攻击也一样可以成功。下图实例: 微芯 PIC12C508 微控制器的安全熔丝位于程序存储器阵列的外部。

第6代,芯片加密解密:

是将安全熔丝和存储器阵列集成到一起,如已设好熔丝(寄存器),可禁止外部读写数据。一般的熔丝(寄存器)与主存储器离得很近,或干脆与主存储器共享一些控制线。因为晶圆厂使用与主存储器相同的工艺来制造,熔丝(寄存器)很难被定位和复位。非侵入式攻击仍然可用,但需要时间去寻找。同样,半侵入式攻击也可用。当然破解者需要更多的时间去寻找安全熔丝(寄存器)或控制电路负责安全监视的部分,但这些可以自动完成的。进行侵入式攻击将是很困难的,需要手工操作,那将花费更多的成本来破解。    实例如下图:飞思卡尔Freescale 的 MC68HC705C9A 微控制器在 200 倍显微镜下可见安全熔丝是存储器读写控制逻辑的一部分。

第7代,芯片加密解密:

是用主存储器的一部分来控制外部对数据的访问。这可以用上电时锁定特定区域地址的信息,将它作为安全熔丝(寄存器)。或用密码来控制对存储器的访问。例如德仪的MSP430F112,只有输入正确的32字节密码后才能进行回读操作。如没输入密码,只有擦掉芯片后才能操作。尽管这个保护方法看上去比先前的更有效,它有一些缺点可以用低成本的非侵入式攻击如时序分析和功耗分析来破解。如果安全熔丝的状态是上电或复位后的存储器的一部分,这就给破解者用电源噪声来破解的机会,强制电路进入存储器中的错误状态。

第8代,芯片加密解密:

增加顶层金属网格,使入侵攻击开销更多。所有的网格都用来监控短路和开路,一旦触发,会导致存储器复位或清零。在智能卡中,电源和地之间铺了一些这样的网格线。在这些方法中发现一些设计缺陷使得可以进行微探测攻击。同样,这些网格不能保护非侵入式攻击。因为导线之间有电容,并且光线可以通过导线抵达电路的有效区域,半侵入式攻击仍然可能。示例如下图:意法ST 的 ST16 系列智能卡芯片表面金属层的敏感网格。

普通的 MCU 不会使用这种保护方法,因为设计较难,且在异常运行条件下也会触发,如:高强度电磁场噪声,低温或高温,异常的时钟信号或供电不良。    所以有些普通的 MCU 使用更廉价的伪顶层金属网格,但这也有非常高效的光学分析进行微探测攻击的方法。在智能卡中,电源和地之间铺了一些这样的网格线。在这些方法中发现一些设计缺陷使得可以进行微探测攻击。同样,这些网格不能保护非侵入式攻击。因为导线之间有电容,并且光线可以通过导线抵达电路的有效区域,半侵入式攻击仍然可能。 实例如下图:PIC16F648A 伪顶层金属层图案使得对芯片进行微探测攻击更困难

第9代,芯片加密解密:

可编程的智能卡制造商走得更远,干脆砍掉标准的编程接口。取而代之的是启动模块,可以在代码载入后擦掉或屏蔽掉自己。这些卡只能在初始化时被编程一次,之后只能响应使用者的嵌入软件所支持的读写存在卡里的数据或程序。

第10代,芯片加密解密:

一些智能卡使用存储器总线编码(Bus encryption)技术来防止微探测攻击。即使破解者获得数据总线的数据也不可能知道密码或别的敏感信息。这种保护措施直指侵入式和半侵入式攻击。但非侵入式攻击仍然可以像正常的 CPU 一样访问控制非编码信息。事实上,几年前就发现廉价地破解编码信息的方法。实例如下图:100 倍的显微镜下的英飞凌 Infineon SLE66 系列的智能卡芯片上的硬件总线编码模块,保护存储器免受微探测攻击。

第11代,芯片加密解密:

另外一些需要提及的改进是将标准的模块结构如解码器,寄存器文件,ALU 和 I/O 电路用类似 ASIC 逻辑来设计。这些设计称为混合逻辑(Glue logic),广泛用于智能卡。混合逻辑使得实际上不可能通过手工寻找信号或节点来获得卡的信息进行物理攻击。这种技术广泛用于盗版,并可提升常见 CPU 内核的性能和安全性。例如 Ubicom 的 SX28 微控制器的引脚和程序都兼容于微芯的 PIC16C57,但它使用了混合逻辑设计,闪存,大容量 RAM 使它的性能获得大幅提升。在 PIC 微控制器中,破解者很容易跟踪内存到 CPU 的数据总线,但在 SX 微控制器中,几乎不可能知道总线的物理位置,反向工程和微探测攻击将是非常困难且耗费时间。实例如下图:Ubicom 的 SX28 微控制器引入混合逻辑设计,提升了性能和安全性。

第12代,芯片加密解密:

更常用的是芯片由不同模块组成,但每个模块使用混合逻辑设计。如赛普拉斯的CY7C63001A 微控制器。在这种情况下,破解者更容易跟踪模块之间的总线和控制线,并对芯片进行侵入式和半侵入式攻击。混合逻辑设计不能防止非侵入式攻击,但需要更快更昂贵的设备。半侵入式攻击面临伪设计模块的问题。当然破解者可以自动操作来进行穷举搜索并尝试攻击所有可能区域。结果很可能是花了很长时间并没有取得成功。另一方面,破解者可以直接攻击存储器器或它的控制电路。赛普拉斯Cypress的CY7C63001A微控制器使用部分混合逻辑设计,但内部总线很容易被访问:

总结:技术进步增加了入侵攻击的成本。十年前很容易使用激光切割器和简单的探针台就可以读写芯片表面的任何点,但对于现代的深亚微米半导体芯片就需要用到不一般的且昂贵的技术,这难倒了很多潜在的破解者。如 PIC16F877 很容易在显微镜下观察并进行反向工程,藏在顶层金属下的第二层金属和多晶硅层仍然可见。但在 PIC16F887A 微控制器中使用了平坦化工艺,使得不会显示更深的层。唯一的方法是用物理或化学的方法除去顶层金属。

实例如下图:500 倍显微镜下,通过 PIC16F877 的顶层看到第二层金属和多晶硅层。

实例如下图:500 倍显微镜下,看不到 PIC16F877A 的顶层金属下有什么特别的。

另外一个需要注意的是大量二手的半导体制造和测试设备出现在市场上,虽不能用于攻击高端产品,但用于破解旧技术制造的芯片已经够了。

想了解更多芯片加密/芯片解密技术,请进入芯片破解网:www.icpojie.com

时间: 2024-10-11 23:53:59

芯片加密与芯片解密技术方法的发展史!的相关文章

C# 与JAVA 的RSA 加密解密交互,互通,C#使用BouncyCastle来实现私钥加密,公钥解密的方法

因为C#的RSA加密解密只有公钥加密,私钥解密,没有私钥加密,公钥解密.在网上查了很久也没有很好的实现.BouncyCastle的文档少之又少.很多人可能会说,C#也是可以的,通过Biginteger开源类来实现,不过那个是有一个文章,不过他加密出来的是16进制结果的.根本不能和JAVA互通.连加密出来的都不和C#原生的加密出来的结果格式一样.所以还是没有好的解决方法. 接下来还是不断的找资料,找方法.找朋友找同事.个个都找.问题是有的,方法也是有的,所以总结各路大神之后写了这个类.实现了私钥加

芯片解密技术是检验反向开发公司实力的标尺!

芯片解密技术是检验反向开发公司实力的标尺! 集成电路IC作为最重要的电子元器件,小小的芯片起到影响电子设备性能发挥的最要指挥作用.对芯片技术的研究而言,不仅有正向的直接设计研发,比如一些芯片设计公司,可直接为各个电子厂商提供芯片成品.另外一种研究就是相对于正向研究而言,利用已经设计好的芯片成品,通过借助专门的设备和技术手段,反向获取芯片内关键技术信息,并根据信息克隆出一模一样的芯片的技术,该技术助力中国企业打造强势"中国制造".客户也可以通过芯片解密设备从芯片过程学习原芯片的设计思路.

加密和解密技术基础、PKI及创建私有CA

一.数据加密和解密概述 数据加密和解密是一门历史悠久的技术,从古代就已经出现了,一直发展到当代.其中,数据加密的目的有很多,可以是为了保证本地数据存取的安全性,可以是为了保证数据流在网络传输过程中的保密性,也可以是为了验证数据的完整性,还可以通过数据加密来实现密钥的交换等. 数据加密依赖于某种加密算法和加密密钥,而数据解密则依赖于某种解密算法和解密密钥.而在当代加密解密技术中,加密密钥既可以与解密密钥相同,也可以和解密密钥不同,这取决于使用什么方法进行加解密. 二.安全的目标 就信息传输过程来说

加密和解密技术基础与OpenSSL

加密和解密技术基础与OpenSSL 加密和解密技术基础(01) 1.了解Linux  service  and  securityOpenSSL:为网络通信提供安全及数据完整性的一种安全协议 2.一般都是C/S通信,此种通信客户端有什么特性?服务端有什么特性呢?(1)两台主机上的通信方式?主机通信实际是进程间通信.通信方式:socket (套接字)ip:port          客户端cip:port<-->服务器端 scip:port(2)如何让客户知道自己的主机和端口呢?把某些众所周知的

Linux之加密和解密技术

加密和解密技术 本章内容: 安全机制 对称加密 不对称加密 散列算法 PKI和CA 相关知识: 1)传输层协议: TCP(面向连接),UDP(面向无连接),SCTP(流控协议) 2)port(端口):传输层协议都会提供端口, 端口(port)是标记进程的地址,进程向内核注册才能使用某端口(独占) 任何一个进程占领某个端口之后,其他进程进不能使用了: 3)同一主机上的进程间通信: IPC,message qoeue(消息队列),shm(共享内存),semerphor 4)不同主机间的进程通信: 通

加密解密技术基础、PKI及创建私有CA

加密解密技术基础.PKI及创建私有CA 一.背景 随着互联网的快速发展,整个互联网中涌入了大量的用户,正所谓林子大了什么鸟都有,随之而来的就是数据的安全性得不到保障:因此就有了对数据的加密及解密. 二.安全的目标 1.目标: 信息加密的目的是为了确保所传输的信息具有保密性,不被其他人所劫持后篡改信息:如果被篡改后接收方也应该能知道,而且也应该确保没被劫持的信息接收方可以读取. 2.数据在网络中传输过程中要保证三个要点: (1)数据的完整性:防止数据在传输过程中遭到未授权用户的破坏或篡改. (2)

加密解密技术介绍和OpenSSL介绍

网络上实现安全传输是一件非常必要的事情,此篇博文主要介绍一下四种常见的加密解密技术和PKI机制以及如何通过openssl建立私有CA. 一.加密解密技术 (1)对称加密 主要加密算法: 1.DES:Data Encryption Standard 数据加密标准 加密端:将明文划分为64bits为一块,用密钥加密产生64bits的密文 解密端:还原回64bits密文 加密和解密均使用56bits的密钥 2.3DES:Triple DES:也就是进行三次DES加密 3.AES:Advanced En

linux关于加密解密技术基础、KPI及创建私有CA

linux加密和解密技术基础.KPI及创建私有CA 一.加密方式分为:1.对称加密:加密和解密使用同一个密钥:      对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,在对称加密算法中常用的算法有:DES. 3DES.TDEA.AES.    Blowfish.Twofish          IDE.ARC6.CAST5等.    特性:      1.加密.解密使用同一个密钥:      2.强原始数据分割成固定大小的块,逐个进行加密

加密解密技术基础,pki以及自建私有CA

网络安全议题,几乎是业内人士避不开的话题,要做到网络安全,主要旨在三个方面的目标:保密性,完整性和可用性.本文在此主要对基础的加密和解密技术,ssl协议,以及ssl协议的实现实例做一些简要描述和梳理. 加密和解密: 目前对于网络安全的攻击,很大部分集中在"威胁保密性的攻击",也就是我们进场所说的数据泄露,加密和解密是目前最为直观的解决保密性问题的手段. 几种加密方式: 对称加密: 特点:加密和解密使用同一个密钥:将数据分割成多个固定大小的块,逐个加密: 缺点:密钥过多(对于服务器端,需